dotsync 0.4.4 → 0.4.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: 64db8926a739c2b24c68dd4048d9074f516a8238d3e745cd4461c25420275406
4
- data.tar.gz: a81dca043a4a8952d87419cf148c34c2e705da9991d35308e4347c1f4475d7d6
3
+ metadata.gz: 98beade2b2482ee27ecf6843e8f4f214fd81a0070c06d661213bce4c80e2d57a
4
+ data.tar.gz: b512b8ad21fe3966b40d0f09fbffe7a67f90a3a2f784b703e3892113bd9992f0
5
5
  SHA512:
6
- metadata.gz: e459483e1caac6bdd491b456718f10ca01dc7fe63088acd71c5433e5cce700a6bc42b6aa8538a43bb44656d09ccaff7e12eebdbbe54d8e80b83ffa260c5bcb7c
7
- data.tar.gz: 7ab7945a4fa369086b1888947be36784c36a03d2eeea02388811ab6f8efbcb4de31a813b5176d8b71524388f57a5f17f8fa47b39a1f696b37c586812d9e102d3
6
+ metadata.gz: 7b533ef15747bc2c19f7f6675961b1d025954e691e595a29a863b673d99229a99972215f888554bc7ef2508930e10ab4457420a23f0fe05464f39a07f028cd59
7
+ data.tar.gz: e39af50f1673a26cc825f64fe6416cc7ec9db39ed5d03bb652e781f7cf93e2db6f46a7d5eb8e7e1aa019ee2b49b7fd551ce53af8514e27637342b97eacf85745
data/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## [0.4.5] - 2026-04-07
2
+
3
+ ### Fixed
4
+
5
+ - Skip transfer, orphan cleanup, and hooks when no differences detected (#42)
6
+ - `pull` and `push` actions now early-exit the apply phase when no differences exist
7
+ - Eliminates expensive `Find.find` directory scans from `cleanup_orphans` on every run
8
+ - `force_hooks` option still executes hooks even without differences
9
+
1
10
  ## [0.4.4] - 2026-04-07
2
11
 
3
12
  ### Fixed
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- dotsync (0.4.4)
4
+ dotsync (0.4.5)
5
5
  fileutils (~> 1.7.3)
6
6
  find (~> 0.2.0)
7
7
  listen (~> 3.9.0)
@@ -33,9 +33,14 @@ module Dotsync
33
33
  end
34
34
  end
35
35
 
36
- transfer_mappings
37
- cleanup_orphans
38
- execute_hooks(force: options[:force_hooks])
36
+ if has_differences?
37
+ transfer_mappings
38
+ cleanup_orphans
39
+ execute_hooks(force: options[:force_hooks])
40
+ elsif options[:force_hooks]
41
+ execute_hooks(force: true)
42
+ end
43
+
39
44
  action("Mappings pulled", icon: :done)
40
45
  end
41
46
 
@@ -23,8 +23,13 @@ module Dotsync
23
23
  return unless confirm_action
24
24
  end
25
25
 
26
- transfer_mappings
27
- execute_hooks(force: options[:force_hooks])
26
+ if has_differences?
27
+ transfer_mappings
28
+ execute_hooks(force: options[:force_hooks])
29
+ elsif options[:force_hooks]
30
+ execute_hooks(force: true)
31
+ end
32
+
28
33
  action("Mappings pushed", icon: :done)
29
34
  end
30
35
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dotsync
4
- VERSION = "0.4.4"
4
+ VERSION = "0.4.5"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dotsync
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Sáenz
@@ -368,7 +368,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
368
368
  - !ruby/object:Gem::Version
369
369
  version: '0'
370
370
  requirements: []
371
- rubygems_version: 3.6.7
371
+ rubygems_version: 4.0.9
372
372
  specification_version: 4
373
373
  summary: Manage dotfiles like a boss
374
374
  test_files: []