1
1
Fork 0
mirror of https://code.mensbeam.com/MensBeam/Arsse.git synced 2024-12-23 09:02:41 +00:00
Commit graph

285 commits

Author SHA1 Message Date
J. King
3fa2d38f31 Initial rewrite of REST class; needs more testing, but should be functional
- improves #53
- improves #66
2018-01-06 12:02:45 -05:00
J. King
890f9b07d4 Replace Resquest objects with PSR-7 request messages; improves #53 2018-01-04 23:08:53 -05:00
J. King
9ad0b47201 Add Target class to manipulate request traget URL parts
The query part is not parsed for now because PSR-7 request objects/PHP take care of that parsing for us.
2018-01-04 14:06:45 -05:00
J. King
9eadd602bd Replace Response objects with PSR-7 response messages; improves #53
While the test suite passes, this commit yields a broken server: replacing ad hoc request objectss with PSR-7 ones is still required, as is emission of PSR-7 responses. Both will come in subsequent commits, with tests

Diactoros was chosen specifically because it includes facilities for emitting responses, something which is awkward to test. The end of this refactoring should see both the Response and Request classes disappear, and the general REST class fully covered (as well as any speculative additions to AbstractHanlder).
2018-01-03 23:13:08 -05:00
J. King
27caf147df Changes to Date helper class
- Changed 'transform' method to use ValueInfo throughout. This fixes a number of obscure bugs
- Changed the 'add' and 'sub' methods to default to "now" rather than null. This means null passes through rather than being interpreted as the current time, to be consistent with other date tools
- Also changed the 'add' and 'sub' methods so that they operate correctly with invalid date strings
- Added tests for the class; improves #66
- Modified TTRSS tests because the "iso8601" format string in ValueInfo is different from Date's older format
2018-01-02 16:53:38 -05:00
J. King
89bfc23d32 Standardize date normalization to immutables
Also move date formats to the ValueInfo class

Standardizing on immutables avoids any possible ambiguity in the API of the resultant value, as well as any ambiguity as to whether a DateTime output instance is the same instance or a clone (they had been clones)
2018-01-02 16:27:58 -05:00
J. King
87faededc6 Backport PDO changes to ValueInfo 2018-01-02 10:29:24 -05:00
J. King
ddf55e0665 Change session lifetimes to more closely match TTRSS
At least some clients seem to expect the default timeout of one day.
2018-01-01 12:31:42 -05:00
J. King
73c8583744 Remove reliance on xdebug; fixes #113
Code coverage information is now gathered via phpdbg (a separate executable) by if available rather than xdebug, as the latter is hard to turn on and off.

