Skip to content

Implement team provider api#43855

Merged
juliusknorr merged 1 commit intomasterfrom
feat/team-provider
Mar 5, 2024
Merged

Implement team provider api#43855
juliusknorr merged 1 commit intomasterfrom
feat/team-provider

Conversation

@juliusknorr
Copy link
Copy Markdown
Member

@juliusknorr juliusknorr commented Feb 27, 2024

Resolves #43683

Teams are considered evolution of circles where we now want to aggregate all resources that are related (shared or owned) by a given team. Therefore we need a generic API so that apps that offer sharing to teams can expose the list of resources and teams for a given resource.

Example implementation can be found for deck and collectives already.

In the future we may extend this namespace to become a stable OCP/OCS API for other methods related to circles which for now is still bound to the classes in OCA\Circles.

ToDo

  • Verify team membership
  • API documentation (openapi, phpdoc, dev docs)
    • phpdoc: Define that resources should be returned in order of importance (e.g. folders before files)
    • phpdoc: Clarify order of icons
    • OpenAPI spec
    • Developer docs

Provider implementations

Comment thread core/Controller/TeamsApiController.php Fixed
Comment thread core/Controller/TeamsApiController.php Fixed
Comment thread core/Controller/TeamsApiController.php Fixed
Comment thread core/Controller/TeamsApiController.php Fixed
Comment thread lib/private/AppFramework/Bootstrap/RegistrationContext.php Fixed
Comment thread lib/private/Teams/TeamManager.php Fixed
Comment thread lib/private/Teams/TeamManager.php Fixed
Comment thread lib/private/Teams/TeamManager.php Fixed
Comment thread lib/private/Teams/TeamManager.php Fixed
Comment thread lib/private/Teams/TeamManager.php Fixed
Comment thread lib/private/Teams/TeamManager.php Fixed
Comment thread lib/private/Teams/TeamManager.php Fixed
Comment thread lib/public/Teams/Team.php Fixed
@juliusknorr juliusknorr force-pushed the feat/team-provider branch 4 times, most recently from d454c55 to f4c3882 Compare March 1, 2024 11:42
@juliusknorr juliusknorr changed the title wip: Implement team provider api Implement team provider api Mar 1, 2024
@juliusknorr juliusknorr marked this pull request as ready for review March 1, 2024 11:49
Comment thread lib/private/Teams/TeamManager.php Fixed
@juliusknorr juliusknorr requested review from a team, ArtificialOwl, nfebe and sorbaugh and removed request for a team March 1, 2024 11:49
@juliusknorr juliusknorr added enhancement 3. to review Waiting for reviews labels Mar 1, 2024
@juliusknorr juliusknorr added this to the Nextcloud 29 milestone Mar 1, 2024
@juliusknorr juliusknorr force-pushed the feat/team-provider branch 2 times, most recently from 75c86ef to 276cff1 Compare March 1, 2024 12:12
Copy link
Copy Markdown
Member

@blizzz blizzz left a comment

Choose a reason for hiding this comment

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

just some detail findings (that partly I would have expected to be found by CI). In general, everything is layed out fine 👍

Comment thread apps/files_sharing/lib/FilesTeamResourceProvider.php Outdated
Comment thread core/Controller/TeamsApiController.php Outdated
Comment thread lib/public/Teams/ITeamManager.php Outdated
Comment thread lib/public/Teams/ITeamManager.php Outdated
Comment thread lib/private/Teams/TeamManager.php Outdated
Comment thread lib/public/Teams/ITeamManager.php Outdated
Comment thread lib/private/Teams/TeamManager.php Outdated
Comment thread lib/private/Teams/TeamManager.php Outdated
Comment thread core/Controller/TeamsApiController.php Outdated
Comment thread core/Controller/TeamsApiController.php
Copy link
Copy Markdown
Member

@provokateurin provokateurin left a comment

Choose a reason for hiding this comment

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

OpenAPI LGTM

Comment thread core/ResponseDefinitions.php
@juliusknorr juliusknorr force-pushed the feat/team-provider branch 2 times, most recently from 9b181e5 to 82b08ab Compare March 4, 2024 12:26
Copy link
Copy Markdown
Member

@provokateurin provokateurin left a comment

Choose a reason for hiding this comment

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

OpenAPI is good

Comment thread core/Controller/TeamsApiController.php Fixed
Comment thread core/Controller/TeamsApiController.php Fixed
Comment thread core/Controller/TeamsApiController.php Fixed
@juliusknorr juliusknorr force-pushed the feat/team-provider branch 3 times, most recently from 7123a1c to 3ca15ba Compare March 4, 2024 22:05
Signed-off-by: Julius Härtl <jus@bitgrid.net>
@juliusknorr
Copy link
Copy Markdown
Member Author

Cypress failure is unrelated

@juliusknorr juliusknorr merged commit ad8cb2c into master Mar 5, 2024
@juliusknorr juliusknorr deleted the feat/team-provider branch March 5, 2024 10:57
@juliusknorr juliusknorr mentioned this pull request Mar 5, 2024
28 tasks
@blizzz blizzz mentioned this pull request Mar 7, 2024
@joshtrichards
Copy link
Copy Markdown
Member

joshtrichards commented May 23, 2024

Does this mean we need to add the Circles app to alwaysEnabled (as a shipped app) due to the tight coupling? (#45484 brought this up today).

@blizzz
Copy link
Copy Markdown
Member

blizzz commented May 23, 2024

Does this mean we need to add the Circles app to alwaysEnabled (as a shipped app) due to the tight coupling? (#45484 brought this up today).

One way to solve it, I'd rather say we need a NullProvider sort of things, provided it does not lead to odd effects/assumptions.

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

Labels

3. to review Waiting for reviews enhancement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

API for teams

5 participants