Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Enable `Layout/EmptyLinesAroundAccessModifier` cop | Ryuta Kamizono | 2019-06-13 | 1 | -2/+0 |
| | | | | | | | | | | | We sometimes say "✂️ newline after `private`" in a code review (e.g. https://github.com/rails/rails/pull/18546#discussion_r23188776, https://github.com/rails/rails/pull/34832#discussion_r244847195). Now `Layout/EmptyLinesAroundAccessModifier` cop have new enforced style `EnforcedStyle: only_before` (https://github.com/rubocop-hq/rubocop/pull/7059). That cop and enforced style will reduce the our code review cost. | ||||
* | Unify _read_attribute definition to use &block | Takashi Kokubun | 2018-12-20 | 1 | -10/+2 |
| | | | | | | | | Thanks to ko1, passing block parameter to another method is significantly optimized in Ruby 2.5. https://bugs.ruby-lang.org/issues/14045 Thus we no longer need to keep this ugly hack. | ||||
* | `deep_dup` is used in `AttributeSet#deep_dup` | Ryuta Kamizono | 2018-01-13 | 1 | -0/+1 |
| | |||||
* | Change how `AttributeSet::Builder` receives its defaults | Sean Griffin | 2017-11-27 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | There are two concerns which are both being combined into one here, but both have the same goal. There are certain attributes which we want to always consider initialized. Previously, they were handled separately. The primary key (which is assumed to be backed by a database column) needs to be initialized, because there is a ton of code in Active Record that assumes `foo.id` will never raise. Additionally, we want attributes which aren't backed by a database column to always be initialized, since we would never receive a database value for them. Ultimately these two concerns can be combined into one. The old implementation hid a lot of inherent complexity, and is hard to optimize from the outside. We can simplify things significantly by just passing in a hash. This has slightly different semantics from the old behavior, in that `Foo.select(:bar).first.id` will return the default value for the primary key, rather than `nil` unconditionally -- however, the default value is always `nil` in practice. | ||||
* | Move Attribute and AttributeSet to ActiveModel | Lisa Ugray | 2017-11-09 | 1 | -0/+113 |
Use these to back the attributes API. Stop automatically including ActiveModel::Dirty in ActiveModel::Attributes, and make it optional. |