Skip to content

meteor-blaze: jQuery is a hard runtime requirement up to Blaze 3.0.3 and optional from 3.1.0-alpha.0 (prerelease), and the skill never mentions it #11

Description

@dupontbertrand

Problem encountered while developing an application. This issue was written and opened by Claude Code, after review by the author.

Heads-up: meteor-blaze never mentions jQuery, and its "Current scaffold" package list omits it, while meteor create --blaze on Meteor 3.5.1 adds the jquery Meteor package and the jquery npm dependency. The dependency is a hard runtime requirement up to Blaze 3.0.3 and becomes optional from blaze@3.1.0-alpha.0. This is a version boundary in the sense of AGENTS.md (Versioning: "Independently released Atmosphere and npm packages use their package version, not the Meteor release, as the capability floor", and "Add case coverage for both the supported version and an earlier-version near miss when a skill spans the capability boundary"), and it is missing.

Blaze 3.0.3 (what the scaffold resolves today)

meteor remove jquery plus meteor npm uninstall jquery on an app that never calls $() directly: the client dies at boot.

Error: jQuery not found                      (packages/blaze.js)
TypeError: Cannot read properties of undefined (reading 'Blaze')   (app/global-imports.js)
ReferenceError: meteorInstall is not defined
TypeError: require is not a function         (__rspack__/client-rspack.js)

Only the first line is the cause; the three others are the cascade the console shows next.

blaze@3.1.0-alpha.0 (Atmosphere, June 2026, meteor/blaze#493 dual DOM backend)

Same app, blaze-html-templates@3.1.0-alpha.0 and blaze@3.1.0-alpha.0 pinned, jQuery removed: the app boots, Blaze._DOMBackend._hasJQuery === false, subscriptions and events work. When jQuery is still present, the alpha logs at boot:

[Blaze] jQuery 3.7.1 detected as DOM backend. Native DOM backend is available — remove jquery to enable native DOM backend. jQuery support will be removed in Blaze 4.0.

A second line follows it, [Blaze] jQuery was loaded via <global scope|Meteor packages>. That pair is the verification marker: present while jQuery is loaded, gone once removal succeeded. Removal order that works: upgrade Meteor, pin the alpha, then remove jquery (Meteor package and npm). Removing first reproduces the 3.0.3 crash.

Known limitation of the prerelease: meteor/blaze#512 (delegated event selector scope in native mode), fix meteor/blaze#513 still open. HISTORY.md has no 3.1.0 entry and the repository has no tag for it yet, so the published Atmosphere version (blaze@3.1.0-alpha.0, 25 June 2026) and PR #493 are the only version evidence for now.

Suggested change

  • List jquery in the scaffold package list and state the 3.0.x requirement.
  • Add the 3.1.0-alpha.0 boundary with the marker and the order above, flagged as prerelease.
  • Two eval cases: an app on Blaze 3.0.3 asking to remove jQuery (pass if the agent refuses and proposes the upgrade first); an app pinned on the alpha asking the same (pass if the agent gives the order and checks the console marker).

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions