| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
we need to get a grip on what `scope` actually does. This commit
removes some of the internal calls to `scope`. Eventually we should add
public facing methods that provide the API that `scope` is trying to
accomplish.
|
|
|
|
|
|
| |
`prepare_params!` would raise an exception if `params` wasn't
initialized, so it must always be available. Remove the existence
conditional from the `controller` method.
|
|
|
|
|
| |
The method we called already has the conditional we need. Just add an
else block so that we don't need two tests.
|
|
|
|
|
|
|
| |
`Dispatcher` doesn't need to hold on to the defaults hash. It only used
the hash to determine whether or not it should raise an exception if
there is a name error. We can pass that in further up the stack and
alleviate Dispatcher from knowing about that hash.
|
|
|
|
|
|
| |
We know in advance whether the object is a dispatcher or not, so we can
configure the Constraints object with a strategy that will call the
right method.
|
| |
|
|
|
|
| |
it isn't used.
|
|\
| |
| | |
Reference actual classes
|
| | |
|
|\ \
| | |
| | | |
[ci skip] Fix the AS::Callbacks terminator docs
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The second argument of the terminator lambda is no longer the result
of the callback, but the result lambda.
https://github.com/rails/rails/blob/3a7609e2bafee4b071fe35136274e6ccbae8cacd/activesupport/test/callbacks_test.rb#L553
|
|\ \ \
| |_|/
|/| | |
[ci skip] Give in-depth explanation of migrations vs. seeds.rb
|
| | | |
|
|\ \ \
| | | |
| | | | |
[ci skip] Adding a note to Action Mailer Basics documentation that Google increased its security measures
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
increased its
security measures so using the example for Gmail will return a “Password Incorrect” error,
and you will receive an email from Google that they blocked a sign-in attempt. You can change
your Gmail settings or use another ESP.
I discovered this when I was testing a simple mailer example app and was just going to
use my personal Gmail account for the test. I think it would be best to note this change
since now Gmail may not be the best option for a quick test. I hope this saves time for other Rails
developers. The Gmail example does show a good example of how to configure the smpt settings.
|
|\ \ \
| |_|/
|/| | |
replace each with each_key when only the key is needed
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Using each_key is faster and more intention revealing.
Calculating -------------------------------------
each 31.378k i/100ms
each_key 33.790k i/100ms
-------------------------------------------------
each 450.225k (± 7.0%) i/s - 2.259M
each_key 494.459k (± 6.3%) i/s - 2.467M
Comparison:
each_key: 494459.4 i/s
each: 450225.1 i/s - 1.10x slower
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The tests and methods were hard to read with `options[:options]` all
over the place. This refactoring makes the code easier to understand.
The change came out of work for moving the underlying code of controller
tests to integraiton tests.
|
|\ \ \
| | | |
| | | | |
Allow a custom dispatcher to be provided to routing.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
scope so that they are available to subclasses.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Using the string version of the class reference is now deprecated when
referencing middleware. This should be written as a class not as a string.
Deprecation warning that this change fixes:
```
DEPRECATION WARNING: Passing strings or symbols to the middleware
builder is deprecated, please change
them to actual class references. For example:
"ActionDispatch::ShowExceptions" => ActionDispatch::ShowExceptions
```
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
`extra_keys` is a confusing variable name because it's not clear what is
"extra". This renames it to `query_string_keys` so it's clear that the
"extra" is just the query string.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We were doing extra work that could be pushed off to Integration test
and SharedRoutes. Creating an extra module isn't necessary when those
are created by their respective classes.
|
|\ \ \ \
| | | | |
| | | | | |
use uuid method to define the UUID type [ci skip]
|
|/ / / / |
|
|\ \ \ \
| |/ / /
|/| | | |
[ci skip] Add an explanation for `status` option
|
|/ / / |
|
| | |
| | |
| | |
| | |
| | |
| | | |
people should be accessing request information through the request
object, not via the env hash. If they really really want at the env
hash, then they can get it off the request.
|
| | |
| | |
| | |
| | |
| | | |
remove the setter. The request object manages the env hash, so any
mutations need to go through it
|
| | |
| | |
| | |
| | |
| | | |
Looks like this was left over from converting Rails to Rack. I think
it's safe to remove now.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Actions are processed through `dispatch`, so they should have the
request set on them before any user land code can be executed. Lets
stop setting _env on the controller, and give access to it through the
`env` method.
|
| | |
| | |
| | |
| | |
| | | |
since we only work with instances of classes, it greatly simplifies the
`Middleware` implementation.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Convert things like this:
middleware.use "Foo::Bar"
to this:
middleware.use Foo::Bar
|
| | |
| | |
| | |
| | |
| | | |
use a strategy pattern to calculate the conditional in `valid?` in
advance.
|
| | |
| | |
| | |
| | |
| | |
| | | |
We should do the hard work outside the constructor. Also fix the tests
to not directly construct middleware objects, but to go through the
stack object.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Proc.new will pick up the passed in block, but since it's a default
param, it won't get evaluated unless someone doesn't pass in an app. It
will raise an exception if no block is provided.
|
|/ / |
|
|\ \
| |/
|/| |
Remove XML Serialization from core
|
| |
| |
| |
| |
| |
| |
| | |
This includes the following classes:
- ActiveModel::Serializers::Xml
- ActiveRecord::Serialization::XmlSerializer
|
|/
|
|
| |
Discussion https://github.com/JuanitoFatas/fast-ruby/pull/59#issuecomment-128513763
|
|
|
|
|
| |
this is another place that we should stop directly accessing the env
hash and let the request object take care of that for us
|
| |
|
|\
| |
| | |
in_batches using ids
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`in_batches` yields Relation objects if a block is given, otherwise it
returns an instance of `BatchEnumerator`. The existing `find_each` and
`find_in_batches` methods work with batches of records. The new API
allows working with relation batches as well.
Examples:
Person.in_batches.each_record(&:party_all_night!)
Person.in_batches.update_all(awesome: true)
Person.in_batches.delete_all
Person.in_batches.map do |relation|
relation.delete_all
sleep 10 # Throttles the delete queries
end
|
|\ \
| | |
| | | |
Fix doc typo
|
|/ / |
|
|\ \
| |/
|/|
| |
| | |
lsylvester/only-invoke-mattr_accessor-default-block-once
Prevent the default block for mattr_accessor being called multiple times
|
|/
|
|
| |
cause issues if it is not idempotent
|
|\
| |
| | |
[ci skip] Remove `identity.active_record`
|