datacontract-cli 0.9.8__py3-none-any.whl → 0.9.9__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 datacontract-cli might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  datacontract/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- datacontract/cli.py,sha256=NTM6W9J8WvnzheQnaL5W1JukEdXhvfPOtyv2T8eFnkE,10515
3
- datacontract/data_contract.py,sha256=HMKFAKCN5rlrSwPzrrnGiybttS_-W9ipctsulTlqocE,21656
2
+ datacontract/cli.py,sha256=RpfIK67qLAdVPJrPBW0XDe2lK-mPb7SSCbgvpdDtCtU,10534
3
+ datacontract/data_contract.py,sha256=-ToX10mmsD2dsxMdWe24nwV6mJvHEvqnoPdduSBYfOM,21809
4
4
  datacontract/web.py,sha256=SWglmbqy3NV5h4VDsG0OpwhASJT9uve7w6FPwkBjIYM,457
5
5
  datacontract/breaking/breaking.py,sha256=Abw59Xd_CypS6Us-hvsGnPvCUo-a-cl8RzDCmjG4yfk,11719
6
6
  datacontract/breaking/breaking_rules.py,sha256=PzjCojAwteiIP3AKHfzeHAZG5b8WNKTeFl8FbFAWOzo,2913
@@ -11,35 +11,37 @@ datacontract/engines/datacontract/check_that_datacontract_str_is_valid.py,sha256
11
11
  datacontract/engines/fastjsonschema/check_jsonschema.py,sha256=YkVC0KrJlSMXTvrgopGseRBtJKZf-T9Nxk5oKZwLYWk,5754
12
12
  datacontract/engines/fastjsonschema/s3/s3_read_files.py,sha256=iupiyqBa1dzgT2BtVGna-BjC5rqe6MTLs2QRp8GTs7M,665
13
13
  datacontract/engines/soda/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
- datacontract/engines/soda/check_soda_execute.py,sha256=4zd-E1-3RpqXHLdAVodVZm-tYMBfZORAyPDTObIfodo,6507
14
+ datacontract/engines/soda/check_soda_execute.py,sha256=mLHTifQ8GwqyoexMRRq4Z5GeQPZBW9SZda16zDTzmAc,6684
15
15
  datacontract/engines/soda/connections/bigquery.py,sha256=Ao0KaJe4R28auU_4umxvVaLB6ZHEbKaNoYZ-RfAUmeo,662
16
16
  datacontract/engines/soda/connections/dask.py,sha256=Yy6Et2n_vDVsdjtqyBWDSZt7mnjPzPk_MZ-92VZHfnY,1496
17
17
  datacontract/engines/soda/connections/databricks.py,sha256=lpMju-o_TzLZeF0EEVwePPr8JahqvFnj5xRYjF15fc8,561
18
- datacontract/engines/soda/connections/duckdb.py,sha256=xKMs_EVqzG4ynachRw9Xx_syA27wDCBLC15ar48k0aY,2340
18
+ datacontract/engines/soda/connections/duckdb.py,sha256=jOkQ9npHc7lxHlJ8pFYuAkwgEyr_WqrBXHplv-Tel9I,3009
19
19
  datacontract/engines/soda/connections/kafka.py,sha256=AgAQxm_NgPUXQShqLS81PAjcQ9hJI1fy8CDFdGa_luI,5971
20
20
  datacontract/engines/soda/connections/postgres.py,sha256=9GTF4Es3M5vb7ocSGqAxXmslvkS5CjsPQGIuo020CFc,626
21
21
  datacontract/engines/soda/connections/snowflake.py,sha256=y1t2a1DWY4_tr5k-X5_nhLE6v1rfCwTahzhtHR91x9A,719
22
- datacontract/export/avro_converter.py,sha256=hbw3d9FalqsjalXK2XqZbL9ecqnbCMs6o-kdDyeG0ZU,2202
22
+ datacontract/export/avro_converter.py,sha256=fFrKGDjC48RBF9-Xy2w3Eh3BXxSkmflOkXPTs881Ows,2320
23
23
  datacontract/export/avro_idl_converter.py,sha256=pbDel_DdvakGOtxFzP-WKnHO1sshCCaLZeNkz3Dyvh8,9582
24
+ datacontract/export/csv_type_converter.py,sha256=ZZuJwBgQnafZC7PPvAXsBf2IajPJq8TYZ1l8Qq0GYeI,1290
24
25
  datacontract/export/dbt_converter.py,sha256=QF1PYh-UAZEnFYq2D70iT7KUIWCMd1tOVt8lfXmb0Ho,8549
