AcademySoftwareFoundation / AcademySoftwareFoundation/rez
Suggestion: Improve initial release directory experience
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 369
- Avg merge
- 12d 3h
- Merged PRs (30d)
- 5
Description
When getting started with rez, by default the release directory `~/.rez/packages/int` does not exist. Given the somewhat sparse documentation for rez in this area, any new user will most likely run into the exact same error I did:
```
>>> rez bind -r --quickstart
...
17:59:12 ERROR PackageRepositoryError: Lockfile directory C:\Users\jordan\.rez\packages\int does not exist - please create and try again
```
It's super unclear what a lockfile directory is, or why it should exist. There's no mention in the error that this relates to the release directory. Then the directory itself is confusing. Without any context that `int` pairs with a corresponding `ext` directory, my first thought was that rez was incorrectly casting an int variable somewhere. This was obviously not the case, I merely hadn't created this directory (as the error says). But even if I had created it, I would have been confused:
- Why is this directory in the hidden subfolder `.rez`? Nothing else is in a hidden directory. If I'm releasing software, why am I putting it in a hidden location? It says this is a lockfile, obviously I shouldn't be creating that folder myself. Rez needs a lockfile to know if someone else has control of some internal config directory.
- Okay, it's not a lock file. It's a release directory. Where do I actually change this config variable?
I would suggest two changes:
- Make the default release directory something like `release_packages/internal`
- Make the error a bit more verbose, describing that ~/.rezconfig needs to be created if you want to specify this setting, and this is an error about the release directory, not a lockfile.
Contributor guide
Research direction
Reproduce `rez bind -r --quickstart` with the default configuration and trace the `PackageRepositoryError` for the missing `~/.rez/packages/int` directory. Review how the default release directory and `.rezconfig` setting are defined, then decide the intended replacement and clearer error wording. Done means the quickstart works with the default setup or explains the release-directory configuration accurately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100