-
Notifications
You must be signed in to change notification settings - Fork 262
Initial Implementation of GitHub Actions #2826
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
base: master
Are you sure you want to change the base?
Conversation
98390ca
to
377a44b
Compare
@PaulBoersma any chance to this get merged? |
Can you explain a bit more about why this would be useful? We run all our tests on all our editions at every release (except the trivial ones), and as we do continuous integration we have many more commits than releases. The releases are for many more platforms than Ubuntu and Windows, e.g. Mac, Raspberry Pi and s390x. Also, multiple editions will have to be signed with certificates from the Praat organization, so I see no automation on GitHub there. |
Well I said some things without explaining:
I think this explains a bit, this is an initial implementation, and can help people test their commits before pulling a PR and ensure everything is working properly without need to set up many VMs, and (with CCache) reduce significantly building times |
Well, we agree that every commit should be buildable, but with "testing" I meant the quite extensive automated integration tests that every release will have to go through (which is not feasible for every commit; we tests most commits on two of the 13 editions only). You say that you don't know how to build automatically on the Mac. Well, the Praat team doesn't know either! On the Mac we use an Xcode project instead, so we build directly from the IDE; the turn-around time of this cannot be beaten. I also saw that you changed two makefiles. I have reverted one of them, with some explanation written in the makefile itself (we get warnings on all three editions). You are invited to add to this makefile a justification of why you want |
I think it produced an error on first builds when I started implementation and I forgot to revert it, sorry
Well we can make it run all tests on all builds without problem, I will make the change later today and commit |
d1e209a
to
1fc7709
Compare
Finally https://github.com/Caio99BR/praat/actions/runs/14940920492 But, the test on windows is not working properly, the test on linux is working fine I will investigate again (tomorrow) how to compile the macOS binary |
@PaulBoersma now all the files are compiled and tested, i will work on other versions on the next PR, with this one we can ensure at least 4/13 versions are built and tested |
98cd2cc
to
2be96e1
Compare
It's giving this erro, on my PC it's the same https://github.com/Caio99BR/praat/actions/runs/14941569690/job/41979447600#step:5:75 |
Can you check that that file has 14 bytes?
If that file has 17 bytes, then the file must have been changed in the transfer from the Praat site to your computer. Perhaps the newlines (\n) were changed to CRLF (\r\n) in some text-based translation (e.g. textual FTP), instead being kept the same in a binary transfer.
This is what a `hexdump -C` of the file should show:
00000000 61 62 63 64 0a 65 66 0a 67 68 69 6a 6b 0a |abcd.ef.ghijk.|
0000000e
On 10 May 2025, at 05:50, Caio Oliveira ***@***.***> wrote:
[https://avatars.githubusercontent.com/u/7280407?s=20&v=4]Caio99BR left a comment (praat/praat.github.io#2826)<#2826 (comment)>
It's giving this erro, on my PC it's the same
https://github.com/Caio99BR/praat/actions/runs/14941569690/job/41979447600#step:5:75
—
Reply to this email directly, view it on GitHub<#2826 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AA4UFDZ2BMYLNV5CJ3EI7NL25VZSFAVCNFSM6AAAAAB32RVT7WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDQNRYGMYDSMJSGA>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
…_____
Paul Boersma
Professor of Phonetic Sciences
University of Amsterdam
Spuistraat 134, room 632
1012VB Amsterdam, The Netherlands
http://www.fon.hum.uva.nl/paul/
|
Finally it's fixed with 7c71c8e All builds passed on https://github.com/Caio99BR/praat/actions/runs/14949700416 I will be marking this as Ready for review |
Maybe it's good to run |
https://github.com/Caio99BR/praat/actions/runs/14951624294 @PaulBoersma - Ready to merge, it still need to implement CCache on MacOS13 to reduce consecutive builds, but it's good for now |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good that you found the location where this can be handled. However * text=auto eol=lf
will probably change several text files. It's better to leave the files alone, perhaps with * -text
, so that we can continue to test whether various line separators are handled correctly on all systems.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well it was the only option I found for not needing to use git config core.autocrlf input
, and the files will only but changed for the next stage/commits or if git add --renormalize .
is used (and don't looks like many text files are using crlf anyway)
@PaulBoersma I'm not angry or anything, if anything I barely have the knowledge or brain to understand any code, let alone having the ability to inject malicious code, code injection or anything, I'm a lazy person |
The potential injections that I mentioned could happen at any of the levels where external code is relied on. Injections could sometimes happen by the people themselves, but more often the people are reliable but their code contains a point at which others could insert something. Well, good to hear that everything would stay private until I perform an action. You know, Praat is used in many hospitals, where I have to promise that the Praat team are the only people in charge of the build process. Thus, it's good that you have explained the details. Those will help me on my way. Beside the bug in If I ever come to understand GitHub Actions and decide to go along with it, I will definitely refer to you for its first version, perhaps below the other GitHub acknowledgment under Acknowledgments in Praat. Finally, I will add a test script that checks that the test folders contain the original files, i.e. that line breaks haven't been tampered with. By the way, if Praat has 30 commits but no release, then this just means that those commits are working toward a new feature or so, with no added utility to users. Bug fixes and usable new functionality are typically released within a day. |
This I didn't know wow Okay I will do the changes related to not using external repos (only provide by system tools like And based on this it's impossible to use CI to build/test on systems other than Linux/Windows/Mac, cause most of them aren't supported officially on GitHub and would rely on external repos (i think) Also sorry for my english and rambling, will commit those changes later and open a new PR for
|
169c6eb
to
637ab6b
Compare
Latest build on https://github.com/Caio99BR/praat/actions/runs/15174033231 Could you check it? @PaulBoersma |
- Based on: https://github.com/RPCS3/rpcs3/tree/master/.github/workflows https://github.com/Caio99BR/pkgi-ps3-nopaystation/tree/main/.github/workflows - On MacOS(13,15) - the xcodeproj is pulled from latest release tag - I still need to find a way to implement ccache on macOS - The Test is using `core.autocrlf` to ensure correct endline while the correct fix is not merged Signed-off-by: Caio Oliveira <[email protected]>
* as stated on https://github.com/actions/runner-images?tab=readme-ov-file#available-images Signed-off-by: Caio Oliveira <[email protected]>
With this all builds can be tested after a new commit and be easily released, we can also have Nightly builds to test with latest changes
I didn't implemented the run of test cause (at least for me) they aren't working as intended
For this to work, needs #2824