Skip to content

pybind/mgr/dashboard: dashboard/requirements-lint.txt: re-pin rsscheck#66774

Merged
ronen-fr merged 2 commits intoceph:mainfrom
ronen-fr:wip-rf-rstcheck
Jan 9, 2026
Merged

pybind/mgr/dashboard: dashboard/requirements-lint.txt: re-pin rsscheck#66774
ronen-fr merged 2 commits intoceph:mainfrom
ronen-fr:wip-rf-rstcheck

Conversation

@ronen-fr
Copy link
Contributor

@ronen-fr ronen-fr commented Jan 1, 2026

Required for install-deps.sh to complete on Fedora 43, as the previously specified rstcheck Wheel version
(3.3.1) is not available:
Fedora 43 defaults to Python 3.14, but rstcheck 3.3.1 does not support Python 3.14 (see supported versions)
rstcheck 6.2.0 was the first version to add Python 3.14 support (release info)

A second commit fixes calls to rstcheck, to match API changes in newer rstcheck versions

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 1, 2026

@tchaikov - that's a line you had once added. Am I missing anything?

@idryomov
Copy link
Contributor

idryomov commented Jan 2, 2026

@tchaikov - that's a line you had once added. Am I missing anything?

I think Kefu just touched that line -- the requirement was added by @epuertat in 1e07237 and transformed into a pin also by @epuertat in d517601.

@ronen-fr ronen-fr marked this pull request as draft January 3, 2026 18:04
@ronen-fr ronen-fr changed the title scripts/build: pybind/mgr/dashboard/requirements-lint.txt: un-pin rsscheck pybind/mgr/dashboard: dashboard/requirements-lint.txt: un-pin rsscheck Jan 4, 2026
@ronen-fr ronen-fr changed the title pybind/mgr/dashboard: dashboard/requirements-lint.txt: un-pin rsscheck pybind/mgr/dashboard: dashboard/requirements-lint.txt: re-pin rsscheck Jan 4, 2026
@ronen-fr ronen-fr marked this pull request as ready for review January 4, 2026 12:07
@ronen-fr ronen-fr requested a review from idryomov January 4, 2026 12:07
@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 4, 2026

@idryomov , @tchaikov - does it look better now?

Update: had to add a commit to update the command line parameters for rstcheck >= 6

@ronen-fr ronen-fr added the needs-tentacle-backport PRs that need tentacle back-port label Jan 4, 2026
@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 4, 2026

jenkins test make check arm64

Copy link
Contributor

@tchaikov tchaikov left a comment

Choose a reason for hiding this comment

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

the commit message reads:

As the requested Wheel for 'rstcheck==3.3.1' is not available for Fedora 43 (which defaults to Python 3.14).

without more context, reviewer and our posterity would not be able to understand how Python 3.14 is connected to rstcheck 3.3.1

@tchaikov
Copy link
Contributor

tchaikov commented Jan 5, 2026

the "make check (arm64)" CI workflow failed:

217/320 Test  #35: run-cli-tests .............................***Failed   18.82 sec
Collecting cram@ git+https://github.com/ceph/cram.git@0.7-error-dir
  Cloning https://github.com/ceph/cram.git (to revision 0.7-error-dir) to /tmp/pip-install-2z7ej3f5/cram_56e1387ed7d640eeae0dec10fb60d6f3
  Running command git clone --filter=blob:none --quiet https://github.com/ceph/cram.git /tmp/pip-install-2z7ej3f5/cram_56e1387ed7d640eeae0dec10fb60d6f3
  Running command git checkout -b 0.7-error-dir --track origin/0.7-error-dir
  Switched to a new branch '0.7-error-dir'
  Branch '0.7-error-dir' set up to track remote branch '0.7-error-dir' from 'origin'.
  Resolved https://github.com/ceph/cram.git to commit aca162f6aeb40d0790998a3e59f13b9301f0f673
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Using legacy 'setup.py install' for cram, since package 'wheel' is not installed.
Installing collected packages: cram
  Running setup.py install for cram: started
  error: subprocess-exited-with-error
  
  × Running setup.py install for cram did not run successfully.
  │ exit code: 1
  ╰─> See above for output.
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  Running setup.py install for cram: finished with status 'error'
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> cram

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

this failure is not relevant to the change, and should be fixed by #66733

Copy link
Contributor

@tchaikov tchaikov left a comment

Choose a reason for hiding this comment

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

lgtm

@github-project-automation github-project-automation bot moved this from New to Reviewer approved in Ceph-Dashboard Jan 5, 2026
@tchaikov
Copy link
Contributor

tchaikov commented Jan 5, 2026

jenkins test make check arm64

As the requested Wheel for 'rstcheck==3.3.1' is not available
for Fedora 43:

Fedora 43 ships with Python 3.14 as the default interpreter.
rstcheck 3.3.1 doesn't support Python 3.14 (see supported
versions at https://pypi.org/project/rstcheck/3.3.1/)
rstcheck 6.2.0 was the first version to add Python 3.14 support
(release info: https://pypi.org/project/rstcheck/6.2.0/)

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
As we have upgraded to rstcheck >= 6.0.0, we must now use
the new command-line options.

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
Copy link
Member

@epuertat epuertat left a comment

Choose a reason for hiding this comment

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

LGTM! Thanks, @ronen-fr !

BTW, we should start adding SHA-256 hashes to our Python deps for SCM safety. That means adding the --require-hashes flag (or PIP_REQUIRE_HASHES env var) in the pip install step.

The first time, pip will complain and provide the expected hash:

> python -mvenv /tmp/venv
> /tmp/venv/bin/pip install --require-hashes -r src/pybind/mgr/dashboard/requirements-lint.txt 
Collecting pylint==2.6.0 (from -r src/pybind/mgr/dashboard/requirements-lint.txt (line 1))
  Downloading pylint-2.6.0-py3-none-any.whl (325 kB)

[notice] A new release of pip is available: 24.3.1 -> 25.3
[notice] To update, run: python -m pip install --upgrade pip
ERROR: Hashes are required in --require-hashes mode, but they are missing from some requirements. Here is a list of those requirements along with the hashes their downloaded archives actually had. Add lines like these to your requirements files to prevent tampering. (If you did not enable --require-hashes manually, note that it turns on automatically when any package has a hash.)
    pylint==2.6.0 --hash=sha256:bfe68f020f8a0fece830a22dd4d5dddb4ecc6137db04face4c3420a46a52239f

An alternative (better) approach would be to use a requirements-*.in file and generate the final hashed requirements file with pip-compile (from pip-tools).

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 6, 2026

jenkins test windows

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 8, 2026

jenkins test dashboard tests

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 8, 2026

jenkins test dashboard cephadm

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 8, 2026

jenkins test dashboard

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 8, 2026

@epuertat - "shaman" builds are OK. Is there a point in Teuthology tests, or should I merge this now?
thanks

@ronen-fr ronen-fr merged commit 053b94c into ceph:main Jan 9, 2026
13 of 15 checks passed
@github-project-automation github-project-automation bot moved this from Reviewer approved to Done in Ceph-Dashboard Jan 9, 2026
@afreen23
Copy link
Contributor

afreen23 commented Feb 10, 2026

It looks like this PR was merged before the Ceph dashboard tests finished. For dashboard-related PRs, we usually wait for those tests to pass.

Unfortunately, due to a CI limitation, we can’t mark them as required only for dashboard PRs.
(Since shaman was passing so probably no issue cc @nizamial09 )

cc @ronen-fr @tchaikov for visibility

Thanks!

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

Labels

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

5 participants