···5152- The `power.ups` module now generates `upsd.conf`, `upsd.users` and `upsmon.conf` automatically from a set of new configuration options. This breaks compatibility with existing `power.ups` setups where these files were created manually. Back up these files before upgrading NixOS.
5354-- `k9s` was updated to v0.30. There have been various breaking changes in the config file format,
55- check out the changelog of [v0.29](https://github.com/derailed/k9s/releases/tag/v0.29.0) and
56- [v0.30](https://github.com/derailed/k9s/releases/tag/v0.30.0) for details. It is recommended
057 to back up your current configuration and let k9s recreate the new base configuration.
5859- `idris2` was updated to v0.7.0. This version introduces breaking changes. Check out the [changelog](https://github.com/idris-lang/Idris2/blob/v0.7.0/CHANGELOG.md#v070) for details.
···5152- The `power.ups` module now generates `upsd.conf`, `upsd.users` and `upsmon.conf` automatically from a set of new configuration options. This breaks compatibility with existing `power.ups` setups where these files were created manually. Back up these files before upgrading NixOS.
5354+- `k9s` was updated to v0.31. There have been various breaking changes in the config file format,
55+ check out the changelog of [v0.29](https://github.com/derailed/k9s/releases/tag/v0.29.0),
56+ [v0.30](https://github.com/derailed/k9s/releases/tag/v0.30.0) and
57+ [v0.31](https://github.com/derailed/k9s/releases/tag/v0.31.0) for details. It is recommended
58 to back up your current configuration and let k9s recreate the new base configuration.
5960- `idris2` was updated to v0.7.0. This version introduces breaking changes. Check out the [changelog](https://github.com/idris-lang/Idris2/blob/v0.7.0/CHANGELOG.md#v070) for details.
···210 return (max(sorted(versions))).raw_version
211212213-def _get_latest_version_pypi(package, extension, current_version, target):
214 """Get latest version and hash from PyPI."""
215 url = "{}/{}/json".format(INDEX, package)
216 json = _fetch_page(url)
···234 return version, sha256, None
235236237-def _get_latest_version_github(package, extension, current_version, target):
238 def strip_prefix(tag):
239 return re.sub("^[^0-9]*", "", tag)
240···242 matches = re.findall(r"^([^0-9]*)", string)
243 return next(iter(matches), "")
244245- # when invoked as an updateScript, UPDATE_NIX_ATTR_PATH will be set
246- # this allows us to work with packages which live outside of python-modules
247- attr_path = os.environ.get("UPDATE_NIX_ATTR_PATH", f"python3Packages.{package}")
248 try:
249 homepage = subprocess.check_output(
250 [
···421 # Attempt a fetch using each pname, e.g. backports-zoneinfo vs backports.zoneinfo
422 successful_fetch = False
423 for pname in pnames:
424- if BULK_UPDATE and _skip_bulk_update(f"python3Packages.{pname}"):
0000425 raise ValueError(f"Bulk update skipped for {pname}")
426- elif _get_attr_value(f"python3Packages.{pname}.cargoDeps") is not None:
427 raise ValueError(f"Cargo dependencies are unsupported, skipping {pname}")
428 try:
429 new_version, new_sha256, prefix = FETCHERS[fetcher](
430- pname, extension, version, target
431 )
432 successful_fetch = True
433 break
···452 sri_hash = _hash_to_sri("sha256", new_sha256)
453454 # retrieve the old output hash for a more precise match
455- if old_hash := _get_attr_value(f"python3Packages.{pname}.src.outputHash"):
456 # fetchers can specify a sha256, or a sri hash
457 try:
458 text = _replace_value("hash", sri_hash, text, old_hash)
···210 return (max(sorted(versions))).raw_version
211212213+def _get_latest_version_pypi(attr_path, package, extension, current_version, target):
214 """Get latest version and hash from PyPI."""
215 url = "{}/{}/json".format(INDEX, package)
216 json = _fetch_page(url)
···234 return version, sha256, None
235236237+def _get_latest_version_github(attr_path, package, extension, current_version, target):
238 def strip_prefix(tag):
239 return re.sub("^[^0-9]*", "", tag)
240···242 matches = re.findall(r"^([^0-9]*)", string)
243 return next(iter(matches), "")
244000245 try:
246 homepage = subprocess.check_output(
247 [
···418 # Attempt a fetch using each pname, e.g. backports-zoneinfo vs backports.zoneinfo
419 successful_fetch = False
420 for pname in pnames:
421+ # when invoked as an updateScript, UPDATE_NIX_ATTR_PATH will be set
422+ # this allows us to work with packages which live outside of python-modules
423+ attr_path = os.environ.get("UPDATE_NIX_ATTR_PATH", f"python3Packages.{pname}")
424+425+ if BULK_UPDATE and _skip_bulk_update(attr_path):
426 raise ValueError(f"Bulk update skipped for {pname}")
427+ elif _get_attr_value(f"{attr_path}.cargoDeps") is not None:
428 raise ValueError(f"Cargo dependencies are unsupported, skipping {pname}")
429 try:
430 new_version, new_sha256, prefix = FETCHERS[fetcher](
431+ attr_path, pname, extension, version, target
432 )
433 successful_fetch = True
434 break
···453 sri_hash = _hash_to_sri("sha256", new_sha256)
454455 # retrieve the old output hash for a more precise match
456+ if old_hash := _get_attr_value(f"{attr_path}.src.outputHash"):
457 # fetchers can specify a sha256, or a sri hash
458 try:
459 text = _replace_value("hash", sri_hash, text, old_hash)
···2, autoreconfHook
3, fetchPypi
4, buildPythonPackage
5-, cython
6, pariSupport ? true, pari # for interfacing with the PARI/GP signal handler
7}:
8···34 '';
3536 propagatedBuildInputs = [
37- cython
38 ] ++ lib.optionals pariSupport [
39 # When cysignals is built with pari, including cysignals into the
40 # buildInputs of another python package will cause cython to link against
···2, autoreconfHook
3, fetchPypi
4, buildPythonPackage
5+, cython_3
6, pariSupport ? true, pari # for interfacing with the PARI/GP signal handler
7}:
8···34 '';
3536 propagatedBuildInputs = [
37+ cython_3
38 ] ++ lib.optionals pariSupport [
39 # When cysignals is built with pari, including cysignals into the
40 # buildInputs of another python package will cause cython to link against