Что означает символ ~› в Gemfile сборщика?

Что означает -> рядом с номером версии в Gemfile?

Например:

gem 'sass-rails',   '~> 3.1.5'

person brad    schedule 02.01.2012    source источник
comment
Так оно и есть, но приличный поиск не нашел этого вопроса.   -  person brad    schedule 02.01.2012
comment
Нет пота! В Interwebs много места. Небольшое дублирование — это хорошо. :)   -  person Waseem    schedule 02.01.2012
comment
Пока мы упоминаем дубликаты, вот самый старый вопрос, который является обманом: stackoverflow.com/q/3414337   -  person ReinstateMonica3167040    schedule 09.01.2020


Ответы (2)


С сайта сборщика:

Спецификатор ~> имеет особое значение, которое лучше всего показано на примере:
'~> 2.0.3' идентично '>= 2.0.3' и '< 2.1.'
'~> 2.1' идентично '>= 2.1' и '< 3.0'.
'~> 2.2.beta' будет соответствовать предварительным версиям, таким как '2.2.beta.12'.

См. https://bundler.io/gemfile.html и http://guides..rubygems.org/patterns/#pessimistic-version-constraint

person Tim Brandes    schedule 02.01.2012
comment
Да, вы правы, и я слишком поторопился с ответом и уже редактировал, извините! - person Tim Brandes; 02.01.2012
comment
Хорошо, я читал руководство по gemfile, в котором, похоже, не было этой информации. Надо было просто придерживаться красивых страниц! - person brad; 02.01.2012

Обычно вы используете это, чтобы сообщить сборщику, что можно устанавливать некоторые незначительные обновления (последняя указанная цифра может варьироваться), но не устанавливать какое-либо серьезное обновление.

SO

~> 2.0.3 означает >= 2.0.3< 2.1

и

~> 2.1 означает >= 2.1< 3.0

Подробнее читайте на странице https://bundler.io/gemfile.html.

person Uko    schedule 02.01.2012