Skip to content

Extract Windows build how-to from the Knowledge Base#2792

Merged
jaimergp merged 11 commits intoconda-forge:mainfrom
pb01ka:win-how-to
Apr 7, 2026
Merged

Extract Windows build how-to from the Knowledge Base#2792
jaimergp merged 11 commits intoconda-forge:mainfrom
pb01ka:win-how-to

Conversation

@pb01ka
Copy link
Copy Markdown
Contributor

@pb01ka pb01ka commented Mar 31, 2026

PR Checklist:

  • note any issues closed by this PR with closing keywords
  • if you are adding a new page under docs/ or community/, you have added it to the sidebar in the corresponding _sidebar.json file
  • put any other relevant information below

Summary

As part of the ongoing Diataxis restructuring of the conda-forge docs, this PR extracts the Windows-specific packaging content from the monolithic Knowledge Base page into a focused, standalone how-to guide.

Changes

  • New file docs/how-to/advanced/windows-builds.mdx: contains the full content of the following sections, moved verbatim from knowledge_base.mdx:
    • Local testing
    • Notes on native code
    • Tips & tricks for CMD/Batch syntax
  • Updated docs/maintainer/knowledge_base.mdx: the moved sections are replaced with a short redirect pointing to the new page (How-to > Advanced > Particularities on Windows), consistent with the pattern already used for the CMake how-to.

Motivation

Addresses Quansight-Labs/conda-ecosystem-sta-mgmt#123

No content was modified. This is a pure move.

@pb01ka pb01ka requested a review from a team as a code owner March 31, 2026 09:14
@netlify
Copy link
Copy Markdown

netlify bot commented Mar 31, 2026

Deploy Preview for conda-forge-previews ready!

Name Link
🔨 Latest commit 09e8438
🔍 Latest deploy log https://app.netlify.com/projects/conda-forge-previews/deploys/69d10c4e5c248d00084509e2
😎 Deploy Preview https://deploy-preview-2792--conda-forge-previews.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 73
Accessibility: 96
Best Practices: 100
SEO: 89
PWA: -
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

@pb01ka
Copy link
Copy Markdown
Contributor Author

pb01ka commented Mar 31, 2026

The link checker job is failing due to some network error. I think its unrelated to the changes I made here.

@@ -0,0 +1,258 @@
---
title: 'Particularities on Windows'
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TBH, this doesn't sound like a particularly good title for a "how-to" :-). But unfortunately, I can't think of anything better immediately.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I changed the title, to Build packages on Windows. Please let me know if it makes sense.

<a id="particularities-on-windows"></a>

This document presents conda-forge and conda-build information and examples
while building on Windows.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
while building on Windows.
related to building on Windows.

Comment on lines +16 to +22
The first thing that you should know is that you can locally test Windows
builds of your packages even if you don't own a Windows machine. Microsoft
makes available free, official Windows virtual machines (VMs) [at this website](https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/). If you
are unfamiliar with VM systems or have trouble installing Microsoft's VMs, please
use a general web search to explore — while these topics are beyond the
scope of this documentation, there are ample discussions on them on the broader
Internet.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The link no longer works. Could you look around if it's still possible? If not, we should probably replace this with an appropriate note.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed the link and mentioned that its Windows virtual machines is now free trial based. Leaving upon the users to find their source in order to download that free trial version is better IMO.


The following feedstocks are examples of this build structure deployed:

