Commit Graph

759 Commits

Author SHA1 Message Date
Benjamin Fleischer
d7de53ce30 Consider evaluating association in serializer context
For discussion:

Consider evaluating association in serializer context

That way, associations are really just anything that
can be conditionally included.  They no longer
have to actually be methods on the object or serializer.

e.g.

```diff
has_many :comments do
- last(1)
+ Comment.active.for_serialization(object).last(1)
end
```
2015-12-29 22:16:42 -06:00
Lucas Hosseini
12cd190cfc Merge pull request #1402 from beauby/extract-caching
Extract caching into its own module
2015-12-28 03:33:44 +01:00
Lucas Hosseini
fd06a8ad0d Extract caching into its own module. 2015-12-28 02:53:49 +01:00
Benjamin Fleischer
bb67735c79 Merge pull request #1398 from tricknotes/ruby-2.3
Test against Ruby 2.3.0 on Travis CI
2015-12-25 19:42:42 -06:00
Ryunosuke SATO
8df6d8acc1 Test against Ruby 2.3.0 on Travis CI 2015-12-26 05:13:52 +09:00
Benjamin Fleischer
cca723ae42 Merge pull request #1397 from bf4/rbx_is_unreliable_in_ci
Closes #1396.  RBX just causes unnecessary CI failures
2015-12-24 12:08:31 -06:00
Benjamin Fleischer
7688d3be90 Closes #1396. RBX just causes unnecessary CI failures 2015-12-24 11:55:11 -06:00
Benjamin Fleischer
4ac2908986 Merge pull request #1392 from bf4/add_jruby
Add JRuby 9000 to CI matrix
2015-12-24 11:37:53 -06:00
Benjamin Fleischer
b3bcafcb95 Merge pull request #1394 from maurogeorge/patch-16
Remove ActiveModelSerializers.silence_warnings dead code
2015-12-24 11:35:55 -06:00
Benjamin Fleischer
651aef0d74 Merge pull request #1395 from maurogeorge/patch-17
Drop Ruby 1.9.3 on AppVeyor
2015-12-23 17:58:10 -06:00
Mauro George
9031367b98 Drop Ruby 1.9.3 on AppVeyor 2015-12-23 19:39:15 -02:00
Mauro George
5fb7cceafb Remove ActiveModelSerializers.silence_warnings dead code
The ActiveModelSerializers.silence_warnings was used to avoid warnings on the
Ruby interpreter when define a private attr_acessor. This method is not used in
any part of the code and the recommend way to handle this case is to use
protected instead the silence_warnings [1].

This patch remove the method from the project, this way we avoid people using
this by mistake.

[1]: https://bugs.ruby-lang.org/issues/10967
2015-12-23 19:25:48 -02:00
Benjamin Fleischer
94ca0e0701 Add JRuby 9000 to CI matrix 2015-12-22 23:54:29 -06:00
Benjamin Fleischer
d8b2b94a22 Merge pull request #1387 from bf4/add_rubocop_todos_to_contributing
Add rubocop todos to contributing [ci skip]
2015-12-22 21:43:39 -06:00
Benjamin Fleischer
63ed552e08 Merge pull request #1391 from maurogeorge/patch-15
Drop JRuby 1.9 from Travis
2015-12-22 21:32:47 -06:00
Mauro George
b773f84085 Drop JRuby 1.9
Since we are no longer support Ruby 1.9 we are safe to remove this from the CI.
2015-12-22 20:23:29 -02:00
Benjamin Fleischer
b6a4ad1c26 Merge pull request #1383 from beauby/simplify-associations
Simplify reflections handling.
2015-12-22 10:37:28 -06:00
Benjamin Fleischer
9909908962 Merge pull request #1384 from bf4/fix_ci_failures
Fix db state leaking across tests
2015-12-21 17:23:04 -06:00
Benjamin Fleischer
f8b3af8ea4 Add rubocop todos to contributing [ci skip] 2015-12-20 22:42:14 -06:00
Benjamin Fleischer
fce856fc83 Merge pull request #1371 from bf4/documentation_updates
[DOCS] Refactor, update, create documentation
2015-12-20 22:30:44 -06:00
Benjamin Fleischer
30fd9d9eb7 Merge pull request #1353 from bf4/disable_serializer_lookup
Allow users to globally opt out of automatic serializer lookup
2015-12-20 20:04:16 -06:00
Benjamin Fleischer
6aa5a4f7eb Control db records created vs. tested against 2015-12-20 15:07:41 -06:00
Benjamin Fleischer
58937f4969 Clear out created db records after test 2015-12-20 15:02:16 -06:00
Lucas Hosseini
762f298c03 Simplify reflections handling. 2015-12-20 16:19:10 +01:00
Benjamin Fleischer
dff607dc41 Merge pull request #1336 from johnhamelink/master
Grape formatter feature requested in #1258 - Rebased and Repushed (#1273)
2015-12-17 20:31:38 -06:00
Benjamin Fleischer
13c9a90fa5 Fix grammar per nullvoxpopli [ci skip] 2015-12-16 12:56:55 -06:00
Benjamin Fleischer
9030c2b065 Add link to slack per discussion with duduribeiro [ci skip] 2015-12-15 22:06:13 -06:00
Benjamin Fleischer
9c3431db9e Fix grammar per duduribeiro [ci skip] 2015-12-15 21:34:25 -06:00
Benjamin Fleischer
51af5a4b76 fix typo caught by duduribeiro 2015-12-15 21:29:39 -06:00
Benjamin Fleischer
ce17a1b305 [DOCS] Refactor, update, create documentation [ci skip] 2015-12-14 14:38:29 -06:00
Benjamin Fleischer
1301b52696 Merge branch 'supported_ruby_changes'
Closes #1360, #1369

