Closed Trenly closed 3 months ago
Thanks for reporting! I believe this is because keyring, the library komac uses for storing secrets, had an update recently that gives more choice over the platforms supported and whether to use async or not.
In keyring v2, it defaulted to using a different runtime than komac uses itself, so this wouldn't have been an issue. Now that I've chosen it to use the same runtime as it should be, it crashes trying to spawn a runtime inside the current runtime.
See:
The fix should just be dealing with tokens on a separate thread.
I've switched it to access tokens synchronously on Linux as that's how it is on Windows and macOS and tokens aren't accessed in an asynchronous manner anyway as its the first thing that's needed when komac starts.
Is there an existing issue for this?
What happened?
Environment
I use two linux VMs for my setup, both are running a flavor of Debian Linux but have different customizations and settings.
One VM is my "build" VM - it has more packages and SDKs installed, as well as having more memory and CPU allocated to it. I use this VM to create or build binaries for testing.
The second VM is my "runner" - It has a very minimal set of packages and no specially installed SDKs. I use this VM to test the binaries built on the other VM.
The Bug
On my build VM I have installed cargo along with the apt packaes such as
make
required to build Komac. I have cloned my fork of this repo onto the VM.cd ~/git/Komac
cargo build --release --locked
scp ~/git/Komac/target/release/komac root@123.123.123.123:/usr/local/bin/
komac --version
However, if I use the same steps as above, but instead of using
cargo build --release --locked
I docargo install komac --locked
to use the version from crates.io, no errors occur