Skip to content
This repository was archived by the owner on Sep 9, 2024. It is now read-only.
This repository was archived by the owner on Sep 9, 2024. It is now read-only.

Concurrency Control !? #1074

Open
Open

Description

@AnimeshRy

As this was the persisting issue with Decap CMS. I'm assuming this has not been fixed yet as well. The problem being that currently when two or people edit the same document, it will overwrite information and disregard the first "person's" changes.

I'm planning to build a tool for my company that somehow prohibits the user when multiple people are editing the document. The key requirements I have are -

  1. Somehow track the changes in the current file and show them to other users.
  2. If one of the change are merged, we somehow rebase all of the changes.

I'm thinking of using Web RTC of the authenticated Oauth User, since static / decap does not have a server, I'm finding it a little overwhelming to figure out a way to start with this.

I would like to contribute this feature to static if it makes sense with everyone else. If maintaners have a idea about how I can think about building this or improving this. Please guide me and help me out in understanding how should I start with understanding the codebase.

Activity

  1. blahetal commented on Jan 20, 2024

    @blahetal
    Contributor

    Hi, that would be something like Google docs or Miro where multiple users can edit a file and others see their changes immediately. imo easier would be to check if a file has been modified (someone made and published changed earlier than you) and reject your publish unless you merge your changes.

  2. AnimeshRy commented on Jan 22, 2024

    @AnimeshRy
    Author

    Hey @blahetal

    Yes that should be relatively easier. But to add support for live editing or people editing document "concurrently" I would need to somhow ping all connected users while fetching latest branch info every second or so.

    As you seem to have worked on the codebase already, can you point me where to start from.

  3. blahetal commented on Jan 22, 2024

    @blahetal
    Contributor

    Hey @blahetal

    Yes that should be relatively easier. But to add support for live editing or people editing document "concurrently" I would need to somhow ping all connected users while fetching latest branch info every second or so.

    As you seem to have worked on the codebase already, can you point me where to start from.

    not really, just minor tweaks here and there.
    better to ask devs here on discord

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions