1. 26 Feb, 2022 1 commit
  2. 09 Feb, 2022 1 commit
  3. 18 Jan, 2022 8 commits
  4. 05 Jan, 2022 1 commit
  5. 09 Nov, 2021 2 commits
  6. 17 Oct, 2021 1 commit
    • str: introduce `git_str` for internal, `git_buf` is external · f0e693b1
      libgit2 has two distinct requirements that were previously solved by
      `git_buf`.  We require:
      
      1. A general purpose string class that provides a number of utility APIs
         for manipulating data (eg, concatenating, truncating, etc).
      2. A structure that we can use to return strings to callers that they
         can take ownership of.
      
      By using a single class (`git_buf`) for both of these purposes, we have
      confused the API to the point that refactorings are difficult and
      reasoning about correctness is also difficult.
      
      Move the utility class `git_buf` to be called `git_str`: this represents
      its general purpose, as an internal string buffer class.  The name also
      is an homage to Junio Hamano ("gitstr").
      
      The public API remains `git_buf`, and has a much smaller footprint.  It
      is generally only used as an "out" param with strict requirements that
      follow the documentation.  (Exceptions exist for some legacy APIs to
      avoid breaking callers unnecessarily.)
      
      Utility functions exist to convert a user-specified `git_buf` to a
      `git_str` so that we can call internal functions, then converting it
      back again.
      Edward Thomson committed
  7. 25 Sep, 2021 1 commit
  8. 09 Sep, 2021 1 commit
  9. 25 Aug, 2021 1 commit
  10. 09 Aug, 2021 1 commit
    • Get Win32 builds to build · b060080e
      Previously, the location of `GIT_WARN_UNUSED_RESULT` was causing it to
      be included _after_ a bunch of other headers (namely `src/vector.h`),
      which broke the build.
      
      This change does two things:
      
      * Moves the `GIT_WARN_UNUSED_RESULT` above most of the `$include`s in
        `src/common.h`.
      * Stops including `vector.h` from `src/win32/path_w32.c` since the
        header itself does not use it.
      lhchavez committed
  11. 08 Aug, 2021 1 commit
  12. 07 Jul, 2021 2 commits
  13. 18 May, 2021 1 commit
  14. 05 May, 2021 1 commit
  15. 15 Feb, 2021 1 commit
  16. 30 Dec, 2020 1 commit
  17. 08 Dec, 2020 1 commit
  18. 27 Nov, 2020 1 commit
  19. 21 Nov, 2020 3 commits
  20. 12 Oct, 2020 1 commit
    • Make the Windows leak detection more robust · 4a0dceeb
      This change:
      
      * Increases MY_ROW_LIMIT to 2M, since it has been failing in #5595's
        tests since it's _super_ close to the limit.
      * Calls `git_repository_free()` on a `git_repository` that was being
        leaked only in Windows.
      * Marks the global `git_repository` on `tests/repo/init.c` as `NULL`
        after being freed to make any accidental access more noisy.
      * Uses `cl_assert_equal_i()` in `test_trace_windows_stacktrace__leaks`
        to make the test failures more actionable.
      * Renames the globals in `tests/repo/init.c` so that they don't start
        with an underscore.
      lhchavez committed
  21. 11 Oct, 2020 4 commits
  22. 01 Jul, 2020 3 commits
  23. 09 Jun, 2020 1 commit
  24. 10 Mar, 2020 1 commit
    • win32: don't canonicalize symlink targets · 43d7a42b
      Don't canonicalize symlink targets; our win32 path canonicalization
      routines expect an absolute path.  In particular, using the path
      canonicalization routines for symlink targets (introduced in commit
      7d55bee6, "win32: fix relative symlinks pointing into dirs",
      2020-01-10).
      
      Now, use the utf8 -> utf16 relative path handling functions, so that
      paths like "../foo" will be translated to "..\foo".
      Edward Thomson committed