mirror of
https://github.com/miniflux/v2.git
synced 2025-06-27 16:36:00 +00:00
feat(rewrite)!: remove parse_markdown
rewrite rule
It was added in 2022 by #1513, to support blog.laravel.com, which has since switched to HTML. The Atom 0.3/1.0, RSS 1.0/2.0, RDF, and JSON formats don't support markdown in their spec, and any website serving it there should be considered as buggy and fixed. This shaves off 2MB from the miniflux binary, which is quite steep for a feature that nobody is/should be using, and remove a dependency which is always a good thing.
This commit is contained in:
parent
c1ef986cab
commit
a913f3f75f
5 changed files with 0 additions and 23 deletions
1
go.mod
1
go.mod
|
@ -12,7 +12,6 @@ require (
|
||||||
github.com/lib/pq v1.10.9
|
github.com/lib/pq v1.10.9
|
||||||
github.com/prometheus/client_golang v1.20.5
|
github.com/prometheus/client_golang v1.20.5
|
||||||
github.com/tdewolff/minify/v2 v2.21.2
|
github.com/tdewolff/minify/v2 v2.21.2
|
||||||
github.com/yuin/goldmark v1.7.8
|
|
||||||
golang.org/x/crypto v0.30.0
|
golang.org/x/crypto v0.30.0
|
||||||
golang.org/x/net v0.32.0
|
golang.org/x/net v0.32.0
|
||||||
golang.org/x/oauth2 v0.24.0
|
golang.org/x/oauth2 v0.24.0
|
||||||
|
|
2
go.sum
2
go.sum
|
@ -66,8 +66,6 @@ github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcY
|
||||||
github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZqKjWU=
|
github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZqKjWU=
|
||||||
github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E=
|
github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E=
|
||||||
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
|
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
|
||||||
github.com/yuin/goldmark v1.7.8 h1:iERMLn0/QJeHFhxSt3p6PeN9mGnvIKSpG9YYorDMnic=
|
|
||||||
github.com/yuin/goldmark v1.7.8/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E=
|
|
||||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||||
golang.org/x/crypto v0.30.0 h1:RwoQn3GkWiMkzlX562cLB7OxWvjH1L8xutO2WoJcRoY=
|
golang.org/x/crypto v0.30.0 h1:RwoQn3GkWiMkzlX562cLB7OxWvjH1L8xutO2WoJcRoY=
|
||||||
|
|
|
@ -17,8 +17,6 @@ import (
|
||||||
nethtml "golang.org/x/net/html"
|
nethtml "golang.org/x/net/html"
|
||||||
|
|
||||||
"github.com/PuerkitoBio/goquery"
|
"github.com/PuerkitoBio/goquery"
|
||||||
"github.com/yuin/goldmark"
|
|
||||||
goldmarkhtml "github.com/yuin/goldmark/renderer/html"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
@ -410,21 +408,6 @@ func addHackerNewsLinksUsing(entryContent, app string) string {
|
||||||
return entryContent
|
return entryContent
|
||||||
}
|
}
|
||||||
|
|
||||||
func parseMarkdown(entryContent string) string {
|
|
||||||
var sb strings.Builder
|
|
||||||
md := goldmark.New(
|
|
||||||
goldmark.WithRendererOptions(
|
|
||||||
goldmarkhtml.WithUnsafe(),
|
|
||||||
),
|
|
||||||
)
|
|
||||||
|
|
||||||
if err := md.Convert([]byte(entryContent), &sb); err != nil {
|
|
||||||
return entryContent
|
|
||||||
}
|
|
||||||
|
|
||||||
return sb.String()
|
|
||||||
}
|
|
||||||
|
|
||||||
func removeTables(entryContent string) string {
|
func removeTables(entryContent string) string {
|
||||||
doc, err := goquery.NewDocumentFromReader(strings.NewReader(entryContent))
|
doc, err := goquery.NewDocumentFromReader(strings.NewReader(entryContent))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -91,8 +91,6 @@ func (rule rule) applyRule(entryURL string, entry *model.Entry) {
|
||||||
entry.Content = addHackerNewsLinksUsing(entry.Content, "hack")
|
entry.Content = addHackerNewsLinksUsing(entry.Content, "hack")
|
||||||
case "add_hn_links_using_opener":
|
case "add_hn_links_using_opener":
|
||||||
entry.Content = addHackerNewsLinksUsing(entry.Content, "opener")
|
entry.Content = addHackerNewsLinksUsing(entry.Content, "opener")
|
||||||
case "parse_markdown":
|
|
||||||
entry.Content = parseMarkdown(entry.Content)
|
|
||||||
case "remove_tables":
|
case "remove_tables":
|
||||||
entry.Content = removeTables(entry.Content)
|
entry.Content = removeTables(entry.Content)
|
||||||
case "remove_clickbait":
|
case "remove_clickbait":
|
||||||
|
|
|
@ -35,7 +35,6 @@ var predefinedRules = map[string]string{
|
||||||
"treelobsters.com": "add_image_title",
|
"treelobsters.com": "add_image_title",
|
||||||
"webtoons.com": `add_dynamic_image,replace("webtoon"|"swebtoon")`,
|
"webtoons.com": `add_dynamic_image,replace("webtoon"|"swebtoon")`,
|
||||||
"www.qwantz.com": "add_image_title,add_mailto_subject",
|
"www.qwantz.com": "add_image_title,add_mailto_subject",
|
||||||
"www.recalbox.com": "parse_markdown",
|
|
||||||
"xkcd.com": "add_image_title",
|
"xkcd.com": "add_image_title",
|
||||||
"youtube.com": "add_youtube_video",
|
"youtube.com": "add_youtube_video",
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue