AcademySoftwareFoundation / AcademySoftwareFoundation/rez

packages released after a timestamp still get validated when using the timestamp option in rez-env

Open
#447 2 comments 0 reactions 0 assignees View on GitHub
bug rez-env
Dominant language
Python
Stars
1.1k
Forks
369
Avg merge
12d 3h
Merged PRs (30d)
5

Description

We have some production enviroments that are locked in time using `-t TIMESTAMP` in order not to get any new package version released after that date. Those environments are also locked using `rez-2.0.X`
We have now released some packages using the new features of rez (i.e late binding) available in `rez-2.8+`
I assumed those new packages will be ignored when using `-t` because they were released after ` TIMESTAMP`. But the reality is that those resolves are failing because rez validates those packages even they will never be in the resolve.

We tried bumping the `config_version` of those packages but `rez-2.0.x` still sees them and erros out with

```
File "/film/tools/packages/rez/2.0.rc1.34.1/CentOS-6.2_thru_7/python-2.7/lib/python2.7/site-packages/rez-2.0.rc1.34.1-py2.7.egg/rez/serialise.py", line 114, in _load_file
result = load_func(f, filepath=filepath)
File "/film/tools/packages/rez/2.0.rc1.34.1/CentOS-6.2_thru_7/python-2.7/lib/python2.7/site-packages/rez-2.0.rc1.34.1-py2.7.egg/rez/serialise.py", line 151, in load_py
raise ResourceError(msg)
rez.exceptions.ResourceError: name 'late' is not defined:
```

Is there any way around this? I mean having 2 versions of rez used in the floor (1 locked in time i.e `rez-2.0`), and packages that use features that are only supported in the other version (i.e `rez-2.8.0`)

Contributor guide

Open the contributing guide

Research direction

Start at the rez-env entry point and reproduce the timestamped resolve with an older Rez version alongside packages using newer features such as late binding. Trace when packages released after TIMESTAMP are validated or loaded; done means those packages are ignored without the older Rez version failing on unsupported package syntax.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.