batali 0.2.2 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b932231673eb1265232f82a6a4e5e201e0324058
4
- data.tar.gz: 64b947c6f2c44899a0e220800981a2eec1ff6954
3
+ metadata.gz: 3d07b92c629d84ed1ca5fe885ee8eae8b7426c30
4
+ data.tar.gz: a17f9cbb2e9e42f0f8881ac196a5320176a93376
5
5
  SHA512:
6
- metadata.gz: 815ced6e99320cc992db4a985dddebe8f426ee2dafce37ca6d542105b52e41e000d1ba19993c0005b88c1d606b422a33e6b93452599a1f248bc284efbc59a201
7
- data.tar.gz: 7b40082eb73d94ff5216d83fd5089ec9fd29c376e966b37d6de770049f10b163ce813c0b07efc76bd56d435f49ef06f2eda25deed772dfeb8fe0e23c40d84ca4
6
+ metadata.gz: 4209014fa64523d06c2bdb05451a199da4508fffccf33a92af7f5d1b10cd8b4db7c1aefb2df1f32ef7572bfb5f9963b8bd6fe4273490909e91fe6486caffd723
7
+ data.tar.gz: f05d9c4cdca2a6e1e7d3770ed24894d8c2fb04e8fa4e0736bbc8a50b252435488fa146b85c58563c46d0690a2d71835fd9fd91dd6864af3ee25aa813cb9ffb60
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ # v0.2.4
2
+ * Fix caching support
3
+
1
4
  # v0.2.2
2
5
  * Add guard when switching resolution types (#14)
3
6
  * Cache HTTP requests (#20)
data/batali.gemspec CHANGED
@@ -16,8 +16,9 @@ Gem::Specification.new do |s|
16
16
  s.add_runtime_dependency 'bogo-cli', '~> 0.1.12'
17
17
  s.add_runtime_dependency 'bogo-config', '~> 0.1.10'
18
18
  s.add_runtime_dependency 'bogo-ui', '~> 0.1.6'
19
+ s.add_runtime_dependency 'http', '~> 0.8.2'
20
+ s.add_runtime_dependency 'rack-cache'
19
21
  s.add_runtime_dependency 'git'
20
- s.add_runtime_dependency 'http'
21
22
  s.add_development_dependency 'minitest'
22
23
  s.add_development_dependency 'pry'
23
24
  s.executables << 'batali'
@@ -36,7 +36,7 @@ module Batali
36
36
  ['entitystore', 'metastore', identifier].each do |leaf|
37
37
  FileUtils.mkdir_p(File.join(cache, leaf))
38
38
  end
39
- File.join(cache, leaf)
39
+ File.join(cache, identifier)
40
40
  end
41
41
  end
42
42
 
@@ -75,6 +75,7 @@ module Batali
75
75
  # @return [String] path to universe file
76
76
  def fetch
77
77
  do_fetch = true
78
+ cache_directory # init directory creation
78
79
  if(File.exists?(universe_path))
79
80
  age = Time.now - File.mtime(universe_path)
80
81
  if(age < update_interval)
@@ -85,8 +86,8 @@ module Batali
85
86
  t_uni = "#{universe_path}.#{SecureRandom.urlsafe_base64}"
86
87
  File.open(t_uni, 'w') do |file|
87
88
  file.write HTTP.with_cache(
88
- :metastore => File.join(cache, 'metastore'),
89
- :entitystore => File.join(cache, 'entitystore')
89
+ :metastore => "file:#{File.join(cache, 'metastore')}",
90
+ :entitystore => "file:#{File.join(cache, 'entitystore')}"
90
91
  ).get(URI.join(endpoint, 'universe')).body.to_s
91
92
  end
92
93
  FileUtils.mv(t_uni, universe_path)
@@ -29,7 +29,7 @@ module Batali
29
29
  # should be _the_ preferred version
30
30
  if(manifest_unit.version == unit.version)
31
31
  multiplier = 10000000
32
- elsif(opts[:solver].new_world)
32
+ elsif(opts[:solver] && opts[:solver].new_world)
33
33
  new_world_unit = opts[:solver].new_world.units.detect do |n_unit|
34
34
  n_unit.name == unit.name &&
35
35
  n_unit.version == unit.version
@@ -57,7 +57,7 @@ module Batali
57
57
  end
58
58
  end
59
59
  else
60
- if(opts[:solver].new_world)
60
+ if(opts[:solver] && opts[:solver].new_world)
61
61
  new_world_unit = opts[:solver].new_world.units.detect do |n_unit|
62
62
  n_unit.name == unit.name &&
63
63
  n_unit.version == unit.version
@@ -9,6 +9,8 @@ module Batali
9
9
  # Site based source
10
10
  class Site < Source
11
11
 
12
+ include Bogo::Memoization
13
+
12
14
  # @return [Array<Hash>] dependency strings
13
15
  attr_reader :dependencies
14
16
  # @return [String] version
@@ -57,13 +59,13 @@ module Batali
57
59
  unless(File.directory?(path))
58
60
  FileUtils.mkdir_p(path)
59
61
  result = HTTP.with_cache(
60
- :metastore => File.join(cache_directory, 'metastore'),
61
- :entitystore => File.join(cache_directory, 'entitystore')
62
+ :metastore => "file:#{File.join(cache_directory, 'metastore')}",
63
+ :entitystore => "file:#{File.join(cache_directory, 'entitystore')}"
62
64
  ).get(url)
63
65
  while(result.code == 302)
64
66
  result = HTTP.with_cache(
65
- :metastore => File.join(cache_directory, 'metastore'),
66
- :entitystore => File.join(cache_directory, 'entitystore')
67
+ :metastore => "file:#{File.join(cache_directory, 'metastore')}",
68
+ :entitystore => "file:#{File.join(cache_directory, 'entitystore')}"
67
69
  ).get(result.headers['Location'])
68
70
  end
69
71
  File.open(a_path = File.join(path, 'asset'), 'w') do |file|
@@ -1,4 +1,4 @@
1
1
  module Batali
2
2
  # Current version
3
- VERSION = Gem::Version.new('0.2.2')
3
+ VERSION = Gem::Version.new('0.2.4')
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: batali
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Roberts
@@ -95,7 +95,21 @@ dependencies:
95
95
  - !ruby/object:Gem::Version
96
96
  version: 0.1.6
97
97
  - !ruby/object:Gem::Dependency
98
- name: git
98
+ name: http
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 0.8.2
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 0.8.2
111
+ - !ruby/object:Gem::Dependency
112
+ name: rack-cache
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
115
  - - ">="
@@ -109,7 +123,7 @@ dependencies:
109
123
  - !ruby/object:Gem::Version
110
124
  version: '0'
111
125
  - !ruby/object:Gem::Dependency
112
- name: http
126
+ name: git
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
129
  - - ">="