lolcommits 0.9.1 → 0.9.2.pre1
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 +4 -4
- data/.travis.yml +1 -0
- data/CHANGELOG.md +5 -1
- data/lib/lolcommits/plugins/lol_twitter.rb +41 -20
- data/lib/lolcommits/version.rb +1 -1
- data/lolcommits.gemspec +11 -11
- metadata +48 -48
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: bdf5058a699862aaf28c86de13336c0fb9ce2fe8
         | 
| 4 | 
            +
              data.tar.gz: 71a0deced06447c2fe8469a5caec00739edf233e
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 7c2a1fdcff28ce329a77c38da2e47cfa3c6c92bdab14a05b27003385e46895ff3e4e1c51a78185390e7183d6771507863f45b27e667f75a21c4336b87ad90392
         | 
| 7 | 
            +
              data.tar.gz: f4a5d25dab8080e4ecc132b148f39b6df1fb78c2afdf5cc1708540fade8b61b07d4df21ddaf3cb6a38a8676515a6fec2cafbed3467e21eb77a037bd3963d0417
         | 
    
        data/.travis.yml
    CHANGED
    
    
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -8,6 +8,9 @@ project adheres to [Semantic Versioning][Semver]. | |
| 8 8 | 
             
              * WIP - extract plugins to separate gems ...
         | 
| 9 9 | 
             
              * Your contribution here!
         | 
| 10 10 |  | 
| 11 | 
            +
            ## [0.9.2][] (3 January 2017)
         | 
| 12 | 
            +
              * Remove twitter gem, fixes Ruby 2.4 issues (@matthutchinson #328)
         | 
| 13 | 
            +
             | 
| 11 14 | 
             
            ## [0.9.1][] (20 December 2016)
         | 
| 12 15 | 
             
              * Remove Choice gem, use Methadone (@matthutchinson #326)
         | 
| 13 16 |  | 
| @@ -262,7 +265,8 @@ project adheres to [Semantic Versioning][Semver]. | |
| 262 265 | 
             
              instead of compositing multiply image Caption objects (this seems to be more
         | 
| 263 266 | 
             
              reliable to not glitch.)
         | 
| 264 267 |  | 
| 265 | 
            -
            [Unreleased]: https://github.com/mroth/lolcommits/compare/v0.9. | 
| 268 | 
            +
            [Unreleased]: https://github.com/mroth/lolcommits/compare/v0.9.2...HEAD
         | 
| 269 | 
            +
            [0.9.1]: https://github.com/mroth/lolcommits/compare/v0.9.1...v0.9.2
         | 
| 266 270 | 
             
            [0.9.1]: https://github.com/mroth/lolcommits/compare/v0.9.0...v0.9.1
         | 
| 267 271 | 
             
            [0.9.0]: https://github.com/mroth/lolcommits/compare/v0.8.1...v0.9.0
         | 
| 268 272 | 
             
            [0.8.1]: https://github.com/mroth/lolcommits/compare/v0.8.0...v0.8.1
         | 
| @@ -1,16 +1,19 @@ | |
| 1 1 | 
             
            # -*- encoding : utf-8 -*-
         | 
| 2 2 | 
             
            require 'yaml'
         | 
| 3 3 | 
             
            require 'oauth'
         | 
| 4 | 
            -
            require ' | 
| 4 | 
            +
            require 'simple_oauth'
         | 
| 5 | 
            +
            require 'rest_client'
         | 
| 6 | 
            +
            require 'addressable/uri'
         | 
| 5 7 |  | 
| 6 8 | 
             
            module Lolcommits
         | 
| 7 9 | 
             
              class LolTwitter < Plugin
         | 
| 8 | 
            -
                TWITTER_API_ENDPOINT | 
| 9 | 
            -
                TWITTER_CONSUMER_KEY | 
| 10 | 
            -
                TWITTER_CONSUMER_SECRET | 
| 11 | 
            -
                 | 
| 12 | 
            -
                 | 
| 13 | 
            -
                 | 
| 10 | 
            +
                TWITTER_API_ENDPOINT         = 'https://api.twitter.com'.freeze
         | 
| 11 | 
            +
                TWITTER_CONSUMER_KEY         = 'qc096dJJCxIiqDNUqEsqQ'.freeze
         | 
| 12 | 
            +
                TWITTER_CONSUMER_SECRET      = 'rvjNdtwSr1H0TvBvjpk6c4bvrNydHmmbvv7gXZQI'.freeze
         | 
| 13 | 
            +
                TWITTER_RESERVED_MEDIA_CHARS = 24
         | 
| 14 | 
            +
                TWITTER_RETRIES              = 2
         | 
| 15 | 
            +
                TWITTER_PIN_REGEX            = /^\d{4,}$/ # 4 or more digits
         | 
| 16 | 
            +
                DEFAULT_SUFFIX               = '#lolcommits'.freeze
         | 
| 14 17 |  | 
| 15 18 | 
             
                def run_postcapture
         | 
| 16 19 | 
             
                  return unless valid_configuration?
         | 
| @@ -21,17 +24,30 @@ module Lolcommits | |
| 21 24 | 
             
                    attempts += 1
         | 
| 22 25 | 
             
                    puts "Tweeting: #{tweet}"
         | 
| 23 26 | 
             
                    debug "--> Tweeting! (attempt: #{attempts}, tweet length: #{tweet.length} chars)"
         | 
| 24 | 
            -
                     | 
| 25 | 
            -
             | 
| 26 | 
            -
                    end
         | 
| 27 | 
            -
                  rescue Twitter::Error::ServerError,
         | 
| 28 | 
            -
                         Twitter::Error::ClientError => e
         | 
| 27 | 
            +
                    post_tweet(tweet, File.open(runner.main_image, 'r'))
         | 
| 28 | 
            +
                  rescue StandardError => e
         | 
| 29 29 | 
             
                    debug "Tweet FAILED! #{e.class} - #{e.message}"
         | 
| 30 30 | 
             
                    retry if attempts < TWITTER_RETRIES
         | 
| 31 31 | 
             
                    puts "ERROR: Tweet FAILED! (after #{attempts} attempts) - #{e.message}"
         | 
| 32 32 | 
             
                  end
         | 
| 33 33 | 
             
                end
         | 
| 34 34 |  | 
| 35 | 
            +
                def post_url
         | 
| 36 | 
            +
                  # TODO: this endpoint is deprecated, use the new approach instead
         | 
| 37 | 
            +
                  # https://dev.twitter.com/rest/reference/post/statuses/update_with_mediath_media
         | 
| 38 | 
            +
                  @post_url ||= TWITTER_API_ENDPOINT + '/1.1/statuses/update_with_media.json'
         | 
| 39 | 
            +
                end
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                def post_tweet(status, media)
         | 
| 42 | 
            +
                  RestClient.post(
         | 
| 43 | 
            +
                    post_url,
         | 
| 44 | 
            +
                    {
         | 
| 45 | 
            +
                      'media[]' => media,
         | 
| 46 | 
            +
                      'status'  => status
         | 
| 47 | 
            +
                    }, Authorization: oauth_header
         | 
| 48 | 
            +
                  )
         | 
| 49 | 
            +
                end
         | 
| 50 | 
            +
             | 
| 35 51 | 
             
                def build_tweet(commit_message)
         | 
| 36 52 | 
             
                  prefix = config_with_default('prefix', '')
         | 
| 37 53 | 
             
                  suffix = " #{config_with_default('suffix', DEFAULT_SUFFIX)}"
         | 
| @@ -113,13 +129,18 @@ module Lolcommits | |
| 113 129 | 
             
                    configuration['secret']
         | 
| 114 130 | 
             
                end
         | 
| 115 131 |  | 
| 116 | 
            -
                def  | 
| 117 | 
            -
                   | 
| 118 | 
            -
             | 
| 119 | 
            -
             | 
| 120 | 
            -
             | 
| 121 | 
            -
             | 
| 122 | 
            -
                   | 
| 132 | 
            +
                def oauth_header
         | 
| 133 | 
            +
                  uri = Addressable::URI.parse(post_url)
         | 
| 134 | 
            +
                  SimpleOAuth::Header.new(:post, uri, {}, oauth_credentials)
         | 
| 135 | 
            +
                end
         | 
| 136 | 
            +
             | 
| 137 | 
            +
                def oauth_credentials
         | 
| 138 | 
            +
                  {
         | 
| 139 | 
            +
                    consumer_key: TWITTER_CONSUMER_KEY,
         | 
| 140 | 
            +
                    consumer_secret: TWITTER_CONSUMER_SECRET,
         | 
| 141 | 
            +
                    token: configuration['access_token'],
         | 
| 142 | 
            +
                    token_secret: configuration['secret']
         | 
| 143 | 
            +
                  }
         | 
| 123 144 | 
             
                end
         | 
| 124 145 |  | 
| 125 146 | 
             
                def oauth_consumer
         | 
| @@ -141,7 +162,7 @@ module Lolcommits | |
| 141 162 | 
             
                end
         | 
| 142 163 |  | 
| 143 164 | 
             
                def max_tweet_size
         | 
| 144 | 
            -
                  139 -  | 
| 165 | 
            +
                  139 - TWITTER_RESERVED_MEDIA_CHARS
         | 
| 145 166 | 
             
                end
         | 
| 146 167 |  | 
| 147 168 | 
             
                def self.name
         | 
    
        data/lib/lolcommits/version.rb
    CHANGED
    
    
    
        data/lolcommits.gemspec
    CHANGED
    
    | @@ -31,11 +31,10 @@ Gem::Specification.new do |s| | |
| 31 31 | 
             
              # hold back upgrading (and why)
         | 
| 32 32 | 
             
              s.add_development_dependency('aruba', '=0.6.2')  # upgrading requires a lot of test code changes
         | 
| 33 33 | 
             
              s.add_development_dependency('rake', '=10.5.0')  # ~> 11+ introduces lots of warnings from other deps
         | 
| 34 | 
            -
              s.add_runtime_dependency('twitter', '~> 5.17.0') # twitter 6+ requires higher faraday
         | 
| 35 34 | 
             
              s.add_runtime_dependency('net-http-persistent', '=2.9.4') # ~> 3+ requires Ruby 2.1
         | 
| 36 35 |  | 
| 37 36 | 
             
              # core
         | 
| 38 | 
            -
              s.add_runtime_dependency('methadone', '~> 1.9. | 
| 37 | 
            +
              s.add_runtime_dependency('methadone', '~> 1.9.5')
         | 
| 39 38 | 
             
              s.add_runtime_dependency('mercurial-ruby', '~> 0.7.12')
         | 
| 40 39 | 
             
              s.add_runtime_dependency('mini_magick', '~> 4.6.0')
         | 
| 41 40 | 
             
              s.add_runtime_dependency('launchy', '~> 2.4.3')
         | 
| @@ -48,13 +47,14 @@ Gem::Specification.new do |s| | |
| 48 47 | 
             
              s.add_runtime_dependency('tumblr_client', '~> 0.8.5')  # tumblr
         | 
| 49 48 |  | 
| 50 49 | 
             
              # development gems
         | 
| 51 | 
            -
              s.add_development_dependency('rdoc' | 
| 52 | 
            -
             | 
| 53 | 
            -
             | 
| 54 | 
            -
               | 
| 55 | 
            -
              s.add_development_dependency(' | 
| 56 | 
            -
              s.add_development_dependency(' | 
| 57 | 
            -
              s.add_development_dependency(' | 
| 58 | 
            -
              s.add_development_dependency(' | 
| 59 | 
            -
              s.add_development_dependency(' | 
| 50 | 
            +
              s.add_development_dependency('rdoc')
         | 
| 51 | 
            +
              s.add_development_dependency('pry')
         | 
| 52 | 
            +
             | 
| 53 | 
            +
              # testing gems (latest versions)
         | 
| 54 | 
            +
              s.add_development_dependency('rubocop')
         | 
| 55 | 
            +
              s.add_development_dependency('travis')
         | 
| 56 | 
            +
              s.add_development_dependency('minitest')
         | 
| 57 | 
            +
              s.add_development_dependency('coveralls')
         | 
| 58 | 
            +
              s.add_development_dependency('ffaker')
         | 
| 59 | 
            +
              s.add_development_dependency('cucumber')
         | 
| 60 60 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: lolcommits
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.9. | 
| 4 | 
            +
              version: 0.9.2.pre1
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Matthew Rothenberg
         | 
| @@ -9,7 +9,7 @@ authors: | |
| 9 9 | 
             
            autorequire: 
         | 
| 10 10 | 
             
            bindir: bin
         | 
| 11 11 | 
             
            cert_chain: []
         | 
| 12 | 
            -
            date:  | 
| 12 | 
            +
            date: 2017-01-03 00:00:00.000000000 Z
         | 
| 13 13 | 
             
            dependencies:
         | 
| 14 14 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 15 15 | 
             
              name: aruba
         | 
| @@ -39,20 +39,6 @@ dependencies: | |
| 39 39 | 
             
                - - '='
         | 
| 40 40 | 
             
                  - !ruby/object:Gem::Version
         | 
| 41 41 | 
             
                    version: 10.5.0
         | 
| 42 | 
            -
            - !ruby/object:Gem::Dependency
         | 
| 43 | 
            -
              name: twitter
         | 
| 44 | 
            -
              requirement: !ruby/object:Gem::Requirement
         | 
| 45 | 
            -
                requirements:
         | 
| 46 | 
            -
                - - "~>"
         | 
| 47 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 48 | 
            -
                    version: 5.17.0
         | 
| 49 | 
            -
              type: :runtime
         | 
| 50 | 
            -
              prerelease: false
         | 
| 51 | 
            -
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 52 | 
            -
                requirements:
         | 
| 53 | 
            -
                - - "~>"
         | 
| 54 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 55 | 
            -
                    version: 5.17.0
         | 
| 56 42 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 57 43 | 
             
              name: net-http-persistent
         | 
| 58 44 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -73,14 +59,14 @@ dependencies: | |
| 73 59 | 
             
                requirements:
         | 
| 74 60 | 
             
                - - "~>"
         | 
| 75 61 | 
             
                  - !ruby/object:Gem::Version
         | 
| 76 | 
            -
                    version: 1.9. | 
| 62 | 
            +
                    version: 1.9.5
         | 
| 77 63 | 
             
              type: :runtime
         | 
| 78 64 | 
             
              prerelease: false
         | 
| 79 65 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 80 66 | 
             
                requirements:
         | 
| 81 67 | 
             
                - - "~>"
         | 
| 82 68 | 
             
                  - !ruby/object:Gem::Version
         | 
| 83 | 
            -
                    version: 1.9. | 
| 69 | 
            +
                    version: 1.9.5
         | 
| 84 70 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 85 71 | 
             
              name: mercurial-ruby
         | 
| 86 72 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -197,100 +183,114 @@ dependencies: | |
| 197 183 | 
             
              name: rdoc
         | 
| 198 184 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 199 185 | 
             
                requirements:
         | 
| 200 | 
            -
                - - " | 
| 186 | 
            +
                - - ">="
         | 
| 201 187 | 
             
                  - !ruby/object:Gem::Version
         | 
| 202 | 
            -
                    version:  | 
| 188 | 
            +
                    version: '0'
         | 
| 203 189 | 
             
              type: :development
         | 
| 204 190 | 
             
              prerelease: false
         | 
| 205 191 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 206 192 | 
             
                requirements:
         | 
| 207 | 
            -
                - - " | 
| 193 | 
            +
                - - ">="
         | 
| 208 194 | 
             
                  - !ruby/object:Gem::Version
         | 
| 209 | 
            -
                    version:  | 
| 195 | 
            +
                    version: '0'
         | 
| 196 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 197 | 
            +
              name: pry
         | 
| 198 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 199 | 
            +
                requirements:
         | 
| 200 | 
            +
                - - ">="
         | 
| 201 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 202 | 
            +
                    version: '0'
         | 
| 203 | 
            +
              type: :development
         | 
| 204 | 
            +
              prerelease: false
         | 
| 205 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 206 | 
            +
                requirements:
         | 
| 207 | 
            +
                - - ">="
         | 
| 208 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 209 | 
            +
                    version: '0'
         | 
| 210 210 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 211 211 | 
             
              name: rubocop
         | 
| 212 212 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 213 213 | 
             
                requirements:
         | 
| 214 | 
            -
                - - " | 
| 214 | 
            +
                - - ">="
         | 
| 215 215 | 
             
                  - !ruby/object:Gem::Version
         | 
| 216 | 
            -
                    version: 0 | 
| 216 | 
            +
                    version: '0'
         | 
| 217 217 | 
             
              type: :development
         | 
| 218 218 | 
             
              prerelease: false
         | 
| 219 219 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 220 220 | 
             
                requirements:
         | 
| 221 | 
            -
                - - " | 
| 221 | 
            +
                - - ">="
         | 
| 222 222 | 
             
                  - !ruby/object:Gem::Version
         | 
| 223 | 
            -
                    version: 0 | 
| 223 | 
            +
                    version: '0'
         | 
| 224 224 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 225 225 | 
             
              name: travis
         | 
| 226 226 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 227 227 | 
             
                requirements:
         | 
| 228 | 
            -
                - - " | 
| 228 | 
            +
                - - ">="
         | 
| 229 229 | 
             
                  - !ruby/object:Gem::Version
         | 
| 230 | 
            -
                    version:  | 
| 230 | 
            +
                    version: '0'
         | 
| 231 231 | 
             
              type: :development
         | 
| 232 232 | 
             
              prerelease: false
         | 
| 233 233 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 234 234 | 
             
                requirements:
         | 
| 235 | 
            -
                - - " | 
| 235 | 
            +
                - - ">="
         | 
| 236 236 | 
             
                  - !ruby/object:Gem::Version
         | 
| 237 | 
            -
                    version:  | 
| 237 | 
            +
                    version: '0'
         | 
| 238 238 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 239 239 | 
             
              name: minitest
         | 
| 240 240 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 241 241 | 
             
                requirements:
         | 
| 242 | 
            -
                - - " | 
| 242 | 
            +
                - - ">="
         | 
| 243 243 | 
             
                  - !ruby/object:Gem::Version
         | 
| 244 | 
            -
                    version:  | 
| 244 | 
            +
                    version: '0'
         | 
| 245 245 | 
             
              type: :development
         | 
| 246 246 | 
             
              prerelease: false
         | 
| 247 247 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 248 248 | 
             
                requirements:
         | 
| 249 | 
            -
                - - " | 
| 249 | 
            +
                - - ">="
         | 
| 250 250 | 
             
                  - !ruby/object:Gem::Version
         | 
| 251 | 
            -
                    version:  | 
| 251 | 
            +
                    version: '0'
         | 
| 252 252 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 253 253 | 
             
              name: coveralls
         | 
| 254 254 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 255 255 | 
             
                requirements:
         | 
| 256 | 
            -
                - - " | 
| 256 | 
            +
                - - ">="
         | 
| 257 257 | 
             
                  - !ruby/object:Gem::Version
         | 
| 258 | 
            -
                    version: 0 | 
| 258 | 
            +
                    version: '0'
         | 
| 259 259 | 
             
              type: :development
         | 
| 260 260 | 
             
              prerelease: false
         | 
| 261 261 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 262 262 | 
             
                requirements:
         | 
| 263 | 
            -
                - - " | 
| 263 | 
            +
                - - ">="
         | 
| 264 264 | 
             
                  - !ruby/object:Gem::Version
         | 
| 265 | 
            -
                    version: 0 | 
| 265 | 
            +
                    version: '0'
         | 
| 266 266 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 267 267 | 
             
              name: ffaker
         | 
| 268 268 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 269 269 | 
             
                requirements:
         | 
| 270 | 
            -
                - - " | 
| 270 | 
            +
                - - ">="
         | 
| 271 271 | 
             
                  - !ruby/object:Gem::Version
         | 
| 272 | 
            -
                    version:  | 
| 272 | 
            +
                    version: '0'
         | 
| 273 273 | 
             
              type: :development
         | 
| 274 274 | 
             
              prerelease: false
         | 
| 275 275 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 276 276 | 
             
                requirements:
         | 
| 277 | 
            -
                - - " | 
| 277 | 
            +
                - - ">="
         | 
| 278 278 | 
             
                  - !ruby/object:Gem::Version
         | 
| 279 | 
            -
                    version:  | 
| 279 | 
            +
                    version: '0'
         | 
| 280 280 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 281 281 | 
             
              name: cucumber
         | 
| 282 282 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 283 283 | 
             
                requirements:
         | 
| 284 | 
            -
                - - " | 
| 284 | 
            +
                - - ">="
         | 
| 285 285 | 
             
                  - !ruby/object:Gem::Version
         | 
| 286 | 
            -
                    version:  | 
| 286 | 
            +
                    version: '0'
         | 
| 287 287 | 
             
              type: :development
         | 
| 288 288 | 
             
              prerelease: false
         | 
| 289 289 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 290 290 | 
             
                requirements:
         | 
| 291 | 
            -
                - - " | 
| 291 | 
            +
                - - ">="
         | 
| 292 292 | 
             
                  - !ruby/object:Gem::Version
         | 
| 293 | 
            -
                    version:  | 
| 293 | 
            +
                    version: '0'
         | 
| 294 294 | 
             
            description: |2
         | 
| 295 295 | 
             
                lolcommits takes a snapshot with your webcam every time you git commit code,
         | 
| 296 296 | 
             
                and archives a lolcat style image with it. It's selfies for software
         | 
| @@ -395,9 +395,9 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 395 395 | 
             
                  version: '2.0'
         | 
| 396 396 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 397 397 | 
             
              requirements:
         | 
| 398 | 
            -
              - - " | 
| 398 | 
            +
              - - ">"
         | 
| 399 399 | 
             
                - !ruby/object:Gem::Version
         | 
| 400 | 
            -
                  version:  | 
| 400 | 
            +
                  version: 1.3.1
         | 
| 401 401 | 
             
            requirements:
         | 
| 402 402 | 
             
            - imagemagick
         | 
| 403 403 | 
             
            - a webcam
         |