saros
saros copied to clipboard
Open Source IDE plugin for distributed collaborative software development
During the project/reference point negotiation, the Saros core potentially creates local resources on the receiving side. To avoid these resource creations causing unwanted resource activities, [FileReplacementInProgressObservable](https://github.com/saros-project/saros/blob/master/core/src/saros/observables/FileReplacementInProgressObservable.java) was added. It is...
Saros/I currently does not share which resources are locally marked as 'Excluded' by the IDE and are therefore ignored by the Saros session. This can lead to a situation where...
When creating a file with an unknown file extension (or by just choosing an extension from the drop-down list without also appending the correct file extension to the name), the...
The current server implementation works mainly based on workspaces. All resources belong to a workspace. The direct child directories of the workspace are seen as the shared project/reference point. The...
PR #966 introduced optional support to transfer the information whether a selection is actually a backwards selection (i.e. whether the end of the selection is located before the start of...
The new caret annotation handling in #968 offers the basic logic to display and update caret annotations without a selection (i.e. just the caret). As the implementation uses selection annotations...
Saros annotations might not be correctly removed from the local editor after the session ends if the file for the editor was at some point during the session open in...
Currently, Saros/E sends a lot of binary content updates through file creation activities for existing files. Saros/I is currently not set up to handle this as it throws an exception...
Currently, there is no way to communicate charset changes to other Saros instances. Saros/E currently does this in a roundabout way by sending file creation activities with the new content....
The Project Negotiation process needs a more comprehensive refactoring approach, just mentioning - [`// MAJOR TODO refactor this class !!!`](https://github.com/saros-project/saros/blob/be075c285681f516f4a9af83d21df92bb8da962c/de.fu_berlin.inf.dpp.core/src/de/fu_berlin/inf/dpp/negotiation/AbstractIncomingProjectNegotiation.java#L37) - ~[`// TODO optimize for partial shared projects`](https://github.com/saros-project/saros/blob/be075c285681f516f4a9af83d21df92bb8da962c/de.fu_berlin.inf.dpp.core/src/de/fu_berlin/inf/dpp/negotiation/AbstractIncomingProjectNegotiation.java#L329)~ (partial sharing...