-
Notifications
You must be signed in to change notification settings - Fork 17
Support OTP 28 #91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
elbrujohalcon
merged 30 commits into
inaka:main
from
paulo-ferraz-oliveira:fix/for-strict-generators
Jun 13, 2025
Merged
Support OTP 28 #91
Changes from 20 commits
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
e8159ae
Allow parsing `generate_strict` and `b_generate_strict`
paulo-ferraz-oliveira c52dca2
Update CI to test newer elements
paulo-ferraz-oliveira 7943be7
Allow parsing m_generate_strict
paulo-ferraz-oliveira 146a194
Parse zip generators
paulo-ferraz-oliveira d7193e6
Remove unnecessary directives, since we're targeting OTP 25+ already
paulo-ferraz-oliveira 48fdf42
Add OTP 28 -specific test
paulo-ferraz-oliveira 7319b51
Bump our support range's min.
paulo-ferraz-oliveira 1567b52
ktn_dodger: pass 1
paulo-ferraz-oliveira ffe1990
ktn_dodger: pass 2
paulo-ferraz-oliveira 54ed51c
ktn_dodger: pass 3
paulo-ferraz-oliveira 78211d2
ktn_dodger: pass 4 (compiles)
paulo-ferraz-oliveira 1573784
ktn_dodger: pass 5 (rebar3_ex_doc works on OTP 28)
paulo-ferraz-oliveira 72a6a85
ktn_dodger: pass 6 (erlfmt + rebar3_lint)
paulo-ferraz-oliveira 0443cc4
Prepare for erlfmt
paulo-ferraz-oliveira d0d06d0
ktn_dodger: pass 7 (ct passes)
paulo-ferraz-oliveira 6249666
rebar3 test (includes fmt)
paulo-ferraz-oliveira c6fc3aa
Act on actionlint's results
paulo-ferraz-oliveira 1eadcff
Don't format locally, but check in CI
paulo-ferraz-oliveira 5b1d083
Tweak tests for known syntax changes
paulo-ferraz-oliveira 0f09c04
Don't try to check it in CI yet
paulo-ferraz-oliveira c937dd4
Add some other stuff we can try to parse
paulo-ferraz-oliveira 45abce3
Handle error, warning and eof, as per Erlang's absforms.md
paulo-ferraz-oliveira 9ecffc6
Add another minor test element
paulo-ferraz-oliveira 2e52e3f
Implement strangely-missing-from-otp element
paulo-ferraz-oliveira d7ba85b
Comment out what erlfmt doesn't like (in the tests)
paulo-ferraz-oliveira 8bae5c4
Simplify it for what it's worth
paulo-ferraz-oliveira f76324a
Act on review comment: move it around
paulo-ferraz-oliveira ab3d8be
Prepare to not format it
paulo-ferraz-oliveira 18d80c7
Uglify it
paulo-ferraz-oliveira 44f7a51
Obey erlfmt
paulo-ferraz-oliveira File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
paulo-ferraz-oliveira marked this conversation as resolved.
Show resolved
Hide resolved
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,10 +1,20 @@ | ||
| [{elvis, | ||
| [{config, | ||
| [#{dirs => ["src"], | ||
| filter => "*.erl", | ||
| ruleset => erl_files, | ||
| rules => [{elvis_style, atom_naming_convention, #{regex => "^([a-z][A-Za-z0-9]*_?)*$"}}]}, | ||
| #{dirs => ["test"], | ||
| filter => "*.erl", | ||
| ruleset => erl_files, | ||
| rules => [{elvis_style, no_debug_call, disable}]}]}]}]. | ||
| [ | ||
| {elvis, [ | ||
| {config, [ | ||
| #{ | ||
| dirs => ["src"], | ||
| filter => "*.erl", | ||
| ruleset => erl_files, | ||
| rules => [ | ||
| {elvis_style, atom_naming_convention, #{regex => "^([a-z][A-Za-z0-9]*_?)*$"}} | ||
| ] | ||
| }, | ||
| #{ | ||
| dirs => ["test"], | ||
| filter => "*.erl", | ||
| ruleset => erl_files, | ||
| rules => [{elvis_style, no_debug_call, disable}] | ||
| } | ||
| ]} | ||
| ]} | ||
| ]. |
elbrujohalcon marked this conversation as resolved.
Show resolved
Hide resolved
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,45 +1,48 @@ | ||
| %% == Compiler and Profiles == | ||
|
|
||
| {erl_opts, | ||
| [warn_unused_import, warn_export_vars, warnings_as_errors, verbose, report, debug_info]}. | ||
| {erl_opts, [warn_unused_import, warn_export_vars, warnings_as_errors, verbose, report, debug_info]}. | ||
|
|
||
| {minimum_otp_vsn, "25"}. | ||
| {minimum_otp_vsn, "26"}. | ||
elbrujohalcon marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| {profiles, | ||
| [{test, [{cover_enabled, true}, {cover_opts, [verbose]}, {ct_opts, [{verbose, true}]}]}]}. | ||
| {profiles, [{test, [{cover_enabled, true}, {cover_opts, [verbose]}, {ct_opts, [{verbose, true}]}]}]}. | ||
|
|
||
| {alias, [{test, [compile, lint, xref, dialyzer, ct, cover]}]}. | ||
|
|
||
| %% == Dependencies and plugins == | ||
|
|
||
| {project_plugins, | ||
| [{rebar3_hank, "~> 1.4.0"}, | ||
| {rebar3_hex, "~> 7.0.7"}, | ||
| {rebar3_format, "~> 1.3.0"}, | ||
| {rebar3_lint, "~> 3.1.0"}, | ||
| {rebar3_ex_doc, "~> 0.2.20"}]}. | ||
| {project_plugins, [ | ||
| {rebar3_hank, "~> 1.4.0"}, | ||
| {rebar3_hex, "~> 7.0.7"}, | ||
| {erlfmt, "~> 1.6.2"}, | ||
elbrujohalcon marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| {rebar3_lint, "~> 3.1.0"}, | ||
| {rebar3_ex_doc, "~> 0.2.20"} | ||
| ]}. | ||
|
|
||
| %% == Documentation == | ||
|
|
||
| {ex_doc, | ||
| [{source_url, <<"https://github.com/inaka/katana-code">>}, | ||
| {extras, [<<"README.md">>, <<"LICENSE">>]}, | ||
| {main, <<"README.md">>}, | ||
| {prefix_ref_vsn_with_v, false}]}. | ||
| {ex_doc, [ | ||
| {source_url, <<"https://github.com/inaka/katana-code">>}, | ||
| {extras, [<<"README.md">>, <<"LICENSE">>]}, | ||
| {main, <<"README.md">>}, | ||
| {prefix_ref_vsn_with_v, false} | ||
| ]}. | ||
|
|
||
| {hex, [{doc, #{provider => ex_doc}}]}. | ||
|
|
||
| %% == Format == | ||
|
|
||
| {format, [{options, #{unquote_atoms => false}}]}. | ||
| {erlfmt, [ | ||
| write, | ||
| {files, ["src/**/*.app.src", "src/**/*.erl", "test/**/*.erl", "*.config"]} | ||
| ]}. | ||
|
|
||
| %% == Dialyzer + XRef == | ||
|
|
||
| {dialyzer, | ||
| [{warnings, [no_return, unmatched_returns, error_handling, underspecs, unknown]}, | ||
| {plt_extra_apps, [syntax_tools, common_test]}]}. | ||
| {dialyzer, [ | ||
| {warnings, [no_return, unmatched_returns, error_handling, underspecs, unknown]}, | ||
| {plt_extra_apps, [syntax_tools, common_test]} | ||
| ]}. | ||
|
|
||
| {xref_checks, | ||
| [undefined_function_calls, deprecated_function_calls, deprecated_functions]}. | ||
| {xref_checks, [undefined_function_calls, deprecated_function_calls, deprecated_functions]}. | ||
|
|
||
| {xref_extra_paths, ["test/**"]}. | ||
paulo-ferraz-oliveira marked this conversation as resolved.
Show resolved
Hide resolved
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,10 +1,10 @@ | ||
| {application, | ||
| katana_code, | ||
| [{description, "Functions useful for processing Erlang code."}, | ||
| {vsn, git}, | ||
| {applications, [kernel, stdlib]}, | ||
| {modules, []}, | ||
| {registered, []}, | ||
| {licenses, ["Apache 2.0"]}, | ||
| {links, [{"GitHub", "https://github.com/inaka/katana-code"}]}, | ||
| {build_tools, ["rebar3"]}]}. | ||
| {application, katana_code, [ | ||
| {description, "Functions useful for processing Erlang code."}, | ||
| {vsn, git}, | ||
| {applications, [kernel, stdlib]}, | ||
| {modules, []}, | ||
| {registered, []}, | ||
| {licenses, ["Apache 2.0"]}, | ||
| {links, [{"GitHub", "https://github.com/inaka/katana-code"}]}, | ||
| {build_tools, ["rebar3"]} | ||
| ]}. |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.