Skip to content

Describe algorithm for graph layout#112

Merged
mlange-42 merged 3 commits into
git-bahn:masterfrom
peso:describe-algorithm
Sep 17, 2025
Merged

Describe algorithm for graph layout#112
mlange-42 merged 3 commits into
git-bahn:masterfrom
peso:describe-algorithm

Conversation

@peso

@peso peso commented Sep 16, 2025

Copy link
Copy Markdown
Collaborator

This is a start on documentation of the main algorithm (issue git-bahn/gleisbau#3).

I have been pushing around with the code for some time and I seem to discover more nuances all the time. I think the full algorithm documentation will take a significant amount of time, and therefore it would be more sensible to write it gradually.

The goal of this PR is to describe all the main steps of the algorithm in broad terms.

@mlange-42

Copy link
Copy Markdown
Collaborator

I have been pushing around with the code for some time and I seem to discover more nuances all the time. I think the full algorithm documentation will take a significant amount of time, and therefore it would be more sensible to write it gradually.

Thank you for starting this! Indeed, it is not a simple algorithm to make this work, and there are quite a few edge cases. As this is only a first ther, I would prefer to keep issue git-bahn/gleisbau#3 open for now.

Comment thread src/branch_assignment.md
@peso peso force-pushed the describe-algorithm branch from 6b1b303 to 36e149e Compare September 16, 2025 13:47
@peso

peso commented Sep 16, 2025

Copy link
Copy Markdown
Collaborator Author

I have been pushing around with the code for some time and I seem to discover more nuances all the time. I think the full algorithm documentation will take a significant amount of time, and therefore it would be more sensible to write it gradually.

Thank you for starting this! Indeed, it is not a simple algorithm to make this work, and there are quite a few edge cases. As this is only a first ther, I would prefer to keep issue git-bahn/gleisbau#3 open for now.

Ok. What would you consider the criteria for closing issue git-bahn/gleisbau#3?

I would have closed it and then continue to work on documentation in general: API, algorithm, inline comments, module docs, usage examples, etc. I agree that the algorithm is important to document, but mostly for maintainers, not for end users. They would rather have examples and API docs, and then assume the magic inside GitGraph "just works".

@peso peso changed the title Describe algorithm for graph layout (close #6) Describe algorithm for graph layout (issue #6) Sep 16, 2025
@peso peso changed the title Describe algorithm for graph layout (issue #6) Describe algorithm for graph layout Sep 16, 2025
@mlange-42

Copy link
Copy Markdown
Collaborator

I have been pushing around with the code for some time and I seem to discover more nuances all the time. I think the full algorithm documentation will take a significant amount of time, and therefore it would be more sensible to write it gradually.

Thank you for starting this! Indeed, it is not a simple algorithm to make this work, and there are quite a few edge cases. As this is only a first ther, I would prefer to keep issue git-bahn/gleisbau#3 open for now.

Ok. What would you consider the criteria for closing issue git-bahn/gleisbau#3?

I would have closed it and then continue to work on documentation in general: API, algorithm, inline comments, module docs, usage examples, etc. I agree that the algorithm is important to document, but mostly for maintainers, not for end users. They would rather have examples and API docs, and then assume the magic inside GitGraph "just works".

It looked to me like you would like to document the algorithm in more detail, and there are some TODOs left in the Markdown file.

@mlange-42 mlange-42 merged commit 8e43436 into git-bahn:master Sep 17, 2025
2 checks passed
@peso peso deleted the describe-algorithm branch September 18, 2025 04:59
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.

2 participants