---
title: SAIF.Framework.CodeTimer dependencies
summary: Internal and external dependencies for this library.
status: draft
owner: <owner>
last_reviewed: 2026-07-23
library: SAIF.Framework.CodeTimer
reference_type: package
---

# SAIF.Framework.CodeTimer dependencies

## Internal dependencies

None. No `<ProjectReference>` elements are present in `SAIF.Framework.CodeTimer.csproj`, and `SAIF.Framework.CodeTimer.sln` references only `SAIF.Framework.CodeTimer.csproj` and `SAIF.Framework.CodeTimer.Tests.csproj` — no other `SAIF.Framework.*` project is referenced*. (`SAIF.Framework.CodeTimer.csproj`, `SAIF.Framework.CodeTimer.sln`)

| Dependency | Type | Usage |
| --- | --- | --- |
| None | Internal | Not applicable — no internal SAIF.Framework project references exist for the compiled project. |

## External dependencies

No NuGet packages are referenced — there is no `packages.config` or `<PackageReference>` element in `SAIF.Framework.CodeTimer.csproj`. The compiled project references only .NET Framework/BCL assemblies via `<Reference>` elements.

| Dependency | Version | Usage |
| --- | --- | --- |
| System | (framework) | Core BCL types; also provides `System.Reflection.MethodBase` used in `CodeTimer.cs`. |
| System.Core | (framework) | Core BCL/LINQ support assembly reference. |
| System.Drawing | (framework) | Framework assembly reference (no direct usage evidence beyond the reference itself). |
| System.Windows.Forms | (framework) | Used only for the `SortOrder` enum in `CodeTimerItemSorter.cs`; no live UI/Form code is compiled into the assembly. |
| System.Xml.Linq | (framework) | `XDocument`/`XElement` construction for timer result output in `CodeTimer.cs` and `CodeTimerResult.cs`. |
| System.Data | (framework) | Framework assembly reference. |
| System.Xml | (framework) | Framework assembly reference. |
| Aga.Controls | (vendored, in-repo) | Vendored WinForms tree-view control library (`Aga.Controls.Tree`: `ITreeModel`, `TreePath`, `TreeColumn`, `TreeViewAdv`, `SortedTreeModel`). Used only by `CodeTimerModel.cs` and `CodeTimerResults.cs`/`.Designer.cs`, none of which are included in the compiled `SAIF.Framework.CodeTimer.csproj` — see Dependency risks and notes below. |

## Dependency risks and notes
- `CodeTimerModel.cs`, `CodeTimerResults.cs`, and `CodeTimerResults.Designer.cs` are present in the project folder but excluded from the `<Compile>` item group of `SAIF.Framework.CodeTimer.csproj`, making them orphaned/stale code relative to the built assembly. They also reference members (`entry.sw`, `entry.timesstarted`, a differently-shaped `CodeTimerItem` constructor, `CodeTimeritemschildren`) that do not exist on the current `CodeTimerEntry`/`CodeTimerItem` classes, so they would not compile if re-added to the project**.
- Because those WinForms viewer files are the only consumers of `Aga.Controls`, the vendored `Aga.Controls` dependency is unused relative to the compiled assembly — its presence in the repository/solution folder appears vestigial rather than a live build dependency*.
- `Aga.Controls.csproj` is not referenced by `SAIF.Framework.CodeTimer.sln`'s built project via `<ProjectReference>` either, reinforcing that it is vendored but not wired into the current build**.
- `System.Windows.Forms` remains a referenced assembly for the compiled project solely to support the `SortOrder` enum in `CodeTimerItemSorter.cs`; this is a narrow, non-UI usage and does not indicate any live WinForms surface in the built assembly.
- The library has no NuGet package dependencies and no internal `SAIF.Framework.*` project references, giving it a minimal, self-contained dependency footprint for the code paths that are actually compiled.
- No external consumers (downstream dependents) could be determined from this library's own source, since no reverse-reference scan was performed as part of the source analysis.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Configuration](configuration.md)
- [API reference](api/index.md)

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer.csproj
- SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer.sln
- SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer\CodeTimer.cs
- SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer\CodeTimerItemSorter.cs
- SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer\CodeTimerResult.cs
- SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer\CodeTimerModel.cs
- SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer\CodeTimerResults.cs
- SAIF.Framework.CodeTimer\SAIF.Framework.CodeTimer\CodeTimerResults.Designer.cs
- SAIF.Framework.CodeTimer\Aga.Controls\Aga.Controls.csproj
