librarianp 0.6.3 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.github/workflows/release.yml +32 -0
- data/.github/workflows/test.yml +29 -0
- data/.gitignore +1 -0
- data/.rspec +1 -0
- data/CHANGELOG.md +39 -0
- data/Gemfile +0 -4
- data/README.md +2 -2
- data/VERSION +1 -1
- data/lib/librarian/cli.rb +1 -1
- data/lib/librarian/dependency.rb +1 -1
- data/lib/librarian/dsl/receiver.rb +2 -2
- data/lib/librarian/dsl.rb +2 -2
- data/lib/librarian/rspec/support/cli_macro.rb +1 -1
- data/lib/librarian/source/git/repository.rb +1 -1
- data/lib/librarian/source/git.rb +15 -4
- data/librarianp.gemspec +28 -0
- data/spec/functional/source/git/repository_spec.rb +4 -4
- data/spec/functional/source/git_spec.rb +2 -2
- data/spec/unit/action/clean_spec.rb +10 -10
- data/spec/unit/action/ensure_spec.rb +3 -3
- data/spec/unit/action/install_spec.rb +18 -18
- data/spec/unit/action/resolve_spec.rb +4 -3
- data/spec/unit/algorithms_spec.rb +3 -3
- data/spec/unit/dependency/requirement_spec.rb +9 -8
- data/spec/unit/environment_spec.rb +2 -2
- data/spec/unit/lockfile/parser_spec.rb +5 -6
- data/spec/unit/lockfile_spec.rb +1 -1
- data/spec/unit/mock/source/mock_spec.rb +1 -1
- data/spec/unit/resolver_spec.rb +2 -2
- data/spec/unit/source/git_spec.rb +8 -2
- metadata +17 -15
- data/.travis.yml +0 -11
- data/Gemfile.lock +0 -233
- data/librarian.gemspec +0 -44
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 9c9763e69ec0059b3de54d6be45d61a1c1d8d1da005e7292152c8d87236e6da1
|
4
|
+
data.tar.gz: 8d3ffe4bcccec279c81f3028573aa3b96428c4a98ac09719cf5a5f7317bed661
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d678620dd06362ff48aae226af3ae5cdac3ea2543d111b06c95e972f8d578dc7a100d4efba45eeb23f3f3dd41883979e80c8f33e86e193ed1a111dc3692d3b62
|
7
|
+
data.tar.gz: 20a5aafef57724f5e9a11638cebec6d5e0de4225826ed510e13413521064defa87c39884c4e739d33653f35c5b19158fe87b836438c4fd90f48d725891a94f0d
|
@@ -0,0 +1,32 @@
|
|
1
|
+
name: Release
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
tags:
|
6
|
+
- '*'
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
release:
|
10
|
+
runs-on: ubuntu-latest
|
11
|
+
if: github.repository_owner == 'voxpupuli'
|
12
|
+
steps:
|
13
|
+
- uses: actions/checkout@v2
|
14
|
+
- name: Install Ruby 3.0
|
15
|
+
uses: ruby/setup-ruby@v1
|
16
|
+
with:
|
17
|
+
ruby-version: '3.0'
|
18
|
+
env:
|
19
|
+
BUNDLE_WITHOUT: release
|
20
|
+
- name: Build gem
|
21
|
+
run: gem build *.gemspec
|
22
|
+
- name: Publish gem to rubygems.org
|
23
|
+
run: gem push *.gem
|
24
|
+
env:
|
25
|
+
GEM_HOST_API_KEY: '${{ secrets.RUBYGEMS_AUTH_TOKEN }}'
|
26
|
+
- name: Setup GitHub packages access
|
27
|
+
run: |
|
28
|
+
mkdir -p ~/.gem
|
29
|
+
echo ":github: Bearer ${{ secrets.GITHUB_TOKEN }}" >> ~/.gem/credentials
|
30
|
+
chmod 0600 ~/.gem/credentials
|
31
|
+
- name: Publish gem to GitHub packages
|
32
|
+
run: gem push --key github --host https://rubygems.pkg.github.com/${{ github.repository_owner }} *.gem
|
@@ -0,0 +1,29 @@
|
|
1
|
+
name: Test
|
2
|
+
|
3
|
+
on:
|
4
|
+
- pull_request
|
5
|
+
- push
|
6
|
+
|
7
|
+
jobs:
|
8
|
+
test:
|
9
|
+
runs-on: ubuntu-latest
|
10
|
+
strategy:
|
11
|
+
fail-fast: false
|
12
|
+
matrix:
|
13
|
+
ruby:
|
14
|
+
- "2.4"
|
15
|
+
- "2.5"
|
16
|
+
- "2.6"
|
17
|
+
- "2.7"
|
18
|
+
- "3.0"
|
19
|
+
steps:
|
20
|
+
- uses: actions/checkout@v2
|
21
|
+
- name: Install Ruby ${{ matrix.ruby }}
|
22
|
+
uses: ruby/setup-ruby@v1
|
23
|
+
with:
|
24
|
+
ruby-version: ${{ matrix.ruby }}
|
25
|
+
bundler-cache: true
|
26
|
+
- name: Run tests
|
27
|
+
run: bundle exec rake spec
|
28
|
+
- name: Verify gem builds
|
29
|
+
run: gem build *.gemspec
|
data/.gitignore
CHANGED
data/.rspec
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,44 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## 1.1.1
|
4
|
+
|
5
|
+
* Fix one more Ruby 3 compatibility issue
|
6
|
+
* Search for the Rakefile relatively to pwd
|
7
|
+
|
8
|
+
## 1.1.0
|
9
|
+
|
10
|
+
* Support Ruby 3
|
11
|
+
|
12
|
+
## 1.0.0
|
13
|
+
|
14
|
+
* Require Ruby 2.4+
|
15
|
+
* Update dependencies to the latest versions
|
16
|
+
* Be specific about exposing git environment variables
|
17
|
+
* Allow more spaces in version range
|
18
|
+
|
19
|
+
## 0.6.4
|
20
|
+
|
21
|
+
* Add support for r10k Puppetfile's opts
|
22
|
+
* Fix deprecation warnings
|
23
|
+
* Fix compatibility with git 2.14.0
|
24
|
+
|
25
|
+
## 0.6.3
|
26
|
+
|
27
|
+
* Prevent losing specfile path when metadata doesn't exist
|
28
|
+
|
29
|
+
## 0.6.2
|
30
|
+
|
31
|
+
* Fix bad variable name
|
32
|
+
|
33
|
+
## 0.6.1
|
34
|
+
|
35
|
+
* Fix dependencies not being fetched
|
36
|
+
|
37
|
+
## 0.6.0
|
38
|
+
|
39
|
+
* Merge duplicated dependencies in spec
|
40
|
+
* Always fetch the commit SHA from rev-parse
|
41
|
+
|
3
42
|
## 0.5.0
|
4
43
|
|
5
44
|
* Allow defining exclusions in spec file
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Librarian [![Build Status](https://secure.travis-ci.org/
|
1
|
+
Librarian [![Build Status](https://secure.travis-ci.org/voxpupuli/librarian.png)](https://travis-ci.org/voxpupuli/librarian)
|
2
2
|
=========
|
3
3
|
|
4
4
|
This is a forked version published as `librarianp` with improvements in order to support `librarian-puppet`.
|
@@ -27,7 +27,7 @@ Ensure the gem dependencies are installed:
|
|
27
27
|
Run the tests with the default rake task:
|
28
28
|
|
29
29
|
$ [bundle exec] rake
|
30
|
-
|
30
|
+
|
31
31
|
or directly with the rspec command:
|
32
32
|
|
33
33
|
$ [bundle exec] rspec spec
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
1.1.1
|
data/lib/librarian/cli.rb
CHANGED
@@ -192,7 +192,7 @@ module Librarian
|
|
192
192
|
debug { "Git: #{Source::Git::Repository.bin}" }
|
193
193
|
debug { "Git Version: #{Source::Git::Repository.git_version}" }
|
194
194
|
debug { "Git Environment Variables:" }
|
195
|
-
git_env = ENV.to_a.select{|(k, v)| k =~ /\
|
195
|
+
git_env = ENV.to_a.select{|(k, v)| k =~ /\AGIT_/}.sort_by{|(k, v)| k}
|
196
196
|
if git_env.empty?
|
197
197
|
debug { " (empty)" }
|
198
198
|
else
|
data/lib/librarian/dependency.rb
CHANGED
@@ -125,7 +125,7 @@ module Librarian
|
|
125
125
|
|
126
126
|
# A version range: >=1.0 <2.0
|
127
127
|
def range_requirement(arg)
|
128
|
-
arg.match(/(>=? ?\d+(?:\.\d+){0,2})
|
128
|
+
arg.match(/(>=? ?\d+(?:\.\d+){0,2})\s*(<=? ?\d+(?:\.\d+){0,2})/)
|
129
129
|
end
|
130
130
|
|
131
131
|
# A string with .x: 1.x, 2.1.x
|
data/lib/librarian/dsl.rb
CHANGED
@@ -79,14 +79,14 @@ module Librarian
|
|
79
79
|
Receiver.new(target)
|
80
80
|
end
|
81
81
|
|
82
|
-
def run(specfile = nil, sources = [])
|
82
|
+
def run(specfile = nil, sources = [], &block)
|
83
83
|
specfile, sources = nil, specfile if specfile.kind_of?(Array) && sources.empty?
|
84
84
|
|
85
85
|
Target.new(self).tap do |target|
|
86
86
|
target.precache_sources(sources)
|
87
87
|
debug_named_source_cache("Pre-Cached Sources", target)
|
88
88
|
|
89
|
-
specfile ||=
|
89
|
+
specfile ||= block if block_given?
|
90
90
|
|
91
91
|
if specfile.kind_of?(Pathname) and !File.exists?(specfile)
|
92
92
|
debug { "Specfile #{specfile} not found, using defaults" } unless specfile.nil?
|
@@ -51,7 +51,7 @@ module Librarian
|
|
51
51
|
def self.included(base)
|
52
52
|
base.instance_exec do
|
53
53
|
let(:project_path) do
|
54
|
-
project_path = Pathname.
|
54
|
+
project_path = Pathname.pwd.expand_path
|
55
55
|
project_path = project_path.dirname until project_path.join("Rakefile").exist?
|
56
56
|
project_path
|
57
57
|
end
|
data/lib/librarian/source/git.rb
CHANGED
@@ -14,7 +14,7 @@ module Librarian
|
|
14
14
|
include Local
|
15
15
|
|
16
16
|
lock_name 'GIT'
|
17
|
-
spec_options [:ref, :path]
|
17
|
+
spec_options [:ref, :branch, :tag, :commit, :path]
|
18
18
|
|
19
19
|
DEFAULTS = {
|
20
20
|
:ref => 'master'
|
@@ -23,13 +23,17 @@ module Librarian
|
|
23
23
|
attr_accessor :environment
|
24
24
|
private :environment=
|
25
25
|
|
26
|
-
attr_accessor :uri, :ref, :sha, :path
|
27
|
-
private :uri=, :ref=, :sha=, :path=
|
26
|
+
attr_accessor :uri, :ref, :branch, :tag, :commit, :sha, :path
|
27
|
+
private :uri=, :ref=, :branch=, :tag=, :commit=, :sha=, :path=
|
28
28
|
|
29
29
|
def initialize(environment, uri, options)
|
30
|
+
validate_options(uri, options)
|
31
|
+
|
30
32
|
self.environment = environment
|
31
33
|
self.uri = uri
|
32
|
-
self.ref = options[:ref] ||
|
34
|
+
self.ref = options[:ref] || options[:branch] ||
|
35
|
+
options[:tag] || options[:commit] ||
|
36
|
+
DEFAULTS[:ref]
|
33
37
|
self.sha = options[:sha]
|
34
38
|
self.path = options[:path]
|
35
39
|
|
@@ -173,6 +177,13 @@ module Librarian
|
|
173
177
|
@runtime_cache ||= environment.runtime_cache.keyspace(self.class.name)
|
174
178
|
end
|
175
179
|
|
180
|
+
def validate_options(uri, options)
|
181
|
+
found = 0; [:ref, :branch, :tag, :commit].each do |opt|
|
182
|
+
found += 1 if options.has_key?(opt)
|
183
|
+
found > 1 and raise Error,
|
184
|
+
"at #{uri}, use only one of ref, branch, tag, or commit"
|
185
|
+
end
|
186
|
+
end
|
176
187
|
end
|
177
188
|
end
|
178
189
|
end
|
data/librarianp.gemspec
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
|
5
|
+
Gem::Specification.new do |gem|
|
6
|
+
gem.name = "librarianp"
|
7
|
+
gem.version = File.read(File.expand_path('VERSION', __dir__)).strip
|
8
|
+
gem.authors = ["Jay Feldblum", "Carlos Sanchez"]
|
9
|
+
gem.email = ["y_feldblum@yahoo.com", "carlos@apache.org"]
|
10
|
+
gem.summary = %q{A Framework for Bundlers.}
|
11
|
+
gem.description = %q{A Framework for Bundlers, used by librarian-puppet.}
|
12
|
+
gem.homepage = "https://github.com/voxpupuli/librarian"
|
13
|
+
gem.license = "MIT"
|
14
|
+
|
15
|
+
gem.files = `git ls-files`.split($/)
|
16
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
17
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
|
+
gem.require_paths = ["lib"]
|
19
|
+
|
20
|
+
gem.required_ruby_version = '>= 2.4', '< 4'
|
21
|
+
|
22
|
+
gem.add_dependency "thor", "~> 1.0"
|
23
|
+
|
24
|
+
gem.add_development_dependency "rake"
|
25
|
+
gem.add_development_dependency "rspec", "~> 3.0"
|
26
|
+
gem.add_development_dependency "json"
|
27
|
+
gem.add_development_dependency "fakefs", "~> 1.0"
|
28
|
+
end
|
@@ -40,20 +40,20 @@ describe Librarian::Source::Git::Repository do
|
|
40
40
|
# master
|
41
41
|
FileUtils.touch "butter.txt"
|
42
42
|
git! %W[add butter.txt]
|
43
|
-
git! %W[commit -m #{"Initial Commit"}]
|
43
|
+
git! %W[commit -m #{"Initial Commit"} --no-gpg-sign]
|
44
44
|
|
45
45
|
# branch
|
46
46
|
git! %W[checkout -b #{branch} --quiet]
|
47
47
|
FileUtils.touch "jam.txt"
|
48
48
|
git! %W[add jam.txt]
|
49
|
-
git! %W[commit -m #{"Branch Commit"}]
|
49
|
+
git! %W[commit -m #{"Branch Commit"} --no-gpg-sign]
|
50
50
|
git! %W[checkout master --quiet]
|
51
51
|
|
52
52
|
# tag/atag
|
53
53
|
git! %W[checkout -b deletable --quiet]
|
54
54
|
FileUtils.touch "jelly.txt"
|
55
55
|
git! %W[add jelly.txt]
|
56
|
-
git! %W[commit -m #{"Tag Commit"}]
|
56
|
+
git! %W[commit -m #{"Tag Commit"} --no-gpg-sign]
|
57
57
|
git! %W[tag #{tag}]
|
58
58
|
git! %W[tag -am #{"Annotated Tag Commit"} #{atag}]
|
59
59
|
git! %W[checkout master --quiet]
|
@@ -108,7 +108,7 @@ describe Librarian::Source::Git::Repository do
|
|
108
108
|
end
|
109
109
|
|
110
110
|
it "should have a single remote for it" do
|
111
|
-
expect(subject).to
|
111
|
+
expect(subject.remote_names.size).to eq 1
|
112
112
|
end
|
113
113
|
|
114
114
|
it "should have a remote with the expected name" do
|
@@ -54,7 +54,7 @@ describe Librarian::Source::Git do
|
|
54
54
|
git! %W[config user.email simba@savannah-pride.gov]
|
55
55
|
FileUtils.touch "butter.txt"
|
56
56
|
git! %W[add butter.txt]
|
57
|
-
git! %W[commit -m #{"Initial Commit"}]
|
57
|
+
git! %W[commit -m #{"Initial Commit"} --no-gpg-sign]
|
58
58
|
end
|
59
59
|
end
|
60
60
|
|
@@ -150,7 +150,7 @@ describe Librarian::Source::Git do
|
|
150
150
|
Dir.chdir(git_source_path) do
|
151
151
|
FileUtils.touch "jam.txt"
|
152
152
|
git! %w[add jam.txt]
|
153
|
-
git! %W[commit -m #{"Some Jam"}]
|
153
|
+
git! %W[commit -m #{"Some Jam"} --no-gpg-sign]
|
154
154
|
end
|
155
155
|
end
|
156
156
|
|
@@ -7,7 +7,7 @@ module Librarian
|
|
7
7
|
let(:action) { described_class.new(env) }
|
8
8
|
|
9
9
|
before do
|
10
|
-
action.
|
10
|
+
allow(action).to receive(:debug)
|
11
11
|
end
|
12
12
|
|
13
13
|
describe "#run" do
|
@@ -21,12 +21,12 @@ module Librarian
|
|
21
21
|
describe "clearing the cache path" do
|
22
22
|
|
23
23
|
before do
|
24
|
-
action.
|
24
|
+
allow(action).to receive(:clean_install_path)
|
25
25
|
end
|
26
26
|
|
27
27
|
context "when the cache path is missing" do
|
28
28
|
before do
|
29
|
-
env.
|
29
|
+
allow(env).to receive_message_chain(:cache_path, :exist?).and_return(false)
|
30
30
|
end
|
31
31
|
|
32
32
|
it "should not try to clear the cache path" do
|
@@ -36,7 +36,7 @@ module Librarian
|
|
36
36
|
|
37
37
|
context "when the cache path is present" do
|
38
38
|
before do
|
39
|
-
env.
|
39
|
+
allow(env).to receive_message_chain(:cache_path, :exist?).and_return(true)
|
40
40
|
end
|
41
41
|
|
42
42
|
it "should try to clear the cache path" do
|
@@ -49,12 +49,12 @@ module Librarian
|
|
49
49
|
describe "clearing the install path" do
|
50
50
|
|
51
51
|
before do
|
52
|
-
action.
|
52
|
+
allow(action).to receive(:clean_cache_path)
|
53
53
|
end
|
54
54
|
|
55
55
|
context "when the install path is missing" do
|
56
56
|
before do
|
57
|
-
env.
|
57
|
+
allow(env).to receive_message_chain(:install_path, :exist?).and_return(false)
|
58
58
|
end
|
59
59
|
|
60
60
|
it "should not try to clear the install path" do
|
@@ -64,15 +64,15 @@ module Librarian
|
|
64
64
|
|
65
65
|
context "when the install path is present" do
|
66
66
|
before do
|
67
|
-
env.
|
67
|
+
allow(env).to receive_message_chain(:install_path, :exist?).and_return(true)
|
68
68
|
end
|
69
69
|
|
70
70
|
it "should try to clear the install path" do
|
71
71
|
children = [double, double, double]
|
72
72
|
children.each do |child|
|
73
|
-
child.
|
73
|
+
allow(child).to receive(:file?).and_return(false)
|
74
74
|
end
|
75
|
-
env.
|
75
|
+
allow(env).to receive_message_chain(:install_path, :children).and_return(children)
|
76
76
|
|
77
77
|
children.each do |child|
|
78
78
|
expect(child).to receive(:rmtree).exactly(:once)
|
@@ -81,7 +81,7 @@ module Librarian
|
|
81
81
|
|
82
82
|
it "should only try to clear out directories from the install path, not files" do
|
83
83
|
children = [double(:file? => false), double(:file? => true), double(:file? => true)]
|
84
|
-
env.
|
84
|
+
allow(env).to receive_message_chain(:install_path, :children).and_return(children)
|
85
85
|
|
86
86
|
children.select(&:file?).each do |child|
|
87
87
|
expect(child).to receive(:rmtree).never
|
@@ -10,13 +10,13 @@ module Librarian
|
|
10
10
|
let(:action) { described_class.new(env) }
|
11
11
|
|
12
12
|
before do
|
13
|
-
env.
|
13
|
+
allow(env).to receive(:specfile_name).and_return("Specfile")
|
14
14
|
end
|
15
15
|
|
16
16
|
describe "#run" do
|
17
17
|
|
18
18
|
context "when the environment does not know its project path" do
|
19
|
-
before { env.
|
19
|
+
before { allow(env).to receive(:project_path).and_return(nil) }
|
20
20
|
|
21
21
|
it "should raise an error describing that the specfile is mising" do
|
22
22
|
expect { action.run }.to raise_error(Error, "Cannot find Specfile!")
|
@@ -24,7 +24,7 @@ module Librarian
|
|
24
24
|
end
|
25
25
|
|
26
26
|
context "when the environment knows its project path" do
|
27
|
-
before { env.
|
27
|
+
before { allow(env).to receive(:project_path) { Dir.tmpdir } }
|
28
28
|
|
29
29
|
it "should not raise an error" do
|
30
30
|
expect { action.run }.to_not raise_error
|
@@ -15,7 +15,7 @@ module Librarian
|
|
15
15
|
|
16
16
|
context "when the specfile is missing" do
|
17
17
|
before do
|
18
|
-
env.
|
18
|
+
allow(env).to receive_message_chain(:specfile_path, :exist?) { false }
|
19
19
|
end
|
20
20
|
|
21
21
|
it "should raise an error explaining that the specfile is missing" do
|
@@ -25,8 +25,8 @@ module Librarian
|
|
25
25
|
|
26
26
|
context "when the specfile is present but the lockfile is missing" do
|
27
27
|
before do
|
28
|
-
env.
|
29
|
-
env.
|
28
|
+
allow(env).to receive_message_chain(:specfile_path, :exist?) { true }
|
29
|
+
allow(env).to receive_message_chain(:lockfile_path, :exist?) { false }
|
30
30
|
end
|
31
31
|
|
32
32
|
it "should raise an error explaining that the lockfile is missing" do
|
@@ -36,9 +36,9 @@ module Librarian
|
|
36
36
|
|
37
37
|
context "when the specfile and lockfile are present but inconsistent" do
|
38
38
|
before do
|
39
|
-
env.
|
40
|
-
env.
|
41
|
-
action.
|
39
|
+
allow(env).to receive_message_chain(:specfile_path, :exist?) { true }
|
40
|
+
allow(env).to receive_message_chain(:lockfile_path, :exist?) { true }
|
41
|
+
allow(action).to receive(:spec_consistent_with_lock?) { false }
|
42
42
|
end
|
43
43
|
|
44
44
|
it "should raise an error explaining the inconsistenty" do
|
@@ -48,10 +48,10 @@ module Librarian
|
|
48
48
|
|
49
49
|
context "when the specfile and lockfile are present and consistent" do
|
50
50
|
before do
|
51
|
-
env.
|
52
|
-
env.
|
53
|
-
action.
|
54
|
-
action.
|
51
|
+
allow(env).to receive_message_chain(:specfile_path, :exist?) { true }
|
52
|
+
allow(env).to receive_message_chain(:lockfile_path, :exist?) { true }
|
53
|
+
allow(action).to receive(:spec_consistent_with_lock?) { true }
|
54
|
+
allow(action).to receive(:perform_installation)
|
55
55
|
end
|
56
56
|
|
57
57
|
it "should not raise an error" do
|
@@ -72,10 +72,10 @@ module Librarian
|
|
72
72
|
let(:install_path) { double }
|
73
73
|
|
74
74
|
before do
|
75
|
-
env.
|
76
|
-
action.
|
77
|
-
action.
|
78
|
-
action.
|
75
|
+
allow(env).to receive(:install_path) { install_path }
|
76
|
+
allow(action).to receive(:check_preconditions)
|
77
|
+
allow(action).to receive(:destructive?) { true }
|
78
|
+
allow(action).to receive_message_chain(:lock, :manifests) { manifests }
|
79
79
|
end
|
80
80
|
|
81
81
|
after do
|
@@ -85,7 +85,7 @@ module Librarian
|
|
85
85
|
it "should sort and install the manifests" do
|
86
86
|
expect(ManifestSet).to receive(:sort).with(manifests).exactly(:once).ordered { sorted_manifests }
|
87
87
|
|
88
|
-
install_path.
|
88
|
+
allow(install_path).to receive(:exist?) { false }
|
89
89
|
expect(install_path).to receive(:mkpath).exactly(:once).ordered
|
90
90
|
|
91
91
|
sorted_manifests.each do |manifest|
|
@@ -94,10 +94,10 @@ module Librarian
|
|
94
94
|
end
|
95
95
|
|
96
96
|
it "should recreate the install path if it already exists" do
|
97
|
-
action.
|
98
|
-
action.
|
97
|
+
allow(action).to receive(:sorted_manifests) { sorted_manifests }
|
98
|
+
allow(action).to receive(:install_manifests)
|
99
99
|
|
100
|
-
install_path.
|
100
|
+
allow(install_path).to receive(:exist?) { true }
|
101
101
|
expect(install_path).to receive(:rmtree)
|
102
102
|
expect(install_path).to receive(:mkpath)
|
103
103
|
end
|
@@ -15,7 +15,7 @@ module Librarian
|
|
15
15
|
let(:source2) { Librarian::Mock::Source::Mock.new(env, "source2", {}) }
|
16
16
|
|
17
17
|
before do
|
18
|
-
env.
|
18
|
+
allow(env).to receive_messages(:specfile => double(:read => spec))
|
19
19
|
end
|
20
20
|
|
21
21
|
describe "#run" do
|
@@ -35,8 +35,9 @@ module Librarian
|
|
35
35
|
end
|
36
36
|
|
37
37
|
it "should merge duplicated dependencies" do
|
38
|
-
Dependency.
|
39
|
-
|
38
|
+
allow_any_instance_of(Dependency).to receive_messages(:manifests => [manifest])
|
39
|
+
allow_any_instance_of(Librarian::Logger).to receive(:info)
|
40
|
+
allow(action).to receive(:persist_resolution)
|
40
41
|
resolution = action.run
|
41
42
|
expect(resolution.dependencies).to eq([dependency2])
|
42
43
|
end
|
@@ -5,7 +5,7 @@ module Librarian
|
|
5
5
|
|
6
6
|
describe AdjacencyListDirectedGraph do
|
7
7
|
|
8
|
-
describe
|
8
|
+
describe 'cyclic?' do
|
9
9
|
subject(:result) { described_class.cyclic?(graph) }
|
10
10
|
|
11
11
|
context "with an empty graph" do
|
@@ -45,7 +45,7 @@ module Librarian
|
|
45
45
|
|
46
46
|
end
|
47
47
|
|
48
|
-
describe
|
48
|
+
describe 'feedback_arc_set' do
|
49
49
|
subject(:result) { described_class.feedback_arc_set(graph) }
|
50
50
|
|
51
51
|
context "with an empty graph" do
|
@@ -85,7 +85,7 @@ module Librarian
|
|
85
85
|
|
86
86
|
end
|
87
87
|
|
88
|
-
describe
|
88
|
+
describe 'tsort_cyclic' do
|
89
89
|
subject(:result) { described_class.tsort_cyclic(graph) }
|
90
90
|
|
91
91
|
context "with an empty graph" do
|
@@ -10,27 +10,28 @@ describe Librarian::Dependency::Requirement do
|
|
10
10
|
end
|
11
11
|
|
12
12
|
it 'should handle nil versions' do
|
13
|
-
described_class.new(nil).to_gem_requirement.
|
13
|
+
expect(described_class.new(nil).to_gem_requirement).to eq(Gem::Requirement.new)
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'should handle nil versions in arrays' do
|
17
|
-
described_class.new([nil]).to_gem_requirement.
|
17
|
+
expect(described_class.new([nil]).to_gem_requirement).to eq(Gem::Requirement.new)
|
18
18
|
end
|
19
19
|
|
20
20
|
it 'should handle .x versions' do
|
21
|
-
described_class.new('1.x').to_gem_requirement.
|
22
|
-
described_class.new('1.0.x').to_gem_requirement.
|
21
|
+
expect(described_class.new('1.x').to_gem_requirement).to eq(Gem::Requirement.new('~> 1.0'))
|
22
|
+
expect(described_class.new('1.0.x').to_gem_requirement).to eq(Gem::Requirement.new('~> 1.0.0'))
|
23
23
|
end
|
24
24
|
|
25
25
|
it 'should handle version ranges' do
|
26
|
-
described_class.new('>=1.1.0 <2.0.0').to_gem_requirement.
|
26
|
+
expect(described_class.new('>=1.1.0 <2.0.0').to_gem_requirement).to eq(Gem::Requirement.new(['>=1.1.0', '<2.0.0']))
|
27
|
+
expect(described_class.new('>=1.1.0 <2.0.0').to_gem_requirement).to eq(Gem::Requirement.new(['>=1.1.0', '<2.0.0']))
|
27
28
|
end
|
28
29
|
|
29
30
|
it 'should print to_s' do
|
30
|
-
described_class.new('1.x').to_s.
|
31
|
+
expect(described_class.new('1.x').to_s).to eq('~> 1.0')
|
31
32
|
s = described_class.new('>=1.1.0 <2.0.0').to_s
|
32
|
-
s.
|
33
|
-
s.
|
33
|
+
expect(s).to include(">= 1.1.0")
|
34
|
+
expect(s).to include("< 2.0.0")
|
34
35
|
end
|
35
36
|
|
36
37
|
end
|
@@ -26,7 +26,7 @@ module Librarian
|
|
26
26
|
with_env "HOME" => "/path/to/home"
|
27
27
|
|
28
28
|
it "finds the home" do
|
29
|
-
env.
|
29
|
+
allow(env).to receive(:adapter_name).and_return("cat")
|
30
30
|
expect(env.config_db.underlying_home.to_s).to eq "/path/to/home"
|
31
31
|
end
|
32
32
|
end
|
@@ -36,7 +36,7 @@ module Librarian
|
|
36
36
|
with_env "HOME" => nil
|
37
37
|
|
38
38
|
it "finds the home" do
|
39
|
-
env.
|
39
|
+
allow(env).to receive(:adapter_name).and_return("cat")
|
40
40
|
expect(env.config_db.underlying_home.to_s).to eq real_home
|
41
41
|
end
|
42
42
|
end
|
@@ -45,7 +45,7 @@ module Librarian
|
|
45
45
|
end
|
46
46
|
|
47
47
|
it "should give a list of one dependency" do
|
48
|
-
expect(resolution).to
|
48
|
+
expect(resolution.dependencies.size).to eq 1
|
49
49
|
end
|
50
50
|
|
51
51
|
it "should give a dependency with the expected name" do
|
@@ -57,8 +57,7 @@ module Librarian
|
|
57
57
|
it "should give a dependency with the expected requirement" do
|
58
58
|
dependency = resolution.dependencies.first
|
59
59
|
|
60
|
-
|
61
|
-
expect(dependency.requirement.to_s).to eq "!= 1.2.6, ~> 1.1"
|
60
|
+
expect(dependency.requirement).to eq Librarian::Dependency::Requirement.new(["~> 1.1", "!= 1.2.6"])
|
62
61
|
end
|
63
62
|
|
64
63
|
it "should give a dependency wth the expected source" do
|
@@ -69,7 +68,7 @@ module Librarian
|
|
69
68
|
end
|
70
69
|
|
71
70
|
it "should give a list of one manifest" do
|
72
|
-
expect(resolution).to
|
71
|
+
expect(resolution.manifests.size).to eq 1
|
73
72
|
end
|
74
73
|
|
75
74
|
it "should give a manifest with the expected name" do
|
@@ -125,7 +124,7 @@ module Librarian
|
|
125
124
|
end
|
126
125
|
|
127
126
|
it "should give a list of one dependency" do
|
128
|
-
expect(resolution).to
|
127
|
+
expect(resolution.dependencies.size).to eq 1
|
129
128
|
end
|
130
129
|
|
131
130
|
it "should have the expected dependency" do
|
@@ -135,7 +134,7 @@ module Librarian
|
|
135
134
|
end
|
136
135
|
|
137
136
|
it "should give a list of all the manifests" do
|
138
|
-
expect(resolution).to
|
137
|
+
expect(resolution.manifests.size).to eq 2
|
139
138
|
end
|
140
139
|
|
141
140
|
it "should include all the expected manifests" do
|
data/spec/unit/lockfile_spec.rb
CHANGED
data/spec/unit/resolver_spec.rb
CHANGED
@@ -94,7 +94,7 @@ module Librarian
|
|
94
94
|
end
|
95
95
|
|
96
96
|
it "should have the expected number of sources" do
|
97
|
-
expect(spec).to
|
97
|
+
expect(spec.sources.size).to eq 2
|
98
98
|
end
|
99
99
|
|
100
100
|
let(:resolution) { resolver.resolve(spec) }
|
@@ -288,7 +288,7 @@ module Librarian
|
|
288
288
|
it "loads the specfile with the __FILE__" do
|
289
289
|
write! specfile_path, "src __FILE__"
|
290
290
|
spec = env.dsl(specfile_path)
|
291
|
-
expect(spec.sources).to
|
291
|
+
expect(spec.sources.size).to eq 1
|
292
292
|
source = spec.sources.first
|
293
293
|
expect(source.name).to eq specfile_path.to_s
|
294
294
|
end
|
@@ -17,11 +17,17 @@ module Librarian
|
|
17
17
|
|
18
18
|
context "with an unknown option" do
|
19
19
|
it "should raise" do
|
20
|
-
expect { described_class.from_spec_args(env, "some://git/repo.git", :
|
21
|
-
to raise_error Error, "unrecognized options:
|
20
|
+
expect { described_class.from_spec_args(env, "some://git/repo.git", :I_am_unknown => "megapatches") }.
|
21
|
+
to raise_error Error, "unrecognized options: I_am_unknown"
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
25
|
+
context "with invalid options" do
|
26
|
+
it "should raise" do
|
27
|
+
expect { described_class.from_spec_args(env, "some://git/repo.git", {:ref => "megapatches", :branch => "megapatches"}) }.
|
28
|
+
to raise_error Error, "at some://git/repo.git, use only one of ref, branch, tag, or commit"
|
29
|
+
end
|
30
|
+
end
|
25
31
|
end
|
26
32
|
|
27
33
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: librarianp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jay Feldblum
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-08-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
@@ -17,14 +17,14 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: '0
|
20
|
+
version: '1.0'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: '0
|
27
|
+
version: '1.0'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: rake
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -45,14 +45,14 @@ dependencies:
|
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: '
|
48
|
+
version: '3.0'
|
49
49
|
type: :development
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: '
|
55
|
+
version: '3.0'
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: json
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -73,14 +73,14 @@ dependencies:
|
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: 0
|
76
|
+
version: '1.0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: 0
|
83
|
+
version: '1.0'
|
84
84
|
description: A Framework for Bundlers, used by librarian-puppet.
|
85
85
|
email:
|
86
86
|
- y_feldblum@yahoo.com
|
@@ -89,12 +89,12 @@ executables: []
|
|
89
89
|
extensions: []
|
90
90
|
extra_rdoc_files: []
|
91
91
|
files:
|
92
|
+
- ".github/workflows/release.yml"
|
93
|
+
- ".github/workflows/test.yml"
|
92
94
|
- ".gitignore"
|
93
95
|
- ".rspec"
|
94
|
-
- ".travis.yml"
|
95
96
|
- CHANGELOG.md
|
96
97
|
- Gemfile
|
97
|
-
- Gemfile.lock
|
98
98
|
- LICENSE.txt
|
99
99
|
- README.md
|
100
100
|
- Rakefile
|
@@ -159,7 +159,7 @@ files:
|
|
159
159
|
- lib/librarian/support/abstract_method.rb
|
160
160
|
- lib/librarian/ui.rb
|
161
161
|
- lib/librarian/version.rb
|
162
|
-
-
|
162
|
+
- librarianp.gemspec
|
163
163
|
- spec/functional/cli_spec.rb
|
164
164
|
- spec/functional/posix_spec.rb
|
165
165
|
- spec/functional/source/git/repository_spec.rb
|
@@ -190,7 +190,7 @@ files:
|
|
190
190
|
- spec/unit/resolver_spec.rb
|
191
191
|
- spec/unit/source/git_spec.rb
|
192
192
|
- spec/unit/spec_change_set_spec.rb
|
193
|
-
homepage: https://github.com/
|
193
|
+
homepage: https://github.com/voxpupuli/librarian
|
194
194
|
licenses:
|
195
195
|
- MIT
|
196
196
|
metadata: {}
|
@@ -202,15 +202,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
202
202
|
requirements:
|
203
203
|
- - ">="
|
204
204
|
- !ruby/object:Gem::Version
|
205
|
-
version: '
|
205
|
+
version: '2.4'
|
206
|
+
- - "<"
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '4'
|
206
209
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
207
210
|
requirements:
|
208
211
|
- - ">="
|
209
212
|
- !ruby/object:Gem::Version
|
210
213
|
version: '0'
|
211
214
|
requirements: []
|
212
|
-
|
213
|
-
rubygems_version: 2.4.6
|
215
|
+
rubygems_version: 3.2.22
|
214
216
|
signing_key:
|
215
217
|
specification_version: 4
|
216
218
|
summary: A Framework for Bundlers.
|
data/.travis.yml
DELETED
data/Gemfile.lock
DELETED
@@ -1,233 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
librarianp (0.6.3)
|
5
|
-
thor (~> 0.15)
|
6
|
-
|
7
|
-
GEM
|
8
|
-
remote: https://rubygems.org/
|
9
|
-
specs:
|
10
|
-
diff-lcs (1.2.5)
|
11
|
-
fakefs (0.4.2)
|
12
|
-
ffi2-generators (0.1.1)
|
13
|
-
json (1.8.2)
|
14
|
-
rake (10.4.2)
|
15
|
-
rspec (2.99.0)
|
16
|
-
rspec-core (~> 2.99.0)
|
17
|
-
rspec-expectations (~> 2.99.0)
|
18
|
-
rspec-mocks (~> 2.99.0)
|
19
|
-
rspec-core (2.99.2)
|
20
|
-
rspec-expectations (2.99.2)
|
21
|
-
diff-lcs (>= 1.1.3, < 2.0)
|
22
|
-
rspec-mocks (2.99.3)
|
23
|
-
rubysl (2.1.0)
|
24
|
-
rubysl-abbrev (~> 2.0)
|
25
|
-
rubysl-base64 (~> 2.0)
|
26
|
-
rubysl-benchmark (~> 2.0)
|
27
|
-
rubysl-bigdecimal (~> 2.0)
|
28
|
-
rubysl-cgi (~> 2.0)
|
29
|
-
rubysl-cgi-session (~> 2.0)
|
30
|
-
rubysl-cmath (~> 2.0)
|
31
|
-
rubysl-complex (~> 2.0)
|
32
|
-
rubysl-continuation (~> 2.0)
|
33
|
-
rubysl-coverage (~> 2.0)
|
34
|
-
rubysl-csv (~> 2.0)
|
35
|
-
rubysl-curses (~> 2.0)
|
36
|
-
rubysl-date (~> 2.0)
|
37
|
-
rubysl-delegate (~> 2.0)
|
38
|
-
rubysl-digest (~> 2.0)
|
39
|
-
rubysl-drb (~> 2.0)
|
40
|
-
rubysl-e2mmap (~> 2.0)
|
41
|
-
rubysl-english (~> 2.0)
|
42
|
-
rubysl-enumerator (~> 2.0)
|
43
|
-
rubysl-erb (~> 2.0)
|
44
|
-
rubysl-etc (~> 2.0)
|
45
|
-
rubysl-expect (~> 2.0)
|
46
|
-
rubysl-fcntl (~> 2.0)
|
47
|
-
rubysl-fiber (~> 2.0)
|
48
|
-
rubysl-fileutils (~> 2.0)
|
49
|
-
rubysl-find (~> 2.0)
|
50
|
-
rubysl-forwardable (~> 2.0)
|
51
|
-
rubysl-getoptlong (~> 2.0)
|
52
|
-
rubysl-gserver (~> 2.0)
|
53
|
-
rubysl-io-console (~> 2.0)
|
54
|
-
rubysl-io-nonblock (~> 2.0)
|
55
|
-
rubysl-io-wait (~> 2.0)
|
56
|
-
rubysl-ipaddr (~> 2.0)
|
57
|
-
rubysl-irb (~> 2.1)
|
58
|
-
rubysl-logger (~> 2.0)
|
59
|
-
rubysl-mathn (~> 2.0)
|
60
|
-
rubysl-matrix (~> 2.0)
|
61
|
-
rubysl-mkmf (~> 2.0)
|
62
|
-
rubysl-monitor (~> 2.0)
|
63
|
-
rubysl-mutex_m (~> 2.0)
|
64
|
-
rubysl-net-ftp (~> 2.0)
|
65
|
-
rubysl-net-http (~> 2.0)
|
66
|
-
rubysl-net-imap (~> 2.0)
|
67
|
-
rubysl-net-pop (~> 2.0)
|
68
|
-
rubysl-net-protocol (~> 2.0)
|
69
|
-
rubysl-net-smtp (~> 2.0)
|
70
|
-
rubysl-net-telnet (~> 2.0)
|
71
|
-
rubysl-nkf (~> 2.0)
|
72
|
-
rubysl-observer (~> 2.0)
|
73
|
-
rubysl-open-uri (~> 2.0)
|
74
|
-
rubysl-open3 (~> 2.0)
|
75
|
-
rubysl-openssl (~> 2.0)
|
76
|
-
rubysl-optparse (~> 2.0)
|
77
|
-
rubysl-ostruct (~> 2.0)
|
78
|
-
rubysl-pathname (~> 2.0)
|
79
|
-
rubysl-prettyprint (~> 2.0)
|
80
|
-
rubysl-prime (~> 2.0)
|
81
|
-
rubysl-profile (~> 2.0)
|
82
|
-
rubysl-profiler (~> 2.0)
|
83
|
-
rubysl-pstore (~> 2.0)
|
84
|
-
rubysl-pty (~> 2.0)
|
85
|
-
rubysl-rational (~> 2.0)
|
86
|
-
rubysl-resolv (~> 2.0)
|
87
|
-
rubysl-rexml (~> 2.0)
|
88
|
-
rubysl-rinda (~> 2.0)
|
89
|
-
rubysl-rss (~> 2.0)
|
90
|
-
rubysl-scanf (~> 2.0)
|
91
|
-
rubysl-securerandom (~> 2.0)
|
92
|
-
rubysl-set (~> 2.0)
|
93
|
-
rubysl-shellwords (~> 2.0)
|
94
|
-
rubysl-singleton (~> 2.0)
|
95
|
-
rubysl-socket (~> 2.0)
|
96
|
-
rubysl-stringio (~> 2.0)
|
97
|
-
rubysl-strscan (~> 2.0)
|
98
|
-
rubysl-sync (~> 2.0)
|
99
|
-
rubysl-syslog (~> 2.0)
|
100
|
-
rubysl-tempfile (~> 2.0)
|
101
|
-
rubysl-thread (~> 2.0)
|
102
|
-
rubysl-thwait (~> 2.0)
|
103
|
-
rubysl-time (~> 2.0)
|
104
|
-
rubysl-timeout (~> 2.0)
|
105
|
-
rubysl-tmpdir (~> 2.0)
|
106
|
-
rubysl-tsort (~> 2.0)
|
107
|
-
rubysl-un (~> 2.0)
|
108
|
-
rubysl-uri (~> 2.0)
|
109
|
-
rubysl-weakref (~> 2.0)
|
110
|
-
rubysl-webrick (~> 2.0)
|
111
|
-
rubysl-xmlrpc (~> 2.0)
|
112
|
-
rubysl-yaml (~> 2.0)
|
113
|
-
rubysl-zlib (~> 2.0)
|
114
|
-
rubysl-abbrev (2.0.4)
|
115
|
-
rubysl-base64 (2.0.0)
|
116
|
-
rubysl-benchmark (2.0.1)
|
117
|
-
rubysl-bigdecimal (2.0.2)
|
118
|
-
rubysl-cgi (2.0.1)
|
119
|
-
rubysl-cgi-session (2.0.1)
|
120
|
-
rubysl-cmath (2.0.0)
|
121
|
-
rubysl-complex (2.0.0)
|
122
|
-
rubysl-continuation (2.0.0)
|
123
|
-
rubysl-coverage (2.0.3)
|
124
|
-
rubysl-csv (2.0.2)
|
125
|
-
rubysl-english (~> 2.0)
|
126
|
-
rubysl-curses (2.0.1)
|
127
|
-
rubysl-date (2.0.9)
|
128
|
-
rubysl-delegate (2.0.1)
|
129
|
-
rubysl-digest (2.0.3)
|
130
|
-
rubysl-drb (2.0.1)
|
131
|
-
rubysl-e2mmap (2.0.0)
|
132
|
-
rubysl-english (2.0.0)
|
133
|
-
rubysl-enumerator (2.0.0)
|
134
|
-
rubysl-erb (2.0.2)
|
135
|
-
rubysl-etc (2.0.3)
|
136
|
-
ffi2-generators (~> 0.1)
|
137
|
-
rubysl-expect (2.0.0)
|
138
|
-
rubysl-fcntl (2.0.4)
|
139
|
-
ffi2-generators (~> 0.1)
|
140
|
-
rubysl-fiber (2.0.0)
|
141
|
-
rubysl-fileutils (2.0.3)
|
142
|
-
rubysl-find (2.0.1)
|
143
|
-
rubysl-forwardable (2.0.1)
|
144
|
-
rubysl-getoptlong (2.0.0)
|
145
|
-
rubysl-gserver (2.0.0)
|
146
|
-
rubysl-socket (~> 2.0)
|
147
|
-
rubysl-thread (~> 2.0)
|
148
|
-
rubysl-io-console (2.0.0)
|
149
|
-
rubysl-io-nonblock (2.0.0)
|
150
|
-
rubysl-io-wait (2.0.0)
|
151
|
-
rubysl-ipaddr (2.0.0)
|
152
|
-
rubysl-irb (2.1.1)
|
153
|
-
rubysl-e2mmap (~> 2.0)
|
154
|
-
rubysl-mathn (~> 2.0)
|
155
|
-
rubysl-thread (~> 2.0)
|
156
|
-
rubysl-logger (2.1.0)
|
157
|
-
rubysl-mathn (2.0.0)
|
158
|
-
rubysl-matrix (2.1.0)
|
159
|
-
rubysl-e2mmap (~> 2.0)
|
160
|
-
rubysl-mkmf (2.0.1)
|
161
|
-
rubysl-fileutils (~> 2.0)
|
162
|
-
rubysl-shellwords (~> 2.0)
|
163
|
-
rubysl-monitor (2.0.0)
|
164
|
-
rubysl-mutex_m (2.0.0)
|
165
|
-
rubysl-net-ftp (2.0.1)
|
166
|
-
rubysl-net-http (2.0.4)
|
167
|
-
rubysl-cgi (~> 2.0)
|
168
|
-
rubysl-erb (~> 2.0)
|
169
|
-
rubysl-singleton (~> 2.0)
|
170
|
-
rubysl-net-imap (2.0.1)
|
171
|
-
rubysl-net-pop (2.0.1)
|
172
|
-
rubysl-net-protocol (2.0.1)
|
173
|
-
rubysl-net-smtp (2.0.1)
|
174
|
-
rubysl-net-telnet (2.0.0)
|
175
|
-
rubysl-nkf (2.0.1)
|
176
|
-
rubysl-observer (2.0.0)
|
177
|
-
rubysl-open-uri (2.0.0)
|
178
|
-
rubysl-open3 (2.0.0)
|
179
|
-
rubysl-openssl (2.2.1)
|
180
|
-
rubysl-optparse (2.0.1)
|
181
|
-
rubysl-shellwords (~> 2.0)
|
182
|
-
rubysl-ostruct (2.0.4)
|
183
|
-
rubysl-pathname (2.1.0)
|
184
|
-
rubysl-prettyprint (2.0.3)
|
185
|
-
rubysl-prime (2.0.1)
|
186
|
-
rubysl-profile (2.0.0)
|
187
|
-
rubysl-profiler (2.0.1)
|
188
|
-
rubysl-pstore (2.0.0)
|
189
|
-
rubysl-pty (2.0.3)
|
190
|
-
rubysl-rational (2.0.1)
|
191
|
-
rubysl-resolv (2.1.2)
|
192
|
-
rubysl-rexml (2.0.4)
|
193
|
-
rubysl-rinda (2.0.1)
|
194
|
-
rubysl-rss (2.0.0)
|
195
|
-
rubysl-scanf (2.0.0)
|
196
|
-
rubysl-securerandom (2.0.0)
|
197
|
-
rubysl-set (2.0.1)
|
198
|
-
rubysl-shellwords (2.0.0)
|
199
|
-
rubysl-singleton (2.0.0)
|
200
|
-
rubysl-socket (2.0.1)
|
201
|
-
rubysl-stringio (2.0.0)
|
202
|
-
rubysl-strscan (2.0.0)
|
203
|
-
rubysl-sync (2.0.0)
|
204
|
-
rubysl-syslog (2.1.0)
|
205
|
-
ffi2-generators (~> 0.1)
|
206
|
-
rubysl-tempfile (2.0.1)
|
207
|
-
rubysl-thread (2.0.3)
|
208
|
-
rubysl-thwait (2.0.0)
|
209
|
-
rubysl-time (2.0.3)
|
210
|
-
rubysl-timeout (2.0.0)
|
211
|
-
rubysl-tmpdir (2.0.1)
|
212
|
-
rubysl-tsort (2.0.1)
|
213
|
-
rubysl-un (2.0.0)
|
214
|
-
rubysl-fileutils (~> 2.0)
|
215
|
-
rubysl-optparse (~> 2.0)
|
216
|
-
rubysl-uri (2.0.0)
|
217
|
-
rubysl-weakref (2.0.0)
|
218
|
-
rubysl-webrick (2.0.0)
|
219
|
-
rubysl-xmlrpc (2.0.0)
|
220
|
-
rubysl-yaml (2.1.0)
|
221
|
-
rubysl-zlib (2.0.1)
|
222
|
-
thor (0.19.1)
|
223
|
-
|
224
|
-
PLATFORMS
|
225
|
-
ruby
|
226
|
-
|
227
|
-
DEPENDENCIES
|
228
|
-
fakefs
|
229
|
-
json
|
230
|
-
librarianp!
|
231
|
-
rake
|
232
|
-
rspec (~> 2.14)
|
233
|
-
rubysl
|
data/librarian.gemspec
DELETED
@@ -1,44 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# stub: librarianp 0.6.3 ruby lib
|
3
|
-
|
4
|
-
Gem::Specification.new do |s|
|
5
|
-
s.name = "librarianp"
|
6
|
-
s.version = "0.6.3"
|
7
|
-
|
8
|
-
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
9
|
-
s.require_paths = ["lib"]
|
10
|
-
s.authors = ["Jay Feldblum", "Carlos Sanchez"]
|
11
|
-
s.date = "2015-05-20"
|
12
|
-
s.description = "A Framework for Bundlers, used by librarian-puppet."
|
13
|
-
s.email = ["y_feldblum@yahoo.com", "carlos@apache.org"]
|
14
|
-
s.files = [".gitignore", ".rspec", ".travis.yml", "CHANGELOG.md", "Gemfile", "Gemfile.lock", "LICENSE.txt", "README.md", "Rakefile", "VERSION", "lib/librarian.rb", "lib/librarian/action.rb", "lib/librarian/action/base.rb", "lib/librarian/action/clean.rb", "lib/librarian/action/ensure.rb", "lib/librarian/action/install.rb", "lib/librarian/action/persist_resolution_mixin.rb", "lib/librarian/action/resolve.rb", "lib/librarian/action/update.rb", "lib/librarian/algorithms.rb", "lib/librarian/cli.rb", "lib/librarian/cli/manifest_presenter.rb", "lib/librarian/config.rb", "lib/librarian/config/database.rb", "lib/librarian/config/file_source.rb", "lib/librarian/config/hash_source.rb", "lib/librarian/config/source.rb", "lib/librarian/dependency.rb", "lib/librarian/dsl.rb", "lib/librarian/dsl/receiver.rb", "lib/librarian/dsl/target.rb", "lib/librarian/environment.rb", "lib/librarian/environment/runtime_cache.rb", "lib/librarian/error.rb", "lib/librarian/helpers.rb", "lib/librarian/linter/source_linter.rb", "lib/librarian/lockfile.rb", "lib/librarian/lockfile/compiler.rb", "lib/librarian/lockfile/parser.rb", "lib/librarian/logger.rb", "lib/librarian/manifest.rb", "lib/librarian/manifest/pre_release_version.rb", "lib/librarian/manifest/version.rb", "lib/librarian/manifest_set.rb", "lib/librarian/mock.rb", "lib/librarian/mock/cli.rb", "lib/librarian/mock/dsl.rb", "lib/librarian/mock/environment.rb", "lib/librarian/mock/extension.rb", "lib/librarian/mock/source.rb", "lib/librarian/mock/source/mock.rb", "lib/librarian/mock/source/mock/registry.rb", "lib/librarian/mock/version.rb", "lib/librarian/posix.rb", "lib/librarian/resolution.rb", "lib/librarian/resolver.rb", "lib/librarian/resolver/implementation.rb", "lib/librarian/rspec/support/cli_macro.rb", "lib/librarian/source.rb", "lib/librarian/source/basic_api.rb", "lib/librarian/source/git.rb", "lib/librarian/source/git/repository.rb", "lib/librarian/source/local.rb", "lib/librarian/source/path.rb", "lib/librarian/spec.rb", "lib/librarian/spec_change_set.rb", "lib/librarian/specfile.rb", "lib/librarian/support/abstract_method.rb", "lib/librarian/ui.rb", "lib/librarian/version.rb", "librarian.gemspec", "spec/functional/cli_spec.rb", "spec/functional/posix_spec.rb", "spec/functional/source/git/repository_spec.rb", "spec/functional/source/git_spec.rb", "spec/support/fakefs.rb", "spec/support/method_patch_macro.rb", "spec/support/project_path_macro.rb", "spec/support/with_env_macro.rb", "spec/unit/action/base_spec.rb", "spec/unit/action/clean_spec.rb", "spec/unit/action/ensure_spec.rb", "spec/unit/action/install_spec.rb", "spec/unit/action/resolve_spec.rb", "spec/unit/algorithms_spec.rb", "spec/unit/config/database_spec.rb", "spec/unit/dependency/requirement_spec.rb", "spec/unit/dependency_spec.rb", "spec/unit/dsl_spec.rb", "spec/unit/environment/runtime_cache_spec.rb", "spec/unit/environment_spec.rb", "spec/unit/lockfile/parser_spec.rb", "spec/unit/lockfile_spec.rb", "spec/unit/manifest/version_spec.rb", "spec/unit/manifest_set_spec.rb", "spec/unit/manifest_spec.rb", "spec/unit/mock/environment_spec.rb", "spec/unit/mock/source/mock_spec.rb", "spec/unit/resolver_spec.rb", "spec/unit/source/git_spec.rb", "spec/unit/spec_change_set_spec.rb"]
|
15
|
-
s.homepage = "https://github.com/carlossg/librarian"
|
16
|
-
s.licenses = ["MIT"]
|
17
|
-
s.rubygems_version = "2.4.6"
|
18
|
-
s.summary = "A Framework for Bundlers."
|
19
|
-
s.test_files = ["spec/functional/cli_spec.rb", "spec/functional/posix_spec.rb", "spec/functional/source/git/repository_spec.rb", "spec/functional/source/git_spec.rb", "spec/support/fakefs.rb", "spec/support/method_patch_macro.rb", "spec/support/project_path_macro.rb", "spec/support/with_env_macro.rb", "spec/unit/action/base_spec.rb", "spec/unit/action/clean_spec.rb", "spec/unit/action/ensure_spec.rb", "spec/unit/action/install_spec.rb", "spec/unit/action/resolve_spec.rb", "spec/unit/algorithms_spec.rb", "spec/unit/config/database_spec.rb", "spec/unit/dependency/requirement_spec.rb", "spec/unit/dependency_spec.rb", "spec/unit/dsl_spec.rb", "spec/unit/environment/runtime_cache_spec.rb", "spec/unit/environment_spec.rb", "spec/unit/lockfile/parser_spec.rb", "spec/unit/lockfile_spec.rb", "spec/unit/manifest/version_spec.rb", "spec/unit/manifest_set_spec.rb", "spec/unit/manifest_spec.rb", "spec/unit/mock/environment_spec.rb", "spec/unit/mock/source/mock_spec.rb", "spec/unit/resolver_spec.rb", "spec/unit/source/git_spec.rb", "spec/unit/spec_change_set_spec.rb"]
|
20
|
-
|
21
|
-
if s.respond_to? :specification_version then
|
22
|
-
s.specification_version = 4
|
23
|
-
|
24
|
-
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
25
|
-
s.add_runtime_dependency(%q<thor>, ["~> 0.15"])
|
26
|
-
s.add_development_dependency(%q<rake>, [">= 0"])
|
27
|
-
s.add_development_dependency(%q<rspec>, ["~> 2.14"])
|
28
|
-
s.add_development_dependency(%q<json>, [">= 0"])
|
29
|
-
s.add_development_dependency(%q<fakefs>, ["~> 0.4.2"])
|
30
|
-
else
|
31
|
-
s.add_dependency(%q<thor>, ["~> 0.15"])
|
32
|
-
s.add_dependency(%q<rake>, [">= 0"])
|
33
|
-
s.add_dependency(%q<rspec>, ["~> 2.14"])
|
34
|
-
s.add_dependency(%q<json>, [">= 0"])
|
35
|
-
s.add_dependency(%q<fakefs>, ["~> 0.4.2"])
|
36
|
-
end
|
37
|
-
else
|
38
|
-
s.add_dependency(%q<thor>, ["~> 0.15"])
|
39
|
-
s.add_dependency(%q<rake>, [">= 0"])
|
40
|
-
s.add_dependency(%q<rspec>, ["~> 2.14"])
|
41
|
-
s.add_dependency(%q<json>, [">= 0"])
|
42
|
-
s.add_dependency(%q<fakefs>, ["~> 0.4.2"])
|
43
|
-
end
|
44
|
-
end
|