Skip to content

chore(deps-dev): bump @quasar/app-vite from 1.11.0 to 3.8.1 - #349

Open
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/quasar/app-vite-3.8.1
Open

chore(deps-dev): bump @quasar/app-vite from 1.11.0 to 3.8.1#349
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/quasar/app-vite-3.8.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 1, 2026

Copy link
Copy Markdown
Contributor

Bumps @quasar/app-vite from 1.11.0 to 3.8.1.

Release notes

Sourced from @​quasar/app-vite's releases.

@​quasar/app-vite-v3.8.1

Changes

  • fix(app-vite): bex -> the bridge now recovers on its own after the MV3 background script is terminated. Chrome (service worker) and Firefox (event page) shut the background down after ~30s of inactivity, taking every bridge port with it, and nothing ever came back: content script and app bridges stayed disconnected forever, while a revived background only knew about the port that woke it up. Store policies forbid keeping the background alive, so recovery happens inside the event-driven model instead: a (re)started background broadcasts a one-off message asking previously connected bridges to re-establish their ports, and a client bridge that lost its connection without an explicit disconnectFromBackground() reconnects transparently on its next send() (which also wakes the background up; concurrent calls share one connection attempt). send() also waits up to 1s for a target port that is not registered yet, covering ports that re-register right after a background restart. Cleanup after a failed connection was removing the onDisconnect handler from the wrong port event, which is fixed too (#17932)
  • fix(app-vite): ssr/ssg -> stylesheets of shared chunks are now linked in the server-rendered HTML. Vite's SSR manifest only maps a module id to the files of the chunk that module ended up in, so as soon as a dependency is used from more than one place its CSS is hoisted into a shared chunk that is unreachable from ssrContext.modules -- the typical shape of an external component library used on several pages. The stylesheet then arrived only after hydration, as a flash of unstyled content. quasar.manifest.json is now assembled from both manifests Vite generates for the client build, completing each entry with the CSS of the chunks it statically imports (dynamic imports stay out, and so does CSS the HTML shell already carries). The CSS list is rebuilt depth-first through the static import graph rather than appended, so a dependency's rules land before the importer's and a server-rendered page cascades exactly like the same page reached through client-side navigation (#18171)
  • fix(app-vite): dev server -> SSR/SSG-specific options are no longer ignored while the dev server runs. The mode flags live under ctx.mode, so both conditionals guarding those diffs were always falsy: changing ssr.pwa, ssr.middlewares, the manualStore* family, manualPostHydrationTrigger, or the SSR/SSG offline filename and service worker extenders silently did nothing (no entry regeneration, no service worker rebuild) until a full restart
  • fix(app-vite): dev server -> reworked run/queue pipeline, fixing several long-standing rough edges. Watcher-triggered rebuilds (PWA manifest and custom service worker, BEX manifest, scripts and firefox UI, SSR webserver boots) now serialize with quasar.config-change runs instead of interleaving with them, and always act on the latest config rather than the one captured when the watcher was created. Toggling ssr.pwa / ssg.pwa while dev is running now works in both directions -- off-then-on previously left a stale snapshot so nothing recompiled, and disabling left the watchers running. A failed watcher rebuild no longer deadens every subsequent rebuild, and a failure while applying quasar.config changes no longer takes the dev server down through an unhandled rejection: both are logged and the server keeps serving. Rapid successive quasar.config edits now supersede cleanly (an obsolete run aborts at the next checkpoint, the newest config always wins) and duplicate pending rebuilds coalesce. clientNeedsReload semantics are now consistent across all modes (bex and pwa included), removing a redundant full reload right after a server reboot, and the SSR webserver reboots exactly when its own inputs change
  • fix(app-vite): types -> the ssr/ssg > manualPostHydrationTrigger JSDoc now points out that it is needed when a Suspense boundary delays hydration (async setup()), and that the hook should then be called from the boundary's @resolve. Full recipe on the SSR and SSG configuring pages (#17961)

Donations

Quasar Framework is an open-source MIT-licensed project made possible due to the generous contributions by sponsors and backers. If Quasar is useful in your workflow and you want to support ongoing maintenance, please consider the following:

@​quasar/app-vite-v3.8.0

Changes

  • feat(app-vite): build -> new vueJsx option for writing components with JSX/TSX (.jsx/.tsx files, or <script lang="jsx|tsx"> blocks in .vue files). Vite compiles JSX itself but assumes the React runtime, so any such file previously died on an unresolved react/jsx-runtime. Setting quasar.config file > build > vueJsx to true points Vite (Oxc) at Vue's JSX runtime instead, in the Vite pipeline and in the browser scripts that Rolldown builds on its own (BEX scripts, the custom PWA service worker), and adds the matching jsx / jsxImportSource to the generated .quasar/tsconfig.json on TypeScript projects. No extra dependency is involved; pass an options object to override the defaults, or "preserve" to hand the transformation to a Vite plugin such as @vitejs/plugin-vue-jsx (which adds the Vue specific JSX sugar: v-model, v-show, v-slots). Quasar components are fully typed in JSX/TSX with Quasar UI v2.26+ (#8690)
  • fix(app-vite): bex -> bridge.send() now resolves with the payload that the responder returned. The bridge awaited the response internally but threw the result away, so every send() resolved with undefined and the only way to get data back from the other end was to send a second message in the opposite direction (#18517)

Donations

Quasar Framework is an open-source MIT-licensed project made possible due to the generous contributions by sponsors and backers. If Quasar is useful in your workflow and you want to support ongoing maintenance, please consider the following:

@​quasar/app-vite-v3.7.0

Changes

  • fix(app-vite): boot files & preFetch -> behavior change: urlPath is now the router-facing URL in every mode. It is path + query (+ hash) as Vue Router sees it, without the publicPath prefix and without hash mode's # wrapper, so you can match it against your routes or feed it straight to router.resolve(). Previously its shape depended on where it was read (raw req.url on the server, window.location on the client), which made every string check mode-dependent: the documented auth-guard example (urlPath.startsWith('/login')) infinite-reload-looped in hash mode and under a non-default publicPath. On top of that, the client-side preFetch hook read window.location during beforeResolve, before vue-router commits the navigation, so every hook saw the PREVIOUS page's URL and a redirect() guarded by urlPath looped until vue-router aborted the navigation. If you need the raw browser URL, use window.location (client-side) or ssrContext.req.url (server-side). The publicPath param is also now passed to the two addPreFetchHooks() call sites that were missing it (SPA-family modes, and SSR/SSG client-side rendered pages), where hooks received undefined (#16423)
  • fix(app-vite): capacitor -> dependencies installed in /src-capacitor are now resolvable from /src code in every mode, not only when running in Capacitor mode. Capacitor plugins ship web implementations, so shared code may import them behind an import.meta.env.QUASAR_CAPACITOR_MODE guard (the guarded branch is dead-code eliminated in production builds) -- that import previously failed to resolve in SPA/PWA/SSR builds. The generated TypeScript compilerOptions.paths mirror this whenever Capacitor mode is installed (#17681)
  • fix(app-vite): ssr/ssg -> Map, Set, Date, RegExp, BigInt and undefined values now survive in the serialized store state. The state was serialized as plain JSON, so Map/Set collapsed to empty objects, Date degraded to a string and undefined values were dropped from window.__INITIAL_STATE__; it is now emitted as a live JS expression, making SSR/SSG state behave identically to SPA mode. HTML-unsafe character escaping is unchanged, and no client runtime or hydration change is needed. Measured cost is roughly 3x the serialization time, which in absolute terms is 34us vs 102us for a 12KB state (about 1ms at 120KB); apps needing full control keep ssr.manualStoreSerialization / manualStoreHydration (#11382)

Donations

Quasar Framework is an open-source MIT-licensed project made possible due to the generous contributions by sponsors and backers. If Quasar is useful in your workflow and you want to support ongoing maintenance, please consider the following:

@​quasar/app-vite-v3.6.1

Changes

  • fix(app-vite): ext add/remove, mode add -> the flow no longer aborts half-way on pnpm v11+. pnpm v11 turned "Ignored build scripts" into a fatal error (v10 only warned), so any dependency with an unapproved build script anywhere in your project made the CLI's pnpm add/pnpm install exit non-zero even though the packages did install -- quasar ext add then stopped with the App Extension package installed and registered as a devDependency but its install script (prompts, rendered templates, quasar.extensions.json entry) never run, leaving the project in a half-applied state. Same for quasar mode add capacitor/electron and the Vue DevTools / store-provider installs. Nothing is silently built -- pnpm still prints its "Ignored build scripts" notice and still refuses to run those scripts, so you can approve them with pnpm approve-builds whenever you want to
  • fix(app-vite): a failing command now reports what actually went wrong when the CLI's output is piped (test harness, shell script, IDE task runner) instead of replacing the real error with a TypeError: stdin.setRawMode is not a function crash -- which also skipped the failure banner and left the terminal switched to the alternate screen buffer. As a bonus, the alternate-screen escape sequences are no longer written into piped logs

Donations

Quasar Framework is an open-source MIT-licensed project made possible due to the generous contributions by sponsors and backers. If Quasar is useful in your workflow and you want to support ongoing maintenance, please consider the following:

@​quasar/app-vite-v3.6.0

New

... (truncated)

Commits
  • 5394ee0 chore(app-vite): bump version
  • 654dd92 chore(vite-plugin): bump version
  • be034ce feat(QFab): open on hover via new hover/hover-delay/hover-hide-delay props
  • a07512d feat(ui): add col-name prop to QTd/QTh so wrapped cells can target their colu...
  • b0bfde6 fix(ui): make overlay content clickable over .q-electron-drag regions in Elec...
  • a320e92 fix(docs): cover sub-pixel gaps between sticky table cells (#17925)
  • 77d755f fix(app-vite): self-heal the BEX bridge after MV3 background termination (fix...
  • b34d84f fix(app-vite): honor SSR/SSG-specific options in the dev-server config diffs
  • f3f7472 feat(docs): document the Suspense post-hydration trigger recipe #17961
  • eee39c5 fix(QScrollArea): put the vertical thumb on the left side in RTL (fix #17943)
  • Additional commits viewable in compare view

Bumps [@quasar/app-vite](https://github.com/quasarframework/quasar) from 1.11.0 to 3.8.1.
- [Release notes](https://github.com/quasarframework/quasar/releases)
- [Commits](https://github.com/quasarframework/quasar/compare/@quasar/app-vite-v1.11.0...@quasar/app-vite-v3.8.1)

---
updated-dependencies:
- dependency-name: "@quasar/app-vite"
  dependency-version: 3.8.1
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/quasar/app-vite-3.8.1 branch from f6e895b to f0fe234 Compare September 1, 2026 12:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants