diff --git a/core/src/main/java/io/xpipe/core/store/ConnectionFileSystem.java b/core/src/main/java/io/xpipe/core/store/ConnectionFileSystem.java index 04888e5af..3fb3e81e7 100644 --- a/core/src/main/java/io/xpipe/core/store/ConnectionFileSystem.java +++ b/core/src/main/java/io/xpipe/core/store/ConnectionFileSystem.java @@ -37,15 +37,16 @@ public class ConnectionFileSystem implements FileSystem { public FileSystem open() throws Exception { shellControl.start(); - if (!shellControl.getTtyState().isPreservesOutput() || !shellControl.getTtyState().isSupportsInput()) { - throw new UnsupportedOperationException("Shell has a PTY allocated and does not support file system operations"); - } - var d = shellControl.getShellDialect().getDumbMode(); if (!d.supportsAnyPossibleInteraction()) { shellControl.close(); d.throwIfUnsupported(); } + + if (!shellControl.getTtyState().isPreservesOutput() || !shellControl.getTtyState().isSupportsInput()) { + throw new UnsupportedOperationException("Shell has a PTY allocated and does not support file system operations"); + } + return this; } diff --git a/dist/changelogs/11.0.md b/dist/changelogs/11.0.md index f177be8e7..9d35bde79 100644 --- a/dist/changelogs/11.0.md +++ b/dist/changelogs/11.0.md @@ -31,11 +31,14 @@ When multiple files are selected, a script is now called only once with all the ## Other - Rework state information display for proxmox VMs +- Fix git sync freezing when using key with passphrase on modern ssh clients +- Fix git sync restarting daemon after exit when using key with passphrase - 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 +- Automatically fill identity file for ssh config wildcard keys as well - 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 diff --git a/dist/changelogs/11.0_incremental.md b/dist/changelogs/11.0_incremental.md index 3dc3e1336..9d35bde79 100644 --- a/dist/changelogs/11.0_incremental.md +++ b/dist/changelogs/11.0_incremental.md @@ -1,3 +1,11 @@ +## TTYs and PTYs + +Up until now, if you added a connection that always allocated pty, XPipe would complain about a missing stderr. +In XPipe 11, there has been a ground up rework of the shell initialization code which will in theory allow for better handling of these cases. +They are not fully supported yet and have some issues, but should work better. + +The main concern here is to verify that the existing normal shell implementation still works as before and there were no bugs introduced by this rework. + ## Profiles You can now create multiple user profiles in the settings menu. @@ -23,11 +31,14 @@ When multiple files are selected, a script is now called only once with all the ## Other - Rework state information display for proxmox VMs +- Fix git sync freezing when using key with passphrase on modern ssh clients +- Fix git sync restarting daemon after exit when using key with passphrase - 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 +- Automatically fill identity file for ssh config wildcard keys as well - 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 diff --git a/version b/version index fadbd96c4..654958444 100644 --- a/version +++ b/version @@ -1 +1 @@ -11.0-2 +11.0-3