summaryrefslogtreecommitdiff
path: root/ext/psych
Commit message (Collapse)AuthorAgeFilesLines
* [ruby/psych] Prefer `require_relative` for internal requiresDavid Rodríguez2021-10-2415-49/+49
| | | | https://github.com/ruby/psych/commit/a0f55ee85a
* [ruby/psych] Add stringio as a dependency.Josef Šimánek2021-10-241-0/+2
| | | | https://github.com/ruby/psych/commit/86e3049579
* [ruby/psych] Bump up psych version to 4.0.2Hiroshi SHIBATA2021-10-211-1/+1
| | | | https://github.com/ruby/psych/commit/69a713f860
* ruby tool/update-deps --fix卜部昌平2021-10-051-0/+45
|
* [ruby/psych] Replace A-Za-z with [:alpha:]jory-graham2021-08-311-1/+1
| | | | https://github.com/ruby/psych/commit/8ec36494fb
* [ruby/psych] Add quotes to the strings "y" and "n"Aaron Patterson2021-08-311-0/+2
| | | | | | | | | | | | 'y' and 'n' are kind of ambiguous. Syck treated y and n literals in YAML documents as strings. But this is not what the YAML 1.1 spec says. YAML 1.1 says they should be treated as booleans. When we're dumping documents, we know it's a string, so adding quotes will eliminate the "ambiguity" in the emitted document Fixes #443 https://github.com/ruby/psych/commit/6a1c30634e
* [ruby/psych] Update lib/psych/scalar_scanner.rbopak2021-08-311-1/+1
| | | | | https://github.com/ruby/psych/commit/64cc239557 Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>
* [ruby/psych] add more testsAlexandr Opak2021-08-311-4/+4
| | | | https://github.com/ruby/psych/commit/8f71222bf3
* [ruby/psych] fix parsing integer values with '_' at the endAlexandr Opak2021-08-311-4/+4
| | | | https://github.com/ruby/psych/commit/e0bb853014
* [ruby/psych] Improve float scalar scannerTomer Brisker2021-08-311-4/+3
| | | | | | | | | Previously, `+.inf` was not handled correctly. Additionally, the regexp was checking for inf and NaN, even though these cases are handled earlier in the condition. Added a few tests to ensure handling some missing cases. https://github.com/ruby/psych/commit/6e0e7a1e9f
* [ruby/psych] fix: use git repository link for LibYAML in docsRhys Powell2021-07-291-1/+1
| | | | | | LibYAML has moved from their previous Mercurial based hosting on BitBucket to a git repository on GitHub. This commit updates the `Psych` module's documentation to point to this new repository, instead of the old one which is now a 404. https://github.com/ruby/psych/commit/947a84d0dd
* [ruby/psych] Bump version to 4.0.1Hiroshi SHIBATA2021-06-071-1/+1
| | | | https://github.com/ruby/psych/commit/4049939006
* [ruby/psych] Implement YAML.safe_dump to make safe_load more usable.Jean Boussier2021-06-074-5/+125
| | | | | | | | | | | In case where Psych is used as a two way serializers, e.g. to serialize some cache or config, it is preferable to have the same restrictions on both load and dump. Otherwise you might dump and persist some objects payloads that you later won't be able to read. https://github.com/ruby/psych/commit/441958396f
* [ruby/psych] Make YAML.load_file use YAML.load instead of safe_loadYusuke Endoh2021-06-071-2/+11
| | | | | | | | | | YAML.load and YAML.safe_load are different a little; the former allows Symbol by default but the latter doesn't. So YAML.load_file and YAML.safe_load_file should reflect the difference. Fixes #490 https://github.com/ruby/psych/commit/f8a5e512a1
* [ruby/psych] remove deprecated interfaceAaron Patterson2021-05-171-54/+6
| | | | https://github.com/ruby/psych/commit/0767227051
* [ruby/psych] Bump versionAaron Patterson2021-05-171-1/+1
| | | | https://github.com/ruby/psych/commit/1df86a2e81
* [ruby/psych] Use Psych.safe_load by defaultAaron Patterson2021-05-171-6/+47
| | | | | | | | | | | Psych.load is not safe for use with untrusted data. Too many applications make the mistake of using `Psych.load` with untrusted data and that ends up with some kind of security vulnerability. This commit changes the default `Psych.load` to use `safe_load`. Users that want to parse trusted data can use Psych.unsafe_load. https://github.com/ruby/psych/commit/176494297f
* [ruby/psych] Introduce `Psych.unsafe_load`Aaron Patterson2021-05-172-5/+7
| | | | | | | | | | | | | | | | In future versions of Psych, the `load` method will be mostly the same as the `safe_load` method. In other words, the `load` method won't allow arbitrary object deserialization (which can be used to escalate to an RCE). People that need to load *trusted* documents can use the `unsafe_load` method. This commit introduces the `unsafe_load` method so that people can incrementally upgrade. For example, if they try to upgrade to 4.0.0 and something breaks, they can downgrade, audit callsites, change to `safe_load` or `unsafe_load` as required, and then upgrade to 4.0.0 smoothly. https://github.com/ruby/psych/commit/cb50aa8d3f
* [ruby/psych] Fix symabolize_name with non-string keysJean Boussier2021-05-171-1/+1
| | | | https://github.com/ruby/psych/commit/1c5c29e81f
* [ruby/psych] feat: allow scalars and sequences to be styled when dumpedJeremy Ebler2021-05-171-2/+2
| | | | https://github.com/ruby/psych/commit/546154ddb7
* [ruby/psych] Fix some typos [ci skip]Ryuta Kamizono2021-05-104-7/+7
| | | | https://github.com/ruby/psych/commit/98617e55a1
* [ruby/psych] bump versionAaron Patterson2021-05-101-1/+1
| | | | https://github.com/ruby/psych/commit/091cd46b1f
* [ruby/psych] docs: fix simple typo, expessed -> expressedTim Gates2021-05-101-1/+1
| | | | | | | | There is a small typo in ext/psych/yaml/yaml.h. Should read `expressed` rather than `expessed`. https://github.com/ruby/psych/commit/1150d669cb
* [ruby/psych] Update to latest SnakeYAMLCharles Oliver Nutter2021-05-101-1/+1
| | | | | | Fixes jruby/jruby#6365 https://github.com/ruby/psych/commit/a88ff77f02
* [ruby/psych] Fix custom marshalization with symbolize_names: trueJean Boussier2021-05-101-3/+3
| | | | https://github.com/ruby/psych/commit/ee26f26ab5
* [ruby/psych] Cache dispatch cache in an instance variableJean Boussier2021-05-101-1/+1
| | | | https://github.com/ruby/psych/commit/285c461cd2
* [ruby/psych] Cache access to Psych.load_tags in Visitor::ToRubyJean Boussier2021-05-101-4/+6
| | | | https://github.com/ruby/psych/commit/58223f0426
* Fix -Wundef warnings for patterns `#if HAVE`Benoit Daloze2021-05-041-1/+1
| | | | | | * See [Feature #17752] * Using this to detect them: git grep -P 'if\s+HAVE' | grep -Pv 'HAVE_LONG_LONG|/ChangeLog|HAVE_TYPEOF'
* dependency updates卜部昌平2021-04-131-5/+0
|
* Text files should end with a newlineNobuyoshi Nakada2021-03-301-1/+1
|
* Expose scheduler as public interface & bug fixes. (#3945)Samuel Williams2021-02-091-70/+115
| | | | | | | | | * Rename `rb_scheduler` to `rb_fiber_scheduler`. * Use public interface if available. * Use `rb_check_funcall` where possible. * Don't use `unblock` unless the fiber was non-blocking.
* [ruby/psych] Bump version to 3.3.0Hiroshi SHIBATA2020-12-231-1/+1
| | | | https://github.com/ruby/psych/commit/0abce07b90
* [ruby/psych] Optimize cache with `compare_by_identity`Marc-Andre Lafortune2020-12-232-2/+2
| | | | | Using `compare_by_identity` gives a 4x performance boost on cache hits. Benchmark in https://github.com/JuanitoFatas/fast-ruby/issues/189
* [ruby/psych] Make Ractor-ready.Marc-Andre Lafortune2020-12-233-6/+43
| | | | | | | Config is Ractor-local. Benchmarking reveals that using `Ractor.local_storage` for storing cache is similar to accessing a constant (~15% slower).
* [ruby/psych] Don't use instance variables directly for configMarc-Andre Lafortune2020-12-231-9/+9
|
* [ruby/psych] Avoid methods depending on bindingsMarc-Andre Lafortune2020-12-231-3/+5
| | | | Improves Ractor-readiness.
* [ruby/psych] Freeze constants.Marc-Andre Lafortune2020-12-232-3/+3
| | | | Improves Ractor-readiness.
* Strip trailing spaces [ci skip]Nobuyoshi Nakada2020-12-191-3/+3
|
* Merge Psych-3.2.1 from ruby/psychHiroshi SHIBATA2020-12-143-7/+24
|
* Appended a newline to suppress newline-eof warningNobuyoshi Nakada2020-10-061-1/+1
|
* [ruby/psych] Forward keyword arguments in load_file and load_streamJean Boussier2020-09-251-5/+5
| | | | https://github.com/ruby/psych/commit/4e1dd37f09
* [ruby/psych] Bump version to 3.2.0Hiroshi SHIBATA2020-09-251-1/+1
| | | | https://github.com/ruby/psych/commit/181a727c90
* [ruby/psych] Revert psych versionSzymonKowalczyk2020-09-251-1/+1
| | | | https://github.com/ruby/psych/commit/55a294fcd0
* [ruby/psych] Update SNAKEYAML CVE-2017-18640SzymonKowalczyk2020-09-251-2/+2
| | | | | to version 1.26 https://github.com/ruby/psych/commit/b2802135e7
* Remove private_iv_getCharles Oliver Nutter2020-09-252-13/+1
| | | | | | | | | | | | | | | | | | | | | The only remaining use of this function was to get the internal message object from an exception's hidden `mesg` instance variable to allow it to be dumped wiithout converting to a string. As discussed in #103, this exposes internal implementation details of CRuby, and ultimately does not provide any real utility to the user since they can't directly inspect this hidden variable. The test change here is to reflect CRuby behavior that denies equality if the internal message objects do not match, as is the case after the exception has been loaded and now has a simple String value. The impact to users is that exceptions with special hidden message objects will convert those objects to String during marshaling through YAML. I believe this only affects NameError and its descendants, since users can't set this field directly on their own exception types. Fixes #103.
* sed -i '/rmodule.h/d'卜部昌平2020-08-271-5/+0
|
* sed -i '/r_cast.h/d'卜部昌平2020-08-271-5/+0
|
* sed -i '\,2/extern.h,d'卜部昌平2020-08-271-5/+0
|
* Removed nonsense `rubygems_version` in input gemspec filesNobuyoshi Nakada2020-06-251-1/+0
| | | | | As it is ignored and set at building packages automatically, it is just nonsense to set in gemspec file for input.
* [ruby/psych] Fixup 05d7e818a6abe3ee1c56b6be92f086647d73141cHiroshi SHIBATA2020-06-231-1/+1
| | | | https://github.com/ruby/psych/commit/4e7794fc2c