feedutils 0.4.0 → 0.5.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.
- checksums.yaml +7 -0
- data/{History.md → HISTORY.md} +0 -0
- data/Manifest.txt +4 -1
- data/README.md +1 -0
- data/Rakefile +5 -6
- data/lib/feedutils.rb +2 -16
- data/lib/feedutils/builder/atom.rb +30 -1
- data/lib/feedutils/version.rb +22 -2
- data/test/feeds/googlegroups.atom +18 -0
- data/test/feeds/googlegroups2.atom +20 -0
- data/test/helper.rb +10 -5
- data/test/test_atom.rb +10 -4
- data/test/test_atom_from_file.rb +28 -0
- data/test/test_rss.rb +1 -1
- metadata +41 -28
    
        checksums.yaml
    ADDED
    
    | @@ -0,0 +1,7 @@ | |
| 1 | 
            +
            ---
         | 
| 2 | 
            +
            SHA1:
         | 
| 3 | 
            +
              metadata.gz: fc27ca90a5876fa6ae3ca6abaad1dba94d95a19b
         | 
| 4 | 
            +
              data.tar.gz: 704c4187ca9e9b903fe99ecee3f45c7e5d0150cc
         | 
| 5 | 
            +
            SHA512:
         | 
| 6 | 
            +
              metadata.gz: 19f0245d4dd3e01403ef6d822ddca5022178b6718201af402fcdd9f7963252acea856cdc45b3e28103f1e5efc92f9be5c2ee4abd78d2896d85af2f7929c96584
         | 
| 7 | 
            +
              data.tar.gz: 8b684e82f2ba8473dc80ec5f4a02a0c10df15e0342aa4b182aaba6a55746dc8fd343d620e864a718056e1c6df4253c1e7d10e8e3d169d3551711e9c7a31c706f
         | 
    
        data/{History.md → HISTORY.md}
    RENAMED
    
    | 
            File without changes
         | 
    
        data/Manifest.txt
    CHANGED
    
    | @@ -1,4 +1,4 @@ | |
| 1 | 
            -
             | 
| 1 | 
            +
            HISTORY.md
         | 
| 2 2 | 
             
            Manifest.txt
         | 
| 3 3 | 
             
            README.md
         | 
| 4 4 | 
             
            Rakefile
         | 
| @@ -9,6 +9,9 @@ lib/feedutils/feed.rb | |
| 9 9 | 
             
            lib/feedutils/item.rb
         | 
| 10 10 | 
             
            lib/feedutils/parser.rb
         | 
| 11 11 | 
             
            lib/feedutils/version.rb
         | 
| 12 | 
            +
            test/feeds/googlegroups.atom
         | 
| 13 | 
            +
            test/feeds/googlegroups2.atom
         | 
| 12 14 | 
             
            test/helper.rb
         | 
| 13 15 | 
             
            test/test_atom.rb
         | 
| 16 | 
            +
            test/test_atom_from_file.rb
         | 
| 14 17 | 
             
            test/test_rss.rb
         | 
    
        data/README.md
    CHANGED
    
    
    
        data/Rakefile
    CHANGED
    
    | @@ -15,19 +15,18 @@ Hoe.spec 'feedutils' do | |
| 15 15 |  | 
| 16 16 | 
             
              # switch extension to .markdown for gihub formatting
         | 
| 17 17 | 
             
              self.readme_file  = 'README.md'
         | 
| 18 | 
            -
              self.history_file = ' | 
| 18 | 
            +
              self.history_file = 'HISTORY.md'
         | 
