Skip to content

Release v2.1.2 - #11

Merged
bexsoft merged 1 commit into
masterfrom
release-v2.1.2
Aug 3, 2026
Merged

Release v2.1.2#11
bexsoft merged 1 commit into
masterfrom
release-v2.1.2

Conversation

@bexsoft

@bexsoft bexsoft commented Aug 3, 2026

Copy link
Copy Markdown

No description provided.

Signed-off-by: Benjamin Perez <benjamin@bexsoft.net>
@bexsoft bexsoft self-assigned this Aug 3, 2026
@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The web application build was regenerated. Bundle hashes, entrypoints, runtime modules, routes, object-browser features, PDF support, modals, license metadata, and the package version were updated.

Changes

Web application bundle refresh

Layer / File(s) Summary
Asset wiring and release metadata
web-app/package.json, web-app/build/asset-manifest.json, web-app/build/index.html, web-app/build/static/js/main.0c0dd68d.js.LICENSE.txt
The package version changed to 2.1.2. Entrypoints and asset hashes now reference the refreshed bundles. React Router license metadata was updated.
Shared HTTP and authentication runtime
web-app/build/static/js/6.5b375900.chunk.js, web-app/build/static/js/868.7d05bd3d.chunk.js, web-app/build/static/js/868.7d05bd3d.chunk.js.LICENSE.txt
New generated chunks provide HTTP requests, storage adapters, query handling, shared utilities, cookie attribution, and logout behavior.
Application navigation and object operations
web-app/build/static/js/755.d53f2c8c.chunk.js, web-app/build/static/js/88.71e396cd.chunk.js, web-app/build/static/js/941.cf40c6c9.chunk.js
New chunks provide route loading, object-browser operations, and single or bulk object deletion workflows.
Feature-specific generated chunks
web-app/build/static/js/24.7f12983e.chunk.js, web-app/build/static/js/62.be0ee914.chunk.js, web-app/build/static/js/704.d2ffbde1.chunk.js, web-app/build/static/js/774.6fa587df.chunk.js
New chunks provide license comparison, PDF rendering and file-drop support, rewind controls, and folder-path selection. Older hashed chunks were removed.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Description check ❓ Inconclusive No pull request description was provided, so the changeset intent is not documented beyond the title. Add a brief description that summarizes the v2.1.2 release and the updated web application build assets.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title identifies this changeset as the v2.1.2 release, matching the package version and generated build updates.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 2
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch release-v2.1.2

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ast-grep (0.45.0)
web-app/build/static/js/62.be0ee914.chunk.js

ast-grep timed out on this file

web-app/build/static/js/main.0c0dd68d.js

ast-grep timed out on this file

web-app/build/static/js/88.71e396cd.chunk.js

ast-grep timed out on this file


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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 15

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@web-app/build/index.html`:
- Line 1: Add alt attributes to all three img elements in the HTML template: use
empty alt text for the decorative preload background images and descriptive
loading text for Loader.svg, then regenerate the build output so the generated
index reflects these changes.

In `@web-app/build/static/js/24.7f12983e.chunk.js`:
- Line 1: Update the action-button helper invocation in component f so each
license plan uses a unique identifier derived from n.planId or another stable
plan-specific action key, instead of the shared signup URL; preserve the
existing URLs, labels, variants, and click behavior.
- Line 1: Update the enterprise plan header styling in the styled component m,
specifically the .planName.enterprise rule, to meet WCAG contrast requirements
by replacing the `#a0a0a0` background or changing its white text to a sufficiently
dark color; preserve the existing enterprise header layout and styling.
- Line 1: Update the click handler inside component f to isolate the newly
opened external window by including the noopener feature in the window.open call
that uses the "_blank" target. Preserve the existing URL, ref query, and button
behavior.

In `@web-app/build/static/js/6.5b375900.chunk.js`:
- Around line 1-2: Update the request invocation in the API client class
containing invoke so requests targeting "api/v1/logout" apply a 15-second
deadline via req.timeout({ deadline: 15000 }) before send(data), while leaving
other requests unchanged. Preserve LogoutPage’s existing cleanup in its
rejection handler.
- Around line 1-2: Update the session cleanup used by clearSession and the
401/error handling in invoke/onError so both HttpOnly, Path=/ cookies are
expired through a server-side response rather than document.cookie. Ensure every
clearSession path, including logout failures and unauthorized responses, invokes
the server cleanup before redirecting or completing logout, while preserving the
existing client-side token cleanup.
- Around line 1-2: Replace direct global localStorage access for authentication
keys with the shared local-storage-fallback adapter across API.invoke,
LogoutPage, LoginPage, loginThunks, and ProtectedRoutes. Ensure every read and
write of auth-state, userLoggedIn, and redirect-path uses the adapter
consistently, including redirect handling and logout cleanup.

In `@web-app/build/static/js/62.be0ee914.chunk.js`:
- Line 1: Handle the asynchronous rejection from mlGuessAltText at its
invocation site by attaching a rejection handler, rather than relying on a
synchronous try/catch. Update the source method or caller that invokes
mlGuessAltText so the promise is explicitly caught and rejected guesses do not
become unhandled rejections, then regenerate the bundled asset.
- Line 1: The production PDF loading bundle uses pdfjs-dist functionality
requiring Promise.withResolvers(), which is unavailable in declared Chrome
versions below 119. Update the PDF loading dependency or initialization flow
around the PDF viewer components and pdfjs-dist integration to provide a
compatible Promise.withResolvers polyfill before any PDF code executes, while
preserving existing rendering behavior.

In `@web-app/build/static/js/755.d53f2c8c.chunk.js`:
- Line 1: The route configuration in component n needs a matchable buckets-page
route instead of relying on the pathless route. Add an index or concrete route
for /buckets, retain the redirect only as a nested catch-all for unknown paths,
and add coverage verifying /buckets renders correctly while an unknown path
redirects to /buckets.

