40ants / setup-lisp

GitHub Action to Setup Common Lisp tools
https://40ants.com/setup-lisp/
28 stars 3 forks source link

Add support for Windows #2

Closed iamFIREcracker closed 3 years ago

iamFIREcracker commented 3 years ago

I have been playing a lot with GitHub Actions, Common Lisp, and Windows, lately, and with the changes included in this pull-request I was able to successfully build on Linux, MacOS, and Windows, cg, a command line utility written in Common Lisp.

Anyways, in a nutshell:

Notes:

That's it. Let me know what you think about this.

M.

svetlyak40wt commented 3 years ago

README.md will be updated automatically after the merge.

iamFIREcracker commented 3 years ago

Marking this as WIP, as I am trying to understand what's wrong with the latest version of Roswell, and why it isn't working on Windows -- I might end up switching to msys2 on Windows

iamFIREcracker commented 3 years ago

Alright, as it turns out, Roswell's latest is not working with git-bash anymore (on Windows), so I had to rework Windows support to rely on msys2, and the setup-msys2/setup-msys2 action.

Given how unstable things seem to be (see: https://github.com/roswell/roswell/issues/497), I went on and decided to pin each dependency to a version which we know it's working:

Workflows can use this action specifying latest for any of these inputs, and this action would pull the latest version of the specific dependency.

I even added a new tests workflow to make sure that using the actions on Linux, Mac OS, and Windows, with default inputs, does work as expected (i.e. does not break, see: https://github.com/40ants/setup-lisp/pull/2#discussion_r731842885). I even configured it to run every Saturday night, this time forcing the latest version of each dependency, so should something break, we will have some time to fix it without forcing each and every user of this action to patch things up in their workflows.

And that's it. Let me know if you had any concerns about this, otherwise I believe it should be in good shape for getting merged.

svetlyak40wt commented 3 years ago

Wow, Matteo, you did a great job! Please, answer my question about lispsh and we'll merge this pull tomorrow.

iamFIREcracker commented 3 years ago

Wow, Matteo, you did a great job! Please, answer my question about lispsh and we'll merge this pull tomorrow.

Thanks! My msys2/setup-msys2 PR got approved yesterday, so give me one sec I need to port some changes back into my fork, and into this branch too.

I will let you know once it's ready so you can take a final look -- just in case.

iamFIREcracker commented 3 years ago

All good from my side ;-)

svetlyak40wt commented 3 years ago

Merged. I'll update changelog and release v2 because of "breaking" changes of used ASDF, Roswell and Qlot versions.