| 19 19 |  | 
| 20 20 | 
             
              self.extra_deps = [
         | 
| 21 | 
            -
                ['logutils', '>= 0. | 
| 21 | 
            +
                ['logutils', '>= 0.6.1']
         | 
| 22 22 | 
             
              ]
         | 
| 23 | 
            -
             | 
| 23 | 
            +
             | 
| 24 24 | 
             
              ###  todo: add fetcher dep for testing (e.g. development only)
         | 
| 25 25 |  | 
| 26 26 | 
             
              self.licenses = ['Public Domain']
         | 
| 27 27 |  | 
| 28 28 | 
             
              self.spec_extras = {
         | 
| 29 | 
            -
               : | 
| 29 | 
            +
               required_ruby_version: '>= 1.9.2'
         | 
| 30 30 | 
             
              }
         | 
| 31 31 |  | 
| 32 | 
            -
             | 
| 33 | 
            -
            end
         | 
| 32 | 
            +
            end
         | 
    
        data/lib/feedutils.rb
    CHANGED
    
    | @@ -20,20 +20,6 @@ require 'feedutils/item' | |
| 20 20 | 
             
            require 'feedutils/parser'
         | 
| 21 21 |  | 
| 22 22 |  | 
| 23 | 
            -
            module FeedUtils
         | 
| 24 | 
            -
             | 
| 25 | 
            -
              def self.banner
         | 
| 26 | 
            -
                "feedutils/#{VERSION} (with stdlib rss/#{RSS::VERSION}) on Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
         | 
| 27 | 
            -
              end
         | 
| 28 | 
            -
             | 
| 29 | 
            -
            =begin
         | 
| 30 | 
            -
              def self.root
         | 
| 31 | 
            -
                "#{File.expand_path( File.dirname(File.dirname(__FILE__)) )}"
         | 
| 32 | 
            -
              end
         | 
| 33 | 
            -
            =end
         | 
| 34 | 
            -
             | 
| 35 | 
            -
            end  # module FeedUtils
         | 
| 36 | 
            -
             | 
| 37 | 
            -
             | 
| 38 | 
            -
            puts FeedUtils.banner    # say hello
         | 
| 39 23 |  | 
| 24 | 
            +
            # say hello
         | 
| 25 | 
            +
            puts FeedUtils.banner     if $DEBUG || (defined?($RUBYLIBS_DEBUG) && $RUBYLIBS_DEBUG)
         | 
| @@ -27,6 +27,34 @@ class AtomFeedBuilder | |
| 27 27 | 
             
                feed.title  = atom_feed.title.content
         | 
| 28 28 | 
             
                logger.debug "  atom | title.content  >#{atom_feed.title.content}< : #{atom_feed.title.content.class.name}"
         | 
| 29 29 |  | 
| 30 | 
            +
             | 
| 31 | 
            +
                ## note: for now assume id is feed (html)url
         | 
| 32 | 
            +
                ## use url only if starts_with http
         | 
| 33 | 
            +
                ##  might not be link e.g blogger uses for ids =>
         | 
| 34 | 
            +
                ##    <id>tag:blogger.com,1999:blog-4704664917418794835</id>
         | 
| 35 | 
            +
                ##
         | 
| 36 | 
            +
                ## Note: remove (strip) leading and trailing spaces and newlines
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                if atom_feed.id.content.strip.start_with?( 'http' )
         | 
| 39 | 
            +
                  feed.url = atom_feed.id.content.strip
         | 
| 40 | 
            +
                else
         | 
| 41 | 
            +
                  feed.url = nil
         | 
| 42 | 
            +
                end
         | 
| 43 | 
            +
             | 
| 44 | 
            +
                logger.debug "  atom | id.content  >#{atom_feed.id.content}< : #{atom_feed.id.content.class.name}"
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                ## note: use links (plural to allow multiple links e.g. self,alternate,etc.)
         | 
| 47 | 
            +
                atom_feed.links.each_with_index do |link,i|
         | 
| 48 | 
            +
                  logger.debug "  atom | link[#{i+1}] link rel=>#{link.rel}< : #{link.rel.class.name} type=#{link.type} href=#{link.href}"
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                  ## for now assume alternate is link or no rel specified (assumes alterante)
         | 
| 51 | 
            +
                  ##   note: only set if feed.url is NOT already set (via <id> for example)
         | 
| 52 | 
            +
                  if feed.url.nil? && (link.rel == 'alternate' || link.rel.nil?)
         | 
| 53 | 
            +
                    feed.url = link.href
         | 
| 54 | 
            +
                  end
         | 
| 55 | 
            +
                end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
             | 
| 30 58 | 
             
                if atom_feed.updated
         | 
| 31 59 | 
             
                  # NOTE: empty updated.content e.g.  used by google groups feed
         | 
| 32 60 | 
             
                  #   will return nil : NilClass
         | 
| @@ -38,7 +66,8 @@ class AtomFeedBuilder | |
| 38 66 | 
             
                end
         | 
| 39 67 |  | 
| 40 68 | 
             
                if atom_feed.generator
         | 
| 41 | 
            -
                   | 
| 69 | 
            +
                  ## Note: remove (strip) leading and trailing spaces and newlines
         | 
| 70 | 
            +
                  feed.generator =  atom_feed.generator.content.strip
         | 
| 42 71 | 
             
                  logger.debug "  atom | generator.content  >#{atom_feed.generator.content}< : #{atom_feed.generator.content.class.name}"
         | 
| 43 72 |  | 
| 44 73 | 
             
                  # pp atom_feed.generator
         | 
    
        data/lib/feedutils/version.rb
    CHANGED
    
    | @@ -1,4 +1,24 @@ | |
| 1 | 
            +
            # encoding: utf-8
         | 
| 1 2 |  | 
| 2 3 | 
             
            module FeedUtils
         | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 4 | 
            +
             | 
| 5 | 
            +
              MAJOR = 0
         | 
| 6 | 
            +
              MINOR = 5
         | 
| 7 | 
            +
              PATCH = 0
         | 
| 8 | 
            +
              VERSION = [MAJOR,MINOR,PATCH].join('.')
         | 
| 9 | 
            +
             | 
| 10 | 
            +
              def self.version
         | 
| 11 | 
            +
                VERSION
         | 
| 12 | 
            +
              end
         | 
| 13 | 
            +
             | 
| 14 | 
            +
             | 
| 15 | 
            +
              def self.banner
         | 
| 16 | 
            +
                "feedutils/#{VERSION} (with stdlib rss/#{RSS::VERSION}) on Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
         | 
| 17 | 
            +
              end
         | 
| 18 | 
            +
             | 
| 19 | 
            +
              def self.root
         | 
| 20 | 
            +
                "#{File.expand_path( File.dirname(File.dirname(File.dirname(__FILE__))) )}"
         | 
| 21 | 
            +
              end  
         | 
| 22 | 
            +
             | 
| 23 | 
            +
            end # module FeedUtils
         | 
| 24 | 
            +
             | 
| @@ -0,0 +1,18 @@ | |
| 1 | 
            +
            <feed xmlns="http://www.w3.org/2005/Atom">
         | 
| 2 | 
            +
              <id>https://groups.google.com/d/forum/beerdb</id>
         | 
| 3 | 
            +
              <title type="text">Open Beer & Brewery Database (beer.db)</title>
         | 
| 4 | 
            +
              <subtitle>Free open public domain beer database &amp; schema (beer.db) for use in any (programming) language (e.g. uses plain text fixtures/data sets). Questions? Comments?</subtitle>
         | 
| 5 | 
            +
              <link rel="self" href="https://groups.google.com/forum/feed/beerdb/topics/atom_v1_0.xml" title="beerdb feed"></link>
         | 
| 6 | 
            +
              <updated></updated>
         | 
| 7 | 
            +
              <generator>Google Groups</generator>
         | 
| 8 | 
            +
              <entry>
         | 
| 9 | 
            +
                <author>
         | 
| 10 | 
            +
                  <name>Joe Sixpack</name>
         | 
| 11 | 
            +
                </author>
         | 
| 12 | 
            +
                <updated>2014-12-17T11:54:43Z</updated>
         | 
| 13 | 
            +
                <id>https://groups.google.com/d/topic/beerdb/KpQOUDYJ3J8</id>
         | 
| 14 | 
            +
                <link href="https://groups.google.com/d/topic/beerdb/KpQOUDYJ3J8"></link>
         | 
| 15 | 
            +
                <title type="text">Planet Beer (Austria, Belgium) - Feeds Incl. Craft Fest Wien, Beer-A-Day, proBier n Friends</title>
         | 
| 16 | 
            +
                <summary type="html">Hello, I've started putting together a planet site for beer, that is, Planet Beer [1]. The first feed lists include: - Austria [2] - Belgium [3] You're welcome and invited to suggest new countries and feeds. Cheers. Prost. [1] http://planetbeer.herokuapp.com [2] http://github.com/openbeer/planet/blob/master/</summary>
         | 
| 17 | 
            +
              </entry>
         | 
| 18 | 
            +
            </feed>
         | 
| @@ -0,0 +1,20 @@ | |
| 1 | 
            +
            <feed xmlns="http://www.w3.org/2005/Atom">
         | 
| 2 | 
            +
              <id>https://groups.google.com/d/forum/beerdb</id>
         | 
| 3 | 
            +
              <title type="text">Open Beer & Brewery Database (beer.db)</title>
         | 
| 4 | 
            +
              <subtitle>Free open public domain beer database &amp; schema (beer.db) for use in any (programming) language (e.g. uses plain text fixtures/data sets). Questions? Comments?</subtitle>
         | 
| 5 | 
            +
              <link rel="self" href="https://groups.google.com/forum/feed/beerdb/topics/atom_v1_0.xml" title="beerdb feed"></link>
         | 
| 6 | 
            +
              <updated></updated>
         | 
| 7 | 
            +
              <generator>
         | 
| 8 | 
            +
                 Google Groups (w/ leading n trailing newlines stripped)
         | 
| 9 | 
            +
              </generator>
         | 
| 10 | 
            +
              <entry>
         | 
| 11 | 
            +
                <author>
         | 
| 12 | 
            +
                  <name>Joe Sixpack</name>
         | 
| 13 | 
            +
                </author>
         | 
| 14 | 
            +
                <updated>2014-12-17T11:54:43Z</updated>
         | 
| 15 | 
            +
                <id>https://groups.google.com/d/topic/beerdb/KpQOUDYJ3J8</id>
         | 
| 16 | 
            +
                <link href="https://groups.google.com/d/topic/beerdb/KpQOUDYJ3J8"></link>
         | 
| 17 | 
            +
                <title type="text">Planet Beer (Austria, Belgium) - Feeds Incl. Craft Fest Wien, Beer-A-Day, proBier n Friends</title>
         | 
| 18 | 
            +
                <summary type="html">Hello, I've started putting together a planet site for beer, that is, Planet Beer [1]. The first feed lists include: - Austria [2] - Belgium [3] You're welcome and invited to suggest new countries and feeds. Cheers. Prost. [1] http://planetbeer.herokuapp.com [2] http://github.com/openbeer/planet/blob/master/</summary>
         | 
| 19 | 
            +
              </entry>
         | 
| 20 | 
            +
            </feed>
         | 
    
        data/test/helper.rb
    CHANGED
    
    | @@ -3,11 +3,8 @@ | |
| 3 3 |  | 
| 4 4 | 
             
            ## minitest setup
         | 
| 5 5 |  | 
| 6 | 
            -
            # require 'minitest/unit'
         | 
| 7 6 | 
             
            require 'minitest/autorun'
         | 
| 8 7 |  | 
| 9 | 
            -
            # include MiniTest::Unit  # lets us use TestCase instead of MiniTest::Unit::TestCase
         | 
| 10 | 
            -
             | 
| 11 8 | 
             
            require 'logutils'
         | 
| 12 9 | 
             
            require 'fetcher'
         | 
| 13 10 |  | 
| @@ -18,8 +15,16 @@ require 'feedutils' | |
| 18 15 |  | 
| 19 16 | 
             
            LogUtils::Logger.root.level = :debug
         | 
| 20 17 |  | 
| 21 | 
            -
            def parse_feed(  | 
| 22 | 
            -
              xml = Fetcher.read(  | 
| 18 | 
            +
            def parse_feed( url )
         | 
| 19 | 
            +
              xml = Fetcher.read( url )
         | 
| 23 20 |  | 
| 24 21 | 
             
              FeedUtils::Parser.parse( xml )
         | 
| 25 22 | 
             
            end
         | 
| 23 | 
            +
             | 
| 24 | 
            +
             | 
| 25 | 
            +
            def parse_feed_from_file( name )
         | 
| 26 | 
            +
              xml = File.read( "#{FeedUtils.root}/test/feeds/#{name}")
         | 
| 27 | 
            +
             | 
| 28 | 
            +
              FeedUtils::Parser.parse( xml )  
         | 
| 29 | 
            +
            end
         | 
| 30 | 
            +
             | 
    
        data/test/test_atom.rb
    CHANGED
    
    | @@ -1,29 +1,34 @@ | |
| 1 1 | 
             
            ###
         | 
| 2 2 | 
             
            #  to run use
         | 
| 3 | 
            -
            #     ruby -I ./lib -I ./test test/ | 
| 3 | 
            +
            #     ruby -I ./lib -I ./test test/test_atom.rb
         | 
| 4 4 | 
             
            #  or better
         | 
| 5 5 | 
             
            #     rake test
         | 
| 6 6 |  | 
| 7 7 | 
             
            require 'helper'
         | 
| 8 8 |  | 
| 9 | 
            -
            class TestAtom < MiniTest:: | 
| 9 | 
            +
            class TestAtom < MiniTest::Test
         | 
| 10 10 |  | 
| 11 11 | 
             
              def test_rubyonrails
         | 
| 12 12 | 
             
                feed = parse_feed( 'http://weblog.rubyonrails.org/feed/atom.xml' )
         | 
| 13 13 |  | 
| 14 | 
            -
                assert_equal 'atom', | 
| 14 | 
            +
                assert_equal 'atom',                           feed.format
         | 
| 15 | 
            +
                assert_equal 'http://weblog.rubyonrails.org/', feed.url
         | 
| 15 16 | 
             
              end
         | 
| 16 17 |  | 
| 18 | 
            +
             | 
| 17 19 | 
             
              def test_railstutorial
         | 
| 18 20 | 
             
                feed = parse_feed( 'http://feeds.feedburner.com/railstutorial?format=xml' )
         | 
| 19 21 |  | 
| 20 | 
            -
                assert_equal 'atom', | 
| 22 | 
            +
                assert_equal 'atom',                           feed.format
         | 
| 23 | 
            +
                assert_equal 'http://news.railstutorial.org/', feed.url
         | 
| 21 24 | 
             
              end
         | 
| 22 25 |  | 
| 26 | 
            +
             | 
| 23 27 | 
             
              def test_googlegroup
         | 
| 24 28 | 
             
                feed = parse_feed( 'https://groups.google.com/forum/feed/beerdb/topics/atom.xml?num=15' )
         | 
| 25 29 |  | 
| 26 30 | 
             
                assert_equal 'atom', feed.format
         | 
| 31 | 
            +
                assert_equal 'https://groups.google.com/d/forum/beerdb', feed.url
         | 
| 27 32 | 
             
              end
         | 
| 28 33 |  | 
| 29 34 |  | 
| @@ -34,6 +39,7 @@ class TestAtom < MiniTest::Unit::TestCase | |
| 34 39 | 
             
                assert_equal 'Blogger', feed.generator
         | 
| 35 40 | 
             
                assert_equal 'Headius', feed.title
         | 
| 36 41 | 
             
                assert_equal 'Helping the JVM Into the 21st Century', feed.title2  # aka subtitle in atom
         | 
| 42 | 
            +
                assert_equal 'http://blog.headius.com/', feed.url
         | 
| 37 43 | 
             
              end
         | 
| 38 44 |  | 
| 39 45 | 
             
            end
         | 
| @@ -0,0 +1,28 @@ | |
| 1 | 
            +
            ###
         | 
| 2 | 
            +
            #  to run use
         | 
| 3 | 
            +
            #     ruby -I ./lib -I ./test test/test_atom_from_file.rb
         | 
| 4 | 
            +
            #  or better
         | 
| 5 | 
            +
            #     rake test
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            require 'helper'
         | 
| 8 | 
            +
             | 
| 9 | 
            +
             | 
| 10 | 
            +
            class TestAtomFromFile < MiniTest::Test
         | 
| 11 | 
            +
             | 
| 12 | 
            +
              def test_googlegroup
         | 
| 13 | 
            +
                feed = parse_feed_from_file( 'googlegroups.atom' )
         | 
| 14 | 
            +
             | 
| 15 | 
            +
                assert_equal 'atom', feed.format
         | 
| 16 | 
            +
                assert_equal 'Google Groups', feed.generator
         | 
| 17 | 
            +
                assert_equal 'https://groups.google.com/d/forum/beerdb', feed.url
         | 
| 18 | 
            +
              end
         | 
| 19 | 
            +
             | 
| 20 | 
            +
              def test_googlegroup2
         | 
| 21 | 
            +
                feed = parse_feed_from_file( 'googlegroups2.atom' )
         | 
| 22 | 
            +
             | 
| 23 | 
            +
                assert_equal 'atom', feed.format
         | 
| 24 | 
            +
                assert_equal 'Google Groups (w/ leading n trailing newlines stripped)', feed.generator
         | 
| 25 | 
            +
                assert_equal 'https://groups.google.com/d/forum/beerdb', feed.url
         | 
| 26 | 
            +
              end
         | 
| 27 | 
            +
             | 
| 28 | 
            +
            end # class TestAtomFromFile
         | 
    
        data/test/test_rss.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,57 +1,68 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: feedutils
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 5 | 
            -
              prerelease: 
         | 
| 4 | 
            +
              version: 0.5.0
         | 
| 6 5 | 
             
            platform: ruby
         | 
| 7 6 | 
             
            authors:
         | 
| 8 7 | 
             
            - Gerald Bauer
         | 
| 9 8 | 
             
            autorequire: 
         | 
| 10 9 | 
             
            bindir: bin
         | 
| 11 10 | 
             
            cert_chain: []
         | 
| 12 | 
            -
            date:  | 
| 11 | 
            +
            date: 2014-12-20 00:00:00.000000000 Z
         | 
| 13 12 | 
             
            dependencies:
         | 
| 14 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 15 14 | 
             
              name: logutils
         | 
| 16 | 
            -
              requirement:  | 
| 17 | 
            -
                none: false
         | 
| 15 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 18 16 | 
             
                requirements:
         | 
| 19 | 
            -
                - -  | 
| 17 | 
            +
                - - ">="
         | 
| 20 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 21 | 
            -
                    version:  | 
| 19 | 
            +
                    version: 0.6.1
         | 
| 22 20 | 
             
              type: :runtime
         | 
| 23 21 | 
             
              prerelease: false
         | 
| 24 | 
            -
              version_requirements:  | 
| 22 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 | 
            +
                requirements:
         | 
| 24 | 
            +
                - - ">="
         | 
| 25 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            +
                    version: 0.6.1
         | 
| 25 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 26 28 | 
             
              name: rdoc
         | 
| 27 | 
            -
              requirement:  | 
| 28 | 
            -
                none: false
         | 
| 29 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 29 30 | 
             
                requirements:
         | 
| 30 | 
            -
                - - ~>
         | 
| 31 | 
            +
                - - "~>"
         | 
| 31 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 32 | 
            -
                    version: ' | 
| 33 | 
            +
                    version: '4.0'
         | 
| 33 34 | 
             
              type: :development
         | 
| 34 35 | 
             
              prerelease: false
         | 
| 35 | 
            -
              version_requirements:  | 
| 36 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 | 
            +
                requirements:
         | 
| 38 | 
            +
                - - "~>"
         | 
| 39 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            +
                    version: '4.0'
         | 
| 36 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 37 42 | 
             
              name: hoe
         | 
| 38 | 
            -
              requirement:  | 
| 39 | 
            -
                none: false
         | 
| 43 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 40 44 | 
             
                requirements:
         | 
| 41 | 
            -
                - - ~>
         | 
| 45 | 
            +
                - - "~>"
         | 
| 42 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 43 | 
            -
                    version: '3. | 
| 47 | 
            +
                    version: '3.13'
         | 
| 44 48 | 
             
              type: :development
         | 
| 45 49 | 
             
              prerelease: false
         | 
| 46 | 
            -
              version_requirements:  | 
| 50 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 | 
            +
                requirements:
         | 
| 52 | 
            +
                - - "~>"
         | 
| 53 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            +
                    version: '3.13'
         | 
| 47 55 | 
             
            description: feedutils - web feed parser and normalizer (RSS 2.0, Atom, etc.)
         | 
| 48 56 | 
             
            email: feedreader@googlegroups.com
         | 
| 49 57 | 
             
            executables: []
         | 
| 50 58 | 
             
            extensions: []
         | 
| 51 59 | 
             
            extra_rdoc_files:
         | 
| 60 | 
            +
            - HISTORY.md
         | 
| 52 61 | 
             
            - Manifest.txt
         | 
| 62 | 
            +
            - README.md
         | 
| 53 63 | 
             
            files:
         | 
| 54 | 
            -
            -  | 
| 64 | 
            +
            - ".gemtest"
         | 
| 65 | 
            +
            - HISTORY.md
         | 
| 55 66 | 
             
            - Manifest.txt
         | 
| 56 67 | 
             
            - README.md
         | 
| 57 68 | 
             
            - Rakefile
         | 
| @@ -62,37 +73,39 @@ files: | |
| 62 73 | 
             
            - lib/feedutils/item.rb
         | 
| 63 74 | 
             
            - lib/feedutils/parser.rb
         | 
| 64 75 | 
             
            - lib/feedutils/version.rb
         | 
| 76 | 
            +
            - test/feeds/googlegroups.atom
         | 
| 77 | 
            +
            - test/feeds/googlegroups2.atom
         | 
| 65 78 | 
             
            - test/helper.rb
         | 
| 66 79 | 
             
            - test/test_atom.rb
         | 
| 80 | 
            +
            - test/test_atom_from_file.rb
         | 
| 67 81 | 
             
            - test/test_rss.rb
         | 
| 68 | 
            -
            - .gemtest
         | 
| 69 82 | 
             
            homepage: https://github.com/rubylibs/feedutils
         | 
| 70 83 | 
             
            licenses:
         | 
| 71 84 | 
             
            - Public Domain
         | 
| 85 | 
            +
            metadata: {}
         | 
| 72 86 | 
             
            post_install_message: 
         | 
| 73 87 | 
             
            rdoc_options:
         | 
| 74 | 
            -
            - --main
         | 
| 88 | 
            +
            - "--main"
         | 
| 75 89 | 
             
            - README.md
         | 
| 76 90 | 
             
            require_paths:
         | 
| 77 91 | 
             
            - lib
         | 
| 78 92 | 
             
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 79 | 
            -
              none: false
         | 
| 80 93 | 
             
              requirements:
         | 
| 81 | 
            -
              - -  | 
| 94 | 
            +
              - - ">="
         | 
| 82 95 | 
             
                - !ruby/object:Gem::Version
         | 
| 83 96 | 
             
                  version: 1.9.2
         | 
| 84 97 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 85 | 
            -
              none: false
         | 
| 86 98 | 
             
              requirements:
         | 
| 87 | 
            -
              - -  | 
| 99 | 
            +
              - - ">="
         | 
| 88 100 | 
             
                - !ruby/object:Gem::Version
         | 
| 89 101 | 
             
                  version: '0'
         | 
| 90 102 | 
             
            requirements: []
         | 
| 91 | 
            -
            rubyforge_project:  | 
| 92 | 
            -
            rubygems_version:  | 
| 103 | 
            +
            rubyforge_project: 
         | 
| 104 | 
            +
            rubygems_version: 2.4.2
         | 
| 93 105 | 
             
            signing_key: 
         | 
| 94 | 
            -
            specification_version:  | 
| 106 | 
            +
            specification_version: 4
         | 
| 95 107 | 
             
            summary: feedutils - web feed parser and normalizer (RSS 2.0, Atom, etc.)
         | 
| 96 108 | 
             
            test_files:
         | 
| 97 109 | 
             
            - test/test_atom.rb
         | 
| 110 | 
            +
            - test/test_atom_from_file.rb
         | 
| 98 111 | 
             
            - test/test_rss.rb
         |