Commit graph

275 commits

Author SHA1 Message Date
1af8b733b5 Implement adding TTRSS categories; fixe #99 2017-09-26 22:45:54 -04:00
7b121c74ec Merge fixes from master 2017-09-26 20:25:11 -04:00
e74a3ae3cb Fix numerous bugs when adding or changing folders
- Specifying a non-integer parent no longer silently casts to 0 or 1
- Specifying a folder ID of 0 now always converts to null automatically
- Performing both a rename and move to root in the same operation no longer results in potential duplicates
- Calling folderSetProperties with an empty data array no peforms an update; it now returns false before the update call
- Modification timestamps are now actually updated when a folder is modified
- Constraint violation exceptions triggered by code (rather than the database) now print a message
- Renaming a folder or subscription to a non-string value (e.g. an array) throws an exception rather than silently casting
- Added tests to better cover all the above
- Centralized the normalization of integers and title strings into a new ValueInfo static class
2017-09-26 16:45:41 -04:00
8487a56a60 Tests for TTRSS session handling and version/level reporting
- Fixes #73
- Fixes #74
- Fixes #75
- Fixes #76
- Fixes #77
2017-09-25 10:08:37 -04:00
6e19517593 Return correct TTRSS error bodies even for HTTP-level errors
TTRSS' error message for these cases (NOT_LOGGED_IN) is not especially helpful, but that's what it returns, so that's what we should return, albeit with correct HTTP status codes.
2017-09-25 08:15:39 -04:00
3a5d346b9c Preliminary TTRSS handler 2017-09-24 23:32:21 -04:00
91432d4e16 Tests for sessions 2017-09-24 12:45:07 -04:00
b7ac63b9de Resuming a session from the database should have no side effects 2017-09-24 11:22:32 -04:00
1069447925 Make session cleanup more sophisticated 2017-09-24 10:09:36 -04:00
474d32e54f Preliminary implementation of TTRSS sessions (needs tests; may not work) 2017-09-16 19:57:33 -04:00
c393dfc42b Sundry fixes
- Make use of PHP 7's null coalescing operator
- remove use of static property in Lang class
- Improve code coverage slightly
2017-09-05 19:35:14 -04:00
c9967c9cc7 Satisfy Gitea's picky Mrkdown parser 2017-08-30 23:56:03 -04:00
bd95d23c8a Fix export of nulls in Conf 2017-08-29 23:17:57 -04:00
d177e52494 Minor readme correction 2017-08-29 15:27:44 -04:00
525a039d3f Build tweaks 2017-08-29 15:06:07 -04:00
1c4dd9cf7f Add a basic build system 2017-08-29 14:58:06 -04:00
f351dd059f More CS fixes 2017-08-29 11:16:37 -04:00
f7e50fe95d Passed code through linter 2017-08-29 10:50:31 -04:00
28201ba573 Experiment with php-cs-fixer 2017-08-29 09:23:53 -04:00
43034ee5bf Possibly sufficient readme 2017-08-28 20:20:49 -04:00
f5efa39839 More changes in anticipation of a release
- Added a 'user add' function to the CLI
- Removed the last trace of paths from configuration; paths must default to null and Arsse must determine sensible defaults at runtime
2017-08-28 19:38:58 -04:00
5f66f3c8de Added CONTRIBUTING.md
- Started on a contribution aid for contributors; it needs more work.
- Changed the type in composer.json to “project”.
- Made mention of The Arsse in the readme file more consistent.
2017-08-23 18:56:18 -05:00
14951e2e4f Chnage "retain" settings to mean "purge; remove unused database settings 2017-08-20 15:46:35 -04:00
7e76402029 Unit fixes; version bump 2017-08-20 14:38:24 -04:00
cc2296522c More changes in anticipation of a release:
- Don't load a config (and possibly create a database) in CLI if a configuration is not required
- Removed the 'dbSchemaBase' config option, which is really a testing hack
- Added sample Nginx configuration
- Fixed bug in REST handler
- Readme still needs work
2017-08-19 23:56:32 -04:00
bd7fea1bee Add systemd unit file; fill out readme some more 2017-08-18 16:19:09 -04:00
a485913535 Update readme; remove username composition; default pre-auth to false 2017-08-18 10:20:43 -04:00
b8e091177b Add SQLite timeout (fixes #67) and implement configuration reading 2017-08-17 23:05:08 -04:00
52104fb647 Implement article cleanup; fixes #28 2017-08-17 22:36:15 -04:00
eeb834fe4c Record the size of feeds upon update
Used to retain at least N articles when cleaning up, so that very infrequently changed feeds do not have their most recent articles purged
2017-08-14 20:07:31 -04:00
67203679aa Changed foreign key on marks table
Previously arsse_marks had a reference to arsse_users along with arsse_articles; the former has now changed to arsse_subscriptions.

Consequently deleting a subscription now deletes marks. Tests have been simplified as a consequence.

This change was understaken to simplify counting valid marks on articles for the purposes of article cleanup; now all marks are valid marks
2017-08-14 17:18:18 -04:00
3b018c89d1 Implemented cleanup of orphaned feeds; fixes #25 2017-08-02 18:27:04 -04:00
0773e21034 Finish good-enough REST output; fixes #48
Tests can come later
2017-07-27 09:21:00 -04:00
78faf88563 Implemented configuration exporting; fixes #63
Default user agent string creation moved to Feed class as a consequence of difficulties in exporting it reliably
2017-07-27 09:09:39 -04:00
5df7217cff Improve REST test coverage 2017-07-24 08:15:37 -04:00
69005ad61b Remove dependency on DrUUID until it's actually used 2017-07-22 23:18:42 -04:00
4066bba05e Full code coverage for Database class
- Fixes #49
2017-07-22 23:08:08 -04:00
b3c65bcdbd Tweak coverage of feed exceptions 2017-07-22 16:00:07 -04:00
da80a8ffa6 Complete tests for database driver
- Fixes #62
2017-07-22 15:29:12 -04:00
d1382cec63 Remove debug code 2017-07-22 12:51:33 -04:00
1b970cc7c5 Experimental forking service and accompanying CLI
- Improves #48, #57, and #61
2017-07-21 17:15:43 -04:00
70f76f77fa More test coverage tweaks 2017-07-21 11:13:04 -04:00
d3bca6eb47 More code coverage accommodation 2017-07-20 22:40:09 -04:00
cbdcacd1c3 Added basic code coverage annotations 2017-07-20 18:36:03 -04:00
4cded011ff Complete implementations of server status and user status REST calls
- Fixes #30
- Fixes #31
- Avatars are not yet supported by the data model; blocked by issue #52
2017-07-19 18:07:36 -04:00
3a26c75044 Tests for Database::meta*() functions
Improves #49
2017-07-18 16:38:23 -04:00
feadf51096 Workaround for picoFeed memory leak. Fixes #58 2017-07-18 12:52:26 -04:00
3be7dd7834 Confirm that scraped content is sanitized
- Fixes #32
2017-07-17 15:34:28 -04:00
aaa4d1e988 Basic support for PicoFeed content scraping
- At the moment this is a completely manual setting: feed deduplication makes the setting very hard to handle for multiple users
- Improves #60
2017-07-17 14:56:50 -04:00
da092d5f8c Changed Misc\DateFormatter to a collection of static methods and renamed it to Date; renamed Data to Arsse to avoid confusion and better reflect its centrality 2017-07-17 07:47:57 -04:00