feat: execute all steps and collect errors at end of chain#1640
Conversation
✅ Deploy Preview for endearing-brigadeiros-63f9d0 ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1640 +/- ##
==========================================
+ Coverage 85.97% 86.09% +0.12%
==========================================
Files 87 87
Lines 8621 8661 +40
Branches 1492 1514 +22
==========================================
+ Hits 7412 7457 +45
+ Misses 1178 1173 -5
Partials 31 31 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
coopernetes
left a comment
There was a problem hiding this comment.
Overall LGTM, just a few notes/suggestions.
kriswest
left a comment
There was a problem hiding this comment.
LGTM, although I agree with @coopernetes that the config option can be removed and that processors could self declare their behaviour, which could have an impact on plugins. Up to you if you deal with the alter point in this PR or raise a follow-up issue. However, best to drop the config setting now if we don't need it
|
@kriswest @coopernetes Ready for another look! I'm not sure about the plugin behavior - should these be collectible as well? I'm happy to open another PR for this to get this merged faster 👍🏼 |
Signed-off-by: Juan Escalada <97265671+jescalada@users.noreply.github.com>
Description
This PR implements one of fogwall's quality-of-life features: collecting all errors in the chain and reporting to the user, so they don't have to make multiple pushes and fix one-by-one. This still fails mid-chain if non-validator steps (
parsePush,pullRemote,writePack, etc.) error out.collectibleStepsare defined inchain.ts(steps that can be collected and reported later, as opposed to immediately failing).Related Issue
Resolves #
Checklist
General
Documentation
Configuration
config.schema.json) was modified:npm run generate-config-types)npm run gen-schema-doc)Tests
npm test)npm run lintandnpm run format:check)npm run check-types)