Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
roninforge-angularjs-migration — 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. | Kitploit
Ferramentas/GitHubGitHub/roninforge/roninforge-angularjs-migration
Vulnerability AnalysisCode AnalysisLearning & EducationCurated ResourcesLearning Paths & CoursesAI Security
GitHubroninforge/roninforge-angularjs-migration

roninforge-angularjs-migration

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.

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Ver RepositórioSite
há 2 mesesAinda não revisado

roninforge-angularjs-migration

License: MIT

Repositório de referência para o pacote de instruções do GitHub Copilot de AngularJS para Angular 18 enviado para github/awesome-copilot em instructions/angularjs-to-angular-18.instructions.md. Primeiro de uma série planejada de produtos Copilot voltados para empresas da RoninForge (planejados: migração .NET Framework para .NET 9, redação de PHI da HIPAA, anti-padrões T-SQL, testes de caracterização para código legado).

O Problema

  • O AngularJS 1.x saiu do Suporte de Longo Prazo em 31 de dezembro de 2021. Desde janeiro de 2022, o Google parou de enviar correções de segurança, compatibilidade com navegadores e compatibilidade com jQuery.
  • O lançamento final é v1.8.3 (7 de abril de 2022) - uma tag "adeus final" apenas no README. O congelamento de código substancial é v1.8.2 (outubro de 2020).
  • CVE-2024-21490 (Negação de Serviço por Expressão Regular em ng-srcset, todas as versões 1.3.0 a 1.8.3) não possui patch upstream. Apenas forks de suporte estendido comercial (HeroDevs NES, OpenLogic) são versões corrigidas.
  • Bancos, sistemas de saúde e agências governamentais ainda estão na 1.x: congelamentos de conformidade, lacuna de talento, complexidade do ngUpgrade e a fórmula matemática de migração XLTS (TTM = (LOC/LPW) * 1.4) que torna o custo do calendário visível.
  • O próprio rastreador de problemas do GitHub Copilot (#1019, #1128) documenta a falta de conhecimento da sintaxe Angular 17+; a HeroDevs relata que 73% das migrações AngularJS assistidas por IA ficam atrasadas porque LLMs emitem padrões anteriores a 2025.

O que este pacote ensina ao Copilot

Um grande arquivo .instructions.md (1.971 linhas) cobrindo:

  • O estado de fim de vida do AngularJS + evidência da CVE-2024-21490 (por que a migração não é opcional a menos que se tenha suporte comercial)
  • 17 padrões canônicos do Angular 18 (padrão standalone, signals, fluxo de controle @if/@for/@switch, visualizações adiáveis @defer, interceptors/guards/resolvers baseados em função, provideHttpClient, provideRouter + withComponentInputBinding, inject(), formulários reativos tipados, OnPush + pré-visualização de desenvolvimento sem zone, DestroyRef + takeUntilDestroyed, toSignal/toObservable, viewChild/viewChildren baseados em sinal, , Vitest, application builder)

Layout do repositório

root@kitploit:~
~/development/roninforge-angularjs-migration/
.
.cm  README.md                       This file
.cm  LICENSE                         MIT
.cm  CHANGELOG.md                    semver entries
.cm  META.yml                        slug / type / version / target_paths consumed by submit script
.cm  .editorconfig / .gitattributes  LF-only normalization (awesome-copilot blocks CRLF)
.cm  .codespellrc                    mirrors upstream allowlist
.cm  scripts/
.cm    validate-awesome-copilot-submission.sh   reusable validator, mirrors every blocking CI gate
.cm    submit-to-awesome-copilot.sh             reusable submitter (fork, branch from staged, copy, regen, PR)
.cm  src/                            (placeholder for authoring partials when future packages split sources)
.cm  dist/
.cm    angularjs-to-angular-18.instructions.md  exact file that gets rsynced into upstream instructions/
.cm  tests/golden/                   (placeholder for diff-against-frozen-output tests)
.cm  .github/workflows/validate.yml  runs the validator on every push

research/ está no gitignore; contém notas internas que informaram o conteúdo das instruções, mas não faz parte do artefato público.

Scripts do pipeline (reutilizáveis em todos os pacotes awesome-copilot da RoninForge)

scripts/validate-awesome-copilot-submission.sh

Execute dentro de um clone de github/awesome-copilot. Espelha todas as portas de CI bloqueantes:

  1. Pré-verificação (node 20+, npm, jq, git, codespell)
  2. npm ci se necessário
  3. Detecta o tipo de artefato a partir do caminho
  4. Verificação de convenção de nomenclatura (lowercase-kebab; regex de nome de arquivo por tipo)
  5. Verificação de esquema do frontmatter (campos obrigatórios por tipo, strings entre aspas simples)
  6. Verificação do conteúdo do corpo (instruções devem abrir com # )
  7. Verificação de quebras de linha CRLF (bloqueia se encontrado)
  8. codespell --check-filenames --config .codespellrc
  9. Limite de 5 MB para assets de skills
  10. gh aw compile --validate para workflows
  11. npm run plugin:validate para plugins
  12. npm run skill:validate para skills/agents (somente aviso)
  13. npm start + git diff --exit-code (a rejeição mecânica #1 - validate-readme.yml falha se README/marketplace estiverem desatualizados)

scripts/submit-to-awesome-copilot.sh

Pipeline ponta a ponta:

  1. Lê META.yml (slug, type, version)
  2. gh auth status
  3. Faz fork de github/awesome-copilot para RoninForge se ainda não tiver sido feito
  4. Clona o fork para .upstream-clone/
  5. Faz fetch + reset para upstream/staged (NUNCA main)
  6. Cria branch de funcionalidade a partir de upstream/staged
  7. Copia os artefatos de dist/ para a árvore upstream nos caminhos corretos por tipo
  8. Executa o validador (acima) - aborta em qualquer falha
  9. npm start para regenerar README + marketplace
  10. Commit com o marcador de via rápida de autor AI 🤖🤖🤖
  11. Push para o fork
  12. Abre PR com base: staged (NUNCA ) - o job rejeita automaticamente PRs para main

Suporta --dry-run (para antes do push) e --no-pr (envia o branch, mas pula a criação do PR).

Versionamento

Versões mínimas:

  • AngularJS estável final: 1.8.2 (outubro de 2020, último lançamento de código); 1.8.3 (abril de 2022, tag de despedida apenas no README). LTS terminou em 31 de dezembro de 2021.
  • Angular 18: 22 de maio de 2024. Recomenda-se o patch 18.x mais recente para estabilidade do esquema ng update.
  • Node 20 LTS mínimo para o servidor de desenvolvimento do Angular 18.
  • RxJS 7.5+ mínimo para peer do Angular 18.
  • TypeScript 5.4+ mínimo para peer do Angular 18.

Evite: pacotes da era AngularJS que não são mais mantidos (angular-ui-bootstrap, ng-storage, ng-flow, angular-translate-loader-static-files); Karma + Jasmine para novos arquivos de teste (Vitest via ng add @analogjs/vitest-angular).

Licença

MIT - veja LICENSE.

Links

  • Post de lançamento do Angular 18
  • Angular llms.txt para desenvolvimento assistido por IA
  • Documentação do ngUpgrade
  • Aviso da HeroDevs sobre CVE-2024-21490
  • endoflife.date / AngularJS
  • github/awesome-copilot
  • RoninForge

Mais da RoninForge

A RoninForge constrói ferramentas gratuitas para desenvolvedores que trabalham com assistentes de codificação de IA:

  • Comparação de preços de API de LLMs - preços de tokens do Claude, GPT, Gemini, DeepSeek, Mistral e Grok lado a lado, verificados nas páginas oficiais de preços
  • Calculadora de créditos de IA do GitHub Copilot - estime seu consumo mensal de créditos sob faturamento baseado em uso
  • Todos os plugins do Cursor
Baixar ferramenta
NgOptimizedImage
  • Três caminhos de migração com dimensionamento de esforço e estudos de caso: big-bang (3-9 meses), híbrido ngUpgrade (6-18 meses, recomendado), strangler-fig (6-24 meses)
  • 62 anti-padrões com pares ERRADO/CORRETO e citações de fontes, em três modos de falha:
    • Modo A (15): Padrões do AngularJS 1.x emitidos para solicitações simples de "Angular" ($scope.$apply, ng-controller, $compile, $http, $q, ng-app, ng-bind-html, ng-click, angular.module, | filter, $resource, $cookies, $location, wrapper IIFE 'use strict')
    • Modo B (35): Expressões idiomáticas legadas do Angular 2-17 emitidas em vez do Angular 18 (*ngIf / *ngFor / *ngSwitch, NgModules, decoradores @Input() / @Output(), DI no construtor, interceptors/guards/resolvers baseados em classe, HttpClientModule, RouterModule.forRoot, Promise.all vs forkJoin, vazamentos de subscribe, estado BehaviorSubject, detecção de alterações padrão, @ViewChild static, formulários não tipados, imports obsoletos de rxjs/operators, browser builder)
    • Modo C (12): Erros específicos de migração (conselho de big-bang sem ngUpgrade, pacotes não mantidos, imports misturados, falta de downgradeInjectable / downgradeComponent, ordem de bootstrap errada, tratar ng update como migração de framework, portas literais de $rootScope.$broadcast, BrowserAnimationsModule em standalone, vazamento zoneless + zone.js polyfill)
  • Árvore de decisão (bucket de LoC para mapeamento de calendário; condição para caminho)
  • Oito pegadinhas do ngUpgrade com trechos de correção
  • Referências (documentação oficial do Angular 18, avisos de EOL + CVE, suporte comercial, estudos de caso, depreciações)
  • main
    check-pr-target.yml