arkitekt-next 0.7.18__py3-none-any.whl → 0.7.20__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 arkitekt-next might be problematic. Click here for more details.

arkitekt_next/builders.py CHANGED
@@ -143,7 +143,7 @@ def easy(
143
143
  fakts=fakts,
144
144
  herre=herre,
145
145
  manifest=manifest,
146
- services=registry.build_service_map(fakts=fakts, herre=herre, params=params),
146
+ services=registry.build_service_map(fakts=fakts, herre=herre, params=params, manifest=manifest),
147
147
  )
148
148
 
149
149
  print()
@@ -125,14 +125,6 @@ def ensure_semver(ctx, param, value):
125
125
  default=False,
126
126
  callback=check_overwrite_app,
127
127
  )
128
- @click.option(
129
- "--requirements",
130
- "-r",
131
- help="Dedicated hardware requirements for this app. They will be used to inform Plugin Schedulers like port, on which compute resources to put your plugin app, once deployed.You can choose multiple for your app. For a list of requirements, run `arkitekt_next manifest requirements available`",
132
- type=click.Choice(compile_requirements()),
133
- multiple=True,
134
- default=[],
135
- )
136
128
  @click.option(
137
129
  "--scopes",
138
130
  "-s",
@@ -140,7 +140,7 @@ def inspect_requirements(build_id: str) -> Dict[str, Requirement]:
140
140
 
141
141
  # Parse the JSON output
142
142
  correct_part = result.stdout.split("--START_REQUIREMENTS--")[1].split(
143
- "--START_REQUIREMENTS--"
143
+ "--END_REQUIREMENTS--"
144
144
  )[0]
145
145
 
146
146
  try:
@@ -151,7 +151,7 @@ def inspect_requirements(build_id: str) -> Dict[str, Requirement]:
151
151
  f"Could not decode JSON output of docker inspect. {combined_error}"
152
152
  ) from e
153
153
 
154
- return output.values()
154
+ return output
155
155
  except subprocess.CalledProcessError as e:
156
156
  combined_error = e.stdout + e.stderr
157
157
 
@@ -167,8 +167,9 @@ def inspect_requirements(build_id: str) -> Dict[str, Requirement]:
167
167
  def inspect_build(build_id: str) -> Inspection:
168
168
  size, size_root_fs = inspect_docker_container(build_id)
169
169
  templates = inspect_templates(build_id)
170
+ requirements = inspect_requirements(build_id)
170
171
 
171
- return Inspection(size=size, templates=templates)
172
+ return Inspection(size=size, templates=templates , requirements=requirements)
172
173
 
173
174
 
174
175
  def get_flavours(ctx: Context, select: Optional[str] = None) -> Dict[str, Flavour]:
@@ -9,10 +9,6 @@ def compile_scopes() -> List[str]:
9
9
  return ["read", "write"]
10
10
 
11
11
 
12
- def compile_requirements():
13
- """Compile all available requirements"""
14
- return [Requirement.GPU.value]
15
-
16
12
 
17
13
  def compile_builders():
18
14
  return ["arkitekt_next.builders.easy", "arkitekt_next.builders.port"]
@@ -1,9 +1,10 @@
1
1
  from pydantic import BaseModel, Field, validator
2
2
  import datetime
3
- from typing import List, Optional, Union, Literal
3
+ from typing import List, Optional, Union, Literal, Dict
4
4
  from enum import Enum
5
5
  import semver
6
6
  import uuid
7
+ from arkitekt_next.model import Requirement
7
8
  from rekuest.api.schema import DefinitionInput
8
9
  from string import Formatter
9
10
  import os
@@ -24,12 +25,6 @@ class Framework(str, Enum):
24
25
  PYTORCH = "pytorch"
25
26
 
26
27
 
27
- class Requirement(str, Enum):
28
- """ """
29
-
30
- GPU = "gpu"
31
-
32
-
33
28
  class Packager(str, Enum):
