You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
25.7.0 (2025-08-01)
Enhancements
Ensure conda does not allow for mixing input file types. (#14684 via #14725)
Add "environment consistency" health check to conda doctor. (#14715 via #14799)
Add support for explicit environment specification files as a supported environment spec according to CEP-23, bringing parity between conda env and conda create/install/update. (#14820)
Add an experimental data model to represent an environment. (#14870)
Add config option environment_specifier and CLI argument (--environment-specifier, --env-spec) to allow users to select which environment specifier plugin to use. (#14877)
Enhance conda export command now supports plugin-based architecture with multiple output formats:
Add automatic export format detection based on filename patterns (e.g., environment.yaml, explicit.txt, requirements.txt) (#14886)
Add export format aliases for convenience (yaml, yml, json, reqs, txt) (#14886)
Introduce new dataclass conda.models.environment.EnvironmentConfig to represent Environment settings, a subset of context settings that impact environment creation and management. (#14913, #15026)
Allow env spec plugins to opt-out of auto detection. (#14914)
Handle exceptions coming from environment spec plugins can_handle functions. (#14916)
The conda package is included when cloning an environment. (#14917 via #14919)
Lazily evaluate CLI options originating from the plugin manager. (#14925)
Improve the error message that appears when duplicate records are found in the prefix. (#14927)
Add virtual packages field to the Environment model. (#14979)
Add ability to create EnvironmentConfig instances from a given context. (#14986)
Add CondaPlugin base class with name normalization. (#15002)
Enhance LazyChoicesAction with dynamic choices property and caching for improved CLI argument validation and help text generation. (#15046)
Bug fixes
Set default value for version parameter when build is set in MatchSpec.conda_build_form(). (#11200 via #15025)
Improve conda notices cache handling for better user experience. (#14229)
Improve type hints and error handling in conda installer functions. (#14820)
Fix conda export --override-channels behavior to properly include installed packages' channels (unless --ignore-channels is also provided), restoring the original intended functionality and improving environment reproducibility. (#15048 via #14886)
Fix tmp_channel fixture to also include dependencies in the temporary channel. (#14924)
Fix unsetting environment variables when envvars_force_uppercase = False. (#14934 via #14942)
Respect --platform option on subsequent environment operations after initial conda env create call. (#14949 via #14956)
Apply case normalization to all activation environment variables. (#14960)
Separate requirements.txt and explicit environment specs. (#14684 via #14963)
Fix EnvironmentConfig.aggressive_update_packages type. It is a list of strings, not a bool. (#14982)
Fix EnvironmentConfig.channel_settings type. It is a list of dicts, not a dict. (#14984)
Ensure file types can not be mixed in the conda install command. (#14999)
ProxyError now accepts an optional custom message parameter to provide more specific error details. (#14945)
Deprecations
Mark monkey-patching json to support frozendict and obj.to_json() as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.CondaJSONEncoder instead. (#14709)
Mark conda.auxlib.entity.EntityEncoder as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.CondaJSONEncoder instead. (#14709)
Mark conda.auxlib.logz.DumpEncoder as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.CondaJSONEncoder instead. (#14709)
Mark conda.auxlib.logz._DUMPS as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.CondaJSONEncoder(sort_keys=True).encode instead. (#14709)
Mark conda.auxlib.logz.jsondumps as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.CondaJSONEncoder(sort_keys=True).encode instead. (#14709)
Mark conda.common.serialize.EntityEncoder as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.CondaJSONEncoder instead. (#14709)
Mark conda.common.serialize.json_load as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.loads(sort_keys=True) instead. (#14709)
Mark conda.common.serialize.json_dump as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.dumps(sort_keys=True) instead. (#14709)
Mark conda.exports.EntityEncoder as pending deprecation, to be removed in 26.9. Use conda.common.serialize.json.CondaJSONEncoder instead. (#14709)
Mark conda.env.specs.binstar.BinstarSpec.environment as pending deprecation in 26.9. Use conda.env.specs.binstar.BinstarSpec.env instead. (#14397)
Mark conda.env.specs.requirements.RequirementsSpec.environment as pending deprecation in 26.9. Use conda.env.specs.requirements.RequirementsSpec.env instead. (#14397)
Mark conda.env.specs.yaml_file.YamlFileSpec.environment as pending deprecation in 26.9. Use conda.env.specs.yaml_file.YamlFileSpec.env instead. (#14397)
Mark conda.env.env.Environment as pending deprecation in 26.9. Use conda.env.env.EnvironmentYaml instead. (#14981)
Mark conda.cli.common.arg2spec as pending deprecation, to be removed in 26.9. (#15028)
Mark conda.cli.common.specs_from_args keyword argument json as pending deprecation, to be removed in 26.9. (#15028)
Mark conda.gateways.disk.create.create_application_entry_point as pending deprecation, to be removed in 26.9. (#15062)
Mark conda.gateways.disk.create.ProgressFileWrapper as pending deprecation, to be removed in 26.9. (#15062)
Mark conda.gateways.disk.create.create_fake_executable_softlink as pending deprecation, to be removed in 26.9. (#15062)
Postpone conda.env.specs.binstar deprecation to 26.9. (#15062)
Docs
Add documentation for conda export command with examples and format specifications. (#14886)
Add environment exporter plugin development guide with examples and best practices. (#14886)
Update environment management documentation to highlight new export capabilities. (#14886)
Update cheatsheet with new export formats and commands. (#14886)
Enhance command comparison table to include new export functionality. (#14886)
Add glossary entries for CEP 23, environment exporters, explicit format, and requirements format. (#14886)