1. 08 Jan, 2013 1 commit
  2. 28 Nov, 2012 1 commit
    • Consolidate text buffer functions · 7bf87ab6
      There are many scattered functions that look into the contents of
      buffers to do various text manipulations (such as escaping or
      unescaping data, calculating text stats, guessing if content is
      binary, etc).  This groups all those functions together into a
      new file and converts the code to use that.
      
      This has two enhancements to existing functionality.  The old
      text stats function is significantly rewritten and the BOM
      detection code was extended (although largely we can't deal with
      anything other than a UTF8 BOM).
      Russell Belfer committed
  3. 11 Sep, 2012 1 commit
    • Add git_repository_hashfile to hash with filters · 47bfa0be
      The existing `git_odb_hashfile` does not apply text filtering
      rules because it doesn't have a repository context to evaluate
      the correct rules to apply.  This adds a new hashfile function
      that will apply repository-specific filters (based on config,
      attributes, and filename) before calculating the hash.
      Russell Belfer committed
  4. 06 Sep, 2012 1 commit
  5. 31 Jul, 2012 1 commit
  6. 18 Jul, 2012 1 commit
  7. 10 Jul, 2012 1 commit
  8. 17 May, 2012 3 commits
  9. 03 May, 2012 2 commits
    • Support reading attributes from index · f917481e
      Depending on the operation, we need to consider gitattributes
      in both the work dir and the index.  This adds a parameter to
      all of the gitattributes related functions that allows user
      control of attribute reading behavior (i.e. prefer workdir,
      prefer index, only use index).
      
      This fix also covers allowing us to check attributes (and
      hence do diff and status) on bare repositories.
      
      This was a somewhat larger change that I hoped because it had
      to change the cache key used for gitattributes files.
      Russell Belfer committed
  10. 30 Apr, 2012 1 commit
  11. 06 Mar, 2012 1 commit
    • error-handling: Repository · cb8a7961
      This also includes droping `git_buf_lasterror` because it makes no sense
      in the new system. Note that in most of the places were it has been
      dropped, the code needs cleanup. I.e. GIT_ENOMEM is going away, so
      instead it should return a generic `-1` and obviously not throw
      anything.
      Vicent Martí committed
  12. 02 Mar, 2012 3 commits
    • Add filter tests and fix some bugs · ce49c7a8
      This adds some initial unit tests for file filtering and fixes
      some simple bugs in filter application.
      Russell Belfer committed
    • attr: Change the attribute check macros · c63793ee
      The point of having `GIT_ATTR_TRUE` and `GIT_ATTR_FALSE` macros is to be
      able to change the way that true and false values are stored inside of
      the returned gitattributes value pointer.
      
      However, if these macros are implemented as a simple rename for the
      `git_attr__true` pointer, they will always be used with the `==`
      operator, and hence we cannot really change the implementation to any
      other way that doesn't imply using special pointer values and comparing
      them!
      
      We need to do the same thing that core Git does, which is using a
      function macro. With `GIT_ATTR_TRUE(attr)`, we can change
      internally the way that these values are stored to anything we want.
      
      This commit does that, and rewrites a large chunk of the attributes test
      suite to remove duplicated code for expected attributes, and to
      properly test the function macro behavior instead of comparing
      pointers.
      Vicent Martí committed
  13. 01 Mar, 2012 1 commit
  14. 29 Feb, 2012 1 commit