file-digests 0.0.43 → 0.0.44
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/file-digests +4 -0
- data/lib/file-digests.rb +17 -14
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9acf90b4f4988d5f012f39b94171323a57019595017f0a61d1148c670327c423
|
4
|
+
data.tar.gz: b81c9284ec5217582a5f92737a34629149395c36dc47ba189b4264e4d21f3116
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0230a40a940cacf4f3b8f096ac837c063013e0f0a9a3e451701f06429771a2fd7dee50cd61f4c8899cb0a0418c6e3fbbb2e701b581e9cb55eb390e2275251f58
|
7
|
+
data.tar.gz: e1d74ab1e23d9232179a2e72845fd57b8f904c4b0a758e508c6eb7e1fc5ae484859c2e1f4155bd0598d8da335612d53d44d62b8a2af9ac94d338aae1d17a4ee1
|
data/bin/file-digests
CHANGED
data/lib/file-digests.rb
CHANGED
@@ -184,9 +184,11 @@ class FileDigests
|
|
184
184
|
STDERR.puts "A list of errors is also saved in a file: #{@error_log_path}"
|
185
185
|
end
|
186
186
|
|
187
|
-
set_metadata(@options[:test_only] ? "latest_test_only_check_time" : "latest_complete_check_time", time_to_database(Time.now))
|
188
|
-
|
189
187
|
print_counters
|
188
|
+
|
189
|
+
if any_missing_files? || any_likely_damaged? || any_exceptions?
|
190
|
+
$FILE_DIGESTS_EXIT_STATUS=1
|
191
|
+
end
|
190
192
|
end
|
191
193
|
|
192
194
|
puts "Performing database maintenance..." if @options[:verbose]
|
@@ -291,22 +293,20 @@ class FileDigests
|
|
291
293
|
id INTEGER NOT NULL PRIMARY KEY,
|
292
294
|
filename TEXT NOT NULL,
|
293
295
|
mtime TEXT,
|
294
|
-
digest TEXT NOT NULL
|
295
|
-
digest_check_time TEXT NOT NULL)"
|
296
|
+
digest TEXT NOT NULL)"
|
296
297
|
execute "CREATE UNIQUE INDEX digests_filename ON digests(filename)"
|
297
298
|
execute "CREATE INDEX digests_digest ON digests(digest)"
|
298
299
|
set_metadata("digests_table_created_by_gem_version", FileDigests::VERSION) if FileDigests::VERSION
|
299
300
|
end
|
300
301
|
|
301
|
-
prepare_method :digests_insert, "INSERT INTO digests (filename, mtime, digest
|
302
|
+
prepare_method :digests_insert, "INSERT INTO digests (filename, mtime, digest) VALUES (?, ?, ?)"
|
302
303
|
prepare_method :digests_find_by_filename_query, "SELECT id, mtime, digest FROM digests WHERE filename = ?"
|
303
|
-
prepare_method :
|
304
|
-
prepare_method :
|
305
|
-
prepare_method :digests_update_mtime, "UPDATE digests SET mtime = ?, digest_check_time = datetime('now') WHERE id = ?"
|
304
|
+
prepare_method :digests_update_mtime_and_digest, "UPDATE digests SET mtime = ?, digest = ? WHERE id = ?"
|
305
|
+
prepare_method :digests_update_mtime, "UPDATE digests SET mtime = ? WHERE id = ?"
|
306
306
|
prepare_method :digests_select_duplicates, "SELECT digest, filename FROM digests WHERE digest IN (SELECT digest FROM digests GROUP BY digest HAVING count(*) > 1) ORDER BY digest, filename;"
|
307
307
|
|
308
308
|
unless get_metadata("database_version")
|
309
|
-
set_metadata "database_version", "
|
309
|
+
set_metadata "database_version", "4"
|
310
310
|
end
|
311
311
|
|
312
312
|
# Convert database from 1st to 2nd version
|
@@ -326,7 +326,12 @@ class FileDigests
|
|
326
326
|
set_metadata "database_version", "3"
|
327
327
|
end
|
328
328
|
|
329
|
-
|
329
|
+
if get_metadata("database_version") == "3"
|
330
|
+
execute "ALTER TABLE digests DROP COLUMN digest_check_time"
|
331
|
+
set_metadata "database_version", "4"
|
332
|
+
end
|
333
|
+
|
334
|
+
check_if_database_is_at_certain_version "4"
|
330
335
|
|
331
336
|
create_temporary_tables
|
332
337
|
end
|
@@ -362,7 +367,7 @@ class FileDigests
|
|
362
367
|
digest TEXT NOT NULL)"
|
363
368
|
|
364
369
|
prepare_method :new_digests_insert, "INSERT INTO new_digests (filename, digest) VALUES (?, ?)"
|
365
|
-
prepare_method :digests_update_digests_to_new_digests, "INSERT INTO digests (filename, digest
|
370
|
+
prepare_method :digests_update_digests_to_new_digests, "INSERT INTO digests (filename, digest) SELECT filename, digest FROM new_digests WHERE true ON CONFLICT (filename) DO UPDATE SET digest=excluded.digest"
|
366
371
|
end
|
367
372
|
|
368
373
|
# Files
|
@@ -480,9 +485,7 @@ class FileDigests
|
|
480
485
|
@counters[:good] += 1
|
481
486
|
puts "GOOD: #{filename}" if @options[:verbose]
|
482
487
|
unless @options[:test_only]
|
483
|
-
if found["mtime"]
|
484
|
-
digests_touch_check_time found["id"]
|
485
|
-
else
|
488
|
+
if found["mtime"] != mtime
|
486
489
|
digests_update_mtime mtime, found["id"]
|
487
490
|
end
|
488
491
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: file-digests
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.44
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stanislav Senotrusov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-12-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: openssl
|
@@ -66,7 +66,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
66
66
|
- !ruby/object:Gem::Version
|
67
67
|
version: '0'
|
68
68
|
requirements: []
|
69
|
-
rubygems_version: 3.3.
|
69
|
+
rubygems_version: 3.3.26
|
70
70
|
signing_key:
|
71
71
|
specification_version: 4
|
72
72
|
summary: file-digests
|