datamaestro 1.7.2__py3-none-any.whl → 1.7.4__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.
datamaestro/context.py CHANGED
@@ -445,6 +445,9 @@ def prepare_dataset(
445
445
 
446
446
  if isinstance(dataset_id, DatasetWrapper):
447
447
  ds = dataset_id
448
+ elif hasattr(dataset_id, "__dataset__"):
449
+ # Class-based dataset decorated with @dataset
450
+ ds = dataset_id.__dataset__
448
451
  elif isinstance(dataset_id, Config):
449
452
  ds = dataset_id.__datamaestro_dataset__
450
453
  else:
@@ -2,6 +2,30 @@ import logging
2
2
  import importlib
3
3
  import inspect
4
4
  from datamaestro.context import Context
5
+ from experimaestro.tools.documentation import DocumentationAnalyzer
6
+
7
+
8
+ class DatamaestroAnalyzer(DocumentationAnalyzer):
9
+ """Documentation analyzer that excludes @dataset-annotated classes.
10
+
11
+ Dataset definitions (classes decorated with ``@dataset``) are documented
12
+ via ``dm:datasets`` Sphinx directives, not ``autoxpmconfig``. This
13
+ subclass filters them from the undocumented list after analysis.
14
+ """
15
+
16
+ def analyze(self):
17
+ super().analyze()
18
+ filtered = []
19
+ for fqn in self.undocumented:
20
+ module_name, class_name = fqn.rsplit(".", 1)
21
+ try:
22
+ mod = importlib.import_module(module_name)
23
+ cls = getattr(mod, class_name)
24
+ if not hasattr(cls, "__dataset__"):
25
+ filtered.append(fqn)
26
+ except (ImportError, AttributeError):
27
+ filtered.append(fqn)
28
+ self.undocumented = filtered
5
29
 
6
30
 
7
31
  class DatasetTests:
datamaestro/version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # This file is auto-generated by Hatchling. As such, do not:
2
2
  # - modify
3
3
  # - track in version control e.g. be sure to add to .gitignore
4
- __version__ = VERSION = '1.7.2'
4
+ __version__ = VERSION = '1.7.4'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: datamaestro
3
- Version: 1.7.2
3
+ Version: 1.7.4
4
4
  Summary: Add your description here
5
5
  Author-email: Benjamin Piwowarski <benjamin@piwowarski.fr>
6
6
  License-File: LICENSE
@@ -1,6 +1,6 @@
1
1
  datamaestro/__init__.py,sha256=oh9M4VODuvTc9EFHKirtDxpCJkLUANzpzBOIwzHc_mw,246
2
2
  datamaestro/__main__.py,sha256=22v54rQoO2umL1frFO2FOQuuRljr-Jw-ER-OATTpVxw,9218
3
- datamaestro/context.py,sha256=AL2BTi6dLA8rDGBE0PFyfV9ua29JHvBgx6_w6hDj9Dg,13977
3
+ datamaestro/context.py,sha256=rRshU8dsoskoTw5xj3_9JuEjQSfdzxuqf9hmfakVB3w,14112
4
4
  datamaestro/definitions.py,sha256=xo-MhpQHcUPNFJtkdWOEp1jC-7pbv0TREJKVS0iDVh8,27979
5
5
  datamaestro/record.py,sha256=e5fjRV3ni7ZxXwYH45bVDB_jpD-n9quvh4ie4uI-MM4,7140
6
6
  datamaestro/registry.py,sha256=M7QJkcWJP_cxAoqIioLQ01ou2Zg9RqGQvW0XGVspYFE,1421
@@ -9,7 +9,7 @@ datamaestro/settings.py,sha256=NuUbe_C31GDlzdio2ryz7tPzuo4hsmmdCM5Cyuhqbzs,1294
9
9
  datamaestro/sphinx.py,sha256=WWXB63gd0ZgEwFr_YwO2Hmuly5OoiFlu9mDvJSHFYuY,6966
10
10
  datamaestro/utils.py,sha256=JUrvtVYnjNKRo0_ZypmXSQ9R4uOyImDjW1GZ14MYzKM,6547
11
11
  datamaestro/v2.md,sha256=pLCxQUdfVkd4CM9Ie0ZxCnxUntqoA7k_0m7x1etcr7Y,9801
12
- datamaestro/version.py,sha256=NXg89m5xE9Y-di-q6RtHXRORMlP6p4e61kHabVZgLyE,171
12
+ datamaestro/version.py,sha256=rxH6IOGXXGEDT4tw-_b3eqqLzg7JbtI9E3y3jW37iQw,171
13
13
  datamaestro/annotations/__init__.py,sha256=jLprrxSBa5QIqc--vqycEcxU4CR9WjVNRaqR5lH0EuE,39
14
14
  datamaestro/annotations/agreement.py,sha256=xEH0ddZxdJ_oG_150PoOa-WjY_OaeQja3FzMzY5IB6k,955
15
15
  datamaestro/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -36,14 +36,14 @@ datamaestro/stream/compress.py,sha256=0ViFGpJc6pdvZGUNERE-3XV8jAOTSvhJurb2t0NW2e
36
36
  datamaestro/stream/lines.py,sha256=DhptjIqhhAJ1tu3e-uoOepHHNALSXS8qz8ASUAyaSkM,2074
37
37
  datamaestro/templates/dataset.py,sha256=5065rTMAIl4gtzQ96GFiV1_46tY08miIx3WspTP8yGA,346
38
38
  datamaestro/test/__init__.py,sha256=9xXqLvUgiIn74AY6k8qyYX7rq6hWz7dOJFBrUgwuX88,61
39
- datamaestro/test/checks.py,sha256=1eTkz4YJhAPOcnQSsz4vPnvzwwfrEnpn6H_s1ADISpo,1704
39
+ datamaestro/test/checks.py,sha256=yoL7SjasWPD95ieyTcEYeBffZkTwohJZpj1aWgU2wWA,2629
40
40
  datamaestro/test/conftest.py,sha256=z8rF0OIKVuCgIYJ-4fQxQL8KhgIfg_4kfkIZNETfNJ0,793
41
41
  datamaestro/test/test_annotations.py,sha256=XUjDWb3FJimSD91wcItJ0lLwTBmvN4wVu_EgTKSvV2c,278
42
42
  datamaestro/test/test_download_handlers.py,sha256=-Gofr89zqIyeI8C4rZqfYR3JfiZVImdcSz9s6q361zQ,641
43
43
  datamaestro/test/test_record.py,sha256=hNZ3uo2i5FZ0VsOHRwvLO1Z6Zce92PdipAF65UptPB8,1156
44
44
  datamaestro/test/test_resource.py,sha256=QbwmZkGv_8O_jI0CKcatJSUs3IKbMfBrk0T_aTC1KcE,51124
45
- datamaestro-1.7.2.dist-info/METADATA,sha256=I7vxkHmLTQfOeYZZ3XHBa2RWAwavOHUNOk8G3-u6_kI,7433
46
- datamaestro-1.7.2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
47
- datamaestro-1.7.2.dist-info/entry_points.txt,sha256=8qMhwSRvFG2iBqtJYVD22Zd4s4c3YkODtcp0Ajw1knw,133
48
- datamaestro-1.7.2.dist-info/licenses/LICENSE,sha256=WJ7YI-moTFb-uVrFjnzzhGJrnL9P2iqQe8NuED3hutI,35141
49
- datamaestro-1.7.2.dist-info/RECORD,,
45
+ datamaestro-1.7.4.dist-info/METADATA,sha256=Dxj7UgYXNJrPFrPwzP9uVtSlTWwdjBoB6xkcY7SayRA,7433
46
+ datamaestro-1.7.4.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
47
+ datamaestro-1.7.4.dist-info/entry_points.txt,sha256=8qMhwSRvFG2iBqtJYVD22Zd4s4c3YkODtcp0Ajw1knw,133
48
+ datamaestro-1.7.4.dist-info/licenses/LICENSE,sha256=WJ7YI-moTFb-uVrFjnzzhGJrnL9P2iqQe8NuED3hutI,35141
49
+ datamaestro-1.7.4.dist-info/RECORD,,