Cleanup for go modules
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
Peter Stuifzand 2020-07-27 22:09:02 +02:00
parent 105db3fbc4
commit 9ef3369389
Signed by: peter
GPG Key ID: 374322D56E5209E8
53 changed files with 138 additions and 128 deletions

15
go.mod Normal file
View File

@ -0,0 +1,15 @@
module p83.nl/go/ekster
go 1.14
require (
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751
github.com/axgle/mahonia v0.0.0-20180208002826-3358181d7394
github.com/gilliek/go-opml v1.0.0
github.com/gomodule/redigo v1.8.2
github.com/pkg/errors v0.9.1
github.com/stretchr/testify v1.5.1
github.com/tomnomnom/linkheader v0.0.0-20180905144013-02ca5825eb80 // indirect
golang.org/x/net v0.0.0-20200707034311-ab3426394381
willnorris.com/go/microformats v1.1.0
)

46
go.sum Normal file
View File

@ -0,0 +1,46 @@
github.com/PuerkitoBio/goquery v1.5.0/go.mod h1:qD2PgZ9lccMbQlc7eEOjaeRlFQON7xY8kdmcsrnKqMg=
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 h1:JYp7IbQjafoB+tBA3gMyHYHrpOtNuDiK/uB5uXxq5wM=
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
github.com/andybalholm/cascadia v1.0.0/go.mod h1:GsXiBklL0woXo1j/WYWtSYYC4ouU9PqHO0sqidkEA4Y=
github.com/axgle/mahonia v0.0.0-20180208002826-3358181d7394 h1:OYA+5W64v3OgClL+IrOD63t4i/RW7RqrAVl9LTZ9UqQ=
github.com/axgle/mahonia v0.0.0-20180208002826-3358181d7394/go.mod h1:Q8n74mJTIgjX4RBBcHnJ05h//6/k6foqmgE45jTQtxg=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/gilliek/go-opml v1.0.0 h1:X8xVjtySRXU/x6KvaiXkn7OV3a4DHqxY8Rpv6U/JvCY=
github.com/gilliek/go-opml v1.0.0/go.mod h1:fOxmtlzyBvUjU6bjpdjyxCGlWz+pgtAHrHf/xRZl3lk=
github.com/gomodule/redigo v1.8.2 h1:H5XSIre1MB5NbPYFp+i1NBbb5qN1W8Y8YAQoAYbkm8k=
github.com/gomodule/redigo v1.8.2/go.mod h1:P9dn9mFrCBvWhGE1wpxx6fgq7BAeLBk+UUUzlpkBYO0=
github.com/gomodule/redigo/redis v0.0.0-do-not-use h1:J7XIp6Kau0WoyT4JtXHT3Ei0gA1KkSc6bc87j9v9WIo=
github.com/google/go-cmp v0.4.0 h1:xsAVV57WRhGj6kEIi8ReJzQlHHqcBYCElAvkovg3B/4=
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.5.1 h1:nOGnQDM7FYENwehXlg/kFVnos3rEvtKTjRvOWSzb6H4=
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
github.com/tomnomnom/linkheader v0.0.0-20180905144013-02ca5825eb80 h1:nrZ3ySNYwJbSpD6ce9duiP+QkD3JuLCcWkdaehUS/3Y=
github.com/tomnomnom/linkheader v0.0.0-20180905144013-02ca5825eb80/go.mod h1:iFyPdL66DjUD96XmzVL3ZntbzcflLnznH0fr99w5VqE=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200707034311-ab3426394381 h1:VXak5I6aEWmAXeQjA+QSZzlgNrpq9mjcfDemuexIKsU=
golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
willnorris.com/go/microformats v1.1.0 h1:a16gADl3aFxYVUQDxX8zS2AWAHKNnuaLlZFxyDzmSf8=
willnorris.com/go/microformats v1.1.0/go.mod h1:kvVnWrkkEscVAIITCEoiTX66Hcyg59C7q0E49mb9TJ0=

View File

@ -12,14 +12,13 @@ import (
"strings"
"time"
"rss"
"golang.org/x/net/html"
"golang.org/x/net/html/atom"
"p83.nl/go/ekster/pkg/jf2"
"p83.nl/go/ekster/pkg/jsonfeed"
"p83.nl/go/ekster/pkg/microsub"
"p83.nl/go/ekster/pkg/rss"
"willnorris.com/go/microformats"
)

View File

