Potential v7 breaking changes
See original GitHub issueThis issue is to track potential improvements to Karma, which require breaking changes. It will be updated with more points as I discover them.
- Drop support for IE < 11 and other obsolete browsers to simplify Karma code and allow using more modern JS in the client code. I think it is reasonable to support same set as Angular does, but open for suggestions.
- Use the
Array.prototype.includes()
method instead of a full-fledged for-loop in https://github.com/karma-runner/karma/blob/6b3bf3b295febc4a6b47bb284bbcae68d648ec72/client/karma.js#L242 - Update mocha - it is currently used for cross-browser testing and hence blocked
- Switch from
socket.io
tows
to simplify code and reduce amount of dependencies (WebSockets are supported in any reasonably alive browsers, so it may be a good point for a switch as we no longer need fallback mechanisms with only IE 11 supported) - may not do that given that not all proxies, e.g. BrowserStack Local support WebSockets- Remove buffering logic for test results (#3684)
- Use the
- Remove deprecated
customFileHandlers
provider once ecosystem is ready - Remove support for
http2
module. It was implemented over a long deprecated https://yarnpkg.com/package/http2 package. WebSockets in general (https://github.com/websockets/ws/issues/1458) and socket.io, in particular, do not work over HTTP/2 (https://github.com/socketio/socket.io/issues/3564). Node’shttp2
module is not compatible withhttp
andhttps
, so we’ll have to build some complex adapters. And on top of that, the current implementation does not seem to work at the moment (https://github.com/karma-runner/karma/issues/2761). - Drop Node 10 support as it is reaching EOL (https://nodejs.org/en/about/releases/) and blocks dependency updates (https://github.com/karma-runner/karma/pull/3686)
- Update “@commitlint/config-angular” as mentioned in https://github.com/karma-runner/karma/pull/3719#discussion_r740546736.
- Remove
parseConfig()
flags introduced in https://github.com/karma-runner/karma/pull/3660 and https://github.com/karma-runner/karma/pull/3635 and enable behavior by default - Make
parseConfig()
resolveconfigFile
path relative to the CWD instead of relative to thekarma/lib/config.js
to make programmatic API and CLI work the same (https://github.com/karma-runner/karma/issues/1636) - Resolve relative plugin paths relative to the
basePath
or CWD for consistent resolution using both CLI and programmatic approaches - Remove
jsVersion
configuration property support. - Remove
mkdirp
dependency and use docs instead (See https://github.com/karma-runner/karma/pull/3750). - Include https://github.com/karma-runner/karma/pull/3726.
- AI in https://github.com/karma-runner/karma/commit/d9dade2f004a340e49c9a633177576200c286404.
- Consider listening on IPv6 by default. See https://github.com/karma-runner/karma/issues/3730#issuecomment-1128501402.
Issue Analytics
- State:
- Created 3 years ago
- Reactions:1
- Comments:10 (5 by maintainers)
Top Results From Across the Web
Breaking Changes in Version 7 - RxJS
This is potentially breaking in edge cases for node applications, which may be configured to terminate for unhandled exceptions. In the unlikely event...
Read more >Breaking changes in EF Core 7.0 (EF7) - Microsoft Learn
Complete list of breaking changes introduced in Entity Framework Core 7.0 (EF7)
Read more >Breaking changes in 7.0 | Elasticsearch Guide [7.17] | Elastic
Breaking changes in 7.0edit. This section discusses the changes that you need to be aware of when migrating your application to Elasticsearch 7.0....
Read more >What's new in npm v7 - LogRocket Blog
Breaking changes in npm 7.0. npm now makes use of package. exports field, making it no longer possible to require() npm's internal modules....
Read more >Mark Erikson on Twitter: " React-Redux v7 is NOW ...
Release notes: https://t.co/tLmFgFBtOL" / Twitter ... Discussion: Potential hooks API design · Issue #1179 ... Redux breaking changes!!
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
I think we should stick with the shorter list for v6, including the reconnect changes I am working on. We can then start v7 immediately focusing on the IE<11 code. Any v6 issues will be cleared up then.
@XhmikosR Yes, I agree. See “Remove support for http2 module.”` checkbox in the issue.