Ich habe gelesen auf rubygems.org über die Nutzung der semantischen Versionierungsmuster für Ruby Edelsteine.Was hat die Version eines Rubins mit der Version von Ruby zu tun, die während der Entwicklung verwendet wurde?
Zum Beispiel möchte ich vielleicht einige Ruby Gem namens library
, die alle kleinere Updates ab v2.2
bis einschließlich v3.0
enthält. Ich kann es als eine Laufzeitabhängigkeit hinzufügen in meinem gemspec
oder meine Gemfile
:
some_gem.gemspec:
spec.add_runtime_dependency 'library','~> 2.2'
Gemfile:
gem 'library', '~> 2.2'
Ich weiß, wir können auch angeben, welche Version von Ruby möchten wir mit einem Ruby-Versionsmanagement wie rbenv verwenden.
Zum Beispiel habe ich gesetzt auch die lokale Ruby-Version zu system
(auf macOS) vor mit:
rbenv local system
, die erzeugte eine .ruby-version
Datei im Projektstamm.
Ich bin verwirrt darüber, was die Ruby-Version, die ein Edelstein-Autor verwendet, mit der Edelstein-Version zu tun hat. Sind sie verwandt? Wie würde ein Edelsteinautor die Version von Ruby verwalten? Veröffentlichen Edelstein-Juwelen Edelsteine für mehrere Ruby-Versionen?
Zum Beispiel, wenn ein Autor 2.3.1
verwendet, um ihr Juwel zu bauen bedeutet das jemand mit nur system
Ruby wäre nicht in der Lage, es zu benutzen?