v440 2.0.0.dev93__tar.gz → 2.0.0.dev94__tar.gz

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.
Files changed (45) hide show
  1. {v440-2.0.0.dev93/src/v440.egg-info → v440-2.0.0.dev94}/PKG-INFO +1 -1
  2. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/pyproject.toml +1 -1
  3. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/core/Base.py +1 -6
  4. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/tests/test_testdata.py +28 -5
  5. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/tests/test_version.py +9 -9
  6. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/tests/testdata.toml +29 -29
  7. {v440-2.0.0.dev93 → v440-2.0.0.dev94/src/v440.egg-info}/PKG-INFO +1 -1
  8. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/LICENSE.txt +0 -0
  9. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/MANIFEST.in +0 -0
  10. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/README.rst +0 -0
  11. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/setup.cfg +0 -0
  12. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/__init__.py +0 -0
  13. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/BaseStringer.py +0 -0
  14. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/Cfg.py +0 -0
  15. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/ListStringer.py +0 -0
  16. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/Pattern.py +0 -0
  17. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/SlotStringer.py +0 -0
  18. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/__init__.py +0 -0
  19. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/cfg.toml +0 -0
  20. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/guarding.py +0 -0
  21. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/qualparse/Digest.py +0 -0
  22. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/qualparse/__init__.py +0 -0
  23. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/qualparse/devs.py +0 -0
  24. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/qualparse/posts.py +0 -0
  25. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/qualparse/pres.py +0 -0
  26. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/qualparse/segmenting.py +0 -0
  27. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/releaseparse/__init__.py +0 -0
  28. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/releaseparse/deleting.py +0 -0
  29. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/releaseparse/getting.py +0 -0
  30. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/releaseparse/listing.py +0 -0
  31. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/releaseparse/numerals.py +0 -0
  32. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/releaseparse/ranging.py +0 -0
  33. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/_utils/releaseparse/setting.py +0 -0
  34. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/core/Local.py +0 -0
  35. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/core/Public.py +0 -0
  36. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/core/Qual.py +0 -0
  37. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/core/Release.py +0 -0
  38. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/core/Version.py +0 -0
  39. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/core/VersionError.py +0 -0
  40. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/core/__init__.py +0 -0
  41. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440/tests/__init__.py +0 -0
  42. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440.egg-info/SOURCES.txt +0 -0
  43. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440.egg-info/dependency_links.txt +0 -0
  44. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440.egg-info/requires.txt +0 -0
  45. {v440-2.0.0.dev93 → v440-2.0.0.dev94}/src/v440.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: v440
3
- Version: 2.0.0.dev93
3
+ Version: 2.0.0.dev94
4
4
  Summary: This project provides mutable version objects in accordance with PEP440.
5
5
  Author-email: Johannes <johannes.programming@gmail.com>
6
6
  License: The MIT License (MIT)
@@ -36,7 +36,7 @@ keywords = []
36
36
  name = "v440"
37
37
  readme = "README.rst"
38
38
  requires-python = ">=3.11"
39
- version = "2.0.0.dev93"
39
+ version = "2.0.0.dev94"
40
40
 
41
41
  [project.license]
42
42
  file = "LICENSE.txt"
@@ -48,7 +48,7 @@ class Base(SlotStringer):
48
48
  ) -> None:
49
49
  self._init_setup()
50
50
  self.epoch = epoch
51
- self.release = release
51
+ self.release.string = release
52
52
 
53
53
  def _init_setup(self: Self) -> None:
54
54
  self._epoch = 0
@@ -96,8 +96,3 @@ class Base(SlotStringer):
96
96
  def release(self: Self) -> Release:
97
97
  "This property represents the release."
98
98
  return self._release
99
-
100
- @release.setter
101
- @guard
102
- def release(self: Self, value: Any) -> None:
103
- self.release._set(value)
@@ -30,11 +30,14 @@ class TestVersionReleaseAttrs(unittest.TestCase):
30
30
  def test_0(self: Self) -> None:
31
31
  k: str
32
32
  v: dict
33
- for k, v in Util.util.data["release-attr"].items():
33
+ for k, v in Util.util.data["release-data"].items():
34
34
  with self.subTest(key=k):
