Skip to content

Let a module built on another one render on a machine with no git identity - #326

Draft
NejcS wants to merge 1 commit into
mainfrom
fix/clone-repo-git-identity
Draft

NejcS wants to merge 1 commit into
mainfrom
fix/clone-repo-git-identity

Conversation

@NejcS

@NejcS NejcS commented Sep 29, 2026

Copy link
Copy Markdown
Contributor

Renders of a project that has one module built on another now work on a machine that has no git identity set, such as a CI runner.

What happens now

A module that is built on another one starts as a copy of that module's repository. The renderer then makes the first commit into that copy. Until now that commit failed on a machine where git has no name and no email to use, and the render stopped before it wrote any code. Now the copy gets the same identity that a new module repository already gets, and the render goes on.

A name and an email that are already set are not changed.

Who saw this

Only projects that have a module built on another one. A module that starts from nothing already set an identity, so single-module projects were never affected. The error was fatal: empty ident name, reported as CODEPLAIN-10 in Sentry, seen on releases 0.3.4 to 0.3.10.

Test

A new test copies a repository and commits into the copy while git is not allowed to invent an identity. It fails without this change and passes with it.

Nothing needed first

No migration and no configuration change. Renders that worked before keep working.

A module that is built on another one starts as a clone of that module's repository.
A clone carries no identity of its own, so the first commit into it relies on one the
machine provides. On a machine that cannot supply one the render stops at that commit
with "empty ident name", before it writes a single functionality.

A module that starts from nothing already sets an identity on its repository. Cloning
did not, which is why this only shows up once a project has a module built on another.

The fix applies the same identity that a fresh module repository gets. A name and an
email that are already configured are left alone.

This branch has not been deployed

No deployments
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.

1 participant