Two small defects in the build configuration, both found while porting this repo's scaffold into the new lecture-python-programming.ml edition (QuantEcon/lecture-python-programming.ml#6). Neither breaks the build today; the first is a latent failure worth getting ahead of.
1. environment.yml names the conda channel default, not defaults
default is not a conda channel. Conda adds it as a literal channel name and then resolves the packages from defaults, which it still adds implicitly — and warns about doing so:
Adding channel 'default'
[command]/home/runner/miniconda3/condabin/conda config --add channels default
##[warning]The 'defaults' channel might have been added implicitly. If this is intentional, add 'defaults' to the 'channels' list. Otherwise, consider setting 'conda-remove-defaults' to 'true'.
So the environment resolves by accident. Conda is deprecating the implicit-defaults behaviour, and when it goes the build fails to resolve anything.
This affects three editions — this repo, lecture-python-programming.fr and lecture-python-programming.fa — all of which carry - default. lecture-python-programming.zh-cn already has - defaults and is unaffected, so the corrected form is already proven in the fleet.
The fix is one word in environment.yml.
2. lectures/_toc.yml line 39 has a trailing space
The entry reads - file: workspace rather than - file: workspace. This is harmless in practice — YAML strips trailing whitespace from plain scalars, so both jb build and any tooling reading the file see workspace — but it propagates verbatim into every translation edition, since action-translation copies _toc.yml from source as-is. It surfaced as a review comment on the downstream PR, where fixing it locally would only have created drift against this repo.
Worth correcting here so it stops being re-copied.
Two small defects in the build configuration, both found while porting this repo's scaffold into the new
lecture-python-programming.mledition (QuantEcon/lecture-python-programming.ml#6). Neither breaks the build today; the first is a latent failure worth getting ahead of.1.
environment.ymlnames the conda channeldefault, notdefaultsdefaultis not a conda channel. Conda adds it as a literal channel name and then resolves the packages fromdefaults, which it still adds implicitly — and warns about doing so:So the environment resolves by accident. Conda is deprecating the implicit-
defaultsbehaviour, and when it goes the build fails to resolve anything.This affects three editions — this repo,
lecture-python-programming.frandlecture-python-programming.fa— all of which carry- default.lecture-python-programming.zh-cnalready has- defaultsand is unaffected, so the corrected form is already proven in the fleet.The fix is one word in
environment.yml.2.
lectures/_toc.ymlline 39 has a trailing spaceThe entry reads
- file: workspacerather than- file: workspace. This is harmless in practice — YAML strips trailing whitespace from plain scalars, so bothjb buildand any tooling reading the file seeworkspace— but it propagates verbatim into every translation edition, sinceaction-translationcopies_toc.ymlfrom source as-is. It surfaced as a review comment on the downstream PR, where fixing it locally would only have created drift against this repo.Worth correcting here so it stops being re-copied.