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

arkitekt_next/__init__.py CHANGED
@@ -11,11 +11,21 @@ try:
11
11
  from rekuest_next.register import register
12
12
  from rekuest_next.agents.hooks import background
13
13
  from rekuest_next.agents.hooks import startup
14
+ from rekuest_next.agents.context import context
15
+ from rekuest_next.state.state import state
16
+ from rekuest_next.actors.reactive.api import progress, aprogress
17
+ from rekuest_next.actors.reactive.api import log, alog
14
18
  except ImportError as e:
15
19
  raise e
16
20
  register = missing_install("rekuest_next", e)
17
21
  background = missing_install("rekuest_next", e)
18
22
  startup = missing_install("rekuest_next", e)
23
+ context = missing_install("rekuest_next", e)
24
+ state = missing_install("rekuest_next", e)
25
+ progress = missing_install("rekuest_next", e)
26
+ aprogress = missing_install("rekuest_next", e)
27
+ log = missing_install("rekuest_next", e)
28
+ alog = missing_install("rekuest_next", e)
19
29
 
20
30
  from .builders import easy, interactive
21
31
  from .apps.types import App
@@ -38,6 +48,8 @@ __all__ = [
38
48
  "useInstanceID",
39
49
  "useUser",
40
50
  "next",
51
+ "state",
52
+ "context",
41
53
  "background",
42
54
  "startup",
43
55
  "register_next",
@@ -43,17 +43,7 @@ class ArkitektBlok:
43
43
  scale: Optional[TailscaleBlok] = None,
44
44
  orkestrator: Optional[OrkestratorBlok] = None,
45
45
  ):
46
- print(
47
- gateway,
48
- mikro,
49
- kabinet,
50
- rekuest,
51
- fluss,
52
- gateway,
53
- internal_engine,
54
- scale,
55
- orkestrator,
56
- )
46
+ pass
57
47
 
58
48
  def build(self, cwd):
59
49
  pass
@@ -64,20 +64,20 @@ class PostgresBlok(BaseModel):
64
64
  "labels": ["fakts.service=live.arkitekt.postgres"],
65
65
  }
66
66
 
67
-
68
67
  if self.build_repo or self.dev:
69
- mount = init.get_service(MountService).register_mount(self.host, Repo(self.repo))
68
+ mount = init.get_service(MountService).register_mount(
69
+ self.host, Repo(self.repo)
70
+ )
70
71
  self.build_image["build"] = mount
71
72
  else:
72
73
  self.build_image["image"] = self.image
73
74
 
74
-
75
75
  def build(self, context: ExecutionContext):
76
76
 
77
77
  self.build_image["environment"]["POSTGRES_MULTIPLE_DATABASES"] = ",".join(
78
78
  self.registered_dbs.keys()
79
79
  )
80
-
80
+
81
81
  context.docker_compose.set_nested(f"services", self.host, self.build_image)
82
82
 
83
83
  def get_options(self):
@@ -124,4 +124,13 @@ class PostgresBlok(BaseModel):
124
124
  default=self.dev,
125
125
  )
126
126
 
127
- return [with_postgres_password, skip_build, with_user_password, with_image, with_repo, build_repo, mount_repo, dev]
127
+ return [
128
+ with_postgres_password,
129
+ skip_build,
130
+ with_user_password,
131
+ with_image,
132
+ with_repo,
133
+ build_repo,
134
+ mount_repo,
135
+ dev,
136
+ ]
arkitekt_next/builders.py CHANGED
@@ -109,7 +109,6 @@ def easy(
109
109
  requirements=registry.get_requirements(),
110
110
  )
111
111
  if token:
