Skip to content

Conversation

@LalatenduMohanty
Copy link
Member

@LalatenduMohanty LalatenduMohanty commented Dec 14, 2025

Add comprehensive glossary with ~45 terms used across Fromager code and docs.
Also added bootstrap-vs-build.rst doc.

CLoses #883

@LalatenduMohanty LalatenduMohanty requested a review from a team as a code owner December 14, 2025 12:33
@LalatenduMohanty LalatenduMohanty changed the title docs(glossary): add glossary defining key Fromager terms docs: add glossary and bootstrap-vs-build docs Dec 14, 2025
Add comprehensive glossary with ~45 terms used across Fromager code and docs.
 Also added bootstrap-vs-build.rst doc.

CLoses python-wheel-build#883

Signed-off-by: Lalatendu Mohanty <lmohanty@redhat.com>
Copy link
Member

Choose a reason for hiding this comment

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

I think you said that we don't need this.

@@ -0,0 +1,109 @@
Bootstrap vs Build
Copy link
Member

Choose a reason for hiding this comment

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

Some of this is covered in using.rst, too. We should make sure we're not duplicating too much information (that page could link here, for example).


.. code-block:: text

fromager bootstrap numpy
Copy link
Member

Choose a reason for hiding this comment

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

I don't know how pedantic we want to be about making this set of steps accurate for a concept guide. If we want 100% accuracy, then we need a step after "download source" to extract the build dependencies and then steps to bootstrap all of those recursively.

Relationship
------------

Bootstrap uses build internally:
Copy link
Member

Choose a reason for hiding this comment

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

It doesn't, though. It runs some of the same steps, but in a completely different way.

└── Creates wheel

The ``build-sequence`` command bridges these modes by reading a ``build-order.json``
file (produced by bootstrap) and calling build for each package in order.
Copy link
Member

Choose a reason for hiding this comment

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

We should mention build-parallel here, too.

Stored in ``graph.json``. See :doc:`/files` and
:doc:`/how-tos/graph-commands/index`.

dependency node
Copy link
Member

Choose a reason for hiding this comment

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

Same comment as about edges.

The normalized form of a Python package name, computed using
``packaging.utils.canonicalize_name()``. All letters are lowercase and runs of
hyphens, underscores, and periods are replaced with a single hyphen (e.g.,
``My_Package`` becomes ``my-package``). See :ref:`canonical-distribution-names`.
Copy link
Member

Choose a reason for hiding this comment

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

This should link to override name.

A variant of :term:`canonical name` where hyphens are replaced with underscores
(e.g., ``my-package`` becomes ``my_package``). Used for settings files, patch
directories, and :term:`override plugins <override plugin>` because Python
module names cannot contain hyphens. See :ref:`canonical-distribution-names`.
Copy link
Member

Choose a reason for hiding this comment

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

This should link to the canonicalize command.

A local HTTP server that serves built :term:`wheels <wheel>` during
:term:`bootstrap`. Fromager automatically starts this server to provide
dependencies to ``pip`` during builds, ensuring only locally-built wheels
are used. Implements the :term:`Simple API`.
Copy link
Member

Choose a reason for hiding this comment

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

This should link to package index.

dependencies to ``pip`` during builds, ensuring only locally-built wheels
are used. Implements the :term:`Simple API`.

work context
Copy link
Member

Choose a reason for hiding this comment

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

This is really only used internally, so we probably don't need it.

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.

Add a glossary doc

2 participants