datacontract-cli 0.10.3__py3-none-any.whl → 0.10.5__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.

Files changed (41) hide show
  1. datacontract/breaking/breaking.py +12 -0
  2. datacontract/breaking/breaking_rules.py +4 -0
  3. datacontract/catalog/catalog.py +2 -2
  4. datacontract/cli.py +42 -8
  5. datacontract/data_contract.py +84 -134
  6. datacontract/engines/soda/check_soda_execute.py +5 -0
  7. datacontract/engines/soda/connections/duckdb.py +1 -2
  8. datacontract/engines/soda/connections/sqlserver.py +43 -0
  9. datacontract/export/avro_converter.py +23 -2
  10. datacontract/export/bigquery_converter.py +107 -0
  11. datacontract/export/dbml_converter.py +118 -0
  12. datacontract/export/go_converter.py +98 -0
  13. datacontract/export/html_export.py +4 -2
  14. datacontract/export/jsonschema_converter.py +41 -2
  15. datacontract/export/rdf_converter.py +1 -2
  16. datacontract/export/sql_converter.py +1 -0
  17. datacontract/export/sql_type_converter.py +125 -4
  18. datacontract/imports/avro_importer.py +41 -14
  19. datacontract/imports/bigquery_importer.py +178 -0
  20. datacontract/imports/jsonschema_importer.py +148 -0
  21. datacontract/imports/sql_importer.py +2 -2
  22. datacontract/lint/resolve.py +1 -2
  23. datacontract/model/data_contract_specification.py +65 -1
  24. datacontract/publish/publish.py +32 -0
  25. datacontract/py.typed +0 -0
  26. datacontract/templates/datacontract.html +37 -346
  27. datacontract/templates/index.html +70 -5
  28. datacontract/templates/partials/datacontract_information.html +66 -0
  29. datacontract/templates/partials/datacontract_servicelevels.html +253 -0
  30. datacontract/templates/partials/datacontract_terms.html +44 -0
  31. datacontract/templates/partials/definition.html +99 -0
  32. datacontract/templates/partials/example.html +27 -0
  33. datacontract/templates/partials/model_field.html +97 -0
  34. datacontract/templates/partials/server.html +144 -0
  35. datacontract/templates/style/output.css +99 -13
  36. {datacontract_cli-0.10.3.dist-info → datacontract_cli-0.10.5.dist-info}/METADATA +276 -139
  37. {datacontract_cli-0.10.3.dist-info → datacontract_cli-0.10.5.dist-info}/RECORD +41 -26
  38. {datacontract_cli-0.10.3.dist-info → datacontract_cli-0.10.5.dist-info}/LICENSE +0 -0
  39. {datacontract_cli-0.10.3.dist-info → datacontract_cli-0.10.5.dist-info}/WHEEL +0 -0
  40. {datacontract_cli-0.10.3.dist-info → datacontract_cli-0.10.5.dist-info}/entry_points.txt +0 -0
  41. {datacontract_cli-0.10.3.dist-info → datacontract_cli-0.10.5.dist-info}/top_level.txt +0 -0
@@ -566,6 +566,14 @@ video {
566
566
  border-width: 0;
567
567
  }
568
568
 
569
+ .pointer-events-none {
570
+ pointer-events: none;
571
+ }
572
+
573
+ .visible {
574
+ visibility: visible;
575
+ }
576
+
569
577
  .fixed {
570
578
  position: fixed;
571
579
  }
@@ -582,6 +590,15 @@ video {
582
590
  inset: 0px;
583
591
  }
584
592
 
593
+ .inset-y-0 {
594
+ top: 0px;
595
+ bottom: 0px;
596
+ }
597
+
598
+ .left-0 {
599
+ left: 0px;
600
+ }
601
+
585
602
  .right-0 {
586
603
  right: 0px;
587
604
  }
@@ -672,6 +689,10 @@ video {
672
689
  -webkit-line-clamp: 3;
673
690
  }
674
691
 
692
+ .block {
693
+ display: block;
694
+ }
695
+
675
696
  .inline-block {
676
697
  display: inline-block;
677
698
  }
@@ -736,6 +757,10 @@ video {
736
757
  width: 2.5rem;
737
758
  }
738
759
 
760
+ .w-2 {
761
+ width: 0.5rem;
762
+ }
763
+
739
764
  .w-2\/12 {
740
765
  width: 16.666667%;
741
766
  }
@@ -756,6 +781,10 @@ video {
756
781
  width: 58.333333%;
757
782
  }
758
783
 
784
+ .w-9\/12 {
785
+ width: 75%;
786
+ }
787
+
759
788
  .w-full {
760
789
  width: 100%;
761
790
  }
@@ -808,6 +837,10 @@ video {
808
837
  align-items: center;
809
838
  }
810
839
 
840
+ .items-baseline {
841
+ align-items: baseline;
842
+ }
843
+
811
844
  .justify-center {
812
845
  justify-content: center;
813
846
  }
@@ -833,11 +866,6 @@ video {
833
866
  column-gap: 1rem;
834
867
  }
835
868
 
836
- .gap-x-6 {
837
- -moz-column-gap: 1.5rem;
838
- column-gap: 1.5rem;
839
- }
840
-
841
869
  .gap-y-6 {
842
870
  row-gap: 1.5rem;
843
871
  }
@@ -860,6 +888,12 @@ video {
860
888
  margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
861
889
  }
862
890
 
891
+ .space-x-8 > :not([hidden]) ~ :not([hidden]) {
892
+ --tw-space-x-reverse: 0;
893
+ margin-right: calc(2rem * var(--tw-space-x-reverse));
894
+ margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));
895
+ }
896
+
863
897
  .space-y-6 > :not([hidden]) ~ :not([hidden]) {
864
898
  --tw-space-y-reverse: 0;
865
899
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
@@ -925,6 +959,10 @@ video {
925
959
  border-radius: 0.375rem;
926
960
  }
927
961
 
962
+ .border-0 {
963
+ border-width: 0px;
964
+ }
965
+
928
966
  .bg-blue-50 {
929
967
  --tw-bg-opacity: 1;
930
968
  background-color: rgb(239 246 255 / var(--tw-bg-opacity));
@@ -972,6 +1010,11 @@ video {
972
1010
  padding: 1.5rem;
973
1011
  }
974
1012
 
1013
+ .px-0 {
1014
+ padding-left: 0px;
1015
+ padding-right: 0px;
1016
+ }
1017
+
975
1018
  .px-1 {
976
1019
  padding-left: 0.25rem;
977
1020
  padding-right: 0.25rem;
@@ -1002,6 +1045,11 @@ video {
1002
1045
  padding-bottom: 0.25rem;
1003
1046
  }
1004
1047
 
1048
+ .py-1\.5 {
1049
+ padding-top: 0.375rem;
1050
+ padding-bottom: 0.375rem;
1051
+ }
1052
+
1005
1053
  .py-2 {
1006
1054
  padding-top: 0.5rem;
1007
1055
  padding-bottom: 0.5rem;
@@ -1024,6 +1072,14 @@ video {
1024
1072
  padding-bottom: 1.75rem;
1025
1073
  }
1026
1074
 
1075
+ .pl-10 {
1076
+ padding-left: 2.5rem;
1077
+ }
1078
+
1079
+ .pl-3 {
1080
+ padding-left: 0.75rem;
1081
+ }
1082
+
1027
1083
  .pl-4 {
1028
1084
  padding-left: 1rem;
1029
1085
  }
@@ -1215,10 +1271,6 @@ video {
1215
1271
  --tw-ring-opacity: 0.05;
1216
1272
  }
1217
1273
 
1218
- .filter {
1219
- filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
1220
- }
1221
-
1222
1274
  .transition-all {
1223
1275
  transition-property: all;
1224
1276
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
@@ -1231,6 +1283,16 @@ video {
1231
1283
  transition-duration: 150ms;
1232
1284
  }
1233
1285
 
1286
+ .placeholder\:text-gray-400::-moz-placeholder {
1287
+ --tw-text-opacity: 1;
1288
+ color: rgb(156 163 175 / var(--tw-text-opacity));
1289
+ }
1290
+
1291
+ .placeholder\:text-gray-400::placeholder {
1292
+ --tw-text-opacity: 1;
1293
+ color: rgb(156 163 175 / var(--tw-text-opacity));
1294
+ }
1295
+
1234
1296
  .hover\:bg-gray-50:hover {
1235
1297
  --tw-bg-opacity: 1;
1236
1298
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
@@ -1251,6 +1313,21 @@ video {
1251
1313
  color: rgb(55 65 81 / var(--tw-text-opacity));
1252
1314
  }
1253
1315
 
1316
+ .focus\:ring-2:focus {
1317
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
1318
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
1319
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
1320
+ }
1321
+
1322
+ .focus\:ring-inset:focus {
1323
+ --tw-ring-inset: inset;
1324
+ }
1325
+
1326
+ .focus\:ring-indigo-600:focus {
1327
+ --tw-ring-opacity: 1;
1328
+ --tw-ring-color: rgb(79 70 229 / var(--tw-ring-opacity));
1329
+ }
1330
+
1254
1331
  .focus-visible\:outline:focus-visible {
1255
1332
  outline-style: solid;
1256
1333
  }
@@ -1310,6 +1387,10 @@ video {
1310
1387
  width: 80%;
1311
1388
  }
1312
1389
 
1390
+ .sm\:w-72 {
1391
+ width: 18rem;
1392
+ }
1393
+
1313
1394
  .sm\:grid-cols-2 {
1314
1395
  grid-template-columns: repeat(2, minmax(0, 1fr));
1315
1396
  }
@@ -1318,10 +1399,6 @@ video {
1318
1399
  flex-direction: row;
1319
1400
  }
1320
1401
 
1321
- .sm\:flex-col {
1322
- flex-direction: column;
1323
- }
1324
-
1325
1402
  .sm\:flex-wrap {
1326
1403
  flex-wrap: wrap;
1327
1404
  }
@@ -1373,6 +1450,15 @@ video {
1373
1450
  line-height: 2.25rem;
1374
1451
  }
1375
1452
 
1453
+ .sm\:text-sm {
1454
+ font-size: 0.875rem;
1455
+ line-height: 1.25rem;
1456
+ }
1457
+
1458
+ .sm\:leading-6 {
1459
+ line-height: 1.5rem;
1460
+ }
1461
+
1376
1462
  .sm\:tracking-tight {
1377
1463
  letter-spacing: -0.025em;
1378
1464
  }