112
- print("Using token")
113
112
  fakts = build_arkitekt_next_token_fakts(
114
113
  manifest=manifest,
115
114
  token=token,
@@ -117,7 +116,6 @@ def easy(
117
116
  )
118
117
 
119
118
  elif redeem_token:
120
- print("Using redeem token")
121
119
  fakts = build_arkitekt_next_redeem_fakts_next(
122
120
  manifest=manifest,
123
121
  redeem_token=redeem_token,
@@ -126,7 +124,6 @@ def easy(
126
124
  headless=headless,
127
125
  )
128
126
  else:
129
- print("Using normal fakts")
130
127
  fakts = build_arkitekt_next_fakts_next(
131
128
  manifest=manifest,
132
129
  url=url,
@@ -160,8 +157,8 @@ def easy(
160
157
  return app
161
158
 
162
159
 
163
-
164
- def interactive(identifier: str,
160
+ def interactive(
161
+ identifier: str,
165
162
  version: str = "0.0.1",
166
163
  logo: Optional[str] = None,
167
164
  scopes: Optional[List[str]] = None,
@@ -174,23 +171,26 @@ def interactive(identifier: str,
174
171
  app_kind: str = "development",
175
172
  registry: Optional[ServiceBuilderRegistry] = None,
176
173
  sync_mode: bool = True,
177
- **kwargs):
174
+ **kwargs,
175
+ ):
178
176
  """Creates an interactive jupyter app"""
179
177
 
180
- app = easy(identifier=identifier,
181
- version=version,
182
- logo=logo,
183
- scopes=scopes,
184
- url=url,
185
- headless=headless,
186
- log_level=log_level,
187
- token=token,
188
- no_cache=no_cache,
189
- redeem_token=redeem_token,
190
- app_kind=app_kind,
191
- registry=registry,
192
- **kwargs)
193
-
178
+ app = easy(
179
+ identifier=identifier,
180
+ version=version,
181
+ logo=logo,
182
+ scopes=scopes,
183
+ url=url,
184
+ headless=headless,
185
+ log_level=log_level,
186
+ token=token,
187
+ no_cache=no_cache,
188
+ redeem_token=redeem_token,
189
+ app_kind=app_kind,
190
+ registry=registry,
191
+ **kwargs,
192
+ )
193
+
194
194
  if sync_mode:
195
195
  # When running in an interactive async enironvment, just like
196
196
  # in a jupyter notebook, we can opt to run the app in sync mode
@@ -3,7 +3,6 @@ from arkitekt_next.cli.options import *
3
3
  import asyncio
4
4
  from arkitekt_next.cli.ui import construct_run_panel
5
5
  from importlib import import_module
6
- from rekuest.postmans.utils import arkiuse
7
6
  import rich_click as click
8
7
  from arkitekt_next.cli.options import *
9
8
  import asyncio
@@ -19,12 +18,7 @@ async def call_app(
19
18
  arg,
20
19
  ):
21
20
  async with app:
22
- async with arkiuse(
23
- hash=hash,
24
- postman=app.rekuest.postman,
25
- ) as a:
26
- print(arg)
27
- print(await a.aassign(kwargs=arg))
21
+ raise NotImplementedError("This is not implemented yet")
28
22
 
29
23
 
30
24
  @click.command("prod")
@@ -1,3 +1,4 @@
1
+ import logging
1
2
  from typing import Optional
2
3
  import os
3
4
  import yaml
@@ -42,6 +43,6 @@ def validate_flavours(flavours_folder: str, only: Optional[str]):
42
43
  )
43
44
 
44
45
  else:
45
- print(
46
+ logging.info(
46
47
  f"Found file {dir_name} in flavours folder. Not a valid flavour. Ignoring"
47
48
  )
@@ -35,7 +35,7 @@ class Manifest(BaseModel):
35
35
  identifier: str
36
36
  version: str
37
37
  author: str
38
- logo: Optional[str]
38
+ logo: Optional[str] = None
39
39
  entrypoint: str
40
40
  scopes: List[str]
41
41
  created_at: datetime.datetime = Field(default_factory=datetime.datetime.now)
arkitekt_next/model.py CHANGED
@@ -85,7 +85,7 @@ class Manifest(BaseModel):
85
85
 
86
86
  def hash(self):
87
87
  """Hash the manifest"""
88
- return sha256(self.json(sort_keys=True).encode()).hexdigest()
88
+ return sha256(self.model_dump_json().encode()).hexdigest()
89
89
 
90
90
 
91
91
  class User(BaseModel):
@@ -9,7 +9,7 @@ to ArkitektNext, and configure settings.
9
9
  """
10
10
 
11
11
  from .magic_bar import MagicBar
12
- from .builders import publicqt
12
+ from .builders import publicqt, devqt
13
13
  from .types import *
14
14
 
15
- __all__ = ["MagicBar", "publicqt", "QtApp"]
15
+ __all__ = ["MagicBar", "publicqt", "devqt", "QtApp"]
@@ -15,6 +15,169 @@ from qtpy import QtWidgets, QtCore
15
15
  from typing import List, Optional
16
16
  import os
17
17
  import logging
18
+ from typing import List, Optional
19
+ import logging
20
+ import os
21
+
22
+ from arkitekt_next.apps.service.fakts_next import (
23
+ build_arkitekt_next_fakts_next,
24
+ build_arkitekt_next_redeem_fakts_next,
25
+ build_arkitekt_next_token_fakts,
26
+ )
27
+ from arkitekt_next.apps.service.herre import build_arkitekt_next_herre
28
+ from arkitekt_next.utils import create_arkitekt_next_folder
29
+ from arkitekt_next.model import Manifest
30
+ from arkitekt_next.apps.types import App
31
+ from arkitekt_next.service_registry import (
32
+ ServiceBuilderRegistry,
33
+ check_and_import_services,
34
+ )
35
+ from arkitekt_next.constants import DEFAULT_ARKITEKT_URL
36
+
37
+
38
+ def devqt(
39
+ identifier: str,
40
+ version: str = "0.0.1",
41
+ logo: Optional[str] = None,
42
+ scopes: Optional[List[str]] = None,
43
+ url: str = DEFAULT_ARKITEKT_URL,
44
+ headless: bool = False,
45
+ log_level: str = "ERROR",
46
+ parent: Optional[QtWidgets.QWidget] = None,
47
+ token: Optional[str] = None,
48
+ no_cache: bool = False,
49
+ redeem_token: Optional[str] = None,
50
+ app_kind: str = "development",
51
+ registry: Optional[ServiceBuilderRegistry] = None,
52
+ **kwargs,
53
+ ) -> App:
54
+ """Creates a next app
55
+
56
+ A simple way to create an ArkitektNext Next app, ArkitektNext next apps are
57
+ development apps by default, as they will try to register themselves
58
+ with services that are not yet available in production (such as the
59
+ rekuest_next and mikro_next services). They represent the next generation
60
+ of ArkitektNext apps, and will be the default way to create ArkitektNext apps
61
+ in the future. From here be dragons.
62
+
63
+ A few things to note:
64
+ - The Next builder closely mimics the easy builder, but will use the
65
+ next generation of services (such as rekuest_next and mikro_next)
66
+ and will therefore not be compatible with the current generation.
67
+
68
+ - Next apps will try to establish themselves a "development" apps, by default
69
+ which means that they will be authenticated with the ArkitektNext server on
70
+ a per user basis. If you want to create a "desktop" app, which multiple users
71
+ can use, you should set the `app_kind` to "desktop" TODO: Currently not implemented (use next app for this)
72
+ - The Next builder can also be used in plugin apps, and when provided with a fakts token
73
+ will be able to connect to the ArkitektNext server without any user interaction.
74
+
75
+
76
+ Parameters
77
+ ----------
78
+ identifier : str
79
+ The apps identifier (should be globally unique, see Manifest for more info)
80
+ version : str, optional
81
+ The version of the app, by default "0.0.1"
82
+ logo : str, optional
83
+ The logo of the app as a public http url, by default None
84
+ scopes : List[str], optional
85
+ The scopes, that this apps requires, will default to standard scopes, by default None
86
+ url : str, optional
87
+ The fakts server that will be used to configure this app, in a default ArkitektNext deployment this
88
+ is the address of the "Lok Service" (which provides the Fakts API), by default DEFAULT_ARKITEKT_URL
89
+ Will be overwritten by the FAKTS_URL environment variable
90
+ headless : bool, optional
91
+ Should we run in headless, mode, e.g printing necessary interaction into the console (will forexample
92
+ stop opening browser windows), by default False
93
+ log_level : str, optional
94
+ The log-level to use, by default "ERROR"
95
+ token : str, optional
96
+ A fakts token to use, by default None
97
+ Will be overwritten by the FAKTS_TOKEN environment variable
98
+ no_cache : bool, optional
99
+ Should we skip caching token, acess-token, by default False
100
+ Attention: If this is set to True, the app will always have to be configured
101
+ and authenticated.
102
+ instance_id : str, optional
103
+ The instance_id to use, by default "main"
104
+ Can be set to a different value, if you want to run multiple intstances
105
+ of the same app by the same user.
106
+ Will be overwritten by the REKUEST_INSTANCE_ID environment variable
107
+ register_reaktion : bool, optional
108
+ Should we register the reaktion extension, by default True
109
+ If set to False, the app will not be able to use the reaktion extension
110
+ (which is necessary for scheduling in app` workflows from fluss)
111
+ app_kind : str, optional
112
+ The kind of app to create, by default "development"
113
+ Can be set to "desktop" to create a desktop app, that can be used by multiple users.
114
+
115
+ Returns
116
+ -------
117
+ NextApp
118
+ A built app, that can be used to interact with the ArkitektNext server
119
+ """
120
+ registry = registry or check_and_import_services()
121
+
122
+ url = os.getenv("FAKTS_URL", url)
123
+ token = os.getenv("FAKTS_TOKEN", token)
124
+
125
+ manifest = Manifest(
126
+ version=version,
127
+ identifier=identifier,
128
+ scopes=scopes if scopes else ["openid"],
129
+ logo=logo,
130
+ requirements=registry.get_requirements(),
131
+ )
132
+ if token:
133
+ fakts = build_arkitekt_next_token_fakts(
134
+ manifest=manifest,
135
+ token=token,
136
+ url=url,
137
+ )
138
+
139
+ elif redeem_token:
140
+ fakts = build_arkitekt_next_redeem_fakts_next(
141
+ manifest=manifest,
142
+ redeem_token=redeem_token,
143
+ url=url,
144
+ no_cache=no_cache,
145
+ headless=headless,
146
+ )
147
+ else:
148
+ fakts = build_arkitekt_next_fakts_next(
149
+ manifest=manifest,
150
+ url=url,
151
+ no_cache=no_cache,
152
+ headless=headless,
153
+ client_kind=app_kind,
154
+ )
155
+
156
+ herre = build_arkitekt_next_herre(fakts=fakts)
157
+
158
+ params = kwargs
159
+
160
+ create_arkitekt_next_folder(with_cache=True)
161
+
162
+ try:
163
+ from rich.logging import RichHandler
164
+
165
+ logging.basicConfig(level=log_level, handlers=[RichHandler()])
166
+ except ImportError:
167
+ logging.basicConfig(level=log_level)
168
+
169
+ app = App(
170
+ fakts=fakts,
171
+ herre=herre,
172
+ manifest=manifest,
173
+ services=registry.build_service_map(
174
+ fakts=fakts, herre=herre, params=params, manifest=manifest
175
+ ),
176
+ )
177
+
178
+ app.enter()
179
+
180
+ return app
18
181
 
19
182
 
20
183
  def publicqt(
@@ -63,7 +63,7 @@ class Logo(QtWidgets.QWidget):
63
63
  data = await resp.read()
64
64
  return data
65
65
  else:
66
- print(f"Failed to download the image. Status code: {resp.status}")
66
+ logger.error(f"Failed to download the image. Status code: {resp.status}")
67
67
  return None
68
68
 
69
69
 
@@ -76,9 +76,9 @@ def check_and_import_services() -> ServiceBuilderRegistry:
76
76
  rekuest_module.init_services(service_builder_registry)
77
77
  logging.info(f"Called init_service function from {module_name}")
78
78
  else:
79
- print(f"No init_services function in {module_name}.__arkitekt__")
79
+ logging.debug(f"No init_services function in {module_name}.__arkitekt__. Skipping.")
80
80
  except Exception as e:
81
- print(f"Failed to call init_services for {module_name}: {e}")
81
+ logging.critical(f"Failed to call init_services for {module_name}: {e}")
82
82
  traceback.print_exc()
83
83
 
84
84
  # Check local modules in the current working directory
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: arkitekt-next
3
- Version: 0.7.59
3
+ Version: 0.8.0
4
4
  Summary: client for the arkitekt_next platform
5
5
  License: MIT
6
6
  Author: jhnnsrs
@@ -16,24 +16,24 @@ Classifier: Programming Language :: Python :: 3.12
16
16
  Provides-Extra: all
17
17
  Provides-Extra: blok
18
18
  Provides-Extra: cli
19
- Requires-Dist: blok (>=0.0.19) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "blok")
19
+ Requires-Dist: blok (>=0.0.19) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "blok")
20
20
  Requires-Dist: cryptography (>=40.0.8) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "blok")
21
- Requires-Dist: dokker (>=0.1.21)
22
- Requires-Dist: fakts (>=0.5.0)
23
- Requires-Dist: fluss-next (>=0.1.78) ; extra == "all"
24
- Requires-Dist: herre (>=0.4.3)
25
- Requires-Dist: kabinet (>=0.1.16) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "all")
26
- Requires-Dist: koil (>=0.3.6)
27
- Requires-Dist: lovekit (>=0.1.4) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "all")
28
- Requires-Dist: mikro-next (>=0.1.33) ; (python_version >= "3.10" and python_version < "4.0") and (extra == "all")
21
+ Requires-Dist: dokker (>=1.0.0)
22
+ Requires-Dist: fakts (>=1.0.0)
23
+ Requires-Dist: fluss-next (>=0.1.83) ; extra == "all"
24
+ Requires-Dist: herre (>=1.0.0)
25
+ Requires-Dist: kabinet (>=0.1.22) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "all")
26
+ Requires-Dist: koil (>=1.0.0)
27
+ Requires-Dist: lovekit (>=0.1.10) ; (python_version >= "3.10" and python_version < "4.0") and (extra == "all")
28
+ Requires-Dist: mikro-next (>=0.1.38) ; (python_version >= "3.10" and python_version < "4.0") and (extra == "all")
29
29
  Requires-Dist: namegenerator (>=1.0.6) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "blok")
30
30
  Requires-Dist: netifaces (>=0.11.0) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "blok")
31
- Requires-Dist: reaktion-next (>=0.1.68) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "all")
32
- Requires-Dist: rekuest-next (>=0.2.24) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "cli" or extra == "all")
31
+ Requires-Dist: reaktion-next (>=0.1.73) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "all")
32
+ Requires-Dist: rekuest-next (>=0.2.29) ; (python_version >= "3.8" and python_version < "4.0") and (extra == "cli" or extra == "all")
33
33
  Requires-Dist: rich-click (>=1.6.1) ; extra == "cli" or extra == "all"
34
34
  Requires-Dist: semver (>=3.0.1) ; extra == "cli" or extra == "all"
35
- Requires-Dist: turms (>=0.5.0) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "cli" or extra == "all")
36
- Requires-Dist: unlok-next (>=0.1.72) ; python_version >= "3.8" and python_version < "4.0"
35
+ Requires-Dist: turms (>=0.6.0) ; (python_version >= "3.9" and python_version < "4.0") and (extra == "cli" or extra == "all")
36
+ Requires-Dist: unlok-next (>=0.1.77) ; python_version >= "3.8" and python_version < "4.0"
37
37
  Requires-Dist: watchfiles (>=0.18.1) ; extra == "cli" or extra == "all"
38
38
  Description-Content-Type: text/markdown
39
39
 
@@ -64,7 +64,7 @@ To understand the idea behind arkitekt_next, you need to understand the idea beh
64
64
  ## Install
65
65
 
66
66
  ```bash
67
- pip install arkitekt_next[all]
67
+ pip install arkitekt-next[all]
68
68
  ```
69
69
 
70
70
  This installs all dependencies for the arkitekt_next platform, inlcuding the arkitekt_next CLI, which can be used to develop and create apps, containerize them and deploy t
@@ -81,7 +81,7 @@ type annotations, orchestration of real-time (in memoery) workflows, data hostin
81
81
  To get started create a directory and run
82
82
 
83
83
  ```bash
84
- arkitekt_next init
84
+ arkitekt-next init
85
85
  ```
86
86
 
87
87
  Which will lead you throught an app creation process.
@@ -105,7 +105,7 @@ And then connected to a local or remote server by running
105
105
  Run example:
106
106
 
107
107
  ```bash
108
- arkitekt_next run dev
108
+ arkitekt-next run dev
109
109
  ```
110
110
 
111
111
 
@@ -1,5 +1,5 @@
1
1
  arkitekt_next/__blok__.py,sha256=gQqlPrUPSeB-b3XkvXRwDoRWMfG-vYN-3a2pWHNjz_E,1563
2
- arkitekt_next/__init__.py,sha256=Y0fK7bMPpfln3wk9C4ItU3s0pdYt21sWjsv71-kRYlQ,1002
2
+ arkitekt_next/__init__.py,sha256=JOSPhxNLlQeHbwDI6HWYvuFqPJoh9Iz8okvbVl8jmU8,1545
3
3
  arkitekt_next/apps/__init__.py,sha256=cx_5Y-RkJFkSQJH-hUEC_L3eW1jU2E426c4e6_csIyM,42
4
4
  arkitekt_next/apps/easy.py,sha256=Nz7LzGua01bmLBiniEvnaSx_WPaNxq_sla4wYyTLaKQ,3235
5
5
  arkitekt_next/apps/next.py,sha256=GF4RPwJZ1Lyhcwf_EEZvrWvu5gD6NgD0UHnM1Vxmnmk,1049
@@ -14,7 +14,7 @@ arkitekt_next/apps/service/herre_qt.py,sha256=GntkKHmwcQqEFab02SWwdd3xONo0fLVGEP
14
14
  arkitekt_next/apps/types.py,sha256=uozRXDDGJBL9hYCYGZF_XmtZ4ZvoLZeEEfJeL10Ve3U,1136
15
15
  arkitekt_next/bloks/__init__.py,sha256=_4EeR63d6avQUWLG4mK2n_FvogTPQ_Jx6f2_RvNbWeA,29
16
16
  arkitekt_next/bloks/admin.py,sha256=mRTfjIR1vsfY1ghgjWLjKYFAOh1pGCmQ_IEt2QOR3og,1353
17
- arkitekt_next/bloks/arkitekt.py,sha256=e20urxnObHL-7WqBcrhiiOjd6pCsaVSUYeodzCGaX9s,1753
17
+ arkitekt_next/bloks/arkitekt.py,sha256=ZyyHocaoPPCBZnbpBCkDzB2woXb1-ZbENr51UFERn2Q,1546
18
18
  arkitekt_next/bloks/base.py,sha256=6gsDc9sVYDqY4El2hhH32QiYHcYUd6eZQRgvhAuY2a0,6341
19
19
  arkitekt_next/bloks/config.py,sha256=YMQChT4SCdc_vvvbkAj_qGyA--6JVEHds7MalqUp3lw,1269
20
20
  arkitekt_next/bloks/fluss.py,sha256=dwBantNQfS2zhcQ1_nJp6327_6JDW-0nJog0os1wGzk,1066
@@ -28,7 +28,7 @@ arkitekt_next/bloks/minio.py,sha256=vl1RPpleT2THyecChRgWsaRIrzhhJwG4lBbt9YVtMgE,
28
28
  arkitekt_next/bloks/mount.py,sha256=IEod6LDuV5NNKvvRJ3Xgo8l2caVZnNmJYDgGGBUB3Cg,1088
29
29
  arkitekt_next/bloks/namegen.py,sha256=W9xco2d3eJLdL2NYpTFmqw2d4s3vCpBREIFNm38gMYY,1087
30
30
  arkitekt_next/bloks/orkestrator.py,sha256=TJfMr6VCEU0EP_0TPpNdJsLVydGlmaDfYK1EQp2ArW8,2447
31
- arkitekt_next/bloks/postgres.py,sha256=mQgS_iyaWZWB1x95WGl1ZLIG6s4ey28MXtwzn_aZKTw,4153
31
+ arkitekt_next/bloks/postgres.py,sha256=U3NE_GWUvxVGA5vY386dn6VhhqKgN9wdLCD6WniNsSc,4268
32
32
  arkitekt_next/bloks/redis.py,sha256=A9scMZohACsk-k1LQZo-rTFTB_eq12dqL4zVZkKdKLQ,2274
33
33
  arkitekt_next/bloks/rekuest.py,sha256=gdvyf_hazZ2iDi6-E5IEvfB5bvL3puyPNctEMKesgXQ,1048
34
34
  arkitekt_next/bloks/secret.py,sha256=06J9f6-o1NCE0ReakVOyA0KbmQ-xr2fCYQWKOc_z1QQ,1067
@@ -47,12 +47,12 @@ arkitekt_next/bloks/services/secret.py,sha256=cnZsH09gN9YRXBbmalZaFD2LcmWLlfm52m
47
47
  arkitekt_next/bloks/services/socket.py,sha256=3MbENiJrwQbFKrpWxax56F24elnSD7S-olgycfuOX7s,423
48
48
  arkitekt_next/bloks/socket.py,sha256=IW4954Hgms_oZsDIk9SgLoVGz07gW3sHi7-WuhN074Q,1067
49
49
  arkitekt_next/bloks/tailscale.py,sha256=87cJv9m7N_I3y2ZRvv5WVepRhvIZk4ftUpwa0yUdwj4,2961
50
- arkitekt_next/builders.py,sha256=wFIMPb4dSYuE-y-TiqZ8c_lxt1qMbgwQ4NnuMuj1rR8,7454
50
+ arkitekt_next/builders.py,sha256=mzyvhDI9u73_6sn2tGL-ZJh7PwdL_M8PIKqPqgzd4z0,7273
51
51
  arkitekt_next/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
52
  arkitekt_next/cli/commands/call/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
53
  arkitekt_next/cli/commands/call/local.py,sha256=YDummInGSb6lGKGiTlMSuXbE-Sz6dbfng6CsZaChCew,3338
54
54
  arkitekt_next/cli/commands/call/main.py,sha256=SdxlvSgA17-M_gwItiFU_srbh-CNdHpCTv_DkpOLojE,500
55
- arkitekt_next/cli/commands/call/remote.py,sha256=N2L74SMa9ZntSS0ILY9QtiPj0gGyuNPsjamf-UfmAtM,2248
55
+ arkitekt_next/cli/commands/call/remote.py,sha256=KNOBAg61kaapAgTl0dnv6LVD4d2p0GSuohK4r3OFxXQ,2092
56
56
  arkitekt_next/cli/commands/gen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
57
  arkitekt_next/cli/commands/gen/compile.py,sha256=lygqut1fIiopa4MbBXkv1X-45g6UBxDxpGP7R6h-b7U,1445
58
58
  arkitekt_next/cli/commands/gen/init.py,sha256=JV9x27Iy80QlmigXd7TSG2YIBHPGJBdEQ_HPenQaYZU,4092
@@ -71,7 +71,7 @@ arkitekt_next/cli/commands/kabinet/init.py,sha256=FMozj1kzrgdoZ13VR9BrPU8aqSlSyn
71
71
  arkitekt_next/cli/commands/kabinet/main.py,sha256=U5EWekRTsMZZ34abWFfwilhzrd-zZtpZbl8RsLN_bC8,1008
72
72
  arkitekt_next/cli/commands/kabinet/publish.py,sha256=zbjnoMliowje1nEuKFolFX5pZA2D_DzLjXlSxBbD88k,3596
73
73
  arkitekt_next/cli/commands/kabinet/stage.py,sha256=bXpC8fDmG6qFQVuLhqTCieOJnvFafj3Flg1BdIeciEw,2025
74
- arkitekt_next/cli/commands/kabinet/utils.py,sha256=x27qR7ksCuvASHkEAEaDuUAeuzjrZpzIp1W4lOF5f_0,1644
74
+ arkitekt_next/cli/commands/kabinet/utils.py,sha256=a1lGmGwhiVxsxFDt19GddNwXmAwUAfclgTMe3ErA43c,1666
75
75
  arkitekt_next/cli/commands/kabinet/validate.py,sha256=MSSuwjdJKDtXB6rkjRmG-PPK6cVwTcOuCRpgPDQ0uVg,2490
76
76
  arkitekt_next/cli/commands/kabinet/wizard.py,sha256=vbW-EAitypCl1HRjsgHRuwc18hQgOzAU8C__6SWuAzQ,9148
77
77
  arkitekt_next/cli/commands/manifest/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -110,15 +110,15 @@ arkitekt_next/cli/schemas/unlok.schema.graphql,sha256=fXR846snIBIqkuQ-PlYnSkQjkF
110
110
  arkitekt_next/cli/templates/filter.py,sha256=mD2jdNEXrZNagC_8WtuTisGJrGIbJDSylCvh19cF49I,650
111
111
  arkitekt_next/cli/templates/simple.py,sha256=IbcThJ5LryXVFQUdzxfHQCtzSNxEQWTxbD__Ygxsp4M,1171
112
112
  arkitekt_next/cli/texts.py,sha256=080QLAe8dhklkfoA8Yk6fLrQeRoUrTQLgWCZiWl7bNk,689
113
- arkitekt_next/cli/types.py,sha256=dMa_8Wht6cTe_bYS4Z6cpvW4dEc41FKip7RfCmN8o2E,10420
113
+ arkitekt_next/cli/types.py,sha256=Y7Y85pQJVHlOElMagjQKlDffI9hLOcQtvt55IJxhD4w,10427
114
114
  arkitekt_next/cli/ui.py,sha256=BR_AOsBIIHwojI5otBzT_560-ep5Dw1xAHKsO2zOOJQ,3493
115
115
  arkitekt_next/cli/utils.py,sha256=rl1hfQIVzepLHPN_ZWuvfVH-IIVqcSfiFGyfNtL1XCo,445
116
116
  arkitekt_next/cli/validators.py,sha256=XkLrOrDzBJwcG1keTawa_NJPt3QIBhb5KjepeH4N1KA,719
117
117
  arkitekt_next/cli/vars.py,sha256=ev7cKDSPoik8hU9A_ohNpjRZX4FT1GYJaBoGLnxCKjU,982
118
118
  arkitekt_next/cli/versions/v1.yaml,sha256=rv2-F6FQbTZi_H6pSE_csdICdtKBObDdoo_asOFi43Y,12
119
119
  arkitekt_next/constants.py,sha256=OMNXceT6p9hxo3DLLH-632HtZqOe29E_1vrdeNiP4ZE,94
120
- arkitekt_next/model.py,sha256=4ZZljn-UAK8EXltYTuzi_L7ygCVllqR0tDHOvMv1oW4,4476
121
- arkitekt_next/qt/__init__.py,sha256=bvBdD3TKL10kc3mHupdRIY9qdkeZX_Bj-JN82Xv2MaI,455
120
+ arkitekt_next/model.py,sha256=w1R5wiwyyGj1_SgSARRpdTsO4E82Uu3d-8FYXauTETA,4473
121
+ arkitekt_next/qt/__init__.py,sha256=5tCCd-FA3sMN9Lo5JRUYUM6xgs2zxyHj5YDpdWYbR0w,471
122
122
  arkitekt_next/qt/assets/dark/gear.png,sha256=nYl1JZhcpwd7s5FgG2g-1RpkK7TH_QQRqJMmK6r0BpU,6296
123
123
  arkitekt_next/qt/assets/dark/green pulse.gif,sha256=cUd2F3Qlvjb7SnsU-LjGgeLTa8KoPgu3C-LNrixIQds,105386
124
124
  arkitekt_next/qt/assets/dark/orange pulse.gif,sha256=0gDvrRed0mzZZPHB4tP6vptx7myUCAa_hEVGdjRhNy8,94769
@@ -129,15 +129,15 @@ arkitekt_next/qt/assets/light/green pulse.gif,sha256=cUd2F3Qlvjb7SnsU-LjGgeLTa8K
129
129
  arkitekt_next/qt/assets/light/orange pulse.gif,sha256=0gDvrRed0mzZZPHB4tP6vptx7myUCAa_hEVGdjRhNy8,94769
130
130
  arkitekt_next/qt/assets/light/pink pulse.gif,sha256=rxd6ZTHSIG9JZuuHhi3jiSB_JYFBZpy7OWUeZETlhQ4,107513
131
131
  arkitekt_next/qt/assets/light/red pulse.gif,sha256=U7WLbZvSl5e-Ob5RmawtlC0Rh9VVHxkjDbGjj7NYVUo,108749
132
- arkitekt_next/qt/builders.py,sha256=AI_4WSDlT3sk9IVtxnepZPjGO4gIYfHa0I40MFUgj6o,2808
133
- arkitekt_next/qt/magic_bar.py,sha256=Ni_c53A1yR5A6CGXMqBU-IPKzb3tVXL9r-K6e0rdRY8,18301
132
+ arkitekt_next/qt/builders.py,sha256=S5XzxzH-Tq-OAvrbP9V8BtY34Et4Zgj_7RFmnWjRN_8,8929
133
+ arkitekt_next/qt/magic_bar.py,sha256=o3Z9F2QutVd6JLEY4tEQ5-vfjIBXpgfYz8HXcWgaqfc,18308
134
134
  arkitekt_next/qt/types.py,sha256=jI9UHt1Rn-fxGZfeImTO9-yHh0zJPzk7CwvpnUXdirg,1085
135
135
  arkitekt_next/qt/utils.py,sha256=MgBPtPmCSBkIuATov3UgREESwxAHh77lWNNxyE7Qs48,773
136
- arkitekt_next/service_registry.py,sha256=0Qt3PNPRBlhIGWMeB04ZVmOmNI-cFCt_o2F6UrplKA8,3577
136
+ arkitekt_next/service_registry.py,sha256=oryaRLS2kalmV1Qf4_SWdLotBopTsdHNaVlnt1TGZyI,3607
137
137
  arkitekt_next/tqdm.py,sha256=FgrwpAwFTXBTEPY4rS7K4Gs8Wdjp74mUk4_OEU8hWZM,1526
138
138
  arkitekt_next/utils.py,sha256=csBRBnxnErMRTilNBYAtIe0lPBb6E3uplqwsVGs5Wkk,2390
139
- arkitekt_next-0.7.59.dist-info/LICENSE,sha256=YZ2oRjC248t-GpoEyw7J13vwKYNG6zhYMaEAix6EzF0,1089
140
- arkitekt_next-0.7.59.dist-info/METADATA,sha256=xC-YhjjgakOM4HAJohH3Udvvmo6feaLfUyASRlb6XYU,6084
141
- arkitekt_next-0.7.59.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
142
- arkitekt_next-0.7.59.dist-info/entry_points.txt,sha256=-hxikQx4xZ6TiOnWVDOlTN_kcAISgGFvTHXIchsCHSc,60
143
- arkitekt_next-0.7.59.dist-info/RECORD,,
139
+ arkitekt_next-0.8.0.dist-info/LICENSE,sha256=YZ2oRjC248t-GpoEyw7J13vwKYNG6zhYMaEAix6EzF0,1089
140
+ arkitekt_next-0.8.0.dist-info/METADATA,sha256=3dGdRzfLYsDy5iaAPdpL4RKibHBxAA4GFmeB8UQEUio,6084
141
+ arkitekt_next-0.8.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
142
+ arkitekt_next-0.8.0.dist-info/entry_points.txt,sha256=-hxikQx4xZ6TiOnWVDOlTN_kcAISgGFvTHXIchsCHSc,60
143
+ arkitekt_next-0.8.0.dist-info/RECORD,,