ccf926e05c
pytest 7.2.0 (2022-10-23) Deprecations * Update pytest.PytestUnhandledCoroutineWarning to a deprecation; it will raise an error in pytest 8. * pytest no longer depends on the py library. pytest provides a vendored copy of py.error and py.path modules but will use the py library if it is installed. If you need other py.* modules, continue to install the deprecated py library separately, otherwise it can usually be removed as a dependency. * Deprecate configuring hook specs/impls using attributes/marks. Instead use pytest.hookimpl() and pytest.hookspec(). For more details, see the docs. * The functionality for running tests written for nose has been officially deprecated. This includes: Plain setup and teardown functions and methods: this might catch users by surprise, as setup() and teardown() are not pytest idioms, but part of the nose support. Setup/teardown using the @with_setup decorator. For more details, consult the deprecation docs. * A deprecation warning is now emitted if a test function returns something other than None. This prevents a common mistake among beginners that expect that returning a bool (for example return foo(a, b) == result) would cause a test to pass or fail, instead of using assert. The plan is to make returning non-None from tests an error in the future. Features * Added shell-style wildcard support to testpaths. Improvements * @pytest.mark.parametrize() (and similar functions) now accepts any Sequence[str] for the argument names, instead of just list[str] and tuple[str, ...]. (Note that str, which is itself a Sequence[str], is still treated as a comma-delimited name list, as before). * The --no-showlocals flag has been added. This can be passed directly to tests to override --showlocals declared through addopts. * Assertion failures with strings in NFC and NFD forms that normalize to the same string now have a dedicated error message detailing the issue, and their utf-8 representation is expressed instead. * Introduce multiline display for warning matching via pytest.warns() and enhance match comparison for _pytest._code.ExceptionInfo.match() as returned by pytest.raises(). * Improve pytest.raises(). Previously passing an empty tuple would give a confusing error. We now raise immediately with a more helpful message. * On Python 3.11, use the standard library’s tomllib to parse TOML. tomli is no longer a dependency on Python 3.11. * Display assertion message without escaped newline characters with -vv. * Improved error message that is shown when no collector is found for a given file. * Some coloring has been added to the short test summary. * Normalize the help description of all command-line options. * Display full crash messages in short test summary info, when running in a CI environment. * Added support for hidden configuration file by allowing .pytest.ini as an alternative to pytest.ini. Bug Fixes * sys.stdin now contains all expected methods of a file-like object when capture is enabled. * Do not break into pdb when raise unittest.SkipTest() appears top-level in a file. * Marks are now inherited according to the full MRO in test classes. Previously, if a test class inherited from two or more classes, only marks from the first super-class would apply. When inheriting marks from super-classes, marks from the sub-classes are now ordered before marks from the super-classes, in MRO order. Previously it was the reverse. When inheriting marks from super-classes, the pytestmark attribute of the sub-class now only contains the marks directly applied to it. Previously, it also contained marks from its super-classes. Please note that this attribute should not normally be accessed directly; use pytest.Node.iter_markers() instead. * Showing inner exceptions by forcing native display in ExceptionGroups even when using display options other than --tb=native. A temporary step before full implementation of pytest-native display for inner exceptions in ExceptionGroups. * Ensure caplog.get_records(when) returns current/correct data after invoking caplog.clear(). Improved Documentation * Update information on writing plugins to use pyproject.toml instead of setup.py. * The documentation is now built using Sphinx 5.x (up from 3.x previously). * Update documentation on how pytest.warns() affects DeprecationWarning. Trivial/Internal Changes * Made _pytest.doctest.DoctestItem export pytest.DoctestItem for type check and runtime purposes. Made _pytest.doctest use internal APIs to avoid circular imports. * Made _pytest.compat re-export importlib_metadata in the eyes of type checkers. * Fix default encoding warning (EncodingWarning) in cacheprovider * Improve the error message when we attempt to access a fixture that has been torn down. Add an additional sentence to the docstring explaining when it’s not a good idea to call getfixturevalue. |
||
---|---|---|
archivers | ||
audio | ||
benchmarks | ||
biology | ||
bootstrap | ||
cad | ||
chat | ||
comms | ||
converters | ||
cross | ||
databases | ||
devel | ||
distfiles | ||
doc | ||
editors | ||
emulators | ||
filesystems | ||
finance | ||
fonts | ||
games | ||
geography | ||
graphics | ||
ham | ||
inputmethod | ||
lang | ||
licenses | ||
math | ||
mbone | ||
meta-pkgs | ||
misc | ||
mk | ||
multimedia | ||
net | ||
news | ||
packages | ||
parallel | ||
pkgtools | ||
regress | ||
security | ||
shells | ||
sysutils | ||
templates | ||
textproc | ||
time | ||
wm | ||
www | ||
x11 | ||
_NetBSD-pkgdb | ||
Makefile | ||
pkglocate | ||
README.md |
pkgsrc
pkgsrc is a framework for building software for a variety of UNIX-like systems.
It produces binary packages, which can be managed with tools such as
pkgin. pkgsrc is highly configurable, supporting
building packages for an arbitrary installation prefix (the default is
/usr/pkg
), allowing multiple branches to coexist on one machine, a
build options framework, and a compiler transformation framework, among
other advanced features. Unprivileged use and installation is also supported.
pkgsrc is the default package manager for NetBSD and SmartOS. It's also supported as a first-class option in OmniOS CE and Oasis Linux.
Bootstrapping
To use pkgsrc on operating systems other than NetBSD, you first need to bootstrap:
cd pkgsrc/bootstrap
./bootstrap
Note that this is only for the most simple case, using pkgsrc's defaults.
Please consult bootstrap/README
and bootstrap/README.OS
for detailed
information about bootstrapping.
Building packages
cd pkgsrc/category/package-name
$PREFIX/bin/bmake install
Where $PREFIX
is where you've chosen to install packages
(typically /usr/pkg
)
On NetBSD, bmake
is simply the built-in make
tool.
To build packages in bulk, tools such as pkgtools/pbulk
and
pkgtools/pkg_comp
can be used.
Community / Troubleshooting
- Join the community IRC channel #pkgsrc @ libera.chat.
- Join the community Matrix room #pkgsrc:nil.im
- Subscribe to the pkgsrc-users mailing list
- Send bugs and patches via web form (use the
pkg
category).
Latest sources
To fetch the main CVS repository:
cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout -P pkgsrc
To work in the Git mirror, which is updated every few hours from CVS:
git clone https://github.com/NetBSD/pkgsrc.git
Additional links
- pkgsrc guide - the authoritative document on pkgsrc, also available as
doc/pkgsrc.txt
- pkgsrc in the NetBSD Wiki - miscellaneous articles and tutorials
- pkgsrc.se - a searchable web index of pkgsrc
- pkgsrc-wip - a project to get more people actively involved with creating packages for pkgsrc
- pkgsrc on Twitter - announcements to the world
- pkgsrcCon - we get together
- BulkTracker - a web application that tracks pkgsrc bulk builds