25
- datacontract/export/great_expectations_converter.py,sha256=yxYSyYOKow_5P6zqzcYlt3zoCAFMoDgEpFvrzXr_2G8,4908
26
+ datacontract/export/great_expectations_converter.py,sha256=TOm6u1NYS3ubbSxqjR6xjJf6Qeb3-xGCraXwly-Vh34,4896
27
+ datacontract/export/html_export.py,sha256=gocp31DqfGhpbImJ8ezQB7i1MggKb_jrVR0X5AR8u2Q,1723
26
28
  datacontract/export/jsonschema_converter.py,sha256=6Y0vsIx8GtmrZt7tjivru0Qc6IAZ5IApmDwav-VJinQ,3153
27
29
  datacontract/export/odcs_converter.py,sha256=l4fgXUHewtxfJWqIxMNU4y7apwvl_SYpb479IeZPI1A,3732
28
30
  datacontract/export/protobuf_converter.py,sha256=K40yEdfRLYDLUx8bn3_an-cwdHfWv8_SBgzGLJT6mX4,2974
29
- datacontract/export/pydantic_converter.py,sha256=dES_NpeXTMBPX-GASZmsRO9pONVVVKQVEQAM5maTfJ8,5670
31
+ datacontract/export/pydantic_converter.py,sha256=hlpi-qRNKd3ecnvO_kelCaODbHdMHiTZ0AG8BV-pxzc,5351
30
32
  datacontract/export/rdf_converter.py,sha256=dfMicvoOt2bloJZMjkIY6wPR9ymBa9jAlDDwQpiHfAc,6108
31
- datacontract/export/sodacl_converter.py,sha256=a4CYzTRbWaVP4pom2JkH9A1VkVWsrWzewEamj1e_5fA,3197
32
- datacontract/export/sql_converter.py,sha256=qmvyVLtFk5MVtNUDF5YmZbrbRz7fsQ4v3kdJHvrq_PI,3343
33
+ datacontract/export/sodacl_converter.py,sha256=P0MgMlVsR7DrDKGil0M9X5nVmXVe6Iwh9abcDusTia4,6744
34
+ datacontract/export/sql_converter.py,sha256=OZNBGBShmWrXip5uy6LsyDkb2UmbDKhUcZP4apNNNFI,3754
33
35
  datacontract/export/sql_type_converter.py,sha256=kiFFX54dfSgXXqbUCtFz0ujEt0Ie5JnuuWbcvJc0kos,4627
34
36
  datacontract/export/terraform_converter.py,sha256=3gwfKHp1QtF2bg_iXmWuV2QSNeZNy5i_AQVe1REXSbc,1949
35
- datacontract/imports/avro_importer.py,sha256=rQ9lHrTV8_dgjRB2acDDdnWKH8y9DxC4TYv9Rx_CeEQ,3823
37
+ datacontract/imports/avro_importer.py,sha256=2hKy1cPY072Dv8NtZKwc6GUb3NBH7QqXWPAnoNmRbN0,4800
36
38
  datacontract/imports/sql_importer.py,sha256=kaQMKQLuHFo5uSl8j_g9PBXPdP4KruMh_O_egkbcqxM,2027
37
39
  datacontract/init/download_datacontract_file.py,sha256=pj_4mhWKlEtfueWohDgkb1nyuG5ERDipUDszxKwpZUs,413
38
- datacontract/integration/publish_datamesh_manager.py,sha256=Ul6enuo5l3sFoNIFU0XRg6etzu8a15IQp8jUovB5ynY,1316
40
+ datacontract/integration/publish_datamesh_manager.py,sha256=3bWgWrdcJip0V3EzlLmuxBzAQBn6evEHbhrAKx1qEjY,1300
39
41
  datacontract/integration/publish_opentelemetry.py,sha256=eyR2VQOUii-IvcaBMyru7IDrqU8OuxYvbB24poX4t58,3830
40
42
  datacontract/lint/files.py,sha256=tg0vq_w4LQsEr_8A5qr4hUJmHeGalUpsXJXC1t-OGC0,471
41
43
  datacontract/lint/lint.py,sha256=GhgBwfDgihXfWIu1WUfYeJoxfYacVJrwq3L2KO4Z2Io,5076
42
- datacontract/lint/resolve.py,sha256=7EhNiG-040NXKJqliWs3u5vJg6KzfgAfgnq_s9dXGhc,4863
44
+ datacontract/lint/resolve.py,sha256=wR3bAE4zt0UYmzK603qfba40W8lFGAwF9VAWGN-W1W0,6386
43
45
  datacontract/lint/schema.py,sha256=FIzubF1C9TnhEQBeoDsLuhc6HymCMx_v435Hjbcz4U8,838
44
46
  datacontract/lint/urls.py,sha256=NHTbwadnm1VCxsiF7clfDvsxJ8-D3Mi5AzDj029E6wQ,1325
45
47
  datacontract/lint/linters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -48,16 +50,15 @@ datacontract/lint/linters/example_model_linter.py,sha256=YpPWymPIKvcL6jsA8rM1nVM
