← All reportsPublic report

angular/angular

Deliver web apps with confidence 🚀

101k stars TypeScript View on GitHubprofiled 14d ago
Try GitZoid
291PRs this week
43Contributors
78Deps scanned
2Issues found
01 · Repo overview

How angular is put together

This is the Angular framework monorepo (angular/angular), a TypeScript-first web framework whose core source lives under packages/ and is built and tested with Bazel (via bazelisk). The repo is organized as a pnpm workspace containing the framework packages, an Angular-based documentation site (adev), an internal developer app (dev-app), Angular DevTools browser extension (devtools), integration test apps (integration/), auxiliary modules, goldens for public API checks, and tooling under tools/. Data flow is primarily build-time: Bazel orchestrates compilation of TS sources into distributable npm packages, with tests run through Karma/Jasmine, Protractor/Selenium, Cypress, and Vitest; there is no server-side datastore in this repository.

Languages

TypeScriptJavaScriptSCSS/CSSHTMLStarlark (Bazel)

Frameworks

Angular (workspace packages: core, compiler, router, forms, platform-browser, platform-server, ssr)Angular CLI / @angular/buildAngular Material & CDKRxJSKarma + JasmineCypressProtractor + Selenium WebDriverVitestTailwind CSSCodeMirror 6D3

Infrastructure

Bazel/Bazelisk monorepo build systemDocker devcontainer (.devcontainer)Firebase hosting config for docs site (adev/firebase.json)GitHub Actions-oriented ng-dev tooling (.ng-dev)Husky git hooks

Major components

packages/

The core Angular framework source (compiler, core, common, router, forms, platform-*, ssr, service-worker, etc.) built into publishable npm packages.

adev/

The angular.dev documentation site, an Angular SSR application with shared-docs library, CodeMirror editors, Shiki highlighting, Algolia search, and Tailwind styling.

devtools/

Angular DevTools browser extension source, including iframe message-bus communication with inspected apps and Cypress e2e tests.

integration/

Standalone integration test applications (e.g., animations, cli-hello-world-ivy-i18n) exercising published Angular behavior end-to-end.

goldens/

Golden files for public API surface checks (manage.js) and vscode-extension package contents verification.

tools/

Shared Bazel macros/rules (defaults.bzl, ng_benchmark.bzl) and utilities such as the symbol-extractor used across the monorepo.

.ng-dev/

Repository maintenance configuration for commit messages, formatting, caretaking, releases, and GitHub workflows via the private ng-dev tool.

vscode-ng-language-service/

Submodule/workspace area for the VS Code Angular language service extension, excluded from main CI test runs.

Over the past five weeks the Angular team shipped a steady stream of security and correctness fixes (including a TransferState prototype-pollution fix and several prototype-collision guards), new router resource features, and a wave of DevTools improvements like persistent signal breakpoints. The project also cut multiple releases — v22.2.0 progressed from next.0 to next.3 alongside patch releases for v20.x, v21.x, and v22.1.x — while modernizing its test infrastructure by moving off Protractor and updating docs tooling.

Week by week

2026-08-24A quiet week focused on dependency updates, DevTools polish, and documentation guidance.latest3 changes

Chore

Cross-repo dependency update

Internal Angular package dependencies were refreshed across repositories.

Refactor

DevTools profiler text cleanup

The instructions shown for clearing profiler recordings were reworded for clarity.

Docs

Self-closing tag guidelines added

The components reference now includes guidance on using self-closing tags.

2026-08-17A busy week that fixed a TransferState security issue, hardened against prototype collisions, and shipped the v22.2.0-next.3 release.6 changes

Fix

TransferState security fix

Closed a prototype pollution vulnerability in server-side state transfer that could let attackers tamper with app behavior.

Fix

Prototype collision hardening

Core and common packages were updated so objects can't accidentally collide with built-in JavaScript prototype members.

Fix

Standalone bootstrap migration fix

