gitlabhq/grit

View on GitHub
History.txt

Summary

Maintainability
Test Coverage
== 2.8.2
  * Remove the pessimistic `< 3` condition on mime-types

== 2.8.1
  * Resolve dependencies in better way and fix bundle install

== 2.8.0
  * Update mime-types dependency

== 2.7.3
  * Add guards against path traversal and leading '|'

== 2.7.2
  * Make sure grit restores old timeout value even if exception occures

== 2.7.1
  * Suppress 'unkown header' warnings
  * Add process.out to CommandFailed error

== 2.7.0
  * Remove the `chdir:` option for thread-safety
  * Automatically set the `--work-tree=` Git option

== 2.6.9
  * Fix commit diff issue. It shows empty diff for commit when files have changed mode

== 2.6.8
  * Fix problem with generating archives

== 2.6.7
  * Rescue compatibility errors

== 2.6.6
  * Improve encoding

== 2.6.5
  * Advanced search for files
  * More secure shell code

== 2.6.2
  * Strip newlines from tree entry names

== 2.6.1
  * Security bugfix for Repository#grep

== 2.6.0
  * More stable commit parsinga
  * Handle filenames with spaces
  * Grep search
  * Remove Dir.chdir for thread safety.


== 2.5.0 / 2012-04-22
  * Minor Enhancements
    * 100% Git-compliant actor creation.
    * Handle newlines in author/committer.
    * Grit::Git check_applies/patch related methods take command hash.
    * Tags api now resty.
    * Remove all the grit jruby hacks in favor of updated posix-spawn.
    * Add Grit::Commit#patch_id.
    * Support large packfiles with index v2.
  * Bug Fixes
    * Fix Loose Objects with non-ASCII content in Ruby 1.9
    * Fix bugs in Grit::Repo #objects, #commit_objects, and #diff_objects
      due to passing multiple arguments in a single argv element.
    * ruby rev_list passes --verify to native rev_parse in fallback.
    * Git ls-tree raises on non-zero exit.

== 2.4.1 / 2011-01-13
  * Minor Enhancements
    * Grit::Process is used to implement Grit::Git#check_applies,
      Grit::Git#get_patch, and Grit::Git#apply_patch.

== 2.4.0 / 2011-01-06
  * Major Enhancements
    * Add support for parsing git notes.
    * Add `git cat-file --batch` support with Grit::Repo#batch.
    * Grit::Process is a custom written external command invocation heavily
      optimized for running git commands quickly and efficiently.
    * Grit::Git#native takes an :input option for piping data into git
      commands
    * Grit::Git#native takes an :env option for setting the git child
      process's
      environment without futsing with the parent's environment.
    * Grit::Git#native takes an :chdir option for setting the current working
      directory (PWD) of the git child process.
    * Grit::Git#native takes an :raise => true option that causes an exception
      to be raised when the git child process exits non-zero.
  * Minor Enhancements
    * Grit::Index#commit supports custom committer/author names and dates.
    * Performance enhancements with internal command output buffering.
    * Reduce fork/execs needed to execute a smoke command from between 3-4
      to 1.
    * Git child processes are now properly parented under the grit Ruby
      process instead of being dropped under init.
  * Bug Fixes
    * Zero-Padding issue in Grit::Index was fixed.
    * Fix issue where Repo#diff skips the first diff (#42)
    * Fix Repo.init_bare for repo names not ending in .git (#40)
    * Fix a variety of process hangs when git stderr output or data written
      to stdin exceeded PIPE_BUF bytes.

== 2.3.2 / 2011-01-06
  * Erroneously released. SemVer violation and misc release screwups.

== 2.3.1
  * Skipped for unknown reasons.

== 2.3.0 / 2010-09-29
  * Minor Enhancements
    * Add Grit::Repo.init.
  * Bug Fixes
    * Fix Ruby 1.9 compatibility (#24).

== 2.2.1 / 2010-08-23
  * Bug Fixes
    * Fix minor regression due to the changed default values in
      Grit::Index#commit.

== 2.2.0 / 2010-08-19
  * Minor Enhancements
    * Add Grit::Index#delete to allow deletions of files from the index.

== 2.1.0 / 2010-08-04
  * Major Enhancements
    * Add support for parsing annotated tag objects.
    * Add Grit::Repo#recent_tag_name for getting the latest tag name that is
      reachable in a commit.
    * Grit::Diff tracks renames properly if given the :M option.
    * Grit::Commit#diffs and Grit::Commit.diffs both take a git options hash
      that is passed to `git diff`.
  * Minor Enhancements
    * Allow diff to only take one sha
    * Add merge commit diff support
    * Pass along the options to Real Git on a rev-parse miss
    * Raise NoSuchPath with no tree in ls_tree_path
    * Make pure-ruby `ls-tree -r` work with commits
    * Implement select_existing_objects
    * Switch to RakeGem for build management
  * Bug Fixes
    * Add no_quote option for fixing tag listings.
    * Raise custom exceptions on invalid tree objects.
    * Fix Repo#diff (was throwing an error).

== 2.0.0 / 2009-10-27
  * Major Enhancements
    * All filesystem calls have been moved into Grit::Git to allow proxying
  * Non-code changes
    * Removed all trailing whitespace in code files
  * Bug Fixes
    * Repo.archive_tar_gz now passes -n option to gzip to be idempotent
    * Fix RubyGit's diff to detect additions and deletions
      [github.com/defunkt]

== 1.1.1 / 2009-03-31
  * Changes
    * Don't include test directory in gem package (it's too big)

== 1.1.0 / 2009-03-29
  * Backwards breaking changes
    * Diff#a_commit -> Diff#a_blob, Diff#b_commit -> Diff#b_blob
  * Major Enhancments
    * Ruby 1.9 compatibility [github.com/chapados, github.com/js]
  * Minor Enhancements
    * Convert readme to markdown
    * Added a shortcut for commit_stats as Commit#stats [github.com/js]
    * Add a #basename method to Submodule, Blob and Tree for retrieving the
      name [github.com/js]
    * Make Grit::Submodule grasp the concept of non-unix lineendings
      [github.com/js]
    * Added Repo#commit_deltas_from [github.com/js]
    * do some mild shell escaping when running commands [github.com/js]
    * Added two shortcut methods to Tree, for picking trees/blobs only
      [github.com/Voker57]
    * Added <=> method to Blob, needed for sorting tree [github.com/Voker57]
    * Make the number of bytes to be read from git's stdout configurable
      [github.com/josb]
    * Repo.archive_to_file accepts extra parameters making plain zipping
      possible [github.com/darwin]
    * Handle commit stats that summarize commits with binary changes
      [github.com/therealadam]
    * Add a DiffStat class for easy access to diff stats
      [github.com/therealadam]
    * Don't split git logs that contain blank lines into two CommitStats
      [github.com/therealadam]
    * Add DiffStat#net for total change count [github.com/therealadam]

== 1.0.3 / 2009-02-13
  * Minor Enhancements
    * Added Grit::Commit#to_patch for plaintext formatted patches.
    * Fixed Grit::Tag to work with annotated tags.

== 1.0.2 / 2009-02-10
  * Minor Enhancements
    * Implement Grit.version to use VERSION.yml file

== 1.0.1 / 2009-02-10
  * Bug Fixes
    * Add diff-lcs as a dependency

== 1.0.0 / 2009-01-27
  * Tons of awesome in here. Also, we suck at updating the history.
  * Let's do better at that from now on.

== 0.8.3 / 2008-07-07
  * Capture stderr and log if debug is true (rsanheim)

== 0.8.2 / 2008-06-27
  * Allow user provided logger (rsanheim)

== 0.8.0 / 2008-04-24
  * Lots of fixes and additions

== 0.7.0 / 2008-01-07
  * First public release!