GithubHelp home page GithubHelp logo

ggit's People

Contributors

kourge avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

digitegal

ggit's Issues

Document different versions of pack indices

Both format.PackIndexV1 and format.PackIndexV2 are undocumented and the difference between the two is unclear. A brief overview of how the two index formats differ is needed.

Migrate to fmt.Errorf

We define our own implementation of Errorf, which does fmt.Sprintf and wraps the result in errors.New. TODO: migrate to fmt.Errorf, which does exactly that.

format.PackIndexV2.OffsetForPos does not support offsets higher than 2 GiB

Per the v2 pack index format description, for an entry, a 32-bit offset with its MSB set to 1 means the the 31-bit LSBs form an index to the higher offsets table, which contains zero or more unsigned 64-bit integers that represent the true offset of an entry when the offset is greater than 2 GiB.

format.PackIndexV2.OffsetForPos currently assumes that this is never the case and always casts a 32-bit offset to an int64, even if its MSB is set to 1.

Rename core.TreeEntry field Sha to Sha1

The core.TreeEntry struct contains a field named Sha of type core.Sha1. Everywhere else, public fields of type core.Sha1 are named Sha1, so this instance should be changed for consistency.

Project status

Hello @kourge,

I'm very interested on ggit and I'd like to know what's the status of it and your plans in the future for it.
You put a lot of effort in the project and then for some reason you didn't continue.

Do you, by chance, have any roadmap or TODO list of things that need to be polished or reviewed?

P.D: Project structure is super nice. Congrats!

Rename util.GapSlice to util.PieceSlice

In the util package, a type currently called GapSlice is a misnomer. It is named after a gap buffer, which is related to but not to be confused with a piece table, the actual data structure that the current type implements. TODO: rename the type to PieceSlice.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.