Log

Author Commit Date CI Message
Jonathan "Duke" Leto d2b96cf4 2011-07-12T11:19:42 Add parrot-libgit2 to the list of language bindings in the readme
Vicent Marti 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
Vicent Marti bfd5e3e2 2011-06-18T15:07:41 config: Fix API docs
Vicent Marti 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.
Vicent Martí 8ee2bb54 2011-06-19T03:50:19 Merge pull request #268 from nulltoken/patch-3 Fix link to API documentation
nulltoken e49020e0 2011-06-18T09:07:51 Fix link to API documentation
Vicent Marti e35e9fb4 2011-06-18T13:23:19 mingw: Fix compilation
Vicent Marti 2a406ab5 2011-06-18T02:08:56 config: Fix sorting of repository config files
Vicent Marti 19cb6857 2011-06-18T01:50:48 config: Bring back `git_config_open_global` Scott commands, I obey.
Vicent Marti 920e000d 2011-06-18T01:17:58 config: Update examples
Vicent Marti dbe70bd5 2011-06-18T01:12:58 config: Fix compilation in MSVC
Vicent Marti 40070445 2011-06-18T00:54:24 config: Typorrrrl
Vicent Martí deee4766 2011-06-17T15:44:26 Merge pull request #267 from Jopie64/development Fix compilation error in MSVC when compiling for c++
Vicent Marti 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.
Johan 't Hart f0619886 2011-06-07T22:09:22 Fix compilation error in MSVC when compiling for c++
Carlos Martín Nieto 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>
Carlos Martín Nieto 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>
Carlos Martín Nieto 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>
Carlos Martín Nieto 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>
Carlos Martín Nieto b76934de 2011-06-16T16:55:11 Remove double-space Noticed by txdv Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Vicent Marti c716b187 2011-06-17T19:47:58 config: Fix unitialized variable warning
Vicent Marti f0890fcc 2011-06-17T19:40:51 cmake: Build shared library by default
Vicent Marti 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
Vicent Martí f252d479 2011-06-17T10:32:42 Merge pull request #264 from nulltoken/patch-2 Fix misleading comment in CMake build script
Vicent Martí 2414d000 2011-06-17T10:32:22 Merge pull request #266 from carlosmn/valgrind Plug memory leaks
Vicent Marti 02285482 2011-06-17T19:19:30 fileops: Cast the GetProcAddress value
Vicent Marti 9c11bd0a 2011-06-17T19:08:06 fileops: Fix 'GetFinalPathNameByHandleA' in old platforms
Carlos Martín Nieto 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>
Carlos Martín Nieto 038d2fc3 2011-06-16T20:24:51 Plug leaks in the repo discovery tests Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 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
Vicent Martí cb75ffea 2011-06-16T08:01:47 Merge pull request #263 from carlosmn/refs-writing Simplify loose ref writing
Carlos Martín Nieto 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>
Vicent Marti d144c569 2011-06-16T03:02:46 Update documentation Fix all the missmatched arguments in the docs
Vicent Marti f1d01851 2011-06-16T02:48:48 oid: Uniformize ncmp methods Drop redundant methods. The ncmp method is now public
Vicent Marti 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.
Vicent Marti 43521d06 2011-06-16T02:27:43 refs: Rename git_referece_listcb to _foreach Same name as `git_config_foreach`
Vicent Martí 607d1643 2011-06-15T17:24:04 Merge pull request #248 from carlosmn/config Implement config writing
Vicent Marti 536955f9 2011-06-16T02:21:33 Add method to get the compiled version of the lib
Vicent Martí 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.
Romain Geissler 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.
Vicent Martí f2bb894e 2011-06-15T12:15:11 Merge pull request #251 from nulltoken/fix/msvc-warnings Fix compilation warnings in MSVC
Vicent Martí 1aa1b09e 2011-06-15T12:11:59 Merge pull request #260 from nulltoken/fix/git_index_add Fix git_index_add()
nulltoken 8e11e707 2011-06-15T16:06:20 git_index_add: enforce test coverage
nulltoken a64bf21b 2011-06-15T16:05:33 blob: Fix git_blob_create_fromfile()
nulltoken 63fadf99 2011-06-15T17:04:11 Add mode_t definition in MSVC compat layer
Vicent Martí 61438604 2011-06-15T10:39:20 Merge pull request #259 from schu/nitpicky-markdown README.md: do not break syntax highlighting
Scott Chacon 96da90ae 2011-06-15T09:38:55 update examples content to be compilable and up to date
schu 8087bb93 2011-06-15T14:08:43 README.md: do not break syntax highlighting Signed-off-by: schu <schu-github@schulog.org>
Scott Chacon 2e6d8ec4 2011-06-14T15:15:11 fix the example urls
Scott Chacon 388f37b3 2011-06-14T09:27:46 add examples for docs
Scott Chacon 742e3fc9 2011-06-14T08:17:53 replace stupid doxygen
Vicent Marti f64586fa 2011-06-14T20:00:06 Add CTest support for CI
Scott Chacon 737406b7 2011-06-14T09:31:19 fix gid_ misspelling
Em 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.
Vicent Marti 7548b8af 2011-06-14T17:36:38 Update README.md
Vicent Marti 953e1f93 2011-06-13T22:33:32 build: Cleanup CMake
Vicent Marti 1a7b52dc 2011-06-13T15:34:34 build: Drop waf support Goodbye Waf. It's been a long ride.
Vicent Marti 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.
Vicent Martí 0f49a589 2011-06-14T08:28:03 Merge pull request #258 from carlosmn/no-arpa Remove uneeded arpa/inet.h include
Carlos Martín Nieto 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>
Carlos Martín Nieto 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>
Carlos Martín Nieto 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>
nulltoken 95818ff7 2011-06-08T22:15:49 Fix filebuf0 test which was failing on Windows
nulltoken 9e3aa947 2011-06-08T20:39:38 Fix compilation warnings in MSVC
Brian Lopez a51201cc 2011-06-11T22:05:26 use proper in-memory database for sqlite3 tests
Vicent Martí 63ad4394 2011-06-11T11:56:10 Merge pull request #253 from sschuberth/msvc10-fixes Msvc10 fixes
Sebastian Schuberth 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.
Sebastian Schuberth 3f66c202 2011-06-10T13:57:01 Use "__inline" instead of "inline" with MSVC MSVC supports "inline" only in C++ code, not in C code.
Sebastian Schuberth c1802641 2011-06-10T13:56:24 Prefer to use file mode defines instead of raw numbers
Sebastian Schuberth 535ff384 2011-06-10T13:54:47 Prefer to use S_IFLNK instead of _S_IFLNK for consistency
Sebastian Schuberth 732eb0a8 2011-06-10T13:54:25 Add some missing MSVC compatibility defines
Vicent Martí e3f56a2b 2011-06-08T08:11:26 Merge pull request #216 from glesserd/development git_tag_create{,_o,_frombuffer} correction and improvement
Vicent Martí 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
Vicent Marti 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.
Vicent Martí 1071c565 2011-06-08T04:16:47 Merge pull request #246 from carlosmn/keep-lock Keep the lockfile if we fail to lock it
Marc Pegon 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.
Carlos Martín Nieto 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>
Carlos Martín Nieto 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>
Carlos Martín Nieto 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>
Carlos Martín Nieto 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>
Carlos Martín Nieto 8102a961 2011-06-07T16:51:31 Add test for git_filebuf_open error code Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Vicent Martí 3a12891f 2011-06-07T07:07:45 Merge pull request #243 from jpfender/symlinks2 Symlinks NEW
Vicent Martí a5aa5bd1 2011-06-07T07:04:51 Merge pull request #245 from schu/use-normalized rename-reference: use normalized path
Vicent Martí e64124b4 2011-06-07T07:04:20 Merge pull request #244 from carlosmn/config-bugfix config: update the git_config_add_file documentation
Vicent Martí b0a46745 2011-06-07T07:03:37 Merge pull request #241 from nulltoken/fix/msvc-warnings Fix compilation warnings in MSVC
Vicent Martí 275c6a0b 2011-06-07T07:03:14 Merge pull request #242 from schu/fix-unused-2 fileops.c: fix unused warning v2
Carlos Martín Nieto 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>
Carlos Martín Nieto ce78f39e 2011-06-07T14:18:22 config: update the git_config_add_file documentation Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
schu 52b188f6 2011-06-07T14:18:20 rename-reference: use normalized path Signed-off-by: schu <schu-github@schulog.org>
Jakob Pfender 27a1b382 2011-06-07T14:15:55 Export gitfo_shallow_exists
Jakob Pfender 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.
Jakob Pfender 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.
Jakob Pfender 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.
Jakob Pfender 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.
Jakob Pfender 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.
Jakob Pfender 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().
Jakob Pfender 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.
David Glesser 1c68d27d 2011-06-07T10:15:31 Fix the error pointed out by tanoku. Now the code shoulb be c89.
nulltoken f120e92b 2011-06-07T08:41:33 Fix compilation warnings in MSVC