In `@web-app/build/static/js/774.6fa587df.chunk.js`:
- Line 1: Update the source component containing handler N to normalize C by
removing empty or whitespace-only path segments and joining the remaining
segments with “/” before validation. Reject the operation when the normalized
path is empty, then use that same normalized value for the records lookup and
route construction after normalizing the current path; regenerate the 774 bundle
afterward.
- Line 1: Update the source component’s simplePath useEffect so it sets B to a
when m is empty, while preserving the existing composed path behavior for
non-empty m. Regenerate the 774 bundle after fixing the source; do not edit only
the generated chunk.

In `@web-app/build/static/js/88.71e396cd.chunk.js`:
- Line 1: The non-version object-detail flow must handle an empty list before
dereferencing t[0]. In the listObjects success path, validate that the returned
objects array contains an item before reading e.is_delete_marker or other
properties; when empty, clear the selected object state and close the details
panel or render the existing not-found state. Preserve the current handling for
non-empty results.
- Line 1: Update the dt callback to refresh whenever any referenced reactive
value changes, including ot, Qe, qe, and Xe, rather than depending only on ct.
Preserve the existing upload authorization and extension-filter behavior while
using the complete dependency list or computing those values inside dt.

In `@web-app/build/static/js/941.cf40c6c9.chunk.js`:
- Line 1: The single-object deletion branch in component p does not update the
loading state used by the dialog’s isLoading prop. Track the
h.F.buckets.deleteObject request with the existing y/O loading mechanism, or
route both single- and multi-object deletion through one shared handler, so the
Delete action is disabled until the request resolves or fails.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 699bb8a7-41d9-404d-b262-483b08d8cfb6

📥 Commits

Reviewing files that changed from the base of the PR and between 521e72c and e390fda.

⛔ Files ignored due to path filters (22)
  • web-app/build/static/css/main.e60e4760.css.map is excluded by !**/*.map
  • web-app/build/static/js/24.3e528f18.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/24.7f12983e.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/278.82aa2e03.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/6.5b375900.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/6.a5d52114.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/62.be0ee914.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/704.9b999034.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/704.d2ffbde1.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/755.2193ca00.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/755.d53f2c8c.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/774.6fa587df.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/774.859915c1.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/868.7d05bd3d.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/868.e34ba07d.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/88.0c498aae.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/88.71e396cd.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/941.cceffd1f.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/941.cf40c6c9.chunk.js.map is excluded by !**/*.map
  • web-app/build/static/js/main.0c0dd68d.js.map is excluded by !**/*.map
  • web-app/build/static/js/main.1f8413c7.js.map is excluded by !**/*.map
  • web-app/yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (26)
  • web-app/build/asset-manifest.json
  • web-app/build/index.html
  • web-app/build/static/js/24.3e528f18.chunk.js
  • web-app/build/static/js/24.7f12983e.chunk.js
  • web-app/build/static/js/278.82aa2e03.chunk.js
  • web-app/build/static/js/278.82aa2e03.chunk.js.LICENSE.txt
  • web-app/build/static/js/6.5b375900.chunk.js
  • web-app/build/static/js/6.a5d52114.chunk.js
  • web-app/build/static/js/62.be0ee914.chunk.js
  • web-app/build/static/js/704.9b999034.chunk.js
  • web-app/build/static/js/704.d2ffbde1.chunk.js
  • web-app/build/static/js/755.2193ca00.chunk.js
  • web-app/build/static/js/755.d53f2c8c.chunk.js
  • web-app/build/static/js/774.6fa587df.chunk.js
  • web-app/build/static/js/774.859915c1.chunk.js
  • web-app/build/static/js/868.7d05bd3d.chunk.js
  • web-app/build/static/js/868.7d05bd3d.chunk.js.LICENSE.txt
  • web-app/build/static/js/868.e34ba07d.chunk.js
  • web-app/build/static/js/88.0c498aae.chunk.js
  • web-app/build/static/js/88.71e396cd.chunk.js
  • web-app/build/static/js/941.cceffd1f.chunk.js
  • web-app/build/static/js/941.cf40c6c9.chunk.js
  • web-app/build/static/js/main.0c0dd68d.js
  • web-app/build/static/js/main.0c0dd68d.js.LICENSE.txt
  • web-app/build/static/js/main.1f8413c7.js
  • web-app/package.json
💤 Files with no reviewable changes (9)
  • web-app/build/static/js/755.2193ca00.chunk.js
  • web-app/build/static/js/278.82aa2e03.chunk.js.LICENSE.txt
  • web-app/build/static/js/24.3e528f18.chunk.js
  • web-app/build/static/js/6.a5d52114.chunk.js
  • web-app/build/static/js/941.cceffd1f.chunk.js
  • web-app/build/static/js/774.859915c1.chunk.js
  • web-app/build/static/js/704.9b999034.chunk.js
  • web-app/build/static/js/868.e34ba07d.chunk.js
  • web-app/build/static/js/88.0c498aae.chunk.js

Comment thread web-app/build/index.html
Comment thread web-app/build/static/js/24.7f12983e.chunk.js
Comment thread web-app/build/static/js/6.5b375900.chunk.js
Comment thread web-app/build/static/js/62.be0ee914.chunk.js
Comment thread web-app/build/static/js/755.d53f2c8c.chunk.js
Comment thread web-app/build/static/js/774.6fa587df.chunk.js
Comment thread web-app/build/static/js/88.71e396cd.chunk.js
Comment thread web-app/build/static/js/941.cf40c6c9.chunk.js
@bexsoft
bexsoft merged commit f7fc32c into master Aug 3, 2026
24 of 27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant