www/py-w3lib: update to 2.4.1 Changelog highlights (1.21.0 -> 2.4.1): - Python 3.8+ required (dropped 2.7/3.7 support) - Removed dependency on six - Build converted to pep517 (hatchling backend) - New URL parsing behavior: canonicalize_url() no longer removes dot-segments Port changes: - DISTVERSION 2.4.1, drop PORTREVISION - Convert USE_PYTHON distutils -> pep517 - RUN_DEPENDS: drop py-six; add BUILD_DEPENDS on py-hatchling - Enable tests: USE_PYTHON += pytest (241 passed, 76 xfailed) PR: 297778 Reported by: skreuzer2dfe786108
Port details
www/py-w3lib 2.4.1
Library of web-related functions
Port info
- Maintainer
- rm@FreeBSD.org
- Packages
- latest: 2.4.1
- Upstream
- Higher version available: 2.5.0
- Last update
- to 2.4.1 · 2dfe786108
- Quarterly
- 2026Q4: 2.4.1
- WWW
- https://github.com/scrapy/w3lib/
- Links
- cgit · VuXML
Install
- Package
# pkg install py312-w3libinstalls 2.4.1 fromlatest; fromquarterly(2026Q4) 2.4.1- Port
# cd /usr/ports/www/py-w3lib && make install clean- Size
- 39 KiB download · 175 KiB installed
- Depends on
- lang/python312 3.12.15
- License
- BSD3CLAUSE
Packages by version and architecture
latest
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 16 | 2.4.1 | 2.4.1 | – |
| FreeBSD 15 | 2.4.1 | 2.4.1 | – |
| FreeBSD 14 | 2.4.1 | 2.4.1 | 2.4.1 |
quarterly (2026Q4)
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 15 | 2.4.1 | 2.4.1 | – |
| FreeBSD 14 | 2.4.1 | 2.4.1 | 2.4.1 |
version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.
Unaddressed and VuXML only (0)
No unaddressed CVE and nothing reported by
pkg audit for the packaged version 2.4.1.Fixed (0)
No VuXML entries for this package.
Problem reports (0) · open in Bugzilla, most recently changed first
None.
Commits (32)
python: bump all USE_PYTHON=distutils consumers after RUN_DEPENDS removal Any missed ports, feel free to bump. Any ports that need setuptools at runtime can have the devel/py-setuptools manually added back to RUN_DEPENDS, but understand that this practice is deprecated; see CHANGES for details.06a08e69f3
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++ -DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable -Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi -Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings -Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x -MT _quickfix_la-QuickfixPython.lo -MD -MP -MF .deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o .libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568>3d9a815d9c*/*: rename CHEESESHOP to PYPI in MASTER_SITES PR: 267994 Differential revision: D37518 Approved by: bapt77d68471ad
Remove WWW entries moved into port Makefiles Commit b7f05445c00f has added WWW entries to port Makefiles based on WWW: lines in pkg-descr files. This commit removes the WWW: lines of moved-over URLs from these pkg-descr files. Approved by: portmgr (tcberner)fb16dfecae
Add WWW entries to port Makefiles It has been common practice to have one or more URLs at the end of the ports' pkg-descr files, one per line and prefixed with "WWW:". These URLs should point at a project website or other relevant resources. Access to these URLs required processing of the pkg-descr files, and they have often become stale over time. If more than one such URL was present in a pkg-descr file, only the first one was tarnsfered into the port INDEX, but for many ports only the last line did contain the port specific URL to further information. There have been several proposals to make a project URL available as a macro in the ports' Makefiles, over time. This commit implements such a proposal and moves one of the WWW: entries of each pkg-descr file into the respective port's Makefile. A heuristic attempts to identify the most relevant URL in case there is more than one WWW: entry in some pkg-descr file. URLs that are not moved into the Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr files in order to preserve them. There are 1256 ports that had no WWW: entries in pkg-descr files. These ports will not be touched in this commit. The portlint port has been adjusted to expect a WWW entry in each port Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as deprecated. Approved by: portmgr (tcberner)b7f05445c0
One more small cleanup, forgotten yesterday. Reported by: lwhsucf118ccf87
Remove # $FreeBSD$ from Makefiles.305f148f48
Drop python 2.7 support from a few ports With hat: portmgraa7a6c429e
www/py-w3lib: update to 1.21.024a92ba683
www/py-w3lib: update to 1.20.0f4f1aaff09
Use PY_FLAVOR for dependencies. FLAVOR is the current port's flavor, it should not be used outside of this scope. Sponsored by: Absolight4376dbbb58
www/py-w3lib: 1.18.0 -> 1.19.0b11aff81e2
Simplify some USES=python With hat: portmgr377901b804
Convert Python ports to FLAVORS.
Ports using USE_PYTHON=distutils are now flavored. They will
automatically get flavors (py27, py34, py35, py36) depending on what
versions they support.
There is also a USE_PYTHON=flavors for ports that do not use distutils
but need FLAVORS to be set. A USE_PYTHON=noflavors can be set if
using distutils but flavors are not wanted.
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
added to cope with Python ports that did not have the Python
PKGNAMEPREFIX but are flavored.
USES=python now also exports a PY_FLAVOR variable that contains the
current python flavor. It can be used in dependency lines when the
port itself is not python flavored. For example, deskutils/calibre.
By default, all the flavors are generated. To only generate flavors
for the versions in PYTHON2_DEFAULT and PYTHON3_DEFAULT, define
BUILD_DEFAULT_PYTHON_FLAVORS in your make.conf.
In all the ports with Python dependencies, the *_DEPENDS entries MUST
end with the flavor so that the framework knows which to build/use.
This is done by appending '@${PY_FLAVOR}' after the origin (or
@${FLAVOR} if in a Python module with Python flavors, as the content
will be the same). For example:
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
PR: 223071
Reviewed by: portmgr, python
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12464551be3c723www/py-w3lib: update to 1.18.0f41a23537c
www/py-w3lib: update to 1.17.0e2983e1641
www/py-w3lib: update to 1.16.04fe72bf270
http://github.com redirects to https://github.com, spare everyone a redirect. Sponsored by: Absolightbbf7ef5615
www/py-w3lib: update to 1.15.012f2202ac6
www/py-w3lib: update to 1.14.24ab34e4909
Remove ${PORTSDIR}/ from dependencies, categories v, w, x, y, and z.
With hat: portmgr
Sponsored by: Absolight72ea7e696bwww/py-w3lib: update to 1.13.022fa4e6625
www/py-w3lib: update to 1.12.0321f3f1092
www/py-w3lib: update to 1.11.0372296d553
www/py-w3lib: update to 1.7.1; convert to USESb4eb1b6fbc
www/py-w3lib: update to 1.62f4c31f2b9
- do not use easy_install, convert to auto-generated packing list - move DIST_SUBDIR upper, where appropriate - clarify type of BSD license, where this info was available - bump PORTREVISION045b1fbdf5
- update to 1.5 - convert to setuptools (following upstream change) - update python version (works with 3.x via py-six) - add staging - use PYDISTUTILS_AUTOPLIST1ca7aab9be
Add NO_STAGE all over the place in preparation for the staging support (cat: www)85fbf21ec5
- update to 1.3fec7a29596
This is a Python library of web-related functions, such as: - remove comments, or tags from HTML snippets - extract base url from HTML snippets - translate entites on HTML strings - encoding mulitpart/form-data - convert raw HTTP headers to dicts and vice-versa - construct HTTP auth header - converting HTML pages to unicode - RFC-compliant url joining - sanitize urls (like browsers do) - extract arguments from urls WWW: http://github.com/scrapy/w3lib Feature safe: yesb22b3c01b6