Rubydans AL2023 - Amazon Linux 2023

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Rubydans AL2023

Rubyin AL2023 est représenté par les versions 3.2 et 3.4. Amazon Linux suit le calendrier de support en amont et l'état du support de n'importe quelle Ruby version peut toujours être vérifié sur le site Web de Ruby. Toutes les Ruby versions prises en charge sont dotées d'un espace de noms et peuvent être installées simultanément sur le même système. L'espacement de noms garantit que chaque Ruby installation est unique au sein du système de fichiers. Ceci est réalisé en renommant les répertoires et les fichiers clés en fonction de la version d'exécution. Les noms réels des exécutables ressembleront à ruby {MAJOR.MINOR} (par exemple, ruby3.2 ouruby3.4). Ruby3.4 fournit également le binaire avec espace de noms MRI (Matz's Ruby Interpreter)ruby3.4-mri, qui fait référence à l'implémentation de référence standard basée sur le C de. Ruby Cependant, une seule Ruby version peut être active à la fois. Cette version active fournit les répertoires et les noms de fichiers par défaut, tels que ruby, gem ou bundle, en les pointant vers le runtime actuellement actif.

Ceci est réalisé en utilisant les fonctionnalités de l'outil des alternatives. Il est important de se rappeler que les noms des exécutables par défaut sont virtuels et peuvent changer à tout moment lorsque vous pointez vers une autre Ruby version installée. Cette flexibilité permet aux logiciels qui utilisent Ruby in the Shebang de sélectionner la version souhaitée lorsqu'ils sont invoqués. Toutefois, lorsqu'une version spécifique de Ruby est requise, la persistance de la version peut être obtenue en appelant l'exécutable avec espace de noms (par exemple, ruby3.2 ouruby3.4), qui utilisera toujours la version spécifiée du moteur d'exécution. De plus, les exécutables avec espace de noms des outils gem et bundler, tels que,, ou ruby3.2-gem ruby3.4-gemruby3.2-bundler, sont toujours associés à la Ruby version correspondanteruby3.4-bundler, quel que soit le moteur d'exécution actuellement actif.

Rubyest distribué sous la forme de plusieurs packages avec un espace de noms commençant par « »ruby{MAJOR.MINOR}. Ces packages fournissent Ruby, des versions compatibles des outils Gem et Bundler, de la documentation, des bibliothèques, etc. Par exemple, le runtime core Ruby 3.2 est fourni par le ruby3.2 package, qui intègre ruby3.2-rubygems (fournissant une gemme) et ruby3.2-rubygem-bundler (fournissant un bundle et un bundler) en tant que dépendances.

Après l'installation d'une Ruby version, les entrées pour les outils complémentaires peuvent s'afficher comme nulles dans la configuration des alternatives. Cela peut être vérifié en exécutantalternatives --display ruby. Si les entrées apparaissent comme nulles, elles doivent être enregistrées manuellement à l'aide dealternatives --install. Par exemple, pour enregistrer tous les outils complémentaires pour la version Ruby 3.4 :

sudo alternatives --install /usr/bin/gem gem /usr/bin/ruby3.4-gem 34 sudo alternatives --install /usr/bin/bundle bundle /usr/bin/ruby3.4-bundle 34 sudo alternatives --install /usr/bin/bundler bundler /usr/bin/ruby3.4-bundler 34 sudo alternatives --install /usr/bin/erb erb /usr/bin/ruby3.4-erb 34 sudo alternatives --install /usr/bin/racc racc /usr/bin/ruby3.4-racc 34 sudo alternatives --install /usr/bin/rdoc rdoc /usr/bin/ruby3.4-rdoc 34 sudo alternatives --install /usr/bin/ri ri /usr/bin/ruby3.4-ri 34

La valeur de priorité (par exemple, 34 pour Ruby 3.4, 32 pour Ruby 3.2) doit correspondre à la priorité utilisée dans l'entrée alternative principale de Ruby. Une fois enregistrés, les outils complémentaires seront gérés automatiquement parallèlement à l'alternative Ruby.

L'outil des alternatives fournit une commande unique pour passer d'une Ruby version à l'autre. Par défaut, les alternatives sont configurées pour être en mode auto, qui utilise les priorités pour déterminer la Ruby version actuellement active. Cependant, vous pouvez activer n'importe quelle version installée à tout moment. Actuellement, toutes les versions prises en charge Ruby ont la même priorité, ce qui signifie que la première version installée sera automatiquement activée.

Quelques exemples utiles d'utilisation d'alternatives
  1. Vérifiez quelles alternatives sont configurées pour

    alternatives --list
  2. Vérifiez la configuration actuelle de Ruby

    alternatives --display ruby
  3. Modifier la version de manière interactive Ruby

    alternatives --config ruby
  4. Passez en mode manuel et sélectionnez une version spécifique

    alternatives --set ruby /usr/bin/ruby{MAJOR.MINOR}
  5. Revenir en mode de sélection automatique des versions

    alternatives --auto ruby