Repository navigation
fix(protheus): advpl-lint não deixa mais lixo do appre no repo - #12
Merged
Merged
Conversation
O hook roda `advpls appre` após todo Write/Edit em .prw/.tlpp. O appre grava 3 arquivos de trabalho por execução — .ppo e .errprw ao lado da fonte e console_error.log no cwd — e o hook nunca os limpava, sujando o repo do projeto. Fix: appre roda com a flag nativa -O <tmpdir> e cwd num dir temporário descartável, apagado com rm -rf logo após capturar a saída. O hook só consome stdout/stderr, nunca esses arquivos, então descartá-los é seguro. Includes do PROTHEUS_INCLUDES são absolutizados (realpath) por causa do novo cwd. Validado: suíte tests/hooks/advpl-lint.test.sh (todos passam) + teste end-to-end com binário real TDS-LS 2.0 (antes deixava 3 artefatos, depois zero). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problema
O hook
protheus/hooks/advpl-lint.shrodaadvpls appreapós todo Write/Edit em.prw/.tlpp. Confirmado com o binário real (TDS-LS 2.0), oappregrava 3 arquivos de trabalho por execução e o hook nunca os limpava:<fonte>.ppo<fonte>.errprwconsole_error.logResultado: o repo do projeto acumulava lixo a cada edição de fonte ADVPL/TLPP.
Fix
O
apprepassa a rodar com a flag nativa-O <tmpdir>(que reposiciona.ppo/.errprw) e com cwd num dir temporário descartável (mktemp -d, que também recolhe oconsole_error.log); o dir é apagado comrm -rflogo após capturar a saída. O hook só consomestdout/stderr— nunca lê esses arquivos —, então descartá-los é seguro. Os includes dePROTHEUS_INCLUDESsão absolutizados (realpath) por causa do novo cwd.Validação
tests/hooks/advpl-lint.test.sh— todos os testes passam..ppo+.errprw+console_error.log; depois, zero artefatos.🤖 Generated with Claude Code