From 253702fc750240e4bb3782d518c55d0a4e8d314e Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:46:49 -0700 Subject: [PATCH 01/44] Add pathing options to shells With these options, complex shell implementation can choose to use differently converted paths for different reasons. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/shells.py | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/src/rez/shells.py b/src/rez/shells.py index fc9105538..5cacfd01d 100644 --- a/src/rez/shells.py +++ b/src/rez/shells.py @@ -318,6 +318,45 @@ def join(cls, command): return shlex_join(command, replacements=replacements) + def as_path(self, path): + """ + Return the given path as a system path. + Used if the path needs to be reformatted to suit a specific case. + Args: + path (str): File path. + + Returns: + (str): Transformed file path. + """ + return path + + def as_shell_path(self, path): + """ + Return the given path as a shell path. + Used if the shell requires a different pathing structure. + + Args: + path (str): File path. + + Returns: + (str): Transformed file path. + """ + return path + + def normalize_path(self, path): + """ + Normalize the path to fit the environment. + For example, POSIX paths, Windows path, etc. If no transformation is + necessary, just return the path. + + Args: + path (str): File path. + + Returns: + (str): Normalized file path. + """ + return path + class UnixShell(Shell): """ From 666d55f6c73e2c9bb2bb05e89ff3096882c71e5a Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:47:28 -0700 Subject: [PATCH 02/44] Add pathing options for cmd With these options, complex shell implementation can choose to use differently converted paths for different reasons. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/cmd.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/src/rezplugins/shell/cmd.py b/src/rezplugins/shell/cmd.py index 59158d2cb..534750828 100644 --- a/src/rezplugins/shell/cmd.py +++ b/src/rezplugins/shell/cmd.py @@ -244,7 +244,43 @@ def escape_string(self, value, is_path=False): result += txt return result + def as_path(self, path): + """ + Return the given path as a system path. + Used if the path needs to be reformatted to suit a specific case. + Args: + path (str): File path. + + Returns: + (str): Transformed file path. + """ + return self.normalize_path(path) + + def as_shell_path(self, path): + """ + Return the given path as a shell path. + Used if the shell requires a different pathing structure. + + Args: + path (str): File path. + + Returns: + (str): Transformed file path. + """ + return self.normalize_path(path) + def normalize_path(self, path): + """ + Normalize the path to fit the environment. + For example, POSIX paths, Windows path, etc. If no transformation is + necessary, just return the path. + + Args: + path (str): File path. + + Returns: + (str): Normalized file path. + """ return to_windows_path(path) def _saferefenv(self, key): From 3d2e4293925754b016562a2dad22ecd9973e6f29 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:47:44 -0700 Subject: [PATCH 03/44] Add pathing options to gitbash With these options, complex shell implementation can choose to use differently converted paths for different reasons. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/gitbash.py | 36 +++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index 8d0392633..337ef2c5f 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -88,7 +88,43 @@ def get_syspaths(cls): cls.syspaths = paths return cls.syspaths + def as_path(self, path): + """ + Return the given path as a system path. + Used if the path needs to be reformatted to suit a specific case. + Args: + path (str): File path. + + Returns: + (str): Transformed file path. + """ + return to_posix_path(path) + + def as_shell_path(self, path): + """ + Return the given path as a shell path. + Used if the shell requires a different pathing structure. + + Args: + path (str): File path. + + Returns: + (str): Transformed file path. + """ + return path + def normalize_path(self, path): + """ + Normalize the path to fit the environment. + For example, POSIX paths, Windows path, etc. If no transformation is + necessary, just return the path. + + Args: + path (str): File path. + + Returns: + (str): Normalized file path. + """ return to_posix_path(path) def normalize_paths(self, value): From 7fd92e7a496fa125058cc59564cee218c7653b33 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:48:46 -0700 Subject: [PATCH 04/44] Add slash expansion This is for working with non-posix paths. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/gitbash.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index 337ef2c5f..c3ed604f9 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -47,6 +47,8 @@ def find_executable(cls, name, check_syspaths=False): "plugins.shell.gitbash.executable_fullpath." ) + exepath = exepath.replace('\\', '\\\\') + return exepath @classmethod From cfafdbe5613ed62a0da215ddbe79f89df9e147b4 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:50:08 -0700 Subject: [PATCH 05/44] Conform drive start letters Allows for working with Windows drive directories like posix root paths. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/utils/sourcecode.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/rez/utils/sourcecode.py b/src/rez/utils/sourcecode.py index 3d9ae1d78..46b8ac092 100644 --- a/src/rez/utils/sourcecode.py +++ b/src/rez/utils/sourcecode.py @@ -1,6 +1,7 @@ # SPDX-License-Identifier: Apache-2.0 # Copyright Contributors to the Rez Project +import re from rez.utils.formatting import indent from rez.utils.data_utils import cached_property @@ -12,6 +13,8 @@ import traceback import os.path +_drive_start_regex = re.compile(r"^([A-Za-z]):\\") + def early(): """Used by functions in package.py to harden to the return value at build time. @@ -97,7 +100,12 @@ def __init__(self, source=None, func=None, filepath=None, eval_as_function=True): self.source = (source or '').rstrip() self.func = func + self.filepath = filepath + if self.filepath: + self.filepath = _drive_start_regex.sub("/\\1/", filepath) + self.filepath = self.filepath.replace("\\", '/') + self.eval_as_function = eval_as_function self.package = None From 9c7caa0f884d42f3fa63243aa03c5708785396ad Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:50:35 -0700 Subject: [PATCH 06/44] Quote executable Fixes issues with spaces in names. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/shells.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rez/shells.py b/src/rez/shells.py index 5cacfd01d..3a553bc5f 100644 --- a/src/rez/shells.py +++ b/src/rez/shells.py @@ -472,7 +472,7 @@ def _create_ex(): assert(self.rcfile_arg) shell_command = "%s %s" % (self.executable, self.rcfile_arg) else: - shell_command = self.executable + shell_command = '"{}"'.format(self.executable) if do_rcfile: # hijack rcfile to insert our own script From 6bf148bf80efa1e538e40455855589d930e3bf09 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:50:51 -0700 Subject: [PATCH 07/44] Use new pathing option for shell paths Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex_bindings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rez/rex_bindings.py b/src/rez/rex_bindings.py index 62b45acb6..de9af65d7 100644 --- a/src/rez/rex_bindings.py +++ b/src/rez/rex_bindings.py @@ -132,7 +132,7 @@ def root(self): root = self.__cached_root or self.__variant.root if self.__interpreter: - root = self.__interpreter.normalize_path(root) + root = self.__interpreter.as_shell_path(root) return root From 956ecb3f79a85252c7b73dd910255e942b37ee0b Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:51:51 -0700 Subject: [PATCH 08/44] Add pathing options to rex With these options, complex shell implementation can choose to use differently converted paths for different reasons. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex.py | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/src/rez/rex.py b/src/rez/rex.py index ac76c143d..63e41b738 100644 --- a/src/rez/rex.py +++ b/src/rez/rex.py @@ -801,6 +801,45 @@ def _add_systemroot_to_env_win32(self, env): env['SYSTEMROOT'] = os.environ['SYSTEMROOT'] + def as_path(self, path): + """ + Return the given path as a system path. + Used if the path needs to be reformatted to suit a specific case. + Args: + path (str): File path. + + Returns: + (str): Transformed file path. + """ + return path + + def as_shell_path(self, path): + """ + Return the given path as a shell path. + Used if the shell requires a different pathing structure. + + Args: + path (str): File path. + + Returns: + (str): Transformed file path. + """ + return path + + def normalize_path(self, path): + """ + Normalize the path to fit the environment. + For example, POSIX paths, Windows path, etc. If no transformation is + necessary, just return the path. + + Args: + path (str): File path. + + Returns: + (str): Normalized file path. + """ + return path + #=============================================================================== # String manipulation From ab0bdab0ebda83c5170200d7c38098553b1cdd28 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 20 Aug 2022 00:52:07 -0700 Subject: [PATCH 09/44] Use new path option Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rez/rex.py b/src/rez/rex.py index 63e41b738..bdf4f5db3 100644 --- a/src/rez/rex.py +++ b/src/rez/rex.py @@ -1398,7 +1398,7 @@ def normalize_path(self, path): Returns: str: The normalized path. """ - return self.interpreter.normalize_path(path) + return self.interpreter.as_path(path) @classmethod def compile_code(cls, code, filename=None, exec_namespace=None): From d1b071d3dbff27f57cbc381857456240f7e13c28 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sun, 21 Aug 2022 00:59:29 -0700 Subject: [PATCH 10/44] Remove linting fixes Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/release_vcs.py | 2 +- src/rez/shells.py | 4 ++-- src/rez/solver.py | 10 +++++----- src/rez/utils/py_dist.py | 4 ++-- src/rez/utils/scope.py | 6 +++--- src/rezplugins/release_vcs/git.py | 2 +- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/rez/release_vcs.py b/src/rez/release_vcs.py index 66a5b5161..66acbec5e 100644 --- a/src/rez/release_vcs.py +++ b/src/rez/release_vcs.py @@ -78,7 +78,7 @@ def __init__(self, pkg_root, vcs_root=None): "path %s" % (self.name(), pkg_root)) vcs_root = result[0] else: - assert(self.is_valid_root(vcs_root)) + assert self.is_valid_root(vcs_root) self.vcs_root = vcs_root self.pkg_root = pkg_root diff --git a/src/rez/shells.py b/src/rez/shells.py index 3a553bc5f..297ca4812 100644 --- a/src/rez/shells.py +++ b/src/rez/shells.py @@ -465,11 +465,11 @@ def _create_ex(): shell_command = d["command"] else: if d["stdin"]: - assert(self.stdin_arg) + assert self.stdin_arg shell_command = "%s %s" % (self.executable, self.stdin_arg) quiet = True elif do_rcfile: - assert(self.rcfile_arg) + assert self.rcfile_arg shell_command = "%s %s" % (self.executable, self.rcfile_arg) else: shell_command = '"{}"'.format(self.executable) diff --git a/src/rez/solver.py b/src/rez/solver.py index 49a2607d6..2ec0f35fd 100644 --- a/src/rez/solver.py +++ b/src/rez/solver.py @@ -1118,7 +1118,7 @@ def extract(self): if not package_request: return (self, None) - assert(new_slice is not self.variant_slice) + assert new_slice is not self.variant_slice scope = copy.copy(self) scope.variant_slice = new_slice if self.pr: @@ -1477,7 +1477,7 @@ def finalise(self): correctly ordered; or, if cyclic dependencies were detected, a new phase marked as cyclic. """ - assert(self._is_solved()) + assert self._is_solved() g = self._get_minimal_graph() scopes = dict((x.package_name, x) for x in self.scopes if not x.is_conflict) @@ -1532,7 +1532,7 @@ def split(self): A 2-tuple of _ResolvePhase objects, where the first phase is the best contender for resolving. """ - assert(self.status == SolverStatus.exhausted) + assert self.status == SolverStatus.exhausted scopes = [] next_scopes = [] @@ -2202,7 +2202,7 @@ def solve_step(self): else: self.pr.subheader("EXHAUSTED:") - assert(new_phase.status == SolverStatus.exhausted) + assert new_phase.status == SolverStatus.exhausted self._push_phase(new_phase) def failure_reason(self, failure_index=None): @@ -2331,7 +2331,7 @@ def _latest_nonfailed_phase(self): for phase in reversed(self.phase_stack): if phase.status not in (SolverStatus.failed, SolverStatus.cyclic): return phase - assert(False) # should never get here + assert False # should never get here def _do_callback(self): keep_going = True diff --git a/src/rez/utils/py_dist.py b/src/rez/utils/py_dist.py index 20c4f5553..904a37870 100644 --- a/src/rez/utils/py_dist.py +++ b/src/rez/utils/py_dist.py @@ -223,8 +223,8 @@ def _dst(p): else: # this is an egg-file import zipfile - assert(is_egg and os.path.isfile(dist.location)) - assert(zipfile.is_zipfile(dist.location)) + assert is_egg and os.path.isfile(dist.location) + assert zipfile.is_zipfile(dist.location) z = zipfile.ZipFile(dist.location) z.extractall(root_path) diff --git a/src/rez/utils/scope.py b/src/rez/utils/scope.py index 5fe1be956..536adb943 100644 --- a/src/rez/utils/scope.py +++ b/src/rez/utils/scope.py @@ -56,7 +56,7 @@ def _noattrib(): # to something. This stops code like "print(instance.notexist)" from # adding empty attributes attr_ = self._create_child_attribute(attr) - assert(isinstance(attr_, RecursiveAttribute)) + assert isinstance(attr_, RecursiveAttribute) attr_.__dict__["pending"] = (attr, self) return attr_ @@ -219,8 +219,8 @@ def __call__(self, name): def _scope_exit(self, name): scope = self.scope_stack.pop() - assert(self.scope_stack) - assert(name == scope.name) + assert self.scope_stack + assert name == scope.name data = {scope.name: scope.to_dict()} self.scope_stack[-1].update(data) diff --git a/src/rezplugins/release_vcs/git.py b/src/rezplugins/release_vcs/git.py index e05789c56..7048b0028 100644 --- a/src/rezplugins/release_vcs/git.py +++ b/src/rezplugins/release_vcs/git.py @@ -61,7 +61,7 @@ def get_relative_to_remote(self): try: s2 = toks[-1] adj, n = s2.split() - assert(adj in ("ahead", "behind")) + assert adj in ("ahead", "behind") n = int(n) return -n if adj == "behind" else n except Exception as e: From 4376a38ba7a203e60fc7928e0b64da1de62b3197 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 22 Sep 2022 15:55:41 -0700 Subject: [PATCH 11/44] Add shell_pathed_env_vars to config Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/config.py | 1 + src/rez/rezconfig.py | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/rez/config.py b/src/rez/config.py index adfdfe1c2..b9258d752 100644 --- a/src/rez/config.py +++ b/src/rez/config.py @@ -345,6 +345,7 @@ def _parse_env_var(self, value): "release_hooks": StrList, "context_tracking_context_fields": StrList, "pathed_env_vars": StrList, + "shell_pathed_env_vars": OptionalDict, "prompt_release_message": Bool, "critical_styles": OptionalStrList, "error_styles": OptionalStrList, diff --git a/src/rez/rezconfig.py b/src/rez/rezconfig.py index 42fd72adc..2ee541d72 100644 --- a/src/rez/rezconfig.py +++ b/src/rez/rezconfig.py @@ -533,6 +533,10 @@ "*PATH" ] +shell_pathed_env_vars = { + "gitbash": ["PYTHONPATH"] +} + # Defines what suites on $PATH stay visible when a new rez environment is resolved. # Possible values are: # - "never": Don"t attempt to keep any suites visible in a new env From 24dbc7cfaecdb169a206af9bafbd0f0d2bb74d55 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 22 Sep 2022 15:58:55 -0700 Subject: [PATCH 12/44] Add classmethod to check for shell pathed keys Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/rez/rex.py b/src/rez/rex.py index bdf4f5db3..9f11e5db3 100644 --- a/src/rez/rex.py +++ b/src/rez/rex.py @@ -571,6 +571,16 @@ def escape_string(self, value, is_path=False): def _is_pathed_key(cls, key): return any(fnmatch(key, x) for x in config.pathed_env_vars) + @classmethod + def _is_shell_pathed_key(cls, key): + shell_name = cls.name if hasattr(cls, 'name') else '' + if shell_name not in config.shell_pathed_env_vars: + return False + + return any( + fnmatch(key, x) for x in config.shell_pathed_env_vars[shell_name] + ) + def normalize_path(self, path): """Normalize a path. From 9c00baf248a0217f37badd32f9228b0631d745bf Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 22 Sep 2022 15:59:27 -0700 Subject: [PATCH 13/44] Add is_shell_path arg to escape_string Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/rez/rex.py b/src/rez/rex.py index 9f11e5db3..9de142a7d 100644 --- a/src/rez/rex.py +++ b/src/rez/rex.py @@ -543,7 +543,7 @@ def shebang(self): # --- other - def escape_string(self, value, is_path=False): + def escape_string(self, value, is_path=False, is_shell_path=False): """Escape a string. Escape the given string so that special characters (such as quotes and @@ -561,6 +561,7 @@ def escape_string(self, value, is_path=False): Args: value (str or `EscapedString`): String to escape. is_path (bool): True if the value is path-like. + is_shell_path (bool): True if the value is a shell-path. Returns: str: The escaped string. From 3677b0082505aa2e941e7d7a00f24632ef291978 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 22 Sep 2022 16:01:15 -0700 Subject: [PATCH 14/44] Add is_shell_path arg to escape_string overrides Add check and key conversion for shell pathed key based on arg Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/powershell_base.py | 4 +++- src/rezplugins/shell/cmd.py | 10 ++++++++-- src/rezplugins/shell/csh.py | 6 ++++-- src/rezplugins/shell/sh.py | 6 +++++- 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/src/rezplugins/shell/_utils/powershell_base.py b/src/rezplugins/shell/_utils/powershell_base.py index ca4171693..bfa3181aa 100644 --- a/src/rezplugins/shell/_utils/powershell_base.py +++ b/src/rezplugins/shell/_utils/powershell_base.py @@ -226,7 +226,7 @@ def get_output(self, style=OutputStyle.file): script = '&& '.join(lines) return script - def escape_string(self, value, is_path=False): + def escape_string(self, value, is_path=False, is_shell_path=False): value = EscapedString.promote(value) value = value.expanduser() result = '' @@ -237,6 +237,8 @@ def escape_string(self, value, is_path=False): else: if is_path: txt = self.normalize_paths(txt) + elif is_shell_path: + txt = self.as_shell_path(txt) txt = self._escape_quotes(txt) result += txt diff --git a/src/rezplugins/shell/cmd.py b/src/rezplugins/shell/cmd.py index 534750828..cc5ef38f7 100644 --- a/src/rezplugins/shell/cmd.py +++ b/src/rezplugins/shell/cmd.py @@ -217,14 +217,18 @@ def get_output(self, style=OutputStyle.file): script = '&& '.join(lines) return script - def escape_string(self, value, is_path=False): + def escape_string(self, value, is_path=False, is_shell_path=False): """Escape the <, >, ^, and & special characters reserved by Windows. + is_path and is_shell_path are mutally exclusive. + Args: value (str/EscapedString): String or already escaped string. Returns: - str: The value escaped for Windows. + value (str): The value escaped for Windows. + is_path (bool): True if the value is path-like. + is_shell_path (bool): True if the value is a shell-path. """ value = EscapedString.promote(value) @@ -239,6 +243,8 @@ def escape_string(self, value, is_path=False): else: if is_path: txt = self.normalize_paths(txt) + elif is_shell_path: + txt = self.as_shell_path(txt) txt = self._escaper(txt) result += txt diff --git a/src/rezplugins/shell/csh.py b/src/rezplugins/shell/csh.py index ab9fbe95a..74216921f 100644 --- a/src/rezplugins/shell/csh.py +++ b/src/rezplugins/shell/csh.py @@ -98,7 +98,7 @@ def get_startup_sequence(cls, rcfile, norc, stdin, command): source_bind_files=(not norc) ) - def escape_string(self, value, is_path=False): + def escape_string(self, value, is_path=False, is_shell_path=False): value = EscapedString.promote(value) value = value.expanduser() result = '' @@ -110,7 +110,9 @@ def escape_string(self, value, is_path=False): txt = "'%s'" % txt else: if is_path: - txt = self.normalize_paths(txt) + txt = self.as_path(txt) + elif is_shell_path: + txt = self.as_shell_path(txt) txt = txt.replace('"', '"\\""') txt = txt.replace('!', '\\!') diff --git a/src/rezplugins/shell/sh.py b/src/rezplugins/shell/sh.py index 7fbade028..7fa7631db 100644 --- a/src/rezplugins/shell/sh.py +++ b/src/rezplugins/shell/sh.py @@ -119,7 +119,7 @@ def source(self, value): value = self.escape_string(value) self._addline('. %s' % value) - def escape_string(self, value, is_path=False): + def escape_string(self, value, is_path=False, is_shell_path=False): value = EscapedString.promote(value) value = value.expanduser() result = '' @@ -132,11 +132,15 @@ def escape_string(self, value, is_path=False): else: if is_path: txt = self.normalize_paths(txt) + # txt = self.as_path(txt) + elif is_shell_path: + txt = self.as_shell_path(txt) txt = txt.replace('\\', '\\\\') txt = txt.replace('"', '\\"') txt = '"%s"' % txt result += txt + return result def _saferefenv(self, key): From 57123b147726689a7ba2a1a6d63fb3f316a5e5e2 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 22 Sep 2022 16:01:52 -0700 Subject: [PATCH 15/44] Update call to escape_string with is_shell_path arg Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/cmd.py | 6 +++++- src/rezplugins/shell/sh.py | 7 ++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/rezplugins/shell/cmd.py b/src/rezplugins/shell/cmd.py index cc5ef38f7..e51c37f8f 100644 --- a/src/rezplugins/shell/cmd.py +++ b/src/rezplugins/shell/cmd.py @@ -296,7 +296,11 @@ def shebang(self): pass def setenv(self, key, value): - value = self.escape_string(value, is_path=self._is_pathed_key(key)) + value = self.escape_string( + value, + is_path=self._is_pathed_key(key), + is_shell_path=self._is_shell_pathed_key(key), + ) self._addline('set %s=%s' % (key, value)) def unsetenv(self, key): diff --git a/src/rezplugins/shell/sh.py b/src/rezplugins/shell/sh.py index 7fa7631db..c4d8d7db1 100644 --- a/src/rezplugins/shell/sh.py +++ b/src/rezplugins/shell/sh.py @@ -104,7 +104,12 @@ def _bind_interactive_rez(self): self._addline(cmd % r"\[\e[1m\]$REZ_ENV_PROMPT\[\e[0m\]") def setenv(self, key, value): - value = self.escape_string(value, is_path=self._is_pathed_key(key)) + value = self.escape_string( + value, + is_path=self._is_pathed_key(key), + is_shell_path=self._is_shell_pathed_key(key), + ) + self._addline('export %s=%s' % (key, value)) def unsetenv(self, key): From 8aae07489f843b1c43f8afa04e648b448e7b69b7 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 22 Sep 2022 16:02:34 -0700 Subject: [PATCH 16/44] Capitalize drive letter on windows path conversion Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/utils/sourcecode.py | 10 ++++++++-- src/rezplugins/shell/_utils/windows.py | 8 +++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/rez/utils/sourcecode.py b/src/rez/utils/sourcecode.py index 46b8ac092..63a2e5230 100644 --- a/src/rez/utils/sourcecode.py +++ b/src/rez/utils/sourcecode.py @@ -103,8 +103,14 @@ def __init__(self, source=None, func=None, filepath=None, self.filepath = filepath if self.filepath: - self.filepath = _drive_start_regex.sub("/\\1/", filepath) - self.filepath = self.filepath.replace("\\", '/') + drive_letter_match = _drive_start_regex.match(filepath) + # If converting the drive letter to posix, capitalize the drive + # letter as per cygwin behavior. + if drive_letter_match: + self.filepath = _drive_start_regex.sub( + drive_letter_match.expand("/\\1/").upper(), filepath + ) + self.filepath = self.filepath.replace("\\", "/") self.eval_as_function = eval_as_function self.package = None diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index 924c64f3a..f65e778b4 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -27,7 +27,13 @@ def _repl(m): path = _env_var_regex.sub(_repl, path) # C:\ ==> /C/ - path = _drive_start_regex.sub("/\\1/", path) + drive_letter_match = _drive_start_regex.match(path) + # If converting the drive letter to posix, capitalize the drive + # letter as per cygwin behavior. + if drive_letter_match: + path = _drive_start_regex.sub( + drive_letter_match.expand("/\\1/").upper(), path + ) # backslash ==> fwdslash path = path.replace('\\', '/') From 250338fa1f8d915b232be736a446a7a62e557e2b Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 24 Sep 2022 13:39:59 -0700 Subject: [PATCH 17/44] Change "cygwin" to "cygpath" Co-authored-by: Jonas Avrin Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/utils/sourcecode.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rez/utils/sourcecode.py b/src/rez/utils/sourcecode.py index 63a2e5230..23fa13858 100644 --- a/src/rez/utils/sourcecode.py +++ b/src/rez/utils/sourcecode.py @@ -105,7 +105,7 @@ def __init__(self, source=None, func=None, filepath=None, if self.filepath: drive_letter_match = _drive_start_regex.match(filepath) # If converting the drive letter to posix, capitalize the drive - # letter as per cygwin behavior. + # letter as per cygpath behavior. if drive_letter_match: self.filepath = _drive_start_regex.sub( drive_letter_match.expand("/\\1/").upper(), filepath From de91e236a33f6832e1914e190abfc2e2114aa4a0 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 24 Sep 2022 13:40:10 -0700 Subject: [PATCH 18/44] Change "cygwin" to "cygpath" Co-authored-by: Jonas Avrin Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/windows.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index f65e778b4..a280ce981 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -29,7 +29,7 @@ def _repl(m): # C:\ ==> /C/ drive_letter_match = _drive_start_regex.match(path) # If converting the drive letter to posix, capitalize the drive - # letter as per cygwin behavior. + # letter as per cygpath behavior. if drive_letter_match: path = _drive_start_regex.sub( drive_letter_match.expand("/\\1/").upper(), path From 6c9c2ec2b54e4a9b88ed6ad20ae84eb8e1a17e3f Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Sat, 24 Sep 2022 13:42:35 -0700 Subject: [PATCH 19/44] Fix docstring Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/cmd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rezplugins/shell/cmd.py b/src/rezplugins/shell/cmd.py index e51c37f8f..767b94e18 100644 --- a/src/rezplugins/shell/cmd.py +++ b/src/rezplugins/shell/cmd.py @@ -220,7 +220,7 @@ def get_output(self, style=OutputStyle.file): def escape_string(self, value, is_path=False, is_shell_path=False): """Escape the <, >, ^, and & special characters reserved by Windows. - is_path and is_shell_path are mutally exclusive. + ``is_path`` and ``is_shell_path`` are mutually exclusive. Args: value (str/EscapedString): String or already escaped string. From abe10f6634dc736593696fab10a610d015b31fc6 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Mon, 3 Oct 2022 15:08:46 -0700 Subject: [PATCH 20/44] Fix call Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rez/rex.py b/src/rez/rex.py index 9de142a7d..d924e5461 100644 --- a/src/rez/rex.py +++ b/src/rez/rex.py @@ -574,7 +574,7 @@ def _is_pathed_key(cls, key): @classmethod def _is_shell_pathed_key(cls, key): - shell_name = cls.name if hasattr(cls, 'name') else '' + shell_name = cls.name() if hasattr(cls, 'name') else '' if shell_name not in config.shell_pathed_env_vars: return False From b633dc7801e99e27ec7aab87a750256bc35d0bea Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Mon, 3 Oct 2022 15:09:07 -0700 Subject: [PATCH 21/44] Add description to shell_pathed_env_vars Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rezconfig.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/rez/rezconfig.py b/src/rez/rezconfig.py index 2ee541d72..740c6b160 100644 --- a/src/rez/rezconfig.py +++ b/src/rez/rezconfig.py @@ -533,6 +533,9 @@ "*PATH" ] +# Some shells may require multiple types of pathing, so this option provides +# a way to define variables on a per-shell basis to convert for shell pathing +# instead of the pathing provided above or no modification at all. shell_pathed_env_vars = { "gitbash": ["PYTHONPATH"] } From 024708be3ebcd6311a577d354476dc8ed238b654 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Mon, 3 Oct 2022 15:51:41 -0700 Subject: [PATCH 22/44] Add convert_path wrapper This function has options for how paths should be converted based on cygpath modes. This function will call to_posix_path or to_windows_path as needed. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/windows.py | 34 ++++++++++++++++++++------ 1 file changed, 27 insertions(+), 7 deletions(-) diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index a280ce981..c0d613f73 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -12,13 +12,20 @@ _env_var_regex = re.compile(r"%([^%]*)%") -def to_posix_path(path): - """Convert (eg) "C:\foo" to "/c/foo" - - TODO: doesn't take into account escaped bask slashes, which would be - weird to have in a path, but is possible. +def convert_path(path, mode='unix', force_fwdslash=False): + r"""Convert a path to unix style or windows style as per cygpath rules. + + Args: + path (str): Path to convert. + mode (str|Optional): Cygpath-style mode to use: + unix (default): Unix style path (c:\ and C:\ -> /c/) + windows: Windows style path (c:\ and C:\ -> C:/) + force_fwdslash (bool|Optional): Return a path containing only + forward slashes regardless of mode. Default is False. + + Returns: + path(str): Converted path. """ - # expand refs like %SYSTEMROOT%, leave as-is if not in environ def _repl(m): varname = m.groups()[0] @@ -26,7 +33,20 @@ def _repl(m): path = _env_var_regex.sub(_repl, path) - # C:\ ==> /C/ + # Convert the path based on mode. + if mode == 'windows': + path = to_windows_path(path) + else: + path = to_posix_path(path) + + # NOTE: This would be normal cygpath behavior, but the broader + # implications of enabling it need extensive testing. + # Leaving it up to the user for now. + if force_fwdslash: + # Backslash -> fwdslash + path = path.replace('\\', '/') + + return path drive_letter_match = _drive_start_regex.match(path) # If converting the drive letter to posix, capitalize the drive # letter as per cygpath behavior. From 2dae12b4c461eecd566692c928d832ff6d14e60a Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Mon, 3 Oct 2022 15:52:04 -0700 Subject: [PATCH 23/44] Update to_posix_path Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/windows.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index c0d613f73..27d62ba5b 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -47,15 +47,27 @@ def _repl(m): path = path.replace('\\', '/') return path + + +def to_posix_path(path): + """Convert (eg) "C:\foo" to "/c/foo" + + TODO: doesn't take into account escaped bask slashes, which would be + weird to have in a path, but is possible. + + Args: + path (str): Path to convert. + """ + # c:\ and C:\ -> /c/ drive_letter_match = _drive_start_regex.match(path) # If converting the drive letter to posix, capitalize the drive # letter as per cygpath behavior. if drive_letter_match: path = _drive_start_regex.sub( - drive_letter_match.expand("/\\1/").upper(), path + drive_letter_match.expand("/\\1/").lower(), path ) - # backslash ==> fwdslash + # Backslash -> fwdslash path = path.replace('\\', '/') return path From 314efe716669747ba7b2ce4dbbbe153df1176b52 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Mon, 3 Oct 2022 15:52:16 -0700 Subject: [PATCH 24/44] Update to_windows_path Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/windows.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index 27d62ba5b..6d8c52b5e 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -82,7 +82,19 @@ def to_windows_path(path): TODO: doesn't take into account escaped forward slashes, which would be weird to have in a path, but is possible. """ - return path.replace('/', '\\') + # c:\ and C:\ -> C:/ + drive_letter_match = _drive_start_regex.match(path) + # If converting the drive letter to posix, capitalize the drive + # letter as per cygpath behavior. + if drive_letter_match: + path = _drive_start_regex.sub( + drive_letter_match.expand("\\1:/").upper(), path + ) + + # Fwdslash -> backslash + path = path.replace('/', '\\') + + return path def get_syspaths_from_registry(): From 0ac5820bc4f95303b0da8e23991324244f4f8a2f Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Mon, 3 Oct 2022 15:52:36 -0700 Subject: [PATCH 25/44] Use new convert_path function Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/powershell_base.py | 4 ++-- src/rezplugins/shell/cmd.py | 5 +++-- src/rezplugins/shell/gitbash.py | 7 ++++--- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/rezplugins/shell/_utils/powershell_base.py b/src/rezplugins/shell/_utils/powershell_base.py index bfa3181aa..21fd83265 100644 --- a/src/rezplugins/shell/_utils/powershell_base.py +++ b/src/rezplugins/shell/_utils/powershell_base.py @@ -14,7 +14,7 @@ from rez.utils.platform_ import platform_ from rez.utils.execution import Popen from rez.util import shlex_join -from .windows import to_windows_path +from .windows import convert_path class PowerShellBase(Shell): @@ -246,7 +246,7 @@ def escape_string(self, value, is_path=False, is_shell_path=False): def normalize_path(self, path): if platform_.name == "windows": - return to_windows_path(path) + return convert_path(path, 'windows') else: return path diff --git a/src/rezplugins/shell/cmd.py b/src/rezplugins/shell/cmd.py index 767b94e18..bc19415c4 100644 --- a/src/rezplugins/shell/cmd.py +++ b/src/rezplugins/shell/cmd.py @@ -5,6 +5,7 @@ """ Windows Command Prompt (DOS) shell. """ +from lib2to3.pytree import convert from rez.config import config from rez.rex import RexExecutor, expandable, OutputStyle, EscapedString from rez.shells import Shell @@ -12,7 +13,7 @@ from rez.utils.execution import Popen from rez.utils.platform_ import platform_ from rez.vendor.six import six -from ._utils.windows import to_windows_path, get_syspaths_from_registry +from ._utils.windows import convert_path, get_syspaths_from_registry from functools import partial import os import re @@ -287,7 +288,7 @@ def normalize_path(self, path): Returns: (str): Normalized file path. """ - return to_windows_path(path) + return convert_path(path, 'windows') def _saferefenv(self, key): pass diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index c3ed604f9..2cebba49f 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -5,6 +5,7 @@ """ Git Bash (for Windows) shell """ +from lib2to3.pytree import convert import os import re import os.path @@ -17,7 +18,7 @@ from rez.util import dedup if platform_.name == "windows": - from ._utils.windows import get_syspaths_from_registry, to_posix_path + from ._utils.windows import get_syspaths_from_registry, convert_path class GitBash(Bash): @@ -100,7 +101,7 @@ def as_path(self, path): Returns: (str): Transformed file path. """ - return to_posix_path(path) + return convert_path(path, mode='unix', force_fwdslash=True) def as_shell_path(self, path): """ @@ -127,7 +128,7 @@ def normalize_path(self, path): Returns: (str): Normalized file path. """ - return to_posix_path(path) + return convert_path(path, mode='unix', force_fwdslash=True) def normalize_paths(self, value): """ From 55c52e83ad0c39a0fa3814844794bab81e2b08ae Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Tue, 4 Oct 2022 13:47:46 -0700 Subject: [PATCH 26/44] Replace as_shell_path with as_path Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex_bindings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rez/rex_bindings.py b/src/rez/rex_bindings.py index de9af65d7..2aea8387f 100644 --- a/src/rez/rex_bindings.py +++ b/src/rez/rex_bindings.py @@ -132,7 +132,7 @@ def root(self): root = self.__cached_root or self.__variant.root if self.__interpreter: - root = self.__interpreter.as_shell_path(root) + root = self.__interpreter.as_path(root) return root From fefa176f1a72b008eab403e111a16bcd8ce553d5 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Tue, 4 Oct 2022 13:48:22 -0700 Subject: [PATCH 27/44] Add to_windows_path function Better emulate cygpath behavior. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/windows.py | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index 6d8c52b5e..af010830d 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -19,7 +19,9 @@ def convert_path(path, mode='unix', force_fwdslash=False): path (str): Path to convert. mode (str|Optional): Cygpath-style mode to use: unix (default): Unix style path (c:\ and C:\ -> /c/) - windows: Windows style path (c:\ and C:\ -> C:/) + mixed: Windows style drives with forward slashes + (c:\ and C:\ -> C:/) + windows: Windows style paths (C:\) force_fwdslash (bool|Optional): Return a path containing only forward slashes regardless of mode. Default is False. @@ -34,7 +36,9 @@ def _repl(m): path = _env_var_regex.sub(_repl, path) # Convert the path based on mode. - if mode == 'windows': + if mode == 'mixed': + path = to_mixed_path(path) + elif mode == 'windows': path = to_windows_path(path) else: path = to_posix_path(path) @@ -73,8 +77,8 @@ def to_posix_path(path): return path -def to_windows_path(path): - """Convert (eg) "C:\foo/bin" to "C:\foo\bin" +def to_mixed_path(path): + """Convert (eg) "C:\foo/bin" to "C:/foo/bin" The mixed syntax results from strings in package commands such as "{root}/bin" being interpreted in a windows shell. @@ -97,6 +101,18 @@ def to_windows_path(path): return path +def to_windows_path(path): + r"""Convert (eg) "C:\foo/bin" to "C:\foo\bin" + + TODO: doesn't take into account escaped forward slashes, which would be + weird to have in a path, but is possible. + """ + # Fwdslash -> backslash + path = path.replace('/', '\\') + + return path + + def get_syspaths_from_registry(): def gen_expected_regex(parts): From 21f3184ce33ba1a869aa1563f31835b73dbaf0a1 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Tue, 4 Oct 2022 14:45:52 -0700 Subject: [PATCH 28/44] Revert erroneous change Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex_bindings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rez/rex_bindings.py b/src/rez/rex_bindings.py index 2aea8387f..de9af65d7 100644 --- a/src/rez/rex_bindings.py +++ b/src/rez/rex_bindings.py @@ -132,7 +132,7 @@ def root(self): root = self.__cached_root or self.__variant.root if self.__interpreter: - root = self.__interpreter.as_path(root) + root = self.__interpreter.as_shell_path(root) return root From 7559fc36595a2e15c83dbb4a2557151428facb5a Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Fri, 14 Oct 2022 12:10:15 -0700 Subject: [PATCH 29/44] Swap if statement for better readability Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/sh.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/rezplugins/shell/sh.py b/src/rezplugins/shell/sh.py index c4d8d7db1..d353c3c78 100644 --- a/src/rezplugins/shell/sh.py +++ b/src/rezplugins/shell/sh.py @@ -135,11 +135,10 @@ def escape_string(self, value, is_path=False, is_shell_path=False): if not txt.startswith("'"): txt = "'%s'" % txt else: - if is_path: - txt = self.normalize_paths(txt) - # txt = self.as_path(txt) - elif is_shell_path: + if is_shell_path: txt = self.as_shell_path(txt) + elif is_path: + txt = self.normalize_paths(txt) txt = txt.replace('\\', '\\\\') txt = txt.replace('"', '\\"') From 420ba83c88e3ee47878c48964e3d98c97b089a86 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Fri, 14 Oct 2022 12:11:27 -0700 Subject: [PATCH 30/44] Update normalize_paths replacement Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/gitbash.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index 2cebba49f..04a7bc6ee 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -141,11 +141,13 @@ def normalize_paths(self, value): normalize_path() still does drive-colon replace also - it needs to behave correctly if passed a string like C:\foo. """ + def lowrepl(match): + if match: + return "/{}/".format(match.group(1).lower()) # C:\ ==> /c/ - value2 = self._drive_regex.sub("/\\1/", value) - - return super(GitBash, self).normalize_paths(value2) + value2 = self._drive_regex.sub(lowrepl, value).replace("\\", "/") + return value2 def register_plugin(): From 3b9a0c58b6dd5fed1126604c003e59e4e2db0e00 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Fri, 14 Oct 2022 12:11:54 -0700 Subject: [PATCH 31/44] Correct capitalization Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/utils/sourcecode.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rez/utils/sourcecode.py b/src/rez/utils/sourcecode.py index 23fa13858..a0c192a35 100644 --- a/src/rez/utils/sourcecode.py +++ b/src/rez/utils/sourcecode.py @@ -104,11 +104,11 @@ def __init__(self, source=None, func=None, filepath=None, self.filepath = filepath if self.filepath: drive_letter_match = _drive_start_regex.match(filepath) - # If converting the drive letter to posix, capitalize the drive + # If converting the drive letter to posix, lowercase the drive # letter as per cygpath behavior. if drive_letter_match: self.filepath = _drive_start_regex.sub( - drive_letter_match.expand("/\\1/").upper(), filepath + drive_letter_match.expand("/\\1/").lower(), filepath ) self.filepath = self.filepath.replace("\\", "/") From e50404ba9fbb19403ab25f7dafc0dabada5da5dc Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Fri, 14 Oct 2022 12:12:34 -0700 Subject: [PATCH 32/44] Change `as_shell_path` with `as_path` Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex_bindings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rez/rex_bindings.py b/src/rez/rex_bindings.py index de9af65d7..2aea8387f 100644 --- a/src/rez/rex_bindings.py +++ b/src/rez/rex_bindings.py @@ -132,7 +132,7 @@ def root(self): root = self.__cached_root or self.__variant.root if self.__interpreter: - root = self.__interpreter.as_shell_path(root) + root = self.__interpreter.as_path(root) return root From ef4a427ea2f04ec476d4dc422ec01837e7ef4300 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Fri, 14 Oct 2022 12:14:06 -0700 Subject: [PATCH 33/44] Update implicit package value expansion Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/rex.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/rez/rex.py b/src/rez/rex.py index d924e5461..18f7e074a 100644 --- a/src/rez/rex.py +++ b/src/rez/rex.py @@ -276,6 +276,16 @@ def _value(self, value): expanded_value = self._expand(unexpanded_value) return unexpanded_value, expanded_value + def _implicit_value(self, value): + def _fn(str_): + str_ = expandvars(str_, self.environ) + str_ = expandvars(str_, self.parent_environ) + return str_ + + unexpanded_value = self._format(value) + expanded_value = EscapedString.promote(value).formatted(_fn) + return unexpanded_value, expanded_value + def get_output(self, style=OutputStyle.file): return self.interpreter.get_output(style=style) @@ -307,7 +317,10 @@ def getenv(self, key): def setenv(self, key, value): unexpanded_key, expanded_key = self._key(key) - unexpanded_value, expanded_value = self._value(value) + if key == "REZ_USED_IMPLICIT_PACKAGES": + unexpanded_value, expanded_value = self._implicit_value(value) + else: + unexpanded_value, expanded_value = self._value(value) # TODO: check if value has already been set by another package self.actions.append(Setenv(unexpanded_key, unexpanded_value)) From b56f64d14367ee6a86557ded717e8648b0a5fcfc Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Tue, 25 Oct 2022 12:44:11 -0700 Subject: [PATCH 34/44] Add special regex for mixed drive letters Add function for using the matched regex Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/windows.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index af010830d..1d4cd5f90 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -9,6 +9,7 @@ _drive_start_regex = re.compile(r"^([A-Za-z]):\\") +_drive_regex_mixed = re.compile(r"([a-z]):/") _env_var_regex = re.compile(r"%([^%]*)%") @@ -86,6 +87,10 @@ def to_mixed_path(path): TODO: doesn't take into account escaped forward slashes, which would be weird to have in a path, but is possible. """ + def uprepl(match): + if match: + return '{}:/'.format(match.group(1).upper()) + # c:\ and C:\ -> C:/ drive_letter_match = _drive_start_regex.match(path) # If converting the drive letter to posix, capitalize the drive @@ -98,6 +103,10 @@ def to_mixed_path(path): # Fwdslash -> backslash path = path.replace('/', '\\') + # ${XYZ};c:/ -> C:/ + if _drive_regex_mixed.match(path): + path = _drive_regex_mixed.sub(uprepl, path) + return path From 9e5226a853d47e1b4bc6ca78e5f4f8e7f6bff493 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Tue, 25 Oct 2022 12:44:24 -0700 Subject: [PATCH 35/44] Fix path slashes Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/windows.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index 1d4cd5f90..fb70f3447 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -101,7 +101,7 @@ def uprepl(match): ) # Fwdslash -> backslash - path = path.replace('/', '\\') + path = path.replace('\\', '/') # ${XYZ};c:/ -> C:/ if _drive_regex_mixed.match(path): From 8c7c3d2c9b1d18ce5bc2f7c4a62de52145e1c74c Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Tue, 25 Oct 2022 12:45:09 -0700 Subject: [PATCH 36/44] Conform strings Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/gitbash.py | 34 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index 04a7bc6ee..234161911 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -2,10 +2,7 @@ # Copyright Contributors to the Rez Project -""" -Git Bash (for Windows) shell -""" -from lib2to3.pytree import convert +"""Git Bash (for Windows) shell.""" import os import re import os.path @@ -17,20 +14,19 @@ from rez.utils.logging_ import print_warning from rez.util import dedup -if platform_.name == "windows": +if platform_.name == 'windows': from ._utils.windows import get_syspaths_from_registry, convert_path class GitBash(Bash): - """Git Bash shell plugin. - """ + """Git Bash shell plugin.""" pathsep = ':' - _drive_regex = re.compile(r"([A-Za-z]):\\") + _drive_regex = re.compile(r'([A-Za-z]):\\') @classmethod def name(cls): - return "gitbash" + return 'gitbash' @classmethod def executable_name(cls): @@ -76,7 +72,7 @@ def get_syspaths(cls): out_, _ = p.communicate() if p.returncode == 0: lines = out_.split('\n') - line = [x for x in lines if "__PATHS_" in x.split()][0] + line = [x for x in lines if '__PATHS_' in x.split()][0] # note that we're on windows, but pathsep in bash is ':' paths = line.strip().split()[-1].split(':') else: @@ -92,8 +88,7 @@ def get_syspaths(cls): return cls.syspaths def as_path(self, path): - """ - Return the given path as a system path. + """Return the given path as a system path. Used if the path needs to be reformatted to suit a specific case. Args: path (str): File path. @@ -104,8 +99,7 @@ def as_path(self, path): return convert_path(path, mode='unix', force_fwdslash=True) def as_shell_path(self, path): - """ - Return the given path as a shell path. + """Return the given path as a shell path. Used if the shell requires a different pathing structure. Args: @@ -117,8 +111,7 @@ def as_shell_path(self, path): return path def normalize_path(self, path): - """ - Normalize the path to fit the environment. + """Normalize the path to fit the environment. For example, POSIX paths, Windows path, etc. If no transformation is necessary, just return the path. @@ -143,13 +136,16 @@ def normalize_paths(self, value): """ def lowrepl(match): if match: - return "/{}/".format(match.group(1).lower()) + return '/{}/'.format(match.group(1).lower()) # C:\ ==> /c/ - value2 = self._drive_regex.sub(lowrepl, value).replace("\\", "/") + value2 = self._drive_regex.sub(lowrepl, value).replace('\\', '/') return value2 + def shebang(self): + self._addline('#! /usr/bin/env bash') + def register_plugin(): - if platform_.name == "windows": + if platform_.name == 'windows': return GitBash From 78abeab6fd26e4cfc255c045dfedd9d1a11cbf0d Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Tue, 25 Oct 2022 12:45:19 -0700 Subject: [PATCH 37/44] Fix path conversions Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/gitbash.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index 234161911..8e1b66bec 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -108,7 +108,7 @@ def as_shell_path(self, path): Returns: (str): Transformed file path. """ - return path + return convert_path(path, mode='mixed', force_fwdslash=True) def normalize_path(self, path): """Normalize the path to fit the environment. From 2883f7372c33fb01aa21294372e9e01c3bb3db81 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Tue, 25 Oct 2022 12:45:45 -0700 Subject: [PATCH 38/44] Add special logic for implicit keys and values Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/sh.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/rezplugins/shell/sh.py b/src/rezplugins/shell/sh.py index d353c3c78..6372b6dc8 100644 --- a/src/rezplugins/shell/sh.py +++ b/src/rezplugins/shell/sh.py @@ -104,10 +104,13 @@ def _bind_interactive_rez(self): self._addline(cmd % r"\[\e[1m\]$REZ_ENV_PROMPT\[\e[0m\]") def setenv(self, key, value): + is_implicit = key == 'REZ_USED_IMPLICIT_PACKAGES' + value = self.escape_string( value, is_path=self._is_pathed_key(key), is_shell_path=self._is_shell_pathed_key(key), + is_implicit=is_implicit, ) self._addline('export %s=%s' % (key, value)) @@ -124,9 +127,13 @@ def source(self, value): value = self.escape_string(value) self._addline('. %s' % value) - def escape_string(self, value, is_path=False, is_shell_path=False): + def escape_string( + self, value, is_path=False, is_shell_path=False, is_implicit=False + ): value = EscapedString.promote(value) - value = value.expanduser() + if not is_implicit: + value = value.expanduser() + result = '' for is_literal, txt in value.strings: From c3caada676b3ca53f7edd4174a7461f1fa644f41 Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Fri, 18 Nov 2022 09:56:54 -0800 Subject: [PATCH 39/44] Merge with 2.112.0 changes Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- .gitignore | 1 + CHANGELOG.md | 1317 +++++++++-------- CODEOWNERS | 36 +- CONTRIBUTING.md | 26 +- INSTALL.md | 2 +- README.md | 33 +- RELEASE.md | 4 +- install.py | 12 +- release-rez.py | 4 +- setup.py | 4 +- src/build_utils/README.md | 2 +- src/rez/bind/_utils.py | 2 +- src/rez/cli/_entry_points.py | 5 +- src/rez/package_cache.py | 2 +- src/rez/pip.py | 6 +- src/rez/plugin_managers.py | 9 +- src/rez/resolved_context.py | 6 +- src/rez/rezconfig.py | 45 +- src/rez/serialise.py | 4 +- src/rez/tests/test_pip_utils.py | 7 + src/rez/tests/test_rex.py | 4 +- src/rez/tests/test_shells.py | 2 +- src/rez/tests/util.py | 2 +- src/rez/utils/_version.py | 2 +- src/rez/utils/elf.py | 2 +- src/rez/utils/execution.py | 4 +- src/rez/utils/filesystem.py | 2 +- src/rez/utils/pip.py | 21 +- src/rez/vendor/distlib/util.py | 2 +- src/rez/vendor/pygraph/readwrite/dot.py | 4 +- src/rezgui/__init__.py | 2 +- src/rezgui/dialogs/AboutDialog.py | 2 +- src/rezplugins/build_process/local.py | 3 +- src/rezplugins/build_system/cmake.py | 2 +- src/rezplugins/build_system/rezconfig | 2 +- .../package_repository/filesystem.py | 4 +- .../shell/_utils/powershell_base.py | 7 +- src/rezplugins/shell/cmd.py | 2 +- src/rezplugins/shell/gitbash.py | 2 +- src/support/shotgun_toolkit/README.md | 6 +- wiki/README.md | 2 +- wiki/pages/Building-Packages.md | 12 +- wiki/pages/Environment-Variables.md | 2 + wiki/pages/Managing-Packages.md | 11 +- wiki/pages/Package-Commands.md | 6 +- wiki/pages/Package-Definition-Guide.md | 7 +- 46 files changed, 890 insertions(+), 754 deletions(-) diff --git a/.gitignore b/.gitignore index 7d42ef5cc..eb2862755 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ docs/_build wiki/out LATEST_CHANGELOG.md __pycache__ +.git-commit-template diff --git a/CHANGELOG.md b/CHANGELOG.md index 47dade182..e885e4f2b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,18 +1,87 @@ # Change Log +## 2.112.0 (2022-11-15) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.112.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.111.3...2.112.0) + +**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](https://github.com/AcademySoftwareFoundation/rez/pull/1285) ([instinct-vfx](https://github.com/instinct-vfx)) +- fix: add platform/arch to variant for rez-pip packages with entry point scripts [\#1287](https://github.com/AcademySoftwareFoundation/rez/pull/1287) ([bpabel](https://github.com/bpabel)) +- working with embedded python scanning rezplugins [\#1359](https://github.com/AcademySoftwareFoundation/rez/pull/1359) ([loonghao](https://github.com/loonghao)) +- Replace nerdvegas with aswf [\#1368](https://github.com/AcademySoftwareFoundation/rez/pull/1368) ([maxnbk](https://github.com/maxnbk)) +- fix asserts causing flake8 linter failures [\#1369](https://github.com/AcademySoftwareFoundation/rez/pull/1369) ([maxnbk](https://github.com/maxnbk)) +- Edit rezconfig docstrings for package_filter to reflect python form rather than YAML [\#1377](https://github.com/AcademySoftwareFoundation/rez/pull/1377) ([herronelou](https://github.com/herronelou)) +- Add REZ_USED_LOCAL_RESOLVE context environment variable [\#1378](https://github.com/AcademySoftwareFoundation/rez/pull/1378) ([JoshkVFX](https://github.com/JoshkVFX)) +- Document .ignore pkg repo functionality [\#1385](https://github.com/AcademySoftwareFoundation/rez/pull/1385) ([jasoncscott](https://github.com/jasoncscott)) +- Clarify when the commands block is executed during rez-build [\#1391](https://github.com/AcademySoftwareFoundation/rez/pull/1391) ([jasoncscott](https://github.com/jasoncscott)) + +## 2.111.3 (2022-08-02) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.111.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.111.2...2.111.3) + +**Merged pull requests:** + +- allow benchmarking workflow to write to master [\#1352](https://github.com/AcademySoftwareFoundation/rez/pull/1352) ([nerdvegas](https://github.com/nerdvegas)) + +**Closed issues:** + +- benchmarking CI fails to push changes, does not error [\#1328](https://github.com/AcademySoftwareFoundation/rez/issues/1328) + +## 2.111.2 (2022-06-22) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.111.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.111.1...2.111.2) + +**Merged pull requests:** + +- ResolvedContext.get_resolved_package() should return None for failure [\#1325](https://github.com/AcademySoftwareFoundation/rez/pull/1325) ([alexey-pelykh](https://github.com/alexey-pelykh)) +- fix accidental skip of fail in benchmarking ci [\#1336](https://github.com/AcademySoftwareFoundation/rez/pull/1336) ([nerdvegas](https://github.com/nerdvegas)) + +## 2.111.1 (2022-06-14) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.111.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.111.0...2.111.1) + +**Merged pull requests:** + +- run git config in src dir [\#1324](https://github.com/AcademySoftwareFoundation/rez/pull/1324) ([nerdvegas](https://github.com/nerdvegas)) + +**Closed issues:** + +- Fix regression in benchmark CI [\#1323](https://github.com/AcademySoftwareFoundation/rez/issues/1323) + +## 2.111.0 (2022-06-14) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.111.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.110.0...2.111.0) + +**Merged pull requests:** + +- Fix rez executables aren't removed in windows install [\#1259](https://github.com/AcademySoftwareFoundation/rez/pull/1259) ([instinct-vfx](https://github.com/instinct-vfx)) +- use github actions bot user in benchmark workflow [\#1319](https://github.com/AcademySoftwareFoundation/rez/pull/1319) ([nerdvegas](https://github.com/nerdvegas)) + +**Closed issues:** + +- rez executables aren't removed in windows install [\#1258](https://github.com/AcademySoftwareFoundation/rez/issues/1258) +- use github actions bot for commits [\#1318](https://github.com/AcademySoftwareFoundation/rez/issues/1318) + +## 2.110.0 (2022-05-28) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.110.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.109.0...2.110.0) + +**Merged pull requests:** + +- remove references to nerdvegas in comments [\#1312](https://github.com/AcademySoftwareFoundation/rez/pull/1312) ([nerdvegas](https://github.com/nerdvegas)) + ## 2.109.0 (2022-04-19) -[Source](https://github.com/nerdvegas/rez/tree/2.109.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.108.0...2.109.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.109.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.108.0...2.109.0) **Merged pull requests:** -- Feature/1256 add git bash shell plugin [\#1280](https://github.com/nerdvegas/rez/pull/1280) ([nerdvegas](https://github.com/nerdvegas)) +- Feature/1256 add git bash shell plugin [\#1280](https://github.com/AcademySoftwareFoundation/rez/pull/1280) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- add git-bash shell plugin [\#1256](https://github.com/nerdvegas/rez/issues/1256) +- add git-bash shell plugin [\#1256](https://github.com/AcademySoftwareFoundation/rez/issues/1256) ## 2.108.0 (2022-04-19) -[Source](https://github.com/nerdvegas/rez/tree/2.108.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.107.0...2.108.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.108.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.107.0...2.108.0) **Notes** @@ -27,268 +96,268 @@ Please be aware of this change in behavior in case it affects you. **Merged pull requests:** -- Feature/1269 formalize paths in package commands [\#1273](https://github.com/nerdvegas/rez/pull/1273) ([nerdvegas](https://github.com/nerdvegas)) +- Feature/1269 formalize paths in package commands [\#1273](https://github.com/AcademySoftwareFoundation/rez/pull/1273) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- formalize paths in package commands [\#1269](https://github.com/nerdvegas/rez/issues/1269) +- formalize paths in package commands [\#1269](https://github.com/AcademySoftwareFoundation/rez/issues/1269) ## 2.107.0 (2022-04-07) -[Source](https://github.com/nerdvegas/rez/tree/2.107.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.106.0...2.107.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.107.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.106.0...2.107.0) **Merged pull requests:** -- Feature/1271 improve shell parameterization in tests [\#1272](https://github.com/nerdvegas/rez/pull/1272) ([nerdvegas](https://github.com/nerdvegas)) +- Feature/1271 improve shell parameterization in tests [\#1272](https://github.com/AcademySoftwareFoundation/rez/pull/1272) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- improve shell parameterization in tests [\#1271](https://github.com/nerdvegas/rez/issues/1271) +- improve shell parameterization in tests [\#1271](https://github.com/AcademySoftwareFoundation/rez/issues/1271) ## 2.106.0 (2022-03-23) -[Source](https://github.com/nerdvegas/rez/tree/2.106.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.105.0...2.106.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.106.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.105.0...2.106.0) **Merged pull requests:** -- added package fam removal func, and tests [\#1252](https://github.com/nerdvegas/rez/pull/1252) ([nerdvegas](https://github.com/nerdvegas)) +- added package fam removal func, and tests [\#1252](https://github.com/AcademySoftwareFoundation/rez/pull/1252) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- add ability to delete package family [\#1248](https://github.com/nerdvegas/rez/issues/1248) +- add ability to delete package family [\#1248](https://github.com/AcademySoftwareFoundation/rez/issues/1248) ## 2.105.0 (2022-03-19) -[Source](https://github.com/nerdvegas/rez/tree/2.105.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.10...2.105.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.105.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.10...2.105.0) **Merged pull requests:** -- add package filter tests, fix 1237 [\#1238](https://github.com/nerdvegas/rez/pull/1238) ([nerdvegas](https://github.com/nerdvegas)) +- add package filter tests, fix 1237 [\#1238](https://github.com/AcademySoftwareFoundation/rez/pull/1238) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- rez-test breaks with packages that do not have a timestamp attribute [\#1237](https://github.com/nerdvegas/rez/issues/1237) +- rez-test breaks with packages that do not have a timestamp attribute [\#1237](https://github.com/AcademySoftwareFoundation/rez/issues/1237) ## 2.104.10 (2022-03-19) -[Source](https://github.com/nerdvegas/rez/tree/2.104.10) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.9...2.104.10) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.10) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.9...2.104.10) **Merged pull requests:** -- fix: make cmake install directives whitespace friendly [\#1244](https://github.com/nerdvegas/rez/pull/1244) ([maxnbk](https://github.com/maxnbk)) +- fix: make cmake install directives whitespace friendly [\#1244](https://github.com/AcademySoftwareFoundation/rez/pull/1244) ([maxnbk](https://github.com/maxnbk)) **Closed issues:** -- rez_install_files with LOCAL_SYMLINK fails when an input file has whitespaces in its name [\#553](https://github.com/nerdvegas/rez/issues/553) +- rez_install_files with LOCAL_SYMLINK fails when an input file has whitespaces in its name [\#553](https://github.com/AcademySoftwareFoundation/rez/issues/553) ## 2.104.9 (2022-03-01) -[Source](https://github.com/nerdvegas/rez/tree/2.104.9) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.8...2.104.9) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.9) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.8...2.104.9) **Merged pull requests:** -- Implement #1196 [\#1199](https://github.com/nerdvegas/rez/pull/1199) ([instinct-vfx](https://github.com/instinct-vfx)) +- Implement #1196 [\#1199](https://github.com/AcademySoftwareFoundation/rez/pull/1199) ([instinct-vfx](https://github.com/instinct-vfx)) **Closed issues:** -- Switch `get_syspaths` from `REG` to `Get-ItemProperty` in Powershell shell plugins [\#1196](https://github.com/nerdvegas/rez/issues/1196) +- Switch `get_syspaths` from `REG` to `Get-ItemProperty` in Powershell shell plugins [\#1196](https://github.com/AcademySoftwareFoundation/rez/issues/1196) ## 2.104.8 (2022-03-01) -[Source](https://github.com/nerdvegas/rez/tree/2.104.8) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.7...2.104.8) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.8) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.7...2.104.8) **Merged pull requests:** -- Re-enable py3 workflow in windows.yaml [\#1232](https://github.com/nerdvegas/rez/pull/1232) ([instinct-vfx](https://github.com/instinct-vfx)) -- fix: address zsh install message displaying wrong completion script [\#1235](https://github.com/nerdvegas/rez/pull/1235) ([maxnbk](https://github.com/maxnbk)) -- Explicit fail when python executable is not found [\#1236](https://github.com/nerdvegas/rez/pull/1236) ([aboellinger](https://github.com/aboellinger)) +- Re-enable py3 workflow in windows.yaml [\#1232](https://github.com/AcademySoftwareFoundation/rez/pull/1232) ([instinct-vfx](https://github.com/instinct-vfx)) +- fix: address zsh install message displaying wrong completion script [\#1235](https://github.com/AcademySoftwareFoundation/rez/pull/1235) ([maxnbk](https://github.com/maxnbk)) +- Explicit fail when python executable is not found [\#1236](https://github.com/AcademySoftwareFoundation/rez/pull/1236) ([aboellinger](https://github.com/aboellinger)) **Closed issues:** -- Typo on install message [\#1186](https://github.com/nerdvegas/rez/issues/1186) +- Typo on install message [\#1186](https://github.com/AcademySoftwareFoundation/rez/issues/1186) ## 2.104.7 (2022-02-16) -[Source](https://github.com/nerdvegas/rez/tree/2.104.7) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.6...2.104.7) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.7) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.6...2.104.7) **Merged pull requests:** -- fixed logic fail in wiki workflow [\#1220](https://github.com/nerdvegas/rez/pull/1220) ([nerdvegas](https://github.com/nerdvegas)) +- fixed logic fail in wiki workflow [\#1220](https://github.com/AcademySoftwareFoundation/rez/pull/1220) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- fix wiki regression in v2.104.6 [\#1219](https://github.com/nerdvegas/rez/issues/1219) +- fix wiki regression in v2.104.6 [\#1219](https://github.com/AcademySoftwareFoundation/rez/issues/1219) ## 2.104.6 (2022-02-16) -[Source](https://github.com/nerdvegas/rez/tree/2.104.6) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.5...2.104.6) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.6) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.5...2.104.6) **Merged pull requests:** -- Issue 1214 spdx enforce [\#1215](https://github.com/nerdvegas/rez/pull/1215) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 1214 spdx enforce [\#1215](https://github.com/AcademySoftwareFoundation/rez/pull/1215) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- add workflow to enforce copyright [\#1214](https://github.com/nerdvegas/rez/issues/1214) +- add workflow to enforce copyright [\#1214](https://github.com/AcademySoftwareFoundation/rez/issues/1214) ## 2.104.5 (2022-02-15) -[Source](https://github.com/nerdvegas/rez/tree/2.104.5) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.4...2.104.5) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.5) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.4...2.104.5) **Merged pull requests:** -- switched to SPDX copyright notices [\#1213](https://github.com/nerdvegas/rez/pull/1213) ([nerdvegas](https://github.com/nerdvegas)) +- switched to SPDX copyright notices [\#1213](https://github.com/AcademySoftwareFoundation/rez/pull/1213) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- replace copyrights with SPDX form [\#1201](https://github.com/nerdvegas/rez/issues/1201) +- replace copyrights with SPDX form [\#1201](https://github.com/AcademySoftwareFoundation/rez/issues/1201) ## 2.104.4 (2022-02-12) -[Source](https://github.com/nerdvegas/rez/tree/2.104.4) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.3...2.104.4) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.4) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.3...2.104.4) **Merged pull requests:** -- remove nerdvegas refs in wiki [\#1212](https://github.com/nerdvegas/rez/pull/1212) ([nerdvegas](https://github.com/nerdvegas)) +- remove nerdvegas refs in wiki [\#1212](https://github.com/AcademySoftwareFoundation/rez/pull/1212) ([nerdvegas](https://github.com/nerdvegas)) ## 2.104.3 (2022-02-12) -[Source](https://github.com/nerdvegas/rez/tree/2.104.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.2...2.104.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.2...2.104.3) **Merged pull requests:** -- fixed wiki bugs [\#1211](https://github.com/nerdvegas/rez/pull/1211) ([nerdvegas](https://github.com/nerdvegas)) +- fixed wiki bugs [\#1211](https://github.com/AcademySoftwareFoundation/rez/pull/1211) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- fix nuked wiki [\#1210](https://github.com/nerdvegas/rez/issues/1210) +- fix nuked wiki [\#1210](https://github.com/AcademySoftwareFoundation/rez/issues/1210) ## 2.104.2 (2022-02-12) -[Source](https://github.com/nerdvegas/rez/tree/2.104.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.1...2.104.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.1...2.104.2) **Merged pull requests:** -- Issue 1206 wiki gpl rm [\#1207](https://github.com/nerdvegas/rez/pull/1207) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 1206 wiki gpl rm [\#1207](https://github.com/AcademySoftwareFoundation/rez/pull/1207) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- remove GPL3 code from update-wiki.py [\#1206](https://github.com/nerdvegas/rez/issues/1206) +- remove GPL3 code from update-wiki.py [\#1206](https://github.com/AcademySoftwareFoundation/rez/issues/1206) ## 2.104.1 (2022-02-08) -[Source](https://github.com/nerdvegas/rez/tree/2.104.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.104.0...2.104.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.104.0...2.104.1) **Merged pull requests:** -- Fix aliases in windows powershell/pwsh [\#1192](https://github.com/nerdvegas/rez/pull/1192) ([koaleksa](https://github.com/koaleksa)) +- Fix aliases in windows powershell/pwsh [\#1192](https://github.com/AcademySoftwareFoundation/rez/pull/1192) ([koaleksa](https://github.com/koaleksa)) **Closed issues:** -- Aliases broken on windows when using powershell [\#1191](https://github.com/nerdvegas/rez/issues/1191) +- Aliases broken on windows when using powershell [\#1191](https://github.com/AcademySoftwareFoundation/rez/issues/1191) ## 2.104.0 (2022-02-08) -[Source](https://github.com/nerdvegas/rez/tree/2.104.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.103.4...2.104.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.104.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.103.4...2.104.0) **Merged pull requests:** -- windows CI upgrade [\#1185](https://github.com/nerdvegas/rez/pull/1185) ([nerdvegas](https://github.com/nerdvegas)) +- windows CI upgrade [\#1185](https://github.com/AcademySoftwareFoundation/rez/pull/1185) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- windows gh actions issue [\#1181](https://github.com/nerdvegas/rez/issues/1181) +- windows gh actions issue [\#1181](https://github.com/AcademySoftwareFoundation/rez/issues/1181) ## 2.103.4 (2021-12-17) -[Source](https://github.com/nerdvegas/rez/tree/2.103.4) | [Diff](https://github.com/nerdvegas/rez/compare/2.103.3...2.103.4) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.103.4) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.103.3...2.103.4) **Merged pull requests:** -- reimplement which [\#1182](https://github.com/nerdvegas/rez/pull/1182) ([nerdvegas](https://github.com/nerdvegas)) +- reimplement which [\#1182](https://github.com/AcademySoftwareFoundation/rez/pull/1182) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- Whichcraft not caring about executable symlinks on windows that do not have the extension of an executable [\#1178](https://github.com/nerdvegas/rez/issues/1178) +- Whichcraft not caring about executable symlinks on windows that do not have the extension of an executable [\#1178](https://github.com/AcademySoftwareFoundation/rez/issues/1178) ## 2.103.3 (2021-12-17) -[Source](https://github.com/nerdvegas/rez/tree/2.103.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.103.2...2.103.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.103.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.103.2...2.103.3) **Merged pull requests:** -- removed sortedcontainers vendored lib [\#1180](https://github.com/nerdvegas/rez/pull/1180) ([nerdvegas](https://github.com/nerdvegas)) +- removed sortedcontainers vendored lib [\#1180](https://github.com/AcademySoftwareFoundation/rez/pull/1180) ([nerdvegas](https://github.com/nerdvegas)) ## 2.103.2 (2021-12-15) -[Source](https://github.com/nerdvegas/rez/tree/2.103.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.103.1...2.103.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.103.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.103.1...2.103.2) **Merged pull requests:** -- Uses Set-Item rather than $Env: to configure powershell environment variables. [\#1176](https://github.com/nerdvegas/rez/pull/1176) ([hutchinson](https://github.com/hutchinson)) +- Uses Set-Item rather than $Env: to configure powershell environment variables. [\#1176](https://github.com/AcademySoftwareFoundation/rez/pull/1176) ([hutchinson](https://github.com/hutchinson)) **Closed issues:** -- Environment variables containing brackets break powershell shell [\#1175](https://github.com/nerdvegas/rez/issues/1175) +- Environment variables containing brackets break powershell shell [\#1175](https://github.com/AcademySoftwareFoundation/rez/issues/1175) ## 2.103.1 (2021-12-10) -[Source](https://github.com/nerdvegas/rez/tree/2.103.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.103.0...2.103.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.103.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.103.0...2.103.1) **Merged pull requests:** -- fix pwsh shell not exiting with correct error code [\#1174](https://github.com/nerdvegas/rez/pull/1174) ([nerdvegas](https://github.com/nerdvegas)) +- fix pwsh shell not exiting with correct error code [\#1174](https://github.com/AcademySoftwareFoundation/rez/pull/1174) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- Build passes when build_command fails while using powershell as default_shell on windows [\#1099](https://github.com/nerdvegas/rez/issues/1099) +- Build passes when build_command fails while using powershell as default_shell on windows [\#1099](https://github.com/AcademySoftwareFoundation/rez/issues/1099) ## 2.103.0 (2021-12-10) -[Source](https://github.com/nerdvegas/rez/tree/2.103.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.102.1...2.103.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.103.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.102.1...2.103.0) **Merged pull requests:** -- fix 'NoneType' object has no attribute 'conflicts_with' [\#1173](https://github.com/nerdvegas/rez/pull/1173) ([nerdvegas](https://github.com/nerdvegas)) +- fix 'NoneType' object has no attribute 'conflicts_with' [\#1173](https://github.com/AcademySoftwareFoundation/rez/pull/1173) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- AttributeError: 'NoneType' object has no attribute 'conflicts_with' when rez-env a package [\#1150](https://github.com/nerdvegas/rez/issues/1150) +- AttributeError: 'NoneType' object has no attribute 'conflicts_with' when rez-env a package [\#1150](https://github.com/AcademySoftwareFoundation/rez/issues/1150) ## 2.102.1 (2021-12-10) -[Source](https://github.com/nerdvegas/rez/tree/2.102.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.102.0...2.102.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.102.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.102.0...2.102.1) **Merged pull requests:** -- rez-pip fix for packages with underscores in name [\#1172](https://github.com/nerdvegas/rez/pull/1172) ([nerdvegas](https://github.com/nerdvegas)) +- rez-pip fix for packages with underscores in name [\#1172](https://github.com/AcademySoftwareFoundation/rez/pull/1172) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- rez-pip error with inconsistency between underscores and dashes [\#1159](https://github.com/nerdvegas/rez/issues/1159) +- rez-pip error with inconsistency between underscores and dashes [\#1159](https://github.com/AcademySoftwareFoundation/rez/issues/1159) ## 2.102.0 (2021-12-10) -[Source](https://github.com/nerdvegas/rez/tree/2.102.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.101.0...2.102.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.102.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.101.0...2.102.0) **Merged pull requests:** -- Update sortedcontainers for Python 3.10 compatibility [\#1169](https://github.com/nerdvegas/rez/pull/1169) ([stilllman](https://github.com/stilllman)) +- Update sortedcontainers for Python 3.10 compatibility [\#1169](https://github.com/AcademySoftwareFoundation/rez/pull/1169) ([stilllman](https://github.com/stilllman)) **Closed issues:** -- Incompatibility with Python 3.10 [\#1168](https://github.com/nerdvegas/rez/issues/1168) +- Incompatibility with Python 3.10 [\#1168](https://github.com/AcademySoftwareFoundation/rez/issues/1168) ## 2.101.0 (2021-12-09) -[Source](https://github.com/nerdvegas/rez/tree/2.101.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.100.2...2.101.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.101.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.100.2...2.101.0) **Merged pull requests:** -- benchmarking updates [\#1171](https://github.com/nerdvegas/rez/pull/1171) ([nerdvegas](https://github.com/nerdvegas)) +- benchmarking updates [\#1171](https://github.com/AcademySoftwareFoundation/rez/pull/1171) ([nerdvegas](https://github.com/nerdvegas)) ## 2.100.2 (2021-12-08) -[Source](https://github.com/nerdvegas/rez/tree/2.100.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.100.1...2.100.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.100.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.100.1...2.100.2) **Merged pull requests:** -- sonarcloud flagged bugs (4) [\#1167](https://github.com/nerdvegas/rez/pull/1167) ([nerdvegas](https://github.com/nerdvegas)) +- sonarcloud flagged bugs (4) [\#1167](https://github.com/AcademySoftwareFoundation/rez/pull/1167) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- fix 4 sonarcloud-flagged bugs [\#1166](https://github.com/nerdvegas/rez/issues/1166) +- fix 4 sonarcloud-flagged bugs [\#1166](https://github.com/AcademySoftwareFoundation/rez/issues/1166) ## 2.100.1 (2021-12-08) -[Source](https://github.com/nerdvegas/rez/tree/2.100.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.100.0...2.100.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.100.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.100.0...2.100.1) **Merged pull requests:** -- remove use of tempfile.mktemp [\#1165](https://github.com/nerdvegas/rez/pull/1165) ([nerdvegas](https://github.com/nerdvegas)) +- remove use of tempfile.mktemp [\#1165](https://github.com/AcademySoftwareFoundation/rez/pull/1165) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- (sonarcloud) vulnerability [\#1164](https://github.com/nerdvegas/rez/issues/1164) +- (sonarcloud) vulnerability [\#1164](https://github.com/AcademySoftwareFoundation/rez/issues/1164) ## 2.100.0 (2021-11-20) -[Source](https://github.com/nerdvegas/rez/tree/2.100.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.98.3...2.100.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.100.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.98.3...2.100.0) **Notes** @@ -297,274 +366,274 @@ More: https://www.apache.org/licenses/LICENSE-2.0 **Merged pull requests:** -- Issue 1119 license change [\#1158](https://github.com/nerdvegas/rez/pull/1158) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 1119 license change [\#1158](https://github.com/AcademySoftwareFoundation/rez/pull/1158) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- Rez License Change: LGPLv3 to Apache2.0 [\#1119](https://github.com/nerdvegas/rez/issues/1119) +- Rez License Change: LGPLv3 to Apache2.0 [\#1119](https://github.com/AcademySoftwareFoundation/rez/issues/1119) ## 2.98.3 (2021-11-19) -[Source](https://github.com/nerdvegas/rez/tree/2.98.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.98.2...2.98.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.98.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.98.2...2.98.3) **Merged pull requests:** -- modified whichcraft for rez [\#1157](https://github.com/nerdvegas/rez/pull/1157) ([nerdvegas](https://github.com/nerdvegas)) +- modified whichcraft for rez [\#1157](https://github.com/AcademySoftwareFoundation/rez/pull/1157) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- rez-pip not working ? [\#904](https://github.com/nerdvegas/rez/issues/904) -- NoneType Error When Using `rez pip` on Windows [\#1024](https://github.com/nerdvegas/rez/issues/1024) +- rez-pip not working ? [\#904](https://github.com/AcademySoftwareFoundation/rez/issues/904) +- NoneType Error When Using `rez pip` on Windows [\#1024](https://github.com/AcademySoftwareFoundation/rez/issues/1024) ## 2.98.2 (2021-11-19) -[Source](https://github.com/nerdvegas/rez/tree/2.98.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.98.1...2.98.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.98.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.98.1...2.98.2) Added unmodified whichcraft vendored lib. See: * https://github.com/cookiecutter/whichcraft/blob/master/whichcraft.py -* https://github.com/nerdvegas/rez/pull/1155 +* https://github.com/AcademySoftwareFoundation/rez/pull/1155 ## 2.98.1 (2021-11-19) -[Source](https://github.com/nerdvegas/rez/tree/2.98.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.98.0...2.98.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.98.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.98.0...2.98.1) **Merged pull requests:** -- Issue 1119 code removal [\#1151](https://github.com/nerdvegas/rez/pull/1151) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 1119 code removal [\#1151](https://github.com/AcademySoftwareFoundation/rez/pull/1151) ([nerdvegas](https://github.com/nerdvegas)) ## 2.98.0 (2021-11-02) -[Source](https://github.com/nerdvegas/rez/tree/2.98.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.97.0...2.98.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.98.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.97.0...2.98.0) **Merged pull requests:** -- Fix pika connector [\#1145](https://github.com/nerdvegas/rez/pull/1145) ([davidlatwe](https://github.com/davidlatwe)) -- Issue 1148 pika conn name [\#1149](https://github.com/nerdvegas/rez/pull/1149) ([nerdvegas](https://github.com/nerdvegas)) +- Fix pika connector [\#1145](https://github.com/AcademySoftwareFoundation/rez/pull/1145) ([davidlatwe](https://github.com/davidlatwe)) +- Issue 1148 pika conn name [\#1149](https://github.com/AcademySoftwareFoundation/rez/pull/1149) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- Pika could not take port from `context_tracking_host` [\#1144](https://github.com/nerdvegas/rez/issues/1144) -- name amqp connection [\#1148](https://github.com/nerdvegas/rez/issues/1148) +- Pika could not take port from `context_tracking_host` [\#1144](https://github.com/AcademySoftwareFoundation/rez/issues/1144) +- name amqp connection [\#1148](https://github.com/AcademySoftwareFoundation/rez/issues/1148) ## 2.97.0 (2021-10-19) -[Source](https://github.com/nerdvegas/rez/tree/2.97.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.96.0...2.97.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.97.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.96.0...2.97.0) **Merged pull requests:** -- Improve rex env binding [\#1138](https://github.com/nerdvegas/rez/pull/1138) ([davidlatwe](https://github.com/davidlatwe)) +- Improve rex env binding [\#1138](https://github.com/AcademySoftwareFoundation/rez/pull/1138) ([davidlatwe](https://github.com/davidlatwe)) ## 2.96.0 (2021-10-19) -[Source](https://github.com/nerdvegas/rez/tree/2.96.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.95.3...2.96.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.96.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.95.3...2.96.0) **Merged pull requests:** -- pika [\#1140](https://github.com/nerdvegas/rez/pull/1140) ([nerdvegas](https://github.com/nerdvegas)) +- pika [\#1140](https://github.com/AcademySoftwareFoundation/rez/pull/1140) ([nerdvegas](https://github.com/nerdvegas)) ## 2.95.3 (2021-10-12) -[Source](https://github.com/nerdvegas/rez/tree/2.95.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.95.2...2.95.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.95.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.95.2...2.95.3) **Merged pull requests:** -- fix regression in v2.94.0 wrt windows string escape on rxt command [\#1139](https://github.com/nerdvegas/rez/pull/1139) ([nerdvegas](https://github.com/nerdvegas)) +- fix regression in v2.94.0 wrt windows string escape on rxt command [\#1139](https://github.com/AcademySoftwareFoundation/rez/pull/1139) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- (double-dash) removes double quotes on Windows [\#1133](https://github.com/nerdvegas/rez/issues/1133) +- (double-dash) removes double quotes on Windows [\#1133](https://github.com/AcademySoftwareFoundation/rez/issues/1133) ## 2.95.2 (2021-10-12) -[Source](https://github.com/nerdvegas/rez/tree/2.95.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.95.1...2.95.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.95.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.95.1...2.95.2) **Merged pull requests:** -- powershell quoted command fix [\#1130](https://github.com/nerdvegas/rez/pull/1130) ([nerdvegas](https://github.com/nerdvegas)) -- CLI: display detailed version info with --version [\#1134](https://github.com/nerdvegas/rez/pull/1134) ([davidlatwe](https://github.com/davidlatwe)) +- powershell quoted command fix [\#1130](https://github.com/AcademySoftwareFoundation/rez/pull/1130) ([nerdvegas](https://github.com/nerdvegas)) +- CLI: display detailed version info with --version [\#1134](https://github.com/AcademySoftwareFoundation/rez/pull/1134) ([davidlatwe](https://github.com/davidlatwe)) **Closed issues:** -- Rez pip fails to execute in Windows after 2.94.0 [\#1120](https://github.com/nerdvegas/rez/issues/1120) +- Rez pip fails to execute in Windows after 2.94.0 [\#1120](https://github.com/AcademySoftwareFoundation/rez/issues/1120) ## 2.95.1 (2021-10-12) -[Source](https://github.com/nerdvegas/rez/tree/2.95.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.95.0...2.95.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.95.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.95.0...2.95.1) **Merged pull requests:** -- Better shell specific testing [\#1136](https://github.com/nerdvegas/rez/pull/1136) ([davidlatwe](https://github.com/davidlatwe)) +- Better shell specific testing [\#1136](https://github.com/AcademySoftwareFoundation/rez/pull/1136) ([davidlatwe](https://github.com/davidlatwe)) **Closed issues:** -- rez-env output test is not testing on specified shell [\#1135](https://github.com/nerdvegas/rez/issues/1135) +- rez-env output test is not testing on specified shell [\#1135](https://github.com/AcademySoftwareFoundation/rez/issues/1135) ## 2.95.0 (2021-09-21) -[Source](https://github.com/nerdvegas/rez/tree/2.95.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.94.0...2.95.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.95.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.94.0...2.95.0) **Merged pull requests:** -- Fix fileno() error in Maya2022 [\#1124](https://github.com/nerdvegas/rez/pull/1124) ([yanshil](https://github.com/yanshil)) -- copy dist-info to python subdur in rez-pip [\#1128](https://github.com/nerdvegas/rez/pull/1128) ([nerdvegas](https://github.com/nerdvegas)) +- Fix fileno() error in Maya2022 [\#1124](https://github.com/AcademySoftwareFoundation/rez/pull/1124) ([yanshil](https://github.com/yanshil)) +- copy dist-info to python subdur in rez-pip [\#1128](https://github.com/AcademySoftwareFoundation/rez/pull/1128) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- rez-pip installs dist-info dir to root, causes probs with some pkgs [\#892](https://github.com/nerdvegas/rez/issues/892) +- rez-pip installs dist-info dir to root, causes probs with some pkgs [\#892](https://github.com/AcademySoftwareFoundation/rez/issues/892) ## 2.94.0 (2021-08-17) -[Source](https://github.com/nerdvegas/rez/tree/2.94.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.93.3...2.94.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.94.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.93.3...2.94.0) **Merged pull requests:** -- quoting fix [\#1115](https://github.com/nerdvegas/rez/pull/1115) ([nerdvegas](https://github.com/nerdvegas)) +- quoting fix [\#1115](https://github.com/AcademySoftwareFoundation/rez/pull/1115) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- bug in command quoting [\#1114](https://github.com/nerdvegas/rez/issues/1114) +- bug in command quoting [\#1114](https://github.com/AcademySoftwareFoundation/rez/issues/1114) ## 2.93.3 (2021-08-05) -[Source](https://github.com/nerdvegas/rez/tree/2.93.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.93.2...2.93.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.93.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.93.2...2.93.3) **Merged pull requests:** -- fixed always-0 exitcode in pytest-based selftest [\#1118](https://github.com/nerdvegas/rez/pull/1118) ([nerdvegas](https://github.com/nerdvegas)) +- fixed always-0 exitcode in pytest-based selftest [\#1118](https://github.com/AcademySoftwareFoundation/rez/pull/1118) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- failed tests in pytest-enabled rez-selftest are not getting picked up [\#1117](https://github.com/nerdvegas/rez/issues/1117) +- failed tests in pytest-enabled rez-selftest are not getting picked up [\#1117](https://github.com/AcademySoftwareFoundation/rez/issues/1117) ## 2.93.2 (2021-08-03) -[Source](https://github.com/nerdvegas/rez/tree/2.93.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.93.1...2.93.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.93.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.93.1...2.93.2) **Merged pull requests:** -- Prevent alias (windows function) to store all arguments in one string instead of an array of strings [\#1101](https://github.com/nerdvegas/rez/pull/1101) ([aguiot](https://github.com/aguiot)) +- Prevent alias (windows function) to store all arguments in one string instead of an array of strings [\#1101](https://github.com/AcademySoftwareFoundation/rez/pull/1101) ([aguiot](https://github.com/aguiot)) ## 2.93.1 (2021-08-03) -[Source](https://github.com/nerdvegas/rez/tree/2.93.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.93.0...2.93.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.93.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.93.0...2.93.1) **Merged pull requests:** -- handling archived lib when scanning rezplugins (fix #1108) [\#1109](https://github.com/nerdvegas/rez/pull/1109) ([davidlatwe](https://github.com/davidlatwe)) +- handling archived lib when scanning rezplugins (fix #1108) [\#1109](https://github.com/AcademySoftwareFoundation/rez/pull/1109) ([davidlatwe](https://github.com/davidlatwe)) **Closed issues:** -- PluginManager.rezplugins_module_paths breaks with zipped Python [\#1108](https://github.com/nerdvegas/rez/issues/1108) +- PluginManager.rezplugins_module_paths breaks with zipped Python [\#1108](https://github.com/AcademySoftwareFoundation/rez/issues/1108) ## 2.93.0 (2021-07-13) -[Source](https://github.com/nerdvegas/rez/tree/2.93.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.92.0...2.93.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.93.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.92.0...2.93.0) **Merged pull requests:** -- added minimal cli test [\#1106](https://github.com/nerdvegas/rez/pull/1106) ([nerdvegas](https://github.com/nerdvegas)) +- added minimal cli test [\#1106](https://github.com/AcademySoftwareFoundation/rez/pull/1106) ([nerdvegas](https://github.com/nerdvegas)) ## 2.92.0 (2021-07-13) -[Source](https://github.com/nerdvegas/rez/tree/2.92.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.91.0...2.92.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.92.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.91.0...2.92.0) **Merged pull requests:** -- PR: Ensure that "ViewGraphButton" menu instance is not garbage collected. [\#1103](https://github.com/nerdvegas/rez/pull/1103) ([KelSolaar](https://github.com/KelSolaar)) -- Remove the -s flag to rez-pip because "pip search" is decommissioned [\#1105](https://github.com/nerdvegas/rez/pull/1105) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) +- PR: Ensure that "ViewGraphButton" menu instance is not garbage collected. [\#1103](https://github.com/AcademySoftwareFoundation/rez/pull/1103) ([KelSolaar](https://github.com/KelSolaar)) +- Remove the -s flag to rez-pip because "pip search" is decommissioned [\#1105](https://github.com/AcademySoftwareFoundation/rez/pull/1105) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) **Closed issues:** -- Deprecate rez-pip -s flag because pip-search is disabled and will likely not return [\#1104](https://github.com/nerdvegas/rez/issues/1104) +- Deprecate rez-pip -s flag because pip-search is disabled and will likely not return [\#1104](https://github.com/AcademySoftwareFoundation/rez/issues/1104) ## 2.91.0 (2021-06-16) -[Source](https://github.com/nerdvegas/rez/tree/2.91.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.90.3...2.91.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.91.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.90.3...2.91.0) **Merged pull requests:** -- added env-var to disable cofig reads from ~/.rezconfig.py [\#1098](https://github.com/nerdvegas/rez/pull/1098) ([nerdvegas](https://github.com/nerdvegas)) +- added env-var to disable cofig reads from ~/.rezconfig.py [\#1098](https://github.com/AcademySoftwareFoundation/rez/pull/1098) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- config selftest can fail [\#1097](https://github.com/nerdvegas/rez/issues/1097) +- config selftest can fail [\#1097](https://github.com/AcademySoftwareFoundation/rez/issues/1097) ## 2.90.3 (2021-06-16) -[Source](https://github.com/nerdvegas/rez/tree/2.90.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.90.2...2.90.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.90.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.90.2...2.90.3) **Merged pull requests:** -- fixed missing __ne__ op in resource handle [\#1096](https://github.com/nerdvegas/rez/pull/1096) ([nerdvegas](https://github.com/nerdvegas)) +- fixed missing __ne__ op in resource handle [\#1096](https://github.com/AcademySoftwareFoundation/rez/pull/1096) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- regression: rez-test Could not resolve to variant [\#1095](https://github.com/nerdvegas/rez/issues/1095) +- regression: rez-test Could not resolve to variant [\#1095](https://github.com/AcademySoftwareFoundation/rez/issues/1095) ## 2.90.2 (2021-06-16) -[Source](https://github.com/nerdvegas/rez/tree/2.90.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.90.1...2.90.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.90.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.90.1...2.90.2) **Merged pull requests:** -- Allow trailing comma in Legacy Metadata [\#1092](https://github.com/nerdvegas/rez/pull/1092) ([bfloch](https://github.com/bfloch)) +- Allow trailing comma in Legacy Metadata [\#1092](https://github.com/AcademySoftwareFoundation/rez/pull/1092) ([bfloch](https://github.com/bfloch)) ## 2.90.1 (2021-06-08) -[Source](https://github.com/nerdvegas/rez/tree/2.90.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.90.0...2.90.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.90.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.90.0...2.90.1) **Merged pull requests:** -- Avoid hidden folder/files as it introduces problems on certain fileystems [\#1088](https://github.com/nerdvegas/rez/pull/1088) ([bfloch](https://github.com/bfloch)) +- Avoid hidden folder/files as it introduces problems on certain fileystems [\#1088](https://github.com/AcademySoftwareFoundation/rez/pull/1088) ([bfloch](https://github.com/bfloch)) ## 2.90.0 (2021-06-08) -[Source](https://github.com/nerdvegas/rez/tree/2.90.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.89.1...2.90.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.90.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.89.1...2.90.0) **Merged pull requests:** -- Extension plugins [\#1040](https://github.com/nerdvegas/rez/pull/1040) ([davidlatwe](https://github.com/davidlatwe)) +- Extension plugins [\#1040](https://github.com/AcademySoftwareFoundation/rez/pull/1040) ([davidlatwe](https://github.com/davidlatwe)) ## 2.89.1 (2021-06-02) -[Source](https://github.com/nerdvegas/rez/tree/2.89.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.89.0...2.89.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.89.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.89.0...2.89.1) **Merged pull requests:** -- disable memcache when ignoring hidden pkgs [\#1090](https://github.com/nerdvegas/rez/pull/1090) ([nerdvegas](https://github.com/nerdvegas)) +- disable memcache when ignoring hidden pkgs [\#1090](https://github.com/AcademySoftwareFoundation/rez/pull/1090) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- rez-rm --ignored-since faulty in combo with memcached enabled [\#1089](https://github.com/nerdvegas/rez/issues/1089) +- rez-rm --ignored-since faulty in combo with memcached enabled [\#1089](https://github.com/AcademySoftwareFoundation/rez/issues/1089) ## 2.89.0 (2021-06-01) -[Source](https://github.com/nerdvegas/rez/tree/2.89.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.88.4...2.89.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.89.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.88.4...2.89.0) **Merged pull requests:** -- Improve context resolve failure info [\#1083](https://github.com/nerdvegas/rez/pull/1083) ([davidlatwe](https://github.com/davidlatwe)) +- Improve context resolve failure info [\#1083](https://github.com/AcademySoftwareFoundation/rez/pull/1083) ([davidlatwe](https://github.com/davidlatwe)) ## 2.88.4 (2021-06-01) -[Source](https://github.com/nerdvegas/rez/tree/2.88.4) | [Diff](https://github.com/nerdvegas/rez/compare/2.88.3...2.88.4) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.88.4) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.88.3...2.88.4) **Merged pull requests:** -- Fix conflict fail graph #865 [\#1087](https://github.com/nerdvegas/rez/pull/1087) ([davidlatwe](https://github.com/davidlatwe)) +- Fix conflict fail graph #865 [\#1087](https://github.com/AcademySoftwareFoundation/rez/pull/1087) ([davidlatwe](https://github.com/davidlatwe)) **Closed issues:** -- fail-graph not showing true root of the conflict [\#865](https://github.com/nerdvegas/rez/issues/865) +- fail-graph not showing true root of the conflict [\#865](https://github.com/AcademySoftwareFoundation/rez/issues/865) ## 2.88.3 (2021-06-01) -[Source](https://github.com/nerdvegas/rez/tree/2.88.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.88.2...2.88.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.88.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.88.2...2.88.3) **Merged pull requests:** -- Refactor: Split add_standard_build_actions introducing add_pre_build_commands [\#1077](https://github.com/nerdvegas/rez/pull/1077) ([Tilix4](https://github.com/Tilix4)) +- Refactor: Split add_standard_build_actions introducing add_pre_build_commands [\#1077](https://github.com/AcademySoftwareFoundation/rez/pull/1077) ([Tilix4](https://github.com/Tilix4)) **Closed issues:** -- include could not find load file: RezBuild error on Windows [\#974](https://github.com/nerdvegas/rez/issues/974) +- include could not find load file: RezBuild error on Windows [\#974](https://github.com/AcademySoftwareFoundation/rez/issues/974) ## 2.88.2 (2021-05-20) -[Source](https://github.com/nerdvegas/rez/tree/2.88.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.88.1...2.88.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.88.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.88.1...2.88.2) **Merged pull requests:** -- added rez_version to context tracking amqp message [\#1079](https://github.com/nerdvegas/rez/pull/1079) ([nerdvegas](https://github.com/nerdvegas)) +- added rez_version to context tracking amqp message [\#1079](https://github.com/AcademySoftwareFoundation/rez/pull/1079) ([nerdvegas](https://github.com/nerdvegas)) ## 2.88.1 (2021-05-18) -[Source](https://github.com/nerdvegas/rez/tree/2.88.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.88.0...2.88.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.88.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.88.0...2.88.1) **Merged pull requests:** -- switch to cached root in variant binding [\#1076](https://github.com/nerdvegas/rez/pull/1076) ([nerdvegas](https://github.com/nerdvegas)) +- switch to cached root in variant binding [\#1076](https://github.com/AcademySoftwareFoundation/rez/pull/1076) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- windows package cache root switch does only work with "{root}" not this.root [\#1065](https://github.com/nerdvegas/rez/issues/1065) +- windows package cache root switch does only work with "{root}" not this.root [\#1065](https://github.com/AcademySoftwareFoundation/rez/issues/1065) ## 2.88.0 (2021-05-13) -[Source](https://github.com/nerdvegas/rez/tree/2.88.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.87.0...2.88.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.88.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.87.0...2.88.0) **Notes** @@ -572,42 +641,42 @@ This is currently implemented for linux only. **Closed issues:** -- fix linking within bundles [\#1072](https://github.com/nerdvegas/rez/issues/1072) +- fix linking within bundles [\#1072](https://github.com/AcademySoftwareFoundation/rez/issues/1072) ## 2.87.0 (2021-05-11) -[Source](https://github.com/nerdvegas/rez/tree/2.87.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.86.1...2.87.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.87.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.86.1...2.87.0) **Merged pull requests:** -- added bundle support for a post_commands.py file [\#1073](https://github.com/nerdvegas/rez/pull/1073) ([nerdvegas](https://github.com/nerdvegas)) +- added bundle support for a post_commands.py file [\#1073](https://github.com/AcademySoftwareFoundation/rez/pull/1073) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- add post-context rex file in bundles [\#1071](https://github.com/nerdvegas/rez/issues/1071) +- add post-context rex file in bundles [\#1071](https://github.com/AcademySoftwareFoundation/rez/issues/1071) ## 2.86.1 (2021-05-04) -[Source](https://github.com/nerdvegas/rez/tree/2.86.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.86.0...2.86.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.86.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.86.0...2.86.1) **Merged pull requests:** -- Fix pkg cache test [\#1046](https://github.com/nerdvegas/rez/pull/1046) ([davidlatwe](https://github.com/davidlatwe)) +- Fix pkg cache test [\#1046](https://github.com/AcademySoftwareFoundation/rez/pull/1046) ([davidlatwe](https://github.com/davidlatwe)) ## 2.86.0 (2021-05-04) -[Source](https://github.com/nerdvegas/rez/tree/2.86.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.85.0...2.86.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.86.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.85.0...2.86.0) **Merged pull requests:** -- rez config --json FIELD [\#1064](https://github.com/nerdvegas/rez/pull/1064) ([j0yu](https://github.com/j0yu)) +- rez config --json FIELD [\#1064](https://github.com/AcademySoftwareFoundation/rez/pull/1064) ([j0yu](https://github.com/j0yu)) ## 2.85.0 (2021-05-04) -[Source](https://github.com/nerdvegas/rez/tree/2.85.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.84.0...2.85.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.85.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.84.0...2.85.0) **Merged pull requests:** -- Let rez-selftest try using pytest [\#1051](https://github.com/nerdvegas/rez/pull/1051) ([davidlatwe](https://github.com/davidlatwe)) +- Let rez-selftest try using pytest [\#1051](https://github.com/AcademySoftwareFoundation/rez/pull/1051) ([davidlatwe](https://github.com/davidlatwe)) ## 2.84.0 (2021-04-16) -[Source](https://github.com/nerdvegas/rez/tree/2.84.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.83.0...2.84.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.84.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.83.0...2.84.0) **Notes** @@ -615,14 +684,14 @@ New tool: `rez-rm`. **Merged pull requests:** -- package removal [\#1063](https://github.com/nerdvegas/rez/pull/1063) ([nerdvegas](https://github.com/nerdvegas)) +- package removal [\#1063](https://github.com/AcademySoftwareFoundation/rez/pull/1063) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- add package removal [\#1062](https://github.com/nerdvegas/rez/issues/1062) +- add package removal [\#1062](https://github.com/AcademySoftwareFoundation/rez/issues/1062) ## 2.83.0 (2021-04-14) -[Source](https://github.com/nerdvegas/rez/tree/2.83.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.82.0...2.83.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.83.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.82.0...2.83.0) **Notes** @@ -630,14 +699,14 @@ New tool: `rez-mv`. **Merged pull requests:** -- Package move [\#1061](https://github.com/nerdvegas/rez/pull/1061) ([nerdvegas](https://github.com/nerdvegas)) +- Package move [\#1061](https://github.com/AcademySoftwareFoundation/rez/pull/1061) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- add pkg move feature [\#1059](https://github.com/nerdvegas/rez/issues/1059) +- add pkg move feature [\#1059](https://github.com/AcademySoftwareFoundation/rez/issues/1059) ## 2.82.0 (2021-04-08) -[Source](https://github.com/nerdvegas/rez/tree/2.82.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.81.2...2.82.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.82.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.81.2...2.82.0) **Notes** @@ -645,21 +714,21 @@ New tool: `rez-pkg-ignore`. **Merged pull requests:** -- Issue 1052 pkg ignore [\#1054](https://github.com/nerdvegas/rez/pull/1054) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 1052 pkg ignore [\#1054](https://github.com/AcademySoftwareFoundation/rez/pull/1054) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- make package ignore a formal api/tool [\#1052](https://github.com/nerdvegas/rez/issues/1052) +- make package ignore a formal api/tool [\#1052](https://github.com/AcademySoftwareFoundation/rez/issues/1052) ## 2.81.2 (2021-04-08) -[Source](https://github.com/nerdvegas/rez/tree/2.81.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.81.1...2.81.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.81.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.81.1...2.81.2) **Closed issues:** -- install related regression in v2.80.0 [\#1057](https://github.com/nerdvegas/rez/issues/1057) +- install related regression in v2.80.0 [\#1057](https://github.com/AcademySoftwareFoundation/rez/issues/1057) ## 2.81.1 (2021-04-08) -[Source](https://github.com/nerdvegas/rez/tree/2.81.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.81.0...2.81.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.81.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.81.0...2.81.1) **Notes** @@ -669,98 +738,98 @@ compatible. **Merged pull requests:** -- Issue 1055 failing tests [\#1056](https://github.com/nerdvegas/rez/pull/1056) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 1055 failing tests [\#1056](https://github.com/AcademySoftwareFoundation/rez/pull/1056) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- problem with alias in powershell [\#1017](https://github.com/nerdvegas/rez/issues/1017) -- tests failing suddenly [\#1055](https://github.com/nerdvegas/rez/issues/1055) +- problem with alias in powershell [\#1017](https://github.com/AcademySoftwareFoundation/rez/issues/1017) +- tests failing suddenly [\#1055](https://github.com/AcademySoftwareFoundation/rez/issues/1055) ## 2.81.0 (2021-04-01) -[Source](https://github.com/nerdvegas/rez/tree/2.81.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.80.0...2.81.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.81.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.80.0...2.81.0) **Merged pull requests:** -- Flake8 [\#1050](https://github.com/nerdvegas/rez/pull/1050) ([nerdvegas](https://github.com/nerdvegas)) +- Flake8 [\#1050](https://github.com/AcademySoftwareFoundation/rez/pull/1050) ([nerdvegas](https://github.com/nerdvegas)) ## 2.80.0 (2021-03-30) -[Source](https://github.com/nerdvegas/rez/tree/2.80.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.79.1...2.80.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.80.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.79.1...2.80.0) **Merged pull requests:** -- Fix rez-python arg disordered [\#1041](https://github.com/nerdvegas/rez/pull/1041) ([davidlatwe](https://github.com/davidlatwe)) +- Fix rez-python arg disordered [\#1041](https://github.com/AcademySoftwareFoundation/rez/pull/1041) ([davidlatwe](https://github.com/davidlatwe)) ## 2.79.1 (2021-03-30) -[Source](https://github.com/nerdvegas/rez/tree/2.79.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.79.0...2.79.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.79.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.79.0...2.79.1) **Merged pull requests:** -- Fix sorting of rules with and without family (closes #1037) [\#1038](https://github.com/nerdvegas/rez/pull/1038) ([jasperges](https://github.com/jasperges)) +- Fix sorting of rules with and without family (closes #1037) [\#1038](https://github.com/AcademySoftwareFoundation/rez/pull/1038) ([jasperges](https://github.com/jasperges)) **Closed issues:** -- An exception is raised when combining filters with `-` and without `-`. [\#1037](https://github.com/nerdvegas/rez/issues/1037) +- An exception is raised when combining filters with `-` and without `-`. [\#1037](https://github.com/AcademySoftwareFoundation/rez/issues/1037) ## 2.79.0 (2021-03-30) -[Source](https://github.com/nerdvegas/rez/tree/2.79.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.78.1...2.79.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.79.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.78.1...2.79.0) **Merged pull requests:** -- add optionvars [\#1036](https://github.com/nerdvegas/rez/pull/1036) ([davidlatwe](https://github.com/davidlatwe)) +- add optionvars [\#1036](https://github.com/AcademySoftwareFoundation/rez/pull/1036) ([davidlatwe](https://github.com/davidlatwe)) ## 2.78.1 (2021-03-30) -[Source](https://github.com/nerdvegas/rez/tree/2.78.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.78.0...2.78.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.78.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.78.0...2.78.1) **Merged pull requests:** -- auto benchmarking fix [\#1049](https://github.com/nerdvegas/rez/pull/1049) ([nerdvegas](https://github.com/nerdvegas)) +- auto benchmarking fix [\#1049](https://github.com/AcademySoftwareFoundation/rez/pull/1049) ([nerdvegas](https://github.com/nerdvegas)) ## 2.78.0 (2021-03-27) -[Source](https://github.com/nerdvegas/rez/tree/2.78.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.77.1...2.78.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.78.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.77.1...2.78.0) **Merged pull requests:** -- Issue 1044 auto benchmarking [\#1048](https://github.com/nerdvegas/rez/pull/1048) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 1044 auto benchmarking [\#1048](https://github.com/AcademySoftwareFoundation/rez/pull/1048) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- automatically run benchmarking [\#1044](https://github.com/nerdvegas/rez/issues/1044) +- automatically run benchmarking [\#1044](https://github.com/AcademySoftwareFoundation/rez/issues/1044) ## 2.77.1 (2021-03-16) -[Source](https://github.com/nerdvegas/rez/tree/2.77.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.77.0...2.77.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.77.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.77.0...2.77.1) **Merged pull requests:** -- Fix missing files in sdist [\#1042](https://github.com/nerdvegas/rez/pull/1042) ([davidlatwe](https://github.com/davidlatwe)) +- Fix missing files in sdist [\#1042](https://github.com/AcademySoftwareFoundation/rez/pull/1042) ([davidlatwe](https://github.com/davidlatwe)) ## 2.77.0 (2021-03-09) -[Source](https://github.com/nerdvegas/rez/tree/2.77.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.76.0...2.77.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.77.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.76.0...2.77.0) **Merged pull requests:** -- Adds more variables to the custom build system. [\#1013](https://github.com/nerdvegas/rez/pull/1013) ([bfloch](https://github.com/bfloch)) +- Adds more variables to the custom build system. [\#1013](https://github.com/AcademySoftwareFoundation/rez/pull/1013) ([bfloch](https://github.com/bfloch)) ## 2.76.0 (2021-03-09) -[Source](https://github.com/nerdvegas/rez/tree/2.76.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.75.1...2.76.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.76.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.75.1...2.76.0) **Merged pull requests:** -- add EphemeralsBinding.get_range [\#1030](https://github.com/nerdvegas/rez/pull/1030) ([davidlatwe](https://github.com/davidlatwe)) +- add EphemeralsBinding.get_range [\#1030](https://github.com/AcademySoftwareFoundation/rez/pull/1030) ([davidlatwe](https://github.com/davidlatwe)) ## 2.75.1 (2021-03-09) -[Source](https://github.com/nerdvegas/rez/tree/2.75.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.75.0...2.75.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.75.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.75.0...2.75.1) **Merged pull requests:** -- fix rez_bin_path on windows [\#1031](https://github.com/nerdvegas/rez/pull/1031) ([nerdvegas](https://github.com/nerdvegas)) -- Fix rez.vendor.distlib for Windows [\#1035](https://github.com/nerdvegas/rez/pull/1035) ([davidlatwe](https://github.com/davidlatwe)) +- fix rez_bin_path on windows [\#1031](https://github.com/AcademySoftwareFoundation/rez/pull/1031) ([nerdvegas](https://github.com/nerdvegas)) +- Fix rez.vendor.distlib for Windows [\#1035](https://github.com/AcademySoftwareFoundation/rez/pull/1035) ([davidlatwe](https://github.com/davidlatwe)) **Closed issues:** -- Issues with system.System.is_production_rez_install method on Windows. [\#1005](https://github.com/nerdvegas/rez/issues/1005) +- Issues with system.System.is_production_rez_install method on Windows. [\#1005](https://github.com/AcademySoftwareFoundation/rez/issues/1005) ## 2.75.0 (2021-03-03) -[Source](https://github.com/nerdvegas/rez/tree/2.74.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.73.0...2.75.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.74.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.73.0...2.75.0) **Notes** @@ -770,65 +839,65 @@ compatible. **Merged pull requests:** -- Issue 1032 pypi [\#1034](https://github.com/nerdvegas/rez/pull/1034) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 1032 pypi [\#1034](https://github.com/AcademySoftwareFoundation/rez/pull/1034) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- Pypi entries are out of date [\#1032](https://github.com/nerdvegas/rez/issues/1032) +- Pypi entries are out of date [\#1032](https://github.com/AcademySoftwareFoundation/rez/issues/1032) ## 2.73.0 (2021-03-02) -[Source](https://github.com/nerdvegas/rez/tree/2.73.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.72.5...2.73.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.73.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.72.5...2.73.0) **Merged pull requests:** -- context bundles [\#1029](https://github.com/nerdvegas/rez/pull/1029) ([nerdvegas](https://github.com/nerdvegas)) +- context bundles [\#1029](https://github.com/AcademySoftwareFoundation/rez/pull/1029) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- bundled contexts ("bundles") [\#1009](https://github.com/nerdvegas/rez/issues/1009) +- bundled contexts ("bundles") [\#1009](https://github.com/AcademySoftwareFoundation/rez/issues/1009) ## 2.72.5 (2021-03-02) -[Source](https://github.com/nerdvegas/rez/tree/2.72.5) | [Diff](https://github.com/nerdvegas/rez/compare/2.72.4...2.72.5) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.72.5) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.72.4...2.72.5) **Merged pull requests:** -- Improve get_variant_from_uri on Windows [\#1011](https://github.com/nerdvegas/rez/pull/1011) ([davidlatwe](https://github.com/davidlatwe)) +- Improve get_variant_from_uri on Windows [\#1011](https://github.com/AcademySoftwareFoundation/rez/pull/1011) ([davidlatwe](https://github.com/davidlatwe)) ## 2.72.4 (2021-03-02) -[Source](https://github.com/nerdvegas/rez/tree/2.72.4) | [Diff](https://github.com/nerdvegas/rez/compare/2.72.3...2.72.4) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.72.4) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.72.3...2.72.4) **Merged pull requests:** -- Wait subprocess cleanup [\#1010](https://github.com/nerdvegas/rez/pull/1010) ([davidlatwe](https://github.com/davidlatwe)) +- Wait subprocess cleanup [\#1010](https://github.com/AcademySoftwareFoundation/rez/pull/1010) ([davidlatwe](https://github.com/davidlatwe)) ## 2.72.3 (2021-02-23) -[Source](https://github.com/nerdvegas/rez/tree/2.72.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.72.2...2.72.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.72.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.72.2...2.72.3) **Merged pull requests:** -- Fix tab-completion behavior for rez deployments installed with python3 [\#1021](https://github.com/nerdvegas/rez/pull/1021) ([zachlewis](https://github.com/zachlewis)) +- Fix tab-completion behavior for rez deployments installed with python3 [\#1021](https://github.com/AcademySoftwareFoundation/rez/pull/1021) ([zachlewis](https://github.com/zachlewis)) **Closed issues:** -- Tab completion broken for rez deployments installed with Python-3.6 [\#1020](https://github.com/nerdvegas/rez/issues/1020) +- Tab completion broken for rez deployments installed with Python-3.6 [\#1020](https://github.com/AcademySoftwareFoundation/rez/issues/1020) ## 2.72.2 (2021-02-23) -[Source](https://github.com/nerdvegas/rez/tree/2.72.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.72.1...2.72.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.72.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.72.1...2.72.2) **Merged pull requests:** -- Fix install-as-rez-package script for Windows [\#1014](https://github.com/nerdvegas/rez/pull/1014) ([davidlatwe](https://github.com/davidlatwe)) +- Fix install-as-rez-package script for Windows [\#1014](https://github.com/AcademySoftwareFoundation/rez/pull/1014) ([davidlatwe](https://github.com/davidlatwe)) ## 2.72.1 (2021-02-23) -[Source](https://github.com/nerdvegas/rez/tree/2.72.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.72.0...2.72.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.72.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.72.0...2.72.1) **Merged pull requests:** -- Fix dir/file remove error handling [\#1012](https://github.com/nerdvegas/rez/pull/1012) ([davidlatwe](https://github.com/davidlatwe)) -- Fixes bug where readlink is applied on regular files. [\#1019](https://github.com/nerdvegas/rez/pull/1019) ([bfloch](https://github.com/bfloch)) +- Fix dir/file remove error handling [\#1012](https://github.com/AcademySoftwareFoundation/rez/pull/1012) ([davidlatwe](https://github.com/davidlatwe)) +- Fixes bug where readlink is applied on regular files. [\#1019](https://github.com/AcademySoftwareFoundation/rez/pull/1019) ([bfloch](https://github.com/bfloch)) ## 2.72.0 (2021-01-12) -[Source](https://github.com/nerdvegas/rez/tree/2.72.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.71.0...2.72.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.72.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.71.0...2.72.0) **Notes** @@ -838,19 +907,19 @@ python-3.9. **Merged pull requests:** -- venv based install [\#1006](https://github.com/nerdvegas/rez/pull/1006) ([nerdvegas](https://github.com/nerdvegas)) +- venv based install [\#1006](https://github.com/AcademySoftwareFoundation/rez/pull/1006) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- Installation With Python >=3.9 Fails ('HTMLParser' object has no attribute 'unescape') [\#980](https://github.com/nerdvegas/rez/issues/980) -- have install.py use venv in python3 [\#982](https://github.com/nerdvegas/rez/issues/982) +- Installation With Python >=3.9 Fails ('HTMLParser' object has no attribute 'unescape') [\#980](https://github.com/AcademySoftwareFoundation/rez/issues/980) +- have install.py use venv in python3 [\#982](https://github.com/AcademySoftwareFoundation/rez/issues/982) ## 2.71.0 (2020-12-29) -[Source](https://github.com/nerdvegas/rez/tree/2.71.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.70.5...2.71.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.71.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.70.5...2.71.0) **Notes** -[Ephemeral packages](https://github.com/nerdvegas/rez/wiki/Ephemeral-Packages) are a major new feature. These +[Ephemeral packages](https://github.com/AcademySoftwareFoundation/rez/wiki/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 @@ -858,49 +927,49 @@ version number. **Merged pull requests:** -- Ephemeral packages [\#993](https://github.com/nerdvegas/rez/pull/993) ([nerdvegas](https://github.com/nerdvegas)) +- Ephemeral packages [\#993](https://github.com/AcademySoftwareFoundation/rez/pull/993) ([nerdvegas](https://github.com/nerdvegas)) ## 2.70.5 (2020-12-29) -[Source](https://github.com/nerdvegas/rez/tree/2.70.5) | [Diff](https://github.com/nerdvegas/rez/compare/2.70.4...2.70.5) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.70.5) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.70.4...2.70.5) **Merged pull requests:** -- Fix module 'Qt.QtWidgets' has no attribute'QPainter' [\#992](https://github.com/nerdvegas/rez/pull/992) ([loonghao](https://github.com/loonghao)) +- Fix module 'Qt.QtWidgets' has no attribute'QPainter' [\#992](https://github.com/AcademySoftwareFoundation/rez/pull/992) ([loonghao](https://github.com/loonghao)) ## 2.70.4 (2020-12-29) -[Source](https://github.com/nerdvegas/rez/tree/2.70.4) | [Diff](https://github.com/nerdvegas/rez/compare/2.70.3...2.70.4) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.70.4) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.70.3...2.70.4) **Merged pull requests:** -- update open_file_for_write with simplified error handling [\#998](https://github.com/nerdvegas/rez/pull/998) ([nerdvegas](https://github.com/nerdvegas)) +- update open_file_for_write with simplified error handling [\#998](https://github.com/AcademySoftwareFoundation/rez/pull/998) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- 'rez build --install --prefix' error [\#858](https://github.com/nerdvegas/rez/issues/858) +- 'rez build --install --prefix' error [\#858](https://github.com/AcademySoftwareFoundation/rez/issues/858) ## 2.70.3 (2020-12-29) -[Source](https://github.com/nerdvegas/rez/tree/2.70.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.70.2...2.70.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.70.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.70.2...2.70.3) **Merged pull requests:** -- Fix no CLI args passed into forward script on Windows [\#990](https://github.com/nerdvegas/rez/pull/990) ([davidlatwe](https://github.com/davidlatwe)) +- Fix no CLI args passed into forward script on Windows [\#990](https://github.com/AcademySoftwareFoundation/rez/pull/990) ([davidlatwe](https://github.com/davidlatwe)) ## 2.70.2 (2020-12-29) -[Source](https://github.com/nerdvegas/rez/tree/2.70.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.70.1...2.70.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.70.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.70.1...2.70.2) **Merged pull requests:** -- fix: exit file write retry loop after successfull write [\#989](https://github.com/nerdvegas/rez/pull/989) ([bpabel](https://github.com/bpabel)) +- fix: exit file write retry loop after successfull write [\#989](https://github.com/AcademySoftwareFoundation/rez/pull/989) ([bpabel](https://github.com/bpabel)) ## 2.70.1 (2020-12-29) -[Source](https://github.com/nerdvegas/rez/tree/2.70.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.70.0...2.70.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.70.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.70.0...2.70.1) **Merged pull requests:** -- Fixes release hook for Python 3 [\#981](https://github.com/nerdvegas/rez/pull/981) ([bfloch](https://github.com/bfloch)) +- Fixes release hook for Python 3 [\#981](https://github.com/AcademySoftwareFoundation/rez/pull/981) ([bfloch](https://github.com/bfloch)) ## 2.70.0 (2020-12-29) -[Source](https://github.com/nerdvegas/rez/tree/2.70.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.69.7...2.70.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.70.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.69.7...2.70.0) **Backwards Compatibility Issues** @@ -915,171 +984,171 @@ need to do to port your existing build script. **Merged pull requests:** -- Remove bez [\#979](https://github.com/nerdvegas/rez/pull/979) ([nerdvegas](https://github.com/nerdvegas)) +- Remove bez [\#979](https://github.com/AcademySoftwareFoundation/rez/pull/979) ([nerdvegas](https://github.com/nerdvegas)) ## 2.69.7 (2020-12-22) -[Source](https://github.com/nerdvegas/rez/tree/2.69.7) | [Diff](https://github.com/nerdvegas/rez/compare/2.69.6...2.69.7) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.69.7) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.69.6...2.69.7) **Merged pull requests:** -- Issue 994 wiki workflow fixes [\#995](https://github.com/nerdvegas/rez/pull/995) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 994 wiki workflow fixes [\#995](https://github.com/AcademySoftwareFoundation/rez/pull/995) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- wiki workflow broken [\#994](https://github.com/nerdvegas/rez/issues/994) +- wiki workflow broken [\#994](https://github.com/AcademySoftwareFoundation/rez/issues/994) ## 2.69.6 (2020-11-24) -[Source](https://github.com/nerdvegas/rez/tree/2.69.6) | [Diff](https://github.com/nerdvegas/rez/compare/2.69.5...2.69.6) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.69.6) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.69.5...2.69.6) **Merged pull requests:** -- avoid using fileConfig to init logging, as it overwrites root logger [\#978](https://github.com/nerdvegas/rez/pull/978) ([nerdvegas](https://github.com/nerdvegas)) +- avoid using fileConfig to init logging, as it overwrites root logger [\#978](https://github.com/AcademySoftwareFoundation/rez/pull/978) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- rez overwrites root logger [\#977](https://github.com/nerdvegas/rez/issues/977) +- rez overwrites root logger [\#977](https://github.com/AcademySoftwareFoundation/rez/issues/977) ## 2.69.5 (2020-11-19) -[Source](https://github.com/nerdvegas/rez/tree/2.69.5) | [Diff](https://github.com/nerdvegas/rez/compare/2.69.4...2.69.5) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.69.5) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.69.4...2.69.5) **Merged pull requests:** -- Try telling who is/are requesting missing package [\#976](https://github.com/nerdvegas/rez/pull/976) ([davidlatwe](https://github.com/davidlatwe)) +- Try telling who is/are requesting missing package [\#976](https://github.com/AcademySoftwareFoundation/rez/pull/976) ([davidlatwe](https://github.com/davidlatwe)) ## 2.69.4 (2020-11-17) -[Source](https://github.com/nerdvegas/rez/tree/2.69.4) | [Diff](https://github.com/nerdvegas/rez/compare/2.69.3...2.69.4) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.69.4) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.69.3...2.69.4) **Merged pull requests:** -- Fix pip.py get purelib error. [\#973](https://github.com/nerdvegas/rez/pull/973) ([zclongpop123](https://github.com/zclongpop123)) +- Fix pip.py get purelib error. [\#973](https://github.com/AcademySoftwareFoundation/rez/pull/973) ([zclongpop123](https://github.com/zclongpop123)) ## 2.69.3 (2020-11-17) -[Source](https://github.com/nerdvegas/rez/tree/2.69.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.69.2...2.69.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.69.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.69.2...2.69.3) **Merged pull requests:** -- handling QFileDialog.getSaveFileName return type [\#963](https://github.com/nerdvegas/rez/pull/963) ([sparklabor](https://github.com/sparklabor)) +- handling QFileDialog.getSaveFileName return type [\#963](https://github.com/AcademySoftwareFoundation/rez/pull/963) ([sparklabor](https://github.com/sparklabor)) **Closed issues:** -- QFileDialog.getSaveFileName and getOpenFileName return tuple not str [\#962](https://github.com/nerdvegas/rez/issues/962) +- QFileDialog.getSaveFileName and getOpenFileName return tuple not str [\#962](https://github.com/AcademySoftwareFoundation/rez/issues/962) ## 2.69.2 (2020-11-17) -[Source](https://github.com/nerdvegas/rez/tree/2.69.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.69.1...2.69.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.69.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.69.1...2.69.2) **Merged pull requests:** -- 965| Fix io.UnsupportedOperation [\#966](https://github.com/nerdvegas/rez/pull/966) ([spsalefeve](https://github.com/spsalefeve)) +- 965| Fix io.UnsupportedOperation [\#966](https://github.com/AcademySoftwareFoundation/rez/pull/966) ([spsalefeve](https://github.com/spsalefeve)) **Closed issues:** -- io.UnsupportedOperation when using rez api with pytest [\#965](https://github.com/nerdvegas/rez/issues/965) +- io.UnsupportedOperation when using rez api with pytest [\#965](https://github.com/AcademySoftwareFoundation/rez/issues/965) ## 2.69.1 (2020-11-17) -[Source](https://github.com/nerdvegas/rez/tree/2.69.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.69.0...2.69.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.69.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.69.0...2.69.1) **Merged pull requests:** -- Update vendored pydot (1.4.2.dev0) [\#970](https://github.com/nerdvegas/rez/pull/970) ([davidlatwe](https://github.com/davidlatwe)) +- Update vendored pydot (1.4.2.dev0) [\#970](https://github.com/AcademySoftwareFoundation/rez/pull/970) ([davidlatwe](https://github.com/davidlatwe)) ## 2.69.0 (2020-11-17) -[Source](https://github.com/nerdvegas/rez/tree/2.69.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.68.5...2.69.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.69.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.68.5...2.69.0) **Merged pull requests:** -- Fix forwarding script on Windows (suite supporting) [\#968](https://github.com/nerdvegas/rez/pull/968) ([davidlatwe](https://github.com/davidlatwe)) +- Fix forwarding script on Windows (suite supporting) [\#968](https://github.com/AcademySoftwareFoundation/rez/pull/968) ([davidlatwe](https://github.com/davidlatwe)) ## 2.68.5 (2020-10-06) -[Source](https://github.com/nerdvegas/rez/tree/2.68.5) | [Diff](https://github.com/nerdvegas/rez/compare/2.68.4...2.68.5) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.68.5) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.68.4...2.68.5) **Merged pull requests:** -- Handling build/install directory remove error in build process [\#959](https://github.com/nerdvegas/rez/pull/959) ([davidlatwe](https://github.com/davidlatwe)) +- Handling build/install directory remove error in build process [\#959](https://github.com/AcademySoftwareFoundation/rez/pull/959) ([davidlatwe](https://github.com/davidlatwe)) ## 2.68.4 (2020-10-06) -[Source](https://github.com/nerdvegas/rez/tree/2.68.4) | [Diff](https://github.com/nerdvegas/rez/compare/2.68.3...2.68.4) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.68.4) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.68.3...2.68.4) **Merged pull requests:** -- Support rez-env -c or -- (Windows CMD shell) [\#948](https://github.com/nerdvegas/rez/pull/948) ([davidlatwe](https://github.com/davidlatwe)) +- Support rez-env -c or -- (Windows CMD shell) [\#948](https://github.com/AcademySoftwareFoundation/rez/pull/948) ([davidlatwe](https://github.com/davidlatwe)) **Closed issues:** -- Alias can't be used on the same line as rez-env [\#708](https://github.com/nerdvegas/rez/issues/708) +- Alias can't be used on the same line as rez-env [\#708](https://github.com/AcademySoftwareFoundation/rez/issues/708) ## 2.68.3 (2020-09-22) -[Source](https://github.com/nerdvegas/rez/tree/2.68.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.68.0...2.68.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.68.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.68.0...2.68.3) **Merged pull requests:** -- fix regression wrt unicode, subprocess [\#961](https://github.com/nerdvegas/rez/pull/961) ([nerdvegas](https://github.com/nerdvegas)) +- fix regression wrt unicode, subprocess [\#961](https://github.com/AcademySoftwareFoundation/rez/pull/961) ([nerdvegas](https://github.com/nerdvegas)) -- Fix unicode vcs changelog encode err [\#956](https://github.com/nerdvegas/rez/pull/956) ([davidlatwe](https://github.com/davidlatwe)) +- Fix unicode vcs changelog encode err [\#956](https://github.com/AcademySoftwareFoundation/rez/pull/956) ([davidlatwe](https://github.com/davidlatwe)) -- Fix repo location false mismatch [\#957](https://github.com/nerdvegas/rez/pull/957) ([davidlatwe](https://github.com/davidlatwe)) +- Fix repo location false mismatch [\#957](https://github.com/AcademySoftwareFoundation/rez/pull/957) ([davidlatwe](https://github.com/davidlatwe)) ## 2.68.0 (2020-09-22) -[Source](https://github.com/nerdvegas/rez/tree/2.68.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.67.1...2.68.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.68.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.67.1...2.68.0) **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](https://github.com/nerdvegas/rez/wiki/Configuring-Rez#platform_map) setting. +[platform_map](https://github.com/AcademySoftwareFoundation/rez/wiki/Configuring-Rez#platform_map) setting. **Merged pull requests:** -- Replace platform.linux_distribution by distro [\#954](https://github.com/nerdvegas/rez/pull/954) ([predat](https://github.com/predat)) +- Replace platform.linux_distribution by distro [\#954](https://github.com/AcademySoftwareFoundation/rez/pull/954) ([predat](https://github.com/predat)) **Closed issues:** -- rez platform_ broken with python3.8 [\#883](https://github.com/nerdvegas/rez/issues/883) +- rez platform_ broken with python3.8 [\#883](https://github.com/AcademySoftwareFoundation/rez/issues/883) ## 2.67.1 (2020-09-11) -[Source](https://github.com/nerdvegas/rez/tree/2.67.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.67.0...2.67.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.67.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.67.0...2.67.1) **Merged pull requests:** -- made this.root visible to pkg preprocessor [\#953](https://github.com/nerdvegas/rez/pull/953) ([nerdvegas](https://github.com/nerdvegas)) +- made this.root visible to pkg preprocessor [\#953](https://github.com/AcademySoftwareFoundation/rez/pull/953) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- this.root is None in package preprocessor [\#952](https://github.com/nerdvegas/rez/issues/952) +- this.root is None in package preprocessor [\#952](https://github.com/AcademySoftwareFoundation/rez/issues/952) ## 2.67.0 (2020-08-25) -[Source](https://github.com/nerdvegas/rez/tree/2.67.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.66.1...2.67.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.67.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.66.1...2.67.0) **Merged pull requests:** -- Ninja support [\#940](https://github.com/nerdvegas/rez/pull/940) ([bareya](https://github.com/bareya)) -- print warning once if pkg cache dir not present [\#942](https://github.com/nerdvegas/rez/pull/942) ([nerdvegas](https://github.com/nerdvegas)) +- Ninja support [\#940](https://github.com/AcademySoftwareFoundation/rez/pull/940) ([bareya](https://github.com/bareya)) +- print warning once if pkg cache dir not present [\#942](https://github.com/AcademySoftwareFoundation/rez/pull/942) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- don't raise on missing package cache dir [\#941](https://github.com/nerdvegas/rez/issues/941) +- don't raise on missing package cache dir [\#941](https://github.com/AcademySoftwareFoundation/rez/issues/941) ## 2.66.1 (2020-08-25) -[Source](https://github.com/nerdvegas/rez/tree/2.66.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.66.0...2.66.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.66.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.66.0...2.66.1) **Merged pull requests:** -- Fix #934, no hash string in include script file name [\#935](https://github.com/nerdvegas/rez/pull/935) ([davidlatwe](https://github.com/davidlatwe)) -- Raise unversioned error when config not allowed [\#938](https://github.com/nerdvegas/rez/pull/938) ([davidlatwe](https://github.com/davidlatwe)) +- Fix #934, no hash string in include script file name [\#935](https://github.com/AcademySoftwareFoundation/rez/pull/935) ([davidlatwe](https://github.com/davidlatwe)) +- Raise unversioned error when config not allowed [\#938](https://github.com/AcademySoftwareFoundation/rez/pull/938) ([davidlatwe](https://github.com/davidlatwe)) **Closed issues:** -- Installed package not including latest module [\#934](https://github.com/nerdvegas/rez/issues/934) +- Installed package not including latest module [\#934](https://github.com/AcademySoftwareFoundation/rez/issues/934) ## 2.66.0 (2020-08-11) -[Source](https://github.com/nerdvegas/rez/tree/2.66.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.65.0...2.66.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.66.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.65.0...2.66.0) **Merged pull requests:** -- [docs] Sphinx API hosted on GitHub Pages [\#832](https://github.com/nerdvegas/rez/pull/832) ([j0yu](https://github.com/j0yu)) +- [docs] Sphinx API hosted on GitHub Pages [\#832](https://github.com/AcademySoftwareFoundation/rez/pull/832) ([j0yu](https://github.com/j0yu)) ## 2.65.0 (2020-08-11) -[Source](https://github.com/nerdvegas/rez/tree/2.65.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.64.0...2.65.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.65.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.64.0...2.65.0) **Notes** @@ -1088,89 +1157,89 @@ to automatically update the wiki. **Merged pull requests:** -- [wiki] Move update utils into main repo [\#831](https://github.com/nerdvegas/rez/pull/831) ([j0yu](https://github.com/j0yu)) +- [wiki] Move update utils into main repo [\#831](https://github.com/AcademySoftwareFoundation/rez/pull/831) ([j0yu](https://github.com/j0yu)) ## 2.64.0 (2020-08-11) -[Source](https://github.com/nerdvegas/rez/tree/2.64.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.63.0...2.64.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.64.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.63.0...2.64.0) **Merged pull requests:** -- added DelayLoad config primitive [\#922](https://github.com/nerdvegas/rez/pull/922) ([nerdvegas](https://github.com/nerdvegas)) -- Sort keys in resolved context JSON [\#923](https://github.com/nerdvegas/rez/pull/923) ([dbr](https://github.com/dbr)) -- Respect sys path order when spawning shell on Windows [\#926](https://github.com/nerdvegas/rez/pull/926) ([davidlatwe](https://github.com/davidlatwe)) -- Fix #927, add encoding=utf-8 on file write [\#928](https://github.com/nerdvegas/rez/pull/928) ([davidlatwe](https://github.com/davidlatwe)) +- added DelayLoad config primitive [\#922](https://github.com/AcademySoftwareFoundation/rez/pull/922) ([nerdvegas](https://github.com/nerdvegas)) +- Sort keys in resolved context JSON [\#923](https://github.com/AcademySoftwareFoundation/rez/pull/923) ([dbr](https://github.com/dbr)) +- Respect sys path order when spawning shell on Windows [\#926](https://github.com/AcademySoftwareFoundation/rez/pull/926) ([davidlatwe](https://github.com/davidlatwe)) +- Fix #927, add encoding=utf-8 on file write [\#928](https://github.com/AcademySoftwareFoundation/rez/pull/928) ([davidlatwe](https://github.com/davidlatwe)) **Closed issues:** -- add 'delay_load' config primitive [\#921](https://github.com/nerdvegas/rez/issues/921) -- New spawned shell's `PATH` is random ordered on Windows [\#925](https://github.com/nerdvegas/rez/issues/925) -- Packages that contains Unicode character failed on install/release [\#927](https://github.com/nerdvegas/rez/issues/927) +- add 'delay_load' config primitive [\#921](https://github.com/AcademySoftwareFoundation/rez/issues/921) +- New spawned shell's `PATH` is random ordered on Windows [\#925](https://github.com/AcademySoftwareFoundation/rez/issues/925) +- Packages that contains Unicode character failed on install/release [\#927](https://github.com/AcademySoftwareFoundation/rez/issues/927) ## 2.63.0 (2020-08-04) -[Source](https://github.com/nerdvegas/rez/tree/2.63.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.62.0...2.63.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.63.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.62.0...2.63.0) **Merged pull requests:** -- don't attempt to update pkg cache on failed resolve [\#916](https://github.com/nerdvegas/rez/pull/916) ([nerdvegas](https://github.com/nerdvegas)) -- fix pkg cache fail on windows, py<=2.7 [\#917](https://github.com/nerdvegas/rez/pull/917) ([nerdvegas](https://github.com/nerdvegas)) -- raise metadata error on bad pkg, rather than build-system-notfound [\#918](https://github.com/nerdvegas/rez/pull/918) ([nerdvegas](https://github.com/nerdvegas)) -- default to disable package caching during build [\#920](https://github.com/nerdvegas/rez/pull/920) ([nerdvegas](https://github.com/nerdvegas)) +- don't attempt to update pkg cache on failed resolve [\#916](https://github.com/AcademySoftwareFoundation/rez/pull/916) ([nerdvegas](https://github.com/nerdvegas)) +- fix pkg cache fail on windows, py<=2.7 [\#917](https://github.com/AcademySoftwareFoundation/rez/pull/917) ([nerdvegas](https://github.com/nerdvegas)) +- raise metadata error on bad pkg, rather than build-system-notfound [\#918](https://github.com/AcademySoftwareFoundation/rez/pull/918) ([nerdvegas](https://github.com/nerdvegas)) +- default to disable package caching during build [\#920](https://github.com/AcademySoftwareFoundation/rez/pull/920) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- rez-packaage-cache issue on conflicting context [\#905](https://github.com/nerdvegas/rez/issues/905) -- Package caching does not work on windows due to device not being implemented in py2 on Windows [\#912](https://github.com/nerdvegas/rez/issues/912) -- Miss-leaded error message while building with invalid package metadata [\#915](https://github.com/nerdvegas/rez/issues/915) -- add ability to disable pkg caching during build [\#919](https://github.com/nerdvegas/rez/issues/919) +- rez-packaage-cache issue on conflicting context [\#905](https://github.com/AcademySoftwareFoundation/rez/issues/905) +- Package caching does not work on windows due to device not being implemented in py2 on Windows [\#912](https://github.com/AcademySoftwareFoundation/rez/issues/912) +- Miss-leaded error message while building with invalid package metadata [\#915](https://github.com/AcademySoftwareFoundation/rez/issues/915) +- add ability to disable pkg caching during build [\#919](https://github.com/AcademySoftwareFoundation/rez/issues/919) ## 2.62.0 (2020-07-22) -[Source](https://github.com/nerdvegas/rez/tree/2.62.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.61.1...2.62.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.62.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.61.1...2.62.0) **Merged pull requests:** -- Allow configuration of filesystem lock mechanism [\#903](https://github.com/nerdvegas/rez/pull/903) ([dbr](https://github.com/dbr)) -- make context tracking tolerant of errors [\#911](https://github.com/nerdvegas/rez/pull/911) ([nerdvegas](https://github.com/nerdvegas)) +- Allow configuration of filesystem lock mechanism [\#903](https://github.com/AcademySoftwareFoundation/rez/pull/903) ([dbr](https://github.com/dbr)) +- make context tracking tolerant of errors [\#911](https://github.com/AcademySoftwareFoundation/rez/pull/911) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- SSL crash related to context tracking [\#910](https://github.com/nerdvegas/rez/issues/910) +- SSL crash related to context tracking [\#910](https://github.com/AcademySoftwareFoundation/rez/issues/910) ## 2.61.1 (2020-07-10) -[Source](https://github.com/nerdvegas/rez/tree/2.61.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.61.0...2.61.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.61.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.61.0...2.61.1) **Merged pull requests:** -- fix for rez occasionally installed into lib64 dir [\#902](https://github.com/nerdvegas/rez/pull/902) ([nerdvegas](https://github.com/nerdvegas)) +- fix for rez occasionally installed into lib64 dir [\#902](https://github.com/AcademySoftwareFoundation/rez/pull/902) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- occasional missing rez cli in rez-env [\#901](https://github.com/nerdvegas/rez/issues/901) +- occasional missing rez cli in rez-env [\#901](https://github.com/AcademySoftwareFoundation/rez/issues/901) ## 2.61.0 (2020-07-10) -[Source](https://github.com/nerdvegas/rez/tree/2.61.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.60.1...2.61.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.61.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.60.1...2.61.0) **Notes** -Package caching feature added, see [here](https://github.com/nerdvegas/rez/wiki/Package-Caching). +Package caching feature added, see [here](https://github.com/AcademySoftwareFoundation/rez/wiki/Package-Caching). **Merged pull requests:** -- Package cache [\#893](https://github.com/nerdvegas/rez/pull/893) ([nerdvegas](https://github.com/nerdvegas)) +- Package cache [\#893](https://github.com/AcademySoftwareFoundation/rez/pull/893) ([nerdvegas](https://github.com/nerdvegas)) ## 2.60.1 (2020-05-23) -[Source](https://github.com/nerdvegas/rez/tree/2.60.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.60.0...2.60.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.60.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.60.0...2.60.1) **Merged pull requests:** -- fix bug in py3 (hash of unicode) [\#888](https://github.com/nerdvegas/rez/pull/888) ([nerdvegas](https://github.com/nerdvegas)) -- fix context serilisation wrt append_sys_path [\#890](https://github.com/nerdvegas/rez/pull/890) ([nerdvegas](https://github.com/nerdvegas)) +- fix bug in py3 (hash of unicode) [\#888](https://github.com/AcademySoftwareFoundation/rez/pull/888) ([nerdvegas](https://github.com/nerdvegas)) +- fix context serilisation wrt append_sys_path [\#890](https://github.com/AcademySoftwareFoundation/rez/pull/890) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- context sourcing broken (ResolvedContext.append_sys_path not serialised) [\#889](https://github.com/nerdvegas/rez/issues/889) +- context sourcing broken (ResolvedContext.append_sys_path not serialised) [\#889](https://github.com/AcademySoftwareFoundation/rez/issues/889) ## 2.60.0 (2020-05-12) -[Source](https://github.com/nerdvegas/rez/tree/2.60.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.59.1...2.60.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.60.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.59.1...2.60.0) **Backwards Compatibility Issues** @@ -1181,121 +1250,121 @@ more easily chain `rez-context` with other utilities such as grep, xargs etc. **Merged pull requests:** -- added get_variant_from_uri functionality [\#886](https://github.com/nerdvegas/rez/pull/886) ([nerdvegas](https://github.com/nerdvegas)) -- Cli variant uri [\#887](https://github.com/nerdvegas/rez/pull/887) ([nerdvegas](https://github.com/nerdvegas)) +- added get_variant_from_uri functionality [\#886](https://github.com/AcademySoftwareFoundation/rez/pull/886) ([nerdvegas](https://github.com/nerdvegas)) +- Cli variant uri [\#887](https://github.com/AcademySoftwareFoundation/rez/pull/887) ([nerdvegas](https://github.com/nerdvegas)) ## 2.59.1 (2020-05-09) -[Source](https://github.com/nerdvegas/rez/tree/2.59.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.59.0...2.59.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.59.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.59.0...2.59.1) **Merged pull requests:** -- fixed - rez-context -g with prune-package fails [\#885](https://github.com/nerdvegas/rez/pull/885) ([nerdvegas](https://github.com/nerdvegas)) +- fixed - rez-context -g with prune-package fails [\#885](https://github.com/AcademySoftwareFoundation/rez/pull/885) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- rez-context -g with prune-package fails [\#884](https://github.com/nerdvegas/rez/issues/884) +- rez-context -g with prune-package fails [\#884](https://github.com/AcademySoftwareFoundation/rez/issues/884) ## 2.59.0 (2020-04-30) -[Source](https://github.com/nerdvegas/rez/tree/2.59.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.58.1...2.59.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.59.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.58.1...2.59.0) **Merged pull requests:** -- Fix issue 826 - correct python and pip fallback [\#878](https://github.com/nerdvegas/rez/pull/878) ([j0yu](https://github.com/j0yu)) +- Fix issue 826 - correct python and pip fallback [\#878](https://github.com/AcademySoftwareFoundation/rez/pull/878) ([j0yu](https://github.com/j0yu)) **Closed issues:** -- rez-pip issues finding pip executable [\#826](https://github.com/nerdvegas/rez/issues/826) +- rez-pip issues finding pip executable [\#826](https://github.com/AcademySoftwareFoundation/rez/issues/826) ## 2.58.1 (2020-04-22) -[Source](https://github.com/nerdvegas/rez/tree/2.58.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.58.0...2.58.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.58.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.58.0...2.58.1) **Merged pull requests:** -- Fix ISSUE-879: AttributeError: 'Namespace' object has no attribute 'func' [\#880](https://github.com/nerdvegas/rez/pull/880) ([rfletchr](https://github.com/rfletchr)) +- Fix ISSUE-879: AttributeError: 'Namespace' object has no attribute 'func' [\#880](https://github.com/AcademySoftwareFoundation/rez/pull/880) ([rfletchr](https://github.com/rfletchr)) **Closed issues:** -- AttributeError: 'Namespace' object has no attribute 'func' [\#879](https://github.com/nerdvegas/rez/issues/879) +- AttributeError: 'Namespace' object has no attribute 'func' [\#879](https://github.com/AcademySoftwareFoundation/rez/issues/879) ## 2.58.0 (2020-04-15) -[Source](https://github.com/nerdvegas/rez/tree/2.58.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.57.0...2.58.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.58.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.57.0...2.58.0) **Merged pull requests:** -- Expose package orderers in rez config [\#868](https://github.com/nerdvegas/rez/pull/868) ([rlessardrodeofx](https://github.com/rlessardrodeofx)) +- Expose package orderers in rez config [\#868](https://github.com/AcademySoftwareFoundation/rez/pull/868) ([rlessardrodeofx](https://github.com/rlessardrodeofx)) **Closed issues:** -- add configurability of package orderers [\#329](https://github.com/nerdvegas/rez/issues/329) +- add configurability of package orderers [\#329](https://github.com/AcademySoftwareFoundation/rez/issues/329) ## 2.57.0 (2020-04-14) -[Source](https://github.com/nerdvegas/rez/tree/2.57.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.56.2...2.57.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.57.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.56.2...2.57.0) **Merged pull requests:** -- Added distribution author and help information [\#873](https://github.com/nerdvegas/rez/pull/873) ([ColinKennedy](https://github.com/ColinKennedy)) +- Added distribution author and help information [\#873](https://github.com/AcademySoftwareFoundation/rez/pull/873) ([ColinKennedy](https://github.com/ColinKennedy)) **Closed issues:** -- rez-pip - Add help / authors attributes [\#838](https://github.com/nerdvegas/rez/issues/838) +- rez-pip - Add help / authors attributes [\#838](https://github.com/AcademySoftwareFoundation/rez/issues/838) ## 2.56.2 (2020-04-14) -[Source](https://github.com/nerdvegas/rez/tree/2.56.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.56.1...2.56.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.56.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.56.1...2.56.2) **Merged pull requests:** -- Fix for git rev-parse error out before checking for allow_no_upstream [\#872](https://github.com/nerdvegas/rez/pull/872) ([alexxbb](https://github.com/alexxbb)) +- Fix for git rev-parse error out before checking for allow_no_upstream [\#872](https://github.com/AcademySoftwareFoundation/rez/pull/872) ([alexxbb](https://github.com/alexxbb)) **Closed issues:** -- override git plugin config in package.py [\#871](https://github.com/nerdvegas/rez/issues/871) +- override git plugin config in package.py [\#871](https://github.com/AcademySoftwareFoundation/rez/issues/871) ## 2.56.1 (2020-03-31) -[Source](https://github.com/nerdvegas/rez/tree/2.56.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.56.0...2.56.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.56.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.56.0...2.56.1) **Merged pull requests:** -- Log during pip install [\#867](https://github.com/nerdvegas/rez/pull/867) ([j0yu](https://github.com/j0yu)) +- Log during pip install [\#867](https://github.com/AcademySoftwareFoundation/rez/pull/867) ([j0yu](https://github.com/j0yu)) ## 2.56.0 (2020-03-31) -[Source](https://github.com/nerdvegas/rez/tree/2.56.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.55.0...2.56.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.56.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.55.0...2.56.0) **Merged pull requests:** -- pip install path remap [\#866](https://github.com/nerdvegas/rez/pull/866) ([j0yu](https://github.com/j0yu)) +- pip install path remap [\#866](https://github.com/AcademySoftwareFoundation/rez/pull/866) ([j0yu](https://github.com/j0yu)) **Closed issues:** -- rez-pip - no case for ../../include/... file [\#861](https://github.com/nerdvegas/rez/issues/861) +- rez-pip - no case for ../../include/... file [\#861](https://github.com/AcademySoftwareFoundation/rez/issues/861) ## 2.55.0 (2020-03-21) -[Source](https://github.com/nerdvegas/rez/tree/2.55.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.54.0...2.55.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.55.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.54.0...2.55.0) **Merged pull requests:** -- Fixed bug in test variant selection [\#842](https://github.com/nerdvegas/rez/pull/842) ([nerdvegas](https://github.com/nerdvegas)) -- pre_test_commands [\#844](https://github.com/nerdvegas/rez/pull/844) ([nerdvegas](https://github.com/nerdvegas)) +- Fixed bug in test variant selection [\#842](https://github.com/AcademySoftwareFoundation/rez/pull/842) ([nerdvegas](https://github.com/nerdvegas)) +- pre_test_commands [\#844](https://github.com/AcademySoftwareFoundation/rez/pull/844) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- tests "on_variants" not working as expected in some cases [\#841](https://github.com/nerdvegas/rez/issues/841) -- pre_test_commands [\#843](https://github.com/nerdvegas/rez/issues/843) +- tests "on_variants" not working as expected in some cases [\#841](https://github.com/AcademySoftwareFoundation/rez/issues/841) +- pre_test_commands [\#843](https://github.com/AcademySoftwareFoundation/rez/issues/843) ## 2.54.0 (2020-02-20) -[Source](https://github.com/nerdvegas/rez/tree/2.54.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.53.1...2.54.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.54.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.53.1...2.54.0) **Merged pull requests:** -- Install as package part2 [\#845](https://github.com/nerdvegas/rez/pull/845) ([nerdvegas](https://github.com/nerdvegas)) -- Allow absolute path for build directory [\#853](https://github.com/nerdvegas/rez/pull/853) ([joehigham-bss](https://github.com/joehigham-bss)) -- [rez-pip] Fix for ptvsd install [\#855](https://github.com/nerdvegas/rez/pull/855) ([j0yu](https://github.com/j0yu)) +- Install as package part2 [\#845](https://github.com/AcademySoftwareFoundation/rez/pull/845) ([nerdvegas](https://github.com/nerdvegas)) +- Allow absolute path for build directory [\#853](https://github.com/AcademySoftwareFoundation/rez/pull/853) ([joehigham-bss](https://github.com/joehigham-bss)) +- [rez-pip] Fix for ptvsd install [\#855](https://github.com/AcademySoftwareFoundation/rez/pull/855) ([j0yu](https://github.com/j0yu)) **Closed issues:** -- "rez-pip -i ptvsd" produces bad package [\#821](https://github.com/nerdvegas/rez/issues/821) +- "rez-pip -i ptvsd" produces bad package [\#821](https://github.com/AcademySoftwareFoundation/rez/issues/821) ## 2.53.1 (2020-02-12) -[Source](https://github.com/nerdvegas/rez/tree/2.53.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.53.0...2.53.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.53.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.53.0...2.53.1) **Notes** @@ -1303,62 +1372,62 @@ Misc Python-3 related issues. **Merged pull requests:** -- PR: Fix "StringIO" imports and accesses. [\#850](https://github.com/nerdvegas/rez/pull/850) ([KelSolaar](https://github.com/KelSolaar)) -- PR: Use "QtCompat" to handle "QHeaderView" incompatibilities and fix broken "resolve" button in "rez-gui". [\#851](https://github.com/nerdvegas/rez/pull/851) ([KelSolaar](https://github.com/KelSolaar)) +- PR: Fix "StringIO" imports and accesses. [\#850](https://github.com/AcademySoftwareFoundation/rez/pull/850) ([KelSolaar](https://github.com/KelSolaar)) +- PR: Use "QtCompat" to handle "QHeaderView" incompatibilities and fix broken "resolve" button in "rez-gui". [\#851](https://github.com/AcademySoftwareFoundation/rez/pull/851) ([KelSolaar](https://github.com/KelSolaar)) **Closed issues:** -- "ImportError" exception raised while using "rez-gui" in Python 3. [\#848](https://github.com/nerdvegas/rez/issues/848) -- "AttributeError" exception raised when using "rez-gui" Package Browser with Pyside2 . [\#849](https://github.com/nerdvegas/rez/issues/849) +- "ImportError" exception raised while using "rez-gui" in Python 3. [\#848](https://github.com/AcademySoftwareFoundation/rez/issues/848) +- "AttributeError" exception raised when using "rez-gui" Package Browser with Pyside2 . [\#849](https://github.com/AcademySoftwareFoundation/rez/issues/849) ## 2.53.0 (2020-02-04) -[Source](https://github.com/nerdvegas/rez/tree/2.53.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.52.2...2.53.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.53.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.52.2...2.53.0) **Merged pull requests:** -- [Feature] Add rez-pip extra args passthrough [\#827](https://github.com/nerdvegas/rez/pull/827) ([lambdaclan](https://github.com/lambdaclan)) +- [Feature] Add rez-pip extra args passthrough [\#827](https://github.com/AcademySoftwareFoundation/rez/pull/827) ([lambdaclan](https://github.com/lambdaclan)) **Closed issues:** -- rez-pip creates .pyc files by default [\#816](https://github.com/nerdvegas/rez/issues/816) +- rez-pip creates .pyc files by default [\#816](https://github.com/AcademySoftwareFoundation/rez/issues/816) ## 2.52.2 (2020-01-31) -[Source](https://github.com/nerdvegas/rez/tree/2.52.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.52.1...2.52.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.52.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.52.1...2.52.2) **Merged pull requests:** -- deprecate trailing underscored sourcefiles [\#839](https://github.com/nerdvegas/rez/pull/839) ([nerdvegas](https://github.com/nerdvegas)) -- Minor pr3 fixes [\#840](https://github.com/nerdvegas/rez/pull/840) ([nerdvegas](https://github.com/nerdvegas)) +- deprecate trailing underscored sourcefiles [\#839](https://github.com/AcademySoftwareFoundation/rez/pull/839) ([nerdvegas](https://github.com/nerdvegas)) +- Minor pr3 fixes [\#840](https://github.com/AcademySoftwareFoundation/rez/pull/840) ([nerdvegas](https://github.com/nerdvegas)) ## 2.52.1 (2020-01-21) -[Source](https://github.com/nerdvegas/rez/tree/2.52.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.52.0...2.52.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.52.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.52.0...2.52.1) **Merged pull requests:** -- added new env vars - REZ_SHELL_INIT_TIMESTAMP, REZ_SHELL_INTERACTIVE [\#834](https://github.com/nerdvegas/rez/pull/834) ([nerdvegas](https://github.com/nerdvegas)) +- added new env vars - REZ_SHELL_INIT_TIMESTAMP, REZ_SHELL_INTERACTIVE [\#834](https://github.com/AcademySoftwareFoundation/rez/pull/834) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- add env-var to record shell init time [\#833](https://github.com/nerdvegas/rez/issues/833) +- add env-var to record shell init time [\#833](https://github.com/AcademySoftwareFoundation/rez/issues/833) ## 2.52.0 (2020-01-18) -[Source](https://github.com/nerdvegas/rez/tree/2.52.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.51.0...2.52.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.52.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.51.0...2.52.0) **Notes** -Adds a new [pre_build_commands](https://github.com/nerdvegas/rez/wiki/Package-Commands#pre-build-commands) +Adds a new [pre_build_commands](https://github.com/AcademySoftwareFoundation/rez/wiki/Package-Commands#pre-build-commands) package.py attribute, for adding runtime build configuration. **Merged pull requests:** -- Rep002 pre build commands [\#825](https://github.com/nerdvegas/rez/pull/825) ([nerdvegas](https://github.com/nerdvegas)) +- Rep002 pre build commands [\#825](https://github.com/AcademySoftwareFoundation/rez/pull/825) ([nerdvegas](https://github.com/nerdvegas)) ## 2.51.0 (2020-01-18) -[Source](https://github.com/nerdvegas/rez/tree/2.51.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.50.0...2.51.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.51.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.50.0...2.51.0) **Notes** -This release goes a large way to implementing [REP-001](https://github.com/nerdvegas/rez/issues/665) +This release goes a large way to implementing [REP-001](https://github.com/AcademySoftwareFoundation/rez/issues/665) Includes: - Pre-install/release running of package tests; @@ -1371,55 +1440,55 @@ Still to do: **Merged pull requests:** -- Rep001 1 (rez-test improvements) [\#807](https://github.com/nerdvegas/rez/pull/807) ([nerdvegas](https://github.com/nerdvegas)) -- Rep001 2 hooks [\#811](https://github.com/nerdvegas/rez/pull/811) ([nerdvegas](https://github.com/nerdvegas)) +- Rep001 1 (rez-test improvements) [\#807](https://github.com/AcademySoftwareFoundation/rez/pull/807) ([nerdvegas](https://github.com/nerdvegas)) +- Rep001 2 hooks [\#811](https://github.com/AcademySoftwareFoundation/rez/pull/811) ([nerdvegas](https://github.com/nerdvegas)) ## 2.50.0 (2019-12-12) -[Source](https://github.com/nerdvegas/rez/tree/2.50.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.49.0...2.50.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.50.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.49.0...2.50.0) **Merged pull requests:** -- removed odd case of _Bound instantiation with Version [\#815](https://github.com/nerdvegas/rez/pull/815) ([nerdvegas](https://github.com/nerdvegas)) -- memcached incompatibility fix [\#818](https://github.com/nerdvegas/rez/pull/818) ([nerdvegas](https://github.com/nerdvegas)) -- Bug/819 enable colorization on windows [\#820](https://github.com/nerdvegas/rez/pull/820) ([instinct-vfx](https://github.com/instinct-vfx)) +- removed odd case of _Bound instantiation with Version [\#815](https://github.com/AcademySoftwareFoundation/rez/pull/815) ([nerdvegas](https://github.com/nerdvegas)) +- memcached incompatibility fix [\#818](https://github.com/AcademySoftwareFoundation/rez/pull/818) ([nerdvegas](https://github.com/nerdvegas)) +- Bug/819 enable colorization on windows [\#820](https://github.com/AcademySoftwareFoundation/rez/pull/820) ([instinct-vfx](https://github.com/instinct-vfx)) **Closed issues:** -- potential memcached client incompatibility [\#817](https://github.com/nerdvegas/rez/issues/817) -- Remove hard prevention of colorization on windows [\#819](https://github.com/nerdvegas/rez/issues/819) +- potential memcached client incompatibility [\#817](https://github.com/AcademySoftwareFoundation/rez/issues/817) +- Remove hard prevention of colorization on windows [\#819](https://github.com/AcademySoftwareFoundation/rez/issues/819) ## 2.49.0 (2019-12-05) -[Source](https://github.com/nerdvegas/rez/tree/2.49.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.48.1...2.49.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.49.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.48.1...2.49.0) **Merged pull requests:** -- Migrate rezgui.qt imports to Qt.py [\#804](https://github.com/nerdvegas/rez/pull/804) ([douglaslassance](https://github.com/douglaslassance)) +- Migrate rezgui.qt imports to Qt.py [\#804](https://github.com/AcademySoftwareFoundation/rez/pull/804) ([douglaslassance](https://github.com/douglaslassance)) ## 2.48.1 (2019-12-05) -[Source](https://github.com/nerdvegas/rez/tree/2.48.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.48.0...2.48.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.48.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.48.0...2.48.1) **Merged pull requests:** -- Fixes #792 cmd empty echo [\#793](https://github.com/nerdvegas/rez/pull/793) ([bfloch](https://github.com/bfloch)) +- Fixes #792 cmd empty echo [\#793](https://github.com/AcademySoftwareFoundation/rez/pull/793) ([bfloch](https://github.com/bfloch)) **Closed issues:** -- cmd handles empty echo incorrectly [\#792](https://github.com/nerdvegas/rez/issues/792) +- cmd handles empty echo incorrectly [\#792](https://github.com/AcademySoftwareFoundation/rez/issues/792) ## 2.48.0 (2019-11-26) -[Source](https://github.com/nerdvegas/rez/tree/2.48.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.47.14...2.48.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.48.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.14...2.48.0) **Merged pull requests:** -- rez.pip: Support python 2 executable on Windows (796) [\#798](https://github.com/nerdvegas/rez/pull/798) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) -- Feature/add 'prefix' argument to rez-pip [\#802](https://github.com/nerdvegas/rez/pull/802) ([predat](https://github.com/predat)) +- rez.pip: Support python 2 executable on Windows (796) [\#798](https://github.com/AcademySoftwareFoundation/rez/pull/798) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) +- Feature/add 'prefix' argument to rez-pip [\#802](https://github.com/AcademySoftwareFoundation/rez/pull/802) ([predat](https://github.com/predat)) **Closed issues:** -- find_pip_from_context failing on Windows platform [\#796](https://github.com/nerdvegas/rez/issues/796) +- find_pip_from_context failing on Windows platform [\#796](https://github.com/AcademySoftwareFoundation/rez/issues/796) ## 2.47.14 (2019-11-13) -[Source](https://github.com/nerdvegas/rez/tree/2.47.14) | [Diff](https://github.com/nerdvegas/rez/compare/2.47.13...2.47.14) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.14) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.13...2.47.14) **Notes** @@ -1439,16 +1508,16 @@ If a separate push is made in this time, it can fail, as the Windows test expect **Merged pull requests:** -- Windows docker enhancements [\#794](https://github.com/nerdvegas/rez/pull/794) ([bfloch](https://github.com/bfloch)) -- Remove the login so that PR work at least for the non-image workflows. [\#795](https://github.com/nerdvegas/rez/pull/795) ([bfloch](https://github.com/bfloch)) -- Issue 800 windows ci use checkout [\#801](https://github.com/nerdvegas/rez/pull/801) ([nerdvegas](https://github.com/nerdvegas)) +- Windows docker enhancements [\#794](https://github.com/AcademySoftwareFoundation/rez/pull/794) ([bfloch](https://github.com/bfloch)) +- Remove the login so that PR work at least for the non-image workflows. [\#795](https://github.com/AcademySoftwareFoundation/rez/pull/795) ([bfloch](https://github.com/bfloch)) +- Issue 800 windows ci use checkout [\#801](https://github.com/AcademySoftwareFoundation/rez/pull/801) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- windows ci: Use Actions checkout [\#800](https://github.com/nerdvegas/rez/issues/800) +- windows ci: Use Actions checkout [\#800](https://github.com/AcademySoftwareFoundation/rez/issues/800) ## 2.47.13 (2019-11-08) -[Source](https://github.com/nerdvegas/rez/tree/2.47.13) | [Diff](https://github.com/nerdvegas/rez/compare/2.47.12...2.47.13) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.13) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.12...2.47.13) **Notes** @@ -1461,14 +1530,14 @@ below, the following changes were also made: **Merged pull requests:** -- Updated actions badges in README [\#786](https://github.com/nerdvegas/rez/pull/786) ([j0yu](https://github.com/j0yu)) +- Updated actions badges in README [\#786](https://github.com/AcademySoftwareFoundation/rez/pull/786) ([j0yu](https://github.com/j0yu)) **Closed issues:** -- Fix README actions badges not showing current master status [\#785](https://github.com/nerdvegas/rez/issues/785) +- Fix README actions badges not showing current master status [\#785](https://github.com/AcademySoftwareFoundation/rez/issues/785) ## 2.47.12 (2019-11-06) -[Source](https://github.com/nerdvegas/rez/tree/2.47.12) | [Diff](https://github.com/nerdvegas/rez/compare/2.47.11...2.47.12) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.12) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.11...2.47.12) **Notes** @@ -1478,95 +1547,95 @@ a limit, causing the `cmd` shell to fail in several tests. **Merged pull requests:** -- Windows Tests via Docker [\#781](https://github.com/nerdvegas/rez/pull/781) ([bfloch](https://github.com/bfloch)) +- Windows Tests via Docker [\#781](https://github.com/AcademySoftwareFoundation/rez/pull/781) ([bfloch](https://github.com/bfloch)) ## 2.47.11 (2019-11-06) -[Source](https://github.com/nerdvegas/rez/tree/2.47.11) | [Diff](https://github.com/nerdvegas/rez/compare/2.47.10...2.47.11) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.11) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.10...2.47.11) **Merged pull requests:** -- Fixes some failing tests on windows [\#775](https://github.com/nerdvegas/rez/pull/775) ([willjp](https://github.com/willjp)) +- Fixes some failing tests on windows [\#775](https://github.com/AcademySoftwareFoundation/rez/pull/775) ([willjp](https://github.com/willjp)) ## 2.47.10 (2019-11-06) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.10) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.9...2.47.10) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.10) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.9...2.47.10) **Merged pull requests:** -- Replace Popen with check_output to catch errors in installation [\#778](https://github.com/nerdvegas/rez/pull/778) ([instinct-vfx](https://github.com/instinct-vfx)) -- Popen UnicodeDecodeError partial fix [\#779](https://github.com/nerdvegas/rez/pull/779) ([willjp](https://github.com/willjp)) -- Unwanted debug printing [\#780](https://github.com/nerdvegas/rez/pull/780) ([predat](https://github.com/predat)) +- Replace Popen with check_output to catch errors in installation [\#778](https://github.com/AcademySoftwareFoundation/rez/pull/778) ([instinct-vfx](https://github.com/instinct-vfx)) +- Popen UnicodeDecodeError partial fix [\#779](https://github.com/AcademySoftwareFoundation/rez/pull/779) ([willjp](https://github.com/willjp)) +- Unwanted debug printing [\#780](https://github.com/AcademySoftwareFoundation/rez/pull/780) ([predat](https://github.com/predat)) **Closed issues:** -- rez-release UnicodeDecodeError (windows) [\#776](https://github.com/nerdvegas/rez/issues/776) -- Errors in pip installation part go unnoticed by rez install.py [\#777](https://github.com/nerdvegas/rez/issues/777) +- rez-release UnicodeDecodeError (windows) [\#776](https://github.com/AcademySoftwareFoundation/rez/issues/776) +- Errors in pip installation part go unnoticed by rez install.py [\#777](https://github.com/AcademySoftwareFoundation/rez/issues/777) ## 2.47.9 (2019-10-25) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.9) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.8...2.47.9) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.9) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.8...2.47.9) **Merged pull requests:** -- rez.util.ProgressBar checks `Bar.__del__` exists before invocation #769 [\#774](https://github.com/nerdvegas/rez/pull/774) ([willjp](https://github.com/willjp)) +- rez.util.ProgressBar checks `Bar.__del__` exists before invocation #769 [\#774](https://github.com/AcademySoftwareFoundation/rez/pull/774) ([willjp](https://github.com/willjp)) **Closed issues:** -- rez-depends -- AttributeError: type object 'Bar' has no attribute '__del__' (win, py-3, rez-2.47.7) [\#769](https://github.com/nerdvegas/rez/issues/769) +- rez-depends -- AttributeError: type object 'Bar' has no attribute '__del__' (win, py-3, rez-2.47.7) [\#769](https://github.com/AcademySoftwareFoundation/rez/issues/769) ## 2.47.8 (2019-10-24) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.8) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.7...2.47.8) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.8) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.7...2.47.8) **Merged pull requests:** -- Issue 763 prompt leak [\#767](https://github.com/nerdvegas/rez/pull/767) ([nerdvegas](https://github.com/nerdvegas)) -- Fixes cmd due to oversight in 9c8334a106de900964e52f1ed8ee4155acdfe142 [\#770](https://github.com/nerdvegas/rez/pull/770) ([bfloch](https://github.com/bfloch)) -- Skip `test_build_cmake` on Windows. [\#772](https://github.com/nerdvegas/rez/pull/772) ([bfloch](https://github.com/bfloch)) +- Issue 763 prompt leak [\#767](https://github.com/AcademySoftwareFoundation/rez/pull/767) ([nerdvegas](https://github.com/nerdvegas)) +- Fixes cmd due to oversight in 9c8334a106de900964e52f1ed8ee4155acdfe142 [\#770](https://github.com/AcademySoftwareFoundation/rez/pull/770) ([bfloch](https://github.com/bfloch)) +- Skip `test_build_cmake` on Windows. [\#772](https://github.com/AcademySoftwareFoundation/rez/pull/772) ([bfloch](https://github.com/bfloch)) **Closed issues:** -- cross-shell prompt leakage can cause error [\#763](https://github.com/nerdvegas/rez/issues/763) +- cross-shell prompt leakage can cause error [\#763](https://github.com/AcademySoftwareFoundation/rez/issues/763) ## 2.47.7 (2019-10-22) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.7) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.6...2.47.7) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.7) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.6...2.47.7) **Notes** * Rez-pip: Add a new logic to find which pip will be used to install pip packages. * Rez-pip: New deprecation warning when --pip-version is used. -* See https://github.com/nerdvegas/rez/wiki/Pip for more details on rez-pip. +* See https://github.com/AcademySoftwareFoundation/rez/wiki/Pip for more details on rez-pip. **Merged pull requests:** -- rez-pip: Assume pip provided by python package [\#757](https://github.com/nerdvegas/rez/pull/757) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) +- rez-pip: Assume pip provided by python package [\#757](https://github.com/AcademySoftwareFoundation/rez/pull/757) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) **Closed issues:** -- rez-pip should assume python provided pip [\#706](https://github.com/nerdvegas/rez/issues/706) -- rez-pip python 3 error [\#764](https://github.com/nerdvegas/rez/issues/764) +- rez-pip should assume python provided pip [\#706](https://github.com/AcademySoftwareFoundation/rez/issues/706) +- rez-pip python 3 error [\#764](https://github.com/AcademySoftwareFoundation/rez/issues/764) ## 2.47.6 (2019-10-22) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.6) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.5...2.47.6) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.6) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.5...2.47.6) **Merged pull requests:** -- Subproc wrapper part2 [\#762](https://github.com/nerdvegas/rez/pull/762) ([nerdvegas](https://github.com/nerdvegas)) +- Subproc wrapper part2 [\#762](https://github.com/AcademySoftwareFoundation/rez/pull/762) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- ResourceWarning with ResolvedContext.execute_shell (py3) [\#761](https://github.com/nerdvegas/rez/issues/761) +- ResourceWarning with ResolvedContext.execute_shell (py3) [\#761](https://github.com/AcademySoftwareFoundation/rez/issues/761) ## 2.47.5 (2019-10-22) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.5) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.4...2.47.5) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.5) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.4...2.47.5) **Merged pull requests:** -- revert progress iteration and update vendored [\#766](https://github.com/nerdvegas/rez/pull/766) ([maxnbk](https://github.com/maxnbk)) +- revert progress iteration and update vendored [\#766](https://github.com/AcademySoftwareFoundation/rez/pull/766) ([maxnbk](https://github.com/maxnbk)) **Closed issues:** -- rez-depends -- 'ProgressBar' object is not an iterator (py-3, rez-2.47.4) [\#765](https://github.com/nerdvegas/rez/issues/765) +- rez-depends -- 'ProgressBar' object is not an iterator (py-3, rez-2.47.4) [\#765](https://github.com/AcademySoftwareFoundation/rez/issues/765) ## 2.47.4 (2019-10-11) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.4) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.3...2.47.4) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.4) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.3...2.47.4) **Notes** @@ -1574,11 +1643,11 @@ More Python3 compatibility changes. **Merged pull requests:** -- use subprocess in 'text' mode in most cases [\#753](https://github.com/nerdvegas/rez/pull/753) ([nerdvegas](https://github.com/nerdvegas)) -- add __bool__ operator [\#755](https://github.com/nerdvegas/rez/pull/755) ([nerdvegas](https://github.com/nerdvegas)) +- use subprocess in 'text' mode in most cases [\#753](https://github.com/AcademySoftwareFoundation/rez/pull/753) ([nerdvegas](https://github.com/nerdvegas)) +- add __bool__ operator [\#755](https://github.com/AcademySoftwareFoundation/rez/pull/755) ([nerdvegas](https://github.com/nerdvegas)) ## 2.47.3 (2019-09-28) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.3) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.2...2.47.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.2...2.47.3) **Notes** @@ -1590,10 +1659,10 @@ More Python3 compatibility changes. **Merged pull requests:** -- Gh actions - first pass [\#750](https://github.com/nerdvegas/rez/pull/750) ([nerdvegas](https://github.com/nerdvegas)) +- Gh actions - first pass [\#750](https://github.com/AcademySoftwareFoundation/rez/pull/750) ([nerdvegas](https://github.com/nerdvegas)) ## 2.47.2 (2019-09-17) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.2) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.1...2.47.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.1...2.47.2) **Notes** @@ -1601,23 +1670,23 @@ Py3 fixes found after testing. **Merged pull requests:** -- Fix py3 errors and warnings [\#748](https://github.com/nerdvegas/rez/pull/748) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) +- Fix py3 errors and warnings [\#748](https://github.com/AcademySoftwareFoundation/rez/pull/748) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) ## 2.47.1 (2019-09-17) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.1) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.47.0...2.47.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.47.0...2.47.1) **Merged pull requests:** -- Issue 696 shell availability [\#747](https://github.com/nerdvegas/rez/pull/747) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 696 shell availability [\#747](https://github.com/AcademySoftwareFoundation/rez/pull/747) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- Shell plugin Support API [\#696](https://github.com/nerdvegas/rez/issues/696) +- Shell plugin Support API [\#696](https://github.com/AcademySoftwareFoundation/rez/issues/696) ## 2.47.0 (2019-09-13) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.47.0) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.46.0...2.47.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.47.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.46.0...2.47.0) **Notes** @@ -1628,15 +1697,15 @@ Note also that this release fixes a regression in Windows, introduced in 2.35.0. **Merged pull requests:** -- Enhancements for shell plugins [\#698](https://github.com/nerdvegas/rez/pull/698) ([bfloch](https://github.com/bfloch)) +- Enhancements for shell plugins [\#698](https://github.com/AcademySoftwareFoundation/rez/pull/698) ([bfloch](https://github.com/bfloch)) **Closed issues:** -- Quotation marks issues on Windows. [\#691](https://github.com/nerdvegas/rez/issues/691) -- Rex and expandable in other shells [\#694](https://github.com/nerdvegas/rez/issues/694) +- Quotation marks issues on Windows. [\#691](https://github.com/AcademySoftwareFoundation/rez/issues/691) +- Rex and expandable in other shells [\#694](https://github.com/AcademySoftwareFoundation/rez/issues/694) ## 2.46.0 (2019-09-13) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.46.0) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.45.1...2.46.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.46.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.45.1...2.46.0) **Notes** @@ -1648,11 +1717,11 @@ Tests have shown performance to be identical, but you may find a case where it i **Merged pull requests:** -- py3 iterators conversion [\#736](https://github.com/nerdvegas/rez/pull/736) ([maxnbk](https://github.com/maxnbk)) -- py3 finalizations [\#742](https://github.com/nerdvegas/rez/pull/742) ([maxnbk](https://github.com/maxnbk)) +- py3 iterators conversion [\#736](https://github.com/AcademySoftwareFoundation/rez/pull/736) ([maxnbk](https://github.com/maxnbk)) +- py3 finalizations [\#742](https://github.com/AcademySoftwareFoundation/rez/pull/742) ([maxnbk](https://github.com/maxnbk)) ## 2.45.1 (2019-09-11) -[Source](https://github.com/repos/nerdvegas/rez/tree/2.45.1) | [Diff](https://github.com/repos/nerdvegas/rez/compare/2.45.0...2.45.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.45.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.45.0...2.45.1) **Notes** @@ -1660,16 +1729,16 @@ Misc Py3 compatibility updates, part 4. **Merged pull requests:** -- robust py2/3 use of getargspec/getfullargspec [\#743](https://github.com/nerdvegas/rez/pull/743) ([nerdvegas](https://github.com/nerdvegas)) -- address #744 (rex dictmixin issue) [\#745](https://github.com/nerdvegas/rez/pull/745) ([maxnbk](https://github.com/maxnbk)) +- robust py2/3 use of getargspec/getfullargspec [\#743](https://github.com/AcademySoftwareFoundation/rez/pull/743) ([nerdvegas](https://github.com/nerdvegas)) +- address #744 (rex dictmixin issue) [\#745](https://github.com/AcademySoftwareFoundation/rez/pull/745) ([maxnbk](https://github.com/maxnbk)) **Closed issues:** -- #712 merged in 2.43.0 caused external environ not to pass through to resolve [\#744](https://github.com/nerdvegas/rez/issues/744) +- #712 merged in 2.43.0 caused external environ not to pass through to resolve [\#744](https://github.com/AcademySoftwareFoundation/rez/issues/744) ## 2.45.0 (2019-09-10) -[Source](https://github.com/nerdvegas/rez/tree/2.45.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.44.2...2.45.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.45.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.44.2...2.45.0) **Notes** @@ -1677,26 +1746,26 @@ Misc Py3 compatibility updates, part 3. **Merged pull requests:** -- bytecode / pycache related changes [\#733](https://github.com/nerdvegas/rez/pull/733) ([maxnbk](https://github.com/maxnbk)) -- address py3.8 deprecation of collections direct ABC access [\#740](https://github.com/nerdvegas/rez/pull/740) ([maxnbk](https://github.com/maxnbk)) -- fix metaclass usage in example code [\#741](https://github.com/nerdvegas/rez/pull/741) ([maxnbk](https://github.com/maxnbk)) -- Vendor readme [\#738](https://github.com/nerdvegas/rez/pull/738) ([nerdvegas](https://github.com/nerdvegas)) +- bytecode / pycache related changes [\#733](https://github.com/AcademySoftwareFoundation/rez/pull/733) ([maxnbk](https://github.com/maxnbk)) +- address py3.8 deprecation of collections direct ABC access [\#740](https://github.com/AcademySoftwareFoundation/rez/pull/740) ([maxnbk](https://github.com/maxnbk)) +- fix metaclass usage in example code [\#741](https://github.com/AcademySoftwareFoundation/rez/pull/741) ([maxnbk](https://github.com/maxnbk)) +- Vendor readme [\#738](https://github.com/AcademySoftwareFoundation/rez/pull/738) ([nerdvegas](https://github.com/nerdvegas)) ## 2.44.2 (2019-09-07) -[Source](https://github.com/nerdvegas/rez/tree/2.44.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.44.1...2.44.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.44.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.44.1...2.44.2) **Merged pull requests:** -- install variant.json file in the same manner as other extra install files [\#731](https://github.com/nerdvegas/rez/pull/731) ([nerdvegas](https://github.com/nerdvegas)) +- install variant.json file in the same manner as other extra install files [\#731](https://github.com/AcademySoftwareFoundation/rez/pull/731) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- permissions failure on release (variant.json) [\#730](https://github.com/nerdvegas/rez/issues/730) +- permissions failure on release (variant.json) [\#730](https://github.com/AcademySoftwareFoundation/rez/issues/730) ## 2.44.1 (2019-09-07) -[Source](https://github.com/nerdvegas/rez/tree/2.44.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.44.0...2.44.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.44.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.44.0...2.44.1) **Notes** @@ -1704,12 +1773,12 @@ Misc Py3 compatibility updates, part 2. **Merged pull requests:** -- update imports in vendored pydot for py3 [\#728](https://github.com/nerdvegas/rez/pull/728) ([maxnbk](https://github.com/maxnbk)) -- update vendored schema for py3 [\#729](https://github.com/nerdvegas/rez/pull/729) ([maxnbk](https://github.com/maxnbk)) +- update imports in vendored pydot for py3 [\#728](https://github.com/AcademySoftwareFoundation/rez/pull/728) ([maxnbk](https://github.com/maxnbk)) +- update vendored schema for py3 [\#729](https://github.com/AcademySoftwareFoundation/rez/pull/729) ([maxnbk](https://github.com/maxnbk)) ## 2.44.0 (2019-09-06) -[Source](https://github.com/nerdvegas/rez/tree/2.44.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.43.0...2.44.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.44.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.43.0...2.44.0) **Notes** @@ -1717,16 +1786,16 @@ Misc Py3 compatibility updates, part 2. **Merged pull requests:** -- pull basestring from six.string_types - py2 gets basestring, py3 gets str [\#721](https://github.com/nerdvegas/rez/pull/721) ([maxnbk](https://github.com/maxnbk)) -- import StringIO from six.moves [\#722](https://github.com/nerdvegas/rez/pull/722) ([maxnbk](https://github.com/maxnbk)) -- update vendored colorama from 0.3.1 to 0.4.1 [\#723](https://github.com/nerdvegas/rez/pull/723) ([maxnbk](https://github.com/maxnbk)) -- update vendored memcache from 1.5.3 to 1.5.9 [\#724](https://github.com/nerdvegas/rez/pull/724) ([maxnbk](https://github.com/maxnbk)) -- make Version properly iterable in py3 [\#725](https://github.com/nerdvegas/rez/pull/725) ([maxnbk](https://github.com/maxnbk)) -- modernize function manipulations and attrs [\#727](https://github.com/nerdvegas/rez/pull/727) ([maxnbk](https://github.com/maxnbk)) +- pull basestring from six.string_types - py2 gets basestring, py3 gets str [\#721](https://github.com/AcademySoftwareFoundation/rez/pull/721) ([maxnbk](https://github.com/maxnbk)) +- import StringIO from six.moves [\#722](https://github.com/AcademySoftwareFoundation/rez/pull/722) ([maxnbk](https://github.com/maxnbk)) +- update vendored colorama from 0.3.1 to 0.4.1 [\#723](https://github.com/AcademySoftwareFoundation/rez/pull/723) ([maxnbk](https://github.com/maxnbk)) +- update vendored memcache from 1.5.3 to 1.5.9 [\#724](https://github.com/AcademySoftwareFoundation/rez/pull/724) ([maxnbk](https://github.com/maxnbk)) +- make Version properly iterable in py3 [\#725](https://github.com/AcademySoftwareFoundation/rez/pull/725) ([maxnbk](https://github.com/maxnbk)) +- modernize function manipulations and attrs [\#727](https://github.com/AcademySoftwareFoundation/rez/pull/727) ([maxnbk](https://github.com/maxnbk)) ## 2.43.0 (2019-09-05) -[Source](https://github.com/nerdvegas/rez/tree/2.43.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.42.2...2.43.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.43.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.42.2...2.43.0) **Notes** @@ -1734,26 +1803,26 @@ Misc Py3 compatibility updates. **Merged pull requests:** -- very small py3 compat changes [\#712](https://github.com/nerdvegas/rez/pull/712) ([maxnbk](https://github.com/maxnbk)) -- .next() to next() [\#713](https://github.com/nerdvegas/rez/pull/713) ([maxnbk](https://github.com/maxnbk)) -- yaml upgrade [\#714](https://github.com/nerdvegas/rez/pull/714) ([maxnbk](https://github.com/maxnbk)) -- improve non-string iterable handling [\#715](https://github.com/nerdvegas/rez/pull/715) ([maxnbk](https://github.com/maxnbk)) -- replace async with block to avoid py3 async keyword [\#716](https://github.com/nerdvegas/rez/pull/716) ([maxnbk](https://github.com/maxnbk)) -- import queue module through six [\#717](https://github.com/nerdvegas/rez/pull/717) ([maxnbk](https://github.com/maxnbk)) -- swap 2.6 support for 3.x in version module [\#718](https://github.com/nerdvegas/rez/pull/718) ([maxnbk](https://github.com/maxnbk)) +- very small py3 compat changes [\#712](https://github.com/AcademySoftwareFoundation/rez/pull/712) ([maxnbk](https://github.com/maxnbk)) +- .next() to next() [\#713](https://github.com/AcademySoftwareFoundation/rez/pull/713) ([maxnbk](https://github.com/maxnbk)) +- yaml upgrade [\#714](https://github.com/AcademySoftwareFoundation/rez/pull/714) ([maxnbk](https://github.com/maxnbk)) +- improve non-string iterable handling [\#715](https://github.com/AcademySoftwareFoundation/rez/pull/715) ([maxnbk](https://github.com/maxnbk)) +- replace async with block to avoid py3 async keyword [\#716](https://github.com/AcademySoftwareFoundation/rez/pull/716) ([maxnbk](https://github.com/maxnbk)) +- import queue module through six [\#717](https://github.com/AcademySoftwareFoundation/rez/pull/717) ([maxnbk](https://github.com/maxnbk)) +- swap 2.6 support for 3.x in version module [\#718](https://github.com/AcademySoftwareFoundation/rez/pull/718) ([maxnbk](https://github.com/maxnbk)) ## 2.42.2 (2019-08-31) -[Source](https://github.com/nerdvegas/rez/tree/2.42.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.42.1...2.42.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.42.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.42.1...2.42.2) **Merged pull requests:** -- fixed bez rezbuild.py breaking on old-style print [\#705](https://github.com/nerdvegas/rez/pull/705) ([nerdvegas](https://github.com/nerdvegas)) -- zsh tests passing by way of enabling analogue for bash shell completion [\#711](https://github.com/nerdvegas/rez/pull/711) ([maxnbk](https://github.com/maxnbk)) +- fixed bez rezbuild.py breaking on old-style print [\#705](https://github.com/AcademySoftwareFoundation/rez/pull/705) ([nerdvegas](https://github.com/nerdvegas)) +- zsh tests passing by way of enabling analogue for bash shell completion [\#711](https://github.com/AcademySoftwareFoundation/rez/pull/711) ([maxnbk](https://github.com/maxnbk)) ## 2.42.1 (2019-08-31) -[Source](https://github.com/nerdvegas/rez/tree/2.42.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.42.0...2.42.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.42.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.42.0...2.42.1) **Notes** @@ -1761,30 +1830,30 @@ This PR introduces py3 compatibilities that do not functionally alter py2 code. **Merged pull requests:** -- miscellanous atomic nonaffective py2/py3 compatibilities [\#710](https://github.com/nerdvegas/rez/pull/710) ([maxnbk](https://github.com/maxnbk)) +- miscellanous atomic nonaffective py2/py3 compatibilities [\#710](https://github.com/AcademySoftwareFoundation/rez/pull/710) ([maxnbk](https://github.com/maxnbk)) ## 2.42.0 (2019-08-30) -[Source](https://github.com/nerdvegas/rez/tree/2.42.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.41.0...2.42.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.42.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.41.0...2.42.0) **Merged pull requests:** -- Pip improvements [\#667](https://github.com/nerdvegas/rez/pull/667) ([nerdvegas](https://github.com/nerdvegas)) -- remove unneeded backports / vendored libraries [\#702](https://github.com/nerdvegas/rez/pull/702) ([maxnbk](https://github.com/maxnbk)) +- Pip improvements [\#667](https://github.com/AcademySoftwareFoundation/rez/pull/667) ([nerdvegas](https://github.com/nerdvegas)) +- remove unneeded backports / vendored libraries [\#702](https://github.com/AcademySoftwareFoundation/rez/pull/702) ([maxnbk](https://github.com/maxnbk)) ## 2.41.0 (2019-08-29) -[Source](https://github.com/nerdvegas/rez/tree/2.41.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.40.3...2.41.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.41.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.40.3...2.41.0) **Merged pull requests:** -- a few prints to py3-compat [\#701](https://github.com/nerdvegas/rez/pull/701) ([maxnbk](https://github.com/maxnbk)) -- Fixing error with changelog referenced before assigment [\#700](https://github.com/nerdvegas/rez/pull/700) ([bareya](https://github.com/bareya)) -- Adding GCC bind [\#699](https://github.com/nerdvegas/rez/pull/699) ([bareya](https://github.com/bareya)) +- a few prints to py3-compat [\#701](https://github.com/AcademySoftwareFoundation/rez/pull/701) ([maxnbk](https://github.com/maxnbk)) +- Fixing error with changelog referenced before assigment [\#700](https://github.com/AcademySoftwareFoundation/rez/pull/700) ([bareya](https://github.com/bareya)) +- Adding GCC bind [\#699](https://github.com/AcademySoftwareFoundation/rez/pull/699) ([bareya](https://github.com/bareya)) ## 2.40.3 (2019-08-15) -[Source](https://github.com/nerdvegas/rez/tree/2.40.3) | [Diff](https://github.com/nerdvegas/rez/compare/2.40.2...2.40.3) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.40.3) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.40.2...2.40.3) **Notes** @@ -1793,15 +1862,15 @@ in which plugins are loaded, so that builtins are loaded last. **Merged pull requests:** -- Reverse order for plugins loading [\#692](https://github.com/nerdvegas/rez/pull/692) ([predat](https://github.com/predat)) +- Reverse order for plugins loading [\#692](https://github.com/AcademySoftwareFoundation/rez/pull/692) ([predat](https://github.com/predat)) **Closed issues:** -- rezplugins loading order [\#677](https://github.com/nerdvegas/rez/issues/677) +- rezplugins loading order [\#677](https://github.com/AcademySoftwareFoundation/rez/issues/677) ## 2.40.2 (2019-08-15) -[Source](https://github.com/nerdvegas/rez/tree/2.40.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.40.1...2.40.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.40.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.40.1...2.40.2) **Notes** @@ -1816,11 +1885,11 @@ The behaviour on Windows is now: **Merged pull requests:** -- [FIX] Make package resolve request respect case sensitivity -- Windows [\#689](https://github.com/nerdvegas/rez/pull/689) ([lambdaclan](https://github.com/lambdaclan)) +- [FIX] Make package resolve request respect case sensitivity -- Windows [\#689](https://github.com/AcademySoftwareFoundation/rez/pull/689) ([lambdaclan](https://github.com/lambdaclan)) ## 2.40.1 (2019-08-07) -[Source](https://github.com/nerdvegas/rez/tree/2.40.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.40.0...2.40.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.40.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.40.0...2.40.1) **Notes** @@ -1828,15 +1897,15 @@ Fixes regression introduced in v2.39.0. **Merged pull requests:** -- added missing plugin config [\#690](https://github.com/nerdvegas/rez/pull/690) ([nerdvegas](https://github.com/nerdvegas)) +- added missing plugin config [\#690](https://github.com/AcademySoftwareFoundation/rez/pull/690) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- [Regression - Version >= 2.39.0] ConfigurationError: Error in Rez configuration under plugins.shell [\#688](https://github.com/nerdvegas/rez/issues/688) +- [Regression - Version >= 2.39.0] ConfigurationError: Error in Rez configuration under plugins.shell [\#688](https://github.com/AcademySoftwareFoundation/rez/issues/688) ## 2.40.0 (2019-08-07) -[Source](https://github.com/nerdvegas/rez/tree/2.40.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.39.0...2.40.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.40.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.39.0...2.40.0) **Notes** @@ -1844,15 +1913,15 @@ Fixes regression introduced in v2.39.0. **Merged pull requests:** -- initial implementation of zsh shell plugin [\#686](https://github.com/nerdvegas/rez/pull/686) ([maxnbk](https://github.com/maxnbk)) +- initial implementation of zsh shell plugin [\#686](https://github.com/AcademySoftwareFoundation/rez/pull/686) ([maxnbk](https://github.com/maxnbk)) **Closed issues:** -- zsh plugin for rez [\#451](https://github.com/nerdvegas/rez/issues/451) +- zsh plugin for rez [\#451](https://github.com/AcademySoftwareFoundation/rez/issues/451) ## 2.39.0 (2019-08-07) -[Source](https://github.com/nerdvegas/rez/tree/2.39.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.38.2...2.39.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.39.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.38.2...2.39.0) **Notes** @@ -1861,16 +1930,16 @@ Fixes regression introduced in v2.39.0. **Merged pull requests:** -- Fix missing import in powershell plugin [\#674](https://github.com/nerdvegas/rez/pull/674) ([instinct-vfx](https://github.com/instinct-vfx)) -- Add powershell core 6+ support (pwsh) [\#679](https://github.com/nerdvegas/rez/pull/679) ([instinct-vfx](https://github.com/instinct-vfx)) +- Fix missing import in powershell plugin [\#674](https://github.com/AcademySoftwareFoundation/rez/pull/674) ([instinct-vfx](https://github.com/instinct-vfx)) +- Add powershell core 6+ support (pwsh) [\#679](https://github.com/AcademySoftwareFoundation/rez/pull/679) ([instinct-vfx](https://github.com/instinct-vfx)) **Closed issues:** -- Add shell plugin for poweshell 6+ [\#678](https://github.com/nerdvegas/rez/issues/678) +- Add shell plugin for poweshell 6+ [\#678](https://github.com/AcademySoftwareFoundation/rez/issues/678) ## 2.38.2 (2019-07-23) -[Source](https://github.com/nerdvegas/rez/tree/2.38.2) | [Diff](https://github.com/nerdvegas/rez/compare/2.38.1...2.38.2) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.38.2) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.38.1...2.38.2) **Notes** @@ -1878,15 +1947,15 @@ Fixes regression in 2.38.0 that unintentionally renamed _rez_fwd tool to _rez-fw **Merged pull requests:** -- fixed regression in 2.38.0 that unintentionally renamed _rez_fwd to _rez-fwd [\#676](https://github.com/nerdvegas/rez/pull/676) ([nerdvegas](https://github.com/nerdvegas)) +- fixed regression in 2.38.0 that unintentionally renamed _rez_fwd to _rez-fwd [\#676](https://github.com/AcademySoftwareFoundation/rez/pull/676) ([nerdvegas](https://github.com/nerdvegas)) **Closed issues:** -- build scripts generated with incorrect shebang arg [\#671](https://github.com/nerdvegas/rez/issues/671) +- build scripts generated with incorrect shebang arg [\#671](https://github.com/AcademySoftwareFoundation/rez/issues/671) ## 2.38.1 (2019-07-20) -[Source](https://github.com/nerdvegas/rez/tree/2.38.1) | [Diff](https://github.com/nerdvegas/rez/compare/2.38.0...2.38.1) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.38.1) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.38.0...2.38.1) **Notes** @@ -1894,11 +1963,11 @@ Fixes issue on Windows where rez-bind'ing pip creates a broken package. **Merged pull requests:** -- [Fix] Windows rez-bind pip [\#659](https://github.com/nerdvegas/rez/pull/659) ([lambdaclan](https://github.com/lambdaclan)) +- [Fix] Windows rez-bind pip [\#659](https://github.com/AcademySoftwareFoundation/rez/pull/659) ([lambdaclan](https://github.com/lambdaclan)) ## 2.38.0 (2019-07-20) -[Source](https://github.com/nerdvegas/rez/tree/2.38.0) | [Diff](https://github.com/nerdvegas/rez/compare/2.37.1...2.38.0) +[Source](https://github.com/AcademySoftwareFoundation/rez/tree/2.38.0) | [Diff](https://github.com/AcademySoftwareFoundation/rez/compare/2.37.1...2.38.0) **Notes** @@ -1915,11 +1984,11 @@ Updates the installer (install.py). **Merged pull requests:** -- Installer updates [\#662](https://github.com/nerdvegas/rez/pull/662) ([nerdvegas](https://github.com/nerdvegas)) +- Installer updates [\#662](https://github.com/AcademySoftwareFoundation/rez/pull/662) ([nerdvegas](https://github.com/nerdvegas)) -## [2.37.1](https://github.com/nerdvegas/rez/tree/2.37.1) (2019-07-20) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.37.0...2.37.1) +## [2.37.1](https://github.com/AcademySoftwareFoundation/rez/tree/2.37.1) (2019-07-20) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.37.0...2.37.1) **Notes** @@ -1930,11 +1999,11 @@ object, it now returns a list of graph objects. **Merged pull requests:** -- Fix pydot regression [\#668](https://github.com/nerdvegas/rez/pull/668) ([nerdvegas](https://github.com/nerdvegas)) +- Fix pydot regression [\#668](https://github.com/AcademySoftwareFoundation/rez/pull/668) ([nerdvegas](https://github.com/nerdvegas)) -## [2.37.0](https://github.com/nerdvegas/rez/tree/2.37.0) (2019-07-19) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.36.2...2.37.0) +## [2.37.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.37.0) (2019-07-19) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.36.2...2.37.0) **Notes** @@ -1943,39 +2012,39 @@ https://docs.microsoft.com/en-us/powershell/ **Merged pull requests:** -- Implement PowerShell [\#644](https://github.com/nerdvegas/rez/pull/644) ([mottosso](https://github.com/mottosso)) +- Implement PowerShell [\#644](https://github.com/AcademySoftwareFoundation/rez/pull/644) ([mottosso](https://github.com/mottosso)) -## [2.36.2](https://github.com/nerdvegas/rez/tree/2.36.2) (2019-07-16) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.36.1...2.36.2) +## [2.36.2](https://github.com/AcademySoftwareFoundation/rez/tree/2.36.2) (2019-07-16) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.36.1...2.36.2) **Merged pull requests:** -- [Feature] Pure python package detection [\#628](https://github.com/nerdvegas/rez/pull/628) ([lambdaclan](https://github.com/lambdaclan)) +- [Feature] Pure python package detection [\#628](https://github.com/AcademySoftwareFoundation/rez/pull/628) ([lambdaclan](https://github.com/lambdaclan)) -## [2.36.1](https://github.com/nerdvegas/rez/tree/2.36.1) (2019-07-16) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.36.0...2.36.1) +## [2.36.1](https://github.com/AcademySoftwareFoundation/rez/tree/2.36.1) (2019-07-16) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.36.0...2.36.1) **Merged pull requests:** -- [Fix] Sh failing in `test_shells.TeshShells.text_rex_code_alias` [\#663](https://github.com/nerdvegas/rez/pull/663) ([bfloch](https://github.com/bfloch)) +- [Fix] Sh failing in `test_shells.TeshShells.text_rex_code_alias` [\#663](https://github.com/AcademySoftwareFoundation/rez/pull/663) ([bfloch](https://github.com/bfloch)) -## [2.36.0](https://github.com/nerdvegas/rez/tree/2.36.0) (2019-07-16) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.35.0...2.36.0) +## [2.36.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.36.0) (2019-07-16) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.35.0...2.36.0) **Merged pull requests:** -- Add a package_preprocess_mode [\#651](https://github.com/nerdvegas/rez/pull/651) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) +- Add a package_preprocess_mode [\#651](https://github.com/AcademySoftwareFoundation/rez/pull/651) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) **Closed issues:** -- Support "additive" preprocess functions [\#609](https://github.com/nerdvegas/rez/issues/609) +- Support "additive" preprocess functions [\#609](https://github.com/AcademySoftwareFoundation/rez/issues/609) -## [2.35.0](https://github.com/nerdvegas/rez/tree/2.35.0) (2019-07-10) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.34.0...2.35.0) +## [2.35.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.35.0) (2019-07-10) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.34.0...2.35.0) **Backwards Compatibility Issues** @@ -1985,225 +2054,225 @@ 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](https://github.com/nerdvegas/rez/pull/627) ([mottosso](https://github.com/mottosso)) +- WIP No more "Terminate Batch Job? (Y/N)" - Take 2 [\#627](https://github.com/AcademySoftwareFoundation/rez/pull/627) ([mottosso](https://github.com/mottosso)) **Closed issues:** -- Shell history not working in cmd.exe or PowerShell [\#616](https://github.com/nerdvegas/rez/issues/616) +- Shell history not working in cmd.exe or PowerShell [\#616](https://github.com/AcademySoftwareFoundation/rez/issues/616) -## [2.34.0](https://github.com/nerdvegas/rez/tree/2.34.0) (2019-07-10) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.33.0...2.34.0) +## [2.34.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.34.0) (2019-07-10) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.33.0...2.34.0) **Merged pull requests:** -- [Fix] Wheel pip regressions [\#656](https://github.com/nerdvegas/rez/pull/656) ([lambdaclan](https://github.com/lambdaclan)) +- [Fix] Wheel pip regressions [\#656](https://github.com/AcademySoftwareFoundation/rez/pull/656) ([lambdaclan](https://github.com/lambdaclan)) -## [2.33.0](https://github.com/nerdvegas/rez/tree/2.33.0) (2019-06-26) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.32.1...2.33.0) +## [2.33.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.33.0) (2019-06-26) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.32.1...2.33.0) **Merged pull requests:** -- Update distlib vendor library [\#654](https://github.com/nerdvegas/rez/pull/654) ([lambdaclan](https://github.com/lambdaclan)) -- [WIP] Feature/pip install modern [\#602](https://github.com/nerdvegas/rez/pull/602) ([lambdaclan](https://github.com/lambdaclan)) +- Update distlib vendor library [\#654](https://github.com/AcademySoftwareFoundation/rez/pull/654) ([lambdaclan](https://github.com/lambdaclan)) +- [WIP] Feature/pip install modern [\#602](https://github.com/AcademySoftwareFoundation/rez/pull/602) ([lambdaclan](https://github.com/lambdaclan)) -## [2.32.1](https://github.com/nerdvegas/rez/tree/2.32.1) (2019-06-24) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.32.0...2.32.1) +## [2.32.1](https://github.com/AcademySoftwareFoundation/rez/tree/2.32.1) (2019-06-24) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.32.0...2.32.1) **Merged pull requests:** -- Support for external PyYAML and Python 3 [\#622](https://github.com/nerdvegas/rez/pull/622) ([mottosso](https://github.com/mottosso)) -- Fix escaping backslashes in tcsh on Mac OS [\#497](https://github.com/nerdvegas/rez/pull/497) ([skral](https://github.com/skral)) +- Support for external PyYAML and Python 3 [\#622](https://github.com/AcademySoftwareFoundation/rez/pull/622) ([mottosso](https://github.com/mottosso)) +- Fix escaping backslashes in tcsh on Mac OS [\#497](https://github.com/AcademySoftwareFoundation/rez/pull/497) ([skral](https://github.com/skral)) -## [2.32.0](https://github.com/nerdvegas/rez/tree/2.32.0) (2019-06-23) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.31.4...2.32.0) +## [2.32.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.32.0) (2019-06-23) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.31.4...2.32.0) **Merged pull requests:** -- Implement preprocess function support for rezconfig.py (takeover) [\#650](https://github.com/nerdvegas/rez/pull/650) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) +- Implement preprocess function support for rezconfig.py (takeover) [\#650](https://github.com/AcademySoftwareFoundation/rez/pull/650) ([JeanChristopheMorinPerso](https://github.com/JeanChristopheMorinPerso)) -## [2.31.4](https://github.com/nerdvegas/rez/tree/2.31.4) (2019-06-22) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.31.3...2.31.4) +## [2.31.4](https://github.com/AcademySoftwareFoundation/rez/tree/2.31.4) (2019-06-22) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.31.3...2.31.4) **Merged pull requests:** -- Expose Python standard module __file__ and __name__ to rezconfig [\#636](https://github.com/nerdvegas/rez/pull/636) ([mottosso](https://github.com/mottosso)) +- Expose Python standard module __file__ and __name__ to rezconfig [\#636](https://github.com/AcademySoftwareFoundation/rez/pull/636) ([mottosso](https://github.com/mottosso)) -## [2.31.3](https://github.com/nerdvegas/rez/tree/2.31.3) (2019-06-22) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.31.2...2.31.3) +## [2.31.3](https://github.com/AcademySoftwareFoundation/rez/tree/2.31.3) (2019-06-22) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.31.2...2.31.3) **Merged pull requests:** -- Bugfix for alias() on Windows [\#607](https://github.com/nerdvegas/rez/pull/607) ([mottosso](https://github.com/mottosso)) +- Bugfix for alias() on Windows [\#607](https://github.com/AcademySoftwareFoundation/rez/pull/607) ([mottosso](https://github.com/mottosso)) -## [2.31.2](https://github.com/nerdvegas/rez/tree/2.31.2) (2019-06-22) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.31.1...2.31.2) +## [2.31.2](https://github.com/AcademySoftwareFoundation/rez/tree/2.31.2) (2019-06-22) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.31.1...2.31.2) **Merged pull requests:** -- Fix #558 [\#647](https://github.com/nerdvegas/rez/pull/647) ([mottosso](https://github.com/mottosso)) +- Fix #558 [\#647](https://github.com/AcademySoftwareFoundation/rez/pull/647) ([mottosso](https://github.com/mottosso)) **Closed issues:** -- rez-build breaks if "|" in a required package's version on Windows [\#558](https://github.com/nerdvegas/rez/issues/558) +- rez-build breaks if "|" in a required package's version on Windows [\#558](https://github.com/AcademySoftwareFoundation/rez/issues/558) -## [2.31.1](https://github.com/nerdvegas/rez/tree/2.31.1) (2019-06-18) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.31.0...2.31.1) +## [2.31.1](https://github.com/AcademySoftwareFoundation/rez/tree/2.31.1) (2019-06-18) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.31.0...2.31.1) **Merged pull requests:** -- Automatically create missing package repository dir [\#623](https://github.com/nerdvegas/rez/pull/623) ([mottosso](https://github.com/mottosso)) +- Automatically create missing package repository dir [\#623](https://github.com/AcademySoftwareFoundation/rez/pull/623) ([mottosso](https://github.com/mottosso)) -## [2.31.0](https://github.com/nerdvegas/rez/tree/2.31.0) (2019-06-04) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.30.2...2.31.0) +## [2.31.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.31.0) (2019-06-04) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.30.2...2.31.0) **Merged pull requests:** -- Fix/add support for reversed version range [\#618](https://github.com/nerdvegas/rez/pull/618) ([instinct-vfx](https://github.com/instinct-vfx)) +- Fix/add support for reversed version range [\#618](https://github.com/AcademySoftwareFoundation/rez/pull/618) ([instinct-vfx](https://github.com/instinct-vfx)) -## [2.30.2](https://github.com/nerdvegas/rez/tree/2.30.2) (2019-06-03) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.30.1...2.30.2) +## [2.30.2](https://github.com/AcademySoftwareFoundation/rez/tree/2.30.2) (2019-06-03) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.30.1...2.30.2) **Merged pull requests:** -- Update print statements to be Python 3 compatible [\#641](https://github.com/nerdvegas/rez/pull/641) ([bpabel](https://github.com/bpabel)) +- Update print statements to be Python 3 compatible [\#641](https://github.com/AcademySoftwareFoundation/rez/pull/641) ([bpabel](https://github.com/bpabel)) -## [2.30.1](https://github.com/nerdvegas/rez/tree/2.30.1) (2019-06-03) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.30.0...2.30.1) +## [2.30.1](https://github.com/AcademySoftwareFoundation/rez/tree/2.30.1) (2019-06-03) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.30.0...2.30.1) **Merged pull requests:** -- WIP Fix file permissions of package.py on Windows [\#598](https://github.com/nerdvegas/rez/pull/598) ([mottosso](https://github.com/mottosso)) +- WIP Fix file permissions of package.py on Windows [\#598](https://github.com/AcademySoftwareFoundation/rez/pull/598) ([mottosso](https://github.com/mottosso)) -## [2.30.0](https://github.com/nerdvegas/rez/tree/2.30.0) (2019-05-07) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.29.1...2.30.0) +## [2.30.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.30.0) (2019-05-07) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.29.1...2.30.0) **Merged pull requests:** -- fqdn [\#621](https://github.com/nerdvegas/rez/pull/621) ([bpabel](https://github.com/bpabel)) -- Fix path list with whitespace [\#588](https://github.com/nerdvegas/rez/pull/588) ([asztalosdani](https://github.com/asztalosdani)) -- Close the amqp connection after message publish [\#615](https://github.com/nerdvegas/rez/pull/615) ([loup-kreidl](https://github.com/loup-kreidl)) +- fqdn [\#621](https://github.com/AcademySoftwareFoundation/rez/pull/621) ([bpabel](https://github.com/bpabel)) +- Fix path list with whitespace [\#588](https://github.com/AcademySoftwareFoundation/rez/pull/588) ([asztalosdani](https://github.com/asztalosdani)) +- Close the amqp connection after message publish [\#615](https://github.com/AcademySoftwareFoundation/rez/pull/615) ([loup-kreidl](https://github.com/loup-kreidl)) **Closed issues:** -- rezbuild.py broken [\#619](https://github.com/nerdvegas/rez/issues/619) -- rez-env Performance and socket.getfqdn() [\#617](https://github.com/nerdvegas/rez/issues/617) -- "parse_build_args.py" file parser arguments are not accessible anymore in "os.environ". [\#590](https://github.com/nerdvegas/rez/issues/590) +- rezbuild.py broken [\#619](https://github.com/AcademySoftwareFoundation/rez/issues/619) +- rez-env Performance and socket.getfqdn() [\#617](https://github.com/AcademySoftwareFoundation/rez/issues/617) +- "parse_build_args.py" file parser arguments are not accessible anymore in "os.environ". [\#590](https://github.com/AcademySoftwareFoundation/rez/issues/590) -## [2.29.1](https://github.com/nerdvegas/rez/tree/2.29.1) (2019-04-22) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.29.0...2.29.1) +## [2.29.1](https://github.com/AcademySoftwareFoundation/rez/tree/2.29.1) (2019-04-22) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.29.0...2.29.1) **Merged pull requests:** -- Bugfix/custom build arguments [\#601](https://github.com/nerdvegas/rez/pull/601) ([lambdaclan](https://github.com/lambdaclan)) +- Bugfix/custom build arguments [\#601](https://github.com/AcademySoftwareFoundation/rez/pull/601) ([lambdaclan](https://github.com/lambdaclan)) **Closed issues:** -- bug in rez-build --bs option [\#604](https://github.com/nerdvegas/rez/issues/604) +- bug in rez-build --bs option [\#604](https://github.com/AcademySoftwareFoundation/rez/issues/604) -## [2.29.0](https://github.com/nerdvegas/rez/tree/2.29.0) (2019-04-09) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.28.0...2.29.0) +## [2.29.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.29.0) (2019-04-09) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.28.0...2.29.0) **Implemented enhancements:** -- hash-based variant subpaths [\#583](https://github.com/nerdvegas/rez/issues/583) +- hash-based variant subpaths [\#583](https://github.com/AcademySoftwareFoundation/rez/issues/583) **Closed issues:** -- rez variant environment var during build [\#304](https://github.com/nerdvegas/rez/issues/304) +- rez variant environment var during build [\#304](https://github.com/AcademySoftwareFoundation/rez/issues/304) -## [2.28.0](https://github.com/nerdvegas/rez/tree/2.28.0) (2019-03-15) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.27.1...2.28.0) +## [2.28.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.28.0) (2019-03-15) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.27.1...2.28.0) **Fixed bugs:** -- nargs errors for logging_.print_* functions [\#580](https://github.com/nerdvegas/rez/issues/580) +- nargs errors for logging_.print_* functions [\#580](https://github.com/AcademySoftwareFoundation/rez/issues/580) **Merged pull requests:** -- Ignore versions if .ignore file exists [\#453](https://github.com/nerdvegas/rez/pull/453) ([Pixomondo](https://github.com/Pixomondo)) -- Fix/logging print nargs [\#581](https://github.com/nerdvegas/rez/pull/581) ([wwfxuk](https://github.com/wwfxuk)) -- package_test.py: fix rez-test header command with % [\#572](https://github.com/nerdvegas/rez/pull/572) ([rodeofx](https://github.com/rodeofx)) -- Call the flush method every time a Printer instance is called [\#540](https://github.com/nerdvegas/rez/pull/540) ([rodeofx](https://github.com/rodeofx)) +- Ignore versions if .ignore file exists [\#453](https://github.com/AcademySoftwareFoundation/rez/pull/453) ([Pixomondo](https://github.com/Pixomondo)) +- Fix/logging print nargs [\#581](https://github.com/AcademySoftwareFoundation/rez/pull/581) ([wwfxuk](https://github.com/wwfxuk)) +- package_test.py: fix rez-test header command with % [\#572](https://github.com/AcademySoftwareFoundation/rez/pull/572) ([rodeofx](https://github.com/rodeofx)) +- Call the flush method every time a Printer instance is called [\#540](https://github.com/AcademySoftwareFoundation/rez/pull/540) ([rodeofx](https://github.com/rodeofx)) -## [2.27.1](https://github.com/nerdvegas/rez/tree/2.27.1) (2019-03-15) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.27.0...2.27.1) +## [2.27.1](https://github.com/AcademySoftwareFoundation/rez/tree/2.27.1) (2019-03-15) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.27.0...2.27.1) **Merged pull requests:** -- Delete old repository directory [\#576](https://github.com/nerdvegas/rez/pull/576) ([bpabel](https://github.com/bpabel)) +- Delete old repository directory [\#576](https://github.com/AcademySoftwareFoundation/rez/pull/576) ([bpabel](https://github.com/bpabel)) -## [2.27.0](https://github.com/nerdvegas/rez/tree/2.27.0) (2019-01-24) -[Full Changelog](https://github.com/nerdvegas/rez/compare/2.26.4...2.27.0) +## [2.27.0](https://github.com/AcademySoftwareFoundation/rez/tree/2.27.0) (2019-01-24) +[Full Changelog](https://github.com/AcademySoftwareFoundation/rez/compare/2.26.4...2.27.0) **Implemented enhancements:** -- facilitate variant install when target package is read-only [\#565](https://github.com/nerdvegas/rez/issues/565) +- facilitate variant install when target package is read-only [\#565](https://github.com/AcademySoftwareFoundation/rez/issues/565) **Fixed bugs:** -- timestamp override no working in package copy [\#568](https://github.com/nerdvegas/rez/issues/568) -- shallow rez-cp can corrupt package if there are overlapping variants [\#563](https://github.com/nerdvegas/rez/issues/563) +- timestamp override no working in package copy [\#568](https://github.com/AcademySoftwareFoundation/rez/issues/568) +- shallow rez-cp can corrupt package if there are overlapping variants [\#563](https://github.com/AcademySoftwareFoundation/rez/issues/563) **Merged pull requests:** -- Issue 568 [\#569](https://github.com/nerdvegas/rez/pull/569) ([nerdvegas](https://github.com/nerdvegas)) -- Issue 565 [\#567](https://github.com/nerdvegas/rez/pull/567) ([nerdvegas](https://github.com/nerdvegas)) -- Issue 563 [\#566](https://github.com/nerdvegas/rez/pull/566) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 568 [\#569](https://github.com/AcademySoftwareFoundation/rez/pull/569) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 565 [\#567](https://github.com/AcademySoftwareFoundation/rez/pull/567) ([nerdvegas](https://github.com/nerdvegas)) +- Issue 563 [\#566](https://github.com/AcademySoftwareFoundation/rez/pull/566) ([nerdvegas](https://github.com/nerdvegas)) -## 2.26.4 [[#562](https://github.com/nerdvegas/rez/pull/562)] Fixed Regression in 2.24.0 +## 2.26.4 [[#562](https://github.com/AcademySoftwareFoundation/rez/pull/562)] Fixed Regression in 2.24.0 #### Addressed Issues -* [#561](https://github.com/nerdvegas/rez/issues/561) timestamp not written to installed package +* [#561](https://github.com/AcademySoftwareFoundation/rez/issues/561) timestamp not written to installed package -## 2.26.3 [[#560](https://github.com/nerdvegas/rez/pull/560)] Package.py permissions issue +## 2.26.3 [[#560](https://github.com/AcademySoftwareFoundation/rez/pull/560)] Package.py permissions issue #### Addressed Issues -* [#559](https://github.com/nerdvegas/rez/issues/559) package.py permissions issue +* [#559](https://github.com/AcademySoftwareFoundation/rez/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](https://github.com/nerdvegas/rez/pull/557)] Package Copy Fixes For Non-Varianted Packages +## 2.26.2 [[#557](https://github.com/AcademySoftwareFoundation/rez/pull/557)] Package Copy Fixes For Non-Varianted Packages #### Addressed Issues -* [#556](https://github.com/nerdvegas/rez/issues/556) rez-cp briefly copies original package definition in non-varianted packages -* [#555](https://github.com/nerdvegas/rez/issues/555) rez-cp inconsistent symlinking when --shallow=true -* [#554](https://github.com/nerdvegas/rez/issues/554) rez-cp doesn't keep file metadata in some cases +* [#556](https://github.com/AcademySoftwareFoundation/rez/issues/556) rez-cp briefly copies original package definition in non-varianted packages +* [#555](https://github.com/AcademySoftwareFoundation/rez/issues/555) rez-cp inconsistent symlinking when --shallow=true +* [#554](https://github.com/AcademySoftwareFoundation/rez/issues/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](https://github.com/nerdvegas/rez/pull/552)] Bugfix in Package Copy +## 2.26.1 [[#552](https://github.com/AcademySoftwareFoundation/rez/pull/552)] Bugfix in Package Copy #### Addressed Issues -* [#551](https://github.com/nerdvegas/rez/issues/551) package copy fails if symlinks in root dir +* [#551](https://github.com/AcademySoftwareFoundation/rez/issues/551) package copy fails if symlinks in root dir #### Notes @@ -2211,11 +2280,11 @@ This was failing when symlinks were present within a non-varianted package being symlinks are retained in the target package, unless `--follow-symlinks` is specified. -## 2.26.0 [[#550](https://github.com/nerdvegas/rez/pull/550)] Build System Detection Fixes +## 2.26.0 [[#550](https://github.com/AcademySoftwareFoundation/rez/pull/550)] Build System Detection Fixes #### Addressed Issues -* [#549](https://github.com/nerdvegas/rez/issues/549) '--build-system' rez-build option not always +* [#549](https://github.com/AcademySoftwareFoundation/rez/issues/549) '--build-system' rez-build option not always available #### Notes @@ -2223,7 +2292,7 @@ symlinks are retained in the target package, unless `--follow-symlinks` is speci To fix this issue: * The '--build-system' rez-build option is now always present. * To provide further control over the build system type, the package itself can now specify its build - system - see https://github.com/nerdvegas/rez/wiki/Package-Definition-Guide#build_system + system - see https://github.com/AcademySoftwareFoundation/rez/wiki/Package-Definition-Guide#build_system #### COMPATIBILITY ISSUE! @@ -2233,15 +2302,15 @@ one valid build system was present for a given package working directory. **This changed to '--cmake-build-system'**. -## 2.25.0 [[#548](https://github.com/nerdvegas/rez/pull/548)] Various Build-related issues +## 2.25.0 [[#548](https://github.com/AcademySoftwareFoundation/rez/pull/548)] Various Build-related issues #### Addressed Issues -* [#433](https://github.com/nerdvegas/rez/issues/433): "package_definition_build_python_paths" defined +* [#433](https://github.com/AcademySoftwareFoundation/rez/issues/433): "package_definition_build_python_paths" defined paths are not available from top level in package.py -* [#442](https://github.com/nerdvegas/rez/issues/442): "rez-depends" and "private_build_requires" -* [#416](https://github.com/nerdvegas/rez/issues/416): Need currently-building-variant build variables -* [#547](https://github.com/nerdvegas/rez/issues/547): rez-cp follows symlinks within package payload +* [#442](https://github.com/AcademySoftwareFoundation/rez/issues/442): "rez-depends" and "private_build_requires" +* [#416](https://github.com/AcademySoftwareFoundation/rez/issues/416): Need currently-building-variant build variables +* [#547](https://github.com/AcademySoftwareFoundation/rez/issues/547): rez-cp follows symlinks within package payload #### Notes @@ -2250,7 +2319,7 @@ building, build_variant_index and build_variant_requires. This allows you to do 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/nerdvegas/rez/wiki/Package-Definition-Guide#available-objects +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. @@ -2296,7 +2365,7 @@ another, with optional renaming/reversioning. The associated API can be found in #### Notes -Bug was introduced in: https://github.com/nerdvegas/rez/releases/tag/2.20.0 +Bug was introduced in: https://github.com/AcademySoftwareFoundation/rez/releases/tag/2.20.0 ## 2.23.0: Package Usage Tracking, Better Config Overrides @@ -2317,7 +2386,7 @@ 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/nerdvegas/rez/blob/master/src/rez/rezconfig.py#L414 +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. diff --git a/CODEOWNERS b/CODEOWNERS index ce417fea8..4df2574d7 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -5,33 +5,33 @@ # https://git-scm.com/docs/gitignore#_pattern_format # Admin -/ASWF/ @nerdvegas -CODEOWNERS @nerdvegas -LICENSE @nerdvegas -NOTICE @nerdvegas -*.md @nerdvegas +/ASWF/ @nerdvegas @AcademySoftwareFoundation/rez-maintainers +CODEOWNERS @nerdvegas @AcademySoftwareFoundation/rez-maintainers +LICENSE @nerdvegas @AcademySoftwareFoundation/rez-maintainers +NOTICE @nerdvegas @AcademySoftwareFoundation/rez-maintainers +*.md @nerdvegas @AcademySoftwareFoundation/rez-maintainers # CI -/.github/ @nerdvegas -.sonarcloud.properties @nerdvegas -/src/rez/tests/ @nerdvegas -/src/rez/data/ @nerdvegas +/.github/ @nerdvegas @AcademySoftwareFoundation/rez-maintainers +.sonarcloud.properties @nerdvegas @AcademySoftwareFoundation/rez-maintainers +/src/rez/tests/ @nerdvegas @AcademySoftwareFoundation/rez-maintainers +/src/rez/data/ @nerdvegas @AcademySoftwareFoundation/rez-maintainers # Docs -/wiki/ @nerdvegas +/wiki/ @nerdvegas @AcademySoftwareFoundation/rez-maintainers # Core -/src/rez/backport @nerdvegas -/src/rez/bind @nerdvegas -/src/rez/cli @nerdvegas -/src/rez/utils @nerdvegas -/src/rez/*.py @nerdvegas +/src/rez/backport @nerdvegas @AcademySoftwareFoundation/rez-maintainers +/src/rez/bind @nerdvegas @AcademySoftwareFoundation/rez-maintainers +/src/rez/cli @nerdvegas @AcademySoftwareFoundation/rez-maintainers +/src/rez/utils @nerdvegas @AcademySoftwareFoundation/rez-maintainers +/src/rez/*.py @nerdvegas @AcademySoftwareFoundation/rez-maintainers # Embedded packages -/src/rez/vendor @nerdvegas +/src/rez/vendor @nerdvegas @AcademySoftwareFoundation/rez-maintainers # Plugins -/src/rezplugins/ @nerdvegas +/src/rezplugins/ @nerdvegas @AcademySoftwareFoundation/rez-maintainers # Gui -/src/rezgui/ @nerdvegas +/src/rezgui/ @nerdvegas @AcademySoftwareFoundation/rez-maintainers diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c1acbcd4b..c1df2e49a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -21,17 +21,27 @@ sending a pull request. Please follow these guidelines: document the setting. The comments in this file are extracted and turned into Wiki content. Pay attention to the comment formatting and follow the existing style closely. -## Windows Docker Workflow +## CLA -The Windows tests currently build a Python image for each version to test. Each is based on a common -base image. Any changes to the following Docker images sources should be a separate commit: +Rez enforces use of a Contributor License Agreement as per ASWF guidelines. You need only sign up to the EasyCLA system once, but until you do, your PRs will be automatically blocked. -- `.github/docker/rez-win-base/**` -- `.github/docker/rez-win-py/**` -- `.github/workflows/windows-docker-image.yaml` +For more info see https://easycla.lfx.linuxfoundation.org/#/ -The base and Python images will be automatically rebuilt. -Any future commits will pickup the correct image via `windows-docker.yaml` +## DCO + +Rez enforces Developer Certificate of Origin (DCO) on all commits, as per ASWF guidelines. PRs are automatically blocked until all commits within the PR are signed off. + +To automatically add the necessary sign-off line to every commit, we suggest you do the following, +in the root of the project (you'll only need to do it once, and the template file has been added +to `.gitignore`): + +``` +]$ echo "Signed-off-by: $(git config user.name) <$(git config user.email)>" > .git-commit-template +]$ git config commit.template .git-commit-template +``` + +For more info see https://github.blog/changelog/2022-06-08-admins-can-require-sign-off-on-web-based-commits/ +for web-based commits, and https://probot.github.io/apps/dco/ for all others. ## Reporting Bugs diff --git a/INSTALL.md b/INSTALL.md index 00bd4ac27..d7e0796cb 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -44,7 +44,7 @@ Note that running pip-installed rez command line tools will print a warning like ``` Pip-based rez installation detected. Please be aware that rez command line tools are not guaranteed to function correctly in this case. See -https://github.com/nerdvegas/rez/wiki/Installation#why-not-pip-for-production +https://github.com/AcademySoftwareFoundation/rez/wiki/Installation#why-not-pip-for-production for futher details. ``` diff --git a/README.md b/README.md index de752aae2..fd5d3e208 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,14 @@ -[![Release](https://shields.io/github/v/release/nerdvegas/rez)](https://github.com/nerdvegas/rez/releases) +[![Release](https://shields.io/github/v/release/AcademySoftwareFoundation/rez)](https://github.com/AcademySoftwareFoundation/rez/releases) [![Pypy Release](https://shields.io/pypi/v/rez)](https://pypi.org/project/rez)
-[![Core](https://github.com/nerdvegas/rez/workflows/core/badge.svg?branch=master)](https://github.com/nerdvegas/rez/actions?query=workflow%3Acore+branch%3Amaster) -[![Ubuntu](https://github.com/nerdvegas/rez/workflows/ubuntu/badge.svg?branch=master)](https://github.com/nerdvegas/rez/actions?query=workflow%3Aubuntu+branch%3Amaster) -[![Mac](https://github.com/nerdvegas/rez/workflows/mac/badge.svg?branch=master)](https://github.com/nerdvegas/rez/actions?query=workflow%3Amac+branch%3Amaster) -[![Windows](https://github.com/nerdvegas/rez/workflows/windows/badge.svg?branch=master)](https://github.com/nerdvegas/rez/actions?query=workflow%3AWindows+branch%3Amaster)
-[![Installation](https://github.com/nerdvegas/rez/workflows/installation/badge.svg?branch=master)](https://github.com/nerdvegas/rez/actions?query=workflow%3Ainstallation+branch%3Amaster) -[![Flake8](https://github.com/nerdvegas/rez/workflows/flake8/badge.svg?branch=master)](https://github.com/nerdvegas/rez/actions?query=workflow%3Aflake8+branch%3Amaster) -[![Wiki](https://github.com/nerdvegas/rez/workflows/wiki/badge.svg)](https://github.com/nerdvegas/rez/actions?query=workflow%3Awiki+event%3Arelease) -[![Pypi](https://github.com/nerdvegas/rez/workflows/pypi/badge.svg)](https://github.com/nerdvegas/rez/actions?query=workflow%3Apypi+event%3Arelease) -[![Benchmark](https://github.com/nerdvegas/rez/workflows/benchmark/badge.svg)](https://github.com/nerdvegas/rez/actions?query=workflow%3Abenchmark+event%3Arelease)
+[![Core](https://github.com/AcademySoftwareFoundation/rez/workflows/core/badge.svg?branch=master)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3Acore+branch%3Amaster) +[![Ubuntu](https://github.com/AcademySoftwareFoundation/rez/workflows/ubuntu/badge.svg?branch=master)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3Aubuntu+branch%3Amaster) +[![Mac](https://github.com/AcademySoftwareFoundation/rez/workflows/mac/badge.svg?branch=master)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3Amac+branch%3Amaster) +[![Windows](https://github.com/AcademySoftwareFoundation/rez/workflows/windows/badge.svg?branch=master)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3AWindows+branch%3Amaster)
+[![Installation](https://github.com/AcademySoftwareFoundation/rez/workflows/installation/badge.svg?branch=master)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3Ainstallation+branch%3Amaster) +[![Flake8](https://github.com/AcademySoftwareFoundation/rez/workflows/flake8/badge.svg?branch=master)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3Aflake8+branch%3Amaster) +[![Wiki](https://github.com/AcademySoftwareFoundation/rez/workflows/wiki/badge.svg)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3Awiki+event%3Arelease) +[![Pypi](https://github.com/AcademySoftwareFoundation/rez/workflows/pypi/badge.svg)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3Apypi+event%3Arelease) +[![Benchmark](https://github.com/AcademySoftwareFoundation/rez/workflows/benchmark/badge.svg)](https://github.com/AcademySoftwareFoundation/rez/actions?query=workflow%3Abenchmark+event%3Arelease)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=nerdvegas_rez&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=nerdvegas_rez) [![Bugs](https://sonarcloud.io/api/project_badges/measure?project=nerdvegas_rez&metric=bugs)](https://sonarcloud.io/summary/new_code?id=nerdvegas_rez) [![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=nerdvegas_rez&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=nerdvegas_rez) @@ -35,18 +35,18 @@ environments reference these existing packages. This means that configured envir are lightweight, and very fast to create, often taking just a few seconds to configure despite containing hundreds of packages. -See [the wiki](https://github.com/nerdvegas/rez/wiki) for full documentation. +See [the wiki](https://github.com/AcademySoftwareFoundation/rez/wiki) for full documentation.

- - + +
Typical package managers install packages into an environment


- - + +
Rez installs packages once, and configures environments dynamically

@@ -90,7 +90,7 @@ and when re-evaluated later will reconstruct the same environment once more. ## Examples This example places the user into a resolved shell containing the requested packages, -using the [rez-env](https://github.com/nerdvegas/rez/wiki/Command-Line-Tools#rez-env) tool: +using the [rez-env](https://github.com/AcademySoftwareFoundation/rez/wiki/Command-Line-Tools#rez-env) tool: ]$ rez-env requests-2.2+ python-2.6 'pymongo-0+<2.7' @@ -213,3 +213,4 @@ like any other package: the roadmap. Users have successfully implemented workarounds to utilize CMake with Rez under Windows, but the goal is to provide a seamless experience on any platform in the future. For details see this [issue](/../../issues/703) + diff --git a/RELEASE.md b/RELEASE.md index 807819ca3..0e657e0f1 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -5,7 +5,7 @@ To merge a PR to master and release a new version: 1. Merge the PR locally, following the instructions given on GitHub in the `command line instructions` link (but do not push to master yet); 2. Run the tests (rez-selftest) to double check nothing is broken; -3. Make sure the [rez version](https://github.com/nerdvegas/rez/blob/master/src/rez/utils/_version.py) +3. Make sure the [rez version](https://github.com/AcademySoftwareFoundation/rez/blob/master/src/rez/utils/_version.py) is correct, and change if necessary. The version may have been correct at the time of PR submission, but may need an update due to releases that have occurred since; @@ -21,7 +21,7 @@ To merge a PR to master and release a new version: 6. Wait for all Github workflows to pass; 7. Run the release-rez utility script. This performs the following actions: * Creates tag on latest version, and pushes tag to master; - * Generates the new GitHub release (https://github.com/nerdvegas/rez/releases). + * Generates the new GitHub release (https://github.com/AcademySoftwareFoundation/rez/releases). ``` ]$ python ./release-rez.py ``` diff --git a/install.py b/install.py index 9d88a1084..7b57a8691 100644 --- a/install.py +++ b/install.py @@ -85,9 +85,15 @@ def patch_rez_binaries(dest_dir): # delete rez bin files written into virtualenv for name in specs.keys(): - filepath = os.path.join(virtualenv_bin_path, name) - if os.path.isfile(filepath): - os.remove(filepath) + basepath = os.path.join(virtualenv_bin_path, name) + filepaths = [ + basepath, + basepath + "-script.py", + basepath + ".exe" + ] + for filepath in filepaths: + if os.path.isfile(filepath): + os.remove(filepath) # write patched bins instead. These go into 'bin/rez' subdirectory, which # gives us a bin dir containing only rez binaries. This is what we want - diff --git a/release-rez.py b/release-rez.py index 5a8b03727..6a92451c2 100644 --- a/release-rez.py +++ b/release-rez.py @@ -29,7 +29,7 @@ def get_github_repo_owner(): - out = subprocess.check_output(["git", "remote", "-v"]) + out = subprocess.check_output(["git", "remote", "-v"], text=True) # eg git@github.com:jbloggs/rez.git, https://github.com/jbloggs/rez.git remote_url = out.split()[1] @@ -52,7 +52,7 @@ def run_command(*nargs): if verbose: print("RUNNING: %s" % ' '.join(map(quote, nargs))) - proc = subprocess.Popen(nargs, stdout=subprocess.PIPE) + proc = subprocess.Popen(nargs, stdout=subprocess.PIPE, text=True) out, _ = proc.communicate() if proc.returncode: diff --git a/setup.py b/setup.py index 74be7cf88..03dcfa7f3 100644 --- a/setup.py +++ b/setup.py @@ -60,9 +60,9 @@ def find_files(pattern, path=None, root="rez"): keywords="package resolve version build install software management", long_description=long_description, long_description_content_type='text/markdown', - url="https://github.com/nerdvegas/rez", + url="https://github.com/AcademySoftwareFoundation/rez", author="Allan Johns", - author_email="nerdvegas@gmail.com", + author_email="rez-discussion@lists.aswf.io", license="Apache License 2.0", entry_points={ "console_scripts": get_specifications().values() diff --git a/src/build_utils/README.md b/src/build_utils/README.md index 564ff102b..43fdbc091 100644 --- a/src/build_utils/README.md +++ b/src/build_utils/README.md @@ -4,4 +4,4 @@ installed as part of rez. Note: The embedded virtualenv found in this dir is only used up to python v3.6. From v3.7 onwards, python's native `venv` module is used instead. See -https://github.com/nerdvegas/rez/releases/tag/2.72.0. +https://github.com/AcademySoftwareFoundation/rez/releases/tag/2.72.0. diff --git a/src/rez/bind/_utils.py b/src/rez/bind/_utils.py index 6f9423c37..713a72ccd 100644 --- a/src/rez/bind/_utils.py +++ b/src/rez/bind/_utils.py @@ -129,7 +129,7 @@ def _run_command(args): cmd_str = ' '.join(quote(x) for x in args) log("running: %s" % cmd_str) - # https://github.com/nerdvegas/rez/pull/659 + # https://github.com/AcademySoftwareFoundation/rez/pull/659 use_shell = ("Windows" in platform.system()) p = Popen( diff --git a/src/rez/cli/_entry_points.py b/src/rez/cli/_entry_points.py index b37ef0f67..8841932d9 100644 --- a/src/rez/cli/_entry_points.py +++ b/src/rez/cli/_entry_points.py @@ -55,7 +55,7 @@ def check_production_install(): sys.stderr.write( "Pip-based rez installation detected. Please be aware that rez command " "line tools are not guaranteed to function correctly in this case. See " - "https://github.com/nerdvegas/rez/wiki/Installation#why-not-pip-for-production " + "https://github.com/AcademySoftwareFoundation/rez/wiki/Installation#why-not-pip-for-production " " for futher details.\n" ) @@ -272,8 +272,7 @@ def run_rez_benchmark(): check_production_install() # Special case - we have to override config settings here, before rez is - # loaded. TODO this would be cleaner if we had an Application object, see - # https://github.com/nerdvegas/rez/issues/1043 + # loaded. TODO this would be cleaner if we had an Application object, see #1043 # # /start import json diff --git a/src/rez/package_cache.py b/src/rez/package_cache.py index 02308d7e9..d9faecd05 100644 --- a/src/rez/package_cache.py +++ b/src/rez/package_cache.py @@ -210,7 +210,7 @@ def add_variant(self, variant, force=False): # Package belongs to a temp repo (this occurs when a package is # tested on pre_build/pre_release - see - # https://github.com/nerdvegas/rez/wiki/Package-Definition-Guide#tests) + # https://github.com/AcademySoftwareFoundation/rez/wiki/Package-Definition-Guide#tests) # if package.repository.name() == "filesystem" and \ package.repository.location.startswith(config.tmpdir + os.sep): diff --git a/src/rez/pip.py b/src/rez/pip.py index b3993b290..be29d175e 100644 --- a/src/rez/pip.py +++ b/src/rez/pip.py @@ -137,7 +137,7 @@ def find_python_in_context(context): # accidentally find a system python install. # context = context.copy() - context.append_sys_path = False # https://github.com/nerdvegas/rez/issues/826 + context.append_sys_path = False # #826 python_package = context.get_resolved_package("python") assert python_package @@ -430,7 +430,7 @@ def make_root(variant, path): # Make the package use hashed variants. This is required because we # can't control what ends up in its variants, and that can easily # include problematic chars (>, +, ! etc). - # TODO: https://github.com/nerdvegas/rez/issues/672 + # TODO: #672 # pkg.hashed_variants = True @@ -541,7 +541,7 @@ def get_mapping(rel_src): 4. Try rez-pip install again. If path remapping is not enough, consider submitting a new issue - via https://github.com/nerdvegas/rez/issues/new + via https://github.com/AcademySoftwareFoundation/rez/issues/new """.format(dist_record, rel_src, tokenised_path) print_error(dedent(try_this_message).lstrip()) diff --git a/src/rez/plugin_managers.py b/src/rez/plugin_managers.py index 81de6294c..a5a16bc36 100644 --- a/src/rez/plugin_managers.py +++ b/src/rez/plugin_managers.py @@ -158,7 +158,7 @@ def load_plugins(self): print_debug("loading %s plugin at %s: %s..." % (self.type_name, path, modname)) try: - # https://github.com/nerdvegas/rez/pull/218 + # https://github.com/AcademySoftwareFoundation/rez/pull/218 # load_module will force reload the module if it's # already loaded, so check for that plugin_module = sys.modules.get(modname) @@ -317,7 +317,12 @@ def rezplugins_module_paths(self): module_path = os.path.join(importer.archive, name) else: - module_path = os.path.join(importer.path, name) + try: + module_path = os.path.join(importer.path, name) + # Ignore execution failures due to missing `importer.path`, + # when rez is packaged as a single application via Pyinstaller or PyOxidizer. + except AttributeError: + continue init_path = os.path.join(module_path, "rezplugins", "__init__.py") if not os.path.isfile(init_path): continue diff --git a/src/rez/resolved_context.py b/src/rez/resolved_context.py index e098f1b06..fe799fb2f 100644 --- a/src/rez/resolved_context.py +++ b/src/rez/resolved_context.py @@ -438,7 +438,7 @@ def get_resolved_package(self, name): """Returns a `Variant` object or None if the package is not in the resolve. """ - pkgs = [x for x in self._resolved_packages if x.name == name] + pkgs = [x for x in (self._resolved_packages or []) if x.name == name] return pkgs[0] if pkgs else None def copy(self): @@ -1959,6 +1959,7 @@ def normalized(path): request_str = ' '.join(str(x) for x in self._package_requests) implicit_str = ' '.join(str(x) for x in self.implicit_packages) resolve_str = ' '.join(x.qualified_package_name for x in resolved_pkgs) + local_packages_str = ' '.join(x.qualified_package_name for x in resolved_pkgs if x.is_local) req_timestamp_str = str(self.requested_timestamp or 0) package_paths_str = executor.interpreter.pathsep.join( normalized(x) for x in self.package_paths @@ -1979,6 +1980,9 @@ def normalized(path): eph_resolve_str = ' '.join(str(x) for x in ephemerals) executor.setenv("REZ_USED_EPH_RESOLVE", eph_resolve_str) + if local_packages_str: + executor.setenv("REZ_USED_LOCAL_RESOLVE", local_packages_str) + if self.building: executor.setenv("REZ_BUILD_ENV", "1") diff --git a/src/rez/rezconfig.py b/src/rez/rezconfig.py index 740c6b160..070fb26cf 100644 --- a/src/rez/rezconfig.py +++ b/src/rez/rezconfig.py @@ -362,34 +362,35 @@ # during a resolve, and if any filter excludes a package, that package is not # included in the resolve. Here is a simple example: # -# package_filter: -# excludes: -# - glob(*.beta) -# includes: -# - glob(foo-*) +# package_filter = { +# 'excludes': 'glob(*.beta)', +# 'includes': 'glob(foo-*)', +# } # # This is an example of a single filter with one exclusion rule and one inclusion # rule. The filter will ignore all packages with versions ending in '.beta', # except for package 'foo' (which it will accept all versions of). A filter will -# only exclude a package iff that package matches at least one exclusion rule, +# only exclude a package if that package matches at least one exclusion rule, # and does not match any inclusion rule. # -# Here is another example, which excludes all beta packages, and all packages -# except 'foo' that are released after a certain date. Note that in order to -# use multiple filters, you need to supply a list of dicts, rather than just a -# dict: +# Here is another example, which excludes all beta and dev packages, and all +# packages except 'foo' that are released after a certain date. Note that in +# order to use multiple filters, you need to supply a list of dicts, rather +# than just a dict: # -# package_filter: -# - excludes: -# - glob(*.beta) -# - excludes: -# - after(1429830188) -# includes: -# - foo # same as range(foo), same as glob(foo-*) +# package_filter = [ +# { +# 'excludes': ['glob(*.beta)', 'glob(*.dev)'] +# }, +# { +# 'excludes': ['after(1429830188)'], +# 'includes': ['foo'], # same as range(foo), same as glob(foo-*) +# } +# ] # # This example shows why multiple filters are supported - with only one filter, -# it would not be possible to exclude all beta packages (including foo), but also -# exclude all packages after a certain date, except for foo. +# it would not be possible to exclude all beta and dev packages (including foo), +# but also exclude all packages after a certain date, except for foo. # # Following are examples of all the possible rules: # @@ -397,7 +398,7 @@ # --------------------|---------------------------------------------------- # glob(*.beta) | Matches packages matching the glob pattern. # regex(.*-\\.beta) | Matches packages matching re-style regex. -# requirement(foo-5+) | Matches packages within the given requirement. +# range(foo-5+) | Matches packages within the given requirement. # before(1429830188) | Matches packages released before the given date. # after(1429830188) | Matches packages released after the given date. # *.beta | Same as glob(*.beta) @@ -930,7 +931,7 @@ "pip_install": r"\1", "rez_install": r"\1", }, - # Fix for https://github.com/nerdvegas/rez/issues/821 + # Fix for #821 # Path in record | pip installed to | copy to rez destination # ------------------------|---------------------|-------------------------- # ../../lib/python/* | * | python/* @@ -1040,7 +1041,7 @@ ############################################################################### # Where Rez's own documentation is hosted -documentation_url = "https://github.com/nerdvegas/rez/wiki" +documentation_url = "https://github.com/AcademySoftwareFoundation/rez/wiki" ############################################################################### diff --git a/src/rez/serialise.py b/src/rez/serialise.py index 1a8d6a2c3..ae0efabfd 100644 --- a/src/rez/serialise.py +++ b/src/rez/serialise.py @@ -82,9 +82,7 @@ def open_file_for_write(filepath, mode=None): except: pass - # try atomic write, but that can sometimes fail. - # https://github.com/nerdvegas/rez/issues/858 - # + # try atomic write, but that can sometimes fail. See #858 written = False try: with atomic_write(filepath, overwrite=True, **encoding) as f: diff --git a/src/rez/tests/test_pip_utils.py b/src/rez/tests/test_pip_utils.py index d726d80ca..c5911fe06 100644 --- a/src/rez/tests/test_pip_utils.py +++ b/src/rez/tests/test_pip_utils.py @@ -149,6 +149,13 @@ def test_is_pure_python_package(self): self.assertTrue(rez.utils.pip.is_pure_python_package(dist)) + def test_is_entry_points_scripts_package(self): + """ + """ + dpath = rez.vendor.distlib.database.DistributionPath([self.dist_path]) + dist = list(dpath.get_distributions())[0] + self.assertFalse(rez.utils.pip.is_entry_points_scripts_package(dist)) + def test_convert_distlib_to_setuptools_wrong(self): """ """ diff --git a/src/rez/tests/test_rex.py b/src/rez/tests/test_rex.py index a31829cea..6ae2601a7 100644 --- a/src/rez/tests/test_rex.py +++ b/src/rez/tests/test_rex.py @@ -480,7 +480,7 @@ def test_intersects_request(self): request = RequirementsBinding([]) bar_on = intersects(request.get("foo.bar", "foo.bar-0"), "1") - self.assertFalse(bar_on) # workaround, see https://github.com/nerdvegas/rez/pull/1030 + self.assertFalse(bar_on) # workaround, see https://github.com/AcademySoftwareFoundation/rez/pull/1030 # request.get_range request = RequirementsBinding([Requirement("foo.bar-1")]) @@ -516,7 +516,7 @@ def test_intersects_ephemerals(self): ephemerals = EphemeralsBinding([]) bar_on = intersects(ephemerals.get("foo.bar", "foo.bar-0"), "1") - self.assertFalse(bar_on) # workaround, see https://github.com/nerdvegas/rez/pull/1030 + self.assertFalse(bar_on) # workaround, see https://github.com/AcademySoftwareFoundation/rez/pull/1030 ephemerals = EphemeralsBinding([]) self.assertRaises(RuntimeError, # no default diff --git a/src/rez/tests/test_shells.py b/src/rez/tests/test_shells.py index ba7ccc63b..f131b212e 100644 --- a/src/rez/tests/test_shells.py +++ b/src/rez/tests/test_shells.py @@ -231,7 +231,7 @@ def test_rcfile(self, shell): os.remove(path) # TODO fix cmd shell command string escape - # as per https://github.com/nerdvegas/rez/pull/1130, then remove this + # as per https://github.com/AcademySoftwareFoundation/rez/pull/1130, then remove this # exclusion # @per_available_shell(exclude=["cmd"]) diff --git a/src/rez/tests/util.py b/src/rez/tests/util.py index e6e614a50..b851e3c38 100644 --- a/src/rez/tests/util.py +++ b/src/rez/tests/util.py @@ -265,7 +265,7 @@ def wrapper(self, *args, **kwargs): else: self.skipTest( "Must be run via 'rez-selftest' tool, see " - "https://github.com/nerdvegas/rez/wiki/Installation#installation-script" + "https://github.com/AcademySoftwareFoundation/rez/wiki/Installation#installation-script" ) return wrapper return decorator diff --git a/src/rez/utils/_version.py b/src/rez/utils/_version.py index ea838b2f2..31f17a44a 100644 --- a/src/rez/utils/_version.py +++ b/src/rez/utils/_version.py @@ -3,4 +3,4 @@ # Update this value to version up Rez. Do not place anything else in this file. -_rez_version = "2.109.0" +_rez_version = "2.112.0" diff --git a/src/rez/utils/elf.py b/src/rez/utils/elf.py index 0d0fa3df3..e22bf8beb 100644 --- a/src/rez/utils/elf.py +++ b/src/rez/utils/elf.py @@ -38,7 +38,7 @@ def patch_rpaths(elfpath, rpaths): """Replace an elf's rpath header with those provided. """ - # this is a hack to get around https://github.com/nerdvegas/rez/issues/1074 + # this is a hack to get around #1074 # I actually hit a case where patchelf was installed as a rez suite tool, # causing '$ORIGIN' to be expanded early (to empty string). # TODO remove this hack when bug is fixed diff --git a/src/rez/utils/execution.py b/src/rez/utils/execution.py index 4a14325d8..a94e1def4 100644 --- a/src/rez/utils/execution.py +++ b/src/rez/utils/execution.py @@ -59,7 +59,7 @@ def __init__(self, args, **kwargs): try: file_no = sys.stdin.fileno() - # https://github.com/nerdvegas/rez/pull/966 + # https://github.com/AcademySoftwareFoundation/rez/pull/966 except (AttributeError, io.UnsupportedOperation): file_no = None @@ -140,7 +140,7 @@ def create_executable_script(filepath, body, program=None, py_script_mode=None): program = program or "python" py_script_mode = py_script_mode or config.create_executable_script_mode - # https://github.com/nerdvegas/rez/pull/968 + # https://github.com/AcademySoftwareFoundation/rez/pull/968 is_forwarding_script_on_windows = ( program == "_rez_fwd" and platform_.name == "windows" diff --git a/src/rez/utils/filesystem.py b/src/rez/utils/filesystem.py index acfdab66c..be2906b2d 100644 --- a/src/rez/utils/filesystem.py +++ b/src/rez/utils/filesystem.py @@ -330,7 +330,7 @@ def make_tmp_name(name): path, base = os.path.split(name) # there's a reason this isn't a hidden file: - # https://github.com/nerdvegas/rez/pull/1088 + # https://github.com/AcademySoftwareFoundation/rez/pull/1088 # tmp_base = "_tmp-%s-%s" % (base, uuid4().hex) diff --git a/src/rez/utils/pip.py b/src/rez/utils/pip.py index dec675ee3..beeeddca1 100644 --- a/src/rez/utils/pip.py +++ b/src/rez/utils/pip.py @@ -332,6 +332,22 @@ def is_pure_python_package(installed_dist): return (is_purelib == "true") +def is_entry_points_scripts_package(installed_dist): + """Determine if a dist has generated entry point scripts. + + Args: + installed_dist (`distlib.database.InstalledDistribution`): Distribution + to test. + + Returns: + bool: True if dist has generated entry point scripts + """ + setuptools_dist = convert_distlib_to_setuptools(installed_dist) + + entry_map = setuptools_dist.get_entry_map() + return bool(entry_map.get("console_scripts") or entry_map.get("gui_scripts")) + + def get_rez_requirements(installed_dist, python_version, name_casings=None): """Get requirements of the given dist, in rez-compatible format. @@ -383,7 +399,10 @@ def get_rez_requirements(installed_dist, python_version, name_casings=None): # assume package is platform- and arch- specific if it isn't pure python is_pure_python = is_pure_python_package(installed_dist) - if not is_pure_python: + # entry_points scripts are platform and arch specific executables generated by + # python build frontends during install + has_entry_points_scripts = is_entry_points_scripts_package(installed_dist) + if not is_pure_python or has_entry_points_scripts: sys_requires.update(["platform", "arch"]) # evaluate wrt python version, which may not be the current interpreter version diff --git a/src/rez/vendor/distlib/util.py b/src/rez/vendor/distlib/util.py index 64e63c57d..ee647d310 100644 --- a/src/rez/vendor/distlib/util.py +++ b/src/rez/vendor/distlib/util.py @@ -216,7 +216,7 @@ def get_versions(ver_remaining): break ver_remaining = ver_remaining[1:].lstrip() - # https://github.com/nerdvegas/rez/pull/1092 + # https://github.com/AcademySoftwareFoundation/rez/pull/1092 # Some packages have a trailing comma which would break the matching if not ver_remaining: break diff --git a/src/rez/vendor/pygraph/readwrite/dot.py b/src/rez/vendor/pygraph/readwrite/dot.py index 05b7fa983..9dfc1163f 100644 --- a/src/rez/vendor/pygraph/readwrite/dot.py +++ b/src/rez/vendor/pygraph/readwrite/dot.py @@ -61,9 +61,7 @@ def read(string): # This is awful, however there seems to be a major incompatibility with pygraph # and current pydot. Pydot now returns a list of graphs from a dot string. Rather # than possibly rewrite a big chunk of this lib, we'll just use the first graph. - # Since rez only makes single graphs anyway, this should suffice. - # - # https://github.com/nerdvegas/rez/issues/884 + # Since rez only makes single graphs anyway, this should suffice. See #884 # # if isinstance(dotG, list): diff --git a/src/rezgui/__init__.py b/src/rezgui/__init__.py index 45a40039c..44a5787ee 100644 --- a/src/rezgui/__init__.py +++ b/src/rezgui/__init__.py @@ -2,5 +2,5 @@ # Copyright Contributors to the Rez Project -organisation_name = "nerdvegas" +organisation_name = "AcademySoftwareFoundation" application_name = "rez-gui" diff --git a/src/rezgui/dialogs/AboutDialog.py b/src/rezgui/dialogs/AboutDialog.py index 7f27ffea0..e94cb311b 100644 --- a/src/rezgui/dialogs/AboutDialog.py +++ b/src/rezgui/dialogs/AboutDialog.py @@ -38,4 +38,4 @@ def sizeHint(self): def _goto_github(self): import webbrowser - webbrowser.open_new("https://github.com/nerdvegas/rez") + webbrowser.open_new("https://github.com/AcademySoftwareFoundation/rez") diff --git a/src/rezplugins/build_process/local.py b/src/rezplugins/build_process/local.py index 597770a44..4fa1b8277 100644 --- a/src/rezplugins/build_process/local.py +++ b/src/rezplugins/build_process/local.py @@ -455,8 +455,7 @@ def _run_tests(self, variant, run_on, package_install_path): # 'filesystem' package repo class, specifically for this case. # # Note: This adds the temp variant to the global resource cache, which is - # not really what we want. This doesn't cause problems however. See - # https://github.com/nerdvegas/rez/issues/809 + # not really what we want. This doesn't cause problems however. See #809 # variant.install( path=testing_repo_path, diff --git a/src/rezplugins/build_system/cmake.py b/src/rezplugins/build_system/cmake.py index 48fa99e0f..1ddcbf5dc 100644 --- a/src/rezplugins/build_system/cmake.py +++ b/src/rezplugins/build_system/cmake.py @@ -132,7 +132,7 @@ def _pr(s): # assemble cmake command cmd = [found_exe] - # cmd.append("-d") # see https://github.com/nerdvegas/rez/issues/1055 + # cmd.append("-d") # see #1055 cmd.append(self.working_dir) cmd += (self.settings.cmake_args or []) diff --git a/src/rezplugins/build_system/rezconfig b/src/rezplugins/build_system/rezconfig index 0301d8623..18ddea371 100644 --- a/src/rezplugins/build_system/rezconfig +++ b/src/rezplugins/build_system/rezconfig @@ -1,4 +1,4 @@ -# TODO remove this file in PR for https://github.com/nerdvegas/rez/issues/525, +# TODO remove this file in PR for https://github.com/AcademySoftwareFoundation/rez/issues/525, # it is unused cmake: diff --git a/src/rezplugins/package_repository/filesystem.py b/src/rezplugins/package_repository/filesystem.py index 77d9f54a0..9652f1e24 100644 --- a/src/rezplugins/package_repository/filesystem.py +++ b/src/rezplugins/package_repository/filesystem.py @@ -819,7 +819,7 @@ def get_resource_from_handle(self, resource_handle, verify_repo=True): # repo location even though they are the same path (different # mounts). We account for that here. # - # https://github.com/nerdvegas/rez/pull/957 + # https://github.com/AcademySoftwareFoundation/rez/pull/957 # if location != self.location: location = canonical_path(location, platform_) @@ -888,7 +888,7 @@ def on_variant_install_cancelled(self, variant_resource): .building file are created, so that we can safely delete cancelled variant dirs in the presence of multiple rez procs. - See https://github.com/nerdvegas/rez/issues/810 + See #810 """ family_path = os.path.join(self.location, variant_resource.name) self._delete_stale_build_tagfiles(family_path) diff --git a/src/rezplugins/shell/_utils/powershell_base.py b/src/rezplugins/shell/_utils/powershell_base.py index 21fd83265..c26028ada 100644 --- a/src/rezplugins/shell/_utils/powershell_base.py +++ b/src/rezplugins/shell/_utils/powershell_base.py @@ -275,10 +275,11 @@ def appendenv(self, key, value): # Be careful about ambiguous case in pwsh on Linux where pathsep is : # so that the ${ENV:VAR} form has to be used to not collide. + # The nested Get-ChildItem call is set to SilentlyContinue to prevent + # an exception of the Environment Variable is not set already self._addline( - 'Set-Item -Path "Env:{0}" -Value ((Get-ChildItem "Env:{0}").Value + "{1}{2}")'.format( - key, self.pathsep, value) - ) + 'Set-Item -Path "Env:{0}" -Value ((Get-ChildItem -ErrorAction SilentlyContinue "Env:{0}").Value + "{1}{2}")' + .format(key, os.path.pathsep, value)) def unsetenv(self, key): self._addline(r"Remove-Item Env:\%s" % key) diff --git a/src/rezplugins/shell/cmd.py b/src/rezplugins/shell/cmd.py index bc19415c4..1ffd6c0cf 100644 --- a/src/rezplugins/shell/cmd.py +++ b/src/rezplugins/shell/cmd.py @@ -356,7 +356,7 @@ def get_all_key_tokens(cls, key): @classmethod def join(cls, command): # TODO: This needs to be properly fixed, see other shell impls - # at https://github.com/nerdvegas/rez/pull/1130 + # at https://github.com/AcademySoftwareFoundation/rez/pull/1130 # # TODO: This may disappear in future [1] # [1] https://bugs.python.org/issue10838 diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index 8e1b66bec..5163ce4f8 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -96,7 +96,7 @@ def as_path(self, path): Returns: (str): Transformed file path. """ - return convert_path(path, mode='unix', force_fwdslash=True) + return path def as_shell_path(self, path): """Return the given path as a shell path. diff --git a/src/support/shotgun_toolkit/README.md b/src/support/shotgun_toolkit/README.md index 2374bbc1c..806793d21 100755 --- a/src/support/shotgun_toolkit/README.md +++ b/src/support/shotgun_toolkit/README.md @@ -2,9 +2,9 @@ ...but where did it all go? -After `nerdvegas/rez` issues [822] and PR [823], the Shotgun hooks have +After `AcademySoftwareFoundation/rez` issues [822] and PR [823], the Shotgun hooks have been moved to https://github.com/nerdvegas/rez-shotgun -[822]: https://github.com/nerdvegas/rez/issues/822 -[823]: https://github.com/nerdvegas/rez/pull/823 +[822]: https://github.com/AcademySoftwareFoundation/rez/issues/822 +[823]: https://github.com/AcademySoftwareFoundation/rez/pull/823 diff --git a/wiki/README.md b/wiki/README.md index eee7015a0..69aeab1f8 100644 --- a/wiki/README.md +++ b/wiki/README.md @@ -1,7 +1,7 @@ # rez-wiki This directory holds the content used to produce the Rez Wiki documentation -found [here](https://github.com/nerdvegas/rez/wiki). The wiki is updated by the +found [here](https://github.com/AcademySoftwareFoundation/rez/wiki). The wiki is updated by the `Wiki` Github workflow, on release. You should include relevant wiki updates with your code PRs. diff --git a/wiki/pages/Building-Packages.md b/wiki/pages/Building-Packages.md index 48d61386e..3bf365659 100644 --- a/wiki/pages/Building-Packages.md +++ b/wiki/pages/Building-Packages.md @@ -76,9 +76,10 @@ build environment, but the details of the build itself are left open for the use Having said that, *cmake* has been supported by rez for some time, and rez comes with a decent amount of utility code to manage cmake builds. -When a rez environment is configured, each package's [commands](Package-Definition-Guide#commands) -section configures the environment. When a build is occurring, a special variable -[building](Package-Commands#building) is set to *True*. Your packages should use this +When a rez environment is configured, each required package's +[commands](Package-Definition-Guide#commands) section configures the environment for the building +package to use. When a build is occurring, a special variable +[building](Package-Commands#building) is set to *True*. Your required packages should use this variable to communicate build information to the package being built. For example, our *boost* package's commands might look like so: @@ -88,6 +89,11 @@ For example, our *boost* package's commands might look like so: # there is a 'FindBoost.cmake' file in this dir.. env.CMAKE_MODULE_PATH.append("{root}/cmake") +> [[media/icons/warning.png]] Note that _commands_ is never executed for the package actually +being built - +> if you want to run commands in that case, you can use +[pre_build_commands](Package-Commands#pre-build-commands) instead. + A (very simple) *FindBoost.cmake* file might look like this: set(Boost_INCLUDE_DIRS $ENV{REZ_BOOST_ROOT}/include) diff --git a/wiki/pages/Environment-Variables.md b/wiki/pages/Environment-Variables.md index ab53dd670..59327f3c4 100644 --- a/wiki/pages/Environment-Variables.md +++ b/wiki/pages/Environment-Variables.md @@ -12,6 +12,8 @@ These are variables that rez generates within a resolved environment (a "context * **REZ_USED_PACKAGES_PATH** - The package searchpath used for this resolve. * **REZ_USED_RESOLVE** - The list of resolved packages, eg *"platform-linux utils-1.2.3"*. * **REZ_USED_EPH_RESOLVE** - The list of resolved ephemerals, eg *".foo.cli-1 .debugging-0"*. +* **REZ_USED_LOCAL_RESOLVE** - The list of resolved local packages, eg *"utils-1.2.3 maya_utils-1.3+"*. + Packages listed here will always be a subset of the packages in *REZ_USED_RESOLVE*. * **REZ_USED_REQUEST** - The environment request string, eg *"maya-2017 maya_utils-1.3+"*. Does not include implicit packages. * **REZ_USED_REQUESTED_TIMESTAMP** - The epoch time of this resolved environment, diff --git a/wiki/pages/Managing-Packages.md b/wiki/pages/Managing-Packages.md index 87ea38294..3a2d071c0 100644 --- a/wiki/pages/Managing-Packages.md +++ b/wiki/pages/Managing-Packages.md @@ -28,6 +28,9 @@ Via API: 1 # -1: pkg not found; 0: pkg already ignored; 1: pkg ignored ``` +Both of these options generate a *.ignore\* file (e.g. +*.ignore3.1.2*) next to the package version directory. + You can also do the reverse (ie unignore a package). Use the `-u` option of `rez-pkg-ignore`, or the `unignore_package` function on the package repository object. @@ -161,14 +164,18 @@ Via API: >>> remove_package("python", "3.7.4", "/packages") ``` +During the removal process, package versions will first be ignored so that +partially-deleted versions are not visible. + It can be useful to ignore packages that you don't want to use anymore, and actually remove them at a later date. This gives you a safety buffer in case current runtimes are using the package - they won't be affected if the package is ignored, but could break if it is removed. To facilitate this workflow, `rez-rm` lets you remove all packages that have -been ignored for longer than N days. Here we remove all packages that have been -ignored for 30 days or longer: +been ignored for longer than N days (using the timestamp of the +*.ignore\* file). Here we remove all packages that have been ignored +for 30 days or longer: ``` ]$ rez-rm --ignored-since=30 -v diff --git a/wiki/pages/Package-Commands.md b/wiki/pages/Package-Commands.md index 79aa1618a..914a2f1b3 100644 --- a/wiki/pages/Package-Commands.md +++ b/wiki/pages/Package-Commands.md @@ -290,8 +290,10 @@ Do not check this variable to detect if an installation is occurring - see `buil env.FOO_INCLUDE_PATH = "{root}/include" This boolean variable is *True* if a build is occurring (typically done via the *rez-build* tool), -and *False* otherwise. Typically a package will use this variable to set environment variables that -are only useful during a build - C++ header include paths are a good example. +and *False* otherwise, however, the `commands` block is only executed when the package is brought +into a resolved environment, so this is not used when the package itself is building. Typically a +package will use this variable to set environment variables that are only useful during when other +packages are being built - C++ header include paths are a good example. ### command *Function* diff --git a/wiki/pages/Package-Definition-Guide.md b/wiki/pages/Package-Definition-Guide.md index ae4a76fa2..0fff5a9e1 100644 --- a/wiki/pages/Package-Definition-Guide.md +++ b/wiki/pages/Package-Definition-Guide.md @@ -546,9 +546,10 @@ enabled. If not provided, this is determined from the global config setting [def env.PYTHONPATH.append("{root}/python") env.PATH.append("{root}/bin") -This is a block of python code which tells rez how to update an environment so that this package can -be used. There is a python API provided (see [here](Package-Commands) for more details) that lets -you do things such as: +This is a block of python code which tells rez how to update an environment so that this package +can be used. It is executed when the package is brought into a rez environment, either by explicit +request or by another package's requirements. There is a python API provided (see +[here](Package-Commands) for more details) that lets you do things such as: * set, unset, prepend and append environment variables; * create aliases; From 8dfde247cefa0e02700692ccbb05f80db8a9fffb Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 24 Nov 2022 10:18:07 -0800 Subject: [PATCH 40/44] Add disable_normalization flag to config Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/config.py | 1 + src/rez/rezconfig.py | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/src/rez/config.py b/src/rez/config.py index b9258d752..a2ab31bd9 100644 --- a/src/rez/config.py +++ b/src/rez/config.py @@ -346,6 +346,7 @@ def _parse_env_var(self, value): "context_tracking_context_fields": StrList, "pathed_env_vars": StrList, "shell_pathed_env_vars": OptionalDict, + "disable_normalization": OptionalBool, "prompt_release_message": Bool, "critical_styles": OptionalStrList, "error_styles": OptionalStrList, diff --git a/src/rez/rezconfig.py b/src/rez/rezconfig.py index 070fb26cf..f58653cd5 100644 --- a/src/rez/rezconfig.py +++ b/src/rez/rezconfig.py @@ -541,6 +541,12 @@ "gitbash": ["PYTHONPATH"] } +# If set to True, completely disables any path transformations that would occur +# as a result of both the shell and the settings in "pathed_env_vars" and +# "shell_pathed_env_vars". This is meant to aid in debugging and should be +# False unless needed. +disable_normalization = False + # Defines what suites on $PATH stay visible when a new rez environment is resolved. # Possible values are: # - "never": Don"t attempt to keep any suites visible in a new env From e81756c162d3dff69c7017d8265dd539cac0b32c Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 24 Nov 2022 10:18:31 -0800 Subject: [PATCH 41/44] Add disable normalization test Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/tests/test_shells.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/rez/tests/test_shells.py b/src/rez/tests/test_shells.py index f131b212e..0fbb5a474 100644 --- a/src/rez/tests/test_shells.py +++ b/src/rez/tests/test_shells.py @@ -504,6 +504,17 @@ def _make_alias(ex): out, _ = p.communicate() self.assertEqual(0, p.returncode) + @per_available_shell() + def test_disabled_path_normalization(self, shell): + """Test disabling path normalization via the config.""" + config.override('disable_normalization', True) + + test_path = r'C:\foo\bar\spam' + normalized_path = shell.normalize_path(test_path) + expected_path = r'C:\foo\bar\spam' + + self.assertEqual(normalized_path, expected_path) + if __name__ == '__main__': unittest.main() From efc95f40d514ebbd1f521872fd385ac1fef15ada Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 24 Nov 2022 10:18:50 -0800 Subject: [PATCH 42/44] Create shell utils tests Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rez/tests/test_shell_utils.py | 51 +++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 src/rez/tests/test_shell_utils.py diff --git a/src/rez/tests/test_shell_utils.py b/src/rez/tests/test_shell_utils.py new file mode 100644 index 000000000..63bd6534b --- /dev/null +++ b/src/rez/tests/test_shell_utils.py @@ -0,0 +1,51 @@ +# SPDX-License-Identifier: Apache-2.0 +# Copyright Contributors to the Rez Project + +"""Tests for shell utils.""" + +from rez.tests.util import TestBase +from rezplugins.shell._utils.windows import convert_path + + +class ShellUtils(TestBase): + """Test shell util functions.""" + + def test_path_conversion_windows(self): + """Test the path conversion to windows style.""" + test_path = r'C:\foo/bar/spam' + converted_path = convert_path(test_path, 'windows') + expected_path = r'C:\foo\bar\spam' + + self.assertEqual(converted_path, expected_path) + + def test_path_conversion_unix(self): + """Test the path conversion to unix style.""" + test_path = r'C:\foo\bar\spam' + converted_path = convert_path(test_path, 'unix') + expected_path = r'/c/foo/bar/spam' + + self.assertEqual(converted_path, expected_path) + + def test_path_conversion_mixed(self): + """Test the path conversion to mixed style.""" + test_path = r'C:\foo\bar\spam' + converted_path = convert_path(test_path, 'unix') + expected_path = r'/c/foo/bar/spam' + + self.assertEqual(converted_path, expected_path) + + def test_path_conversion_unix_forced_fwdslash(self): + """Test the path conversion to unix style.""" + test_path = r'C:\foo\bar\spam' + converted_path = convert_path(test_path, 'unix', force_fwdslash=True) + expected_path = r'/c/foo/bar/spam' + + self.assertEqual(converted_path, expected_path) + + def test_path_conversion_mixed_forced_fwdslash(self): + """Test the path conversion to mixed style.""" + test_path = r'C:\foo\bar\spam' + converted_path = convert_path(test_path, 'mixed', force_fwdslash=True) + expected_path = r'C:/foo/bar/spam' + + self.assertEqual(converted_path, expected_path) From 8844f69fb428f99e10d931538e79adf954ee738a Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 24 Nov 2022 10:57:16 -0800 Subject: [PATCH 43/44] Add logic for skipping path normalization Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- src/rezplugins/shell/_utils/powershell_base.py | 4 ++++ src/rezplugins/shell/cmd.py | 11 +++++++++++ src/rezplugins/shell/gitbash.py | 10 ++++++++++ 3 files changed, 25 insertions(+) diff --git a/src/rezplugins/shell/_utils/powershell_base.py b/src/rezplugins/shell/_utils/powershell_base.py index c26028ada..a72a3892d 100644 --- a/src/rezplugins/shell/_utils/powershell_base.py +++ b/src/rezplugins/shell/_utils/powershell_base.py @@ -245,6 +245,10 @@ def escape_string(self, value, is_path=False, is_shell_path=False): return result def normalize_path(self, path): + # Prevent path conversion if normalization is disabled in the config. + if config.disable_normalization: + return path + if platform_.name == "windows": return convert_path(path, 'windows') else: diff --git a/src/rezplugins/shell/cmd.py b/src/rezplugins/shell/cmd.py index 1ffd6c0cf..8d9b5f7ec 100644 --- a/src/rezplugins/shell/cmd.py +++ b/src/rezplugins/shell/cmd.py @@ -261,6 +261,10 @@ def as_path(self, path): Returns: (str): Transformed file path. """ + # Prevent path conversion if normalization is disabled in the config. + if config.disable_normalization: + return path + return self.normalize_path(path) def as_shell_path(self, path): @@ -274,6 +278,10 @@ def as_shell_path(self, path): Returns: (str): Transformed file path. """ + # Prevent path conversion if normalization is disabled in the config. + if config.disable_normalization: + return path + return self.normalize_path(path) def normalize_path(self, path): @@ -289,6 +297,9 @@ def normalize_path(self, path): (str): Normalized file path. """ return convert_path(path, 'windows') + # Prevent path conversion if normalization is disabled in the config. + if config.disable_normalization: + return path def _saferefenv(self, key): pass diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index 5163ce4f8..9d1c323df 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -96,6 +96,10 @@ def as_path(self, path): Returns: (str): Transformed file path. """ + # Prevent path conversion if normalization is disabled in the config. + if config.disable_normalization: + return path + return path def as_shell_path(self, path): @@ -109,6 +113,9 @@ def as_shell_path(self, path): (str): Transformed file path. """ return convert_path(path, mode='mixed', force_fwdslash=True) + # Prevent path conversion if normalization is disabled in the config. + if config.disable_normalization: + return path def normalize_path(self, path): """Normalize the path to fit the environment. @@ -122,6 +129,9 @@ def normalize_path(self, path): (str): Normalized file path. """ return convert_path(path, mode='unix', force_fwdslash=True) + # Prevent path conversion if normalization is disabled in the config. + if config.disable_normalization: + return path def normalize_paths(self, value): """ From 6a4edb13e61d52a2d8df2437ca21598ef85e291d Mon Sep 17 00:00:00 2001 From: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> Date: Thu, 24 Nov 2022 11:00:50 -0800 Subject: [PATCH 44/44] Add debugging output to path conversion Add path conversion info into file. Signed-off-by: amorphousWaste <20346603+amorphousWaste@users.noreply.github.com> --- .../shell/_utils/powershell_base.py | 46 ++++++++++++++++--- src/rezplugins/shell/_utils/windows.py | 15 +++--- src/rezplugins/shell/cmd.py | 18 ++++++-- src/rezplugins/shell/csh.py | 15 +++++- src/rezplugins/shell/gitbash.py | 16 ++++++- src/rezplugins/shell/sh.py | 14 +++++- 6 files changed, 102 insertions(+), 22 deletions(-) diff --git a/src/rezplugins/shell/_utils/powershell_base.py b/src/rezplugins/shell/_utils/powershell_base.py index a72a3892d..051d74d49 100644 --- a/src/rezplugins/shell/_utils/powershell_base.py +++ b/src/rezplugins/shell/_utils/powershell_base.py @@ -13,6 +13,7 @@ from rez.system import system from rez.utils.platform_ import platform_ from rez.utils.execution import Popen +from rez.utils.logging_ import print_debug from rez.util import shlex_join from .windows import convert_path @@ -250,7 +251,16 @@ def normalize_path(self, path): return path if platform_.name == "windows": - return convert_path(path, 'windows') + converted_path = convert_path(path, 'windows') + if path != converted_path: + print_debug( + 'Path converted: {} -> {}'.format(path, converted_path) + ) + self._addline( + '# Path converted: {} -> {}'.format(path, converted_path) + ) + return converted_path + else: return path @@ -261,21 +271,45 @@ def shebang(self): pass def setenv(self, key, value): - value = self.escape_string(value, is_path=self._is_pathed_key(key)) - self._addline('Set-Item -Path "Env:{0}" -Value "{1}"'.format(key, value)) + is_path = self._is_pathed_key(key) + new_value = self.escape_string(value, is_path=is_path) + + if is_path and value != new_value: + print_debug( + 'Path changed: {} -> {}'.format(value, new_value) + ) + self._addline( + '# Path value changed: {} -> {}'.format(value, new_value) + ) + + self._addline( + 'Set-Item -Path "Env:{0}" -Value "{1}"'.format(key, new_value) + ) def prependenv(self, key, value): - value = self.escape_string(value, is_path=self._is_pathed_key(key)) + is_path = self._is_pathed_key(key) + new_value = self.escape_string(value, is_path=is_path) + + if is_path and value != new_value: + self._addline( + '# Path value changed: {} -> {}'.format(value, new_value) + ) # Be careful about ambiguous case in pwsh on Linux where pathsep is : # so that the ${ENV:VAR} form has to be used to not collide. self._addline( 'Set-Item -Path "Env:{0}" -Value ("{1}{2}" + (Get-ChildItem "Env:{0}").Value)'.format( - key, value, self.pathsep) + key, new_value, self.pathsep) ) def appendenv(self, key, value): - value = self.escape_string(value, is_path=self._is_pathed_key(key)) + is_path = self._is_pathed_key(key) + new_value = self.escape_string(value, is_path=is_path) + + if is_path and value != new_value: + self._addline( + '# Path value changed: {} -> {}'.format(value, new_value) + ) # Be careful about ambiguous case in pwsh on Linux where pathsep is : # so that the ${ENV:VAR} form has to be used to not collide. diff --git a/src/rezplugins/shell/_utils/windows.py b/src/rezplugins/shell/_utils/windows.py index fb70f3447..329cfeee1 100644 --- a/src/rezplugins/shell/_utils/windows.py +++ b/src/rezplugins/shell/_utils/windows.py @@ -6,7 +6,7 @@ import re import subprocess from rez.utils.execution import Popen - +from rez.utils.logging_ import print_debug _drive_start_regex = re.compile(r"^([A-Za-z]):\\") _drive_regex_mixed = re.compile(r"([a-z]):/") @@ -38,20 +38,23 @@ def _repl(m): # Convert the path based on mode. if mode == 'mixed': - path = to_mixed_path(path) + new_path = to_mixed_path(path) elif mode == 'windows': - path = to_windows_path(path) + new_path = to_windows_path(path) else: - path = to_posix_path(path) + new_path = to_posix_path(path) # NOTE: This would be normal cygpath behavior, but the broader # implications of enabling it need extensive testing. # Leaving it up to the user for now. if force_fwdslash: # Backslash -> fwdslash - path = path.replace('\\', '/') + new_path = new_path.replace('\\', '/') - return path + if path != new_path: + print_debug('Path converted: {} -> {}'.format(path, new_path)) + + return new_path def to_posix_path(path): diff --git a/src/rezplugins/shell/cmd.py b/src/rezplugins/shell/cmd.py index 8d9b5f7ec..a842bb57a 100644 --- a/src/rezplugins/shell/cmd.py +++ b/src/rezplugins/shell/cmd.py @@ -5,7 +5,6 @@ """ Windows Command Prompt (DOS) shell. """ -from lib2to3.pytree import convert from rez.config import config from rez.rex import RexExecutor, expandable, OutputStyle, EscapedString from rez.shells import Shell @@ -296,11 +295,21 @@ def normalize_path(self, path): Returns: (str): Normalized file path. """ - return convert_path(path, 'windows') # Prevent path conversion if normalization is disabled in the config. if config.disable_normalization: return path + converted_path = convert_path(path, 'windows') + + if path != converted_path: + self._addline( + 'REM Path converted: {} -> {}'.format( + path, converted_path + ) + ) + + return converted_path + def _saferefenv(self, key): pass @@ -308,12 +317,13 @@ def shebang(self): pass def setenv(self, key, value): - value = self.escape_string( + new_value = self.escape_string( value, is_path=self._is_pathed_key(key), is_shell_path=self._is_shell_pathed_key(key), ) - self._addline('set %s=%s' % (key, value)) + + self._addline('set %s=%s' % (key, new_value)) def unsetenv(self, key): self._addline("set %s=" % key) diff --git a/src/rezplugins/shell/csh.py b/src/rezplugins/shell/csh.py index 74216921f..e7f8efc3b 100644 --- a/src/rezplugins/shell/csh.py +++ b/src/rezplugins/shell/csh.py @@ -14,6 +14,7 @@ from rez.util import shlex_join from rez.utils.execution import Popen from rez.utils.platform_ import platform_ +from rez.utils.logging_ import print_debug from rez.shells import UnixShell from rez.rex import EscapedString @@ -159,8 +160,18 @@ def _saferefenv(self, key): self._addline("if (!($?%s)) setenv %s" % (key, key)) def setenv(self, key, value): - value = self.escape_string(value, is_path=self._is_pathed_key(key)) - self._addline('setenv %s %s' % (key, value)) + is_path = self._is_pathed_key(key) or self._is_shell_pathed_key(key) + new_value = self.escape_string(value, is_path=self._is_pathed_key(key)) + + if is_path and value != new_value: + print_debug( + 'Path changed: {} -> {}'.format(value, new_value) + ) + self._addline( + '# Path value changed: {} -> {}'.format(value, new_value) + ) + + self._addline('setenv %s %s' % (key, new_value)) def unsetenv(self, key): self._addline("unsetenv %s" % key) diff --git a/src/rezplugins/shell/gitbash.py b/src/rezplugins/shell/gitbash.py index 9d1c323df..9fe6d39c0 100644 --- a/src/rezplugins/shell/gitbash.py +++ b/src/rezplugins/shell/gitbash.py @@ -112,11 +112,17 @@ def as_shell_path(self, path): Returns: (str): Transformed file path. """ - return convert_path(path, mode='mixed', force_fwdslash=True) # Prevent path conversion if normalization is disabled in the config. if config.disable_normalization: return path + converted_path = convert_path(path, mode='mixed', force_fwdslash=True) + if path != converted_path: + self._addline( + '# Path converted: {} -> {}'.format(path, converted_path) + ) + return converted_path + def normalize_path(self, path): """Normalize the path to fit the environment. For example, POSIX paths, Windows path, etc. If no transformation is @@ -128,11 +134,17 @@ def normalize_path(self, path): Returns: (str): Normalized file path. """ - return convert_path(path, mode='unix', force_fwdslash=True) # Prevent path conversion if normalization is disabled in the config. if config.disable_normalization: return path + converted_path = convert_path(path, mode='unix', force_fwdslash=True) + if path != converted_path: + self._addline( + '# Path converted: {} -> {}'.format(path, converted_path) + ) + return converted_path + def normalize_paths(self, value): """ This is a bit tricky in the case of gitbash. The problem we hit is that diff --git a/src/rezplugins/shell/sh.py b/src/rezplugins/shell/sh.py index 6372b6dc8..3267acf9f 100644 --- a/src/rezplugins/shell/sh.py +++ b/src/rezplugins/shell/sh.py @@ -12,6 +12,7 @@ from rez.config import config from rez.utils.execution import Popen from rez.utils.platform_ import platform_ +from rez.utils.logging_ import print_debug from rez.shells import UnixShell from rez.rex import EscapedString @@ -105,15 +106,24 @@ def _bind_interactive_rez(self): def setenv(self, key, value): is_implicit = key == 'REZ_USED_IMPLICIT_PACKAGES' + is_path = self._is_pathed_key(key) or self._is_shell_pathed_key(key) - value = self.escape_string( + new_value = self.escape_string( value, is_path=self._is_pathed_key(key), is_shell_path=self._is_shell_pathed_key(key), is_implicit=is_implicit, ) - self._addline('export %s=%s' % (key, value)) + if is_path and value != new_value: + print_debug( + 'Path value changed: {} -> {}'.format(value, new_value) + ) + self._addline( + '# Path value changed: {} -> {}'.format(value, new_value) + ) + + self._addline('export %s=%s' % (key, new_value)) def unsetenv(self, key): self._addline("unset %s" % key)