richcss 0.1.3 → 0.1.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 366b8fb9be65306620313fa5a8f366121fbb1d85
4
- data.tar.gz: dc610a0d85f1d6d086df8560ba4088595730c436
3
+ metadata.gz: d2b594a7f8664d53a92228767285be2d6cbb17f8
4
+ data.tar.gz: 342a17212b0b94bc5cc265a615c0b11100318fd3
5
5
  SHA512:
6
- metadata.gz: 71720c41734a75842e177180cdce7c2fc3cb466fe54db8670497d21f3e37f601aa1b119268d642f9651ac4763d32a040a843627f7a8a6919db414454820401ae
7
- data.tar.gz: f2e84138469c33156861866a239f932892f01b3cabb4ddabe930daa019a5be905dae93aae0c5e9e36b0eb81c2d6ae7c19b8997398da89be2d22ab4acde06dd4f
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
- dep_list.each do |dep|
101
- Richcss::Part.fetch(dep.name, dep.version)
102
- partfileList << dep.name << " " << dep.version.to_s << "\n"
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
@@ -75,6 +75,7 @@ module Richcss
75
75
  when Net::HTTPRedirection then
76
76
  location = response['location']
77
77
  install(part_name, version, location)
78
+ return
78
79
  else
79
80
  puts "Installing part..."
80
81
 
@@ -5,23 +5,29 @@ module Richcss
5
5
  class Resolver
6
6
 
7
7
  def self.start(part_name, version, installed = {})
8
- requirements = [VersionKit::Dependency.new(part_name, version)]
8
+ installed_deps = []
9
9
  installed.each do | p, v |
10
- requirements.push(VersionKit::Dependency.new(p, v))
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:\n"
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
@@ -1,3 +1,3 @@
1
1
  module Richcss
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
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.3
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-14 00:00:00.000000000 Z
11
+ date: 2016-03-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler