-
Notifications
You must be signed in to change notification settings - Fork 9
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
Consider joining efforts with pmtiles2 #16
Comments
Hey 🙃 It would probably make sense to join efforts (at least to to some degree). Before I started with my implementation I took a look at this implementation, but decided against using it.
I've recently worked on async support via the |
@DerZade, thx for the quick reply! :) So first off, I don't think either @Seelenbinder nor myself are hard-set on the specific implementation path or architecture, we simply need a bunch of functionality (I need it for Martin tile server, and Luke needs it for his company). So as long as it has async, i'm all good. Moreover, I think you have progressed a lot further than we have in some areas, and pmtiles crate hasn't been touched for a while (it is in production in a number of places). There is one reported bug AFAIK, but I don't have a reproducable case yet. Secondly, IMHO - for learning it might be good to hack on one code with more people because we can help each other learn Rust better - it wasn't too long ago when I started this journey too (still on it actually, and far from the end). Lastly, but probably most importantly, I am more concerned with users being confused over which crate to pick, and all of us duplicating our efforts instead of collaborating - i.e. it splinters the already tiny community, which is a bit sad and wasteful. I am even willing to toss some of pmtiles(1) code out and merge in yours (Luke, don't kill me!) as long as we all can progress faster on a common project. So all that said, I think you actually have a better understanding of where thing are code-wise because you have spent more time on it more recently, and could offer a way to merge our code. I think we should keep using What do you think? |
Thanks for opening the issue. I'm not opposed, in principle. However, before we go too far down the road, I think there is a significant difference in approaches which we'd need to resolve, namely
I don't have the bandwidth to spearhead such an effort right now, and, while, we aren't quite using this crate in production yet, we will shortly. (Which means I'll get back to hacking on it if we discover issues.) It is very nice you have writing! 😄 |
I personally do not need a HTTP backend at all. I just want to read and write some PMTiles 😇 So what do you guys think about having two crates in the same repository (idc if here or arma-place/pmtiles-rs)? One crate for low level reading / writing and another which depends on the first one and includes the HTTP backends. This would still result in one common implementation of the format. |
Why not use the "features" feature for that? |
That would also be a possibility 🙈. Did I understand correctly that your implementation of the format is not yet complete and that you want to build mostly on my implementation? If that is the case, the first (and probably biggest) thing that needs to happen, is adapting your HTTP backends so that they use my implementation of the format. Correct? I'll release a new version of |
That's definitely the "correct" Rust option. 😄
Our read-side implementation is more or less complete, and is pretty well sanity tested. There it no write-side implementation. I think the big bad warning about production use should go away, since it seems to pass basic sniff tests for users. 😄 The big missing piece there is solid documentation.
So that's actually my biggest concern. My initial intuition is that I also pretty explicitly chose to use |
(And to be clear, I'm not trying to stall the efforts, just trying wrap my head around how we could unify the two implementations without losing the advantages of both.) |
I choose I haven't had a lot of time yet, to look at your code in detail, but I'm quite convinced that implementing For a bit of context: |
Sounds good @DerZade! It seems like our goals align, so once we both have more time, hopefully we can hash out what the merged result looks like. |
I just spotted arma-place/pmtiles-rs efforts, and I hope it would make sense for us all to work on this together. CCing @DerZade and @TheWillard
The text was updated successfully, but these errors were encountered: