vclog 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/COPYING +674 -0
- data/HISTORY +20 -0
- data/MANIFEST +32 -0
- data/README +38 -0
- data/RELEASE +11 -0
- data/bin/vclog +131 -0
- data/lib/vclog/changelog.rb +484 -0
- data/lib/vclog/core_ext.rb +106 -0
- data/lib/vclog/vcs/darcs.rb +83 -0
- data/lib/vclog/vcs/git.rb +54 -0
- data/lib/vclog/vcs/hg.rb +0 -0
- data/lib/vclog/vcs/svn.rb +58 -0
- data/lib/vclog/vcs.rb +82 -0
- data/meta/authors +1 -0
- data/meta/created +1 -0
- data/meta/description +1 -0
- data/meta/homepage +1 -0
- data/meta/license +1 -0
- data/meta/mailinglist +1 -0
- data/meta/package +1 -0
- data/meta/project +1 -0
- data/meta/repository +2 -0
- data/meta/requires +1 -0
- data/meta/sitemap +1 -0
- data/meta/summary +1 -0
- data/meta/title +1 -0
- data/meta/version +1 -0
- metadata +98 -0
| @@ -0,0 +1,106 @@ | |
| 1 | 
            +
            require 'facets/string/indent'
         | 
| 2 | 
            +
            require 'facets/string/tabto'
         | 
| 3 | 
            +
            require 'facets/string/margin'
         | 
| 4 | 
            +
            require 'facets/enumerable/group_by'
         | 
| 5 | 
            +
             | 
| 6 | 
            +
            =begin
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            module VCLog
         | 
| 9 | 
            +
             | 
| 10 | 
            +
              # Extensions for String class.
         | 
| 11 | 
            +
              # Taken from Facets.
         | 
| 12 | 
            +
              module String
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                # Provides a margin controlled string.
         | 
| 15 | 
            +
                #
         | 
| 16 | 
            +
                #   x = %Q{
         | 
| 17 | 
            +
                #         | This
         | 
| 18 | 
            +
                #         |   is
         | 
| 19 | 
            +
                #         |     margin controlled!
         | 
| 20 | 
            +
                #         }.margin
         | 
| 21 | 
            +
                #
         | 
| 22 | 
            +
                #
         | 
| 23 | 
            +
                #   NOTE: This may still need a bit of tweaking.
         | 
| 24 | 
            +
                #
         | 
| 25 | 
            +
                #  CREDIT: Trans
         | 
| 26 | 
            +
             | 
| 27 | 
            +
                def margin(n=0)
         | 
| 28 | 
            +
                  #d = /\A.*\n\s*(.)/.match( self )[1]
         | 
| 29 | 
            +
                  #d = /\A\s*(.)/.match( self)[1] unless d
         | 
| 30 | 
            +
                  d = ((/\A.*\n\s*(.)/.match(self)) ||
         | 
| 31 | 
            +
                      (/\A\s*(.)/.match(self)))[1]
         | 
| 32 | 
            +
                  return '' unless d
         | 
| 33 | 
            +
                  if n == 0
         | 
