| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, this would give an `ArgumentError`:
class Issue < ActiveRecord::Base
enum :status, [:open, :finished]
end
Issue.open.build # => ArgumentError: '0' is not a valid status
Issue.open.create # => ArgumentError: '0' is not a valid status
PR #13542 muted the error, but the issue remains. This commit fixes
the issue by allowing the enum value to be written directly via the
setter:
Issue.new.status = 0 # This now sets status to :open
Assigning a value directly via the setter like this is not part of the
documented public API, so users should not rely on this behavior.
Closes #13530.
|
|
|
|
|
|
|
| |
These methods were only used for the `IdentityMap` which was removed.
They are no longer used internally and should be removed without replacement.
As they were not `:nodoc:`'ed it's better to deprecate them before removal.
|
|\
| |
| | |
Use DATABASE_URL by default
|
|/
|
| |
See https://github.com/rails/rails/pull/13463#issuecomment-31480799 for full conversation.
|
|\
| |
| | |
provide correct information [ci skip]
|
| | |
|
|\ \
| | |
| | | |
Automatically maintain test database schema
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Move check from generated helper to test_help.rb, so that all
applications can benefit
* Rather than just raising when the test schema has pending migrations,
try to load in the schema and only raise if there are pending
migrations afterwards
* Opt out of the check by setting
config.active_record.maintain_test_schema = false
* Deprecate db:test:* tasks. The test helper is now fully responsible
for maintaining the test schema, so we don't need rake tasks for this.
This is also a speed improvement since we're no longer reloading the
test database on every call to "rake test".
|
|/
|
|
|
|
| |
Ruby 2.1.0 includes the json gem 1.8.1 by default so we need bundler 1.5.1
for `bundle install` to work. To fix this reverse the downgrade to 1.3.5
and wrap the `run_generator` call with a block that resets `THOR_DEBUG`.
|
| |
|
|
|
|
|
|
|
| |
Since rbx and jruby builds are being allowed to fail lets receive the
build information early enabling this option
See http://about.travis-ci.org/blog/2013-11-27-fast-finishing-builds/
|
|\
| |
| | |
Move default production database to URL sub key
|
| |
| |
| |
| | |
By using the URL sub key in the `database.yml` by default we are exposing the ability to set other attributes such as `pool` or `reap_frequency` without need of modifying the URL to contain non-connection specific information.
|
|/
|
|
|
|
|
|
|
|
|
| |
Bundler sets the THOR_DEBUG environment variable causing Thor to
re-raise exceptions on exit. This is breaking the railties tests
for generators where we are trying to capture error output.
The PR bundler/bundler#2794 fixes this by adding a per-instance
config `:debug` but this has not been released yet so to prevent
errors going unnoticed downgrade bundler to 1.3.5 until such a
time that 1.5.2 has been released.
|
|\
| |
| |
| | |
Fix enum writers when using integers
|
| |
| |
| |
| |
| | |
Add a mention about the automatic generation of scopes based on the
allowed values of the field on the enum documentation.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, the writer methods would simply check whether the passed
argument was the symbol representing the integer value of an enum field.
Therefore, it was not possible to specify the numeric value itself but
the dynamically defined scopes generate where clauses relying on this
kind of values so a chained call to a method like `find_or_initialize_by`
would trigger an `ArgumentError`.
Reference #13530
|
| | |
|
|\ \
| | |
| | |
| | | |
Use `Array#wrap` instead `Array()`
|
| | | |
|
| | |
| | |
| | |
| | | |
- since `Array()` calls `to_ary` or `to_a` on a subject
- the intent is to 'wrap' subject into an array
|
| | |
| | |
| | |
| | |
| | |
| | | |
is pasted.
[ci skip]
|
| | |
| | |
| | |
| | | |
Closes #13566
|
| | |
| | |
| | |
| | | |
Closes #13565
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Lazy loading the tzinfo library doesn't really buy us anything because
the gem is installed as a dependency via the gemspec and if a developer
is using Active Support outside of Rails then they can cherry pick which
files to load anyway.
Fixes #13553
|
|\ \ \
| | | |
| | | | |
2014 is here.
|
|/ / / |
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fix for #13437
Conflicts:
activerecord/CHANGELOG.md
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
a8 introduced a regression in includes/preloades
by calling `read_attribute` on an association when preloading takes places, instead of using loaded records in `association.target`.
tl;dr
Records are not made properly available via `read_attribute` when preloding in simultaneous,
but value of `@loaded` is already set true, and records concatenated in `association.target` on an association object.
When `@loaded` is true we return an object of `AlreadyLoaded` in preload_for. In `AlreadyLoaded` to return preloaded
records we make wrong use of `read_attribute`, instead of `target` records.
The regression is fixed by making use of the loaded records in `association.target` when the preloading takes place.
Fixes #13437
|
|\ \ \ \
| | | | |
| | | | | |
Update grant statement to address #13549
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
to make this grant statement described in the document works
GRANT ALL PRIVILEGES ON inexistent_activerecord_unittest.* to 'rails'@'localhost';
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Avoid raising a NameError on FreeBSD using Date
|
| | |_|_|/
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The Date object has a xmlschema method starting with Ruby 1.9 so we were
assuming that we could safely remove this method and redefine it later
but the call to remove_method throws a NameError on FreeBSD so we should
rely on remove_possible_method instead.
This call is actually needed to avoid warnings when running the test
suite.
Fixes #11723
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
[ci skip] Add missing flash message in block filter example.
|
| | | | |
| | | | |
| | | | |
| | | | | |
Also make all three examples consistent.
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Fix comment syntax
|
| | | | |
| | | | |
| | | | |
| | | | | |
The code syntax in the comment example is invalid
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Example:
# application routes.rb
mount BlogEngine => '/blog'
# engine routes.rb
get '/welcome' => redirect('')
This now redirects to the path `/blog`, whereas before it would redirect
to the application root path. In the case of a path redirect or a custom
redirect if the path returned contains a host then the path is treated as
absolute. Similarly for option redirects, if the options hash returned
contains a `:host` or `:domain` key then the path is treated as absolute.
Fixes #7977
|
|\ \ \ \
| | | | |
| | | | | |
Add the ability to nullize the enum column
|
|/ / / / |
|
|\| | | |
|
| |\ \ \
| | |_|/
| |/| | |
Add any/all support for variants
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Like `format.any`, you can do the same with variants.
It works for both inline:
respond_to do |format|
format.html.any { render text: "any" }
format.html.phone { render text: "phone" }
end
and block syntax:
respond_to do |format|
format.html do |variant|
variant.any(:tablet, :phablet){ render text: "any" }
variant.phone { render text: "phone" }
end
end
|
| |\ \ \ |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|