← All reportsPublic report

jquery/jquery

jQuery JavaScript Library

60k stars JavaScript View on GitHubprofiled 15d ago
Try GitZoid
3PRs this week
3Contributors
769Deps scanned
7Issues found
01 · Repo overview

How jquery is put together

This repository is the jQuery JavaScript library (v4.0.0), a client-side DOM manipulation/event/AJAX library written in JavaScript (ES2015+ modules under src/). It has no backend or datastore; the 'architecture' is a modular ES-module source tree that is bundled by a custom Node.js build pipeline (Rollup + Babel/SWC) into multiple distributable variants (standard, slim, ESM, factory) emitted to dist/ and dist-module/. Data flow is entirely in-browser: user code calls the jQuery API, which operates on DOM elements via internal modules (selector engine, event system, AJAX transports, effects). The repo also contains an extensive QUnit-based test suite run against real browsers and jsdom via jquery-test-runner, plus Node-based smoke tests.

Languages

JavaScript

Frameworks

jQuery (the library itself)QUnit (test framework)Sinon.JS (test doubles)jsdom (DOM emulation for tests)ESLint with eslint-config-jquery (linting)

Infrastructure

Node.js runtime for build/test toolingHusky git hooks (.husky/commit-msg, .husky/pre-push)release-it release automationjquery-test-runner (jtr) for browser/jsdom test executiontest middleware mock server (test/middleware-mockserver.cjs) for AJAX tests

Major components

core

Provides the jQuery factory/init function, DOM evaluation (DOMEval), HTML/XML parsing, ready handling, access helpers, and type utilities.

selector

Implements the full Sizzle-style CSS selector engine (tokenize, preFilter, filters, uniqueSort), replaceable by a native querySelectorAll wrapper (src/selector-native.js).

ajax

Implements $.ajax and shorthands with pluggable transports: xhr, script (cross-domain script injection), JSONP, binary, and .load().

event

Event binding/unbinding (.on/.off), delegation, and programmatic triggering (.trigger/.triggerHandler).

manipulation

DOM insertion/replacement/removal, fragment building, script evaluation within inserted HTML (_evalUrl, domManip, buildFragment), and wrapMap.

attributes & css

attr/prop/val/classes handling plus style manipulation, dimension/offset calculations, show/hide logic, and animation support hooks.

deferred & callbacks & queue

Promise-like Deferred implementation (with exceptionHook), Callbacks lists, and animation/function queues including .delay().

build & release tooling

