Comments (11)
Right, yes. This is to do with mock-fs, which doesnβt support later versions of node (see tschaub/mock-fs#377 )
If you want to test with node 20, you currently need to pin to node 20.4.
from commit-and-tag-version.
I'm going to propose to our teams that we spend some time in the next Agile cycle looking at this, since we make heavy use of commit-and-tag-version in our release cycles across the company. Will come back to you if we have time to dedicate to cracking this or not π
from commit-and-tag-version.
Thank you! Apologies for the silence, I've been off sick.
If it helps, I think running the tests with typescript would be a great first step on migrating to typescript (the other efforts stalled when they couldn't run the tests) - but don't feel the need to attempt it if it blows out or hinders your rework.
from commit-and-tag-version.
Sounds great. I'll merge the formatter change now, so you can get started from a prettier base.
from commit-and-tag-version.
Longer term Iβm a little concerned about code rot in the test dependencies - many of them are not maintained any more, and might not work moving forward to newer versions of node.
Iβm not really sure what the best strategy is. Iβd like to update/ modernise the tests without dropping the features that are covered, but it may be challenging or need a great deal of care
from commit-and-tag-version.
Agreed - it's a robust set of tests but the mocking process is quite complex, we'd need to figure out a better solution for injecting test CHANGELOGs etc which may or may not be Fs mocking in some capacity
from commit-and-tag-version.
I'm going to pick this up and attempt a re-work of the tests π
from commit-and-tag-version.
I think I am going to start by converting the tests from mocha
to jest
as that gives access to spies and should be step 1. of being able to replace mock-fs
with a jest implementation.
And then I'll go from there
from commit-and-tag-version.
Making good progress over 2 days π
, having to remove all the mockery, std-mocks as well, but it should be a cleaner package tree. There's probably a follow up piece to re-work some of the tests and production code layout to make mocking/spying on read/write to Fs easier now that moving off mock-fs
loses us access to it's in memory mocking of the File system
But. So far so good, 3 tests left in core.spec
to get passing and that's the bulk of the tests done
from commit-and-tag-version.
Thanks for the update! Much appreciated!
from commit-and-tag-version.
I've converted the tests now, but currentgly having some problems with my local config when running the more "integration" style tests, especially the git stuff has a nightmare with me using pre-commit widely.
I'll push it up, so we can see what happens in the GitHub action, and I'll keep working on it in the meantime
from commit-and-tag-version.
Related Issues (20)
- Support for alphanumeric issues HOT 1
- Multiple postchangelog scripts? HOT 1
- Bug: Frontmatter is duplicated in certain scenarios HOT 7
- Escape characters like < and > HOT 3
- Does this package not support setting --header?
- Use without pushing directly to master/main? HOT 2
- Include all commits in CHANGELOG
- Why did `npx commit-and-tag-version` miss the most recent commit? HOT 2
- Argument `--releaseAs [1.1.0]` is ignored if `--skip.bump` is also used
- Reverted commits are included in the generated CHANGELOG.md
- Why commits got repeated when I format the CHANGELOG file manually? HOT 5
- Bump files, which are being ignored in Git, too HOT 1
- Compare releases agains previous release (skipping prerelease) HOT 3
- How can I generate a CHANGELOG.md based on a different commit convention? HOT 3
- Commits got repeated when I format the CHANGELOG file manually? (revamp #133)
- Support ESM format for config file HOT 3
- Make it more obvious that some/all config options can be set via separate config
- Show changelog only for changes in a subfolder HOT 4
- How to access the release type in life cycle scripts?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from commit-and-tag-version.