A "test:quick" task has also been added to Robo, which excludes 31 tests which together account for almost two thirds of the test run time. This should pave the way for testing to be added as a commit hook for Git.
2017-12-17 10:27:34 -05:00
Dustin Wilson
b8ed7c6bf8 Added missing static keyword to Misc\ValueInfo::normalize() 2017-12-10 11:16:06 -06:00
J. King
f100cab558 Version bump 2017-12-07 18:24:35 -05:00
J. King
44ae0ba29b Collate synthetic subscription title column; fixes #127 2017-12-07 18:17:16 -05:00
J. King
0b3b3cb49c Use SQLite nocase collation; improves #127 2017-12-07 18:05:34 -05:00
J. King
79f9808f1f CS fixes 2017-12-07 15:18:25 -05:00
J. King
8d0dd15c8a Remove use of SQLite IS operator; fixes #120 2017-12-06 22:26:06 -05:00
J. King
84bd624e94 Properly fix getCounters 2017-12-06 19:16:35 -05:00
J. King
af42bceac0 Do not omit zero-unread items in TTRSS getCounter operation
Though TTRSS itself (usually) omits items that have a counter of zero, at least one client takes this to mean the last-seen counter is unchanged, rather than zero.
2017-12-06 15:50:40 -05:00
J. King
adece521a9 TTRSS: Correct mark toggling; fixes #132 2017-12-01 22:13:27 -05:00
J. King
821bb22a72 SQLite concurrency tweaks; fixes #131 2017-12-01 16:37:58 -05:00
J. King
1a9628493e Fix TTRSS path handling 2017-11-30 19:39:46 -05:00
J. King
9ac2421fe3 TTRSS: accept base64 passwords; fixes #130 2017-11-30 19:31:40 -05:00
J. King
3ffcd6dd97 Make TTRSS handler reject erroneous paths 2017-11-30 17:54:56 -05:00
J. King
a404d4d108 NCNv1: Be explicit about types; fixes #129
This is actually mandated by the specification: a change in data type requires a protocol version number change
2017-11-30 14:47:39 -05:00
J. King
4d4e8e3580 TTRSS: correct feed renaming; fixes #128 2017-11-30 12:49:23 -05:00
J. King
760b13993b Version bump 2017-11-29 23:45:27 -05:00
J. King
22cdc8916d Documentation tweaks and CS fixes 2017-11-29 22:42:50 -05:00
J. King
5cd7268c0a Added incorrectDbCharset to NCNv1 server status
This has been exposed since version 11.0.3, released before our version 0.1.0, but after implementation work had begun
2017-11-29 18:14:59 -05:00
J. King
40944a9b58 Merge remote-tracking branch 'remotes/origin/ttrss' 2017-11-29 16:05:23 -05:00
J. King
3d958547a5 Implement OPTIONS requests for NCNv1; fixes #107 2017-11-29 15:28:33 -05:00
J. King
e1f1c8b859 Refactoring 2017-11-29 13:41:26 -05:00
J. King
2bbc83aeb0 Tweak 2017-11-29 12:15:37 -05:00
J. King
40e9b7f986 Changed all TTRSS outputs to match original types exactly; improves #125 2017-11-29 11:47:10 -05:00
J. King
b4890eaced Make TTRSS tests consider data types; improves #125 2017-11-29 09:22:59 -05:00
J. King
b242c70968 Refactor of NCNv1 in anticipation of OPTIONS requests 2017-11-28 13:46:07 -05:00
J. King
91165cdd0d Fix breakage caused by last comit 2017-11-27 15:05:50 -05:00
J. King
a0bf7c16bd Fix sorting
Also avoid sorting when it's not needed by queries
2017-11-27 14:11:35 -05:00
J. King
999f255203 Fixes for bugs uncovered during client testing 2017-11-27 13:05:08 -05:00
J. King
4f85739d20 Change default SQLite timeout to 60s; improves #67
Real-world use suggests 5s is inadequate. Rather than bumping up small amounts as things break, it makes more sense to wait a very long time and investigate possible long-term solutions later, once logging is implemented.
2017-11-25 17:44:34 -05:00
J. King
05620602bf Tweak 2017-11-23 18:12:18 -05:00
J. King
b820a004d6 Complete testing of TTRSS handler
Also implemented OPTIONS handling for TTRSS; improves #107
2017-11-23 18:07:56 -05:00
J. King
c669273792 Implement TTRSS operation getHeadlines; fixe #82 2017-11-22 20:18:16 -05:00
J. King
faf00d63ba Add Database::articleCategoriesGet()
This method retrieves author-supplied categories for articles, used in TTRSS
2017-11-21 09:22:58 -05:00
J. King
e729cedeca Make getCompactHeadlines use a whitelist instead 2017-11-20 09:49:47 -05:00
J. King
5c140aedc4 Implement TTRSS operation getCompactHeadlines; fixes #95
This commit also implements the back-end for the standard getHeadlines operation and handles all special feeds and categories; fixes #119
2017-11-20 00:09:20 -05:00
J. King
5d4ea6edc0 Add ResultEmpty class
This allows for the creation of synthetic empty result sets
2017-11-19 15:49:41 -05:00
J. King
2037efce61 Added oldestArticle and latestArticle context options 2017-11-18 16:06:49 -05:00
J. King
50185ab8f6 Change code and type of consantUnknown exception 2017-11-17 22:53:54 -05:00
J. King
b0da9a1d06 Added annotation context to satisfy the TTRSS "has_note" view mode 2017-11-17 19:08:35 -05:00
J. King
b595815eb9 Change NCNv1 handler to use new "typical" articleList fieldset 2017-11-17 18:12:00 -05:00
J. King
c88b5c4f18 Make distinction between modified and marked for articles
Also added various sets of fields to include when listing articles.
2017-11-17 17:52:00 -05:00