-
-
Notifications
You must be signed in to change notification settings - Fork 26
Closed
Milestone
Description
In favor of better maintenance, performance and a more cohesive architecture, I'm planning to make some major updates and migrate the opening issues to the next Poku version.
📦 Installing
# Node.js
npm i -D poku
# Node.js + TypeScript
npm i -D poku tsx
# Bun
bun add poku
# Deno (optional)
deno add npm:poku # use "deno run npm:poku" to run tests
⚙️ Migrating
- For Node.js, make sure you have version
14.x.x
or higher. - Instead of
poku --parallel
orpoku -p
, just usepoku
. - Instead of
poku
(sequential inv2
), usepoku --sequential
. - If you have some flag using kebab case (e.g.,
--fail-fast
), use camel case instead (e.g.,--failFast
). - Instead of setting the platform manually (
poku --platform=...
,poku --deno
,poku --bun
orpoku --node
), just use the platform/runtime to call Poku, for example:npx poku
,bun poku
ordeno run poku
.
🗺️ Roadmap
✅ v3.0.0-rc.0
Focused on performance and breaking changes:
- Drop the support for Node.js
8
,10
and12
(for performance reasons). - Remove all methods and options marked as
deprecated
. - Improve performance.
- perf: use queue instead of groups for parallel tests #886
- Investigate the use of
fork
instead ofspawn
:- Benchmarks were all negative against fork.
- Use parallel run as default, such as Node.js, Jest, etc.
- Remove the need to manually define the platform for environments with multiple runtimes (
--platform
,--node
,--bun
,--deno
).
✅ v3.0.0-rc.1
Note
From this point on, there is no intention of breaking changes, except for some inevitable case.
Focused on improvements and major features:
- Revisit early access and experimental features.
- Improve the global cache to increase initial performance.
✅ v3.0.0
- Improve architecture to allow external plugins.
- Investigate the use of events approach:
- Benchmarks were all negative against events (more than 2x slower).
- feat: introduce custom reporters (
poku
,dot
,compact
,focus
,verbose
, andclassic
) #921
- Investigate the use of events approach:
Note
I'm extremely satisfied with the current benchmarks (#926). I'll wait to write the extensive report after v3
.