Skip to content

3.0.0

Compare
Choose a tag to compare
@bkeepers bkeepers released this 12 Feb 16:38
· 35 commits to main since this release
dd40e1c

See #476 for more details and to discuss this release.

Breaking Changes

  • Ruby >= 3.0 and Rails >= 6.1 are now required. Lock dotenv to ~> 2.0 if you are using an outdated Ruby or Rails version. #466, #471
  • \n is no longer expanded into a newline in quoted strings. Use multi-line strings with real line breaks, or set DOTENV_LINEBREAK_MODE=legacy to preserve the old behavior. @nitsujri #423
  • ENV will be automatically restored between tests (ActiveSupport::TestCase and Rspec). #472, #475
  • Fixed precedence when using Dotenv::Rails.overload. So now .env.development.local will overwrite .env.local, which will overwrite .env.development, which will overwrite .env. @eriklovmo - #460
  • The instrumentation event dotenv.load has been renamed to load.dotenv to properly make use of namespaces in ActiveSupport::Notifications #472

Other improvements

  • All changes to ENV will be logged in Rails apps. #473
  • Fixed an issue where rake loaded development files (.env*development) for test-related tasks. #470
  • Add -i/--ignore option to dotenv CLI to optionally ignore missing files. @stevenharman #463
  • You can customize which files get loaded by setting Dotenv::Rails.files. #468

Deprecations

  • The dotenv-rails gem is now superfluous. It's not technically deprecated yet and will continue to work, but the dotenv gem does the same thing. #468
  • Dotenv::Railtie has been deprecated. Use Dotenv::Rails. #468
  • Dotenv.overload has been replaced with overwrite. overload will still work and is not technically deprecated, but documentation refers to Dotenv.overwrite now. #469

New Contributors

Full Changelog: v2.8.1...v3.0.0.beta