
AngularJS 1.x -> Angular 18 migration guidance for GitHub Copilot. Source-of-truth repo for github/awesome-copilot/instructions/angularjs-to-angular-18.instructions.md. 62 LLM regressions across 3 modes. AngularJS EOL since Dec 31 2021; CVE-2024-21490 unpatched.
AngularJS에서 Angular 18로의 GitHub Copilot 지침 패키지의 진실 공급원 저장소로, github/awesome-copilot의 instructions/angularjs-to-angular-18.instructions.md에 제공됩니다. RoninForge에서 계획된 엔터프라이즈 대상 Copilot 제품 시리즈 중 첫 번째입니다 (계획: .NET Framework에서 .NET 9 마이그레이션, HIPAA PHI 편집, T-SQL 안티패턴, 레거시 코드 특성 테스트).
ng-srcset의 정규 표현식 서비스 거부, 모든 버전 1.3.0~1.8.3)에 대한 업스트림 패치가 없습니다. 상용 확장 지원 포크(HeroDevs NES, OpenLogic)만이 유일한 패치된 빌드입니다.TTM = (LOC/LPW) * 1.4)으로 인해 일정 비용이 명확해집니다.하나의 큰 .instructions.md 파일(1,971줄)이 다음을 다룹니다:
@if/@for/@switch, 지연 가능한 뷰 @defer, 함수 기반 인터셉터/가드/리졸버, provideHttpClient, provideRouter + withComponentInputBinding, inject(), 타입화된 반응형 폼, OnPush + zoneless 개발자 프리뷰, DestroyRef + takeUntilDestroyed, toSignal/toObservable, signal 기반 viewChild/viewChildren, , Vitest, application builder)~/development/roninforge-angularjs-migration/
.
.cm README.md 이 파일
.cm LICENSE MIT
.cm CHANGELOG.md semver 항목
.cm META.yml 제출 스크립트가 사용하는 slug / type / version / target_paths
.cm .editorconfig / .gitattributes LF 전용 정규화 (awesome-copilot은 CRLF 차단)
.cm .codespellrc 업스트림 허용 목록 미러링
.cm scripts/
.cm validate-awesome-copilot-submission.sh 모든 차단 CI 게이트를 미러링하는 재사용 가능한 검증기
.cm submit-to-awesome-copilot.sh 재사용 가능한 제출기 (포크, staged에서 브랜치 생성, 복사, 재생성, PR)
.cm src/ (향후 패키지가 소스를 분할할 때 부분 작성용 자리 표시자)
.cm dist/
.cm angularjs-to-angular-18.instructions.md 업스트림 `instructions/`에 rsync되는 정확한 파일
.cm tests/golden/ (고정 출력과 차이 테스트용 자리 표시자)
.cm .github/workflows/validate.yml 모든 푸시 시 검증기 실행
research/는 gitignore에 포함되어 있습니다; 지침 내용에 정보를 제공했지만 공개 아티팩트의 일부가 아닌 내부 노트가 포함되어 있습니다.
scripts/validate-awesome-copilot-submission.shgithub/awesome-copilot의 클론 내에서 실행합니다. 모든 차단 CI 게이트를 미러링합니다:
npm ci# 로 시작해야 함)codespell --check-filenames --config .codespellrcgh aw compile --validatenpm run plugin:validatenpm run skill:validate (경고 전용)npm start + git diff --exit-code (1위 기계적 바운스 - validate-readme.yml은 README/마켓플레이스가 오래된 경우 실패)scripts/submit-to-awesome-copilot.sh종단간 파이프라인:
META.yml 읽기 (slug, type, version)gh auth statusgithub/awesome-copilot를 RoninForge로 포크 (아직 하지 않은 경우).upstream-clone/에 클론upstream/staged로 가져오기 + 리셋 (절대 main 아님)upstream/staged에서 기능 브랜치 생성dist/ 아티팩트를 유형별 올바른 경로에 업스트림 트리로 복사npm start로 README + 마켓플레이스 재생성🤖🤖🤖 AI 작성 패스트트랙 표시와 함께 커밋staged**로 PR 열기 (절대 main 아님) - 작업이 main에 대한 PR을 자동 거부--dry-run (푸시 전 중단) 및 --no-pr (브랜치 푸시하지만 PR 생성 생략)를 지원합니다.
바닥 고정:
ng update 스키마틱 안정성을 위해 권장됨.피해야 할 것: 더 이상 유지되지 않는 AngularJS 시대 패키지 (angular-ui-bootstrap, ng-storage, ng-flow, angular-translate-loader-static-files); 새 테스트 파일에 Karma + Jasmine (ng add @analogjs/vitest-angular를 통해 Vitest 사용)
MIT - LICENSE 참조.
RoninForge는 AI 코딩 어시스턴트로 작업하는 개발자를 위한 무료 도구를 제공합니다:
NgOptimizedImage$scope.$apply, ng-controller, $compile, $http, $q, ng-app, ng-bind-html, ng-click, angular.module, | filter, $resource, $cookies, $location, IIFE 'use strict' 래핑)*ngIf / *ngFor / *ngSwitch, NgModules, @Input() / @Output() 데코레이터, 생성자 DI, 클래스 기반 인터셉터/가드/리졸버, HttpClientModule, RouterModule.forRoot, Promise.all vs forkJoin, subscribe 누수, BehaviorSubject 상태, 기본 변경 감지, @ViewChild static, 타입화되지 않은 폼, rxjs/operators 비권장 임포트, browser builder)downgradeInjectable / downgradeComponent, 잘못된 부트스트랩 순서, ng update를 프레임워크 마이그레이션으로 취급, 문자 그대로의 $rootScope.$broadcast 포팅, standalone에서의 BrowserAnimationsModule, zoneless + zone.js 폴리필 누수)check-pr-target.yml