35
- self.go(**v)
35
+ self.go_data(**v)
36
+ for k, v in Util.util.data["release-string"].items():
37
+ with self.subTest(key=k):
38
+ self.go_string(**v)
36
39
 
37
- def go(
40
+ def go_data(
38
41
  self: Self,
39
42
  query: list,
40
43
  attrname: Optional[str] = None,
@@ -45,7 +48,27 @@ class TestVersionReleaseAttrs(unittest.TestCase):
45
48
  ) -> None:
46
49
  # Test the append method of the release list-like object
47
50
  version: Version = Version()
48
- version.public.base.release = query
51
+ version.public.base.release.data = query
52
+ if attrname is not None:
53
+ attr: Any = getattr(version.public.base.release, attrname)
54
+ ans: Any = attr(*args, **dict(kwargs))
55
+ self.assertEqual(ans, solution)
56
+ if target is not None:
57
+ ans: list = list(version.public.base.release)
58
+ self.assertEqual(ans, target)
59
+
60
+ def go_string(
61
+ self: Self,
62
+ query: str,
63
+ attrname: Optional[str] = None,
64
+ args: list | tuple = (),
65
+ kwargs: dict | tuple = (),
66
+ target: Optional[list] = None,
67
+ solution: Any = None,
68
+ ) -> None:
69
+ # Test the append method of the release list-like object
70
+ version: Version = Version()
71
+ version.public.base.release.string = query
49
72
  if attrname is not None:
50
73
  attr: Any = getattr(version.public.base.release, attrname)
51
74
  ans: Any = attr(*args, **dict(kwargs))
@@ -70,7 +93,7 @@ class TestVersionReleaseVersionError(unittest.TestCase):
70
93
  ) -> None:
71
94
  version: Version = Version()
72
95
  with self.assertRaises(VersionError):
73
- version.public.base.release = query
96
+ version.public.base.release.data = query
74
97
 
75
98
 
76
99
  class TestVersionLocalVersionError(unittest.TestCase):
@@ -201,7 +201,7 @@ class TestVersionRelease(unittest.TestCase):
201
201
  def test_major_minor_micro_aliases(self: Self) -> None:
202
202
  # Test major, minor, and micro aliases for the first three indices
203
203
  version: Version = Version()
204
- version.public.base.release = [1, 2, 3]
204
+ version.public.base.release.data = [1, 2, 3]
205
205
  self.assertEqual(version.public.base.release.major, 1)
206
206
  self.assertEqual(version.public.base.release.minor, 2)
207
207
  self.assertEqual(version.public.base.release.micro, 3)
@@ -222,7 +222,7 @@ class TestVersionRelease(unittest.TestCase):
222
222
  def test_release_with_tailing_zeros_simulation(self: Self) -> None:
223
223
  # Test that the release can simulate arbitrary high number of tailing zeros
224
224
  version: Version = Version()
225
- version.public.base.release = [1, 2]
225
+ version.public.base.release.data = [1, 2]
226
226
  simulated_release = version.public.base.release[:5]
227
227
  self.assertEqual(simulated_release, [1, 2, 0, 0, 0])
228
228
 
@@ -241,13 +241,13 @@ class TestAdditionalVersionRelease(unittest.TestCase):
241
241
  def test_release_inequality_with_list(self: Self) -> None:
242
242
  # Test inequality of release with a normal list
243
243
  version: Version = Version()
244
- version.public.base.release = [1, 2, 3]
244
+ version.public.base.release.data = [1, 2, 3]
245
245
  self.assertFalse(version.public.base.release == [1, 2, 4])
246
246
 
247
247
  def test_release_len(self: Self) -> None:
248
248
  # Test the length of the release list
249
249
  version: Version = Version()
250
- version.public.base.release = [1, 2, 3]
250
+ version.public.base.release.data = [1, 2, 3]
251
251
  self.assertEqual(len(version.public.base.release), 3)
252
252
 
253
253
  def test_release_slice_assignment(self: Self) -> None:
@@ -263,20 +263,20 @@ class TestAdditionalVersionRelease(unittest.TestCase):
263
263
  def test_release_iterable(self: Self) -> None:
264
264
  # Test if release supports iteration
265
265
  version: Version = Version()
266
- version.public.base.release = [1, 2, 3]
266
+ version.public.base.release.data = [1, 2, 3]
267
267
  result = list(version.public.base.release)
