xax 0.4.0__py3-none-any.whl → 0.4.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
xax/__init__.py CHANGED
@@ -12,7 +12,7 @@ and running the update script:
12
12
  python -m scripts.update_api --inplace
13
13
  """
14
14
 
15
- __version__ = "0.4.0"
15
+ __version__ = "0.4.2"
16
16
 
17
17
  # This list shouldn't be modified by hand; instead, run the update script.
18
18
  __all__ = [
@@ -171,6 +171,7 @@ __all__ = [
171
171
  "uncolored",
172
172
  "wrapped",
173
173
  "FrozenDict",
174
+ "freeze_dict",
174
175
  "HashableArray",
175
176
  "hashable_array",
176
177
  ]
@@ -371,6 +372,7 @@ NAME_MAP: dict[str, str] = {
371
372
  "uncolored": "utils.text",
372
373
  "wrapped": "utils.text",
373
374
  "FrozenDict": "utils.types.frozen_dict",
375
+ "freeze_dict": "utils.types.frozen_dict",
374
376
  "HashableArray": "utils.types.hashable_array",
375
377
  "hashable_array": "utils.types.hashable_array",
376
378
  }
@@ -572,7 +574,7 @@ if IMPORT_ALL or TYPE_CHECKING:
572
574
  uncolored,
573
575
  wrapped,
574
576
  )
575
- from xax.utils.types.frozen_dict import FrozenDict
577
+ from xax.utils.types.frozen_dict import FrozenDict, freeze_dict
576
578
  from xax.utils.types.hashable_array import HashableArray, hashable_array
577
579
 
578
580
  del TYPE_CHECKING, IMPORT_ALL
xax/utils/experiments.py CHANGED
@@ -5,6 +5,7 @@ import datetime
5
5
  import enum
6
6
  import functools
7
7
  import hashlib
8
+ import importlib.metadata
8
9
  import inspect
9
10
  import itertools
10
11
  import json
@@ -29,7 +30,6 @@ from typing import Any, Iterator, Mapping, Self, Sequence, TypeVar, cast
29
30
  from urllib.parse import urlparse
30
31
 
31
32
  import git
32
- import pkg_resources
33
33
  import requests
34
34
  from jaxtyping import Array
35
35
  from omegaconf import MISSING, DictConfig, ListConfig, OmegaConf
@@ -464,7 +464,7 @@ def get_packages_with_versions() -> str:
464
464
  Returns:
465
465
  A dictionary of packages and their versions.
466
466
  """
467
- packages = [(pkg.key, pkg.version) for pkg in pkg_resources.working_set]
467
+ packages = [(dist.metadata["Name"], dist.version) for dist in importlib.metadata.distributions()]
468
468
  return "\n".join([f"{key}=={version}" for key, version in sorted(packages)])
469
469
 
470
470
 
@@ -146,3 +146,7 @@ def unfreeze(x: FrozenDict[K, V] | dict[str, Any]) -> dict[Any, Any]: # noqa: A
146
146
  return ys
147
147
  else:
148
148
  return x
149
+
150
+
151
+ def freeze_dict(x: Mapping[K, V]) -> FrozenDict[K, V]:
152
+ return FrozenDict(x)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: xax
3
- Version: 0.4.0
3
+ Version: 0.4.2
4
4
  Summary: A library for fast Jax experimentation
5
5
  Home-page: https://github.com/kscalelabs/xax
6
6
  Author: Benjamin Bolte
@@ -1,4 +1,4 @@
1
- xax/__init__.py,sha256=50NFQGS6aOMcJQAJ4U1mLpvMRtWc8Kbgtv4zIMWodfc,17164
1
+ xax/__init__.py,sha256=NsrSPe__5x39x_Csd05Sqt4VbUGsIs9JC48h4gB3T1o,17242
2
2
  xax/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
3
  xax/requirements-dev.txt,sha256=qkscNkFzWd1S5fump-AKH53rR65v2x5FmboFdy_kKvs,128
4
4
  xax/requirements.txt,sha256=6qY-84e-sTmlfJNrSjwONQKqzAn5h8G_oGIhnhmfSr4,302
