1
1
Fork 0
mirror of https://code.mensbeam.com/MensBeam/Arsse.git synced 2024-12-22 21:22:40 +00:00
Commit graph

779 commits

Author SHA1 Message Date
J. King
f7b3a473a9 Clarify ordering syntax rationale 2021-02-03 14:20:34 -05:00
J. King
af51377fe9 First set of article query tests 2021-02-03 13:06:36 -05:00
J. King
23ca6bb77b Count articles without offset or limit 2021-02-02 16:14:04 -05:00
J. King
0e7abfa8f9 Largely complete article querying
Tests to come
2021-02-02 16:05:16 -05:00
J. King
a43f8797c5 Add ability to sort by folder ID or name 2021-02-02 11:51:19 -05:00
J. King
ed27e0aaaa Sort nulls consistently
PostgreSQL normally sorts nulls after everything else in ascending order
and vice versa; we reverse this, to match SQLIte and MySQL
2021-02-02 10:00:08 -05:00
J. King
9d7ada7f59 Partial implementation of article sorting 2021-02-01 22:11:15 -05:00
J. King
007183450a Context and column list for article queries
Sorting and transformation still need to be figured out
2021-02-01 21:02:46 -05:00
J. King
197cbba77d Document article column definitions 2021-02-01 15:48:44 -05:00
J. King
ddbcb598e8 Match more closely Miniflux query string behaviour
- The starred key is a simople boolean whose value is immaterial
- Blank values are honoured for keys other than starred and status
2021-01-31 10:44:27 -05:00
J. King
bb89083444 Perform strict validation of query parameters
This is in fact stricter than Miniflux, which ignores duplicate values
and does not validate anything other than the string enumerations
2021-01-30 21:37:19 -05:00
J. King
1e924bed83 Partial query string normalization 2021-01-30 13:38:02 -05:00
J. King
3b2190ca10 Include folder names directly in subscription list 2021-01-28 14:55:18 -05:00
J. King
ad094f5217 Don't return icons without types at all 2021-01-27 13:41:10 -05:00
J. King
cd5f13f4b9 Tests for icon querying 2021-01-27 11:53:07 -05:00
J. King
76f1cc8e91 Adjust users of subscriptionIcon 2021-01-26 13:44:44 -05:00
J. King
cc2672fb0a Improve icon fetching interface 2021-01-26 12:03:26 -05:00
J. King
8e749bb73c Report 404 on icons for absence of data
This is significant as upgraded databases have icon IDs, but no data
2021-01-25 09:02:52 -05:00
J. King
bdf9c0e9d2 Prototype feed icon querying 2021-01-24 21:53:45 -05:00
J. King
9197a8d08b Implement feed deletion 2021-01-24 21:12:32 -05:00
J. King
8eebb75b18 Implement feed editing 2021-01-24 20:28:00 -05:00
J. King
5a8a044a92 Implement single-feed querying 2021-01-24 13:54:54 -05:00
J. King
a646ad77b7 Use a read transaction when computing filter rules 2021-01-24 11:45:08 -05:00
J. King
cca4b205e4 Correct error output of getCategoryFeeds 2021-01-24 11:33:00 -05:00
J. King
7893b5f59d More feed adding tests 2021-01-23 18:01:23 -05:00
J. King
36cc4928b9 Test feed fetching errors for Miniflux 2021-01-23 12:00:11 -05:00
J. King
727864f401 Implement feed listing by category
Also modify user list to reflect changes in Miniflux 2.0.27.
2021-01-22 18:24:33 -05:00
J. King
4972c79e32 Allow simpler feed exception creation 2021-01-21 22:44:22 -05:00
J. King
6936f365e4 Add calls coming in next version of Miniflux 2021-01-21 11:11:25 -05:00
J. King
fd25be5c27 Basic tests for feed creation 2021-01-20 18:28:51 -05:00
J. King
e7b2f54183 Prototype feed creation 2021-01-19 23:17:03 -05:00
J. King
14d2d19ae1 Tests for Miniflux feed listing 2021-01-17 13:02:31 -05:00
J. King
2cf4bf0d4d Prototype Miniflux feed listing 2021-01-16 22:52:07 -05:00
J. King
86897af0b3 Add ability to enable scraper
Also transfer any existing scraper booleans on database upgrade. It was
previously possible to enable scraping manually by editing the database,
and these settings will be honoured.
2021-01-16 19:06:20 -05:00
J. King
7897585d98 Test scraping
Text search should also match scraped content when appropriate
2021-01-16 17:58:31 -05:00
J. King
4cb23dd198 Partial implementation of proper content scraping 2021-01-16 14:24:01 -05:00
J. King
e74b44cc39 Change favicon to icon_url and add icon_id 2021-01-15 23:15:22 -05:00
J. King
2536c9fe03 Last tests for article filters 2021-01-15 23:02:33 -05:00
J. King
9f2b8d4f83 Imprement setting of filter rules 2021-01-14 12:42:33 -05:00
J. King
618fd67f80 Set marks for filtered articles on feed refresh 2021-01-13 14:54:22 -05:00
J. King
097362881b Tests for filtering during feed parsing 2021-01-11 23:12:43 -05:00
J. King
549c7bdc72 Style fixes 2021-01-08 15:47:19 -05:00
J. King
4f34b4ff29 Rule refactoring
- The Database class is now responsible for preparing rules
- Rules are now returned in an array keyed by user
- Empty strings are now passed through during rule preparation
2021-01-08 14:17:46 -05:00
J. King
c1eff8479c Simplify configuration property caching 2021-01-07 19:49:09 -05:00
J. King
6dba8aa66b Fixes for rules
- Whitespace is now collapsed before evaluating rules
- Feed tests are fixed to retrieve a dumy set of rules
- Rule evaluation during feed parsing also filled out
2021-01-07 15:08:50 -05:00
J. King
461e256052 Work around MySQL syntax weirdness
Also improve test for token translation to actually test that the
translated tokens are accepted by the database system
2021-01-07 10:12:38 -05:00
J. King
47ae65b9d3 Function to apply filter rules 2021-01-03 22:15:39 -05:00
J. King
ffc5579a7a Partial implementation of filter rule handling 2021-01-03 16:41:15 -05:00
J. King
7e17332714 Implement marking all as read for Miniflux 2020-12-31 17:50:40 -05:00
J. King
31f0539dc0 Implement Miniflux user deletion 2020-12-31 17:03:08 -05:00
J. King
bf95b134bd Fix up error codes for category changes 2020-12-31 15:46:47 -05:00
J. King
197922f92f Implement Miniflux user creation 2020-12-31 13:57:36 -05:00
J. King
ee0c3c9449 Tests and fixes for user modification 2020-12-30 17:01:17 -05:00
J. King
67f577d573 Bump emulated Miniflux version 2020-12-28 08:43:54 -05:00
J. King
f58005640a Prototype user modification 2020-12-28 08:12:30 -05:00
J. King
2946d950f2 Forbid more user names
- Control characters are now forbidden
- Controls and colons are now also forbidden when renaming
2020-12-27 10:08:00 -05:00
J. King
405f3af257 Invalidate sessions and Fever passwords when renaming users 2020-12-25 22:22:37 -05:00
J. King
5ec04d33c6 Add backend functionality to rename users 2020-12-25 17:47:36 -05:00
J. King
88cf3c6dae Test filter rule retrieval 2020-12-23 09:38:22 -05:00
J. King
d66cf32c1f Style fixes 2020-12-22 16:13:12 -05:00
J. King
a81760e39d Aggressivly clean up hidden articles
Notably, starred articles are cleaned up if hidden
2020-12-22 15:17:18 -05:00
J. King
ade0402210 Adjust TT-RSS to ignore hidden items 2020-12-21 21:49:57 -05:00
J. King
f33359f3e3 Move some Miniflux features to abstract handler 2020-12-20 22:30:59 -05:00
J. King
b7ce6f5c79 Adjust Fever to ignore hidden items 2020-12-20 19:32:07 -05:00
J. King
b2fae336e8 Adjust Nextcloud News to ignore hidden items 2020-12-20 17:42:28 -05:00
J. King
f0bfe1fdff Simplify editionLatest Database method
Also adjust label querying to take hidden marks into account
2020-12-20 17:34:32 -05:00
J. King
8527c83976 Exclude hiddens from subscription unread count
Also fix a bug that would result in the unread count being null if
no marks existed
2020-12-20 11:55:36 -05:00
J. King
97010d8822 Tests for marking articles hidden 2020-12-19 10:59:40 -05:00
J. King
86c4a30744 Adjust articleStarred function to discount hidden 2020-12-17 18:12:52 -05:00
J. King
8ae3740d5f Implement querying articles by hidden mark 2020-12-15 19:28:51 -05:00
J. King
d5cd5b6a17 Implement hidden marks
Tests are still needed
2020-12-15 13:20:03 -05:00
J. King
95a2018e75 Implement caategory marking as read 2020-12-14 12:41:09 -05:00
J. King
5124f76b70 Implementcategory deletion 2020-12-13 22:10:34 -05:00
J. King
eb079166de Tests for category renaming 2020-12-13 12:56:57 -05:00
J. King
3ebb46f48e Some work on categories 2020-12-11 23:47:13 -05:00
J. King
2e6c5d2ad2 Query Miniflux categories 2020-12-11 13:31:35 -05:00
J. King
ebdfad535c More Miniflux user tests
Also added user lookup functionality
2020-12-10 20:08:00 -05:00
J. King
7c841b5fc2 Test for listing users 2020-12-09 23:39:29 -05:00
J. King
5c83655541 Add modification timestamp to user metadata 2020-12-08 16:10:23 -05:00
J. King
d85988f09d Prototype Miniflux user querying 2020-12-08 15:34:31 -05:00
J. King
2eedf7d38c Finally fix MySQL 2020-12-07 09:52:42 -05:00
J. King
e9d449a8ba Fix user manager and tests 2020-12-07 00:07:10 -05:00
J. King
ce68566fcb Hopefully fix MySQL 2020-12-06 20:27:20 -05:00
J. King
a431243421 Fixes for MySQL and PostgreSQL 2020-12-06 13:17:19 -05:00
J. King
fcf1260dab Adjust database portion of user property manager 2020-12-05 22:13:48 -05:00
J. King
978929aabd WIP redesign of user properties 2020-12-05 11:01:44 -05:00
J. King
94154d4354 Implement Miniflux feed discovery 2020-12-02 18:00:27 -05:00
J. King
669e17a1f6 Add ability to discover multiple feeds 2020-12-01 17:12:19 -05:00
J. King
2a0d6e6599 OPTIONS tests 2020-12-01 12:08:45 -05:00
J. King
7fa5523a7d Simplify handling of invalid paths and methods 2020-12-01 11:06:29 -05:00
J. King
def07bb1ad Tests for Miniflux authentication
This appears to match Miniflux's behaviour
2020-11-30 10:52:32 -05:00
J. King
90117b5cd7 Fix Miniflux strip value 2020-11-26 08:42:35 -05:00
J. King
06dee77bac First tests for Miniflux 2020-11-23 09:31:50 -05:00
J. King
f6cd2b87ce Port token data from Microsub branch 2020-11-18 11:25:28 -05:00
J. King
d3ebb1bd56 Last set of tests for user management. Fixes #180 2020-11-17 16:23:36 -05:00
J. King
e16df90bae Style fixes 2020-11-16 10:26:14 -05:00
J. King
180b4ecc9b More user tests 2020-11-16 10:24:06 -05:00
J. King
27d9c046d5 More work on user management 2020-11-16 00:11:19 -05:00
J. King
7f2117adaa Differentiate between duplicate/missing users and other failure modes 2020-11-15 16:24:26 -05:00
J. King
4baf5fa2f9 Tests for new user functionality in Database 2020-11-13 19:30:23 -05:00
J. King
dde9d7a28a Refinements to user manager
A greater effort is made to keep the internal database synchronized
2020-11-11 18:50:27 -05:00
J. King
eb2fe522bf Last bits of the new user metadata handling 2020-11-10 17:09:59 -05:00
J. King
5a17efc7b5 Clean up user driver API
- It is no longer assumed a driver knows whether a user exists
- The $password param is now required (but nullable when setting
2020-11-09 18:14:03 -05:00
J. King
771f79323c Strip out remnants of the authorizer 2020-11-09 16:51:30 -05:00
J. King
576d7e16a8 Fix handling of bytea-typed nulls 2020-11-09 16:49:42 -05:00
J. King
532ce4a502 Prototype changes to user management
The driver itself has not been expnaded; more is probably required to ensure
metadata is kept in sync and users created when the internal database does
not list a user an external database claims to have
2020-11-09 13:43:07 -05:00
J. King
b62c11a43e Lasts tests for icon cache; fixes #177 2020-11-07 08:11:06 -05:00
J. King
311910795a More tests for icon cache 2020-11-06 17:06:01 -05:00
J. King
3d3c20de5c Don't anticipate API features 2020-11-06 15:57:27 -05:00
J. King
424b14d2b4 Clean up use of subscriptionFavicon 2020-11-06 10:27:30 -05:00
J. King
dd1a80f279 Consolidate subscription icon querying
Users and tests still need adjusting
2020-11-05 18:32:11 -05:00
J. King
4fc208d940 More consistent icon API 2020-11-05 16:51:46 -05:00
J. King
c3a57ca68b Tests for icon cache population 2020-11-05 14:19:17 -05:00
J. King
50fd127ac4 Test for icon fetching 2020-11-05 10:14:42 -05:00
J. King
7c40c81fb3 Add icons to the database upon feed update 2020-11-05 08:13:15 -05:00
J. King
c25782f98c Partial icon handling skeleton 2020-11-04 20:00:00 -05:00
J. King
2438f35f3d Add icon cache to database
Feed updating has not yet been adapted to store
icon data (nor their URLs anymore)
2020-11-04 18:34:22 -05:00
J. King
5e60da00a9 Merge branch 'master' into miniflux 2020-11-03 18:58:09 -05:00
J. King
41bcffd6fb Correctly query PostgreSQL byte arrays
This required different workarouynd for the native and PDO interfaces
2020-11-03 17:52:20 -05:00
J. King
c21ae3eca9 Correctly send binary data to PostgreSQL
This finally brings PostgreSQL to parity with SQLite and MySQL.
Two tests casting binary data to text were removed since behaviour here
should in fact be undefined

Accountinf for any encoding when retrieving data will be addressed by
a later commit
2020-11-02 15:21:04 -05:00
J. King
c92bb12a11 Prototype Miniflux dispatcher 2020-11-01 19:11:01 -05:00
J. King
8ad7fc81a8 Initially mapping out of Miniflux API 2020-10-31 21:26:11 -04:00
J. King
16d2e01668 New schema for PostgreSQL and MySQL 2020-10-30 19:00:11 -04:00
J. King
4db1b95cf4 Add numeric IDs and other Miniflux data to SQLite schema 2020-10-30 15:25:22 -04:00
J. King
b58a326461 Prepare for schema changes 2020-10-29 11:58:45 -04:00
J. King
0117e7f9bf Relax Fever's HTTP correctness for client compat
- Unread on iOS appears to send all API requests as GETs
- Newsflash on Linux sends multipart/form-data input
2020-10-27 10:49:54 -04:00
J. King
9b11001402 Fix sample Nginx configuration 2020-10-26 12:57:16 -04:00
J. King
afbf3be031 Use 'union all' instead of 'union' in queries 2020-09-22 11:34:52 -04:00
J. King
9bc1373998 Version bump 2020-09-09 18:24:42 -04:00
J. King
0f3ada598e Work around Picofeed bug
A fix is pending merging upstream
2020-09-09 14:52:35 -04:00
J. King
e60f7ea03f Add class constant visibility 2020-03-01 18:32:01 -05:00
J. King
bc53a2d24a Style fixes 2020-03-01 15:16:50 -05:00
J. King
9696d55b31 Prepare ugfix release 2020-02-16 17:43:46 -05:00
J. King
39a1895867 Refine and cover new Guzzle error handling 2020-02-03 16:54:45 -05:00
J. King
06d3af0ac3 Fix remaining Picofeed-related test failures 2020-01-24 15:54:08 -05:00
J. King
49d003082d Fix problems with nicolus/picofeed
This involved multiple fixes to Picofeed itself, not all of which have
been merged upstream yet
2020-01-23 17:07:20 -05:00
J. King
e583ffea67 Start on integrating well-maintained picofeed fork
Picofeed configuration does not seem to get passed to Guzzle.
2020-01-21 08:42:38 -05:00
J. King
b5f118e8cb Cleanup 2020-01-20 13:52:48 -05:00
J. King
bbace7a0ac Use void and nullable return types where practical 2020-01-20 13:34:03 -05:00
J. King
5838af892f Replace references to Zend with Laminas 2020-01-20 10:40:05 -05:00
J. King
c4ee7254cd Refactor some tests to use data providers 2020-01-08 12:02:43 -05:00
J. King
fb2602fe04 Don't load actual configuration during CLI tests 2019-12-27 09:00:22 -05:00
J. King
3ee89bf669 Version bump 2019-12-06 17:46:53 -05:00
J. King
c9d4540616 Merge branch 'mysql' 2019-12-06 17:44:29 -05:00
J. King
bbe70b6abc Corect CamelCase references to Nextcloud 2019-12-05 13:02:02 -05:00
J. King
5df89009e6 Merge branch 'master' of https://code.mensbeam.com/MensBeam/arsse 2019-12-02 19:09:16 -05:00
J. King
15de8c2320 Fix PostgreSQL connection error message 2019-12-02 17:14:03 -05:00
J. King
737dd9f6b8 Fix foreign keys in MySQL 2019-12-01 15:00:28 -05:00
J. King
0e5b242c67 Version bump 2019-10-28 11:07:04 -04:00
J. King
c59cdfef76 Whitespace fixes 2019-10-25 15:16:35 -04:00