resume-cli
resume-cli copied to clipboard
Maintenance: Cleanup
- [x] update deps [HIGHEST PRIORITY]
- fix all the damn security vulnerability warnings
- close all issues related to out-of-date dependencies
- [x] CI/CD using GitHub Actions
- update
pkg.versionto reflect the NPM published version - add CD to auto-publish to NPM
- remove Travis-CI
- add CONTRIBUTING.md
- update
- [ ] how is testing?
- is the current test runner sufficient
- how does the test coverage look
- [ ] do all features work?
- fix init to clone
resume.sample.jsonfromresume-schema - is puppeteer sufficient for PDF creation?
- should z-schema be replaced by ajv?
- fix init to clone
- [x] back-fill version tags
- try to back-fill missing version tags to reflect npm releases
- skip if it's too much of a pain
Oof, npm audit is really ugly. Fixing all the security vulnerabilities is going to be a pain, mostly due to long dependency chains.
Relocating resume-to-text and resume-to-html to this repo will help. Updating templates may be a lost cause if they're no longer maintained. mocha and puppeteer should be easy.
npm-check might be better alternative to npm audit.
All dependencies have been updated in #369, and related stories closed.
I can work on back-filling tags and setting up semantic-release with GitHub Actions. Will need some help with repository settings though.
BTW I would add linting and formatting to the list π
Just pushed all tags since the v1.0.0 release, using the respective commit dates to ensure correct chronological order.
We have quite a few 0.x releases, so it would be a bit time-consuming to back-fill all of them. Older tags are also not following the default npm tag version prefix (i.e. missing the v), a convention followed in new tags to simplify integration with other tools such as semantic-release.
Edit: I've pushed the remaining tags, starting from v0.0.0. A few released versions are missing though, as I couldn't find them in git history. In case someone else (or future me) ever needs to back-fill tags, here's how I did it:
# Collect all package.json version changes
git log -L 3,3:package.json # where '3' is the version field line number
# Checkout each commit, set tag date as commit date, and tag using the package.json version
xargs -I{} sh -c 'git checkout -q {} && GIT_COMMITTER_DATE="$(git show --format=%ad | head -1)" git tag v$(cat package.json | jq -r .version)' < commits.txt
That was some pretty solid work @rbardini, again, great job.
I have taken and re-added pdf generation so many times, I almost want to permanently leave it out of the cli tool (it just makes the npm install so long)
I doubt anyone uses the resume-to-txt or resume-to-html, we could just look at removing that functionality.
Thanks, @thomasdavis π
resume-to-html and resume-to-text were already removed in #369. I didn't find any references to them in the code or documentation, so I assumed they were unused dependencies.
As for PDF generation, I do use it but find the results worse than manually printing the HTML output to PDFβtext is often split between pages on page breaks, for example. Still, it's an important feature to have. We could try using puppeteer-core with headless_shell instead, although I didn't find any good examples.