mgechev
Repos
362
Followers
9000
Following
1

The modern web developer’s platform

85179
21801

💻 JavaScript implementations of computer science algorithms

7559
1204

🔮 Libraries & tools for enabling Machine Learning driven user-experiences on the web

6878
188

⚡ Cheatsheet for developing lightning fast progressive Angular applications

3943
438

🔥 ~6x faster, stricter, configurable, extensible, and beautiful drop-in replacement for golint

3885
220

Dependency injection library for JavaScript and TypeScript in 5.1K. It is an extraction of the Angular's ReflectiveInjector which means that it's well designed, feature complete, fast, reliable and well tested.

1103
58

Events

pull request opened
docs: add state of javascript banner
Created at 1 hour ago

docs: add state of javascript banner

Created at 1 hour ago
create branch
mgechev create branch state-of-js-2022-v15
Created at 1 hour ago
delete branch
mgechev delete branch state-of-js-2022-patch
Created at 1 hour ago
pull request opened
docs: add state of javascript banner
Created at 3 hours ago
create branch
mgechev create branch state-of-js-2022-patch
Created at 3 hours ago
delete branch
mgechev delete branch state-of-js-2022
Created at 6 days ago
pull request closed
docs: add developer survey 2022
Created at 6 days ago
issue comment
docs: add developer survey 2022

Closing due to https://github.com/angular/angular/pull/48160.

Created at 6 days ago
issue comment
core-js package

As @dylhunn mentioned Angular and Google stand in solidarity against the Russian invasion of Ukraine.

I also want to reiterate that the communication here falls under the Angular code of conduct. Make sure you're respectful.

I'll close this issue after reviewing core-js on npm and GitHub. I did not see any attempts to enforce political or ethical views by its author.

If I've missed something or you have further concerns, please get in touch with devrel@angular.io.

Created at 6 days ago
closed issue
core-js package

