Skip to content

Commit 9d54759

Browse files
claudespoorcc
authored andcommitted
Update C4 diagrams to match current codebase
- Commands C3: add missing Add and Remove components with their Manifest/Project relationships - Manifest C3: rename Validate→Schema (file is schema.py) and add Parse component (parse.py) - Project C3: add missing ArchiveSubProject component with its VCS relationship https://claude.ai/code/session_0177mNSCND9qFDXRuGo7xNQG
1 parent 9fba9d5 commit 9d54759

3 files changed

Lines changed: 18 additions & 3 deletions

File tree

doc/static/uml/c3_dfetch_components_commands.puml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,25 +10,29 @@ System_Boundary(DFetch, "Dfetch") {
1010
Component(compCommon, "Common", "python", "Common actions for commands")
1111
Component(compCommand, "Command", "python", "Base class for commands")
1212

13+
Component(compAdd, "Add", "python", "Adds a new project to the manifest")
1314
Component(compCheck, "Check", "python", "Checks for updates")
1415
Component(compDiff, "Diff", "python", "Creates patch of local changes")
1516
Component(compEnv, "Environment", "python", "Shows local tools")
1617
Component(compFormatPatch, "FormatPatch", "python", "Format patch for export")
1718
Component(compFreeze, "Freeze", "python", "Pins all projects")
1819
Component(compImport, "Import", "python", "Imports from VCS")
1920
Component(compInit, "Init", "python", "Initializes a manifest")
21+
Component(compRemove, "Remove", "python", "Removes a project from the manifest")
2022
Component(compReport, "Report", "python", "Reports status")
2123
Component(compUpdate, "Update", "python", "Updates all projects")
2224
Component(compUpdatePatch, "UpdatePatch", "python", "Updates patch")
2325
Component(compValidate, "Validate", "python", "Validates manifest")
2426

27+
Rel_U(compAdd, compCommand, "Extends")
2528
Rel_U(compCheck, compCommand, "Extends")
2629
Rel_U(compDiff, compCommand, "Extends")
2730
Rel_U(compEnv, compCommand, "Extends")
2831
Rel_U(compFormatPatch, compCommand, "Extends")
2932
Rel_U(compFreeze, compCommand, "Extends")
3033
Rel_U(compImport, compCommand, "Extends")
3134
Rel_U(compInit, compCommand, "Extends")
35+
Rel_U(compRemove, compCommand, "Extends")
3236
Rel_U(compReport, compCommand, "Extends")
3337
Rel_U(compUpdate, compCommand, "Extends")
3438
Rel_U(compUpdatePatch, compCommand, "Extends")
@@ -43,6 +47,9 @@ System_Boundary(DFetch, "Dfetch") {
4347
Container(contVcs, "Vcs", "python", "Abstraction of various Version Control Systems.")
4448
Container(contReporting, "Reporting", "python", "Output formatters for various reporting formats.")
4549

50+
Rel(compAdd, contManifest, "Uses")
51+
Rel(compAdd, contProject, "Uses")
52+
4653
Rel(compCheck, contManifest, "Uses")
4754
Rel(compCheck, contProject, "Uses")
4855
Rel(compCheck, contReporting, "Uses")
@@ -63,6 +70,9 @@ System_Boundary(DFetch, "Dfetch") {
6370
Rel(compImport, contProject, "Uses")
6471
Rel(compImport, contVcs, "Uses")
6572

73+
Rel(compRemove, contManifest, "Uses")
74+
Rel(compRemove, contProject, "Uses")
75+
6676
Rel(compReport, contManifest, "Uses")
6777
Rel(compReport, contProject, "Uses")
6878
Rel(compReport, contReporting, "Uses")

doc/static/uml/c3_dfetch_components_manifest.puml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,18 @@ System_Boundary(DFetch, "Dfetch") {
1010

1111
Boundary(DFetchManifest, "Manifest") {
1212
Component(compManifest, "Manifest", "python", "Main configuration file describing all projects.")
13+
Component(compParse, "Parse", "python", "Utilities for finding manifest files.")
1314
Component(compProject, "Project", "python", "A single project requirement with optionally specific version")
1415
Component(compRemote, "Remote", "python", "A remote source that contains one or more projects.")
15-
Component(compValidate, "Validate", "python", "Validate a manifest.")
16+
Component(compSchema, "Schema", "python", "StrictYAML schema for the manifest.")
1617
Component(compVersion, "Version", "python", "Check and compare versions.")
1718

1819
Rel(compManifest, compProject, "Uses")
20+
Rel(compManifest, compRemote, "Uses")
21+
Rel(compManifest, compSchema, "Uses")
22+
Rel(compParse, compManifest, "Uses")
1923
Rel(compProject, compVersion, "Uses")
2024
Rel_L(compProject, compRemote, "Uses")
21-
Rel(compManifest, compValidate, "Uses")
22-
Rel(compManifest, compRemote, "Uses")
2325
}
2426

2527
Container(contProject, "Project", "python", "Main project that has a manifest.")

doc/static/uml/c3_dfetch_components_project.puml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ System_Boundary(DFetch, "Dfetch") {
1212
Boundary(DfetchProject, "Project", "python", "Main project that has a manifest.") {
1313

1414
Component(compAbstractCheckReporter, "AbstractCheckReporter", "python", "Abstract interface for generating a check report.")
15+
Component(compArchiveSub, "ArchiveSubProject", "python", "A subproject based on an archive.")
1516
Component(compGitSub, "GitSubproject", "python", "A subproject based on git.")
1617
Component(compMetadata, "Metadata", "python", "A file containing metadata about a project.")
1718
Component(compSvnSub, "SvnSubproject", "python", "A subproject based on svn.")
@@ -21,6 +22,7 @@ System_Boundary(DFetch, "Dfetch") {
2122
Component(compSvnSuper, "SvnSuperProject", "python", "A superproject based on svn.")
2223
Component(compNoVcsSuper, "NoVcsSuperProject", "python", "A superproject without VCS.")
2324

25+
Rel_U(compArchiveSub, compSubProject, "Implements")
2426
Rel_U(compGitSub, compSubProject, "Implements")
2527
Rel_U(compSvnSub, compSubProject, "Implements")
2628
Rel(compSubProject, compAbstractCheckReporter, "Uses")
@@ -41,6 +43,7 @@ System_Boundary(DFetch, "Dfetch") {
4143
Rel_U(compMetadata, contManifest, "Has")
4244
Rel(compSuperProject, contManifest, "Has")
4345
Rel_U(contReporting, contManifest, "Uses")
46+
Rel(compArchiveSub, contVcs, "Uses")
4447
Rel(compGitSub, contVcs, "Uses")
4548
Rel(compSvnSub, contVcs, "Uses")
4649
Rel(compGitSuper, contVcs, "Uses")

0 commit comments

Comments
 (0)