Commit graph

82 commits

Author SHA1 Message Date
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
4cb23dd198 Partial implementation of proper content scraping 2021-01-16 14:24:01 -05:00
d5cd5b6a17 Implement hidden marks
Tests are still needed
2020-12-15 13:20:03 -05:00
c43d0dcae3 Groundwork for filtering rules 2020-12-14 20:09:38 -05:00
5c83655541 Add modification timestamp to user metadata 2020-12-08 16:10:23 -05:00
a431243421 Fixes for MySQL and PostgreSQL 2020-12-06 13:17:19 -05:00
fcf1260dab Adjust database portion of user property manager 2020-12-05 22:13:48 -05:00
978929aabd WIP redesign of user properties 2020-12-05 11:01:44 -05:00
e861cca53d Integrate schema change necessary for microsub 2020-11-06 11:06:27 -05:00
8f739cec85 Excluse empty-string URLs from icons table 2020-11-06 10:28:28 -05:00
af675479b8 Remove excess whitespace 2020-11-04 18:35:36 -05:00
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
905f8938e2 Typo 2020-11-01 09:37:59 -05:00
16d2e01668 New schema for PostgreSQL and MySQL 2020-10-30 19:00:11 -04:00
4db1b95cf4 Add numeric IDs and other Miniflux data to SQLite schema 2020-10-30 15:25:22 -04:00
b58a326461 Prepare for schema changes 2020-10-29 11:58:45 -04:00
c9d4540616 Merge branch 'mysql' 2019-12-06 17:44:29 -05:00
bbe70b6abc Corect CamelCase references to Nextcloud 2019-12-05 13:02:02 -05:00
794fb506a5 Widen URL field 2019-12-03 22:33:44 -05:00
484510cf8c Expand text fields other than user id and feed URL 2019-12-03 17:10:47 -05:00
f4b08170bf Fix MySQL schema 2019-12-02 16:38:41 -05:00
568e6e4660 Delete dangling MySQL records when updating
MySQL seems to reject queries involving arsse_folders.parent and
arsse_subscription.folder, though they appear to be valid. More testing
is required.
2019-12-01 22:29:48 -05:00
737dd9f6b8 Fix foreign keys in MySQL 2019-12-01 15:00:28 -05:00
38bdde1167 Add access tokens to the db, with relevant code
Tokens are similar to sessions in that they stand in for users, but the
protocol handlers will manage them; Fever login hashes are the
originating use case for them. These must never expire, for example,
and we need to specify their values.

This commit also performs a bit of database clean-up
2019-03-09 16:23:56 -05:00
ed22090e49 Work around various SQLite-related problems
- WAL mode was not getting set properly
- Queries using the PDO driver could fail because PDO sucks
2019-03-04 11:05:46 -05:00
fb1bdbfb37 Database schema for subscription tags 2019-03-03 12:10:18 -05:00
05aadfe7c7 Use correct SQLite chema change procedure; version bump 2019-01-21 10:40:39 -05:00
393b4e95ad Adjustments for MySQL 8
The prototype had been tested against MariaDB
2018-12-20 20:50:56 -05:00
316ba941a2 Hopefully complete MySQL schema 2018-12-15 11:09:46 -05:00
86c16d3cb3 Merge branch 'master' into mysql 2018-12-15 09:22:47 -05:00
50f92625ef Use PosgreSQL's existing general Unicode collation
All collations appear to be case-insensitive
2018-12-14 09:18:56 -05:00
0f48ce6f37 Use a Unicode collation for SQLite 2018-12-11 14:14:32 -05:00
8fc31cfc40 Rewrite various queries to work in PostgreSQL
This involved changes to the driver interface as well as the database
schemata. The most significantly altered queries were for article
selection and marking, which relied upon unusual features of SQLite.
Overall query efficiency should not be adversely affected (it may have
even imprved) in the common case, while very rare cases (not presently
triggered by any REST handlers) require more queries.

One notable benefit of these changes is that functions which query
articles can now have complete control over which columns are returned.
This has not, however, been implemented yet: symbolic column groups are
still used for now.

Note that PostgreSQL still fails many tests, but the test suite runs to
completion. Note also that one line of the Database class is not
covered; later changes will eventually make it easier to cover the line
in question.
2018-12-04 20:41:21 -05:00
0f7baf4b51 Base MySQL schema
Note the columns "key" and "read" must be quoted in addition to "user".
2018-11-28 14:00:36 -05:00
10b228224d Correct PostgreSQL data format and other tweaks 2018-11-28 12:12:49 -05:00
d0db784b22 PostgreSQL schema tweak 2018-11-27 17:50:38 -05:00
dccd4caede Convert one database function test series (articles) to a common harness
Also revert the dropping of tables in the schema files. This was for the
convenience of tests, but the risk of data loss is too great
2018-11-24 23:18:17 -05:00
36c5984c47 Add drop statements to database schemata to simplify testing 2018-11-23 12:53:56 -05:00
c0c4810662 Nominally complete PostgreSQL driver
Connection error handling as well as uprade error handling still need
to be implemented.
2018-11-21 11:06:12 -05:00
f64f0c6a22 Whitespace cleanup 2018-10-26 14:58:04 -04:00
4b46d654bb Replace SQLite is with SQL = for consistency 2017-12-19 17:19:05 -05:00
0b3b3cb49c Use SQLite nocase collation; improves #127 2017-12-07 18:05:34 -05:00
821bb22a72 SQLite concurrency tweaks; fixes #131 2017-12-01 16:37:58 -05:00
6da86428c4 Added per-file legal boilerplate
Includes PHPDoc license tag in the file-level block with accompanying copyright notice.

Also added an AUTHORS file on the off chance of outside contributions
2017-11-16 20:51:03 -05:00
11b2066922 Added per-file legal boilerplate
Includes PHPDoc license tag in the file-level block with accompanying copyright notice.

Also added an AUTHORS file on the off chance of outside contributions
2017-11-16 20:23:18 -05:00
ea986f5032 Implement TTRSS operation updateArticle; fixes #83
This required adding the "notes" column to the arsse_marks table and adding same as a target value in Database::articleMark()

The Context class was also adjusted to remove the possibility of false positives in some tests
2017-11-09 14:21:12 -05:00
2e395f3cec Complete backend support for labels 2017-10-13 00:04:26 -04:00
26f6922b25 Partially implement labels
- Backend functions for adding, listing, removing, and editing (renaming) labels currently implemented
- TTRSS functions for adding (fixes #96), removing (fixes #97), and renaming (fixes #98) labels currently implemented
2017-10-05 17:42:12 -04:00
91432d4e16 Tests for sessions 2017-09-24 12:45:07 -04:00
474d32e54f Preliminary implementation of TTRSS sessions (needs tests; may not work) 2017-09-16 19:57:33 -04:00