- 23 Mar, 2016 7 commits
-
-
Disambiguate the reset and reset_range functions. Now reset_range with a NULL path will clear the start or end; reset will leave the existing start and end unchanged.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
CMakeLists: Show the pointer size for an unsupported architecture
Edward Thomson committed -
Showing the pointer size gives a hint as to why we think this is an unsupported architecture.
Sebastian Schuberth committed -
When the array is empty `cmp` never gets set by the comparison function. Initialize it so we return ENOTFOUND in those cases.
Carlos Martín Nieto committed -
tree: drop the now-unnecessary entries vector
Carlos Martín Nieto committed
-
- 22 Mar, 2016 10 commits
-
-
Add ability to write a filtered blob through a stream
Carlos Martín Nieto committed -
The callback mechanism makes it awkward to write data from an IO source; move to `_fromstream()` which lets the caller remain in control, in the same vein as we prefer iterators over foreach callbacks.
Carlos Martín Nieto committed -
Carlos Martín Nieto committed
-
By returning when the count goes to zero rather than below it, setting `howmany` to 7 in fact writes out the string 6 times. Correct the termination condition to write out the string the amount of times we specify.
Carlos Martín Nieto committed -
The pair of `git_blob_create_frombuffer()` and `git_blob_create_frombuffer_commit()` is meant to replace `git_blob_create_fromchunks()` by providing a way for a user to write a new blob when they want filtering or they do not know the size. This approach allows the caller to retain control over when to add data to this buffer and a more natural fit into higher-level language's own stream abstractions instead of having to handle IO wait in the callback. The in-memory buffer size of 2MB is chosen somewhat arbitrarily to be a round multiple of usual page sizes and a value where most blobs seem likely to be either going to be way below or way over that size. It's also a round number of pages. This implementation re-uses the helper we have from `_fromchunks()` so we end up writing everything to disk, but hopefully more efficiently than with a default filebuf. A later optimisation can be to avoid writing the in-memory contents to disk, with some extra complexity.
Carlos Martín Nieto committed -
Allow setting the buffer size on open in order to use this data structure more generally as a spill buffer, with larger buffer sizes for specific use-cases.
Carlos Martín Nieto committed -
Remove the now-unnecessary entries vector. Add `git_array_search` to binary search through an array to accomplish this.
Edward Thomson committed -
Add a sanity check in git_indexer_commit to avoid subtraction overflow.
Carlos Martín Nieto committed -
Fix some errors I found in the changelog for 0.24.0
Carlos Martín Nieto committed -
Reuse a tree's buffer and allocate constant-sized entries in an array
Edward Thomson committed
-
- 20 Mar, 2016 2 commits
-
-
Take advantage of the constant size of tree-owned arrays and store them in an array instead of a pool. This still lets us free them all at once but lets the system allocator do the work of fitting them in.
Carlos Martín Nieto committed -
Instead of copying over the data into the individual entries, point to the originals, which are already in a format we can use.
Carlos Martín Nieto committed
-
- 18 Mar, 2016 4 commits
-
-
John Fultz committed
-
win32: free thread-local data on thread exit
Edward Thomson committed -
Carlos Martin Nieto committed
-
MinGW builds should optionally create DLLs without "lib" prefix
Edward Thomson committed
-
- 17 Mar, 2016 17 commits
-
-
Custom merge drivers and proper gitattributes `merge` handling
Carlos Martín Nieto committed -
CONTRIBUTING: document the optional tests
Carlos Martín Nieto committed -
Edward Thomson committed
-
Edward Thomson committed
-
Since the `apply` callback can defer, the `check` callback is not necessary. Removing the `check` callback further makes the `payload` unnecessary along with the `cleanup` callback.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Ensure that setting the merge attribute forces the built-in default `text` driver and does *not* honor the `merge.default` configuration option. Further ensure that unsetting the merge attribute forces a conflict (the `binary` driver).
Edward Thomson committed -
Edward Thomson committed
-
Allow merge users to configure a custom default merge driver via `git_merge_options`. Similarly, honor the `merge.default` configuration option.
Edward Thomson committed -
When a `check` or `apply` callback function returns `GIT_EMERGECONFLICT` stop and product a conflict.
Edward Thomson committed -
When a `check` or `apply` callback function returns `GIT_PASSTHROUGH`, move on to the default merge driver.
Edward Thomson committed -
Consumers can now register custom merged drivers with `git_merge_driver_register`. This allows consumers to support the merge drivers, as configured in `.gitattributes`. Consumers will be asked to perform the file-level merge when a custom driver is configured.
Edward Thomson committed -
Stan Hu committed
-
Stan Hu committed
-