Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package lux for openSUSE:Factory checked in at 2023-11-06 21:14:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/lux (Old) and /work/SRC/openSUSE:Factory/.lux.new.17445 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lux" Mon Nov 6 21:14:19 2023 rev:2 rq:1123508 version:0.22.0 Changes: -------- --- /work/SRC/openSUSE:Factory/lux/lux.changes 2023-10-10 21:00:52.011315187 +0200 +++ /work/SRC/openSUSE:Factory/.lux.new.17445/lux.changes 2023-11-06 21:14:32.039829308 +0100 @@ -1,0 +2,9 @@ +Mon Nov 6 08:09:25 UTC 2023 - Michael Vetter <mvet...@suse.com> + +- Update to 0.22.0: + * build(deps): bump golang.org/x/net from 0.7.0 to 0.17.0 #1283 + * Updated API for requesting subtitles from bilibili #1285 + * feat: support bilibili b23.tv domain #1287 + * Updated Bilibili bangumi extractor due to an API change #1291 + +------------------------------------------------------------------- Old: ---- lux-0.21.0.tar.gz New: ---- lux-0.22.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ lux.spec ++++++ --- /var/tmp/diff_new_pack.R7fdw8/_old 2023-11-06 21:14:32.767856106 +0100 +++ /var/tmp/diff_new_pack.R7fdw8/_new 2023-11-06 21:14:32.767856106 +0100 @@ -1,5 +1,5 @@ # -# spec file for lux +# spec file for package lux # # Copyright (c) 2023 SUSE LLC # @@ -17,7 +17,7 @@ Name: lux -Version: 0.21.0 +Version: 0.22.0 Release: 0 Summary: A video downloader built with Go License: MIT ++++++ lux-0.21.0.tar.gz -> lux-0.22.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lux-0.21.0/extractors/bilibili/bilibili.go new/lux-0.22.0/extractors/bilibili/bilibili.go --- old/lux-0.21.0/extractors/bilibili/bilibili.go 2023-10-09 10:11:07.000000000 +0200 +++ new/lux-0.22.0/extractors/bilibili/bilibili.go 2023-11-06 06:52:44.000000000 +0100 @@ -18,7 +18,9 @@ ) func init() { - extractors.Register("bilibili", New()) + bilibiliExtractor := New() + extractors.Register("bilibili", bilibiliExtractor) + extractors.Register("b23", bilibiliExtractor) } const ( @@ -94,29 +96,28 @@ func extractBangumi(url, html string, extractOption extractors.Options) ([]*extractors.Data, error) { dataString := utils.MatchOneOf(html, `<script\s+id="__NEXT_DATA__"\s+type="application/json"\s*>(.*?)</script\s*>`)[1] - epMapString := utils.MatchOneOf(dataString, `"epMap"\s*:\s*(.+?)\s*,\s*"initEpList"`)[1] + epArrayString := utils.MatchOneOf(dataString, `"episodes"\s*:\s*(.+?)\s*,\s*"user_status"`)[1] fullVideoIdString := utils.MatchOneOf(dataString, `"videoId"\s*:\s*"(ep|ss)(\d+)"`) epSsString := fullVideoIdString[1] // "ep" or "ss" videoIdString := fullVideoIdString[2] - var epMap map[string]json.RawMessage - err := json.Unmarshal([]byte(epMapString), &epMap) + var epArray []json.RawMessage + err := json.Unmarshal([]byte(epArrayString), &epArray) if err != nil { return nil, errors.WithStack(err) } var data bangumiData - for idString, jsonByte := range epMap { + for _, jsonByte := range epArray { var epInfo bangumiEpData err := json.Unmarshal(jsonByte, &epInfo) if err != nil { return nil, errors.WithStack(err) } - epID, err := strconv.ParseInt(idString, 10, 0) + videoId, err := strconv.ParseInt(videoIdString, 10, 0) if err != nil { return nil, errors.WithStack(err) } - epInfo.EpID = int(epID) - if idString == videoIdString || (epSsString == "ss" && epInfo.TitleFormat == "第1è¯") { + if epInfo.ID == int(videoId) || (epSsString == "ss" && epInfo.TitleFormat == "第1è¯") { data.EpInfo = epInfo } data.EpList = append(data.EpList, epInfo) @@ -500,7 +501,7 @@ func getSubTitleCaptionPart(aid int, cid int) *extractors.CaptionPart { jsonString, err := request.Get( - fmt.Sprintf("http://api.bilibili.com/x/web-interface/view?aid=%d&cid=%d", aid, cid), referer, nil, + fmt.Sprintf("http://api.bilibili.com/x/player/wbi/v2?aid=%d&cid=%d", aid, cid), referer, nil, ) if err != nil { return nil @@ -512,7 +513,7 @@ } return &extractors.CaptionPart{ Part: extractors.Part{ - URL: stu.Data.SubtitleInfo.SubtitleList[0].SubtitleUrl, + URL: fmt.Sprintf("https:%s", stu.Data.SubtitleInfo.SubtitleList[0].SubtitleUrl), Ext: "srt", }, Transform: subtitleTransform, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lux-0.21.0/extractors/bilibili/bilibili_test.go new/lux-0.22.0/extractors/bilibili/bilibili_test.go --- old/lux-0.21.0/extractors/bilibili/bilibili_test.go 2023-10-09 10:11:07.000000000 +0200 +++ new/lux-0.22.0/extractors/bilibili/bilibili_test.go 2023-11-06 06:52:44.000000000 +0100 @@ -59,6 +59,13 @@ Title: "ã8Kæ¼ç¤ºçãBç«é¦åï¼ä½ ç设å¤è¿é¡¶å¾ä½åï¼", }, }, + { + name: "b23 test", + args: test.Args{ + URL: "https://b23.tv/Fc9i7QF", + Title: "ãåå¹´æ¦ã2000-2009å¹´æå¼ºåè¯éæ²TOP100 P1 100ç±è½¬è§-ç½å¿ç¥¥", + }, + }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lux-0.21.0/extractors/bilibili/types.go new/lux-0.22.0/extractors/bilibili/types.go --- old/lux-0.21.0/extractors/bilibili/types.go 2023-10-09 10:11:07.000000000 +0200 +++ new/lux-0.22.0/extractors/bilibili/types.go 2023-11-06 06:52:44.000000000 +0100 @@ -131,7 +131,7 @@ type subtitleInfo struct { AllowSubmit bool `json:"allow_submit"` - SubtitleList []subtitleProperty `json:"list"` + SubtitleList []subtitleProperty `json:"subtitles"` } type bilibiliWebInterfaceData struct { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lux-0.21.0/go.mod new/lux-0.22.0/go.mod --- old/lux-0.21.0/go.mod 2023-10-09 10:11:07.000000000 +0200 +++ new/lux-0.22.0/go.mod 2023-11-06 06:52:44.000000000 +0100 @@ -16,7 +16,7 @@ github.com/pkg/errors v0.9.1 github.com/robertkrimen/otto v0.0.0-20211024170158-b87d35c0b86f github.com/urfave/cli/v2 v2.6.0 - golang.org/x/net v0.7.0 + golang.org/x/net v0.17.0 ) require ( @@ -37,7 +37,7 @@ github.com/rivo/uniseg v0.4.3 // indirect github.com/rogpeppe/go-internal v1.9.0 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect - golang.org/x/sys v0.5.0 // indirect - golang.org/x/text v0.7.0 // indirect + golang.org/x/sys v0.13.0 // indirect + golang.org/x/text v0.13.0 // indirect gopkg.in/sourcemap.v1 v1.0.5 // indirect ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lux-0.21.0/go.sum new/lux-0.22.0/go.sum --- old/lux-0.21.0/go.sum 2023-10-09 10:11:07.000000000 +0200 +++ new/lux-0.22.0/go.sum 2023-11-06 06:52:44.000000000 +0100 @@ -106,8 +106,8 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210916014120-12bc252f5db8/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= -golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= +golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -123,8 +123,8 @@ golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE= +golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -132,8 +132,8 @@ golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= -golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= ++++++ vendor.tar.zst ++++++ Binary files /var/tmp/diff_new_pack.R7fdw8/_old and /var/tmp/diff_new_pack.R7fdw8/_new differ