pray-cli 1.15.0 → 1.17.0
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 +4 -4
- data/CHANGELOG.md +17 -0
- data/lib/pray/apply_report.rb +49 -0
- data/lib/pray/cli/commands/init.rb +1 -20
- data/lib/pray/cli/commands/init_prayer.rb +76 -0
- data/lib/pray/cli/commands/init_prayer_manifest.rb +102 -0
- data/lib/pray/cli/commands/packages.rb +13 -2
- data/lib/pray/cli/commands/workflow.rb +5 -0
- data/lib/pray/cli/help.rb +52 -15
- data/lib/pray/cli/helpers.rb +13 -5
- data/lib/pray/cli/parse.rb +21 -1
- data/lib/pray/cli.rb +3 -1
- data/lib/pray/constraint.rb +17 -4
- data/lib/pray/dependency_graph.rb +43 -0
- data/lib/pray/destination.rb +32 -2
- data/lib/pray/distribution.rb +94 -0
- data/lib/pray/format_serialize.rb +1 -4
- data/lib/pray/git_sources.rb +11 -10
- data/lib/pray/local_prayer.rb +38 -0
- data/lib/pray/lockfile.rb +8 -2
- data/lib/pray/manifest.rb +6 -3
- data/lib/pray/manifest_json.rb +1 -0
- data/lib/pray/manifest_parser_blocks.rb +15 -15
- data/lib/pray/materialize.rb +8 -1
- data/lib/pray/package_spec.rb +25 -13
- data/lib/pray/package_spec_render.rb +4 -3
- data/lib/pray/package_spec_version.rb +33 -0
- data/lib/pray/plan.rb +2 -1
- data/lib/pray/publish.rb +27 -2
- data/lib/pray/registry.rb +12 -0
- data/lib/pray/registry_paths.rb +14 -0
- data/lib/pray/render.rb +6 -36
- data/lib/pray/render_managed.rb +64 -0
- data/lib/pray/render_patch.rb +63 -12
- data/lib/pray/resolve.rb +17 -50
- data/lib/pray/resolve_context.rb +7 -0
- data/lib/pray/resolve_deps.rb +18 -0
- data/lib/pray/resolve_local.rb +39 -0
- data/lib/pray/resolve_source.rb +5 -0
- data/lib/pray/resolve_tarball.rb +66 -0
- data/lib/pray/serve.rb +15 -4
- data/lib/pray/serve_range.rb +36 -0
- data/lib/pray/torrent_manifest.rb +78 -0
- data/lib/pray/upstream_drift.rb +42 -0
- data/lib/pray/upstream_merge.rb +25 -0
- data/lib/pray/upstream_refresh.rb +28 -2
- data/lib/pray/verify.rb +2 -2
- data/lib/pray/verify_locked_dest.rb +47 -0
- data/lib/pray/version.rb +2 -2
- data/lib/pray.rb +15 -1
- metadata +17 -1
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "json"
|
|
4
|
+
require "fileutils"
|
|
5
|
+
|
|
6
|
+
module Pray
|
|
7
|
+
TORRENT_MANIFEST_SPEC = "pray-torrent-v1"
|
|
8
|
+
DEFAULT_TORRENT_PIECE_SIZE = 16 * 1024
|
|
9
|
+
|
|
10
|
+
module TorrentManifest
|
|
11
|
+
module_function
|
|
12
|
+
|
|
13
|
+
def path_for(artifact_path)
|
|
14
|
+
"#{artifact_path}.praytorrent.json"
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def payload(name:, version:, artifact_path:, archive_bytes:, trackers: [])
|
|
18
|
+
{
|
|
19
|
+
"spec" => TORRENT_MANIFEST_SPEC,
|
|
20
|
+
"name" => name,
|
|
21
|
+
"version" => version,
|
|
22
|
+
"artifact_url" => artifact_path,
|
|
23
|
+
"artifact_hash" => Hashing.sha256_prefixed(archive_bytes),
|
|
24
|
+
"piece_size" => DEFAULT_TORRENT_PIECE_SIZE,
|
|
25
|
+
"length" => archive_bytes.bytesize,
|
|
26
|
+
"pieces" => piece_hashes(archive_bytes),
|
|
27
|
+
"sources" => [artifact_path],
|
|
28
|
+
"trackers" => Array(trackers)
|
|
29
|
+
}
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def bytes(name:, version:, artifact_path:, archive_bytes:, trackers: [])
|
|
33
|
+
JSON.pretty_generate(
|
|
34
|
+
payload(
|
|
35
|
+
name: name,
|
|
36
|
+
version: version,
|
|
37
|
+
artifact_path: artifact_path,
|
|
38
|
+
archive_bytes: archive_bytes,
|
|
39
|
+
trackers: trackers
|
|
40
|
+
)
|
|
41
|
+
)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def write(root, name:, version:, artifact_path:, archive_bytes:, settings:)
|
|
45
|
+
return unless settings.allows_torrent?
|
|
46
|
+
|
|
47
|
+
path = File.join(root, path_for(artifact_path))
|
|
48
|
+
FileUtils.mkdir_p(File.dirname(path))
|
|
49
|
+
File.write(
|
|
50
|
+
path,
|
|
51
|
+
bytes(
|
|
52
|
+
name: name,
|
|
53
|
+
version: version,
|
|
54
|
+
artifact_path: artifact_path,
|
|
55
|
+
archive_bytes: archive_bytes,
|
|
56
|
+
trackers: settings.bootstrap_trackers
|
|
57
|
+
)
|
|
58
|
+
)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def piece_hashes(archive_bytes)
|
|
62
|
+
length = archive_bytes.bytesize
|
|
63
|
+
return [] if length.zero?
|
|
64
|
+
|
|
65
|
+
hashes = []
|
|
66
|
+
start = 0
|
|
67
|
+
while start < length
|
|
68
|
+
hashes << Hashing.sha256_prefixed(archive_bytes.byteslice(start, DEFAULT_TORRENT_PIECE_SIZE))
|
|
69
|
+
start += DEFAULT_TORRENT_PIECE_SIZE
|
|
70
|
+
end
|
|
71
|
+
hashes
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
def descriptor_present?(root, artifact_path, settings)
|
|
75
|
+
!settings.allows_torrent? || File.file?(File.join(root, path_for(artifact_path)))
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pray
|
|
4
|
+
module Upstream
|
|
5
|
+
module_function
|
|
6
|
+
|
|
7
|
+
def path_fork_drift_lines(project, previous, options)
|
|
8
|
+
user_config = Config.load_user_config
|
|
9
|
+
git_sources = GitSources.prepare_git_sources(
|
|
10
|
+
project.project_root,
|
|
11
|
+
project.manifest.sources,
|
|
12
|
+
previous,
|
|
13
|
+
refresh: options.refresh || options.refresh_source_revisions
|
|
14
|
+
)
|
|
15
|
+
sources = Resolve.source_map(project.manifest.sources)
|
|
16
|
+
lines = []
|
|
17
|
+
project.packages.each do |package|
|
|
18
|
+
next unless package.declaration.path
|
|
19
|
+
next unless package.upstream
|
|
20
|
+
|
|
21
|
+
upstream = package.upstream
|
|
22
|
+
resolved = resolve_named(
|
|
23
|
+
project.project_root, sources, git_sources, user_config, previous, options,
|
|
24
|
+
upstream.name, "= #{upstream.version}", upstream.source
|
|
25
|
+
)
|
|
26
|
+
upstream_content = content_file_bytes(resolved.root, resolved.spec)
|
|
27
|
+
local_content = local_content_for_refresh(package.root, package.spec)
|
|
28
|
+
if local_content.empty?
|
|
29
|
+
lines << "#{package.declaration.name} has no content files; run pray install to copy #{upstream.name} #{upstream.version}"
|
|
30
|
+
next
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
overlay_file_changes(local_content, upstream_content).each do |path, change|
|
|
34
|
+
lines << overlay_drift_line(
|
|
35
|
+
package.declaration.name, upstream.name, upstream.version, path, change
|
|
36
|
+
)
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
lines
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
data/lib/pray/upstream_merge.rb
CHANGED
|
@@ -76,6 +76,31 @@ module Pray
|
|
|
76
76
|
|
|
77
77
|
"= #{new_version}"
|
|
78
78
|
end
|
|
79
|
+
|
|
80
|
+
def overlay_file_changes(local_content, upstream_content)
|
|
81
|
+
(local_content.keys + upstream_content.keys).uniq.sort.filter_map do |path|
|
|
82
|
+
local = local_content[path]
|
|
83
|
+
upstream = upstream_content[path]
|
|
84
|
+
if local && upstream && local != upstream
|
|
85
|
+
[path, :changed]
|
|
86
|
+
elsif local && upstream.nil?
|
|
87
|
+
[path, :local_only]
|
|
88
|
+
elsif local.nil? && upstream
|
|
89
|
+
[path, :missing]
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def overlay_drift_line(fork, upstream_name, upstream_version, path, change)
|
|
95
|
+
case change
|
|
96
|
+
when :changed
|
|
97
|
+
"#{fork} #{path} differs from #{upstream_name} #{upstream_version}"
|
|
98
|
+
when :local_only
|
|
99
|
+
"#{fork} #{path} local"
|
|
100
|
+
else
|
|
101
|
+
"#{fork} #{path} missing from fork"
|
|
102
|
+
end
|
|
103
|
+
end
|
|
79
104
|
private_class_method :merge_one_content_path, :merge_all_present
|
|
80
105
|
end
|
|
81
106
|
end
|
|
@@ -27,6 +27,11 @@ module Pray
|
|
|
27
27
|
new_upstream = package.upstream
|
|
28
28
|
return false unless new_upstream && package.declaration.path
|
|
29
29
|
|
|
30
|
+
local_content = local_content_for_refresh(package.root, package.spec)
|
|
31
|
+
if local_content.empty?
|
|
32
|
+
return materialize_empty_path_fork(project, package, previous, sources, git_sources, user_config, options, new_upstream)
|
|
33
|
+
end
|
|
34
|
+
|
|
30
35
|
old_upstream = previous&.package&.find { |entry| entry.name == package.declaration.name }&.upstream
|
|
31
36
|
return false unless old_upstream
|
|
32
37
|
return false if old_upstream.version == new_upstream.version && old_upstream.tree_hash == new_upstream.tree_hash
|
|
@@ -40,6 +45,27 @@ module Pray
|
|
|
40
45
|
true
|
|
41
46
|
end
|
|
42
47
|
|
|
48
|
+
def materialize_empty_path_fork(project, package, previous, sources, git_sources, user_config, options, new_upstream)
|
|
49
|
+
new_package = resolve_named(
|
|
50
|
+
project.project_root, sources, git_sources, user_config, previous, options,
|
|
51
|
+
new_upstream.name, "= #{new_upstream.version}", new_upstream.source
|
|
52
|
+
)
|
|
53
|
+
new_content = content_file_bytes(new_package.root, new_package.spec)
|
|
54
|
+
write_content_files(package.root, {}, new_content)
|
|
55
|
+
write_refreshed_spec(package, new_package, {}, {}, new_content)
|
|
56
|
+
true
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def local_content_for_refresh(root, spec)
|
|
60
|
+
paths = content_paths(spec.files)
|
|
61
|
+
return {} if paths.empty?
|
|
62
|
+
|
|
63
|
+
missing = paths.count { |relative| !File.file?(File.join(root, relative)) }
|
|
64
|
+
return {} if missing == paths.length
|
|
65
|
+
|
|
66
|
+
content_file_bytes(root, spec)
|
|
67
|
+
end
|
|
68
|
+
|
|
43
69
|
def resolve_upstream_pair(project, previous, sources, git_sources, user_config, options, old_upstream, new_upstream)
|
|
44
70
|
old_package = resolve_named(
|
|
45
71
|
project.project_root, sources, git_sources, user_config, previous, options,
|
|
@@ -80,7 +106,6 @@ module Pray
|
|
|
80
106
|
updated = PackageSpecRender.fork_spec_after_refresh(
|
|
81
107
|
package.spec,
|
|
82
108
|
new_package.spec,
|
|
83
|
-
File.basename(spec_path),
|
|
84
109
|
clean_replica?(old_content, local_content),
|
|
85
110
|
merged.keys
|
|
86
111
|
)
|
|
@@ -138,7 +163,8 @@ module Pray
|
|
|
138
163
|
Transaction.write_file(File.join(root, relative), bytes)
|
|
139
164
|
end
|
|
140
165
|
end
|
|
141
|
-
private_class_method :apply_one_path_upstream, :
|
|
166
|
+
private_class_method :apply_one_path_upstream, :materialize_empty_path_fork, :local_content_for_refresh,
|
|
167
|
+
:resolve_upstream_pair, :merge_fork_content,
|
|
142
168
|
:write_refreshed_spec, :resolve_named
|
|
143
169
|
end
|
|
144
170
|
end
|
data/lib/pray/verify.rb
CHANGED
|
@@ -83,10 +83,10 @@ module Pray
|
|
|
83
83
|
message: "Package `#{package.declaration.name}` no longer matches the locked tree hash. Run `pray install` to re-resolve packages."
|
|
84
84
|
)
|
|
85
85
|
end
|
|
86
|
-
if locked.version != package.spec.
|
|
86
|
+
if locked.version != package.spec.recorded_version
|
|
87
87
|
report.findings << VerificationFinding.new(
|
|
88
88
|
kind: "verify_error",
|
|
89
|
-
message: "Package `#{package.declaration.name}` resolved to version #{package.spec.
|
|
89
|
+
message: "Package `#{package.declaration.name}` resolved to version #{package.spec.recorded_version} but `Prayfile.lock` has #{locked.version}. Run `pray install` to refresh the lockfile."
|
|
90
90
|
)
|
|
91
91
|
end
|
|
92
92
|
else
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pray
|
|
4
|
+
module Verify
|
|
5
|
+
module_function
|
|
6
|
+
|
|
7
|
+
def inspect_locked_destinations(project_root, lockfile)
|
|
8
|
+
report = VerificationReport.new
|
|
9
|
+
lockfile.managed_span.group_by(&:target).each do |target_path, spans|
|
|
10
|
+
absolute_path = File.join(project_root, target_path)
|
|
11
|
+
unless File.exist?(absolute_path)
|
|
12
|
+
report.findings << VerificationFinding.new(
|
|
13
|
+
kind: "verify_error",
|
|
14
|
+
message: "Rendered file `#{target_path}` is missing. Run `pray install` to generate it."
|
|
15
|
+
)
|
|
16
|
+
next
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
text = RenderDest.decode_utf8(
|
|
20
|
+
RenderDest.read_regular_bytes(absolute_path, target_path),
|
|
21
|
+
target_path
|
|
22
|
+
)
|
|
23
|
+
markers = marker_positions(text.lines(chomp: true))
|
|
24
|
+
spans.each do |span|
|
|
25
|
+
marker = markers[span.id]
|
|
26
|
+
unless marker
|
|
27
|
+
report.findings << VerificationFinding.new(
|
|
28
|
+
kind: "removed_prayer",
|
|
29
|
+
message: "`#{target_path}` is missing managed marker `#{span.id}` for `#{span.package}::#{span.export}`. Run `pray install` to restore the managed span."
|
|
30
|
+
)
|
|
31
|
+
next
|
|
32
|
+
end
|
|
33
|
+
next if marker[2] == span.ideal_checksum
|
|
34
|
+
|
|
35
|
+
report.findings << VerificationFinding.new(
|
|
36
|
+
kind: "custom_implementation",
|
|
37
|
+
message: "`#{target_path}` marker `#{span.id}` (`#{span.package}::#{span.export}`) was edited. Restore the managed block or run `pray install` to regenerate it."
|
|
38
|
+
)
|
|
39
|
+
end
|
|
40
|
+
find_orphan_marker_findings(spans, markers, target_path).each do |finding|
|
|
41
|
+
report.findings << finding
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
report
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
data/lib/pray/version.rb
CHANGED
data/lib/pray.rb
CHANGED
|
@@ -13,7 +13,13 @@ require_relative "pray/manifest"
|
|
|
13
13
|
require_relative "pray/format_serialize"
|
|
14
14
|
require_relative "pray/format_manifest"
|
|
15
15
|
require_relative "pray/package_spec"
|
|
16
|
+
require_relative "pray/package_spec_version"
|
|
17
|
+
require_relative "pray/local_prayer"
|
|
16
18
|
require_relative "pray/lockfile"
|
|
19
|
+
require_relative "pray/distribution"
|
|
20
|
+
require_relative "pray/torrent_manifest"
|
|
21
|
+
require_relative "pray/serve_range"
|
|
22
|
+
require_relative "pray/apply_report"
|
|
17
23
|
require_relative "pray/config"
|
|
18
24
|
require_relative "pray/dotenv"
|
|
19
25
|
require_relative "pray/project_context"
|
|
@@ -21,16 +27,23 @@ require_relative "pray/environment"
|
|
|
21
27
|
require_relative "pray/resolve_context"
|
|
22
28
|
require_relative "pray/resolve_source"
|
|
23
29
|
require_relative "pray/resolve_exports"
|
|
30
|
+
require_relative "pray/dependency_graph"
|
|
31
|
+
require_relative "pray/resolve_deps"
|
|
32
|
+
require_relative "pray/resolve_tarball"
|
|
24
33
|
require_relative "pray/invocation"
|
|
25
34
|
require_relative "pray/git_refresh"
|
|
26
35
|
require_relative "pray/resolve"
|
|
36
|
+
require_relative "pray/resolve_local"
|
|
27
37
|
require_relative "pray/upstream"
|
|
28
38
|
require_relative "pray/upstream_merge"
|
|
29
39
|
require_relative "pray/package_spec_render"
|
|
30
40
|
require_relative "pray/upstream_refresh"
|
|
41
|
+
require_relative "pray/upstream_drift"
|
|
31
42
|
require_relative "pray/upstream_latest"
|
|
32
43
|
require_relative "pray/compose_dest"
|
|
33
44
|
require_relative "pray/render_patch"
|
|
45
|
+
require_relative "pray/render_content"
|
|
46
|
+
require_relative "pray/render_managed"
|
|
34
47
|
require_relative "pray/render"
|
|
35
48
|
require_relative "pray/render_dest"
|
|
36
49
|
require_relative "pray/transaction"
|
|
@@ -38,6 +51,7 @@ require_relative "pray/render_layout"
|
|
|
38
51
|
require_relative "pray/verify_position"
|
|
39
52
|
require_relative "pray/verify_provisioned"
|
|
40
53
|
require_relative "pray/verify"
|
|
54
|
+
require_relative "pray/verify_locked_dest"
|
|
41
55
|
require_relative "pray/resource_limits"
|
|
42
56
|
require_relative "pray/http_body"
|
|
43
57
|
require_relative "pray/registry_install"
|
|
@@ -61,6 +75,6 @@ class << Pray
|
|
|
61
75
|
:parse_package_spec, :parse_lockfile, :read_lockfile, :serialize_lockfile, :lockfile_hash,
|
|
62
76
|
:write_lockfile, :write_lockfile_if_changed, :lockfiles_equivalent?, :build_lockfile,
|
|
63
77
|
:resolve_project, :render_project, :materialize_project,
|
|
64
|
-
:inspect_project, :verify_project, :drift_project,
|
|
78
|
+
:inspect_project, :inspect_locked_destinations, :verify_project, :drift_project,
|
|
65
79
|
:default_manifest_path, :default_lockfile_path, :project_root_from_manifest
|
|
66
80
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pray-cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.17.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Andrei Makarov
|
|
@@ -102,6 +102,7 @@ files:
|
|
|
102
102
|
- bin/pray
|
|
103
103
|
- lib/pray-cli.rb
|
|
104
104
|
- lib/pray.rb
|
|
105
|
+
- lib/pray/apply_report.rb
|
|
105
106
|
- lib/pray/archive.rb
|
|
106
107
|
- lib/pray/archive_unpack.rb
|
|
107
108
|
- lib/pray/auth_client.rb
|
|
@@ -110,6 +111,8 @@ files:
|
|
|
110
111
|
- lib/pray/cli/commands/auth.rb
|
|
111
112
|
- lib/pray/cli/commands/distribution.rb
|
|
112
113
|
- lib/pray/cli/commands/init.rb
|
|
114
|
+
- lib/pray/cli/commands/init_prayer.rb
|
|
115
|
+
- lib/pray/cli/commands/init_prayer_manifest.rb
|
|
113
116
|
- lib/pray/cli/commands/meta.rb
|
|
114
117
|
- lib/pray/cli/commands/packages.rb
|
|
115
118
|
- lib/pray/cli/commands/trust.rb
|
|
@@ -125,7 +128,9 @@ files:
|
|
|
125
128
|
- lib/pray/confess.rb
|
|
126
129
|
- lib/pray/config.rb
|
|
127
130
|
- lib/pray/constraint.rb
|
|
131
|
+
- lib/pray/dependency_graph.rb
|
|
128
132
|
- lib/pray/destination.rb
|
|
133
|
+
- lib/pray/distribution.rb
|
|
129
134
|
- lib/pray/dotenv.rb
|
|
130
135
|
- lib/pray/environment.rb
|
|
131
136
|
- lib/pray/error.rb
|
|
@@ -137,6 +142,7 @@ files:
|
|
|
137
142
|
- lib/pray/http_body.rb
|
|
138
143
|
- lib/pray/invocation.rb
|
|
139
144
|
- lib/pray/literal.rb
|
|
145
|
+
- lib/pray/local_prayer.rb
|
|
140
146
|
- lib/pray/lockfile.rb
|
|
141
147
|
- lib/pray/lockfile_serialize.rb
|
|
142
148
|
- lib/pray/manifest.rb
|
|
@@ -149,6 +155,7 @@ files:
|
|
|
149
155
|
- lib/pray/materialize.rb
|
|
150
156
|
- lib/pray/package_spec.rb
|
|
151
157
|
- lib/pray/package_spec_render.rb
|
|
158
|
+
- lib/pray/package_spec_version.rb
|
|
152
159
|
- lib/pray/path_safety.rb
|
|
153
160
|
- lib/pray/plan.rb
|
|
154
161
|
- lib/pray/project_context.rb
|
|
@@ -156,18 +163,24 @@ files:
|
|
|
156
163
|
- lib/pray/registry.rb
|
|
157
164
|
- lib/pray/registry_install.rb
|
|
158
165
|
- lib/pray/registry_integrity.rb
|
|
166
|
+
- lib/pray/registry_paths.rb
|
|
159
167
|
- lib/pray/render.rb
|
|
160
168
|
- lib/pray/render_content.rb
|
|
161
169
|
- lib/pray/render_dest.rb
|
|
162
170
|
- lib/pray/render_layout.rb
|
|
171
|
+
- lib/pray/render_managed.rb
|
|
163
172
|
- lib/pray/render_patch.rb
|
|
164
173
|
- lib/pray/resolve.rb
|
|
165
174
|
- lib/pray/resolve_context.rb
|
|
175
|
+
- lib/pray/resolve_deps.rb
|
|
166
176
|
- lib/pray/resolve_exports.rb
|
|
177
|
+
- lib/pray/resolve_local.rb
|
|
167
178
|
- lib/pray/resolve_source.rb
|
|
179
|
+
- lib/pray/resolve_tarball.rb
|
|
168
180
|
- lib/pray/resource_limits.rb
|
|
169
181
|
- lib/pray/serve.rb
|
|
170
182
|
- lib/pray/serve_federation.rb
|
|
183
|
+
- lib/pray/serve_range.rb
|
|
171
184
|
- lib/pray/session.rb
|
|
172
185
|
- lib/pray/ssh_agent.rb
|
|
173
186
|
- lib/pray/statement_surface.rb
|
|
@@ -175,6 +188,7 @@ files:
|
|
|
175
188
|
- lib/pray/sync.rb
|
|
176
189
|
- lib/pray/tar_validation.rb
|
|
177
190
|
- lib/pray/terminal.rb
|
|
191
|
+
- lib/pray/torrent_manifest.rb
|
|
178
192
|
- lib/pray/transaction.rb
|
|
179
193
|
- lib/pray/transaction/journal.rb
|
|
180
194
|
- lib/pray/transaction/owner.rb
|
|
@@ -183,10 +197,12 @@ files:
|
|
|
183
197
|
- lib/pray/trust_feed.rb
|
|
184
198
|
- lib/pray/trust_ops.rb
|
|
185
199
|
- lib/pray/upstream.rb
|
|
200
|
+
- lib/pray/upstream_drift.rb
|
|
186
201
|
- lib/pray/upstream_latest.rb
|
|
187
202
|
- lib/pray/upstream_merge.rb
|
|
188
203
|
- lib/pray/upstream_refresh.rb
|
|
189
204
|
- lib/pray/verify.rb
|
|
205
|
+
- lib/pray/verify_locked_dest.rb
|
|
190
206
|
- lib/pray/verify_position.rb
|
|
191
207
|
- lib/pray/verify_provisioned.rb
|
|
192
208
|
- lib/pray/version.rb
|