Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Warning about ruby version when moving to qpixel installation directory with RVM Question

+3
−0

After ruby (version 3.1.2) install with RVM, when I move to the qpixel install directory (with cd qpixel command), the following warning is displayed in the terminal:

  Unknown ruby interpreter version (do not know how to handle): >=2.7,<4.

But my local instance of QPixel seems to "work" without problem.

Questions

  1. Why I obtain this warning?
  2. What does it mean?
  3. Should I worry about for running my local instance of qpixel?

Setup

Ruby installed with: rvm install 3.1.2.

Output of ruby -v command on Debian 11 (on WSL2): ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux]

I obtain the above warning with several OS: Debian 11 (WSL2) and 12, Ubuntu 22.04.2 TLS , Fedora 38 and Arch Linux.

History
Why does this post require moderator attention?
You might want to add some details to your flag.
Why should this post be closed?

1 comment thread

I also see this (1 comment)

1 answer

+3
−0

I believe that rvm has a mechanism where it will automatically switch to the correct ruby version based on the lockfile. So if the lockfile of an application were to say: ruby '3.1', rvm will detect that and automatically switch to using the correct Ruby version for the project out of the potentially many versions you have installed (or prompt you to install it, or maybe it even installs it for you).

Now the problem is that somewhat recently ruby 2.7 became End-Of-Life. Ruby 3.0 made some syntax/behavior changes which actually broke compatibility with older code (hence why it went from Ruby 2 to Ruby 3). We updated QPixel to support these new versions of Ruby 3 but for now we also maintain compatibility with Ruby 2.7 to give people more time to update.

In doing so, we had to switch from listing a specific ruby version to a range of versions, defined as >= 2.7, < 4. That is, 2.7 is supported, and all Ruby 3 versions are supported (and should work), but Ruby 4 (when that is released) probably won't be. RVM does not support this statement in it's auto version switching, hence why you see the error.

So to answer your questions:

  1. Because we have a range version listed in our lockfile
  2. RVM is unable to determine the version of ruby to auto-switch to
  3. No, RVM's fallback behavior for if the auto-switching does not work, is to use the "currently set version of ruby", which in almost all cases is a supported version.
History
Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

Sign up to answer this question »