| Age | Commit message (Collapse) | Author |
|
https://github.com/ruby/prism/commit/377666a5df
|
|
https://github.com/ruby/prism/commit/865b0d5fbe
|
|
https://github.com/ruby/prism/commit/3e10c46c14
|
|
https://github.com/ruby/prism/commit/9137226a52
|
|
|
|
https://github.com/ruby/prism/commit/120d8c0479
|
|
https://github.com/ruby/prism/commit/a6a552411c
|
|
https://github.com/ruby/prism/commit/84b3c294f0
|
|
interface is available in the target platform
https://github.com/ruby/prism/commit/88e2ff52d4
|
|
https://github.com/ruby/prism/commit/2e8bc17528
|
|
https://github.com/ruby/prism/commit/d3a149efc5
|
|
https://github.com/ruby/prism/commit/851f2571ff
|
|
|
|
Check that multibyte characters are valid using pm_strpbrk. We need
to add a couple of codepaths to ensure all encodings are covered.
Importantly this doesn't check regular expressions, because
apparently you're allowed to have invalid multibyte characters
inside regular expression comment groups/extended mode.
https://github.com/ruby/prism/commit/2857d3e1b5
|
|
|
|
This PR implements proper file parsing error handling. Previously
`file_options` would call `pm_string_mapped_init` which would print an
error from `perror`. However this wouldn't raise a proper Ruby error so
it was just a string output. I've done the following:
- Raise an error from `rb_syserr_fail` with the filepath in
`file_options`.
- No longer return `Qnil` if `file_options` returns false (because now
it will raise)
- Update `file_options` to return `static void` instead of `static
bool`.
- Update `file_options` and `profile_file` to check the type so when
passing `nil` we see a `TypeError`.
- Delete `perror` from `pm_string_mapped_init`
- Update `FFI` backend to raise appropriate errors when calling
`pm_string_mapped_init`.
- Add tests for `dump_file`, `lex_file`, `parse_file`,
`parse_file_comments`, `parse_lex_file`, and `parse_file_success?`
when a file doesn't exist and for `nil`.
- Updates the `bin/parse` script to no longer raise it's own
`ArgumentError` now that we raise a proper error.
Fixes: ruby/prism#2207
https://github.com/ruby/prism/commit/b2f7494ff5
|
|
https://github.com/ruby/prism/commit/be9e2abfa3
|
|
https://github.com/ruby/prism/commit/ad17f58729
|
|
https://github.com/ruby/prism/commit/ef26b283de
|
|
https://github.com/ruby/prism/commit/27985b0e7e
|
|
https://github.com/ruby/prism/commit/e190308845
|
|
https://github.com/ruby/prism/commit/e838eaff6f
|
|
https://github.com/ruby/prism/commit/ce4c67fb3a
|
|
|
|
Ruby allows for 0 or negative line start, this is often used
with `eval` calls to get a correct offset when prefixing a snippet.
e.g.
```ruby
caller = caller_locations(1, 1).first
class_eval <<~RUBY, caller.path, caller.line - 2
# frozen_string_literal: true
def some_method
#{caller_provided_code_snippet}
end
RUBY
```
https://github.com/ruby/prism/commit/0d14ed1452
|
|
Line numbers may be negative, so we need to introduce signed varint,
so renaming unsigned ones first avoid confusion.
https://github.com/ruby/prism/commit/90d862361e
|
|
https://github.com/ruby/prism/commit/33cc75a4b7
|
|
https://github.com/ruby/prism/commit/99e81619de
|
|
https://github.com/ruby/prism/commit/77d4056766
|
|
https://github.com/ruby/prism/commit/e327449db6
|
|
https://github.com/ruby/prism/commit/76af64eb21
|
|
https://github.com/ruby/prism/commit/26934263b7
|
|
https://github.com/ruby/prism/commit/88336e7d9f
|
|
https://github.com/ruby/prism/commit/97b3cc0af8
|
|
https://github.com/ruby/prism/commit/ff1d2ec579
|
|
https://github.com/ruby/prism/commit/bec5ca37a0
|
|
https://github.com/ruby/prism/commit/2b6e661bbc
|
|
https://github.com/ruby/prism/commit/3193902c43
|
|
https://github.com/ruby/prism/commit/6d8358c083
|
|
https://github.com/ruby/prism/commit/7c9cf63d4c
|
|
https://github.com/ruby/prism/commit/d906a8ceba
|
|
https://github.com/ruby/prism/commit/aca24b3a17
|
|
https://github.com/ruby/prism/commit/1985a9ba51
|
|
https://github.com/ruby/prism/commit/d469a56e7e
|
|
https://github.com/ruby/prism/commit/ba33607034
|
|
* https://github.com/ruby/prism/pull/1533
|
|
https://github.com/ruby/prism/commit/6f243de0c7
|
|
https://github.com/ruby/prism/commit/5c01eb5e6f
|
|
|
|
|