Releases: conda/conda-build
Releases · conda/conda-build
3.28.3
Bug fixes
- Update
conda_build.os_utils.liefldd.ensure_binary
to handleNone
inputs. (#5123 via #5124) - Update
conda_build.inspect_pkg.which_package
to use a cached mapping of paths to packages (first call:O(n)
, subsequent calls:O(1)
) instead of relying onPath.samefile
comparisons (O(n * m)
). (#5126 via #5130)
Contributors
Full Changelog: 3.28.2...3.28.3
3.28.2
Enhancements
- Update
conda_build.metadata.MetaData.get_section
to consistently return lists for "source" and "outputs". (#5111 via #5112)
Bug fixes
- Resolve duplicate package record issue in
conda_build.inspect_pkg.which_package
. (#5106 via #5108) - Ensure
conda_build.post._lookup_in_prefix_packages
displaysstr(PackageRecord)
instead ofrepr(PackageRecord)
. (#5106 via #5108) - Fix finalization of recipes with multiple sources. (#5111 via #5112)
- Improve handling by catching the more general
ImportError
instead ofModuleNotFoundError
to cover cases involvingmenuinst 1.x
. (#5116)
Contributors
Full Changelog: 3.28.1...3.28.2
3.28.1
Bug fixes
- Relax
conda_build.metadata.MetaData.version
checks whenoutputs
have been defined. (#5096) - Remove
lief
frompyproject.toml
since it causespip check
to fail. To be re-added in the future after an update topy-lief
package. (#5099)
Contributors
Full Changelog: 3.28.0...3.28.1
3.28.0
Special announcement
In the upcoming January 2024 release of conda-build, significant changes are underway. We're set to transition to the CalVer versioning system. Additionally, we'll be formally embracing CEP 8 to manage our release schedule. Moreover, an expedited version of CEP 9 will be adopted for deprecation handling, omitting the pending deprecation phase and streamlining the period from deprecation to removal to a mere 2 months.
Enhancements
- Add
stblib
jinja function similar tocompiler
to explicitly define sysroot dependencies. (#4999) - Utilize conda-known subdirs for selector definitions, enabling conda_build to support new architectures with only an updated conda version. New OS support requires additional information for proper conda_build functionality, including UNIX-like platform designation, shared library prefix, and binary archive format for the platform. (#5009)
- Eliminate unnecessary cache clearing from
conda_build.build.test
. (#5031) - Consolidate
which_package
implementations and replaceconda.models.dist.Dist
usage withconda.models.records.PrefixRecords
. (#5041)
Bug fixes
- Display package file name in
get_hash_input
. (#5021) - Fall back to solved record filename to locate the downloaded tarball in
get_upstream_pins
. (#4991 via #5037) - Prevent overwriting of variants in high priority cbc.yaml entries when absent in lower priority cbc.yamls. (#5039)
- Correct the check for a missing anaconda-client to display a useful error message. (#5050)
- Fix conda_index.index verbose DEBUG/INFO message logging. (#5066)
Deprecations
- Mark
conda_build.environ.clean_pkg_cache
for pending deprecation. (#5031) - Mark
conda_build.conda_interface.IndexRecord
for pending deprecation. Useconda.models.records.PackageRecord
instead. (#5032) - Mark
conda_build.os_utils.pyldd.is_string
for pending deprecation. Useisinstance(value, str)
instead. (#5040) - Mark
conda_build.os_utils.pyldd.is_codefile
for pending deprecation. Useconda_build.os_utils.pyldd.codefile_class
instead. (#5040) - Mark
conda_build.os_utils.pyldd.codefile_type
for pending deprecation. Useconda_build.os_utils.pyldd.codefile_class
instead. (#5040) - Mark
conda_build.inspect_pkg.dist_files
for pending deprecation. (#5041) - Mark
conda_build.inspect_pkg.which_package(avoid_canonical_channel_name)
for pending deprecation. (#5041) - Mark
conda_build.inspect_pkg._installed
for pending deprecation. (#5041) - Mark
conda_build.os_utils.ldd.get_package_files
for pending deprecation. (#5041) - Mark
conda_build.os_utils.pyldd.mach_o_change
for pending deprecation. (#5041) - Mark
conda_build.os_utils.pyldd.inspect_rpath
for pending deprecation. (#5041) - Mark
conda_build.os_utils.pyldd.get_runpaths
for pending deprecation. (#5041) - Mark
conda_build.os_utils.pyldd.otool_sys
for pending deprecation. (#5041) - Mark
conda_build.os_utils.pyldd.ldd_sys
for pending deprecation. (#5041) - Mark
conda_build.post.determine_package_nature
for pending deprecation. Useconda_build.post.get_dsos
andconda_build.post.get_run_exports
instead. (#5041) - Mark
conda_build.post.library_nature(subdir, bldpkgs_dirs, output_folder, channel_urls)
for pending deprecation. (#5041) - Mark
conda_build.post.dist_from_names
for pending deprecation. Queryconda.core.prefix_data.PrefixData
instead. (#5041) - Mark
conda_build.post.FakeDist
for pending deprecation. Useconda.models.records.PrefixRecord
instead. (#5041) - Mark
conda_build.post._get_fake_pkg_dist
for pending deprecation. Useconda.models.records.PrefixRecord
instead. (#5041) - Mark
conda_build.utils.relative
for pending deprecation. Useos.path.relpath
orpathlib.Path.relative_to
instead. (#5042)
Docs
- Incorporate the conda-sphinx-theme into conda-build documentation. (#5067)
- Update certain pages to remove redundant TOC entries. (#5067)
Other
- Implement Ruff linter in pre-commit configuration. (#5015)
- Replace
black
withruff format
in pre-commit setup. (#5052) - Identify Unicode tests as incompatible with
libmamba
. (#5059)
Contributors
- @conda-bot
- @danpetry made their first contribution in #5039
- @duncanmmacleod
- @h-vetinari made their first contribution in #4999
- @isuruf
- @jaimergp
- @jakirkham
- @kenodegard
- @mbargull
- @travishathaway
- @pre-commit-ci[bot]
Full Changelog: 3.27.0...3.28.0
3.27.0
Enhancements
- Remove
glob2
dependency. As of Python 3.5, the '**', operator was available toglob
when usingrecursive=True
. Builtin glob is also much faster. (#5005) - Handle
emscripten-wasm32
andwasi-wasm32
platforms. (#4813)
Bug fixes
- Delay imports in conda command plugin until the command is used, avoiding import-time side effects. (#4949)
Deprecations
- When templating new recipes from a PyPI package, the build script
{{ PYTHON }} -m pip install . -vv
is deprecated in favor of{{ PYTHON }} -m pip install . -vv --no-deps --no-build-isolation
. (#4960)
Docs
- Document
~=
(compatibility release) match spec. (#4553) - Clarify that the
build
prefix is activated after thehost
prefix. (#4942) - Add explanation that conda-build should be run from the base environment. (#4995)
Contributors
- @beeankha
- @conda-bot
- @dholth
- @DaveKaretnyk made their first contribution in #5004
- @boldorider4 made their first contribution in #4960
- @jaimergp
- @jezdez
- @jugmac00
- @kenodegard
- @ryanskeith
- @scdub made their first contribution in #4965
- @wolfv made their first contribution in #4813
- @dependabot[bot]
- @pre-commit-ci[bot]
Full Changelog: 3.26.1...3.27.0
3.26.1
3.26.0
Enhancements
- Add
pip
toenv-doc make
command so function works correctly (pip
is no longer added by default with the python conda package). (#4633) - Log extra-meta data to make it easier to verify that the right extra-meta data is burned into packages (also helps to co-relate packages and their build-log). The feature was first introduced in #4303 and is now improved via the logging call. (#4901)
- Implement subcommands as conda plugins. (#4921)
Bug fixes
- Fix handling of unknown binaries with newer
(py)lief
versions. (#4900) - Disable
LIEF
logging to remove "Unknown format" warning message. (#4850) - Revert
enable_static
default value inconda_build.config
to remove "Failed to get_static_lib_exports" warning messages. (#4850) - Avoid duplicate logging by not propagating the top-level conda-build logger. (#4903)
- Fix git cloning for repositories with submodules containing local relative paths. (#4914)
Deprecations
- Mark executable invocations (e.g.,
conda-build
) as pending deprecation. (#4921) - Mark module based invocations (e.g.,
python -m conda_build.cli.main_build
) as pending deprecation. (#4921)
Docs
- Update
pkg-spec
docs to mention.conda
package format. (#4633) - Drop unnecessary Jinja package name variables from
variants.rst
docs file. (#4834)
Other
- Drop duplicate
get_summary
call inconda_build.skeletons.pypi
. (#3998) - Fix failing
resolved_packages
test due to recent OpenSSL 3.0.8 release to defaults. (#4912)
Contributors
- @beeankha
- @conda-bot
- @dbast
- @jaimergp
- @jakirkham
- @josegonzalez made their first contribution in #3998
- @katietz
- @kenodegard
- @rfezzani made their first contribution in #4850
- @ryanskeith
- @sven6002
- @dependabot[bot]
- @pre-commit-ci[bot]
3.25.0
Enhancements
- Noarch packages that use virtual packages have the virtual packages added to the hash contents of the package. This facilitates the building of noarch packages multiple times for different platforms with platform specific dependencies. (#4606)
- Add support for
svn
source credentials (svn_username
andsvn_password
). (#4692) - Depend on standalone
conda-index
instead of bundled indexing code. (#4828) - Switch from
setup.py
topyproject.toml
and use Hatchling for our build system. (#4840) - Add Python 3.11 support. (#4852)
Bug fixes
- Ensure
tests/commands
are also run in the presence ofrun_test.*
(#4429) - Require the source when rendering a recipe that uses the
load_file_data
function. (#4817) - Download packages during build into the correct
subdir
folder. (#4832) - Use a unique
subdir
variable name when rebuilding the index for multi-output builds. (#4862)
Deprecations
- Inline
conda index
logic is pending deprecation.conda-build
still providesconda-index
a.k.a.conda index
CLI, but uses standaloneconda-index
during builds. (#4828) - Prefer the standalone conda-index package, instead of
conda-build index
orconda index
, to use faster indexing code. (#4828) - Mark
conda_build.metadata.ns_cfg
as pending deprecation. Useconda_build.get_selectors.get_selectors
instead. (#4837) - Mark
conda_build.config.python2_fs_encode
as pending deprecation. (#4843) - Mark
conda_build.config._ensure_dir
as pending deprecation. Usestdlib
'spathlib.Path.mkdir(exist_ok=True)
oros.makedirs(exist_ok=True)
instead. (#4843)
Other
- Format with
black
and replaced pre-commit'sdarker
hook withblack
. (#4836) - Format with
isort
and add pre-commitisort
hook. (#4836) - Minor code simplification for
conda_build.index.ChannelIndex._ensuredirs
. (#4843) - Enable
xattr
test on macOS. (#4845)
Contributors
- @beeankha
- @conda-bot
- @dholth
- @duncanmmacleod
- @ffirmanff made their first contribution in #4692
- @isuruf
- @jezdez
- @jakirkham
- @jjhelmus
- @kenodegard
- @rishabh11336 made their first contribution in #4782
- @ryanskeith made their first contribution in #4843
- @pre-commit-ci[bot]
3.24.0
Bug fixes
- Fix the failing
git clone
when source has LFS files. (#4318) - Fix many false-positives during the detection of Perl core modules in
conda skeleton cpan
. (#4592) conda skeleton cpan
now correctly adds a C compiler as dependency if the distribution contains an.xs
file. (#4599)- Install downstream packages in correct subdir. (#4763, #4803)
- Update supported Python version in setup.py. (#4804)
Deprecations
- Removed conda <4.13 logic. (#4677)
conda_build.conda_interface.CrossPlatformStLink
is pending deprecation in favor of usingos.stat().st_nlink
. (#4728)- Drop Python 3.7 support. (#4796)
Docs
- Updated broken links to example conda recipes and updated link to the now archived conda-recipes, with additional links to AnacondaRecipes aggregated feedstocks and conda-forge feedstocks. (#4580)
- Replaced two instances of "Anaconda Cloud" with "anaconda.org". (#4719)
Other
- Update test matrix to run tests on all supported Python versions on Linux. Only run tests on lower & upper Python bounds for Windows and macOS. (#4691)
- Re-enable code coverage reporting to
codecov
. (#4767) - Eliminate test setup's manual clone of https://github.com/conda/conda_build_test_recipe in favor of a session fixture. (#4781)
- Use
tomllib
(Python 3.11+) ortomli
for.toml
support. (#4783)
Contributors
- @beeankha
- @conda-bot
- @dbast
- @dholth
- @ernstluring made their first contribution in #4318
- @xileF1337 made their first contribution in #4592
- @jezdez
- @jakirkham
- @johnnynunez made their first contribution in #4804
- @kathatherine
- @kenodegard
- @minrk
- @peetw made their first contribution in #4662
- @sven6002 made their first contribution in #4621
- @tttc3 made their first contribution in #4580
- @dependabot[bot]
- @pre-commit-ci[bot]
3.23.3
Bug fixes
- Change Zstd default compression to 19. (#4663)
- Fix build/host environment activation broken in >=3.23.0,<=3.23.2. (#4665)
- Add
PREFIX/bin
toPATH
on Windows and removePREFIX
root fromPATH
on Unix. (#4665)
Other
- Skip test suite for non-code changes. (#4664)
Contributors
Full Changelog: 3.23.2...3.23.3