@@ -47,7 +47,7 @@ xax/task/mixins/supervised.py,sha256=IxAh-ywvjDNoqXtzHwv2WpVsXFOX45SZjyF3qpbN-2k
47
47
  xax/task/mixins/train.py,sha256=0loO44W6vVjP5usWvN0D1TgYTJ7N3PDevR7brmw3ymQ,20493
48
48
  xax/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
49
  xax/utils/debugging.py,sha256=85JYIdnzLnvXsuli-4YHei_3tE3DnX3rmDSARKW2u1M,2192
50
- xax/utils/experiments.py,sha256=5k5hPYSaVjzoR_nm2Q3DAHMMYi3Bcp3N3PAQbwZq7Gg,29830
50
+ xax/utils/experiments.py,sha256=g0_blACVdM86kgX8YU86FI-ZEWC0piozDpb6xJR5xn4,29860
51
51
  xax/utils/jax.py,sha256=6cP95-rcjkRt1fefkZWJQhJhH0uUYWJB3w4NP1-aDp0,10136
52
52
  xax/utils/jaxpr.py,sha256=H7pWl48ROXIB1-ZPWYfOn-ou3EBMxYWIwc_A0reJQoo,2333
53
53
  xax/utils/logging.py,sha256=Kkyma_LJXqrN2HTQ214gRP_9ih3_bKk115MWC60lQWM,6656
@@ -59,11 +59,11 @@ xax/utils/text.py,sha256=xS02aSzdywl3KIaNSpKWcxdd37oYlUJtu9wIjkc1wVc,10654
59
59
  xax/utils/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
60
  xax/utils/data/collate.py,sha256=Rd9vMomr_S_zCa_Hi4dO-8ntzAfVwndIUtuXFA3iNcc,7066
61
61
  xax/utils/types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
- xax/utils/types/frozen_dict.py,sha256=ebtHENhyUzSjyJTlbMaLtcckQIJ7EtgJiok_40TJZpo,4689
62
+ xax/utils/types/frozen_dict.py,sha256=QBdBblKenWffJyADQaFF_0iAEVa9EgMylV63udA2vJ4,4771
63
63
  xax/utils/types/hashable_array.py,sha256=l5iIcFmkYzfGeaZmcSoeFkthFASqM8xJYK3AXhZQYwc,992
64
- xax-0.4.0.dist-info/licenses/LICENSE,sha256=HCN2bImAzUOXldAZZI7JZ9PYq6OwMlDAP_PpX1HnuN0,1071
65
- xax-0.4.0.dist-info/METADATA,sha256=oaK0oAc0WM428EAjuwTvFFvaa0JibJl-CpPOBUBVmUY,1246
66
- xax-0.4.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
67
- xax-0.4.0.dist-info/entry_points.txt,sha256=uRC6rx5ce0bf-FblJaZSBMxxKFfMyoWTf8OWbBmLSe8,61
68
- xax-0.4.0.dist-info/top_level.txt,sha256=g4Au_r2XhvZ-lTybviH-Fh9g0zF4DAYHYxPue1-xbs8,4
69
- xax-0.4.0.dist-info/RECORD,,
64
+ xax-0.4.2.dist-info/licenses/LICENSE,sha256=HCN2bImAzUOXldAZZI7JZ9PYq6OwMlDAP_PpX1HnuN0,1071
65
+ xax-0.4.2.dist-info/METADATA,sha256=e7es2HRb5RwbM7K1o75P7htxsxVwNdUcXvzTS9jyLI8,1246
66
+ xax-0.4.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
67
+ xax-0.4.2.dist-info/entry_points.txt,sha256=uRC6rx5ce0bf-FblJaZSBMxxKFfMyoWTf8OWbBmLSe8,61
68
+ xax-0.4.2.dist-info/top_level.txt,sha256=g4Au_r2XhvZ-lTybviH-Fh9g0zF4DAYHYxPue1-xbs8,4
69
+ xax-0.4.2.dist-info/RECORD,,
File without changes