|
d2b96cf4
|
2011-07-12T11:19:42
|
|
Add parrot-libgit2 to the list of language bindings in the readme
|
|
37172582
|
2011-06-18T21:14:55
|
|
libgit2 v0.13.0 "Watermelon Wheat"
On this rascalicious minor release of libgit2:
- We've dropped support for Waf. All the build process is now managed
through CMake for all platforms.
- We've removed the custom backends from the repository. You can now
find a collection of Custom backends on their own repo, under the
libgit2 org. Including MySQL and Memcache backends, courtesy of the
beardful Brian Lopez.
- We are rocking a new documentation system, Docurium, courtesy of the
insightful Scott Chacon. Check out the details for each single method
in our external API and the way they've evolved through the history
of the library:
http://libgit2.github.com/libgit2/
This will certainly come in handy if you are developing bindings for
the library.
- You can now check the linked version of the library from your
application or bindings, using `git_libgit2_version`.
- We have a gazillion new features, courtesy of our invaluable
collaborators, including:
* Support for Config files!
* Support for prefix-only reads on the ODB
* Repository discovery
* Support for the Unmerged Entries index extension
* Better Windows support
* 30.000 bug fixes (actual number may be lower)
Thanks as always to everyone who makes this project possible.
Here's the full list of all external API changes:
- git_index_open_bare
- git_index_open_inrepo
- git_odb_backend_sqlite
- git_oid_mkraw
- git_oid_mkstr
- git_reference_listcb
- git_repository_workdir
= git_index_get
= git_repository_path
= git_tree_entry_byindex
+ git_blob_lookup_prefix
+ git_commit_lookup_prefix
+ git_config_add_file
+ git_config_add_file_ondisk
+ git_config_file__ondisk
+ git_config_find_global
+ git_config_foreach
+ git_config_free
+ git_config_get_bool
+ git_config_get_int
+ git_config_get_long
+ git_config_get_string
+ git_config_new
+ git_config_open_global
+ git_config_open_ondisk
+ git_config_set_bool
+ git_config_set_int
+ git_config_set_long
+ git_config_set_string
+ git_index_entry_stage
+ git_index_entrycount_unmerged
+ git_index_get_unmerged_byindex
+ git_index_get_unmerged_bypath
+ git_index_open
+ git_object_lookup_prefix
+ git_odb_read_prefix
+ git_oid_fromraw
+ git_oid_fromstr
+ git_oid_ncmp
+ git_reference_foreach
+ git_repository_config
+ git_repository_discover
+ git_repository_is_bare
+ git_tag_lookup_prefix
+ git_tree_entry_type
+ git_tree_lookup_prefix
|
|
bfd5e3e2
|
2011-06-18T15:07:41
|
|
config: Fix API docs
|
|
984ed6b6
|
2011-06-19T12:48:16
|
|
odb: Add GIT_EPASSTHROUGH
Allows a custom user backend to passthrough one of the callbacks. Used
for e.g. caching backends.
|
|
8ee2bb54
|
2011-06-19T03:50:19
|
|
Merge pull request #268 from nulltoken/patch-3
Fix link to API documentation
|
|
e49020e0
|
2011-06-18T09:07:51
|
|
Fix link to API documentation
|
|
e35e9fb4
|
2011-06-18T13:23:19
|
|
mingw: Fix compilation
|
|
2a406ab5
|
2011-06-18T02:08:56
|
|
config: Fix sorting of repository config files
|
|
19cb6857
|
2011-06-18T01:50:48
|
|
config: Bring back `git_config_open_global`
Scott commands, I obey.
|
|
920e000d
|
2011-06-18T01:17:58
|
|
config: Update examples
|
|
dbe70bd5
|
2011-06-18T01:12:58
|
|
config: Fix compilation in MSVC
|
|
40070445
|
2011-06-18T00:54:24
|
|
config: Typorrrrl
|
|
deee4766
|
2011-06-17T15:44:26
|
|
Merge pull request #267 from Jopie64/development
Fix compilation error in MSVC when compiling for c++
|
|
07ff8817
|
2011-06-18T00:39:39
|
|
config: Cleanup external API
Do not mess with environment variables anymore. The new external API has
more helper methods, and everything is explicit.
|
|
f0619886
|
2011-06-07T22:09:22
|
|
Fix compilation error in MSVC when compiling for c++
|
|
f3dad3ac
|
2011-06-16T20:06:36
|
|
Add fall-back support to the configuration
If a config has several files, we need to check all of them before we
can say that a variable doesn't exist.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
3de5df7d
|
2011-06-16T19:56:48
|
|
Add a test for overriding config
The repo's configuration should take precedence over the global one.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
9ba9e513
|
2011-06-16T19:54:37
|
|
Parse the repo's configuration when we load it
It's not enough to load the config, we also need to explicitely parse
it after we create it.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
b22d1479
|
2011-06-16T17:46:06
|
|
Add git_repository_config API
This function puts the global and repository configurations in one
git_config object and gives it to the user.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
b76934de
|
2011-06-16T16:55:11
|
|
Remove double-space
Noticed by txdv
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
c716b187
|
2011-06-17T19:47:58
|
|
config: Fix unitialized variable warning
|
|
f0890fcc
|
2011-06-17T19:40:51
|
|
cmake: Build shared library by default
|
|
e01f7f64
|
2011-06-17T19:27:11
|
|
windows: Disable Runtime checks
Runtime checks are asserting on the embedded ZLib code because of
truncation (see zlib/trees.c:218). This is not good or pretty, but I'm
wary about patching the ZLib code even more.
There are two ways to fix this:
- Patch the ZLib code, and start storing a diff/patchset on
how does our version of ZLib differ from the original one, so we can
be more or less on sync when new version of ZLib.
- Go back to ZLib as an external dependency, which is np for *NIX
users but annoying as dicks for Windows users.
THINK HARD
|
|
f252d479
|
2011-06-17T10:32:42
|
|
Merge pull request #264 from nulltoken/patch-2
Fix misleading comment in CMake build script
|
|
2414d000
|
2011-06-17T10:32:22
|
|
Merge pull request #266 from carlosmn/valgrind
Plug memory leaks
|
|
02285482
|
2011-06-17T19:19:30
|
|
fileops: Cast the GetProcAddress value
|
|
9c11bd0a
|
2011-06-17T19:08:06
|
|
fileops: Fix 'GetFinalPathNameByHandleA' in old platforms
|
|
3d5a02b6
|
2011-06-16T20:30:40
|
|
Plug an index leak
The test wasn't updated when repos lost ownership of indices
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
038d2fc3
|
2011-06-16T20:24:51
|
|
Plug leaks in the repo discovery tests
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
b2e361cc
|
2011-06-16T20:22:05
|
|
Plug two leaks in config writing
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
3d96996d
|
2011-06-16T08:10:25
|
|
Fix misleading comment in CMake build script
|
|
cb75ffea
|
2011-06-16T08:01:47
|
|
Merge pull request #263 from carlosmn/refs-writing
Simplify loose ref writing
|
|
e7e0e20f
|
2011-06-16T16:39:20
|
|
Simplify loose ref writing
There is no need to store the format outselves, as the library
provides git_filebuf_printf which takes care of the formatting itself.
Also get rid of an use of strcat + strcpy which is always a nice
thing.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
d144c569
|
2011-06-16T03:02:46
|
|
Update documentation
Fix all the missmatched arguments in the docs
|
|
f1d01851
|
2011-06-16T02:48:48
|
|
oid: Uniformize ncmp methods
Drop redundant methods. The ncmp method is now public
|
|
fa48608e
|
2011-06-16T02:36:21
|
|
oid: Rename methods
Yeah. Finally. Fuck the old names, this ain't POSIX
and they don't make any sense at all.
|
|
43521d06
|
2011-06-16T02:27:43
|
|
refs: Rename git_referece_listcb to _foreach
Same name as `git_config_foreach`
|
|
607d1643
|
2011-06-15T17:24:04
|
|
Merge pull request #248 from carlosmn/config
Implement config writing
|
|
536955f9
|
2011-06-16T02:21:33
|
|
Add method to get the compiled version of the lib
|
|
ef9a6f4c
|
2011-06-15T13:47:41
|
|
Merge pull request #261 from Romain-Geissler/discovery-path-v2
Fix: GIT_PATH_PATH_SEPARATOR is now a semi-colon under Windows.
|
|
0657e46d
|
2011-06-15T12:36:08
|
|
Fix: GIT_PATH_PATH_SEPARATOR is now a semi-colon under Windows.
GIT_PATH_LIST_SEPARATOR and GIT_PATH_MAX are made public so
that it's can be used by a client.
|
|
f2bb894e
|
2011-06-15T12:15:11
|
|
Merge pull request #251 from nulltoken/fix/msvc-warnings
Fix compilation warnings in MSVC
|
|
1aa1b09e
|
2011-06-15T12:11:59
|
|
Merge pull request #260 from nulltoken/fix/git_index_add
Fix git_index_add()
|
|
8e11e707
|
2011-06-15T16:06:20
|
|
git_index_add: enforce test coverage
|
|
a64bf21b
|
2011-06-15T16:05:33
|
|
blob: Fix git_blob_create_fromfile()
|
|
63fadf99
|
2011-06-15T17:04:11
|
|
Add mode_t definition in MSVC compat layer
|
|
61438604
|
2011-06-15T10:39:20
|
|
Merge pull request #259 from schu/nitpicky-markdown
README.md: do not break syntax highlighting
|
|
96da90ae
|
2011-06-15T09:38:55
|
|
update examples content to be compilable and up to date
|
|
8087bb93
|
2011-06-15T14:08:43
|
|
README.md: do not break syntax highlighting
Signed-off-by: schu <schu-github@schulog.org>
|
|
2e6d8ec4
|
2011-06-14T15:15:11
|
|
fix the example urls
|
|
388f37b3
|
2011-06-14T09:27:46
|
|
add examples for docs
|
|
742e3fc9
|
2011-06-14T08:17:53
|
|
replace stupid doxygen
|
|
f64586fa
|
2011-06-14T20:00:06
|
|
Add CTest support for CI
|
|
737406b7
|
2011-06-14T09:31:19
|
|
fix gid_ misspelling
|
|
90412507
|
2011-06-14T06:37:10
|
|
Port MSVC specific Waf compilation flags to CMake and remove dynamic dependence to msvcr100.dll on Windows
The '/MT' and '/MTd' flags replace the dynamic link to 'msvcr100.dll' with a static link to 'libcmt.lib'. This has the nice effect to ease the deployment of libgit2 by removing the dependence on 'msvcr100.dll' which is not deployed by default on Windows.
|
|
7548b8af
|
2011-06-14T17:36:38
|
|
Update README.md
|
|
953e1f93
|
2011-06-13T22:33:32
|
|
build: Cleanup CMake
|
|
1a7b52dc
|
2011-06-13T15:34:34
|
|
build: Drop waf support
Goodbye Waf. It's been a long ride.
|
|
b0233216
|
2011-06-12T11:40:14
|
|
Remove custom backends
All the custom backend code will be moved to a separate project,
together with the new MySQL backend.
|
|
0f49a589
|
2011-06-14T08:28:03
|
|
Merge pull request #258 from carlosmn/no-arpa
Remove uneeded arpa/inet.h include
|
|
2e18e29b
|
2011-06-14T16:35:57
|
|
Remove uneeded arpa/inet.h include
This header isn't needed at all and it shows a lot of warnings on
OpenBSD.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
a98b0d80
|
2011-06-14T14:26:08
|
|
Test replacing a value
Add a test to check that value replacement works.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
711b1096
|
2011-06-14T13:08:30
|
|
Indent config variables with tags
Confg variables are indended using tags and not four spaces as was
being done by the code.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
95818ff7
|
2011-06-08T22:15:49
|
|
Fix filebuf0 test which was failing on Windows
|
|
9e3aa947
|
2011-06-08T20:39:38
|
|
Fix compilation warnings in MSVC
|
|
a51201cc
|
2011-06-11T22:05:26
|
|
use proper in-memory database for sqlite3 tests
|
|
63ad4394
|
2011-06-11T11:56:10
|
|
Merge pull request #253 from sschuberth/msvc10-fixes
Msvc10 fixes
|
|
e6480970
|
2011-06-10T14:00:54
|
|
Add missing function declarations to avoid MSVC compiler warnings
The better solution would probably be to turn the gitfo_lstat /
gitfo_readlink macros into real functions that wrap either lstat or
gitfo_lstat__w32 (and readlink or gitfo_readlink__w32). However, that
would introduce an indirection unless inlined. For now, this is the less
intrusive change.
|
|
3f66c202
|
2011-06-10T13:57:01
|
|
Use "__inline" instead of "inline" with MSVC
MSVC supports "inline" only in C++ code, not in C code.
|
|
c1802641
|
2011-06-10T13:56:24
|
|
Prefer to use file mode defines instead of raw numbers
|
|
535ff384
|
2011-06-10T13:54:47
|
|
Prefer to use S_IFLNK instead of _S_IFLNK for consistency
|
|
732eb0a8
|
2011-06-10T13:54:25
|
|
Add some missing MSVC compatibility defines
|
|
e3f56a2b
|
2011-06-08T08:11:26
|
|
Merge pull request #216 from glesserd/development
git_tag_create{,_o,_frombuffer} correction and improvement
|
|
4e1543ff
|
2011-06-08T08:09:54
|
|
Merge pull request #250 from pegonma/commit_short_message
Commit short message should be the same as git's
|
|
ae496955
|
2011-06-08T17:03:41
|
|
windows: Fix Symlink issues
Handle Symlinks if they can be handled in Win32. This is not even
compiled. Needs review.
The lstat implementation is modified from core Git.
The readlink implementation is modified from PHP.
|
|
1071c565
|
2011-06-08T04:16:47
|
|
Merge pull request #246 from carlosmn/keep-lock
Keep the lockfile if we fail to lock it
|
|
858ef372
|
2011-06-08T11:16:31
|
|
Changed commit short messages so that they match git log --oneline output.
In git, the short message of a commit is the part of the commit message before 2 consecutive line breaks. In the short message, line breaks are replaced by space characters.
|
|
8bb198e6
|
2011-05-17T16:39:09
|
|
config: implement config writing
After each variable gets set, we store it in our list (not completely
in the right position, but the close enough). Then we write out the
new config file in the same way that git.git does it (keep the rest of
the file intact and insert or replace the variable in its line).
Overwriting variables and adding new ones is supported (even on new
sections), though deleting isn't yet.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
3b3577c7
|
2011-06-07T23:32:14
|
|
config: store new variables with the internal representation of the section
The section name should be stored in its case-sensitive variant when
we are adding a new variable. Use the internalize_section function to
do just that.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
5ab50417
|
2011-06-07T22:49:13
|
|
Remove an unfortunate optimisation from cvar_match_section
The (rather late) early-exit code, which provides a negligible
optimisation causes cvar_match_section to return false negatives when
it's called with a section name instead of a full variable name.
Remove this optimisation.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
bb9272dd
|
2011-06-07T17:03:07
|
|
filebuf cleanup: only unlink lockfile if we've opened it
Add a check for the file descriptor in git_filebuf_cleanup. Without
it, an existing lockfile would be deleted if we tried to acquire it
(but failed, as the lockfile already existed).
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
8102a961
|
2011-06-07T16:51:31
|
|
Add test for git_filebuf_open error code
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
3a12891f
|
2011-06-07T07:07:45
|
|
Merge pull request #243 from jpfender/symlinks2
Symlinks NEW
|
|
a5aa5bd1
|
2011-06-07T07:04:51
|
|
Merge pull request #245 from schu/use-normalized
rename-reference: use normalized path
|
|
e64124b4
|
2011-06-07T07:04:20
|
|
Merge pull request #244 from carlosmn/config-bugfix
config: update the git_config_add_file documentation
|
|
b0a46745
|
2011-06-07T07:03:37
|
|
Merge pull request #241 from nulltoken/fix/msvc-warnings
Fix compilation warnings in MSVC
|
|
275c6a0b
|
2011-06-07T07:03:14
|
|
Merge pull request #242 from schu/fix-unused-2
fileops.c: fix unused warning v2
|
|
a2a305fc
|
2011-06-07T15:39:40
|
|
config: explain the cfg and file relationship better
It's not clear how git_config and git_config_file relate to one
another. Be more explicit about their relationship in the function
documentation.
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
ce78f39e
|
2011-06-07T14:18:22
|
|
config: update the git_config_add_file documentation
Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
|
|
52b188f6
|
2011-06-07T14:18:20
|
|
rename-reference: use normalized path
Signed-off-by: schu <schu-github@schulog.org>
|
|
27a1b382
|
2011-06-07T14:15:55
|
|
Export gitfo_shallow_exists
|
|
fdd1e04c
|
2011-06-07T14:10:06
|
|
fileops: Allow differentiation between deep and shallow exists()
When calling gitfo_exists() on a symbolic link, sometimes we need to
simply check whether the link exists and sometimes we need to check
whether the file pointed to by the symlink exists.
Introduce a new function gitfo_shallow_exists that only checks if the
link exists and revert gitfo_exists to the original functionality of
checking whether the file pointed to by the link exists.
|
|
ee4912bf
|
2011-06-07T11:15:23
|
|
Revert "common: Include stat.h in include/git2/common.h instead of src/common.h"
This reverts commit df1c98ab6d6171ed63729195bd190b54b67fe530.
As 8a27b6b reverts the exposition of struct stat to the external API, we
do not need - indeed, do not want - struct stat to be in the outer
include layer.
|
|
b74c867a
|
2011-06-07T11:11:09
|
|
blob: Stat path inside git_blob_create_fromfile
00582bc introduced a change that required the caller of
git_blob_create_fromfile() to pass a struct stat with the stat
information for the file. Several developers pointed out that this would
make life hard for the bindings developers as struct stat isn't widely
supported by other languages.
Make git_blob_create_fromfile() stat the path itself, eliminating the
need for the file to be stat'ed by the caller. This makes
index_init_entry() more costly as the file will be stat'ed twice but
makes life easier for everyone else.
|
|
cbf4f9f4
|
2011-05-25T16:31:14
|
|
common: Include stat.h in include/git2/common.h instead of src/common.h
00582bcb introduced a change to git_blob_create_fromfile() that required
the caller to pass a stat struct. This means that we need to include
stat.h higher in the hierarchy of includes.
|
|
c1a2a14e
|
2011-05-25T16:16:41
|
|
index: Correctly write entry mode
The entry mode flags for an entry created from a path name were not
correctly written if the entry was a symlink. The st_mode of a statted
symlink is 0120777, however git requires the mode to read 0120000,
because it does not care about permissions of symlinks.
Introduce index_create_mode() that correctly writes the mode flags in
the form expected by git.
|
|
1869b31e
|
2011-05-25T16:11:57
|
|
index/fileops: Correctly process symbolic links
gitfo_exists() used to error out if the given file was a symbolic link,
due to access() returning an error code. This is not expected behaviour,
as gitfo_exists() should only check whether the file itself exists, not
its link target if it is a symbolic link.
Fix this by calling gitfo_lstat() instead, which is just a wrapper for
lstat().
Also fix the same error in index_init_entry().
|
|
4d7905c5
|
2011-05-25T16:04:29
|
|
blob: Require stat information for git_blob_create_fromfile()
In order to be able to write symlinks with git_blob_create_fromfile(),
we need to check whether the file to be written is a symbolic link or
not. Since the calling function of git_blob_create_fromfile() is likely to have
stated the file before calling, we make it pass the stat.
The reason for this is that writing symbolic link blobs is significantly
different from writing ordinary files - we do not want to open the link
destination but instead want to write the link itself, regardless of
whether it exists or not.
Previously, index_init_entry() used to error out if the file to be added
was a symlink that pointed to a nonexistent file. Fix this behaviour to
add the file regardless of whether it exists. This mimics git.git's
behaviour.
|
|
1c68d27d
|
2011-06-07T10:15:31
|
|
Fix the error pointed out by tanoku.
Now the code shoulb be c89.
|
|
f120e92b
|
2011-06-07T08:41:33
|
|
Fix compilation warnings in MSVC
|