Skip to content

Conversation

@devin-ai-integration
Copy link
Contributor

Add GitHub Actions workflow with ESLint and Jest

Summary

This PR introduces a modern CI/CD pipeline using GitHub Actions to replace the existing Travis CI setup. The workflow includes code linting with ESLint and comprehensive testing across multiple Node.js versions.

Key changes:

  • Added ESLint configuration with basic JavaScript linting rules
  • Created GitHub Actions workflow with separate lint and test jobs
  • Updated Node.js versions from 10/11/12 (Travis) to 18.x/20.x/22.x (GitHub Actions)
  • Added lint scripts to package.json for local development

The ESLint configuration uses warnings instead of errors for existing code patterns to avoid breaking the build while still providing code quality feedback.

Review & Testing Checklist for Human

  • Verify GitHub Actions workflow runs successfully - Check that both lint and test jobs pass in this PR
  • Review ESLint configuration appropriateness - The rules are currently set to "warn" to accommodate existing code; verify this aligns with project standards
  • Confirm Node.js version strategy - Upgraded from Node 10/11/12 to 18.x/20.x/22.x per package.json engines requirement (>=18)
  • Test lint command locally - Run npm run lint to ensure ESLint warnings are acceptable and don't indicate real issues

Notes

  • ESLint found 9 existing code quality issues (unnecessary escapes, empty blocks, prototype method usage) that are now reported as warnings
  • The workflow replaces Travis CI but maintains the same core functionality (test + build)
  • All 72 existing Jest tests continue to pass

Link to Devin run: https://app.devin.ai/sessions/f64ceefe350e4a42bf304bfacf32c3f7
Requested by: jason.julian

- Add ESLint configuration for code linting
- Create CI workflow with lint and test jobs
- Test against Node.js 18.x, 20.x, 22.x
- Replace Travis CI with GitHub Actions

Co-Authored-By: cedric@coingecko.com <cedric@coingecko.com>
@devin-ai-integration
Copy link
Contributor Author

Original prompt from cedric@coingecko.com
In the cryptoformat repo, look into the file https://github.com/coingecko/cryptoformat/blob/master/src/index.js. Set up unit tests for this module to test all happy path and edge cases for each function using Jest

@devin-ai-integration
Copy link
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR that start with 'DevinAI'.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

devin-ai-integration bot and others added 2 commits August 28, 2025 08:44
- Change package.json engines to require Node.js >=22
- Remove matrix strategy from GitHub workflow
- Test only against Node.js 22.x instead of 18.x, 20.x, 22.x

Co-Authored-By: cedric@coingecko.com <cedric@coingecko.com>
- Update lint job from Node.js 20.x to 22.x
- Resolves EBADENGINE error in CI where package.json requires >=22
- Both lint and test jobs now consistently use Node.js 22.x

Co-Authored-By: cedric@coingecko.com <cedric@coingecko.com>
@devin-ai-integration
Copy link
Contributor Author

Closing due to inactivity for more than 30 days. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant