Page MenuHomeSolus

Update python-beautifulsoup4 to 4.6.3
ClosedPublic

Authored by maverick1 on Nov 7 2018, 7:23 AM.
Tags
None
Referenced Files
F11070219: D4290.diff
Fri, Aug 11, 11:59 PM
F11069614: D4290.diff
Fri, Aug 11, 11:22 PM
F10999295: D4290.id10534.diff
Fri, Jul 28, 12:05 PM
F10997950: D4290.id.diff
Thu, Jul 27, 4:20 PM
F10993350: D4290.diff
Tue, Jul 25, 4:46 PM
F10989228: D4290.diff
Mon, Jul 24, 2:16 PM
F10944668: D4290.diff
Sat, Jul 15, 12:47 AM
F10886872: D4290.id10534.diff
Jun 26 2023, 4:20 AM
Subscribers

Details

Summary

Changelog:

4.6.3 (20180812)

  • Exactly the same as 4.6.2. Re-released to make the README file render properly on PyPI.

4.6.2 (20180812)

  • Fix an exception when a custom formatter was asked to format a void element.

4.6.1 (20180728)

  • Stop data loss when encountering an empty numeric entity, and possibly in other cases.
  • Preserve XML namespaces introduced inside an XML document, not just the ones introduced at the top level.
  • Added a new formatter, "html5", which represents void elements as "<element>" rather than "<element/>".
  • Fixed a problem where the html.parser tree builder interpreted a string like "&foo " as the character entity "&foo;"
  • Correctly handle invalid HTML numeric character entities like &#147; which reference code points that are not Unicode code points. Note that this is only fixed when Beautiful Soup is used with the html.parser parser -- html5lib already worked and I couldn't fix it with lxml.
  • Improved the warning given when no parser is specified.
  • When markup contains duplicate elements, a select() call that includes multiple match clauses will match all relevant elements.
  • Fixed code that was causing deprecation warnings in recent Python 3 versions.
  • Fixed a Windows crash in diagnose() when checking whether a long markup string is a filename.
  • Stopped HTMLParser from raising an exception in very rare cases of bad markup.
  • Fixed a bug where find_all() was not working when asked to find a tag with a namespaced name in an XML document that was parsed as HTML.
  • You can get finer control over formatting by subclassing bs4.element.Formatter and passing a Formatter instance into (e.g.) encode().
  • You can pass a dictionary of attrs into BeautifulSoup.new_tag. This makes it possible to create a tag with an attribute like 'name' that would otherwise be masked by another argument of new_tag.
  • Clarified the deprecation warning when accessing tag.fooTag, to cover the possibility that you might really have been looking for a tag called 'fooTag'.
Test Plan

Parsed Amazon website with html5lib and selected some tags and extracted its contents.

Diff Detail

Repository
R2558 python-beautifulsoup4
Branch
master
Lint
No Lint Coverage
Unit
No Test Coverage

Event Timeline

This revision is now accepted and ready to land.Nov 17 2018, 8:00 PM
This revision was automatically updated to reflect the committed changes.