Log

Author Commit Date CI Message
Russell Belfer cccacac5 2012-11-14T22:41:51 Add POSIX compat lstat() variant for win32 The existing p_lstat implementation on win32 is not quite POSIX compliant when setting errno to ENOTDIR. This adds an option to make is be compliant so that code (such as checkout) that cares to have separate behavior for ENOTDIR can use it portably. This also contains a couple of other minor cleanups in the posix_w32.c implementations to avoid unnecessary work.
Russell Belfer a277345e 2012-11-14T22:37:13 Create internal strcmp variants for function ptrs Using the builtin strcmp and strcasecmp as function pointers is problematic on win32. This adds internal implementations and divorces us from the platform linkage.
Vicent Martí 513e794e 2012-11-13T14:59:18 Merge pull request #1068 from carlosmn/config-empty-value Deal with empty and nonexsitent values in config
Carlos Martín Nieto 0da81d2b 2012-11-13T14:43:23 config: return an emtpy string when there is no value Returning NULL for the string when we haven't signaled an error condition is counter-intuitive and causes unnecessary edge cases. Return an empty string when asking for a string value for a configuration variable such as '[section] var' to avoid these edge cases. If the distinction between no value and an empty value is needed, this can be retrieved from the entry directly. As a side-effect, this change stops the int parsing functions from segfaulting on such a variable.
Vicent Marti f6c18dda 2012-11-13T14:17:41 http: Unrustle
Vicent Martí aa1c3b58 2012-11-13T14:13:47 Merge pull request #1016 from arrbee/fix-checkout-dir-removal Update checkout with new strategies & behavior
Vicent Marti 26227474 2012-11-13T14:05:43 makefile: Fix the builtin Makefile
Carlos Martín Nieto 47db054d 2012-11-13T13:41:01 config: distinguish between a lone variable name and one without rhs '[section] variable' and '[section] variable =' behave differently when parsed as booleans, so we need to store that distinction internally.
Carlos Martín Nieto 3ee078c0 2012-11-13T13:46:17 config: rename get_config_entry -> config_entry We're already in the git_config namespace, there is no need to repeat it.
Vicent Martí 3741a37f 2012-11-13T13:28:08 Merge pull request #1055 from ethomson/sha1_win32 Win32 CryptoAPI and CNG support for SHA1
Vicent Martí 70572ff8 2012-11-13T13:26:04 Merge pull request #1064 from libgit2/http-parser-2 Bump the builtin http-parser to v2.0
Edward Thomson 2a612fe3 2012-11-13T14:57:35 filebuf now has a git_hash_ctx instead of a ctx*
Edward Thomson a8527429 2012-11-13T14:48:10 unload dll / destroy hash ctxs at shutdown
Edward Thomson d6fb0924 2012-11-05T12:37:15 Win32 CryptoAPI and CNG support for SHA1
Edward Thomson 7ebefd22 2012-11-13T10:10:40 move hash library func ptrs to global global
Edward Thomson 603bee07 2012-11-12T19:22:49 Remove git_hash_ctx_new - callers now _ctx_init()
Ben Straub e45423dd 2012-11-13T05:45:08 Merge pull request #1065 from nulltoken/fix/memory-leak Fix memory leaks
Michael Schubert d51e54f1 2012-11-13T14:28:44 Remove unused variables
nulltoken 4e547eee 2012-11-13T07:11:24 test: fix memory leak
nulltoken 3dee3655 2012-11-13T07:04:30 local: fix memory leak
Vicent Marti 64ac9548 2012-11-12T15:42:03 Bump the builtin http-parser
Vicent Marti 9a50026b 2012-11-12T15:38:28 clar-helpers: Oops, grab pointer
Vicent Marti 19c044a1 2012-11-12T14:23:17 Merge remote-tracking branch 'ben/local-transport' into development
Vicent Martí 3b44ced0 2012-11-12T14:12:41 Merge pull request #1061 from nulltoken/topic/explicit-head-errors repository: Refine repository_head() error report
Ben Straub 14157652 2012-11-12T07:57:03 Remove unnecessary progress logic The indexer handles this better than the fetch logic does.
Ben Straub 0f5520f7 2012-11-12T07:55:09 Fix error check
nulltoken b1a3a70e 2012-11-12T00:14:51 repository: Refine repository_head() error report
nulltoken ef887151 2012-11-11T23:52:37 Fix compilation warning
Edward Thomson e090a568 2012-11-11T10:01:11 Merge pull request #1010 from ethomson/fetch_head create FETCH_HEAD specially instead of as a ref file
Edward Thomson b0f6e45d 2012-11-01T15:47:18 create FETCH_HEAD specially instead of as a ref file
Vicent Martí d18713fb 2012-11-10T20:24:53 Merge pull request #1056 from nulltoken/duplicate-tree-entries Duplicate tree entries
Vicent Martí 29c16698 2012-11-10T20:24:23 Merge pull request #1060 from nulltoken/topic/explicit-index-errors Topic/explicit index errors
nulltoken 95d73de1 2012-11-10T21:10:49 index: prefer INDEX_OWNER usage
nulltoken 33f95a9b 2012-11-10T21:01:05 index: refine add_from_workdir() error report
nulltoken 69c068c7 2012-11-10T20:42:45 index: make git_index_new() work with a NULL path
nulltoken 353e9916 2012-11-10T16:43:05 tests: Add missing assertions
Ben Straub 2ff1a0d0 2012-11-09T16:59:46 Helpers for local-filesystem remote URLs
Russell Belfer 757b4065 2012-11-09T14:01:44 Fix warnings and valgrind issues This fixes some various warnings that showed up in Travis and a couple uses of uninitialized memory and one memory leak.
Russell Belfer 0f3def71 2012-11-09T11:19:46 Fix various cross-platform build issues This fixes a number of warnings and problems with cross-platform builds. Among other things, it's not safe to name a member of a structure "strcmp" because that may be #defined.
Russell Belfer 8064ecba 2012-11-09T10:48:25 Update reset hard test The `git_reset` API with the HARD option is still slightly broken, but this test now does exercise the ability of the command to revert modified files.
Russell Belfer a1bf70e4 2012-11-08T21:58:24 fix regression in diff with submodule oid
Russell Belfer ad9a921b 2012-11-08T17:05:07 Rework checkout with new strategy options This is a major reworking of checkout strategy options. The checkout code is now sensitive to the contents of the HEAD tree and the new options allow you to update the working tree so that it will match the index content only when it previously matched the contents of the HEAD. This allows you to, for example, to distinguish between removing files that are in the HEAD but not in the index, vs just removing all untracked files. Because of various corner cases that arise, etc., this required some additional capabilities in rmdir and other utility functions. This includes the beginnings of an implementation of code to read a partial tree into the index based on a pathspec, but that is not enabled because of the possibility of creating conflicting index entries.
Russell Belfer 55cbd05b 2012-11-08T16:56:34 Some diff refactorings to help code reuse There are some diff functions that are useful in a rewritten checkout and this lays some groundwork for that. This contains three main things: 1. Share the function diff uses to calculate the OID for a file in the working directory (now named `git_diff__oid_for_file` 2. Add a `git_diff__paired_foreach` function to iterator over two diff lists concurrently. Convert status to use it. 3. Move all the string/prefix/index entry comparisons into function pointers inside the `git_diff_list` object so they can be switched between case sensitive and insensitive versions. This makes them easier to reuse in various functions without replicating logic. As part of this, move a couple of index functions out of diff.c and into index.c.
Russell Belfer 2e3d4b96 2012-11-08T16:47:28 Move pathspec code in separate files Diff uses a `git_strarray` of path specs to represent a subset of all files to be processed. It is useful to be able to reuse this filtering in other places outside diff, so I've moved it into a standalone set of utilities.
Russell Belfer 220d5a6c 2012-11-08T16:45:25 Make iterator ignore eval lazy This makes it so that the check if a file is ignored will be deferred until requested on the workdir iterator, instead of aggressively evaluating the ignore rules for each entry. This should improve performance because there will be no need to check ignore rules for files that are already in the index.
Russell Belfer 18eff2ad 2012-11-08T16:44:39 Clean up a couple things missed in rebase
Russell Belfer 32def5af 2012-10-24T17:37:07 Fix checkout behavior when its hands are tied So, @nulltoken created a failing test case for checkout that proved to be particularly daunting. If checkout is given only a very limited strategy mask (e.g. just GIT_CHECKOUT_CREATE_MISSING) then it is possible for typechange/rename modifications to leave it unable to complete the request. That's okay, but the existing code did not have enough information not to generate an error (at least for tree/blob conflicts). This led me to a significant reorganization of the code to handle the failing case, but it has three benefits: 1. The test case is handled correctly (I think) 2. The new code should actually be much faster than the old code since I decided to make checkout aware of diff list internals. 3. The progress value accuracy is hugely increased since I added a fourth pass which calculates exactly what work needs to be done before doing anything.
Russell Belfer 331e7de9 2012-10-24T17:32:50 Extensions to rmdir and mkdir utilities * Rework GIT_DIRREMOVAL values to GIT_RMDIR flags, allowing combinations of flags * Add GIT_RMDIR_EMPTY_PARENTS flag to remove parent dirs that are left empty after removal * Add GIT_MKDIR_VERIFY_DIR to give an error if item is a file, not a dir (previously an EEXISTS error was ignored, even for files) and enable this flag for git_futils_mkpath2file call * Improve accuracy of error messages from git_futils_mkdir
Vicent Martí 8a328cf4 2012-11-09T13:19:32 Merge pull request #1058 from pwkelley/development Fixes for two segfaults
Vicent Martí 39d7cf60 2012-11-09T13:15:57 Merge pull request #1059 from nulltoken/fix/config-open-level config: make git_config_open_level() work with an empty config
Philip Kelley fcd03beb 2012-11-09T15:57:32 Fix a mutex/critical section leak
nulltoken 55f9837f 2012-11-09T21:49:50 config: make git_config_open_level() work with an empty config
Philip Kelley 2f683f00 2012-11-09T15:39:25 Fix uninitialized memory in winhttp subtransport on 64-bit
Philip Kelley 2364735c 2012-11-09T15:39:10 Fix implementation of strndup to not overrun
Ben Straub 90207709 2012-11-08T21:29:17 Avoid copying duplicate commits
Ben Straub 11fabe73 2012-11-08T20:18:19 Local fetch: add tests
Ben Straub 505da062 2012-11-06T10:26:06 Implement local transport's fetch
nulltoken f92bcaea 2012-11-08T17:39:23 index: prevent tree creation from a non merged state Fix libgit2/libgit2sharp#243
Vicent Martí 0f674411 2012-11-09T06:16:44 Merge pull request #1052 from delanne/invalid_read Valgrind reports Invalid Read when the configuration file contains some empty line
Vicent Martí 4d062d25 2012-11-09T06:15:37 Merge pull request #1057 from bts/patch-1 Update documentation in remote.h
Brian Schroeder b0b80658 2012-11-08T21:28:15 Update documentation in remote.h
nulltoken 7cc1bf0f 2012-11-08T21:08:59 index: Introduce git_index_has_conflicts()
nulltoken 29cc374d 2012-11-08T17:37:01 tree: enforce coverage of silent entry replacement
Philip Kelley 9d641283 2012-11-08T08:06:23 Merge pull request #1048 from pwkelley/basic_auth Basic authentication for http and winhttp
delanne bcad677b 2012-11-08T12:28:21 - Update 'tests-clar/resources/config/config11' in order to reproduce the invalidread with the unittest (just added some \n at the end of the file) - Fix config_file.c
Vicent Martí 8ff2b0c7 2012-11-07T16:30:55 Merge pull request #1039 from erikvanzijst/erik/tag_without_message Correctly parse tags lacking a description
Ben Straub 721571cc 2012-11-07T12:58:54 Merge pull request #1050 from edubart/development Fix compilation for mingw32 and cygwin
Eduardo Bart 345eef23 2012-11-07T16:10:57 Move inet_pton to posix platform-compatibility layer
Eduardo Bart d1a69d0f 2012-11-06T20:16:53 Fix compilation for mingw32 and cygwin inet_pton is available only in windows vista or later, fixed the issue by reimplementing it using WSAStringToAddress
Philip Kelley 11fa8472 2012-11-06T11:27:23 Don't store no_check_cert; fetch it on demand
Philip Kelley 8a853788 2012-11-06T07:32:29 Merge pull request #1025 from ethomson/fetchodb fetch: Write packs to the ODB instead of directly to disk
Philip Kelley 2f7538ec 2012-11-06T09:36:04 Fix connection leak in http subtransport
Philip Kelley 091361f5 2012-11-06T08:52:03 Basic authentication for http and winhttp
Edward Thomson 09cc0b92 2012-11-05T11:33:10 create callback to handle packs from fetch, move the indexer to odb_pack
Russell Belfer a5e85d86 2012-11-05T11:06:50 Merge pull request #1046 from libgit2/empty-remote-url-crash Bail out of remote loading if the URL would be NULL
Justin Spahr-Summers c1cd036e 2012-11-05T11:01:00 'geterr' -> 'giterr'
Justin Spahr-Summers 6edefa14 2012-11-05T10:58:08 Revert "Don't expect the 'empty-remote-url' remote to be listed" Apparently git_remote_list() includes even remotes for which git_remote_load() would fail. Sorry @nulltoken, false alarm. This reverts commit f358ec143c8c9952227d31cd21c24f8c9be23d3c.
Justin Spahr-Summers f358ec14 2012-11-05T10:45:26 Don't expect the 'empty-remote-url' remote to be listed CC @nulltoken
Justin Spahr-Summers 1fe99aee 2012-11-05T10:44:48 Test for GITERR_INVALID
Russell Belfer 065be7a1 2012-11-05T10:44:21 Merge pull request #1044 from dahlbyk/repo/state Fix state when HEAD is not detached
Justin Spahr-Summers f8baece7 2012-11-05T10:42:10 Set GITERR_INVALID when encountering a NULL remote URL
Vicent Martí 942a7698 2012-11-05T06:54:34 Merge pull request #1034 from carlosmn/packbuilder-foreach Let the user grab the packfile as it's being written
nulltoken a2a61894 2012-11-05T07:49:37 remote: Add malformed remote load test
Justin Spahr-Summers 83885891 2012-11-04T22:01:24 Bail out if remote->url would be NULL This fixes a crash from attempting to invoke git__strdup() against NULL.
Keith Dahlby 221ee54b 2012-11-04T21:24:14 Fix Clar link
Keith Dahlby 35d255fd 2012-11-04T12:13:42 repo: fix state when HEAD is not detached
Philip Kelley 1e99ce9a 2012-11-02T11:42:45 Merge pull request #1042 from pwkelley/progress_cb Fix bytes_received in fetch tests - we weren't calling the callback
Philip Kelley 438906e1 2012-11-02T14:34:06 Fix bytes_received in fetch tests - we weren't calling the callback
Russell Belfer 3ae0aad7 2012-11-02T10:42:20 Move error capture to top of giterr_set
Erik van Zijst 6bb9fea1 2012-11-02T10:28:17 tags: Fixed the tag parser to correctly treat the message field as optional. This fix makes libgit2 capable of parsing annotated tag objects that lack the optional message/description field. Previously, libgit2 treated this field as mandatory and raised a tag_error on such tags. However, the message field is optional. An example of such a tag is refs/tags/v2.6.16.31-rc1 in Linux: $ git cat-file tag refs/tags/v2.6.16.31-rc1 object afaa018cefb6af63befef1df7d8febaae904434f type commit tag v2.6.16.31-rc1 tagger Adrian Bunk <bunk@stusta.de> 1162716505 +0100 $
Vicent Martí 1362a983 2012-11-02T10:00:28 Merge pull request #1014 from arrbee/diff-rename-detection Initial implementation of diff rename detection
Philip Kelley 473a7a1e 2012-11-02T08:43:17 Merge pull request #1040 from ethomson/index_refactor Free conflict index entries on removal
Philip Kelley 2c087f81 2012-11-02T08:40:09 Merge pull request #1041 from pwkelley/transports Prefer GetLastError() for GITERR_OS on Win32
Philip Kelley 8f624a47 2012-11-02T11:30:55 Prefer GetLastError() for GITERR_OS on Win32
Edward Thomson 050cf8b8 2012-11-02T01:01:21 freeing index entries would be helpful
Vicent Marti e30c052c 2012-11-01T23:01:24 LEAAAVE ME ALOOOONEEE
Vicent Martí d13da328 2012-11-01T14:18:40 Merge pull request #1038 from arrbee/doc-fixes Improve docs, examples, warnings
Russell Belfer 60ad7d52 2012-11-01T14:16:19 Merge pull request #1037 from libgit2/index-open-cleanup Some more changes to the Index API
Russell Belfer b90500f0 2012-11-01T14:08:30 Improve docs, examples, warnings This improves docs in some of the public header files, cleans up and improves some of the example code, and fixes a couple of pedantic warnings in places.
Vicent Marti 1e808f9c 2012-11-01T20:28:28 index: Add `git_index_new`