-
Notifications
You must be signed in to change notification settings - Fork 992
v7 #1432
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
Conversation
|
Bloody hell! Nice work Rowan! |
DenisCarriere
left a comment
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.
Love it 👍
It's a big change, but I think as we roll out the rest of the modules in v7.0 this will be a lot easier to review.
For now I think it's a great direction! 🚀
|
Impressive @rowanwins! 👍 |
|
Just dropping a note here on various things I've been progressing
I'm going to give myself another week or so looking at some of those before giving up on them. |
|
|
Awesome work thus far! |
|
Thanks @tmcw - slowly getting there, unfortunantly time has been a rare commodity over the past few months. My plan from here is
In other positive news I've had a couple of past contributors looking at getting back into Turf so hopefully once v7 is reasonably stable we'll be able to get a few others contributing again. Once the v7 alpha is out I think I'll also write up a Medium post or something to try and attract a few more folks. |
|
👍 Let me know whenever you need a review on this branch. |
|
Hi @tmcw,
Cheers |
Update with current discussion status.
Issue-1467: Fixes incorrect result of boolean-intersects
|
Hi @rowanwins I just had a chat with @simonokeefe (who you met at FOSS4G)... great work!! Looking forward to adding it into our project. Our major issue was multiple JSTS imports, but these changes clearly go much further toward ES6 compatibility. Again, thanks and keep up the great work. |
|
Marking as approved from my side - happy to help out landing this, as far as I can tell the checklist looks like
|
|
Hi @tmcw Yeah for some reason The conflicts are pretty minor I think so that shouldn't be hard. There is already an alpha, I'd be happy to release this as the next version of the alpha :) |
|
So dissolve is now passing with a bit of a refactor to the tests. Outstanding issues
|
fix: Refactor away defineProperties to help with treeshaking
BTW, for static processing use cases like unkink-polygon, I'd highly recommend looking into https://github.com/mourner/flatbush as an RBush replacement. It's much faster and already a ES6 module. |
|
Down to isobands and the polygon-clipping treeshaking issue (for which I've generated a PR) |
|
@mourner @rowanwins I published a new package |
|
Superceded |
Gday @tmcw @DenisCarriere @stebogit @stevage @Turbo87
As discussed in #1428 attached is a branch showing a potential way to rejig the code.
High Level Changes
packagesdir has becomesrcsrcwill now drop theturf-prefixsrc/alongandsrc/helpersAt the module level
A module now contains the following files
index.jswhich is an ES6 moduleindex.tsas my starting pointtsc, although it does mean that some manual adjustments need to be made for initial validation of inputs.../whateverinstead of@turf/whateverindex.tswill be our ts integration which just uses an existing file which we used to havetsconfig.jsonin the roottest.jsoccasionally needs some tweaks if you call other turf modules, similar to abovebench.jscan be left exactly the sameTests
Because we now only have a single package.json at the root level I've had to rejig how the tests get called.
test-modulewhich accepts an argumentnpm run test-module alongwill run thetest.jsinsrc/alongnpm run benchmark-module alongwill run thebenchmark.jsinsrc/along-r esmflagSummary
src/turfbut I'm not envisaging any tough changes here hopefully.turf/index.mjsand moving it tosrc/index.jsOnce we're getting close-ish I'd also like to have a list of issues to address before v7.0.0 is released. I'll get that organised at some stage.
And prior to publishing 7.0.0 I intend on publishing an
alphaversion to npm so that we can test various things (eg how you browserify folks can continue to work with turf).Anyway getting late so that's enough for one night. Any major concerns at this stage anyone?