34
29
  CONDA = "conda"
35
30
  POETRY = "poetry"
@@ -43,7 +38,6 @@ class Manifest(BaseModel):
43
38
  logo: Optional[str]
44
39
  entrypoint: str
45
40
  scopes: List[str]
46
- requirements: List[Requirement] = Field(default_factory=list)
47
41
  created_at: datetime.datetime = Field(default_factory=datetime.datetime.now)
48
42
 
49
43
  @validator("version", pre=True)
@@ -218,6 +212,7 @@ Selector = Union[
218
212
 
219
213
  class Inspection(BaseModel):
220
214
  templates: List[TemplateInput]
215
+ requirements: Dict[str, Requirement]
221
216
  size: int
222
217
 
223
218
 
@@ -3,4 +3,4 @@ REPO_URL = (
3
3
  )
4
4
 
5
5
 
6
- DEFAULT_ARKITEKT_URL = "http://127.0.0.1:12000"
6
+ DEFAULT_ARKITEKT_URL = "http://127.0.0.1"
@@ -1,7 +1,7 @@
1
1
  from pydantic import BaseModel, Field
2
2
  from herre import Herre
3
3
  from fakts import Fakts
4
- from .model import Requirement
4
+ from .model import Manifest, Requirement
5
5
  from typing import Callable, Dict
6
6
  import importlib
7
7
  import sys
@@ -40,8 +40,8 @@ class ServiceBuilderRegistry:
40
40
  return self.services.get(name)
41
41
 
42
42
 
43
- def build_service_map(self, fakts: Fakts, herre: Herre, params: Params):
44
- return {name: builder(fakts, herre, params) for name, builder in self.service_builders.items()}
43
+ def build_service_map(self, fakts: Fakts, herre: Herre, params: Params, manifest: Manifest):
44
+ return {name: builder(fakts, herre, params, manifest) for name, builder in self.service_builders.items()}
45
45
 
46
46
  def get_requirements(self):
47
47
  return self.requirements
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: arkitekt-next
3
- Version: 0.7.18
3
+ Version: 0.7.20
4
4
  Summary: client for the arkitekt_next platform
5
5
  License: MIT
6
6
  Author: jhnnsrs
@@ -17,17 +17,17 @@ Provides-Extra: all
17
17
  Provides-Extra: cli
18
18
  Requires-Dist: dokker (>=0.1.21)
19
19
  Requires-Dist: fakts (>=0.5.0)
20
- Requires-Dist: fluss-next (>=0.1.67) ; extra == "all"
20
+ Requires-Dist: fluss-next (>=0.1.68) ; extra == "all"
21
21
  Requires-Dist: herre (>=0.4.3)
22
- Requires-Dist: kabinet (>=0.1.5) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "all")
22
+ Requires-Dist: kabinet (>=0.1.6) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "all")
23
23
  Requires-Dist: koil (>=0.3.6)
24
24
  Requires-Dist: mikro-next (>=0.1.13) ; (python_version >= "3.10" and python_version < "4.0") and (extra == "all")
25
- Requires-Dist: reaktion-next (>=0.1.57) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "all")
26
- Requires-Dist: rekuest-next (>=0.2.10) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "cli" or extra == "all")
25
+ Requires-Dist: reaktion-next (>=0.1.58) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "all")
26
+ Requires-Dist: rekuest-next (>=0.2.12) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "cli" or extra == "all")
27
27
  Requires-Dist: rich-click (>=1.6.1) ; extra == "cli" or extra == "all"
28
28
  Requires-Dist: semver (>=3.0.1) ; extra == "cli" or extra == "all"
29
29
  Requires-Dist: turms (>=0.5.0) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "cli" or extra == "all")
30
- Requires-Dist: unlok-next (>=0.1.62) ; python_version >= "3.8" and python_version < "4.0"
30
+ Requires-Dist: unlok-next (>=0.1.63) ; python_version >= "3.8" and python_version < "4.0"
31
31
  Requires-Dist: watchfiles (>=0.18.1) ; extra == "cli" or extra == "all"
32
32
  Description-Content-Type: text/markdown
33
33
 
@@ -16,7 +16,7 @@ arkitekt_next/apps/service/mikro_next.py,sha256=j612M2wo4EdaKp13qx_8eqQsB6wc5nE_
16
16
  arkitekt_next/apps/service/rekuest_next.py,sha256=RiNN5rzDbq15AgyVpv-3tjkSO6TeO2xsuEvGTYmB2UQ,1816
17
17
  arkitekt_next/apps/service/unlok_next.py,sha256=u3cjFr1i6kHjH881oj_NBmY1CgnM0uqdDbicq-SilPM,1124
18
18
  arkitekt_next/apps/types.py,sha256=uozRXDDGJBL9hYCYGZF_XmtZ4ZvoLZeEEfJeL10Ve3U,1136
19
- arkitekt_next/builders.py,sha256=7rHNSdloNTgf3vvzcl4n67-F-vxOECTO1aZ7Xm9c_S0,5776
19
+ arkitekt_next/builders.py,sha256=BsT-3mzBiWj6uOBEDBSdp-7Rd1FMZ8zoBYDcv8wB19c,5795
20
20
  arkitekt_next/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
21
  arkitekt_next/cli/commands/call/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
22
  arkitekt_next/cli/commands/call/local.py,sha256=YDummInGSb6lGKGiTlMSuXbE-Sz6dbfng6CsZaChCew,3338
@@ -28,14 +28,14 @@ arkitekt_next/cli/commands/gen/init.py,sha256=JV9x27Iy80QlmigXd7TSG2YIBHPGJBdEQ_
28
28
  arkitekt_next/cli/commands/gen/main.py,sha256=_BdkcsXoWY5_3gmboq2e0pGYM6lAnwqQgBAyxmvdf6U,947
29
29
  arkitekt_next/cli/commands/gen/watch.py,sha256=nf4QckdTJOWxvKoeNRwvC4rXQ4xhIx8LCDDJzpPhcY8,1189
30
30
  arkitekt_next/cli/commands/init/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
- arkitekt_next/cli/commands/init/main.py,sha256=1ACgJn3RH5UIbsaX3KxKmwwvw9bkmJJgSWG4JDHPfow,5936
31
+ arkitekt_next/cli/commands/init/main.py,sha256=7pqr_06xooe-KJfnliBhyd2XvQbPUcglbulyp5goWQs,5507
32
32
  arkitekt_next/cli/commands/inspect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
33
  arkitekt_next/cli/commands/inspect/main.py,sha256=Bu1vAZudkFCtjDnZAB8yQLDt-UKY9pJGhLBlEfDqtkw,626
34
34
  arkitekt_next/cli/commands/inspect/requirements.py,sha256=17rK6zviRpBDpaR-qpw5spb4ClTbKaG1d2ZQ-KiNV7I,2133
35
35
  arkitekt_next/cli/commands/inspect/templates.py,sha256=U99SLBYWiD-ZiIYV7pVWhQK3XWn1PLUIyTKzgSFF6MQ,2325
36
36
  arkitekt_next/cli/commands/inspect/variables.py,sha256=LonDlbS2qH1v-jD6RfEhTv-mxmgeBMKqD3oO2iDJRjE,2698
37
37
  arkitekt_next/cli/commands/kabinet/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
- arkitekt_next/cli/commands/kabinet/build.py,sha256=QRaOgpBYO6qqowTKLR4qZ7rTKNKVAS3IaARWiVwSdBc,8481
38
+ arkitekt_next/cli/commands/kabinet/build.py,sha256=A1C84ZNRtD1nMv5erJGQPx9DDx493VxDR7SRd2__7IA,8548
39
39
  arkitekt_next/cli/commands/kabinet/init.py,sha256=NNEb5SITLNM1TBED0moyBhE-JGkkr0cvNh33A4OGnfc,2525
