Skip to content

Conversation

@pierrejeambrun
Copy link
Member

@pierrejeambrun pierrejeambrun commented Jan 12, 2026

Getting rid of the hard copied theme.

Related: #60405

Screenshot 2026-01-12 at 17 41 41
  • Yes (please specify the tool below)

  • Read the Pull Request Guidelines for more information. Note: commit author/co-author name and email in commits become permanently public when merged.
  • For fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
  • When adding dependency, check compliance with the ASF 3rd Party License Policy.
  • For significant user-facing changes create newsfragment: {pr_number}.significant.rst or {issue_number}.significant.rst, in airflow-core/newsfragments.

@boring-cyborg boring-cyborg bot added area:providers provider:edge Edge Executor / Worker (AIP-69) / edge3 labels Jan 12, 2026
@jscheffl
Copy link
Contributor

Ah, did not see this PR before asking the question in the other PR... is this backwards-compatible to all Airflow 3.x versions or only 3.1.7++?

@jscheffl
Copy link
Contributor

jscheffl commented Jan 12, 2026

Mhm, okay tested with Airflow 2.1.5 and with this applied all colors are "gone" :-( All table content is just B/W.

Therefore would not apply this immediately...except...

Is there a way of fallback until we drop "old" Airflow releases 3.1.1 - 3.1.6?
image

@jscheffl
Copy link
Contributor

Same on main:
image

image

@pierrejeambrun
Copy link
Member Author

pierrejeambrun commented Jan 13, 2026

Yeah... unfortunately that's 'breaking' (i mean the UI is usable on old core, but looks super ugly, I don't know if 'UI' glitches should be considered breaking semver, we don't for airflow core btw).

Currently how it was implemented there was a bug, if the provider define its own theme it overrides the Airflow Core UI. Until now we didn't see it because provider used an exact match of core as a theme, but if someone customize the Core theme with AIRFLOW__API__THEME then loading the edge3 provider plugin will break the customization by loading again the default core theme. This fixes it.

Since this part is still experimental, I would be for cutting a new provider version with airflow core >3.1.7.

If that is not possible, we can keep the vendored in theme as a fallback, but that's additional burden and it holds the glitch mentioned above.

@jscheffl
Copy link
Contributor

Sorry for getting back to you late. Was distracted in a couple of other things... still on my response list :-D

I think the most-ugly thing is the coloring of status badges - would it be possible just to make these colored as a fallback and keep the private theme with this? I think it is beneficial if we do not have theming in the providers redundantly.

As I see you had a fallback implemented in https://github.com/apache/airflow/pull/60417/changes#diff-0911b95b0582829832b6bfba602604d167d26d7b7cec6d91d7ebc30b49635cb5R43 - can we just keep a minimal theme.js with just the colored buttons as fallback? Then I'd be OK.

@jscheffl
Copy link
Contributor

And I'd be OK to drop the fallback in a few months but if we release a new edge version in ~2 weeks and need to pin it >3.1.7 then it will be un-usable until we also released 3.1.7...

@pierrejeambrun pierrejeambrun force-pushed the edge3-react-plugin-inherit-main-theme branch from 7ed04ef to cda7222 Compare January 20, 2026 11:03
@pierrejeambrun
Copy link
Member Author

Updated. As discussed, keeping the vendored in core theme as fallback for now. I'll prepare the follow up PR for deletion that we can merge once 3.2 is out.

Copy link
Contributor

@jscheffl jscheffl left a comment

Choose a reason for hiding this comment

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

Thanks for the rework! Seems to work well!

While testing I just found some nit problem on main... any idea where this might be coming from?

With Airflow 3.1.6 the tags in the Plugin are working, like below

tabs-3.1.6-2026-01-22_22.54.49.mp4

Using the same on main branch, tabs are "broken"

tabs-main-2026-01-22_22.56.57.mp4

Reason seems that initially you are on http://localhost:28080/plugin/edge_executor/worker and clicking on jobs adds /jobs and does not replace suffix, so makes http://localhost:28080/plugin/edge_executor/worker/jobs - clicking further makes http://localhost:28080/plugin/edge_executor/worker/jobs/worker/jobs

Was there a breaking change in the integration that might have a side-effect on the tab rendered in the plugin?

@pierrejeambrun pierrejeambrun force-pushed the edge3-react-plugin-inherit-main-theme branch from cda7222 to c198fbd Compare January 26, 2026 15:38
@pierrejeambrun pierrejeambrun merged commit ec59d62 into apache:main Jan 26, 2026
71 checks passed
@pierrejeambrun pierrejeambrun deleted the edge3-react-plugin-inherit-main-theme branch January 26, 2026 16:59
shreyas-dev pushed a commit to shreyas-dev/airflow that referenced this pull request Jan 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:providers provider:edge Edge Executor / Worker (AIP-69) / edge3

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants