Log

Author Commit Date CI Message
Carlos Martín Nieto cca5df63 2013-08-08T16:59:39 config: hopefully get the iterator to work on multivars
Carlos Martín Nieto 3a7ffc29 2013-08-08T16:18:07 config: initial multivar iterator
Carlos Martín Nieto eba73992 2013-08-08T14:39:32 config: move next() and free() into the iterator Like we have in the references iterator, next and free belong in the iterator itself.
Carlos Martín Nieto 4efa3290 2013-08-08T13:41:18 config: get_multivar -> get_multivar_foreach The plain function will return an iterator, so move this one out of the way.
Carlos Martín Nieto 84fec6f6 2013-08-08T13:14:35 config: saner iterator errors Really report an error in foreach if we fail to allocate the iterator, and don't fail if the config is emtpy.
Carlos Martín Nieto 82ae6fcd 2013-08-08T11:55:47 config: compilation fixes
Carlos Martín Nieto 4d588d97 2013-08-08T11:24:47 Don't typedef a pointer Make the iterator structure opaque and make sure it compiles.
Nico von Geyso a603c191 2013-03-18T21:02:36 replaced foreach() with non callback based iterations in git_config_backend new functions in struct git_config_backend: * iterator_new(...) * iterator_free(...) * next(...) The old callback based foreach style can still be used with `git_config_backend_foreach_match`
Nico von Geyso 6385fc5f 2013-03-17T20:39:01 added new type and several functions to git_strmap This step is needed to easily add iterators to git_config_backend As well use these new git_strmap functions to implement foreach * git_strmap_iter * git_strmap_has_data(...) * git_strmap_begin(...) * git_strmap_end(...) * git_strmap_next(...)
Russell Belfer c7d4904c 2013-08-07T10:38:41 Merge pull request #1769 from ethomson/configparse Parse config headers with quoted quotes
Edward Thomson 2d9f5b9f 2013-08-07T11:11:55 Parse config headers with quoted quotes Parse config headers that have the last quote on the line quoted instead of walking off the end.
Russell Belfer c5780abb 2013-08-05T21:58:48 Merge pull request #1765 from arrbee/ambiguous-oids More tests for ambiguous OIDs across packs
Russell Belfer 437224b4 2013-08-05T21:46:32 More tests for ambiguous OIDs across packs The test coverage for ambiguous OIDs was pretty thin. This adds a bunch of new objects both in packs, across packs, and loose that match to 8 characters so that we can test various cases of ambiguous lookups.
Russell Belfer ee77378d 2013-08-05T13:33:44 Merge pull request #1763 from nvloff/nameless_submodule_segfault submodule: check alloc and name presence
Nikolai Vladimirov f1af935b 2013-08-05T21:53:09 submodule: check alloc and name presense
Russell Belfer 9b7d02ff 2013-08-05T10:53:39 Update submodule documentation Fixes #1762
Carlos Martín Nieto 1cd0acf6 2013-07-31T10:43:56 Merge pull request #1748 from arthurschreiber/patch-1 Allow Makefile.embed to be used when cross-compiling
Arthur Schreiber a6837b5f 2013-07-31T19:13:35 When building with MINGW, specify `__USE_MINGW_ANSI_STDIO`. This option is already present in the CMake config, but was missing from `Makefile.embed` and would cause all kinds of weird failures when compiling rugged on windows with the ruby devkit.
Ben Straub 94d12ffa 2013-07-28T08:39:41 Merge pull request #1755 from csware/double-close Fix possible double close
Vicent Martí a873449f 2013-07-27T17:00:21 Merge pull request #1753 from 13ren/log-bugfix Fix -n bug; default to all ancestors
Sven Strickroth f5254d78 2013-07-27T20:15:06 Fix possible double close Signed-off-by: Sven Strickroth <email@cs-ware.de>
Brendan Macmillan c3ae0473 2013-07-27T05:31:28 Fix -n bug; default to all ancestors
Vicent Martí d477a9ab 2013-07-25T06:44:56 Merge pull request #1749 from csware/handle-fixes Close p->mwf.fd only if necessary
Sven Strickroth 3a2d48d5 2013-07-25T14:54:19 Close p->mwf.fd only if necessary This fixes a regression introduced in revision 9d2f841a5d39fc25ce722a3904f6ebc9aa112222. Signed-off-by: Sven Strickroth <email@cs-ware.de>
Arthur Schreiber 847c6793 2013-07-25T00:26:51 Allow Makefile.embed to be used when cross-compiling This allows libgit2 to be cross-compiled (e.g. when building native rugged binaries for windows from Linux or OS X). ``` CROSS_COMPILE=i686-w64-mingw32 make -f Makefile.embed ```
Russell Belfer cdbcb8dd 2013-07-23T09:43:07 Merge pull request #1745 from libgit2/doc-fixes Doc fixes
Carlos Martín Nieto 64061d4a 2013-07-23T10:51:14 remote: fix git_remote_download() documentation The description of what the function does hasn't been true for quite a while. Change it to reflect the way it currently works. While here, remove an even older comment about missing features that have been implemented.
Carlos Martín Nieto c05a55b0 2013-07-23T09:40:19 Clean up some documentation clang's docparser highlighted these.
Vicent Martí e5bdf829 2013-07-22T23:59:08 Merge pull request #1732 from libgit2/revwalk-glob-should-ignore-invalid Invalid refs on disk cause revwalk globbing to fail
Russell Belfer 4cee9b86 2013-07-22T11:41:23 Update init and clean for revwalk::basic tests The new tests don't always want to use the same fixture data as the old ones so this makes it configurable on a per-test basis.
Russell Belfer 989710d9 2013-07-22T11:22:55 Fix warning message about mismatched types
Russell Belfer c77342ef 2013-07-22T11:20:34 Use pool for loose refdb string allocations Instead of using lots of strdup calls, this adds a memory pool to the loose refs iteration code and uses it for keeping track of the loose refs array. Memory usage could probably be reduced even further by eliminating the vector and just scanning by adding the strlen of each ref, but that would be a more intrusive changes. This also updates the error handling to be more thorough about checking for failed allocations, etc.
Russell Belfer b7107131 2013-07-22T11:01:19 git_reference_next_name must match git_reference_next The git_reference_next API silently skips invalid references when scanning the loose refs. The git_reference_next_name API should skip the same ones even though it isn't creating the reference object. This adds a test with a an invalid loose reference and makes sure that both APIs skip the same entries and generate the same results.
Martin Woodward 1cd9dc29 2013-07-19T11:14:22 Merge pull request #1743 from ethomson/readme Clarify when to use github issues
Edward Thomson bef59b1b 2013-07-19T12:56:47 Update README.md
Ben Straub 97309dd0 2013-07-19T10:43:53 Merge pull request #1726 from crazymaster/development git_buf_text_gather_stats doesn't work for multi-byte characters
Edward Thomson 41a93cc6 2013-07-19T12:43:08 Clarify when to use github issues Suggest that github issues are to be used for bug reports, while questions about usage should be directed to StackOverflow.
Ben Straub 847b8e0e 2013-07-19T10:29:47 Merge pull request #1742 from martinwoodward/Refresh-Readme Refresh readme and contributing guidance
Martin Woodward 6ca83665 2013-07-19T18:20:58 Update contributing guidance to explain PR flow Updating the contributing guidance to explain a bit more about how we use PR's
Martin Woodward 3e3d332b 2013-07-19T18:04:11 Tidy up the methods of contacting the project Updated the methods of getting involved with the project and asking questions.
Ben Straub 275d8d55 2013-07-18T09:37:59 Typo
Vicent Martí 79400365 2013-07-18T06:26:25 Merge pull request #1736 from ben/default-to-cdecl Switch default calling convention to cdecl
Ben Straub 99a9c86c 2013-07-17T20:08:15 Merge pull request #1722 from libgit2/ntk/fix/issue_1722 git_revparse_ext: should return a NULL reference when the revparse expression doesn't lead to a reference
Vicent Martí d2db351c 2013-07-17T16:12:15 Merge pull request #1735 from ethomson/ignored_are_not_rename_candidates don't include ignored as rename candidates
Edward Thomson d55bed1a 2013-07-17T16:55:00 don't include ignored as rename candidates
Ben Straub e49dc687 2013-07-17T14:06:31 Switch default calling convention to cdecl.
Ben Straub 4e05fa7d 2013-07-15T20:45:18 Merge pull request #1731 from alindeman/patch-1 Small grammar fix in docs
Andy Lindeman 51b0397a 2013-07-15T23:40:57 Small grammar fix in docs
Vicent Martí f5385150 2013-07-15T09:45:04 Merge pull request #1728 from ivoire/small_fixes Small fixes
Vicent Martí 3f8086e0 2013-07-15T09:44:02 Merge pull request #1729 from tiennou/remote-owner Add `git_remote_owner`.
Etienne Samson 85e1eded 2013-07-15T16:31:25 Add `git_remote_owner`
Rémi Duraffort c6451624 2013-07-15T16:00:07 Fix some more memory leaks in error path
Rémi Duraffort 050af8bb 2013-07-15T16:00:00 pack: fix memory leak in error path
Rémi Duraffort 8d6ef4bf 2013-07-15T15:59:35 index: fix potential memory leaks
Rémi Duraffort 9146f1e5 2013-07-15T15:59:18 repository: clarify assignment and test order
crazymaster d0b25d9d 2013-07-15T08:14:00 Fix
crazymaster 2185dd6f 2013-07-15T07:59:04 Fix typo
crazymaster b74d4478 2013-07-15T07:41:39 Fix the initial line
crazymaster 19bee769 2013-07-15T07:39:16 Revert "Replace Japanese characters with the encoded hexadecimal values" This reverts commit a91e4d6b21e141c2abc76b65b2d4c91d5d3e03cc.
crazymaster a91e4d6b 2013-07-15T07:19:42 Replace Japanese characters with the encoded hexadecimal values
Russell Belfer 35173312 2013-07-14T15:16:08 Merge pull request #1727 from alindeman/lookup-object-doc-fix Fixes return type documentation
Andy Lindeman 960431c3 2013-07-14T17:26:24 Fixes return type documentation
crazymaster 6550565a 2013-07-13T03:02:00 Fix gather_stats
crazymaster d6d34cd0 2013-07-13T02:10:16 Add test for multi-byte characters
nulltoken 80fd31fa 2013-07-13T13:30:23 revparse: Don't return a reference when asked for a git object Fix #1722
Vicent Martí 1662158c 2013-07-13T06:18:24 Merge pull request #1725 from libgit2/ntk/fix/leaks Plug some memory leaks
nulltoken d6cb13d7 2013-07-13T14:00:05 tests: Fix memory leak
nulltoken b3a559dd 2013-07-13T13:55:03 submodule: Fix memory leaks
Vicent Martí 3a025b97 2013-07-12T17:03:57 Merge pull request #1724 from ethomson/cmake_vs header files show up in vs and xcode
Edward Thomson cdacd3d9 2013-07-12T16:53:00 header files show up in vs
Vicent Martí ed0be48b 2013-07-11T15:36:03 Merge pull request #1721 from ethomson/config_paths preload configuration paths
Edward Thomson 0a1c8f55 2013-07-11T17:09:15 preload configuration paths
Vicent Martí f2de67d5 2013-07-11T11:27:57 Merge pull request #1719 from libgit2/arrbee/threading-primitives Update git__swap threading primitive
Russell Belfer 584f2d30 2013-07-11T11:04:42 Fix warnings on Win64
Russell Belfer 814de0bc 2013-07-11T11:00:41 Update git__swap thread helper This makes git__swap use the __sync_lock_test_and_set primitive with GCC and the InterlockedExchangePointer primitive with MSVC. Previously is used compare_and_swap in a way that was probably unintuitive for most thinking (i.e. it could fail to swap in the value if another thread raced in). Now it will always succeed and the last thread to run in a race will win instead of the first thread. This also fixes up a little confusion between volatile void ** and void * volatile * that came up with the Win32 compiler.
Russell Belfer d70ce9bd 2013-07-10T15:38:57 Clarify docs for git_status_file
Vicent Martí bd679796 2013-07-10T13:15:28 Merge pull request #1685 from arrbee/submodule-status-fixes Improve submodules status data caching and compatibility
Russell Belfer 125655fe 2013-07-02T16:49:57 Untracked directories with .git should be ignored This restores a behavior that was accidentally lost during some diff refactoring where an untracked directory that contains a .git item should be treated as IGNORED, not as UNTRACKED. The submodule code already detects this, but the diff code was not handling the scenario right. This also updates a number of existing tests that were actually exercising the behavior but did not have the right expectations in place. It actually makes the new `test_diff_submodules__diff_ignore_options` test feel much better because the "not-a-submodule" entries are now ignored instead of showing up as untracked items. Fixes #1697
Russell Belfer 9564229a 2013-06-30T08:43:07 Add tests for diff.ignoreSubmdules config
Russell Belfer b8df28a5 2013-06-30T08:38:10 Clean up left over alloc change
Russell Belfer f9775a37 2013-06-29T23:22:31 Add ignore_submodules to diff options This adds correct support for an equivalent to --ignore-submodules in diff, where an actual ignore value can be passed to diff to override the per submodule settings in the configuration. This required tweaking the constants for ignore values so that zero would not be used and could represent an unset option to the diff. This was an opportunity to move the submodule values into include/git2/types.h and to rename the poorly named DEFAULT values for ignore and update constants to RESET instead. Now the GIT_DIFF_IGNORE_SUBMODULES flag is exactly the same as setting the ignore_submodules option to GIT_SUBMODULE_IGNORE_ALL (which is actually a minor change from the old behavior in that submodules will now be treated as UNMODIFIED deltas instead of being left out totally - if you set GIT_DIFF_INCLUDE_UNMODIFIED). This includes tests for the various new settings.
Russell Belfer 2e3e273e 2013-06-29T13:20:45 Update diff to new internal submodule status API Submodules now expose an internal status API that allows diff to get back the OID values from the submodule very easily and also to avoiding caching issues and to override the ignore setting for the submodule.
Russell Belfer 1aad6137 2013-06-29T13:16:33 Submodule status improvements This fixes the way that submodule status is checked to bypass just about all of the caching in the submodule object. Based on the ignore value, it will try to do the minimum work necessary to find the current status of the submodule - but it will actually go to disk to get all of the current values. This also removes the custom refcounting stuff in favor of the common git_refcount style. Right now, it is still for internal purposes only, but it should make it easier to add true submodule refcounting in the future with a public git_submodule_free call that will allow bindings not to worry about the submodule object getting freed from underneath them.
Russell Belfer 3fe046cf 2013-06-29T13:13:38 Add BARE option to git_repository_open_ext This adds a BARE option to git_repository_open_ext which allows a fast open path that still knows how to read gitlinks and to search for the actual .git directory from a subdirectory. `git_repository_open_bare` is still simpler and faster, but having a gitlink aware fast open is very useful for submodules where we want to quickly be able to peek at the HEAD and index data without doing any other meaningful repo operations.
Russell Belfer 302a04b0 2013-06-29T12:41:39 Add accessors for refcount value
Russell Belfer e807860f 2013-06-27T16:52:38 Add timestamp check to submodule status This is probably not the final form of this change, but this is a preliminary version of checking a timestamp to see if the cached working directory HEAD OID matches the current. Right now, this uses the timestamp on the index and is, like most of our timestamp checking, subject to having only second accuracy.
Russell Belfer 41f1f9d7 2013-06-27T16:52:00 Add API to get path to index file
Russell Belfer 4535f044 2013-06-27T16:12:44 More diff submodule tests for cache issues The submodules code caches data about submodules in a way that can cause problems. This adds some tests that try making various modifications to the state of a submodule to see where we can catch out problems in the submodule caching. Right now, I've put in an extra git_submodule_reload_all so that the test will pass, but with that commented out, the test fails. I'm working on fixing the broken version of the test at which point I'll commit the fix and delete the extra reload that makes the test pass.
Russell Belfer 3e7d7100 2013-06-27T16:12:00 Fix diff test helper to show parent file/line
Russell Belfer 49621a34 2013-06-27T15:46:46 Fix memory leak in test
Russell Belfer 12f8fe00 2013-06-27T15:43:12 More improvements to submodule diff tests This controls for the diff.mnemonicprefix setting so that can't break the tests. Also, this expands one test to emulate an ObjectiveGit test more closely.
Russell Belfer 0105b55e 2013-06-27T15:26:31 Add another submodule test of dirty wd
Vicent Marti c0e529f3 2013-07-10T21:06:53 Merge branch 'arrbee/examples-log' into development
Vicent Marti 406dd556 2013-07-10T21:05:47 bitvec: Simplify the bit vector code
Russell Belfer 2b672d5b 2013-07-08T22:46:36 Add git_pathspec_match_diff API This adds an additional pathspec API that will match a pathspec against a diff object. This is convenient if you want to handle renames (so you need the whole diff and can't use the pathspec constraint built into the diff API) but still want to tell if the diff had any files that matched the pathspec. When the pathspec is matched against a diff, instead of keeping a list of filenames that matched, instead the API keeps the list of git_diff_deltas that matched and they can be retrieved via a new API git_pathspec_match_list_diff_entry. There are a couple of other minor API extensions here that were mostly for the sake of convenience and to reduce dependencies on knowing the internal data structure between files inside the library.
Russell Belfer 6fc5a581 2013-07-08T22:42:02 Basic bit vector This is a simple bit vector object that is not resizable after the initial allocation but can be of arbitrary size. It will keep the bti vector entirely on the stack for vectors 64 bits or less, and will allocate the vector on the heap for larger sizes. The API is uniform regardless of storage location. This is very basic right now and all the APIs are inline functions, but it is useful for storing an array of boolean values.
Russell Belfer 3e96ecf2 2013-07-08T09:53:24 Improve include/git2/pathspec.h docs
Russell Belfer 9abc78ae 2013-07-07T21:56:11 Convert commit->parent_ids to git_array_t This converts the array of parent SHAs from a git_vector where each SHA has to be separately allocated to a git_array_t where all the SHAs can be kept in one block. Since the two collections have almost identical APIs, there isn't much involved in making the change. I did add an API to git_array_t so that it could be allocated at a precise initial size.
Russell Belfer bc6f0839 2013-07-05T15:22:21 Add a bunch more features to log example
Russell Belfer a8b5f116 2013-07-03T17:00:50 Fix example/log.c pathspec handling of merges This fixes the way the example log program decides if a merge commit should be shown when a pathspec is given. Also makes it easier to use the pathspec API to just check "does a tree match anything in the pathspec" without allocating a match list.