40
40
  arkitekt_next/cli/commands/kabinet/main.py,sha256=U5EWekRTsMZZ34abWFfwilhzrd-zZtpZbl8RsLN_bC8,1008
41
41
  arkitekt_next/cli/commands/kabinet/publish.py,sha256=zbjnoMliowje1nEuKFolFX5pZA2D_DzLjXlSxBbD88k,3596
@@ -65,7 +65,7 @@ arkitekt_next/cli/commands/server/stop.py,sha256=fPiF5zBa4zOEdchMIQqi88gsNAEhq6W
65
65
  arkitekt_next/cli/commands/server/up.py,sha256=QfXEN_IDYrL4kFJ-DZ4BGK3eMfkW4YpoSkr9bGpzFjM,1757
66
66
  arkitekt_next/cli/commands/server/utils.py,sha256=GhUiJx2eXSBMdIfukEaZAetAtkfy_dZG4yb2L6vxTio,846
67
67
  arkitekt_next/cli/configs/base.yaml,sha256=9IJ7B4Fq3swHsLUbKn1MlhhzJKqDI1wnR5PAG_VKs8A,30097
68
- arkitekt_next/cli/constants.py,sha256=-PdzHYOgxoE9ss1uFCzQ9S4pGkEbyp8EFn1xzQ5-dfw,1520
68
+ arkitekt_next/cli/constants.py,sha256=xHG2lfXw_4atx9B4ICAY45fbNbQN0UQAfdxZQbduz_w,1411
69
69
  arkitekt_next/cli/dockerfiles/vanilla.dockerfile,sha256=Cn0MSaopz_hsAyNguJCLSxUIxI7Kcr8uk3Rji2nP8AU,168
70
70
  arkitekt_next/cli/errors.py,sha256=zLTjaCbun6qM2nTldjyZd-DvykqKn5A3Gn80uYdx7Vc,93
71
71
  arkitekt_next/cli/inspect.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
@@ -89,13 +89,13 @@ arkitekt_next/cli/schemas/unlok.schema.graphql,sha256=fXR846snIBIqkuQ-PlYnSkQjkF
89
89
  arkitekt_next/cli/templates/filter.py,sha256=mD2jdNEXrZNagC_8WtuTisGJrGIbJDSylCvh19cF49I,650
90
90
  arkitekt_next/cli/templates/simple.py,sha256=IbcThJ5LryXVFQUdzxfHQCtzSNxEQWTxbD__Ygxsp4M,1171
91
91
  arkitekt_next/cli/texts.py,sha256=csMefyCnwnvDnriTy0VJ4L24VFIbcXoC9ayopP4RxIc,697
92
- arkitekt_next/cli/types.py,sha256=YH3wfQRO23xe6yw8_1ew63OWT_Z_l4EpgOUdoMipnIo,10456
92
+ arkitekt_next/cli/types.py,sha256=LJmyWFzKvvq2KpgYtZHgrq6_YAKp_RhmF-MEh5kTuFY,10420
93
93
  arkitekt_next/cli/ui.py,sha256=BR_AOsBIIHwojI5otBzT_560-ep5Dw1xAHKsO2zOOJQ,3493
94
94
  arkitekt_next/cli/utils.py,sha256=rl1hfQIVzepLHPN_ZWuvfVH-IIVqcSfiFGyfNtL1XCo,445
95
95
  arkitekt_next/cli/validators.py,sha256=XkLrOrDzBJwcG1keTawa_NJPt3QIBhb5KjepeH4N1KA,719
96
96
  arkitekt_next/cli/vars.py,sha256=ev7cKDSPoik8hU9A_ohNpjRZX4FT1GYJaBoGLnxCKjU,982