268
268
  self.assertEqual(result, [1, 2, 3])
269
269
 
270
270
  def test_release_repr(self: Self) -> None:
271
271
  # Test the repr of the release property
272
272
  version: Version = Version()
273
- version.public.base.release = [1, 2, 3]
273
+ version.public.base.release.data = [1, 2, 3]
274
274
  self.assertEqual(str(version.public.base.release), "1.2.3")
275
275
 
276
276
  def test_release_data_property(self: Self) -> None:
277
277
  # Test the 'data' property
278
278
  version: Version = Version()
279
- version.public.base.release = [1, 2, 3]
279
+ version.public.base.release.data = [1, 2, 3]
280
280
  self.assertEqual(version.public.base.release.data, (1, 2, 3))
281
281
 
282
282
  def test_release_data_setter(self: Self) -> None:
@@ -288,14 +288,14 @@ class TestAdditionalVersionRelease(unittest.TestCase):
288
288
  def test_release_contains(self: Self) -> None:
289
289
  # Test 'in' keyword with release
290
290
  version: Version = Version()
291
- version.public.base.release = [1, 2, 3]
291
+ version.public.base.release.data = [1, 2, 3]
292
292
  self.assertIn(2, version.public.base.release)
293
293
  self.assertNotIn(4, version.public.base.release)
294
294
 
295
295
  def test_release_mul(self: Self) -> None:
296
296
  # Test multiplying the release (list behavior)
297
297
  version: Version = Version()
298
- version.public.base.release = [1, 2]
298
+ version.public.base.release.data = [1, 2]
299
299
  answer: list = list(version.public.base.release * 3)
300
300
  solution: list = [1, 2, 1, 2, 1, 2]
301
301
  self.assertEqual(answer, solution)
@@ -46,7 +46,7 @@ query = [
46
46
  "test",
47
47
  ]
48
48
 
49
- [release-attr.test_example_8]
49
+ [release-string.test_example_8]
50
50
  query = "1.2.3.4.5.6.7.8.9.10"
51
51
  attrname = "bump"
