summaryrefslogtreecommitdiff
path: root/include/git2/pack.h
Commit message (Collapse)AuthorAgeFilesLines
* git_packbuilder_write: Allow setting path to NULL to use the default pathJosh Triplett2020-05-231-1/+1
| | | | | | If given a NULL path, write to the object path of the repository. Add tests for the new behavior.
* doc: add missing documentation commentsEtienne Samson2019-06-151-0/+10
|
* indexer: correct missing includesEtienne Samson2019-06-151-0/+1
| | | | Docurium seems to choke on this header because it can't see both git_indexer_progress & git_indexer_progress_cb, let's add the include.
* indexer: use git_indexer_progress throughoutEdward Thomson2019-02-221-1/+1
| | | | | Update internal usage of `git_transfer_progress` to `git_indexer_progreses`.
* Introduce GIT_CALLBACK macro to enforce cdeclEdward Thomson2019-01-171-2/+2
| | | | | | | | | Since we now always build the library with cdecl calling conventions, our callbacks should be decorated as such so that users will not be able to provide callbacks defined with other calling conventions. The `GIT_CALLBACK` macro will inject the `__cdecl` attribute as appropriate.
* packbuilder: `size_t` all the thingsEdward Thomson2016-07-241-4/+4
| | | | | | | | After 1cd65991, we were passing a pointer to an `unsigned long` to a function that now expected a pointer to a `size_t`. These types differ on 64-bit Windows, which means that we trash the stack. Use `size_t`s in the packbuilder to avoid this.
* packbuilder: introduce git_packbuilder_insert_recur()Carlos Martín Nieto2015-03-171-0/+12
| | | | | | This function recursively inserts the given object and any referenced ones. It can be thought of as a more general version of the functions to insert a commit or tree.
* pack-objects: fill a packbuilder from a walkCarlos Martín Nieto2015-03-111-0/+13
| | | | | | | | | | | Most use-cases for the object packer communicate in terms of commits which each side has. We already have an object to specify this relationship between commits, namely git_revwalk. By knowing which commits we want to pack and which the other side already has, we can perform similar optimisations to git, by marking each tree as interesting or uninteresting only once, and not sending those trees which we know the other side has.
* Don't redefine the same callback types, their signatures may changeJacques Germishuys2014-04-211-1/+1
|
* In-memory packing backendvmg/mempackVicent Marti2014-03-261-0/+11
|
* Test cancel from indexer progress callbackRussell Belfer2013-12-111-1/+2
| | | | | | | | | | | | | | | This adds tests that try canceling an indexer operation from within the progress callback. After writing the tests, I wanted to run this under valgrind and had a number of errors in that situation because mmap wasn't working. I added a CMake option to force emulation of mmap and consolidated the Amiga-specific code into that new place (so we don't actually need separate Amiga code now, just have to turn on -DNO_MMAP). Additionally, I made the indexer code propagate error codes more reliably than it used to.
* Update files that reference tests-clarBen Straub2013-11-141-1/+1
|
* Allow callers to set mode on packfile creationEdward Thomson2013-11-071-0/+2
|
* Add git_packbuilder_hash to query pack filenameEdward Thomson2013-11-071-0/+10
|
* Support cancellation in push operationJameson Miller2013-10-021-1/+1
| | | | | | | | | | | | | | | | This commit adds cancellation for the push operation. This work consists of: 1) Support cancellation during push operation - During object counting phase - During network transfer phase - Propagate GIT_EUSER error code out to caller 2) Improve cancellation support during fetch - Handle cancellation request during network transfer phase - Clear error string when cancelled during indexing 3) Fix error handling in git_smart__download_pack Cancellation during push is still only handled in the pack building and network transfer stages of push (and not during packbuilding).
* Initial Implementation of progress reports during pushJameson Miller2013-09-301-0/+30
| | | | | | | | | | | | | | | | | | | | | | This adds the basics of progress reporting during push. While progress for all aspects of a push operation are not reported with this change, it lays the foundation to add these later. Push progress reporting can be improved in the future - and consumers of the API should just get more accurate information at that point. The main areas where this is lacking are: 1) packbuilding progress: does not report progress during deltafication, as this involves coordinating progress from multiple threads. 2) network progress: reports progress as objects and bytes are going to be written to the subtransport (instead of as client gets confirmation that they have been received by the server) and leaves out some of the bytes that are transfered as part of the push protocol. Basically, this reports the pack bytes that are written to the subtransport. It does not report the bytes sent on the wire that are received by the server. This should be a good estimate of progress (and an improvement over no progress).
* Clean up some documentationCarlos Martín Nieto2013-07-231-2/+2
| | | | clang's docparser highlighted these.
* Fixed most documentation header bugsAndreas Linde2013-06-241-1/+1
| | | | | | | | | | | Fixed a few header @param and @return typos with the help of -Wdocumentation in Xcode. The following warnings have not been fixed: common.h:213 - Not sure how the documentation format is for '...' notes.h:102 - Correct @param name but empty text notes.h:111 - Correct @param name but empty text pack.h:140 - @return missing text pack.h:148 - @return missing text
* packbuilder: also write index in git_packbuilder_writeMichael Schubert2013-05-271-3/+9
| | | | | | git_packbuilder_write() used to write a packfile to the passed file path. Instead, ask for a destination directory and create both the packfile and an index, as most users probably do expect.
* Fix trailing whitespacesnulltoken2013-05-151-3/+3
|
* Added function to insert commit into packXavier L2013-04-231-0/+12
|
* Make sure docurium can see git_packbuilder_foreachCarlos Martín Nieto2013-03-051-1/+1
|
* pack.h: improve docs on how to create a packfileMichael Schubert2013-02-251-1/+27
|
* update copyrightsEdward Thomson2013-01-081-1/+1
|
* Rename ref and reflog apis for consistencyBen Straub2012-11-271-8/+12
|
* packbuilder: add accessors for the number of total and written objectsCarlos Martín Nieto2012-11-011-0/+14
|
* packbuilder: add git_packbuilder_foreachCarlos Martín Nieto2012-11-011-0/+10
| | | | | Let the user get each object as a buffer+size pair so they can handle the packfile content as they need to.
* gsoc-pack-objects WIPMichael Schubert2012-10-091-0/+89