- @karaAJC updated CI Ruby from 2.2.2 to 2.2.3
- @karaAJC updated CI Ruby to remove Ruby 1.9.3
- @maurogeorge updated gemspec to require Ruby >= 2.0.0
2015-12-14 14:24:11 -06:00
Benjamin Fleischer
60ac749edf Cleanup CHANGELOG 2015-12-14 14:21:55 -06:00
Mauro George
488370fc0b Drop support to Ruby 1.9.3 2015-12-14 14:18:29 -06:00
Kara Carrell
850ac3feaf drop support to Ruby 1.9.3 from build matrix 2015-12-14 14:18:06 -06:00
Kara Carrell
338868a450 Update travis build matrix to include Ruby 2.2.3 for Rails 5 2015-12-14 14:18:06 -06:00
Benjamin Fleischer
f562449bd4 Merge pull request #1356 from bf4/attribute_objects
Add inline syntax for attributes and associations
2015-12-10 15:10:45 -06:00
Benjamin Fleischer
bf8270b8b4 Document Serializer settings and private api [ci skip] 2015-12-10 15:08:22 -06:00
Julian Paas
d85a17bb33 Grape formatter feature requested in #1258
- adds handling for when the returned resource is not serializable via ams
 - fix for when resource is an Array
 - Moves grape include to grape namespace. Changes Enumerable to Array because a plain hash is enumerable.
 - Add integration test
 - Refine scope of Grape version dependency
 - Assert that the response is equal to a manually defined JSON string
 - Add single module to include in Grape projects
 - Create a Serializable Resource to test rails-api from Grape
 - Update docs
 - Fix discrepency between ActiveRecord 4.0 - 4.1 and 4.2
 - Updated Changelog
 - Remove parens from `render`, use `serializable` in all tests.
2015-12-10 10:06:40 +00:00
Benjamin Fleischer
614e349502 Merge pull request #1301 from rails-api/jsonapi_schema
Mapping JSON API spec / schema to AMS [ci skip]
2015-12-09 17:08:57 -06:00
Benjamin Fleischer
d64c7e11d6 Merge pull request #1364 from johnathanludwig/update_issue_links
[DOCS] Update links to point to correct PRs
2015-12-04 15:15:12 -06:00
Johnathan Ludwig
269e11f360 Update links to point to correct PRs 2015-12-04 16:10:29 -05:00
Benjamin Fleischer
386a567dfc Evaluate association blocks as scopes on the association 2015-12-04 13:58:22 -06:00
Benjamin Fleischer
3e8290a923 Serializer instance methods don't change; track at class level
Per groyoh
https://github.com/rails-api/active_model_serializers/pull/1356#discussion_r46713503
2015-12-04 13:31:34 -06:00
Benjamin Fleischer
5301112c27 Merge pull request #1312 from NullVoxPopuli/integration-docs
[DOCS] begin integration docs
2015-12-03 11:26:06 -06:00
Benjamin Fleischer
c4feccfd10 Refactor Association/Reflection block value reading 2015-12-03 10:53:43 -06:00
Benjamin Fleischer
cd736e0adf Memoize attributes 2015-12-02 17:47:24 -06:00
Benjamin Fleischer
036604b149 Extract Serializer Attributes into its own file 2015-12-02 17:45:42 -06:00
Benjamin Fleischer
eceb2d5598 Refactor serializer attribute objects 2015-12-02 17:33:57 -06:00
Benjamin Fleischer
8804d758ef Remove dynamically defined instance methods 2015-12-02 17:20:22 -06:00
Benjamin Fleischer
0bf45ec2a7 Small refactor to Serializer::_attribute_mappings 2015-12-02 17:20:22 -06:00