Commit a6a3e2a
authored
fix(readme): remove false PyPI badge and broken install commands (#35)
* cowork-bot: emit valid SQL for mixed-type columns and empty/nested-only roots
Type inference now collapses a column whose values mix incompatible types
(e.g. a string and an integer) to TEXT instead of keeping the first-seen
numeric type. Previously this produced INSERT statements with a quoted string
literal in a numeric column, which Postgres/MySQL reject as invalid SQL. A
NULL value is treated as "unset" so a column that first sees NULL can still
take a concrete type when a non-NULL value arrives (e.g. [null, 42] ->
INTEGER), and an all-NULL column resolves to TEXT.
convert()/generate_schema() no longer emit an invalid `CREATE TABLE "x" ();`
or `INSERT INTO "x" () VALUES ();` for an empty object or a root whose only
content is nested arrays (flatten). They now emit only the valid child
tables, or an explicit comment when nothing can be generated, instead of a
silent green no-op.
- src/json2sql/converter.py: add _infer_type/_merge_type; skip empty root tables
- tests/test_edge_cases.py: correct the two tests that encoded the old buggy
widening behavior
- tests/test_type_inference.py: regression tests for mixed-type, NULL, and
empty/nested-only-root cases across all three dialects
- .github/workflows/cowork-auto-pr.yml: seed server-side PR opener
* fix: remove false PyPI badge and broken json2sql-cli install commands1 parent 4fe4bbe commit a6a3e2a
1 file changed
Lines changed: 4 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | | - | |
14 | | - | |
| 13 | + | |
15 | 14 | | |
16 | 15 | | |
17 | 16 | | |
| |||
23 | 22 | | |
24 | 23 | | |
25 | 24 | | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
| 25 | + | |
31 | 26 | | |
32 | 27 | | |
33 | 28 | | |
| |||
47 | 42 | | |
48 | 43 | | |
49 | 44 | | |
50 | | - | |
| 45 | + | |
51 | 46 | | |
52 | 47 | | |
53 | 48 | | |
| |||
124 | 119 | | |
125 | 120 | | |
126 | 121 | | |
127 | | - | |
| 122 | + | |
128 | 123 | | |
129 | 124 | | |
130 | 125 | | |
| |||
0 commit comments