Which @angular/* package(s) are the source of the bug?

compiler-cli

Is this a regression?

No

Description

As I see, "core-js" package (https://www.npmjs.com/package/core-js) is used in your framework. But the author of this package is a russian person (https://github.com/zloirock) who supports the invasion of his country in Ukraine. So I insist on excluding this package from your framework! Thanks.

Please provide a link to a minimal reproduction of the bug

No response

Please provide the exception or error you saw

No response

Please provide the environment you discovered this bug in (run ng version)

No response

Anything else?

No response

Created at 6 days ago

docs: add state of javascript banner

Created at 6 days ago

test(router): Ensure change detection runs after navigation (#47629)

Components are not fully rendered until change detection runs.

PR Close #47629

refactor(router): drop own constructor from the RouterLinkWithHref class (#47619)

This commit updates the RouterLinkWithHref class to further align with the RouterLink class by removing own constructor from the RouterLinkWithHref class.

PR Close #47619

docs: release notes for the v14.2.5 release

release: cut the v15.0.0-next.5 release

fix(router): Remove deprecated relativeLinkResolution (#47623)

The relativeLinkResolution is no longer supported. The only behavior now is the correct behavior.

BREAKING CHANGE: relativeLinkResolution is no longer configurable in the Router. This option was used as a means to opt out of a bug fix.

PR Close #47623

fix(compiler-cli): use @ts-ignore. (#47636)

The previous commit 2e1dddec45 used @ts-expect-error to suppress the current error, with the intent of being informed once that's no longer an error, ie. when we updated to an upstream TS version that includes this change.

However this unfortunately means the change is incompatible with the fixed version, which prevents it from working with an updated TS version in google3.

This change reverts back to the original @ts-ignore which is forwards and backwards compatible, avoiding that problem (but unfortunately losing the benefit of being notified once fixed).

PR Close #47636

docs: fix linter errors for angular-compiler-options.md page (#47179) (#47618)

fixup! docs: fix linter errors for angular-compiler-options.md page (#47179)

PR Close #47618

refactor(compiler): Add getPotentialImportsFor method on template type checker (#47631)

getPotentialImportsFor returns an array of possible imports, including TypeScript module specifier and identifier name, for a requested trait in the context of a given component.

PR Close #47631

feat(router): merge RouterLinkWithHref into RouterLink (#47630)

This commit updates the RouterLink to extend the selector to also include <a> and <area> elements, which were previously matched by the RouterLinkWithHref directive. The code of the directives was merged together (since there was a lot of duplication) and this commit finalizes the merge. The RouterLinkWithHref becomes an alias of the RouterLink directive.

Now there is no need to import and use the RouterLinkWithHref class, the RouterLink directive will match any element that has the routerLink attribute.

DEPRECATED:

The RouterLinkWithHref directive is deprecated, use the RouterLink directive instead. The RouterLink contains the code from the RouterLinkWithHref to handle elements with href attributes.

PR Close #47630

build: add atscott to unavailable list for pullapprove (#47658)

atscott is unavailable to review PRs until no longer OOO

PR Close #47658

docs: fix linter errors for libraries.md (#47668)

PR Close #47668

docs: fix linter errors for lazy-loading-ngmodules.md (#47645)

Update aio/content/guide/lazy-loading-ngmodules.md

Co-authored-by: Bob Watson 104218420+bob-watson@users.noreply.github.com

PR Close #47645

build: update cross-repo angular dependencies (#47600)

See associated pull request for more information.

PR Close #47600

docs: fix linter errors for lightweight-injection-tokens.md (#47673)

PR Close #47673

feat(core): enable the new directive composition API (#47642)

Enables the new directive composition API by exposing the hostDirectives property on the Directive and Component decorators. Also cleans up some casts that were put in place while the feature was being developed.

Fixes #8785.

PR Close #47642

feat(router): migrate RouterLinkWithHref references to RouterLink (#47599)

Since Angular v15, the RouterLink contains the logic of the RouterLinkWithHref directive and now developers can always import and use the RouterLink directive when they need to add a [routerLink] in templates. This migration finds all imports and usages of the RouterLinkWithHref class and rewrites them to RouterLink instead.

import { RouterLinkWithHref } from '@angular/router';

@Component({
  standalone: true,
  template: `<a [routerLink]="'/abc'">`,
  imports: [RouterLinkWithHref]
})
export class MyComponent {
  @ViewChild(RouterLinkWithHref) aLink!: RouterLinkWithHref;
}
import { RouterLink } from '@angular/router';

@Component({
  standalone: true,
  template: `<a [routerLink]="'/abc'">`,
  imports: [RouterLink]
})
export class MyComponent {
  @ViewChild(RouterLink) aLink!: RouterLink;
}

PR Close #47599

refactor(http): introduce the functional interceptors API (#47502)

This commit introduces new types and symbols related to functional HTTP interceptors - interceptors which are plain functions with access to DI via the inject() operation.

This new form of interceptor is not exposed publically in this commit, but the legacy class-based interceptors are refactored to be built on top of the new API internally.

PR Close #47502

refactor(http): use a DI token for new interceptors (#47502)

This commit introduces a new DI token for the set of functional interceptors. This is a no-op in terms of behavior currently, but will allow for the deduplication of the bridge interceptor which connects legacy class- based interceptors to the functional interceptor chain.

PR Close #47502

refactor(http): convert the JSONP interceptor to the functional style (#47502)

This commit rewrites the JSONP interceptor to use the functional interceptor style internally, while still maintaining the same public API and behavior.

PR Close #47502

refactor(http): use an InjectionToken to disable the XSRF interceptor (#47502)

@angular/common/http has XSRF protection which is enabled by default and is implemented as an interceptor. Previously, this protection could be disabled with an API which would internally provide a NoopInterceptor in place of the standard XSRF interceptor.

To achieve the same capability of disabling the XSRF interceptor after it is converted to the functional style, an InjectionToken is added in this commit which disables the XSRF interceptor. This way, the interceptor can be disabled in place without needing to override it via DI (which is difficult for functional interceptors).

PR Close #47502

Created at 6 days ago
pull request opened
docs: add state of javascript banner
Created at 6 days ago

docs: add state of javascript banner

Created at 6 days ago
create branch
mgechev create branch state-of-js-2022
Created at 6 days ago
pull request opened
docs: add developer survey 2022
Created at 1 week ago

test(router): Ensure change detection runs after navigation (#47629)

Components are not fully rendered until change detection runs.

PR Close #47629

refactor(router): drop own constructor from the RouterLinkWithHref class (#47619)

This commit updates the RouterLinkWithHref class to further align with the RouterLink class by removing own constructor from the RouterLinkWithHref class.

PR Close #47619

docs: release notes for the v14.2.5 release

release: cut the v15.0.0-next.5 release

fix(router): Remove deprecated relativeLinkResolution (#47623)

The relativeLinkResolution is no longer supported. The only behavior now is the correct behavior.

BREAKING CHANGE: relativeLinkResolution is no longer configurable in the Router. This option was used as a means to opt out of a bug fix.

PR Close #47623

fix(compiler-cli): use @ts-ignore. (#47636)

The previous commit 2e1dddec45 used @ts-expect-error to suppress the current error, with the intent of being informed once that's no longer an error, ie. when we updated to an upstream TS version that includes this change.

However this unfortunately means the change is incompatible with the fixed version, which prevents it from working with an updated TS version in google3.

This change reverts back to the original @ts-ignore which is forwards and backwards compatible, avoiding that problem (but unfortunately losing the benefit of being notified once fixed).

PR Close #47636

docs: fix linter errors for angular-compiler-options.md page (#47179) (#47618)

fixup! docs: fix linter errors for angular-compiler-options.md page (#47179)

PR Close #47618

refactor(compiler): Add getPotentialImportsFor method on template type checker (#47631)

getPotentialImportsFor returns an array of possible imports, including TypeScript module specifier and identifier name, for a requested trait in the context of a given component.

PR Close #47631

feat(router): merge RouterLinkWithHref into RouterLink (#47630)

This commit updates the RouterLink to extend the selector to also include <a> and <area> elements, which were previously matched by the RouterLinkWithHref directive. The code of the directives was merged together (since there was a lot of duplication) and this commit finalizes the merge. The RouterLinkWithHref becomes an alias of the RouterLink directive.

Now there is no need to import and use the RouterLinkWithHref class, the RouterLink directive will match any element that has the routerLink attribute.

DEPRECATED:

The RouterLinkWithHref directive is deprecated, use the RouterLink directive instead. The RouterLink contains the code from the RouterLinkWithHref to handle elements with href attributes.

PR Close #47630

build: add atscott to unavailable list for pullapprove (#47658)

atscott is unavailable to review PRs until no longer OOO

PR Close #47658

docs: fix linter errors for libraries.md (#47668)

PR Close #47668

docs: fix linter errors for lazy-loading-ngmodules.md (#47645)

Update aio/content/guide/lazy-loading-ngmodules.md

Co-authored-by: Bob Watson 104218420+bob-watson@users.noreply.github.com

PR Close #47645

build: update cross-repo angular dependencies (#47600)

See associated pull request for more information.

PR Close #47600

docs: fix linter errors for lightweight-injection-tokens.md (#47673)

PR Close #47673

feat(core): enable the new directive composition API (#47642)

Enables the new directive composition API by exposing the hostDirectives property on the Directive and Component decorators. Also cleans up some casts that were put in place while the feature was being developed.

Fixes #8785.

PR Close #47642

feat(router): migrate RouterLinkWithHref references to RouterLink (#47599)

Since Angular v15, the RouterLink contains the logic of the RouterLinkWithHref directive and now developers can always import and use the RouterLink directive when they need to add a [routerLink] in templates. This migration finds all imports and usages of the RouterLinkWithHref class and rewrites them to RouterLink instead.

import { RouterLinkWithHref } from '@angular/router';

@Component({
  standalone: true,
  template: `<a [routerLink]="'/abc'">`,
  imports: [RouterLinkWithHref]
})
export class MyComponent {
  @ViewChild(RouterLinkWithHref) aLink!: RouterLinkWithHref;
}
import { RouterLink } from '@angular/router';

@Component({
  standalone: true,
  template: `<a [routerLink]="'/abc'">`,
  imports: [RouterLink]
})
export class MyComponent {
  @ViewChild(RouterLink) aLink!: RouterLink;
}

PR Close #47599

refactor(http): introduce the functional interceptors API (#47502)

This commit introduces new types and symbols related to functional HTTP interceptors - interceptors which are plain functions with access to DI via the inject() operation.

This new form of interceptor is not exposed publically in this commit, but the legacy class-based interceptors are refactored to be built on top of the new API internally.

PR Close #47502

refactor(http): use a DI token for new interceptors (#47502)

This commit introduces a new DI token for the set of functional interceptors. This is a no-op in terms of behavior currently, but will allow for the deduplication of the bridge interceptor which connects legacy class- based interceptors to the functional interceptor chain.

PR Close #47502

refactor(http): convert the JSONP interceptor to the functional style (#47502)

This commit rewrites the JSONP interceptor to use the functional interceptor style internally, while still maintaining the same public API and behavior.

PR Close #47502

refactor(http): use an InjectionToken to disable the XSRF interceptor (#47502)

@angular/common/http has XSRF protection which is enabled by default and is implemented as an interceptor. Previously, this protection could be disabled with an API which would internally provide a NoopInterceptor in place of the standard XSRF interceptor.

To achieve the same capability of disabling the XSRF interceptor after it is converted to the functional style, an InjectionToken is added in this commit which disables the XSRF interceptor. This way, the interceptor can be disabled in place without needing to override it via DI (which is difficult for functional interceptors).

PR Close #47502

Created at 1 week ago
create branch
mgechev create branch dev-survey-2022
Created at 1 week ago
create branch
mgechev create branch dev-survey-2023
Created at 1 week ago

update zh_TW translation to v15

Created at 1 week ago
pull request closed
update zh_TW translation to v15

update zh_TW translation to v15

Created at 1 week ago

add note about iframe security attributes

Created at 1 week ago
pull request closed
add note about iframe security attributes

This is a last-minute breaking change to add to the update info for v14->v15.

Created at 1 week ago
delete branch
mgechev delete branch add-licens
Created at 1 week ago