2015-01-13 13 views
5

Ich verwende derzeit Spork mit Guard, Rspec und Gurke. Ich würde gerne nach Spring ziehen, kann aber keine Dokumentation darüber finden, was ich ändern muss.Wie man vom Spork zum Frühling übergeht?

Insbesondere, ich bin gespannt, ob ich mein heraus ändern müssen:

require 'spork' 

Spork.prefork do 
    # ... 
end 

Spork.each_run do 
    # ... 
end 

... mit so etwas wie:

require 'spring' 

Spring.prefork do 
    # ... 
end 

Spring.each_run do 
    # ... 
end 

aber ich weiß, dass there isn't a Spring.prefork because the documentation says so. Also sollte ich einfach die Verweise auf Spork entfernen oder muss ich sie durch etwas ersetzen?

Antwort

4

Wie Sie in Ihrer Frage erwähnt, gibt es keine Prefork Block. Die Dokumentation bietet eine Problemumgehung: Verschieben Sie einfach Ihren vorhandenen -Block in einen Initialisierer oder an einen anderen Ort, an dem er abgeholt und zum Laden von Rails ausgeführt wird.

Von https://github.com/rails/spring#running-code-before-forking:

Es gibt keine Spring.before_fork Rückruf. Um etwas vor der Verzweigung auszuführen, können Sie es in oder oder in einer der Dateien platzieren, die beim Initialisieren der Anwendung ausgeführt werden, z. B. config/application.rb, config/environments/*.rb oder config/initializers/*.rb.

Was Ihre Spork.each_run Block, da Sie Rspec verwenden Sie könnte es in einen before(:suite) Block bewegen. Siehe die Rspec-Dokumentation unter before and after hooks

1

Entfernen Sie einfach alle Vorkommen von Spork und installieren Sie spring.

Danach bundle exec spring binstub --all ausführen.

Wenn Sie nun bin/rails c ausführen, wird spring verwendet.

Für rspec Verwendung spring-commands-rspec

Verwandte Themen