isolate 0.16.3__py3-none-any.whl → 0.17.0__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.

Potentially problematic release.


This version of isolate might be problematic. Click here for more details.

@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '0.16.3'
21
- __version_tuple__ = version_tuple = (0, 16, 3)
20
+ __version__ = version = '0.17.0'
21
+ __version_tuple__ = version_tuple = (0, 17, 0)
@@ -19,6 +19,7 @@ class ContainerizedPythonEnvironment(BaseEnvironment[Path]):
19
19
  python_version: str | None = None
20
20
  requirements: list[str] = field(default_factory=list)
21
21
  tags: list[str] = field(default_factory=list)
22
+ resolver: str | None = None
22
23
 
23
24
  @classmethod
24
25
  def from_config(
@@ -28,14 +29,27 @@ class ContainerizedPythonEnvironment(BaseEnvironment[Path]):
28
29
  ) -> BaseEnvironment:
29
30
  environment = cls(**config)
30
31
  environment.apply_settings(settings)
32
+ if environment.resolver not in ("uv", None):
33
+ raise ValueError(
34
+ "Only 'uv' is supported as a resolver for container environments."
35
+ )
31
36
  return environment
32
37
 
33
38
  @property
34
39
  def key(self) -> str:
40
+ extras = []
41
+ if self.resolver is not None:
42
+ extras.append(f"resolver={self.resolver}")
43
+
35
44
  # dockerfile_str is always there, but the validation is handled by the
36
45
  # controller.
37
46
  dockerfile_str = self.image.get("dockerfile_str", "")
38
- return sha256_digest_of(dockerfile_str, *self.requirements, *sorted(self.tags))
47
+ return sha256_digest_of(
48
+ dockerfile_str,
49
+ *self.requirements,
50
+ *sorted(self.tags),
51
+ *extras,
52
+ )
39
53
 
40
54
  def create(self, *, force: bool = False) -> Path:
41
55
  return Path(sys.exec_prefix)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: isolate
3
- Version: 0.16.3
3
+ Version: 0.17.0
4
4
  Summary: Managed isolated environments for Python
5
5
  Author-email: Features & Labels <hello@fal.ai>
6
6
  Project-URL: Issues, https://github.com/fal-ai/isolate/issues
@@ -1,5 +1,5 @@
1
1
  isolate/__init__.py,sha256=uXOKnONs7sXgARNgElwr4_A1sKoA6ACHVEvs3IDiX1M,127
2
- isolate/_isolate_version.py,sha256=weD4agMPWeuyUP601n4b0-WINls1XJmzDevRS4lplIc,513
2
+ isolate/_isolate_version.py,sha256=6lYqo2NiGNZ_O8QsSkzvYU60ogL4YFzN80126BkHcWw,513
3
3
  isolate/_version.py,sha256=05pXvy-yr5t3I1m9JMn42Ilzpg7fa8IB2J8a3G7t1cU,274
4
4
  isolate/logger.py,sha256=IXPebob_fV8bl8HAyKcheXcTJocfdWk-v-ujSl13oVA,1718
5
5
  isolate/logs.py,sha256=R_AHUVYD18z_PhtK_mDWi9Gch79CxmwHY09hUDShtwg,2079
@@ -9,7 +9,7 @@ isolate/backends/__init__.py,sha256=LLrSM7UnDFW8tIT5oYlE1wVJrxKcaj_v7cFwvTjQTlc,
9
9
  isolate/backends/_base.py,sha256=Kt5pkhDzXZblq4vxaM3DQTo-Bj-7pIRZFlqJR7OfejY,4112
10
10
  isolate/backends/common.py,sha256=PEOcOK38nX1sIZzfF2m8kdZi8a31kpIoWr8mamTmj30,8594
11
11
  isolate/backends/conda.py,sha256=S5q5bdY787AMTck2iMGtwu-LHMH4a1qCIjNHDKTkqok,7649
12
- isolate/backends/container.py,sha256=MCQJbcmQvRUS-tTgTW_pKYBMKwSJO2KZsLeaBMXpPC0,1645
12
+ isolate/backends/container.py,sha256=yGrPM1rp66o_zLw-YLSbEcUVeoIsFalhywot0Sc4B-A,2039
13
13
  isolate/backends/local.py,sha256=woxe4dmXuEHxWKsGNndoRA1_sP6yG-dg6tlFZni0mZc,1360
14
14
  isolate/backends/pyenv.py,sha256=ZwTYoVPIWhS3Y4hN51x95aIOHi15GF7kEDdKTNhlMTE,5434
15
15
  isolate/backends/remote.py,sha256=z6QyBiCt8ltv4Zm8IYX3zyMkBH1k8lTowhnD92-Ed2M,4293
@@ -53,9 +53,9 @@ isolate/server/health/health.proto,sha256=wE2_QD0OQAblKkEBG7sALLXEOj1mOLKG-FbC4t
53
53
  isolate/server/health/health_pb2.py,sha256=-fd91wiaZOSJj_zeo55IqxMBsQGuGF-yjZS-Wc1RaS0,1897
54
54
  isolate/server/health/health_pb2.pyi,sha256=AK-DPCpJzoYhU6DydD856c0Ywx84x6k-Cs4m6HpNv5A,2459
55
55
  isolate/server/health/health_pb2_grpc.py,sha256=BrwuS8t4w6K-XVxIdrUQj5Rn0FAMXrYB2iFgUfeXGMM,3913
56
- isolate-0.16.3.dist-info/licenses/LICENSE,sha256=427vuyirL5scgBLqA9UWcdnxKrtSGc0u_JfUupk6lAA,11359
57
- isolate-0.16.3.dist-info/METADATA,sha256=LDqRWN0-TtBEsCW0c8wDZYxFi_-41L-7hpgolgVGNEo,3198
58
- isolate-0.16.3.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
59
- isolate-0.16.3.dist-info/entry_points.txt,sha256=s3prh2EERaVCbL8R45tfY5WFPZ1TsYOsz305YR7s-Pc,360
60
- isolate-0.16.3.dist-info/top_level.txt,sha256=W9QJBHcq5WXRkbOXf25bvftzFsOZZN4n1DAatdroZrs,8
61
- isolate-0.16.3.dist-info/RECORD,,
56
+ isolate-0.17.0.dist-info/licenses/LICENSE,sha256=427vuyirL5scgBLqA9UWcdnxKrtSGc0u_JfUupk6lAA,11359
57
+ isolate-0.17.0.dist-info/METADATA,sha256=LZS6o3JOY2tmaBhmrPStN93AYl5WcXuyorTsSOnuH_c,3198
58
+ isolate-0.17.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
59
+ isolate-0.17.0.dist-info/entry_points.txt,sha256=s3prh2EERaVCbL8R45tfY5WFPZ1TsYOsz305YR7s-Pc,360
60
+ isolate-0.17.0.dist-info/top_level.txt,sha256=W9QJBHcq5WXRkbOXf25bvftzFsOZZN4n1DAatdroZrs,8
61
+ isolate-0.17.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.7.1)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5