summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add a parallel runner for clarcmn/parallel-clarCarlos Martín Nieto2015-03-221-0/+77
| | | | | | As we are mostly I/O bound, the CPU tends to sit idle. With this script, we can split the work among multiple clar processes automatically, cutting down the time it takes for a full test run.
* git: make sure to close the network streamCarlos Martín Nieto2015-03-211-0/+1
| | | | | In case of a bad url or other error during the connection setup, we close the stream via free.
* Merge pull request #3003 from shawnl/masterEdward Thomson2015-03-201-1/+1
|\ | | | | fix changelog
| * fix changelogShawn Landden2015-03-201-1/+1
|/
* Merge pull request #3000 from libgit2/vmg/mkdir-extEdward Thomson2015-03-191-5/+14
|\ | | | | mkdir-ext: Assume directories don't exist; fix all race cases
| * mkdir-ext: Retry lstat on EEXIST racevmg/mkdir-extVicent Marti2015-03-191-5/+14
|/
* Merge pull request #2996 from ethomson/dll_commentsCarlos Martín Nieto2015-03-191-2/+6
|\ | | | | win32 resource: allow custom comments field in DLL
| * win32 resource: allow custom comments field in DLLEdward Thomson2015-03-181-2/+6
| |
* | Merge pull request #2967 from jacquesg/merge-whitespaceEdward Thomson2015-03-1857-17/+261
|\ \ | |/ |/| Allow merges of files (and trees) with whitespace problems/fixes
| * Added changelog entries for whitespace and patience merges.Jacques Germishuys2015-03-171-0/+12
| |
| * Added options to enable patience and minimal diff driversJacques Germishuys2015-03-162-0/+12
| |
| * Collapse whitespace flags into git_merge_file_flags_tJacques Germishuys2015-03-165-35/+23
| |
| * Renamed git_merge_options 'flags' to 'tree_flags'Jacques Germishuys2015-03-166-12/+12
| |
| * Added tests to merge files and branches with whitespace problems and fixesJacques Germishuys2015-03-1649-0/+198
| |
| * Allow for merges with whitespace discrepanciesJacques Germishuys2015-03-163-4/+38
| |
* | Merge pull request #2993 from ethomson/clar_updateCarlos Martín Nieto2015-03-181-1/+1
|\ \ | | | | | | clar: update to 08f434d
| * | clar: update to 08f434dEdward Thomson2015-03-171-1/+1
| | |
* | | Merge pull request #2955 from git-up/update_tips_fixesCarlos Martín Nieto2015-03-182-13/+18
|\ \ \ | | | | | | | | Update tips fixes
| * | | Fixed active refspecs not reset by git_remote_upload()Pierre-Olivier Latour2015-03-111-0/+4
| | | |
| * | | Fixed update_tips callback called for failed pushed referencesPierre-Olivier Latour2015-03-111-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | The current implementation does not set 'fire_callback' back to 0 for failed updates so the callback still fires. Instead of adding yet another condition check to set 'fire_callback' to 0 if needed, considering this function should be a no-op for failed updates anyway, the best fix is to simplify its logic to check upfront if the update is a failed one.
* | | | Merge remote-tracking branch 'ethomson/submodule_8dot3'Carlos Martín Nieto2015-03-184-61/+275
|\ \ \ \
| * | | | repository: Introduce "reserved names"Edward Thomson2015-02-274-61/+274
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A repository can have multiple "reserved names" now, not just a single "short name" for the repository folder itself. Refactor to include a git_repository__reserved_names that returns all the reserved names for a repository.
* | | | | Merge pull request #2985 from claudiuolteanu/patch-1Edward Thomson2015-03-171-1/+1
|\ \ \ \ \ | | | | | | | | | | | | Lower case the include directive of windows header
| * | | | | Lower case the include directive of windows headerClaudiu Olteanu2015-03-161-1/+1
| | |_|_|/ | |/| | | | | | | | Since the Linux platform has a case sensitive file system, the header name should be lower case for cross compiling purposes. (On Linux, the mingw header is called ```windows.h```).
* | | | | Merge pull request #2983 from ↵Edward Thomson2015-03-172-9/+19
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | jeffhostetler/jeffhostetler/perf_merge_lazy_binary_check PERF: In MERGE, lazily compute is_binary
| * | | | | PERF: In MERGE, lazily compute is_binaryJeff Hostetler2015-03-162-9/+19
| |/ / / /
* | | | | Merge pull request #2991 from ↵Edward Thomson2015-03-171-1/+1
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | sba1/fix-uninitialized-data-access-remote-update-tips Initialize refs vector in git_remote_update_tips().
| * | | | Initialize refs vector in git_remote_update_tips().Sebastian Bauer2015-03-171-1/+1
|/ / / / | | | | | | | | | | | | | | | | Otherwise, bailing out early when ls_to_vector() fails accesses uninitialized memory.
* | | | Merge pull request #2962 from libgit2/cmn/reflog-annotatedEdward Thomson2015-03-1714-27/+247
|\ \ \ \ | | | | | | | | | | Add annotated versions of ref-modying functions
| * | | | CHANGELOG: add notes about the annotated ref-modifying functionscmn/reflog-annotatedCarlos Martín Nieto2015-03-161-1/+14
| | | | |
| * | | | Add tests for the annotated versions of ref-modifying functionsCarlos Martín Nieto2015-03-165-16/+66
| | | | | | | | | | | | | | | | | | | | | | | | | This also brings the soft-reset tests back to life. The function name was missing an underscore, meaning they had not been running.
| * | | | annotated_commit: provide a constructor from a revspecCarlos Martín Nieto2015-03-162-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This extra constructor will be useful for the annotated versions of ref-modifying functions, as it allows us to create a commit with the extended sha syntax which was used to retrieve it.
| * | | | Add annotated commit versions of reflog-modifying functionsCarlos Martín Nieto2015-03-166-10/+122
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | We do not always want to put the id directly into the reflog, but we want to speicfy what a user typed. For this use-case we provide annotated version of a few functions which let the caller specify what user-friendly name was used when asking for the operation.
* | | | Merge pull request #2972 from libgit2/cmn/pack-objects-walkEdward Thomson2015-03-1710-37/+288
|\ \ \ \ | | | | | | | | | | [WIP] Smarter pack-building
| * | | | local: let the packbuilder perform smarter object insertioncmn/pack-objects-walkCarlos Martín Nieto2015-03-111-32/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we use the most naïve and inefficient method for figuring out which objects to send to the remote whereby we end up trying to insert subdirs which have not changed multiple times. Instead, make use of the packbuilder's built-in more efficient method which uses the walk to feed the object list and avoids inserting an object and its descendants.
| * | | | pack-objects: fill a packbuilder from a walkCarlos Martín Nieto2015-03-113-1/+265
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | Reorder some khash declarationsCarlos Martín Nieto2015-03-117-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Keep the definitions in the headers, while putting the declarations in the C files. Putting the function definitions in headers causes them to be duplicated if you include two headers with them.
* | | | | Merge pull request #2982 from libgit2/cmn/stream-check-ecEdward Thomson2015-03-173-1/+14
|\ \ \ \ \ | | | | | | | | | | | | Don't ask for a stream's certificate unless it's encrypted
| * | | | | http: do not try to use the cert callback on unencrypted streamscmn/stream-check-ecCarlos Martín Nieto2015-03-162-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the user has a certificate check callback set, we still have to check whether the stream we're using is even capable of providing a certificate. In the case of an unencrypted certificate, do not ask for it from the stream, and do not call the callback.
| * | | | | Add failing test for cert callback with non-ecrypted streamCarlos Martín Nieto2015-03-161-0/+7
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | When we have an HTTP stream and have set the certificatre check callback, we currently fail as we ask the unencrypted stream for its certificate.
* | | | | Merge pull request #2977 from pks-t/submodule-sync-url-fixEdward Thomson2015-03-172-5/+5
|\ \ \ \ \ | |/ / / / |/| | | | Fix git_submodule_sync writing URL to wrong key.
| * | | | Fix git_submodule_sync writing URL to wrong key.Patrick Steinhardt2015-03-122-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently git_submodule_sync writes the submodule's URL to the key 'branch.<REMOTE_NAME>.remote' while the reference implementation of `git submodule sync` writes to 'remote.<REMOTE_NAME>.url', which is the intended behavior according to git-submodule(1).
* | | | | Merge pull request #2975 from git-up/diff_index_retainCarlos Martín Nieto2015-03-151-2/+1
|\ \ \ \ \ | | | | | | | | | | | | Avoid retaining / releasing the index more than necessary when GIT_DIFF_...
| * | | | | Avoid retaining / releasing the index more than necessary when ↵Pierre-Olivier Latour2015-03-111-2/+1
| |/ / / / | | | | | | | | | | | | | | | GIT_DIFF_UPDATE_INDEX is enabled
* | | | | indexer: bring back the error message on duplcate commitsCarlos Martín Nieto2015-03-131-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that erroring out on duplicate commits is the right thing to do, but git was not hitting the bug on the server-side. Bring back a descriptive error message in case of duplicate entries and error out.
* | | | | indexer: don't worry about duplicate objectsCarlos Martín Nieto2015-03-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a packfile includes duplicate objects, we can choose to use the secon copy instead of the first by using the same logic as if it were the first. Change the error condition from 0 to -1, which indicates a bad resize, and set the OOM message in that case. This does mean we will leak the first copy of the object. We can deal with that later, but making fetches work is more important.
* | | | | indexer: set an error message on duplicate objects in packCarlos Martín Nieto2015-03-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While this is not even close to a fix, we can at least set an error message so we know which error we are facing. Up to know we just returned an error without a message.
* | | | | Put back the number of expected references to 6 from the test repoCarlos Martín Nieto2015-03-131-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was but down to 5 when GitHub made a change to their server which made them stop honouring the include-tag request. This has recently been corrected, so we can bring it back up to six.
* | | | | Merge pull request #2973 from libgit2/cmn/local-pack-threadingEdward Thomson2015-03-122-0/+6
|\ \ \ \ \ | |/ / / / |/| | | | local: create pack with multiple threads
| * | | | local: create pack with multiple threadscmn/local-pack-threadingCarlos Martín Nieto2015-03-112-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The default behaviour for the packbuilder is to perform the work in a single thread, which is fine for the public API, but we currently have no way for a user to determine the number of threads to use when creating the packfile, which makes our clone behaviour over the filesystem quite a bit slower than what git offers. This is a very particular scenario, in which we avoid spawning git by being ourselves the server-side, so it's probably ok to auto-set the threading, as the upload-pack process would do if we were talking to git.