Skip to content

Releases: philss/floki

v0.36.3

21 Oct 19:36
4032396
Compare
Choose a tag to compare

This release contains some performance improvements, thanks to @ypconstante.

Fixed

  • Stop Floki.get_by_id/2 traversal on first match. Thanks @ypconstante.

  • Remove extra whitespaces from nodes without attributes on Floki.raw_html/1.
    Thank you @ypconstante.

  • Fix Floki.raw_html/1 typespecs. Thanks @davydog187.

Pull requests

New Contributors

Full Changelog: v0.36.2...v0.36.3

v0.36.2

27 Apr 16:08
241eeb2
Compare
Choose a tag to compare

Added

  • Implement the Inspect protocol for the Floki.HTMLTree struct.
    This struct is currently private. Thank you @vittoriabitton.

Fixed

  • Fix regression to respect config option :encode in Floki.raw_html/2.
    Thanks @Sgoettschkes.

  • Make the Floki.raw_html/2 treat the contents of the <title> tag as plain text.
    The idea is to align with parse_document/2.
    Thank you @aymanosman.

Pull requests

New Contributors

Full Changelog: v0.36.0...v0.36.2

v0.36.1

27 Apr 16:08
v0.36.1
b98dc57
Compare
Choose a tag to compare

Fixed

  • Fix typespec of get_by_id/2.

Pull requests

Full Changelog: v0.36.0...v0.36.1

v0.36.0

01 Mar 21:37
v0.36.0
6fc70d4
Compare
Choose a tag to compare

Added

  • Add Floki.get_by_id/1 that returns one element by ID or nil.
    Thanks @SteffenDE.

Changed

  • Improve options validation with Keyword.validate!/2.
    This is not a change in APIs, but the error messages and opts validation should be standardized now.
    Thanks @vittoriabitton.

Removed

  • Drop support for Elixir v1.12.

Pull requests

New Contributors

Full Changelog: v0.35.4...v0.36.0

v0.35.4

20 Feb 02:04
v0.35.4
b66034f
Compare
Choose a tag to compare

Fixed

  • Fix regression in the order of elements in Floki.find/2

Pull requests

Full Changelog: v0.35.3...v0.35.4

v0.35.3

25 Jan 20:29
3bdbc28
Compare
Choose a tag to compare

This release has great performance improvements, thanks to the PRs
from @ypconstante!

Most of the main functions, such as Floki.raw_html/2 and Floki.find/2 are
faster and are using less memory. It's something like twice as fast, and half
usage of memory for find/2, for example.

Fixed

  • Add :leex to Mix compilers. Fixes the build when running with dev version of Elixir.
    Thanks @wojtekmach.

  • Fix Floki.raw_html/2 when a tree using attributes as maps is given.
    Thanks @SupaMic.

  • Add a guard to Floki.find/2 so people can have a better error message when an
    invalid input is given. Thanks @Hajto.

  • Fix parsers to consider IO data as inputs. This may change in the next version
    of Floki, as I plan to drop support for IO data.
    Thanks @ypconstante.

Removed

  • Remove outdated Gleam wrapper code. The external functions syntax in Gleam
    has changed. So now
    the wrapper is not needed anymore.
    Thanks @michallepicki.

Pull requests

New Contributors

Full Changelog: v0.35.2...v0.35.3

v0.35.0

13 Oct 18:17
bc410df
Compare
Choose a tag to compare

Added

  • Add support for parsing attributes as maps.

    This makes parse_document/2 and parse_fragment/2 accept the option
    :attributes_as_maps to change the behaviour and return attributes as
    maps instead of lists of tuples.
    The only parser that does not support it yet is the fast_html.

Changed

  • Drop support for Elixir v1.11.

  • Change the log level of parsing logger calls from "info" to "debug".
    This will help to reduce the amount of noise in production apps.

Pull requests

Full Changelog: v0.34.3...v0.35.0
Official Changelog: https://hexdocs.pm/floki/changelog.html

v0.34.3

02 Jun 20:59
fc07c14
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.34.2...v0.34.3
Official Changelog: https://github.com/philss/floki/blob/main/CHANGELOG.md

v0.34.2

24 Feb 21:21
eb0f61b
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.34.1...v0.34.2

v0.34.1

24 Feb 21:12
4e0f0ea
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.34.0...v0.34.1