Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drop legacy features & runtime environments #716

Merged
merged 13 commits into from
Apr 17, 2021
Merged

Drop legacy features & runtime environments #716

merged 13 commits into from
Apr 17, 2021

Conversation

vweevers
Copy link
Member

Ref Level/community#98.

Blocked by release of Level/deferred-leveldown#86, otherwise ready for review (assuming tests pass on Sauce Labs).

By using `queueMicrotask()` in browsers, for a consistent experience
regardless of bundler (and of runtime in the future, when we drop
node 10). Webpack no longer shims node core modules.

In theory bundlers can now skip shimming `process`, were it not for
our `readable-stream` dependency which uses `process.nextTick()` at
the time of writing and has more reason to keep doing so. In modules
where the risk of timing issues (due to not having a common microtask
scheduler between modules) is low, like here in `levelup`, I prefer
the idiomatic `queueMicroTask()` function.

Lastly, maybe streams are not here to stay. Async iterators are
coming to the level ecosystem. Or maybe we'll switch to `streamx`
which is planning to use `queueMicrotask()` as well.
In favor of Batch.db which matches the property on
abstract-leveldown's chained batch interface.

Unlikely to cause breakage because _levelup was a private and
undocumented property.
@vweevers vweevers added maintenance General maintenance semver-major Changes that break backward compatibility labels Apr 11, 2021
@vweevers
Copy link
Member Author

Chrome on Android 10 failed, but Android 6-9 and 11 did not, so I think we can skip Android 10 for now and look into it later.

@vweevers
Copy link
Member Author

5.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance General maintenance semver-major Changes that break backward compatibility
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant