imap-backup 14.5.0 → 14.5.1
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 +4 -4
- data/lib/imap/backup/serializer/imap.rb +1 -0
- data/lib/imap/backup/serializer/mbox.rb +1 -0
- data/lib/imap/backup/serializer.rb +42 -2
- data/lib/imap/backup/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ff8bf4fdd37e57e1fd9cef8abc4485813eeb48752768a3f463df3afac3dc4d6
|
4
|
+
data.tar.gz: 831899f082fff0997acd46d1e341004ac43cf53a2883358e67ab095b88a26bf7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d826d98de67625935c73a0ae01f2896717428dc3357ba899f5edee47a8b458064c932eea98a7331b0c6678f233329ae71001d7038cfaf1dd22aa5ea5f19d723e
|
7
|
+
data.tar.gz: 9570a8070e6ab390c65dfb1a395a69f5b26aa501a777acb8e1cd58956adddd76b0c6e6bdd828b26f29c375ff671adcb31a91fdd85839be363d99179bea92bf9f
|
@@ -28,7 +28,41 @@ module Imap::Backup
|
|
28
28
|
extend Forwardable
|
29
29
|
|
30
30
|
def_delegator :mbox, :pathname, :mbox_pathname
|
31
|
-
|
31
|
+
|
32
|
+
# Get message metadata
|
33
|
+
# @param uid [Integer] a message UID
|
34
|
+
# @return [Serializer::Message]
|
35
|
+
def get(uid)
|
36
|
+
validate!
|
37
|
+
imap.get(uid)
|
38
|
+
end
|
39
|
+
|
40
|
+
# @return [Array<Hash>]
|
41
|
+
def messages
|
42
|
+
validate!
|
43
|
+
imap.messages
|
44
|
+
end
|
45
|
+
|
46
|
+
# @return [Integer] the UID validity for the folder
|
47
|
+
def uid_validity
|
48
|
+
validate!
|
49
|
+
imap.uid_validity
|
50
|
+
end
|
51
|
+
|
52
|
+
# @return [Array<Integer>] The uids of all messages
|
53
|
+
def uids
|
54
|
+
validate!
|
55
|
+
imap.uids
|
56
|
+
end
|
57
|
+
|
58
|
+
# Update a message's metadata, replacing its UID
|
59
|
+
# @param old [Integer] the existing message UID
|
60
|
+
# @param new [Integer] the new UID to apply to the message
|
61
|
+
# @return [void]
|
62
|
+
def update_uid(old, new)
|
63
|
+
validate!
|
64
|
+
imap.update_uid(old, new)
|
65
|
+
end
|
32
66
|
|
33
67
|
# @return [String] a folder name
|
34
68
|
attr_reader :folder
|
@@ -62,10 +96,14 @@ module Imap::Backup
|
|
62
96
|
|
63
97
|
optionally_migrate2to3
|
64
98
|
|
65
|
-
|
99
|
+
imap_valid = imap.valid?
|
100
|
+
mbox_valid = mbox.valid?
|
101
|
+
if imap_valid && mbox_valid
|
66
102
|
@validated = true
|
67
103
|
return true
|
68
104
|
end
|
105
|
+
Logger.logger.info("Metadata file '#{imap.pathname}' is invalid") if !imap_valid
|
106
|
+
Logger.logger.info("Mailbox '#{mbox.pathname}' is invalid") if !mbox_valid
|
69
107
|
|
70
108
|
delete
|
71
109
|
|
@@ -247,6 +285,8 @@ module Imap::Backup
|
|
247
285
|
MESSAGE
|
248
286
|
|
249
287
|
migrator.run
|
288
|
+
# Ensure new metadata gets loaded
|
289
|
+
@imap = nil
|
250
290
|
end
|
251
291
|
|
252
292
|
def ensure_containing_directory
|
data/lib/imap/backup/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: imap-backup
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 14.5.
|
4
|
+
version: 14.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joe Yates
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-01-
|
11
|
+
date: 2024-01-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: highline
|