All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
0.17.2 - 2017-05-25
- Fix attribute selectors in :not() - thanks @jjcarstens and @Eiji7
- Fix selector parser to consider combinators across selectors separated by commas. For further details, please check the pull request - thanks @jjcarstens and @mischov
0.17.1 - 2017-05-22
- Fix search when body has unencoded angles (
<
and>
) - thanks @sergey-kintsel - Fix crash caused by XML declaration inside body - thanks @erikdsi
- Fix issue when finding fails if HTML begins with XML tag - thanks @sergey-kintsel
0.17.0 - 2017-04-12
- Add support for multiple pseudo-selectors, line :not() and :nth-child() - thanks @jjcarstens
- Add support for multiple selectors inside the :not() pseudo-class selector - thanks @jjcarstens
0.16.0 - 2017-04-05
- Add support for selectors that only include a pseudo-class selector - thanks @buhman
- Add support for a new selector:
fl-contains
, which returns elements that contains a given text - thanks @buhman
- Fix
:not()
pseudo-class selector to accept simple pseudo-class selectors as well - thanks @mischov
0.15.0 - 2017-03-14
- Added support for the
:not()
pseudo-class selector.
- Fixed pseudo-class selectors that are used in conjunction with combinators - thanks @Eiji7
- Fixed order of elements after search using descendant combinator - thanks @Eiji7
0.14.0 - 2017-02-07
- Added support for configuring
html5ever
as the HTML parser. Issue #83 - thanks @hansihe and @aphillipo!
0.13.2 - 2017-02-07
- Fixed bug that was causing Floki.text/1 and Floki.filter_out/2 to ignore "trees" with only text nodes. Issue #91 - thanks @boydm.
0.13.1 - 2017-01-22
- Fix ordering of duplicated descendant matches - thanks @mmmries
- Fix ordering of
Floki.text/1
when there are only root nodes - thanks @mmmries
0.13.0 - 2017-01-22
- Floki.filter_out/2 is now able to understand complex selectors to filter out from the tree.
0.12.1 - 2017-01-20
- Fix search for elements using descendant combinator - issue #84 - thanks @mmmries
0.12.0 - 2016-12-28
- Add basic support for nth-child pseudo-class selector. Closes issue #64.
- Remove support for Elixir 1.1 and below.
- Remove public documentation for internal code.
0.11.0 - 2016-10-12
- First attempt to transform nodes with
Floki.transform/2
. It is not able to update the tree yet, but works good with results fromFloki.find/2
- thanks @bobjflong
- Using Logger to notify unkwon tokens in selector parser - thanks @teamon and @geonnave
- Replace
mochiweb_html
withmochiweb
package. This is needed to fix conflics with other packages that are usingmochiweb
. - thanks @aphillipo
0.10.1 - 2016-08-28
- Fix sibling search after immediate children - thanks @gmile.
0.10.0 - 2016-08-05
- Change the search for namespaced elements using the correct CSS3 syntax.
- Fix the search for child elements when is more than two elements deep - thanks @gmile
0.9.0 - 2016-06-16
- A separator between text when getting text from nodes - thanks @rochdi.
0.8.1 - 2016-05-20
- Support rendering boolean attributes on
Floki.raw_html/1
- thanks @iamvery.
- Update Mochiweb HTML parser dependency to version 2.15.0.
0.8.0 - 2016-03-06
- Add possibility to search tags with namespaces.
- Accept
Floki.Selector
as parameter ofFloki.find/2
instead of only strings - thanks @hansihe.
- Using a smaller package with only the mochiweb HTML parser.
0.7.2 - 2016-02-23
- Replace
<br>
nodes by newline (\n
) inDeepText
- thanks @maxneuvians. - Allow
FilterOut
to filter special nodes, likecomment
.
0.7.1 - 2015-11-14
- Ignore PHP scripts when finding nodes.
0.7.0 - 2015-11-03
- Add support for excluding script notes in
Floki.text
. By default, it will exclude those nodes, but it can be enabled with the flagjs: true
- thanks @vikeri!
- Fix find for sibling nodes when the precendent selector match an element at the end of sibling list - fix issue #39
0.6.1 - 2015-10-11
- Fix the
Floki.raw_html/1
to build HTML comments properly.
0.6.0 - 2015-10-07
- Add
Floki.raw_html/2
.
0.5.0 - 2015-09-27
- Add the child combinator to
Floki.find/2
. - Add the adjacent sibling combinator to
Floki.find/2
. - Add the general adjacent sibling combinator to
Floki.find/2
.
0.4.1 - 2015-09-18
- Ignoring other files that are not lexer files (".xrl") under
src/
directory in Hex package. This fixes a crash when compiling using OTP 17.5 on Mac OS X. Huge thanks to @henrik and @licyeus that pointed the issue!
0.4.0 - 2015-09-17
- A robust representation of selectors in order to enable queries using a mix of selector types, such as classes with attributes, attributes with types, classes with classes and so on. Here is a list with examples of what is possible now:
- Include mochiweb in the applications list at mix.exs - thanks @EricDykstra
Floki.find/2
will now return a list instead of tuple when searching only by IDs. For now on, Floki should always return the results inside a list, even if it's an ID match.
Floki.find/2
does not accept tuples as selectors anymore. This is because with the robust selectors representation, it won't be necessary to query directly using tuples or another data structures rather than string.
0.3.3 - 2015-08-23
- Fix
Floki.find/2
when there is a non-HTML input. It closes the issue #17
0.3.2 - 2015-06-27
- Fix
Floki.DeepText
when there is a comment inside nodes.
0.3.1 - 2015-06-21
- Fix
Floki.find/2
to consider XML trees.
0.3.0 - 2015-06-07
- Add attribute equals selector. This feature enables the user to search using HTML attributes other than "class" or "id". E.g: Floki.find(html, "[data-model=user]") - @nelsonr
0.2.1 - 2015-06-04
- Fix
parse/1
when parsing a part of HTML without a root node - @antonmi
0.2.0 - 2015-05-03
- Support HTML string when searching for attributes with Floki.attribute/2.
- Option for Floki.text/2 to disable deep search and use flat search instead.
- Change Floki.text/1 to perform a deep search of text nodes.
- Consider doctests in the test suite.
0.1.1 - 2015-03-25
- Add CHANGELOG.md following the Keep a changelog.
- Using MochiWeb as a hex dependency instead of embedded code. It closes the issue #5
0.1.0 - 2015-02-15
- Descendent selectors, like ".class tag" to Floki.find/2.
- Multiple selection, like ".class1, .class2" to Floki.find/2.
0.0.5 - 2014-12-21
- Floki.text/1, which returns all text in the same level of the parent element inside HTML.
- Elixir version requirement from "~> 1.0.0" to ">= 1.0.0".