- Drop support for PHP 5.6 and 7.0 (see [#226] (Algo-Web#226))
- Reformat codebase to PSR-12 (see [#229] (Algo-Web#226)).
This exposed:
- Long-b0rked OData-specific exception constructors,
- EOL-handling mismatch between Linux and Windows,
- ... interesting ... ways that XMLWriter was being used.
- Drop external dependency on JMS serialiser in favour of a more performant functional equivalent (see [#227] (Algo-Web#227))
- Encapsulate enum constants where possible (see [#235] (Algo-Web#235))
- Make line endings configurable (see [#244] (Algo-Web#244))
- Preparation work to clean up operation context use and ultimately, illuminate/http removal (see [#246] (Algo-Web#246))
- Remove obsolete dependencies (see [#247] (Algo-Web#247))
- Use the right base test case for Illuminate-related bits (see [#250] (Algo-Web#250))
- Thanks to kirill533 for spotting and fixing this.
- Make library more polyglot across PHP versions while fixing tests. (see [#218] (Algo-Web#218))
- Fix most missed doc block annotations. (see [#217] (Algo-Web#217))
- Type-hint IExpressionProvider. (see [#221] (Algo-Web#221))
- We pull Enum in, so use it to take advantage of type checking. (see [#222] (Algo-Web#222))
- Loosen Carbon dependency to maintain support for older clients. (see [#216] (Algo-Web#216))
- Generalise string encoding - thanks to Kirich11. (see [#215] (Algo-Web#215))
- Clean up whole bunch of vacuous asserts (see [#208] (Algo-Web#208))
- Return namespaces to full resourceType names - thanks to cdcampos for reporting this. (see [#207] (Algo-Web#207))
- Fix empty-object serialisation - thanks to cdcampos for reporting this. (see [#206] (Algo-Web#206))
- Return HTTP 204 when a singleton resource is null. (see [#205] (Algo-Web#205))
- Fix property expansion - cdcampos is on a roll! (see [#201] (Algo-Web#201))
- Fix ODataCategory and ODataLink writes via JSON. - cdcampos rides again! (see [#197] (Algo-Web#197))
- Untangle batch sub-request handling. (see [#191] (Algo-Web#191))
- Stop deserialising boolean and date values to strings. (see [#188] (Algo-Web#188))
- Handle $batch Requests. (see [#185] (Algo-Web#185))
- Add resource type validity check when adding resource set. (see [#186] (Algo-Web#186))
- Handle links hookup post-event. (see [#182] (Algo-Web#182))
- Fix goof that stopped empty result set serialisation in some cases. (see [#178] (Algo-Web#178))
- Make DateTime validation insensitive to attached timezones. (see [#176] (Algo-Web#176))
- Modify composer.json to render package installable as a dependency under minimum-stability of stable. (see [#175] (Algo-Web#175))
- Handle forward slashes in underlying data. (see [#171] (Algo-Web#171))
- Add capability to eager-load relations (see [#168] (Algo-Web#168))
- Robustly handle null payloads (see [#167] (Algo-Web#167))
- Fix multi-level payload processing (see [#166] (Algo-Web#166))
- Extend KeyDescriptor to return key values as ODataProperty array. (see [#165] (Algo-Web#165))
- Label entry and feed elements correctly when serialising (see [#163] (Algo-Web#163))
- Bring test coverage up to 97% of production codebase. Again, this has rumbled numerous bugfixen, cleanups, etc.
- Add concrete type handling (see [#162] (Algo-Web#162))
- Add bulk request handling (see [#157] (Algo-Web#157))
- Deep-six the ObjectSerialiser in favour of its Cynic replacement
- Whole bunch of individual pull requests building it, polishing it, etc
- Add support for abstract resource types (see [#140] (Algo-Web#140))
- Crank up Scrutinizer static analysis (see [#118] (Algo-Web#118))
- Remix uri processing (see [#112] (Algo-Web#112))
- Remove long-obsolete Readers folder (see [#103] (Algo-Web#103))
- Add null/default values to primitive properties (see [#86] (Algo-Web#86))
- Debork service document (see [#85] (Algo-Web#85))
- Make relation hookup idempotent (see [#81] (Algo-Web#81))
- Add bidirectional relations (see [#80] (Algo-Web#80))
- Hook up new metadata system (see [#75] (Algo-Web#75))
- Disallow resource/property name collisions (see [#71] (Algo-Web#71))
- Correct issues to better provide streamable data. (see [#68] (Algo-Web#68))
- Fix set expansion. cdcampos rides again! (see #66 and #67 )
- Bring test coverage up to 80% of production codebase, not just covered files. This has rumbled small bugfixen, cleanups, etc that are too numerous to list here.
- Unify property get/set calls into specialist class. (see #61)
- Refactor base service class to enable serialiser injection in constructor. (see #57)
- Fix Schroedinbug in property retrieval. (see #53)
- Fix Edm.DateTime formatting. Thanks to cdcampos for spotting this. (see #50 and #51)
- Deep-six production use of create_function to close off an arbitrary-remote-code-execution vulnerability. (see #47)
- Refactor ObjectModelSerializer and its base class. Not into sanity - not sure that's possible.
- Deep-six Phockito and convert tests to use Mockery. (see #39)
- Hoisted service examples out to their own repo. (see #37)
- Fix null reference bug in skip token handling. (see #33)
- Changed default service version to maximum supported. (see #31)
- Get resource type round-trip serialisation working properly. (see #30)
- Check property names comply to OData v3 specification. (see #26)
- Initial release. Frankensteined together from POData/POData and its descendants.