aboutsummaryrefslogtreecommitdiff
path: root/internal/feed/item.go
diff options
context:
space:
mode:
authorRené 'Necoro' Neumann <necoro@necoro.eu>2020-05-02 21:40:02 +0200
committerRené 'Necoro' Neumann <necoro@necoro.eu>2020-05-02 21:40:02 +0200
commit1525392a23c86214bf7ad1b5b7d8983f7b30837a (patch)
tree1515a12a24f682131672acfe3be6c0d17ba9c19b /internal/feed/item.go
parent6bd8a6c2cd153bad9ca044b409e55302e10206c1 (diff)
downloadfeed2imap-go-1525392a23c86214bf7ad1b5b7d8983f7b30837a.tar.gz
feed2imap-go-1525392a23c86214bf7ad1b5b7d8983f7b30837a.tar.bz2
feed2imap-go-1525392a23c86214bf7ad1b5b7d8983f7b30837a.zip
Use uuid library directly and encode to base64.
Also add an additional header `X-Feed2Imap-Item`, b/c the messageId contains the variable part of the hostname.
Diffstat (limited to '')
-rw-r--r--internal/feed/item.go11
1 files changed, 9 insertions, 2 deletions
diff --git a/internal/feed/item.go b/internal/feed/item.go
index 5c67784..b8fb7f7 100644
--- a/internal/feed/item.go
+++ b/internal/feed/item.go
@@ -1,8 +1,10 @@
package feed
import (
+ "encoding/base64"
"fmt"
+ "github.com/google/uuid"
"github.com/mmcdole/gofeed"
"github.com/Necoro/feed2imap-go/pkg/config"
@@ -22,7 +24,7 @@ type item struct {
updateOnly bool
reasons []string
images []feedImage
- itemId string
+ itemId uuid.UUID
}
// Creator returns the name of the creating author.
@@ -54,6 +56,11 @@ func (item *item) defaultEmail() string {
return item.feed.Global.DefaultEmail
}
+func (item *item) id() string {
+ idStr := base64.RawURLEncoding.EncodeToString(item.itemId[:])
+ return item.feed.cached.ID() + "#" + idStr
+}
+
func (item *item) messageId() string {
- return fmt.Sprintf("<feed#%s#%s@%s>", item.feed.cached.ID(), item.itemId, config.Hostname())
+ return fmt.Sprintf("<feed#%s@%s>", item.id(), config.Hostname())
}
lease.yml?id=3d641192a37d95a296d68eae3f15a72037104b7b&follow=1'>Release Workflow: Add docker loginRené 'Necoro' Neumann1-0/+7 2020-05-12Prepare v0.3.1René 'Necoro' Neumann2-2/+6 2020-05-12Docker SetupRené 'Necoro' Neumann4-31/+48 2020-05-12Fix README.md after mergeRené 'Necoro' Neumann1-2/+1 2020-05-12add docker stuffRuediger Küpper3-0/+44 2020-05-11Reorganize flag handlingRené 'Necoro' Neumann1-17/+30 2020-05-11Use stable version of gofeedRené 'Necoro' Neumann2-3/+3 2020-05-10Prepare release 0.3.0v0.3.0René 'Necoro' Neumann3-5/+6 2020-05-10Fixed linebreaks for Enclosures in text templateRené 'Necoro' Neumann1-5/+5 2020-05-10Upgrade html2textRené 'Necoro' Neumann2-5/+3 2020-05-10Switch to our own html2text fork for the time beingRené 'Necoro' Neumann3-5/+5 2020-05-10Text part in emailsRené 'Necoro' Neumann7-33/+115 2020-05-10Allow options on group level.René 'Necoro' Neumann3-5/+11 Closes #12. 2020-05-10Renamed feed template to html templateRené 'Necoro' Neumann2-2/+2 2020-05-10Release v0.2.0v0.2.0René 'Necoro' Neumann2-2/+6 2020-05-10Fix building cacheRené 'Necoro' Neumann1-1/+3 2020-05-10Update READMERené 'Necoro' Neumann1-5/+44 2020-05-10Ignore 'dist' folder and build productsRené 'Necoro' Neumann1-0/+2 2020-05-08Print item hashes in debug modeRené 'Necoro' Neumann1-1/+7 2020-05-07Improve html renderingRené 'Necoro' Neumann2-53/+32 2020-05-07Do not assume items to be new when their published date is newer than the ↵René 'Necoro' Neumann2-7/+1 last run 2020-05-07Updating some depsRené 'Necoro' Neumann2-2/+7 2020-05-07Better detection if a text starts with html or notRené 'Necoro' Neumann2-4/+13 2020-05-07go fmtRené 'Necoro' Neumann1-3/+2 2020-05-07Add header X-Feed2Imap-GUIDRené 'Necoro' Neumann3-1/+7 2020-05-07update changelogRené 'Necoro' Neumann1-0/+1 2020-05-07FixRené 'Necoro' Neumann1-1/+1 2020-05-07Unified publishedDate and updatedDate into one (just as the old feed2imap...)René 'Necoro' Neumann5-21/+32 2020-05-06Print version during startupRené 'Necoro' Neumann1-1/+1 2020-05-06Improve templateRené 'Necoro' Neumann3-20/+28 2020-05-05Fix pipelineRené 'Necoro' Neumann1-2/+5 2020-05-05Make changelog a part of the release pipeline (untested)René 'Necoro' Neumann2-0/+12