dsw-tdk 4.20.1__py2.py3-none-any.whl → 4.22.0__py2.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.
dsw/tdk/validation.py CHANGED
@@ -98,6 +98,38 @@ def _validate_natural(field_name: str, value) -> List[ValidationError]:
98
98
  return []
99
99
 
100
100
 
101
+ def _validate_metamodel_version(field_name: str, value) -> List[ValidationError]:
102
+ if isinstance(value, int) and value > 0:
103
+ return []
104
+ if isinstance(value, str) and '.' in value:
105
+ parts = value.split('.')
106
+ if len(parts) != 2:
107
+ return [ValidationError(
108
+ field_name=field_name,
109
+ message='It must be in format <MAJOR>.<MINOR>',
110
+ )]
111
+ try:
112
+ major = int(parts[0])
113
+ minor = int(parts[1])
114
+ if major < 1 or minor < 0:
115
+ return [ValidationError(
116
+ field_name=field_name,
117
+ message='It must be in format <MAJOR>.<MINOR> '
118
+ 'with MAJOR >= 1 and MINOR >= 0',
119
+ )]
120
+ return []
121
+ except ValueError:
122
+ return [ValidationError(
123
+ field_name=field_name,
124
+ message='It must be in format <MAJOR>.<MINOR> '
125
+ 'with MAJOR >= 1 and MINOR >= 0',
126
+ )]
127
+ return [ValidationError(
128
+ field_name=field_name,
129
+ message='It must be a positive integer or in format <MAJOR>.<MINOR>',
130
+ )]
131
+
132
+
101
133
  def _validate_package_id(field_name: str, value: str) -> List[ValidationError]:
102
134
  res = []
103
135
  if value is None:
@@ -255,7 +287,7 @@ TemplateValidator = GenericValidator({
255
287
  'description': [_validate_required, _validate_non_empty],
256
288
  'readme': [_validate_required, _validate_non_empty],
257
289
  'license': [_validate_required, _validate_non_empty],
258
- 'metamodel_version': [_validate_natural],
290
+ 'metamodel_version': [_validate_metamodel_version, _validate_required],
259
291
  'allowed_packages': [_validate_package_filters],
260
292
  'formats': [_validate_required, _validate_formats],
261
293
  })
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dsw-tdk
3
- Version: 4.20.1
3
+ Version: 4.22.0
4
4
  Summary: Data Stewardship Wizard Template Development Toolkit
5
5
  Author-email: Marek Suchánek <marek.suchanek@ds-wizard.org>
6
6
  License: Apache License 2.0
@@ -15,6 +15,7 @@ Classifier: Programming Language :: Python
15
15
  Classifier: Programming Language :: Python :: 3.10
16
16
  Classifier: Programming Language :: Python :: 3.11
17
17
  Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Programming Language :: Python :: 3.13
18
19
  Classifier: Topic :: Internet :: WWW/HTTP
19
20
  Classifier: Topic :: Utilities
20
21
  Requires-Python: <4,>=3.10
