jenkinsci / jenkinsci/dark-theme-plugin

Broken stripped bigtable background colors

Open
#631 2 comments 2 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
79
Forks
37
Avg merge
10m
Merged PRs (30d)
8

Description

### Jenkins and plugins versions report

Environment


```text
Jenkins: 2.516.1
OS: Linux - 5.15.0-200.131.27.el8uek.x86_64
Java: 21.0.7 - Eclipse Adoptium (OpenJDK 64-Bit Server VM)
---
ace-editor:1.0.1
active-directory:2.40
analysis-model-api:13.7.0
ansicolor:1.0.6
ant:513.vde9e7b_a_0da_0f
antisamy-markup-formatter:173.v680e3a_b_69ff3
apache-httpcomponents-client-4-api:4.5.14-269.vfa_2321039a_83
apache-httpcomponents-client-5-api:5.5-150.veb_76e719855b_
asm-api:9.8-135.vb_2239d08ee90
authentication-tokens:1.131.v7199556c3004
authorize-project:2.0.0
badge:2.5
bootstrap4-api:4.5.3-1
bootstrap5-api:5.3.7-1
bouncycastle-api:2.30.1.80-261.v00c0e2618ec3
branch-api:2.1233.vfb_6b_2b_3ed499
build-blocker-plugin:166.vc82fc20b_a_ed6
build-environment:1.7
build-failure-analyzer-internal:2.5.5
build-failure-analyzer-primary-cause:1.5.2
build-name-setter:2.5.0
build-timeout:1.38
buildmetadata-plugin:4.22.5
caffeine-api:3.2.2-178.v353b_8428ed56
checks-api:373.vfe7645102093
cloudbees-disk-usage-simple:241.v0ea_d9a_a_96ee8
cloudbees-folder:6.1036.vb_94fd035b_287
clover:4.14.2.628.ve412b_714e733
command-launcher:123.v37cfdc92ef67
commons-collections4-api:4.5.0-8.va_d5448ef9011
commons-compress-api:1.27.1-2
commons-lang3-api:3.18.0-98.v3a_674c06072d
commons-text-api:1.13.1-176.v74d88f22034b_
conditional-buildstep:1.5.0
config-file-provider:988.v0461fcc2b_9d1
configuration-as-code:1971.vf9280461ea_89
configuration-as-code-groovy:1.1
copyartifact:770.va_6c69e063442
cors-filter:21.v34a_0a_7179a_5a_
credentials:1417.vd854994a_f6b_e
credentials-binding:702.vfe613e537e88
customizable-header:220.v7d040122e432
cvs:483.v69a_98dfd973b_
dark-theme:574.va_19f05d54df5
data-tables-api:2.3.2-3
display-url-api:2.209.v582ed814ff2f
docker-commons:457.v0f62a_94f11a_3
docker-workflow:621.va_73f881d9232
drecolumns:2.19.2
durable-task:594.v093d5387225c
echarts-api:5.6.0-5
eddsa-api:0.3.0.1-19.vc432d923e5ee
email-ext:1916.vc954a_f86ff21
emoji-symbols-api:13.v723a_b_8e234d1
envinject:2.926.v69c9b_3896a_96
envinject-api:1.235.va_14c74f8f487
extended-bfa-plugin:1.3.5
extended-pipeline-basic-steps-plugin:1.6.0
extended-read-permission:61.vf24570ff3b_e9
extra-columns:1.27
favorite:2.237.v79163ca_8b_892
flatpickr-api:4.6.13-18.vcf5f6a_5b_8468
folder-properties:57.vde5161ec7a_b_a_
font-awesome-api:6.7.2-1
forensics-api:3.1.0
git:5.7.0
git-client:6.2.0
git-server:137.ve0060b_432302
github:1.44.0
github-api:1.321-488.v9b_c0da_9533f8
github-branch-source:1824.v046257273408
gitlab-plugin:1.9.8
gradle:2.15
groovy:497.v7b_061a_a_de65d
groovy-label-assignment:1.2.0
groovy-postbuild:272.v52a_03efb_8653
gson-api:2.13.1-139.v4569c2ef303f
handy-uri-templates-2-api:2.1.8-36.v85e4cb_234a_13
hashicorp-vault-plugin:371.v884a_4dd60fb_6
http_request:1.20
instance-identity:203.v15e81a_1b_7a_38
ionicons-api:88.va_4187cb_eddf1
jackson2-api:2.19.2-408.v18248a_324cfe
jacoco:3.3.7
jakarta-activation-api:2.1.3-2
jakarta-mail-api:2.1.3-2
javadoc:327.vdfe586651ee0
javax-activation-api:1.2.0-8
javax-mail-api:1.6.2-11
jaxb:2.3.9-133.vb_ec76a_73f706
jdk-tool:83.v417146707a_3d
jersey2-api:2.45-154.v4ded3dc34f81
jira:3.18
jira-steps:2.0.180.vccfe35b_5910d
jira-trigger:1.0.3
jjwt-api:0.11.5-120.v0268cf544b_89
job-dsl:1.93
job-summary:1.9.0
jobConfigHistory:1343.v4b_e819a_ecdc2
joda-time-api:2.14.0-127.v7d9da_295a_d51
jquery-detached:1.2.1
jquery3-api:3.7.1-3
jsch:0.2.16-95.v3eecb_55fa_b_78
json-api:20250517-153.vc8a_a_d87c0ce3
json-path-api:2.9.0-148.v22a_7ffe323ce
jsoup:1.21.1-52.v96e4041b_60fd
junit:1335.v6b_a_a_e18534e1
kubernetes:4358.vcfd9c5a_0a_f51
kubernetes-client-api:7.3.1-256.v788a_0b_787114
kubernetes-credentials:203.v85b_9836a_f44b_
ldap:780.vcb_33c9a_e4332
lockable-resources:1408.vb_7d1f371781d
log-parser:2.5.0
login-theme:284.v95044396a_484
logstash:2.5.0205.vd05825ed46bd-DRE0.0.3
mailer:509.vc54d23fc427e
mapdb-api:1.0.9-44.va_1e1310c9118
mask-passwords:199.va_0218b_a_59186
material-theme:0.5.2-rc100.6121925fe229
matrix-auth:3.2.6
matrix-project:849.v0cd64ed7e531
maven-plugin:3.26
mercurial:1309.v6802b_f0efb_b_9
metrics:4.2.32-476.v5042e1c1edd7
mina-sshd-api-common:2.15.0-161.vb_200831a_c15b_
mina-sshd-api-core:2.15.0-161.vb_200831a_c15b_
monitoring:2.5.0
multiple-choice-plugin:1.16.0
naginator:1.504.vfc3736332f16
next-executions:446.v57a_a_1b_40702f
node-iterator-api:1.5
nodejs:1.6.5
okhttp-api:4.11.0-189.v976fa_d3379d6
opentelemetry:3.1543.v8446b_92b_cd64
opentelemetry-api:1.49.0.59.vc32561e77cf3
optional-run-parameter-plugin:1.8.0
oss-symbols-api:318.ve82d80c8e1c4
p4:1.17.2
p4-script-plugin:1.6.3
pam-auth:1.12
parameterized-trigger:859.vb_e3907a_07a_16
pipeline-build-step:571.v08a_fffd4b_0ce
pipeline-graph-analysis:241.vc3d48fb_b_2582
pipeline-graph-view:612.v864406fe6a_94
pipeline-groovy-lib:752.vdddedf804e72
pipeline-input-step:532.v9e7466cb_4406
pipeline-milestone-step:138.v78ca_76831a_43
pipeline-model-api:2.2258.v4e96d2b_da_f9b_
pipeline-model-definition:2.2258.v4e96d2b_da_f9b_
pipeline-model-extensions:2.2258.v4e96d2b_da_f9b_
pipeline-rest-api:2.38
pipeline-stage-step:322.vecffa_99f371c
pipeline-stage-tags-metadata:2.2258.v4e96d2b_da_f9b_
pipeline-utility-steps:2.19.0
plain-credentials:199.v9f8e1f741799
plot:2.4.0
plugin-util-api:6.1.0
popper-api:1.16.0-7
powershell:2.3
prism-api:1.30.0-1
prometheus:819.v50953a_c560dd
promoted-builds:992.va_00888f21b_74
pubsub-light:1.19
rebuild:338.va_0a_b_50e29397
resource-manager-plugin:5.3.2
role-strategy:785.v8d262df0f607
run-condition:243.v3c3f94e46a_8b_
scm-api:704.v3ce5c542825a_
script-security:1373.vb_b_4a_a_c26fa_00
sectioned-view:1.30
simple-theme-plugin:211.v5424a_5510e47
slack:761.v2a_8770f0d169
snakeyaml-api:2.3-125.v4d77857a_b_402
solarized-theme:28.vfe25223f14fe
sse-gateway:1.28
ssh-credentials:359.v2191c4cf635f
ssh-slaves:3.1071.v0d059c7b_c555
sshd:3.330.vc866a_8389b_58
strict-crumb-issuer:2.1.1
structs:350.v3b_30f09f2363
support-core:1739.v0d10c0a_57cb_e
swarm:3.50
synopsys-coverity:3.0.5
theme-manager:313.v8657a_a_7692cb_
throttle-concurrents:2.16
timestamper:1.30
token-macro:444.v52de7e9c573d
trilead-api:2.209.v0e69b_c43c245
variant:70.va_d9f17f859e0
view-job-filters:401.va_809f6a_b_0c26
vsphere-cloud:2.27
warnings-ng:12.8.0
workflow-aggregator:608.v67378e9d3db_1
workflow-api:1380.ve03e7a_63d139
workflow-basic-steps:1079.vce64b_a_929c5a_
workflow-cps:4169.vb_7e492a_1c7b_e
workflow-durable-task-step:1442.vb_a_b_f5f3da_9f9
workflow-job:1540.v295eccc9778f
workflow-multibranch:806.vb_b_688f609ee9
workflow-scm-step:437.v05a_f66b_e5ef8
workflow-step-api:704.ve4f0967e98fa_
workflow-support:968.v8f17397e87b_8
```

