NeverBehave
5db837d6dc
feat(core): anti-hotlink experimental parameters ( #9997 )
...
Co-authored-by: Rongrong <i@rong.moe>
2022-06-20 18:41:16 -07:00
Rongrong
6a0d44348e
fix(core/parameter): missing some tags handling ( #9983 )
...
Signed-off-by: Rongrong <i@rong.moe>
2022-06-18 06:45:03 -09:00
Rongrong
1fcb5379df
fix(test): insufficiently robust puppeteer test ( #9974 )
...
Signed-off-by: Rongrong <i@rong.moe>
2022-06-17 21:55:33 +08:00
Tony
450e522167
feat(utils): decode cf protected email string ( #9900 )
...
* feat(utils): decode cf protected email string
* Update cf-email.js
2022-06-05 22:40:57 +08:00
Rongrong
e1ee28267e
fix(core): RequestInProgressError cache age ( #9850 )
...
* fix(core): RequestInProgressError cache age
Signed-off-by: Rongrong <i@rong.moe>
* fix: ci test
Signed-off-by: Rongrong <i@rong.moe>
2022-05-30 17:30:41 +08:00
Rongrong
13ec6be32b
fix(test): failing puppeteer without stealth test ( #9851 )
...
Signed-off-by: Rongrong <i@rong.moe>
2022-05-30 01:49:01 -03:00
Rongrong
2c4eab5e31
fix(core/parameter): absurd wrong path cache time ( #9796 )
...
Signed-off-by: Rongrong <i@rong.moe>
2022-05-21 21:44:45 +08:00
Tony
0f31bfa8b9
fix(utils): parse relative date with meridiem ( #9775 )
...
* fix(utils): parse relative date with meridiem
* fix: use regex
2022-05-17 20:21:47 +08:00
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
DIYgod
7a2dc47bf7
feat(core): auto referer
2019-10-22 17:25:32 +08:00
MachX
2204388bbd
fea: webtoons ( close #3164 ) ( #3178 )
2019-10-09 11:02:11 +08:00
Cloud
90a87b1723
refactor: optimize parameter ( #3200 )
2019-10-08 16:48:46 +08:00
DIYgod
f7d9688a62
feat: 100 times cache time for wrong path
2019-09-20 15:24:49 +08:00
DIYgod
8934686218
test: fix filter_time case
2019-09-19 19:19:01 +08:00
DIYgod
568441370d
test(pkg): pkg cases
2019-09-19 19:08:00 +08:00
DIYgod
7bdda509fe
feat(pkg): error handling
2019-09-19 18:15:51 +08:00
DIYgod
cbe13ea05b
test: fix require
2019-09-18 18:03:50 +08:00
DIYgod
4445443946
feat: use dynamical config
2019-09-18 17:45:21 +08:00
DIYgod
5c764f93f3
feat: support package
2019-09-16 18:19:15 +08:00
DIYgod
889f3118b1
test: add SENTRY env
2019-09-09 14:47:44 +08:00
Cloud
4d6257af50
feat: replace baseUrl to prefixUrl when got's next version ( #2996 )
...
* enhance: replace baseUrl to prefixUrl when got's next version
* test: baseUrl
2019-09-05 12:01:44 +08:00
DIYgod
f29d51be1c
test: fix debug test case
2019-09-04 22:26:39 +08:00
DIYgod
16263b020c
test: fix debug test case
2019-09-04 21:56:16 +08:00
DIYgod
4bc0a56064
test: fix debug test case
2019-09-04 19:20:24 +08:00
DIYgod
24cab914d8
feat: error page
2019-09-04 16:00:00 +08:00
DIYgod
dc37a779e4
feat: replace text
2019-09-04 15:02:28 +08:00
DIYgod
8523664227
refactor: rename
2019-09-04 14:53:42 +08:00
DIYgod
0af16097b3
feat: replace text
2019-09-04 14:28:29 +08:00
DIYgod
b2355436cc
fix: url base
2019-08-28 15:50:05 +08:00
DIYgod
56566ef62d
test: remove handleImg
2019-08-28 14:45:33 +08:00
DIYgod
29f588e6a0
feat: handle description in parameter middleware
2019-08-28 12:06:50 +08:00
Cloud
720aeb8260
fix: xx.xx@xx.com can't resovle ( #2920 )
...
* fix: xx.xx@xx.com can't resovle
* test: fix email config case
2019-08-24 11:13:44 +08:00
DIYgod
116241a857
test: fix email config case
2019-08-23 18:59:55 +08:00
Cloud
88f2b43e44
feat: add mail imap ( #2917 )
2019-08-23 17:12:25 +08:00
DIYgod
745eb0d52a
test: add template enclosure test cases
2019-08-23 15:44:52 +08:00
DIYgod
9a03bd4fe9
test: add cache test cases
2019-08-23 15:18:53 +08:00
DIYgod
10c63882bf
test: add cache test cases
2019-08-23 15:07:48 +08:00
DIYgod
f7e8682ba8
feat: add error routes and error paths info
2019-08-23 00:15:13 +08:00
Cloud
43a2bf482e
test: common-config ( #2891 )
...
* test: common-config
* test: common-config
2019-08-20 17:40:17 +08:00
Cloud
cb408c94de
test: test rule optimization ( #2871 )
2019-08-18 21:40:51 +08:00
DIYgod
c187811b97
feat: node name
2019-08-15 23:58:50 +08:00
DIYgod
eba8f46875
feat: header x-app -> server
2019-08-15 23:14:48 +08:00
Cloud
4b4b1d492a
fix: atomlink href ( #2858 )
2019-08-15 18:54:05 +08:00
DIYgod
e5d34eda6b
test: request-wrapper
2019-08-11 00:31:20 +08:00
sanmmmm
914034760d
feat: 新增自动提取全文输出 ( #2738 )
2019-08-02 17:22:58 +08:00
Henry Wang
d09affa703
feat: add addNoReferrer in common-utils ( #2571 )
...
* fix: no-referrer tag
* chore: merge qdaily routes
* feat: add addNoReferrer in common-utils
This adds no-referrer attribute to images.
Parameters:
- add no-referrer attribute to images
- $: cheerio selector
- source: source selector, string
- target: target attribute name, typically for lazyload imgs, string
- srcPrefix: prefix for src, string
- removeAttr: attributes to remove, array: ['attrA','attrB']
* test: add test case
* doc: update
2019-07-08 11:45:02 +08:00
DIYgod
b9ab52a0d5
feat: wrong path error
2019-06-19 18:52:13 +08:00
DIYgod
7c2f4777af
feat: debug info for hot route and path
2019-06-19 18:39:40 +08:00
DIYgod
449cd6bf37
test: socket
2019-06-14 18:04:55 +08:00
DIYgod
56e74742fc
test: got axios options
2019-06-14 17:51:03 +08:00
DIYgod
8937882847
test: allowEmpty
2019-06-14 11:37:04 +08:00