qdumpfs 1.8.1 → 1.8.2

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: 84137d9c47fc2201cb2bfc18f8faaa470a3e019d0c17b88990c80e16964f0cbd
4
- data.tar.gz: abf643910675dca1d31b37eb621db10ba16b612cb3f8626c13a94d0c9b958519
3
+ metadata.gz: fdc68ddb0a3016a375adc9e55b92547ea98f9bf1af05bc5fed20a6dbe8cb26e1
4
+ data.tar.gz: c20bd623f45e39e22c05dd5b7e314f0b24799d567a8d5ac21e94cf9b06e93400
5
5
  SHA512:
6
- metadata.gz: cec209e60e35e2d8f791b3fd7de687b148d53f3a17a7ffac0c6802b8808f3c3cbd1aa00b59e3d4951766e76f878bd6c7cef25587d1131485c1e9f7388e9f1b46
7
- data.tar.gz: 26f587244ecefe4198e52d6ebe6e2c33905dedf1d9df95a4e7a553aed9d1f725adce8337c40b9c7db52d263cf7a152c57e803fe8f65c1eeaea19f23b2947c7bf
6
+ metadata.gz: 2c57a00118b6da4621fd3037c217969819c12103d3540851ca3ee3ea6ae1592229ca9453285055a8171e229a9c3e165a017b291f402e2142b3f07cec7a27a6f3
7
+ data.tar.gz: 86bc15230254cb36a429d53dbb13f2e56a72b1f3cbf6caced5fbdf3c729c6bcf4720d4fd8ef9c009d95f32c66401fa4a70180d00da2820b7bc3626328ac43edf
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- qdumpfs (1.8.1)
4
+ qdumpfs (1.8.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -68,6 +68,13 @@ qdumpfs --command=sync --limit=1 /backup1 /backup2
68
68
  qdumpfs --command=sync --limit=1 --keep=5Y6M7W10D backup1 /backup2
69
69
  ```
70
70
 
71
+ バックアップの同期は、コピー先の最新の日付より新しいコピー元を選択して実行されます。これはバックアップの同期が途中で中断された場合、再開することができるようにするためです。
72
+ 例えばコピー先に2024/11/01のバックアップが存在する場合、コピー元の2024/11/01より後のバックアップデータ(例えば2024/11/02)があれば、それが同期されます(同じ日付は同期されません)。
73
+
74
+
75
+ ```
76
+
77
+
71
78
  ### バックアップフォルダの削除
72
79
 
73
80
  "--command expire"で、"--keep="パターンに該当しないバックアップを削除できます。
@@ -184,18 +184,24 @@ module Qdumpfs
184
184
  end
185
185
  else
186
186
  # 何も指定されていない場合
187
- if type == 'new_file' || type == 'symlink'
187
+ if type == 'new_file'
188
188
  stat = File.stat(filename)
189
189
  size = stat.size
190
190
  msg = format_report(type, filename, size)
191
+ elsif type == 'symlink'
192
+ # symlinkの場合File.statでエラーが発生する場合があるので使わない。
193
+ msg = format_report(type, filename, 0)
191
194
  end
192
195
  end
193
196
  log(msg)
194
197
  end
195
198
 
196
- def report_error(filename, reason)
197
- msg = sprintf("err_file\t%s\t%s\n", filename, reason)
199
+ def report_error(filename, ex)
200
+ msg = sprintf("err_file\t%s\t%s\n", filename, ex.message)
198
201
  log(msg)
202
+ ex.backtrace.each do |line|
203
+ log(line)
204
+ end
199
205
  end
200
206
 
201
207
  def log(msg, console = true)
@@ -1,4 +1,4 @@
1
1
  module Qdumpfs
2
- VERSION = "1.8.1"
2
+ VERSION = "1.8.2"
3
3
  end
4
4
 
data/lib/qdumpfs.rb CHANGED
@@ -125,8 +125,8 @@ module Qdumpfs
125
125
  @opt.report(type, file_name)
126
126
  end
127
127
 
128
- def report_error(file_name, reason)
129
- @opt.report_error(file_name, reason)
128
+ def report_error(file_name, exception)
129
+ @opt.report_error(file_name, exception)
130
130
  end
131
131
 
132
132
  def update_file(src, latest, today)
@@ -197,7 +197,7 @@ module Qdumpfs
197
197
  update_file(s, l, t)
198
198
  dirs[t] = File.stat(s) if File.ftype(s) == "directory"
199
199
  rescue => e
200
- report_error(s, e.message)
200
+ report_error(s, e)
201
201
  @error_files << [s, e.message]
202
202
  next
203
203
  end
@@ -234,7 +234,7 @@ module Qdumpfs
234
234
  chown_if_root(type, s, t)
235
235
  dirs[t] = File.stat(s) if File.ftype(s) == "directory"
236
236
  rescue => e
237
- report_error(s, e.message)
237
+ report_error(s, e)
238
238
  @error_files << [s, e.message]
239
239
  next
240
240
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qdumpfs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.1
4
+ version: 1.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - src
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-11-06 00:00:00.000000000 Z
11
+ date: 2024-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler