Skip to content

MCR-3815 Migrate processing Vue app to the mycore-vue toolchain - #3114

Open
sebhofmann wants to merge 1 commit into
issues/MCR-3814-Migrate_texteditor_Vue_app_to_the_mycore-vue_toolchainfrom
issues/MCR-3815-Migrate_processing_Vue_app_to_the_mycore-vue_toolchain
Open

MCR-3815 Migrate processing Vue app to the mycore-vue toolchain#3114
sebhofmann wants to merge 1 commit into
issues/MCR-3814-Migrate_texteditor_Vue_app_to_the_mycore-vue_toolchainfrom
issues/MCR-3815-Migrate_processing_Vue_app_to_the_mycore-vue_toolchain

Conversation

@sebhofmann

@sebhofmann sebhofmann commented Aug 18, 2026

Copy link
Copy Markdown
Member

Link to jira.

Stacked pull request. builds on #3113 (MCR-3814), #3115 (MCR-3816) builds on this one. Review the diff of this PR only; the base branch already contains the PRs below it.

Part of the epic MCR-3810.

Moves the processing app onto the shared toolchain. Same shape as MCR-3814. vite 8 bundles with rolldown, so the
bootstrap externalization moves from the deprecated build.rollupOptions to build.rolldownOptions; the app only
uses bootstrap through the global that the surrounding MyCoRe page provides.

Pull Request Checklist (Author)

Please go through the following checklist before assigning the PR for review:

Ticket & Documentation

  • The issue in the ticket is clearly described and the solution is documented.
  • Design decisions (if any) are explained.
  • The ticket references the correct source and target branches.
  • The fixed-version is correctly set in the ticket and matches the PR's target branch (main).

Feature & Improvement Specific Checks

  • Instructions on how to test or use the feature are included or linked (e.g. to documentation).
  • For UI changes: before & after screenshots are attached.
  • New features or migrations are documented.
  • Does this change affect existing applications, data, or configurations?
    • Yes: Is a migration required? If yes, describe it.
    • Breaking change is marked in the commit message.

Bugfix-Specific Checks

  • Affected version is listed in the ticket.
  • Minimal code changes were made (no refactoring).
  • This PR truly fixes only the reported bug.
  • No breaking changes are introduced.
  • A relevant test was added (if feasible).

Testing

  • I have tested the changes locally.
  • The feature behaves as described in the ticket.
  • Were existing tests modified?
    • Yes: explain the changes for reviewers.

MCR Conventions & Metadata

  • MCR naming conventions are followed
  • If the public API has changed:
    • Old API is deprecated or a migration is documented.
    • If not, no action needed.
  • Java license headers are added where necessary.
  • Javadoc is written for non-self-explanatory classes/methods (Clean Code).
  • All configuration options are documented in Javadoc and mycore.properties.
  • No default properties are hardcoded — all set via mycore.properties.

Multi-Repo Considerations

  • Is an equivalent PR in MIR required?
    • If yes, is it already created?

No MIR change required for this PR.

@sebhofmann
sebhofmann force-pushed the issues/MCR-3815-Migrate_processing_Vue_app_to_the_mycore-vue_toolchain branch from 752dc93 to bc8486c Compare August 18, 2026 14:06
@sebhofmann
sebhofmann force-pushed the issues/MCR-3815-Migrate_processing_Vue_app_to_the_mycore-vue_toolchain branch from bc8486c to 9efc78f Compare August 18, 2026 14:33
@sebhofmann
sebhofmann marked this pull request as ready for review August 19, 2026 08:20
@sebhofmann
sebhofmann force-pushed the issues/MCR-3815-Migrate_processing_Vue_app_to_the_mycore-vue_toolchain branch from 9efc78f to e147e89 Compare August 19, 2026 08:50
The processing overview now builds with the shared toolchain in mycore-vue.
Sources, output directory and therefore the app URL and the MCRVueRootServlet
mapping are unchanged.

Toolchain upgrade for this app: vite 6.4 to 8.2, @vitejs/plugin-vue 5.2 to
6.0, vue-tsc 2.2 to 3.3. No template or type-check changes were needed.

- mycore-vue gets the scripts build:processing, build-only:processing,
  type-check:processing and dev:processing. build:processing keeps the
  previous behaviour of type checking before building. All dependencies of
  the app were already part of the central package.json.
- vite.config.ts becomes vite.config.mts on top of defineMCRVueApp. bootstrap
  stays external, declared as build.rolldownOptions.external, because vite 8
  bundles with rolldown and build.rollupOptions is deprecated. The app only
  imports bootstrap as a type and uses the global object of the surrounding
  MyCoRe page, which the built bundle still does.
- The app keeps a single tsconfig.json extending the shared one, with the
  typeRoots and paths mapping onto the shared node_modules. Its stricter
  compiler options are kept, so nothing is checked less strictly than before.
  tsconfig.app.json and tsconfig.node.json are gone.
- src/vite-env.d.ts references mycore-vue/env.d.ts, which is the only place
  where the vite/client types resolve.
- mycore-webtools replaces the executions yarn-install-processing and
  yarn-build-processing by a single build execution with workingDirectory
  mycore-vue.
- The app's package.json and yarn.lock are removed.
@sebhofmann
sebhofmann force-pushed the issues/MCR-3815-Migrate_processing_Vue_app_to_the_mycore-vue_toolchain branch from e147e89 to d60656f Compare August 20, 2026 08:11
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