lsst-felis 28.2024.4500__py3-none-any.whl → 30.0.0rc3__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.
Files changed (33) hide show
  1. felis/__init__.py +9 -1
  2. felis/cli.py +308 -209
  3. felis/config/tap_schema/columns.csv +33 -0
  4. felis/config/tap_schema/key_columns.csv +8 -0
  5. felis/config/tap_schema/keys.csv +8 -0
  6. felis/config/tap_schema/schemas.csv +2 -0
  7. felis/config/tap_schema/tables.csv +6 -0
  8. felis/config/tap_schema/tap_schema_extensions.yaml +73 -0
  9. felis/datamodel.py +599 -59
  10. felis/db/{dialects.py → _dialects.py} +69 -4
  11. felis/db/{variants.py → _variants.py} +1 -1
  12. felis/db/database_context.py +917 -0
  13. felis/diff.py +234 -0
  14. felis/metadata.py +89 -19
  15. felis/tap_schema.py +271 -166
  16. felis/tests/postgresql.py +1 -1
  17. felis/tests/run_cli.py +79 -0
  18. felis/types.py +7 -7
  19. {lsst_felis-28.2024.4500.dist-info → lsst_felis-30.0.0rc3.dist-info}/METADATA +20 -16
  20. lsst_felis-30.0.0rc3.dist-info/RECORD +31 -0
  21. {lsst_felis-28.2024.4500.dist-info → lsst_felis-30.0.0rc3.dist-info}/WHEEL +1 -1
  22. felis/db/utils.py +0 -409
  23. felis/tap.py +0 -597
  24. felis/tests/utils.py +0 -122
  25. felis/version.py +0 -2
  26. lsst_felis-28.2024.4500.dist-info/RECORD +0 -26
  27. felis/{schemas → config/tap_schema}/tap_schema_std.yaml +0 -0
  28. felis/db/{sqltypes.py → _sqltypes.py} +7 -7
  29. {lsst_felis-28.2024.4500.dist-info → lsst_felis-30.0.0rc3.dist-info}/entry_points.txt +0 -0
  30. {lsst_felis-28.2024.4500.dist-info → lsst_felis-30.0.0rc3.dist-info/licenses}/COPYRIGHT +0 -0
  31. {lsst_felis-28.2024.4500.dist-info → lsst_felis-30.0.0rc3.dist-info/licenses}/LICENSE +0 -0
  32. {lsst_felis-28.2024.4500.dist-info → lsst_felis-30.0.0rc3.dist-info}/top_level.txt +0 -0
  33. {lsst_felis-28.2024.4500.dist-info → lsst_felis-30.0.0rc3.dist-info}/zip-safe +0 -0
@@ -0,0 +1,8 @@
1
+ key_id,from_column,target_column
2
+ k1,schema_name,schema_name
3
+ k2,table_name,table_name
4
+ k3,from_table,table_name
5
+ k4,target_table,table_name
6
+ k5,key_id,key_id
7
+ k6,from_column,column_name
8
+ k7,target_column,column_name
@@ -0,0 +1,8 @@
1
+ key_id,from_table,target_table,utype,description
2
+ k1,tap_schema.tables,tap_schema.schemas,\N,\N
3
+ k2,tap_schema.columns,tap_schema.tables,\N,\N
4
+ k3,tap_schema.keys,tap_schema.tables,\N,\N
5
+ k4,tap_schema.keys,tap_schema.tables,\N,\N
6
+ k5,tap_schema.key_columns,tap_schema.keys,\N,\N
7
+ k6,tap_schema.key_columns,tap_schema.columns,\N,\N
8
+ k7,tap_schema.key_columns,tap_schema.columns,\N,\N
@@ -0,0 +1,2 @@
1
+ schema_name,utype,description,schema_index
2
+ tap_schema,\N,A TAP-standard-mandated schema to describe tablesets in a TAP 1.1 service,100000
@@ -0,0 +1,6 @@
1
+ schema_name,table_name,table_type,utype,description,table_index
2
+ tap_schema,tap_schema.columns,table,\N,description of columns in this tableset,102000
3
+ tap_schema,tap_schema.key_columns,table,\N,description of foreign key columns in this tableset,104000
4
+ tap_schema,tap_schema.keys,table,\N,description of foreign keys in this tableset,103000
5
+ tap_schema,tap_schema.schemas,table,\N,description of schemas in this tableset,100000
6
+ tap_schema,tap_schema.tables,table,\N,description of tables in this tableset,101000
@@ -0,0 +1,73 @@
1
+ # TAP_SCHEMA Extensions
2
+ # This file defines additional columns to be added to the standard TAP_SCHEMA tables
3
+ # These are extensions beyond the IVOA TAP 1.1 specification and needed for the CADC TAP service
4
+
5
+ # Extension columns for each TAP_SCHEMA table
6
+ name: tap_schema_extensions
7
+ description: Extensions to the standard TAP_SCHEMA tables
8
+
9
+ tables:
10
+ - name: schemas
11
+ description: "Extensions to TAP_SCHEMA.schemas table"
12
+ columns:
13
+ - name: owner_id
14
+ datatype: char
15
+ length: 32
16
+ description: "Owner identifier for user-created content"
17
+
18
+ - name: read_anon
19
+ datatype: int
20
+ description: "Anonymous read permission flag (0 or 1)"
21
+
22
+ - name: read_only_group
23
+ datatype: char
24
+ length: 128
25
+ description: "Read-only group identifier"
26
+
27
+ - name: read_write_group
28
+ datatype: char
29
+ length: 128
30
+ description: "Read-write group identifier"
31
+
32
+ - name: api_created
33
+ datatype: int
34
+ description: "Flag indicating if schema was created via TAP service API (0 or 1)"
35
+
36
+ - name: tables
37
+ description: "Extensions to TAP_SCHEMA.tables table"
38
+ columns:
39
+ - name: owner_id
40
+ datatype: char
41
+ length: 32
42
+ description: "Owner identifier for user-created content"
43
+
44
+ - name: read_anon
45
+ datatype: int
46
+ description: "Anonymous read permission flag (0 or 1)"
47
+
48
+ - name: read_only_group
49
+ datatype: char
50
+ length: 128
51
+ description: "Read-only group identifier"
52
+
53
+ - name: read_write_group
54
+ datatype: char
55
+ length: 128
56
+ description: "Read-write group identifier"
57
+
58
+ - name: api_created
59
+ datatype: int
60
+ description: "Flag indicating if table was created via TAP service API (0 or 1)"
61
+
62
+ - name: view_target
63
+ datatype: char
64
+ length: 128
65
+ description: "View target identifier"
66
+
67
+ - name: columns
68
+ description: "Extensions to TAP_SCHEMA.columns table"
69
+ columns:
70
+ - name: column_id
71
+ datatype: char
72
+ length: 32
73
+ description: "Globally unique columnID for use as an XML ID attribute on the FIELD in VOTable output"