Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

feat(editor): Show avatars for users currently working on the same workflow #7763

Merged
merged 19 commits into from
Nov 23, 2023

Conversation

MiloradFilipovic
Copy link
Contributor

@MiloradFilipovic MiloradFilipovic commented Nov 21, 2023

This PR introduces the following changes:

  • New Vue stores: collaborationStore and pushConnectionStore

  • Front-end push connection handling overhaul: Keep only a singe connection open and handle it from the new store

  • Add user avatars in the editor header when there are multiple users working on the same workflow

  • Sending a heartbeat event to back-end service periodically to confirm user is still active

  • Back-end overhauls (authored by @tomi):

    • Implementing a cleanup procedure that removes inactive users
    • Refactoring collaboration service current implementation

@MiloradFilipovic MiloradFilipovic self-assigned this Nov 21, 2023
@MiloradFilipovic MiloradFilipovic changed the title feat(editor): Add avatars for users currently working on the same workflow feat(editor): Show avatars for users currently working on the same workflow Nov 21, 2023
@MiloradFilipovic MiloradFilipovic marked this pull request as draft November 21, 2023 11:15
@n8n-assistant n8n-assistant bot added core Enhancement outside /nodes-base and /editor-ui n8n team Authored by the n8n team ui Enhancement in /editor-ui or /design-system labels Nov 21, 2023
@MiloradFilipovic MiloradFilipovic marked this pull request as ready for review November 22, 2023 13:33
MiloradFilipovic and others added 4 commits November 22, 2023 14:55
* master:
  🚀 Release 1.18.0 (#7780)
  fix(core): Pass correct node reference to NodeExecuteFunctions.getLoadOptionsFunctions (no-changelog) (#7779)
  docs: Add workflow template contribution to the contributing guide (#7777)
  fix(editor): Validate user info before submiting (#7608)
  feat(core): Make postgres pool-size configurable (no-changelog) (#7772)
  refactor(core): Include execution progress in save settings (no-changelog) (#7769)
  refactor: Upgrade to TypeScript 5.3 (no-changelog) (#7768)
  fix(editor): Only show push to git menu item to owners (#7766)
  fix(editor): Use project diagram icon for worker view (#7764)
  fix(Item Lists Node): Don't check same type in remove duplicates operation (#7678)
  fix(editor): Move workerview entry into settings menu (#7761)
  fix(core): Ensure failed executions are saved in queue mode (#7744)
  docs: Update docs links for data transformation functions and ifEmpty (#7758)
  feat(editor): Add node context menu (#7620)
tomi
tomi previously approved these changes Nov 22, 2023
Copy link
Collaborator

@tomi tomi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couple very small comments still, but otherwise really nice 👌

Copy link

cypress bot commented Nov 22, 2023

1 flaky test on run #2994 ↗︎

0 282 5 0 Flakiness 1

Details:

🌳 🖥️ browsers:node18.12.0-chrome107 🤖 MiloradFilipovic 🗃️ e2e/*
Project: n8n Commit: 393a05bc55
Status: Passed Duration: 05:49 💡
Started: Nov 23, 2023 3:20 AM Ended: Nov 23, 2023 3:26 AM
Flakiness  cypress/e2e/17-workflow-tags.cy.ts • 1 flaky test

View Output Video

Test Artifacts
Workflow tags > should update a tag via modal Screenshots Video

Review all test suite changes for PR #7763 ↗︎

Copy link
Contributor

✅ All Cypress E2E specs passed

tomi
tomi previously approved these changes Nov 22, 2023
Copy link
Contributor

⚠️ Some Cypress E2E specs are failing, please fix them before merging

Copy link
Contributor

✅ All Cypress E2E specs passed

Copy link
Contributor

@RicardoE105 RicardoE105 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested it and worked fine! Code LGTM.

Copy link
Contributor

✅ All Cypress E2E specs passed

@MiloradFilipovic MiloradFilipovic merged commit 77bc8ec into master Nov 23, 2023
@MiloradFilipovic MiloradFilipovic deleted the ADO-1241-collaboration-avatars branch November 23, 2023 09:14
@github-actions github-actions bot mentioned this pull request Nov 29, 2023
ivov added a commit that referenced this pull request Nov 29, 2023
#
[1.19.0](https://github.com/n8n-io/n8n/compare/n8n@1.18.0...n8n@1.19.0)
(2023-11-29)


### Bug Fixes

* **core:** Ensure member and admin cannot be promoted to owner
([#7830](#7830))
([9b87a59](9b87a59)),
closes
[/linear.app/n8n/issue/PAY-985/add-user-role-modification-endpoint#comment-62355f6](https://github.com//linear.app/n8n/issue/PAY-985/add-user-role-modification-endpoint/issues/comment-62355f6)
* **core:** Prevent error messages due to statistics about data loading
([#7824](#7824))
([847f6ac](847f6ac))
* **core:** Tighten checks for multi-main setup usage
([#7788](#7788))
([fdb2c18](fdb2c18))
* **core:** Use AbortController to notify nodes to abort execution
([#6141](#6141))
([d2c18c5](d2c18c5))
* **editor:** Add telemetry to workflow history
([#7811](#7811))
([d497041](d497041))
* **editor:** Allow owners and admins to share workflows and credentials
they don't own ([#7833](#7833))
([3ab3ec9](3ab3ec9))
* **editor:** Disable context menu actions in read-only mode
([#7789](#7789))
([902beff](902beff))
* **editor:** Fix cloud plan data loading on instance
([#7841](#7841))
([8b99384](8b99384))
* **editor:** Fix credential icon for old node type version
([#7843](#7843))
([4074107](4074107))
* **editor:** Fix icon for unknown node type
([#7842](#7842))
([28ac5a7](28ac5a7))
* **editor:** Fix mouse position in workflow previews
([#7853](#7853))
([c063398](c063398))
* **editor:** Show nice error when environment is not set up
([#7778](#7778))
([5835e05](5835e05))
* **editor:** Suppress dev server websocket messages in workflow view
([#7808](#7808))
([685ffd7](685ffd7))
* **Google Sheets Node:** Read operation execute for each item
([#7800](#7800))
([d548872](d548872))
* **HTTP Request Node:** Enable expressions for binary input data fields
([#7782](#7782))
([6208af0](6208af0))
* **Microsoft SQL Node:** Prevent double escaping table name
([#7801](#7801))
([73ec753](73ec753))


### Features

* Add AI tool building capabilities
([#7336](#7336))
([87def60](87def60))
* Add initial scope checks via decorators
([#7737](#7737))
([a37f1cb](a37f1cb))
* Ado 1296 spike credential setup in templates
([#7786](#7786))
([aae45b0](aae45b0))
* **core:** Add Support for custom CORS origins for webhooks
([#7455](#7455))
([99a9ea4](99a9ea4))
* **core:** Allow user role modification
([#7797](#7797))
([7a86d36](7a86d36))
* **core:** Set up endpoint for all existing roles with license flag
([#7834](#7834))
([2356fb0](2356fb0))
* **editor:** Add node name and version to NDV node settings
([#7731](#7731))
([da85198](da85198))
* **editor:** Add routing middleware, permission checks, RBAC store,
RBAC component ([#7702](#7702))
([67a8891](67a8891))
* **editor:** Replace middleware for Role checks with Scope checks
([#7847](#7847))
([72852a6](72852a6))
* **editor:** Show avatars for users currently working on the same
workflow ([#7763](#7763))
([77bc8ec](77bc8ec))
* **Notion Node:** Option to simplify output in getChildBlocks operation
([#7791](#7791))
([d667bca](d667bca))
* **Slack Node:** Add support for getting the profile of a user
([#7829](#7829))
([90bb6ba](90bb6ba))

Co-authored-by: ivov <ivov@users.noreply.github.com>
@janober
Copy link
Member

janober commented Dec 1, 2023

Got released with n8n@1.19.4

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
core Enhancement outside /nodes-base and /editor-ui n8n team Authored by the n8n team Released ui Enhancement in /editor-ui or /design-system
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants