2024 年 3 月发布
·6 分钟阅读
2024 年 3 月的发布包括 conda 和 conda-build 的更新!🎉 这些都已发布到 main 和 conda-forge。
Conda 中的变更 24.3.0
要更新 conda,请运行
conda install -n base conda=24.3.0
✨ 新特性 ✨
- 如果
repodata.json引发JSONDecodeError,则显示无法解码的响应的前几个字符。 - 更新
conda.gateways.subprocess.subprocess_call以使用text=True,避免手动编码/解码。 - 添加一个新的插件钩子,使插件作者能够定义新的设置。
- 优化模块导入以加速
conda activate。 - 将
conda env export移动到conda export,并将旧命令别名为新命令。 - 在运行
conda install --revision <idx>时报告进度。 - 添加
conda.testing.tmp_channelpytest fixture 以创建用于测试的临时本地通道。 - 在发布期间将稳定的发布工件上传到 GitHub 发布。
🔧 已修复的问题 🔧
- 当启用 conda 调试日志时,在
KeyboardInterrupt上打印回溯信息,而不是引发另一个AttributeError异常。 - 将整数通道通知 ID 解析为
str而不是引发异常。 - 添加对
zstandard的直接运行时依赖,以便在下载repodata.json.zst时使用。 - 如果
repodata.json.zst无法解压缩为zstandard,则回退到repodata.json。 - 当 conda 未激活时,
conda rename命令不再抛出错误。 - 在大多数 4xx 错误代码上,从
repodata.json.zst回退到repodata.json。 - 修复获取 repodata 时日志处理导致的资源过度使用。
- 重新启用
--subdir和--platform标志,使其可用于conda env create命令。 - 修复 Windows 上的
__archspec虚拟软件包以返回微架构,而不是默认的x86_64。
🌅 标记为 弃用 的内容 🌅
- 停止使用自定义 docker 镜像。请改用 Anaconda Inc. 或 conda-forge 提供的镜像。
- 将
conda.testing.integration.make_temp_channel标记为即将弃用。请改用conda.testing.tmp_channelfixture。 - 将
conda.testing.integration.running_a_python_capable_of_unicode_subprocessing标记为即将弃用。 - 将
conda.testing.integration.set_tmpdir标记为即将弃用。请改用tmp_path、conda.testing.path_factory或conda.testing.tmp_env。 - 将
conda.testing.integration._get_temp_prefix标记为即将弃用。请改用tmp_path、conda.testing.path_factory或conda.testing.tmp_env。 - 将
conda.testing.integration.make_temp_prefix标记为即将弃用。请改用tmp_path、conda.testing.path_factory或conda.testing.tmp_env。 - 将
conda.testing.integration.FORCE_temp_prefix标记为即将弃用。请改用tmp_path、conda.testing.path_factory或conda.testing.tmp_env。 - 将
conda.testing.integration.create_temp_location标记为即将弃用。请改用tmp_path或conda.testing.path_factory。 - 将
conda.testing.integration.tempdir标记为即将弃用。请改用tmp_path或conda.testing.path_factory。 - 将
conda.testing.integration.reload_config标记为即将弃用。请改用conda.base.context.reset_context。 - 移除
conda.export.handle_proxy_407。 - 移除 vendored
conda._vendor.boltons。请改用boltons包。 - 移除
conda.auxlib.packaging。请改用现代构建系统;有关更多详细信息,请参阅 https://packaging.pythonlang.cn/en/latest/tutorials/packaging-projects#creating-pyproject-toml。 - 移除
conda env create --force。请改用conda env create --yes。 - 移除
conda info PACKAGE。请改用conda search PACKAGE --info。 - 移除
conda.core.subdir_data.fetch_repodata_remote_request。请改用conda.core.subdir_data.SubdirData.repo_fetch.fetch_latest_parsed。 - 移除
conda.exports.memoized。请改用functools.lru_cache。 - 移除
conda.gateways.disk.read._digest_path。请改用conda.gateways.disk.read.compute_sum。 - 移除
conda.gateways.disk.read.compute_md5sum。请改用conda.gateways.disk.read.compute_sum(path, "md5")。 - 移除
conda.gateways.disk.read.compute_sha256sum。请改用conda.gateways.disk.read.compute_sum(path, "sha256")。 - 移除
conda.instructions.PREFIX。 - 移除
conda.instructions.PREFIX_CMD。 - 移除
conda.testing.encode_for_env_var。 - 移除
conda.testing.conda_check_versions_aligned。 - 移除
conda.testing.helpers.run_inprocess_conda_command。请改用conda.testing.tmp_env。 - 移除
conda.testing.helpers.capture_json_with_argv。 - 移除
conda.testing.integration.get_conda_list_tuple。请改用conda.core.prefix_data.PrefixData.get。 - 移除
conda.utils.md5_file。请改用conda.gateways.disk.read.compute_sum(path, "md5")。 - 移除
conda.utils.hashsum_file。请改用conda.gateways.disk.read.compute_sum。 - 移除
conda.utils.safe_open。请改用open。 - 移除
python -m conda_env。请改用conda env或python -m conda env。 - 移除
conda_env.env.load_from_directory。 - 移除
conda_env.pip_util.get_pip_version。 - 移除
conda_env.pip_util.PipPackage。 - 移除
conda_env.pip_util.installed。 - 移除
conda_env.pip_util._canonicalize_name。 - 移除
conda_env.pip_util.add_pip_installed。 - 将
conda.base.context.Context.conda_exe的弃用推迟到conda 24.9。 - 将
conda.testing.integration.run_command的弃用推迟到conda 25.3。 - 将从可执行文件加载子命令的弃用推迟到
conda 25.3。
📄 文档中的新特性 📄
- 更新 Miniconda 的导航链接。
Conda-Build 中的变更 24.3.0
要更新 conda-build,请运行
conda install -n base conda-build=24.3.0
✨ 新特性 ✨
- 添加对
LIEF=0.14的兼容性。 - 在
msvc_env_cmd中,当 bits 为 "arm64" 时,添加一个检查以打印额外的警告并返回空字符串。
🔧 已修复的问题 🔧
- 修复在变体哈希输入中识别
stdlib的问题。
🌅 标记为 弃用 的内容 🌅
- 将
conda_build.bdist_conda模块标记为即将弃用。 - 将
conda_build.build.have_prefix_files标记为已弃用。 - 将
conda_build.conda_interface.handle_proxy_407标记为已弃用。由conda.gateways.connection.session.CondaSession处理。 - 将
conda_build.conda_interface.hashsum_file标记为已弃用。请改用conda.gateways.disk.read.compute_sum。 - 将
conda_build.conda_interface.md5_file标记为已弃用。请改用conda.gateways.disk.read.compute_sum(path, 'md5')。 - 将
conda_build.environ.PREFIX_ACTION标记为已弃用。 - 将
conda_build.environ.LINK_ACTION标记为已弃用。 - 将
conda_build.environ.cache_actions标记为已弃用。 - 将
conda_build.index.DummyExecutor标记为已弃用。 - 将
conda_build.index.MAX_THREADS_DEFAULT标记为已弃用。 - 将
conda_build.index.LOCK_TIMEOUT_SECS标记为已弃用。 - 将
conda_build.index.LOCKFILE_NAME标记为已弃用。 - 将
conda_build.api.get_output_file_path标记为已弃用。请改用conda_build.api.get_output_file_paths。 - 将
conda_build.environ.Environment标记为已弃用。请改用conda.core.prefix_data.PrefixData。 - 将
conda_build.conda_interface.get_version_from_git_tag标记为已弃用。请改用conda_build.environ.get_version_from_git_tag。 - 重命名
conda_build.environ.create_env('specs_or_actions' -> 'specs_or_precs')。 - 重命名
conda_build.environ._execute_actions('actions' -> 'precs')。 - 重命名
conda_build.environ._display_actions('actions' -> 'precs')。 - 重命名
conda_build.inspect.check_install('platform' -> 'subdir')。 - 重命名
conda_build.render.execute_download_actions('actions' -> 'precs')。 - 重命名
conda_build.render.get_upstream_pins('actions' -> 'precs')。 - 移除
conda_build.cli.main_render.execute(print_results)。 - 移除
conda_build.conda_interface.Dist。 - 移除
conda_build.conda_interface.display_actions。 - 移除
conda_build.conda_interface.execute_actions。 - 移除
conda_build.conda_interface.execute_plan。 - 移除
conda_build.conda_interface.install_actions。 - 移除
conda_build.conda_interface.linked。 - 移除
conda_build.conda_interface.linked_data。 - 移除
conda_build.conda_interface.package_cache。 - 移除
conda_build.environ.get_install_actions。请改用conda_build.environ.get_package_records。 - 移除
conda_build.index._determine_namespace。 - 移除
conda_build.index._make_seconds。 - 移除
conda_build.index.REPODATA_VERSION。 - 移除
conda_build.index.CHANNELDATA_VERSION。 - 移除
conda_build.index.REPODATA_JSON_FN。 - 移除
conda_build.index.REPODATA_FROM_PKGS_JSON_FN。 - 移除
conda_build.index.CHANNELDATA_FIELDS。 - 移除
conda_build.index._clear_newline_chars。 - 移除
conda_build.index._get_jinja2_environment。 - 移除
conda_build.index._maybe_write。 - 移除
conda_build.index._make_build_string。 - 移除
conda_build.index._warn_on_missing_dependencies。 - 移除
conda_build.index._cache_post_install_details。 - 移除
conda_build.index._cache_recipe。 - 移除
conda_build.index._cache_run_exports。 - 移除
conda_build.index._cache_icon。 - 移除
conda_build.index._make_subdir_index_html。 - 移除
conda_build.index._make_channeldata_index_html。 - 移除
conda_build.index._get_source_repo_git_info。 - 移除
conda_build.index._cache_info_file。 - 移除
conda_build.index._alternate_file_extension。 - 移除
conda_build.index._get_resolve_object。 - 移除
conda_build.index._get_newest_versions。 - 移除
conda_build.index._add_missing_deps。 - 移除
conda_build.index._add_prev_ver_for_features。 - 移除
conda_build.index._shard_newest_packages。 - 移除
conda_build.index._build_current_repodata。 - 移除
conda_build.index.ChannelIndex。 - 移除
conda_build.inspect.check_install('prepend')。 - 移除
conda_build.inspect.check_install('minimal_hint')。 - 移除
conda_build.noarch_python.ISWIN。请改用conda_build.utils.on_win。 - 移除
conda_build.noarch_python._force_dir。请改用os.makedirs(exist_ok=True)。 - 移除
conda_build.noarch_python._error_exit。 - 移除
conda_build.render.actions_to_pins。 - 移除
conda_build.utils.linked_data_no_multichannels。 - 推迟
conda_build.index.channel_data弃用。
📄 文档中的新特性 📄
- 更新关于将 conda-build 安装到 base 环境的建议。
我们 ❤️ 我们的社区
在这个发布周期中,我们总共有 2 位新的贡献者;感谢我们所有的开源社区成员,感谢他们帮助使这些改进成为可能。
- @zklaus 在 conda#13579 中做出了他们的首次贡献
- @finnagin 在 conda-build#4867 中做出了他们的首次贡献
如果您有任何想法或想帮助改进任何 conda 社区项目,我们非常欢迎新的(和回来的)贡献者! 😄
