Log

Author Commit Date CI Message
Brodie Rao 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.
Brodie Rao 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
Brodie Rao 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.
Brodie Rao 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
Vicent Marti 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.
Vicent Marti d3fb6a81 2011-10-05T16:46:34 cmake: Set the old test suite as default for the release
Vicent Marti dd3fd682 2011-10-05T13:44:27 msvc: Remove superfluous includes
Vicent Marti c060854e 2011-10-04T21:11:51 msvc: Properly handle inttypes.h/stdint.h
Carlos Martín Nieto 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>
Vicent Martí 24ce105b 2011-10-03T14:42:52 Merge pull request #441 from csware/ignore-missing-pack-file ignore missing pack file
Vicent Martí ef1e5da1 2011-10-03T14:40:06 Merge pull request #438 from jdavid/development Make git_oid_fromstrn support hex strings of odd length
Sven Strickroth 599297fd 2011-10-03T23:12:43 ignore missing pack file as git does See http://code.google.com/p/tortoisegit/issues/detail?id=862 Signed-off-by: Sven Strickroth <email@cs-ware.de>
J. David Ibáñez 0e058e78 2011-10-02T21:40:57 oid: add missing check to git_oid_fromstrn Signed-off-by: J. David Ibáñez <jdavid.ibp@gmail.com>
Carlos Martín Nieto cd19ca95 2011-10-01T20:16:13 Squelch a couple of warnings Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 9ac581bf 2011-10-01T19:56:04 config: behave like git with [section.subsection] The documentation is a bit misleading. The subsection name is always case-sensitive, but with a [section.subsection] header, the subsection is transformed to lowercase when the configuration is parsed. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 92be7908 2011-10-01T14:46:30 indexer: return immediately if passed a NULL value Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 922bc225 2011-10-01T14:34:51 pkt: send all of the wants in the negotiation A missing if caused the function to return after the first want line without capabilities. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 7ad994bb 2011-10-01T13:41:16 transport-git: fix git request length calculation There was an off-by-one error that was uncovered when we used the right length from git_buf. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Marti dfd0abda 2011-10-01T13:25:24 clay: Fix compilation under MSVC
Vicent Marti 10063aeb 2011-10-01T13:10:29 transport-git: Encapsulation ist gut
Vicent Marti 657ce4b5 2011-10-01T12:58:55 http-transport: Properly cleanup the WSA context
Vicent Marti 1e5b2635 2011-10-01T12:58:17 http-transport: Update copyright
Vicent Martí f77d4f7f 2011-10-01T03:56:19 Merge pull request #437 from carlosmn/networking-windows Fix networking on Windows
Carlos Martín Nieto dc8e3096 2011-10-01T02:09:35 Include stdint.h in git2/config.h Otherwise MSVC doesn't know what we're talking about when we say int32_t or int64_t. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto bad53552 2011-09-30T23:48:27 netops: abstract away socket closing Winsock wants us to use closesocket() instead of close(), so introduce the gitno_close function, which does the right thing. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto a2888919 2011-09-30T18:35:33 local transport: don't segfault on wrong URL memset the structure on initialisation and don't try to dereference the vector with the heads if we didn't find a repository. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto ccc9872d 2011-09-30T17:21:30 Initialise the winsock DLL Windows wants us to initialise the networking DLL before we're allowed to send data through a socket. Call WSASetup and WSACleanup if GIT_WIN32 is defined. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto a95aeb48 2011-09-30T16:55:05 Use git_buf in the git request This is clearer and sidesteps the issue of what the return value of snprintf is on the particular OS we're running on. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Martí a70b3c73 2011-09-30T13:52:01 Merge pull request #436 from libgit2/config-int-types config: Proper type declarations for 64 bit ints
J. David Ibáñez b9caa185 2011-09-30T19:50:13 oid: now git_oid_fromstrn checks whether the given string is too short Signed-off-by: J. David Ibáñez <jdavid.ibp@gmail.com>
J. David Ibáñez 6d8d3f19 2011-09-30T19:41:29 oid: optimize git_oid_fromstrn by using memset Signed-off-by: J. David Ibáñez <jdavid.ibp@gmail.com>
J. David Ibáñez e724b058 2011-09-30T19:08:48 oid: make git_oid_fromstrn support hex strings of odd length This fixes issue #433. Signed-off-by: J. David Ibáñez <jdavid.ibp@gmail.com>
Vicent Marti 107e30e9 2011-09-30T16:25:03 core: One last `long long`
Vicent Marti fafd4710 2011-09-30T16:08:06 config: Proper type declarations for 64 bit ints
Carlos Martín Nieto 358a15fd 2011-09-30T15:43:58 config: fix check for environment string expansion If ExpandEnvironmentStringsW is successful, it returns the amount of characters written, including the NUL terminator. Thanks to Emeric for reading the MSDN documentation correctly. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Martí 550c9f31 2011-09-30T05:14:04 Merge pull request #434 from schu/fix-ref-regression refs.c: fix reference_rename
schu 472fa08f 2011-09-30T10:31:41 refs.c: fix reference_rename 6c8b458 removed an "unused" variable needed for git_hashtable_insert2(), causing a segfault in reference_rename(). Instead, use git_hashtable_insert(). Signed-off-by: schu <schu-github@schulog.org>
Carlos Martín Nieto c36280a0 2011-09-30T06:26:29 repository: export git_repository_config_autoload Take the opportunity to finish the comment about this function. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Marti 6c8b458d 2011-09-29T17:04:45 mingw: Fix compilation warnings
Vicent Marti 6e34111e 2011-09-29T16:30:38 netops: Use pragmas only in MSVC
Vicent Marti 356f11fe 2011-09-29T16:28:00 index: Silence type-punned warning
Vicent Marti 780bea6e 2011-09-29T16:23:24 mingw: Fix printf identifiers
Vicent Marti c103d7b4 2011-09-29T15:49:28 odb: Pass compression settings to filebuf
Vicent Marti 8af4d074 2011-09-29T15:34:17 odb: Let users decide compression level for the loose ODB
Vicent Marti 72bdfdbc 2011-09-29T15:24:41 http-parser: Disable MSVC warnings locally
Carlos Martín Nieto 0812caae 2011-09-28T23:54:09 Resync with upstream http-parser
Vicent Marti 5888860d 2011-09-28T23:42:38 msvc: Disable warnings in header file Remove clutter from the CMakeLists file by disabling the warnings programatically.
Vicent Marti d215cf24 2011-09-28T20:21:48 http-parser: More type changes
Vicent Marti 59903b1f 2011-09-28T19:27:58 Change types in http-parser
Vicent Marti d02a7d83 2011-09-28T18:57:32 Update Clay
Vicent Martí 35e9407c 2011-09-27T11:14:23 Merge pull request #432 from carlosmn/msvc Really fix MSVC
Carlos Martín Nieto a5b0e7f8 2011-09-27T20:08:13 Really fix MSVC These was left over from the previous PRs. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 887eaf4d 2011-09-23T17:36:37 Fix dev branch under MSVC In libgit2: Move an enum out of an int bitfield in the HTTP transport. In the parser: Use int bitfields and change some variable sizes to better fit thir use. Variables that count the size of the data chunk can only ever be as large as off_t. Warning 4127 can be ignored, as nobody takes it seriously anyway. From Emeric: change some variable declarations to keep MSVC happy. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Marti dc5c8781 2011-09-27T14:53:57 http-parser: Do not use bitfields Bitfields suck. And if you make them with non-int types, they suck in a non-standards compliant way. Like sucking sideways or something. This commit removes all bitfields in the `http_parser` struct, and replaces them with the minimal type needed to contain their values. Note that the fields in the struct have been reordered so they can be packed with 4-byte alignment. This saves both memory on the parser (because non-int bitfields get expanded to 4byte in most compilers anyway) and time (because the fields are now properly aligned and the compiler doesn't need to generate bit-level ops to access them).
Carlos Martín Nieto 40fe5fbe 2011-09-22T22:50:36 Make repo config loading automatic or completely explicit git_repository_config wants to take the global and system paths again so that one can be explicit if needed. The git_repository_config_autoload function is provided for the cases when it's good enough for the library to guess where those files are located. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 4c562347 2011-09-22T21:34:46 Add git_config_find_system This allows the library to guess where the system configuration file should be located. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Martí 59116392 2011-09-27T05:35:34 Merge pull request #427 from schu/fix-unused-parameters t18-status.c: fix unused warnings
Vicent Marti 8e9bfa4c 2011-09-27T14:31:57 tree: Fix check for valid attributes
Carlos Martín Nieto 69bffab9 2011-07-26T14:58:32 Add git_tree_cache_invalidate_path Whenever a file is updated in the index, each tree leading towards it needs to be invalidated. Provide the supporting function. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto acd31b4a 2011-07-26T12:44:06 tree cache: correctly handle invalidated trees The fix introduced in a02fc2cd1 (2011-05-24; index: correctly parse invalidated TREE extensions) threw out the rest of the data in the extension if it found an invalidated entry. This was the result of incorrect reading of the documentation. Insted, keep reading the extension, as there may be cached data we can use. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto b183ffe7 2011-07-26T12:26:12 Make tree cache name a flex-array Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto b4171320 2011-07-26T11:34:54 Move the tree cache functions to their own file Rename git_index_tree to git_tree_cache. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Vicent Marti 01d7fded 2011-09-22T20:44:30 Revert "Rewrite getenv to use Win32 version on Windows" This reverts commit e1b86444676b70154bf8ab450d429bdef57a8276.
Vicent Marti 9ef9e8c3 2011-09-27T14:30:14 tree: Use an internal append functiont to add new entries
Carlos Martín Nieto 8255c69b 2011-09-24T17:06:52 Make use of the tree cache Taking advantage of the tree cache, git_tree_create_fromindex becomes comparable in speed to git write-tree when the cache is available. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 3ba69ba8 2011-08-02T15:27:42 Add git_tree_cache_get Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto b419fe2d 2011-08-02T14:38:49 Invalidate the path when removing from the index Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto e23ede0d 2011-07-26T15:22:15 index: invalidate added paths When a file is updated in the index, it's path needs to be invalidated in the tree cache as the hash is no longer correct. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Vicent Martí ea4dad8e 2011-09-25T06:52:01 Merge pull request #424 from carlosmn/access-unicode Implment p_access and use it in git_fileutils_exists
schu ddeaa7fb 2011-09-24T13:41:10 t18-status.c: fix unused warnings Signed-off-by: schu <schu-github@schulog.org>
Carlos Martín Nieto dd44887a 2011-09-23T00:00:05 Implment p_access and use it in git_fileutils_exists Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Paul Betts 76c15b71 2011-09-22T12:26:23 Revert changes to clay
Vicent Martí 01ab592b 2011-09-22T10:28:05 Merge pull request #421 from nulltoken/ntk/fix/config-get-set-long config: make git_config_[get|set]_long() able to properly deal with 8 bytes wide values
Vicent Marti 87a26ad5 2011-09-22T20:23:42 Add HTTP sources to Clay suite
Vicent Martí 8114ee4c 2011-09-22T10:17:43 Merge pull request #405 from carlosmn/http-ls Implement ls-remote over HTTP
nulltoken ad196c6a 2011-09-21T23:17:39 config: make git_config_[get|set]_long() able to properly deal with 8 bytes wide values Should fix issue #419. Signed-off-by: nulltoken <emeric.fermas@gmail.com>
Carlos Martín Nieto 4ee8418a 2011-09-21T22:14:09 http: get rid of the global state Move the header parsing state into the transport, making use of the existing bitfield. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Paul Betts e1b86444 2011-09-21T11:17:30 Rewrite getenv to use Win32 version on Windows
Vicent Marti e3ecf7e9 2011-09-21T14:09:56 Do not have duplicate filenames Two `posix.c` files may or may not break MSVC builds under 2008. Do not have repeated objects. You will need to clean & regenerate CMake.
Vicent Martí 805dc2a0 2011-09-20T15:52:16 Merge pull request #415 from schu/ref-rename-regression refs: fix git_reference_rename()
Vicent Martí 4e52d340 2011-09-20T15:38:10 Merge pull request #413 from libgit2/utf8-paths-win32 Rewrite p_* functions to use Unicode and marshal to UTF8 internally, take 2
Vicent Martí b6dcc2eb 2011-09-20T15:37:55 Merge pull request #414 from carlosmn/repo-discover-short repsitory: use better error code if path is too short for discover
Vicent Marti a5888127 2011-09-21T01:14:57 Fix clay under MinGW
Vicent Marti 9457a36c 2011-09-21T01:10:11 Merge branch 'development' of github.com:libgit2/libgit2 into development
schu 93fdbe00 2011-09-20T11:11:59 refs: fix git_reference_rename() reference_rename() recently failed when renaming an existing reference refs/heads/foo/bar -> refs/heads/foo because of a change in the underlying functions / error codes. Fixes #412. Signed-off-by: schu <schu-github@schulog.org>
schu b4ec3c64 2011-09-19T22:19:59 refs: add additional test for reference renaming Signed-off-by: nulltoken <emeric.fermas@gmail.com> Signed-off-by: schu <schu-github@schulog.org>
Carlos Martín Nieto c3fe018b 2011-09-20T10:02:11 repsitory: use better error code if path is too short for discover GIT_EOVERFLOW means something different. Use GIT_ESHORTBUFFER. On the way, remove a redundant sizeof(char). Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Paul Betts 6d0ef974 2011-09-19T12:41:27 Fix opendir/readdir and friends on Win32 to use Unicode
Paul Betts 7998ae5a 2011-09-19T12:36:12 Rewrite p_* functions to use Unicode and marshal to UTF8 internally
Paul Betts c498701d 2011-09-19T10:38:44 Fix tests to use portable setenv
Paul Betts 222d057c 2011-09-19T10:34:52 Create cross-platform setenv
Vicent Marti 468d0d1e 2011-09-19T06:32:56 Fix `repository_config` call in network::remotes
Vicent Marti 19d869bb 2011-09-19T06:31:54 Fix warning in `status.c`
Carlos Martín Nieto 3a2626f3 2011-09-13T01:13:41 Add remotes test to clay Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Marti 7aece9cf 2011-09-19T06:14:54 Who makes the magic possible?
Vicent Martí 71a4c1f1 2011-09-18T20:07:59 Merge pull request #384 from kiryl/warnings Add more -W flags to CFLAGS
Vicent Martí a8076074 2011-09-18T20:00:19 Merge pull request #397 from lambourg/development Fix compilation issues with mingw64 headers
Vicent Martí ae996e02 2011-09-18T19:59:34 Merge pull request #394 from carlosmn/tree-fromindex Use git_treebuilder to write the index as a tree
Vicent Martí 6640266e 2011-09-18T19:58:22 Merge pull request #398 from carlosmn/config-autohome git_repository_config: open global config file automatically
Vicent Martí 71b84c63 2011-09-18T19:55:48 Merge pull request #408 from schu/fixup-status Fixup status.c