* hack fix dnd with tick
* DBExplorer table left table selector
* kinda works
* correct table metadata
* separated columnDefs creation logic
* Removed dependency on AppDbExplorer
* (tweak) loadTableMetaData much faster
* nit for darkmode
* DBExplorerDrawerButton
* footer
* count footer
* reload
* update
* fix height
* db explorer btn in resources table
* delete row
* InsertRowDrawerButton
* insert
* refresh on insert and delete
* moved db logic to ts file
* better update ux
* moved all IO upwards
* fix: Remaining svelte 5 bugs (#5563)
* hack fix dnd with tick
* fix: infinite loading in CodeDisplay after update to svelte 5
* regen package-lock
* fix tutorial (#5562)
* fix tutorial first part
* fix tutorial
---------
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
* feat: Implement sending diff to ai (#5510)
* allow mentioning specific files in instructions
* remove not working highlight implementation
* make highlighted text work
* fix tooltip position
* clean code
* cleaning
* use lib for tooltip positioning
* fix logic
* draft for db in context
* use tools for db in context
* fixes
* cleaning and bug fixes
* fix
* cleaning
* fix when script is db type
* simplify logic
* put schema in context if already here
* fix imports
* fix tooltip position and make it scrollable
* remove console logs
* check if selected is in available
* fix tooltip list
* add back lost logic
* last fix
* fix type errors
* use loaded schema from dbSchemas
* fix typing, content and lang are always there
* remove from context if not available anymore
* add not loaded yet mention if schema not loaded
* add missing callback logic
* fix prompt
* fix usage of updateselectedContext function
* fix styling for white theme
* handle tab and arrows
* fix schemas not being refreshed on contexts
* also refresh displayMessages when dbschemas change
* fix duplicate available contexts
* fix logic for new scripts
* fix new lines inside text area
* implement sending diff in context
* add button in deploy options to ask ai about diff
* also visualize change when asking for diff
* better prompt
* add limit to diff size
* put diff mode toggle in editor bar
* add button to see history from editor
* adjustements
* put see diff button in dropdown
* fixes
* better styling
* highlight if diff mode
* format files
* change buttons based on diffmode
* remove diff after sending message
* fix type error
* smaller buttons
* draft
* use existing editor in diff editor
* fix number of db resources fetches
* fix apply and add buttons on diff mode
* cleaning
* undo ai gen button show
* better buttons
* styling asjustements + show diff in badge
* styling
* fix deployed code check
* cleaning and styling
* better quick actions
* dont send code when analyzing
* remove apply in chat if only code and no diff
* fix bad code refactor
---------
Co-authored-by: HugoCasa <hugo@casademont.ch>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
* fix: prevent invalid returned ai completion object errors (#5564)
* fix(frontend): app builder - force json configuration in rich result (#5565)
* feat: make azure a standalone AI provider (#5558)
* feat: make azure a standalone AI provider
* oups
* nit
* fix: openai/azure oauth
* nit
* nits
* feat(frontend) add flow step result viewer (#5398)
* fix(cli): properly handle enabled/disabled updates of schedules
* fix benchmarks
* feat: handle sending selected lines to ai context (#5527)
* allow mentioning specific files in instructions
* remove not working highlight implementation
* make highlighted text work
* fix tooltip position
* clean code
* cleaning
* use lib for tooltip positioning
* fix logic
* draft for db in context
* use tools for db in context
* fixes
* cleaning and bug fixes
* fix
* cleaning
* fix when script is db type
* simplify logic
* put schema in context if already here
* fix imports
* fix tooltip position and make it scrollable
* remove console logs
* check if selected is in available
* fix tooltip list
* add back lost logic
* last fix
* fix type errors
* use loaded schema from dbSchemas
* fix typing, content and lang are always there
* remove from context if not available anymore
* add not loaded yet mention if schema not loaded
* add missing callback logic
* fix prompt
* fix usage of updateselectedContext function
* fix styling for white theme
* handle tab and arrows
* fix schemas not being refreshed on contexts
* also refresh displayMessages when dbschemas change
* fix duplicate available contexts
* fix logic for new scripts
* fix new lines inside text area
* implement sending diff in context
* add button in deploy options to ask ai about diff
* also visualize change when asking for diff
* better prompt
* add limit to diff size
* put diff mode toggle in editor bar
* add button to see history from editor
* adjustements
* put see diff button in dropdown
* fixes
* better styling
* handle adding code piece to context
* add code piece in context
* draft start end markers
* adapt code
* draft
* apply code pieces before sending request
* cleaning
* highlight if diff mode
* format files
* change buttons based on diffmode
* remove diff after sending message
* fix type error
* smaller buttons
* draft
* use existing editor in diff editor
* fix number of db resources fetches
* fix apply and add buttons on diff mode
* cleaning
* undo ai gen button show
* better buttons
* better prompt
* remove console log
* fix merge
* avoid duplicates
* fix merge
* fix
* fix apply logic
* remove useless if
* focus text area + close chat if no selected lines
---------
Co-authored-by: HugoCasa <hugo@casademont.ch>
* fix: flow editor svelte 5 issues (#5567)
* feat: add diff toggle to flow inline scripts (#5550)
* draft flow diff
* add missing import
* cleaning
* code cleaning
* fix for recursive renderings
* fix typo
* cleaning
---------
Co-authored-by: HugoCasa <hugo@casademont.ch>
* fix(frontend): proper each block binding + better app settings reactivity (#5568)
* fix: properly bind to array elements in Svelte each loops
This commit fixes an issue where binding directly to loop variables in Svelte's #each loops doesn't properly update the original array. Instead of binding directly to the loop variable, we now bind to the array elements using index variables.
The pattern used is: - Change: {#each arr as el} -> {#each arr as _, index} - Change: bind:value={el} -> bind:value={arr[index]}
Modified files: - frontend/src/lib/components/ArrayTypeNarrowing.svelte - frontend/src/lib/components/apps/editor/AppInputs.svelte - frontend/src/lib/components/flows/content/FlowModuleWrapper.svelte
* better app settings panel reactivity
---------
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: HugoCasa <hugo@casademont.ch>
* fix: app editor svelte 5 fixes (#5570)
* fix: properly bind to array elements in Svelte each loops
This commit fixes an issue where binding directly to loop variables in Svelte's #each loops doesn't properly update the original array. Instead of binding directly to the loop variable, we now bind to the array elements using index variables.
The pattern used is: - Change: {#each arr as el} -> {#each arr as _, index} - Change: bind:value={el} -> bind:value={arr[index]}
Modified files: - frontend/src/lib/components/ArrayTypeNarrowing.svelte - frontend/src/lib/components/apps/editor/AppInputs.svelte - frontend/src/lib/components/flows/content/FlowModuleWrapper.svelte
* better app settings panel reactivity
* fix: app editor table svelte 5 fixes
---------
Co-authored-by: Guilhem <guilhemlemouel@gmail.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
* select border (#5571)
* fix: properly bind to array elements in Svelte each loops
This commit fixes an issue where binding directly to loop variables in Svelte's #each loops doesn't properly update the original array. Instead of binding directly to the loop variable, we now bind to the array elements using index variables.
The pattern used is: - Change: {#each arr as el} -> {#each arr as _, index} - Change: bind:value={el} -> bind:value={arr[index]}
Modified files: - frontend/src/lib/components/ArrayTypeNarrowing.svelte - frontend/src/lib/components/apps/editor/AppInputs.svelte - frontend/src/lib/components/flows/content/FlowModuleWrapper.svelte
* better app settings panel reactivity
* fix: app editor table svelte 5 fixes
* fix: select border
---------
Co-authored-by: Guilhem <guilhemlemouel@gmail.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
* feat: add windmill context to autocomplete (#5548)
* add windmill context to autocomplete
* fix formatting
* remove console log
* do not mention tool call for autocomplete
* apply logic to php
---------
Co-authored-by: HugoCasa <hugo@casademont.ch>
* fix tabs selected behavior change from svelte 5
* fix: fix list jobs by tag
* fix: tenant id to never be undefined on teams (#5572)
* fix: tenant id to never be undefined
* simplify azure oauth
* simplify azure oauth
* update ee ref
* sqlx prepare
* sqlx prepare
* fix: legacy script gen model selection (#5574)
* feat: add wildcards filter for worker/label/tags
* fix: Dynamic select does not work with tag //native (#5576)
closes#5490
* function takes 13 arguments but 14 arguments were supplied (#5577)
* fix(frontend): prevent deploy popover to show if deploy dropdown is open (#5542)
* prevent deploy popover to show if deploy dropdown is open
* wip
* Revert "wip"
This reverts commit 85434654af.
* Revert "prevent deploy popover to show if deploy dropdown is open"
This reverts commit edd9eda156.
* add prop to hide popup fro dropdown
* feat: button can have tooltip
* improve deploy tooltip and dropdown behavior
* rename tooltip to tooltipPopover
* nit
* add deploy button component
* use svelte 5 runes
* use new deploy button for script builder
* add delay to deploy popover when dropdown is open
* add delay to deploy popover when dropdown is open
# Conflicts:
# frontend/src/lib/components/DeployButton.svelte
# frontend/src/lib/components/common/button/Button.svelte
* Update frontend/src/lib/components/common/button/Button.svelte
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* remove unsused field
* nit
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* chore: update hub sync script (#5579)
* fix monaco suggestion z-index (#5578)
* fix: validate saved module before passing to flow module editor (#5580)
* fix: freeze when clicking script history diff button (#5581)
* fix: validate saved module before passing to flow module editor
* fix: freeze when clicking script history diff button
* add space (#5582)
* fix: binding not working in nested array script arg (#5585)
* fix: mssql ca_cert deserializing (#5587)
* fix: improve app image picker UX (#5589)
* DBTableAction
* delete table
* fix intempestive error toasts
* fullscreen mode
* rename db explorer to db manager
* use drawer open state instead of oo open method
* create table btn
* factor away sucess text
* basic table creation form
* uniq check
* better select
* better add btn
* extra settings
* create table works in pgsql
* MySQL kinda works
* CRUD works in mysql
* fix lowercase
* allow create table with no schema
* handle default value
* sql repl pane
* execute sql queries
* db ops opt in
* SQL Repl v0
* ux
* UX
* better refresh
* better placeholder sql
* sql code clipboard copy
* handle multiple primary keys in table creation
* fix all fields being required on insert
* fix postgres enum not properly converted
* use InsertRowDrawerButton in App db studio
* insert shortcut
* fix mysql datetime parser for non tz dates
* npm run check
* Revert "fix all fields being required on insert"
This reverts commit 6bec952fb7.
* fk ui
* don't commit .env...
* tweak
* fk ui bindings
* fk dropdowns right values
* schema notation fixes
* handle on delete / update cascade etc
* better loading button without flicker
* fix infinite loop caused by getDbSchemas
* foreign key error validation
* type error
* cache col defs
* fix label hover
* fix fk select overflow
* Fix Select styling
* mssql fixes
* fix wrong typecast failing with mssql
* extract makeLoadTableMetaDataQuery
* Fetch all col defs in one go (mysql)
* loadAllTablesMetaData for postgres
* for some reason factoring transformColumnDefs broke ag infinite table
* mssql loads all coldefs at once
* snowflake preload all col defs
* filter out information schema snowflake
* default schema select
* fix original pg col def logic broken
* Fix ugly flickers
* fix updateGrid before grid ready
* better auto sizing
* smoother CRUD UI refreshes
* fix col defs qury for bigquery
* bigquery works
* nits
* do not change queries used in policies !
* fix runPreviewJobAndPollResult on WINDMILL_TOO_BIG
* select padding
* ellipsis typos
* fix mysterious ugly red flash when mounting ag grid in dark mode only
* Load on click
* Remove schema explorer mode
* repl min size
* fix flash on dark mode
* dirty fix ag grid not refreshing sometimes
* sql repl history
* fix ag theme
* close sql repl result viewer by clicking outside
* Select styling fix in dark mode
* better default query sqlrepl
* Buttons less aggressive
---------
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: centdix <40307056+centdix@users.noreply.github.com>
Co-authored-by: HugoCasa <hugo@casademont.ch>
Co-authored-by: Alexander Petric <alpetric@users.noreply.github.com>
Co-authored-by: Guilhem <guilhemlemouel@gmail.com>
Co-authored-by: Piyush मिश्र <piyushxcoder@gmail.com>
Co-authored-by: Piyush मिश्र <piyush.raj.kit@gmail.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* runs on svelte 5
* Line component from svelte-chartjs
* Replaced all svelte-chartjs occurrences with custom wrapper
* Fix props mistake
* Fix illegal table structures
* self-closing-tags fix
* aria labels
* Fixed trivial warnings and errors
* @tanstack/svelte-table fix
* upgrade to vite 6
* svelte-kit sync before running svelte-check
* Remove on:clear which is actually on:removeAll and already handled by on:change
* fix worker tags not displaying in Autoscaling
* Try to fix svelte-kit sync not working during CI
* remove warnings
* Fix add flow page crashing
* access worldStore before assignment fix
* fix infinite recursions in App Editor
* Replaced JSON.stringify with proper deepEqual
* component mount api changed (no longer classes)
* fix ci errors
* Fix infinite loops in background runnable panel
* factored effect on deep equal logic in onObjChange
* fix "Add" not working in AgGrid Table
* Replaced legacy component.$set api
* Fix multiselect infinite value reaction
* Fix flow input fields resetting when opening their edit tab
* fix date input resetting when typing year
* Remove !p-0 affecting subgrid dotted borders
* fix missing debounceTemplate causing hundreds of updates
* Fix AgGrid action refreshes and disppearing
* resolve getItems generating random ids every rerun
* fix cannot access items before init
* fix sort lambda arguments being undefined
* Revert "Remove !p-0 affecting subgrid dotted borders"
This reverts commit c62809bb45d682a48376b071680645ed4e1c601b.
* fix input not updating in decision tree editor
* Update frontend/src/lib/components/schema/EditableSchemaWrapper.svelte
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Re-added padding affecting subgrid dotted borders (#5479)
* remove !p-0 in preset components
* removed extra padding on accordion tabs subgrid
* Fix non-reactive SchemaForm
* dirty fix for the oneOf bug
* Fix warnings and update svelte-exmarkdown for svelte 5
* fix dnd not working
* don't mount component like objects
---------
Co-authored-by: Diego Imbert <diegoimbert@protonmail.com>
Co-authored-by: Diego Imbert <70353967+diegoimbert@users.noreply.github.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* allow mentioning specific files in instructions
* remove not working highlight implementation
* make highlighted text work
* fix tooltip position
* clean code
* cleaning
* use lib for tooltip positioning
* fix logic
* draft for db in context
* use tools for db in context
* fixes
* cleaning and bug fixes
* fix
* cleaning
* fix when script is db type
* simplify logic
* put schema in context if already here
* fix imports
* fix tooltip position and make it scrollable
* remove console logs
* check if selected is in available
* fix tooltip list
* add back lost logic
* last fix
* fix type errors
* use loaded schema from dbSchemas
* fix typing, content and lang are always there
* remove from context if not available anymore
* add not loaded yet mention if schema not loaded
* add missing callback logic
* fix prompt
* fix usage of updateselectedContext function
* fix styling for white theme
* handle tab and arrows
* fix schemas not being refreshed on contexts
* also refresh displayMessages when dbschemas change
* fix duplicate available contexts
* fix logic for new scripts
* fix new lines inside text area
* format files
* fix number of db resources fetches
* remove padding
* fix tooltip y position
---------
Co-authored-by: HugoCasa <hugo@casademont.ch>
* feat: add nu (nushell) support
* add worker tests
* deactivate tables and non-any types below top-level
full support will come in V1
for V0 it's better to keep things minimal and simple
* add syntax highlighting
used python's grammar, since nushell isn't supported by monaco nor svelte-highlights
for V1 nu will get it`s own grammar
* add logo
* partially implement plugin support
* change logo + ability to deploy + nsjail draft
* static variables + get_resource + get_variable
* lsp/dev.nu + initial nu lsp (not working yet)
* make it work with nsjail
* nullguard
* Much more flexible signature parsing and better error-messages
* add init script
* rename nulsp to nu
* install nu to dockerfile
* fix merge
* implement Default for MainArgSignature
* stage NU_CACHE_DIR
* improve dockerfiles
* dev.nu for parser-wasm + flake.nix
* update code for windows
* add nushell to flake
* upload Cargo.lock
* make build.sh work on nixos
* build wasm cli parsers
* add docs to README_DEV.md
* add helper script docker/dev.nu
* improve docker/dev.nu
* fix windows
* commit frontend/package(lock).json
* update cargo.lock
* correctly update cargo.lock
* remove lsp
* update flake.nix to include svelte server and nushell
* Revert base.sql to main
* remove PLUGIN_USE_RE
* make CARGO_PATH private
* add nu to cli
* Change flags to build wasm-nu-parser
* remove flake.nix from parser-wasm
* update wasm-build target
* remove unused import
* add cli support for nu
* update github workflows
* wasm-build 0.17 -> 0.19
* update build script
* update cargo.lock
* Fix typographical error
* start working on java
* do java boilerplate
* implement parser for java
* update Cargo.lock
* update ENV_SETTINGS
* use published nu parser
* update package.lock
* java is S3 + Caching enabled
* install nsjail backup
* commit v0
* fix nsjail
* v0.1
* rewrite parser in tree-sitter
* implement parser from scratch
* polishing
* change init script to match new parser
* fix imports
* fix cli build
* fix cli build
* refactor install phase
* implement .valid.windmill atomic verification
* implement java init functionality
* remove quick-xml
* fix windows not recognizing 'mvn'
* create empty settings.xml if there is no config provided
* clean up
* change default settings.xml
* change classpath format for windows
* docs to helper
* java copy bin cache instead of symlink
* remove comments
* merge
* fix package.json
* fix package.json 2
* minor fixing
* migrate to Coursier
* update misc
* Http(s) Proxy + CA certs
* remove unused .wasm
* make requirements insensitive to spaces
* update handle_child refs
* rework save_cache for directories
* fix s3 bug
* compile .wasm for cli
* remove uuid import
* fix compilation
* use reference
* fix zero-dep failure
* removing unsafe stuff
* remove unneeded imports
* revert: we still need winapi
* remove nix store from nsjail
* do not create cache_nomount
* add java to dnt
* remove duplicated dependency in init script
* fix typos
* fix CI
* use published parser
* 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
* feat: add nu (nushell) support
* add worker tests
* deactivate tables and non-any types below top-level
full support will come in V1
for V0 it's better to keep things minimal and simple
* add syntax highlighting
used python's grammar, since nushell isn't supported by monaco nor svelte-highlights
for V1 nu will get it`s own grammar
* add logo
* partially implement plugin support
* change logo + ability to deploy + nsjail draft
* static variables + get_resource + get_variable
* lsp/dev.nu + initial nu lsp (not working yet)
* make it work with nsjail
* nullguard
* Much more flexible signature parsing and better error-messages
* add init script
* rename nulsp to nu
* install nu to dockerfile
* fix merge
* implement Default for MainArgSignature
* stage NU_CACHE_DIR
* improve dockerfiles
* dev.nu for parser-wasm + flake.nix
* update code for windows
* add nushell to flake
* upload Cargo.lock
* make build.sh work on nixos
* build wasm cli parsers
* add docs to README_DEV.md
* add helper script docker/dev.nu
* improve docker/dev.nu
* fix windows
* commit frontend/package(lock).json
* update cargo.lock
* correctly update cargo.lock
* remove lsp
* update flake.nix to include svelte server and nushell
* Revert base.sql to main
* remove PLUGIN_USE_RE
* make CARGO_PATH private
* add nu to cli
* Change flags to build wasm-nu-parser
* remove flake.nix from parser-wasm
* update wasm-build target
* remove unused import
* add cli support for nu
* update github workflows
* wasm-build 0.17 -> 0.19
* update build script
* update cargo.lock
* Fix typographical error
* update Cargo.lock
* update ENV_SETTINGS
* use published nu parser
* update package.lock
* rewrite parser in tree-sitter
* implement parser from scratch
* polishing
* change init script to match new parser
* fix imports
* fix cli build
* fix cli build
* merge
* update wasm
* use MiniPulledJob
* update cli
* change cli wasm schema
* change cli
* update deno.json
* make wasm modules load lazily
* regenerate parsers
* remove leftover
* update cargo.lock
* clean up dnt.ts
* add docs to cli/test.nu
* add schema validation option
* add Nu to try_validate_schema
* reference frontend to new parser version