-
-
Notifications
You must be signed in to change notification settings - Fork 14
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
Consider reintroducing --prob-specs-dir #816
Comments
Actually it seems the README is just outdated:
This is terrible news for me. I want to use a git submodule to pin a specific revision of Could it be considered to add this option back? |
From the configlet 4.0.0-beta.1 release notes:
Does that help at all?
Indeed. |
I guess this is doable, but it has a couple downsides. I need to write a wrapper around configlet to handle cloning and checking out at the pinned version. The local cache is different depending on platform. If it's just me, no problem. I'm using Linux and so is CI. But that would be a mean prank on potential contributors on other platforms. So that wrapper needs to be platform-independent... :( In summary, it's a lot of work. |
I'm sympathetic towards wanting to pin the problem-specifications version. Is your main goal to run If so: I want the configlet workflow to eventually support running |
Yes, that is exactly my use case. It would be enough for me. |
Using a git submodule still has some benefits:
But the two approaches can be combined: The commit hash passed to configlet can just be read from the state of the submodule. So this approach actually has no downsides for me. And I need to apologize for opening a bad issue. I stated how I think my problem should be fixed, not what it actually is. Thank you @ee7 for asking the right questions and finding a better solution for my problem 😃 |
No worries - it's a completely reasonable to think about
New idea: configlet could gain a Would that help? The submodule approach still has the same advantages. Other possibilities to help track-specific tooling, without adding Getting the cache dir path is indeed a bit annoying, but it's not too bad:
|
That would be perfect for my use case. Both other options work as well. I guess I overestimated the effort there. Reading a couple environment variables, cd'ing into the cache, checking out a commit, using configlet with the I'm fine with closing this issue, given that implementing this quality-of-life feature in configlet may be much more work than just writing a couple lines of Bash myself. |
The previous approach used a submodule to keep things somewhat stable. That worked well for the rust-tooling (exercise generator) which made use of the submodule. However, configlet continued to use its own cache. (see exercism/configlet#816) This could lead to problems where the configlet cache and the submodule are out of sync and don't agree. The new approach ditches the submodule and makes everything use the configlet cache. Some helper scripts are responsible to make sure the cache is checked out at the pinned commit and a configlet wrapper sets the `--offile` flag to prevent configlet from updating the cache.
After finally getting around to implementing this, I think it would still be nice to have that flag https://github.com/exercism/rust/pull/1950/files |
The previous approach used a submodule to keep things somewhat stable. That worked well for the rust-tooling (exercise generator) which made use of the submodule. However, configlet continued to use its own cache. (see exercism/configlet#816) This could lead to problems where the configlet cache and the submodule are out of sync and don't agree. The new approach ditches the submodule and makes everything use the configlet cache. Some helper scripts are responsible to make sure the cache is checked out at the pinned commit and a configlet wrapper sets the `--offile` flag to prevent configlet from updating the cache.
This flag can be found in the README, but it's not yet included in
configlet --help
.The text was updated successfully, but these errors were encountered: