This is this biggest update yet and includes many changes that are necessary going forward to allow for many future features to come. These new implementations take everything into account learned so far and are more intuitive and robust. Especially when considering the long-term timeline, these changes will come in handy.

The versioning scheme has also been changed to simplify version numbers. So we are going straight from 1.7 to 8.0!

Note that on Windows the automatic updater still has a few issues with race conditions if you are upgrading from 1.7.16. If the automatic update fails, you can still install 8.0 manually by downloading and installing it from https://github.com/xpipe-io/xpipe/releases.

## New terminal launcher

The terminal launcher functionality got completely reworked with the goal to make it more flexible and improve the terminal startup performance. You will quickly notice the new implementation whenever you launch any connection in your terminal.

## Proxmox integration (Professional feature)

There is now support to directly query all VMs and containers located on a Proxmox system via the `pct` and `qm` tools. The containers can be accessed directly as any other containers while the VMs can be accessed via SSH. In case no SSH server is running in a vm, you can also choose to start one with XPipe.

This feature will be available in the professional version, but is also available in the free professional edition preview after release.

## Improved professional edition preview

Any new professional features, such as the Proxmox support, will be available for free for a couple of weeks after their initial release. There is now a new dialog available to allow you to quickly set up the XPipe professional preview plan.

This allows anyone interested in playing around with new features to do so without limitation and no commitment.

## Git For Windows shell environments

The git installation on Windows comes with its own posix environment, which some people use to make use of standard Linux functionalities on Windows if they have not moved to WSL yet. This update brings full support to add this shell environment as well via the automatic detection functionality.

## File browser improvements

The file browser has been reworked in terms of performance and reliability. File transfers of many files or now faster and any errors that can occur are now handled better.

In terms of the interface, there is also now a progress indicator for files being transferred. For any file conflicts, there is now a new dialog to choose how to resolve any conflict when copying or moving files.

There are also a couple more changes included:
- Fix files in file browser not reloading content when trying to edit them multiple times in the session
- Add Open with ... action to open files with an arbitrary program
- The transfer pane now also allows file drops from outside the window to make it more intuitive

## Kubernetes configs and namespaces

This update adds support to also add connections from other kubeconfig files.

Furthermore, you can also choose to use any namespace you want. This is useful in cases where you have not set up a context for every namespace you have.

The Kubernetes support is also now available in the pro preview after release.

## Settings rework

This update comes with a complete rework of the settings menu. Many options have been added and existing ones have been improved, with a focus on providing more control over security settings. Make sure to give them a read to discover new options.

There has been a big focus on providing finer-grained control over security settings, which can be especially useful in enterprise contexts.

## Per-Vault settings

Previously all settings were stored on a per-system basis. This caused some problems with git vaults, as all relevant settings that should persist across systems were not synced. From now on, all options that should be the same on all synced systems are automatically included in the git vault.

## Authentication improvements

This update comes with a newly created system for handling authentication that is better suited for arbitrary authentication prompts. This allows for better support for things like 2FA and other keyboard interactive authentications schemes. The sudo elevation authentication also has been reworked to be more intuitive and mirror the behavior of the system in regard to password prompts.

You also now have finer control over the caching behaviour of passwords and the sudo behaviour via additional settings.

## Temporary containers

You can now run a temporary docker container using a specified image that will get automatically removed once it is stopped. The container will keep running even if the image does not have any command specified that will run.

This can be useful if you quickly want to set up a certain environment by using a certain container image, e.g. a simple `ubuntu` image. You can then enter the container as normal in XPipe, perform your operations, and stop the container once it's no longer needed. It is then removed automatically.

## Fish and dumb shells

Up until now, connecting to fish shells or various dumb shells you typically find in devices like routers and links, did not work as there was no proper support for them. The shell handling implementation has now been rewritten to support fish login shells (after some timeout).

The implementation also now supports dumb shells that can be reached via ssh for example, but support still has to be implemented manually. Since I currently don't own any typical hardware like various routers and links, e.g. from cisco, I did not have the ability yet to do this. So if you own any hardware you would like to see supported, open an issue and share the typical output that is printed upon connection, and it can easily be supported.

For now, it should work with MikroTik routers at least.

## macOS tray and dock handling

Due to some confusion, XPipe will no longer use the system tray in macOS as an option when minimizing. It will instead conform to the usual macOS app handling that allows to reopen the window by clicking on the dock icon.

## PowerShell fallback

Some Windows admins disable cmd on their systems for security reasons. Previously this would have caused XPipe to not function on these systems as it relied on cmd. From now on, it can also dynamically fall back to PowerShell if needed without utilizing cmd at all.

## Bundled OpenSSH on Windows

One common problem in the past has been to fact that Microsoft ships relatively outdated OpenSSH versions on Windows, which do not support newer features like FIDO2 keys. Due to the permissive license of OpenSSH and its Windows fork, XPipe can bundle the latest OpenSSH versions on Windows. There is now an option the settings menu to use the latest bundled OpenSSH version.

## Dependency upgrades

All dependencies have been upgraded to the latest version, coming with a few fixes and some new features. In particular, the JavaFX version has been bumped, which now allows for native system theme observation and the usage of accent colors. Around 10 dependency libraries have been removed as they are no longer necessary.

## Timeout handling

The timeout model has been reworked. It is now set to a fixed amount of 30s while any active password prompts do no longer count towards it, meaning you can take your time when typing your passwords. An increased timeout value also allows for better handling of third party authentication schemes that XPipe has no control over, e.g. ones that will open a website in your browser for authentication.

## Other changes

- Add option to skip connection validation
- Add ability to easily add files to the git vault data directory
- Introduce new changelog implementation that will be able to display the changelog relevant when upgrading from you current version, including all intermediate versions
- Auto expand connections display when a new child is added
- Fix elevation not working in some cases and throwing errors
- Improve git vault performance
- Fix macOS updater and installation script sometimes only uninstalling existing version without installing new one
- Fix scaling issues on Linux by providing a separate scaling option
- Fix possible encoding issues on Windows with passwords that contained non-ASCII characters
- Support opening ssh: URLs without username as well
- Fix Linux OS logo sometimes showing wrongly or not at all
