Kevin Newton
5f62522d5b
[ruby/prism] Prism::StringQuery
...
Introduce StringQuery to provide methods to access some metadata
about the Ruby lexer.
https://github.com/ruby/prism/commit/d3f55b67b9
2024-10-11 19:34:57 +00:00
Kevin Newton
ebbb093094
[ruby/prism] Short-circuit if possible for start line and unused warning
...
https://github.com/ruby/prism/commit/2745c81d31
2024-10-10 18:31:21 +00:00
Kevin Newton
b5ecb03ae4
[ruby/prism] Do not warn for unused variables on negative lines
...
Fixes [Bug #20788 ]
https://github.com/ruby/prism/commit/27e91f21af
2024-10-10 15:13:10 +00:00
Kevin Newton
82c76f1896
[ruby/prism] Reject invalid splat as last statement of parentheses
...
https://github.com/ruby/prism/commit/3a0b1c6110
2024-10-10 14:45:59 +00:00
Stan Lo
4f9836be8d
[ruby/prism] Update rescue node doc
...
Its `exception` field was renamed to `reference` in #1204 but the
documentation was not updated.
https://github.com/ruby/prism/commit/a477607ba2
2024-10-10 13:43:58 +00:00
Kevin Newton
e39e582594
[ruby/prism] Attempt to assume binary is UTF-8
...
https://github.com/ruby/prism/commit/343197e4ff
2024-10-09 15:42:23 +00:00
Kevin Newton
4cbd2ab9d4
[ruby/prism] Properly handle non-assoc operators
...
https://github.com/ruby/prism/commit/dbd5c929d6
2024-10-07 17:57:36 +00:00
Kevin Newton
8d1906e8b7
[ruby/prism] Handle invalid commas in arguments, parameters, and arrays
...
https://github.com/ruby/prism/commit/023e894b74
2024-10-07 16:38:16 +00:00
Andrew Konchin
8d359644e7
[ruby/prism] Set contains_keywords flag for implicit gets($/, chomp: true) method call to handle -l CLI option
...
https://github.com/ruby/prism/commit/717e41c87d
2024-10-07 15:52:22 +00:00
Kevin Newton
b8c8529dcf
[ruby/prism] Fix up unary * binding power
...
https://github.com/ruby/prism/commit/c1d23d4702
2024-10-07 15:44:33 +00:00
Kevin Newton
fa547b809a
[ruby/prism] Fix up errors on invalid escape character syntax
...
https://github.com/ruby/prism/commit/14c8559378
2024-10-07 14:39:17 +00:00
Kevin Newton
5a95a69058
[ruby/prism] Fix up pattern parsing with trailing commas
...
https://github.com/ruby/prism/commit/51f2df60ff
2024-10-04 17:01:58 +00:00
Kevin Newton
75640037bf
[ruby/prism] Fix up multi target parsing
...
https://github.com/ruby/prism/commit/80cd335222
2024-10-04 16:22:21 +00:00
Kevin Newton
568511f393
[ruby/prism] Handle single global variable character name
...
https://github.com/ruby/prism/commit/7a0af49997
2024-10-03 17:43:11 +00:00
Kevin Newton
f8568fbd7f
[ruby/prism] Pop lex mode for heredocs in the lexer, not the parser
...
https://github.com/ruby/prism/commit/5dd36b979e
2024-10-03 17:30:20 +00:00
Kevin Newton
77056674a0
[ruby/prism] Fix up binding power for singleton method receiver
...
https://github.com/ruby/prism/commit/f29ceae5cf
2024-10-02 18:39:20 +00:00
Kevin Newton
2610bf01b2
[ruby/prism] Fix up doubled range in arguments
...
https://github.com/ruby/prism/commit/aee2de91a3
2024-10-02 15:27:01 +00:00
Kevin Newton
2e2520ef10
[ruby/prism] Fix up beginless ranges in method definitions
...
https://github.com/ruby/prism/commit/ab9d80987a
2024-10-02 14:47:53 +00:00
Kevin Newton
467ebbebd9
[ruby/prism] Disallow dynamic patterns in labels at top level followed by pipes
...
https://github.com/ruby/prism/commit/ccc746f918
2024-10-01 15:42:44 -04:00
Kevin Newton
ec230ac643
Resync to latest Prism
2024-10-01 11:03:25 -04:00
Kevin Newton
d86b4041b5
[ruby/prism] Disallow empty labels when not allowed
...
https://github.com/ruby/prism/commit/399ee28dc1
2024-10-01 13:51:05 +00:00
Kevin Newton
75568d23e9
[ruby/prism] Disallow &. after endless range
...
https://github.com/ruby/prism/commit/498dd922d4
2024-10-01 12:57:00 +00:00
Kevin Newton
6c9b5c1615
Sync Prism with latest main branch
2024-09-30 11:36:29 -04:00
Kevin Newton
c1c9ba77ca
[ruby/prism] Require a delimiter for singleton classes
...
https://github.com/ruby/prism/commit/fd58d6a9ea
2024-09-30 14:33:58 +00:00
Daniel Insley
9a966a09cb
[ruby/prism] Fix incorrect reference to AlternationPatternNode as non-void expressions
...
https://github.com/ruby/prism/commit/68de31919e
2024-09-26 15:47:51 +00:00
Daniel Insley
a73d80db41
[ruby/prism] Add fields documentation for AliasMethodNode and AlternationPatternNode
...
https://github.com/ruby/prism/commit/6953daebde
2024-09-26 15:47:51 +00:00
Kevin Newton
1f431b63a2
[ruby/prism] Reject non-assoc ranges with subsequent operators
...
https://github.com/ruby/prism/commit/976a3cd0a5
2024-09-26 14:57:02 +00:00
Kevin Newton
cab81d1bba
[ruby/prism] Update templates/include/prism/ast.h.erb
...
https://github.com/ruby/prism/commit/dc7164e21c
2024-09-25 19:43:47 +00:00
Alexander Momchilov
fa7fef270d
[ruby/prism] Fix rendering of type overview docs
...
https://github.com/ruby/prism/commit/d42bc309cc
2024-09-25 19:43:47 +00:00
Kevin Newton
be331c0eeb
[ruby/prism] Fix up more error messages to more closely match parse.y
...
https://github.com/ruby/prism/commit/988ac82187
2024-09-25 19:19:18 +00:00
Kevin Newton
12cf9f2ae5
[ruby/prism] Fix up void value expression checking for rescue
...
https://github.com/ruby/prism/commit/509ff88e92
2024-09-25 18:34:51 +00:00
Kevin Newton
768ceceb12
[ruby/prism] Disallow label in parentheses
...
https://github.com/ruby/prism/commit/b624e09cc6
2024-09-25 17:33:51 +00:00
Kevin Newton
a6ea4ddb4e
[ruby/prism] Remove use of __assume to simplify
...
https://github.com/ruby/prism/commit/4daf58f7a0
2024-09-25 16:17:08 +00:00
Kevin Newton
bf6109c8cc
[ruby/prism] Fix up windows use of __assume
...
https://github.com/ruby/prism/commit/9fd0c0901e
2024-09-25 16:08:13 +00:00
Kevin Newton
57688cd625
[ruby/prism] Support a max depth to protect against malicious payloads
...
https://github.com/ruby/prism/commit/a474017bbe
2024-09-25 15:47:08 +00:00
Benoit Daloze
cafd666adf
[ruby/prism] Type every node field and mark on-error-only types explicitly
...
* For Loader.java, do not deserialize the AST if there are errors, so then Java nodes only have non-error types for fields.
https://github.com/ruby/prism/commit/ae78e3c605
2024-09-25 13:46:31 +00:00
Kevin Newton
414a848cc6
[ruby/prism] Accept version shorthand like 3.4
...
https://github.com/ruby/prism/commit/098f1c4607
2024-09-24 13:21:36 +00:00
Benoit Daloze
ed4a55fc4d
[ruby/prism] Accept all 3.3.x and 3.4.x Ruby versions for Prism.parse
...
https://github.com/ruby/prism/commit/a4fcd5339a
2024-09-24 12:24:19 +00:00
Benoit Daloze
b8baf3f3ee
[ruby/prism] check_string() should always return a valid C string
...
* Otherwise it is invalid e.g. to call strlen() to the result,
or to assume the argument was a string.
* All callers are already checking for nil before.
https://github.com/ruby/prism/commit/8197be883e
2024-09-24 12:24:19 +00:00
Kevin Newton
f515a1ab4b
[ruby/prism] Introduce partial_script option
...
https://github.com/ruby/prism/commit/b28877fa4f
2024-09-20 15:42:12 +00:00
Jeremy Evans
268c72377b
Raise a compile error for break/next/redo inside eval in cases where it is optimized away
...
In cases where break/next/redo are not valid syntax, they should
raise a SyntaxError even if inside a conditional block that is
optimized away.
Fixes [Bug #20597 ]
Co-authored-by: Kevin Newton <kddnewton@gmail.com>
2024-09-18 16:54:56 -07:00
Kevin Newton
96da3f16a0
[ruby/prism] Allow returns in default parameter values
...
https://github.com/ruby/prism/commit/e98ea15596
2024-09-18 11:52:27 -04:00
Kevin Newton
748933aa1b
[ruby/prism] Accept "do" blocks in some parameter default values
...
https://github.com/ruby/prism/commit/6d7b734dbe
2024-09-17 18:47:27 +00:00
Kevin Newton
7e2ae30f8b
[ruby/prism] Handle retry doubly nested under rescue
...
Fixes [Bug #20747 ]
https://github.com/ruby/prism/commit/d3194715a9
2024-09-16 19:55:29 +00:00
Kevin Newton
2ea1950510
[ruby/prism] Do not leak explicit encoding
...
Fixes [Bug #20744 ]
https://github.com/ruby/prism/commit/f1b8b1b2a2
2024-09-16 18:57:54 +00:00
Kevin Newton
ddbd644001
[ruby/prism] Stat file first to check directory
...
https://github.com/ruby/prism/commit/4ed7de537b
2024-09-13 19:30:57 +00:00
Kevin Newton
f85efc9748
[ruby/prism] Expose main_script in serialization API
...
https://github.com/ruby/prism/commit/0b527ca93f
2024-09-13 19:13:21 +00:00
Kevin Newton
77521afac1
[PRISM] Do not warn ambiguous ampersand when symbol literal
...
Fixes [Bug #20735 ]
2024-09-13 14:09:02 -04:00
Kevin Newton
9afc6a981d
[PRISM] Only parse shebang on main script
...
Fixes [Bug #20730 ]
2024-09-13 12:51:53 -04:00
Kevin Newton
d42d19059d
[PRISM] Allow case/when to be indented with no warning
...
Fixes [Bug #20731 ]
2024-09-13 12:51:36 -04:00