|
38068dc1
|
2011-11-07T06:27:49
|
|
Merge pull request #473 from drafnel/bc/update-examples
bc/update examples
|
|
3b83bdac
|
2011-11-07T06:25:22
|
|
Merge pull request #470 from schu/test-helpers-no-assert
test_helpers: do not rely on assert
|
|
f8e8c8d4
|
2011-11-07T04:38:12
|
|
Merge pull request #472 from libgit2/new-references
References! References! References!
|
|
0b142c9c
|
2011-11-06T20:07:27
|
|
examples/network/.gitignore: ignore 'git2'
|
|
349532d0
|
2011-11-06T19:44:29
|
|
examples/network/git2.c: exit with proper status, and avoid segfault
This function should exit after printing usage information if too few
arguments were specified.
Additionally, it should exit with a failure status if the first argument
supplied is not one in the internal command list.
|
|
983562e4
|
2011-11-06T19:43:44
|
|
examples/network/git2.c: add newline to usage message
|
|
faeebd06
|
2011-11-06T19:35:35
|
|
examples/network/fetch.c: revert overzealous conversion of free to git__free
Since git__free is not exported (it's actually a macro), it should not be
used in client programs. Change this call to 'git__free' back to 'free'.
|
|
62dd6d16
|
2011-11-06T02:52:43
|
|
reflog: Do not free references before time
|
|
d4a0b124
|
2011-10-30T21:58:33
|
|
refs: Partial rewrite for read-only refs
This new version of the references code is significantly faster and
hopefully easier to read.
External API stays the same. A new method `git_reference_reload()` has
been added to force updating a memory reference from disk. In-memory
references are no longer updated automagically -- this was killing us.
If a reference is deleted externally and the user doesn't reload the
memory object, nothing critical happens: any functions using that
reference should fail gracefully (e.g. deletion, renaming, and so on).
All generated references from the API are read only and must be free'd
by the user. There is no reference counting and no traces of generated
references are kept in the library.
There is no longer an internal representation for references. There is
only one reference struct `git_reference`, and symbolic/oid targets are
stored inside an union.
Packfile references are stored using an optimized struct with flex array
for reference names. This should significantly reduce the memory cost of
loading the packfile from disk.
|
|
549bbd13
|
2011-08-13T18:14:39
|
|
git_reference_rename: cleanup reference renaming
git_reference_rename() didn't properly cleanup old references given by
the user to not break some ugly old tests. Since references don't point
to libgit's internal cache anymore we can cleanup git_reference_rename()
to be somewhat less messy.
Signed-off-by: schu <schu-github@schulog.org>
|
|
75abd2b9
|
2011-08-11T19:38:13
|
|
Free all used references in the source tree
Since references are not owned by the repository anymore we have to free
them manually now.
Signed-off-by: schu <schu-github@schulog.org>
|
|
4fd89fa0
|
2011-07-26T11:17:32
|
|
refs: add test case checking "immutable" references
Signed-off-by: schu <schu-github@schulog.org>
|
|
a46ec457
|
2011-08-10T16:19:42
|
|
refs: split internal and external references
Currently libgit2 shares pointers to its internal reference cache with
the user. This leads to several problems like invalidation of reference
pointers when reordering the cache or manipulation of the cache from
user side.
Give each user its own git_reference instead of leaking the internal
representation (struct reference).
Add the following new API functions:
* git_reference_free
* git_reference_is_packed
Signed-off-by: schu <schu-github@schulog.org>
|
|
54ccc717
|
2011-11-05T18:01:32
|
|
examples/general.c: update for recent API renaming of git_config_get_int
git_config_get_int --> git_config_get_int32
|
|
ec907944
|
2011-10-30T13:48:00
|
|
test_helpers: do not rely on assert
The functions loose_object_mode and loose_object_dir_mode call stat
inside an assert statement which isn't evaluated when compiling in
Release mode (NDEBUG) and leads to failing tests. Replace it.
Signed-off-by: schu <schu-github@schulog.org>
|
|
d3104fa0
|
2011-10-29T14:06:36
|
|
Merge pull request #468 from nulltoken/ntk/fix/issue-465
Status: fix segfault (#465) and order issues
|
|
e3baa3cc
|
2011-10-29T17:45:01
|
|
status: Fix a sorting issue in the treewalker
This ensures that entries from the working directory are retrieved according to the following rules:
- The file "subdir" should appear before the file "subdir.txt"
- The folder "subdir" should appear after the file "subdir.txt"
|
|
a1bd78ea
|
2011-10-29T21:29:31
|
|
status: Add a file in the test repository to cover the correct sorting of entries when the working folder is being read
In this case, "subdir.txt" should be listed before the "subdir" directory.
|
|
d1db74bf
|
2011-10-29T17:40:04
|
|
status: Prevent segfaulting when determining the status of a repository
Fixes #465
|
|
89fb8f02
|
2011-10-28T19:04:23
|
|
Merge pull request #456 from brodie/perm-fixes
Create objects, indexes, and directories with the right file permissions
|
|
3286c408
|
2011-10-28T14:51:13
|
|
global: Properly use `git__` memory wrappers
Ensure that all memory related functions (malloc, calloc, strdup, free,
etc) are using their respective `git__` wrappers.
|
|
da37654d
|
2011-10-27T22:33:31
|
|
tree: Add traversal in post-order
|
|
4849dbb8
|
2011-10-27T17:54:17
|
|
Merge branch 'status' of https://github.com/carlosmn/libgit2 into development
|
|
1ca715e0
|
2011-10-22T12:36:30
|
|
status: move GIT_STATUS_PATH_* into an enum
Their actual values have no meaning, so pack them in an enum.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
68a26dfa
|
2011-10-22T12:33:49
|
|
status: reorder retrieve_head_tree error checks
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
c2892d61
|
2011-10-22T11:46:22
|
|
status: remove git_tree_entry_bypos
The only caller has been changed to treat a NULL tree as a special
case and use the existing git_tree_entry_byindex.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
899cb7a8
|
2011-10-22T11:36:18
|
|
status: remove git_index_entry_bypos
This function is already implemented (better) as git_index_get. Change
the only caller to use that function.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
a2366c94
|
2011-10-27T15:33:53
|
|
Merge pull request #467 from oleganza/oa-config-parse-fix
Fixed crash in config parser when empty value is encountered.
|
|
9f861826
|
2011-10-27T16:45:44
|
|
Fixed crash in config parser when empty value is encountered.
Example:
key1 = value1
key2 =
In this config the value will be a bad pointer which config object will attempt to free() causing a crash.
|
|
d533c888
|
2011-10-26T19:25:18
|
|
Merge pull request #463 from schu/tests-clay-object-raw
tests-clay: move t01-rawobj.c to clay
|
|
11d51ca6
|
2011-10-26T16:43:55
|
|
windows: Add support for non-UTF codepages
Our previous assumption that all paths in Windows are encoded in UTF-8
is rather weak, specially when considering that Git is
encoding-agnostic.
These set of functions allow the user to change the library's active
codepage globally, so it is possible to access paths and files on all
international versions of Windows.
Note that the default encoding here is UTF-8 because we assume that 99%
of all Git repositories will be in UTF-8.
Also, if you use non-ascii characters in paths, anywhere, please burn on
a fire.
|
|
9ff46db9
|
2011-10-19T13:48:51
|
|
tests-clay: move t01-rawobj.c to clay
Signed-off-by: schu <schu-github@schulog.org>
|
|
c2fbe423
|
2011-10-24T14:43:18
|
|
Merge pull request #464 from rtyley/development
Tolerate zlib deflation with window size < 32Kb
|
|
c51065e3
|
2011-10-24T14:39:03
|
|
Tolerate zlib deflation with window size < 32Kb
libgit2 currently identifies loose objects as corrupt if they've been
deflated using a window size less than 32Kb, because the
is_zlib_compressed_data() function doesn't recognise the header
byte as a zlib header. This patch makes the method tolerant of
all valid window sizes (15-bit to 8-bit) - but doesn't sacrifice
it's accuracy in distingushing the standard loose-object format
from the experimental (now abandoned) format. It's based on a patch
which has been merged into C-Git master branch:
https://github.com/git/git/commit/7f684a2aff636f44a506
On memory constrained systems zlib may use a much smaller window
size - working on Agit, I found that Android uses a 4KB window;
giving a header byte of 0x48, not 0x78. Consequently all loose
objects generated by the Android platform appear 'corrupt' :(
It might appear that this patch changes isStandardFormat() to the
point where it could incorrectly identify the experimental format as
the standard one, but the two criteria (bitmask & checksum) can only
give a false result for an experimental object where both of the
following are true:
1) object size is exactly 8 bytes when uncompressed (bitmask)
2) [single-byte in-pack git type&size header] * 256
+ [1st byte of the following zlib header] % 31 = 0 (checksum)
As it happens, for all possible combinations of valid object type
(1-4) and window bits (0-7), the only time when the checksum will be
divisible by 31 is for 0x1838 - ie object type *1*, a Commit - which,
due the fields all Commit objects must contain, could never be as
small as 8 bytes in size.
Given this, the combination of the two criteria (bitmask & checksum)
always correctly determines the buffer format, and is more tolerant
than the previous version.
References:
Android uses a 4KB window for deflation:
http://android.git.kernel.org/?p=platform/libcore.git;a=blob;f=luni/src/main/native/java_util_zip_Deflater.cpp;h=c0b2feff196e63a7b85d97cf9ae5bb258
Code snippet searching for false positives with the zlib checksum:
https://gist.github.com/1118177
Change-Id: Ifd84cd2bd6b46f087c9984fb4cbd8309f483dec0
|
|
4ce16ed8
|
2011-10-22T12:25:55
|
|
CMake: use -O0 in debug mode
Otherwise, GCC optimizes variables away and gdb can't tell us what's
in them.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
28c1451a
|
2011-10-20T02:35:19
|
|
tree: Fix name lookups once and for all
Double-pass binary search. Jeez.
|
|
8cf2de07
|
2011-10-19T01:34:42
|
|
tree: Fix lookups by entry name
|
|
5fa1bed0
|
2011-10-15T23:09:05
|
|
mwindow: close LRU window properly
Remove a wrong call to git_mwindow_close which caused a segfault if it
ever did run. In that same piece of code, if the LRU was from the
first wiindow in the list in a different file, we didn't update that
list, so the first element had been freed.
Fix these two issues.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
a014a083
|
2011-10-14T16:32:00
|
|
Merge pull request #459 from brodie/test-improvements
tests: propagate errors from open_temp_repo() instead of exiting
|
|
252840a5
|
2011-08-11T15:18:04
|
|
tests: propagate errors from open_temp_repo() instead of exiting
This makes it slightly easier to debug test failures when one test
opens a repo, has a failure, and doesn't get a chance to close it for
the next test. Now, instead of getting no feedback, we at least see
test failure information.
|
|
01ad7b3a
|
2011-09-06T15:48:45
|
|
*: correct and codify various file permissions
The following files now have 0444 permissions:
- loose objects
- pack indexes
- pack files
- packs downloaded by fetch
- packs downloaded by the HTTP transport
And the following files now have 0666 permissions:
- config files
- repository indexes
- reflogs
- refs
This brings libgit2 more in line with Git.
Note that git_filebuf_commit() and git_filebuf_commit_at() have both
gained a new mode parameter.
The latter change fixes an important issue where filebufs created with
GIT_FILEBUF_TEMPORARY received 0600 permissions (due to mkstemp(3)
usage). Now we chmod() the file before renaming it into place.
Tests have been added to confirm that new commit, tag, and tree
objects are created with the right permissions. I don't have access to
Windows, so for now I've guarded the tests with "#ifndef GIT_WIN32".
|
|
ce8cd006
|
2011-09-07T15:32:44
|
|
fileops/repository: create (most) directories with 0777 permissions
To further match how Git behaves, this change makes most of the
directories libgit2 creates in a git repo have a file mode of
0777. Specifically:
- Intermediate directories created with git_futils_mkpath2file() have
0777 permissions. This affects odb_loose, reflog, and refs.
- The top level folder for bare repos is created with 0777
permissions.
- The top level folder for non-bare repos is created with 0755
permissions.
- /objects/info/, /objects/pack/, /refs/heads/, and /refs/tags/ are
created with 0777 permissions.
Additionally, the following changes have been made:
- fileops functions that create intermediate directories have grown a
new dirmode parameter. The only exception to this is filebuf's
lock_file(), which unconditionally creates intermediate directories
with 0777 permissions when GIT_FILEBUF_FORCE is set.
- The test runner now sets the umask to 0 before running any
tests. This ensurses all file mode checks are consistent across
systems.
- t09-tree.c now does a directory permissions check. I've avoided
adding this check to other tests that might reuse existing
directories from the prefabricated test repos. Because they're
checked into the repo, they have 0755 permissions.
- Other assorted directories created by tests have 0777 permissions.
|
|
33127043
|
2011-10-14T14:18:02
|
|
fileops/posix: replace usage of "int mode" with "mode_t mode"
Note: Functions exported from fileops take const mode_t, while the
underlying POSIX wrappers take mode_t.
|
|
1776f5ab
|
2011-10-13T18:08:19
|
|
Merge pull request #457 from khalsah/makefile-fix
Update Makefile.embed with http-parser dependency
|
|
d42eff03
|
2011-10-13T19:05:03
|
|
Add src/transports to Makefile sources
|
|
7fcddeb6
|
2011-10-13T18:36:43
|
|
Update Makefile.embed with http-parser dependency
|
|
b7e1dd16
|
2011-10-13T14:54:12
|
|
Merge pull request #448 from nulltoken/ntk/topic/treeentry-random-access
Add git_tree_frompath()
|
|
3fa735ca
|
2011-10-13T23:17:19
|
|
tree: Add git_tree_frompath() which, given a relative path to a tree entry, retrieves the tree object containing this tree entry
|
|
34aff010
|
2011-10-12T14:06:23
|
|
oid: Add git_oid_streq() which checks if an oid and an hex formatted string are equal
|
|
a6c0e4d2
|
2011-10-11T14:42:48
|
|
Fix minor indentation issues
|
|
b3f993e2
|
2011-10-09T13:13:49
|
|
Add test commit containing subtrees and files
|
|
a41e9f13
|
2011-10-13T22:48:07
|
|
Fix compilation error on Windows
|
|
5c3d5fb0
|
2011-10-13T12:16:07
|
|
Merge pull request #454 from brodie/parsing-fixes
Improvements to tag, commit, and signature parsing
|
|
a3e23a7c
|
2011-10-13T12:01:06
|
|
Merge pull request #455 from brodie/pack-fixes
odb_pack: don't do ambiguity checks for fully qualified SHA1 hashes
|
|
b2a2702d
|
2011-10-11T22:05:12
|
|
odb_pack: don't do ambiguity checks for fully qualified SHA1 hashes
This makes libgit2 more closely match Git, which only checks for
ambiguous pack entries when given short hashes.
Note that the only time this is ever relevant is when a pack has the
same object more than once (it's happened in the wild, I promise).
|
|
6f2856f3
|
2011-10-05T15:17:37
|
|
signature: don't blow up trying to parse names containing '>'
When trying to find the end of an email, instead of starting at the
beginning of the signature, we start at the end of the name (after the
first '<').
This brings libgit2 more in line with Git's behavior when reading out
existing signatures.
However, note that Git does not allow names like these through the
usual porcelain; instead, it silently strips any '>' characters it
sees.
|
|
15b0bed2
|
2011-08-11T16:12:29
|
|
tag: allow the tagger field to be missing when parsing tags
Instead of bailing out with an error, this sets tagger to NULL when
the field is missing from the object.
This makes it possible to inspect tags like this one:
http://git.kernel.org/?p=git/git.git;a=tag;h=f25a265a342aed6041ab0cc484224d9ca54b6f41
|
|
cf7b13f3
|
2011-08-11T14:05:55
|
|
tag: avoid a double-free when parsing tags without a tagger field
The v0.99 tag in the Git repo triggers this behavior:
http://git.kernel.org/?p=git/git.git;a=tag;h=d6602ec5194c87b0fc87103ca4d67251c76f233a
Ideally, we'd allow the tag to be instantiated even though the tagger
field is missing, but this at the very least prevents libgit2 from
crashing.
To test this bug, a new repository has been added based on the test
branch in testrepo.git. It contains a "e90810b" tag that looks like
this:
object e90810b8df3e80c413d903f631643c716887138d
type commit
tag e90810b
This is a very simple tag.
|
|
04f78802
|
2011-08-09T20:49:12
|
|
commit: properly parse empty commit messages
This ensures commit->message is always non-NULL, even if the commit
message is empty or consists of only a newline.
One such commit can be found in the wild in the jQuery repository:
https://github.com/jquery/jquery/commit/25b424134f9927a5bf0bab5cba836a0aa6c3cfc1
|
|
3707b331
|
2011-10-08T02:44:31
|
|
pkt: move the protocol strings to the top of the file
Put them all together so we know where to find them.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
dfafb03b
|
2011-10-07T00:44:41
|
|
Move the transports to their own directory
|
|
03e4833b
|
2011-10-05T20:17:21
|
|
remote: bitfield should be unsigned
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
fc3e3c55
|
2011-10-05T20:12:12
|
|
git transport: don't loose received data
Using a different buffer in each function means that some data might
get lost. Store all the data in a buffer in the transport object.
Take this opportunity to use the generic download-pack function.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
2c982daa
|
2011-10-05T20:09:49
|
|
fetch: add a generic pack-download function
Taken mostly from the git transport's version, this can be used by any
transport that takes its pack data from the network.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
51760bc1
|
2011-10-05T18:11:22
|
|
pkt: get rid of the chunked support
It was a bad idea.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
e5e92c1f
|
2011-10-05T16:57:34
|
|
http: simple negotiation
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
65c86048
|
2011-10-05T01:28:16
|
|
Introduce the git_pkt_buffer_ family of functions
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
f9613325
|
2011-10-05T00:42:27
|
|
http: parse the response from the server
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
cbb2fede
|
2011-09-27T00:34:52
|
|
http: add a set of common refs
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
3313a05a
|
2011-09-18T21:11:45
|
|
http: move stuff out of negotiate_fetch
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
8c252874
|
2011-10-06T00:51:32
|
|
net: plug a few memory leaks
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
546a3c8f
|
2011-10-06T00:10:11
|
|
http: download pack when fetching
Unfortunately, we can't use the function in fetch.c due to chunked
encoding and keep-alive connections.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
1636ba5a
|
2011-09-18T20:07:49
|
|
transport: don't have an extra send-wants step
It's a bit awkward to run it as an extra step, and HTTP may need to
send the wants list several times.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
747bf5f1
|
2011-09-13T23:28:42
|
|
http: Start negotiate_fetch
|
|
34bfb4b0
|
2011-09-14T00:54:45
|
|
net,pkt: add chunked support
As we don't know the length of the message we want to send to the
other end, we send a chunk size before each message. In later
versions, sending the wants might benefit from batching the lines
together.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
eb07a4d1
|
2011-09-12T15:25:45
|
|
http: add more modularity to the code
Not every request needs a new connection if we're using a keep-alive
connection. Store the HTTP parser, host and port in the transport in
order to have it available in later calls.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
502dd2da
|
2011-10-12T12:09:56
|
|
msvc: Fix resourc embedding
|
|
92e2081f
|
2011-10-12T11:03:58
|
|
Merge pull request #449 from csware/include-win-version-information
Include windows version information in git2.dll
|
|
bff5f4e3
|
2011-10-11T15:11:23
|
|
Merge pull request #452 from carlosmn/cmake-respect-user
Assorted CMake fixes
|
|
5cb7a1ad
|
2011-10-11T18:12:36
|
|
Explain how to build universal OSX binaries
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
5b216d1a
|
2011-10-11T18:08:54
|
|
CMake: don't overwrite the user's CFLAGS
If either CFLAGS is defined or the user passes -DCMAKE_C_FLAGS to
cmake, the variable already contains flags. Don't overwrite them, but
append them to our settings.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
dcd62cb2
|
2011-10-11T16:11:40
|
|
CMake: Only add the STDCALL option when using MSVC
This option is only ever used with MSVC.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
8f9be316
|
2011-10-09T21:49:10
|
|
fetch: move 'head' so it's visible to the whole function
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
6aac5afb
|
2011-10-09T12:09:57
|
|
Merge pull request #444 from carlosmn/fetch-fixes
A couple of fetch fixes
|
|
cf9bf6b7
|
2011-10-09T18:45:23
|
|
include version information in git2.dll on Windows
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
96fab093
|
2011-10-09T18:37:41
|
|
put version information in separate file
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
da2281c7
|
2011-10-09T18:35:42
|
|
libgit2 doesn't use -LIB define
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
5a1d2b2a
|
2011-10-08T21:18:09
|
|
Merge pull request #447 from csware/fix-win64-build
fix build for x64
|
|
314f54eb
|
2011-10-09T05:29:57
|
|
fix build for x64
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
517bda19
|
2011-10-04T00:30:01
|
|
fetch: store FETCH_HEAD
We should always save the remote's HEAD as FETCH_HEAD locally.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
4a3b18a6
|
2011-10-03T22:26:06
|
|
A missing refspec is not an error
It's rare for a configured remote, but for one given as an URL on the
command line, it's more often than not the case.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
d322d10a
|
2011-10-07T14:20:53
|
|
Merge pull request #439 from carlosmn/network-examples
Add network examples
|
|
01be6f37
|
2011-10-07T14:20:25
|
|
Merge pull request #446 from schu/tests-clay-update
tests-clay: update
|
|
1d33bf9d
|
2011-10-07T22:57:44
|
|
tests-clay: add a readme file
Signed-off-by: schu <schu-github@schulog.org>
|
|
681008c7
|
2011-10-07T22:31:08
|
|
tests-clay: update clay
The clay script didn't match the latest version from upstream.
Additionaly, add core/strtol.c to complete porting the core tests to
clay.
Signed-off-by: schu <schu-github@schulog.org>
|
|
3eaf34f4
|
2011-10-05T16:48:36
|
|
libgit2 v0.15.0 "Das Wunderbar Release"
I am aware the codename is not gramatically correct in any language.
Check the COPYING file for the detailed terms on libgit2's license. Check
the AUTHORS file for the full list of guilty parties.
As we slowly stabilize the API, we've dropped 1 function from the library,
and changed the signature of only 5 of them. There's of course a good
chunk of new functionality, and a thousand bug fixes.
In this release of libgit2:
- Changed `git_blob_rawsize`: Now returns `size_t` instead of int, allowing
files >4GB in 64 bit systems.
- Removed `git_commit_message_short`: Please use `git_commit_message`
to get the full message and decide which is the "short view" according
to your needs (first line, first 80 chars...)
- Added `git_commit_message_encoding`: Returns the encoding field of a commit
message, if it exists.
- Changed `git_commit_create`, `git_commit_create_v`: New argument `encoding`, which
adds a encoding field to the generated commit object.
- Added `git_config_find_system`: Returns the path to the system's global config
file (according to the Core Git standards).
- Changed `git_config_get_XX`, `git_config_set_XX`: the `long` and `int` types have
been replaced by `int64` and `int32` respectively, to make their meaning more
obvious.
- Added `git_indexer`: An interface to index Git Packfiles has been added in the
`git2/indexer.h` header.
- Changed `git_reflog_entry_XX`: Reflog entries are now returned as `git_oid *` objects
instead of hexadecimal OIDs.
- Added `git_remote`: More fetch functionality has been added to the `git2/remote.h`
functionality. Local, Smart HTTP and Git protocols are now supported.
- Added `git_repository_head`: Returns the HEAD of the repository.
- Added `git_repository_config_autoload`: Opens the configuration file of a repository,
including the user's and the system's global config files, if they can be found.
- Changed `git_signature_now`: Now returns an error code; the signature is stored by
reference.
|
|
d3fb6a81
|
2011-10-05T16:46:34
|
|
cmake: Set the old test suite as default for the release
|
|
dd3fd682
|
2011-10-05T13:44:27
|
|
msvc: Remove superfluous includes
|
|
c060854e
|
2011-10-04T21:11:51
|
|
msvc: Properly handle inttypes.h/stdint.h
|
|
72d6a20b
|
2011-10-05T19:59:34
|
|
indexer: NUL-terminate the filename
As we no longer use the STRLEN macro, the NUL-terminator in the string
was not copied over. Fix this.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|