Fix loading of Hashie.logger and set it to Rails.logger when in Rails #400

Merged
merged 3 commits into from Feb 10, 2017

Conversation

Projects
None yet
2 participants
@michaelherold
Contributor

michaelherold commented Feb 10, 2017

The auto-load is never triggered because there is no Hashie::Logger
constant to trigger it. We need to require the file in the top level
hashie.rb and anywhere else that uses it (in case someone just loads a
single file).

At the moment, this is only used in Mash, so we're covered.

In addition, try to be smarter about the default logger by setting it to the
Rails logger when we're in a Rails environment.

Remove auto-load for `Hashie.logger`
The auto-load is never triggered because there is no `Hashie::Logger`
constant to trigger it. We need to `require` the file in the top level
`hashie.rb` and anywhere else that uses it (in case someone just loads a
single file).

At the moment, this is only used in Mash, so we're covered.

@michaelherold michaelherold self-assigned this Feb 10, 2017

@dblock

This comment has been minimized.

Show comment
Hide comment
@dblock

dblock Feb 10, 2017

Contributor

Ah, interesting. Exclude spec/integration/rails/log/test.log and this is good to go I think.

Contributor

dblock commented Feb 10, 2017

Ah, interesting. Exclude spec/integration/rails/log/test.log and this is good to go I think.

@michaelherold

This comment has been minimized.

Show comment
Hide comment
@michaelherold

michaelherold Feb 10, 2017

Contributor

D'oh! Totally missed that. It's so important to have more than one set of eyes on something.

Contributor

michaelherold commented Feb 10, 2017

D'oh! Totally missed that. It's so important to have more than one set of eyes on something.

@michaelherold michaelherold merged commit c36f67e into intridea:master Feb 10, 2017

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@dblock dblock referenced this pull request Feb 10, 2017

Closed

Hashie warnings and Rails #394

@michaelherold michaelherold deleted the michaelherold:rails-logger branch Feb 10, 2017

jsonn pushed a commit to jsonn/pkgsrc that referenced this pull request Mar 20, 2017

taca
Update ruby-hashie to 3.5.5.
# Change Log

## [3.5.5] - 2017-02-24

[3.5.5]: intridea/hashie@v3.5.4...v3.5.5

### Added

* [#326](intridea/hashie#326): Added `Hashie::Extensions::Mash::KeepOriginalKeys` to give Mashes the ability to keep the original structure given to it - [@michaelherold](https://github.com/michaelherold).

### Fixed

* [#415](intridea/hashie#415): Fixed Mash logging keys multiple times which lead to a bad user experience or, in some cases, errors - [@michaelherold](https://github.com/michaelherold).

## [3.5.4] - 2017-02-22

[3.5.4]: intridea/hashie@v3.5.3...v3.5.4

### Added

* [#412](intridea/hashie#412): Added a Hashie::Extensions::Mash::SymbolizeKeys extension that overrides the default stringification behavior for keys - [@michaelherold](https://github.com/michaelherold).

### Fixed

* [#409](intridea/hashie#409): Fixed Railtie detection for projects where Rails is defined but Railties are not availble - [@CallumD](https://github.com/callumd).
* [#411](intridea/hashie#411): Fixed a performance regression from 3.4.3 that caused a 10x slowdown in OmniAuth - [@michaelherold](https://github.com/michaelherold).

## [3.5.3] - 2017-02-11

[3.5.3]: intridea/hashie@v3.5.2...v3.5.3

### Fixed

* [#402](intridea/hashie#402): Use a Railtie to set Hashie.logger on rails boot - [@matthewrudy](https://github.com/matthewrudy).
* [#406](intridea/hashie#406): Ensure that subclasses that disable warnings propagate that setting to grandchild classes - [@michaelherold](https://github.com/michaelherold).
* Your contribution here.

## [3.5.2] - 2017-02-10

[3.5.2]: intridea/hashie@v3.5.1...v3.5.2

### Added

* [#395](intridea/hashie#395): Add the ability to disable warnings in Mash subclasses - [@michaelherold](https://github.com/michaelherold).
* [#400](intridea/hashie#400): Fix Hashie.logger load and set the Hashie logger to the Rails logger in a Rails environment - [@michaelherold](https://github.com/michaelherold).

### Fixed

* [#396](intridea/hashie#396): Fix for specs in #381: Incorrect use of shared context meant example was not being run - [@biinari](https://github.com/biinari).
* [#399](intridea/hashie#399): Fix passing Pathname object to Hashie::Mesh.load() - [@albb0920](https://github.com/albb0920).

### Miscellanous

* [#397](intridea/hashie#397): Add the integration specs harness into the main test tasks - [@michaelherold](https://github.com/michaelherold).

## [3.5.1] - 2017-01-31

* [#392](intridea/hashie#392): Fix for #391: Require all dependencies of Hashie::Mash - [@dblock](https://github.com/dblock).

[3.5.1]: intridea/hashie@v3.5.0...v3.5.1

## [3.5.0] - 2017-01-31

* [#386](intridea/hashie#386): Fix for #385: Make `deep_merge` always `deep_dup` nested hashes before merging them in so that there are no shared references between the two hashes being merged. - [@mltsy](https://github.com/mltsy).
* [#389](intridea/hashie#389): Support Ruby 2.4.0 - [@camelmasa](https://github.com/camelmasa).

[3.5.0]: intridea/hashie@v3.4.6...v3.5.0

### Added

* [#381](intridea/hashie#381): Add a logging layer that lets us report potential issues to our users. As the first logged issue, report when a `Hashie::Mash` is attempting to overwrite a built-in method, since that is one of our number one questions - [@michaelherold](https://github.com/michaelherold).

### Changed

* [#384](intridea/hashie#384): Updated to CodeClimate 1.x - [@boffbowsh](https://github.com/boffbowsh).

### Fixed

* [#369](intridea/hashie#369): If a translation for a property exists when using IndifferentAccess and IgnoreUndeclared, use the translation to find the property - [@whitethunder](https://github.com/whitethunder).
* [#376](intridea/hashie#376): Leave string index unchanged if it can't be converted to integer for Array#dig - [@sazor](https://github.com/sazor).
* [#377](intridea/hashie#377): Dont use Rubygems to check ruby version - [@sazor](https://github.com/sazor).
* [#378](intridea/hashie#378): Deep find all searches inside all nested hashes - [@sazor](https://github.com/sazor).
* [#380](intridea/hashie#380): Evaluate procs default values of Dash in object initialization - [@sazor](https://github.com/sazor).

### Miscellanous

* [#387](intridea/hashie#387): Fix builds failing due to Rake 11 having a breaking change - [@michaelherold](https://github.com/michaelherold).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment