Skip to content

chore(deps): update dependency floki to >= 0.38.1#52

Open
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/floki-0.x
Open

chore(deps): update dependency floki to >= 0.38.1#52
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/floki-0.x

Conversation

@renovate
Copy link

@renovate renovate bot commented Jun 29, 2022

This PR contains the following updates:

Package Type Update Change
floki (source) dev minor >= 0.32.1>= 0.38.1

Release Notes

philss/floki (floki)

v0.38.1

Compare Source

Performance

This version contains major performance improvements in the following functions:

  • Floki.filter_out/2.
  • Floki.find/2 - with some improvements to specific selectors, like classes
    and attribute selectors.
  • Floki.text/2.

Those functions are not only faster, but are now using less memory. Please check
the PRs related to this release if you want to better understand the numbers.

All the improvements in this version were made by Barna Kovacs - @​preciz,
so shout out and thanks to him!

Fixed

Remove a warning about an unused require Logger that pops up when using Elixir v1.20.

v0.38.0

Compare Source

Added
  • This version adds initial support for the :has pseudo-selector.
    It is a great addition that enables finding elements containing
    matching children.

    Examples for selectors:

    • "div:has(h1)"
    • "div:has(h1, p, span)"
    • "div:has(p.foo)"
    • "div:has(img[src='https://example.com'])"
    • "tr:has(*:fl-contains('TEST'))"

    Note that combinators like ">" are not allowed yet.

    Thank you @​bvobart for this feature!

Fixed
  • Add :style option documentation to Floki.text/2.
    Thanks @​s3cur3 for the fix.

  • Fix deprecation warnings for upcoming Elixir 1.19.

  • Prevent from crashing when selector is an empty string.

Removed
  • Remove support for Elixir 1.14 and OTP 23.

  • Remove deprecated functions and function clauses
    that were accepting strings (binaries).

    Affected functions:

    • parse/1 - removed function
    • map/2 - removed function
    • attr/4 - removed clause
    • find/2 - removed clause
    • text/3 - removed clause
    • text/3 - removed clause
    • attribute/2 - removed clause
    • filter_out/2 - removed clause
  • HTML must be parsed before searching. Functions like Floki.find/2,
    Floki.attribute/2, and other HTML manipulation functions no longer work
    directly with HTML strings
    . The HTML must be parsed first using
    Floki.parse_fragment/2 or Floki.parse_document/2.

    Before:

    html = "<div class='foobar'><p>Hello</p></div>"
    Floki.find(html, "p")
    Floki.attribute(html, "div", "class")

    After:

    html = "<div class='foobar'><p>Hello</p></div>"
    parsed_html = Floki.parse_fragment!(html)
    Floki.find(parsed_html, "p")
    Floki.attribute(parsed_html, "div", "class")

v0.37.1

Compare Source

Fixed
  • Move regex declaration from module tag to inside function.
    This is a fix to be compatible with the upcoming OTP 28.

v0.37.0

Compare Source

Added
Fixed
  • Fix bug propagating identity encoder in raw_html/2 - thanks @​andyleclair.
Removed
  • Remove support for Elixir 1.13 and OTP 22.

v0.36.3

Compare Source

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.

v0.36.2

Compare Source

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.

v0.36.1

Compare Source

Fixed
  • Fix typespec of get_by_id/2.

v0.36.0

Compare Source

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.

v0.35.4

Compare Source

Besides the fix described below, this release also contains more performance
improvements, thanks to @​ypconstante.

Fixed
  • Fix order of results for Floki.find/2. This was a regression from the
    previous version - thanks @​ypconstante.

v0.35.3

Compare Source

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.

v0.35.2

Compare Source

Fixed
  • Enable usage of IO data by removing a guard for binaries in the main
    parser module.

v0.35.1

Compare Source

Fixed
  • Fix a small regression of the mochiweb parser that was breaking when a
    malformed HTML was used. For more details, see the original issue:
    #​492

v0.35.0

Compare Source

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.

v0.34.3

Compare Source

Added
  • Add boolean option :include_inputs to Floki.text/2 that changes the result
    of this function to include the values of inputs. So if there is any input with
    a "value" attribute, we now include that value if this option is set to true.
    Thanks @​viniciusmuller.
Fixed
  • Fix find of elements by classes that contain colons. This is useful for when
    people are trying to find elements that contain Tailwind classes.
    Thanks @​viniciusmuller.

  • Fix some typespecs that were using types from private modules. This is a fix
    to the documentation.

v0.34.2

Compare Source

Added
  • Add option to pass down arguments to the parser in Floki.parse_document/2 and
    Floki.parse_fragment/2. Thanks @​Kuret.

  • Add support for returning more elements from the Floki.traverse_and_update/2 function callback.
    This enables the creation of more elements in the tree, but should be used with care,
    since the tree can grow a lot if the change is not controlled. Thanks @​martosaur.

v0.34.1

Compare Source

Fixed
  • Fix pseudo-class ":not" selector parsing halting point.
    This is a fix for when a "pseudo-class" ":not" that contains an attribute selector is
    followed by another selector. This is an example: "a:not([class]), div".

  • Ignore decimal numeric char ref when number is negative.

v0.34.0

Compare Source

Added
  • User configurable "self-closing" tags. Now it's possible to define which tags are considered
    "self-closing". Thanks @​inoas.
Fixed
  • Allow attribute values to not be escaped. This fixes Floki.raw_html/2 when used with the
    option encode: false. Thanks @​juanazam.
  • Fix traverse_and_update/3 spec. Thanks @​WLSF.
Changed
  • Drop support for Elixir 1.9 and 1.10.
  • Remove html_entities dependency. We now use an internal encoder/decoder for entities.
  • Change the main branch name to main.

v0.33.1

Compare Source

Fixed
  • Remove some warnings for unused code.

v0.33.0

Compare Source

Added
  • Add support for searching elements that contains text in a case-insensitive manner with
    fl-icontains - thanks @​nuno84
Changed

Configuration

📅 Schedule: Branch creation - "before 2am" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/floki-0.x branch from 509358c to 34c7847 Compare November 20, 2022 12:26
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.33.1 chore(deps): update dependency floki to >= 0.34.0 Nov 20, 2022
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.34.0 Update dependency floki to >= 0.34.0 Dec 17, 2022
@renovate renovate bot changed the title Update dependency floki to >= 0.34.0 chore(deps): update dependency floki to >= 0.34.0 Dec 17, 2022
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.34.0 chore(deps): update dependency floki to >= 0.34.2 Mar 12, 2023
@renovate renovate bot force-pushed the renovate/floki-0.x branch from 34c7847 to 62fb09d Compare March 12, 2023 11:27
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.34.2 chore(deps): update dependency floki to >= 0.34.3 Jun 3, 2023
@renovate renovate bot force-pushed the renovate/floki-0.x branch from 62fb09d to 35966b2 Compare June 3, 2023 02:08
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.34.3 chore(deps): update dependency floki to >= 0.35.0 Oct 13, 2023
@renovate renovate bot force-pushed the renovate/floki-0.x branch from 35966b2 to 3e3a7ec Compare October 13, 2023 18:32
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.35.0 chore(deps): update dependency floki to >= 0.35.1 Oct 17, 2023
@renovate renovate bot force-pushed the renovate/floki-0.x branch from 3e3a7ec to c4f3340 Compare October 17, 2023 00:56
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.35.1 chore(deps): update dependency floki to >= 0.35.2 Oct 25, 2023
@renovate renovate bot force-pushed the renovate/floki-0.x branch from c4f3340 to af05ba1 Compare October 25, 2023 20:15
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.35.2 chore(deps): update dependency floki to >= 0.35.3 Jan 25, 2024
@renovate renovate bot force-pushed the renovate/floki-0.x branch from af05ba1 to acb1863 Compare January 25, 2024 23:15
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.35.3 chore(deps): update dependency floki to >= 0.35.4 Feb 20, 2024
@renovate renovate bot force-pushed the renovate/floki-0.x branch from acb1863 to 1373897 Compare February 20, 2024 03:36
@renovate renovate bot force-pushed the renovate/floki-0.x branch from 1373897 to 658b44e Compare March 2, 2024 01:06
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.35.4 chore(deps): update dependency floki to >= 0.36.0 Mar 2, 2024
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.36.0 chore(deps): update dependency floki to >= 0.36.1 Mar 18, 2024
@renovate renovate bot force-pushed the renovate/floki-0.x branch from 658b44e to b9911fe Compare March 18, 2024 07:44
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.36.1 chore(deps): update dependency floki to >= 0.36.2 Apr 27, 2024
@renovate renovate bot force-pushed the renovate/floki-0.x branch from b9911fe to cfee295 Compare April 27, 2024 00:09
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.36.2 chore(deps): update dependency floki to >= 0.36.3 Oct 21, 2024
@renovate renovate bot force-pushed the renovate/floki-0.x branch from cfee295 to dbc2457 Compare October 21, 2024 21:37
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.36.3 chore(deps): update dependency floki to >= 0.37.0 Dec 6, 2024
@renovate renovate bot force-pushed the renovate/floki-0.x branch from dbc2457 to 86959fb Compare December 6, 2024 17:49
@renovate renovate bot force-pushed the renovate/floki-0.x branch from 86959fb to 71b47d5 Compare March 23, 2025 02:09
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.37.0 chore(deps): update dependency floki to >= 0.37.1 Mar 23, 2025
@renovate renovate bot force-pushed the renovate/floki-0.x branch from 71b47d5 to ec4bef8 Compare June 15, 2025 04:54
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.37.1 chore(deps): update dependency floki to >= 0.38.0 Jun 15, 2025
@renovate renovate bot force-pushed the renovate/floki-0.x branch from ec4bef8 to bd9b06b Compare March 17, 2026 21:26
@renovate renovate bot changed the title chore(deps): update dependency floki to >= 0.38.0 chore(deps): update dependency floki to >= 0.38.1 Mar 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants