Recent Releases of https://github.com/rails/spring
https://github.com/rails/spring - 0.0.9
- Added
Spring::Commands::Rake.environment_matchersfor matching
rake tasks to specific environments. - Kill the spring server when the
GemfileorGemfile.lockis
changed. This forces a new server to boot up on the next run, which
ensures that you get the correct gems (or the correct error message from
bundler if you have forgotten tobundle install.) - Fixed error when
Spring.watchis used inconfig/spring.rb
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 0.0.10
- Added
Spring.watch_method=configuration option to switch between
polling and thelistengem. Previously, we used thelistengem if
it was available, but this makes the option explicit. Set
Spring.watch_method = :listento use the listen gem. - Fallback when Process.fork is not available. In such cases, the user
will not receive the speedup that Spring provides, but won't receive
an error either. - Don't preload
test_helperorspec_helperby default. This was
causing people subtle problems (for example see #113) and is perhaps
surprising behaviour. It may be desirable, but it depends on the
application, therefore we suggest it to people in the README but no
longer do it by default. - Don't stay connected to database in the application processes. There's
no need to keep a connection open. - Avoid using the database in the application processes. Previously,
reloading the autoloaded constants would inadvertently cause a
connection to the database, which would then prevent tasks like
db:create from running (because at that point the database doesn't
exist) - Removed ability to specify list of files for a command to preload. We
weren't using this any more internally, and this is easy to do by
placing requires in suitable locations in the Rails boot process
(which is not explained in the README). - Seed the random number generator on each run.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 0.0.11
- Added the
rails destroycommand. - Global config file in
~/.spring.rb - Added logging for debugging. Specify a log file with the
SPRING_LOGenvironment variable. - Fix hang on "Run
bundle installto install missing gems" - Added hack to make backtraces generated when running a command
quieter (by stripping out all the lines relating to spring) - Rails 4 is officially supported
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 0.9.0
- Display spring version in the help message
- Remove workaround for Rubygems performance issue. This issue is solved
with Rubygems 2.1, so we no longer need to generate a "spring" binstub
file. We warn users if they are not taking advantage of the Rubygems
perf fix (e.g. if they are not on 2.1, or haven't rungem pristine --all). To upgrade, delete yourbin/springand re-runspring binstubfor each of your binstubs. - Binstubs now fall back to non-spring execution of a command if the
spring gem is not present. This might be useful for production
environments. - The ENV will be replaced on each run to match the ENV which exists
when the spring command is actually run (rather than the ENV which
exists when spring first starts). - Specifying the rails env after the rake command (e.g.
rake RAILS_ENV=test db:migrate) now works as expected. - Provide an explicit way to set the environment to use when running
rakeon its own. - The
rspecandcucumbercommands are no longer shipped by default.
They've been moved to thespring-commands-rspecand
spring-commands-cucumbergems.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 0.9.1
- Environment variables which were created during application startup are no
longer overwritten. - Support for generating multiple binstubs at once. Use --all to
generate all, otherwise you can pass multiple command names to the
binstub command. - The
testunitcommand has been extracted to the
spring-commands-testunitgem, because it's not necessary in Rails 4,
where you can just runrake test path/to/test. - The
~/.spring.rbconfig file is loaded before bundler, so it's a good
place to require extra commands which you want to use in all projects,
without having to add those commands to the Gemfile of each individual
project. - Any gems in the bundle with names which start with "spring-commands-"
are now autoloaded. This makes it less faffy to add additional
commands.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 0.9.2
- Bugfix: environment variables set by bundler (
BUNDLE_GEMFILE,
RUBYOPT, etc...) were being removed from the environment. - Ensure we only run the code reloader when files have actually changed.
This issue became more prominent with Rails 4, since Rails 4 will now
reload routes whenever the code is reloaded (see
https://github.com/rails/rails/commit/b9b06daa915fdc4d11e8cfe11a7175e5cd8f104f). - Allow spring to be used in a descendant directory of the application
root - Use the system tmpdir for our temporary files. Previously we used
APP_ROOT/tmp/spring, which caused problems on filesystems which did
not support sockets, and also caused problems ifAPP_ROOTwas
sufficiently deep in the filesystem to exhaust the operating system's
socket name limit. Hence, we had aSPRING_TMP_PATHenvironment
variable for configuration. We now use/tmp/spring/[md5(APP_ROOT)]
for the socket and/tmp/spring/[md5(APP_ROOT)].pidfor the pid file.
Thanks @Kriechi for the suggestion. SettingSPRING_TMP_PATHno longer
has any effect.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.0.0
- Enterprise ready secret sauce added
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.1.1
- Fix
$0so that it is no longer prefixed with "spring ", as doing
this cause issues with rspec when running justrspecwith no
arguments. - Ensure we're always connected to a tty when preloading the
application in the background, in order to avoid loading issues
with readline + libedit which affected pry-rails.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.1.0
- A
bin/springbinstub is now generated. This allows us to load spring
correctly if you have it installed locally with aBUNDLE_PATH, so
it's no longer necessary to install spring system-wide. We also
activate the correct version from your Gemfile.lock. Note that you
still can't have spring in your Gemfile as a git repository or local
path; it must be a proper gem. - Various changes to how springified binstubs are implemented. Existing
binstubs will continue to work, but it's recommended to runspring binstub
again to upgrade them to the new format. spring binstub --removeoption added for removing spring from
binstubs. This won't work unless you have upgraded your binstubs to
the new format.config/database.ymlis watched- Better application restarts - if you introduce an error, for example
by editingconfig/application.rb, spring will now continue to watch
your files and will immediately try to restart the application when
you editconfig/application.rbagain (hopefully to correct the error).
This means that by the time you come to run a command the application
may well already be running. - Gemfile changes are now gracefully handled. Previously they would
cause spring to simply quit, meaning that you'd incur the full startup
penalty on the next run. Now spring doesn't quit, and will try to load
up your new bundle in the background. - Fix support for using spring with Rails engines/plugins
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.1.2
- Detect old binstubs generated with Spring 1.0 and exit with an error.
This prevents a situation where you can get stuck in an infinite loop
of spring invocations. - Avoid
warning: already initialized constant APP_PATHwhen running
rails commands that do not use spring (e.g.bin/rails serverwould
emit this when you ^C to exit) - Fix
reload!in rails console - Don't connect/disconnect the database if there are no connections
configured. Issue #256.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.2.0
- Accept -e and --environment options for
rails console. - Watch
config/secrets.ymlby default. #289 - @morgoth - Change monkey-patched
Kernel.raisefrom public to private (to match default Ruby behavior) #351 - @mattbrictson - Let application_id also respect RUBY_VERSION for the use case of switching between Ruby versions for a given Rails app - @methodmissing
- Extract the 'listen' watcher to a separate
spring-watcher-listen
gem. This allows it to be developed/maintained separately.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.1.3
- The
rails runnercommand no longer passes environment switches to
files which it runs. Issue #272. - Various issues solved to do with termination / processes hanging around
longer than they should. Issue #290.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.3.0
- Automatically restart spring after new commands are added. This means
that you can add spring-commands-rspec to your Gemfile and then
immediately start using it, without having to runspring stop.
(Spring will effectively runspring stopfor you.) - Make app reloading work in apps which spew out lots of output on
startup (previously a buffer would fill up and cause the process to
hang). Issue #332. - Make sure running
bin/springdoes not add an empty string toGem.path.
Issues #297, #310. - Fixed problem with
$0including the command line args, which could
confuse commands which try to parse$0. This caused the
spring-commands-rspec to not work properly in some cases. Issue #369. - Add OpenBSD compatibility for
spring status. Issue #299. - Rails 3.2 no longer officially supported (but it may continue to work)
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.3.1
- Fix a problem with gems bundled from a git repository, where the
bin/springwas generated before 1.3.0.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.3.2
- Fix another problem with gems bundled from git repositories. This
affected chruby and RVM users, and possibly others. See #383.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.3.3
- Fix yet another problem with loading spring which seems to affect
some/all rbenv users. Issue #390.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.3.4
- Add
rails testcommand.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.3.6
- Ensure the spawned server is loaded from the same version of the Spring gem
as the client. Issue #295.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.4.0
- Add support for client side hooks.
config/spring_client.rbis loaded before
bundler and before a server process is started, it can be used to add new
top-level commands. - Do not boot up the server when using -h / --help
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.4.2
- Don't suppress non-spring load errors in binstub
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.4.1
- Enable terminal resize detection in rails console.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.4.3
- Support new binstub format and --remove option
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.6.0
- show when spring is used automatically to remind people why things might fail, disable with
Spring.quiet = true
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.5.0
- Make the temporary directory path used by spring contain the UID of the process
so that spring can work on machines where multiple users share a single $TMPDIR.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.6.1
- support replaced backtraces / backtraces with only line and number
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.6.2
- Fix problems with the implementation of the new "Running via Spring preloader"
message (see #456, #457) - Print "Running via Spring preloader" message to stderr, not stdout
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.6.3
- Fix problem with using Bundler 1.11 with a custom
BUNDLE_PATH(#456)
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.6.4
- Fix incompatibility with RubyGems 2.6.0.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.7.0
- Auto-restart server when server and client versions do not match
- Add
spring servercommand to explicitly start a Spring server
process in the foreground, which logging to stdout. This will be
useful to those who want to run spring more explicitly, but the real
impetus was to enable running a spring server inside a Docker
container. - Numerous other tweaks to better support running Spring inside
containers (see
https://github.com/jonleighton/spring-docker-example)
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.7.1
- Specify absolute path to spring binfile when starting the server
(#478) - Time out after 10 seconds if starting the spring server doesn't work
(maybe related to #480, #479) - Prevent infinite boot loop when trying to restart the spring server
due to client/server version mismatch (related to #479)
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 1.7.2
- Use
Spring.failsafe_threadto prevent threads from aborting process due toThread.abort_on_exceptionwhen set totrue
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 2.0.1
- Fix bug which could cause Spring to hang when
Thread.abort_on_exceptionistrue(#497)
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 2.0.0
- Drop Rails 4.0 and 4.1 support
- Add explicit support for Rails 5 (no changes were needed)
- Use Bundler::LockfileParser to parse lockfile instead of regex (#492)
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 2.0.2
- Fix reloading when a watched directory contains a dangling symlink (#522)
- Watcher logs its activity to the Spring log (#522)
- Polling watcher stops polling after changes have been detected (#523)
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 2.1.0
-
Add explicit support for Rails 6 (no changes were needed)
-
Drop support to Ruby 1.9, 2.0, 2.1, and 2.3
-
Fix binstubs not being replaced when their quoting style was changed (#534)
-
Preserve comments right after the shebang line which might include magic comments such as
frozen_string_literal: true -
Fix binstub failures when Bundler's
BUNDLE_APP_CONFIGenvironment variable is present (#545) -
Properly suspend and resume on ctrl-z TSTP and CONT (#361)
-
Added support for
gems.rbwith Gemfile file name detection using Bundler
method (#524)Michał Zalewski, JuPlutonic
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 2.1.1
- Avoid -I rubylibdir with default-gem bundler
- Start server process in directory where command was called
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 3.0.0
- Require applications to have reloading enabled in the managed environments.
- Require Ruby 2.5.
- Require Rails 5.2.
- Ruby
Published by rafaelfranca 3 months ago
https://github.com/rails/spring - 4.7.0
What's Changed
- Make client smarter about Spring server state by @Korri in https://github.com/rails/spring/pull/756
Full Changelog: https://github.com/rails/spring/compare/v4.6.0...v4.7.0
- Ruby
Published by rafaelfranca 4 months ago
https://github.com/rails/spring - 4.6.0
- Add
Spring.dangerously_allow_disabling_reloadingopt-in to skip the:ensure_reloading_is_enabledinitializer check, so projects that want to run withconfig.cache_classes = true/config.enable_reloading = falsecan.
The default behavior (refuse to boot) is unchanged, as using this option requires a Rails application that uses
lazy-loader for everything (most importantly, routes & i18n translations).
What's Changed
- Add Spring.allow_reloading_disabled opt-in by @Korri in https://github.com/rails/spring/pull/755
Full Changelog: https://github.com/rails/spring/compare/v4.5.0...v4.6.0
- Ruby
Published by rafaelfranca 4 months ago
https://github.com/rails/spring - v4.5.0
What's Changed
- Add Spring.after_environment_load hook for post-Rails preloading by @jahfer in https://github.com/rails/spring/pull/754
- Don't crash on client disconnect (Server and Application) by @Korri in https://github.com/rails/spring/pull/751
- Eagerly preload framework base classes by @Korri in https://github.com/rails/spring/pull/752
- Do not load configuration options from
.railsrcwhen generating dummy app by @sebroeder in https://github.com/rails/spring/pull/543 - Run without error if spring is in uninstalled group by @mkllnk in https://github.com/rails/spring/pull/684
New Contributors
- @jahfer made their first contribution in https://github.com/rails/spring/pull/754
- @Korri made their first contribution in https://github.com/rails/spring/pull/751
- @sebroeder made their first contribution in https://github.com/rails/spring/pull/543
- @mkllnk made their first contribution in https://github.com/rails/spring/pull/684
- @boddhisattva made their first contribution in https://github.com/rails/spring/pull/537
Full Changelog: https://github.com/rails/spring/compare/v4.4.2...v4.5.0
- Ruby
Published by rafaelfranca 5 months ago
https://github.com/rails/spring - 4.4.2
What's Changed
- Fix spawn_on_env vars leaking from server to app by @hmcguire-shopify in https://github.com/rails/spring/pull/749
New Contributors
- @hmcguire-shopify made their first contribution in https://github.com/rails/spring/pull/749
Full Changelog: https://github.com/rails/spring/compare/v4.4.1...v4.4.2
- Ruby
Published by rafaelfranca 8 months ago
https://github.com/rails/spring - 4.4.1
What's Changed
- Uses subclasses instead of descendants to support Rails < 7.1
- Pass signaled exit code properly to the client by @rafaelfranca in https://github.com/rails/spring/pull/744
Full Changelog: https://github.com/rails/spring/compare/v4.4.0...v4.4.1
- Ruby
Published by rafaelfranca 9 months ago
https://github.com/rails/spring - 4.4.0
What's Changed
- Revert the removal of UTF-8 force encoding in JSON loading by @paracycle in https://github.com/rails/spring/pull/738
- Shush the
backtrace_locations, too by @amomchilov in https://github.com/rails/spring/pull/740 - Recommend setting
enable_reloadingon newer Rails versions by @nvasilevski in https://github.com/rails/spring/pull/715 - Drop support to end-of-life Ruby versions by @rafaelfranca in https://github.com/rails/spring/pull/743
- Prevent server crash by restarting child by @prognostikos in https://github.com/rails/spring/pull/727
New Contributors
- @paracycle made their first contribution in https://github.com/rails/spring/pull/738
- @vfonic made their first contribution in https://github.com/rails/spring/pull/742
- @fynsta made their first contribution in https://github.com/rails/spring/pull/722
- @amomchilov made their first contribution in https://github.com/rails/spring/pull/740
- @prognostikos made their first contribution in https://github.com/rails/spring/pull/728
Full Changelog: https://github.com/rails/spring/compare/v4.3.0...v4.4.0
- Ruby
Published by rafaelfranca about 1 year ago
https://github.com/rails/spring - 4.3.0
What's Changed
- Fix reloading issue in Ruby 3.3.
- Fixed compatibility with
--enable-frozen-string-literal. - Add embeded engines to default reload matcher.
New Contributors
- @chaadow made their first contribution in https://github.com/rails/spring/pull/719
- @thomasmarshall made their first contribution in https://github.com/rails/spring/pull/730
Full Changelog: https://github.com/rails/spring/compare/v4.2.1...v4.3.0
- Ruby
Published by rafaelfranca about 1 year ago
https://github.com/rails/spring - 4.2.1
What's Changed
- Added
Spring.connect_timeoutandSpring.boot_timeoutto allow to increase timeout for larger apps. Spring.connect_timeoutnow default to5seconds instead of1.
Full Changelog: https://github.com/rails/spring/compare/v4.2.0...v4.2.1
- Ruby
Published by rafaelfranca about 1 year ago
https://github.com/rails/spring - 4.2.0
What's Changed
- Added
Spring.reset_on_envto define environment variables which should cause spring to reload when they change. - Added
Spring.spawn_on_envto define environment variables that should cause spring to start a distinct server. - Better handle a case where the server could hang.
New Contributors
- @technicalpickles made their first contribution in https://github.com/rails/spring/pull/708
Full Changelog: https://github.com/rails/spring/compare/v4.1.3...v4.2.0
- Ruby
Published by rafaelfranca about 1 year ago
https://github.com/rails/spring - 4.1.3
What's Changed
- Bring back
Spring::Watcher::Abstract#synchronizemethod to fix compatibility withspring-watcher-listen.
Full Changelog: https://github.com/rails/spring/compare/v4.1.2...v4.1.3
- Ruby
Published by rafaelfranca about 1 year ago
https://github.com/rails/spring - 4.1.2
What's Changed
- Drop dependency on
mutex_m. Avoid issues with loading the wrong version before bundler kicks in.
New Contributors
- @niku made their first contribution in https://github.com/rails/spring/pull/696
- @esposito made their first contribution in https://github.com/rails/spring/pull/698
- @koic made their first contribution in https://github.com/rails/spring/pull/700
Full Changelog: https://github.com/rails/spring/compare/v4.1.1...v4.1.2
- Ruby
Published by rafaelfranca about 1 year ago
https://github.com/rails/spring - 4.1.1
What's Changed
- Fix a small compatibility issue with Ruby 3.2 causing
Kernel#raiseto not accept acause.
Full Changelog: https://github.com/rails/spring/compare/v4.1.0...v4.1.1
- Ruby
Published by rafaelfranca about 1 year ago
https://github.com/rails/spring - 4.1.0
What's Changed
- Fix bug which makes commands to freeze when the Rails application is writing to STDERR.
- Fix rails db:system:change command failure issue.
- Defer digest loading.
- Add support for
SPRING_QUIETenvironment variable.
New Contributors
- @mernen made their first contribution in https://github.com/rails/spring/pull/667
- @theodorton made their first contribution in https://github.com/rails/spring/pull/672
- @mvz made their first contribution in https://github.com/rails/spring/pull/623
- @timdiggins made their first contribution in https://github.com/rails/spring/pull/681
- @thewoolleyman made their first contribution in https://github.com/rails/spring/pull/674
- @inayuky made their first contribution in https://github.com/rails/spring/pull/679
Full Changelog: https://github.com/rails/spring/compare/v4.0.0...v4.1.0
- Ruby
Published by rafaelfranca about 1 year ago
https://github.com/rails/spring - v4.0.0
What's Changed
- Stop depending on Set by @casperisfine in https://github.com/rails/spring/pull/659
- Drop support to Ruby < 2.7 and Rails < 6.0 by @rafaelfranca in https://github.com/rails/spring/pull/661
- Modernize spring binstubs and disable it in production by @rafaelfranca in https://github.com/rails/spring/pull/662
Full Changelog: https://github.com/rails/spring/compare/v3.1.1...v4.0.0
- Ruby
Published by rafaelfranca almost 5 years ago
https://github.com/rails/spring - 3.1.1
- Fix compatibility issues with code that raises exceptions with frozen backtraces.
- Better support Ruby 3.0.
- Ruby
Published by rafaelfranca almost 5 years ago
https://github.com/rails/spring - 3.1.0
- Fix bug which makes rails consoles to hang at exit when multiple of them are open (#647).
- Fix support to
gems.rbfile. - Ensure bundler is required when used.
- Support
rails db:*tasks. - Check that app preload was successful before sending a command.
- Ruby
Published by rafaelfranca almost 5 years ago