{"thread":{"id":"12914","subject":"Summer of Code 2008 project application draft: Pack v4","startedAt":"2008-03-29T20:50:46Z","lastAt":"2008-03-31T11:06:48Z","messageCount":3,"participants":["Peter Eriksen","Shawn O. Pearce"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"73333","messageId":"20080329205046.GA27926@bohr.gbar.dtu.dk","threadId":"12914","inReplyTo":null,"subject":"Summer of Code 2008 project application draft: Pack v4","fromName":"Peter Eriksen","fromEmail":"s022018@student.dtu.dk","sentAt":"2008-03-29T20:50:46Z","receivedAt":"2008-03-29T20:50:46Z","isPatch":false,"sender":{"key":"s022018@student.dtu.dk","avatar":null},"body":"Dear Git community,\n\nHere is a draft of my application for the Google Summer of Code 2008.  I\nam aware, that this is a big project, so how might the scope be limited,\nso that the work is still useful to build on top of? How about just\nrebasing the patches already in the sp/pack4 branch in the\nfastimport.git repository?\n\nThe application text goes like this:\n\n\"\nThe project goal is to rebase the code and ideas developed for the\nversion 4 of the git pack format, which showed good promise of making\npacks smaller, and faster.\n\nThe ideas of a new even more optimized pack format has been floating\naround the git world for almost two years, and because of the rapid pace\nof development the code implementing those ideas has become less, and\nless ready for inclusion in mainline.\n\nSince those patches touch so many of the core functions in git, it will\nbe a good chunk of work getting them mergeable, and nobody has gotten\naround to doing that yet. This will be a good oppertunity for laying the\nground work, and getting the ball rolling again.\n\nThis project will not only benefit Git itself, but also the nummerous\nprojects, and developers using Git as their prefered revision control\nsystem, among them many prominent open source and free software\nprojects.\n\n\nAbout me:\nI have been following the development of Git on and of almost from the\nbeginning, and have been trying to learn from its design, and\nimplementation, and especially I have been interested in implementation\nof the git repository, index, and pack format. I have contributed a few\ngeneral clean-up patches, but I have not yet had the chance (read time)\nto really dive in, and make a significant, and non-trivial contribution,\nalthough I would have liked to.\n\"\n\nComments?\n\nRegards,\n\nPeter\n"},{"id":"73402","messageId":"20080331041217.GE10274@spearce.org","threadId":"12914","inReplyTo":"20080329205046.GA27926@bohr.gbar.dtu.dk","subject":"Re: Summer of Code 2008 project application draft: Pack v4","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2008-03-31T04:12:17Z","receivedAt":"2008-03-31T04:12:17Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"Peter Eriksen <s022018@student.dtu.dk> wrote:\n> Here is a draft of my application for the Google Summer of Code 2008.\n...\n> The project goal is to rebase the code and ideas developed for the\n> version 4 of the git pack format, which showed good promise of making\n> packs smaller, and faster.\n> \n> The ideas of a new even more optimized pack format has been floating\n> around the git world for almost two years, and because of the rapid pace\n> of development the code implementing those ideas has become less, and\n> less ready for inclusion in mainline.\n> \n> Since those patches touch so many of the core functions in git, it will\n> be a good chunk of work getting them mergeable, and nobody has gotten\n> around to doing that yet. This will be a good oppertunity for laying the\n> ground work, and getting the ball rolling again.\n\nHave you had a chance to look at those patches yet?  Or the code\nthat they touch, but which has been heavily modified since then\n(like say builtin-pack-objects.c)?\n\nI would hope that forward-porting those patches would only take\nus through to about the mid-term, and then finishing out the bulk\nof the series (like commit dict encoding, maybe dict of object ids\nused in trees) would be the remainder of the summer.  But that may\nbe aggressive.  To be successful I think the student working on\nthis project needs to spend some time during the bonding period to\nunderstand the current pack v2 format and how the pack v4 format\nwas going to address some of the shortcomings of v2.\n\nTo some extent I have left the design details about pack v4 off\nthe ideas page hoping to draw students into explaining their own\nideas for how to improve upon Git's pack data storage.  Even if the\nstudent's ideas provide less compression than pack v4 was hinting\nit can give us, it shows the student's ability to think through\nthe problem and their desire to work on the project.  Its also why\nI called it \"v4/v5\"... some of the students own ideas may be novel\nto us and better than v4, hence creating a v5...\n \n-- \nShawn.\n"},{"id":"73432","messageId":"20080331110648.GA26579@bohr.gbar.dtu.dk","threadId":"12914","inReplyTo":"20080331041217.GE10274@spearce.org","subject":"Re: Summer of Code 2008 project application draft: Pack v4","fromName":"Peter Eriksen","fromEmail":"s022018@student.dtu.dk","sentAt":"2008-03-31T11:06:48Z","receivedAt":"2008-03-31T11:06:48Z","isPatch":false,"sender":{"key":"s022018@student.dtu.dk","avatar":null},"body":"On Mon, Mar 31, 2008 at 12:12:17AM -0400, Shawn O. Pearce wrote:\n> Peter Eriksen <s022018@student.dtu.dk> wrote:\n> > Here is a draft of my application for the Google Summer of Code 2008.\n> ...\n> > The project goal is to rebase the code and ideas developed for the\n> > version 4 of the git pack format, which showed good promise of making\n> > packs smaller, and faster.\n> \n> Have you had a chance to look at those patches yet?\n\nYes, more than a year ago, see e.g. \nhttp://thread.gmane.org/gmane.comp.version-control.git/43016\nbut I will need to refresh my memory.\n\n> Or the code that they touch, but which has been heavily modified\n> since then (like say builtin-pack-objects.c)?\n\nNo, I am not yet too familiar with all the newest changes. I obviously\nwould need to read that code carefully.\n\n> I would hope that forward-porting those patches would only take\n> us through to about the mid-term, and then finishing out the bulk\n> of the series (like commit dict encoding, maybe dict of object ids\n> used in trees) would be the remainder of the summer.  But that may\n> be aggressive.\n\nI will think a bit about this, and try to make a time line.\n\n> To be successful I think the student working on\n> this project needs to spend some time during the bonding period to\n> understand the current pack v2 format and how the pack v4 format\n> was going to address some of the shortcomings of v2.\n\nYes, since I basic understanding of the pack formats some time ago, it\nshould be possible to get up to speed fairly quickly in the bonding\nperiod.\n\n> To some extent I have left the design details about pack v4 off\n> the ideas page hoping to draw students into explaining their own\n> ideas for how to improve upon Git's pack data storage.\n\nThis would be nice of course, but my time is quite limited at the\nmoment, so this will not be possible for me yet. The reason why I\nwould like to participate this year is because my summer vacation this\nyear will be much earlier, and will fit very well into the GSoC window.\n\nThank you for comments.\n\nPeter\n"}]}