labfreed 0.2.11__py3-none-any.whl → 0.2.12__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 labfreed might be problematic. Click here for more details.

labfreed/__init__.py CHANGED
@@ -2,7 +2,7 @@
2
2
  Python implementation of LabFREED building blocks
3
3
  '''
4
4
 
5
- __version__ = "0.2.11"
5
+ __version__ = "0.2.12"
6
6
 
7
7
  from labfreed.pac_id import * # noqa: F403
8
8
  from labfreed.pac_cat import * # noqa: F403
@@ -125,6 +125,13 @@ class PAC_CAT(PAC_ID):
125
125
  )
126
126
  return self
127
127
 
128
+
129
+ @model_validator(mode='after')
130
+ def _check_identifier_segment_keys_are_unique(self) -> Self:
131
+ ''' override the validator of PAC-ID: in PAC-CAT segments can replicate in different categories'''
132
+ return self
133
+
134
+
128
135
  def print_categories(self):
129
136
  table = Table(title=f'Categories in {str(self)}', show_header=False)
130
137
  table.add_column('0')
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: labfreed
3
- Version: 0.2.11
3
+ Version: 0.2.12
4
4
  Summary: Python implementation of LabFREED building blocks
5
5
  Author-email: Reto Thürer <thuerer.r@buchi.com>
6
6
  Requires-Python: >=3.11
@@ -103,28 +103,32 @@ There is a nice function to highlight problems
103
103
  pac.print_validation_messages()
104
104
  ```
105
105
  ```text
106
- >> Validation Results
107
- >> ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
108
- >> │ **RECOMMENDATION** in id segment value bal500
109
- >> │ Characters 'l','a','b' should not be used., Characters SHOULD be limited to upper case letters (A-Z), numbers (0-9), '-' and '+'
110
- >> │
111
- >> │ HTTPS://PAC.METTORIUS.COM/-MD/👉bal👈500/@1234
112
- >> ├───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
113
- >> │ **RECOMMENDATION** in id segment value @1234 │
114
- >> │ Characters '@' should not be used., Characters SHOULD be limited to upper case letters (A-Z), numbers (0-9), '-' and '+'
115
- >> │
116
- >> │ HTTPS://PAC.METTORIUS.COM/-MD/bal500/👉@👈1234
117
- >> ├───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
118
- >> │ **RECOMMENDATION** in id segment value bal500
119
- >> │ Characters 'l','a','b' should not be used., Characters SHOULD be limited to upper case letters (A-Z), numbers (0-9), '-' and '+' │
120
- >> │
121
- >> │ HTTPS://PAC.METTORIUS.COM/-MD/👉bal👈500/@1234
122
- >> ├───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
123
- >> │ **RECOMMENDATION** in id segment value @1234
124
- >> │ Characters '@' should not be used., Characters SHOULD be limited to upper case letters (A-Z), numbers (0-9), '-' and '+'
125
- >> │ │
126
- >> │ HTTPS://PAC.METTORIUS.COM/-MD/bal500/👉@👈1234
127
- >> └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
106
+ >> Validation Results
107
+ >> ┌─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
108
+ >> │ **RECOMMENDATION** in id segment value bal500
109
+ >> │ Characters 'a','l','b' should not be used., Characters SHOULD be limited to upper case letters (A-Z), numbers
110
+ >> │ (0-9), '-' and '+'
111
+ >> │
112
+ >> │ HTTPS://PAC.METTORIUS.COM/-MD/👉bal👈500/@1234 │
113
+ >> ├─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
114
+ >> │ **RECOMMENDATION** in id segment value @1234
115
+ >> │ Characters '@' should not be used., Characters SHOULD be limited to upper case letters (A-Z), numbers (0-9), '-'
116
+ >> │ and '+'
117
+ >> │ │
118
+ >> │ HTTPS://PAC.METTORIUS.COM/-MD/bal500/👉@👈1234
119
+ >> ├─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
120
+ >> │ **RECOMMENDATION** in id segment value bal500
121
+ >> │ Characters 'a','l','b' should not be used., Characters SHOULD be limited to upper case letters (A-Z), numbers
122
+ >> │ (0-9), '-' and '+' │
123
+ >> │
124
+ >> │ HTTPS://PAC.METTORIUS.COM/-MD/👉bal👈500/@1234
125
+ >> ├─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
126
+ >> │ **RECOMMENDATION** in id segment value @1234
127
+ >> │ Characters '@' should not be used., Characters SHOULD be limited to upper case letters (A-Z), numbers (0-9), '-' │
128
+ >> │ and '+' │
129
+ >> │ │
130
+ >> │ HTTPS://PAC.METTORIUS.COM/-MD/bal500/👉@👈1234 │
131
+ >> └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
128
132
  ```
129
133
  ### Save as QR Code
130
134
 
@@ -249,7 +253,7 @@ trex.print_validation_messages()
249
253
  >> Validation Results
250
254
  >> ┌────────────────────────────────────────────────────────────┐
251
255
  >> │ **ERROR** in TREX table column Date │
252
- >> │ Column header key contains invalid characters: 'e','t','a' │
256
+ >> │ Column header key contains invalid characters: 'a','t','e' │
253
257
  >> │ │
254
258
  >> │ STOP$T.D:20240505T1306 │
255
259
  >> │ +TEMP$KEL:10.15 │
@@ -257,9 +261,9 @@ trex.print_validation_messages()
257
261
  >> │ +COMMENT$T.A:FOO │
258
262
  >> │ +COMMENT2$T.T:12G3 │
259
263
  >> │ +TABLE$$DURATION$HUR:D👉ate👈$T.D:OK$T.B:COMMENT$T.A:: │
260
- >> │ 1:20250522T163256.043:T:FOO:: │
261
- >> │ 1.1:20250522T163256.043:T:BAR:: │
262
- >> │ 1.3:20250522T163256.043:F:BLUBB │
264
+ >> │ 1:20250522T180101.575:T:FOO:: │
265
+ >> │ 1.1:20250522T180101.575:T:BAR:: │
266
+ >> │ 1.3:20250522T180101.575:F:BLUBB │
263
267
  >> └────────────────────────────────────────────────────────────┘
264
268
  ```
265
269
  #### Combine PAC-ID and TREX and serialize
@@ -271,7 +275,7 @@ pac_str = pac.to_url()
271
275
  print(pac_str)
272
276
  ```
273
277
  ```text
274
- >> HTTPS://PAC.METTORIUS.COM/21:1234*MYTREX$TREX/STOP$T.D:20240505T1306+TEMP$KEL:10.15+OK$T.B:F+COMMENT$T.A:FOO+COMMENT2$T.T:12G3+TABLE$$DURATION$HUR:Date$T.D:OK$T.B:COMMENT$T.A::1:20250522T163256.043:T:FOO::1.1:20250522T163256.043:T:BAR::1.3:20250522T163256.043:F:BLUBB
278
+ >> HTTPS://PAC.METTORIUS.COM/21:1234*MYTREX$TREX/STOP$T.D:20240505T1306+TEMP$KEL:10.15+OK$T.B:F+COMMENT$T.A:FOO+COMMENT2$T.T:12G3+TABLE$$DURATION$HUR:Date$T.D:OK$T.B:COMMENT$T.A::1:20250522T180101.575:T:FOO::1.1:20250522T180101.575:T:BAR::1.3:20250522T180101.575:F:BLUBB
275
279
  ```
276
280
  ## PAC-ID Resolver
277
281
 
@@ -332,9 +336,12 @@ for sg in service_groups:
332
336
 
333
337
  <!-- BEGIN CHANGELOG -->
334
338
  ## Change Log
339
+ ### v0.2.12
340
+ - bugfix:no warning message if PAC-CAT has same segment key in two segments
341
+
335
342
  ### v0.2.11
336
343
  - bugfix:added missing well known segment key '250'
337
-
344
+
338
345
  ### v0.2.10
339
346
  - bugfix:added missing well known segment key '20'
340
347
 
@@ -1,8 +1,8 @@
1
- labfreed/__init__.py,sha256=sckJ5WPlbzfDwCEOQtXrczAycQwVzynCgKPm66H0YmM,337
1
+ labfreed/__init__.py,sha256=t3gO6v5Ul6ergdi4-pLhvP-H26Zd1G4UdvD56f6bwHs,337
2
2
  labfreed/labfreed_infrastructure.py,sha256=EPDSCaGxWakAoPpHyc6ltf-pOuKyS5829lj_EG6wa74,10072
3
3
  labfreed/pac_cat/__init__.py,sha256=KNPtQzBD1XVohvG_ucOs7RJj-oi6biUTGB1k-T2o6pk,568
4
4
  labfreed/pac_cat/category_base.py,sha256=lFQNiTUukyhWdaSCAI7CZxLtj6kNtnBCE4UsePwsGqE,1801
5
- labfreed/pac_cat/pac_cat.py,sha256=AJUYDsyGOHy-sRRpXpY0awtbf3HCvn3RhMax6ofvYRA,5318
5
+ labfreed/pac_cat/pac_cat.py,sha256=FVp65Yf6AnwCB2bKQPgSRWMw3urwAELrdW8sfqsUGw8,5575
6
6
  labfreed/pac_cat/predefined_categories.py,sha256=5wnMCj-CrACV2W4lH13w7qynWIwi506G3uLNcxuJQGg,8832
7
7
  labfreed/pac_id/__init__.py,sha256=NGMbzkwQ4txKeT5pxdIZordwHO8J3_q84jzPanjKoHg,675
8
8
  labfreed/pac_id/extension.py,sha256=zuHI8e51otPbpO1r1xDFh32uXTT8L5pCJn74B-aOUpI,1112
@@ -39,7 +39,7 @@ labfreed/well_known_keys/labfreed/well_known_keys.py,sha256=050ED8qlZ-5iKKnAZ48W
39
39
  labfreed/well_known_keys/unece/UneceUnits.json,sha256=kwfQSp_nTuWbADfBBgqTWrvPl6XtM5SedEVLbMJrM7M,898953
40
40
  labfreed/well_known_keys/unece/__init__.py,sha256=MSP9lmjg9_D9iqG9Yq2_ajYfQSNS9wIT7FXA1c--59M,122
41
41
  labfreed/well_known_keys/unece/unece_units.py,sha256=gNDQk6KGl-nGMf9Ycq_fQ8P2xxKITgLkcQWPd4H49gI,1630
42
- labfreed-0.2.11.dist-info/licenses/LICENSE,sha256=gHFOv9FRKHxO8cInP3YXyPoJnuNeqrvcHjaE_wPSsQ8,1100
43
- labfreed-0.2.11.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
44
- labfreed-0.2.11.dist-info/METADATA,sha256=hc8kGIRCtZbi113MgCUxVXgWmEOjj23lklImNqrQm-g,19299
45
- labfreed-0.2.11.dist-info/RECORD,,
42
+ labfreed-0.2.12.dist-info/licenses/LICENSE,sha256=gHFOv9FRKHxO8cInP3YXyPoJnuNeqrvcHjaE_wPSsQ8,1100
43
+ labfreed-0.2.12.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
44
+ labfreed-0.2.12.dist-info/METADATA,sha256=b1XEweCYclOc9ApV18nvX4555dN0136b9Iu4IAaruWc,19450
45
+ labfreed-0.2.12.dist-info/RECORD,,