### What Operating System are you using (both controller, and any agents involved in the problem)?

OS: Linux - 5.15.0-200.131.27.el8uek.x86_64

### Reproduction steps

Use a plugin that renders a table with `bigtable stripped-odd` classes. In my case I am using the [section-view-plugin](https://plugins.jenkins.io/sectioned-view/) (see [ListViewSection/main.jelly](https://github.com/jenkinsci/sectioned-view-plugin/blob/fb4f71a32e21ae0e540a46b9b1d95f30fcd0bb8c/src/main/resources/hudson/plugins/sectioned_view/ListViewSection/main.jelly#L37C48-L51)).

With dark theme enabled note that the even table rows are using the default Jenkins background color.

### Expected Results

The alternating table row background colors are appropriate for the dark theme plugin. The example below was using [v524.vd675b_22b_30cb_](https://github.com/jenkinsci/dark-theme-plugin/releases/tag/524.vd675b_22b_30cb_
).

Image

### Actual Results

The alternating table row background colors are not appropriate for the dark theme plugin.

Image

### Anything else?

This bug seems to be a result of https://github.com/jenkinsci/dark-theme-plugin/pull/591 which deleted "deprecated" scss variables such as `--even-row-color` and `-table-striped-bg--hover`.

Since `bigtable` and `stripped-odd` style classes are still defined in [_panes-and-bigtable.scss](https://github.com/jenkinsci/jenkins/blob/master/src/main/scss/components/_panes-and-bigtable.scss) is there another way that plugins should be using tables? Just use `jenkins-table` instead?

### Are you interested in contributing a fix?

_No response_

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue with section-view-plugin using ListViewSection/main.jelly and a table with `bigtable stripped-odd` classes. Inspect Jenkins' `src/main/scss/components/_panes-and-bigtable.scss` alongside dark-theme-plugin PR 591 to understand the removed variables and current table styling. Done means alternating rows use appropriate dark-theme colors.

Written by the indexing model from the issue text.

Assessment

Tech stack
scss
Domain
design, frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.