Ruby on Rails - предупреждения, предупреждающие запуск «рельсов s» [дубликат]

Используйте группу процессов , чтобы включить отправку сигнала ко всему процессу в группах. Для этого вы должны прикрепить session id к родительскому процессу процессов порожденного / дочернего процесса, который является оболочкой в ​​вашем случае. Это сделает его лидером группы процессов. Итак, теперь, когда сигнал отправляется руководителю группы процессов, он передается всем дочерним процессам этой группы.

Вот код:

import os
import signal
import subprocess

# The os.setsid() is passed in the argument preexec_fn so
# it's run after the fork() and before  exec() to run the shell.
pro = subprocess.Popen(cmd, stdout=subprocess.PIPE, 
                       shell=True, preexec_fn=os.setsid) 

os.killpg(os.getpgid(pro.pid), signal.SIGTERM)  # Send the signal to all the process groups

71
задан Sebastian Palma 18 June 2017 в 06:32
поделиться

4 ответа

Эти предупреждения появляются из-за того, что вы используете ruby ​​2.4.0.

Эта версия внесла это изменение: Унифицировать Fixnum и Bignum в Integer

См. здесь для объявления: https://www.ruby-lang.org/en/news/2016/12/25/ruby-2-4-0-released/

Предупреждения взяты из драгоценного камня activesupport, который является частью рельсов и будет исправлен в предстоящем выпуске.

На данный момент вы можете просто игнорировать эти предупреждения.

Обновление: Rails 5.0.2 был выпущен , который избавляется от предупреждений.

68
ответ дан IngoAlbers 15 August 2018 в 14:42
поделиться
  • 1
    Я использую ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-darwin16], но также получаю эту проблему. – aircraft 26 January 2017 в 15:39
  • 2
    Как игнорировать предупреждения? Запуск "рельсов s" терпит неудачу – Sauron 25 February 2017 в 23:10
  • 3
    @Sauron Это не должно терпеть неудачу из-за предупреждений. Может быть, у вас есть некоторая ошибка? – IngoAlbers 26 February 2017 в 06:20
  • 4
    Есть ли что-то новое в этом отношении? Это раздражает, чтобы все эти предупреждения были брошены мне в лицо. Хмм! – Zeth 1 March 2017 в 23:40
  • 5
    @Zeth На самом деле, да. Rails 5.0.2 был выпущен, что избавляет от предупреждений. weblog.rubyonrails.org/2017/3/1/Rails-5-0-2-has-been-released – IngoAlbers 2 March 2017 в 08:49

Предполагаю, что вы используете Rails 5? Проверьте эту ссылку (внизу). Похоже, что эти предупреждения уйдут с выпуском № 27458.

8
ответ дан jvillian 15 August 2018 в 14:42
поделиться

Если эти предупреждения об отказе в активной поддержке являются единственными предупреждениями, которые вы видите, вы можете их отбросить, передав переменную basyOPT bash с параметром -W0, который будет отключен.

, поэтому вместо rails server try: RUBYOPT="-W0" rails server или RUBYOPT="-W0" bin/rails server

В рельсах 5.0 вы можете привыкнуть использовать bin / rails не только рельсы, так как это глобальная версия рельсов, которая может быть или не быть одинаковой как ваша локальная версия рельсов.

5
ответ дан lsiebert 15 August 2018 в 14:42
поделиться

Я исправил мою, обновив рельсы

bundle update rails
13
ответ дан mpalencia 15 August 2018 в 14:42
поделиться
  • 1
    Спасибо, я тоже могу это исправить – Esgi Dendyanri 8 March 2017 в 10:15
  • 2
    Это работало для меня до открытия нового терминала: bundle update geocoder Получая следующую ошибку снова, прямо перед запуском консоли rails: /home/moi/.rvm/gems/ruby-2.4.0/gems/geo-distance-0.2.2/lib/geo-distance/core_ext.rb:13: warning: constant ::Fixnum is deprecated – Ethan Wilkins 30 May 2017 в 19:27