Commit Graph

159 Commits

Author SHA1 Message Date
TonyRL 2bcc6f6ad0 test: puppeteer wait until test finish 2022-05-04 20:43:15 +00:00
Rongrong a5d74e521c
feat(core/middleware/anti-hotlink): route matching (#9681)
* feat(core/middleware/anti-hotlink): route matching

Signed-off-by: Rongrong <i@rong.moe>

* fix(test): coverage

Signed-off-by: Rongrong <i@rong.moe>

* docs(install): fix mistaken config key

Signed-off-by: Rongrong <i@rong.moe>
2022-05-04 03:29:23 +08:00
Tony 0b544e1395
feat(utils): puppeteer-extra-plugin-stealth (#9676) 2022-05-03 01:17:17 +08:00
Rongrong 616ad78c88
fix(core/utils/anti-hotlink): invalid HTML output (#9669)
Signed-off-by: Rongrong <i@rong.moe>
2022-05-01 04:14:07 +08:00
Rongrong 0522c63d5f
fix(core/utils): invalid request header `Server` (#9582)
Signed-off-by: Rongrong <15956627+Rongronggg9@users.noreply.github.com>
2022-04-20 22:32:46 +08:00
Tony bafb3534e1
feat(utils): random user agent (#9449)
* feat(utils): random ua

* chore: bump rand-user-agent to 1.0.58(no more deps)
2022-04-12 17:51:07 +08:00
Rongrong 74e1f88a32
feat(core)(utils/wechat-mp): normalize URL (#9497)
Signed-off-by: Rongrong <15956627+Rongronggg9@users.noreply.github.com>
2022-04-08 18:42:52 +08:00
Rongrong a79cc20ec1
feat(utils): add utils for WeChat MP (#9487)
Motivation:
There are multiple routes that need to fetch articles from WeChat MP.
However, letting them fetch articles by themselves could potentially
lead to cache key collisions. Even if cache key collisions do not occur,
un-normalized URL could potentially lead to duplicated requests.
What's more, articles from WeChat MP have weird formats and need to be
fixed. Creating a universal function to do this work can create some
ease for new route contributors.

Note:
In order to make this PR atomic as much as possible, I did not touch
those broken routes. Once this PR is merged, I will try to fix them.

Signed-off-by: Rongrong <15956627+Rongronggg9@users.noreply.github.com>
2022-04-07 21:46:15 +08:00
Rongrong 5b35471e39
fix(core): offending RFC4287 (#9441)
* fix(core): offending RFC4287

should not leave `<updated>` blank when `<published>` is not blank
these two fields MUST conform to the "date-time" production in RFC3339

Signed-off-by: Rongrong <15956627+Rongronggg9@users.noreply.github.com>

* test(common-utils): complete tests

Signed-off-by: Rongrong <15956627+Rongronggg9@users.noreply.github.com>

* test(template): restrict expected value of `pubDate`

Signed-off-by: Rongrong <15956627+Rongronggg9@users.noreply.github.com>
2022-04-02 17:44:45 +08:00
Ethan Shen bf834bdb7d
fix(utils): tests for parse-date (#9428) 2022-03-31 10:23:42 +08:00
Ethan Shen d5648b37ee
fix(utils): parse relative dates with multiple time units (#9365)
* fix(utils): parse relative dates with multiple time units

* docs: remove warning

* fix: add more characters to match

* fix: rename to parse-date
2022-03-26 16:45:42 +08:00
Rongrong 3364b7eb1d
fix(route): migrate invalid `enclosure_length` usages to `itunes_duration` (#9291)
Close #9287

Signed-off-by: Rongrong <15956627+Rongronggg9@users.noreply.github.com>
2022-03-10 20:54:29 +08:00
DIYgod 0c6516c893
test: fix puppeteer error 2021-11-28 01:37:20 +00:00
DIYgod ba09be474d
test: fix rss-parser update error 2021-11-28 00:43:59 +00:00
NeverBehave 0792f7ba25
feat(core): first attempt to init script standard (#8224)
- lazy load
- rate limit per path
- init .debug.json support
- docs
- maintainer
- radar
2021-09-22 05:41:00 -07:00
Sukka d82847f541
style/chore(eslint): enforce new rules (#8040)
* style: prefer object shorthand syntax
* refactor: prefer Array#map over Array#forEach
* style: prefer arrow callback
* chore(eslint): update rules
* style: auto fix by eslint
2021-08-17 22:23:23 +08:00
Sukka 6e3b58ed1d
refactor: avoid promise overhead (#8028) 2021-08-16 11:45:53 -07:00
Chih-Hsuan Yen 1c9c4ccfc8
fix(core): make sure timeout error messages include URLs (#7981)
Before this fix, timeout messages are not quite useful

> error: Request undefined fail, retry attempt #1: TimeoutError: Timeout awaiting 'request' for 5000ms
2021-08-12 01:27:07 -07:00
DIYgod 5298f845f2
feat: support ua in blacklist and whitelist 2021-03-07 10:06:24 +08:00
DIYgod 89e82d88fa
feat: got request timeout 2021-02-01 20:06:49 +08:00
DIYgod 177c36cae7
feat: sentry route timeout 2021-02-01 20:06:23 +08:00
DIYgod 6506c39239
feat: remove hot ip in debug info 2021-01-21 11:57:16 +08:00
Henry b61c54ea9a
fix: GitHub actions test
3997265a4f
2020-10-02 23:58:21 +01:00
DIYgod 784ba5a725
feat: update debug text 2020-09-29 19:03:26 +08:00
DIYgod 3997265a4f
test: etag 2020-09-29 19:00:24 +08:00
DIYgod ed4725fa48
test: opencc 2020-09-25 01:43:59 +08:00
dependabot-preview[bot] 68c15eaa5c
chore(deps): bump got from 11.1.4 to 11.3.0 (#4922)
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: DIYgod <diy.d.god@gmail.com>
2020-06-26 01:22:09 +08:00
DIYgod 6d7ab13150
test: longer closing puppeteer page time 2020-06-14 22:38:01 +08:00
DIYgod 923b07eec4
test: filter and filterout combination cases 2020-06-08 17:59:04 +08:00
howel52 3e846e6919
fix: only collect errors which route path was matched (#4673) 2020-05-08 11:27:48 +08:00
DIYgod 283468d43a
test: add access-control test cases 2020-05-08 11:26:43 +08:00
DIYgod 8f371e6703 Merge branch 'proxy' of git://github.com/zengxs/RSSHub into zengxs-proxy 2020-05-07 00:42:56 +08:00
zengxs 910cbbc170 update docs & test cases 2020-05-06 23:12:43 +08:00
DIYgod b7eaf9ad34
test: fix md5 require 2020-05-06 20:15:30 +08:00
Henry Wang 4a46db99f9
feat: use simple access keys for access control (#4643) 2020-05-06 20:14:28 +08:00
NeverBehave cde5d9af45
feat: anti-hotlink for images (#4481) 2020-04-28 10:27:47 +08:00
fengkx 4384214326
feat: robots not index config (#4503) 2020-04-23 19:18:47 +08:00
DIYgod 17e54c0ec8
fix: redundant moment dependence 2020-04-19 21:06:10 +08:00
DIYgod 0e7b14e718
chore(deps-dev): bump prettier from 1.19.1 to 2.0.2 2020-04-02 21:21:46 +08:00
DIYgod aea67f7ae0
feat: longer default titleLengthLimit 2020-03-17 18:51:29 +08:00
DIYgod 48b27fe811
feat: auto add header Host 2020-02-15 21:32:16 +08:00
pnlng 4671720f4c
feat: add filter_case_sensitive url parameter (#3910) 2020-02-09 18:51:58 +08:00
DIYgod f6baa8d2cc
test: fix request-wrapper 2020-02-05 04:12:03 +08:00
DIYgod 77d55262ff
chore: bump got from 9.x to 10.x (#3875) 2020-02-04 01:09:14 +08:00
junfengP dae512feb9
feat: add route javlibrary (#3797) 2020-02-01 19:46:32 +08:00
DIYgod eec4fe626c
test: add date test case 2020-02-01 18:21:39 +08:00
DIYgod da19f818a4
test: compatible with github actions 2019-11-25 21:59:24 +08:00
DIYgod 2d22563254
test: compatible with github actions 2019-11-25 12:10:39 +08:00
DIYgod 31726d4464
feat: support no refresh cache 2019-11-04 18:59:00 +08:00
DIYgod addd22c113
feat(core): handle link and pubDate parameter 2019-10-22 18:02:47 +08:00