https://github.com/angular/angular
- HEAD
- refs/heads/10.0.x
- refs/heads/10.1.x
- refs/heads/10.2.x
- refs/heads/11.0.x
- refs/heads/11.1.x
- refs/heads/11.2.x
- refs/heads/12.0.x
- refs/heads/12.1.x
- refs/heads/12.2.x
- refs/heads/12.3.x
- refs/heads/13.0.x
- refs/heads/13.1.x
- refs/heads/13.2.x
- refs/heads/13.3.x
- refs/heads/13.4.x
- refs/heads/14.0.x
- refs/heads/14.1.x
- refs/heads/14.2.x
- refs/heads/14.3.x
- refs/heads/15.0.x
- refs/heads/15.1.x
- refs/heads/15.2.x
- refs/heads/16.0.x
- refs/heads/16.1.x
- refs/heads/16.2.x
- refs/heads/17.0.x
- refs/heads/17.1.x
- refs/heads/17.2.x
- refs/heads/17.3.x
- refs/heads/2.0.x
- refs/heads/2.1.x
- refs/heads/2.2.x
- refs/heads/2.3.x
- refs/heads/2.4.x
- refs/heads/4.0.x
- refs/heads/4.1.x
- refs/heads/4.2.x
- refs/heads/4.3.x
- refs/heads/4.4.x
- refs/heads/5.0.x
- refs/heads/5.1.x
- refs/heads/5.2.x
- refs/heads/5.2x
- refs/heads/52695-improve-clarity-of-tutorial-intro
- refs/heads/53015-add-h1-for-skip-to-main-content
- refs/heads/55303-fix-v0-version-number
- refs/heads/6.0.x
- refs/heads/6.1.x
- refs/heads/7.0.x
- refs/heads/7.1.x
- refs/heads/7.2.x
- refs/heads/8.0.x
- refs/heads/8.1.x
- refs/heads/8.2.x
- refs/heads/9.0.x
- refs/heads/9.1.x
- refs/heads/JeanMeche-patch-1
- refs/heads/add-ben-to-reviewers
- refs/heads/add-docs-script-command
- refs/heads/backup-7.2.x
- refs/heads/bazel
- refs/heads/default-cookie-banner-state
- refs/heads/docs/update-security-guide-reference
- refs/heads/fix-extra-padding-on-tutorial-editor
- refs/heads/fix-missing-security-guide
- refs/heads/g3
- refs/heads/image-directive-13.3.x
- refs/heads/in-depth-guides-refactor
- refs/heads/jperrott-test
- refs/heads/main
- refs/heads/publish-snapshots
- refs/heads/remove-aio-stuff
- refs/heads/saucelabs-bazel
- refs/heads/signals
- refs/heads/sonukapoor-patch-1
- refs/heads/styling-experiments
- refs/heads/template_pipeline
- refs/heads/twerske-patch-1
- refs/heads/watch-burn-rates
- refs/heads/windows-executor-no-cache
- refs/remotes/presubmit-pr-2853
- refs/renovate/branches/renovate/core-js-3.x
- refs/renovate/branches/renovate/cross-repo-angular-dependencies
- refs/renovate/branches/renovate/firebase-tools-11.x
- refs/reviewable/pr1707/r1
- refs/reviewable/pr1855/r1
- refs/reviewable/pr1977/r1
- refs/reviewable/pr1995/r1
- refs/reviewable/pr2164/r1
- refs/reviewable/pr2218/r1
- refs/reviewable/pr2255/r1
- refs/reviewable/pr2257/r1
- refs/reviewable/pr2317/r1
- refs/reviewable/pr2337/r1
- refs/reviewable/pr2347/r1
- refs/reviewable/pr2407/r1
- refs/reviewable/pr2419/r1
- refs/reviewable/pr2419/r2
- refs/reviewable/pr2419/r3
- refs/reviewable/pr2463/r1
- refs/reviewable/pr2464/r1
- refs/reviewable/pr2464/r2
- refs/reviewable/pr2568/r1
- refs/reviewable/pr2573/r1
- refs/reviewable/pr2573/r2
- refs/reviewable/pr2587/r1
- refs/reviewable/pr2588/r1
- refs/reviewable/pr2593/r1
- refs/reviewable/pr2610/r1
- refs/reviewable/pr2634/r1
- refs/reviewable/pr2641/r1
- refs/reviewable/pr2658/r1
- refs/reviewable/pr2658/r2
- refs/reviewable/pr2665/r1
- refs/reviewable/pr2666/r1
- refs/reviewable/pr2666/r2
- refs/reviewable/pr2667/r1
- refs/reviewable/pr2668/r1
- refs/reviewable/pr2676/r1
- refs/reviewable/pr2679/r1
- refs/reviewable/pr2679/r2
- refs/reviewable/pr2690/r1
- refs/reviewable/pr2695/r1
- refs/reviewable/pr2695/r2
- refs/reviewable/pr2695/r3
- refs/reviewable/pr2699/r1
- refs/reviewable/pr2699/r2
- refs/reviewable/pr2699/r3
- refs/reviewable/pr2699/r4
- refs/reviewable/pr2699/r5
- refs/reviewable/pr2699/r6
- refs/reviewable/pr2703/r1
- refs/reviewable/pr2709/r1
- refs/reviewable/pr2709/r2
- refs/reviewable/pr2711/r1
- refs/reviewable/pr2711/r2
- refs/reviewable/pr2713/r1
- refs/reviewable/pr2713/r2
- refs/reviewable/pr2713/r3
- refs/reviewable/pr2714/r1
- refs/reviewable/pr2714/r2
- refs/reviewable/pr2714/r3
- refs/reviewable/pr2715/r1
- refs/reviewable/pr2715/r2
- refs/reviewable/pr2717/r1
- refs/reviewable/pr2717/r2
- refs/reviewable/pr2719/r1
- refs/reviewable/pr2729/r1
- refs/reviewable/pr2729/r2
- refs/reviewable/pr2731/r1
- refs/reviewable/pr2731/r2
- refs/reviewable/pr2734/r1
- refs/reviewable/pr2735/r1
- refs/reviewable/pr2735/r2
- refs/reviewable/pr2736/r1
- refs/reviewable/pr2737/r1
- refs/reviewable/pr2737/r2
- refs/reviewable/pr2737/r3
- refs/reviewable/pr2737/r4
- refs/reviewable/pr2738/r1
- refs/reviewable/pr2738/r2
- refs/reviewable/pr2742/r1
- refs/reviewable/pr2743/r1
- refs/reviewable/pr2744/r1
- refs/reviewable/pr2744/r2
- refs/reviewable/pr2746/r1
- refs/reviewable/pr2746/r2
- refs/reviewable/pr2749/r1
- refs/reviewable/pr2750/r1
- refs/reviewable/pr2752/r1
- refs/reviewable/pr2757/r1
- refs/reviewable/pr2758/r1
- refs/reviewable/pr2759/r1
- refs/reviewable/pr2760/r1
- refs/reviewable/pr2762/r1
- refs/reviewable/pr2764/r1
- refs/reviewable/pr2767/r1
- refs/reviewable/pr2769/r1
- refs/reviewable/pr2772/r1
- refs/reviewable/pr2772/r2
- refs/reviewable/pr2772/r3
- refs/reviewable/pr2772/r4
- refs/reviewable/pr2773/r1
- refs/reviewable/pr2778/r1
- refs/reviewable/pr2778/r2
- refs/reviewable/pr2780/r1
- refs/reviewable/pr2781/r1
- refs/reviewable/pr2784/r1
- refs/reviewable/pr2789/r1
- refs/reviewable/pr2791/r1
- refs/reviewable/pr2792/r1
- refs/reviewable/pr2792/r2
- refs/reviewable/pr2797/r1
- refs/reviewable/pr2801/r1
- refs/reviewable/pr2802/r1
- refs/reviewable/pr2804/r1
- refs/reviewable/pr2805/r1
- refs/reviewable/pr2854/r1
- refs/reviewable/pr3118/r1
- refs/reviewable/pr3126/r1
- refs/reviewable/pr3132/r1
- refs/reviewable/pr3135/r1
- refs/reviewable/pr3135/r2
- refs/reviewable/pr3135/r3
- refs/reviewable/pr3158/r1
- refs/reviewable/pr3564/r1
- refs/reviewable/pr3592/r1
- refs/reviewable/pr4656/r1
- refs/reviewable/pr4657/r1
- refs/reviewable/pr4702/r1
- refs/reviewable/pr4745/r1
- refs/reviewable/pr864/r1
- refs/tags/10.0.0
- refs/tags/10.0.0-next.0
- refs/tags/10.0.0-next.1
- refs/tags/10.0.0-next.2
- refs/tags/10.0.0-next.3
- refs/tags/10.0.0-next.4
- refs/tags/10.0.0-next.5
- refs/tags/10.0.0-next.6
- refs/tags/10.0.0-next.7
- refs/tags/10.0.0-next.8
- refs/tags/10.0.0-next.9
- refs/tags/10.0.0-rc.0
- refs/tags/10.0.0-rc.2
- refs/tags/10.0.0-rc.3
- refs/tags/10.0.0-rc.4
- refs/tags/10.0.0-rc.5
- refs/tags/10.0.0-rc.6
- refs/tags/10.0.1
- refs/tags/10.0.10
- refs/tags/10.0.11
- refs/tags/10.0.12
- refs/tags/10.0.13
- refs/tags/10.0.14
- refs/tags/10.0.2
- refs/tags/10.0.3
- refs/tags/10.0.4
- refs/tags/10.0.5
- refs/tags/10.0.6
- refs/tags/10.0.7
- refs/tags/10.0.8
- refs/tags/10.0.9
- refs/tags/10.1.0
- refs/tags/10.1.0-next.0
- refs/tags/10.1.0-next.1
- refs/tags/10.1.0-next.2
- refs/tags/10.1.0-next.3
- refs/tags/10.1.0-next.4
- refs/tags/10.1.0-next.5
- refs/tags/10.1.0-next.6
- refs/tags/10.1.0-next.7
- refs/tags/10.1.0-next.8
- refs/tags/10.1.0-rc.0
- refs/tags/10.1.1
- refs/tags/10.1.2
- refs/tags/10.1.3
- refs/tags/10.1.4
- refs/tags/10.1.5
- refs/tags/10.1.6
- refs/tags/10.2.0
- refs/tags/10.2.1
- refs/tags/10.2.2
- refs/tags/10.2.3
- refs/tags/10.2.4
- refs/tags/10.2.5
- refs/tags/11.0.0
- refs/tags/11.0.0-next.0
- refs/tags/11.0.0-next.1
- refs/tags/11.0.0-next.2
- refs/tags/11.0.0-next.3
- refs/tags/11.0.0-next.4
- refs/tags/11.0.0-next.5
- refs/tags/11.0.0-next.6
- refs/tags/11.0.0-rc.0
- refs/tags/11.0.0-rc.1
- refs/tags/11.0.0-rc.2
- refs/tags/11.0.0-rc.3
- refs/tags/11.0.1
- refs/tags/11.0.2
- refs/tags/11.0.3
- refs/tags/11.0.4
- refs/tags/11.0.5
- refs/tags/11.0.6
- refs/tags/11.0.7
- refs/tags/11.0.8
- refs/tags/11.0.9
- refs/tags/11.1.0
- refs/tags/11.1.0-next.0
- refs/tags/11.1.0-next.1
- refs/tags/11.1.0-next.2
- refs/tags/11.1.0-next.3
- refs/tags/11.1.0-next.4
- refs/tags/11.1.0-next.5
- refs/tags/11.1.0-rc.0
- refs/tags/11.1.1
- refs/tags/11.1.2
- refs/tags/11.2.0
- refs/tags/11.2.0-next.0
- refs/tags/11.2.0-next.1
- refs/tags/11.2.0-rc.0
- refs/tags/11.2.1
- refs/tags/11.2.10
- refs/tags/11.2.11
- refs/tags/11.2.12
- refs/tags/11.2.13
- refs/tags/11.2.14
- refs/tags/11.2.2
- refs/tags/11.2.3
- refs/tags/11.2.4
- refs/tags/11.2.5
- refs/tags/11.2.6
- refs/tags/11.2.7
- refs/tags/11.2.8
- refs/tags/11.2.9
- refs/tags/12.0.0-next.0
- refs/tags/12.0.0-next.1
- refs/tags/12.0.0-next.2
- refs/tags/12.0.0-next.3
- refs/tags/12.0.0-next.4
- refs/tags/12.0.0-next.5
- refs/tags/12.0.0-next.6
- refs/tags/12.0.0-next.7
- refs/tags/12.0.0-next.8
- refs/tags/12.0.0-next.9
- refs/tags/12.0.0-rc.0
- refs/tags/12.0.0-rc.1
- refs/tags/12.0.0-rc.2
- refs/tags/12.0.0-rc.3
- refs/tags/12.0.1
- refs/tags/12.0.2
- refs/tags/12.0.3
- refs/tags/12.0.4
- refs/tags/12.0.5
- refs/tags/12.1.0
- refs/tags/12.1.0-next.2
- refs/tags/12.1.0-next.3
- refs/tags/12.1.0-next.4
- refs/tags/12.1.0-next.5
- refs/tags/12.1.0-next.6
- refs/tags/12.1.1
- refs/tags/12.1.2
- refs/tags/12.1.3
- refs/tags/12.1.4
- refs/tags/12.1.5
- refs/tags/12.2.0
- refs/tags/12.2.0-next.0
- refs/tags/12.2.0-next.1
- refs/tags/12.2.0-next.2
- refs/tags/12.2.0-next.3
- refs/tags/12.2.0-rc.0
- refs/tags/12.2.1
- refs/tags/12.2.10
- refs/tags/12.2.11
- refs/tags/12.2.12
- refs/tags/12.2.13
- refs/tags/12.2.14
- refs/tags/12.2.15
- refs/tags/12.2.16
- refs/tags/12.2.17
- refs/tags/12.2.2
- refs/tags/12.2.3
- refs/tags/12.2.4
- refs/tags/12.2.5
- refs/tags/12.2.6
- refs/tags/12.2.7
- refs/tags/12.2.8
- refs/tags/12.2.9
- refs/tags/13.0.0
- refs/tags/13.0.0-next.0
- refs/tags/13.0.0-next.1
- refs/tags/13.0.0-next.10
- refs/tags/13.0.0-next.11
- refs/tags/13.0.0-next.12
- refs/tags/13.0.0-next.13
- refs/tags/13.0.0-next.14
- refs/tags/13.0.0-next.15
- refs/tags/13.0.0-next.2
- refs/tags/13.0.0-next.3
- refs/tags/13.0.0-next.4
- refs/tags/13.0.0-next.5
- refs/tags/13.0.0-next.6
- refs/tags/13.0.0-next.7
- refs/tags/13.0.0-next.8
- refs/tags/13.0.0-next.9
- refs/tags/13.0.0-rc.0
- refs/tags/13.0.0-rc.1
- refs/tags/13.0.0-rc.2
- refs/tags/13.0.0-rc.3
- refs/tags/13.0.1
- refs/tags/13.0.2
- refs/tags/13.0.3
- refs/tags/13.1.0
- refs/tags/13.1.0-next.0
- refs/tags/13.1.0-next.1
- refs/tags/13.1.0-next.2
- refs/tags/13.1.0-next.3
- refs/tags/13.1.1
- refs/tags/13.1.2
- refs/tags/13.1.3
- refs/tags/13.2.0
- refs/tags/13.2.0-next.0
- refs/tags/13.2.0-next.1
- refs/tags/13.2.0-next.2
- refs/tags/13.2.0-rc.0
- refs/tags/13.2.0-rc.1
- refs/tags/13.2.1
- refs/tags/13.2.2
- refs/tags/13.2.3
- refs/tags/13.2.4
- refs/tags/13.2.5
- refs/tags/13.2.6
- refs/tags/13.2.7
- refs/tags/13.3.0
- refs/tags/13.3.0-next.0
- refs/tags/13.3.0-rc.0
- refs/tags/13.3.1
- refs/tags/13.3.10
- refs/tags/13.3.11
- refs/tags/13.3.12
- refs/tags/13.3.2
- refs/tags/13.3.3
- refs/tags/13.3.4
- refs/tags/13.3.5
- refs/tags/13.3.6
- refs/tags/13.3.7
- refs/tags/13.3.8
- refs/tags/13.3.9
- refs/tags/13.4.0
- refs/tags/14.0.0
- refs/tags/14.0.0-next.0
- refs/tags/14.0.0-next.1
- refs/tags/14.0.0-next.10
- refs/tags/14.0.0-next.11
- refs/tags/14.0.0-next.12
- refs/tags/14.0.0-next.13
- refs/tags/14.0.0-next.14
- refs/tags/14.0.0-next.15
- refs/tags/14.0.0-next.16
- refs/tags/14.0.0-next.2
- refs/tags/14.0.0-next.3
- refs/tags/14.0.0-next.4
- refs/tags/14.0.0-next.5
- refs/tags/14.0.0-next.6
- refs/tags/14.0.0-next.7
- refs/tags/14.0.0-next.8
- refs/tags/14.0.0-next.9
- refs/tags/14.0.0-rc.0
- refs/tags/14.0.0-rc.1
- refs/tags/14.0.0-rc.2
- refs/tags/14.0.0-rc.3
- refs/tags/14.0.1
- refs/tags/14.0.2
- refs/tags/14.0.3
- refs/tags/14.0.4
- refs/tags/14.0.5
- refs/tags/14.0.6
- refs/tags/14.0.7
- refs/tags/14.1.0
- refs/tags/14.1.0-next.0
- refs/tags/14.1.0-next.1
- refs/tags/14.1.0-next.2
- refs/tags/14.1.0-next.3
- refs/tags/14.1.0-next.4
- refs/tags/14.1.0-rc.0
- refs/tags/14.1.1
- refs/tags/14.1.2
- refs/tags/14.1.3
- refs/tags/14.2.0
- refs/tags/14.2.0-next.0
- refs/tags/14.2.0-next.1
- refs/tags/14.2.0-rc.0
- refs/tags/14.2.1
- refs/tags/14.2.10
- refs/tags/14.2.11
- refs/tags/14.2.12
- refs/tags/14.2.2
- refs/tags/14.2.3
- refs/tags/14.2.4
- refs/tags/14.2.5
- refs/tags/14.2.6
- refs/tags/14.2.7
- refs/tags/14.2.8
- refs/tags/14.2.9
- refs/tags/14.3.0
- refs/tags/15.0.0
- refs/tags/15.0.0-next.0
- refs/tags/15.0.0-next.1
- refs/tags/15.0.0-next.2
- refs/tags/15.0.0-next.3
- refs/tags/15.0.0-next.4
- refs/tags/15.0.0-next.5
- refs/tags/15.0.0-next.6
- refs/tags/15.0.0-rc.0
- refs/tags/15.0.0-rc.1
- refs/tags/15.0.0-rc.2
- refs/tags/15.0.0-rc.3
- refs/tags/15.0.0-rc.4
- refs/tags/15.0.1
- refs/tags/15.0.2
- refs/tags/15.0.3
- refs/tags/15.0.4
- refs/tags/15.1.0
- refs/tags/15.1.0-next.0
- refs/tags/15.1.0-next.1
- refs/tags/15.1.0-next.2
- refs/tags/15.1.0-next.3
- refs/tags/15.1.0-rc.0
- refs/tags/15.1.1
- refs/tags/15.1.2
- refs/tags/15.1.3
- refs/tags/15.1.4
- refs/tags/15.1.5
- refs/tags/15.2.0
- refs/tags/15.2.0-next.0
- refs/tags/15.2.0-next.1
- refs/tags/15.2.0-next.2
- refs/tags/15.2.0-next.3
- refs/tags/15.2.0-next.4
- refs/tags/15.2.0-rc.0
- refs/tags/15.2.1
- refs/tags/15.2.10
- refs/tags/15.2.2
- refs/tags/15.2.3
- refs/tags/15.2.4
- refs/tags/15.2.5
- refs/tags/15.2.6
- refs/tags/15.2.7
- refs/tags/15.2.8
- refs/tags/15.2.9
- refs/tags/16.0.0
- refs/tags/16.0.0-next.0
- refs/tags/16.0.0-next.1
- refs/tags/16.0.0-next.2
- refs/tags/16.0.0-next.3
- refs/tags/16.0.0-next.4
- refs/tags/16.0.0-next.5
- refs/tags/16.0.0-next.6
- refs/tags/16.0.0-next.7
- refs/tags/16.0.0-rc.0
- refs/tags/16.0.0-rc.1
- refs/tags/16.0.0-rc.2
- refs/tags/16.0.0-rc.3
- refs/tags/16.0.0-rc.4
- refs/tags/16.0.1
- refs/tags/16.0.2
- refs/tags/16.0.3
- refs/tags/16.0.4
- refs/tags/16.0.5
- refs/tags/16.0.6
- refs/tags/16.1.0
- refs/tags/16.1.0-next.0
- refs/tags/16.1.0-next.1
- refs/tags/16.1.0-next.2
- refs/tags/16.1.0-next.3
- refs/tags/16.1.0-rc.0
- refs/tags/16.1.1
- refs/tags/16.1.2
- refs/tags/16.1.3
- refs/tags/16.1.4
- refs/tags/16.1.5
- refs/tags/16.1.6
- refs/tags/16.1.7
- refs/tags/16.1.8
- refs/tags/16.1.9
- refs/tags/16.2.0
- refs/tags/16.2.0-next.0
- refs/tags/16.2.0-next.1
- refs/tags/16.2.0-next.2
- refs/tags/16.2.0-next.3
- refs/tags/16.2.0-next.4
- refs/tags/16.2.0-rc.0
- refs/tags/16.2.1
- refs/tags/16.2.10
- refs/tags/16.2.11
- refs/tags/16.2.12
- refs/tags/16.2.2
- refs/tags/16.2.3
- refs/tags/16.2.4
- refs/tags/16.2.5
- refs/tags/16.2.6
- refs/tags/16.2.7
- refs/tags/16.2.8
- refs/tags/16.2.9
- refs/tags/17.0.0
- refs/tags/17.0.0-next.0
- refs/tags/17.0.0-next.1
- refs/tags/17.0.0-next.2
- refs/tags/17.0.0-next.3
- refs/tags/17.0.0-next.4
- refs/tags/17.0.0-next.5
- refs/tags/17.0.0-next.6
- refs/tags/17.0.0-next.7
- refs/tags/17.0.0-next.8
- refs/tags/17.0.0-rc.0
- refs/tags/17.0.0-rc.1
- refs/tags/17.0.0-rc.2
- refs/tags/17.0.0-rc.3
- refs/tags/17.0.1
- refs/tags/17.0.2
- refs/tags/17.0.3
- refs/tags/17.0.4
- refs/tags/17.0.5
- refs/tags/17.0.6
- refs/tags/17.0.7
- refs/tags/17.0.8
- refs/tags/17.0.9
- refs/tags/17.1.0
- refs/tags/17.1.0-next.0
- refs/tags/17.1.0-next.1
- refs/tags/17.1.0-next.2
- refs/tags/17.1.0-next.3
- refs/tags/17.1.0-next.4
- refs/tags/17.1.0-next.5
- refs/tags/17.1.0-rc.0
- refs/tags/17.1.1
- refs/tags/17.1.2
- refs/tags/17.1.3
- refs/tags/17.2.0
- refs/tags/17.2.0-next.0
- refs/tags/17.2.0-next.1
- refs/tags/17.2.0-rc.0
- refs/tags/17.2.0-rc.1
- refs/tags/17.2.1
- refs/tags/17.2.2
- refs/tags/17.2.3
- refs/tags/17.2.4
- refs/tags/17.3.0
- refs/tags/17.3.0-next.0
- refs/tags/17.3.0-next.1
- refs/tags/17.3.0-rc.0
- refs/tags/17.3.1
- refs/tags/17.3.2
- refs/tags/17.3.3
- refs/tags/17.3.4
- refs/tags/17.3.5
- refs/tags/18.0.0-next.0
- refs/tags/18.0.0-next.1
- refs/tags/18.0.0-next.2
- refs/tags/18.0.0-next.3
- refs/tags/18.0.0-next.4
- refs/tags/18.0.0-next.5
- refs/tags/2.0.0
- refs/tags/2.0.0-alpha.13
- refs/tags/2.0.0-alpha.14
- refs/tags/2.0.0-alpha.15
- refs/tags/2.0.0-alpha.16
- refs/tags/2.0.0-alpha.17
- refs/tags/2.0.0-alpha.18
- refs/tags/2.0.0-alpha.19
- refs/tags/2.0.0-alpha.20
- refs/tags/2.0.0-alpha.21
- refs/tags/2.0.0-alpha.22
- refs/tags/2.0.0-alpha.23
- refs/tags/2.0.0-alpha.24
- refs/tags/2.0.0-alpha.25
- refs/tags/2.0.0-alpha.26
- refs/tags/2.0.0-alpha.27
- refs/tags/2.0.0-alpha.28
- refs/tags/2.0.0-alpha.29
- refs/tags/2.0.0-alpha.30
- refs/tags/2.0.0-alpha.31
- refs/tags/2.0.0-alpha.32
- refs/tags/2.0.0-alpha.33
- refs/tags/2.0.0-alpha.34
- refs/tags/2.0.0-alpha.35
- refs/tags/2.0.0-alpha.36
- refs/tags/2.0.0-alpha.37
- refs/tags/2.0.0-alpha.38
- refs/tags/2.0.0-alpha.39
- refs/tags/2.0.0-alpha.40
- refs/tags/2.0.0-alpha.41
- refs/tags/2.0.0-alpha.42
- refs/tags/2.0.0-alpha.44
- refs/tags/2.0.0-alpha.45
- refs/tags/2.0.0-alpha.46
- refs/tags/2.0.0-alpha.47
- refs/tags/2.0.0-alpha.48
- refs/tags/2.0.0-alpha.49
- refs/tags/2.0.0-alpha.50
- refs/tags/2.0.0-alpha.51
- refs/tags/2.0.0-alpha.52
- refs/tags/2.0.0-alpha.53
- refs/tags/2.0.0-alpha.54
- refs/tags/2.0.0-alpha.55
- refs/tags/2.0.0-beta.0
- refs/tags/2.0.0-beta.1
- refs/tags/2.0.0-beta.10
- refs/tags/2.0.0-beta.11
- refs/tags/2.0.0-beta.12
- refs/tags/2.0.0-beta.13
- refs/tags/2.0.0-beta.14
- refs/tags/2.0.0-beta.15
- refs/tags/2.0.0-beta.16
- refs/tags/2.0.0-beta.17
- refs/tags/2.0.0-beta.2
- refs/tags/2.0.0-beta.3
- refs/tags/2.0.0-beta.4
- refs/tags/2.0.0-beta.5
- refs/tags/2.0.0-beta.6
- refs/tags/2.0.0-beta.7
- refs/tags/2.0.0-beta.8
- refs/tags/2.0.0-beta.9
- refs/tags/2.0.0-build.006a96d.js
- refs/tags/2.0.0-build.00822c3.dart
- refs/tags/2.0.0-build.00822c3.js
- refs/tags/2.0.0-build.015faee.dart
- refs/tags/2.0.0-build.015faee.js
- refs/tags/2.0.0-build.016ab31.dart
- refs/tags/2.0.0-build.016ab31.js
- refs/tags/2.0.0-build.019cb41.dart
- refs/tags/2.0.0-build.019cb41.js
- refs/tags/2.0.0-build.01ba94b.dart
- refs/tags/2.0.0-build.01ba94b.js
- refs/tags/2.0.0-build.0206d72.dart
- refs/tags/2.0.0-build.0206d72.js
- refs/tags/2.0.0-build.020ce32.dart
- refs/tags/2.0.0-build.020ce32.js
- refs/tags/2.0.0-build.0290362.dart
- refs/tags/2.0.0-build.0290362.js
- refs/tags/2.0.0-build.03823d4.dart
- refs/tags/2.0.0-build.03823d4.js
- refs/tags/2.0.0-build.039ed3b.dart
- refs/tags/2.0.0-build.039ed3b.js
- refs/tags/2.0.0-build.03e3035.dart
- refs/tags/2.0.0-build.03e3035.js
- refs/tags/2.0.0-build.041c599.dart
- refs/tags/2.0.0-build.041c599.js
- refs/tags/2.0.0-build.046758c.dart
- refs/tags/2.0.0-build.046758c.js
- refs/tags/2.0.0-build.0544e07.dart
- refs/tags/2.0.0-build.0544e07.js
- refs/tags/2.0.0-build.059e09c.dart
- refs/tags/2.0.0-build.059e09c.js
- refs/tags/2.0.0-build.05fa1fd.dart
- refs/tags/2.0.0-build.05fa1fd.js
- refs/tags/2.0.0-build.05fb269.dart
- refs/tags/2.0.0-build.05fb269.js
- refs/tags/2.0.0-build.0614797.dart
- refs/tags/2.0.0-build.0614797.js
- refs/tags/2.0.0-build.065ac93.dart
- refs/tags/2.0.0-build.065ac93.js
- refs/tags/2.0.0-build.06b2aa1.dart
- refs/tags/2.0.0-build.06b2aa1.js
- refs/tags/2.0.0-build.06d076a.dart
- refs/tags/2.0.0-build.06d076a.js
- refs/tags/2.0.0-build.06e32eb.dart
- refs/tags/2.0.0-build.06e32eb.js
- refs/tags/2.0.0-build.070d818.dart
- refs/tags/2.0.0-build.070d818.js
- refs/tags/2.0.0-build.071165f.dart
- refs/tags/2.0.0-build.071165f.js
- refs/tags/2.0.0-build.074075d.dart
- refs/tags/2.0.0-build.074075d.js
- refs/tags/2.0.0-build.080469f.dart
- refs/tags/2.0.0-build.080469f.js
- refs/tags/2.0.0-build.0815a77.dart
- refs/tags/2.0.0-build.0815a77.js
- refs/tags/2.0.0-build.093b794.dart
- refs/tags/2.0.0-build.093b794.js
- refs/tags/2.0.0-build.0a3a17f.dart
- refs/tags/2.0.0-build.0a3a17f.js
- refs/tags/2.0.0-build.0a44fc6.dart
- refs/tags/2.0.0-build.0a44fc6.js
- refs/tags/2.0.0-build.0ae7775.dart
- refs/tags/2.0.0-build.0ae7775.js
- refs/tags/2.0.0-build.0b6e75a.dart
- refs/tags/2.0.0-build.0b6e75a.js
- refs/tags/2.0.0-build.0c9596a.dart
- refs/tags/2.0.0-build.0c9596a.js
- refs/tags/2.0.0-build.0cdf280.dart
- refs/tags/2.0.0-build.0cdf280.js
- refs/tags/2.0.0-build.0db0252.dart
- refs/tags/2.0.0-build.0db0252.js
- refs/tags/2.0.0-build.0df8bc4.dart
- refs/tags/2.0.0-build.0df8bc4.js
- refs/tags/2.0.0-build.0ec9ccf.dart
- refs/tags/2.0.0-build.0ec9ccf.js
- refs/tags/2.0.0-build.0ef6809.dart
- refs/tags/2.0.0-build.0ef6809.js
- refs/tags/2.0.0-build.0f85b36.dart
- refs/tags/2.0.0-build.0f85b36.js
- refs/tags/2.0.0-build.0f8e40b.dart
- refs/tags/2.0.0-build.0f8e40b.js
- refs/tags/2.0.0-build.116015b.dart
- refs/tags/2.0.0-build.116015b.js
- refs/tags/2.0.0-build.125fa38.dart
- refs/tags/2.0.0-build.125fa38.js
- refs/tags/2.0.0-build.132829e.dart
- refs/tags/2.0.0-build.132829e.js
- refs/tags/2.0.0-build.13e6354.dart
- refs/tags/2.0.0-build.13e6354.js
- refs/tags/2.0.0-build.140ce9f.dart
- refs/tags/2.0.0-build.140ce9f.js
- refs/tags/2.0.0-build.1417e12.dart
- refs/tags/2.0.0-build.1417e12.js
- refs/tags/2.0.0-build.15f5f27.dart
- refs/tags/2.0.0-build.15f5f27.js
- refs/tags/2.0.0-build.1607ef8.dart
- refs/tags/2.0.0-build.1607ef8.js
- refs/tags/2.0.0-build.16d9c60.dart
- refs/tags/2.0.0-build.16d9c60.js
- refs/tags/2.0.0-build.16e74cf.dart
- refs/tags/2.0.0-build.16e74cf.js
- refs/tags/2.0.0-rc.0
- refs/tags/2.0.0-rc.1
- refs/tags/2.0.0-rc.2
- refs/tags/2.0.0-rc.3
- refs/tags/2.0.0-rc.4
- refs/tags/2.0.0-rc.5
- refs/tags/2.0.0-rc.6
- refs/tags/2.0.0-rc.7
- refs/tags/2.0.1
- refs/tags/2.0.2
- refs/tags/2.1.0
- refs/tags/2.1.0-beta.0
- refs/tags/2.1.0-rc.0
- refs/tags/2.1.1
- refs/tags/2.1.2
- refs/tags/2.2.0
- refs/tags/2.2.0-beta.0
- refs/tags/2.2.0-beta.1
- refs/tags/2.2.0-rc.0
- refs/tags/2.2.1
- refs/tags/2.2.2
- refs/tags/2.2.3
- refs/tags/2.2.4
- refs/tags/2.3.0
- refs/tags/2.3.0-beta.0
- refs/tags/2.3.0-beta.1
- refs/tags/2.3.0-rc.0
- refs/tags/2.3.1
- refs/tags/2.4.0
- refs/tags/2.4.0-marker
- refs/tags/2.4.1
- refs/tags/2.4.10
- refs/tags/2.4.2
- refs/tags/2.4.3
- refs/tags/2.4.4
- refs/tags/2.4.5
- refs/tags/2.4.6
- refs/tags/2.4.7
- refs/tags/2.4.8
- refs/tags/2.4.9
- refs/tags/4.0.0
- refs/tags/4.0.0-beta.0
- refs/tags/4.0.0-beta.1
- refs/tags/4.0.0-beta.2
- refs/tags/4.0.0-beta.3
- refs/tags/4.0.0-beta.4
- refs/tags/4.0.0-beta.5
- refs/tags/4.0.0-beta.6
- refs/tags/4.0.0-beta.7
- refs/tags/4.0.0-beta.8
- refs/tags/4.0.0-rc.1
- refs/tags/4.0.0-rc.2
- refs/tags/4.0.0-rc.3
- refs/tags/4.0.0-rc.4
- refs/tags/4.0.0-rc.5
- refs/tags/4.0.0-rc.6
- refs/tags/4.0.1
- refs/tags/4.0.2
- refs/tags/4.0.3
- refs/tags/4.1.0
- refs/tags/4.1.0-beta.0
- refs/tags/4.1.0-beta.1
- refs/tags/4.1.0-rc.0
- refs/tags/4.1.1
- refs/tags/4.1.2
- refs/tags/4.1.3
- refs/tags/4.2.0
- refs/tags/4.2.0-beta.0
- refs/tags/4.2.0-beta.1
- refs/tags/4.2.0-rc.0
- refs/tags/4.2.0-rc.1
- refs/tags/4.2.0-rc.2
- refs/tags/4.2.1
- refs/tags/4.2.2
- refs/tags/4.2.3
- refs/tags/4.2.4
- refs/tags/4.2.5
- refs/tags/4.2.6
- refs/tags/4.3.0
- refs/tags/4.3.0-beta.0
- refs/tags/4.3.0-beta.1
- refs/tags/4.3.0-rc.0
- refs/tags/4.3.1
- refs/tags/4.3.2
- refs/tags/4.3.3
- refs/tags/4.3.4
- refs/tags/4.3.5
- refs/tags/4.3.6
- refs/tags/4.4.0
- refs/tags/4.4.0-RC.0
- refs/tags/4.4.1
- refs/tags/4.4.2
- refs/tags/4.4.3
- refs/tags/4.4.4
- refs/tags/4.4.5
- refs/tags/4.4.6
- refs/tags/4.4.7
- refs/tags/5.0.0
- refs/tags/5.0.0-beta.0
- refs/tags/5.0.0-beta.1
- refs/tags/5.0.0-beta.2
- refs/tags/5.0.0-beta.3
- refs/tags/5.0.0-beta.4
- refs/tags/5.0.0-beta.5
- refs/tags/5.0.0-beta.6
- refs/tags/5.0.0-beta.7
- refs/tags/5.0.0-rc.0
- refs/tags/5.0.0-rc.1
- refs/tags/5.0.0-rc.2
- refs/tags/5.0.0-rc.3
- refs/tags/5.0.0-rc.4
- refs/tags/5.0.0-rc.5
- refs/tags/5.0.0-rc.6
- refs/tags/5.0.0-rc.7
- refs/tags/5.0.0-rc.8
- refs/tags/5.0.0-rc.9
- refs/tags/5.0.1
- refs/tags/5.0.2
- refs/tags/5.0.3
- refs/tags/5.0.4
- refs/tags/5.0.5
- refs/tags/5.1.0
- refs/tags/5.1.0-beta.0
- refs/tags/5.1.0-beta.1
- refs/tags/5.1.0-beta.2
- refs/tags/5.1.0-rc.0
- refs/tags/5.1.0-rc.1
- refs/tags/5.1.1
- refs/tags/5.1.2
- refs/tags/5.1.3
- refs/tags/5.2.0
- refs/tags/5.2.0-beta.0
- refs/tags/5.2.0-beta.1
- refs/tags/5.2.0-rc.0
- refs/tags/5.2.1
- refs/tags/5.2.10
- refs/tags/5.2.11
- refs/tags/5.2.2
- refs/tags/5.2.3
- refs/tags/5.2.4
- refs/tags/5.2.5
- refs/tags/5.2.6
- refs/tags/5.2.7
- refs/tags/5.2.8
- refs/tags/5.2.9
- refs/tags/6.0.0
- refs/tags/6.0.0-beta.0
- refs/tags/6.0.0-beta.1
- refs/tags/6.0.0-beta.2
- refs/tags/6.0.0-beta.3
- refs/tags/6.0.0-beta.4
- refs/tags/6.0.0-beta.5
- refs/tags/6.0.0-beta.6
- refs/tags/6.0.0-beta.7
- refs/tags/6.0.0-beta.8
- refs/tags/6.0.0-rc.0
- refs/tags/6.0.0-rc.1
- refs/tags/6.0.0-rc.2
- refs/tags/6.0.0-rc.3
- refs/tags/6.0.0-rc.4
- refs/tags/6.0.0-rc.5
- refs/tags/6.0.0-rc.6
- refs/tags/6.0.1
- refs/tags/6.0.2
- refs/tags/6.0.3
- refs/tags/6.0.4
- refs/tags/6.0.5
- refs/tags/6.0.6
- refs/tags/6.0.7
- refs/tags/6.0.8
- refs/tags/6.0.9
- refs/tags/6.1.0
- refs/tags/6.1.0-beta.0
- refs/tags/6.1.0-beta.1
- refs/tags/6.1.0-beta.2
- refs/tags/6.1.0-beta.3
- refs/tags/6.1.0-rc.0
- refs/tags/6.1.0-rc.3
- refs/tags/6.1.1
- refs/tags/6.1.10
- refs/tags/6.1.2
- refs/tags/6.1.3
- refs/tags/6.1.4
- refs/tags/6.1.5
- refs/tags/6.1.6
- refs/tags/6.1.7
- refs/tags/6.1.8
- refs/tags/6.1.9
- refs/tags/7.0.0
- refs/tags/7.0.0-beta.0
- refs/tags/7.0.0-beta.1
- refs/tags/7.0.0-beta.2
- refs/tags/7.0.0-beta.3
- refs/tags/7.0.0-beta.4
- Branches list truncated to 999 entries, 178 were omitted.
- 12.0.0
- Releases list truncated to 1 entries, 8 were omitted.
Take a new snapshot of a software origin
If the archived software origin currently browsed is not synchronized with its upstream version (for instance when new commits have been issued), you can explicitly request Software Heritage to take a new snapshot of it.
Use the form below to proceed. Once a request has been submitted and accepted, it will be processed as soon as possible. You can then check its processing state by visiting this dedicated page.![swh spinner](/static/img/swh-spinner.gif)
Processing "take a new snapshot" request ...
Permalinks
To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.
Revision | Author | Date | Message | Commit Date |
---|---|---|---|---|
e6ee7c2 | Joey Perrott | 02 September 2020, 20:06:00 UTC | release: cut the v11.0.0-next.0 release | 02 September 2020, 20:06:00 UTC |
54687f7 | Joey Perrott | 02 September 2020, 19:51:31 UTC | release: cut the v10.1.0 release | 02 September 2020, 20:02:58 UTC |
59c234c | Joey Perrott | 28 August 2020, 22:45:48 UTC | build: add configuration for the caretaker command (#38601) Add configuration information for the new caretaker command PR Close #38601 | 01 September 2020, 20:05:32 UTC |
a6f3cd9 | Joey Perrott | 26 August 2020, 20:49:43 UTC | feat(dev-infra): check services/status information of the repository for caretaker (#38601) The angular team relies on a number of services for hosting code, running CI, etc. This tool allows for checking the operational status of all services at once as well as the current state of the repository with respect to merge and triage ready issues and prs. PR Close #38601 | 01 September 2020, 20:05:30 UTC |
d9fea85 | Sonu Kapoor | 05 August 2020, 22:32:01 UTC | fix(forms): ensure to emit `statusChanges` on subsequent value update/validations (#38354) This commit ensures that the `updateValueAndValidity` method takes the `asyncValidator` into consideration to emit on the `statusChanges` observables. This is necessary so that any subsequent changes are emitted properly to any subscribers. Closes #20424 Closes #14542 BREAKING CHANGE: Previously if FormControl, FormGroup and FormArray class instances had async validators defined at initialization time, the status change event was not emitted once async validator completed. After this change the status event is emitted into the `statusChanges` observable. If your code relies on the old behavior, you can filter/ignore this additional status change event. PR Close #38354 | 01 September 2020, 17:36:31 UTC |
03dbcc7 | Joey Perrott | 01 September 2020, 17:35:41 UTC | build: update the package.json to 11.0.0-next.0 (#38667) Update package.json version to reflect master targetting the next major release train. | 01 September 2020, 17:35:41 UTC |
c142b07 | George Kalpakas | 31 August 2020, 14:55:26 UTC | build: upgrade cli command docs sources to 32391604b (#38652) Updating [angular#master](https://github.com/angular/angular/tree/master) from [cli-builds#master](https://github.com/angular/cli-builds/tree/master). ## Relevant changes in [commit range](https://github.com/angular/cli-builds/compare/ef770f1cb...32391604b): **Modified** - help/build.json - help/generate.json PR Close #38652 | 01 September 2020, 16:03:25 UTC |
71acf9d | David Shevitz | 05 August 2020, 21:23:22 UTC | docs: Restructure table of contents to provide a more streamlined experience. (#38353) PR Close #38353 | 31 August 2020, 23:16:54 UTC |
f5a148b | crisbeto | 26 August 2020, 14:21:49 UTC | fix(compiler): incorrectly inferring namespace for HTML nodes inside SVG (#38477) The HTML parser gets an element's namespace either from the tag name (e.g. `<svg:rect>`) or from its parent element `<svg><rect></svg>`) which breaks down when an element is inside of an SVG `foreignElement`, because foreign elements allow nodes from a different namespace to be inserted into an SVG. These changes add another flag to the tag definitions which tells child nodes whether to try to inherit their namespaces from their parents. It also adds a definition for `foreignObject` with the new flag, allowing elements placed inside it to infer their namespaces instead. Fixes #37218. PR Close #38477 | 31 August 2020, 20:25:38 UTC |
4f28192 | Joey Perrott | 28 August 2020, 18:45:01 UTC | refactor(dev-infra): use a mixin to require a `github-token` for an ng-dev command (#38630) Creates a mixin for requiring a github token to be provided to a command. This mixin allows for a centralized management of the requirement and handling of the github-token. PR Close #38630 | 31 August 2020, 19:32:27 UTC |
0fc2bef | Sonu Kapoor | 24 August 2020, 21:36:57 UTC | docs(service-worker): add links to service worker communication guide (#36847) PR Close #36847 | 31 August 2020, 18:41:16 UTC |
f5d1e9a | Sonu Kapoor | 02 August 2020, 23:31:01 UTC | docs(service-worker): add section to explain unrecoverable state (#36847) PR Close #36847 | 31 August 2020, 18:41:13 UTC |
036a2fa | Sonu Kapoor | 28 April 2020, 11:45:18 UTC | feat(service-worker): add `UnrecoverableStateError` (#36847) In several occasions it has been observed when the browser has evicted eagerly cached assets from the cache and which can also not be found on the server anymore. This can lead to broken state where only parts of the application will load and others will fail. This commit fixes this issue by checking for the missing asset in the cache and on the server. If this condition is true, the broken client will be notified about the current state through the `UnrecoverableStateError`. Closes #36539 PR Close #36847 | 31 August 2020, 18:41:11 UTC |
5be4edf | Sonu Kapoor | 28 July 2020, 12:41:15 UTC | fix(service-worker): fix condition to check for a cache-busted request (#36847) Previously, the condition to make the cache busted was executing although the network request was successful. However, this is not valid. The cache should only be marked as busted when the request failed. This commit fixes the invalid condition. PR Close #36847 | 31 August 2020, 18:41:09 UTC |
38d6596 | Sonu Kapoor | 31 July 2020, 12:40:48 UTC | test(service-worker): add helper function remove individual cache (#36847) This commit adds a helper method to remove individual cached items. PR Close #36847 | 31 August 2020, 18:41:07 UTC |
0a7a5e3 | Dwayne Hinterlang | 30 August 2020, 22:50:16 UTC | docs: Remove confusion between do/avoid templates (#38647) PR Close #38647 | 31 August 2020, 17:25:16 UTC |
d5fabc3 | Juan José Arboleda | 30 August 2020, 05:35:22 UTC | refactor(forms): remove extra space in error message (#38637) Remove extra whitespace at package/forms/model.ts error messages PR Close #38637 | 31 August 2020, 16:31:55 UTC |
ebc0e46 | Paul Gschwendtner | 28 August 2020, 00:07:00 UTC | refactor(dev-infra): improve error message for unexpected version branches (#38622) Currently the merge script default branch configuration throws an error if an unexpected version branch is discovered. The error right now assumes to much knowledge of the logic and the document outlining the release trains conceptually. We change it to something more easy to understand that doesn't require full understanding of the versioning/labeling/branching document that has been created for the Angular organization. PR Close #38622 | 31 August 2020, 16:29:58 UTC |
3487b54 | Joey Perrott | 26 August 2020, 18:38:19 UTC | feat(dev-infra): write outputs of command runs to ng-dev log file (#38599) Creates infrastructure to write outputs of command runs to ng-dev log file. Additionally, on commands which fail with an exit code greater than 1, an error log file is created with the posix timestamp of the commands run time as an identifier. PR Close #38599 | 31 August 2020, 15:47:15 UTC |
52c7a4b | Akash | 15 August 2020, 20:22:36 UTC | docs: ng generate module command doc change (#38480) PR Close #38480 | 31 August 2020, 15:43:19 UTC |
827ba05 | GavinMK | 28 August 2020, 20:59:41 UTC | docs: remove first person and space in CircleCI in the testing guide. (#38631) PR Close #38631 | 31 August 2020, 15:42:04 UTC |
b2857b4 | narmit | 30 August 2020, 16:54:11 UTC | docs: remove double space in start-data. (#38642) PR Close #38642 | 31 August 2020, 15:41:30 UTC |
5d5caf2 | Da-Woon Chung | 30 August 2020, 18:21:21 UTC | docs: fix broken markdown in start/start-data (#38644) PR Close #38644 | 31 August 2020, 15:40:57 UTC |
c1bc070 | Juan José Arboleda | 30 August 2020, 06:18:00 UTC | refactor(dev-infra): remove `style` type from commit style guide (#38639) The `style` commit type is not part of the commit parser config, it should be removed from the documentation. PR Close #38639 | 31 August 2020, 15:40:14 UTC |
930eeaf | Joey Perrott | 28 August 2020, 17:21:28 UTC | fix(bazel): fix integration test for bazel building (#38629) Update the API used to request a timestamp. The previous API we relied on for this test application, worldclockapi.com no longer serves times and simply 403s on all requests. This caused our test to timeout as the HTTP request did not handle a failure case. By moving to a new api, the HTTP request responds as expected and timeouts are corrected as there is not longer a pending microtask in the queue. PR Close #38629 | 28 August 2020, 18:16:40 UTC |
2dd29fb | Joey Perrott | 27 August 2020, 23:30:59 UTC | build: update ng-dev merge config to reflect new label updates (#38620) Update the ng-dev merge configuration to reflect the new label updates PR Close #38620 | 28 August 2020, 15:03:21 UTC |
9613660 | Joey Perrott | 27 August 2020, 22:06:22 UTC | ci: update angular robot to be based on new label updates (#38620) Update the angular robot configuration to reflect the new label updates PR Close #38620 | 28 August 2020, 15:03:19 UTC |
c0523fc | Andrew Kushnir | 25 August 2020, 23:17:57 UTC | docs(forms): exclude internal-only methods and properties from docs (#38583) Prior to this commit, a lot of internal-only class properties and methods (such as `ngOnChanges`) of the Forms package directives were exposed on angular.io website. These fields are not expected to be called externally (they are used/invoked by framework only), since they are part of internal implementations of the following interfaces: * Angular lifecycle hook interfaces * ControlValueAccessor interface * Validator interface Having these internal-only fields in docs creates unnecessary noise on directive detail pages. This commit adds the `@nodoc` annotation to these properties and methods to keep fields in the golden files, but hide them in docs. PR Close #38583 | 27 August 2020, 23:39:38 UTC |
de1cffb | Joey Perrott | 27 August 2020, 22:59:52 UTC | build: update the package.json to 10.2.0-next.0 When the rc was cut for 10.1.0-rc.0, the package.json for master should be updated to to the following next version, in this case 10.2.0-next.0. | 27 August 2020, 22:59:52 UTC |
31f4557 | Paul Gschwendtner | 24 August 2020, 13:00:13 UTC | ci: update github robot to reflect new target labels (#38428) Updates the Github robot to reflect the updated target labels that are used as part of the canonical versioning and labeling for the Angular organization. PR Close #38428 | 27 August 2020, 21:52:44 UTC |
7723bfd | Paul Gschwendtner | 24 July 2020, 15:54:44 UTC | build: use new labeling and branching in merge script (#38428) We introduced a new shared configuration for merge script labels that follow the proposal of: https://docs.google.com/document/d/197kVillDwx-RZtSVOBtPb4BBIAw0E9RT3q3v6DZkykU These label semantics and the branching are set up for the Angular framework with this commit. The goal is that labeling and merging is consistent between all Angular projects and that clear rules are defined for branching. This was previously not the case. PR Close #38428 | 27 August 2020, 21:52:42 UTC |
e8ea839 | Joey Perrott | 10 August 2020, 19:46:56 UTC | docs: update docs to reflect new PR targeting methods for release trains (#38401) As part of the migration to a common strategy/method for branching and releasing across the main angular repositories, updates need to be made to the documentation. These changes reflect the updates made and is based on the following document which describes the merging label expectations: https://docs.google.com/document/d/197kVillDwx-RZtSVOBtPb4BBIAw0E9RT3q3v6DZkykU PR Close #38401 | 27 August 2020, 21:52:04 UTC |
90cec40 | Joey Perrott | 27 August 2020, 17:33:01 UTC | build: bump to lastest sha of angular/dev-infra's lock-closed action (#38615) Update to the latest lock-closed action to fix the link which is used. PR Close #38615 | 27 August 2020, 17:58:29 UTC |
4036281 | Keen Yee Liau | 17 July 2020, 21:34:48 UTC | docs: Update contributor info for kyliau (#38125) Added twitter handle, website, and a short bio. PR Close #38125 | 27 August 2020, 17:39:30 UTC |
164cd27 | Sonu Kapoor | 22 August 2020, 10:16:17 UTC | test(docs-infra): add commands to run the unit tests (#34537) This commit adds the necessary custom commands to run the tests in a node environment. PR Close #34537 | 27 August 2020, 16:05:59 UTC |
fedcfec | Sonu Kapoor | 22 August 2020, 10:16:16 UTC | test(docs-infra): add missing tests for obserables and promises (#34537) This commit adds missing tests for obserables and promises which are both stand-alone mini-apps. PR Close #34537 | 27 August 2020, 16:05:56 UTC |
618cb32 | Sam Vloeberghs | 15 July 2020, 14:17:26 UTC | docs: add Sam Vloeberghs to GDE list (#37970) PR Close #37970 | 26 August 2020, 19:52:56 UTC |
4aee008 | George Kalpakas | 22 August 2020, 18:41:49 UTC | docs: remove outdated CircleCI link from `DEVELOPER.md` (#38554) CircleCI updated their UI and now the URLs are different (and cannot be constructed based on the build number alone). This commit removes a reference of the obsolete URL pattern to avoid confusion. Example old URL: https://circleci.com/gh/angular/angular/<build-number>#artifacts Example new URL: https://app.circleci.com/pipelines/github/angular/angular/<build-number>/workflows/<workflow-id>/jobs/<job-id>/artifacts PR Close #38554 | 26 August 2020, 19:52:26 UTC |
0681a20 | Sonu Kapoor | 26 August 2020, 13:47:46 UTC | fix(docs-infra): add guard to not render anchor link for private api (#38589) This commit adds a guard that prevents rendering anchor links for private api's. Closes #38564 PR Close #38589 | 26 August 2020, 19:51:04 UTC |
fb06903 | Misko Hevery | 26 August 2020, 18:57:57 UTC | release: cut the v10.1.0-rc.0 release | 26 August 2020, 18:57:57 UTC |
ecc6fd0 | Misko Hevery | 26 August 2020, 18:51:32 UTC | docs: release notes for the v10.0.14 release | 26 August 2020, 18:51:32 UTC |
80cab26 | Aristeidis Bampakos | 20 March 2020, 21:45:26 UTC | docs: Minor fixes in NgModules section (#36177) Apply minor fixes to various guides of the NgModules section PR Close #36177 | 25 August 2020, 22:24:02 UTC |
841dfa6 | Aristeidis Bampakos | 25 August 2020, 13:02:18 UTC | docs: typo fixes in the component testing scenarios guide (#38574) Fixed some typos and removed a warning about limitation of the `fakeAsync` that is already mentioned in a helpful alert PR Close #38574 | 25 August 2020, 22:16:53 UTC |
f0af387 | Pete Bacon Darwin | 25 August 2020, 12:51:06 UTC | fix(localize): ensure required XLIFF parameters are serialized (#38575) When extracting i18n messages from source code, the XLIFF serializers were missing some required attributes on the `<file>` element. This commit re-introduces the `original` property to each of XLIFF 1.2 and 2.0 serializers. Also it adds in the required `id` property for the XLIFF 2.0 seralizer. Fixes #38570 PR Close #38575 | 25 August 2020, 22:14:19 UTC |
14e90be | Pete Bacon Darwin | 19 August 2020, 16:09:47 UTC | fix(localize): render text of extracted placeholders (#38536) Formats like XLIFF allow the text of the original source to be included as metadata. This commit fixes the message extractor to also render this text when available. PR Close #38536 | 25 August 2020, 22:13:23 UTC |
db3a21b | Pete Bacon Darwin | 19 August 2020, 14:31:55 UTC | refactor(localize): add placeholder locations in extracted messages (#38536) Some translation file formats would like to be able to render the text of placeholders taken from the original source files. This commit adds this information to the extracted messages so that it can be used in translation file serializers. PR Close #38536 | 25 August 2020, 22:13:20 UTC |
b8351f3 | Pete Bacon Darwin | 19 August 2020, 13:53:56 UTC | refactor(localize): ensure that translate plugin exceptions are not swallowed (#38536) Previously, exceptions that were not `BabelParseError`s were just ignored. Such exceptions are most likely programming errors in the package. They are now re-thrown to ensure that the error is not hidden. PR Close #38536 | 25 August 2020, 22:13:17 UTC |
81053d3 | Pete Bacon Darwin | 19 August 2020, 13:38:44 UTC | refactor(localize): run the translate plugin tests in mock FileSystems (#38536) This commit is a tidy up of the translate plugin unit tests, but also ensures that the tests are run in the context of a mock FileSystem. This ensures that the tests are resilient to future refactors of the plugins that will require a FileSystem to be initialized. PR Close #38536 | 25 August 2020, 22:13:15 UTC |
bdba1a0 | Pete Bacon Darwin | 19 August 2020, 11:25:10 UTC | refactor(localize): include text in original location of extracted messages (#38536) When extracting messages, source-mapping information is used to find the original location of the message being extracted. This commit will now include the text from the original source in the message location so that it can be serialized into the translation file. PR Close #38536 | 25 August 2020, 22:13:12 UTC |
23f855b | Pete Bacon Darwin | 19 August 2020, 11:21:10 UTC | refactor(localize): allow ParsedMessage to hold additional location data (#38536) In preparation for supporting `equiv-text` placeholder information in extracted translation files, this commit adds these optional properties to the `ParsedMessage` interface and updates `parseMessage()` to be able to store them. PR Close #38536 | 25 August 2020, 22:13:09 UTC |
94a3e0e | Aristeidis Bampakos | 25 August 2020, 10:07:20 UTC | docs: add correct path for karma.conf.js file (#38571) In the latest Angular CLI versions, the `karma.conf.js` file resides in the root folder of the Angular CLI project. PR Close #38571 | 25 August 2020, 16:56:32 UTC |
9cbde86 | Aristeidis Bampakos | 25 August 2020, 11:02:42 UTC | docs: fix typo in the testing component basics guide (#38573) The guide ends with a sentence that implies there are more tests following the end of the guide. PR Close #38573 | 25 August 2020, 16:55:59 UTC |
18e474f | Dmitrii Kanatnikov | 05 August 2020, 19:42:50 UTC | fix(zone.js): zone.js toString patch should check typeof Promise is function (#38350) Close #38361 zone.js monkey patch toString, and check the instance is `Promise` or not by using `instanceof Promise`, sometimes when Promise is not available, the `instanceof` operation fails and throw `TypeError: Right-hand side of 'instanceof' is not an object` this PR check `typeof Promise` equals to function or not to prevent the error. PR Close #38350 | 25 August 2020, 16:51:50 UTC |
cb3db0d | Misko Hevery | 24 August 2020, 22:53:55 UTC | release: clean up changelog | 24 August 2020, 22:53:55 UTC |
d36828a | Misko Hevery | 24 August 2020, 22:38:13 UTC | release: cut the v10.1.0-next.8 release | 24 August 2020, 22:38:13 UTC |
f18e2d5 | Misko Hevery | 24 August 2020, 22:31:03 UTC | docs: release notes for the v10.0.12 release | 24 August 2020, 22:31:03 UTC |
375f0a6 | Alan Agius | 19 August 2020, 07:47:05 UTC | build: update tslint to 6.1.3 (#38076) This version supports TypeScript 4.0 PR Close #38076 | 24 August 2020, 20:07:05 UTC |
281b647 | Alan Agius | 16 July 2020, 13:59:48 UTC | refactor(compiler-cli): remove usage of `ts.updateIdentifier` (#38076) With Typescript 4, `ts.updateIdentifier` is no longer available. Calling `ts.updateIdentifier` used to return the same node when `typeArguments` was `undefined` because `node.typeArguments` was also `undefined`. Relevant TS code: ```js function updateIdentifier(node, typeArguments) { return node.typeArguments !== typeArguments ? updateNode(createIdentifier(ts.idText(node), typeArguments), node) : node; } ``` PR Close #38076 | 24 August 2020, 20:07:02 UTC |
0fc44e0 | Alan Agius | 15 July 2020, 10:21:04 UTC | feat(compiler-cli): add support for TypeScript 4.0 (#38076) With this change we add support for TypeScript 4.0 PR Close #38076 | 24 August 2020, 20:06:59 UTC |
201a546 | Sonu Kapoor | 29 June 2020, 12:17:13 UTC | perf(forms): use internal `ngDevMode` flag to tree-shake error messages in prod builds (#37821) This commit adds a guard before throwing any forms errors. This will tree-shake error messages which cannot be minified. It should also help to reduce the bundle size of the `forms` package in production by ~20%. Closes #37697 PR Close #37821 | 24 August 2020, 16:26:28 UTC |
6e643d9 | windmichael | 22 August 2020, 15:06:31 UTC | docs(localize): fix angular.json syntax (#38553) In chapter internationalization (i18n) at section "Deploy multiple locales" the syntax for angular.json is wrong. This commit fixes the angular.json, when specifying the translation file and the baseHref for a locale. PR Close #38553 | 24 August 2020, 16:25:35 UTC |
4985267 | Keen Yee Liau | 21 August 2020, 17:35:49 UTC | test(language-service): [Ivy] return cursor position in overwritten template (#38552) In many testing scenarios, there is a common pattern: 1. Overwrite template (inline or external) 2. Find cursor position 3. Call one of language service APIs 4. Inspect spans in result In order to faciliate this pattern, this commit refactors `MockHost.overwrite()` and `MockHost.overwriteInlineTemplate()` to allow a faux cursor symbol `¦` to be injected into the template, and the methods will automatically remove it before updating the script snapshot. Both methods will return the cursor position and the new text without the cursor symbol. This makes testing very convenient. Here's a typical example: ```ts const {position, text} = mockHost.overwrite('template.html', `{{ ti¦tle }}`); const quickInfo = ngLS.getQuickInfoAtPosition('template.html', position); const {start, length} = quickInfo!.textSpan; expect(text.substring(start, start + length)).toBe('title'); ``` PR Close #38552 | 24 August 2020, 16:25:04 UTC |
b48cc6e | Keen Yee Liau | 12 August 2020, 23:13:02 UTC | feat(language-service): introduce hybrid visitor to locate AST node (#38540) This commit introduces two visitors, one for Template AST and the other for Expression AST to allow us to easily find the node that most closely corresponds to a given cursor position. This is crucial because many language service APIs take in a `position` parameter, and the information returned depends on how well we can find a good candidate node. In View Engine implementation of language service, the search for the node and the processing of information to return the result are strongly coupled. This makes the code hard to understand and hard to debug because the stack trace is often littered with layers of visitor calls. With this new feature, we could test the "searching" part separately and colocate all the logic (aka hacks) that's required to retrieve an accurate span for a given node. Right now, only the most "narrow" node is returned by the main exported function `findNodeAtPosition`. If needed, we could expose the entire AST path, or expose other methods to provide more context for a node. Note that due to limitations in the template AST interface, there are a few known cases where microsyntax spans are not recorded properly. This will be dealt with in a follow-up PR. PR Close #38540 | 24 August 2020, 16:24:18 UTC |
874792d | JoostK | 03 July 2020, 23:52:40 UTC | feat(compiler): support unary operators for more accurate type checking (#37918) Prior to this change, the unary + and - operators would be parsed as `x - 0` and `0 - x` respectively. The runtime semantics of these expressions are equivalent, however they may introduce inaccurate template type checking errors as the literal type is lost, for example: ```ts @Component({ template: `<button [disabled]="isAdjacent(-1)"></button>` }) export class Example { isAdjacent(direction: -1 | 1): boolean { return false; } } ``` would incorrectly report a type-check error: > error TS2345: Argument of type 'number' is not assignable to parameter of type '-1 | 1'. Additionally, the translated expression for the unary + operator would be considered as arithmetic expression with an incompatible left-hand side: > error TS2362: The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type. To resolve this issues, the implicit transformation should be avoided. This commit adds a new unary AST node to represent these expressions, allowing for more accurate type-checking. Fixes #20845 Fixes #36178 PR Close #37918 | 21 August 2020, 19:25:53 UTC |
e7da404 | crisbeto | 20 August 2020, 21:21:21 UTC | fix(compiler-cli): adding references to const enums in runtime code (#38542) We had a couple of places where we were assuming that if a particular symbol has a value, then it will exist at runtime. This is true in most cases, but it breaks down for `const` enums. Fixes #38513. PR Close #38542 | 21 August 2020, 19:23:21 UTC |
2a643e1 | Ajit Singh | 21 August 2020, 01:07:47 UTC | docs: change function name from async -> waitForAsync (#38548) async function name was changed to waitForAsync but it was left in testing-utility-api file. PR Close #38548 | 21 August 2020, 19:17:51 UTC |
364284b | George Kalpakas | 20 August 2020, 16:17:06 UTC | fix(dev-infra): ignore comments when validating commit messages (#38438) When creating a commit with the git cli, git pre-populates the editor used to enter the commit message with some comments (i.e. lines starting with `#`). These comments contain helpful instructions or information regarding the changes that are part of the commit. As happens with all commit message comments, they are removed by git and do not end up in the final commit message. However, the file that is passed to the `commit-msg` to be validated still contains these comments. This may affect the outcome of the commit message validation. In such cases, the author will not realize that the commit message is not in the desired format until the linting checks fail on CI (which validates the final commit messages and is not affected by this issue), usually several minutes later. Possible ways in which the commit message validation outcome can be affected: - The minimum body length check may pass incorrectly, even if there is no actual body, because the comments are counted as part of the body. - The maximum line length check may fail incorrectly due to a very long line in the comments. This commit fixes the problem by removing comment lines before validating a commit message. Fixes #37865 PR Close #38438 | 21 August 2020, 19:17:14 UTC |
956b25a | Aristeidis Bampakos | 19 August 2020, 07:29:09 UTC | docs: apply code styling in template reference variables guide (#38522) PR Close #38522 | 20 August 2020, 20:01:33 UTC |
8017ca4 | Ajit Singh | 15 August 2020, 07:37:30 UTC | fix(docs-infra): fix vertical alignment of external link icons (#38410) At some places external link icons appear as a subscript. For example https://github.com/angular/angular/blame/8366effeec8e74c1a11d2a6e1a48d42e849e4653/aio/content/guide/roadmap.md\#L37 this commit places external link icons in the middle to improve there positioning in a line. PR Close #38410 | 20 August 2020, 16:40:01 UTC |
22f1ac3 | Santosh Yadav | 08 July 2020, 06:22:43 UTC | docs: udpate the details (#37967) updating my twitter handle and bio as it is changed from Angular and Web Tech to Angular also the twitter handle is changed to SantoshYadavDev PR Close #37967 | 20 August 2020, 16:38:58 UTC |
4ee5e73 | George Kalpakas | 20 August 2020, 14:48:49 UTC | build: upgrade cli command docs sources to ef770f1cb (#38546) Updating [angular#master](https://github.com/angular/angular/tree/master) from [cli-builds#master](https://github.com/angular/cli-builds/tree/master). ## Relevant changes in [commit range](https://github.com/angular/cli-builds/compare/b0b27361d...ef770f1cb): **Modified** - help/build.json - help/generate.json - help/test.json - help/xi18n.json PR Close #38546 | 20 August 2020, 16:32:11 UTC |
6442875 | Leon Yu | 20 August 2020, 02:37:46 UTC | docs(core): Fix typo in JSDoc for AbstractType<T> (#38541) PR Close #38541 | 20 August 2020, 16:30:17 UTC |
8f24bc9 | Misko Hevery | 20 August 2020, 04:05:31 UTC | Revert "fix(router): support lazy loading for empty path named outlets (#38379)" This reverts commit 7ad32649c0d0004fcc3604c62cf0c1ae159a825b. | 20 August 2020, 04:05:31 UTC |
ac461e1 | Pete Bacon Darwin | 17 August 2020, 11:29:18 UTC | fix(localize): extract the correct message ids (#38498) Previously, if `useLegacyIds` was enabled, the message extractor was always rendering the legacy message ids in translation files even if an explicit "custom message id" had been provided in the original message. PR Close #38498 | 19 August 2020, 21:19:41 UTC |
f245c6b | Bjarki | 13 August 2020, 21:33:40 UTC | fix(core): remove closing body tag from inert DOM builder (#38454) Fix a bug in the HTML sanitizer where an unclosed iframe tag would result in an escaped closing body tag as the output: _sanitizeHtml(document, '<iframe>') => '</body>' This closing body tag comes from the DOMParserHelper where the HTML to be sanitized is wrapped with surrounding body tags. When an opening iframe tag is parsed by DOMParser, which DOMParserHelper uses, everything up until its matching closing tag is consumed as a text node. In the above example this includes the appended closing body tag. By removing the explicit closing body tag from the DOMParserHelper and relying on the body tag being closed implicitly at the end, the above example is sanitized as expected: _sanitizeHtml(document, '<iframe>') => '' PR Close #38454 | 19 August 2020, 21:18:44 UTC |
68a9a01 | Pete Bacon Darwin | 16 August 2020, 15:11:30 UTC | fix(localize): parse all parts of a translation with nested HTML (#38452) Previously nested container placeholders (i.e. HTML elements) were not being fully parsed from translation files. This resulted in bad translation of messages that contain these placeholders. Note that this causes the canonical message ID to change for such messages. Currently all messages generated from templates use "legacy" message ids that are not affected by this change, so this fix should not be seen as a breaking change. Fixes #38422 PR Close #38452 | 19 August 2020, 21:16:41 UTC |
8cd4099 | Pete Bacon Darwin | 16 August 2020, 13:17:56 UTC | fix(localize): include the last placeholder in parsed translation text (#38452) When creating a `ParsedTranslation` from a set of message parts and placeholder names a textual representation of the message is computed. Previously the last placeholder and text segment were missing from this computed message string. PR Close #38452 | 19 August 2020, 21:16:38 UTC |
0b54c0c | Alex Rickabaugh | 05 August 2020, 23:13:12 UTC | refactor(compiler-cli): add getTemplateOfComponent to TemplateTypeChecker (#38355) This commit adds a `getTemplateOfComponent` method to the `TemplateTypeChecker` API, which retrieves the actual nodes parsed and used by the compiler for template type-checking. This is advantageous for the language service, which may need to query other APIs in `TemplateTypeChecker` that require the same nodes used to bind the template while generating the TCB. Fixes #38352 PR Close #38355 | 19 August 2020, 21:07:03 UTC |
1ec6099 | Aristeidis Bampakos | 19 August 2020, 06:30:07 UTC | docs: Typos fixes in the binding syntax guide (#38519) PR Close #38519 | 19 August 2020, 21:05:48 UTC |
7ad3264 | Andrew Scott | 06 August 2020, 18:48:37 UTC | fix(router): support lazy loading for empty path named outlets (#38379) In general, the router only matches and loads a single Route config tree. However, named outlets with empty paths are a special case where the router can and should actually match two different `Route`s and ensure that the modules are loaded for each match. This change updates the "ApplyRedirects" stage to ensure that named outlets with empty paths finish loading their configs before proceeding to the next stage in the routing pipe. This is necessary because if the named outlet has `loadChildren` but the associated lazy config is not loaded before following stages attempt to match and activate relevant `Route`s, an error will occur. fixes #12842 PR Close #38379 | 19 August 2020, 18:36:06 UTC |
9ad69c1 | Misko Hevery | 19 August 2020, 17:06:34 UTC | release: cut the zone.js-0.11.1 release (#38537) PR Close #38537 | 19 August 2020, 17:50:46 UTC |
9af2de8 | atscott | 19 August 2020, 16:35:47 UTC | release: cut the v10.1.0-next.7 release | 19 August 2020, 16:35:47 UTC |
0270020 | atscott | 19 August 2020, 16:16:16 UTC | docs: release notes for the v10.0.11 release | 19 August 2020, 16:16:16 UTC |
6b662d1 | JiaLiPassion | 19 August 2020, 11:09:58 UTC | fix(zone.js): zone.js package.json should not include files/directories field (#38528) Close #38526, #38516, #38513 After update to `APF`, the `directories` and `files` options are not compatible, so we need to remove those fileds to make sure everything work as expected. PR Close #38528 | 19 August 2020, 16:06:28 UTC |
55fd725 | Aristeidis Bampakos | 19 August 2020, 07:48:52 UTC | docs: Fix typo in the inputs and outputs guide (#38524) PR Close #38524 | 19 August 2020, 15:27:44 UTC |
f77fd5e | Joey Perrott | 29 July 2020, 21:19:15 UTC | feat(dev-infra): create a wizard for building commit messages (#38457) Creates a wizard to walk through creating a commit message in the correct template for commit messages in Angular repositories. PR Close #38457 | 19 August 2020, 00:01:14 UTC |
63ba74f | Joey Perrott | 14 August 2020, 23:49:07 UTC | feat(dev-infra): tooling to check out pending PR (#38474) Creates a tool within ng-dev to checkout a pending PR from the upstream repository. This automates an action that many developers on the Angular team need to do periodically in the process of testing and reviewing incoming PRs. Example usage: ng-dev pr checkout <pr-number> PR Close #38474 | 18 August 2020, 23:22:47 UTC |
aaa1d8e | JiaLiPassion | 14 August 2020, 23:47:09 UTC | release: cut the zone.js-0.11.0 release (#38473) PR Close #38473 | 18 August 2020, 18:47:23 UTC |
dbfb50e | Andrew Scott | 18 August 2020, 14:57:42 UTC | fix(router): ensure routerLinkActive updates when associated routerLinks change (#38511) This commit introduces a new subscription in the `routerLinkActive` directive which triggers an update when any of its associated routerLinks have changes. `RouterLinkActive` not only needs to know when links are added or removed, but it also needs to know about if a link it already knows about changes in some way. Quick note that `from...mergeAll` is used instead of just a simple `merge` (or `scheduled...mergeAll`) to avoid introducing new rxjs operators in order to keep bundle size down. Fixes #18469 PR Close #38511 | 18 August 2020, 17:21:49 UTC |
bee44b3 | Andrew Scott | 18 August 2020, 14:56:58 UTC | Revert "fix(router): ensure routerLinkActive updates when associated routerLinks change (#38349)" (#38511) This reverts commit e0e5c9f195460c7626c30248e7a79de9a2ebe377. Failures in Google tests were detected. PR Close #38511 | 18 August 2020, 17:21:47 UTC |
723a9ff | Andrea Balducci | 17 August 2020, 09:24:09 UTC | docs(common): Wrong parameter description on TrackBy (#38495) Track By Function receive the T[index] data, not the node id. TrackByFunction reference description has the same issue. PR Close #38495 | 18 August 2020, 17:08:44 UTC |
e472f5f | Joey Perrott | 14 August 2020, 22:23:05 UTC | refactor(ngcc): update yargs and typings for yargs (#38470) Updating yargs and typings for the updated yargs module. PR Close #38470 | 17 August 2020, 22:30:33 UTC |
8373b72 | Joey Perrott | 14 August 2020, 21:00:01 UTC | refactor(localize): update yargs and typings for yargs (#38470) Updating yargs and typings for the updated yargs module. PR Close #38470 | 17 August 2020, 22:30:32 UTC |
3015133 | Joey Perrott | 14 August 2020, 19:20:55 UTC | refactor(dev-infra): update yargs and typings for yargs (#38470) Updating yargs and typings for the updated yargs module. PR Close #38470 | 17 August 2020, 22:30:32 UTC |
64cf087 | atscott | 17 August 2020, 20:23:09 UTC | release: cut the v10.1.0-next.6 release | 17 August 2020, 20:23:09 UTC |
fec9dcb | atscott | 17 August 2020, 20:19:03 UTC | docs: release notes for the v10.0.10 release | 17 August 2020, 20:19:03 UTC |
e0e5c9f | Andrew Scott | 05 August 2020, 17:34:12 UTC | fix(router): ensure routerLinkActive updates when associated routerLinks change (#38349) This commit introduces a new subscription in the `routerLinkActive` directive which triggers an update when any of its associated routerLinks have changes. `RouterLinkActive` not only needs to know when links are added or removed, but it also needs to know about if a link it already knows about changes in some way. Quick note that `from...mergeAll` is used instead of just a simple `merge` (or `scheduled...mergeAll`) to avoid introducing new rxjs operators in order to keep bundle size down. Fixes #18469 PR Close #38349 | 17 August 2020, 19:33:59 UTC |
cfe424e | Keen Yee Liau | 31 July 2020, 04:26:02 UTC | refactor(language-service): [Ivy] remove temporary compiler (#38310) Now that Ivy compiler has a proper `TemplateTypeChecker` interface (see https://github.com/angular/angular/pull/38105) we no longer need to keep the temporary compiler implementation. The temporary compiler was created to enable testing infrastructure to be developed for the Ivy language service. This commit removes the whole `ivy/compiler` directory and moves two functions `createTypeCheckingProgramStrategy` and `getOrCreateTypeCheckScriptInfo` to the `LanguageService` class. Also re-enable the Ivy LS test since it's no longer blocking development. PR Close #38310 | 17 August 2020, 18:30:33 UTC |
3b9c802 | Paul Gschwendtner | 14 August 2020, 18:43:59 UTC | fix(ngcc): detect synthesized delegate constructors for downleveled ES2015 classes (#38463) Similarly to the change we landed in the `@angular/core` reflection capabilities, we need to make sure that ngcc can detect pass-through delegate constructors for classes using downleveled ES2015 output. More details can be found in the preceding commit, and in the issue outlining the problem: #38453. Fixes #38453. PR Close #38463 | 17 August 2020, 17:55:40 UTC |
ca07da4 | Paul Gschwendtner | 14 August 2020, 08:23:53 UTC | fix(core): detect DI parameters in JIT mode for downleveled ES2015 classes (#38463) In the Angular Package Format, we always shipped UMD bundles and previously even ES5 module output. With V10, we removed the ES5 module output but kept the UMD ES5 output. For this, we were able to remove our second TypeScript transpilation. Instead we started only building ES2015 output and then downleveled it to ES5 UMD for the NPM packages. This worked as expected but unveiled an issue in the `@angular/core` reflection capabilities. In JIT mode, Angular determines constructor parameters (for DI) using the `ReflectionCapabilities`. The reflection capabilities basically read runtime metadata of classes to determine the DI parameters. Such metadata can be either stored in static class properties like `ctorParameters` or within TypeScript's `design:params`. If Angular comes across a class that does not have any parameter metadata, it tries to detect if the given class is actually delegating to an inherited class. It does this naively in JIT by checking if the stringified class (function in ES5) matches a certain pattern. e.g. ```js function MatTable() { var _this = _super.apply(this, arguments) || this; ``` These patterns are reluctant to changes of the class output. If a class is not recognized properly, the DI parameters will be assumed empty and the class is **incorrectly** constructed without arguments. This actually happened as part of v10 now. Since we downlevel ES2015 to ES5 (instead of previously compiling sources directly to ES5), the class output changed slightly so that Angular no longer detects it. e.g. ```js var _this = _super.apply(this, __spread(arguments)) || this; ``` This happens because the ES2015 output will receive an auto-generated constructor if the class defines class properties. This constructor is then already containing an explicit `super` call. ```js export class MatTable extends CdkTable { constructor() { super(...arguments); this.disabled = true; } } ``` If we then downlevel this file to ES5 with `--downlevelIteration`, TypeScript adjusts the `super` call so that the spread operator is no longer used (not supported in ES5). The resulting super call is different to the super call that would have been emitted if we would directly transpile to ES5. Ultimately, Angular no longer detects such classes as having an delegate constructor -> and DI breaks. We fix this by expanding the rather naive RegExp patterns used for the reflection capabilities so that downleveled pass-through/delegate constructors are properly detected. There is a risk of a false-positive as we cannot detect whether `__spread` is actually the TypeScript spread helper, but given the reflection patterns already make lots of assumptions (e.g. that `super` is actually the superclass, we should be fine making this assumption too. The false-positive would not result in a broken app, but rather in unnecessary providers being injected (as a noop). Fixes #38453 PR Close #38463 | 17 August 2020, 17:55:37 UTC |