0.9.27 (2024-12-08)
- deps-dev: bump pyright from 1.1.387 to 1.1.389 (#158) (113c44c)
- deps: update ruff requirement from ~=0.7.2 to ~=0.8.1 (#157) (341dfed)
- deps: update setuptools requirement from ~=69.1 to ~=75.6 (#155) (04d0a91)
- deps: update snowflake-sqlalchemy requirement from ~=1.6.1 to ~=1.7.0 (#153) (10a4d31)
- deps: update sqlglot requirement from ~=25.24.1 to ~=25.34.0 (#161) (58fb469)
- deps: update twine requirement from ~=5.0 to ~=6.0 (#156) (aef5a2b)
0.9.26 (2024-11-09)
- flatten returns an index column (f603d0c), closes #143
- Support TRUNCATE TABLE description (#144) (234bbaf)
- bump sqlglot 25.22.0 (3c1f244)
- cruft update (5d09f8b)
- deps-dev: bump pyright from 1.1.378 to 1.1.382 (#142) (a3898ce)
- deps-dev: bump pyright from 1.1.382 to 1.1.387 (#145) (d6058d7)
- deps: update duckdb requirement from ~=1.0.0 to ~=1.1.3 (#150) (ecd4d46)
- deps: update pre-commit requirement from ~=3.4 to ~=4.0 (#147) (5a1f866)
- deps: update ruff requirement from ~=0.6.3 to ~=0.7.2 (#146) (e9ae13a)
- deps: update snowflake-sqlalchemy requirement from ~=1.5.0 to ~=1.6.1 (#119) (89a315a)
- deps: update sqlglot requirement from ~=25.22.0 to ~=25.24.1 (#141) (8e7c343)
0.9.25 (2024-09-16)
- Adds MERGE INTO transform (#109) (d5e14a7)
- close duckdb connection (223f8e2)
- server: handle snowflake ProgrammingError (9455a43)
- server: support empty result set (b967b69)
- server: support FAKESNOW_DB_PATH (af79f77)
- server: support time & timestamp types (1606a3e)
- support MERGE with multiple join columns and source subqueries (#136) (9b5a7a0), closes #24
- deps-dev: bump pyright from 1.1.374 to 1.1.378 (#133) (593a420)
- deps: update ruff requirement from ~=0.5.1 to ~=0.6.3 (#130) (6b37d8b)
0.9.24 (2024-08-21)
0.9.23 (2024-08-20)
- server: support bool, int, float types (efd4942)
- server: support cur.description (6e9c1a5)
- support conn.is_closed() (36dd461), closes #125
0.9.22 (2024-08-11)
- column types for DESCRIBE (572eaf5)
- fetchmany supports irregular sizes (3115afd)
- log all sql executed (in debug mode) (6faa120)
0.9.21 (2024-08-04)
- alter table cluster by (9a78fc2)
- Allow connection with schema=information_schema (#122) (51e4e68)
- columns returned by describe view information_schema.columns (83c62b6)
- Ensure type column in information_schema views is not null (#121) (7340a4a)
- Only set variables for SetItem expressions (#116) (0e0711c)
- bump sqlglot 25.5.1 (713d93d)
- cruft update (72b791b)
- deps-dev: bump pyright from 1.1.369 to 1.1.374 (#118) (17a8760)
0.9.20 (2024-07-10)
0.9.19 (2024-07-08)
0.9.18 (2024-06-29)
- execute_string ignores comments (e6513f7)
- Support IF NOT EXISTS in CREATE DATABASE statements (#108) (e7f3f97)
0.9.17 (2024-06-23)
- SPLIT (28f0d98)
- ARRAY_AGG with OVER (6d94c61), closes #92
- flatten VALUE cast to varchar as raw string (818efcc)
- more selective flatten_value_cast_as_varchar (7748fbf)
- deps: update duckdb requirement from ~=0.10.3 to ~=1.0.0 (#107) (8ead354)
- deps: update sqlglot requirement from ~=24.1.0 to ~=25.3.0 (#106) (89bee6f)
0.9.16 (2024-06-21)
0.9.15 (2024-06-07)
0.9.14 (2024-06-02)
0.9.13 (2024-05-08)
- nop regexes to ignore unimplemented commands (f3783bb)
- bump sqlglot 23.14.0 (e1255c0)
0.9.12 (2024-05-07)
- add write_pandas support for auto_create_table param (b78ba1d)
0.9.11 (2024-05-07)
- write_pandas using database and schema params (d210c0b)
0.9.10 (2024-05-05)
- support CREATE TABLE .. CLONE (ad049d9)
- deps-dev: bump pyright from 1.1.355 to 1.1.361 (#85) (adfa9f0)
- deps: update ruff requirement from ~=0.3.2 to ~=0.4.2 (#86) (d2ec882)
0.9.9 (2024-05-01)
- CREATE TABLE AS with aliases and combined fields (dbffa01), closes #82
- patching in fakesnow.ipynb (388c0ef)
0.9.8 (2024-04-19)
- don't double transform cur.description sql (76551ef), closes #61
- GET_PATH precedence for JSONExtractScalar (#78) (8a888a1)
- json extraction: only return string when casting to varchar (#77) (173344e)
0.9.7 (2024-04-08)
- add TRY_PARSE_JSON (#67) (5ebf0ba)
- add TRY_TO_{DECIMAL,...} (#68) (5903af6)
- cast string literals to timestamp in dateadd (#72) (5af0a36)
- cast string literals to timestamp in datediff (#79) (c8d7b26)
- mimic dateadd with date + day/week/month/year (#71) (6a8ebe2)
- support sha2 and sha2_hex with digest size of 256 (#63) (ce345e9)
- remove only null key/values in object_construct (#74) (d09edb6)
- write_pandas quotes columns when inserting dataframe (#65) (f62ab03)
0.9.6 (2024-03-24)
- add ruff-format (cruft update) (46fd572)
- deps-dev: bump pyright from 1.1.330 to 1.1.355 (#58) (9060a2e)
0.9.5 (2024-02-23)
- SHOW PRIMARY KEYS + description for CREATE VIEW + fix information_schema.columns to work with sqlalchemy (#52) (ff0ab13)
0.9.4 (2024-02-18)
0.9.3 (2024-02-17)
0.9.2 (2024-02-15)
0.9.1 (2024-02-09)
0.9.0 (2024-02-08)
- change to Apache License
- cursor.rowcount now returns count (8a8264e)
- DESCRIBE TABLE (7d0d3a7)
- EQUAL_NULL (f108a36)
- extract column comments (27ff048)
- include params in debug output (7452756)
- SHOW OBJECTS (84e16e8)
- SHOW SCHEMAS (74cd1a7)
- SHOW TABLES (56f6a0b), closes #38
- support description for TIMESTAMP WITH TIME ZONE (40a3a1e)
- support description without db/schema + dropping current schema (3315d99)
- support on-disk databases (6043f3d)
- UPDATE returns number of rows updated (f1187b1)
- casing in description() (db35a5d)
- cli passes -m and -d to target (83254d3)
- COMMENT ON supports raw string (50f0253)
- FAKESNOW_DEBUG=snowflake corrupting sql (81d7e3c)
- SHOW OBJECTS shows information_schema objects (6318881)
- store result set per results set (69f00a6)
- TO_DATE(VARCHAR) (c5b5d7b)
- write_pandas supports dicts with different keys (5962801)
0.8.2 (2024-01-05)
- FAKESNOW_DEBUG=snowflake prints original snowflake sql statement (42db788)
- support ARRAY_SIZE (c35d14b)
- support GET_PATH on nested json (7430067)
- support IDENTIFIER (a40ac61)
- support OBJECT_CONSTRUCT_KEEP_NULL (47168fb)
- support RANDOM (93c2a07)
- support ResultBatch.to_pandas() (4bfbf45)
- support SAMPLE (437343f)
- support TO_TIMESTAMP_NTZ (e351fee)
- upper/lower converts extracted json to varchar (44cd871)
0.8.1 (2024-01-03)
- add fakesnow cli (13b28df)
- FAKESNOW_DEBUG=1 prints sql commands (e9919b7)
- support fetchmany (382a9bf)
- support FLATTEN (0b6267f)
- description for CREATE DATABASE (6015ac8)
- description for CREATE SCHEMA (f9b1a4d)
- description for CREATE TABLE (8e8374a)
- description for DROP statements (a3da822)
- description for INSERT (ef93ad3)
- flatten order matches array (fc3d24f)
- handle commit without transaction (d939b43)
- handle rollback outside transaction (af0d7ab)
- notebook no active connection (d60f5db)
- add notebooks used for development (3055fd4)
- bump sqlglot 20.4.0 (2b216f9)
- bump sqlglot 20.5.0 (6963493)
0.8.0 (2023-12-28)
- support arrays
0.7.1 (2023-12-27)
- No module named 'pandas.core.arrays.arrow.dtype' (6ed1d2a)
0.7.0 (2023-09-09)
0.6.0 (2023-08-19)
- dictionary params (01ce713)
- support describe and info schema for ARRAY and OBJECT (0826d1c)
- to_decimal, to_number, to_numeric (8c19a8b)
- better doc strings (53f798e)
0.5.1 (2023-07-24)
0.5.0 (2023-07-23)
- cursor sqlstate (04aa92e)
- sqlid (18985e9)
- support BINARY type in description and info schema (32d5952)
- support TIME in description & TIMESTAMP in info schema (7014d8d)
- info schema now returns FLOAT types correctly (55d84c1)
- add test coverage for BOOLEAN in info schema (9c4f254)
0.4.1 (2023-07-16)
- remove stray debugging print (0ecc853)
0.4.0 (2023-07-16)
- support indices on variants (8269552)
- support regexp_substr (98abc33)
- very basic rowcount support (d1116d8)
- dataframe integer columns are int64 (13d36df)
- info schema now returns NUMBER for numeric types (b108110)
- info schema now returns TEXT for text types (3ea4f5f)
- support parse_json on values columns (d5198b8)
- remove unneeded type ignore (5214ff9)
0.3.0 (2023-07-15)
- info schema columns returns lengths for text types (edb91e5), closes #11
- support ALTER TABLE .. SET COMMENT (6470bae)
- support setting the timezone (228e884)
- support timestamp_ntz(9) as a table column (ef28927)
- treat float as 64 bit (cce50ba)
- alter table .. add column (612e1aa)
- fetchone() when using DictCursor (e1e50f7)
- match snowflake's integer precision (49afda2), closes #12
- bump sqlglot 16.8.1 (8f30d1a)
0.2.0 (2023-06-24)
- describe to work with parameterized SQL queries (#7) (1adaad0)
- No module named 'pandas' when using pdm (f60d45d), closes #5
0.1.0 (2023-06-20)
- cursor description (d7d0bb3)
- describe supports more column types (b16175d)
- support executemany (94f17b2)
- support object_construct (6d3e82a)
- support pyformat style params (3ba53f9)
- support write_pandas for dataframes with dict values (ba210cd)
- support write_pandas with partial columns (02fd6a4)
- to_date supports timestamp(9) (2263430)