Recent Releases of https://github.com/jmespath/jmespath.rb
https://github.com/jmespath/jmespath.rb - Release v1.6.2 - 2022-11-25
-
Issue - Allow comparison of Numeric types (includes Float).
-
Issue - Add jmespath.rb to gemspec executables.
- Ruby
Published by mullermp over 3 years ago
https://github.com/jmespath/jmespath.rb - Release v1.6.1 - 2022-03-07
- Issue - Use
JSON.parseinstead ofJSON.load.
- Ruby
Published by alextwoods almost 4 years ago
https://github.com/jmespath/jmespath.rb - Release v1.6.0 - 2022-02-14
- Feature - Add support for string comparissons.
- Ruby
Published by alextwoods about 4 years ago
https://github.com/jmespath/jmespath.rb - Release v1.5.0 - 2022-01-10
-
Support implicitly convertible objects/duck-type values responding to
to_hashandto_ary.
- Ruby
Published by alextwoods about 4 years ago
https://github.com/jmespath/jmespath.rb - Release v1.4.0 - 2018-04-04
References: #40, #41, #42, #44
-
Update the bundled compliance tests. Fix the 6 failing test cases that result
from updating the test suite. Test failures included parsing errors and
returning nil when comparing non-nil values. -
Fix typo of a license name in gemspec.
-
Test against Ruby 2.4 in Travis.
-
Add support for floating point comparisons.
- Ruby
Published by trevorrowe almost 8 years ago
https://github.com/jmespath/jmespath.rb - Release v1.3.1 - 2016-07-18
References: #36
- Bug fix for users that have a 2.0.1+ version of the
json_puregem loaded
in their environment prior to requiringjmespath.
- Ruby
Published by trevorrowe over 9 years ago
https://github.com/jmespath/jmespath.rb - Release v1.3.0 - 2016-07-07
References: #24, #29, #31, #35
-
Restored support for legacy unquoted string literals.
-
Improved error handling for invalid JSON values.
-
Optimised false checks.
-
Removed depdendency on
pure_jsongem. Necessary code changes have been
made to ensure things work properly with Ruby 1.9.3 and JSON 1.5.5. -
Bug-fix for Ruby 2.3. JMESPath requires sort and sort_by functions to be stable.
There was a persistent test failure in Ruby 2.3 due to an unstable sort.
- Ruby
Published by trevorrowe over 9 years ago
https://github.com/jmespath/jmespath.rb - Release v1.2.4 - 2016-04-06
References: #23
-
Will no longer require json_pure if the json gem has already been loaded.
This will result in a warning and a degraded experience if json < 1.8.1
has already been loaded.Mixing json/pure with json/ext results in json errors, for example:
some_hash = { 'jsonrpc' => 'abc', 'jsonversion' => 1 } some_hash.to_json #=> raises a JSON::Pure::Generator::State TypeError
- Ruby
Published by trevorrowe almost 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.2.3 - 2016-04-01
References: #20, #21
-
Will no longer require json_pure if the json gem has already been loaded.
This will result in a warning and a degraded experience if json < 1.8.1
has already been loaded.Mixing json/pure with json/ext results in json errors, for example:
some_hash = { 'jsonrpc' => 'abc', 'jsonversion' => 1 } some_hash.to_json #=> raises a JSON::Pure::Generator::State TypeError
- Ruby
Published by trevorrowe almost 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.2.2 - 2016-03-31
References: #18, #19
-
Removed hard dependency on
json >= 1.8.1. Replaced withjson_pure >= 1.8.1.
The runtime will still attempt to load the faster gem, if availble and will fall
back onjson_purefor compatability. Ruby 2.0+ ships with 1.8.1 by default,
so only Ruby 1.9.3 will default to the slower version.
- Ruby
Published by trevorrowe almost 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.2.1 - 2016-03-31
- Minor change in require order.
1.2 (2016-03-30)
-
Errors caused by invalid function arguments normally raise
an arity or argument error. You can now preventJMESPath.search
from raising these errors by passingdisable_visit_error: true.JMESPath.search(expression, data, disable_visit_errors: true)This will cause these functions to return a null/nil value instead.
-
Fix for Ruby 1.9.3. Older versions of Ruby ship with a version of the json
gem that can not perform the following:JSON.load('1')This results in the JMESPath library in assuming is parsing an unknown or
invalid token. This works fine newer versions of Ruby. To resolve this issue
the library is forcing a newer version of thejsongem. -
Fix for boolean truthy checks.
See related GitHub issue #15. -
Updated code to pass the latest shared compliance tests.
-
Added support for the
mapfunction. -
Added support for JEP-9,
including unary filter expressions, and&&filter expressions.
- Ruby
Published by trevorrowe almost 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.2 - 2016-03-31
References: #11
-
Errors caused by invalid function arguments normally raise
an arity or argument error. You can now preventJMESPath.search
from raising these errors by passingdisable_visit_error: true.JMESPath.search(expression, data, disable_visit_errors: true)This will cause these functions to return a null/nil value instead.
-
Fix for Ruby 1.9.3. Older versions of Ruby ship with a version of the json
gem that can not perform the following:JSON.load('1')This results in the JMESPath library in assuming is parsing an unknown or
invalid token. This works fine newer versions of Ruby. To resolve this issue
the library is forcing a newer version of thejsongem. -
Fix for boolean truthy checks.
See related GitHub issue #15. -
Updated code to pass the latest shared compliance tests.
-
Added support for the
mapfunction. -
Added support for JEP-9,
including unary filter expressions, and&&filter expressions.
- Ruby
Published by trevorrowe almost 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.1.3 - 2015-09-17
- Removed json gem dependency.
- Ruby
Published by trevorrowe over 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.1.2 - 2015-09-17
- Resolved an issue preventing eager autoloading of comparator classes.
- Ruby
Published by trevorrowe over 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.1.1 - 2015-09-16
- Fix for Ruby version 1.9.3 which does not support
#[]
onEnumerablefrom Ruby stdlib.
- Ruby
Published by trevorrowe over 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.1.0 - 2015-09-16
References: #5, #7
-
Updated the compliance tests. Pulled in the latest version from
https://github.com/jmespath/jmespath.test/commit/47fa72339d0e5a4d0e9a12264048fc580ed0bfd8. -
Adds a new JIT-friendly interpreter and AST optimizations that evaluating
expressions faster. -
Removed dependency on
multi_json. -
Now running compliance tests as part of release process.
- Ruby
Published by trevorrowe over 10 years ago
https://github.com/jmespath/jmespath.rb - Release v1.0.2 - 2014-12-04
References: #2, #3
- Added a copy of the Apache 2.0 license to the project and now
now bundling the license as part of the release.
- Ruby
Published by trevorrowe about 11 years ago
https://github.com/jmespath/jmespath.rb - Release v1.0.1 - 2014-10-28
- Bug-fix, when accessing Struct objects with an invalid member
nilis now returned, instead of raising an error.
- Ruby
Published by trevorrowe over 11 years ago
https://github.com/jmespath/jmespath.rb - Release v1.0.0 - 2014-10-28
-
The expression cache now has a maximum size.
-
Documented the
rake benchmarkandrake benchmark:cachedtasks. -
You can now disable expression caching when constructing a Runtime by
passing:cache_expressions => false. Caching is still enabled by
default.# disable caching runtime = JMESPath::Runtime.new(cache_expressions: false) runtime.search(expression, data) -
Adding a missing require statement for Pathname to the JMESPath module.
- Ruby
Published by trevorrowe over 11 years ago
https://github.com/jmespath/jmespath.rb - Release v0.9.0 - 2014-10-27
-
Addded support for searching over hashes with symbolized keys and Struct
objects indifferently# symbolized hash keys data = { foo: { bar: { yuck: 'value' } } } JMESPath.search('foo.bar.yuck', data) #=> 'value' # Struct objects data = Struct.new(:foo).new( Struct.new(:bar).new( Struct.new(:yuck).new('value') ) ) JMESPath.search('foo.bar.yuck', data) #=> 'value' -
Added a simple thread-safe expression parser cache; This significantly speeds
up searching multiple times with the same expression. This cache is enabled
by default when callingJMESPath.search -
Added simple benchmark suite. You can execute benchmarks with with
rake benchmark
orCACHE=1 rake benchmark; Caching is disabled by default in the benchmarks.
- Ruby
Published by trevorrowe over 11 years ago
https://github.com/jmespath/jmespath.rb - Release v0.2.0 - 2014-10-24
- Passing all of the JMESPath compliance tests.
- Ruby
Published by trevorrowe over 11 years ago