@@ -0,0 +1,21 @@
1
+ dsw/tdk/__init__.py,sha256=zJeTybb0SqiNdGLkANjRa36hku4axi17mZL2dM3tHto,288
2
+ dsw/tdk/__main__.py,sha256=cCzxo6f7raF50kQE-nM_segNjCNe723ZrxOBB6f3qwc,84
3
+ dsw/tdk/api_client.py,sha256=04obYHBIVO-HYQn2-tBIMMgtvOGb1_p6dxrM-orGMco,14925
4
+ dsw/tdk/build_info.py,sha256=bDd3GoYgJdJUbXf4stBKs2LPR0wqqskNu7LnHSTG_Kw,381
5
+ dsw/tdk/cli.py,sha256=CLKd8F9O0nKJ5JyDSdKL6xp2tibnImxhwdl8ejCQU7k,28117
6
+ dsw/tdk/config.py,sha256=ZZlpMqJ5QGsiywwleXtFS2DO1bhnp3ttGOsNq4VoPYc,4888
7
+ dsw/tdk/consts.py,sha256=sKAoQ57f7WaTsjDTBWAaEp_JjQLLuhD04GJuUObQ6Vs,713
8
+ dsw/tdk/core.py,sha256=uEsJgHJDI1K_Cwb4OrzNk8b62uPv_3NmgCd2XOU8B8Q,27432
9
+ dsw/tdk/model.py,sha256=e7wAraebj66AMRSKc1Lkmvrsj7m9ep2UcAxMdwd_x0c,17340
10
+ dsw/tdk/utils.py,sha256=ICZpgxkDRWg9lq1gnHyQCEISFMtmGtu8Hl5yEclwn14,5685
11
+ dsw/tdk/validation.py,sha256=PxgthiZJIk7al64n7Nj7Bp5Vvg_ltxRm3ocp74UO8Y8,10173
12
+ dsw/tdk/templates/LICENSE.j2,sha256=6WzK06169rxZ4V_boYgejcZkw-1Up_WoU18iI3Gbkfs,60
13
+ dsw/tdk/templates/README.md.j2,sha256=FzUABeMM8To0oT48Kytoox64uAZ8F7FSAAXgpyKzqdU,247
14
+ dsw/tdk/templates/env.j2,sha256=yUaY7ZLbjdG45-_q6KWi-YnX9bjP7_lfXrowhJF1he0,98
15
+ dsw/tdk/templates/starter.j2,sha256=JKJIkiXsmBO4P6pKXM4IvSz3JgJhqCnaZI1NVfPPnXg,246
16
+ dsw_tdk-4.22.0.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
17
+ dsw_tdk-4.22.0.dist-info/METADATA,sha256=oRyaxNx4Zp6RgCweNpZ38miCwdIA4OJCXuvb-9QMR0w,6095
18
+ dsw_tdk-4.22.0.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
19
+ dsw_tdk-4.22.0.dist-info/entry_points.txt,sha256=lwD5ZzRCbTFSjP1-SkhYsaJe8sEXOWWgMAMUhw0v2Hk,41
20
+ dsw_tdk-4.22.0.dist-info/top_level.txt,sha256=7SfbsHFoJ_vlAgG6C-xzETETwYO71dBrGnod8uMFnjw,4
21
+ dsw_tdk-4.22.0.dist-info/RECORD,,
@@ -1,20 +0,0 @@
1
- dsw/tdk/__init__.py,sha256=zJeTybb0SqiNdGLkANjRa36hku4axi17mZL2dM3tHto,288
2
- dsw/tdk/__main__.py,sha256=cCzxo6f7raF50kQE-nM_segNjCNe723ZrxOBB6f3qwc,84
3
- dsw/tdk/api_client.py,sha256=1WpUSgi8BfNrq3rUHWSfcZnmNGydID1mzkWBp5TnNmc,14727
4
- dsw/tdk/build_info.py,sha256=B7G6f35b9qxhOhlr0UqYbliHWjjdoei5gQ9APmLDuRc,381
5
- dsw/tdk/cli.py,sha256=uz3nLv8gUZQqKvarc_STMlpgkGylhAprBFRMcJphc2Q,21965
6
- dsw/tdk/consts.py,sha256=gkVlaRJESBKboWg0dj_qORNoaMIRxsXkN0yjffG7Th0,604
7
- dsw/tdk/core.py,sha256=qnYSMaoN2j4Jt16yywfG-Z_SE27eGLzTCvf-SzMdB8A,27329
8
- dsw/tdk/model.py,sha256=MKTFmfSYc41GZc-XgyVQR8gzWGAfE1afjNQP8eVY7DM,17244
9
- dsw/tdk/utils.py,sha256=ICZpgxkDRWg9lq1gnHyQCEISFMtmGtu8Hl5yEclwn14,5685
10
- dsw/tdk/validation.py,sha256=EINgQAk-fAATIjwwpzds1YCzuetVkefGDvYVxTzjV-o,8972
11
- dsw/tdk/templates/LICENSE.j2,sha256=6WzK06169rxZ4V_boYgejcZkw-1Up_WoU18iI3Gbkfs,60
12
- dsw/tdk/templates/README.md.j2,sha256=FzUABeMM8To0oT48Kytoox64uAZ8F7FSAAXgpyKzqdU,247
13
- dsw/tdk/templates/env.j2,sha256=7IJ6HAIY1bXKLake4c72DSEUcQtAquO5wlSgH8vg_8s,97
14
- dsw/tdk/templates/starter.j2,sha256=JKJIkiXsmBO4P6pKXM4IvSz3JgJhqCnaZI1NVfPPnXg,246
15
- dsw_tdk-4.20.1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
16
- dsw_tdk-4.20.1.dist-info/METADATA,sha256=wRTOyiE_9taJRbu0NEHiEAmBh5GTfDX39AcG0PzTO6M,6044
17
- dsw_tdk-4.20.1.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
18
- dsw_tdk-4.20.1.dist-info/entry_points.txt,sha256=lwD5ZzRCbTFSjP1-SkhYsaJe8sEXOWWgMAMUhw0v2Hk,41
19
- dsw_tdk-4.20.1.dist-info/top_level.txt,sha256=7SfbsHFoJ_vlAgG6C-xzETETwYO71dBrGnod8uMFnjw,4
20
- dsw_tdk-4.20.1.dist-info/RECORD,,