richcss 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/richcss/cli.rb +9 -3
- data/lib/richcss/part.rb +1 -0
- data/lib/richcss/resolver.rb +10 -4
- data/lib/richcss/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d2b594a7f8664d53a92228767285be2d6cbb17f8
|
4
|
+
data.tar.gz: 342a17212b0b94bc5cc265a615c0b11100318fd3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4cf179c2b1944e3c24d7ea6df4e14ca7d81040a0e4e97c513207e2b4863d3891f172f9b97435116321f692701d738e89941c8ef47b1520231cb87c6f790b26ef
|
7
|
+
data.tar.gz: b888e78e9b47b354bc048bf0d27631bb6bd9b53aed0a49c48fdc03f61139eb15d292bcfc386e6a18641d44fe808c9b6d1cc4e5ca0c5a861df9a5b379e01a81c7
|
data/lib/richcss/cli.rb
CHANGED
@@ -97,9 +97,15 @@ module RichcssCLI
|
|
97
97
|
|
98
98
|
partfileList = ''
|
99
99
|
dep_list = Richcss::Part.resolve_dependencies(part_name, part_version, installed_parts)
|
100
|
-
|
101
|
-
|
102
|
-
|
100
|
+
|
101
|
+
if dep_list == nil
|
102
|
+
puts "Failed to install #{part_name} #{part_version}"
|
103
|
+
return
|
104
|
+
end
|
105
|
+
|
106
|
+
dep_list.each do |dep_name, dep_version|
|
107
|
+
Richcss::Part.fetch(dep_name, dep_version)
|
108
|
+
partfileList << dep_name << " " << dep_version.to_s << "\n"
|
103
109
|
end
|
104
110
|
|
105
111
|
File.open('parts/Partfile', 'wb') do |f|
|
data/lib/richcss/part.rb
CHANGED
data/lib/richcss/resolver.rb
CHANGED
@@ -5,23 +5,29 @@ module Richcss
|
|
5
5
|
class Resolver
|
6
6
|
|
7
7
|
def self.start(part_name, version, installed = {})
|
8
|
-
|
8
|
+
installed_deps = []
|
9
9
|
installed.each do | p, v |
|
10
|
-
|
10
|
+
installed_deps.push(VersionKit::Dependency.new(p, v))
|
11
11
|
end
|
12
12
|
@resolver = Molinillo::Resolver.new(RichSpecificationProvider.new(part_name, version), RichUI.new)
|
13
13
|
@base_dg = Molinillo::DependencyGraph.new
|
14
|
+
installed_deps.each { |dep| @base_dg.add_vertex dep.name, dep }
|
15
|
+
requirements = [VersionKit::Dependency.new(part_name, version)]
|
14
16
|
dg = @resolver.resolve(requirements, @base_dg)
|
15
|
-
puts "Succesfully resolved dependencies
|
16
|
-
dg.map(&:payload).flatten
|
17
|
+
puts "Succesfully resolved dependencies\n"
|
18
|
+
new_deps = dg.map(&:payload).flatten
|
19
|
+
new_deps.each { |dep| installed[dep.name] = dep.version }
|
20
|
+
return installed
|
17
21
|
rescue Molinillo::VersionConflict => e
|
18
22
|
puts e
|
23
|
+
return nil
|
19
24
|
rescue Molinillo::CircularDependencyError => e
|
20
25
|
names = e.dependencies.sort_by(&:name).map {|d| "gem '#{d.name}'" }
|
21
26
|
puts "Your RichCSS part requires parts that depend" \
|
22
27
|
" on each other, creating an circular loop. Please remove" \
|
23
28
|
" #{names.count > 1 ? "either " : ""}#{names.join(" or ")}" \
|
24
29
|
" and try again."
|
30
|
+
return nil
|
25
31
|
end
|
26
32
|
end
|
27
33
|
end
|
data/lib/richcss/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: richcss
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nicholas Lo, Gabriel Cheng, Bill Xu, Jonathan Lai, David Zhu
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-03-
|
11
|
+
date: 2016-03-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|