Log

Author Commit Date CI Message
Vicent Martí 811c761f 2013-05-03T08:19:12 Merge pull request #1540 from ethomson/leaks fix some leaks
Edward Thomson d8041638 2013-05-02T17:22:13 fix some leaks
Vicent Martí 42b2bcf0 2013-05-02T13:42:16 Merge pull request #1538 from ethomson/merge_warning_cleanup braces
Edward Thomson 5e151329 2013-05-02T15:19:49 braces
Vicent Martí dc83d32a 2013-05-02T13:01:44 Merge pull request #1537 from ethomson/merge_warning_cleanup puns are not funny; type punning especially so
Edward Thomson 4e7c1560 2013-05-02T14:58:40 puns are not funny; type punning especially so
Vicent Martí af7689ea 2013-05-02T09:50:34 Merge pull request #1535 from carlosmn/pack-threading Switch to index_version as "git_pack_file is ready" flag
Carlos Martín Nieto 0ddfcb40 2013-05-02T18:06:14 Switch to index_version as "git_pack_file is ready" flag We use p->index_map.data to check whether the struct has been set up and all the information about the index is stored there. This variable gets set up halfway through the setup process, however, and a thread can come along and use fields that haven't been written to yet. Crucially, pack_entry_find_offset() needs to read the index version (which is written after index_map) to know the offset and stride length to pass to sha1_entry_pos(). If these values are wrong, assertions in it will fail, as it will be reading bogus data. Make index_version the last field to be written and switch from using p->index_map.data to p->index_version as "git_pack_file is ready" flag as we can use it to know if every field has been written.
Vicent Martí 8a497ec9 2013-05-02T09:21:46 Merge pull request #1531 from libgit2/jk/peeled-refs refdb_fs: do not require peeled packed refs to be tags
Jeff King a591ed3e 2013-05-02T12:06:46 refdb_fs: respect PEELING_STANDARD We only set our negative flag for PEELING_FULL; we can fall back to the lesser PEELING_STANDARD if our ref is in the refs/tags/ hierarchy.
Vicent Marti 822645f6 2013-05-02T17:48:49 refdb_fs: Only strstr the traits line
Vicent Marti 1022db2b 2013-05-02T17:42:09 refdb_fs: Traits are always surrounded by spaces This makes parsing easier! :p
Vicent Marti f69db390 2013-05-02T17:29:58 refdb_fs: store "cannot be peeled" flag for packed refs Fixes #1532
Vicent Marti 3bb00f33 2013-05-02T17:17:46 refdb_fs: implement the fully-peeled trait
Carlos Martín Nieto 34bd5999 2013-05-02T17:14:05 Revert "Protect sha1_entry_pos call with mutex" This reverts commit 8c535f3f6879c6796d8107d7eb80dd8b2105621b.
Jeff King 7edb9071 2013-05-02T11:07:20 refdb_fs: do not require peeled packed refs to be tags Older versions of git would only write peeled entries for items under refs/tags/. Newer versions will write them for all refs, and we should be prepared to handle that.
Vicent Martí d966310c 2013-05-02T03:37:28 Merge pull request #1529 from arrbee/more-packfile-locking More packfile locking
Russell Belfer 8c535f3f 2013-05-02T03:34:56 Protect sha1_entry_pos call with mutex There is an occasional assertion failure in sha1_entry_pos from pack_entry_find_index when running threaded. Holding the mutex around the code that grabs the index_map data and processes it makes this assertion failure go away.
Russell Belfer 81b7dec4 2013-05-02T03:06:34 Fix some compile warnings and trailing whitespace
Russell Belfer d82d66c9 2013-05-02T03:05:21 Extra threading tests We need to hammer the packfile open phase harder in the thread tests, in addition to the cache API.
Russell Belfer 9d2f841a 2013-05-02T03:03:54 Add extra locking around packfile open We were still seeing a few issues in threaded access to packs. This adds extra locks around the opening of the mwindow to avoid a different race.
Russell Belfer 69c50f4c 2013-05-01T13:47:00 Merge pull request #1527 from ethomson/checkout_allow_empty_dirs allow empty dirs to exist when doing checkout
Vicent Marti 8cddf9b8 2013-05-01T18:21:10 refdb: Properly load namespaces
Edward Thomson 0cc7d8df 2013-05-01T09:50:40 allow empty dirs to exist when doing checkout
Vicent Marti e1807113 2013-05-01T15:31:23 merge: Warning noise
Vicent Marti 2ba55c1f 2013-05-01T15:20:08 refdb: Proper namespace root
Vicent Martí 758e50c5 2013-05-01T06:18:09 Merge pull request #1389 from ethomson/merge_trees Merge trees
Vicent Martí cfcdbc10 2013-05-01T03:03:17 Merge pull request #1523 from libgit2/vmg/namespaces Namespace support
Edward Thomson 75d1c8c6 2013-04-30T17:33:11 move NAME and REUC extensions to sys/
Edward Thomson 0462fba5 2013-04-30T14:56:41 renames!
Edward Thomson bec65a5e 2013-04-01T22:16:21 merge!
Vicent Marti bade5194 2013-04-30T21:02:13 lol namespaces
Vicent Martí 5e2261ac 2013-04-30T10:29:46 Merge pull request #1507 from arrbee/fix-look-inside-untracked-directory Update diff handling of "untracked" directories
Russell Belfer 5fa7e469 2013-04-30T04:13:39 Fix some formatting inconsistency
Russell Belfer 61c00541 2013-04-29T06:21:56 Update comment for clarity
Russell Belfer a66c4bc8 2013-04-29T02:57:01 More tests for diff untracked directories This includes more tests for various scenarios when diff includes an untracked directory in the workdir with contents either ignored or not.
Russell Belfer e26b14c0 2013-04-26T15:35:47 Update diff handling of untracked directories When diff encounters an untracked directory, there was a shortcut that it took which is not compatible with core git. This makes the default behavior no longer take that shortcut and instead look inside the untracked directory to see if there are any untracked files within it. If there are not, then the directory is treated as an ignore directory instead of an untracked directory. This has implications for the git_status APIs.
Russell Belfer fdb3034e 2013-04-25T14:57:13 Reorganize diff code into functions In preparation for more changes to the internal diff logic, it seemed wise to split the very large git_diff__from_iterators into separate functions that handle the four main cases (unmatched old item, unmatched new item, unmatched new directory, and matched old and new items). Hopefully this will keep the logic easier to follow even as more cases have to be added to this code.
Vicent Marti 7dcda3aa 2013-04-30T13:19:02 object: haha
Vicent Marti 0b726701 2013-04-30T13:13:38 object: Explicitly define helper API methods for all obj types
Vicent Martí cd2ed9f0 2013-04-30T04:02:52 Merge pull request #1518 from arrbee/export-oid-comparison Remove most inlines from the public API
Vicent Martí d76fb20e 2013-04-30T03:29:48 Merge pull request #1520 from carlosmn/nth-refspec Add refspec list accessors
Vicent Martí 099c1b74 2013-04-30T03:28:56 Merge pull request #1522 from arrbee/repo-open-with-no-config Catch issue in config set with no config file
Russell Belfer 0a1755c0 2013-04-30T03:15:45 Catch issue in config set with no config file This prevents a segfault when setting a value in the config of a repository that doesn't have a config file.
Carlos Martín Nieto 9c5d4b2e 2013-04-30T12:05:16 remote: fix a leak when dwim'ing refspecs
Carlos Martín Nieto 1ffd0806 2013-04-30T11:18:16 remote: add resfpec list accessors Bring back a way of acessing the git_refspec* from a remote. Closes #1514
Carlos Martín Nieto 8d39f2a7 2013-04-30T10:55:17 refspec: add direction accessor
Russell Belfer 203d5b0e 2013-04-29T18:20:58 Some cleanups Removed useless prototype and renamed object typecast functions declaration macro.
Russell Belfer e4af0f00 2013-04-29T18:15:43 Add new src/oid.h
Russell Belfer d7761102 2013-04-29T14:22:06 Standardize cast versions of git_object accessors This removes the GIT_INLINE versions of the simple git_object accessors and standardizes them with a helper macro in src/object.h to build the function bodies.
Russell Belfer b7f167da 2013-04-29T13:52:12 Make git_oid_cmp public and add git_oid__cmp
Vicent Martí 41578510 2013-04-29T13:30:31 Merge pull request #1511 from carlosmn/refspec-shorthand dwim shorthand refspecs for fetch
Vicent Martí bb503dbd 2013-04-29T10:21:03 Merge pull request #1516 from ethomson/win32_alternate_nostat don't use uninitialized struct stat in win32
Edward Thomson c8a4e8a5 2013-04-29T11:14:56 don't use uninitialized struct stat in win32
Vicent Martí 51a91ce8 2013-04-29T09:09:27 Merge pull request #1513 from ethomson/cmake cmake 2.6 parser bug workaround
Edward Thomson ac1d85cf 2013-04-29T11:00:05 cmake 2.6 parser bug workaround
Russell Belfer aa8f0101 2013-04-29T08:59:46 Add git_oid_strcmp and use it for git_oid_streq Add a new git_oid_strcmp that compares a string OID with a hex oid for sort order, and then reimplement git_oid_streq using it. This actually should speed up git_oid_streq because it only reads as far into the string as it needs to, whereas previously it would convert the whole string into an OID and then use git_oid_cmp.
Russell Belfer 8564a022 2013-04-29T08:51:24 Fix fragile git_oid_ncmp git_oid_ncmp was making some assumptions about the length of the data - this shifts the check to the top of the loop so it will work more robustly, limits the max, and adds some tests to verify the functionality.
Russell Belfer 0c72248b 2013-04-29T07:34:13 Introduce git_oid_compare, an exported oid cmp
Carlos Martín Nieto 0f85c208 2013-04-29T04:13:42 Merge pull request #1512 from carlosmn/push-delete-only Fix push for delete-only and add travis rules to test it
Carlos Martín Nieto fb42a22e 2013-04-29T02:15:51 travis: test push Create a test repository in the VM and set up git-daemon so we can use it to test the push code.
Carlos Martín Nieto 51e4da6d 2013-04-29T01:49:40 push: don't send a packfile when only issuing delete commands For update and create commands where all the objects are known to exist in the remote, we must send an empty packfile. However, if all we issue are delete commands, no packfile must be sent. Take this into consideration for push.
Carlos Martín Nieto d8488457 2013-04-28T16:26:55 remote: dwim the refspecs according to the remote's advertised refs As git allows you to store shorthand refspecs in the configuration, we need to do this ourselves.
Carlos Martín Nieto 528a4e24 2013-04-28T14:16:45 Parse shorthand refspecs as valid Relax the ONELEVEL ref naming rules so the refspec parsing code can ask for 'master' to be considered valid.
Vicent Martí 78bf2944 2013-04-25T17:42:44 Merge pull request #1504 from ethomson/git_atomic_ssize git_atomic_ssize for 64-bit atomics only on 64-bit platforms
Edward Thomson eb63fda2 2013-04-25T11:52:17 git_atomic_ssize for 64-bit atomics only on 64-bit platforms
Carlos Martín Nieto b4117e19 2013-04-24T20:09:42 docs: formatting fixes
Vicent Marti 879458e7 2013-04-24T15:52:33 repo: Add `git_repository__cleanup`
Vicent Martí 2370b4d7 2013-04-23T13:06:26 Merge pull request #1499 from arrbee/fix-diff-config-usage Support more diff config options and use the config cache more
Russell Belfer 687db88f 2013-04-22T16:45:36 Make sure diff output is cleared on error
Russell Belfer b1ff7004 2013-04-22T16:25:57 Improve diff config options handling This makes diff use the cvar cache for config options where possible, and also adds support for a number of other config options to diff including "diff.context", "diff.ignoreSubmodules", "diff.noprefix", "diff.mnemonicprefix", and "core.abbrev". To make this natural, this involved a rearrangement of the code that allocates the diff object vs. the code that initializes it based on the combination of options passed in by the user and read from the config. This commit includes tests for most of these new options as well.
Russell Belfer 6be368bf 2013-04-22T16:24:53 Clear repo config cache when cfgs are set This is a conservative change, but it seemed like the only safe thing to do -- i.e. clear the cvar cache when a config gets set.
Russell Belfer eac76c23 2013-04-22T14:27:36 Use config cache where possible This converts many of the config lookups that are done around the library to use the repository config cache. This was everything I could find that wasn't part of diff (which requires a larger fix).
Russell Belfer ab01cbd4 2013-04-22T14:24:12 Add configs to repo config cache This adds a bunch of additional config values to the repository config value cache and makes it easier to add a simple boolean config without creating enum values for each possible setting. Also, this fixes a bug in git_config_refresh where the config cache was not being cleared which could lead to potential incorrect values. The work to start using the new cached configs will come in the next couple of commits...
Russell Belfer 608d0466 2013-04-22T13:51:35 Make tree to tree diffs case sensitive When case insensitive tree iterators were added, we started reading the case sensitivity of the index to decide if the tree should be case sensitive. This is good for index-to-tree comparisons, but for tree-to-tree comparisons, we should really default to doing a case sensitive comparison unless the user really wants otherwise.
Linquize a5df71c1 2013-04-19T22:36:01 Support diff.context config
Ben Straub bd0a07f4 2013-04-23T12:28:59 Clone: replace fetch spec with custom value
Vicent Martí 495d6f07 2013-04-23T12:15:35 Merge pull request #1502 from nvloff/remote_refspecs_minor_fixes Remote refspecs minor fixes
Nikolai Vladimirov dfdf709e 2013-04-23T21:29:07 get last refspec in clone test
Vicent Martí 7915e6cc 2013-04-23T11:48:12 Merge pull request #1498 from libgit2/vmg/atomic64 64 bit atomic operations and shared cache memory usage
Vicent Marti a2378ae4 2013-04-23T20:42:29 opts: Add getter for cached memory
Vicent Martí 6c9dc12b 2013-04-23T11:37:40 Merge pull request #1501 from xavier-l/packbuilder-commit Added function to insert commit into pack
Nikolai Vladimirov a952b986 2013-04-23T21:28:28 remove git_remote_pushspec
Carlos Martín Nieto 9a9de29d 2013-04-23T19:08:13 Document the odb backend constructors
Xavier L 0b90366c 2013-04-23T12:27:38 Fixes indentation
Xavier L f0e37a8b 2013-04-23T12:22:29 Added function to insert commit into pack
Carlos Martín Nieto 6c1b6b7a 2013-04-23T16:21:47 examples: init the threading system
Vicent Marti a5de9044 2013-04-23T02:24:44 refs: Better error name
Vicent Marti d6c8688d 2013-04-23T02:22:15 Merge branch 'development' of https://github.com/libgit2/libgit2 into development
Vicent Marti 08a1b476 2013-04-23T02:21:42 Merge branch 'master' of https://github.com/libgit2/libgit2 into development
Russell Belfer fe719932 2013-04-22T10:39:24 Merge pull request #1497 from carlosmn/atomic-refcount Make refcounting atomic
Vicent Marti 920cbc98 2013-04-22T17:31:47 cache: More aggressive default
Vicent Marti a14163a7 2013-04-22T17:30:49 cache: Shared meter for memory usage
Vicent Marti f9774eea 2013-04-22T17:22:31 atomic: Add an atomic type for 64-bit operations
Carlos Martín Nieto 05b17964 2013-04-21T19:26:35 Make refcounting atomic
Vicent Martí d08dd728 2013-04-22T08:07:20 Merge pull request #1454 from libgit2/vmg/new-cache New caching
Vicent Marti d8771592 2013-04-22T17:04:52 cache: Max cache size, and evict when the cache fills up
Vicent Marti cf9709b6 2013-04-22T16:53:46 tests: Do not warn for unused variable
Vicent Marti 865e2dd4 2013-04-17T23:58:37 tests: Cleanup commit parse testing code
Russell Belfer 5d2d21e5 2013-04-16T15:00:43 Consolidate packfile allocation further Rename git_packfile_check to git_packfile_alloc since it is now being used more in that capacity. Fix the various places that use it. Consolidate some repeated code in odb_pack.c related to the allocation of a new pack_backend.