Releases: easyrdf/easyrdf
Releases · easyrdf/easyrdf
1.1.1
1.1.0
Bug fix release with a few improvements and changes in Composer dependencies.
Overview:
- Composer:
- changed ARC2 from
~2.2
to^2.4
(#347) - replaced
sami/sami
withcode-lts/doctum
- added the following required PHP extensions: ext-pcre, ext-xmlreader, lib-libxml
- changed ARC2 from
- Accept an array of properties in get/getLiteral/getResource methods, fixes #325 (#326)
- Add support for parsing large SPARQL XML Results (#357)
- Made
Parser
class abstract, to be in line withSerialiser
class (#328) - Fixed "Sparql\Client uses invalid parameters for Zend\Http\Client->setHeaders" (#335)
- Fixed undefined index path in Http\Client::request (#271, #368)
Highlights for EasyRdf developers:
1.0.0
Major new features
- Minimum version of PHP is now PHP version 7.1, PHP 5.x is no-longer supported
- Usage without composer is not supported anymore
- Library is loaded via PSR-4 autoloader now
- The Redland PHP extension is no-longer supported
Enhancements
$graph->isA()
can take full IRIs as second parameter (only qname was accepted earlier, see issue #215)Accept
HTTP-header depends on SPARQL-query type (see issues #231, #226)- It is possible to set alternate default
Resource
class viaGraph::setDefaultResourceClass()
(see issue #243) - When calling
Graph::load()
set the HTTP Accept header to the desired format - The RDF/PHP and RDF/JSON specifications were added to the documentation
- Added text/xml and application/xml MIME types to RDF/XML format
- Added additional namespaces from W3C RDFa context
- Speeding up the turtle parser by optimising the mb_substr calls
- Added support for compressed response body in HTTP client
- Updated to PHP CodeSniffer v3
- Updated to Sami v4 for API documentation
- Updated to PHPUnit v7
API changes
- Classes are renamed like this:
EasyRdf_Parser_Turtle
→EasyRdf\Parser\Turtle
. With a single exception:EasyRdf_Namespace
→EasyRdf\RdfNamespace
(becausenamespace
is a keyword in PHP) - EasyRdf expects HTTP-client objects compatible with ZendFramework 2.x instead of 1.x now. (zend-http is added to require-dev so tests for it are always run)
Resource
implementsArrayAccess
interface now (see #242)- Now using PHP Type Hints in some classes, which avoids having to do type checks
- Serialiser class is now abstract
- Implement the ArrayAccess Interface in Resource
Bug Fixes
- Fixes that add compatibility for PHP 7.4
- Unicode-strings are properly encoded in n-triples documents (see #219)
RdfPhp
parser validates its input (see #227)- Timeout is applied to response-times, not only connection-times (see #202)
$graph->get()
is reliable after$graph->delete()
now (see #239, #241)- Fix for running Graphviz tests against newer versions of Graphviz
- Fixed for when the HTTP server doesn't return Reason-Phrase in the status (see #321)
- Corrections to RDF format URIs
- Fixes for format guessing, so it works with SPARQL-style PREFIX and BASE
- Turtle serialiser improvements and fixes
- Fix for unescaping URIs while parsing ntriples
- Fixed encoding of unicode literals in ntriples
Changes to Examples
- Added index.php to examples folder, to make them easier to navigate
- Removed artistinfo.php example (BBC Music no longer publishes RDF)
- Replaced Dbpedialite Villages example with Wikidata Villages example
- Added Open Graph Protocol example
- Changed default URI for converter example
- Fixed namespace for dbpedia categories
- Fixes for UK Postcode example and changed it to use Open Street Map
1.0.0-rc.1
Changed version number to 1.0.0-rc.1
0.9.0
Major new features
- Framing support in
EasyRdf_Serialiser_JsonLd
- JSON-LD Parser
API changes
EasyRdf_Literal_Decimal
returns strings, instead of floats to avoid losing precision (see issue #178)EasyRdf_Literal_Decimal
requires input-strings which conform toxs:decimal
formatEasyRdf_GraphStore
supports operations over default graph nowEasyRdf_Literal
typed asxs:double
is used for PHP-floats instead ofEasyRdf_Literal_Decimal
- Exceptions thrown from
EasyRdf_Graph::resource()
use different message-texts now (see issue #159)
Enhancements
- Synced list of default namespaces against RDFa Core Initial Context rev.2014-01-17
- Added support for empty prefixes (see issue #183)
EasyRdf_Graph::newAndLoad
throwsEasyRdf_Http_Exception
in case of failure, which gives access to status and response-body. (see issue #149)EasyRdf_Graph
andEasyRdf_Resource
have 'typesAsResources()' methods now
Bug Fixes
- Fix for Turtle serialisation of FALSE (see issue #179)
- Fix for edge-case in RDF/XML serialisation (see issue #186)
- SPARQL-queries against endpoints which have query-params in their URL (see issue #184)
- Float values are properly handled if locale with "other" separator is active
- Fixed parsing of Turtle-documents with higher utf-8 characters (see issue #195)
- Namespace-prefixes are compliant with RDFXML QName spec (see issue #185)
EasyRdf_Namespace
won't generate "short" names with "/" in them anymore (see issue #115)EasyRdf_Parser_RdfXml
respects "base" specified for the document (see issue #157)- HTML documents are correctly detected now, not as "n-triples" (see issue #206)
- Accept-headers are formatted in locale-independent fashion now (see issue #208)