J. King
6ce1f68ed7
Document supported protocols
...
Also standardize some stylistic conventions
2019-01-25 16:32:47 -05:00
J. King
94ba58fa60
Use latest version of Daux
2019-01-25 15:24:52 -05:00
J. King
f5c5d49d97
Document SQL timeout changes
2019-01-24 11:40:25 -05:00
J. King
41daf4d176
Merge branch 'master' into manual
2019-01-23 16:46:20 -05:00
J. King
500851f161
Style fixes
2019-01-23 16:34:54 -05:00
J. King
91b6fdc696
Update changelog; bump version
2019-01-23 16:32:48 -05:00
J. King
8ea1df920a
Unify SQL timeouts
...
- Exec and lock timeouts now apply to MySQL
- Lock timeout now applies to PostgreSQL
- SQLite now uses a generic lock timeout setting which applies to all
2019-01-23 16:31:54 -05:00
J. King
bc8d443d84
Change PicoFeed dependency to a maintained variant
2019-01-23 12:36:43 -05:00
J. King
970731073d
Fetch timeout should be a float, not an integer
2019-01-23 09:37:41 -05:00
J. King
9120d3b3e3
Correctly escape shell command in subprocesds service driver
2019-01-23 09:32:44 -05:00
J. King
a5049ac646
Remove reference to PicoFeed in the User-Agent string
...
PicoFeed is dead, so there's no point.
2019-01-23 09:21:35 -05:00
J. King
37131d3775
Remove non-functional curl service driver for now
...
Its requiring extensive configuration to function makes me disinclined
to revive it, though it may nevertheless happen.
2019-01-23 09:19:26 -05:00
J. King
00ca726e12
Partial first draft of a manual, generated using Daux
2019-01-22 17:49:14 -05:00
J. King
4191f77094
Add daux as a dev dependency
2019-01-21 12:15:25 -05:00
J. King
05aadfe7c7
Use correct SQLite chema change procedure; version bump
2019-01-21 10:40:39 -05:00
J. King
37025bb49f
Documentation update
2019-01-21 10:23:25 -05:00
J. King
5335d331f7
Fix configuration exporting
2019-01-21 09:55:25 -05:00
J. King
6cd81e5656
Temporary list of macOS and iOS clients
2019-01-20 22:44:17 -05:00
J. King
5cd84c4ab4
Validate configuration parameters on import, and other changes
...
- Each parameter is checked for type and normalized
- Interval strings are converted to DateInterval objects
- Timeouts can be specified as interval strings
- Most intervals can be null to signify infinity
- Driver classes are checked that they implement the correct interface
- Short driver names may be used, and are used by default
- Helpful errors messages are printed in case of erroneous configuration
Exporting is currently broken; this will be fixed in an upcoming commit
2019-01-20 22:40:49 -05:00
J. King
b0643de21c
Add handling of DateInterval objects to ValueInfo
2019-01-17 16:29:42 -05:00
J. King
4670dfc849
Handle connection errors
2019-01-15 10:51:55 -05:00
J. King
e92bda5373
Various changes:
...
- Fix handling of binary data and long strings
- Simplify handling of socket connections
- Fix coverage
2019-01-15 08:58:11 -05:00
J. King
6ad3fb78a0
Documentation update
2019-01-14 10:46:46 -05:00
J. King
f3b0c791f8
Fix remaining tests
2019-01-14 09:51:00 -05:00
J. King
5d61ab0a57
Fixes for MySQL native interface
...
Three test failures remain, but these are minor and will be resolved
soon. Handling of binary data is also broken, but given that this works
fine with the PDO driver, there is presumably some correct method.
2019-01-13 23:17:19 -05:00
J. King
e501fbdc87
Remove the DatabaseInformation class in tests and use traits instead
2019-01-12 12:43:06 -05:00
J. King
81acba90dc
Use strict equality when comparing strings
2019-01-11 10:38:06 -05:00
J. King
c4a41255b0
Experimental native MySQL driver
...
No testing has been performed yet, but changes are extensive enough to
warrant a commit. Of particular note:
- SQL states are enumerated in a separate trait to reduce duplication
- PDOStatement is now an abstract class to avoid duplication of
engine-specific error handling
- Error handling has been cleaned up somewhat
2019-01-10 19:01:32 -05:00
J. King
3da773eef6
Grammar tweak
2018-12-22 09:58:56 -05:00
J. King
cefc9e5b4d
Don't use Canada mirror in links to PHP manual
2018-12-21 18:02:03 -05:00
J. King
7191dd5778
Documentation update
2018-12-21 18:00:35 -05:00
J. King
206cca35a9
Test tweaks
2018-12-21 17:51:49 -05:00
J. King
5a133b795a
Correctly munge MySQL queries
2018-12-21 17:37:22 -05:00
J. King
b4de56a64e
Work around MySQL silliness with same-table foreign keys
2018-12-21 17:02:34 -05:00
J. King
f0d30c2eee
Make munging of queries a generic feature
2018-12-21 12:35:10 -05:00
J. King
24df564045
Mostly successful MySQL database function tests
...
Two failures remain, at least one requiring query munging.
2018-12-21 10:14:26 -05:00
J. King
de07352fd0
Syntactic adjustments for MySQL
...
- "key", "read", and "rename" are reserved words
- CTEs in INSERTs must precede SELECT
- Empty sets are represented only by explicit null
2018-12-20 21:23:06 -05:00
J. King
393b4e95ad
Adjustments for MySQL 8
...
The prototype had been tested against MariaDB
2018-12-20 20:50:56 -05:00
J. King
4ef36643a4
Proof-of-concept PDO MySQL driver
...
- Configuration options were added
- Non-transactional locking was added to the savepoint handlers
- Tests were adjusted for MySQL's reserved words
2018-12-20 18:06:28 -05:00
J. King
316ba941a2
Hopefully complete MySQL schema
2018-12-15 11:09:46 -05:00
J. King
86c16d3cb3
Merge branch 'master' into mysql
2018-12-15 09:22:47 -05:00
J. King
8d9d249b88
Merge branch 'pg'
2018-12-14 09:28:19 -05:00
J. King
50f92625ef
Use PosgreSQL's existing general Unicode collation
...
All collations appear to be case-insensitive
2018-12-14 09:18:56 -05:00
J. King
17052d3232
Update PostgreSQL-related documentation
2018-12-13 20:08:35 -05:00
J. King
29e7c1f154
Fix coverage
2018-12-13 19:56:07 -05:00
J. King
2bebdd44cf
Implementation of native PostgreSQL interface
...
Changes to the Database class were required to avoid outputting booleans
2018-12-13 19:47:51 -05:00
J. King
b52dadf345
Make existing PostgreSQL tests explicitly PDO tests
2018-12-12 12:42:40 -05:00
J. King
161f5f08f6
Proactively support SQLite 3.25
2018-12-12 12:21:28 -05:00
J. King
28f803dd28
Handle PostgreSQL connection errors
2018-12-12 11:15:07 -05:00
J. King
0f48ce6f37
Use a Unicode collation for SQLite
2018-12-11 14:14:32 -05:00