Coder Social home page Coder Social logo

Comments (11)

TimothyJones avatar TimothyJones commented on September 23, 2024 1

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.

TimKnight-DWP avatar TimKnight-DWP commented on September 23, 2024 1

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.

TimothyJones avatar TimothyJones commented on September 23, 2024 1

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.

TimothyJones avatar TimothyJones commented on September 23, 2024 1

Sounds great. I'll merge the formatter change now, so you can get started from a prettier base.

from commit-and-tag-version.

TimothyJones avatar TimothyJones commented on September 23, 2024

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.

TimKnight-DWP avatar TimKnight-DWP commented on September 23, 2024

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.

TimKnight-DWP avatar TimKnight-DWP commented on September 23, 2024

I'm going to pick this up and attempt a re-work of the tests πŸ‘

from commit-and-tag-version.

TimKnight-DWP avatar TimKnight-DWP commented on September 23, 2024

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.

TimKnight-DWP avatar TimKnight-DWP commented on September 23, 2024

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.

TimothyJones avatar TimothyJones commented on September 23, 2024

Thanks for the update! Much appreciated!

from commit-and-tag-version.

TimKnight-DWP avatar TimKnight-DWP commented on September 23, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.