fioan89 / sourcesync

A powerful plugin for performing one-way file synchronization for Intellij Idea and Pycharm projects
Other
89 stars 36 forks source link

Source synchronizer 2.0.1 sometimes forgets the connections #91

Closed bastbnl closed 1 year ago

bastbnl commented 1 year ago

I can't really tell when this happens exactly, but I think it has something to do with the way I use my development machine. I tend to keep it running for days, until a reboot is necessary due to windows updates. These are handled automatically without properly closing pycharm, but I'm not sure.

Just to let you know. Adding the connection is not too hard, but it would be nice if you'd do all the work and find a resolution. I'll try to learn when the connection is forgotten and if it depends on the branch I'm using.

bastbnl commented 1 year ago

I'm using a single SFTP connection, which connects to an IP using a private key with passphrase

bastbnl commented 1 year ago

Still happens, although a lot less when I mark .connectionconfig.ser within my home dir to be read-only

fioan89 commented 1 year ago

Hi @bastbnl I've already started some work on moving away from the current mechanism to persist configurations towards IntelliJ's own state persistence framework. The goal is to actually let IntelliJ save the data as xml files in the project's .idea folder. Also, sensitive data like passwords and certificate key phrases will be securely stored in the Credential Store using IntelliJ framework. Today, plain passwords are serialized in the .ser files, which is not really secure.

The next release should have this feature implemented. Hopefully it will fix the issue. I estimate a couple of more weeks to work on it,

bastbnl commented 1 year ago

Sounds like a solid solution. Thanks for your continued work on the plugin

fioan89 commented 1 year ago

@bastbnl Version 3.0.0 was just published to the Jetbrains Marketplace. As promised, it includes a reworked implementation for persisting the sync configurations based on IntelliJ's State Persisting framework. Configurations are now kept per project, in the .idea/sourcesync.xml. This version includes a migration script, basically old style SCP&SSH configurations should be automatically migrated to the new persistence model. Hopefully you won't encounter any issue with the migration.

Also, another thing to be aware of, passwords and certificate passphrases will now be safely managed by IntelliJ's own Credentials Store so you won't see them in the XML files.