52
52
  target = [
@@ -60,11 +60,11 @@ target = [
60
60
  13,
61
61
  ]
62
62
 
63
- [release-attr.test_example_8.kwargs]
63
+ [release-string.test_example_8.kwargs]
64
64
  index = 7
65
65
  amount = 5
66
66
 
67
- [release-attr.test_release_assignment_with_bool_conversion]
67
+ [release-data.test_release_assignment_with_bool_conversion]
68
68
  query = [
69
69
  true,
70
70
  false,
@@ -76,7 +76,7 @@ target = [
76
76
  3,
77
77
  ]
78
78
 
79
- [release-attr.test_release_large_numbers]
79
+ [release-data.test_release_large_numbers]
80
80
  query = [
81
81
  1000000000,
82
82
  2000000000,
@@ -88,7 +88,7 @@ target = [
88
88
  3000000000,
89
89
  ]
90
90
 
91
- [release-attr.test_release_max_integer]
91
+ [release-data.test_release_max_integer]
92
92
  query = [
93
93
  1000000000000000000,
94
94
  ]
@@ -96,11 +96,11 @@ target = [
96
96
  1000000000000000000,
97
97
  ]
98
98
 
99
- [release-attr.test_release_data_property_empty]
99
+ [release-data.test_release_data_property_empty]
100
100
  query = []
101
101
  target = []
102
102
 
103
- [release-attr.test_release_append]
103
+ [release-data.test_release_append]
104
104
  query = [
105
105
  1,
106
106
  2,
@@ -117,9 +117,9 @@ target = [
117
117
  4,
118
118
  ]
119
119
 
120
- [release-attr.test_release_append.kwargs]
120
+ [release-data.test_release_append.kwargs]
121
121
 
122
- [release-attr.test_release_extend]
122
+ [release-data.test_release_extend]
123
123
  query = [
124
124
  1,
125
125
  2,
@@ -140,9 +140,9 @@ target = [
140
140
  5,
141
141
  ]
142
142
 
143
- [release-attr.test_release_extend.kwargs]
143
+ [release-data.test_release_extend.kwargs]
144
144
 
145
- [release-attr.test_release_insert]
145
+ [release-data.test_release_insert]
146
146
  query = [
147
147
  1,
148
148
  2,
@@ -160,9 +160,9 @@ target = [
160
160
  4,
161
161
  ]
162
162
 
163
- [release-attr.test_release_insert.kwargs]
163
+ [release-data.test_release_insert.kwargs]
164
164
 
165
- [release-attr.test_release_pop]
165
+ [release-data.test_release_pop]
166
166
  query = [
167
167
  1,
168
168
  2,
@@ -176,9 +176,9 @@ target = [
176
176
  2,
177
177
  ]
178
178
 
179
- [release-attr.test_release_pop.kwargs]
179
+ [release-data.test_release_pop.kwargs]
180
180
 
181
- [release-attr.test_release_pop_with_index]
181
+ [release-data.test_release_pop_with_index]
182
182
  query = [
183
183
  1,
184
184
  2,
@@ -194,9 +194,9 @@ target = [
194
194
  3,
195
195
  ]
196
196
 
197
- [release-attr.test_release_pop_with_index.kwargs]
197
+ [release-data.test_release_pop_with_index.kwargs]
198
198
 
199
- [release-attr.test_release_remove]
199
+ [release-data.test_release_remove]
200
200
  query = [
201
201
  1,
202
202
  2,
@@ -211,9 +211,9 @@ target = [
211
211
  3,
212
212
  ]
213
213
 
214
- [release-attr.test_release_remove.kwargs]
214
+ [release-data.test_release_remove.kwargs]
215
215
 
216
- [release-attr.test_release_clear]
216
+ [release-data.test_release_clear]
217
217
  query = [
218
218
  1,
219
219
  2,
@@ -223,9 +223,9 @@ attrname = "clear"
223
223
  args = []
224
224
  target = []
225
225
 
226
- [release-attr.test_release_clear.kwargs]
226
+ [release-data.test_release_clear.kwargs]
227
227
 
228
- [release-attr.test_release_count]
228
+ [release-data.test_release_count]
229
229
  query = [
230
230
  1,
231
231
  2,
@@ -238,9 +238,9 @@ args = [
238
238
  attrname = "count"
239
239
  solution = 2
240
240
 
241
- [release-attr.test_release_count.kwargs]
241
+ [release-data.test_release_count.kwargs]
242
242
 
243
- [release-attr.test_release_index]
243
+ [release-data.test_release_index]
244
244
  query = [
245
245
  1,
246
246
  2,
@@ -252,9 +252,9 @@ args = [
252
252
  ]
253
253
  solution = 1
254
254
 
255
- [release-attr.test_release_index.kwargs]
255
+ [release-data.test_release_index.kwargs]
256
256
 
257
- [release-attr.test_release_reverse]
257
+ [release-data.test_release_reverse]
258
258
  query = [
259
259
  1,
260
260
  2,
@@ -267,7 +267,7 @@ target = [
267
267
  1,
268
268
  ]
269
269
 
270
- [release-attr.test_release_sort]
270
+ [release-data.test_release_sort]
271
271
  query = [
272
272
  3,
273
273
  1,
@@ -280,7 +280,7 @@ target = [
280
280
  3,
281
281
  ]
282
282
 
283
- [release-attr.test_release_integer_float]
283
+ [release-data.test_release_integer_float]
284
284
  query = [
285
285
  true,
286
286
  false,
@@ -292,7 +292,7 @@ target = [
292
292
  3,
293
293
  ]
294
294
 
295
- [release-attr.test_release_boolean_assignment]
295
+ [release-data.test_release_boolean_assignment]
296
296
  query = [
297
297
  true,
298
298
  false,
@@ -304,7 +304,7 @@ target = [
304
304
  1,
305
305
  ]
306
306
 
307
- [release-attr.test_release_equality_with_list]
307
+ [release-data.test_release_equality_with_list]
308
308
  query = [
309
309
  1,
310
310
  2,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: v440
3
- Version: 2.0.0.dev93
3
+ Version: 2.0.0.dev94
4
4
  Summary: This project provides mutable version objects in accordance with PEP440.
5
5
  Author-email: Johannes <johannes.programming@gmail.com>
6
6
  License: The MIT License (MIT)
File without changes
File without changes
File without changes
File without changes