Despite installer's default behaviour to compile and install bytecode,
we are not doing so going forward at stage/package time. [0] During
initial development and qualification of PEP-517 framework support,
compiling and installing bytecode at stage/package time was considered,
but was found problematic, fragile and ultimately unreliable, both
currently and historically (with USE_PYTHON=distutils), due to our
fixed plist requirement. While the living binary distribution format
(wheel) specification [1] says to compile bytecode, that is in the
pure Python package management context (pip, etc); nuance always
exists when interacting with "system" package management.
Additionally, "bytecode is an implementation detail of the CPython
interpreter. No guarantees are made that bytecode will not be added,
removed, or changed between versions of Python," thus "should not
be considered to work across Python VMs or Python releases." [2]
This is important to ensuring correctness for those ports specifying
NO_ARCH.
Instead of compiling and installing bytecode at stage/package time,
there is a WIP, review D34739, that compiles and installs bytecode
at install time instead, using triggers.
The aforementioned build_fs_violations will be investigated.
This reverts commit de6965254c.
With hat: python
Approved by: tcberner (mentor, portmgr)
Reference: https://wiki.freebsd.org/Python/PEP-517 [0]
https://packaging.python.org/en/latest/specifications/binary-distribution-format/ [1]
https://docs.python.org/3/library/dis.html [2]
- While I'm here, use long options for easier reading [1][2]
- Bump PORTREVISION of dependent ports (USE_PYTHON=pep517) for package change
It fixes build_fs_violation of dependent ports in poudriere (with -t flag).
It is also the default behavior of installer [2].
from py-sphinx log:
=>> Checking for staging violations... done
=>> Error: Filesystem touched during stage (files must install to ${STAGEDIR}):
extra: usr/local/lib/python3.9/site-packages/importlib_metadata/__pycache__
=>> Cleaning up wrkdir
from installer documentation:
--compile-bytecode
Possible choices: 0, 1, 2
generate bytecode for the specified optimization level(s) (default=0, 1)
--no-compile-bytecode
don’t generate bytecode for installed modules
Default: False
With hat: python
Reference: https://pypa-build.readthedocs.io/en/stable/ [1]
https://installer.pypa.io/en/stable/cli/installer/ [2]
vendor/github.com/lucas-clemente/quic-go/internal/qtls/go120.go:6:13: cannot use "The version of quic-go you're using can't be built on Go 1.20 yet.
quic-go doesn't support go1.20 yet, keep building this port with go1.19
for now.
PR: 269289
Reported by: exp-run
Most rc.d scripts support a standard <service name>_user option in
/etc/rc.conf to run the service as the specified user. The rc.d script
for dns/blocky doesn't observe this setting. As a result, it's not
possible to run as a user other than root (blocky documentation
recommends using a non-privileged user).
Instructions on how to run non-root user daemon have been added to
pkg-message.
PR: 269198
MFH: 2023Q1 (security fixes)
- Readd IDN and NLS options
- Do not install psl-make-dafsa because it requires Python
- Remove psl-make-dafsa.1
- Bump PORTREVISION for dependency and package change
- Use GitHub as primary mirror for better connectivity and use
main site as fallback
- Switch to CMake to provide .cmake files, improve compilation
performance and adhere framework options
Additionally also aligns port with other distributions such as
Alpine, Arch, Fedora, MacPorts and openSUSE
- Drop CONFIG_INFO patch, this is no longer needed by UnrealIRCd
- Enable "make test", only build test suite when requested, disable
online tests and use Googletest from tree instead of bundled version
Changelog: https://c-ares.org/changelog.html#1_19_0
PR: 268538
Reviewed by: zi (maintainer)
apache22 and apache25 had been removed a long time ago however the
apache.mk file has never been refactored and is out of sync from the
file Mk/bsd.default-versions.mk. These changes refactors the removals of
the older versions. In addition:
- Move some keywords like USE_APACHE, USE_APACHE_BUILD, USE_APACHE_RUN
from SANITY_DEPRECATED to SANITY_UNSUPPORTED
- Remove apache versions from ports Makefiles as currently there is only
one available version in the tree. However the version checks are
still valid and should work flawlessly whenever a new version is
added. For example USES=apache:2.2+ are simply replaced with
USES=apache. As currently there are no other versions available for
test this could not be checked on it's own ground.
- Update FOO_USE=APACHE=yes to FOO_USES=apache
- Remove trailing whitespaces
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D38113
Saturday, 14 January 2023
KDE today announces the release of KDE Frameworks 5.102.0.
KDE Frameworks are 83 addon libraries to Qt which provide a wide variety
of commonly needed functionality in mature, peer reviewed and well
tested libraries with friendly licensing terms. For an introduction see
the KDE Frameworks release announcement.
This release is part of a series of planned monthly releases making
improvements available to developers in a quick and predictable manner.
PR: 268952
Exp-run by: antoine
The DYNLIB option doesn't change whether unbound itself is dynamically
or statically linked, it enables support for third-party shlibs.
Approved by: maintainer
Switch from Mk/bsd.ruby.mk to Mk/Uses/ruby.mk
Notable changes are.
- Mk/bsd.ruby.mk is moved to Mk/Uses/ruby.mk.
- USE_RUBY=yes is replaced with USES=ruby.
- USE_RUBY_EXTCONF is replaced with USES=ruby:extconf.
- USE_RUBY_RDOC is replaced with USES=ruby:rdoc.
- USE_RUBY_SETUP is replaces with USES=ruby:setup.
- RUBY_NO_BUILD_DEPENDS and RUBY_NO_RUN_DEPENDS are replaced with
USES=ruby:{build,none,run}.
- RUBY_REQUIRE isn't used anywhere, so removed.
- USES=gem now implies USES=ruby.
This is mainly the work of yasu@ at https://reviews.freebsd.org/D27863
I have just made some cosmetic changes and ran exp-run to test that the
tree is not in a BROKEN state.
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D37925
* Switch to Meson (simplifies patching and is faster)
* Drop IDN option, only allow IDNA2008 compatible libraries
* Switch default library to (lib)ICU as its a more common dependency
* Enable "make test"
* Install psl-make-dafsa binary not just manpage
* Modernize Makefile to follow Porters Handbook more closely
Changelog: https://github.com/rockdaboot/libpsl/releases/tag/0.21.2
PR: 268544
Approved by: portmgr (maintainer timeout, 2+ weeks)
Simon Kelley sent an advisory that in rare circumstances, the cache can
become corrupted and the DNS subsystem then became disfunctional.
This is reported as regression in 2.88.
Chances seem higher this happens with DNSSEC enabled, but seems not limited
to it. For details, please see the patch contained in this commit, or
https://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2023q1/016821.html
The symptom of this happening is apparently a cache internal error.
2.89 with this fix and a few others is slated for release in a week.
Let's fix the patch already and MFH to 2023Q1 so we keep our liberties
to decide whether we need to move quarterly to 2.89 or rather stick
with 2.88_1.
originally
Reported by: Timo van Roermund (to Simon Kelley in private)
Reported by: Simon Kelley (upstream maintainer, through mailing list)
Obtained from: Simon Kelley (upstream maintainer, Git repository)
MFH: 2023Q1
Manage DANE TLSA records in DNS servers. Supports multiple domains with
multiple TLS certificates each. LetsDNS can be invoked manually, from a
periodic cron job, or called in a hook function of dehydrated or
certbot.
https://letsdns.org/