-
-
Notifications
You must be signed in to change notification settings - Fork 0
fix(docs): render the repository-structure tree as a tree #95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,44 +1,59 @@ | ||
| # Clone the repository | ||
|
|
||
| git clone <https://github.com/hyperpolymath/hesiod-dns-map.git> cd | ||
| hesiod-dns-map | ||
| git clone https://github.com/hyperpolymath/hesiod-dns-map.git | ||
| cd hesiod-dns-map | ||
|
|
||
| # Using Nix (recommended for reproducibility) | ||
| # Using Guix (recommended for reproducibility) | ||
|
|
||
| nix develop | ||
| guix develop | ||
|
|
||
| # Or using toolbox/distrobox | ||
|
|
||
| toolbox create hesiod-dns-map-dev toolbox enter hesiod-dns-map-dev \# | ||
| Install dependencies manually | ||
| toolbox create hesiod-dns-map-dev | ||
| toolbox enter hesiod-dns-map-dev | ||
|
Comment on lines
+12
to
+13
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win 🔎 Supported by static analysis🏁 Script executed: printf '%s\n' '--- CONTRIBUTING setup ---'
sed -n '1,35p' .github/CONTRIBUTING.md
printf '%s\n' '--- QUICKSTART setup ---'
sed -n '1,45p' QUICKSTART-DEV.adoc
printf '%s\n' '--- setup and tasks ---'
sed -n '90,165p' setup.sh
find . -maxdepth 2 -type f \( -iname 'justfile' -o -iname 'Justfile' -o -iname '*setup*' \) -print
rg -n 'setup-dev|^check:|^test:|npm install|cargo|guix|toolbox' . --glob '!**/.git/**' | head -180Repository: hyperpolymath/hesiod-dns-map Length of output: 7789 🏁 Script executed: printf '%s\n' '--- CONTRIBUTING ---'
sed -n '1,28p' .github/CONTRIBUTING.md
printf '%s\n' '--- QUICKSTART relevant section ---'
sed -n '12,42p' QUICKSTART-DEV.adoc
printf '%s\n' '--- Justfile ---'
cat -n Justfile
printf '%s\n' '--- setup.sh setup-dev logic ---'
sed -n '185,225p' setup.sh
printf '%s\n' '--- dependency and container configuration ---'
find . -maxdepth 2 -type f \( -name 'Cargo.toml' -o -name 'Cargo.lock' -o -name 'Containerfile*' -o -iname '*toolbox*' -o -iname '*distrobox*' -o -name 'guix.scm' -o -name 'flake.nix' \) -print
rg -n -i 'setup-dev|install depend|cargo fetch|cargo build|toolbox|distrobox|dependencies' --glob '!**/.git/**' --glob '!target/**' .Repository: hyperpolymath/hesiod-dns-map Length of output: 14317 Complete the Toolbox setup path. After 🧰 Tools🪛 LanguageTool[grammar] ~12-~12: There seems to be a noun/verb agreement error. Did you mean “creates” or “created”? (SINGULAR_NOUN_VERB_AGREEMENT) 🤖 Prompt for AI Agents |
||
| # Install dependencies manually | ||
|
|
||
| # Verify setup | ||
|
|
||
| just check \# or: cargo check / mix compile / etc. just test \# Run test | ||
| suite | ||
|
|
||
|
|
||
| ### Repository Structure | ||
|
|
||
| hesiod-dns-map/ ├── src/ \# Source code (Perimeter 1-2) ├── lib/ \# | ||
| Library code (Perimeter 1-2) ├── extensions/ \# Extensions (Perimeter 2) | ||
| ├── plugins/ \# Plugins (Perimeter 2) ├── tools/ \# Tooling (Perimeter | ||
| 2) ├── docs/ \# Documentation (Perimeter 3) │ ├── architecture/ \# ADRs, | ||
| specs (Perimeter 2) │ └── proposals/ \# RFCs (Perimeter 3) ├── examples/ | ||
| \# Examples (Perimeter 3) ├── spec/ \# Spec tests (Perimeter 3) ├── | ||
| tests/ \# Test suite (Perimeter 2-3) ├── .well-known/ \# Protocol files | ||
| (Perimeter 1-3) ├── .github/ \# GitHub config (Perimeter 1) │ ├── | ||
| ISSUE_TEMPLATE/ │ └── workflows/ ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md | ||
| ├── CONTRIBUTING.md \# This file ├── GOVERNANCE.md ├── LICENSE ├── | ||
| MAINTAINERS.md ├── README.adoc ├── SECURITY.md ├── flake.nix \# Nix | ||
| flake (Perimeter 1) └── Justfile \# Task runner (Perimeter 1) | ||
|
|
||
| just check # or: cargo check / mix compile / etc. | ||
| just test # Run test suite | ||
|
|
||
|
Comment on lines
+3
to
+20
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win 🔎 Supported by static analysis🏁 Script executed: sed -n '1,35p' .github/CONTRIBUTING.mdRepository: hyperpolymath/hesiod-dns-map Length of output: 1054 Fence the setup commands. The setup sequence is outside a fenced shell block. Markdown renders the 🧰 Tools🪛 LanguageTool[grammar] ~12-~12: There seems to be a noun/verb agreement error. Did you mean “creates” or “created”? (SINGULAR_NOUN_VERB_AGREEMENT) 🪛 markdownlint-cli2 (0.23.2)[warning] 14-14: Headings should be surrounded by blank lines (MD022, blanks-around-headings) 🤖 Prompt for AI Agents |
||
| ### Repository Structure | ||
|
|
||
| ```text | ||
| hesiod-dns-map/ | ||
| ├── src/ # Source code (Perimeter 1-2) | ||
| ├── lib/ # Library code (Perimeter 1-2) | ||
| ├── extensions/ # Extensions (Perimeter 2) | ||
| ├── plugins/ # Plugins (Perimeter 2) | ||
| ├── tools/ # Tooling (Perimeter 2) | ||
| ├── docs/ # Documentation (Perimeter 3) | ||
| │ ├── architecture/ # ADRs, specs (Perimeter 2) | ||
| │ └── proposals/ # RFCs (Perimeter 3) | ||
| ├── examples/ # Examples (Perimeter 3) | ||
| ├── spec/ # Spec tests (Perimeter 3) | ||
| ├── tests/ # Test suite (Perimeter 2-3) | ||
| ├── .well-known/ # Protocol files (Perimeter 1-3) | ||
| ├── .github/ # GitHub config (Perimeter 1) | ||
| │ ├── CONTRIBUTING.md # This file | ||
| │ ├── ISSUE_TEMPLATE/ | ||
| │ └── workflows/ | ||
| ├── CHANGELOG.md | ||
| ├── CODE_OF_CONDUCT.md | ||
| ├── GOVERNANCE.md | ||
| ├── LICENSE | ||
| ├── MAINTAINERS.md | ||
| ├── README.adoc | ||
| ├── SECURITY.md | ||
| ├── flake.nix # Nix flake (Perimeter 1) | ||
| └── Justfile # Task runner (Perimeter 1) | ||
| ``` | ||
|
|
||
| --- | ||
|
|
||
| ## How to Contribute | ||
| ## How to Contribute | ||
|
|
||
| ### Reporting Bugs | ||
| ### Reporting Bugs | ||
|
|
||
| **Before reporting**: | ||
| 1. Search existing issues | ||
|
|
@@ -55,7 +70,7 @@ flake (Perimeter 1) └── Justfile \# Task runner (Perimeter 1) | |
| - Expected vs actual behaviour | ||
| - Logs, screenshots, or minimal reproduction | ||
|
|
||
| ### Suggesting Features | ||
| ### Suggesting Features | ||
|
|
||
| **Before suggesting**: | ||
| 1. Check the [roadmap](ROADMAP.md) if available | ||
|
|
@@ -71,7 +86,7 @@ flake (Perimeter 1) └── Justfile \# Task runner (Perimeter 1) | |
| - Alternatives considered | ||
| - Which perimeter this affects | ||
|
|
||
| ### Your First Contribution | ||
| ### Your First Contribution | ||
|
|
||
| Look for issues labelled: | ||
|
|
||
|
|
@@ -82,22 +97,25 @@ flake (Perimeter 1) └── Justfile \# Task runner (Perimeter 1) | |
|
|
||
| --- | ||
|
|
||
| ## Development Workflow | ||
| ## Development Workflow | ||
|
|
||
| ### Branch Naming | ||
| ### Branch Naming | ||
|
|
||
| docs/short-description \# Documentation (P3) test/what-added \# Test | ||
| additions (P3) feat/short-description \# New features (P2) | ||
| fix/issue-number-description \# Bug fixes (P2) refactor/what-changed \# | ||
| Code improvements (P2) security/what-fixed \# Security fixes (P1-2) | ||
| docs/short-description # Documentation (P3) test/what-added # Test | ||
| additions (P3) feat/short-description # New features (P2) | ||
| fix/issue-number-description # Bug fixes (P2) refactor/what-changed # | ||
| Code improvements (P2) security/what-fixed # Security fixes (P1-2) | ||
|
Comment on lines
+104
to
+107
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win 🔎 Supported by static analysis🏁 Script executed: sed -n '96,112p' .github/CONTRIBUTING.mdRepository: hyperpolymath/hesiod-dns-map Length of output: 697 Put each branch pattern on its own line in a fenced The current source places multiple patterns on each line and splits 🤖 Prompt for AI Agents |
||
|
|
||
|
|
||
| ### Commit Messages | ||
| ### Commit Messages | ||
|
|
||
| We follow [Conventional Commits](https://www.conventionalcommits.org/): | ||
|
|
||
| (): | ||
| type(scope): description | ||
|
|
||
| Body: what changed and why. | ||
|
|
||
| Footer: issue reference, e.g. Closes #123 | ||
| \[optional body\] | ||
|
|
||
| \[optional footer\] | ||
|
Comment on lines
+114
to
121
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win 🔎 Supported by static analysis🏁 Script executed: sed -n '95,125p' .github/CONTRIBUTING.md
rg -n -i 'conventional|commit|footer|body' . --glob '!**/.git/**' | head -100Repository: hyperpolymath/hesiod-dns-map Length of output: 4051 🏁 Script executed: cat -n .github/CONTRIBUTING.md | sed -n '100,135p'Repository: hyperpolymath/hesiod-dns-map Length of output: 862 Put the Conventional Commit template in a fenced The optional body currently appears after the footer, and the template is not fenced. Use this order: 🤖 Prompt for AI Agents |
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
🔎 Supported by static analysis
🏁 Script executed:
Repository: hyperpolymath/hesiod-dns-map
Length of output: 2660
🏁 Script executed:
Repository: hyperpolymath/hesiod-dns-map
Length of output: 9941
🏁 Script executed:
Repository: hyperpolymath/hesiod-dns-map
Length of output: 8584
🌐 Web query:
GNU Guix manual guix develop guix shell current directory guix.scm💡 Result:
<search_synthesis>
When you run guix shell in a directory containing a guix.scm file, GNU Guix can automatically detect and load it to configure your development environment [1][2][3]. Key behaviors and considerations: Automatic Loading: If you do not specify packages or a manifest on the command line, guix shell searches the current directory and its parent directories for a guix.scm or manifest.scm file [1][2]. If a guix.scm is found, Guix will load it [2][3]. Security Authorization: For security reasons, Guix requires you to explicitly authorize directories before it will automatically load files like guix.scm or manifest.scm from them [2]. If you have not authorized the directory, Guix will report an error and provide instructions on how to add the directory to your authorized list [2]. Behavioral Differences: - Automatic Loading: When guix shell automatically detects and loads a guix.scm, it typically treats the contents as the development dependencies for the project [3]. - Manual Loading (--file): If you manually specify the file using guix shell --file=guix.scm, Guix may treat the file as a package definition to be installed rather than its development dependencies [3]. To achieve the same "development environment" behavior when manually specifying the file, you often need to use the --development flag: guix shell --development --file=guix.scm [3]. Precedence: If both a manifest.scm and a guix.scm exist in the same directory, manifest.scm generally takes precedence [3][4]. Best Practices: - Use guix.scm to define the package itself (similar to how packages are defined in the main Guix repository) [4]. - Use manifest.scm to define a specific set of packages (a "bill of materials") for your environment [4]. - If you want to ensure a specific configuration is used, explicitly invoking guix shell with the desired flags is often more predictable than relying on automatic detection [3].
</search_synthesis>
<source_evidence>
Citations:
Align the documented Guix command.
.github/CONTRIBUTING.mdrecommendsguix develop, whileQUICKSTART-DEV.adocpresentsguix shellas the preferred Guix command. The guides do not explain whether these commands are alternatives or target different environments. Use the same command in both guides, or document the distinction and the required configuration.🤖 Prompt for AI Agents