amsdal_cli 0.5.2__py3-none-any.whl → 0.5.3__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.
@@ -7,6 +7,8 @@ from typing import Annotated
7
7
  import typer
8
8
  from rich import print as rprint
9
9
 
10
+ from amsdal_cli.commands.migrations.utils import render_migrations_list
11
+
10
12
  if TYPE_CHECKING:
11
13
  from amsdal_models.migration.data_classes import MigrationFile
12
14
 
@@ -58,17 +60,16 @@ def list_migrations(
58
60
  """
59
61
  from amsdal.configs.constants import CORE_MIGRATIONS_PATH
60
62
  from amsdal.configs.main import settings
61
- from amsdal_models.migration.data_classes import ModuleType
62
63
  from amsdal_models.migration.migrations_loader import MigrationsLoader
63
64
  from amsdal_models.migration.utils import build_migrations_module_name
64
65
  from amsdal_models.migration.utils import contrib_to_module_root_path
65
66
  from amsdal_utils.config.manager import AmsdalConfigManager
67
+ from amsdal_utils.models.enums import ModuleType
66
68
 
67
69
  from amsdal_cli.commands.build.services.builder import AppBuilder
68
70
  from amsdal_cli.commands.migrations.constants import MIGRATIONS_DIR_NAME
69
71
  from amsdal_cli.utils.cli_config import CliConfig
70
72
  from amsdal_cli.utils.text import rich_info
71
- from amsdal_cli.utils.text import rich_success
72
73
 
73
74
  if ctx.invoked_subcommand is not None:
74
75
  return
@@ -130,35 +131,35 @@ def list_migrations(
130
131
  ),
131
132
  )
132
133
 
133
- rprint(rich_success('Core:'))
134
-
135
- for _migration in core_loader:
136
- _is_migrated = 'x' if _migration.number in _core_applied_numbers else ' '
137
- _color = 'green' if _is_migrated == 'x' else 'grey'
138
- rprint(rf'[{_color}] - \[{_is_migrated}] {_migration.path.name}[/{_color}]')
134
+ all_migrations = list(core_loader)
139
135
 
140
- rprint(rich_success('Contrib:'))
141
136
  for _contrib, _loader in contrib_loaders:
142
- _contrib_name = _contrib.rsplit('.', 2)[0]
143
- _contrib_module_name = build_migrations_module_name(
144
- '.'.join(_contrib.split('.')[:-2]),
145
- settings.CONTRIB_MIGRATIONS_DIRECTORY_NAME,
146
- )
147
- _applied_numbers = _contrib_applied_numbers[_contrib_module_name]
137
+ all_migrations.extend(list(_loader))
138
+
139
+ def _is_migrated(migration: 'MigrationFile') -> bool:
140
+ if migration.type == ModuleType.CORE:
141
+ return migration.number in _core_applied_numbers
142
+
143
+ if migration.type == ModuleType.CONTRIB:
144
+ _applied_numbers = _contrib_applied_numbers[migration.module] # type: ignore[index]
145
+ return migration.number in _applied_numbers
148
146
 
149
- for _migration in _loader:
150
- _is_migrated = 'x' if _migration.number in _applied_numbers else ' '
151
- _color = 'green' if _is_migrated == 'x' else 'grey'
152
- rprint(rf'[{_color}] - \[{_is_migrated}] {_contrib_name}: {_migration.path.name}[/{_color}]')
147
+ return migration.number in _app_applied_numbers
153
148
 
149
+ def _color(migration: 'MigrationFile') -> str:
150
+ _applied = 'green'
151
+ _missing = 'grey'
152
+
153
+ return _applied if _is_migrated(migration) else _missing
154
+
155
+ render_migrations_list(
156
+ all_migrations,
157
+ color=_color,
158
+ is_migrated=_is_migrated,
159
+ )
154
160
  _app_migration_files = list(app_migrations_loader)
155
161
 
156
162
  if _app_migration_files:
157
- rprint(rich_success('App:'))
158
-
159
- for _migration in _app_migration_files:
160
- _is_migrated = 'x' if _migration.number in _app_applied_numbers else ' '
161
- _color = 'green' if _is_migrated == 'x' else 'grey'
162
- rprint(rf'[{_color}] - \[{_is_migrated}] {_migration.path.name}[/{_color}]')
163
+ render_migrations_list(_app_migration_files, _color, is_migrated=_is_migrated)
163
164
  else:
164
165
  rprint(rich_info("You don't have any migrations in your app"))
@@ -0,0 +1,86 @@
1
+ from collections import defaultdict
2
+ from collections.abc import Callable
3
+ from typing import TYPE_CHECKING
4
+
5
+ from rich import print as rprint
6
+
7
+ if TYPE_CHECKING:
8
+ from amsdal_models.migration.data_classes import MigrationFile
9
+
10
+
11
+ def render_migrations_list(
12
+ migrations: list['MigrationFile'],
13
+ color: str | Callable[['MigrationFile'], str] = 'yellow',
14
+ *,
15
+ is_migrated: bool | Callable[['MigrationFile'], bool] = False,
16
+ ) -> None:
17
+ from amsdal_utils.models.enums import ModuleType
18
+
19
+ from amsdal_cli.utils.text import rich_success
20
+
21
+ migrations_per_type = defaultdict(list)
22
+
23
+ for migration in migrations:
24
+ migrations_per_type[migration.type].append(migration)
25
+
26
+ if ModuleType.CORE in migrations_per_type:
27
+ rprint(rich_success('Core:'))
28
+
29
+ for migration in migrations_per_type[ModuleType.CORE]:
30
+ if callable(color):
31
+ _color = color(migration)
32
+ else:
33
+ _color = color
34
+
35
+ if callable(is_migrated):
36
+ _is_migrated = is_migrated(migration)
37
+ else:
38
+ _is_migrated = is_migrated
39
+
40
+ rprint(rf'[{_color}] - \[{_is_migrated_mark(is_migrated=_is_migrated)}] {migration.path.name}[/{_color}]')
41
+
42
+ if ModuleType.CONTRIB in migrations_per_type:
43
+ rprint(rich_success('Contrib:'))
44
+
45
+ for migration in migrations_per_type[ModuleType.CONTRIB]:
46
+ if migration.module:
47
+ contrib_name = '.'.join(migration.module.split('.')[:-1])
48
+ else:
49
+ contrib_name = 'N/A'
50
+
51
+ if callable(color):
52
+ _color = color(migration)
53
+ else:
54
+ _color = color
55
+
56
+ if callable(is_migrated):
57
+ _is_migrated = is_migrated(migration)
58
+ else:
59
+ _is_migrated = is_migrated
60
+
61
+ _mark = _is_migrated_mark(is_migrated=_is_migrated)
62
+ rprint(
63
+ rf'[{_color}] - \[{_mark}] {contrib_name}: {migration.path.name}[/{_color}]',
64
+ )
65
+
66
+ if ModuleType.USER in migrations_per_type:
67
+ rprint(rich_success('App:'))
68
+
69
+ for migration in migrations_per_type[ModuleType.USER]:
70
+ if callable(color):
71
+ _color = color(migration)
72
+ else:
73
+ _color = color
74
+
75
+ if callable(is_migrated):
76
+ _is_migrated = is_migrated(migration)
77
+ else:
78
+ _is_migrated = is_migrated
79
+
80
+ rprint(
81
+ rf'[{_color}] - \[{_is_migrated_mark(is_migrated=_is_migrated)}] {migration.path.name}[/{_color}]',
82
+ )
83
+
84
+
85
+ def _is_migrated_mark(*, is_migrated: bool) -> str:
86
+ return 'x' if is_migrated else ' '
@@ -310,7 +310,7 @@ def _is_migration_applied(
310
310
  migration: 'MigrationFile',
311
311
  all_applied_migrations: list['MigrationFile'],
312
312
  ) -> bool:
313
- from amsdal_models.migration.data_classes import ModuleType
313
+ from amsdal_utils.models.enums import ModuleType
314
314
 
315
315
  for applied_migration in all_applied_migrations:
316
316
  is_applied = migration.type == applied_migration.type and migration.number == applied_migration.number
@@ -84,8 +84,8 @@ async def _async_run(cli_config: 'CliConfig', app_source_path: Path, mode: Worke
84
84
 
85
85
  try:
86
86
  await AsyncBackgroundTransactionManager().connection.run_worker(
87
- _init_function, # type: ignore # noqa: [arg-type]
88
- _shutdown_function, # type: ignore # noqa: [arg-type]
87
+ _init_function, # type: ignore[arg-type]
88
+ _shutdown_function, # type: ignore[arg-type]
89
89
  mode=mode,
90
90
  )
91
91
  except AmsdalInitiationError as e:
amsdal_cli/config/main.py CHANGED
@@ -20,6 +20,7 @@ class Settings(BaseSettings):
20
20
 
21
21
  COMMANDS: list[str | ModuleType] = Field(
22
22
  default=[
23
+ 'amsdal_cli.commands.api_check',
23
24
  'amsdal_cli.commands.new',
24
25
  'amsdal_cli.commands.generate',
25
26
  'amsdal_cli.commands.verify',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: amsdal_cli
3
- Version: 0.5.2
3
+ Version: 0.5.3
4
4
  Summary: CLI for AMSDAL framework
5
5
  Project-URL: Documentation, https://pypi.org/project/amsdal_cli/#readme
6
6
  Project-URL: Issues, https://pypi.org/project/amsdal_cli/
@@ -125,6 +125,7 @@ Requires-Dist: amsdal-server==0.5.*
125
125
  Requires-Dist: click<8.2.0
126
126
  Requires-Dist: faker==27.*
127
127
  Requires-Dist: gitpython~=3.1
128
+ Requires-Dist: httpx==0.28.*
128
129
  Requires-Dist: jinja2~=3.1
129
130
  Requires-Dist: pydantic-settings~=2.2
130
131
  Requires-Dist: pydantic~=2.3
@@ -1,11 +1,22 @@
1
1
  amsdal_cli/Third-Party Materials - AMSDAL Dependencies - License Notices.md,sha256=uHJlGG0D4tbpUi8cq-497NNO9ltQ67a5448k-T14HTw,68241
2
- amsdal_cli/__about__.py,sha256=glsk81MrslMVQFReYet26elGhdxBZYmME4LF8nyLdxA,124
2
+ amsdal_cli/__about__.py,sha256=yDzKlxIKnYM7LUEpIPD88OiYiaHBZBoM6qn8o89jslE,124
3
3
  amsdal_cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  amsdal_cli/app.py,sha256=_ucuLT5ospf1ifFKEG0IMfVnxKjnvPUQ4iMhkvOfCrc,466
5
5
  amsdal_cli/main.py,sha256=LtH-BD1eJrAUecjKzC8Gx7kYFUstOMH1erdeJUVqFB8,144
6
6
  amsdal_cli/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
7
  amsdal_cli/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- amsdal_cli/commands/callbacks.py,sha256=MtvIBfz4VzLZTwR0oIdEf1nRAMWkc8h8u3-Qaie9-dM,4160
8
+ amsdal_cli/commands/callbacks.py,sha256=YK7HR-EEQVlpTVz30sIGYJUQ-No_v9kY_dqveQjEcvY,4173
9
+ amsdal_cli/commands/api_check/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ amsdal_cli/commands/api_check/command.py,sha256=dKi37KfkRY6S2PBSeG2kopnZs8OvCkefQCkPx4ud_4Y,4193
11
+ amsdal_cli/commands/api_check/config.py,sha256=X398zfXddxHCJY4v3PBz6IyWsAsTXJRNNt07Nf_0ow8,6711
12
+ amsdal_cli/commands/api_check/data_classes.py,sha256=qohIcWge323oIYIvuo5586BS21jyDw0y3ZPikQfb7Co,220
13
+ amsdal_cli/commands/api_check/operation_log.py,sha256=4E7BTMz74cotS1OAvvd0x6xbXKz9B-PAbjkmTsd_wsI,2620
14
+ amsdal_cli/commands/api_check/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
+ amsdal_cli/commands/api_check/services/comparison.py,sha256=LFQI6qg6LUcPda72qcJSJGdgVVEcQPjTcrtf9wrh4fM,1493
16
+ amsdal_cli/commands/api_check/services/data_factory.py,sha256=m7bcNw2x0I2M-odYQ7_rHIDAdv6UcQOjHTt2LJZ3hhc,5565
17
+ amsdal_cli/commands/api_check/services/loader.py,sha256=P-uygPa-RsZUiTMxSB_26Pm8I9T62EmclKGyluksEjw,302
18
+ amsdal_cli/commands/api_check/services/runner.py,sha256=hRrjXb5LGDQHHle7Zegg4PHV2bUYZmWXcA5krnnr0VI,18731
19
+ amsdal_cli/commands/api_check/services/storage.py,sha256=Onlp7uR6PWR-sCPZVpzPyKyn7isYc8ppPcg6li2Ss78,514
9
20
  amsdal_cli/commands/build/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
21
  amsdal_cli/commands/build/command.py,sha256=1-Thx2Iz-xr9UDulTiBRZYValCdWhg-SgUAnF370N1o,742
11
22
  amsdal_cli/commands/build/constants.py,sha256=an5hbofZrKzyFfxTCu4VSmNQGtAMRSrDj1_TnncyZOw,42
@@ -32,7 +43,7 @@ amsdal_cli/commands/build/schemas/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5J
32
43
  amsdal_cli/commands/build/schemas/utils/merger.py,sha256=8dlSV3qgGAGNbOtGGx8zQ7yC99dihxg8JwPHMDboU2w,2229
33
44
  amsdal_cli/commands/build/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
45
  amsdal_cli/commands/build/services/builder.py,sha256=vdR5rqJvjJjfrAAqkFNfnF6MUr4Nai5K_gxyvCQa8mw,3220
35
- amsdal_cli/commands/build/services/mixin.py,sha256=KdjyrB0CaFQWIU9AZ6Z63tmfIEX5ZEo5HKD32KemDMQ,5749
46
+ amsdal_cli/commands/build/services/mixin.py,sha256=8MHkasdQ1nPpBY90S4KHpr1rTHLC9Om2v89golcWE38,5749
36
47
  amsdal_cli/commands/build/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
48
  amsdal_cli/commands/build/utils/build_config_file.py,sha256=65s3rP_nnr5FJLQlYStGF2JNYxExq5tWZvIU_h8Ae7I,2009
38
49
  amsdal_cli/commands/ci_cd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -126,7 +137,7 @@ amsdal_cli/commands/generate/utils/tests/async_mode_utils.py,sha256=iub84Pj5TMa3
126
137
  amsdal_cli/commands/generate/utils/tests/conftest_utils.py,sha256=8KzHtDh7eQGghhj5aZkY7Mu2rrlkBgM4Khf857iGG1Y,838
127
138
  amsdal_cli/commands/generate/utils/tests/function_utils.py,sha256=Bkk9JDbANX2aSreNRr1Bste5rPwVKc2HV5xLFg2dQK4,496
128
139
  amsdal_cli/commands/generate/utils/tests/model_utils.py,sha256=CBfR9AcL6Q1boEejjmOD16F0kgJFdIjYYWNE3vQMkfE,4051
129
- amsdal_cli/commands/generate/utils/tests/type_utils.py,sha256=PkPmSvLCKOK5wWw1Q9oVMUZ0nUpHEtj6PlBsO7enmzY,9247
140
+ amsdal_cli/commands/generate/utils/tests/type_utils.py,sha256=yglZHcvAQ0m6JnwQEBxHdcWxlkHY65P-Cp81fCrC3q8,9325
130
141
  amsdal_cli/commands/generate/utils/tests/unit.py,sha256=KRqBhk_jy_1vp0RZub7HdYxfhn3Bra2v0heDNNPldeE,27741
131
142
  amsdal_cli/commands/generate/utils/tests/templates/async/conftest.py,sha256=9GfoV_HzwuWtglI7uz0fP5_pOsPk2f56elaoinuPa80,1632
132
143
  amsdal_cli/commands/generate/utils/tests/templates/sync/conftest.py,sha256=wMmnKQnVTSJsS5MdH25ChRcc-aQevQYqIZhXwLnZl0U,1564
@@ -134,9 +145,10 @@ amsdal_cli/commands/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
134
145
  amsdal_cli/commands/migrations/app.py,sha256=0HsKjZ5D2j9xkOi2Fuvs3VdlhWyQnS8XJ6pKRi9EcFI,312
135
146
  amsdal_cli/commands/migrations/command.py,sha256=jlpdYZAc02ZUBxSdzGSzkDxEb1nlHNzoq05FdRCSzus,206
136
147
  amsdal_cli/commands/migrations/constants.py,sha256=846-DQ-Iqcxw2akd5aBAmbnXHDmRFqEKu6vai2ZFBkU,35
148
+ amsdal_cli/commands/migrations/utils.py,sha256=Fvu6NlIFL3OAz0MhLkvnucIsHBZlDDCOZZ38VhNahws,2700
137
149
  amsdal_cli/commands/migrations/sub_commands/__init__.py,sha256=_rWbDyY3DPdN-6vE60djCtHejvSkl6d1e2Z4ScM52bo,976
138
- amsdal_cli/commands/migrations/sub_commands/apply.py,sha256=FmkdIE5RUrCCkLJVgM3rtLva-4rYkKlzbjanOQqadUQ,9744
139
- amsdal_cli/commands/migrations/sub_commands/list.py,sha256=cskcdftYy-u-_rH1iPhreTQv_XiGD42bwi3vQCVe8to,6188
150
+ amsdal_cli/commands/migrations/sub_commands/apply.py,sha256=4MyO_gP7r4PBRz_agi2xnoMTHcLlvxlo4335mmLrpYQ,8696
151
+ amsdal_cli/commands/migrations/sub_commands/list.py,sha256=vC-oeTVHjYNzI_HhiylZSNeOsIFvnDZ6TRwrqQ-wpUk,5833
140
152
  amsdal_cli/commands/migrations/sub_commands/make.py,sha256=5DiSp5j_iv1Mk7eVFRJ_yCVdc1lZGkctmtY-tNbqaTk,6322
141
153
  amsdal_cli/commands/new/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
142
154
  amsdal_cli/commands/new/command.py,sha256=NDuDZNwreyuHsv4tbE-yrNOJViB8wk35IcKvGKQXPXo,3302
@@ -164,7 +176,7 @@ amsdal_cli/commands/restore/command.py,sha256=4ybZ_p5i7t3QHfvz__FUmdO2vaK-4D5YR1
164
176
  amsdal_cli/commands/restore/enums.py,sha256=6SiKMRGlSjiLyepfbfQFXGAYqlM6Bkoeko2KscntTUQ,307
165
177
  amsdal_cli/commands/serve/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
178
  amsdal_cli/commands/serve/command.py,sha256=x1_8gZDhRCUQt2-8v1K7__2uPjIlte_tY1ctJxVbl4k,6599
167
- amsdal_cli/commands/serve/utils.py,sha256=GhUxSdNN2eX8XbzVtl6IdAcMUY_UdozHKkoCVgaTVKs,18613
179
+ amsdal_cli/commands/serve/utils.py,sha256=tb0OjE8uAWfEfpXt_LUJjJG7vWoLKpa152R3Svlan_w,18602
168
180
  amsdal_cli/commands/serve/filters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
169
181
  amsdal_cli/commands/serve/filters/models_watch_filter.py,sha256=cnoAjrn-PYDAFq5MtgbQ6QeCvJJmcNisVNlA8QtFv4A,170
170
182
  amsdal_cli/commands/serve/filters/static_files_watch_filter.py,sha256=jKAF5RHq1au2v0kcOrqaAHP1x5IUjt_KgZURJLm29Tw,552
@@ -182,9 +194,9 @@ amsdal_cli/commands/worker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
182
194
  amsdal_cli/commands/worker/app.py,sha256=X0irXtvo7Gq2g-tsRTPxi9KkgM38DsIvtDMaeGnqZJY,148
183
195
  amsdal_cli/commands/worker/command.py,sha256=e3uL38VYCp71-XsVYvE1xlt2FqhP54ujlhVFhK7_9Jw,186
184
196
  amsdal_cli/commands/worker/sub_commands/__init__.py,sha256=5AVFexW1UpfPpfNfYoioA6Pix1uiRSEjVEa-_wP89j4,100
185
- amsdal_cli/commands/worker/sub_commands/run.py,sha256=Bnl__gGl058IR_7JuJ915fOWbctRNH_Vqv3a-PFx8Do,4375
197
+ amsdal_cli/commands/worker/sub_commands/run.py,sha256=gQ5fuQwB4Xouyosau0X2YB38DsomkZyUt2MREXeg7jE,4355
186
198
  amsdal_cli/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
187
- amsdal_cli/config/main.py,sha256=A1XPNQmf7usUu2h80DlRiOPpyT8KkGVTjxUeCYHjpaU,2787
199
+ amsdal_cli/config/main.py,sha256=QMLjpFtQJMw97h44MEeymr_qUQiXY4qA7luPtA1i6zk,2832
188
200
  amsdal_cli/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
189
201
  amsdal_cli/utils/alias_group.py,sha256=v0ninrhZGtZFuJtUH6ZZZ97Irs96nkmIBFm2gY1NdmU,991
190
202
  amsdal_cli/utils/check_versions.py,sha256=4Q3GwY_0xgP_RV_ITuFSDigXds-f1QhqCqkUkn-CSMI,1475
@@ -199,8 +211,8 @@ amsdal_cli/utils/vcs/base.py,sha256=jC05ExJZDnyHAsW7_4IDf8gQcYgK4dXq3zNlFIX66T4,
199
211
  amsdal_cli/utils/vcs/dummy.py,sha256=Lk8MT-b0YlHHUsiXsq5cvmPwcl4jTYdo8piN5_C8ORA,434
200
212
  amsdal_cli/utils/vcs/enums.py,sha256=tYR9LN1IOr8BZFbSeX_vDlhn8fPl4IU-Yakii8lRDYs,69
201
213
  amsdal_cli/utils/vcs/git.py,sha256=xHynbZcV6p2D3RFCwu1MGGpV9D7eK-pGUtO8kVexTQM,1269
202
- amsdal_cli-0.5.2.dist-info/METADATA,sha256=Cw8QNTI-NaKoXG7Ijm3wvb4HXR3rk056YgJT0InZ6eg,57076
203
- amsdal_cli-0.5.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
204
- amsdal_cli-0.5.2.dist-info/entry_points.txt,sha256=GC-8LZsD3W--Pd9_gD4W3tw3ZZyPbSvkZ-qWc9Fx0NI,47
205
- amsdal_cli-0.5.2.dist-info/licenses/LICENSE.txt,sha256=hG-541PFYfNJi9WRZi_hno91UyqNg7YLK8LR3vLblZA,27355
206
- amsdal_cli-0.5.2.dist-info/RECORD,,
214
+ amsdal_cli-0.5.3.dist-info/METADATA,sha256=RvLkQBMaWxiRAow5onI1RUpGsao_ft2BD9S1k4LmsuI,57105
215
+ amsdal_cli-0.5.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
216
+ amsdal_cli-0.5.3.dist-info/entry_points.txt,sha256=GC-8LZsD3W--Pd9_gD4W3tw3ZZyPbSvkZ-qWc9Fx0NI,47
217
+ amsdal_cli-0.5.3.dist-info/licenses/LICENSE.txt,sha256=hG-541PFYfNJi9WRZi_hno91UyqNg7YLK8LR3vLblZA,27355
218
+ amsdal_cli-0.5.3.dist-info/RECORD,,