GithubHelp home page GithubHelp logo

commit-graph parser about gitoxide HOT 4 CLOSED

byron avatar byron commented on July 30, 2024
commit-graph parser

from gitoxide.

Comments (4)

Byron avatar Byron commented on July 30, 2024 1

I think I tried to ask about how that collaboration would look like.

Here are my suggestions on how I imagine the contribution process to look like, please chime in if there is something to discuss or alter.

  • create a draft PR to allow early feedback
  • use quick-error for errors exclusively
  • organize modules similarly to how it is done in all the crates
  • tests are a must have
  • keep test fixtures small in the range of a few kilobytes, I try to avoid introducing git LFS.
  • avoid extra crate dependencies by using callbacks to be passed in
  • 'keep it lean' :D

As the commit-graph seems like an optimization, it will probably be coming very late to my task list, and I would be surprised if I feel the need for it in the coming months. This gives you some time to sketch it out.

Please let me know if there are any questions, I am happy to help.

from gitoxide.

Byron avatar Byron commented on July 30, 2024

Thanks for your interest!

Indeed, the git-repository is just a catch-all, and I generally organize code by its dependencies to other crates. From the first looks it seems that it's a fairly well separated concept. Strictly optional, and really a file format to help speed up certain kinds of commit graph queries.

Reading the fanout and bisect code is quite trivial, and I clearly prefer putting everything into its own crate, also because there is no other relation to an object database. There will be quite some support code needed for (eventually) creating and maintaining the format, and a crate appears like an optimal container for that.

To answer the questions more succinctly:

  1. Do you have a strong preference where commit graph I/O should go?

Their own crate, see the git-commitgraph crate I just created.

  1. I assume adding read-only support is acceptable for now. Is this correct?

Absolutely. It has to start somewhere and reading is usually easier than writing.

How do you imagine contributing to this project?

from gitoxide.

avoidscorn avatar avoidscorn commented on July 30, 2024

A separate crate sounds great!

How do you imagine contributing to this project?

I'm not sure what you're asking exactly, but my answer is yes!

from gitoxide.

Byron avatar Byron commented on July 30, 2024

With the PR merged, I believe this issue can be closed - thanks a lot for your contribution! Version 0.1 of the git-commitgraph crate was just published.

from gitoxide.

Related Issues (20)

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.