Skip to content

Releases: AcademySoftwareFoundation/rez

RELEASE 2.16.0: Windows fixes

29 Nov 03:30
Compare
Choose a tag to compare

RELEASE 2.15.0: Misc minor PRs

28 Nov 02:46
Compare
Choose a tag to compare

RELEASE 2.14.2: Solver fix for variant splitting

28 Nov 00:48
Compare
Choose a tag to compare

RELEASE 2.14.1: Package timestamp orderer fix

04 Oct 04:34
Compare
Choose a tag to compare

Addresses: #458
Test has been added to detect this case.

RELEASE 2.14.0: Solver fixes

04 Oct 03:08
Compare
Choose a tag to compare

Fixed 2 solver bugs, and added better verbose solver debugging output.

The first bug was very simple and I'm surprised it hasn't caused issues before. It was a bug in the RequirementsList class. This class would give incorrect values from the names and conflict_names properties when a requirements list was made up of confict- and non-conflict requirements which get merged (eg, ["foo-1", "~foo-1.2+"]). This in turn was causing incorrect extractions during the solve.

The second bug was more difficult to understand. In the solver, whenever a "scope" changes - that is, it is either intersected, reduced, or split into 2 new scopes - other scopes must then reduce against it. However there was one case not taken into account. That is when an existing conflict scope (eg "~foo-1") is intersected with an extraction (eg "foo-1.2+") to then become a non-conflicting scope. In this case, that scope itself then needs to reduce against the other scopes as well. The reason is that this is the only case where a changed scope "widens" - ie new variants appear in the scope. Because there are new variants, the scope needs to be reduced, because some of these variants might conflict with the current scope set.

Solver debugging output has also been improved for readability, and some more detailed stats have been added.

The description of the solver algorithm has been improved also, and has been moved from the block comment at the top of solver.py into the new file SOLVER.md in the same directory.

RELEASE 2.13.1: Two ResolvedContext fixes

04 Jul 06:42
Compare
Choose a tag to compare

Merges PR: #440

  • Fixed bug where parent_environ was not set into target environment dict when executing command in ResolvedContext.exec_command().
  • Added unit tests for both cases.

RELEASE 2.13.0: Misc

01 Apr 05:20
Compare
Choose a tag to compare
  • Fixed infinite recursion bug if package_load_callback specified in ResolvedContext (manifests in rez-gui);
  • Added ability to set build_command=False in package.py, indicates no build step needed;
  • Added new 'stop' command for package.py commands, formal way to abort a resolve.

RELEASE 2.12.0: Format Version Checks

25 Mar 04:25
Compare
Choose a tag to compare

Addresses: #406

RELEASE 2.11.0: New Package Orderers

25 Mar 00:31
Compare
Choose a tag to compare

Added new package orderers:

  • NullPackageOrder
  • SortedOrder
  • PerFamilyOrder
  • VersionSplitPackageOrder

Added package orderer unit tests.

There will be a further release that adds more to this release, specifically adding support for setting a default orderer in the rezconfig, as well as ordering variants during a solve using the active orderer (which does not currently happen).

RELEASE 2.10.0: Misc Improvements

21 Mar 04:13
Compare
Choose a tag to compare