ndr_dev_support 7.3.4 → 7.3.5

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: 326090ab3bd97631ff34098e27fd2ac5bda6c72bc90dc9674d7d33a2620c4674
4
- data.tar.gz: da332e6b58df3db660c9a9f83f7749126401476199870048abe87b42fe8d3460
3
+ metadata.gz: 5a9657d61fe9727e7023491944d7005896e9c4a41b47c5a79a017b6989a125a8
4
+ data.tar.gz: 8175fd01914592c8ea9dfdb364a02de49622ca56a7fe85626f07318f5cf7377f
5
5
  SHA512:
6
- metadata.gz: 7899387fcbac802148d2beb3359b9da669ba57fa2e76f26a48c1a90e0d1f4d4ec231a5d018a6d6d8ef3e39fc427e42f2cc86dc39ef2b1d14261efd2a66cfb503
7
- data.tar.gz: c45075ad3d39dc1a708751d8fdee5395085b4ad0612cc3dfad2ecb85f2e4ee965ffb990cd88631729f716a53f4c688cff57676d504f55b6eec82da214da4507a
6
+ metadata.gz: 44f9c9ba5543eee3b9b506026eacdaf5f3a9a6513dde51629e457e9de489cb87bad909661891bd0eeb179e4e95fbc6b88c222661fc9c4ecd2c9a278493b486b3
7
+ data.tar.gz: 274c6fe966a87ea07060aea1fef879b6c98d6644dfb7a740dfcdee417354379d77a31af5acfdfb0caff4b20ba144be13047126e80f04f7ca83b92ff1d417ab83
data/CHANGELOG.md CHANGED
@@ -1,6 +1,10 @@
1
1
  ## [Unreleased]
2
2
  *no unreleased changes*
3
3
 
4
+ ## 7.3.5 / 2025-10-16
5
+ ### Fixed
6
+ * Capistrano: Do not include macOS extended attributes in tar files
7
+
4
8
  ## 7.3.4 / 2025-09-26
5
9
  ### Fixed
6
10
  * Capistrano: deploy:preinstall should fix up installed gem permissions
@@ -0,0 +1,33 @@
1
+ require 'capistrano/recipes/deploy/strategy/copy'
2
+
3
+ # Do not include macOS extended attributes in capistrano tar files
4
+ #
5
+ # Without this, the system default tar (bsdtar) creates AppleDouble files with a
6
+ # ._ prefix, and the linux default tar (gnutar) generates many warnings such as:
7
+ # tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance'
8
+ #
9
+ # This fix works because we compress files only locally, for capistrano deployments.
10
+ # If we were compressing files remotely too, we would instead need to selectively
11
+ # redefine behaviour for local tar usage vs remote usage, e.g. by adding a
12
+ # :copy_local_tar_options variable, similar to :copy_local_tar
13
+ module CopyMacosTarSupport
14
+ private
15
+
16
+ def compress(directory, file)
17
+ if compression.compress_command[0] == 'tar' && local_tar_is_macos_bsdtar?
18
+ return macos_bsdtar_compress(directory, file)
19
+ end
20
+
21
+ super
22
+ end
23
+
24
+ def local_tar_is_macos_bsdtar?
25
+ RUBY_PLATFORM =~ /darwin/ && system('tar --version | grep -q ^bsdtar')
26
+ end
27
+
28
+ def macos_bsdtar_compress(directory, file)
29
+ compression.compress_command + [file, '--no-xattr', '--no-mac-metadata', directory]
30
+ end
31
+ end
32
+
33
+ Capistrano::Deploy::Strategy::Copy.prepend(CopyMacosTarSupport)
@@ -4,6 +4,7 @@ require 'rainbow'
4
4
  require_relative 'assets'
5
5
  require_relative 'deploy_secrets'
6
6
  require_relative 'install_ruby'
7
+ require_relative 'macos_bsdtar'
7
8
  require_relative 'preinstall'
8
9
  require_relative 'restart'
9
10
  require_relative 'revision_logger'
@@ -2,5 +2,5 @@
2
2
  # This defines the NdrDevSupport version. If you change it, rebuild and commit the gem.
3
3
  # Use "rake build" to build the gem, see rake -T for all bundler rake tasks (and our own).
4
4
  module NdrDevSupport
5
- VERSION = '7.3.4'
5
+ VERSION = '7.3.5'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ndr_dev_support
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.3.4
4
+ version: 7.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - NCRS Development Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-09-26 00:00:00.000000000 Z
11
+ date: 2025-10-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -411,6 +411,7 @@ files:
411
411
  - lib/ndr_dev_support/capistrano/assets.rb
412
412
  - lib/ndr_dev_support/capistrano/deploy_secrets.rb
413
413
  - lib/ndr_dev_support/capistrano/install_ruby.rb
414
+ - lib/ndr_dev_support/capistrano/macos_bsdtar.rb
414
415
  - lib/ndr_dev_support/capistrano/ndr_model.rb
415
416
  - lib/ndr_dev_support/capistrano/preinstall.rb
416
417
  - lib/ndr_dev_support/capistrano/restart.rb
@@ -487,7 +488,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
487
488
  - !ruby/object:Gem::Version
488
489
  version: '0'
489
490
  requirements: []
490
- rubygems_version: 3.4.19
491
+ rubygems_version: 3.5.22
491
492
  signing_key:
492
493
  specification_version: 4
493
494
  summary: NDR Developer Support library