-
Notifications
You must be signed in to change notification settings - Fork 448
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
docs: async migration #397
Conversation
I think the issue is that code migration to satisfy syntax is destructive to branch developers and almost irrelevant. Whatever code style was chosen and used to create a working and usable project, that is the code that should continue to be maintained and working. if obfuscation and annoyance and wasted time is the goal, then migrate the code bit-by-bit and ruin working branch applications and invalidate ports of the project... by all means. |
@didlie I agree with avoiding immediate breaking changes, especially if they are really impactful. However, in this case, we have been talking about this since last year #266 The main goals with this change are to improve the efficiency of the codebase, decrease the bundle size of With this PR we are essentially pointing this information to new contributors, who would start a new project and try to use the latest versions of each libp2p modules, which is still not supported. For ongoing projects, each module that got upgraded was released as a breaking change, and users will be able to see if they should update to the newest version of a module, or wait until all the code migration is complete (until getting into |
it will make the code more condense and less readable and less adaptable...why not just let it be compiled? compilation size should be identical. |
@didlie compilation won’t fix the pull-stream issues. this isn’t just a style change, the actually semantics of how data is processed change and are cleaned up quite a bit by migrating to async iterators. |
@mikeal there is nothing unethical about mixing code versions in a single repo. It can actually help developers distinguish. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
I've updated the comment at #266, to include the current supported minor version list of packages. We will update that as support is completed.
I appreciate the discussion on the impacts of the migration, but for visibility these should be done in the parent issue for async/await, ipfs/js-ipfs#1670.
This PR is to help inform about the current efforts already underway.
## [5.0.2](libp2p/js-libp2p-kad-dht@v5.0.1...v5.0.2) (2022-11-05) ### Dependencies * bump it-all from 1.0.6 to 2.0.0 ([libp2p#389](libp2p/js-libp2p-kad-dht#389)) ([0596485](libp2p/js-libp2p-kad-dht@0596485)) * bump it-drain from 1.0.5 to 2.0.0 ([libp2p#390](libp2p/js-libp2p-kad-dht#390)) ([fdda357](libp2p/js-libp2p-kad-dht@fdda357)) * bump it-first from 1.0.7 to 2.0.0 ([libp2p#391](libp2p/js-libp2p-kad-dht#391)) ([681c24e](libp2p/js-libp2p-kad-dht@681c24e)) * bump it-length from 1.0.4 to 2.0.0 ([libp2p#394](libp2p/js-libp2p-kad-dht#394)) ([ae07736](libp2p/js-libp2p-kad-dht@ae07736)) * bump it-map from 1.0.6 to 2.0.0 ([libp2p#396](libp2p/js-libp2p-kad-dht#396)) ([ac5101c](libp2p/js-libp2p-kad-dht@ac5101c)) * bump it-merge from 1.0.4 to 2.0.0 ([libp2p#393](libp2p/js-libp2p-kad-dht#393)) ([1acb5f1](libp2p/js-libp2p-kad-dht@1acb5f1)) * bump it-parallel from 2.0.2 to 3.0.0 ([libp2p#392](libp2p/js-libp2p-kad-dht#392)) ([06a2c48](libp2p/js-libp2p-kad-dht@06a2c48)) * bump it-take from 1.0.2 to 2.0.0 ([libp2p#397](libp2p/js-libp2p-kad-dht#397)) ([4e909d2](libp2p/js-libp2p-kad-dht@4e909d2)) * **dev:** bump it-filter from 1.0.3 to 2.0.0 ([libp2p#395](libp2p/js-libp2p-kad-dht#395)) ([5668f9c](libp2p/js-libp2p-kad-dht@5668f9c)) * **dev:** bump it-last from 1.0.6 to 2.0.0 ([libp2p#388](libp2p/js-libp2p-kad-dht#388)) ([5b55239](libp2p/js-libp2p-kad-dht@5b55239))
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
In the context of
js-libp2p
being a skeleton project, when a new user tries to use this there is a probability of hitting problems, as a consequence of the on going efforts to migrate the codebase toasync
. For instance, if we try to installlibp2p-bootstrap
to use in the bundle, it will use the newest version by default, which is already migrated, taking problems tojs-libp2p
, which still expects callbacks.This PR adds a note to new users in the README