Skip to content

Conversation

jiridanek
Copy link
Member

@jiridanek jiridanek commented Sep 28, 2025

Description

Manually fixing conflicts

How Has This Been Tested?

Self checklist (all need to be checked):

  • Ensure that you have run make test (gmake on macOS) before asking for review
  • Changes to everything except Dockerfile.konflux files should be done in odh/notebooks and automatically synced to rhds/notebooks. For Konflux-specific changes, modify Dockerfile.konflux files directly in rhds/notebooks as these require special attention in the downstream repository and flow to the upcoming RHOAI release.

Merge criteria:

  • The commits are squashed in a cohesive manner and have meaningful messages.
  • Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
  • The developer has manually tested the changes and verified that the changes work

jiridanek and others added 30 commits August 18, 2025 10:06
…target` trigger and add instructions for non-comment triggers (opendatahub-io#1492)
Upstream to Downstream auto-merge for notebooks is failing due to conflict, could you please take a look?
Merge branch 'main' into rhds-main
…0x-rhds

Add s390x label for building notebook images
…-main

Updated jupyter minimal Dockerfiles to build for ppc64le
…gocli-dockerfiles

RHAIENG-540: Bump mongocli to 2.0.4 across all Konflux Dockerfiles
jiridanek and others added 17 commits September 25, 2025 12:21
`AttributeError: 'MessageFactory' object has no attribute 'GetPrototype'` is not a problem in your own code—it is a **library-level incompatibility** that started to appear after the release of **protobuf ≥ 6.30** (especially 6.31).
Google removed/deprecated the method `MessageFactory.GetPrototype` and replaced it with `GetMessageClass`.
TensorFlow, PyTorch, Transformers, YOLO, ComfyUI, etc. still contain helper code that tries to call the old name, so the exception is raised **while they are being imported or while they build a graph**, not while your script is doing anything special.

## What you can (and should) do

1. **Down-grade protobuf to the last 5.x line** (5.29.4 or lower).
   That version still has `GetPrototype`, so the error disappears immediately.

   ```bash
   pip install -U "protobuf<6.0"   # 5.29.4 is the newest 5.x
   ```

   After the downgrade **restart the Python kernel / re-launch the process** so the already-imported modules disappear from `sys.modules`.

   > 99 % of the reports on GitHub, HF, Ultralytics, ComfyUI, etc. are solved by this single step .

2. **Keep every other package at their current version**; you do **not** need to downgrade TensorFlow, PyTorch, etc.
   Protobuf 5.29 is forward-compatible with every major framework that ships `.proto` files.

3. **If you must stay on protobuf 6.x** you would have to patch the offending code yourself (monkey-patch `google.protobuf.message_factory.MessageFactory.GetPrototype` so that it simply aliases `GetMessageClass`).
   A few projects already ship such a shim, but most users simply stay on 5.x until the ecosystem catches up .

4. **Watch the issue trackers** (TensorFlow #94030, Ultralytics #20527, …).
   When the libraries eventually release a version that says “supports protobuf 6.x” you can upgrade again.
…tomization.yaml` to avoid a warning (opendatahub-io#2545)

```
Warning: 'commonLabels' is deprecated. Please use 'labels' instead. Run 'kustomize edit fix' to update your Kustomization automatically.
```
…3044 error (opendatahub-io#2546)

```
./codeserver/ubi9-python-3.12/Dockerfile.cpu:164 DL3044 error: Do not refer to an environment variable within the same `ENV` statement where it is defined.
```
…ascience-cuda-pytorch-llmcompressor-ubi9-python-3.12 image (opendatahub-io#2549)
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
* RHOAIENG-34309: fix(jupyterlab-extension): remove gio command call and use custom code to clean trashed files (opendatahub-io#2510)

* opendatahub-io#1271: fix(scripts): posix noncompliance in `nginx/root/usr/share/container-scripts/nginx/common.sh` and duplicates of thereof (opendatahub-io#1628)

* fix(nginx/common.sh) fix shell script that was not POSIX-complaint

Let's rather add the `#!/usr/bin/env bash` and just use bash

---------

Co-authored-by: Jiri Daněk <[email protected]>

* update all runtimes imagestreams name to reflect to the new naming format

* RHAIENG-1186: chore(dockerfile): bump code-server version to v4.104.0 in UBI9 Python 3.12 image

* RHAIENG-1186: chore(dockerfile): remove custom patch, change is already in code-sever

* coder/code-server#7418

Revert "increase available memory for the nodejs javascript vm (opendatahub-io#2356)"

This reverts commit e3f47c1.

* RHAIENG-1186: chore(code-server): update nodejs to a compatible version

Choosing 2.24 because we're building for RHOAI 2.25 EUS.

```
> [email protected] preinstall
> node build/npm/preinstall.js

*** Please use Node.js v22.15.1 or later for development.
/root/code-server/lib/vscode/build/npm/preinstall.js:14
```

* RHAIENG-1186: chore(code-server): update to gcc-toolset-14 with CXXFLAGS="-std=c++20"
```
npm error /root/.cache/node-gyp/24.8.0/include/node/v8config.h:13:2: error: #error "C++20 or later required."
npm error    13 | #error "C++20 or later required."
```

* RHAIENG-1186: chore(code-server): the build is unhappy about nodejs 24, so use 22.19.0

```
npm warn EBADENGINE Unsupported engine {
npm warn EBADENGINE   package: '[email protected]',
npm warn EBADENGINE   required: { node: '22' },
npm warn EBADENGINE   current: { node: 'v24.8.0', npm: '11.6.0' }
npm warn EBADENGINE }
```

* RHAIENG-1186: chore(code-server): it looks like there may be a justification for installing node 22.18

When I had 22.19.0, the build downloaded 22.18.0 at one point.

```
  [18:37:46] Starting node-linux-x64 ...
  [18:37:46] Downloading node.js 22.18.0 linux x64 from https://nodejs.org...
```

* RHAIENG-1186: chore(code-server): disable the getting started override about deploying code-server for the team

https://github.com/coder/code-server/blob/v4.104.0/patches/getting-started.diff

* RHAIENG-1023: fix(rstudio): update the esbuild inside of rstudio's installation as it was done in the poc (opendatahub-io#2513)

* Fix typos

* Issue opendatahub-io#1789: chore(repo): set up lfs for vscode extensions vendored into the repo (opendatahub-io#2516)

For now, only move existing extensions already on main into lfs. Will not rewrite history to remove the previously added versions.

This means that repository size is not decreased by this commit. But it should not grow so much any more every time code-server is updated.

```
❯ brew install git-lfs
❯ git lfs track "*.vsix"
Tracking "*.vsix"
❯ cat .gitattributes
ci/secrets/** filter=git-crypt diff=git-crypt
*.vsix filter=lfs diff=lfs merge=lfs -text
❯ git add .gitattributes
```

Issue opendatahub-io#1789: chore(repo): update docs with git-lfs instructions for codeserver in Extensions.md

* Issue opendatahub-io#1789: chore(repo): convert the ``*.vsix` files on main into git-lfs (opendatahub-io#2516)

codeserver/ubi9-python-3.12/utils/[email protected],codeserver/ubi9-python-3.12/utils/ms-python.python-2025.2.0.vsix,codeserver/ubi9-python-3.12/utils/ms-toolsai.jupyter-2025.2.0.vsix,codeserver/ubi9-python-3.12/utils/ms-toolsai.jupyter-keymap-1.1.2.vsix,codeserver/ubi9-python-3.12/utils/ms-toolsai.jupyter-renderers-1.1.0.vsix,codeserver/ubi9-python-3.12/utils/ms-toolsai.vscode-jupyter-cell-tags-0.1.9.vsix,codeserver/ubi9-python-3.12/utils/ms-toolsai.vscode-jupyter-slideshow-0.1.6.vsix: convert to Git LFS

```
❯ git lfs migrate import --no-rewrite codeserver/ubi9-python-3.12/utils/*.vsix
override changes in your working copy?  All uncommitted changes will be lost! [y/N] y
changes in your working copy will be overridden ...
Checkout: ..., done.
```

* Issue opendatahub-io#1789: chore(repo): add a conditional git-lfs checkout in github actions when needed (opendatahub-io#2516)

```
[4/6] STEP 13/33: RUN mkdir -p /opt/app-root/extensions-temp &&     code-server --install-extension /opt/app-root/bin/utils/ms-python.python-2025.2.0.vsix --extensions-dir /opt/app-root/extensions-temp &&     code-server --install-extension /opt/app-root/bin/utils/ms-toolsai.jupyter-2025.2.0.vsix --extensions-dir /opt/app-root/extensions-temp
[2025-09-19T08:59:44.572Z] info  Wrote default config file to /opt/app-root/src/.config/code-server/config.yaml
Installing extensions...
Error: End of central directory record signature not found. Either not a zip file, or file is truncated.
    at k8 (file:///usr/lib/code-server/lib/vscode/out/server-main.js:48:2239)
    at file:///usr/lib/code-server/lib/vscode/out/server-main.js:48:3567
    at /usr/lib/code-server/lib/vscode/node_modules/yauzl/index.js:40:7
    at /usr/lib/code-server/lib/vscode/node_modules/yauzl/index.js:190:5
    at /usr/lib/code-server/lib/vscode/node_modules/yauzl/index.js:712:5
    at /usr/lib/code-server/lib/vscode/node_modules/yauzl/fd-slicer.js:33:7
    at FSReqCallback.wrapper [as oncomplete] (node:fs:671:5) {
  code: 'Extract',
  name: 'Extract'
}
Failed Installing Extensions: file:///opt/app-root/bin/utils/ms-python.python-2025.2.0.vsix
```

I'll locate the workflow template and the code paths that determine when a codeserver image is being built, then update the checkout step to use LFS conditionally.

[2 tools called]

I'll open the workflow template to see the checkout step and the job matrix to identify how to detect codeserver builds, then edit it to set checkout lfs conditionally.

[1 tool called]

I’m going to update the workflow template to set the checkout action’s LFS option conditionally: enabled when `inputs.target` contains `codeserver`, disabled otherwise, for both the normal and pull_request_target checkout steps.

[2 tools called]

- I found the workflow template and updated the checkout steps to toggle LFS based on whether we’re building a codeserver image.

Changes made in `.github/workflows/build-notebooks-TEMPLATE.yaml`:
- For both checkout steps, added `with.lfs: ${{ contains(inputs.target, 'codeserver') }}`.
- This sets LFS to true when `inputs.target` contains `codeserver`, and false otherwise, including the `pull_request_target` case.

Example of the updated blocks:
```12:16:.github/workflows/build-notebooks-TEMPLATE.yaml
      - uses: actions/checkout@v5
        if: ${{ fromJson(inputs.github).event_name != 'pull_request_target' }}
        with:
          lfs: ${{ contains(inputs.target, 'codeserver') }}
```
```66:71:.github/workflows/build-notebooks-TEMPLATE.yaml
      - uses: actions/checkout@v5
        if: ${{ fromJson(inputs.github).event_name == 'pull_request_target' }}
        with:
          ref: "refs/pull/${{ fromJson(inputs.github).event.number }}/merge"
          lfs: ${{ contains(inputs.target, 'codeserver') }}
```

Summary:
- Conditional LFS checkout implemented in the workflow template for codeserver builds; no lints reported.

* RHAIENG-286: 2025b images package upgrade (opendatahub-io#2414)

* Upgrade CodeServer packages for 2025b

* Upgrade Jupyter DataScience packages for 2025b

* Upgrade Jupyter Minimal packages for 2025b

* Upgrade Jupyter PyTorch LLMCompressor packages for 2025b

* Upgrade Jupyter PyTorch packages for 2025b

* Upgrade Jupyter ROCm PyTorch packages for 2025b

* Upgrade Jupyter ROCm TensorFlow packages for 2025b

* Upgrade Jupyter TensorFlow packages for 2025b

* Upgrade Jupyter TrustyAI packages for 2025b

* Upgrade RStudio packages for 2025b

* Upgrade Runtime images for 2025b

* Update Makefile's RELEASE flag to `2025b` version

* Change build-args to use CUDA 12.8 instead of CUDA 12.6

* Fix tests, manifests and try to ensure consistency between packages and images

* Fix minor package version check and ruff linter issues

* Add missing comma to tuples on tests

* Ignore RUFF's COM819 about commas and lists

* Use RUFF format to fix minor indentation issues

* Update wrong CodeFlare SDK version on packages to standardize them

* Update build-args for ROCm-based images to use ROCm v6.4 instead of ROCm v6.2

* RHAIENG-1193: codeserver(repo): update vscode extensions for 2025b release from Open VSX Registry (opendatahub-io#2518)

---------

Co-authored-by: William Antônio Siqueira <[email protected]>
Co-authored-by: satnam72 <[email protected]>
Co-authored-by: Jiri Daněk <[email protected]>
Co-authored-by: dibryant <[email protected]>
Co-authored-by: Daniel Lutz <[email protected]>
Copy link
Contributor

coderabbitai bot commented Sep 28, 2025

Important

Review skipped

More than 25% of the files skipped due to max files limit. The review is being skipped to prevent a low-quality review.

45 files out of 152 files are above the max files limit of 100. Please upgrade to Pro plan to get higher limits.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions bot added the review-requested GitHub Bot creates notification on #pr-review-ai-ide-team slack channel label Sep 28, 2025
@openshift-ci openshift-ci bot added size/xxl and removed size/xxl labels Sep 28, 2025
Copy link
Contributor

openshift-ci bot commented Sep 28, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: ide-developer
Once this PR has been reviewed and has the lgtm label, please assign jiridanek for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@jiridanek jiridanek closed this Sep 28, 2025
@jiridanek jiridanek deleted the rhoai-2.25 branch September 28, 2025 17:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lgtm review-requested GitHub Bot creates notification on #pr-review-ai-ide-team slack channel size/xxl
Projects
None yet
Development

Successfully merging this pull request may close these issues.