cucumber-jvm icon indicating copy to clipboard operation
cucumber-jvm copied to clipboard

Faster caching glue

Open mpkorstanje opened this issue 1 year ago • 4 comments

🤔 What's changed?

Work in progress. Parking this in a pull request so I won't forget about it.

Currently the CachingGlue is rather limited in what it can cache. Step definitions are derived from parameter types, and because these can be Disposable, this means that we dispose of the whole cache after each scenario.

But glue can be reused between scenarios if

  • The step definitions are non-disposable.
  • The step definitions are the same as the previous scenario
  • The the language of the scenario is the same.

⚡️ What's your motivation?

🏷️ What kind of change is this?

  • :book: Documentation (improvements without changing code)
  • :bank: Refactoring/debt/DX (improvement to code design, tooling, etc. without changing behaviour)
  • :bug: Bug fix (non-breaking change which fixes a defect)
  • :zap: New feature (non-breaking change which adds new behaviour)
  • :boom: Breaking change (incompatible changes to the API)

♻️ Anything particular you want feedback on?

📋 Checklist:

  • [x] I agree to respect and uphold the Cucumber Community Code of Conduct
  • [ ] I've changed the behaviour of the code
    • [ ] I have added/updated tests to cover my changes.
  • [ ] My change requires a change to the documentation.
    • [ ] I have updated the documentation accordingly.
  • [ ] Users should know about my change
    • [ ] I have added an entry to the "Unreleased" section of the CHANGELOG, linking to this pull request.

This text was originally generated from a template, then edited by hand. You can modify the template here.

mpkorstanje avatar Jul 05 '24 14:07 mpkorstanje