Log

Author Commit Date CI Message
Carlos Martín Nieto 29dca088 2011-05-17T13:38:19 Move config to the new error methods Take this opportunity to fix an instance of returning GIT_EOBJCORRUPTED when malloc failed. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 94711cad 2011-05-17T12:12:59 Merge upstream/development
Vicent Marti 335d6c99 2011-05-17T01:46:07 cache: Drop cuckoo hashing Now we use a simple closed-addressing cache. Cuckoo hashing was creating too many issues with race conditions. Fuck that. Let's see what happens performance wise, we may have to roll back or come up with another way to implement an efficient multi-threaded cache.
Vicent Marti 3de79280 2011-05-17T00:51:52 cache: Fix deadlock Do not try to adquire the same node lock twice when the cuckoo hashing resolves to the same node.
Vicent Martí 1e70b96e 2011-05-16T08:05:10 Merge pull request #190 from alco/patch-1 Fix a typo in README.md
Alexei Sholik cce225bf 2011-05-16T01:56:20 Fix a typo in README.md
Vicent Marti 5ca2f580 2011-05-15T23:48:05 Do not set error message on `GIT_EREVWALKOVER` This is not really an error, just a special return code to mark the end of an iteration.
Vicent Marti f87d9beb 2011-05-15T23:46:39 Change error codes from DEFINEs to an enum
Vicent Marti 7cadd1f6 2011-05-15T23:46:22 Check error code from `git_cache_init`
Vicent Marti 4edf3e09 2011-05-15T23:45:24 Return success code on `git_cache_init`
Vicent Martí 3fe2e770 2011-05-15T13:34:43 Merge pull request #184 from nulltoken/repo-error-handling Updated fileops.c and repository.c to new error handling mechanism
Vicent Martí b12b7723 2011-05-15T10:16:36 Merge pull request #185 from chobie/development fix git_otype typo when calling `git_odb_read_header`.
Shuhei Tanuma 71747bca 2011-05-15T20:07:54 fix git_otype typo when calling `git_odb_read_header`.
nulltoken 81201a4c 2011-05-15T06:57:34 Move cache.c to the new error handling
nulltoken 3abe3bba 2011-05-14T16:05:33 Move repository.c to the new error handling
nulltoken 77c3999c 2011-05-14T14:40:56 Move fileops.c to the new error handling
Vicent Martí f02f4b53 2011-05-13T15:25:19 Merge pull request #183 from schu/errors Replace errors
Vicent Marti 098173c5 2011-05-13T04:17:24 Check Redis replies for NULL
Vicent Marti f31bd03f 2011-05-13T04:15:46 Include "common.h" in "errors.h"
Vicent Martí c4ddcb78 2011-05-11T11:49:45 Merge pull request #182 from darkhelmet/patch-1 Add --with-redis flag to list of available build flags in README.
schu b51c9269 2011-05-11T14:44:44 Move revwalk.c to the new error handling Signed-off-by: schu <schu-github@schulog.org>
schu 86f5fa78 2011-05-11T14:00:38 Move vector.c to the new error handling Remove "redundant" check for v->_cmp in wrapper function git_vector_bsearch(). Signed-off-by: schu <schu-github@schulog.org>
schu d6de92b6 2011-05-11T12:40:04 Move tree.c to the new error handling Signed-off-by: schu <schu-github@schulog.org>
schu cbcaf0c0 2011-05-11T12:09:40 Move blob.c to the new error handling Signed-off-by: schu <schu-github@schulog.org>
Daniel Huckstep 0e0f4fde 2011-05-10T15:33:07 Add --with-redis flag to list of available build flags in README.
Vicent Marti 40774549 2011-05-11T00:42:43 libgit2 v0.12.0 "absolutely no reason" Hey, welcome to yet another minor libgit2 release. Sorry for the delay from the last one. As you'll see the changelog is quite extensive -- hopefully from now on we'll stick to more frequent minor releases. Together with the usual bugfixes, here's a list of the new key features: * Distfiles This version comes with proper distfiles as requested in #131. These are available in the Downloads section of the GitHub project. * Error handling A new error handling API has been implemented that allows the library to return detailed error messages together with the generic error codes. We hope this will be a great when wrapping and integrating the library New external method to get the last detailed error message: + git_lasterror(void) The old `git_strerror` still exists, but will be deprecated in the future as soon as every method in the library returns a valid error message. The task of writing error messages for every method is quite daunting. We appreciate pull requests with more error messages. Check the new error handling documentation in the following commit: https://github.com/libgit2/libgit2/commit/fa59f18d0ddbbb98d45e33934fb0efc3e2bf1557 * Redis backend We now have a Redis backend courtesy of Dmitry Kovega. Just like the SQLite backend, this allows the library to store Git objects in a Redis key-value store. The backend requires the `hiredis` library. Use `--with-redis` when building libgit2 to enable building the backend if `hiredis` is available. * Commits New methods to access tree and parent data as a raw OID value instead of forcing a repository lookup + git_commit_tree_oid(git_commit *commit) + git_commit_parent_oid(git_commit *commit, unsigned int n) * Index The `git_index_add` method has been split into 4 different calls which allow for appending and replacing in-memory entries and on-disk files to the index. + git_index_add(git_index *index, const char *path, int stage) + git_index_add2(git_index *index, const git_index_entry *source_entry) + git_index_append(git_index *index, const char *path, int stage) + git_index_append2(git_index *index, const git_index_entry *source_entry) Index entries can now also be efficiently removed from the index: + git_index_remove(git_index *index, int position) * References Methods to force the creation and renaming of references, even if those already exist on the repository. + git_reference_create_symbolic_f(git_reference **ref_out, git_repository *repo, const char *name, const char *target) + git_reference_create_oid_f(git_reference **ref_out, git_repository *repo, const char *name, const git_oid *id) + git_reference_rename_f(git_reference *ref, const char *new_name) * Repository New auxiliary methods with repository information + git_repository_is_empty(git_repository *repo) + git_repository_path(git_repository *repo) + git_repository_workdir(git_repository *repo) * Signatures New method to create a signature with the current date/time + git_signature_now(const char *name, const char *email) * Tags Several wrappers to automate tag creation. + git_tag_create_frombuffer(git_oid *oid, git_repository *repo, const char *buffer) + git_tag_create_f(git_oid *oid, git_repository *repo, const char *tag_name, const git_oid *target, git_otype target_type, const git_signature *tagger, const char *message); + git_tag_create_fo(git_oid *oid, git_repository *repo, const char *tag_name, const git_object *target, const git_signature *tagger, const char *message) New functionality to delete and list tags in a repository without having to resort to the `references` API. + git_tag_delete(git_repository *repo, const char *tag_name) + git_tag_list(git_strarray *tag_names, git_repository *repo) * Trees All instances of `git_tree_entry` are now returned and handled as constant, to remind the user that these opaque types are not supposed to be manually free'd. The `git_tree_entry_2object` method now takes a `git_repository` argument which defines in which repository the resolved object should be looked up. (It is expected to be the same repository that contains the parent `git_tree` for the entry). + git_tree_entry_2object(git_object **object_out, git_repository *repo, const git_tree_entry *entry) New opaque type `git_treebuilder` with functionality to create and write trees on memory + git_treebuilder_create(git_treebuilder **builder_p, const git_tree *source) + git_treebuilder_clear(git_treebuilder *bld) + git_treebuilder_free(git_treebuilder *bld) + git_treebuilder_get(git_treebuilder *bld, const char *filename) + git_treebuilder_insert(git_tree_entry **entry_out, git_treebuilder *bld, const char *filename, const git_oid *id, unsigned int attributes) + git_treebuilder_remove(git_treebuilder *bld, const char *filename) + git_treebuilder_filter(git_treebuilder *bld, int (*filter)(const git_tree_entry *, void *), void *payload) + git_treebuilder_write(git_oid *oid, git_repository *repo, git_treebuilder *bld) New method to write an index file as a tree to the ODB. + git_tree_create_fromindex(git_oid *oid, git_index *index) Thanks to the usual guility parties that make this this happen, to all the new contributors who are starting to submit pull requests, and to the bindings developers who have to keep up with our shit. Feedback and questions welcome on libgit2@librelist.org Signed-off-by: Vicent Marti <tanoku@gmail.com>
Vicent Marti 6810bf28 2011-05-11T00:40:07 Move all error-related defines to `git2/errors.h`
Vicent Marti f4a936b5 2011-05-11T00:35:05 Bring back `git_strerror` We cannot totally deprecate this until the new error handling mechanisms are all in place.
Vicent Martí 86b74ea0 2011-05-10T14:26:16 Merge pull request #180 from kellypleahy/bug/fix_issue_79 Fix issue #79 - git_lasterror() isn't appearing in git2.dll in windows.
Vicent Martí 97ce36e7 2011-05-10T14:23:01 Merge pull request #181 from carlosmn/errors Move signature.c and tag.c to the new error handling
Carlos Martín Nieto 44dc0d26 2011-05-10T18:56:44 Move tag.c to the new error handling Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 5de24ec7 2011-05-10T17:38:41 Move signature.c to the new error handling Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto c0335005 2011-05-06T12:42:47 Move config to a backend structure Configuration options can come from different sources. Currently, there is only support for reading them from a flat file, but it might make sense to read it from a database at some point. Move the parsing code into src/config_file.c and create an include file include/git2/config_backend.h to allow for other backends to be developed. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
kelly.leahy ab86f159 2011-05-09T23:39:32 Fix issue #79 - git_lasterror() isn't appearing in git2.dll in windows. The GIT_EXPORT macro is used to declare a function to be externally accessible to other libraries. This commit uses GIT_EXPORT to declare the git_lasterror() function as externally exported. I verified with depends.exe that the function is available to external callers (i.e. in the exports table of the PE file).
Vicent Marti 5711ca93 2011-05-09T21:58:26 Merge branch 'error-handling' into development
Vicent Marti fa59f18d 2011-05-09T20:54:04 Change error handling mechanism once again Ok, this is the real deal. Hopefully. Here's how it's going to work: - One main method, called `git__throw`, that sets the error code and error message when an error happens. This method must be called in every single place where an error code was being returned previously, setting an error message instead. Example, instead of: return GIT_EOBJCORRUPTED; Use: return git__throw(GIT_EOBJCORRUPTED, "The object is missing a finalizing line feed"); And instead of: [...] { error = GIT_EOBJCORRUPTED; goto cleanup; } Use: [...] { error = git__throw(GIT_EOBJCORRUPTED, "What an error!"); goto cleanup; } The **only** exception to this are the allocation methods, which return NULL on failure but already set the message manually. /* only place where an error code can be returned directly, because the error message has already been set by the wrapper */ if (foo == NULL) return GIT_ENOMEM; - One secondary method, called `git__rethrow`, which can be used to fine-grain an error message and build an error stack. Example, instead of: if ((error = foobar(baz)) < GIT_SUCCESS) return error; You can now do: if ((error = foobar(baz)) < GIT_SUCCESS) return git__rethrow(error, "Failed to do a major operation"); The return of the `git_lasterror` method will be a string in the shape of: "Failed to do a major operation. (Failed to do an internal operation)" E.g. "Failed to open the index. (Not enough permissions to access '/path/to/index')." NOTE: do not abuse this method. Try to write all `git__throw` messages in a descriptive manner, to avoid having to rethrow them to clarify their meaning. This method should only be used in the places where the original error message set by a subroutine is not specific enough. It is encouraged to continue using this style as much possible to enforce error propagation: if ((error = foobar(baz)) < GIT_SUCCESS) return error; /* `foobar` has set an error message, and we are just propagating it */ The error handling revamp will take place in two phases: - Phase 1: Replace all pieces of code that return direct error codes with calls to `git__throw`. This can be done semi-automatically using `ack` to locate all the error codes that must be replaced. - Phase 2: Add some `git__rethrow` calls in those cases where the original error messages are not specific enough. Phase 1 is the main goal. A minor libgit2 release will be shipped once Phase 1 is ready, and the work will start on gradually improving the error handling mechanism by refining specific error messages. OTHER NOTES: - When writing error messages, please refrain from using weasel words. They add verbosity to the message without giving any real information. (<3 Emeric) E.g. "The reference file appears to be missing a carriage return" Nope. "The reference file is missing a carriage return" Yes. - When calling `git__throw`, please try to use more generic error codes so we can eventually reduce the list of error codes to something more reasonable. Feel free to add new, more generic error codes if these are going to replace several of the old ones. E.g. return GIT_EREFCORRUPTED; Can be turned into: return git__throw(GIT_EOBJCORRUPTED, "The reference is corrupted");
Vicent Marti 5eb0fab8 2011-05-05T01:49:27 errors: Update external API with new `git_lasterror`
Vicent Marti 3f53c971 2011-05-05T01:20:27 errors: Set error messages on memory allocation
Vicent Marti 02f9e637 2011-05-05T01:12:17 errors: Add error handling function
Vicent Martí cd2cc2dc 2011-05-08T14:00:57 Merge pull request #170 from jasonrm/development Fix misspelling of git_index_append2 (was git_index_apppend2).
Vicent Martí c912229e 2011-05-08T14:00:06 Merge pull request #172 from carlosmn/valgrind ref test: update a forgotten repo -> repo2
Vicent Martí 5f94b77c 2011-05-08T13:59:47 Merge pull request #174 from carlosmn/backend-static odb backend_sort_cmp should be static
Vicent Martí f26f2b80 2011-05-08T13:56:09 Merge pull request #177 from kellypleahy/topic/fix-delete-mutex Fix bug in the way pthead_mutex_t was being destroyed in win32.
Scott Chacon cd7ad3c6 2011-05-08T12:39:21 Merge pull request #176 from kellypleahy/topic/force-line-endings Add git attributes settings for *.c and *.h to force line endings to LF.
kelly.leahy 16a5c304 2011-05-08T12:32:35 Fix bug in the way pthead_mutex_t was being destroyed in win32. Win32 critical section objects (CRITICAL_SECTION) are not kernel objects. Only kernel objects are destroyed by using CloseHandle. Critical sections are supposed to be deleted with the DeleteCriticalSection API (http://msdn.microsoft.com/en-us/library/ms682552(VS.85).aspx).
kelly.leahy 560cd27e 2011-05-08T12:30:16 Add git attributes settings for *.c and *.h to force line endings to LF.
Vicent Martí cfba1377 2011-05-06T09:09:50 Merge pull request #175 from carlosmn/analyzer Fix two warnings from Clang. Fixes issue #173
Carlos Martín Nieto d8e1d038 2011-05-06T12:47:21 Fix two warnings from Clang Both are about not reading the value stored in a variable. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 39e1032c 2011-05-06T12:43:37 odb backend_sort_cmp should be static Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto ca8d2dfc 2011-05-05T16:22:06 Merge remote-tracking branch 'upstream/development' into config
Carlos Martín Nieto 094aaaae 2011-05-05T15:16:15 config: store the section name separately The section and variable names use different rules, so store them as two different variables internally. This will simplify the configuration-writing code as well later on, but even with parsing, the code is simpler. Take this opportunity to add a variable to the list directly when parsing instead of passing through config_set.
Carlos Martín Nieto bbd68c67 2011-05-05T11:38:23 ref test: update a forgotten repo -> repo2 Commit 34e5d87e0512f2a3dfd6 left one of these unchanged we're trying to read from a free'd repository. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Jason R. McNeil 773bc20d 2011-05-03T22:22:42 Fix misspelling of git_index_append2 (was git_index_apppend2).
Vicent Martí cc3b82e3 2011-05-02T15:29:50 Merge pull request #151 from carlosmn/root-commit. Support root commits
Vicent Martí fde97669 2011-05-02T15:26:16 Merge pull request #146 from nordsturm/fix_subtrees. Fix tree-entry attribute convertion (fix corrupted trees)
Vicent Marti 1648fbd3 2011-05-02T01:12:53 Re-apply missing patches
Vicent Martí d4ad0771 2011-05-01T14:59:50 Merge pull request #145 from schu/fix-unused-warnings. Fix -Wunused-but-set-variable warnings
Vicent Martí 273c8bc0 2011-05-01T14:59:11 Merge pull request #147 from nordsturm/fix_pack_backend_leak. Fix memory leak in pack_backend__free
Vicent Martí 7fba6a79 2011-05-01T12:43:30 Merge pull request #168 from nulltoken/isolate_refs_tests. Isolate "writing" refs tests in a temporary folder
nulltoken 34e5d87e 2011-05-01T21:35:32 Change implementation of refs tests that alter the current repository to make them run against a temporary clone of the test repository
Vicent Marti c7b79af3 2011-05-01T21:31:58 pack-odb: Check `mtime` instead of folder size Do not check the folder's size to detect new packfiles at runtime. This doesn't work on Win32.
Carlos Martín Nieto 79b61557 2011-04-28T18:30:50 Add root commit test Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 68a146c1 2011-04-29T11:45:42 refs: don't loose info on resolve error Typical use is git_reference_resolve(&ref, ref). Currently, if there is an error, ref will point to NULL, causing the user to lose that reference. Always update resolved_ref instead of just on finding an OID ref, storing the last valid reference in it. This change helps simplify the code for allowing root commits. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 8381238e 2011-04-27T14:59:59 commit: support a root commits A root commit is a commit whose branch (usually what HEAD points to) doesn't exist (yet). This situation can happen when the commit is the first after 1) a repository is initialized or 2) a orphan checkout has been performed. Take this opportunity to remove the symbolic link check, as git_reference_resolve works on OID refs as well. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Sergey Nikishin ed6c462c 2011-04-27T17:30:45 Fix memory leak in pack_backend__free
Carlos Martín Nieto 0130d818 2011-04-27T11:20:38 Fix git__strntolower Obviously, the whole string should be lower-cased and not just the last char. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Sergey Nikishin 555ce568 2011-04-26T13:22:45 Fix tree-entry attribute convertion (fix corrupted trees) Magic constant replaced by direct to-string covertion because of: 1) with value length 6 (040000 - subtree) final tree will be corrupted; 2) for wrong values length <6 final tree will be corrupted too.
schu 402a47a7 2011-04-26T11:29:05 Fix -Wunused-but-set-variable warnings As of gcc 4.6 -Wall includes -Wunused-but-set-variable. Use GIT_UNUSED or remove actually unused variables to prevent those warnings.
Vicent Martí 7c37aa3a 2011-04-23T14:39:04 Merged pull request #115 from jpfender/index-flags. index.h: Add IDXENTRY flags needed for index operations
Vicent Martí 5a74d160 2011-04-23T14:37:56 Merged pull request #135 from carlosmn/valgrind. Fix memory leaks in the tests
Vicent Martí 7df49e9e 2011-04-23T14:36:01 Merged pull request #139 from jpfender/merge-head-file. refs: Allow MERGE_HEAD in normalize_name()
Vicent Marti f7a5058a 2011-04-24T00:31:43 index: Refactor add/replace methods Removed the optional `replace` argument, we now have 4 add methods: `git_index_add`: add or update from path `git_index_add2`: add or update from struct `git_index_append`: add without replacing from path `git_index_append2`: add without replacing from struct Yes, this breaks the bindings.
Vicent Martí f16c0a9d 2011-04-23T14:08:17 Merged pull request #140 from jpfender/insert-replace. index: Allow user to toggle whether to replace an index entry
Vicent Martí 5ba7c4cb 2011-04-23T14:01:01 Merged pull request #143 from nordsturm/fix_loop. Fix going into infinite loop in read_header_loose()
Vicent Marti 1d008781 2011-04-23T23:59:38 Fix conversion warning in MSVC
Sergey Nikishin a3ced637 2011-04-22T17:36:28 Fix going into infinite loop in read_header_loose() read_header_loose causes infinite loop on this file: $ cat ../libcppgit/bin/sample-repo/test_mailbox/.git/objects/8f/e274605cbc740a2a957f44b2722a8a73915a09 | base64 eAErKUpNVTAzYzA0MDAzMVHISUxKzSlmWLgkuyN5+rxr6juMPR2EmN8s7Vl9D6oiN7UkkcHJdLbl 7Z3N/oxfE0W8wrSbuFRkAwDFfBn1
Vicent Martí 6b290755 2011-04-21T15:22:37 Merged pull request #138 from trentm/development. fix solaris build --- Before this patch the build failure looked like: ... ../../deps/zlib/inffast.c: In function `inflate_fast': ../../deps/zlib/inffast.c:324: warning: visibility attribute not supported in this configuration; ignored [34/38] c: src/revwalk.c -> build/shared/src/revwalk.c.0.o ../../deps/zlib/inftrees.c: In function `inflate_table': ../../deps/zlib/inftrees.c:330: warning: visibility attribute not supported in this configuration; ignored [35/38] c: deps/zlib/zutil.c -> build/shared/deps/zlib/zutil.c.0.o [36/38] c: deps/zlib/trees.c -> build/shared/deps/zlib/trees.c.0.o ../../deps/zlib/zutil.c: In function `zcalloc': ../../deps/zlib/zutil.c:308: warning: visibility attribute not supported in this configuration; ignored ../../deps/zlib/zutil.c: In function `zcfree': ../../deps/zlib/zutil.c:316: warning: visibility attribute not supported in this configuration; ignored ../../deps/zlib/trees.c:1244: warning: visibility attribute not supported in this configuration; ignored ../../deps/zlib/trees.c:1244: warning: visibility attribute not supported in this configuration; ignored ../../deps/zlib/trees.c: In function `_tr_init': ../../deps/zlib/trees.c:410: warning: visibility attribute not supported in this configuration; ignored ../../deps/zlib/trees.c: In function `_tr_align': ../../deps/zlib/trees.c:919: warning: visibility attribute not supported in this configuration; ignored ../../deps/zlib/trees.c: In function `_tr_stored_block': ../../deps/zlib/trees.c:883: warning: visibility attribute not supported in this configuration; ignored ../../deps/zlib/trees.c: In function `_tr_flush_block': ../../deps/zlib/trees.c:1020: warning: visibility attribute not supported in this configuration; ignored ../../deps/zlib/trees.c: In function `_tr_tally': ../../deps/zlib/trees.c:1071: warning: visibility attribute not supported in this configuration; ignored [37/38] cshlib: build/shared/src/blob.c.0.o build/shared/src/cache.c.0.o build/shared/src/commit.c.0.o build/shared/src/delta-apply.c.0.o build/shared/src/errors.c.0.o build/shared/src/filebuf.c.0.o build/shared/src/fileops.c.0.o build/shared/src/hash.c.0.o build/shared/src/hashtable.c.0.o build/shared/src/index.c.0.o build/shared/src/object.c.0.o build/shared/src/odb.c.0.o build/shared/src/odb_loose.c.0.o build/shared/src/odb_pack.c.0.o build/shared/src/oid.c.0.o build/shared/src/pqueue.c.0.o build/shared/src/refs.c.0.o build/shared/src/repository.c.0.o build/shared/src/revwalk.c.0.o build/shared/src/signature.c.0.o build/shared/src/tag.c.0.o build/shared/src/thread-utils.c.0.o build/shared/src/tree.c.0.o build/shared/src/util.c.0.o build/shared/src/vector.c.0.o build/shared/src/unix/map.c.0.o build/shared/src/backends/hiredis.c.0.o build/shared/src/backends/sqlite.c.0.o build/shared/deps/zlib/adler32.c.0.o build/shared/deps/zlib/deflate.c.0.o build/shared/deps/zlib/inffast.c.0.o build/shared/deps/zlib/inflate.c.0.o build/shared/deps/zlib/inftrees.c.0.o build/shared/deps/zlib/trees.c.0.o build/shared/deps/zlib/zutil.c.0.o build/shared/src/block-sha1/sha1.c.0.o -> build/shared/libgit2.so ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol zcfree: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol zcalloc: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol _length_code: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol _dist_code: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol _length_code: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol _dist_code: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol _dist_code: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol _length_code: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol _dist_code: a GOT relative relocation must reference a local symbol ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol _dist_code: a GOT relative relocation must reference a local symbol collect2: ld returned 1 exit status Waf: Leaving directory `/home/node/src/libgit2/build/shared' Build failed -> task failed (exit status 1): {task 138650764: cshlib blob.c.0.o,cache.c.0.o,commit.c.0.o,delta-apply.c.0.o,errors.c.0.o,filebuf.c.0.o,fileops.c.0.o,hash.c.0.o,hashtable.c.0.o,index.c.0.o,object.c.0.o,odb.c.0.o,odb_loose.c.0.o,odb_pack.c.0.o,oid.c.0.o,pqueue.c.0.o,refs.c.0.o,repository.c.0.o,revwalk.c.0.o,signature.c.0.o,tag.c.0.o,thread-utils.c.0.o,tree.c.0.o,util.c.0.o,vector.c.0.o,map.c.0.o,hiredis.c.0.o,sqlite.c.0.o,adler32.c.0.o,deflate.c.0.o,inffast.c.0.o,inflate.c.0.o,inftrees.c.0.o,trees.c.0.o,zutil.c.0.o,sha1.c.0.o -> libgit2.so} ['/home/node/local/bin/gcc', '', 'src/blob.c.0.o', 'src/cache.c.0.o', 'src/commit.c.0.o', 'src/delta-apply.c.0.o', 'src/errors.c.0.o', 'src/filebuf.c.0.o', 'src/fileops.c.0.o', 'src/hash.c.0.o', 'src/hashtable.c.0.o', 'src/index.c.0.o', 'src/object.c.0.o', 'src/odb.c.0.o', 'src/odb_loose.c.0.o', 'src/odb_pack.c.0.o', 'src/oid.c.0.o', 'src/pqueue.c.0.o', 'src/refs.c.0.o', 'src/repository.c.0.o', 'src/revwalk.c.0.o', 'src/signature.c.0.o', 'src/tag.c.0.o', 'src/thread-utils.c.0.o', 'src/tree.c.0.o', 'src/util.c.0.o', 'src/vector.c.0.o', 'src/unix/map.c.0.o', 'src/backends/hiredis.c.0.o', 'src/backends/sqlite.c.0.o', 'deps/zlib/adler32.c.0.o', 'deps/zlib/deflate.c.0.o', 'deps/zlib/inffast.c.0.o', 'deps/zlib/inflate.c.0.o', 'deps/zlib/inftrees.c.0.o', 'deps/zlib/trees.c.0.o', 'deps/zlib/zutil.c.0.o', 'src/block-sha1/sha1.c.0.o', '-o', '', '/home/node/src/libgit2/build/shared/libgit2.so', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-shared', '-Wl,-h,libgit2.so.0'] ... If helpful, here is the equivalent error with varnish: http://www.varnish-cache.org/trac/ticket/852 and the autoconf/configure handling for the equivalent in python: http://hg.python.org/cpython/file/96e0e79d33de/Modules/zlib/configure#l513 So a better fix would probably be to reproduce that configure logic (see similar in the Varnish patch) ... but I'm not sure if shelling out to the C compiler (however waf spells that) is wanted in wscript here. It would be great to have a libgit2 release with the quicker fix for Solaris. My actual issue is with building node-gitteh. Thanks, Trent
Vicent Martí 027eab91 2011-04-21T15:20:46 Merged pull request #142 from potyl/development. LIBGIT2_VER_MINOR now matches LIBGIT2_VERSION (0.11.0) --- LIBGIT2_VER_MINOR was left at 10 instead of 11.
Emmanuel Rodriguez 5adb48e4 2011-04-21T21:21:44 LIBGIT2_VER_MINOR now matches LIBGIT2_VERSION (0.11.0) LIBGIT2_VER_MINOR was left at 10 instead of 11.
Jakob Pfender 729b6f49 2011-04-21T10:40:54 index: Allow user to toggle whether to replace an index entry When in the middle of a merge, the index needs to contain several files with the same name. git_index_insert() used to prevent this by not adding a new entry if an entry with the same name already existed.
Jakob Pfender df30eac1 2011-04-21T10:38:37 refs: Allow MERGE_HEAD in normalize_name() Do not return with EINVALIDREFNAME when trying to normalize MERGE_HEAD's name.
Trent Mick 34a29926 2011-04-20T22:25:30 fix solaris build Before this patch the build failure looked like: ... ../../deps/zlib/inftrees.c:330: warning: visibility attribute not supported in this configuration; ignored ... ld: fatal: relocation error: R_386_GOTOFF: file deps/zlib/deflate.c.0.o: symbol zcfree: a GOT relative relocation must reference a local symbol ...
Carlos Martín Nieto a68cf94b 2011-04-19T16:40:52 Fix const char ** warning Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto e69ac243 2011-04-19T16:38:52 config: export git_config_[sg]et_long Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto a99264bf 2011-04-19T16:34:22 config: allow uppercase number suffixes Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Vicent Marti fee4c425 2011-04-16T01:58:43 Force position independent code in Linux
Vicent Marti 2571cc3c 2011-04-15T20:32:31 Close file descriptor when writing a blob
Vicent Marti 90d743cd 2011-04-15T15:12:37 Refresh the list of packfiles on each ODB query Fixes the issue where object lookups were failing right after a pull on an open repository.
Carlos Martín Nieto 1bfa053e 2011-04-13T21:57:35 Close an object in packed_find_peel Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 7c1c15a7 2011-04-13T21:55:43 tests: free the test suite name Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 2fe3692c 2011-04-13T17:44:08 tests: don't leak objects If we don't create any leaks in the tests, we can use them to search for leaks in the implementation. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Vicent Marti def3fef1 2011-04-12T15:52:34 Add `git_tag_list` Lists all the tag references in a repository using a custom callback. Includes unit tests courtesy of Emeric Fermas <3
Carlos Martín Nieto 53345e1f 2011-04-11T18:01:01 config: add tests for number suffix Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 52ca4f8a 2011-04-11T17:51:05 Use internal strtol Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 631752aa 2011-04-11T17:49:47 Fix number suffix detection Allow a number not to have a suffix. This broke when adding the suffixes. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Carlos Martín Nieto 55c197cd 2011-04-11T17:41:21 Merge upstream/development
Jakob Pfender 1eb0f68e 2011-04-11T12:38:50 merge branch development
Vicent Marti fdd0cc9e 2011-04-10T15:25:41 Fix path normalization tests They were backtracking too deep into the filesystem on Linux, where the tests were running directly on `tmp/`.
Vicent Marti a6359408 2011-04-10T12:23:55 Use Z_BEST_SPEED for filebuf deflating This is what Git uses by default for all deflating.
Vicent Marti fff036ec 2011-04-09T17:45:38 Import 'with' from __future__ in the build script