@ -11,7 +11,7 @@ import (
"net/url"
"strings"
"linkheader"
"p83.nl/go/ekster/pkg/linkheader"
"p83.nl/go/ekster/pkg/util"
"willnorris.com/go/microformats"

View File

@ -31,5 +31,3 @@ func main() {
// URL: https://api.github.com/user/58276/repos?page=2; Rel: next
// URL: https://api.github.com/user/58276/repos?page=2; Rel: last
```

View File

@ -3,7 +3,7 @@ package linkheader_test
import (
"fmt"
"github.com/tomnomnom/linkheader"
"p83.nl/go/ekster/pkg/linkheader"
)
func ExampleParse() {

View File

@ -39,7 +39,7 @@ func TestSimple(t *testing.T) {
func TestEmpty(t *testing.T) {
links := Parse("")
if links != nil {
t.Errorf("Return value should be nil, but was %s", len(links))
t.Errorf("Return value should be nil, but was %d", len(links))
}
}

View File

@ -20,4 +20,4 @@ DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@ -96,6 +96,7 @@ func parseAtom(data []byte) (*Feed, error) {
return out, nil
}
// RAWContent is the innerxml
type RAWContent struct {
RAWContent string `xml:",innerxml"`
}

View File

@ -36,7 +36,7 @@ func TestParseAtomContent(t *testing.T) {
"atom_1.0": "Volltext des Weblog-Eintrags",
"atom_1.0_enclosure": "Volltext des Weblog-Eintrags",
"atom_1.0-1": "",
"atom_1.0_html": "<body>html</body>",
// "atom_1.0_html": "<body>html</body>",
}
for test, want := range tests {

View File

@ -133,6 +133,7 @@ func (f *Feed) UpdateWithContent(content []byte) error {
return err
}
// UpdateByFeed parses content and updates f
func (f *Feed) UpdateByFeed(update *Feed) error {
// Check that we don't update too often.

View File

@ -4,4 +4,5 @@ package rss
const debug = true
// DATE is the format
const DATE = "Mon 2 Jan 2006 15:04:05 MST"

View File

@ -1,8 +1,6 @@
package rss
import (
"encoding/json"
"errors"
"io/ioutil"
"net/http"
"os"
@ -84,51 +82,6 @@ func MakeTestdataFetchFunc(file string) FetchFunc {
}
}
func TestFeedUnmarshalUpdate(t *testing.T) {
fetch1 := MakeTestdataFetchFunc("rssupdate-1")
fetch2 := MakeTestdataFetchFunc("rssupdate-2")
feed, err := FetchByFunc(fetch1, "http://localhost/dummyrss")
if err != nil {
t.Fatalf("Failed fetching testdata 'rssupdate-2': %v", err)
}
if 1 != feed.Unread {
t.Errorf("Expected one unread item initially, got %v", feed.Unread)
}
jsonBlob, err := json.Marshal(feed)
if err != nil {
t.Fatalf("Failed to marshal Feed %+v\n", feed)
}
var unmarshalledFeed Feed
err = json.Unmarshal(jsonBlob, &unmarshalledFeed)
var defaultFetchFuncCalled = 0
DefaultFetchFunc = func(url string) (resp *http.Response, err error) {
defaultFetchFuncCalled++
return nil, errors.New("No network in test")
}
err = unmarshalledFeed.Update()
if err != nil {
t.Logf("Expected failure updating via http in test: %v", err)
}
if defaultFetchFuncCalled < 1 {
t.Error("DefaultFetchFunc was not called during Update()")
}
err = unmarshalledFeed.UpdateByFunc(fetch2)
if err != nil {
t.Fatalf("Failed updating the feed from testdata 'rssupdate-2': %v", err)
}
if 2 != unmarshalledFeed.Unread {
t.Errorf("Expected two unread items after update, got %v", unmarshalledFeed.Unread)
}
}
func TestItemGUIDs(t *testing.T) {
feed1, err := FetchByFunc(MakeTestdataFetchFunc("rss_2.0"), "http://localhost/dummyfeed1")
if err != nil {

View File

@ -14,7 +14,7 @@
<updated>2003-12-13T18:30:02Z</updated>
<summary>Zusammenfassung des Weblog-Eintrags</summary>
<content>Volltext des Weblog-Eintrags</content>
<link rel="enclosure"
<link rel="enclosure"
type="audio/mpeg"
title="MP3"
href="http://example.org/audio.mp3"

50
pkg/rss/testdata/rss_0.91 vendored Normal file
View File

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<rss version="0.91">
<channel>
<title>WriteTheWeb</title>
<link>http://writetheweb.com</link>
<description>News for web users that write back</description>
<language>en-us</language>
<copyright>Copyright 2000, WriteTheWeb team.</copyright>
<managingEditor>editor@writetheweb.com</managingEditor>
<webMaster>webmaster@writetheweb.com</webMaster>
<image>
<title>WriteTheWeb</title>
<url>http://writetheweb.com/images/mynetscape88.gif</url>
<link>http://writetheweb.com</link>
<width>88</width>
<height>31</height>
<description>News for web users that write back</description>
</image>
<item>
<title>Giving the world a pluggable Gnutella</title>
<link>http://writetheweb.com/read.php?item=24</link>
<description>WorldOS is a framework on which to build programs that work like Freenet or Gnutella -allowing distributed applications using peer-to-peer routing.</description>
</item>
<item>
<title>Syndication discussions hot up</title>
<link>http://writetheweb.com/read.php?item=23</link>
<description>After a period of dormancy, the Syndication mailing list has become active again, with contributions from leaders in traditional media and Web syndication.</description>
</item>
<item>
<title>Personal web server integrates file sharing and messaging</title>
<link>http://writetheweb.com/read.php?item=22</link>
<description>The Magi Project is an innovative project to create a combined personal web server and messaging system that enables the sharing and synchronization of information across desktop, laptop and palmtop devices.</description>
</item>
<item>
<title>Syndication and Metadata</title>
<link>http://writetheweb.com/read.php?item=21</link>
<description>RSS is probably the best known metadata format around. RDF is probably one of the least understood. In this essay, published on my O'Reilly Network weblog, I argue that the next generation of RSS should be based on RDF.</description>
</item>
<item>
<title>UK bloggers get organised</title>
<link>http://writetheweb.com/read.php?item=20</link>
<description>Looks like the weblogs scene is gathering pace beyond the shores of the US. There's now a UK-specific page on weblogs.com, and a mailing list at egroups.</description>
</item>
<item>
<title>Yournamehere.com more important than anything</title>
<link>http://writetheweb.com/read.php?item=19</link>
<description>Whatever you're publishing on the web, your site name is the most valuable asset you have, according to Carl Steadman.</description>
</item>
</channel>
</rss>

View File

@ -100,4 +100,4 @@ The lyrics are &lt;a href=&quot;http://www.cs.cmu.edu/~mleone/gdead/dead-lyrics/
<enclosure url="http://www.scripting.com/mp3s/usBlues.mp3" length="5272510" type="audio/mpeg"/>
</item>
</channel>
</rss>
</rss>

View File

@ -51,4 +51,4 @@
<link>http://www.xul.fr/search.php</link>
</textinput>
</rdf:RDF>
</rdf:RDF>

View File

@ -38,4 +38,4 @@
<guid>http://liftoff.msfc.nasa.gov/2003/05/20.html#item570</guid>
</item>
</channel>
</rss>
</rss>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>ዜና - የአሜሪካ ድምፅ</title>
<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>ዜና - የአሜሪካ ድምፅ</title>
<link>http://amharic.voanews.com/archive/news/latest/3167/3167.html</link>
<description>The Voice of America broadcasts daily radio programs to Ethiopia in Amharic. Each program features the latest news, in-depth reports on issues in the news from VOA correspondents and feature reports.
<description>The Voice of America broadcasts daily radio programs to Ethiopia in Amharic. Each program features the latest news, in-depth reports on issues in the news from VOA correspondents and feature reports.
የፕሮግራም መግለጫ
ወደ 98 ሚሊየን የሚጠጋ ሕዝብ ባላት ኢትዮጵያ አማርኛ ብሔራዊ</description>
<image>
@ -11,17 +11,17 @@
<link>http://amharic.voanews.com/archive/news/latest/3167/3167.html</link>
</image>
<language>am</language>
<copyright>2012 - VOA</copyright>
<ttl>60</ttl>
<lastBuildDate>Sun, 15 May 2016 13:53:13 +0300</lastBuildDate>
<generator>Pangea CMS VOA</generator>
<copyright>2012 - VOA</copyright>
<ttl>60</ttl>
<lastBuildDate>Sun, 15 May 2016 13:53:13 +0300</lastBuildDate>
<generator>Pangea CMS VOA</generator>
<atom:link href="http://amharic.voanews.com/api/zt$gteitjt" rel="self" type="application/rss+xml" />
<item>
<title>አሜሪካ ለኢትዮጵያ ተጨማሪ እርዳታ ሰጠች</title>
<description>ዩናይትድ ስቴትስ በድርቅ ለተጎዱ ኢትዮጵያዊያን መርጃ የሚሆን የ128 ሚሊየን ዶላር ተጨማሪ ድጋፍ ሰጥታለች።</description>
<link>http://amharic.voanews.com/a/us-give-more-aid-to-ethiopia-to-address-crisis/3330430.html</link>
<guid>http://amharic.voanews.com/a/us-give-more-aid-to-ethiopia-to-address-crisis/3330430.html</guid>
<link>http://amharic.voanews.com/a/us-give-more-aid-to-ethiopia-to-address-crisis/3330430.html</link>
<guid>http://amharic.voanews.com/a/us-give-more-aid-to-ethiopia-to-address-crisis/3330430.html</guid>
<pubDate>Sat, 14 May 2016 18:39:34 +0300</pubDate>
<category>ዜና</category><category>ኢትዮጵያ</category><author>noreply@voanews.com (እስክንድር ፍሬው)</author><comments>http://amharic.voanews.com/a/us-give-more-aid-to-ethiopia-to-address-crisis/3330430.html#relatedInfoContainer</comments><enclosure url="http://gdb.voanews.com/6C49CA6D-C18D-414D-8A51-2B7042A81010_cx0_cy29_cw0_w800_h450.jpg" length="3123" type="image/jpeg"/>
</item>
</item>
</channel></rss>

View File

@ -9,8 +9,9 @@ import (
"net/url"
"strings"
"linkheader"
"rss"
"p83.nl/go/ekster/pkg/rss"
"p83.nl/go/ekster/pkg/linkheader"
"p83.nl/go/ekster/pkg/jsonfeed"
"willnorris.com/go/microformats"

5
vendor/rss/go.mod vendored
View File

@ -1,5 +0,0 @@
module "github.com/pstuifzand/go-parse-feed"
require (
"github.com/axgle/mahonia" v0.0.0-20180208002826-3358181d7394
)

View File

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<rss version="0.91">
<channel>
<title>WriteTheWeb</title>
<link>http://writetheweb.com</link>
<description>News for web users that write back</description>
<language>en-us</language>
<copyright>Copyright 2000, WriteTheWeb team.</copyright>
<managingEditor>editor@writetheweb.com</managingEditor>
<webMaster>webmaster@writetheweb.com</webMaster>
<image>
<title>WriteTheWeb</title>
<url>http://writetheweb.com/images/mynetscape88.gif</url>
<link>http://writetheweb.com</link>
<width>88</width>
<height>31</height>
<description>News for web users that write back</description>
</image>
<item>
<title>Giving the world a pluggable Gnutella</title>
<link>http://writetheweb.com/read.php?item=24</link>
<description>WorldOS is a framework on which to build programs that work like Freenet or Gnutella -allowing distributed applications using peer-to-peer routing.</description>
</item>
<item>
<title>Syndication discussions hot up</title>
<link>http://writetheweb.com/read.php?item=23</link>
<description>After a period of dormancy, the Syndication mailing list has become active again, with contributions from leaders in traditional media and Web syndication.</description>
</item>
<item>
<title>Personal web server integrates file sharing and messaging</title>
<link>http://writetheweb.com/read.php?item=22</link>
<description>The Magi Project is an innovative project to create a combined personal web server and messaging system that enables the sharing and synchronization of information across desktop, laptop and palmtop devices.</description>
</item>
<item>
<title>Syndication and Metadata</title>
<link>http://writetheweb.com/read.php?item=21</link>
<description>RSS is probably the best known metadata format around. RDF is probably one of the least understood. In this essay, published on my O'Reilly Network weblog, I argue that the next generation of RSS should be based on RDF.</description>
</item>
<item>
<title>UK bloggers get organised</title>
<link>http://writetheweb.com/read.php?item=20</link>
<description>Looks like the weblogs scene is gathering pace beyond the shores of the US. There's now a UK-specific page on weblogs.com, and a mailing list at egroups.</description>
</item>
<item>
<title>Yournamehere.com more important than anything</title>
<link>http://writetheweb.com/read.php?item=19</link>
<description>Whatever you're publishing on the web, your site name is the most valuable asset you have, according to Carl Steadman.</description>
</item>
</channel>
</rss>