| 34 | 
            +
                    gsub(/\n\s*\Z/,'').gsub(/^\s*[#{d}]/, '')
         | 
| 35 | 
            +
                  else
         | 
| 36 | 
            +
                    gsub(/\n\s*\Z/,'').gsub(/^\s*[#{d}]/, ' ' * n)
         | 
| 37 | 
            +
                  end
         | 
| 38 | 
            +
                end
         | 
| 39 | 
            +
             | 
| 40 | 
            +
                # Preserves relative tabbing.
         | 
| 41 | 
            +
                # The first non-empty line ends up with n spaces before nonspace.
         | 
| 42 | 
            +
                #
         | 
| 43 | 
            +
                #  CREDIT: Gavin Sinclair
         | 
| 44 | 
            +
             | 
| 45 | 
            +
                def tabto(n)
         | 
| 46 | 
            +
                  if self =~ /^( *)\S/
         | 
| 47 | 
            +
                    indent(n - $1.length)
         | 
| 48 | 
            +
                  else
         | 
| 49 | 
            +
                    self
         | 
| 50 | 
            +
                  end
         | 
| 51 | 
            +
                end
         | 
| 52 | 
            +
             | 
| 53 | 
            +
                # Indent left or right by n spaces.
         | 
| 54 | 
            +
                # (This used to be called #tab and aliased as #indent.)
         | 
| 55 | 
            +
                #
         | 
| 56 | 
            +
                #  CREDIT: Gavin Sinclair
         | 
| 57 | 
            +
                #  CREDIT: Trans
         | 
| 58 | 
            +
             | 
| 59 | 
            +
                def indent(n)
         | 
| 60 | 
            +
                  if n >= 0
         | 
| 61 | 
            +
                    gsub(/^/, ' ' * n)
         | 
| 62 | 
            +
                  else
         | 
| 63 | 
            +
                    gsub(/^ {0,#{-n}}/, "")
         | 
| 64 | 
            +
                  end
         | 
| 65 | 
            +
                end
         | 
| 66 | 
            +
             | 
| 67 | 
            +
              end
         | 
| 68 | 
            +
             | 
| 69 | 
            +
            end
         | 
| 70 | 
            +
             | 
| 71 | 
            +
            class String #:nodoc:
         | 
| 72 | 
            +
              include VCLog::String
         | 
| 73 | 
            +
            end
         | 
| 74 | 
            +
             | 
| 75 | 
            +
             | 
| 76 | 
            +
            # Core extension
         | 
| 77 | 
            +
             | 
| 78 | 
            +
            module Enumerable
         | 
| 79 | 
            +
             | 
| 80 | 
            +
              unless defined?(group_by) or defined?(::ActiveSupport)  # 1.9 or ActiveSupport
         | 
| 81 | 
            +
             | 
| 82 | 
            +
                # #group_by is used to group items in a collection by something they
         | 
| 83 | 
            +
                # have in common.  The common factor is the key in the resulting hash, the
         | 
| 84 | 
            +
                # array of like elements is the value.
         | 
| 85 | 
            +
                #
         | 
| 86 | 
            +
                #   (1..5).group_by { |n| n % 3 }
         | 
| 87 | 
            +
                #        #=> { 0 => [3], 1 => [1, 4], 2 => [2,5] }
         | 
| 88 | 
            +
                #
         | 
| 89 | 
            +
                #   ["I had", 1, "dollar and", 50, "cents"].group_by { |e| e.class }
         | 
| 90 | 
            +
                #        #=> { String => ["I had","dollar and","cents"], Fixnum => [1,50] }
         | 
| 91 | 
            +
                #
         | 
| 92 | 
            +
                # CREDIT: Erik Veenstra
         | 
| 93 | 
            +
             | 
| 94 | 
            +
                def group_by #:yield:
         | 
| 95 | 
            +
                  #h = k = e = nil
         | 
| 96 | 
            +
                  r = Hash.new
         | 
| 97 | 
            +
                  each{ |e| (r[yield(e)] ||= []) << e }
         | 
| 98 | 
            +
                  r
         | 
| 99 | 
            +
                end
         | 
| 100 | 
            +
             | 
| 101 | 
            +
              end
         | 
| 102 | 
            +
             | 
| 103 | 
            +
            end
         | 
| 104 | 
            +
             | 
| 105 | 
            +
            =end
         | 
| 106 | 
            +
             | 
| @@ -0,0 +1,83 @@ | |
| 1 | 
            +
            module VCLog
         | 
| 2 | 
            +
             | 
| 3 | 
            +
              class VCS
         | 
| 4 | 
            +
             | 
| 5 | 
            +
                # = DARCS
         | 
| 6 | 
            +
                #
         | 
| 7 | 
            +
                # Provide Darcs SCM revision tools.
         | 
| 8 | 
            +
                #
         | 
| 9 | 
            +
                # TODO: This needs to be fixed.
         | 
| 10 | 
            +
                #
         | 
| 11 | 
            +
                class DARCS
         | 
| 12 | 
            +
             | 
| 13 | 
            +
                  ### Is a darcs repository?
         | 
| 14 | 
            +
                  def repository?
         | 
| 15 | 
            +
                    File.directory?('_darcs')
         | 
| 16 | 
            +
                  end
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                  ### This is also a module function.
         | 
| 19 | 
            +
                  module_function :repository?
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                  ### Cached Changelog.
         | 
| 22 | 
            +
                  def changelog
         | 
| 23 | 
            +
                    @changelog ||= generate_changelog
         | 
| 24 | 
            +
                  end
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                  ### Generate Changelog object.
         | 
| 27 | 
            +
                  def generate_changelog
         | 
| 28 | 
            +
                    raise "not a darcs repository" unless repository?
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                    log = Changelog.new
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                    txt = `darcs changes` #--repo=#{@repository}`
         | 
| 33 | 
            +
             | 
| 34 | 
            +
                    txt.each_line do |line|
         | 
| 35 | 
            +
                      case line
         | 
| 36 | 
            +
                      when /^\s*$/
         | 
| 37 | 
            +
                      when /^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)/
         | 
| 38 | 
            +
                      when /^\s*tagged/
         | 
| 39 | 
            +
                        log << $'
         | 
| 40 | 
            +
                        log << "\n"
         | 
| 41 | 
            +
                      else
         | 
| 42 | 
            +
                        log << line
         | 
| 43 | 
            +
                        log << "\n"
         | 
| 44 | 
            +
                      end
         | 
| 45 | 
            +
                    end
         | 
| 46 | 
            +
             | 
| 47 | 
            +
                    return log
         | 
| 48 | 
            +
                  end
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                  ### Retrieve the "revision number" from the darcs tree.
         | 
| 51 | 
            +
                  def calculate_version
         | 
| 52 | 
            +
                    raise "not a darcs repository" unless repository?
         | 
| 53 | 
            +
             | 
| 54 | 
            +
                    status = info.status
         | 
| 55 | 
            +
             | 
| 56 | 
            +
                    changes = `darcs changes`
         | 
| 57 | 
            +
                    count   = 0
         | 
| 58 | 
            +
                    tag     = "0.0"
         | 
| 59 | 
            +
             | 
| 60 | 
            +
                    changes.each("\n\n") do |change|
         | 
| 61 | 
            +
                      head, title, desc = change.split("\n", 3)
         | 
| 62 | 
            +
                      if title =~ /^  \*/
         | 
| 63 | 
            +
                        # Normal change.
         | 
| 64 | 
            +
                        count += 1
         | 
| 65 | 
            +
                      elsif title =~ /tagged (.*)/
         | 
| 66 | 
            +
                        # Tag.  We look for these.
         | 
| 67 | 
            +
                        tag = $1
         | 
| 68 | 
            +
                        break
         | 
| 69 | 
            +
                      else
         | 
| 70 | 
            +
                        warn "Unparsable change: #{change}"
         | 
| 71 | 
            +
                      end
         | 
| 72 | 
            +
                    end
         | 
| 73 | 
            +
                    ver = "#{tag}.#{count.to_s}"
         | 
| 74 | 
            +
             | 
| 75 | 
            +
                    return ver
         | 
| 76 | 
            +
                    #format_version_stamp(ver, status) # ,released)
         | 
| 77 | 
            +
                  end
         | 
| 78 | 
            +
             | 
| 79 | 
            +
                end
         | 
| 80 | 
            +
             | 
| 81 | 
            +
              end
         | 
| 82 | 
            +
            end
         | 
| 83 | 
            +
             | 
| @@ -0,0 +1,54 @@ | |
| 1 | 
            +
            module VCLog
         | 
| 2 | 
            +
             | 
| 3 | 
            +
              class VCS
         | 
| 4 | 
            +
             | 
| 5 | 
            +
                ### = GIT 
         | 
| 6 | 
            +
                ###
         | 
| 7 | 
            +
                class GIT
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                  def initialize
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                  end
         | 
| 12 | 
            +
             | 
| 13 | 
            +
                  #
         | 
| 14 | 
            +
                  def changelog
         | 
| 15 | 
            +
                    @changelog ||= generate_changelog
         | 
| 16 | 
            +
                  end
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                  # 
         | 
| 19 | 
            +
                  def generate_changelog
         | 
| 20 | 
            +
                    log = Changelog.new
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                    changelog ||= `git-log`.strip
         | 
| 23 | 
            +
             | 
| 24 | 
            +
                    changes = changelog.split(/^commit/m)
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                    changes.shift # throw the first (empty) entry away
         | 
| 27 | 
            +
             | 
| 28 | 
            +
                    changes.each do |text|
         | 
| 29 | 
            +
                      date, who, rev, msg = nil, nil, nil, []
         | 
| 30 | 
            +
                      text.each_line do |line|
         | 
| 31 | 
            +
                        unless rev
         | 
| 32 | 
            +
                          rev = line.strip
         | 
| 33 | 
            +
                          next
         | 
| 34 | 
            +
                        end
         | 
| 35 | 
            +
                        if md = /^Author:(.*?)$/.match(line)
         | 
| 36 | 
            +
                          who = md[1]
         | 
| 37 | 
            +
                        elsif md = /^Date:(.*?)$/m.match(line)
         | 
| 38 | 
            +
                          date = Time.parse(md[1])
         | 
| 39 | 
            +
                        else
         | 
| 40 | 
            +
                          msg << line.strip
         | 
| 41 | 
            +
                        end
         | 
| 42 | 
            +
                      end
         | 
| 43 | 
            +
                      log.change(date, who, rev, msg.join("\n"))
         | 
| 44 | 
            +
                    end
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                    @changelog = log
         | 
| 47 | 
            +
                  end
         | 
| 48 | 
            +
             | 
| 49 | 
            +
                end
         | 
| 50 | 
            +
             | 
| 51 | 
            +
              end
         | 
| 52 | 
            +
             | 
| 53 | 
            +
            end
         | 
| 54 | 
            +
             | 
    
        data/lib/vclog/vcs/hg.rb
    ADDED
    
    | 
            File without changes
         | 
| @@ -0,0 +1,58 @@ | |
| 1 | 
            +
            module VCLog
         | 
| 2 | 
            +
             | 
| 3 | 
            +
              class VCS
         | 
| 4 | 
            +
             | 
| 5 | 
            +
                # = SVN
         | 
| 6 | 
            +
                #
         | 
| 7 | 
            +
                # Raw SVN format:
         | 
| 8 | 
            +
                #
         | 
| 9 | 
            +
                #   ------------------------------------------------------------------------
         | 
| 10 | 
            +
                #   r34 | transami | 2006-08-02 22:10:11 -0400 (Wed, 02 Aug 2006) | 2 lines
         | 
| 11 | 
            +
                #
         | 
| 12 | 
            +
                #   change foo to work better
         | 
| 13 | 
            +
                #
         | 
| 14 | 
            +
                class SVN
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                  def initialize
         | 
| 17 | 
            +
                  end
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                  ###
         | 
| 20 | 
            +
                  def changelog
         | 
| 21 | 
            +
                    @changelog ||= generate_changelog
         | 
| 22 | 
            +
                  end
         | 
| 23 | 
            +
             | 
| 24 | 
            +
                  ###
         | 
| 25 | 
            +
                  def generate_changelog
         | 
| 26 | 
            +
                    log = Changelog.new
         | 
| 27 | 
            +
             | 
| 28 | 
            +
                    txt = `svn log`.strip
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                    com = txt.split(/^[-]+$/)
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                    com.each do |msg|
         | 
| 33 | 
            +
                      msg = msg.strip
         | 
| 34 | 
            +
             | 
| 35 | 
            +
                      next if msg.empty?
         | 
| 36 | 
            +
             | 
| 37 | 
            +
                      idx = msg.index("\n")
         | 
| 38 | 
            +
                      head = msg.slice!(0...idx)
         | 
| 39 | 
            +
                      rev, who, date, cnt = *head.split('|')
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                      rev  = rev.strip
         | 
| 42 | 
            +
                      who  = who.strip
         | 
| 43 | 
            +
                      msg  = msg.strip
         | 
| 44 | 
            +
             | 
| 45 | 
            +
                      date = Time.parse(date)
         | 
| 46 | 
            +
             | 
| 47 | 
            +
                      log.change(date, who, rev, msg)
         | 
| 48 | 
            +
                    end
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                    @changelog = log
         | 
| 51 | 
            +
                  end
         | 
| 52 | 
            +
             | 
| 53 | 
            +
                end
         | 
| 54 | 
            +
             | 
| 55 | 
            +
              end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
            end
         | 
| 58 | 
            +
             | 
    
        data/lib/vclog/vcs.rb
    ADDED
    
    | @@ -0,0 +1,82 @@ | |
| 1 | 
            +
            module VCLog
         | 
| 2 | 
            +
             | 
| 3 | 
            +
              require 'time'
         | 
| 4 | 
            +
              require 'vclog/changelog'
         | 
| 5 | 
            +
              require 'vclog/vcs/svn'
         | 
| 6 | 
            +
              require 'vclog/vcs/git'
         | 
| 7 | 
            +
              #require 'vclog/vcs/hg'
         | 
| 8 | 
            +
              #require 'vclog/vcs/darcs'
         | 
| 9 | 
            +
             | 
| 10 | 
            +
              # TODO: Might we have a NO-VCS changelog based on
         | 
| 11 | 
            +
              #       LOG: entries in source files?
         | 
| 12 | 
            +
             | 
| 13 | 
            +
              # = Version Control System
         | 
| 14 | 
            +
              class VCS
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                attr :type
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                def initialize(root=nil)
         | 
| 19 | 
            +
                  @root = root || Dir.pwd
         | 
| 20 | 
            +
                  @type = read_type
         | 
| 21 | 
            +
                  raise ArgumentError, "Not a recognized version control system." unless @type
         | 
| 22 | 
            +
                end
         | 
| 23 | 
            +
             | 
| 24 | 
            +
                def read_type
         | 
| 25 | 
            +
                  dir = nil
         | 
| 26 | 
            +
                  Dir.chdir(@root) do
         | 
| 27 | 
            +
                    dir = Dir.glob("{.svn,.git,.hg,_darcs}").first
         | 
| 28 | 
            +
                  end
         | 
| 29 | 
            +
                  dir[1..-1] if dir
         | 
| 30 | 
            +
                end
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                def delegate
         | 
| 33 | 
            +
                  @delegate ||= VCS.const_get(type.upcase).new
         | 
| 34 | 
            +
                end
         | 
| 35 | 
            +
             | 
| 36 | 
            +
                #
         | 
| 37 | 
            +
                def method_missing(s, *a, &b)
         | 
| 38 | 
            +
                  delegate.send(s, *a, &b)
         | 
| 39 | 
            +
                end
         | 
| 40 | 
            +
             | 
| 41 | 
            +
            =begin
         | 
| 42 | 
            +
                # Write the ChangeLog to file.
         | 
| 43 | 
            +
             | 
| 44 | 
            +
                def write_changelog( log, file )
         | 
| 45 | 
            +
                  if File.directory?(file)
         | 
| 46 | 
            +
                    file = File.join( file, DEFAULT_CHANGELOG_FILE )
         | 
| 47 | 
            +
                  end
         | 
| 48 | 
            +
                  File.open(file,'w+'){ |f| f << log }
         | 
| 49 | 
            +
                  puts "Change log written to #{file}."
         | 
| 50 | 
            +
                end
         | 
| 51 | 
            +
             | 
| 52 | 
            +
                # Write version stamp to file.
         | 
| 53 | 
            +
             | 
| 54 | 
            +
                def write_version( stamp, file )
         | 
| 55 | 
            +
                  if File.directory?(file)
         | 
| 56 | 
            +
                    file = File.join( file, DEFAULT_VERSION_FILE )
         | 
| 57 | 
            +
                  end
         | 
| 58 | 
            +
                  File.open(file,'w'){ |f| f << stamp }
         | 
| 59 | 
            +
                  puts "#{file} saved."
         | 
| 60 | 
            +
                end
         | 
| 61 | 
            +
             | 
| 62 | 
            +
                # Format the version stamp.
         | 
| 63 | 
            +
             | 
| 64 | 
            +
                def format_version_stamp( version, status=nil, date=nil )
         | 
| 65 | 
            +
                  if date.respond_to?(:strftime)
         | 
| 66 | 
            +
                    date = date.strftime("%Y-%m-%d")
         | 
| 67 | 
            +
                  else
         | 
| 68 | 
            +
                    date = Time.now.strftime("%Y-%m-%d")
         | 
| 69 | 
            +
                  end
         | 
| 70 | 
            +
                  status = nil if status.to_s.strip.empty?
         | 
| 71 | 
            +
                  stamp = []
         | 
| 72 | 
            +
                  stamp << version
         | 
| 73 | 
            +
                  stamp << status if status
         | 
| 74 | 
            +
                  stamp << "(#{date})"
         | 
| 75 | 
            +
                  stamp.join(' ')
         | 
| 76 | 
            +
                end
         | 
| 77 | 
            +
            =end
         | 
| 78 | 
            +
             | 
| 79 | 
            +
              end
         | 
| 80 | 
            +
             | 
| 81 | 
            +
            end
         | 
| 82 | 
            +
             | 
    
        data/meta/authors
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            Trans <transfire@gmail.com>
         | 
    
        data/meta/created
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            2006-05-09
         | 
    
        data/meta/description
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            VCLog is a cross-VCS/SCM ChangeLog generator.
         | 
    
        data/meta/homepage
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            http://proutils.rubyforge.org/vclog
         | 
    
        data/meta/license
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            GPL
         | 
    
        data/meta/mailinglist
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            tigerops-community@rubyforge.org
         | 
    
        data/meta/package
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            vclog
         | 
    
        data/meta/project
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            proutils
         | 
    
        data/meta/repository
    ADDED
    
    
    
        data/meta/requires
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            facets > 2.4
         | 
    
        data/meta/sitemap
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            doc/rdoc: vclog
         | 
    
        data/meta/summary
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            Cross-VCS/SCM ChangeLog Generator
         | 
    
        data/meta/title
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            VCLog
         | 
    
        data/meta/version
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            1.0.0
         | 
    
        metadata
    ADDED
    
    | @@ -0,0 +1,98 @@ | |
| 1 | 
            +
            --- !ruby/object:Gem::Specification 
         | 
| 2 | 
            +
            name: vclog
         | 
| 3 | 
            +
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            +
              version: 1.0.0
         | 
| 5 | 
            +
            platform: ruby
         | 
| 6 | 
            +
            authors: 
         | 
| 7 | 
            +
            - Trans <transfire@gmail.com>
         | 
| 8 | 
            +
            autorequire: 
         | 
| 9 | 
            +
            bindir: bin
         | 
| 10 | 
            +
            cert_chain: []
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            date: 2009-08-05 00:00:00 -04:00
         | 
| 13 | 
            +
            default_executable: 
         | 
| 14 | 
            +
            dependencies: 
         | 
| 15 | 
            +
            - !ruby/object:Gem::Dependency 
         | 
| 16 | 
            +
              name: facets
         | 
| 17 | 
            +
              type: :runtime
         | 
| 18 | 
            +
              version_requirement: 
         | 
| 19 | 
            +
              version_requirements: !ruby/object:Gem::Requirement 
         | 
| 20 | 
            +
                requirements: 
         | 
| 21 | 
            +
                - - ">"
         | 
| 22 | 
            +
                  - !ruby/object:Gem::Version 
         | 
| 23 | 
            +
                    version: "0"
         | 
| 24 | 
            +
                version: 
         | 
| 25 | 
            +
            description: VCLog is a cross-VCS/SCM ChangeLog generator.
         | 
| 26 | 
            +
            email: transfire@gmail.com
         | 
| 27 | 
            +
            executables: 
         | 
| 28 | 
            +
            - vclog
         | 
| 29 | 
            +
            extensions: []
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            extra_rdoc_files: 
         | 
| 32 | 
            +
            - README
         | 
| 33 | 
            +
            - MANIFEST
         | 
| 34 | 
            +
            - RELEASE
         | 
| 35 | 
            +
            - HISTORY
         | 
| 36 | 
            +
            - COPYING
         | 
| 37 | 
            +
            files: 
         | 
| 38 | 
            +
            - RELEASE
         | 
| 39 | 
            +
            - README
         | 
| 40 | 
            +
            - HISTORY
         | 
| 41 | 
            +
            - meta/created
         | 
| 42 | 
            +
            - meta/repository
         | 
| 43 | 
            +
            - meta/homepage
         | 
| 44 | 
            +
            - meta/summary
         | 
| 45 | 
            +
            - meta/package
         | 
| 46 | 
            +
            - meta/title
         | 
| 47 | 
            +
            - meta/version
         | 
| 48 | 
            +
            - meta/license
         | 
| 49 | 
            +
            - meta/sitemap
         | 
| 50 | 
            +
            - meta/mailinglist
         | 
| 51 | 
            +
            - meta/authors
         | 
| 52 | 
            +
            - meta/requires
         | 
| 53 | 
            +
            - meta/project
         | 
| 54 | 
            +
            - meta/description
         | 
| 55 | 
            +
            - lib/vclog/changelog.rb
         | 
| 56 | 
            +
            - lib/vclog/core_ext.rb
         | 
| 57 | 
            +
            - lib/vclog/vcs/darcs.rb
         | 
| 58 | 
            +
            - lib/vclog/vcs/git.rb
         | 
| 59 | 
            +
            - lib/vclog/vcs/svn.rb
         | 
| 60 | 
            +
            - lib/vclog/vcs/hg.rb
         | 
| 61 | 
            +
            - lib/vclog/vcs.rb
         | 
| 62 | 
            +
            - bin/vclog
         | 
| 63 | 
            +
            - COPYING
         | 
| 64 | 
            +
            - MANIFEST
         | 
| 65 | 
            +
            has_rdoc: true
         | 
| 66 | 
            +
            homepage: http://proutils.rubyforge.org/vclog
         | 
| 67 | 
            +
            licenses: []
         | 
| 68 | 
            +
             | 
| 69 | 
            +
            post_install_message: 
         | 
| 70 | 
            +
            rdoc_options: 
         | 
| 71 | 
            +
            - --inline-source
         | 
| 72 | 
            +
            - --title
         | 
| 73 | 
            +
            - vclog api
         | 
| 74 | 
            +
            - --main
         | 
| 75 | 
            +
            - README
         | 
| 76 | 
            +
            require_paths: 
         | 
| 77 | 
            +
            - lib
         | 
| 78 | 
            +
            required_ruby_version: !ruby/object:Gem::Requirement 
         | 
| 79 | 
            +
              requirements: 
         | 
| 80 | 
            +
              - - ">="
         | 
| 81 | 
            +
                - !ruby/object:Gem::Version 
         | 
| 82 | 
            +
                  version: "0"
         | 
| 83 | 
            +
              version: 
         | 
| 84 | 
            +
            required_rubygems_version: !ruby/object:Gem::Requirement 
         | 
| 85 | 
            +
              requirements: 
         | 
| 86 | 
            +
              - - ">="
         | 
| 87 | 
            +
                - !ruby/object:Gem::Version 
         | 
| 88 | 
            +
                  version: "0"
         | 
| 89 | 
            +
              version: 
         | 
| 90 | 
            +
            requirements: []
         | 
| 91 | 
            +
             | 
| 92 | 
            +
            rubyforge_project: proutils
         | 
| 93 | 
            +
            rubygems_version: 1.3.4
         | 
| 94 | 
            +
            signing_key: 
         | 
| 95 | 
            +
            specification_version: 3
         | 
| 96 | 
            +
            summary: VCLog is a cross-VCS/SCM ChangeLog generator.
         | 
| 97 | 
            +
            test_files: []
         | 
| 98 | 
            +
             |