imba 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: bd680e374b7adf954363d9a63828cc7b638dee0c
4
+ data.tar.gz: 7f49bcb6f01f8430670b1461967a28474824c846
5
+ SHA512:
6
+ metadata.gz: 6696504a63e52038ad7b7877afd0a4f9da24f1e28c9d1b8ab69fd2c2828028cee9240a289cd03f61ee4a6d0f9dc90c12bc5c2f408041dd331e617d71d53a728a
7
+ data.tar.gz: aba298d79aa8d819122eed1d61e4e6a0c13359825938ee90150bea59320706124eb64ae09f86e030c85e20b710d5cda40787fc5e868b1d60d9ed58b28ddbcabf
@@ -0,0 +1,18 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
18
+ .imba/*
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --require rspec/pride
2
+ --format RSpec::Pride
@@ -0,0 +1,73 @@
1
+ AllCops:
2
+ Includes:
3
+ - '../**/*.rake'
4
+ - 'Gemfile'
5
+ - 'Rakefile'
6
+ Excludes:
7
+ - 'Guardfile'
8
+ - 'tmp/**/*'
9
+ - 'spec/spec_helper.rb'
10
+ - '.imba/**/*'
11
+
12
+ ParameterLists:
13
+ Max: 3
14
+ CountKeywordArgs: true
15
+
16
+ BlockNesting:
17
+ Max: 3
18
+
19
+ HashSyntax:
20
+ Enabled: true
21
+
22
+ StringLiterals:
23
+ Enabled: true
24
+
25
+ Void:
26
+ Enabled: true
27
+
28
+ LineLength:
29
+ Enabled: true
30
+ Max: 120
31
+
32
+ SpaceInsideHashLiteralBraces:
33
+ Enabled: true
34
+
35
+ AlignParameters:
36
+ Enabled: true
37
+
38
+ Blocks:
39
+ Enabled: false
40
+
41
+ NumericLiterals:
42
+ Enabled: true
43
+
44
+ SpaceInsideBrackets:
45
+ Enabled: true
46
+
47
+ WordArray:
48
+ Enabled: true
49
+
50
+ Lambda:
51
+ Enabled: true
52
+
53
+ RegexpLiteral:
54
+ Enabled: true
55
+
56
+ ConstantName:
57
+ Enabled: false
58
+
59
+ TrivialAccessors:
60
+ Enabled: true
61
+ ExactNameMatch: true
62
+
63
+ Alias:
64
+ Enabled: true
65
+
66
+ Loop:
67
+ Enabled: true
68
+
69
+ AndOr:
70
+ Enabled: false
71
+
72
+ Documentation:
73
+ Enabled: false
@@ -0,0 +1,6 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.0.0-p195
4
+ before_install:
5
+ - sudo apt-get update -qq
6
+ - sudo apt-get install -qq libavahi-compat-libdnssd-dev || /bin/true
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in imba.gemspec
4
+ gemspec
@@ -0,0 +1,6 @@
1
+ guard :rspec do
2
+ watch(%r{^spec/.+_spec\.rb$})
3
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
4
+ watch('spec/spec_helper.rb') { "spec" }
5
+ end
6
+
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 Marco Schaden
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,42 @@
1
+ # Imba
2
+
3
+ [![Build Status](https://travis-ci.org/DonSchado/imba.png?branch=master)](https://travis-ci.org/DonSchado/imba)
4
+ [![Code Climate](https://codeclimate.com/github/DonSchado/imba.png)](https://codeclimate.com/github/DonSchado/imba)
5
+
6
+ ## Todo:
7
+
8
+ - [x] init .imba-store
9
+ - [x] persistence datastore
10
+ - [x] sync: get current directory list (movie names)
11
+ - [ ] rescue ".imba does not exist (PStore::Error)"
12
+ - [ ] place names in queue w/o .imba-meta
13
+ - [ ] pop movie and search imdb
14
+ - [ ] get first item
15
+ - [x] ask for updating movie
16
+ - [x] rename file
17
+ - [ ] place .imba-meta file with id, title, genre, rating, year
18
+ - [ ] write .imba-meta into imba-store
19
+ - [ ] list movies by rating | genre | etc
20
+ - [ ] print imba-store
21
+ - [ ] play movie # on ATV
22
+ - [ ] maybe document code with yard
23
+
24
+
25
+ ## Installation
26
+
27
+ $ gem install imba
28
+
29
+ $ imba --init
30
+
31
+
32
+ ## Usage
33
+
34
+ TODO: Write usage instructions here
35
+
36
+ ## Contributing
37
+
38
+ 1. Fork it
39
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
40
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
41
+ 4. Push to the branch (`git push origin my-new-feature`)
42
+ 5. Create new Pull Request
@@ -0,0 +1,12 @@
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task default: :check
7
+
8
+ desc 'check all the things before you commit'
9
+ task check: :spec do
10
+ system 'rubocop'
11
+ system 'flog lib'
12
+ end
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+ require 'imba'
3
+ require 'imba/cli'
4
+
5
+ Imba::Cli.execute(STDOUT, ARGV)
@@ -0,0 +1,34 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'imba/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'imba'
8
+ spec.version = Imba::VERSION
9
+ spec.authors = ['Marco Schaden']
10
+ spec.email = ['ms@donschado.de']
11
+ spec.summary = %q{Imba is a command-line application to manage movies.}
12
+ spec.description = %q{With Imba you can manage your movies by meta information (like rating, genre, year) from IMDB.}
13
+ spec.homepage = 'https://github.com/donschado/imba'
14
+ spec.license = 'MIT'
15
+
16
+ spec.files = `git ls-files`.split($/)
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ['lib']
20
+ spec.required_ruby_version = '>= 1.9.3'
21
+
22
+ spec.add_development_dependency 'bundler', '~> 1.5'
23
+ spec.add_development_dependency 'rake'
24
+ spec.add_development_dependency 'rspec', '~> 2.14.1'
25
+ spec.add_development_dependency 'rspec-pride', '~> 2.2.0'
26
+ spec.add_development_dependency 'guard-rspec', '~> 4.2.3'
27
+ spec.add_development_dependency 'pry', '~> 0.9.12.4'
28
+ spec.add_development_dependency 'pry-rescue', '~> 1.2.0'
29
+ spec.add_development_dependency 'pry-stack_explorer', '~> 0.4.9.1'
30
+ spec.add_development_dependency 'rubocop'
31
+ spec.add_development_dependency 'flog'
32
+
33
+ spec.add_runtime_dependency 'imdb', '~> 0.8.0'
34
+ end
@@ -0,0 +1,12 @@
1
+ require 'imba/version'
2
+ require 'imba/cli'
3
+ require 'imba/colors'
4
+ require 'imba/data_store'
5
+ require 'imba/movie'
6
+ require 'imba/movie_list'
7
+ require 'imdb'
8
+
9
+ module Imba
10
+ PATH ||= Dir.pwd
11
+ DIRECTORY = "#{PATH}/.imba"
12
+ end
@@ -0,0 +1,51 @@
1
+ require 'optparse'
2
+
3
+ module Imba
4
+ class Cli
5
+ EXECUTABLE = File.basename($PROGRAM_NAME)
6
+
7
+ def self.execute(stdout, argv)
8
+ option_parser = OptionParser.new do |opts|
9
+ opts.banner = "Usage: #{EXECUTABLE} command [arguments...] [options...]"
10
+
11
+ opts.on('--init', 'Initialize imba data store in current directory') do
12
+ if File.directory?('.imba')
13
+ stdout.puts 'here is already an .imba directory'
14
+ else
15
+ "#{PATH}/.imba".tap { |dir| FileUtils.mkdir_p(dir) }
16
+ Imba::DataStore.init
17
+ end
18
+ exit
19
+ end
20
+
21
+ opts.on('--destroy', 'Remove all .imba files and data store from current directory') do
22
+ if File.directory?('.imba')
23
+ # TODO: dangerous stuff...
24
+ FileUtils.rm_rf(Imba::DIRECTORY)
25
+ else
26
+ stdout.puts 'nothing to destroy here'
27
+ end
28
+ exit
29
+ end
30
+
31
+ opts.on('-v', '--version', 'Show current version') do
32
+ stdout.puts "IMBA #{Imba::VERSION}"
33
+ exit
34
+ end
35
+
36
+ opts.on('-h', '--help', 'Display this screen') do
37
+ stdout.puts opts
38
+ exit
39
+ end
40
+
41
+ opts.on('-e', 'execute raw ruby in the "Imba::*" scope') do
42
+ stdout.puts eval("Imba::#{argv[0]}")
43
+ exit
44
+ end
45
+ end
46
+
47
+ option_parser.parse!
48
+ stdout.puts option_parser.help if argv.empty?
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,20 @@
1
+ module Colors
2
+ def colorize(text, color_code)
3
+ "\033[#{color_code}m#{text}\033[0m"
4
+ end
5
+
6
+ {
7
+ black: 30,
8
+ red: 31,
9
+ green: 32,
10
+ yellow: 33,
11
+ blue: 34,
12
+ magenta: 35,
13
+ cyan: 36,
14
+ white: 37
15
+ }.each do |key, color_code|
16
+ define_method key do |text|
17
+ colorize(text, color_code)
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,82 @@
1
+ require 'pstore'
2
+
3
+ module Imba
4
+ module DataStore
5
+ class << self
6
+ attr_reader :data
7
+ attr_writer :path
8
+
9
+ def init
10
+ @data = PStore.new(path, true)
11
+ @data.ultra_safe = true
12
+ @data.transaction { @data.commit }
13
+ @data
14
+ end
15
+
16
+ def path
17
+ @path ||= "#{Imba::DIRECTORY}/data.pstore"
18
+ end
19
+
20
+ def data_store
21
+ data || init
22
+ end
23
+
24
+ def [](key)
25
+ data_store.transaction(true) { @data[key] }
26
+ end
27
+
28
+ def []=(key, value)
29
+ data_store.transaction { @data[key] = value }
30
+ end
31
+
32
+ def all
33
+ data_store.transaction(true) { @data.roots }
34
+ end
35
+
36
+ def to_hash
37
+ Imba::DataStore.all.each_with_object({}) { |id, hsh| hsh[id] = Imba::DataStore[id] }
38
+ end
39
+
40
+ def to_a
41
+ Imba::DataStore.all.each_with_object([]) { |id, ary| ary << "#{id}: #{Imba::DataStore[id]}" }
42
+ end
43
+
44
+ def transaction
45
+ data_store.transaction do
46
+ yield @data
47
+ @data.commit
48
+ end
49
+ end
50
+
51
+ def key?(key)
52
+ data_store.transaction(true) { @data.root?(key) }
53
+ end
54
+
55
+ def delete(*keys)
56
+ data_store.transaction do
57
+ keys.flatten.each { |key| @data.delete(key) }
58
+ @data.commit
59
+ end
60
+ end
61
+
62
+ def clear
63
+ delete(all)
64
+ end
65
+
66
+ def inspect
67
+ data_store
68
+ "#<#{name}:#{ruby_like_object_id} #{instance_vars}>"
69
+ end
70
+
71
+ private
72
+
73
+ def ruby_like_object_id
74
+ "0x#{(object_id << 1).to_s(16)}"
75
+ end
76
+
77
+ def instance_vars
78
+ instance_variables.map { |v| "#{v}=#{instance_variable_get(v).inspect}" }.join(', ')
79
+ end
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,7 @@
1
+ module Imba
2
+ class Movie
3
+ def self.all
4
+ Imba::DataStore[:movies] || []
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,52 @@
1
+ module Imba
2
+ class MovieList
3
+ include Colors
4
+ attr_reader :movies
5
+
6
+ def initialize
7
+ @movies = Movie.all
8
+ end
9
+
10
+ def movie_dirs
11
+ # don't belong here...
12
+ # get movie names (dirs)
13
+ @movie_dirs ||= Dir['*'].select { |f| File.directory? f }
14
+ end
15
+
16
+ def add
17
+ Imba::DataStore[:movies] = movie_dirs
18
+ end
19
+ # @movie_dirs.each { |d| FileUtils.cd(d) { FileUtils.touch ".hello" } }
20
+
21
+ def synch
22
+ prompt = '(enter "y" to confirm or anything else to continue)'
23
+ # for each movie
24
+ movie_dirs.each do |directory_name|
25
+ # check movie name on imdb
26
+ result = Imdb::Movie.search(directory_name).first # needs rescue?
27
+ movie_title = result.title.gsub(/\(\d+\)/, '').strip
28
+ movie = "#{movie_title} (#{result.year}) #{result.genres} #{result.rating}/10"
29
+
30
+ # puts foundings
31
+ # update movie name? (folder)
32
+ if directory_name != movie_title
33
+ puts "change #{red(directory_name)} => #{green(movie_title)}? \n#{prompt}"
34
+ FileUtils.mv(directory_name, movie_title) if STDIN.gets.strip.downcase == 'y'
35
+ end
36
+
37
+ if Imba::DataStore.key?(result.id) && Imba::DataStore[result.id] != movie
38
+ puts "update?\n- #{red(Imba::DataStore[result.id])} \n+ #{green(movie)} \n#{prompt}"
39
+ Imba::DataStore[result.id] = movie if STDIN.gets.strip.downcase == 'y'
40
+ else
41
+ Imba::DataStore[result.id] = movie
42
+ end
43
+
44
+ # ask if founding is correct
45
+ # write .imdb_uniq_id in movie folder
46
+ # save movie name and imdb_uniq_id in DataStore[:movies]
47
+ # or serialize hole imdb movie object?!
48
+ end
49
+ STDOUT.puts 'done'
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,3 @@
1
+ module Imba
2
+ VERSION = '0.0.1'
3
+ end
@@ -0,0 +1,48 @@
1
+ require 'spec_helper'
2
+
3
+ module Imba
4
+ describe DataStore do
5
+
6
+ describe '#inspect' do
7
+ subject { Imba::DataStore.inspect }
8
+ it { expect(subject).to include('#<Imba::DataStore:0x') }
9
+ it { expect(subject).to include(Imba::DataStore.path) }
10
+ it { expect(subject).to include('/tmp/.imba_test/test_data.pstore') }
11
+ it { expect(subject).to include('@data=#<PStore:') }
12
+ it { expect(subject).to include('@ultra_safe=true') }
13
+ it { expect(subject).to include('@thread_safe=true') }
14
+ it { expect(subject).to include('@table={}') }
15
+ end
16
+
17
+ describe 'read/write something in/from the data store' do
18
+ before { Imba::DataStore[:something] = { foo: 'bar' } }
19
+ it { expect(Imba::DataStore[:something]).to eql(foo: 'bar') }
20
+ it { expect(Imba::DataStore.all).to eql([:something]) }
21
+ it { expect(Imba::DataStore.key?(:something)).to be_true }
22
+ end
23
+
24
+ describe 'delete something from the data store' do
25
+ before do
26
+ Imba::DataStore[:stay_my_friend] = { foo: 'bar' }
27
+ Imba::DataStore[:delete_me] = 'can\'t wait'
28
+ Imba::DataStore.delete(:delete_me)
29
+ end
30
+ it { expect(Imba::DataStore.key?(:delete_me)).to be_false }
31
+ it { expect(Imba::DataStore.all).to eql([:stay_my_friend]) }
32
+ end
33
+
34
+ describe 'multi transactions' do
35
+ before do
36
+ Imba::DataStore.transaction do |data|
37
+ data[:number] = 42
38
+ data[:foo] = 'bar bazly'
39
+ data[:words] = %w[amazing stuff inside transaction]
40
+ end
41
+ end
42
+
43
+ it { expect(Imba::DataStore.all).to eql([:number, :foo, :words]) }
44
+ it { expect(Imba::DataStore[:words]).to eql(%w[amazing stuff inside transaction]) }
45
+ end
46
+
47
+ end
48
+ end
@@ -0,0 +1,5 @@
1
+ require 'spec_helper'
2
+
3
+ describe Imba do
4
+
5
+ end
@@ -0,0 +1,14 @@
1
+ require 'spec_helper'
2
+
3
+ module Imba
4
+ describe MovieList do
5
+ # it { binding.pry }
6
+
7
+ # movie_dirs = Dir['*'].select {|f| File.directory? f}
8
+ #
9
+ # require "find"
10
+ # imba_files = []
11
+ # Find.find(".") {|path| imba_files << path if path =~ /\.imba$/}
12
+
13
+ end
14
+ end
@@ -0,0 +1,7 @@
1
+ require 'spec_helper'
2
+
3
+ module Imba
4
+ describe Movie do
5
+ it { expect(Movie.all).to eql([]) }
6
+ end
7
+ end
@@ -0,0 +1,17 @@
1
+ require 'rspec/pride'
2
+ require 'pry'
3
+ require_relative '../lib/imba'
4
+
5
+ RSpec.configure do |config|
6
+ config.color = true
7
+ config.order = 'random'
8
+
9
+ config.before(:all) do
10
+ FileUtils.mkdir_p("../tmp/.imba_test")
11
+ Imba::DataStore.path = "../tmp/.imba_test/test_data.pstore"
12
+ Imba::DataStore.init
13
+ end
14
+
15
+ config.before(:each) { Imba::DataStore.clear }
16
+ config.after(:all) { Imba::DataStore.clear }
17
+ end
metadata ADDED
@@ -0,0 +1,229 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: imba
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Marco Schaden
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-01-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '1.5'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.5'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 2.14.1
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 2.14.1
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec-pride
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 2.2.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: 2.2.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: guard-rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: 4.2.3
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: 4.2.3
83
+ - !ruby/object:Gem::Dependency
84
+ name: pry
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: 0.9.12.4
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ~>
95
+ - !ruby/object:Gem::Version
96
+ version: 0.9.12.4
97
+ - !ruby/object:Gem::Dependency
98
+ name: pry-rescue
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 1.2.0
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: 1.2.0
111
+ - !ruby/object:Gem::Dependency
112
+ name: pry-stack_explorer
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: 0.4.9.1
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ~>
123
+ - !ruby/object:Gem::Version
124
+ version: 0.4.9.1
125
+ - !ruby/object:Gem::Dependency
126
+ name: rubocop
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ! '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ! '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: flog
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ! '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ! '>='
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: imdb
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ~>
158
+ - !ruby/object:Gem::Version
159
+ version: 0.8.0
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ~>
165
+ - !ruby/object:Gem::Version
166
+ version: 0.8.0
167
+ description: With Imba you can manage your movies by meta information (like rating,
168
+ genre, year) from IMDB.
169
+ email:
170
+ - ms@donschado.de
171
+ executables:
172
+ - imba
173
+ extensions: []
174
+ extra_rdoc_files: []
175
+ files:
176
+ - .gitignore
177
+ - .rspec
178
+ - .rubocop.yml
179
+ - .travis.yml
180
+ - Gemfile
181
+ - Guardfile
182
+ - LICENSE.txt
183
+ - README.md
184
+ - Rakefile
185
+ - bin/imba
186
+ - imba.gemspec
187
+ - lib/imba.rb
188
+ - lib/imba/cli.rb
189
+ - lib/imba/colors.rb
190
+ - lib/imba/data_store.rb
191
+ - lib/imba/movie.rb
192
+ - lib/imba/movie_list.rb
193
+ - lib/imba/version.rb
194
+ - spec/data_store_spec.rb
195
+ - spec/imba_spec.rb
196
+ - spec/movie_list_spec.rb
197
+ - spec/movie_spec.rb
198
+ - spec/spec_helper.rb
199
+ homepage: https://github.com/donschado/imba
200
+ licenses:
201
+ - MIT
202
+ metadata: {}
203
+ post_install_message:
204
+ rdoc_options: []
205
+ require_paths:
206
+ - lib
207
+ required_ruby_version: !ruby/object:Gem::Requirement
208
+ requirements:
209
+ - - ! '>='
210
+ - !ruby/object:Gem::Version
211
+ version: 1.9.3
212
+ required_rubygems_version: !ruby/object:Gem::Requirement
213
+ requirements:
214
+ - - ! '>='
215
+ - !ruby/object:Gem::Version
216
+ version: '0'
217
+ requirements: []
218
+ rubyforge_project:
219
+ rubygems_version: 2.1.11
220
+ signing_key:
221
+ specification_version: 4
222
+ summary: Imba is a command-line application to manage movies.
223
+ test_files:
224
+ - spec/data_store_spec.rb
225
+ - spec/imba_spec.rb
226
+ - spec/movie_list_spec.rb
227
+ - spec/movie_spec.rb
228
+ - spec/spec_helper.rb
229
+ has_rdoc: