Skip to content

webui: remove plugin system layer#10355

Merged
nopcoder merged 3 commits intomasterfrom
claude/remove-community-ui-components-ZC7BM
Apr 15, 2026
Merged

webui: remove plugin system layer#10355
nopcoder merged 3 commits intomasterfrom
claude/remove-community-ui-components-ZC7BM

Conversation

@nopcoder
Copy link
Copy Markdown
Contributor

Drop the webui plugin system existed and embed the default behaviour.

  • Delete webui/src/extendable/ directory (plugin interfaces, manager, context, and all default implementations)
  • Inline RepositoryCreateForm, commits.commit(), refs.merge(), CompareBranches, and TablesEnterpriseInfo directly
  • Remove SSO login strategy
  • Remove custom object renderers plugin check (was always null)

Closes https://github.com/treeverse/lakeFS-Enterprise/issues/1953

The extendable/ plugin system existed to allow Enterprise builds to
override Community defaults. In the Community build this indirection
serves no purpose — every plugin just delegates to a concrete
implementation. Remove the entire plugin layer (17 files) and inline
default behavior directly into consumer components.

- Delete webui/src/extendable/ directory (plugin interfaces, manager,
  context, and all default implementations)
- Inline RepositoryCreateForm, commits.commit(), refs.merge(),
  CompareBranches, and TablesEnterpriseInfo directly
- Remove SSO login strategy (not supported in Community)
- Remove custom object renderers plugin check (was always null)

https://claude.ai/code/session_01WvCiwezBCR1HkkeY1gSQff
@nopcoder nopcoder self-assigned this Apr 15, 2026
@github-actions github-actions Bot added the area/UI Improvements or additions to UI label Apr 15, 2026
@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Apr 15, 2026

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 2 committers have signed the CLA.

✅ nopcoder
❌ claude
You have signed the CLA already but the status is still pending? Let us recheck it.

@nopcoder nopcoder added the exclude-changelog PR description should not be included in next release changelog label Apr 15, 2026
Copy link
Copy Markdown
Contributor

@itaigilo itaigilo left a comment

Choose a reason for hiding this comment

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

LGTM,
with some small comments.

Main thing is -
Do we still want to keep the Tables tab, or should we remove it?

@@ -1552,7 +1546,7 @@ const ObjectsBrowser = ({ storageConfig, capabilitiesConfig }) => {
}}
>
{dataView === DATA_VIEW_TABLES ? (
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Do we want to keep the Tables tab?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

yes

const TablesActions = pluginManager.tablesBrowser.getTablesActionsComponent();
return TablesActions ? <TablesActions /> : null;
})()}
{/* Tables view has no additional actions in Community edition */}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think this comment can be removed.

Comment thread webui/src/lib/hooks/configProvider.tsx Outdated
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

CapabilitiesConfig is still exported but is no longer imported anywhere after the deletion.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Good point. Removing.

const TablesView = ({ pluginManager }) => {
const TablesComponent = pluginManager.tablesBrowser.getTablesBrowserComponent();
return <TablesComponent />;
const TablesView = () => {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No need for this function now, can just use TablesEnterpriseInfo.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Inlined

@nopcoder nopcoder enabled auto-merge (squash) April 15, 2026 11:21
@nopcoder nopcoder merged commit e8355b7 into master Apr 15, 2026
60 of 61 checks passed
@nopcoder nopcoder deleted the claude/remove-community-ui-components-ZC7BM branch April 15, 2026 11:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/UI Improvements or additions to UI exclude-changelog PR description should not be included in next release changelog mostly-ai

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants