AcademySoftwareFoundation / AcademySoftwareFoundation/rez

Request: Allow to define multiple local/release folders

Open
#426 27 comments 0 reactions 0 assignees View on GitHub
enhancement repository
Dominant language
Python
Stars
1.1k
Forks
369
Avg merge
12d 3h
Merged PRs (30d)
5

Description

This includes the details for the request.
https://groups.google.com/forum/#!topic/rez-config/nazmdCCg1XM

In a nutshell, in the config:

- local_packages_path (Str) becomes local_packages_path**s** (StrList)
- release_packages_path (Str) becomes release_packages_path**s** (StrList)
- The default selected path is set via packages_index (Int)

The benefit is that now different paths might act as local/release and will be correctly discovered.

To release/build to a different local/release folder you just need to override the packages_index in the package.py:

~~~python
config = {
"packages_index": 1,
}
~~~

For the sake of clean implementation it does break config compatibility (to some little degree).
For example:
~~~python
local_packages_path = "~/packages"
release_packages_path = "~/.rez/packages/int"
~~~
Becomes:
~~~python
local_packages_paths = ["~/packages"]
release_packages_paths = ["~/.rez/packages/int"]
packages_index = 0
~~~

I will make a pull request for this feature soon.

Contributor guide

Open the contributing guide

Research direction

Start with the configuration keys described in the issue and the package.py packages_index example. Trace how local and release package paths are discovered, then confirm that list-valued paths, index selection, and the documented configuration migration work as described.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.