Commit graph

3410 commits

Author SHA1 Message Date
Jan Tojnar
f672902896
Add .git-blame-ignore-revs file (#2903)
This will ignore coding style change commits in GitHub’s blame UI.

Same thing can be achieved locally using either `git blame --ignore-revs-file .git-blame-ignore-revs`
or `git config blame.ignoreRevsFile .git-blame-ignore-revs`

https://git-scm.com/docs/git-blame#Documentation/git-blame.txt---ignore-revs-fileltfilegt
https://docs.github.com/en/repositories/working-with-files/using-files/viewing-a-file#ignore-commits-in-the-blame-view
2022-07-08 17:00:34 +02:00
Dag
abfc6b4633
feat: introduce template engine (#2899) 2022-07-08 14:17:25 +02:00
Jan Tojnar
951092eef3
Fix coding style missed by phpbcf (#2901)
$ composer require --dev friendsofphp/php-cs-fixer

$ echo >.php-cs-fixer.dist.php "<?php

$finder = PhpCsFixer\Finder::create()
    ->in(__DIR__);

$rules = [
    '@PSR12' => true,
    // '@PSR12:risky' => true,
    '@PHP74Migration' => true,
    // '@PHP74Migration:risky' => true,
    // buggy, duplicates existing comment sometimes
    'no_break_comment' => false,
    'array_syntax' => true,
    'lowercase_static_reference' => true,
    'visibility_required' => false,
    // Too much noise
    'binary_operator_spaces' => false,
    'heredoc_indentation' => false,
    'trailing_comma_in_multiline' => false,
];

$config = new PhpCsFixer\Config();

return $config
    ->setRules($rules)
    // ->setRiskyAllowed(true)
    ->setFinder($finder);

"

$ vendor/bin/php-cs-fixer --version
PHP CS Fixer 3.8.0 BerSzcz against war! by Fabien Potencier and Dariusz Ruminski.
PHP runtime: 8.1.7

$ vendor/bin/php-cs-fixer fix
$ rm .php-cs-fixer.cache
$ vendor/bin/php-cs-fixer fix
2022-07-08 13:00:52 +02:00
Jan Tojnar
dbf8c5b7ae
refactor(BridgeFactory): make methods only accept valid class names (#2897)
This moves the responsibility for getting a valid class name
to the users of BridgeFactory, avoiding the repeated sanitation.
Improper use can also be checked statically.
2022-07-08 12:54:23 +02:00
sal0max
20bf2aa4fe
[ExplosmBridge] merge ExplosmBridge and CyanideAndHappinessBridge (#2844) 2022-07-08 00:23:29 +02:00
llamasblade
f887ce8f63
[HytaleBridge] Add bridge (#2900) 2022-07-07 15:12:35 +02:00
Tokariew
ea45717a28
[Instagram] fix: add ds_user_id (#2881)
Fix #2876
2022-07-07 12:08:21 +02:00
Jan Tojnar
d107f8ed30
Improve Factory variable names (#2895) 2022-07-06 12:14:04 +02:00
Bocki
e3dad86bca
[core] prtester fix for optgroups (#2896) 2022-07-06 11:26:53 +02:00
Joseph
6c52e9bbc6
[TelegramBridge] Support telegram.me in detect params regex (#2891) 2022-07-06 03:48:49 +02:00
Jan Tojnar
e254dfbb9c
ci: Fix PHPCompatibility again (#2892)
The fix in 66568e3a39 prevented an error
when installing phpcompatibility/php-compatibility but there was still
a warning before that when installing dealerdirect/phpcodesniffer-composer-installer.
With Composer 2.3.9, this is now an error too, so we need to move
the config change before that: https://getcomposer.org/changelog/2.3.9
2022-07-06 03:39:58 +02:00
Jan Tojnar
b444fa71f5 docs: Update requirements
This was forgotten in 8365a7a34d.
2022-07-06 03:34:37 +02:00
Jan Tojnar
ab6aca3163 lib/Configuration: Remove redundant comment
It was just getting out of sync:

- Minimum PHP version was bumped in 8365a7a34d
- Cache directory permission check was removed in 8e2b65556f
- Whitelist permission check was removed in d4e867f240
2022-07-06 03:34:37 +02:00
Jan Tojnar
7ee942621d composer: Update lockfile
composer.json was modified in 8365a7a34d
but the changes were not propagated to the lockfile,
resulting in warnings on every installation.
2022-07-06 03:34:37 +02:00
Dag
192fc0ee9b
[FeedMerge] feat: remove duplicates (#2888)
Fix #2855
2022-07-05 15:39:00 +02:00
Dag
321ec7c8c1
refactor: move cache logic into the factory (#2884) 2022-07-05 13:20:01 +02:00
Dag
5b9b579652
refactor: remove unused class (#2883) 2022-07-05 10:50:39 +02:00
Dag
e918bda735
chore: introduce CONTRIBUTORS.md (#2839) 2022-07-04 07:33:23 +02:00
sal0max
7d941c2898
[Flaschenpost] Add bridge (#2808) 2022-07-04 07:29:22 +02:00
Dag
4f75591060
Reformat codebase v4 (#2872)
Reformat code base to PSR12

Co-authored-by: rssbridge <noreply@github.com>
2022-07-01 15:10:30 +02:00
Jan Tojnar
66568e3a39
ci: Fix PHPCompatibility (#2873)
> For additional security you should declare the allow-plugins config with a list of packages names that are allowed to run code. See https://getcomposer.org/allow-plugins
> You have until July 2022 to add the setting. Composer will then switch the default behavior to disallow all plugins.

Oops, it is July now.
2022-07-01 15:02:04 +02:00
Dag
9f2f1e526d
[Instructables] refactor: conform to PSR2 (#2870) 2022-07-01 02:19:47 +02:00
Patrick Collins
2c7a9d7c45
[MangaDex] improve date handling (#2864)
prioritize new chapters rather than just edited ones.
should avoid batch-renaming drowning out new chapters, and existing items being re-sorted in the feed when they're edited.
documentation here: https://api.mangadex.org/docs/dates/
2022-06-26 08:50:51 +02:00
Dag
5076d09de6
refactor: prepare for PSR2 (#2859) 2022-06-24 18:29:35 +02:00
Dag
d2313bddcc
feat: print which bridge is being processed (#2860) 2022-06-24 14:40:17 +02:00
Jan Tojnar
b1ae7603bf
ci: Install PHPUnit as a Composer dependency (#2857)
Now that we dropped support for deprecated PHP versions,
we can use the same PHPUnit version on all supported PHP version.
Let’s install it as a Composer dependency to have the same
PHPUnit version on the CI as on developers’ computers.
2022-06-24 12:00:58 +02:00
KamaleiZestri
556f0b4237
[NewgroundsBridge] Add Bridge (#2849) 2022-06-24 11:59:24 +02:00
Yaman Qalieh
1e7ad6ed51
[PixivBridge] Remove backwards compatability hack (#2846)
There is no need for this since the context is guessed if it's not
provided.
2022-06-24 11:31:24 +02:00
Dag
92782e6c34
[GoogleSearch] feat: add verbatim option (#2858)
The verbatim option is the same as wrapping the query in quotes e.g. "rss-bridge".
2022-06-24 11:18:27 +02:00
Yaman Qalieh
1cfcacbbeb
[BugzillaBridge] Add new bridge (#2825) 2022-06-24 11:04:49 +02:00
Yaman Qalieh
7d31d32750
[core] Fix bugs in release helper and document (#2819) 2022-06-24 11:02:33 +02:00
Yaman Qalieh
abb4c17a0d
bridges: Update maintainer (#2856) 2022-06-22 13:07:54 -04:00
Dag
a166899633
[FeedMerge] fix bugs (#2854)
* [FeedMerge] fix: sort items by timestamp descending

* [FeedMerge] fix: fetch 10 most recent items

This fixes a bug where the bridge e.g. fetched 10 items from the first feed and then nothing from the rest
2022-06-22 18:34:05 +02:00
Dag
7dc3449207
[KilledByGoogle] fix: broken enclosure url (#2852)
* [KilledByGoogle] fix: broken enclosure url

The previous enclosure url was HTTP 404.

Also add link to items.

* fix: close unclosed <a> tag
2022-06-22 18:33:48 +02:00
Dag
bde00447f1
[Telegram] fix: remove all enclosures except for videos (#2850) 2022-06-22 18:33:21 +02:00
Dag
9d5f59e2db
[GoogleSearch] fix: improve bridge (#2848)
Sort properly by date.
Fix php errors.
Improve the date parsing logic.
Improve the content parsing by also including those with · as separator
2022-06-22 18:32:54 +02:00
Dag
e7aebb223d
fix: catch everything (#2837)
Improve ux.
2022-06-22 18:32:22 +02:00
Dag
ee80f4918e
refactor: action (#2836) 2022-06-22 18:30:37 +02:00
Dag
fad0dbb6ef
refactor: fix exception handling (#2835)
* refactor: fix exception handling

The removed catch is never uses in php versions above 7.
The need for multiple catch statements like this is to support both php 5 and 7.

* remove traces of old exception handling

* add typehints

* dont treat exception code 0 specially
2022-06-22 18:30:06 +02:00
Dag
07927008eb
refactor: CacheFactory (#2834) 2022-06-22 18:29:28 +02:00
Dag
b7b9378484
refactor: ActionFactory (#2833) 2022-06-22 18:28:07 +02:00
Dag
af5648d928
refactor: FormatFactory (#2832) 2022-06-22 18:27:20 +02:00
Austin Huang
e9b8a1f9f9
[Mastodon] Use ActivityPub outbox for Mastodon (et al.) feed (#2756)
* Use ActivityPub outbox for Mastodon (et al.) feed

closes #2754

* Better description for Mastodon bridge

I mean I could rename it to ActivityPub bridge if the maintainer so pleases

* [Mastodon] Please the lint

* [Mastodon] address feedback

* [Mastodon] fix link, address spelling case bug

* refactor

* [Mastodon] add username cache, fix try-catch, rename

* [Mastodon] shorten description to satisfy the lint

* [Mastodon] address feedback

* [Mastodon] support Secure Mode instances

* [Mastodon] add config documentation

* [Mastodon] update docs

Co-authored-by: Dag <me@dvikan.no>
2022-06-20 19:11:46 -04:00
Dag
8365a7a34d
chore: bump required php version to 7.4 (#2838)
* chore: require min php 7.4

* Revert "feat: backport php 7.3 functions (#2803)"

This reverts commit 6df5a4bc14.

* [BandcampDaily] use array_key_first

* hard fail on php versions below 7.4

* update phpcompat linter
2022-06-19 21:45:33 +02:00
Joseph
192dc4dae2
[TikTokBridge] Add bridge (#2828) 2022-06-18 21:59:39 -04:00
Korytov Pavel
c78c1254a8
[NovayaGazetaEuropeBridge] Add bridge (#2827) 2022-06-18 21:57:40 -04:00
Yaman Qalieh
65e6d9f454
[XPathAbstract] Improve Media Url regex (#2845) 2022-06-19 02:19:32 +02:00
Gilles
ce63d8a706
[YGGTorrentBridge] Changed base URL and one parameter name (#2826) 2022-06-17 23:06:59 -04:00
Eugene Molotov
d0bea1627e
[InstagramBridge] Fix incorrect cache timeout calculation (#2840)
It is expected that getCacheTimeout returns integer. In fact
it returned boolean value which lead to situation, where Instagram feeds
were not cached.
2022-06-18 03:02:31 +02:00
Dag
c6ba3e5280
[Parler] fix: use new api endpoint (#2831)
They also modified the json structure.
2022-06-17 21:18:29 +02:00