1. 06 Aug, 2011 1 commit
  2. 09 Jul, 2011 2 commits
    • status: get blob object id of file on disk · 205166d2
      Add git_status_hashfile() to get blob's object id for a file without adding
      it to the object database or needing a repository at all.
      This functionality is similar to `git hash-object` without '-w'.
      Jason Penny committed
    • odb: Direct writes are back · afeecf4f
      DIRECT WRITES ARE BACK AND FASTER THAN EVER. The streaming writer to the
      ODB was an overkill for the smaller objects like Commit and Tags; most
      of the streaming logic was taking too long.
      
      This commit makes Commits, Tags and Trees to be built-up in memory, and
      then written to disk in 2 pushes (header + data), instead of streaming
      everything.
      
      This is *always* faster, even for big files (since the git_filebuf class
      still does streaming writes when the memory cache overflows). This is
      also a gazillion lines of code smaller, because we don't have to
      precompute the final size of the object before starting the stream (this
      was kind of defeating the point of streaming, anyway).
      
      Blobs are still written with full streaming instead of loading them in
      memory, since this is still the fastest way.
      
      A new `git_buf` class has been added. It's missing some features, but
      it'll get there.
      Vicent Marti committed
  3. 26 Jun, 2011 1 commit
  4. 14 Jun, 2011 1 commit
  5. 08 Apr, 2011 1 commit
  6. 04 Apr, 2011 1 commit
  7. 20 Mar, 2011 1 commit
  8. 03 Mar, 2011 1 commit
    • Cleanup the testing toolkit · 3dccfed1
      Tests are now declared with detailed descriptions and a short test name:
      
      	BEGIN_TEST(the_test0, "this is an example test that does something")
      		...
      	END_TEST
      
      Modules are declared through a simple macro interface:
      
      	BEGIN_MODULE(mod_name)
      		ADD_TEST(the_test0);
      		...
      	END_MODULE
      
      Error messages when tests fail have been greatly improved.
      
      Signed-off-by: Vicent Marti <tanoku@gmail.com>
      Vicent Marti committed
  9. 09 Feb, 2011 1 commit
    • Internal changes on the backend system · d4b5a4e2
      The priority value for different backends has been removed from the
      public `git_odb_backend` struct. We handle that internally. The priority
      value is specified on the `git_odb_add_alternate`.
      
      This is convenient because it allows us to poll a backend twice with
      different priorities without having to instantiate it twice.
      
      We also differentiate between main backends and alternates; alternates have
      lower priority and cannot be written to.
      
      These changes come with some unit tests to make sure that the backend
      sorting is consistent.
      
      The libgit2 version has been bumped to 0.4.0.
      
      This commit changes the external API:
      
      CHANGED:
      	struct git_odb_backend
      		No longer has a `priority` attribute; priority for the backend
      		in managed internally by the library.
      
      	git_odb_add_backend(git_odb *odb, git_odb_backend *backend, int priority)
      		Now takes an additional priority parameter, the priority that
      		will be given to the backend.
      
      ADDED:
      	git_odb_add_alternate(git_odb *odb, git_odb_backend *backend, int priority)
      		Add a backend as an alternate. Alternate backends have always
      		lower priority than main backends, and writing is disabled on
      		them.
      
      Signed-off-by: Vicent Marti <tanoku@gmail.com>
      
      Signed-off-by: Vicent Marti <tanoku@gmail.com>
      Vicent Marti committed
  10. 05 Feb, 2011 1 commit
    • Add support for SQLite backends · c041af95
      Configure again the build system to look for SQLite3. If the library is
      found, the SQLite backend will be automatically compiled.
      
      Enjoy *very* fast reads and writes.
      
      MASTER PROTIP: Initialize the backend with ":memory" as the path to the
      SQLite database for fully-hosted in-memory repositories. Rejoice.
      
      Signed-off-by: Vicent Marti <tanoku@gmail.com>
      Vicent Marti committed
  11. 02 Feb, 2011 2 commits
  12. 11 Dec, 2010 1 commit
  13. 02 Dec, 2010 2 commits
  14. 05 Jun, 2009 1 commit
  15. 04 Nov, 2008 2 commits
  16. 02 Nov, 2008 1 commit
  17. 01 Nov, 2008 3 commits
  18. 31 Oct, 2008 2 commits