Releases: ygrek/sqlgg
Releases · ygrek/sqlgg
20231201
+ ocaml: support IN @x via text substitution
+ sql: support batch insert with syntax INSERT INTO x(...) VALUES @xs
+ sql: rudimentary NULL handling (direct column assignments)
+ sql: multi-table DELETE
+ ocaml: update traits to track read/write nature of ops
* ocaml: cleanup whitespace
* sql: implicitly convert int<->decimal, require explicit cast for float<->decimal
+ sql: more string and window functions
+ sql: CAST, FLOOR, MOD, CONVERT, AS (expr), DROP FOREIGN KEY, ALTER TABLE .. [CONVERT TO] CHARACTER SET .., ALTER TABLE ... ADD CONSTRAINT
* sql: fix table alias handling
+ cli: -static-header
* sql: fix DATE type
* sql: fix ORDER BY with multiple params
20200521
* switch versioning scheme
* switch build system to dune
* sql: EXISTS, nested JOINs, SUBSTRING, DROP VIEW, ALTER RENAME,
RENAME TABLE, DIV, MOD, LAST_INSERT_ID, UNIX_TIMESTAMP(DATE),
TIMESTAMPDIFF, TIMESTAMPADD, DATE, TIME, POW, INSERT DEFAULT
* sql: INSERT scope fixes
* ocaml: monadic IO with `-gen caml_io`
* ocaml: mariadb traits
* ocaml: parameters in callbacks are now named
* sql: variant parameters (ocaml only)
* traits: + Decimal
* typing: rudimentary NULL support
* sql: do not fail on unknown functions (treat as untyped and emit warning)
* gen: allow filtering by DDL, DML, DQL, etc
0.4.5
* improve type resolution for functions
* improve single-row detection
* improve type for numeric expressions a bit
* sql: ANY_VALUE, IS NOT DISTINCT FROM, COUNT(DISTINCT ...), from_unixtime,
IFNULL, NULLIF, multi-value INSERT
* sql: more datetime functions (sqlite)
* caml: generate List module
* forbid `-params none` with autogenerated parameters
* mysql: allow override value types
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
* sql: many typing improvements
* sql: SELECT FOR UPDATE, ON UPDATE, ON DELETE, ON DUPLICATE KEY UPDATE,
IS NOT? NULL, INTERVAL, CREATE INDEX column(N), VALUES function, UUID,
SELECT IF
* sql: parse stored procedures
* sql: dynamically add functions
* ocaml: support multiple substitutions in queries
* ocaml: install traits and implementations as subpackages