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
[CI] Add workflow to test ragel generation #2859
Conversation
What was a7f4849? |
Not sure. I suspect @nateberkopec did it locally, not sure why the output he got differs from the output on Actions? All the Actions OS's are using ragel 6.10. If you have time, can you check locally and see what your system(s) show? |
Oh weird. Well I can always revert if something funky is going on locally for me! |
You're a wizard, @MSP-Greg ! |
We'll just say I'm persistent, know what Actions can do, and know that Powershell is the easiest way to run cross-platform scripts. Just in case people haven't looked at the Actions pages, if you look at https://github.com/puma/puma/actions/runs/2173139081 in a desktop browser, the bottom of the page is 'Artifacts'. These are zip files of the ragel generated code, and are only created if the tests fail. Hence, if things get out of sync, download them, and a PR/commit should fix things. Lastly, Actions workflows can be setup to only run if certain files change. I haven't worked with it much, not sure how it works if multiple commits are pushed, etc. I may experiment with it. Remember that the ragel workflow (and the others also) can be run manually, one selects which branch to run the workflow on.
What version of ragel generated the files? I'd really like to see if we can figure why the files don't match. |
I'm also using ragel 6.10 (from Homebrew on macOS 12.3.1) $ ragel --version
Ragel State Machine Compiler version 6.10 March 2017
Copyright (c) 2001-2009 by Adrian Thurston I can't reproduce a7f4849 (not on current master a4b5c2f nor 1cea90a (the commit before $ rm ext/puma_http11/http11_parser.c
$ git status --short
D ext/puma_http11/http11_parser.c
$ bundle exec rake --trace ragel
** Invoke ragel (first_time)
** Invoke ext/puma_http11/http11_parser.c (first_time)
** Invoke ext/puma_http11/http11_parser.rl (first_time, not_needed)
** Execute ext/puma_http11/http11_parser.c
ragel ext/puma_http11/http11_parser.rl -C -G2 -I ext/puma_http11 -o ext/puma_http11/http11_parser.c
** Invoke ext/puma_http11/org/jruby/puma/Http11Parser.java (first_time, not_needed)
** Invoke ext/puma_http11/http11_parser.java.rl (first_time, not_needed)
** Execute ragel
$ git status
On branch master
Your branch is up to date with 'dentarg/master'.
nothing to commit, working tree clean |
@dentarg Thanks for checking. |
* [CI] Add ragel test for file changes * Revert 'regenerate ragel' a7f4849
Description
Two files are generated with ragel. These files may not match the source files. Add a workflow to test, and save CI generated files if they do not match what is in the repo.
PR opened as a draft with existing workflows disabled, and tests are failing. See https://github.com/puma/puma/actions/runs/2173139081
Note that all of the puma workflows have 'workflow_dispatch' enabled, so they can be run at anytime on any branch by a member.
Closes #2858
Your checklist for this pull request
[ci skip]
to the title of the PR.#issue
" to the PR description or my commit messages.