Path to this page:
./
www/py-soupsieve,
CSS4 selector implementation for Beautiful Soup
Branch: CURRENT,
Version: 2.3.2.1,
Package name: py310-soupsieve-2.3.2.1,
Maintainer: pkgsrc-usersSoup Sieve is a CSS selector library designed to be used with Beautiful Soup 4.
It aims to provide selecting, matching, and filtering using modern CSS
selectors. Soup Sieve currently provides selectors from the CSS level 1
specifications up through the latest CSS level 4 drafts (though some are not
yet implemented).
Soup Sieve was written with the intent to replace Beautiful Soup's builtin
select feature, and as of Beautiful Soup version 4.7.0, it now is. Soup Sieve
can also be imported in order to use its API directly for more controlled,
specialized parsing.
Soup Sieve has implemented most of the CSS selectors up through the level 4
drafts, though there are a number that don't make sense in a non-browser
environment. Selectors that cannot provide meaningful functionality simply do
not match anything.
Required to run:[
devel/py-setuptools] [
lang/python37]
Required to build:[
pkgtools/cwrappers]
Master sites:
Filesize: 100.404 KB
Version history: (Expand)
- (2022-11-30) Updated to version: py310-soupsieve-2.3.2.1
- (2022-01-05) Updated to version: py39-soupsieve-1.9.5nb1
- (2021-10-07) Updated to version: py39-soupsieve-1.9.5
- (2019-11-14) Updated to version: py37-soupsieve-1.9.5
- (2019-10-07) Updated to version: py37-soupsieve-1.9.4
- (2019-08-21) Updated to version: py37-soupsieve-1.9.3
CVS history: (Expand)
2022-11-30 17:59:36 by Adam Ciarcinski | Files touched by this commit (3) |  |
Log message:
py-soupsieve: updated to 2.3.2.1
2.3.2.post1
- **FIX**: Documentation for installation from source is outdated.
2.3.2
- **FIX**: Fix some typos in error messages.
2.3.1
- **FIX**: Ensure attribute selectors match tags that have new line characters \
in attributes.
2.3
- **NEW**: Officially support Python 3.10.
- **NEW**: Add static typing.
- **NEW**: `:has()`, `:is()`, and `:where()` now use use a forgiving selector \
list. While not as forgiving as CSS might
be, it will forgive such things as empty sets and empty slots due to multiple \
consecutive commas, leading commas, or
trailing commas. Essentially, these pseudo-classes will match all non-empty \
selectors and ignore empty ones. As the
scraping environment is different than a browser environment, it was chosen not \
to aggressively forgive bad syntax and
invalid features to ensure the user is alerted that their program may not \
perform as expected.
- **NEW**: Add support to output a pretty print format of a compiled \
`SelectorList` for debug purposes.
- **FIX**: Some small corner cases discovered with static typing.
2.2.1
- **FIX**: Fix an issue with namespaces when one of the keys is `self`.
2.2
- **NEW**: `:link` and `:any-link` no longer include `#!html <link>` due \
to a change in the level 4 selector
specification. This actually yields more sane results.
- **FIX**: BeautifulSoup, when using `find`, is quite forgiving of odd types \
that a user may place in an element's
attribute value. Soup Sieve will also now be more forgiving and attempt to \
match these unexpected values in a sane
manner by normalizing them before compare.
2.1
- **NEW**: Officially support Python 3.9.
- **NEW**: Drop official support for Python 3.5.
- **NEW**: In order to avoid conflicts with future CSS specification changes, \
non-standard pseudo classes will now start
with the `:-soup-` prefix. As a consequence, `:contains()` will now be known as \
`:-soup-contains()`, though for a time
the deprecated form of `:contains()` will still be allowed with a warning that \
users should migrate over to
`:-soup-contains()`.
- **NEW**: Added new non-standard pseudo class `:-soup-contains-own()` which \
operates similar to `:-soup-contains()`
except that it only looks at text nodes directly associated with the currently \
scoped element and not its descendants.
- **FIX**: Import `bs4` globally instead of in local functions as it appears \
there are no adverse affects due to
circular imports as `bs4` does not immediately reference `soupsieve` functions \
and `soupsieve` does not immediately
reference `bs4` functions. This should give a performance boost to functions \
that had previously included `bs4`
locally.
2.0.1
- **FIX**: Remove unused code.
2.0
- **NEW**: `SelectorSyntaxError` is derived from `Exception` not `SyntaxError`.
- **NEW**: Remove deprecated `comments` and `icomments` from the API.
- **NEW**: Drop support for EOL Python versions (Python 2 and Python < 3.5).
- **FIX**: Corner case with splitting namespace and tag name that that have an \
escaped `|`.
|
2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595) |
Log message:
*: bump PKGREVISION for egg.mk users
They now have a tool dependency on py-setuptools instead of a DEPENDS
|
2021-10-26 13:31:15 by Nia Alarie | Files touched by this commit (1030) |
Log message:
www: Replace RMD160 checksums with BLAKE2s checksums
All checksums have been double-checked against existing RMD160 and
SHA512 hashes
Not committed (merge conflicts):
www/nghttp2/distinfo
Unfetchable distfiles (almost certainly fetched conditionally...):
./www/nginx-devel/distinfo array-var-nginx-module-0.05.tar.gz
./www/nginx-devel/distinfo echo-nginx-module-0.62.tar.gz
./www/nginx-devel/distinfo encrypted-session-nginx-module-0.08.tar.gz
./www/nginx-devel/distinfo form-input-nginx-module-0.12.tar.gz
./www/nginx-devel/distinfo headers-more-nginx-module-0.33.tar.gz
./www/nginx-devel/distinfo lua-nginx-module-0.10.19.tar.gz
./www/nginx-devel/distinfo naxsi-1.3.tar.gz
./www/nginx-devel/distinfo nginx-dav-ext-module-3.0.0.tar.gz
./www/nginx-devel/distinfo nginx-rtmp-module-1.2.2.tar.gz
./www/nginx-devel/distinfo nginx_http_push_module-1.2.10.tar.gz
./www/nginx-devel/distinfo ngx_cache_purge-2.5.1.tar.gz
./www/nginx-devel/distinfo ngx_devel_kit-0.3.1.tar.gz
./www/nginx-devel/distinfo ngx_http_geoip2_module-3.3.tar.gz
./www/nginx-devel/distinfo njs-0.5.0.tar.gz
./www/nginx-devel/distinfo set-misc-nginx-module-0.32.tar.gz
./www/nginx/distinfo array-var-nginx-module-0.05.tar.gz
./www/nginx/distinfo echo-nginx-module-0.62.tar.gz
./www/nginx/distinfo encrypted-session-nginx-module-0.08.tar.gz
./www/nginx/distinfo form-input-nginx-module-0.12.tar.gz
./www/nginx/distinfo headers-more-nginx-module-0.33.tar.gz
./www/nginx/distinfo lua-nginx-module-0.10.19.tar.gz
./www/nginx/distinfo naxsi-1.3.tar.gz
./www/nginx/distinfo nginx-dav-ext-module-3.0.0.tar.gz
./www/nginx/distinfo nginx-rtmp-module-1.2.2.tar.gz
./www/nginx/distinfo nginx_http_push_module-1.2.10.tar.gz
./www/nginx/distinfo ngx_cache_purge-2.5.1.tar.gz
./www/nginx/distinfo ngx_devel_kit-0.3.1.tar.gz
./www/nginx/distinfo ngx_http_geoip2_module-3.3.tar.gz
./www/nginx/distinfo njs-0.5.0.tar.gz
./www/nginx/distinfo set-misc-nginx-module-0.32.tar.gz
|
2021-10-07 17:09:00 by Nia Alarie | Files touched by this commit (1033) |
Log message:
www: Remove SHA1 hashes for distfiles
|
2019-11-13 21:42:23 by Adam Ciarcinski | Files touched by this commit (2) |  |
Log message:
py-soupsieve: updated to 1.9.5
1.9.5
- **FIX**: `:placeholder-shown` should not match if the element has content that \
overrides the placeholder.
|
2019-10-07 20:27:09 by Adam Ciarcinski | Files touched by this commit (2) |  |
Log message:
py-soupsieve: updated to 1.9.4
1.9.4
- **FIX**: :checked rule was too strict with option elements. The specification \
for :checked does not require an
option element to be under a select element.
- **FIX**: Fix level 4 :lang() wildcard match handling with singletons. Implicit \
wildcard matching should not
match any singleton. Explicit wildcard matching (* in the language range: \
*-US) is allowed to match singletons.
|
2019-08-21 14:48:04 by Adam Ciarcinski | Files touched by this commit (2) |  |
Log message:
py-soupsieve: updated to 1.9.3
1.9.3
- **FIX**: [attr!=value] pattern was mistakenly using :not([attr|=value]) logic \
instead of :not([attr=value]).
- **FIX**: Remove undocumented _QUIRKS mode flag. Beautiful Soup was meant to \
use it to help with transition to Soup
Sieve, but never released with it. Help with transition at this point is no \
longer needed.
|
2019-07-07 00:49:00 by Adam Ciarcinski | Files touched by this commit (2) |  |
Log message:
py-soupsieve: updated to 1.9.2
1.9.2
- **FIX**: Shortcut last descendant calculation if possible for performance.
- **FIX**: Fix issue where `Doctype` strings can be mistaken for a normal text \
node in some cases.
- **FIX**: A top level tag is not a `:root` tag if it has sibling text nodes or \
tag nodes. This is an issue that mostly manifests when using `html.parser` as \
the parser will allow multiple root nodes.
|