- 22 Jan, 2019 7 commits
-
-
Edward Thomson committed
-
Update GITERR and giterr usages in the static code analysis tools to use the new names.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
Move to the `git_error` name in the internal API for error-related functions.
Edward Thomson committed -
Replace the `GITERR` values with a `const int` to deprecate error values.
Edward Thomson committed -
Move to the `git_error` name in error-related functions, deprecating the `giterr` functions. This means, for example, that `giterr_last` is now `git_error_last`. The old names are retained for compatibility. This only updates the public API; internal API and function usage remains unchanged.
Edward Thomson committed
-
- 20 Jan, 2019 14 commits
-
-
odb: Fix odb foreach to also close on positive error code
Edward Thomson committed -
In include/git2/odb.h it states that callback can also return positive value which should break looping. Implementations of git_odb_foreach() and pack_backend__foreach() did not respect that.
Marijan Šuflaj committed -
repository: free memory in symlink detection function
Edward Thomson committed -
Edward Thomson committed
-
ci: update poxyproxy, run in quiet mode
Edward Thomson committed -
Update the proxy so that we can enable a quiet mode.
Edward Thomson committed -
Add/multiply with overflow tweaks
Edward Thomson committed -
Improve deprecation of old enums
Edward Thomson committed -
Correct the documentation on the fallback add/multiply with overflow functions.
Edward Thomson committed -
Windows provides <intsafe.h> which provides "performant" add and multiply with overflow operations. Use them when possible.
Edward Thomson committed -
Edward Thomson committed
-
Use the smallest unsigned type that is equivalent to `size_t` to simplify the conditionals. Error if we're on a system that we believe offers builtins but we cannot determine which one to use.
Edward Thomson committed -
The C standard does not specify whether an enum is a signed or unsigned type. Obviously, any enum that includes negative values _must_ be signed, but if all values are positive then the compiler is free to choose signed or unsigned. Thus, by changing the type signatures to `git_object_t` and declaring the old `GIT_OBJ_` values as a signed or unsigned int, we risk a mismatch between what the compiler has chosen for a `git_object_t`'s type and our type declaration. Thus, we declare the deprecated values as the enum instead of guessing.
Edward Thomson committed -
Recent GCC enables `-Wunused-const-variables`, which makes output quite noisy. Disable unused warnings for our deprecated variables.
Edward Thomson committed
-
- 19 Jan, 2019 7 commits
-
-
Move `git_ref_t` to `git_reference_t`
Edward Thomson committed -
More `git_obj` to `git_object` updates
Edward Thomson committed -
ci: only run invasive tests in nightly
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
- 17 Jan, 2019 12 commits
-
-
Always build a cdecl library
Edward Thomson committed -
Edward Thomson committed
-
Since we now always build the library with cdecl calling conventions, our callbacks should be decorated as such so that users will not be able to provide callbacks defined with other calling conventions. The `GIT_CALLBACK` macro will inject the `__cdecl` attribute as appropriate.
Edward Thomson committed -
To explicitly break end-users who were specifying STDCALL, explicitly fail the cmake process to ensure that they know that they need to change their bindings. Otherwise, we would quietly ignore their option and the resulting cdecl library would produced undefined behavior.
Edward Thomson committed -
The recommendation from engineers within Microsoft is that libraries should have a calling convention specified in the public API, and that calling convention should be cdecl unless there are strong reasons to use a different calling convention. We previously offered end-users the choice between cdecl and stdcall calling conventions. We did this for presumed wider compatibility: most Windows applications will use cdecl, but C# and PInvoke default to stdcall for WINAPI compatibility. (On Windows, the standard library functions are are stdcall so PInvoke also defaults to stdcall.) However, C# and PInvoke can easily call cdecl APIs by specifying an annotation. Thus, we will explicitly declare ourselves cdecl and remove the option to build as stdcall.
Edward Thomson committed -
The GIT_EXTERN macro needs to provide order-specific attributes; update users of the GIT_DEPRECATED macro to allow for that.
Edward Thomson committed -
changelog: document changes since 0.27
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-