49 Commits

Author SHA1 Message Date
Shishir Kakaraddi
115a01a7c2 bump up version to 1.3 2018-07-16 21:52:58 -07:00
Erol
fa194133fa Use record type instead of reflected record type 2018-07-16 21:10:10 -07:00
Erol
e2bf5411a2 Set the record type for inherited serializers 2018-07-16 21:10:10 -07:00
Erol
ab652c4400 Remove unused code 2018-07-16 21:10:10 -07:00
Erol
a363c90bfb Allow the serializer to return sparse fieldsets 2018-07-16 21:10:10 -07:00
Erol
449c1bf05f Allow passing procs with variable arguments when declaring an attribute 2018-07-16 21:10:10 -07:00
Oleksiy Babich
ecb92f07f5 add is_collection parameter to force corresponding serialization (#239)
* add is_collection parameter to force corresponding serialization

* add documentation for is_collection purpose, behavior
and notes re. default autodetect logic
2018-07-03 19:35:06 -07:00
Kyle Reeves
af38b30179 remove options param from Link class 2018-07-03 19:33:34 -07:00
Kyle Reeves
01477e9c5b fix relationship id_hash method 2018-07-03 19:33:34 -07:00
Kyle Reeves
699630d812 create link class 2018-07-03 19:33:34 -07:00
Kyle Reeves
f86a8926f5 make include_relationship? a public method and use it in get_included_records method 2018-07-03 19:33:34 -07:00
Kyle Reeves
30596c4488 move add_relationship to each class method 2018-07-03 19:33:34 -07:00
Kyle Reeves
6e7d8b7ee0 make fetch_associated_object a public method on relationship class so it can be called from SerilizationCore class 2018-07-03 19:33:34 -07:00
Kyle Reeves
22d412246f WIP 2018-07-03 19:33:34 -07:00
Kyle Reeves
7b23adddc4 working on new relationship class 2018-07-03 19:33:34 -07:00
Trevor Hinesley
f864099761 Conditional relationships should be removed from included when proc evaluates to false 2018-07-03 19:33:34 -07:00
Kyle Reeves
5558dcd703 allow conditional relationships 2018-07-03 19:33:34 -07:00
Guillermo Iguaran
2b01d8ce70 Use a Railtie to extend Rails 2018-06-21 18:40:42 -07:00
Darren Johnson
4a333d7276 Set type value when setting key transform 2018-06-21 18:40:24 -07:00
Trevor Hinesley
ba4e112829 Since attributes are an instantiated class now, renamed AttributeSerializer to Attribute 2018-06-21 18:38:42 -07:00
Trevor Hinesley
5c820695b3 Split attribute serialization into its own class 2018-06-21 18:38:42 -07:00
Trevor Hinesley
bad004fd42 Allow conditional attributes 2018-06-21 18:38:42 -07:00
homer
44d5e0f9c5 Fix serialization for nested nil includes with block 2018-05-31 17:16:54 -07:00
Shishir Kakaraddi
81375cfcf7 bump up version to 1.2 2018-05-31 16:36:16 -07:00
Shishir Kakaraddi
ef42fb3031 Changes for version 1.2 (#220)
params support in blocks, nested includes etc

Co-authored-by: Jodi Showers <jodi@nnovation.ca>
Co-authored-by: Ryan O'Donnell <ryan@gocleary.com>
Co-authored-by: Les Fletcher <les.fletcher@gmail.com>
Co-authored-by: Ankit gupta <ankit.gupta8898@gmail.com>
Co-authored-by: Masato Ohba <over.rye@gmail.com>
Co-authored-by: Shuhei Kitagawa <shuhei.kitagawa@c-fo.com>
Co-authored-by: Zino <rhu5@u.rochester.edu>
Co-authored-by: Carlos Solares <csolares23@gmail.com>
Co-authored-by: Brandon Buck <lordizuriel@gmail.com>
Co-authored-by: Daniel Roux <xuoroux@gmail.com>
Co-authored-by: Dillon Welch <daw0328@gmail.com>
2018-05-31 16:35:59 -07:00
Ihor Dotsenko
270276d264 Fix bug with chaining rescues of FastJsonapi::MultiToJson::Result 2018-03-19 13:13:27 -07:00
Shuhei Kitagawa
43239aff49 Enable to set customized id column 2018-03-18 08:29:13 -07:00
Shuhei Kitagawa
8f4e716153 Define set_id method 2018-03-18 08:29:13 -07:00
Shishir Kakaraddi
00e960f883 adds the use_hyphen feature back and adds a deprecation warning 2018-03-17 18:33:55 -07:00
Les Fletcher
8d905dbdfd taking a crack at the normalizers 2018-03-12 22:46:41 -07:00
Les Fletcher
2da0b5bd87 rework of AS Notifications 2018-03-12 22:46:41 -07:00
Shuhei Kitagawa
b4eaa04c09 Add frozen_string_literal: true 2018-03-12 22:20:48 -07:00
Shuhei Kitagawa
8c630d9b1c Remove unused local variables from #relationships_hash 2018-03-12 22:20:09 -07:00
Sam Morgan
dfd215d3a1 91 allow includes strings (#93)
* add hash benchmarking to performance tests

* Add missing attribute in README example

* Disable GC before doing performance test

* Enable oj to AM for fair benchmark test

* add information on performance methodology

* add oss metadata

* Make an error that demonstrates [Issue

* Simple RSpec test that fails with a non-empty string but passes with a
non-empty symbol
* To run the test, rspec spec/lib/object_serializer_spec.rb

* Map includes to symbols if they are provided as strings

* Includes would fail with an ArgumentError unless they were explicitly
provided as symbols (see #97)
* This is solved by mapping the strings to symbols in the
ObjectSerializer initializer
* No real impact on performance here
2018-02-28 08:29:24 -08:00
Jay Hayes
95c136fa0f Add #to_hash conversion protocol to object serializer 2018-02-22 08:04:40 -08:00
Christopher Sansone
b30a53bc5f ability to customize rendering of attributes via a block (#54)
* add hash benchmarking to performance tests

* Add missing attribute in README example

* Disable GC before doing performance test

* Enable oj to AM for fair benchmark test

* ability to customize rendering of attributes via a block

* fixed attribute render spec

* minimized specs to specifially test this feature

* Update README to include attribute definitions

* Fixed syntax error

* Fixed merge issues
2018-02-09 08:59:07 -08:00
Roberto Quintanilla
6d516c217c Support for polymorphic associations (#64)
* add hash benchmarking to performance tests

* Add missing attribute in README example

* Disable GC before doing performance test

* Enable oj to AM for fair benchmark test

* Support for polymorphic associations

* Optional dictionary for polymorphic associations

* Added polymorphic record types memoization

* Updated performance tests for polymorphic examples to include jsonapi-rb
2018-02-08 22:18:46 -08:00
Benjamin Fleischer
d4b6216ff3 Make our own fast MultiToJson 2018-02-07 18:02:59 -08:00
Benjamin Fleischer
b717ffeccf Let people choose their JSON serializer; JSON:API is not circular 2018-02-07 18:02:59 -08:00
Shishir Kakaraddi
a3a989244b initial commit to allow the same kind of key transforms as AMS 2018-02-05 21:06:57 -08:00
Guillermo Iguaran
639c314272 Use Object#public_send to respect attributes visibility 2018-02-04 19:32:59 -08:00
Shishir Kakaraddi
dbdc85a875 initial commit removing all the dependencies 2018-02-04 17:24:11 -08:00
Sergii Makagon
7f27543081 Refactoring 2018-02-04 17:12:18 -08:00
Benjamin Roth
dc563407e0 rename in-block var to avoid confusion 2018-02-04 12:00:45 -08:00
Benjamin Roth
088d655998 get rid of temp variables 2018-02-04 12:00:45 -08:00
Adam Gross
0c9dd44cba
Merge pull request #14 from forward3d/remove_skylight_forced_dependency
Move skylight to dev_dep and check whether loaded or not
2018-02-01 10:38:05 -08:00
Min.Kim
62e1419465 Move skylight to dev_dep and check whether loaded or not 2018-02-01 17:01:04 +00:00
Amrr Bakry
c25dc7c60a Remove duplicated record_type 2018-02-01 17:48:58 +02:00
Shishir Kakaraddi
5374a1378e initial commit 2018-01-31 16:20:40 -08:00