Skip to content

Latest commit

 

History

History
2468 lines (1415 loc) · 116 KB

CHANGELOG.md

File metadata and controls

2468 lines (1415 loc) · 116 KB

Change Log

2.112.0 (2022-11-15)

Source | Diff

Notes

First Official AcademySoftwareFoundation rez release!

Merged pull requests:

  • Fix 1255-possible-regression-appendenv-in-powershell-fails-if-env-variable-does-not-exist-already #1285 (instinct-vfx)
  • fix: add platform/arch to variant for rez-pip packages with entry point scripts #1287 (bpabel)
  • working with embedded python scanning rezplugins #1359 (loonghao)
  • Replace nerdvegas with aswf #1368 (maxnbk)
  • fix asserts causing flake8 linter failures #1369 (maxnbk)
  • Edit rezconfig docstrings for package_filter to reflect python form rather than YAML #1377 (herronelou)
  • Add REZ_USED_LOCAL_RESOLVE context environment variable #1378 (JoshkVFX)
  • Document .ignore pkg repo functionality #1385 (jasoncscott)
  • Clarify when the commands block is executed during rez-build #1391 (jasoncscott)

2.111.3 (2022-08-02)

Source | Diff

Merged pull requests:

Closed issues:

  • benchmarking CI fails to push changes, does not error #1328

2.111.2 (2022-06-22)

Source | Diff

Merged pull requests:

2.111.1 (2022-06-14)

Source | Diff

Merged pull requests:

Closed issues:

  • Fix regression in benchmark CI #1323

2.111.0 (2022-06-14)

Source | Diff

Merged pull requests:

Closed issues:

  • rez executables aren't removed in windows install #1258
  • use github actions bot for commits #1318

2.110.0 (2022-05-28)

Source | Diff

Merged pull requests:

2.109.0 (2022-04-19)

Source | Diff

Merged pull requests:

Closed issues:

  • add git-bash shell plugin #1256

2.108.0 (2022-04-19)

Source | Diff

Notes