48
50
  datacontract/lint/linters/field_pattern_linter.py,sha256=hdzcY_MM6MsJeag0HQ1YwgzXlgK2IQ2wpDKNDkNwkvk,1089
49
51
  datacontract/lint/linters/field_reference_linter.py,sha256=fRNI483JpWV_ewWoNqfuVkNqYwQ-7z68q_xhHQZPO7g,1550
50
52
  datacontract/lint/linters/notice_period_linter.py,sha256=_w3lp9qfEkbMMSTV38IlTVWnG-kyJY-S-7dex_JSpwc,2135
51
- datacontract/lint/linters/primary_field_linter.py,sha256=HoNhk-wmoR0JERZB6e8jZnIx7Sl5-N8QdU4Ctz6scqU,1128
52
53
  datacontract/lint/linters/quality_schema_linter.py,sha256=fwqOoT15kDXLw_I7LMDWh4Y-Z9xA83FHPooIz7cnDac,2187
53
54
  datacontract/lint/linters/valid_constraints_linter.py,sha256=GeeE2hojMt24EoHuSHE1lURA2v2p5Dmxc7Qq8IvZQH0,4915
54
55
  datacontract/model/breaking_change.py,sha256=BIDEUo1U2CQLVT2-I5PyFttxAj6zQPI1UUkEoOOQXMY,2249
55
56
  datacontract/model/data_contract_specification.py,sha256=Oo-hL_FVjsN0xX8vi4qZ5gjxNYsqRmUMg0i7fbqSk-o,3480
56
57
  datacontract/model/exceptions.py,sha256=zW9NoyzwsND-c9UqgyTVuezUVGEc6KK1Uc2zl12loyo,1178
57
- datacontract/model/run.py,sha256=mm1cZxjJVg0w1qzN_WV9TcWrAXsACBDSChW39Kpa-K4,2563
58
- datacontract_cli-0.9.8.dist-info/LICENSE,sha256=23h64qnSeIZ0DKeziWAKC-zBCt328iSbRbWBrXoYRb4,2210
59
- datacontract_cli-0.9.8.dist-info/METADATA,sha256=P_OZ5eN2G4_4lXzHnQFfNYB70IzwOd-BHALFLQ47Gr8,35543
60
- datacontract_cli-0.9.8.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
61
- datacontract_cli-0.9.8.dist-info/entry_points.txt,sha256=D3Eqy4q_Z6bHauGd4ppIyQglwbrm1AJnLau4Ppbw9Is,54
62
- datacontract_cli-0.9.8.dist-info/top_level.txt,sha256=VIRjd8EIUrBYWjEXJJjtdUgc0UAJdPZjmLiOR8BRBYM,13
63
- datacontract_cli-0.9.8.dist-info/RECORD,,
58
+ datacontract/model/run.py,sha256=v7QNsPwYS1otQrpjeOaFsLRnxO8OgbdK_d-Z_e3iy0s,2610
59
+ datacontract_cli-0.9.9.dist-info/LICENSE,sha256=23h64qnSeIZ0DKeziWAKC-zBCt328iSbRbWBrXoYRb4,2210
60
+ datacontract_cli-0.9.9.dist-info/METADATA,sha256=MkUj3aP--wZmIxuY8jidmbFZeriNb2OnDDb8IURfJNM,61524
61
+ datacontract_cli-0.9.9.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
62
+ datacontract_cli-0.9.9.dist-info/entry_points.txt,sha256=D3Eqy4q_Z6bHauGd4ppIyQglwbrm1AJnLau4Ppbw9Is,54
63
+ datacontract_cli-0.9.9.dist-info/top_level.txt,sha256=VIRjd8EIUrBYWjEXJJjtdUgc0UAJdPZjmLiOR8BRBYM,13
64
+ datacontract_cli-0.9.9.dist-info/RECORD,,
@@ -1,28 +0,0 @@
1
- from datacontract.model.data_contract_specification import DataContractSpecification
2
- from ..lint import Linter, LinterResult
3
-
4
-
5
- class PrimaryFieldUniqueRequired(Linter):
6
- """Checks that all fields defined as primary are also defined as unique and required."""
7
-
8
- @property
9
- def name(self) -> str:
10
- return "Model primary fields unique and required"
11
-
12
- @property
13
- def id(self) -> str:
14
- return "notice-period"
15
-
16
- def lint_implementation(self, contract: DataContractSpecification) -> LinterResult:
17
- if not contract.models:
18
- return LinterResult.cautious("No models defined on contract.")
19
- result = LinterResult()
20
- for model_name, model in contract.models.items():
21
- for field_name, field in model.fields.items():
22
- if field.primary and not field.required and not field.unique:
23
- result = result.with_error(
24
- f"Field '{field_name}' in model '{model_name}'"
25
- " is marked as primary, but not as unique"
26
- " and required."
27
- )
28
- return result