Commit Graph

28 Commits

Author SHA1 Message Date
Diego Imbert
fdefd4be93 feat: duckdb sql lang support (#5761) 2025-05-27 15:52:57 +02:00
Diego Imbert
c7886ea07a feat: sql jobs outputting to s3 + streaming for high-number of rows (#5704)
* stream to s3 boilerplate

* S3 works with new syntax

* snowflake s3 streaming support

* postgres s3 support

* fix postgres stream format

* mysql s3 streaming

* mssql s3 streaming

* new s3 mode syntax

* optional folder param

* rename folder to prefix

* json_stream_arr_values

* cargo toml rollback

* convert_ndjson with datafusion

* format conversion kinda works

* Fixed not finishing the datafusion writer

* support for pg and mssql

* fix file ext

* bigquery conversion and works with s3 streaming

* fix s3 flag parser

* snowflake s3 streaming support

* factor out duplicate code

* remove anyhow

* Err case for parse s3 mode

* Send error to mpsc

* bigquery s3 streaming fix for huge queries

* remove extra stuff

* snowflake s3 streaming support

* small regex mistake

* cfg(not(feature = "parquet"))

* fix CI (unused import)

* error handling fix (graphite)
2025-05-13 10:19:44 +02:00
wendrul
38ee0183aa feat: unsafe parameters for sql queries (table names, column names) (#5488)
* Make schema validation struct

Schema Validation rules that are constructed from the schema or from the
MainArgSig(TODO).

* Make other validator builder

* Fail dependency job like with lockfile failing for schema validator

* Add last types + tests

* Remove unused dependency

* fix typos

* Migration ID was colliding with another, changed it manually

* Add Oneof + other fixes

* fix: cache for querying scripts correclty handles ScriptMetadata

* Add cache for schema validation from main arg sig

* Prepare sqlx

* Remove default features

* Feature flags

* WIP: unsafe sql params for sql langauges

* Fix down migration table name

* cleanup: put validation logic inside a function

* Refactor to cache the should_validate boolean

Changed the schemavalidators cache to take in an
Option<SchemaValidator>, effectively storing the `should_validate_schema` information.

Also pass the schema when avaialble to construct the schema validator

* Add other job kinds to u8 cache key just in case

* Change sql languages to all get arguments as Values instead of RawValue

* Only cache if not preview

* Add last sql languages and some CI fixes

* Rename after typo on `sanitized`

* Finish rename

* Remove unused import

* Fix wrong test

* Add newly published regex parser version

* Remove default features from cargo.toml

* Change to a cleaner syntax for the interpolated args

* Update republished parser
2025-03-20 20:02:25 +01:00
wendrul
77d825540f feat: add oracle db support on ee (#5062) 2025-01-14 21:21:24 +01:00
HugoCasa
8c2f2ebb1e fix: update ms sql template (#5059) 2025-01-14 17:48:12 +01:00
HugoCasa
ae8f29a4cb feat: http routing (#4339)
* feat: http routing

* all

* feat: improve UI

* final stuff

* fix: sqlx

* fix: nit

* fix: nits

* fix: error handler display

* fix: routes panel perms

* all

* fix: improve ability to paste from macos in vscode extension

* fix lock-write for deno

* all

* cleaning

* fix

* cli preprocessor

* nits

* nits

---------

Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
2024-09-20 15:38:38 +02:00
wendrul
858f63344f split script argument and dependency parser packages to lighten initial load of the script editor (#4287)
* Add feature flags to split parsers into different pkgs

* Split wasm parser imports

* Use regex-lite, reorganize the parser split

* Update imports to the new wasm parser split

* Remove panic system on wasm and simplify snake case convert logic

* Adapt new imports

* Fix to_snake_case + fix tests

* Adapt wasm test dependencies

* Add publish script

* Fix publish script

* Publish script relative to script location

* pkg diff + publish

* Fix TS WASM import + add pakcage lock

* Fix lint

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
2024-08-28 13:26:55 +02:00
HugoCasa
1897ef2f13 fix: mysql params starting with underscore (#4201) 2024-08-06 22:06:01 +02:00
HugoCasa
6b41a3473b fix: mysql support for underscore in named param (#4200) 2024-08-06 21:59:29 +02:00
HugoCasa
2b9b4eedc3 feat: multi sql statement with pg fix (#4134)
* Revert "Revert "feat: multi statement sql (#4104)" (#4133)"

This reverts commit c578f05e2d.

* fix: sort pg args
2024-07-26 09:23:39 +02:00
Ruben Fiszel
c578f05e2d Revert "feat: multi statement sql (#4104)" (#4133)
This reverts commit 5bc0e96171.
2024-07-26 01:24:03 +02:00
HugoCasa
5bc0e96171 feat: multi statement sql (#4104)
* feat: multi statement pg

* fix: add other flavors

* feat: make pg params start at 1 and sequential

* fix: improve sql statement parsing

* add tests

* fix: allow no semi in last statement

* fix: merge conflict

* fix: minor improvement

* fix: parser version
2024-07-25 20:46:04 +02:00
HugoCasa
6da5e15903 feat: add support for bytea in pg (#3926)
* feat: add support for bytea in pg

* fix: editor nits
2024-06-18 17:38:46 +02:00
HugoCasa
a79e09d65f feat: improve parsers when no main func (#3805)
* feat: improve parsers when no main func

* chore: update parser version
2024-05-23 20:36:16 +02:00
HugoCasa
e8905b2734 feat: pg add json support (#3620) 2024-04-26 13:28:15 +02:00
HugoCasa
b1ae732df0 fix: support all pg types from db studio (#3613)
* fix: support all pg types from db studio

* chore: parser pkg frontend update
2024-04-25 17:32:06 +02:00
Ruben Fiszel
c08eb0abc8 fix: remove requirement on full wasm parser for row insert of db studio 2024-04-11 01:12:41 +02:00
HugoCasa
c03c73797b fix: pg timstamptz param (#3364) 2024-03-06 12:50:01 +01:00
HugoCasa
1ee45a1f7d feat: allow to pin database in sql scripts (#3304) 2024-02-27 19:59:52 +01:00
Ruben Fiszel
e485811309 fix: improve sql default arg parsing + auto invite 2023-12-08 16:37:11 +01:00
HugoCasa
825448e1f1 feat: add mysql datetime (#2808)
* feat: mysql datetime support

* feat: nits
2023-12-08 00:14:08 +01:00
HugoCasa
6e138528dd feat: mysql named params (#2805) 2023-12-07 18:55:14 +01:00
HugoCasa
2fe623cf6b feat: add sql server (#2604)
* feat: add sql server

* feat: mssql test, db schema, AI

* chore: update to latest parser

* fix: clean mssql executor
2023-11-10 11:16:13 +01:00
HugoCasa
9002a0e05a fix: add numeric, array and date types (#2379)
* fix: add numeric, array and date types

* fix: update parser npm
2023-10-05 09:13:56 +02:00
HugoCasa
488d2813f3 feat: add snowflake (#1987)
* feat: unveil windmill AI

* feat: add snowflake

* fix: uppercase snowflake auth params
2023-08-03 17:22:00 +02:00
HugoCasa
c9110575cd feat: add bigquery (#1934)
* feat: add bigquery

* fix: remove debug logs

* fix: add records number limit

* fix: revert unwanted changes

* feat: bigquery enterprise only

* fix: google auth only when enterprise

* fix: rename bigquery scripts
2023-07-27 14:24:27 +02:00
Ruben Fiszel
b7c7d564ca feat: add mysql as native integration (#1859) 2023-07-11 22:53:02 +02:00
Ruben Fiszel
41213a61aa feat: native fetch + native postgresql jobs (#1796)
* push

* test

* test

* done

* fix

* modify script lang enum

* fix tests

* update wasm

* fix tests
2023-07-04 19:39:59 +02:00