This release adds path normalization to shells. Usually we use POSIX-style paths in package commands (eg env.PATH.append('{root}/bin'). In previous rez versions, this path was left unchanged, leading to odd paths on Windows like C:\svr\packages\foo\1.2.3/bin. This hasn't been a problem however, since Windows is tolerant of a mix of forward and back slashes. Now though, you should see paths on Windows set correctly, ie C:\svr\packages\foo\1.2.3\bin.

Please be aware of this change in behavior in case it affects you.

Merged pull requests:

Closed issues:

  • formalize paths in package commands #1269

2.107.0 (2022-04-07)

Source | Diff

Merged pull requests:

  • Feature/1271 improve shell parameterization in tests #1272 (nerdvegas)

Closed issues:

  • improve shell parameterization in tests #1271

2.106.0 (2022-03-23)

Source | Diff

Merged pull requests:

Closed issues:

  • add ability to delete package family #1248

2.105.0 (2022-03-19)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-test breaks with packages that do not have a timestamp attribute #1237

2.104.10 (2022-03-19)

Source | Diff

Merged pull requests:

  • fix: make cmake install directives whitespace friendly #1244 (maxnbk)

Closed issues:

  • rez_install_files with LOCAL_SYMLINK fails when an input file has whitespaces in its name #553

2.104.9 (2022-03-01)

Source | Diff

Merged pull requests:

Closed issues:

  • Switch get_syspaths from REG to Get-ItemProperty in Powershell shell plugins #1196

2.104.8 (2022-03-01)

Source | Diff

Merged pull requests:

Closed issues:

  • Typo on install message #1186

2.104.7 (2022-02-16)

Source | Diff

Merged pull requests:

Closed issues:

  • fix wiki regression in v2.104.6 #1219

2.104.6 (2022-02-16)

Source | Diff

Merged pull requests:

Closed issues:

  • add workflow to enforce copyright #1214

2.104.5 (2022-02-15)

Source | Diff

Merged pull requests:

Closed issues:

  • replace copyrights with SPDX form #1201

2.104.4 (2022-02-12)

Source | Diff

Merged pull requests:

2.104.3 (2022-02-12)

Source | Diff

Merged pull requests:

Closed issues:

2.104.2 (2022-02-12)

Source | Diff

Merged pull requests:

Closed issues:

  • remove GPL3 code from update-wiki.py #1206

2.104.1 (2022-02-08)

Source | Diff

Merged pull requests:

Closed issues:

  • Aliases broken on windows when using powershell #1191

2.104.0 (2022-02-08)

Source | Diff

Merged pull requests:

Closed issues:

  • windows gh actions issue #1181

2.103.4 (2021-12-17)

Source | Diff

Merged pull requests:

Closed issues:

  • Whichcraft not caring about executable symlinks on windows that do not have the extension of an executable #1178

2.103.3 (2021-12-17)

Source | Diff

Merged pull requests:

2.103.2 (2021-12-15)

Source | Diff

Merged pull requests:

  • Uses Set-Item rather than $Env: to configure powershell environment variables. #1176 (hutchinson)

Closed issues:

  • Environment variables containing brackets break powershell shell #1175

2.103.1 (2021-12-10)

Source | Diff

Merged pull requests:

  • fix pwsh shell not exiting with correct error code #1174 (nerdvegas)

Closed issues:

  • Build passes when build_command fails while using powershell as default_shell on windows #1099

2.103.0 (2021-12-10)

Source | Diff

Merged pull requests:

  • fix 'NoneType' object has no attribute 'conflicts_with' #1173 (nerdvegas)

Closed issues:

  • AttributeError: 'NoneType' object has no attribute 'conflicts_with' when rez-env a package #1150

2.102.1 (2021-12-10)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-pip error with inconsistency between underscores and dashes #1159

2.102.0 (2021-12-10)

Source | Diff

Merged pull requests:

  • Update sortedcontainers for Python 3.10 compatibility #1169 (stilllman)

Closed issues:

  • Incompatibility with Python 3.10 #1168

2.101.0 (2021-12-09)

Source | Diff

Merged pull requests:

2.100.2 (2021-12-08)

Source | Diff

Merged pull requests:

Closed issues:

  • fix 4 sonarcloud-flagged bugs #1166

2.100.1 (2021-12-08)

Source | Diff

Merged pull requests:

Closed issues:

  • (sonarcloud) vulnerability #1164

2.100.0 (2021-11-20)

Source | Diff

Notes

IMPORTANT - This release changes the license from LGPL-3.0 to Apache-2.0. More: https://www.apache.org/licenses/LICENSE-2.0

Merged pull requests:

Closed issues:

  • Rez License Change: LGPLv3 to Apache2.0 #1119

2.98.3 (2021-11-19)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-pip not working ? #904
  • NoneType Error When Using rez pip on Windows #1024

2.98.2 (2021-11-19)

Source | Diff

Added unmodified whichcraft vendored lib. See:

2.98.1 (2021-11-19)

Source | Diff

Merged pull requests:

2.98.0 (2021-11-02)

Source | Diff

Merged pull requests:

Closed issues:

  • Pika could not take port from context_tracking_host #1144
  • name amqp connection #1148

2.97.0 (2021-10-19)

Source | Diff

Merged pull requests:

2.96.0 (2021-10-19)

Source | Diff

Merged pull requests:

2.95.3 (2021-10-12)

Source | Diff

Merged pull requests:

  • fix regression in v2.94.0 wrt windows string escape on rxt command #1139 (nerdvegas)

Closed issues:

  • (double-dash) removes double quotes on Windows #1133

2.95.2 (2021-10-12)

Source | Diff

Merged pull requests:

Closed issues:

  • Rez pip fails to execute in Windows after 2.94.0 #1120

2.95.1 (2021-10-12)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-env output test is not testing on specified shell #1135

2.95.0 (2021-09-21)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-pip installs dist-info dir to root, causes probs with some pkgs #892

2.94.0 (2021-08-17)

Source | Diff

Merged pull requests:

Closed issues:

  • bug in command quoting #1114

2.93.3 (2021-08-05)

Source | Diff

Merged pull requests:

Closed issues:

  • failed tests in pytest-enabled rez-selftest are not getting picked up #1117

2.93.2 (2021-08-03)

Source | Diff

Merged pull requests:

  • Prevent alias (windows function) to store all arguments in one string instead of an array of strings #1101 (aguiot)

2.93.1 (2021-08-03)

Source | Diff

Merged pull requests:

  • handling archived lib when scanning rezplugins (fix #1108) #1109 (davidlatwe)

Closed issues:

  • PluginManager.rezplugins_module_paths breaks with zipped Python #1108

2.93.0 (2021-07-13)

Source | Diff

Merged pull requests:

2.92.0 (2021-07-13)

Source | Diff

Merged pull requests:

Closed issues:

  • Deprecate rez-pip -s flag because pip-search is disabled and will likely not return #1104

2.91.0 (2021-06-16)

Source | Diff

Merged pull requests:

  • added env-var to disable cofig reads from ~/.rezconfig.py #1098 (nerdvegas)

Closed issues:

  • config selftest can fail #1097

2.90.3 (2021-06-16)

Source | Diff

Merged pull requests:

Closed issues:

  • regression: rez-test Could not resolve to variant #1095

2.90.2 (2021-06-16)

Source | Diff

Merged pull requests:

  • Allow trailing comma in Legacy Metadata #1092 (bfloch)

2.90.1 (2021-06-08)

Source | Diff

Merged pull requests:

  • Avoid hidden folder/files as it introduces problems on certain fileystems #1088 (bfloch)

2.90.0 (2021-06-08)

Source | Diff

Merged pull requests:

2.89.1 (2021-06-02)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-rm --ignored-since faulty in combo with memcached enabled #1089

2.89.0 (2021-06-01)

Source | Diff

Merged pull requests:

2.88.4 (2021-06-01)

Source | Diff

Merged pull requests:

Closed issues:

  • fail-graph not showing true root of the conflict #865

2.88.3 (2021-06-01)

Source | Diff

Merged pull requests:

  • Refactor: Split add_standard_build_actions introducing add_pre_build_commands #1077 (Tilix4)

Closed issues:

  • include could not find load file: RezBuild error on Windows #974

2.88.2 (2021-05-20)

Source | Diff

Merged pull requests:

  • added rez_version to context tracking amqp message #1079 (nerdvegas)

2.88.1 (2021-05-18)

Source | Diff

Merged pull requests:

Closed issues:

  • windows package cache root switch does only work with "{root}" not this.root #1065

2.88.0 (2021-05-13)

Source | Diff

Notes

This is currently implemented for linux only.

Closed issues:

  • fix linking within bundles #1072

2.87.0 (2021-05-11)

Source | Diff

Merged pull requests:

Closed issues:

  • add post-context rex file in bundles #1071

2.86.1 (2021-05-04)

Source | Diff

Merged pull requests:

2.86.0 (2021-05-04)

Source | Diff

Merged pull requests:

2.85.0 (2021-05-04)

Source | Diff

Merged pull requests:

2.84.0 (2021-04-16)

Source | Diff

Notes

New tool: rez-rm.

Merged pull requests:

Closed issues:

  • add package removal #1062

2.83.0 (2021-04-14)

Source | Diff

Notes

New tool: rez-mv.

Merged pull requests:

Closed issues:

  • add pkg move feature #1059

2.82.0 (2021-04-08)

Source | Diff

Notes

New tool: rez-pkg-ignore.

Merged pull requests:

Closed issues:

  • make package ignore a formal api/tool #1052

2.81.2 (2021-04-08)

Source | Diff

Closed issues:

  • install related regression in v2.80.0 #1057

2.81.1 (2021-04-08)

Source | Diff

Notes

CMake no longer uses the -d arg to specify the directory in which to find CMakeLists.txt. This appears to be incompatible with newer cmake versions, but (happily) dropping it in older versions also appears compatible.

Merged pull requests:

Closed issues:

  • problem with alias in powershell #1017
  • tests failing suddenly #1055

2.81.0 (2021-04-01)

Source | Diff

Merged pull requests:

2.80.0 (2021-03-30)

Source | Diff

Merged pull requests:

2.79.1 (2021-03-30)

Source | Diff

Merged pull requests:

  • Fix sorting of rules with and without family (closes #1037) #1038 (jasperges)

Closed issues:

  • An exception is raised when combining filters with - and without -. #1037

2.79.0 (2021-03-30)

Source | Diff

Merged pull requests:

2.78.1 (2021-03-30)

Source | Diff

Merged pull requests:

2.78.0 (2021-03-27)

Source | Diff

Merged pull requests:

Closed issues:

  • automatically run benchmarking #1044

2.77.1 (2021-03-16)

Source | Diff

Merged pull requests:

2.77.0 (2021-03-09)

Source | Diff

Merged pull requests:

  • Adds more variables to the custom build system. #1013 (bfloch)

2.76.0 (2021-03-09)

Source | Diff

Merged pull requests:

2.75.1 (2021-03-09)

Source | Diff

Merged pull requests:

Closed issues:

  • Issues with system.System.is_production_rez_install method on Windows. #1005

2.75.0 (2021-03-03)

Source | Diff

Notes

  • Workflow added to perform pypi publish on release
  • Wiki workflow updated to publish only on release
  • Note that version skip (2.73.0 -> 2.75.0) due to workflow testing on github

Merged pull requests:

Closed issues:

  • Pypi entries are out of date #1032

2.73.0 (2021-03-02)

Source | Diff

Merged pull requests:

Closed issues:

  • bundled contexts ("bundles") #1009

2.72.5 (2021-03-02)

Source | Diff

Merged pull requests:

2.72.4 (2021-03-02)

Source | Diff

Merged pull requests:

2.72.3 (2021-02-23)

Source | Diff

Merged pull requests:

  • Fix tab-completion behavior for rez deployments installed with python3 #1021 (zachlewis)

Closed issues:

  • Tab completion broken for rez deployments installed with Python-3.6 #1020

2.72.2 (2021-02-23)

Source | Diff

Merged pull requests:

2.72.1 (2021-02-23)

Source | Diff

Merged pull requests:

2.72.0 (2021-01-12)

Source | Diff

Notes

This release uses python-3's native venv module to perform the rez installation, for python-3.7 and above. For earlier python versions, an embedded copy of virtualenv was used, but this ceases to work correctly in python-3.9.

Merged pull requests:

Closed issues:

  • Installation With Python >=3.9 Fails ('HTMLParser' object has no attribute 'unescape') #980
  • have install.py use venv in python3 #982

2.71.0 (2020-12-29)

Source | Diff

Notes

Ephemeral packages are a major new feature. These enable dependencies on abstract objects or machine capabilities (for example), and also act as a way to pass 'options' to packages that can alter their behaviour. These will also form the basis for package features, an upcoming feature that will allow packages to depend on features of other packages, rather than just their version number.

Merged pull requests:

2.70.5 (2020-12-29)

Source | Diff

Merged pull requests:

  • Fix module 'Qt.QtWidgets' has no attribute'QPainter' #992 (loonghao)

2.70.4 (2020-12-29)

Source | Diff

Merged pull requests:

  • update open_file_for_write with simplified error handling #998 (nerdvegas)

Closed issues:

  • 'rez build --install --prefix' error #858

2.70.3 (2020-12-29)

Source | Diff

Merged pull requests:

  • Fix no CLI args passed into forward script on Windows #990 (davidlatwe)

2.70.2 (2020-12-29)

Source | Diff

Merged pull requests:

  • fix: exit file write retry loop after successfull write #989 (bpabel)

2.70.1 (2020-12-29)

Source | Diff

Merged pull requests:

2.70.0 (2020-12-29)

Source | Diff

Backwards Compatibility Issues

This release removes the bez build system. This was a very simple build system that does nothing more than call a function in rezbuild.py, passing it some build attributes (such as installation path). It has been removed because you can achieve the same thing using a custom build command, and you can retrieve the build attributes from environment variables instead.

If you attempt to build a package that was previously using bez (ie, the rezbuild.py script is still there, and build_command is not specified in your package.py) then the resulting error message shows you what you need to do to port your existing build script.

Merged pull requests:

2.69.7 (2020-12-22)

Source | Diff

Merged pull requests:

Closed issues:

  • wiki workflow broken #994

2.69.6 (2020-11-24)

Source | Diff

Merged pull requests:

  • avoid using fileConfig to init logging, as it overwrites root logger #978 (nerdvegas)

Closed issues:

  • rez overwrites root logger #977

2.69.5 (2020-11-19)

Source | Diff

Merged pull requests:

2.69.4 (2020-11-17)

Source | Diff

Merged pull requests:

2.69.3 (2020-11-17)

Source | Diff

Merged pull requests:

Closed issues:

  • QFileDialog.getSaveFileName and getOpenFileName return tuple not str #962

2.69.2 (2020-11-17)

Source | Diff

Merged pull requests:

Closed issues:

  • io.UnsupportedOperation when using rez api with pytest #965

2.69.1 (2020-11-17)

Source | Diff

Merged pull requests:

2.69.0 (2020-11-17)

Source | Diff

Merged pull requests:

  • Fix forwarding script on Windows (suite supporting) #968 (davidlatwe)

2.68.5 (2020-10-06)

Source | Diff

Merged pull requests:

  • Handling build/install directory remove error in build process #959 (davidlatwe)

2.68.4 (2020-10-06)

Source | Diff

Merged pull requests:

Closed issues:

  • Alias can't be used on the same line as rez-env #708

2.68.3 (2020-09-22)

Source | Diff

Merged pull requests:

2.68.0 (2020-09-22)

Source | Diff

Backwards Compatibility Issues

Note that this release changes OS detection on linux. The results should be the same, but if they do differ, and you need to retain the same OS name (which you probably will, because you'll have packages that depend on the analogous implicit package), then you can use the platform_map setting.

Merged pull requests:

  • Replace platform.linux_distribution by distro #954 (predat)

Closed issues:

  • rez platform_ broken with python3.8 #883

2.67.1 (2020-09-11)

Source | Diff

Merged pull requests:

Closed issues:

  • this.root is None in package preprocessor #952

2.67.0 (2020-08-25)

Source | Diff

Merged pull requests:

Closed issues:

  • don't raise on missing package cache dir #941

2.66.1 (2020-08-25)

Source | Diff

Merged pull requests:

Closed issues:

  • Installed package not including latest module #934

2.66.0 (2020-08-11)

Source | Diff

Merged pull requests:

  • [docs] Sphinx API hosted on GitHub Pages #832 (j0yu)

2.65.0 (2020-08-11)

Source | Diff

Notes

This release cleans up the wiki-based doc generation code, and adds a github workflow to automatically update the wiki.

Merged pull requests:

  • [wiki] Move update utils into main repo #831 (j0yu)

2.64.0 (2020-08-11)

Source | Diff

Merged pull requests:

Closed issues:

  • add 'delay_load' config primitive #921
  • New spawned shell's PATH is random ordered on Windows #925
  • Packages that contains Unicode character failed on install/release #927

2.63.0 (2020-08-04)

Source | Diff

Merged pull requests:

  • don't attempt to update pkg cache on failed resolve #916 (nerdvegas)
  • fix pkg cache fail on windows, py<=2.7 #917 (nerdvegas)
  • raise metadata error on bad pkg, rather than build-system-notfound #918 (nerdvegas)
  • default to disable package caching during build #920 (nerdvegas)

Closed issues:

  • rez-packaage-cache issue on conflicting context #905
  • Package caching does not work on windows due to device not being implemented in py2 on Windows #912
  • Miss-leaded error message while building with invalid package metadata #915
  • add ability to disable pkg caching during build #919

2.62.0 (2020-07-22)

Source | Diff

Merged pull requests:

  • Allow configuration of filesystem lock mechanism #903 (dbr)
  • make context tracking tolerant of errors #911 (nerdvegas)

Closed issues:

  • SSL crash related to context tracking #910

2.61.1 (2020-07-10)

Source | Diff

Merged pull requests:

  • fix for rez occasionally installed into lib64 dir #902 (nerdvegas)

Closed issues:

  • occasional missing rez cli in rez-env #901

2.61.0 (2020-07-10)

Source | Diff

Notes

Package caching feature added, see here.

Merged pull requests:

2.60.1 (2020-05-23)

Source | Diff

Merged pull requests:

Closed issues:

  • context sourcing broken (ResolvedContext.append_sys_path not serialised) #889

2.60.0 (2020-05-12)

Source | Diff

Backwards Compatibility Issues

Please note that #887 introduces a subtle change to CLI behaviour. Previously, rez-context --resolve would print a space-separated list of packages, even when piped to another process. Now however, if the output is piped, it will print one package per line. This is an improvement, as it means you can more easily chain rez-context with other utilities such as grep, xargs etc.

Merged pull requests:

2.59.1 (2020-05-09)

Source | Diff

Merged pull requests:

  • fixed - rez-context -g with prune-package fails #885 (nerdvegas)

Closed issues:

  • rez-context -g with prune-package fails #884

2.59.0 (2020-04-30)

Source | Diff

Merged pull requests:

  • Fix issue 826 - correct python and pip fallback #878 (j0yu)

Closed issues:

  • rez-pip issues finding pip executable #826

2.58.1 (2020-04-22)

Source | Diff

Merged pull requests:

  • Fix ISSUE-879: AttributeError: 'Namespace' object has no attribute 'func' #880 (rfletchr)

Closed issues:

  • AttributeError: 'Namespace' object has no attribute 'func' #879

2.58.0 (2020-04-15)

Source | Diff

Merged pull requests:

Closed issues:

  • add configurability of package orderers #329

2.57.0 (2020-04-14)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-pip - Add help / authors attributes #838

2.56.2 (2020-04-14)

Source | Diff

Merged pull requests:

  • Fix for git rev-parse error out before checking for allow_no_upstream #872 (alexxbb)

Closed issues:

  • override git plugin config in package.py #871

2.56.1 (2020-03-31)

Source | Diff

Merged pull requests:

2.56.0 (2020-03-31)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-pip - no case for ../../include/... file #861

2.55.0 (2020-03-21)

Source | Diff

Merged pull requests:

Closed issues:

  • tests "on_variants" not working as expected in some cases #841
  • pre_test_commands #843

2.54.0 (2020-02-20)

Source | Diff

Merged pull requests:

Closed issues:

  • "rez-pip -i ptvsd" produces bad package #821

2.53.1 (2020-02-12)

Source | Diff

Notes

Misc Python-3 related issues.

Merged pull requests:

  • PR: Fix "StringIO" imports and accesses. #850 (KelSolaar)
  • PR: Use "QtCompat" to handle "QHeaderView" incompatibilities and fix broken "resolve" button in "rez-gui". #851 (KelSolaar)

Closed issues:

  • "ImportError" exception raised while using "rez-gui" in Python 3. #848
  • "AttributeError" exception raised when using "rez-gui" Package Browser with Pyside2 . #849

2.53.0 (2020-02-04)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-pip creates .pyc files by default #816

2.52.2 (2020-01-31)

Source | Diff

Merged pull requests:

2.52.1 (2020-01-21)

Source | Diff

Merged pull requests:

  • added new env vars - REZ_SHELL_INIT_TIMESTAMP, REZ_SHELL_INTERACTIVE #834 (nerdvegas)

Closed issues:

  • add env-var to record shell init time #833

2.52.0 (2020-01-18)

Source | Diff

Notes

Adds a new pre_build_commands package.py attribute, for adding runtime build configuration.

Merged pull requests:

2.51.0 (2020-01-18)

Source | Diff

Notes

This release goes a large way to implementing REP-001

Includes:

  • Pre-install/release running of package tests;
  • New rez-test --inplace option;
  • Correct iteration of tests over variants (variant iteration did not previously exist)

Still to do:

  • rez-test --interactive option;
  • rez-test 'development' mode.

Merged pull requests:

2.50.0 (2019-12-12)

Source | Diff

Merged pull requests:

Closed issues:

  • potential memcached client incompatibility #817
  • Remove hard prevention of colorization on windows #819

2.49.0 (2019-12-05)

Source | Diff

Merged pull requests:

2.48.1 (2019-12-05)

Source | Diff

Merged pull requests:

Closed issues:

  • cmd handles empty echo incorrectly #792

2.48.0 (2019-11-26)

Source | Diff

Merged pull requests:

Closed issues:

  • find_pip_from_context failing on Windows platform #796

2.47.14 (2019-11-13)

Source | Diff

Notes

Several Windows CI improvements:

  • Base and Py docker images are only rebuilt if necessary;
  • Docker hub no longer requires a login to pull the image (meaning that tests now pass on forked PRs);
  • Rather than checking out the rez github repo in the image entrypoint, the existing checkout (done by the workflow) is bind mounted instead.

With these updates, tests are now passing on all platforms.

Known Issues

If the image is changed, there is a delay in the new image becoming available on docker hub (5-10 mins). If a separate push is made in this time, it can fail, as the Windows test expects to see the new image (which is tagged by commit).

Merged pull requests:

  • Windows docker enhancements #794 (bfloch)
  • Remove the login so that PR work at least for the non-image workflows. #795 (bfloch)
  • Issue 800 windows ci use checkout #801 (nerdvegas)

Closed issues:

  • windows ci: Use Actions checkout #800

2.47.13 (2019-11-08)

Source | Diff

Notes

This release just makes some minor changes related to the CI tests. As well as the changes in the PR shown below, the following changes were also made:

  • 'Windows Docker' workflow was renamed 'Windows'
  • MacOS version used in workflow was changed from 10.14 to 'latest', as per Github's instructions (which were emailed to me).

Merged pull requests:

  • Updated actions badges in README #786 (j0yu)

Closed issues:

  • Fix README actions badges not showing current master status #785

2.47.12 (2019-11-06)

Source | Diff

Notes

This release adds a docker-based workflow for the Github Actions Windows test. This was done specifically because Github's available Windows runtimes come with an already long %PATH%. Rez adds to PATH and hits a limit, causing the cmd shell to fail in several tests.

Merged pull requests:

2.47.11 (2019-11-06)

Source | Diff

Merged pull requests:

  • Fixes some failing tests on windows #775 (willjp)

2.47.10 (2019-11-06)

Source | Diff

Merged pull requests:

Closed issues:

  • rez-release UnicodeDecodeError (windows) #776
  • Errors in pip installation part go unnoticed by rez install.py #777

2.47.9 (2019-10-25)

Source | Diff

Merged pull requests:

  • rez.util.ProgressBar checks Bar.__del__ exists before invocation #769 #774 (willjp)

Closed issues:

  • rez-depends -- AttributeError: type object 'Bar' has no attribute 'del' (win, py-3, rez-2.47.7) #769

2.47.8 (2019-10-24)

Source | Diff

Merged pull requests:

  • Issue 763 prompt leak #767 (nerdvegas)
  • Fixes cmd due to oversight in 9c8334a106de900964e52f1ed8ee4155acdfe142 #770 (bfloch)
  • Skip test_build_cmake on Windows. #772 (bfloch)

Closed issues:

  • cross-shell prompt leakage can cause error #763

2.47.7 (2019-10-22)

Source | Diff

Notes

Merged pull requests:

Closed issues:

  • rez-pip should assume python provided pip #706
  • rez-pip python 3 error #764

2.47.6 (2019-10-22)

Source | Diff

Merged pull requests:

Closed issues:

  • ResourceWarning with ResolvedContext.execute_shell (py3) #761

2.47.5 (2019-10-22)

Source | Diff

Merged pull requests:

  • revert progress iteration and update vendored #766 (maxnbk)

Closed issues:

  • rez-depends -- 'ProgressBar' object is not an iterator (py-3, rez-2.47.4) #765

2.47.4 (2019-10-11)

Source | Diff

Notes

More Python3 compatibility changes.

Merged pull requests:

2.47.3 (2019-09-28)

Source | Diff

Notes

  • GitHub Actions CI test suite added
  • Windows not passing currently, fixes to come
  • Note that pwsh shell implementation was using the subprocess 'universal_newlines' arg - this has been removed. This was causing execute_shell to return an str-type stdout/stderr tuple, rather than bytes as every other shell impl does, and this was causing tests to fail.

Merged pull requests:

2.47.2 (2019-09-17)

Source | Diff

Notes

Py3 fixes found after testing.

Merged pull requests:

2.47.1 (2019-09-17)

Source | Diff

Merged pull requests:

Closed issues:

  • Shell plugin Support API #696

2.47.0 (2019-09-13)

Source | Diff

Notes

This fixes and improves the shell plugins, especially on Windows for cmd and PowerShell-like. Formerly excluded shell-dependent tests are now passing.

Note also that this release fixes a regression in Windows, introduced in 2.35.0.

Merged pull requests:

Closed issues:

  • Quotation marks issues on Windows. #691
  • Rex and expandable in other shells #694

2.46.0 (2019-09-13)

Source | Diff

Notes

Last round of Py3 updates (not counting further bugfixes found from testing).

Please take note if you notice any changes in performance in Py2. This release includes a number of changes from methods like iteritems to items, which in Py2 means a list construction rather than just an iterator. Tests have shown performance to be identical, but you may find a case where it is not.

Merged pull requests:

2.45.1 (2019-09-11)

Source | Diff

Notes

Misc Py3 compatibility updates, part 4.

Merged pull requests:

Closed issues:

  • #712 merged in 2.43.0 caused external environ not to pass through to resolve #744

2.45.0 (2019-09-10)

Source | Diff

Notes

Misc Py3 compatibility updates, part 3.

Merged pull requests:

2.44.2 (2019-09-07)

Source | Diff

Merged pull requests:

  • install variant.json file in the same manner as other extra install files #731 (nerdvegas)

Closed issues:

  • permissions failure on release (variant.json) #730

2.44.1 (2019-09-07)

Source | Diff

Notes

Misc Py3 compatibility updates, part 2.

Merged pull requests:

  • update imports in vendored pydot for py3 #728 (maxnbk)
  • update vendored schema for py3 #729 (maxnbk)

2.44.0 (2019-09-06)

Source | Diff

Notes

Misc Py3 compatibility updates, part 2.

Merged pull requests:

  • pull basestring from six.string_types - py2 gets basestring, py3 gets str #721 (maxnbk)
  • import StringIO from six.moves #722 (maxnbk)
  • update vendored colorama from 0.3.1 to 0.4.1 #723 (maxnbk)
  • update vendored memcache from 1.5.3 to 1.5.9 #724 (maxnbk)
  • make Version properly iterable in py3 #725 (maxnbk)
  • modernize function manipulations and attrs #727 (maxnbk)

2.43.0 (2019-09-05)

Source | Diff

Notes

Misc Py3 compatibility updates.

Merged pull requests:

2.42.2 (2019-08-31)

Source | Diff

Merged pull requests:

  • fixed bez rezbuild.py breaking on old-style print #705 (nerdvegas)
  • zsh tests passing by way of enabling analogue for bash shell completion #711 (maxnbk)

2.42.1 (2019-08-31)

Source | Diff

Notes

This PR introduces py3 compatibilities that do not functionally alter py2 code.

Merged pull requests:

  • miscellanous atomic nonaffective py2/py3 compatibilities #710 (maxnbk)

2.42.0 (2019-08-30)

Source | Diff

Merged pull requests:

2.41.0 (2019-08-29)

Source | Diff

Merged pull requests:

2.40.3 (2019-08-15)

Source | Diff

Notes

This update allows custom plugins to override the builtin rez plugins. It does so by reversing the order in which plugins are loaded, so that builtins are loaded last.

Merged pull requests:

Closed issues:

  • rezplugins loading order #677

2.40.2 (2019-08-15)

Source | Diff

Notes

This release fixes an issue on Windows, which has non-case-sensitive filepaths. Requesting a package with a case differing from that on disk would cause two packages to exist in the resolve, which really were just different cases of the same package.

The behaviour on Windows is now:

  • Packages are case-sensitive - rez-env Foo will fail if the package folder on disk is foo;
  • Package repository paths are case-insensitive - ~/packages and ~/Packages are regarded as the same repo.

Merged pull requests:

  • [FIX] Make package resolve request respect case sensitivity -- Windows #689 (lambdaclan)

2.40.1 (2019-08-07)

Source | Diff

Notes

Fixes regression introduced in v2.39.0.

Merged pull requests:

Closed issues:

  • [Regression - Version >= 2.39.0] ConfigurationError: Error in Rez configuration under plugins.shell #688

2.40.0 (2019-08-07)

Source | Diff

Notes

  • Adds new Zsh shell plugin (BETA)

Merged pull requests:

  • initial implementation of zsh shell plugin #686 (maxnbk)

Closed issues:

  • zsh plugin for rez #451

2.39.0 (2019-08-07)

Source | Diff

Notes

  • Fixes errors in new powershell plugin
  • Adds new powershell core 6+ plugin (BETA).

Merged pull requests:

Closed issues:

  • Add shell plugin for poweshell 6+ #678

2.38.2 (2019-07-23)

Source | Diff

Notes

Fixes regression in 2.38.0 that unintentionally renamed _rez_fwd tool to _rez-fwd.

Merged pull requests:

  • fixed regression in 2.38.0 that unintentionally renamed _rez_fwd to _rez-fwd #676 (nerdvegas)

Closed issues:

  • build scripts generated with incorrect shebang arg #671

2.38.1 (2019-07-20)

Source | Diff

Notes

Fixes issue on Windows where rez-bind'ing pip creates a broken package.

Merged pull requests:

2.38.0 (2019-07-20)

Source | Diff

Notes

Updates the installer (install.py).

  • patched distlib (in build_utils) has been removed. The patch we were relying on has since been made part of the main distlib release, which we already have vendored;
  • virtualenv has been updated to latest;
  • scripts have been removed, and entry points are used instead;
  • install.py code has been cleaned up and simplified. Specifically, standard use of distlib.ScriptMaker has been put in place;
  • INSTALL.md has been updated with a full explanation of the installer, and why a pip-based installation is not the same as using install.py.

Merged pull requests:

2.37.1 (2019-07-20)

Full Changelog

Notes

This fixes a regression introduced in 2.34.0, which causes rez-context -g to fail. The pydot vendor package was updated, and the newer version includes a breaking change. Where pydot.graph_from_dot_data used to return a single graph object, it now returns a list of graph objects.

Merged pull requests:

2.37.0 (2019-07-19)

Full Changelog

Notes

Adds PowerShell support. https://docs.microsoft.com/en-us/powershell/

Merged pull requests:

2.36.2 (2019-07-16)

Full Changelog

Merged pull requests:

2.36.1 (2019-07-16)

Full Changelog

Merged pull requests:

  • [Fix] Sh failing in test_shells.TeshShells.text_rex_code_alias #663 (bfloch)

2.36.0 (2019-07-16)

Full Changelog

Merged pull requests:

Closed issues:

  • Support "additive" preprocess functions #609

2.35.0 (2019-07-10)

Full Changelog

Backwards Compatibility Issues

Please note that this update alters the process hierarchy of a resolved rez environment, for Windows users. This does not necessarily represent a compatibility issue, but please be on the lookout for unintended side effects and report them if they arise.

Merged pull requests:

  • WIP No more "Terminate Batch Job? (Y/N)" - Take 2 #627 (mottosso)

Closed issues:

  • Shell history not working in cmd.exe or PowerShell #616

2.34.0 (2019-07-10)

Full Changelog

Merged pull requests:

2.33.0 (2019-06-26)

Full Changelog

Merged pull requests:

2.32.1 (2019-06-24)

Full Changelog

Merged pull requests:

  • Support for external PyYAML and Python 3 #622 (mottosso)
  • Fix escaping backslashes in tcsh on Mac OS #497 (skral)

2.32.0 (2019-06-23)

Full Changelog

Merged pull requests:

2.31.4 (2019-06-22)

Full Changelog

Merged pull requests:

  • Expose Python standard module file and name to rezconfig #636 (mottosso)

2.31.3 (2019-06-22)

Full Changelog

Merged pull requests:

2.31.2 (2019-06-22)

Full Changelog

Merged pull requests:

Closed issues:

  • rez-build breaks if "|" in a required package's version on Windows #558

2.31.1 (2019-06-18)

Full Changelog

Merged pull requests:

  • Automatically create missing package repository dir #623 (mottosso)

2.31.0 (2019-06-04)

Full Changelog

Merged pull requests:

2.30.2 (2019-06-03)

Full Changelog

Merged pull requests:

  • Update print statements to be Python 3 compatible #641 (bpabel)

2.30.1 (2019-06-03)

Full Changelog

Merged pull requests:

  • WIP Fix file permissions of package.py on Windows #598 (mottosso)

2.30.0 (2019-05-07)

Full Changelog

Merged pull requests:

Closed issues:

  • rezbuild.py broken #619
  • rez-env Performance and socket.getfqdn() #617
  • "parse_build_args.py" file parser arguments are not accessible anymore in "os.environ". #590

2.29.1 (2019-04-22)

Full Changelog

Merged pull requests:

Closed issues:

  • bug in rez-build --bs option #604

2.29.0 (2019-04-09)

Full Changelog

Implemented enhancements:

  • hash-based variant subpaths #583

Closed issues:

  • rez variant environment var during build #304

2.28.0 (2019-03-15)

Full Changelog

Fixed bugs:

  • nargs errors for logging_.print_* functions #580

Merged pull requests:

  • Ignore versions if .ignore file exists #453 (Pixomondo)
  • Fix/logging print nargs #581 (wwfxuk)
  • package_test.py: fix rez-test header command with % #572 (rodeofx)
  • Call the flush method every time a Printer instance is called #540 (rodeofx)

2.27.1 (2019-03-15)

Full Changelog

Merged pull requests:

2.27.0 (2019-01-24)

Full Changelog

Implemented enhancements:

  • facilitate variant install when target package is read-only #565

Fixed bugs:

  • timestamp override no working in package copy #568
  • shallow rez-cp can corrupt package if there are overlapping variants #563

Merged pull requests:

2.26.4 [#562] Fixed Regression in 2.24.0

Addressed Issues

  • #561 timestamp not written to installed package

2.26.3 [#560] Package.py permissions issue

Addressed Issues

  • #559 package.py permissions issue

Notes

Fixes issue where installed package.py can be set to r/w for only the current user.

2.26.2 [#557] Package Copy Fixes For Non-Varianted Packages

Addressed Issues

  • #556 rez-cp briefly copies original package definition in non-varianted packages
  • #555 rez-cp inconsistent symlinking when --shallow=true
  • #554 rez-cp doesn't keep file metadata in some cases

Notes

There were various minor issues related to copying non-varianted packages.

2.26.1 [#552] Bugfix in Package Copy

Addressed Issues

  • #551 package copy fails if symlinks in root dir

Notes

This was failing when symlinks were present within a non-varianted package being copied. Now, these symlinks are retained in the target package, unless --follow-symlinks is specified.

2.26.0 [#550] Build System Detection Fixes

Addressed Issues

  • #549 '--build-system' rez-build option not always available

Notes

To fix this issue:

COMPATIBILITY ISSUE!

Unfortunately, the 'cmake' build system had its own '--build-system' commandline option also. This was possible because previous rez versions suppressed the standard '--build-system' option if only one valid build system was present for a given package working directory. This option has been changed to '--cmake-build-system'.

2.25.0 [#548] Various Build-related issues

Addressed Issues

  • #433: "package_definition_build_python_paths" defined paths are not available from top level in package.py
  • #442: "rez-depends" and "private_build_requires"
  • #416: Need currently-building-variant build variables
  • #547: rez-cp follows symlinks within package payload

Notes

The biggest update in this release is the introduction of new variables accessible at early-bind time: building, build_variant_index and build_variant_requires. This allows you to do things like define different private_build_requires per-variant, or a requires that is different at runtime than it is at build time. In order to get this to work, a package.py is now re-evaluated multiple times when a build occurs - once pre-build (where 'building' is set to False), and once per variant build. Please see the updated wiki for more details: https://github.com/AcademySoftwareFoundation/rez/wiki/Package-Definition-Guide#available-objects

A new build-time env-var, REZ_BUILD_VARIANT_REQUIRES, has been added. This mirrors the new build_variant_requires var mentioned above.

rez-depends has been updated to only include the private_build_requires of the package being queried (previously, all packages' private build reqs were included, which is not useful). Recall that the previous release fixes the issue where private_build_requires was being stripped from released packages.

The entirety of a package definition file can now see the extra build-time modules available via the package_definition_build_python_paths config setting. Previously, only early bound functions could see these.

There was an issue with package copying (and thus the rez-cp tool) where symlinks within a package's payload were expanded out to their source files at copy time. The default now is to keep such symlinks intact - but hte previous behavior can still be accessed with the rez-cp --follow-symlinks option.

2.24.0: Package Copying

This release adds a new tool, rez-cp, for copying packages/variants from one package repository to another, with optional renaming/reversioning. The associated API can be found in src/package_copy.py.

Addressed Issues

  • #541
  • #510
  • #477

Notes

  • Package definition file writes are now atomic;
  • private_build_requires is kept in installed/released packages;
  • Fixes include modules not being copied into released packages;
  • File lock is no longer created when variant installation happens in dry mode.

2.23.1: Fixed Regression in 2.20.0

Addressed Issues

  • #532

Notes

Bug was introduced in: https://github.com/AcademySoftwareFoundation/rez/releases/tag/2.20.0

2.23.0: Package Usage Tracking, Better Config Overrides

Addressed Issues

  • #528

Notes

Two new features are added in this release:

Override any config setting with an env-var. For any setting "foo", you can now set the env-var REZ_FOO_JSON to a JSON-encoded string. This works for any config setting. Note that the existing REZ_FOO env-var overrides are still in place also; if both are defined, REZ_FOO takes precedence. This feature means you can now override some of the more complicated settings with env-vars, such as package_filter.

Track context creation and sourcing via AMQP. Messages are published (on a separate thread) to the nominated broker/exchange/routing_key. You have control over what parts of the context are published. For more details: https://github.com/AcademySoftwareFoundation/rez/blob/master/src/rez/rezconfig.py#L414

The embedded simplejson lib was removed. The native json lib is used instead, and for cases where loads-without-unicoding-everything is needed, utils/json.py now addresses that instead.

2.22.1: Stdin-related fixes

Addressed Issues

  • #512
  • #526

2.22.0: Search API

PR: #213

Notes

Package/variant/family search API is now available in package_search.py. This gives the same functionality as provided by the rez-search CLI tool.

2.21.0: Added mingw as a rez build_system for cmake

PR: #501

2.20.1: Windows Fixes

Merged PRs

  • #490: Fix alias command in Windows when PATH is modified
  • #489: Fix cmd.exe not escaping special characters
  • #482: Fix selftest getting stuck on Windows

Addressed Issues

  • #389
  • #343
  • #432
  • #481

2.20.0: Better CLI Arg Parsing

PR: #523

Addressed Issues

  • #492

Notes

The rez-python command now supports all native python args and passes those through to its python subprocess - so you can now shebang with rez-python if that is useful.

More broadly, rez commands now parse CLI args correctly for each case. Many commands previously accepted rez-env-style commands (eg rez-env pkgA -- somecommand -- i am ignored), but simply ignored extraneous args after -- tokens.

2.19.1: Fixed bug with rez-build and package preprocess

Merged PRs

  • #522

Addressed Issues

  • #514

Notes

The problem occurred because the preprocess function was attempting to be serialized when the package definition is cached to memcache. However, this function is stripped in installed packages; furthermore, caching "developer packages" (ie unbuilt packages) was never intentional.

This release disables memcaching of developer packages, thus avoiding the bug and bringing back originally intended behavior.