Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get changelogs for all gems included in a Rails project

I have a Rails project that uses bundler. Many of the gems I'm included are quite a few versions behind the latest available. I know that I could just cross my fingers and run bundle update to get everything up to the latest version, taking into account dependencies, but that could potentially break parts of my app that rely on deprecated gem methods, and might not be worth the effort.

Is there a way to get the changelogs for all bundled gems between the version set in Gemfile.lock and latest on rubygems? It seems like something that would be a pretty widespread need, but I haven't found any solution...

like image 495
swrobel Avatar asked Feb 27 '12 18:02

swrobel


People also ask

How do I resolve gem dependencies?

Common Attempts To Resolve Ruby Gem Dependencies Bundler can help to resolve dependencies when working with Ruby gems by allowing you to specify a set of gems in a Gemfile, then issue a single command to install them. Bundler then automatically resolves the dependencies for you.

How is Gemfile lock generated?

Gemfile. lock is automatically generated when you run bundle install or bundle update . It should never be edited manually.

What is a Gemfile lock?

The Gemfile. lock allows you to specify the versions of the dependencies that your application needs in the Gemfile , while remembering all of the exact versions of third-party code that your application used when it last worked correctly. By specifying looser dependencies in your Gemfile (such as nokogiri ~> 1.4.


1 Answers

That is a really good idea. I haven't heard of any tool that does that currently, so I created a script that does it.

It is very hacky/alpha, but it is still quite effective (more than I thought it would be when I started writing it). So use at your own risk. Hopefully though a feature like this (but much improved) could eventually make it into bundler.

To use, first commit all changes. Then run the script in the base directory (where your Gemfile.lock file is.

It will firstly query all gems in use to find their changelogs. It will then run bundle update. It will then query all gems, find the new ones and diff the changelogs. Finally it will run git checkout Gemfile.lock and bundle install to revert any changes caused by the bundle update command. The results will be saved in a file 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

Here is the output of me running it on my octopress blog installation (rather long, mainly because kramdown uses git log as their changelog):

###### 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> Date:   Sun Feb 19 09:53:03 2012 +0100
> 
>     Small typo fix in quickref
> 
> doc/quickref.page
> 
> commit 4df3c5aaad763cc9d8fd4b129a5cdd245ed5a7f7
> Author: Thomas Leitner <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> Date:   Sun Feb 19 09:35:51 2012 +0100
> 
>     Disabling line numbers in code listings on homepage
> 
> Rakefile
> 
> commit a47a5c49e35f9ccb220dca7b5b8ac7d585026ef6
> Author: Thomas Leitner <[email protected]>
> Date:   Sun Feb 19 09:25:01 2012 +0100
> 
>     Updated copyright notice updating code
> 
> Rakefile
> 
> commit 21ce307a6766d131bf3a61de1142d88b0bd0a8be
> Author: Thomas Leitner <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> Date:   Fri Dec 16 18:40:15 2011 +0100
> 
>     Fix to work with newer RDoc versions
> 
> Rakefile
> 
> commit 2a93cbc0e1bbe705159c645ae617538bad125394
> Author: Thomas Leitner <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> Date:   Sat Sep 24 14:41:34 2011 +0200
> 
>     Merge branch 'master' of github.com:gettalong/kramdown
> 
> commit 3a72b72564d4f788fa1423dd8eb1089e355b0a4c
> Merge: e6c1b12 df5e705
> Author: gettalong <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> Date:   Thu Aug 4 18:57:59 2011 -0700
> 
>     Fixed a typo. --output not --ouput
> 
> bin/kramdown
> 
> commit df5e705ef41ca2c47b5b0d54509cdfb80c2d5f4d
> Author: John Croisant <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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 <[email protected]>
> 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
like image 167
David Miani Avatar answered Sep 22 '22 14:09

David Miani