The migration tool no longer drops registerLocaleData calls when converting apps to standalone bootstrap.

Fix

Language service quote-style imports

Auto-generated imports in your editor now respect your preferred quote style.

Fix

Deferred import deduplication

The compiler now avoids duplicating lazy-loaded imports when the same module appears in multiple defer blocks.

Chore

Multiple releases cut

v22.2.0-next.3 was released, plus release notes for v22.1.3 and v20.3.29 patches.

2026-08-10New router resource features landed, tests moved off the aging Protractor framework, and v22.2.0-next.2 was released.6 changes

Feature

Router resources support

The router gained support for blocking and non-blocking resources, letting routes wait on data before loading.

Feature

Private property access in templates

Templates can now access private class properties, expanding what component authors can bind to.

Chore

Protractor retirement

Core, examples, playground, and docs-site test suites were all switched away from the deprecated Protractor testing tool.

Fix

VS Code extension security fix

Patched a command URI injection vulnerability in the TypeScript SDK approval flow of the Angular VS Code extension.

Fix

Oversized response cancellation

HTTP requests now cancel fetch responses whose bodies exceed size limits instead of hanging.

Chore

Releases and infrastructure updates

v22.2.0-next.2 was released with notes for v22.1.2, v21.2.20, and v20.3.28, alongside Node 24 and pnpm upgrades.

2026-08-03DevTools gained persistent breakpoints on signals via Chrome's debugging protocol, and HTTP handling got more robust.6 changes

Feature

Persistent signal breakpoints

Angular DevTools can now pause execution when specific signal values change, using Chrome's debugging protocol.

Fix

HTTP charset handling

JSON responses are always decoded as UTF-8, and the fetch backend now respects content-type character sets.

Fix

Cookie parsing fixes

Cookie parsing strips stray quote characters and handles malformed values without crashing.

Fix

Clearer hydration errors

Missing hydration nodes now produce a descriptive error message instead of an unexplained crash.

Refactor

DevTools build modernization

DevTools now relies on esbuild for code downleveling since it runs zoneless, simplifying its build pipeline.

Chore

v22.2.0-next.1 released

A new pre-release was cut along with release notes for the v22.1.1 patch.

2026-07-27Compiler CSS scoping fixes, better hydration error messages, and the first v22.2.0 pre-release headlined the week.6 changes

Fix

Nested CSS scoping fixes

Component styles now correctly scope nested CSS rules and skip encapsulation when ::ng-deep is present.

Fix

Friendlier hydration mismatch errors

Element hydration mismatches now throw a proper Angular error code instead of a raw TypeError.

Fix

Radio input sync fix

Radio buttons stay correctly selected when their option values change dynamically.

Fix

HTTP interceptor ordering

Root-level interceptors now run at the correct point in the request chain.

Refactor

Test modernization continues

Forms, common, and animations test suites were updated to use the newer whenStable API.

Chore

v22.2.0-next.0 released

The first pre-release of the next minor version was cut, and DevTools bumped to version 1.19.0.

03 · Security check

Dependencies and code review

78 dependencies scanned

Dependency advisories

Security Watch

2 vulnerable packages (3 advisories) across 78 scanned dependencies.

warninghigh · npmfixed in 7.5.2

semver 7.3.5

1 advisory. Fixed in 7.5.2.

How it can be abusedAn attacker could send a specially crafted version string that makes the semver library hang while matching it, freezing any build or tooling process that parses versions. In this repo semver is only used by build and release scripts, so developers running those tools are affected, not end users of Angular apps.

warninghigh · npmfixed in 5.2.4

ws 8.15.0

2 advisories. Fixed in 5.2.4.

How it can be abusedAn attacker could crash a server by sending it a WebSocket request stuffed with thousands of HTTP headers, or many tiny message fragments, causing the server to run out of memory. In this repo ws is only used by local development and test tooling like the dev server and Karma, so real users of Angular apps are not exposed; only developers running those tools on untrusted networks could be affected.

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