Получите журналы изменений для всех драгоценных камней, включенных в проект Rails - PullRequest
9 голосов
/ 27 февраля 2012

У меня есть проект Rails, который использует bundler. Многие из драгоценных камней, которые я включил, - довольно много версий позади последней доступной. Я знаю, что мог бы просто скрестить пальцы и запустить bundle update, чтобы получить все до последней версии с учетом зависимостей, но это может потенциально сломать части моего приложения, которые полагаются на устаревшие методы gem, и, возможно, не стоит усилие.

Есть ли способ получить журналы изменений для всех связанных гемов между версией, установленной в Gemfile.lock, и последней на rubygems? Кажется, что-то, что было бы довольно распространенной потребностью, но у меня нет ' не нашел никакого решения ...

Ответы [ 4 ]

6 голосов
/ 07 марта 2012

Это действительно хорошая идея. Я не слышал ни о каком инструменте, который делает это в настоящее время, поэтому я создал скрипт, который делает это.

Это очень хакерский / альфа, но он все еще довольно эффективен (больше, чем я думал, когда это началось). Так что используйте на свой страх и риск. Хотелось бы надеяться, что хотя подобная функция (но значительно улучшенная) может в конечном итоге превратиться в пакет.

Для использования сначала внесите все изменения. Затем запустите скрипт в базовом каталоге (где находится файл Gemfile.lock.

Сначала он запросит все используемые драгоценные камни, чтобы найти их журналы изменений. Затем он запустит bundle update. Затем он запросит все драгоценные камни, найдет новые и внесет изменения в журналы изменений. Наконец, он запустит git checkout Gemfile.lock и bundle install, чтобы отменить любые изменения, вызванные командой bundle update. Результаты будут сохранены в файле bundler_gem_diff.txt.

#!/usr/bin/env ruby


def changelog_for_gem(gem)
    changelogs = `bundle exec gem contents #{gem}`.lines.grep(/history|changelog/i)
    if changelogs.empty?
        puts "No changelog found for gem #{gem}"

        return nil
    end
    changelogs.first.chomp
end



class GemDetails
    attr_accessor :name, :version, :changelog_file


    def initialize(name, version)
        @name, @version = name, version
    end
    def self.from_str(str)
        match = str.match(/(\S+) \((.*)\)/)
        result = self.new(match[1], Gem::Version.new(match[2]))
        result.changelog_file = changelog_for_gem(result.name)
        puts "process gem #{result.name}"
        result
    end
end



def bundler_gems
    gem_list = `bundle list`.lines.drop(1).map do |line|
        line.gsub(/\s*\* /, '')
    end

    gem_list.map { |gem_str| GemDetails.from_str(gem_str) }
end

def bundler_update
    system("bundle update")
end

def bundler_install
    system("bundle install")
end


def updated_gems(initial_gems, new_gems)
    result = []
    initial_gems.each do |gem|
        updated_gem = new_gems.find { |new_gem| gem.name == new_gem.name && gem.version < new_gem.version }
        result << [gem, updated_gem] if updated_gem
    end
    result
end


def changelog_diff
    initial_gems = bundler_gems
    puts "Updating bundle"
    system('bundle update')
    new_gems = bundler_gems
    File.open('bundler_gem_diff.txt', 'w') do |f|
        updated_gems(initial_gems, new_gems).each do |gem_pair|
            f.puts "###### #{gem_pair[0].name} #{gem_pair[0].version} -> #{gem_pair[1].version} ######"
            if gem_pair[0].changelog_file && gem_pair[1].changelog_file
                puts "diff #{gem_pair[0].changelog_file} #{gem_pair[1].changelog_file}"
                f.puts `diff #{gem_pair[0].changelog_file} #{gem_pair[1].changelog_file}`
            else
                f.puts "Missing changelogs"
            end
        end
    end
    system('git checkout Gemfile.lock')
    system('bundle install')
    nil
end


changelog_diff

Вот вывод, что я запустил его на моем блоге octopress (довольно долго, в основном потому, что kramdown использует git log в качестве журнала изменений):

###### RedCloth 4.2.8 -> 4.2.9 ######
0a1,5
> == 4.2.9 / November 25, 2011
> 
> * Fix RbConfig / Config warning in Ruby 1.9.3. [Steve Purcell, Robert Gleeson, and unclaimedbaggage]
> * Use RSTRING_NOT_MODIFIED header for Rubinius [Dirkjan Bussink]
> 
###### activesupport 3.2.0 -> 3.2.2 ######
0a1,12
> ## Rails 3.2.1 (January 26, 2012) ##
> 
> *   Documentation fixes and improvements.
> 
> *   Update time zone offset information. *Ravil Bayramgalin*
> 
> *   The deprecated `ActiveSupport::Base64.decode64` calls `::Base64.decode64`
>     now. *Jonathan Viney*
> 
> *   Fixes uninitialized constant `ActiveSupport::TaggedLogging::ERROR`. *kennyj*
> 
> 
###### chunky_png 1.2.1 -> 1.2.5 ######
Missing changelogs
###### compass 0.11.5 -> 0.11.7 ######
Missing changelogs
###### directory_watcher 1.4.0 -> 1.4.1 ######
0a1,5
> == 1.4.1 / 2011-08-29
> 
> Minor Enhancements
> - support for latest 'cool.io'
> 
###### fssm 0.2.7 -> 0.2.8.1 ######
Missing changelogs
###### haml 3.1.2 -> 3.1.4 ######
6c6,119
< ## 3.1.0 (Unreleased)
---
> ## 3.1.11
> 
> * Allow control directives (such as `@if`) to be nested beneath properties.
> * Allow property names to begin with a hyphen followed by interpolation (e.g. `-#{...}`).
> * Fix a parsing error with interpolation in comma-separated lists.
> * Make `--cache-store` with with `--update`.
> * Properly report `ArgumentError`s that occur within user-defined functions.
> * Don't crash on JRuby if the underlying Java doesn't support every Unicode encoding.
> * Add new `updated_stylesheet` callback, which is run after each stylesheet has
>   been successfully compiled. Thanks to [Christian Peters](https://github.com/ChristianPeters).
> * Allow absolute paths to be used in an importer with a different root.
> * Don't destructively modify the options when running `Sass::Plugin.force_update`.
> 
> ### Deprecations -- Must Read!
> 
> * The `updating_stylesheet` is deprecated and will be removed in a
>   future release. Use the new `updated_stylesheet` callback instead.
> 
> ## 3.1.10
> 
> * Fix another aspect of the 3.1.8 regression relating to `+`.
> 
> ## 3.1.9
> 
> * Fix a regression in 3.1.8 that broke the `+` combinator in selectors.
> 
> * Deprecate the loud-comment flag when used with silent comments (e.g. `//!`).
>   Using it with multi-line comments (e.g. `/*!`) still works.
> 
> ## 3.1.8
> 
> * Deprecate parent selectors followed immediately by identifiers (e.g. `&foo`).
>   This should never have worked, since it violates the rule
>   of `&` only being usable where an element selector would.
> 
> * Add a `--force` option to the `sass` executable which makes `--update`
>   always compile all stylesheets, even if the CSS is newer.
> 
> * Disallow semicolons at the end of `@import` directives in the indented syntax.
> 
> * Don't error out when being used as a library without requiring `fileutil`.
> 
> * Don't crash when Compass-style sprite imports are used with `StalenessChecker`
>   (thanks to [Matthias Bauer](https://github.com/moeffju)).
> 
> * The numeric precision of numbers in Sass can now be set using the
>   `--precision` option to the command line. Additionally, the default
>   number of digits of precision in Sass output can now be
>   changed by setting `Sass::Script::Number.precision` to an integer
>   (defaults to 3). Since this value can now be changed, the `PRECISION`
>   constant in `Sass::Script::Number` has been deprecated. In the unlikely
>   event that you were using it in your code, you should now use
>    `Sass::Script::Number.precision_factor` instead.
> 
> * Don't crash when running `sass-convert` with selectors with two commas in a row.
> 
> * Explicitly require Ruby >= 1.8.7 (thanks [Eric Mason](https://github.com/ericmason)).
> 
> * Properly validate the nesting of elements in imported stylesheets.
> 
> * Properly compile files in parent directories with `--watch` and `--update`.
> 
> * Properly null out options in mixin definitions before caching them. This fixes
>   a caching bug that has been plaguing some Rails 3.1 users.
> 
> ## 3.1.7
> 
> * Don't crash when doing certain operations with `@function`s.
> 
> ## 3.1.6
> 
> * The option `:trace_selectors` can now be used to emit a full trace
>   before each selector. This can be helpful for in-browser debugging of
>   stylesheet imports and mixin includes. This option supersedes the
>   `:line_comments` option and is superseded by the `:debug_info`
>   option.
> 
> * Fix a bug where long `@if`/`@else` chains would cause exponential slowdown
>   under some circumstances.
> 
> ## 3.1.5
> 
> * Updated the vendored FSSM version, which will avoid segfaults on OS
>   X Lion when using `--watch`.
> 
> ## 3.1.4
> 
> * Sass no longer unnecessarily caches the sass options hash.
>   This allows objects that cannot be marshaled to be placed into the
>   options hash.
> 
> ## 3.1.3
> 
> * Sass now logs message thru a logger object which can be changed to
>   provide integration with other frameworks' logging infrastructure.
> 
> 
> ## 3.1.2
> 
> * Fix some issues that were breaking Sass when running within Rubinius.
> * Fix some issues that were affecting Rails 3.1 integration.
> * New function `zip` allows several lists to be combined into one
>   list of lists. For example:
>   `zip(1px 1px 3px, solid dashed solid, red green blue)` becomes
>   `1px solid red, 1px dashed green, 3px solid blue`
> * New function `index` returns the list index of a value
>   within a list. For example: `index(1px solid red, solid)`
>   returns `2`. When the value is not found `false` is returned.
> 
> ## 3.1.1
> 
> * Make sure `Sass::Plugin` is loaded at the correct time in Rails 3.
> 
> ## 3.1.0
138c251
< However, you can now do more with them using the new {file:Sass/Script/Functions.html#list-functions list functions}:
---
> However, you can now do more with them using the new [list functions](Sass/Script/Functions.html#list-functions):
###### jekyll 0.11.0 -> 0.11.2 ######
0a1,9
> == 0.11.2 / 2011-12-27
>   * Bug Fixes
>     * Fix gemspec
> 
> == 0.11.1 / 2011-12-27
>   * Bug Fixes
>     * Fix extra blank line in highlight blocks (#409)
>     * Update dependencies
> 
###### kramdown 0.13.3 -> 0.13.5 ######
0a1,429
> commit ce785c7cc29372cb7c5c47647535b1943348aff6
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 15:34:37 2012 +0100
> 
>     Updated release notes, version number and benchmark graphs
> 
> doc/img/graph-ruby-1.8.5-231.png
> doc/img/graph-ruby-1.8.6-399.png
> doc/img/graph-ruby-1.8.7-249.png
> doc/img/graph-ruby-1.8.7-302.png
> doc/img/graph-ruby-1.9.2p136-136.png
> doc/img/graph-ruby-1.9.3p0-0.png
> doc/img/graph-ruby-1.9.3p125-125.png
> doc/news/release_0_13_5.page
> doc/sidebar.template
> doc/tests.page
> lib/kramdown/version.rb
> 
> commit 90f0583232e814334b2bb8c7fa3228b2f4e30f81
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 10:14:58 2012 +0100
> 
>     Bug fix: Empty id attributes are handled better now
>     
>     * The HTML converter does not output empty id attributes anymore.
>     * The kramdown converter now always converts empty id attributes
>       to IAL form.
> 
> lib/kramdown/converter/kramdown.rb
> lib/kramdown/utils/html.rb
> test/testcases/block/04_header/with_auto_ids.html
> test/testcases/block/04_header/with_auto_ids.text
> 
> commit d956b98fdf449af145bc8b52539abdb99a062cda
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 09:53:03 2012 +0100
> 
>     Small typo fix in quickref
> 
> doc/quickref.page
> 
> commit 4df3c5aaad763cc9d8fd4b129a5cdd245ed5a7f7
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 09:38:29 2012 +0100
> 
>     Updated homepage contents
> 
> doc/documentation.page
> doc/index.page
> doc/installation.page
> doc/news.page
> doc/syntax.page
> doc/tests.page
> 
> commit c0bcd765e131b671661af70274ce632111ad89bb
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 09:37:15 2012 +0100
> 
>     Updated website design
> 
> doc/bg.png
> doc/default.scss.css
> doc/default.template
> doc/design.scss.css
> doc/sidebar.template
> 
> commit d530421d0a3794010cd0c022decb097158e90732
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 09:35:51 2012 +0100
> 
>     Disabling line numbers in code listings on homepage
> 
> Rakefile
> 
> commit a47a5c49e35f9ccb220dca7b5b8ac7d585026ef6
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 09:25:01 2012 +0100
> 
>     Updated copyright notice updating code
> 
> Rakefile
> 
> commit 21ce307a6766d131bf3a61de1142d88b0bd0a8be
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 09:24:22 2012 +0100
> 
>     Updated copyright notices
> 
> bin/kramdown
> lib/kramdown.rb
> lib/kramdown/compatibility.rb
> lib/kramdown/converter.rb
> lib/kramdown/converter/base.rb
> lib/kramdown/converter/html.rb
> lib/kramdown/converter/kramdown.rb
> lib/kramdown/converter/latex.rb
> lib/kramdown/converter/toc.rb
> lib/kramdown/document.rb
> lib/kramdown/element.rb
> lib/kramdown/error.rb
> lib/kramdown/options.rb
> lib/kramdown/parser.rb
> lib/kramdown/parser/base.rb
> lib/kramdown/parser/html.rb
> lib/kramdown/parser/kramdown.rb
> lib/kramdown/parser/kramdown/abbreviation.rb
> lib/kramdown/parser/kramdown/autolink.rb
> lib/kramdown/parser/kramdown/blank_line.rb
> lib/kramdown/parser/kramdown/block_boundary.rb
> lib/kramdown/parser/kramdown/blockquote.rb
> lib/kramdown/parser/kramdown/codeblock.rb
> lib/kramdown/parser/kramdown/codespan.rb
> lib/kramdown/parser/kramdown/emphasis.rb
> lib/kramdown/parser/kramdown/eob.rb
> lib/kramdown/parser/kramdown/escaped_chars.rb
> lib/kramdown/parser/kramdown/extensions.rb
> lib/kramdown/parser/kramdown/footnote.rb
> lib/kramdown/parser/kramdown/header.rb
> lib/kramdown/parser/kramdown/horizontal_rule.rb
> lib/kramdown/parser/kramdown/html.rb
> lib/kramdown/parser/kramdown/html_entity.rb
> lib/kramdown/parser/kramdown/line_break.rb
> lib/kramdown/parser/kramdown/link.rb
> lib/kramdown/parser/kramdown/list.rb
> lib/kramdown/parser/kramdown/math.rb
> lib/kramdown/parser/kramdown/paragraph.rb
> lib/kramdown/parser/kramdown/smart_quotes.rb
> lib/kramdown/parser/kramdown/table.rb
> lib/kramdown/parser/kramdown/typographic_symbol.rb
> lib/kramdown/parser/markdown.rb
> lib/kramdown/utils.rb
> lib/kramdown/utils/entities.rb
> lib/kramdown/utils/html.rb
> lib/kramdown/utils/ordered_hash.rb
> lib/kramdown/version.rb
> test/run_tests.rb
> test/test_files.rb
> 
> commit 512b00a6d050f506c43b824861f7bbf459862a19
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Feb 19 09:12:38 2012 +0100
> 
>     Fixed bug RF#29521: HTML math output not always XHTML compatible
>     
>     The characters < and & are not allowed in a script tag in XHTML.
>     So since the HTML converter uses script tags for math elements,
>     whenever these characters appear in a value the value is wrapped
>     in a CDATA section to make the output XHTML compatible.
> 
> lib/kramdown/converter/html.rb
> lib/kramdown/parser/html.rb
> test/testcases/block/15_math/normal.html
> 
> commit 8f111947dbcea064a997662d65cd53e6e39c8c40
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sat Feb 18 20:06:42 2012 +0100
> 
>     Fixed bug RF#29520: inline math statements interpreted as math blocks
>     
>     If a paragraph started and ended with an inline math statement, it was
>     parsed as math block. This is fixed now.
>     
>     Also, it is now better explained in the kramdown syntax documentation
>     how special cases are handled.
> 
> doc/syntax.page
> lib/kramdown/converter/kramdown.rb
> lib/kramdown/parser/kramdown/math.rb
> test/testcases/span/math/normal.html
> test/testcases/span/math/normal.text
> 
> commit f5b585513508704563cc0bb343869f91520ff853
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sat Feb 18 11:11:45 2012 +0100
> 
>     Fixed problem with missing methods/constants on older Ruby 1.8.6 versions
> 
> lib/kramdown/compatibility.rb
> 
> commit 394d5de7cad34ed5e0bdcfc0fcc7a1a28b3f0229
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Tue Jan 31 17:32:09 2012 +0100
> 
>     Moved camelize method from Document#method_to_class_name to Utils.camelize
> 
> lib/kramdown/document.rb
> lib/kramdown/utils.rb
> 
> commit 7adc3bda20a8290f0af588da7816eec591d4ecaa
> Author: tomykaira <tomykaira@gmail.com>
> Date:   Fri Dec 30 18:08:43 2011 +0900
> 
>     Fix Document#method_missing to accept snake_cased class name
>     
>     When doc.to_my_converter is called, it should use MyConverter, but used My_converter
> 
> lib/kramdown/document.rb
> 
> commit a6b181a9baf2eeeabeb55a1a9d5b26791fecad08
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sat Jan 21 12:18:22 2012 +0100
> 
>     HTML attributes names are now converted to lower case
> 
> doc/syntax.page
> lib/kramdown/parser/html.rb
> lib/kramdown/parser/kramdown/html.rb
> test/testcases/block/09_html/html5_attributes.html
> test/testcases/block/09_html/simple.text
> test/testcases/span/05_html/normal.text
> 
> commit 170ca36a60d823803f575bf5632d9e9d1e74f7db
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sat Jan 21 12:05:31 2012 +0100
> 
>     HTML attributes without values are now supported
>     
>     This means that one can write boolean HTML attributes now without
>     assigning an empty value.
> 
> doc/syntax.page
> lib/kramdown/converter/kramdown.rb
> lib/kramdown/parser/html.rb
> lib/kramdown/parser/kramdown/html.rb
> test/testcases/block/09_html/html5_attributes.html
> test/testcases/block/09_html/html5_attributes.text
> test/testcases/span/05_html/normal.html
> test/testcases/span/05_html/normal.text
> 
> commit 2c1d7c5e66bfe42052dc43374e123a48e7cb2ad6
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Fri Dec 16 18:40:15 2011 +0100
> 
>     Fix to work with newer RDoc versions
> 
> Rakefile
> 
> commit 2a93cbc0e1bbe705159c645ae617538bad125394
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Fri Dec 16 18:26:32 2011 +0100
> 
>     Updated release notes, version number and benchmark graphs
> 
> doc/img/graph-jruby-1.6.0-330.png
> doc/img/graph-ruby-1.8.5-231.png
> doc/img/graph-ruby-1.8.6-399.png
> doc/img/graph-ruby-1.8.7-249.png
> doc/img/graph-ruby-1.8.7-302.png
> doc/img/graph-ruby-1.9.2p136-136.png
> doc/img/graph-ruby-1.9.3p0-0.png
> doc/index.page
> doc/news/release_0_13_4.page
> doc/news/release_0_X_X.page
> doc/tests.page
> lib/kramdown/version.rb
> 
> commit dbbabbc5b61b67ed0d22c1aa4a6b17608ed771e6
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Tue Dec 13 17:25:53 2011 +0100
> 
>     Fixed test case to work with coderay 1.0
> 
> test/testcases/block/12_extension/options3.html
> 
> commit 6828b83435c30676185d675dc7b6054846606df0
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Tue Dec 13 17:25:31 2011 +0100
> 
>     Updated Rakefile and setup.rb
>     
>     * Use gem package task supplied by rubygems
>     * Add coderay as development dependency
>     * Fix warning in setup.rb because of Config::CONFIG use
> 
> Rakefile
> setup.rb
> 
> commit bb7e82ce3f5213830fa6387e6c790a75b919dd38
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Tue Dec 13 17:23:51 2011 +0100
> 
>     Fixed problem with different Array#delete_if internals on Ruby 1.9.3
>     
>     See http://redmine.ruby-lang.org/issues/5752
> 
> lib/kramdown/parser/html.rb
> 
> commit cd253a5e9d4dcfe55c12caf9257e4f1fb6113943
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Dec 11 15:40:35 2011 +0100
> 
>     Fixed warnings on Ruby 1.9.3
> 
> lib/kramdown/converter/html.rb
> lib/kramdown/parser/html.rb
> lib/kramdown/parser/kramdown.rb
> lib/kramdown/parser/kramdown/header.rb
> lib/kramdown/parser/kramdown/html.rb
> lib/kramdown/parser/kramdown/smart_quotes.rb
> test/test_files.rb
> 
> commit e71cc414755e51c3336551e3f011f2f39ea601ee
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Dec 11 15:32:52 2011 +0100
> 
>     Fixed test cases to correctly behave with new footnote rel output
> 
> test/testcases/block/12_extension/options.html
> test/testcases/block/12_extension/options2.html
> test/testcases/block/14_table/table_with_footnote.html
> 
> commit b3b2ebc233160f4f649f0d0aed070d7540781c4f
> Merge: a58ba5b ef70112
> Author: gettalong <t_leitner@gmx.at>
> Date:   Sun Dec 11 06:26:18 2011 -0800
> 
>     Merge pull request #4 from joefiorini/master
>     
>     HTML5 Compatibility for Footnotes
>     
>     Replacing the rev='footnote' with rel='reference'.
> 
> commit a58ba5b364081e896e2a49cc06db5aec643f8bb4
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Dec 11 12:38:37 2011 +0100
> 
>     Fixed bug RF#29426: Content of <style> tags is treated as raw text now
> 
> lib/kramdown/parser/html.rb
> test/testcases/block/09_html/parse_as_raw.html
> test/testcases/block/09_html/parse_as_raw.htmlinput
> test/testcases/block/09_html/parse_as_raw.text
> 
> commit 14800a606565ff7d1759fea9815be1f9eff9b633
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sun Dec 11 12:27:52 2011 +0100
> 
>     Fixed bug RF#29350: Parsing of HTML tags with mismatched case now works
> 
> lib/kramdown/parser/html.rb
> lib/kramdown/parser/kramdown/html.rb
> test/test_files.rb
> test/testcases/block/09_html/parse_as_raw.htmlinput
> test/testcases/block/09_html/parse_as_raw.text
> test/testcases/block/09_html/parse_as_span.htmlinput
> test/testcases/block/09_html/parse_as_span.text
> test/testcases/block/09_html/parse_block_html.text
> test/testcases/span/05_html/normal.html
> test/testcases/span/05_html/normal.text
> 
> commit b585efb3086c3462a573b57d060dfd203070bcc1
> Merge: 64a4e7e 3a72b72
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Sat Sep 24 14:41:34 2011 +0200
> 
>     Merge branch 'master' of github.com:gettalong/kramdown
> 
> commit 3a72b72564d4f788fa1423dd8eb1089e355b0a4c
> Merge: e6c1b12 df5e705
> Author: gettalong <t_leitner@gmx.at>
> Date:   Sat Sep 24 05:28:10 2011 -0700
> 
>     Merge pull request #5 from jacius/span
>     
>     span tags must have a separate closing tag to be valid HTML.
> 
> commit e6c1b12fa45c7b3284c4b41247ade9ff4b4379a4
> Merge: 9188906 1270445
> Author: gettalong <t_leitner@gmx.at>
> Date:   Sat Sep 24 05:24:32 2011 -0700
> 
>     Merge pull request #6 from postmodern/patch-1
>     
>     Fixed a typo. --output not --ouput
> 
> commit 12704459192bdcbf9b02d1d90483c8d835f3e9f1
> Author: Postmodern <postmodern.mod3@gmail.com>
> Date:   Thu Aug 4 18:57:59 2011 -0700
> 
>     Fixed a typo. --output not --ouput
> 
> bin/kramdown
> 
> commit df5e705ef41ca2c47b5b0d54509cdfb80c2d5f4d
> Author: John Croisant <jacius@gmail.com>
> Date:   Sun Jul 10 23:52:35 2011 -0500
> 
>     span tags must have a separate closing tag to be valid HTML.
>     
>     "<span />" is invalid markup in HTML 4 and 5, but valid in XHTML.
>     "<span></span>" is valid in all three, so it should be used instead.
> 
> lib/kramdown/converter/html.rb
> test/testcases/span/05_html/normal.html
> test/testcases/span/05_html/normal.text
> 
> commit ef7011229e7d93c31c22468e5cfd797051ac280c
> Author: Joe Fiorini <joe@faithfulgeek.org>
> Date:   Wed May 11 02:08:38 2011 -0400
> 
>     Replace rev attribute for HTML5 compatibility
> 
> lib/kramdown/converter/html.rb
> test/testcases/span/04_footnote/footnote_nr.html
> test/testcases/span/04_footnote/markers.html
> 
> commit 64a4e7e61da0d720ffd702fd6c45cefafc568d24
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Tue May 10 20:47:16 2011 +0200
> 
>     Added a TOC converter
>     
>     The TOC converter can be used to get an element tree containing the
>     table of contents. Since it uses a custom element type the resulting
>     tree cannot be fed directly to any converter.
> 
> doc/news/release_0_X_X.page
> lib/kramdown/converter.rb
> lib/kramdown/converter/toc.rb
> 
> commit 5ed13d24d9375771e3a0bd0d4fbe779d0043563b
> Author: Thomas Leitner <t_leitner@gmx.at>
> Date:   Tue May 10 07:42:23 2011 +0200
> 
>     Extracted Element class into own file and made some small doc fixes
> 
> lib/kramdown/document.rb
> lib/kramdown/element.rb
> 
###### liquid 2.2.2 -> 2.3.0 ######
1c1,16
< 2.2.1 / 2010-08-23
---
> # Liquid Version History
> 
> ## 2.3.0
> 
> * Several speed/memory improvements
> * Numerous bug fixes
> * Added support for MRI 1.9, Rubinius, and JRuby
> * Added support for integer drop parameters
> * Added epoch support to `date` filter
> * New `raw` tag that suppresses parsing
> * Added `else` option to `for` tag
> * New `increment` tag
> * New `split` filter
> 
> 
> ## 2.2.1 / 2010-08-23
5c20,21
< 2.2.0 / 2010-08-22
---
> 
> ## 2.2.0 / 2010-08-22
10c26,27
< 1.9.0 / 2008-03-04
---
> 
> ## 1.9.0 / 2008-03-04
15,17d31
< Before 1.9.0
< 
< * Added If with or / and expressions
19c33
< * Implemented .to_liquid for all objects which can be passed to liquid like Strings Arrays Hashes Numerics and Booleans. To export new objects to liquid just implement .to_liquid on them and return objects which themselves have .to_liquid methods. 
---
> ## Before 1.9.0
20a35,36
> * Added If with or / and expressions
> * Implemented .to_liquid for all objects which can be passed to liquid like Strings Arrays Hashes Numerics and Booleans. To export new objects to liquid just implement .to_liquid on them and return objects which themselves have .to_liquid methods.
22d37
< 
24d38
< 
26d39
< 
28d40
< 
30d41
< 
32d42
< 
34d43
< 
36d44
< 
38,42c46,47
<   
<   {{ 'Typo' | link_to: 'http://typo.leetsoft.com', 'Typo - a modern weblog engine' }}
<   
< 
< * Added Liquid::Drop. A base class which you can use for exporting proxy objects to liquid which can acquire more data when used in liquid. [Tobias Luetke] 
---
>     {{ 'Typo' | link_to: 'http://typo.leetsoft.com', 'Typo - a modern weblog engine' }}
> * Added Liquid::Drop. A base class which you can use for exporting proxy objects to liquid which can acquire more data when used in liquid. [Tobias Luetke]
48c53
<   end   
---
>   end
51,52d55
< 
< 
###### multi_json 1.0.4 -> 1.1.0 ######
Missing changelogs
###### rack 1.3.2 -> 1.4.1 ######
Missing changelogs
###### rake 0.9.2 -> 0.9.2.2 ######
Missing changelogs
###### rb-fsevent 0.4.3.1 -> 0.9.0 ######
Missing changelogs
###### sass 3.1.5 -> 3.1.15 ######
Missing changelogs
###### stringex 1.3.0 -> 1.3.2 ######
Missing changelogs
###### tilt 1.3.2 -> 1.3.3 ######
Missing changelogs
0 голосов
/ 12 июля 2012

Существует также хороший веб-сервис, который бесплатен для общедоступных проектов с открытым исходным кодом (доступен сервисный крючок github): http://Gemnasium.com

Он проверяет, какие гемы актуальны, и предоставляет обзор плюс уведомления по электронной почте оизменилось между версиями (сравнение различий тега github).

0 голосов
/ 02 марта 2012

Подходит ли новая команда bundle outdated для ваших нужд?

http://patshaughnessy.net/2011/11/5/besides-being-faster-what-else-is-new-in-bundler-1-1

Самая полезная и важная новая команда, представленная в Bundler 1.1, является устаревшей, и онаустаревшие драгоценные камни в вашем комплекте - это драгоценные камни, для которых доступна более новая версия

0 голосов
/ 02 марта 2012

Это не совсем отвечает на ваш вопрос, но может быть полезно знать, как работают номера версий Gem. Согласно спецификации, первое из трех чисел в версии драгоценного камня должно сообщать вам, гарантированно, что драгоценный камень обратно совместим.

Например, если вы запускаете свой проект с какой-либо версией gem 3.1.0, он должен быть совместим с любой версией 3.x.x гема. Согласно спецификации, «Изменение категории 3 (несовместимое) приведет к увеличению номера основной версии и сбросу номеров младших и сборочных номеров»

Подробнее см. Здесь: http://docs.rubygems.org/read/chapter/7

Вам также может пригодиться этот пост о замораживании версий гемов, чтобы проверить новые: https://stackoverflow.com/a/2147227/834512

...