Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge branch 'ruby220' of https://github.com/hsbt/json into zzak-ruby-2.2zzak-ruby-2.2 | Florian Frank | 2015-01-03 | 0 | -0/+0 |
|\ | |||||
| * | fix to build fail with rb_str_new macro usage | SHIBATA Hiroshi | 2014-12-28 | 1 | -1/+1 |
| | | |||||
* | | Merge branch 'master' into zzak-ruby-2.2 | Florian Frank | 2015-01-02 | 7 | -94/+113 |
|\ \ | |||||
| * | | Improve JRuby perf. by removing source of multithreaded contention | Ben Browning | 2015-01-02 | 2 | -89/+91 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The RuntimeInfo.forRuntime method synchronizes all invocations and ParserSession#parseString was calling this many times when parsing large JSON strings. Thus, when running in a heavily multithreaded environment, threads were spending a large portion of their time waiting on that synchronization instead of doing work parsing the JSON. This fix simply passes in the RuntimeInfo object to the ParserSession when it's instantiated, since the RuntimeInfo is already known and we've already incurred the synchronization cost at that time. Using the test script at https://gist.github.com/bbrowning/0b89580b03a5f19e7a9f, I get the following results before and after this fix on my machine: Before: $ jruby ~/tmp/json_contention.rb 337.920000 0.570000 338.490000 ( 57.955000) After: $ jruby ~/tmp/json_contention.rb 326.400000 0.580000 326.980000 ( 43.084000) That's a 25% reduction in processing time for parsing the same JSON on my quad core machine. I'd expect an even higher percentage improvement on a machine with more CPUs. | ||||
| * | | Added ruby-head to travis allowed-failures | Iain Beeston | 2015-01-02 | 1 | -0/+1 |
| | | | | | | | | | | | | | | | | | | | | | This is probably a contraversial idea. ruby-head can be fairly unstable but then json is a core gem. At least if it's an allowed-failure then builds will always be run against ruby-head, but pull requests (and master) won't report build failures if something is broken in ruby-head | ||||
| * | | Don't mutate JSON.dump_default_options from dump | Jason R. Clark | 2015-01-02 | 2 | -1/+7 |
| | | | | | | | | | | | | | | | | | | | | | The use of Hash#update from the JSON.dump method was mutating the dump_default_options hash on any call to dump with a limit provided. An individual method call with an overriding value shouldn't update the defaults in this way. | ||||
| * | | No binstubs | Florian Frank | 2015-01-02 | 1 | -1/+1 |
| | | | |||||
| * | | Reindented | Florian Frank | 2015-01-02 | 1 | -7/+6 |
| | | | |||||
| * | | Document `Rational` json generation methods. | Vipul A M | 2015-01-02 | 1 | -4/+10 |
| | | | |||||
| * | | Document `Complex` json generation methods. | Vipul A M | 2015-01-02 | 1 | -1/+7 |
| | | | |||||
| * | | Use method_defined? to check if method exists instead of slower check on ↵ | Vipul A M | 2015-01-02 | 1 | -1/+1 |
| | | | | | | | | | | | | instance_methods | ||||
| * | | Update json-java.gemspec | Daniel Grippi | 2015-01-02 | 1 | -1/+1 |
| | | | | | | | | | | | | Pluralize "license" to match other gemspecs. | ||||
| * | | Change documentation to reflect new default value | Florian Frank | 2015-01-02 | 1 | -2/+2 |
| | | | |||||
| * | | Fix typo in comment | Ignacio Galindo | 2015-01-02 | 1 | -1/+1 |
| | | | |||||
* | | | Fall back to Data_* wrappers on ancient rubies | Florian Frank | 2015-01-02 | 5 | -1/+19 |
| | | | |||||
* | | | Fix typo | Florian Frank | 2015-01-02 | 1 | -1/+1 |
| | | | |||||
* | | | Merge branch 'ruby-2.2' of https://github.com/zzak/json into zzak-ruby-2.2 | Florian Frank | 2015-01-02 | 17 | -59/+125 |
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | Conflicts: .travis.yml json.gemspec json_pure.gemspec | ||||
| * | | Ignore generated files | Zachary Scott | 2014-12-27 | 1 | -0/+2 |
| | | | |||||
| * | | RUBY_TYPED_FREE_IMMEDIATELY isn't always available | Zachary Scott | 2014-12-27 | 3 | -33/+39 |
| | | | |||||
| * | | Use ALLOC and MEMZERO instead of ZALLOC | Zachary Scott | 2014-12-26 | 1 | -1/+2 |
| | | | |||||
| * | | Revert part of "Sync with trunk" | Zachary Scott | 2014-12-26 | 3 | -49/+0 |
| | | | | | | | | | | | | This partially reverts commit 18b3000. | ||||
| * | | Ignore .bundle generated files | Zachary Scott | 2014-12-26 | 1 | -0/+1 |
| | | | |||||
| * | | Add extconf from trunk | Zachary Scott | 2014-12-25 | 1 | -0/+3 |
| | | | |||||
| * | | Only use gc stress assert if available | Zachary Scott | 2014-12-25 | 1 | -9/+11 |
| | | | |||||
| * | | Sync tests with trunk | Zachary Scott | 2014-12-25 | 2 | -15/+11 |
| | | | |||||
| * | | This file shouldn't be committed | Zachary Scott | 2014-12-25 | 3 | -281/+1 |
| | | | |||||
| * | | bundle exec rake | Zachary Scott | 2014-12-25 | 3 | -3/+283 |
| | | | | | | | | | | | | generates new specs and makefile for compiling the CEXT | ||||
| * | | Build on 2.2.0 too | Zachary Scott | 2014-12-25 | 1 | -0/+1 |
| | | | |||||
| * | | This value has changed somehow | Zachary Scott | 2014-12-25 | 1 | -1/+1 |
| | | | |||||
| * | | Sync with trunk | Zachary Scott | 2014-12-25 | 15 | -112/+197 |
| |/ | |||||
| * | Merge pull request #221 from iainbeeston/allow_ruby_head_to_fail | Florian Frank | 2014-11-05 | 1 | -0/+1 |
| |\ | | | | | | | Allow ruby-head builds to fail | ||||
| | * | Added ruby-head to travis allowed-failures | Iain Beeston | 2014-11-04 | 1 | -0/+1 |
| |/ | | | | | | | | | | | | | This is probably a contraversial idea. ruby-head can be fairly unstable but then json is a core gem. At least if it's an allowed-failure then builds will always be run against ruby-head, but pull requests (and master) won't report build failures if something is broken in ruby-head | ||||
| * | Merge pull request #217 from jasonrclark/dont_mutate_dump_default_options | Florian Frank | 2014-09-26 | 2 | -1/+7 |
| |\ | | | | | | | Don't mutate JSON.dump_default_options from dump | ||||
| | * | Don't mutate JSON.dump_default_options from dump | Jason R. Clark | 2014-09-19 | 2 | -1/+7 |
| |/ | | | | | | | | | | | | | The use of Hash#update from the JSON.dump method was mutating the dump_default_options hash on any call to dump with a limit provided. An individual method call with an overriding value shouldn't update the defaults in this way. | ||||
| * | - Pass over generator.c for grammar fixes. | Vipul A M | 2014-07-03 | 3 | -5/+4 |
| | | | | | | | | - Typo fixes across json ext | ||||
| * | Fix documentation wording | Florian Frank | 2014-07-03 | 1 | -1/+1 |
| | | |||||
| * | Test on Ruby 2.1.x as well | Florian Frank | 2014-07-03 | 1 | -1/+1 |
| | | |||||
| * | Merge pull request #212 from vipulnsward/pass-typo | Florian Frank | 2014-07-03 | 4 | -13/+13 |
| |\ | | | | | | | Grammar/ Typo fixes | ||||
| | * | - Pass over generator.c for grammar fixes. | Vipul A M | 2014-07-03 | 4 | -13/+13 |
| |/ | | | | | | | - Typo fixes across json ext | ||||
| * | No binstubs | Florian Frank | 2014-07-03 | 1 | -1/+1 |
| | | |||||
| * | Newest ruby 2.1.x | Florian Frank | 2014-07-03 | 1 | -1/+1 |
| | | |||||
| * | Reindented | Florian Frank | 2014-07-03 | 1 | -7/+6 |
| | | |||||
| * | Document `Rational` json generation methods. | Vipul A M | 2014-07-03 | 1 | -4/+10 |
| | | |||||
| * | Merge pull request #211 from vipulnsward/complex-doc | Florian Frank | 2014-07-03 | 1 | -1/+7 |
| |\ | | | | | | | Document `Complex` json generation methods. | ||||
| | * | Document `Complex` json generation methods. | Vipul A M | 2014-07-03 | 1 | -1/+7 |
| | | | |||||
| * | | Merge pull request #209 from vipulnsward/method-defined | Florian Frank | 2014-07-03 | 1 | -1/+1 |
| |\ \ | | |/ | |/| | Use method_defined? to check if method exists instead of slower check | ||||
| | * | Use method_defined? to check if method exists instead of slower check on ↵ | Vipul A M | 2014-07-03 | 1 | -1/+1 |
| |/ | | | | | | | instance_methods | ||||
| * | Merge pull request #202 from danielgrippi/patch-1 | Florian Frank | 2014-04-02 | 1 | -1/+1 |
| |\ | | | | | | | Update json-java.gemspec | ||||
| | * | Update json-java.gemspec | Daniel Grippi | 2014-04-02 | 1 | -1/+1 |
| |/ | | | | | Pluralize "license" to match other gemspecs. | ||||
| * | Change documentation to reflect new default value | Florian Frank | 2014-04-01 | 2 | -3/+3 |
| | |