ipfs / go-ipld-git

ipld handlers for git objects
MIT License
57 stars 19 forks source link

Make Resolve(nil) return map of top-level objects, fixes #20 #35

Closed sameer closed 3 years ago

sameer commented 5 years ago

I added a mapping to the top-level objects where appropriate. Please let me know if I missed something.

sameer commented 5 years ago
sameer commented 3 years ago

Hello, has this issue been resolved?

rvagg commented 3 years ago

Sorry @sameer! I closed this because we're getting up on 2 years now and I made the (obviously false) assumption that it was stale. We've done quite a bit of work in https://github.com/ipfs/go-ipld-git/pull/46 that will soon be merged and it's a big divergence from the current codebase.

The new code uses https://github.com/ipld/go-ipld-prime as its basis, which will be used for traversal and node resolution, which removes resolve concerns from the codecs themselves. I believe that resolving to the root of one of these nodes should just give you the node as it is, like this PR was trying to do.

I've added some tests in go-ipfs that I think demonstrate that resolution is working as intended by this PR now that we have all the data in ipld-prime form: https://github.com/ipfs/go-ipfs/commit/bbc722b6d801101353e7372f2ffdcecaba536188#diff-376e0b27fef811d85269a61a2b09648655b95dfd0a9136adf278061dbb23a1da (part of https://github.com/ipfs/go-ipfs/pull/7976). Let me know if you think there's something amiss.

sameer commented 3 years ago

Was just curious, thanks for the update! :slightly_smiling_face: