Commit graph

36863 commits

Author SHA1 Message Date
Kristiyan Kostadinov
242d3328d8 docs: release notes for the v21.0.2 release 2025-12-01 12:52:59 +01:00
Kristiyan Kostadinov
76d097e05f docs: release notes for the v20.3.15 release 2025-12-01 12:47:59 +01:00
Kristiyan Kostadinov
ee53e6ff18 docs: release notes for the v19.2.17 release 2025-12-01 12:42:03 +01:00
Alan Agius
1c6b0704fb
fix(compiler): prevent XSS via SVG animation attributeName and MathML/SVG URLs
This commit implements a security fix to prevent XSS vulnerabilities where SVG animation elements (`<animate>`, `<set>`, etc.) could be used to modify the `href` or `xlink:href` attributes of other elements to `javascript:` URLs.
2025-12-01 10:26:56 +01:00
SkyZeroZx
8f3fdc3e80 docs: update code snippets in reference doocumentation 2025-11-26 16:01:14 -05:00
Matthieu Riegler
c1dfd9cde6 refactor(migrations): don't migration the server bootstrapApplicaiton on zoneless apps.
With the change we specifically analyse `boostrapApplication` with a config that uses `mergeApplicationConfig`.

fixes #65408
2025-11-26 15:58:53 -05:00
Angular Robot
42e73ff9ce build: update cross-repo angular dependencies
See associated pull request for more information.
2025-11-26 15:50:56 -05:00
aparziale
a3fb41e797 docs(docs-infra): fix form custom control example uses syntax
Fixed form custom control example uses non-working syntax in template

Fix #65647
2025-11-26 15:48:17 -05:00
Matthieu Riegler
1c3868198e docs(docs-infra): fix visible lines/regions
fixes #65552
2025-11-26 13:43:37 -05:00
Doug Parker
8555652460 release: bump Angular DevTools version to 1.6.1 2025-11-26 13:32:10 -05:00
Matthieu Riegler
a0930e166c refactor(devtools): Use the same error message as the signal custom formatter for signal errors
When signals throw errors on read, the devtools will show the same error message as the signal custom formatter.
We also don't log errors anymore to the console as those might be surprising to see as errors and are buggy behavior of the devtools.
2025-11-26 13:11:07 -05:00
Matthieu Riegler
5b720aa2eb refactor(core): show error message on signal error
When a signal throws an error on read. The formatter will show the error message.
2025-11-26 13:11:07 -05:00
Alan Agius
71435bd59f test: update polyfills.js size in integration test reports
More info: https://angular-team.slack.com/archives/C07DT5M6V/p1764089279113199
2025-11-26 13:08:42 -05:00
Angular Robot
e681c871d3 build: update all non-major dependencies
See associated pull request for more information.
2025-11-26 13:08:42 -05:00
Leon Senft
add8c41e5b
test(core): test bundling of dynamic component creation and bindings
Add test coverage for bundling dynamic component creation API like
`createComponent()` and `inputBinding()`. This will be used to test that
Signal Forms related features for #64632 can be tree-shaken when unused.
2025-11-26 11:57:15 -05:00
Alan Agius
04101e69ff docs: release notes for the v19.2.16 release 2025-11-26 09:08:42 +01:00
SkyZeroZx
ef034c15c1 docs(docs-infra): renders inline code snippets in docs pills
Improves the rendering of `DocsPillRow` to correctly display inline code snippets (using backticks) within the pill labels.
2025-11-25 18:30:05 -05:00
kirjs
4c0ba06532 release: cut the v21.1.0-next.0 release 2025-11-25 15:25:38 -05:00
kirjs
6aaddba3e2 docs: release notes for the v20.3.14 release 2025-11-25 15:15:52 -05:00
kirjs
6b1fb02dd7 docs: release notes for the v21.0.1 release 2025-11-25 15:06:26 -05:00
Alan Agius
40790ef980 fix(http): prevent XSRF token leakage to protocol-relative URLs
The XSRF interceptor previously failed to detect protocol-relative URLs (starting with `//`) as absolute URLs. This allowed requests to such URLs to include the XSRF token, potentially leaking it to external domains.

This change updates the interceptor to correctly identify protocol-relative URLs as absolute and exclude them from receiving the XSRF token.
2025-11-25 13:47:26 -05:00
Alan Agius
400fc82c43 refactor: replace getDocument() with inject(DOCUMENT)
This replaces `getDocument()` with `inject(DOCUMENT)` across hydration and transfer state logic.
2025-11-25 13:04:58 -05:00
Kristiyan Kostadinov
c994267f17 refactor: add mark for signal forms
Adds a mark for signal forms so we can track adoption. Also moves the call for `@let` into `declareLet` since we don't need it to fire as often as in `storeLet`.
2025-11-25 13:03:43 -05:00
Alan Agius
3b1fa8235b fix(core): use injected DOCUMENT for CSP_NONCE
This ensures that the right document is used and that `CSP_NONCE` can be used in `provideAppInitializer` and `provideEnvironmentInitializer`.

Closes #65624
2025-11-25 11:39:20 -05:00
AntonChesnokov
5bfa027d41 fix(compiler-cli): escape angular control flow in jsdoc
Escape @-prefixed template control flow constructs during doc extraction so JSDoc parsing keeps description text intact. Add regression coverage for @for snippets.
2025-11-25 11:33:25 -05:00
Angelo Parziale
346caefa8d
docs(docs-infra): Fix anchor link DI
Fix anchor link for Dependency Injection Overview.
2025-11-25 11:05:42 -05:00
kirjs
dec222d4d7 refactor(forms): Make reset take value
Now you can do form.reset({name: 'cat', age: 4});
2025-11-25 10:51:35 -05:00
Miles Malerba
c70e246c23
feat(forms): add DI option for classes on Field directive
Adds a DI configuration option for signal forms that allows the
developer to specify CSS classes that should be automatically added
by the `Field` directive based on the field's status.
2025-11-25 10:33:38 -05:00
Angular Robot
076984259d build: lock file maintenance
See associated pull request for more information.
2025-11-25 10:30:45 -05:00
SkyZeroZx
67d41e9bcc docs: improve core package API documentation with additional reference links 2025-11-25 10:19:36 -05:00
Cheng-Hsuan Tsai
56e059948f docs: replace aria grid overview example 2025-11-25 10:16:57 -05:00
Leon Senft
3a1eb07c46 fix(forms): allow dynamic type bindings on signal form controls
The type checker will no longer prohibit binding the Signal Forms `[field]`
directive to an input with a dynamic `[attr.type]` or `[type]` binding.
2025-11-25 09:15:58 -05:00
Oyama Michinoku
2102bfe5aa docs: fix typo by correcting W3 to W3C 2025-11-25 09:14:00 -05:00
Hussein Mahmoud Kandil
a294e3b94d docs: fix example imports and missing event URL reference
The analytics tracking example contained unused and missing imports,
and it incorrectly referenced the page's URL.
This update fixes the imports and ensures the handler uses `event.url`,
allowing the example to work correctly.
2025-11-25 07:44:06 -05:00
Andrew Scott
51ebe9a4fc refactor(core): Remove toggles used for zoneless by default migration
this migration is complete both internally and externally
2025-11-24 16:57:49 -05:00
Kristiyan Kostadinov
ca6ab6c914 fix(core): debug data causing memory leak for root effects
We track all effects that are created for debugging purposes in the `resolverToEffects` map. This ends up leaking memory for effects registered on long-living resolvers (e.g. on the root injector), because they stay in the array, even if the effect itself has been destroyed.

These changes add a callback to clean up the references.

Fixes #65265.
2025-11-24 15:26:09 -05:00
Leon Senft
f97a1d4856 refactor(forms): support custom control directives
Support binding `[field]` to directives that implement
`FormValueControl` or `FormCheckboxControl`.

The `[field]` binds to whichever directive (or component) matches first in the
event there are multiple implementations. We are considering whether to make
this an error state, which could be reported during type checking.

Closes #63910, Closes #64992
2025-11-24 13:48:17 -05:00
Ben Hong
d442c72f87 docs: standardize aria code examples to not use component suffix 2025-11-24 13:28:33 -05:00
Matthieu Riegler
b34e48bdff docs: add callout on zone base testing helpers
With zoneless being the default, we need to make these requirements more explicit.

fixes #65539
2025-11-24 13:27:46 -05:00
Joey Perrott
046501fd33 refactor(docs-infra): make docs-alert an inline token
Migrate docs-alert to be inline instead of block, this ensures that the content is placed within a <p> tag as expected. This is important
for ensuring that the iconography is placed correctly within the wrapper div generated for the alert. Additionally, we refactor the matcher
code to be more efficient, running with fewer loops.
2025-11-24 13:25:59 -05:00
Matthieu Riegler
98ceb0a80d ci: update pullapprove reviewers
Removing Minko from the pool of automatically picked reviewers
2025-11-24 13:25:26 -05:00
SkyZeroZx
2ac826867b docs: Update router docs to add references and components input fixed syntaxis 2025-11-24 13:18:28 -05:00
Alessio Pelliccione
7d20f2071c docs(docs-infra): fix missing syntax highlighting
closed angular#65565
2025-11-24 13:13:22 -05:00
Shuaib Hasan Akib
93cff501e9 refactor(common): remove redundant standalone: true as it is default now
-removing `standalone: true` from integration
- removed whitespace
2025-11-24 13:12:15 -05:00
Kristiyan Kostadinov
6b8720de91 fix(compiler-cli): do not type check native controls with ControlValueAccessor
Currently when we detect a `field` binding on a native element, we treat it as a built-in native control. This might not be the case if it's a pre-existing `ControlValueAccessor` relying on the CVA interop.

These changes try to detect any CVA-like directive on the element and disable the additional type checking if there are any.

Fixes #65468.
2025-11-24 13:08:42 -05:00
Kristiyan Kostadinov
5cfdd7897b refactor(compiler-cli): track public methods during analysis
Updates the directive analysis to track the public methods of the class.
2025-11-24 13:08:42 -05:00
Tomer953
a4f50bdd54 fix(migrations): detect structural ngTemplateOutlet and ngComponentOutlet
the common-to-standalone migration only matched [ngTemplateOutlet] and
[ngComponentOutlet] bindings and missed their structural forms
(*ngTemplateOutlet and *ngComponentOutlet). This caused missing imports
when removing CommonModule. This change adds structural directive
patterns so the migration correctly identifies needed imports.
2025-11-24 12:40:57 -05:00
Shuaib Hasan Akib
b26fe73a91 docs(docs-infra): keep 'Show code' button aligned right and prevent metadata wrapping
Ensures the example viewer header displays correctly by keeping the "Show code"
button aligned to the right and preventing metadata text from wrapping.
Improves layout consistency across documentation examples.
2025-11-24 12:23:36 -05:00
Matthieu Riegler
9dd7cc13ca ci: adding myself as optional to the compiler scope
For whenever I feel confortable approving compiler PRs like diagnostics
2025-11-24 12:18:26 -05:00
Alan Agius
c843a46912 build: update release script to support changelog cherry-picking
This commit updates the release script to support cherry-picking changelog updates to the main branch when releasing from a patch branch. It also introduces a marker in the changelog to separate releases and ensures the GitHub release uses the formatted changelog from disk.
2025-11-24 12:17:20 -05:00