Releases: ThomasWeinert/FluentDOM
Releases · ThomasWeinert/FluentDOM
5.3.0
- Changed: CSS Selectors are now provided by small connector libraries
- Added: Interface FluentDOM\Xpath\Transformer, transform selectors to XPath
- Added: QuerySelectors are now supported if a CSS2XPath library is installed
- Refactored: extract some logic into private methods to reduce complexity
- Implemented: cache validated qualified tag names, avoid repeating the validation with pcre.
Can be configured using FluentDOM\QualifiedName::$cacheLimit - Implemented: Avoid sorting if nodes should be in order (FluentDOM\Nodes), faster
- Implemented: Added FluentDOM\Nodes::FIND_FORCE_SORT, allow to force sorting for find()
- Fixed: _require.php explicit class loading
5.2.1
- Implemented: allow associative arrays in JsonDOM loader
- Refactored: use === not just ==
- Fixed: HHVM now has native properties, adapted XPath to Document connection
5.2.0
- Added: FluentDOM\Loader\Text\CSV loads csv data into a xml document
- Added: FluentDOM::registerLoader() as a plugin system for loaders provided by other composer packages
- Added: FluentDOM\DocumentFragment is an extended version of the DOMDocumentFragment
with support for the namespaces registered on the document object - Added: FluentDOM node classes now implement interfaces from the DOM Living Standard
ParentNode (except query*), NonDocumentTypeChildNode, ChildNode - Added: FluentDOM::load() provides direct access to the loaders
- Added: FluentDOM\Loader\JSONx loads JSONx into a JsonDOM document
- Added: FluentDOM\Transformer\JSONx, transform a JsonDOM document to JSONx
- Changed: FluentDOM\Serializer\Json now writes json using the JsonDOM rules.
- Changed: FluentDOM\Nodes::find() now has options as the second argument, allow for match/filter modes
match mode should improve performance and work better with xpath - Refactored: FluentDOM\Nodes\Compare implements compare for nodes, allow to optimize sorting
- Refactored: most workarounds for HHVM are not necessary with HHVM 3.5, HHVM 3.5 is required for FluentDOM 5.2
5.1.1
- Fixed: FluentDOM\Element::append() needs to ignore arrays and strings
if checking for callable
5.1.0
- Changed: All DOMNode descendants (FluentDOM\Document, FluentDOM\Element,
FluentDOM\Text, ...) are now functors, allowing to evaluate an
Xpath expression relative to them - Changed: FluentDOM\Xpath is now a functor.
- Changed: FluentDOM\Element::apppend() is now longer restricted to
FluentDOM\Appendable, but allows all kind of arguments - Added: FluentDOM\ProcessingInstruction extends DOMProcessingInstruction
- Added: FluentDOM\Element::applyNamespaces(), adds xmlns
attributes depending on the current namespace registration. - Added: New FluentDOM\Nodes\Creator allows for compact node creation
- Added: FluentDOM\Loader\PHP\SimpleXml, load SimpleXmlElement
- Added: FluentDOM\Loader\PHP\PDO, load PDO statements
- Added: FluentDOM\Loader\Json\BadgerFish, load BadgerFish Json
- Added: FluentDOM\Loader\Json\JsonML, load JsonML
- Added: FluentDOM\Loader\Json\Rayfish, load Rayfish
- Added: FluentDOM\Loader\Lazy, Lazy load other loaders
- Added: FluentDOM\Serializer\Json\BadgerFish, generate BadgerFish Json
- Added: FluentDOM\Serializer\Json\JsonML, generate JsonML
- Added: FluentDOM\Serializer\Json\RabbitFish, generate RabbitFish Json
- Added: FluentDOM\Serializer\Json\Rayfish, generate Rayfish Json
- Added: FluentDOM\Transformer\Namespaces\Optimize, optimize
namespace attributes, change prefixes - Added: FluentDOM\Transformer\Namespaces\Replace, replace namespaces
5.0.2
- Fixed: Remove null bytes in FluentDOM\Xpath::quote()
- Fixed: Namespace definition for Symfony CSS Selector
5.0.1
- Fixed: Disable automatic namespace registration using the third
argument to evaluate(), if activated using the property
5.0.0
Complete Rewrite!
- PHP Namespaces, PSR-4 comatible, Composer support
- Original FluentDOM functionality is now merged in FluentDOM\Query.
- FluentDOM() function creates an FluentDOM\Query instance
- FluentDOM\Query has a new loader concept
- FluentDOM\Query allows to register a selector callback,
allowing for CSS selectors using PhpCss - Several classes that extend the default DOM classes, fixing bugs
and provide convenience - Changed: FluentDOM\Query::spawn() now clones the current object
- Changed: FluentDOM\Query::andSelf() renamed to addBack(), mark andSelf()
as deprecated - Added: FluentDOM\Query::html()
- Added: FluentDOM\Query::outerXml()
- Added: FluentDOM\Query::outerHtml()
- Added: FluentDOM\Document - extends DOMDocument
- Added: FluentDOM\Element - extends DOMElement
- Added: FluentDOM\Attribute - extends DOMAttr
- Added: FluentDOM\Comment - extends DOMComment
- Added: FluentDOM\CdataSection - extends DOMCdataSection
- Added: FluentDOM\Text - extends DOMText
- Added: FluentDOM\Xpath - extends DOMXpath
- Added: FluentDOM\Appendable - define objects appendable to a FluentDOM\Element
- Added: FluentDOM\XmlSerializable - define objects serializable to xml fragments
4.1.5
Bugfix for internal node sorting
5.0.0 Release Candidate 3
5.0.0-RC3 Optimized FluentDOM\Nodes::getSelectorCallback()