lolcommits 0.6.1 → 0.6.2.pre1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/.travis.yml +2 -1
- data/CHANGELOG.md +5 -0
- data/Rakefile +1 -1
- data/bin/lolcommits +2 -3
- data/features/bugs.feature +0 -10
- data/features/step_definitions/lolcommits_steps.rb +1 -1
- data/features/support/path_helpers.rb +1 -1
- data/lib/lolcommits/capturer/capture_linux_animated.rb +1 -1
- data/lib/lolcommits/capturer/capture_mac_animated.rb +5 -4
- data/lib/lolcommits/cli/timelapse_gif.rb +1 -1
- data/lib/lolcommits/configuration.rb +2 -2
- data/lib/lolcommits/installation.rb +2 -0
- data/lib/lolcommits/platform.rb +1 -1
- data/lib/lolcommits/plugins/dot_com.rb +1 -1
- data/lib/lolcommits/plugins/lol_slack.rb +1 -1
- data/lib/lolcommits/plugins/lol_tumblr.rb +5 -8
- data/lib/lolcommits/plugins/lol_twitter.rb +6 -13
- data/lib/lolcommits/plugins/lol_yammer.rb +7 -10
- data/lib/lolcommits/plugins/tranzlate.rb +1 -2
- data/lib/lolcommits/plugins/uploldz.rb +8 -6
- data/lib/lolcommits/runner.rb +0 -12
- data/lib/lolcommits/version.rb +1 -1
- data/lolcommits.gemspec +9 -7
- metadata +34 -6
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MTRkY2JjMDgwMmZlYzczM2VlOTRlOGU2NDdiYmQwMjJjNGVhYmI1OA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NDQ5NmEzMTk2NDhiNWM0OTVkZDk4MGFmZTQ5M2MxNDVlMDhiYjU3ZA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NmQwY2I1OTQ1MGVkZjVkZTU3YWY2YjRiNWJmNmZjOWQxYjY4NjhlMDJjOTBj
|
10
|
+
ZTRhMjdlMTVlMTFhNjY0MjdhMjQ3YTQ5ODU1MjQ3ZmRmYjZiNGU2NjUwZWNi
|
11
|
+
ODViNjgwYzI2ZDI0OGZjNjY5M2QxNjc2MGM4ZWQyYzBkZTAxMGE=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MWE3Y2JmMGI1MGFmZWI2OTM4MWY0YzlmMWYwZmE1NTUzNzMyZjg1Y2FiNGE4
|
14
|
+
MTliZTg4MzIzYjE2NjI1NjQ4MmJlYWFiOTNmMmI0ZjA5NzgzNDU0MDBlZTky
|
15
|
+
YTEyNzVhYmI3NGNmYTE2MWZiYTg3MjY5NDU2MWE2M2NjMTZhZDE=
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,11 @@
|
|
3
3
|
0.7.0 (WIP)
|
4
4
|
* extract plugins to seperate gems ...
|
5
5
|
|
6
|
+
0.6.2 (21 February 2016)
|
7
|
+
* Avoid invoking ruby if in a rebase (@jhawthorn #286)
|
8
|
+
* Slow gif problem on mac (@a06kin #289)
|
9
|
+
* Peg RuboCop gem to 0.37.2 and fix cop issues (@matthutchinson #292)
|
10
|
+
|
6
11
|
0.6.1 (16 September 2015)
|
7
12
|
* Optional http auth header user/password in uploldz plugin (@felixroos #283)
|
8
13
|
* Slack plugin added (@yasakbulut #284)
|
data/Rakefile
CHANGED
@@ -32,7 +32,7 @@ Rake::TestTask.new do |t|
|
|
32
32
|
end
|
33
33
|
|
34
34
|
Rake::FileUtilsExt.verbose(false)
|
35
|
-
CUKE_RESULTS = 'results.html'
|
35
|
+
CUKE_RESULTS = 'results.html'.freeze
|
36
36
|
CLEAN << CUKE_RESULTS
|
37
37
|
Cucumber::Rake::Task.new(:features) do |t|
|
38
38
|
optstr = "features --format html -o #{CUKE_RESULTS} --format Fivemat -x"
|
data/bin/lolcommits
CHANGED
@@ -95,7 +95,7 @@ def do_capture
|
|
95
95
|
}
|
96
96
|
|
97
97
|
# fire off runner with the overriden fake commit metadata
|
98
|
-
runner = Lolcommits::Runner.new(capture_options.merge
|
98
|
+
runner = Lolcommits::Runner.new(capture_options.merge(override_text))
|
99
99
|
runner.run
|
100
100
|
|
101
101
|
# automatically open so user can see the test image results immediately
|
@@ -322,8 +322,7 @@ elsif Choice.choices[:plugins]
|
|
322
322
|
configuration.puts_plugins
|
323
323
|
elsif Choice.choices[:devices]
|
324
324
|
puts Platform.device_list
|
325
|
-
puts
|
326
|
-
'or set the LOLCOMMITS_DEVICE env variable'
|
325
|
+
puts 'Specify a device with --device="{device name}" or set the LOLCOMMITS_DEVICE env variable'
|
327
326
|
elsif Choice.choices[:last]
|
328
327
|
do_last
|
329
328
|
elsif Choice.choices[:browse]
|
data/features/bugs.feature
CHANGED
@@ -26,16 +26,6 @@ Feature: Bug regression testing
|
|
26
26
|
# Then there should be 4 commit entries in the git log
|
27
27
|
Then there should be exactly 6 jpgs in "../.lolcommits/yuh8history"
|
28
28
|
|
29
|
-
#
|
30
|
-
# issue #80, https://github.com/mroth/lolcommits/issues/80
|
31
|
-
#
|
32
|
-
Scenario: don't warn about system_timer (on MRI 1.8.7)
|
33
|
-
When I successfully run `lolcommits`
|
34
|
-
Then the output should not contain:
|
35
|
-
"""
|
36
|
-
Faraday: you may want to install system_timer for reliable timeouts
|
37
|
-
"""
|
38
|
-
|
39
29
|
#
|
40
30
|
# issue #81, https://github.com/mroth/lolcommits/issues/81
|
41
31
|
#
|
@@ -88,7 +88,7 @@ Given(/^a loldir named "(.*?)" with (\d+) lolimages$/) do |repo, num_images|
|
|
88
88
|
loldir = absolute_path("~/.lolcommits/#{repo}")
|
89
89
|
FileUtils.mkdir_p loldir
|
90
90
|
num_images.to_i.times do
|
91
|
-
hex =
|
91
|
+
hex = format('%011x', (rand * 0xfffffffffff)).to_s
|
92
92
|
FileUtils.cp 'test/images/test_image.jpg', File.join(loldir, "#{hex}.jpg")
|
93
93
|
end
|
94
94
|
end
|
@@ -6,7 +6,7 @@ require 'lolcommits/platform'
|
|
6
6
|
module PathHelpers
|
7
7
|
def reject_paths_with_cmd(cmd)
|
8
8
|
# make a new subdir that still contains cmds
|
9
|
-
tmpbindir = File.expand_path(File.join
|
9
|
+
tmpbindir = File.expand_path(File.join(@dirs, 'bin'))
|
10
10
|
FileUtils.mkdir_p tmpbindir
|
11
11
|
|
12
12
|
preseve_cmds_in_path(%w(git mplayer), tmpbindir)
|
@@ -9,14 +9,15 @@ module Lolcommits
|
|
9
9
|
# capture the raw video with videosnap
|
10
10
|
system_call "#{executable_path} -s 240 #{capture_device_string}#{capture_delay_string}-t #{animated_duration} --no-audio #{video_location} > /dev/null"
|
11
11
|
return unless File.exist?(video_location)
|
12
|
+
# get fps for ffmpeg output stream configuration
|
13
|
+
fps = video_fps(video_location)
|
12
14
|
# convert raw video to png frames with ffmpeg
|
13
|
-
system_call "ffmpeg -v quiet -i #{video_location} -t #{animated_duration} #{frames_location}/%09d.png"
|
15
|
+
system_call "ffmpeg -v quiet -i #{video_location} -t #{animated_duration} -r #{fps} #{frames_location}/%09d.png"
|
14
16
|
|
15
17
|
# use fps to set delay and number of frames to skip (for lower filesized gifs)
|
16
|
-
fps = video_fps(video_location)
|
17
18
|
skip = frame_skip(fps)
|
18
19
|
delay = frame_delay(fps, skip)
|
19
|
-
debug "Capturer:
|
20
|
+
debug "Capturer: animated gif choosing every #{skip} frames with a frame delay of #{delay}"
|
20
21
|
|
21
22
|
# create the looping animated gif from frames (picks nth frame with seq)
|
22
23
|
seq_command = "seq -f #{frames_location}/%09g.png 1 #{skip} #{Dir["#{frames_location}/*"].length}"
|
@@ -49,7 +50,7 @@ module Lolcommits
|
|
49
50
|
|
50
51
|
def frame_skip(fps)
|
51
52
|
# of frames to skip depends on movie fps
|
52
|
-
case
|
53
|
+
case fps
|
53
54
|
when 0..15
|
54
55
|
2
|
55
56
|
when 16..28
|
@@ -36,7 +36,7 @@ module Lolcommits
|
|
36
36
|
gif = MiniMagick::Image.new File.join @configuration.archivedir, filename
|
37
37
|
|
38
38
|
# This is for ruby 1.8.7, *lolimages just doesn't work with ruby 187
|
39
|
-
gif.run_command('convert', *['-delay', '50', '-loop', '0', lolimages,
|
39
|
+
gif.run_command('convert', *['-delay', '50', '-loop', '0', lolimages, gif.path.to_s].flatten)
|
40
40
|
|
41
41
|
puts "*** #{gif.path} generated."
|
42
42
|
end
|
@@ -35,11 +35,11 @@ module Lolcommits
|
|
35
35
|
end
|
36
36
|
|
37
37
|
def most_recent
|
38
|
-
Dir.glob(File.join
|
38
|
+
Dir.glob(File.join(loldir, '*.{jpg,gif}')).max_by { |f| File.mtime(f) }
|
39
39
|
end
|
40
40
|
|
41
41
|
def jpg_images
|
42
|
-
Dir.glob(File.join
|
42
|
+
Dir.glob(File.join(loldir, '*.jpg')).sort_by { |f| File.mtime(f) }
|
43
43
|
end
|
44
44
|
|
45
45
|
def jpg_images_today
|
data/lib/lolcommits/platform.rb
CHANGED
@@ -7,9 +7,9 @@ require 'tumblr_client'
|
|
7
7
|
|
8
8
|
module Lolcommits
|
9
9
|
class LolTumblr < Plugin
|
10
|
-
TUMBLR_API_ENDPOINT = 'https://www.tumblr.com'
|
11
|
-
TUMBLR_CONSUMER_KEY = '2FtMEDpEPkxjoUdkpHh42h9wqTu9IVS7Ra0QyNZGixdCvhllN2'
|
12
|
-
TUMBLR_CONSUMER_SECRET = 'qWuvxgFUR2YyWKtbWOkDTMAiBEbj7ZGaNLaNQPba0PI1N4JpBs'
|
10
|
+
TUMBLR_API_ENDPOINT = 'https://www.tumblr.com'.freeze
|
11
|
+
TUMBLR_CONSUMER_KEY = '2FtMEDpEPkxjoUdkpHh42h9wqTu9IVS7Ra0QyNZGixdCvhllN2'.freeze
|
12
|
+
TUMBLR_CONSUMER_SECRET = 'qWuvxgFUR2YyWKtbWOkDTMAiBEbj7ZGaNLaNQPba0PI1N4JpBs'.freeze
|
13
13
|
|
14
14
|
def run_postcapture
|
15
15
|
return unless valid_configuration?
|
@@ -29,11 +29,8 @@ module Lolcommits
|
|
29
29
|
# ask user to configure tokens if enabling
|
30
30
|
if options['enabled']
|
31
31
|
auth_config = configure_auth!
|
32
|
-
|
33
|
-
|
34
|
-
else
|
35
|
-
return # return nil if configure_auth failed
|
36
|
-
end
|
32
|
+
return unless auth_config
|
33
|
+
options = options.merge(auth_config).merge(configure_tumblr_name)
|
37
34
|
end
|
38
35
|
options
|
39
36
|
end
|
@@ -1,20 +1,16 @@
|
|
1
1
|
# -*- encoding : utf-8 -*-
|
2
2
|
require 'yaml'
|
3
3
|
require 'oauth'
|
4
|
-
|
5
|
-
# twitter gem currently spams stdout when activated, surpress warnings just during the inital require
|
6
|
-
original_verbose, $VERBOSE = $VERBOSE, nil # Supress warning messages.
|
7
4
|
require 'twitter'
|
8
|
-
$VERBOSE = original_verbose # activate warning messages again.
|
9
5
|
|
10
6
|
module Lolcommits
|
11
7
|
class LolTwitter < Plugin
|
12
|
-
TWITTER_API_ENDPOINT = 'https://api.twitter.com'
|
13
|
-
TWITTER_CONSUMER_KEY = 'qc096dJJCxIiqDNUqEsqQ'
|
14
|
-
TWITTER_CONSUMER_SECRET = 'rvjNdtwSr1H0TvBvjpk6c4bvrNydHmmbvv7gXZQI'
|
8
|
+
TWITTER_API_ENDPOINT = 'https://api.twitter.com'.freeze
|
9
|
+
TWITTER_CONSUMER_KEY = 'qc096dJJCxIiqDNUqEsqQ'.freeze
|
10
|
+
TWITTER_CONSUMER_SECRET = 'rvjNdtwSr1H0TvBvjpk6c4bvrNydHmmbvv7gXZQI'.freeze
|
15
11
|
TWITTER_RETRIES = 2
|
16
12
|
TWITTER_PIN_REGEX = /^\d{4,}$/ # 4 or more digits
|
17
|
-
DEFAULT_SUFFIX = '#lolcommits'
|
13
|
+
DEFAULT_SUFFIX = '#lolcommits'.freeze
|
18
14
|
|
19
15
|
def run_postcapture
|
20
16
|
return unless valid_configuration?
|
@@ -54,11 +50,8 @@ module Lolcommits
|
|
54
50
|
# ask user to configure tokens if enabling
|
55
51
|
if options['enabled']
|
56
52
|
auth_config = configure_auth!
|
57
|
-
|
58
|
-
|
59
|
-
else
|
60
|
-
return # return nil if configure_auth failed
|
61
|
-
end
|
53
|
+
return unless auth_config
|
54
|
+
options = options.merge(auth_config).merge(configure_prefix_suffix)
|
62
55
|
end
|
63
56
|
options
|
64
57
|
end
|
@@ -3,9 +3,9 @@ require 'yammer'
|
|
3
3
|
require 'rest_client'
|
4
4
|
|
5
5
|
# https://developer.yammer.com/oauth2-quickstart/
|
6
|
-
YAMMER_CLIENT_ID = 'bgORyeKtnjZJSMwp8oln9g'
|
7
|
-
YAMMER_CLIENT_SECRET = 'oer2WdGzh74a5QBbW3INUxblHK3yg9KvCZmiBa2r0'
|
8
|
-
YAMMER_ACCESS_TOKEN_URL = 'https://www.yammer.com/oauth2/access_token.json'
|
6
|
+
YAMMER_CLIENT_ID = 'bgORyeKtnjZJSMwp8oln9g'.freeze
|
7
|
+
YAMMER_CLIENT_SECRET = 'oer2WdGzh74a5QBbW3INUxblHK3yg9KvCZmiBa2r0'.freeze
|
8
|
+
YAMMER_ACCESS_TOKEN_URL = 'https://www.yammer.com/oauth2/access_token.json'.freeze
|
9
9
|
YAMMER_RETRY_COUNT = 2
|
10
10
|
|
11
11
|
module Lolcommits
|
@@ -28,7 +28,7 @@ module Lolcommits
|
|
28
28
|
print 'Enter code param from the redirected URL, then press enter: '
|
29
29
|
code = STDIN.gets.to_s.strip
|
30
30
|
|
31
|
-
url =
|
31
|
+
url = YAMMER_ACCESS_TOKEN_URL
|
32
32
|
debug "access_token url: #{url}"
|
33
33
|
params = {
|
34
34
|
'client_id' => YAMMER_CLIENT_ID,
|
@@ -47,11 +47,8 @@ module Lolcommits
|
|
47
47
|
# ask user to configure tokens if enabling
|
48
48
|
if options['enabled']
|
49
49
|
auth_config = configure_access_token
|
50
|
-
|
51
|
-
|
52
|
-
else
|
53
|
-
return # return nil if configure_auth failed
|
54
|
-
end
|
50
|
+
return unless auth_config
|
51
|
+
options.merge!(auth_config)
|
55
52
|
end
|
56
53
|
options
|
57
54
|
end
|
@@ -75,7 +72,7 @@ module Lolcommits
|
|
75
72
|
lolimage = File.new(runner.main_image)
|
76
73
|
response = client.create_message(post, :attachment1 => lolimage)
|
77
74
|
debug response.body.inspect
|
78
|
-
puts "\t--> Status posted!"
|
75
|
+
puts "\t--> Status posted!" if response
|
79
76
|
rescue => e
|
80
77
|
retries -= 1
|
81
78
|
retry if retries > 0
|
@@ -27,7 +27,6 @@ module Lolspeak
|
|
27
27
|
/want/ => %w(wants),
|
28
28
|
/ead\b/ => %w(edd),
|
29
29
|
/ck/ => %w(kk kkk),
|
30
|
-
/sion/ => %w(shun),
|
31
30
|
/cat|kitten|kitty/ => %w(kitteh kittehz cat fuzzeh fuzzyrumpus foozles fuzzbut fluffernutter beast mew),
|
32
31
|
/eak/ => %w(ekk),
|
33
32
|
/age/ => %w(uj),
|
@@ -79,7 +78,7 @@ module Lolspeak
|
|
79
78
|
/can\si\s(?:ple(?:a|e)(?:s|z)e?)?\s?have\sa/ => ['i can haz'],
|
80
79
|
/(?:hello|\bhi\b|\bhey\b|howdy|\byo\b),?/ => ['oh hai,'],
|
81
80
|
/(?:god\b|allah|buddah?|diety|lord)/ => ['ceiling cat']
|
82
|
-
}
|
81
|
+
}.freeze
|
83
82
|
|
84
83
|
def tranzlate(str)
|
85
84
|
lolstr = str.dup
|
@@ -8,12 +8,14 @@ module Lolcommits
|
|
8
8
|
|
9
9
|
def initialize(runner)
|
10
10
|
super
|
11
|
-
options.concat(
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
11
|
+
options.concat(
|
12
|
+
%w(
|
13
|
+
endpoint
|
14
|
+
optional_key
|
15
|
+
optional_http_auth_username
|
16
|
+
optional_http_auth_password
|
17
|
+
)
|
18
|
+
)
|
17
19
|
end
|
18
20
|
|
19
21
|
def run_postcapture
|
data/lib/lolcommits/runner.rb
CHANGED
@@ -24,9 +24,6 @@ module Lolcommits
|
|
24
24
|
# this used to be handled with ActiveSupport::Callbacks, but
|
25
25
|
# now we're just using a simple procedural list
|
26
26
|
def run
|
27
|
-
# abort if we are in a rebase
|
28
|
-
die_if_rebasing!
|
29
|
-
|
30
27
|
# do things that need to happen before capture and plugins
|
31
28
|
|
32
29
|
# do native plugins that need to happen before capture
|
@@ -110,15 +107,6 @@ module Lolcommits
|
|
110
107
|
|
111
108
|
protected
|
112
109
|
|
113
|
-
def die_if_rebasing!
|
114
|
-
debug "Runner: Making sure user isn't rebasing"
|
115
|
-
return unless git_info && !git_info.repo_internal_path.nil?
|
116
|
-
mergeclue = File.join git_info.repo_internal_path, 'rebase-merge'
|
117
|
-
return unless File.directory? mergeclue
|
118
|
-
debug 'Runner: Rebase detected, silently exiting!'
|
119
|
-
exit 0
|
120
|
-
end
|
121
|
-
|
122
110
|
def resize_snapshot!
|
123
111
|
debug 'Runner: resizing snapshot'
|
124
112
|
image = MiniMagick::Image.open(snapshot_loc)
|
data/lib/lolcommits/version.rb
CHANGED
data/lolcommits.gemspec
CHANGED
@@ -28,12 +28,14 @@ Gem::Specification.new do |s|
|
|
28
28
|
s.requirements << 'a webcam'
|
29
29
|
|
30
30
|
# hold back upgrading (and why)
|
31
|
-
s.add_runtime_dependency('rest-client', '~> 1.6.7')
|
32
|
-
s.add_runtime_dependency('mini_magick', '~> 3.8.1')
|
33
|
-
s.add_runtime_dependency('mime-types', '~> 1.25')
|
34
|
-
s.add_runtime_dependency('httparty', '~> 0.11.0')
|
35
|
-
s.add_runtime_dependency('git', '=1.2.8')
|
36
|
-
s.add_development_dependency('cucumber', '=1.3.19')
|
31
|
+
s.add_runtime_dependency('rest-client', '~> 1.6.7') # yam gem requires uses this older version
|
32
|
+
s.add_runtime_dependency('mini_magick', '~> 3.8.1') # ~> 4+ fails with JRuby
|
33
|
+
s.add_runtime_dependency('mime-types', '~> 1.25') # ~> 2+ requires Ruby >= 1.9.2
|
34
|
+
s.add_runtime_dependency('httparty', '~> 0.11.0') # ~> 0.13+ requires Ruby >= 1.9.3
|
35
|
+
s.add_runtime_dependency('git', '=1.2.8') # ~> 1.2.9 has issues with Ruby 1.8.7
|
36
|
+
s.add_development_dependency('cucumber', '=1.3.19') # ~> 2+ requries Ruby >= 1.9.3
|
37
|
+
s.add_development_dependency('tins', '=1.6.0') # ~> 1.6+ requries Ruby >= 2.0
|
38
|
+
s.add_development_dependency('addressable', '=2.3.8') # ~> 2.3+ requries Ruby >= 2.0
|
37
39
|
|
38
40
|
# core
|
39
41
|
s.add_runtime_dependency('choice', '~> 0.1.6')
|
@@ -60,6 +62,6 @@ Gem::Specification.new do |s|
|
|
60
62
|
|
61
63
|
if RUBY_VERSION >= '1.9.3'
|
62
64
|
s.add_development_dependency('travis', '~> 1.7.4')
|
63
|
-
s.add_development_dependency('rubocop', '~> 0.
|
65
|
+
s.add_development_dependency('rubocop', '~> 0.37.2')
|
64
66
|
end
|
65
67
|
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.6.
|
4
|
+
version: 0.6.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: 2016-02-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rest-client
|
@@ -95,6 +95,34 @@ dependencies:
|
|
95
95
|
- - '='
|
96
96
|
- !ruby/object:Gem::Version
|
97
97
|
version: 1.3.19
|
98
|
+
- !ruby/object:Gem::Dependency
|
99
|
+
name: tins
|
100
|
+
requirement: !ruby/object:Gem::Requirement
|
101
|
+
requirements:
|
102
|
+
- - '='
|
103
|
+
- !ruby/object:Gem::Version
|
104
|
+
version: 1.6.0
|
105
|
+
type: :development
|
106
|
+
prerelease: false
|
107
|
+
version_requirements: !ruby/object:Gem::Requirement
|
108
|
+
requirements:
|
109
|
+
- - '='
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: 1.6.0
|
112
|
+
- !ruby/object:Gem::Dependency
|
113
|
+
name: addressable
|
114
|
+
requirement: !ruby/object:Gem::Requirement
|
115
|
+
requirements:
|
116
|
+
- - '='
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
version: 2.3.8
|
119
|
+
type: :development
|
120
|
+
prerelease: false
|
121
|
+
version_requirements: !ruby/object:Gem::Requirement
|
122
|
+
requirements:
|
123
|
+
- - '='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: 2.3.8
|
98
126
|
- !ruby/object:Gem::Dependency
|
99
127
|
name: choice
|
100
128
|
requirement: !ruby/object:Gem::Requirement
|
@@ -353,14 +381,14 @@ dependencies:
|
|
353
381
|
requirements:
|
354
382
|
- - ~>
|
355
383
|
- !ruby/object:Gem::Version
|
356
|
-
version:
|
384
|
+
version: 0.37.2
|
357
385
|
type: :development
|
358
386
|
prerelease: false
|
359
387
|
version_requirements: !ruby/object:Gem::Requirement
|
360
388
|
requirements:
|
361
389
|
- - ~>
|
362
390
|
- !ruby/object:Gem::Version
|
363
|
-
version:
|
391
|
+
version: 0.37.2
|
364
392
|
description: ! " lolcommits takes a snapshot with your webcam every time you git
|
365
393
|
commit code,\n and archives a lolcat style image with it. It's selfies for software\n
|
366
394
|
\ developers. `git blame` has never been so much fun.\n"
|
@@ -452,9 +480,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
452
480
|
version: 1.8.7
|
453
481
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
454
482
|
requirements:
|
455
|
-
- - ! '
|
483
|
+
- - ! '>'
|
456
484
|
- !ruby/object:Gem::Version
|
457
|
-
version:
|
485
|
+
version: 1.3.1
|
458
486
|
requirements:
|
459
487
|
- imagemagick
|
460
488
|
- a webcam
|