Node scripts (build/command.js, build/tasks/*, build/release/*) that assemble custom/slim/ESM/factory builds, minify, verify dist, generate changelogs/archives, sync AUTHORS.txt, and publish to CDN.

The past few weeks on the jQuery repository have been quiet, with just one small change per week. The work has focused on housekeeping: improving documentation, adding contribution guidelines, and keeping the project's automated tools up to date.

Week by week

2026-08-17A single documentation fix corrected a misspelled technical term in the README.latest1 change

Docs

Fixed XMLHttpRequest spelling in README

The project's main README file had 'XMLHttpRequest' (a web technology name) spelled incorrectly, and this change fixed the typo.

2026-08-03Maintenance work updated the automated tools that run behind the scenes on GitHub.1 change

Chore

Updated GitHub Actions automation

Five updates were applied to the group of automated workflows that help test and manage the project, keeping its tooling current.

2026-07-20New guidelines were added explaining how machine-generated contributions should be handled.1 change

Docs

Added guidelines for machine-generated contributions

Documentation was added to explain the rules for code or text contributions created by AI or other automated tools.

03 · Security check

Dependencies and code review

769 dependencies scanned

Dependency advisories

Security Watch

7 vulnerable packages (15 advisories) across 769 scanned dependencies.

warninghigh · npmfixed in 5.0.7

brace-expansion 1.1.15

3 advisories. Fixed in 5.0.7.

How it can be abusedThis library is only used behind the scenes by build and test tooling that matches file paths, such as glob and minimatch. A malicious or corrupted input like a crafted filename or config could make those tools hang or run out of memory, freezing builds on developer machines or CI servers; people visiting sites built with jQuery are not affected.

  • highGHSA-3jxr-9vmj-r5cpbrace-expansion: DoS via exponential-time expansion of consecutive non-expanding {} groups
  • highGHSA-mh99-v99m-4gvgbrace-expansion: DoS via unbounded expansion length causing an out-of-memory process crash
  • highGHSA-rgw5-rvv9-x895brace-expansion: DoS via unbounded intermediate arrays, bypassing the CVE-2026-14257 mitigation
warninghigh · npmfixed in 4.0.1

fast-uri 3.1.2

3 advisories. Fixed in 4.0.1.

How it can be abusedfast-uri parses web addresses and can be tricked into treating a malicious address as belonging to a trusted host, which could let an attacker bypass checks that rely on comparing URLs. However, jQuery does not depend on this library and runs entirely in the browser, so this flaw has no practical effect on this codebase or its users.

  • highGHSA-4c8g-83qw-93j6fast-uri vulnerable to host confusion via failed IDN canonicalization
  • highGHSA-7p8r-x3mc-p8w7fast-uri vulnerable to host confusion via backslash authority introducer
  • highGHSA-v2hh-gcrm-f6hxfast-uri vulnerable to host confusion via literal backslash authority delimiter
warninghigh · npmfixed in 10.3.1

ip-address 10.2.0

1 advisory. Fixed in 10.3.1.

How it can be abusedAn attacker could trick code that checks IP addresses into approving an address that means something different to the real resolver, letting requests reach internal systems that were supposed to be blocked. In this repository the library is not part of what ships to users; at most it appears in development or test tooling, so end users of jQuery are not affected.

  • highGHSA-mwp4-54f8-5fhrip-address: Address4 decodes leading-zero octets as decimal while resolvers decode them as octal, allowing SSRF and trust-boundary bypass
warninghigh · npmfixed in 3.15.0

js-yaml 4.2.0

2 advisories. Fixed in 3.15.0.

How it can be abusedA malicious YAML file, such as a crafted test fixture or config checked into the repo, could make the js-yaml parser burn huge amounts of CPU during the build or test pipeline, slowing or hanging developer machines and CI. Only people running the project's own build and test scripts are affected; nothing ships to browser users.

  • highGHSA-52cp-r559-cp3mjs-yaml: YAML merge-key chains can force quadratic CPU consumption
  • highGHSA-5p4m-2wfm-xmqjJS-YAML: Quadratic CPU consumption in !!omap resolution (3.x and 4.x) — CVE-2026-59870 fix not backported
warninghigh · npmfixed in 7.0.3

serialize-javascript 6.0.2

1 advisory. Fixed in 7.0.3.

How it can be abusedThis package turns JavaScript values into strings and can be tricked into running attacker code if it serializes data an attacker controls. In this repo it is only a build-time tool handling trusted local files during bundling, so real-world users of the jQuery library are not exposed.

  • highGHSA-5c6j-r48x-rmvqSerialize JavaScript is Vulnerable to RCE via RegExp.flags and Date.prototype.toISOString()
warninghigh · npmfixed in 1.9.0

shell-quote 1.8.4

1 advisory. Fixed in 1.9.0.

How it can be abusedAn attacker could feed a very long or tricky string into the shell-quote parse function, making it slow down dramatically and freeze whatever process called it. In this repo shell-quote is only used in developer and build tooling, so real users of jQuery in browsers are not affected; only developers running local builds or tests could be inconvenienced.

  • highGHSA-395f-4hp3-45gvshell-quote: Quadratic-complexity Denial of Service in `parse()` (CWE-407)
warninghigh · npmfixed in 7.29.0

undici 7.24.5

4 advisories. Fixed in 7.29.0.

How it can be abusedThis package is only used in the Node.js build and test tooling, never in the browser code that ships to websites. An attacker could only abuse these flaws if a developer or CI job ran tests that connect to a malicious server, which could leak responses between users, skip certificate checks, or crash the test process; end users of jQuery are not affected.

  • highGHSA-4cwx-7wf7-3272undici vulnerable to cross-user information disclosure and parse-time crash via degenerate private cache directives
  • highGHSA-hm92-r4w5-c3mjundici vulnerable to cross-origin request routing via SOCKS5 proxy pool reuse
  • highGHSA-vmh5-mc38-953gundici vulnerable to TLS certificate validation bypass via dropped requestTls in SOCKS5 ProxyAgent
  • highGHSA-vxpw-j846-p89qundici WebSocket client vulnerable to denial of service via fragment count bypass

Code review

No concrete code-level issues confirmed.

Get this report every week for your repos.

GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.

$19 a month, flat · First 10 outputs free · No card required