This commit is contained in:
crschnick 2024-08-06 14:35:20 +00:00
parent f8d13841ac
commit 3d8601367c
4 changed files with 35 additions and 68 deletions

View file

@ -1,67 +0,0 @@
## A new HTTP API
There is now a new HTTP API for the XPipe daemon, which allows you to programmatically manage remote systems. You can find details and an OpenAPI specification at the new API button in the sidebar. The API page contains everything you need to get started, including code samples for various different programming languages.
To start off, you can query connections based on various filters. With the matched connections, you can start remote shell sessions for each one and run arbitrary commands in them. You get the command exit code and output as a response, allowing you to adapt your control flow based on command outputs. Any kind of passwords and other secrets are automatically provided by XPipe when establishing a shell connection. You can also access the file systems via these shell connections to read and write remote files.
There already exists a community made [XPipe API library for python](https://github.com/coandco/python_xpipe_client) and a [python CLI client](https://github.com/coandco/xpipe_cli). These tools allow you to interact with the API more ergonomically and can also serve as an inspiration of what you can do with the new API. If you also built a tool to interact with the XPipe API, you can let me know and I can compile a list of community development projects.
## Service integration
Many systems run a variety of different services such as web services and others. There is now support to detect, forward, and open the services. For example, if you are running a web service on a remote container, you can automatically forward the service port via SSH tunnels, allowing you to access these services from your local machine, e.g. in a web browser. These service tunnels can be toggled at any time. The port forwarding supports specifying a custom local target port and also works for connections with multiple intermediate systems through chained tunnels. For containers, services are automatically detected via their exposed mapped ports. For other systems, you can manually add services via their port.
You can use an unlimited amount of local services and one active tunneled service in the community edition.
## Script rework
The scripting system has been reworked. There have been several issues with it being clunky and not fun to use. The new system allows you to assign each script one of multiple execution types. Based on these execution types, you can make scripts active or inactive with a toggle. If they are active, the scripts will apply in the selected use cases. There currently are these types:
- Init scripts: When enabled, they will automatically run on init in all compatible shells. This is useful for setting things like aliases consistently
- Shell scripts: When enabled, they will be copied over to the target system and put into the PATH. You can then call them in a normal shell session by their name, e.g. `myscript.sh`, also with arguments.
- File scripts: When enabled, you can call them in the file browser with the selected files as arguments. Useful to perform common actions with files
If you have existing scripts, they will have to be manually adjusted by setting their execution types.
## Docker improvements
The docker integration has been updated to support docker contexts. You can use the default context in the community edition, essentially being the same as before as XPipe previously only used the default context. Support for using multiple contexts is included in the professional edition.
There's now support for Windows docker containers running on HyperV.
Note that old docker container connections will be removed as they are incompatible with the new version.
## Proxmox improvements
You can now automatically open the Proxmox dashboard website through the new service integration. This will also work with the service tunneling feature for remote servers.
You can now open VNC sessions to Proxmox VMs.
The Proxmox professional license requirement has been reworked to support one non-enterprise PVE node in the community edition.
## Better connection organization
The toggle to show only running connections will now no longer actually remove the connections internally and instead just not display them. This will reduce git vault updates and is faster in general.
You can now order connections relative to other sibling connections. This ordering will also persist when changing the global order in the top left.
The UI has also been streamlined to make common actions and toggles more easily accessible.
## Other
- The title bar on Windows will now follow the appearance theme
- Several more actions have been added for podman containers
- Support VMs for tunneling
- Searching for connections has been improved to show children as well
- There is now an AppImage portable release
- The welcome screen will now also contain the option to straight up jump to the synchronization settings
- You can now launch xpipe in another data directory with `xpipe open -d "<dir>"`
- Add option to use double clicks to open connections instead of single clicks
- Add support for foot terminal
- Fix rare null pointers and freezes in file browser
- Fix PowerShell remote session file editing not transferring file correctly
- Fix elementary terminal not launching correctly
- Fix windows jumping around when created
- Fix kubernetes not elevating correctly for non-default contexts
- Fix ohmyzsh update notification freezing shell
- Fix file browser icons being broken for links
- The Linux installers now contain application icons from multiple sizes which should increase the icon display quality
- The Linux builds now list socat as a dependency such that the kitty terminal integration will work without issues

34
dist/changelogs/11.0_incremental.md vendored Normal file
View file

@ -0,0 +1,34 @@
## Profiles
You can now create multiple user profiles in the settings menu.
This will create desktop shortcuts that you can use to start XPipe with different profiles active.
## Serial connection support
There is now support to add serial connections.
## Scripting improvements
The scripting system has been reworked in order to make it more intuitive and powerful.
The script execution types have been renamed, the documentation has been improved, and a new execution type has been added.
The new runnable execution type will allow you to call a script from the connection hub directly in a dropdown for each connection when the script is active.
This will also replace the current terminal command functionality, which has been removed.
Any file browser scripts are now grouped by the scripts groups they are in, improving the overview when having many file browser scripts.
Furthermore, you can now launch these scripts in the file browser either in the background if they are quiet or in a terminal if they are intended to be interactive.
When multiple files are selected, a script is now called only once with all the selected files as arguments.
## Other
- Rework state information display for proxmox VMs
- Fix terminal exit not working properly in fish
- Fix renaming a connection clearing all state information
- Fix script enabled status being wrong after editing an enabled script
- Fix download move operation failing when moving a directory that already existed in the downloads folder
- Fix some scrollbars are necessarily showing
- Improve error messages when system interaction was disabled for a system
- Don't show git all compatibility warnings on minor version updates
- Enable ZGC on Linux and macOS
- Some small appearance fixes

View file

@ -1 +1 @@
10.3-6
11.0-1