97
97
  arkitekt_next/cli/versions/v1.yaml,sha256=rv2-F6FQbTZi_H6pSE_csdICdtKBObDdoo_asOFi43Y,12
98
- arkitekt_next/constants.py,sha256=ziQ_WxvGPZtVQtRwKutlBNBfUVtpQu51abOaGaQ2OtU,107
98
+ arkitekt_next/constants.py,sha256=6t_Mf36ZwJF43yd38MtQyzBxeW5aagisl3MPMxpFDNE,101
99
99
  arkitekt_next/model.py,sha256=6KYwSqWhI9CFhZIgip5ZddWleNBENGCAW2-ajtcOZSg,4476
100
100
  arkitekt_next/qt/__init__.py,sha256=SVnuFY6eUXuG-mrm928RuYeMiunxlc73UsXDGV5DAuY,458
101
101
  arkitekt_next/qt/assets/dark/gear.png,sha256=nYl1JZhcpwd7s5FgG2g-1RpkK7TH_QQRqJMmK6r0BpU,6296
@@ -111,11 +111,11 @@ arkitekt_next/qt/assets/light/red pulse.gif,sha256=U7WLbZvSl5e-Ob5RmawtlC0Rh9VVH
111
111
  arkitekt_next/qt/builder.py,sha256=CWdFT9YERyMKGqPXdAdMFUbVt-HdJLN7Y4LqdK7xdGM,3371
112
112
  arkitekt_next/qt/magic_bar.py,sha256=xo4_ReVYtpCwnRFTMBYvBEcVvY3JnNFbqYYY_-ez6vM,18242
113
113
  arkitekt_next/qt/utils.py,sha256=MgBPtPmCSBkIuATov3UgREESwxAHh77lWNNxyE7Qs48,773
114
- arkitekt_next/service_registry.py,sha256=Aq5bgu4UHRl1P6E2JOQ2gMCwFI8pQfASWte0BvtKE3g,3365
114
+ arkitekt_next/service_registry.py,sha256=pczUuP_Nve7OYwB7-oDBLIw6bkjZPnzL3xFca5TF1io,3405
115
115
  arkitekt_next/tqdm.py,sha256=DlrxPluHao7TvW-Cqgt0UokRS-fM2_ZNiWiddqvCqCc,1488
116
116
  arkitekt_next/utils.py,sha256=WA3AtqQFcz2h-yOadAsQkkr0qKJmKcGMi2aclxaVI_o,1278
117
- arkitekt_next-0.7.18.dist-info/LICENSE,sha256=YZ2oRjC248t-GpoEyw7J13vwKYNG6zhYMaEAix6EzF0,1089
118
- arkitekt_next-0.7.18.dist-info/METADATA,sha256=7mvdrH58p6atu_9p-vUlP797psC_AQTBOlDn05E3Gw0,5500
119
- arkitekt_next-0.7.18.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
120
- arkitekt_next-0.7.18.dist-info/entry_points.txt,sha256=-hxikQx4xZ6TiOnWVDOlTN_kcAISgGFvTHXIchsCHSc,60
121
- arkitekt_next-0.7.18.dist-info/RECORD,,
117
+ arkitekt_next-0.7.20.dist-info/LICENSE,sha256=YZ2oRjC248t-GpoEyw7J13vwKYNG6zhYMaEAix6EzF0,1089
118
+ arkitekt_next-0.7.20.dist-info/METADATA,sha256=Qm_sOhlj__ZULUguJTxYrJxO9RB2DMayFUxUM4iWN8o,5500
119
+ arkitekt_next-0.7.20.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
120
+ arkitekt_next-0.7.20.dist-info/entry_points.txt,sha256=-hxikQx4xZ6TiOnWVDOlTN_kcAISgGFvTHXIchsCHSc,60
121
+ arkitekt_next-0.7.20.dist-info/RECORD,,