From aea10824e444f49f955dd37643583b92beeae209 Mon Sep 17 00:00:00 2001 From: sawka Date: Mon, 27 Jan 2025 15:23:44 -0800 Subject: [PATCH 1/3] update ROADMAP --- ROADMAP.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ROADMAP.md b/ROADMAP.md index 3ae659e5c0..04cb33d7ac 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -29,13 +29,12 @@ Currently in beta, targeting release on 1/24. Likely to follow v0.11 by 1 week. - 🔧 Reduce main-line 2FA requests to 1 per connection -- 🔷 Frontend Only Widgets, React + Babel Transpiling in an iframe/webview -- 🔷 Monaco Theming - 🔧 Remote S3 bucket browsing (directory + files) - 🔷 Drag & drop between preview blocks -- 🔷 Drag into a preview directory from the native file browser or desktop to copy a file +- 🔷 Drag into/out of a preview block from native file explorer - 🔷 Wave Apps (Go SDK) -- 🤞 Explore VSCode Extension Compatibility with standalone Monaco Editor (language servers) +- 🔷 JSON schema support (basic) +- 🤞 Frontend Only Widgets, React + Babel Transpiling in an iframe/webview ## v0.12 @@ -50,3 +49,8 @@ Likely to follow v0.11 by 1 week. - 🔷 Re-assign system keybindings - 🔷 Command Palette - 🔷 AI Context +- 🔷 Monaco Theming +- 🔷 File system watching for Preview +- 🔷 File system watching for drag and drop +- 🤞 Explore VSCode Extension Compatibility with standalone Monaco Editor (language servers) +- 🤞 VSCode File Icons in Preview From eb93cb6884350148851c0bb1db4c7b478b990c71 Mon Sep 17 00:00:00 2001 From: sawka Date: Mon, 27 Jan 2025 15:51:17 -0800 Subject: [PATCH 2/3] more customwidgets docs --- docs/docs/customwidgets.mdx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/docs/docs/customwidgets.mdx b/docs/docs/customwidgets.mdx index 07ed068356..29f6ac053f 100644 --- a/docs/docs/customwidgets.mdx +++ b/docs/docs/customwidgets.mdx @@ -96,19 +96,27 @@ The `WidgetConfigType` takes the usual options common to all widgets. The `MetaT | "view" | A string that specifies the general type of widget. In the case of custom terminal widgets, this must be set to `"term"`. | | "controller" | A string that specifies the type of command being used. For more persistent shell sessions, set it to "shell". For one off commands, set it to `"cmd"`. When `"cmd"` is set, the widget has an additional refresh button in its header that allows the command to be re-run. | | "cmd" | (optional) When the `"controller"` is set to `"cmd"`, this option provides the actual command to be run. Note that because it is run as a command, there is no shell session unless you are launching a command that contains a shell session itself. Defaults to an empty string. | +| "cmd:args" | (optional, array of strings) arguments to pass to the `cmd` | +| "cmd:shell" | (optional) if cmd:shell if false (default), then we use `cmd` + `cmd:args` (suitable to pass to `execve`). if cmd:shell is true, then we just use `cmd`, and cmd can include spaces, and shell syntax (like pipes or redirections, etc.) | | "cmd:interactive" | (optional) When the `"controller"` is set to `"term", this boolean adds the interactive flag to the launched terminal. Defaults to false. | | "cmd:login" | (optional) When the `"controller"` is set to `"term"`, this boolean adds the login flag to the term command. Defaults to false. | -| "cmd:runonstart" | (optional) The command will rerun when the app is started. Without it, you must manually run the command. Defaults to true. | +| "cmd:runonstart" | (optional) The command will rerun when the block is created or the app is started. Without it, you must manually run the command. Defaults to true. | | "cmd:runonce" | (optional) Runs on start, but then sets "cmd:runonce" and "cmd:runonstart" to false (so future runs require manual restarts) | | "cmd:clearonstart" | (optional) When the cmd runs, the contents of the block are cleared out. Defaults to false. | | "cmd:closeonexit" | (optional) Automatically closes the block if the command successfully exits (exit code = 0) | | "cmd:closeonexitforce" | (optional) Automatically closes the block if when the command exits (success or failure) | | "cmd:closeonexitdelay | (optional) Change the delay between when the command exits and when the block gets closed, in milliseconds, default 2000 | -| "cmd:env" | (optional) A key-value object represting environment variables to be run with the command. Currently only works locally. Defaults to an empty object. | +| "cmd:env" | (optional) A key-value object represting environment variables to be run with the command. Defaults to an empty object. | | "cmd:cwd" | (optional) A string representing the current working directory to be run with the command. Currently only works locally. Defaults to the home directory. | | "cmd:nowsh" | (optional) A boolean that will turn off wsh integration for the command. Defaults to false. | | "term:localshellpath" | (optional) Sets the shell used for running your widget command. Only works locally. If left blank, wave will determine your system default instead. | | "term:localshellopts" | (optional) Sets the shell options meant to be used with `"term:localshellpath"`. This is useful if you are using a nonstandard shell and need to provide a specific option that we do not cover. Only works locally. Defaults to an empty string. | +| "cmd:initscript" | (optional) for "shell" controller only. an init script to run before starting the shell (can be an inline script or an absolute local file path) | +| cmd:initscript.sh" | (optional) same as `cmd:initscript` but applies to bash/zsh shells only | +| cmd:initscript.bash" | (optional) same as `cmd:initscript` but applies to bash shells only | +| cmd:initscript.zsh" | (optional) same as `cmd:initscript` but applies to zsh shells only | +| cmd:initscript.pwsh" | (optional) same as `cmd:initscript` but applies to pwsh/powershell shells only | +| cmd:initscript.fish" | (optional) same as `cmd:initscript` but applies to fish shells only | ### Example Local Shell Widgets From 669d183dba074974464d2bebd29f045979d01113 Mon Sep 17 00:00:00 2001 From: sawka Date: Mon, 27 Jan 2025 15:55:46 -0800 Subject: [PATCH 3/3] more items in v0.12 roadmap --- ROADMAP.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/ROADMAP.md b/ROADMAP.md index 04cb33d7ac..ec0a438085 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -8,7 +8,7 @@ Legend: ✅ Done | 🔧 In Progress | 🔷 Planned | 🤞 Stretch Goal ## v0.11.0 -Currently in beta, targeting release on 1/24. +Released on 1/25/25 - ✅ File/Directory Preview improvements - ✅ Reworked fileshare layer running over RPC @@ -26,7 +26,7 @@ Currently in beta, targeting release on 1/24. ## v0.11.1 -Likely to follow v0.11 by 1 week. +Targeting 1/31/25 - 🔧 Reduce main-line 2FA requests to 1 per connection - 🔧 Remote S3 bucket browsing (directory + files) @@ -38,9 +38,17 @@ Likely to follow v0.11 by 1 week. ## v0.12 +Targeting mid-February (more will get added before work on v0.12 kicks off) + - 🔷 Import/Export Tab Layouts and Widgets - 🔷 log viewer - 🔷 binary viewer +- 🔷 New layout actions (splitting, replacing blocks) +- 🔷 Rewrite of window/tab system +- 🔷 Minimized / Non-Visible blocks +- 🔷 Custom keybindings to quickly switch / invoke built-in and custom widgets +- 🔷 More Drag & Drop support of files/URLs to create blocks +- 🔷 Tab Templates ## Planned (Unscheduled)