- [libpng](https://github.com/conda-forge/libpng-feedstock/blob/main/recipe/build.bat)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one's using Ninja now.

Comment on lines +255 to +256
- You can [free trial Windows VMs from Microsoft](https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/).
Set one up with your favorite virtualization solution to debug your CMD syntax.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here.

Comment on lines +1 to +3
---
title: 'Build packages on Windows'
---
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
---
title: 'Build packages on Windows'
---
# Build packages on Windows

Comment on lines +27 to +28
<a id="executing-a-build"></a>

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<a id="executing-a-build"></a>

Comment on lines +35 to +36
<a id="testing-a-local-build"></a>

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<a id="testing-a-local-build"></a>

@jaimergp
Copy link
Copy Markdown
Member

jaimergp commented Apr 1, 2026

I didn't read the whole thing because I noticed that it may not be a good fit for the how-to format. It's very long, and it doesn't really have a concrete goal in mind. I do agree we need to move it from KB though. Maybe a Windows subdirectory with several smaller howto's?

Also, please remove the redundant <a id="..."> anchors if they match the accompanying header.

@pb01ka
Copy link
Copy Markdown
Contributor Author

pb01ka commented Apr 1, 2026

Maybe a Windows subdirectory with several smaller howto's?

Makes sense to me. We can group similar sections and put it under Windows directory in a separate .md/.mdx file. I will do it in this PR itself.

@pb01ka
Copy link
Copy Markdown
Contributor Author

pb01ka commented Apr 1, 2026

@jaimergp I addressed your reviews and also split the how-to for Windows into multiple items under "Building Packages For Windows".

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there's a way to autogenerate these pages so we don't have to manually update this file. You can rename this file to windows.mdx (so it matches the directory) and then use this type of snippet:

https://github.com/conda-forge/conda-forge.github.io/blob/main/docs/how-to/basics.mdx?plain=1

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one in particular feels more like an explanation at times to me, but it's also a how-to of sorts. No need to change anything, just saying that it's mixed media and maybe we will get back to it at some point.

@pb01ka
Copy link
Copy Markdown
Contributor Author

pb01ka commented Apr 2, 2026

The Check links job is failing due to network issues (unrelated to my latest changes).

Also, @jaimergp I have addressed your latest round of reviews.

scope of this documentation, there are ample discussions on them on the broader
Internet.

To bootstrap a conda environment and install `conda-build`, consider
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To bootstrap a conda environment and install `conda-build`, consider
To bootstrap a conda environment, consider

Comment on lines +20 to +25
Because we're using `conda-build` directly instead of `build-locally.py`,
we can use the `local` channel:

```default
conda create -n my-new-env -c local my-package
```
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is no longer correct (since we aren't using conda-build directly).

@pb01ka
Copy link
Copy Markdown
Contributor Author

pb01ka commented Apr 2, 2026

@mgorny I have addressed your reviews.

cd build

:: Configure using the CMakeFiles
cmake -G "NMake Makefiles" ^
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't we need to pass %CMAKE_ARGS% here?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think, %CMAKE_ARGS% already covers, -DCMAKE_INSTALL_PREFIX and -DCMAKE_PREFIX_PATH, so I removed those two flags and passed %CMAKE_ARGS% instead.

I hope this addresses your review.

Copy link
Copy Markdown
Contributor

@mgorny mgorny left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just noticed we can update the highlighting here. Ofc, it's fine to leave it as-is and do as a followup.

pb01ka added 9 commits April 3, 2026 23:00
- Add windows-builds.md as an index page linking to the three
  Windows-specific sub-guides
- Improve page titles for cmd-batch-syntax, local-testing, and
  notes-on-native-code to be more descriptive
- Update sidebar label from "Build on Windows" to "Building packages for Windows" and register only the index page
- Update cross-references in infrastructure.mdx and knowledge_base.mdx to point to the new page paths and titles
Rename `how-to/advanced/windows-builds.md` to `windows.mdx` and use `DocCardList` to auto-generate the child page links, matching the pattern used by other index pages (e.g. `basics.mdx`). Update the sidebar and knowledge base cross-reference accordingly.
@pb01ka
Copy link
Copy Markdown
Contributor Author

pb01ka commented Apr 3, 2026

@jaimergp This is good to go if my review response seems ok to you.

Co-authored-by: Michał Górny <mgorny@gentoo.org>
@pb01ka
Copy link
Copy Markdown
Contributor Author

pb01ka commented Apr 4, 2026

@mgorny I have addressed your latest review.

cc: @jaimergp

@jaimergp jaimergp merged commit e99137e into conda-forge:main Apr 7, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants