toys-core 0.14.5 → 0.14.6

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
  SHA256:
3
- metadata.gz: 8f37d61c7aa836f0cf61b8f16c3276cfb75b8aa0984f95e646ce4b5f0f75b434
4
- data.tar.gz: 8030abe70c882204c75f0dc2098da59318e9c514bbb1fd1efdffcb28857e2410
3
+ metadata.gz: 4a49ffadd96ca26cf194b2c779f91704490fe6f345e5eb306638f61215e15920
4
+ data.tar.gz: 79bfe7f58285f0881a16383ffb0ba5f6fcad79b6001e4efd2effea178d1cedd7
5
5
  SHA512:
6
- metadata.gz: b3e7f4918dc4ea6ed9b77506b0f298be2268264d3f4468378c4953f805bb7a9715af09d95fa0b0638bc5b9098e1919cee875beb6af549d70d9d4988e37307219
7
- data.tar.gz: 1d71d7991acbfbc37e65c25f8507da1d6ed2e26798d2dbfd1117606983d647df8e4b8baac2887022374cf6b7a2fa31fa6e40e1085976acf27a19de1d9a495d0a
6
+ metadata.gz: d3d8bc7d78af759121c749b06454b585404c2093342a7476655e8ff3ac1f5e7d52fc729402e5669b42e75820babdd7f997f36a53d462276f2c26da5eff83fd5c
7
+ data.tar.gz: f04c5b0fdcbeb344f6733611bf134230586fc35a3fe73ffddeaba4aa602c1ff86726b2f1cd832e2a00dfbded1b30a59eaa5851c75df06e908b126682da627a81
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release History
2
2
 
3
+ ### v0.14.6 / 2023-06-29
4
+
5
+ * FIXED: Fixed a GitCache exception when loading a repository containing a broken symlink
6
+
3
7
  ### v0.14.5 / 2023-03-20
4
8
 
5
9
  * FIXED: Rescue broken pipe errors by default when running a pager
data/lib/toys/core.rb CHANGED
@@ -9,7 +9,7 @@ module Toys
9
9
  # Current version of Toys core.
10
10
  # @return [String]
11
11
  #
12
- VERSION = "0.14.5"
12
+ VERSION = "0.14.6"
13
13
  end
14
14
 
15
15
  ##
@@ -8,16 +8,16 @@ module Toys
8
8
  # This mixin provides an instance of {Toys::Utils::GitCache}, providing
9
9
  # cached access to files from a remote git repo.
10
10
  #
11
- # Example usage:
11
+ # @example
12
12
  #
13
- # include :git_cache
13
+ # include :git_cache
14
14
  #
15
- # def run
16
- # # Pull and cache the HEAD commit from the Toys repo.
17
- # dir = git_cache.find("https://github.com/dazuma/toys.git")
18
- # # Display the contents of the readme file.
19
- # puts File.read(File.join(dir, "README.md"))
20
- # end
15
+ # def run
16
+ # # Pull and cache the HEAD commit from the Toys repo.
17
+ # dir = git_cache.get("https://github.com/dazuma/toys.git")
18
+ # # Display the contents of the readme file.
19
+ # puts File.read(File.join(dir, "README.md"))
20
+ # end
21
21
  #
22
22
  module GitCache
23
23
  include Mixin
@@ -402,7 +402,7 @@ module Toys
402
402
  Array(remotes).map do |remote|
403
403
  dir = repo_base_dir_for(remote)
404
404
  if ::File.directory?(dir)
405
- ::FileUtils.chmod_R("u+w", dir)
405
+ ::FileUtils.chmod_R("u+w", dir, force: true)
406
406
  ::FileUtils.rm_rf(dir)
407
407
  remote
408
408
  end
@@ -568,9 +568,9 @@ module Toys
568
568
  source_path = ::File.join(dir, sha)
569
569
  unless repo_lock.source_exists?(sha, path)
570
570
  ::FileUtils.mkdir_p(source_path)
571
- ::FileUtils.chmod_R("u+w", source_path)
571
+ ::FileUtils.chmod_R("u+w", source_path, force: true)
572
572
  copy_from_repo(repo_path, source_path, sha, path)
573
- ::FileUtils.chmod_R("a-w", source_path)
573
+ ::FileUtils.chmod_R("a-w", source_path, force: true)
574
574
  end
575
575
  repo_lock.access_source!(sha, path)
576
576
  path == "." ? source_path : ::File.join(source_path, path)
@@ -579,7 +579,7 @@ module Toys
579
579
  def copy_files(dir, sha, path, repo_lock, into)
580
580
  repo_path = ::File.join(dir, REPO_DIR_NAME)
581
581
  ::FileUtils.mkdir_p(into)
582
- ::FileUtils.chmod_R("u+w", into)
582
+ ::FileUtils.chmod_R("u+w", into, force: true)
583
583
  Compat.dir_children(into).each { |child| ::FileUtils.rm_rf(::File.join(into, child)) }
584
584
  result = copy_from_repo(repo_path, into, sha, path)
585
585
  repo_lock.access_repo!
@@ -594,7 +594,7 @@ module Toys
594
594
  to_path = ::File.join(into, entry)
595
595
  unless ::File.exist?(to_path)
596
596
  from_path = ::File.join(repo_dir, entry)
597
- ::FileUtils.cp_r(from_path, to_path)
597
+ ::FileUtils.copy_entry(from_path, to_path)
598
598
  end
599
599
  end
600
600
  into
@@ -603,7 +603,7 @@ module Toys
603
603
  unless ::File.exist?(to_path)
604
604
  from_path = ::File.join(repo_dir, path)
605
605
  ::FileUtils.mkdir_p(::File.dirname(to_path))
606
- ::FileUtils.cp_r(from_path, to_path)
606
+ ::FileUtils.copy_entry(from_path, to_path)
607
607
  end
608
608
  to_path
609
609
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: toys-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.5
4
+ version: 0.14.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Azuma
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-20 00:00:00.000000000 Z
11
+ date: 2023-06-29 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Toys-Core is the command line tool framework underlying Toys. It can
14
14
  be used to create command line executables using the Toys DSL and classes.
@@ -78,10 +78,10 @@ homepage: https://github.com/dazuma/toys
78
78
  licenses:
79
79
  - MIT
80
80
  metadata:
81
- changelog_uri: https://dazuma.github.io/toys/gems/toys-core/v0.14.5/file.CHANGELOG.html
81
+ changelog_uri: https://dazuma.github.io/toys/gems/toys-core/v0.14.6/file.CHANGELOG.html
82
82
  source_code_uri: https://github.com/dazuma/toys/tree/main/toys-core
83
83
  bug_tracker_uri: https://github.com/dazuma/toys/issues
84
- documentation_uri: https://dazuma.github.io/toys/gems/toys-core/v0.14.5
84
+ documentation_uri: https://dazuma.github.io/toys/gems/toys-core/v0.14.6
85
85
  post_install_message:
86
86
  rdoc_options: []
87
87
  require_paths: