Package¶
PdfAPI.Client is packaged from Scripts\PdfAPI.Client\PdfAPI.Client.nuspec, ships both compiled assemblies and C# source, and is built and released by a dedicated AppType: nuget pipeline separate from the API's own pipeline.
Identity¶
| Field | Value |
|---|---|
| Package id | PdfAPI.Client |
| Version | 1.0.0.3 |
| Authors | andmil |
| Owners | Not specified in the manifest |
| Description | Not captured beyond the identity fields recorded above |
| Requires license acceptance | Not specified in the manifest |
| nuspec file | Scripts\PdfAPI.Client\PdfAPI.Client.nuspec |
| Project file | PdfAPI.Client\PdfAPI.Client.csproj |
Manifest selection¶
| Candidate nuspec | Kind | Selected | Reason |
|---|---|---|---|
Scripts\PdfAPI.Client\PdfAPI.Client.nuspec |
Packaging manifest | Yes | Literal <id>PdfAPI.Client</id>, literal <version>1.0.0.3</version>, populated <dependencies> (3 entries), populated <files> (4 entries) |
PdfAPI.Client\PdfApi.Client.nuspec |
Token template | No | <id>$id$</id>, <version>$version$</version>, <title>$title$</title>, <authors>$author$</authors>, <copyright>$copyright$</copyright>, and an empty <files/> element; included in the project only as <None Include="PdfApi.Client.nuspec" /> |
A casing trap is present and confirmed: the token template is PdfApi.Client.nuspec (lower-case pi) inside the PdfAPI.Client project folder, while the real manifest is PdfAPI.Client.nuspec (upper-case API) under Scripts\. The two manifests were not merged — all dependency and <files> facts on this page come solely from the selected manifest. No assembly-name fallback was needed: the selected manifest's literal <id> matches both the pipeline AppName and the project <AssemblyName>.
Dependencies¶
| Dependency | Version | Purpose |
|---|---|---|
SAIF.Framework.Common |
1.0 (open lower bound); restored 2.0.22074.3 |
Shared framework types |
SAIF.Web.API.Clients |
1.0 (open lower bound); restored 2.0.22307.1 |
JsonHttpClient and ClientInfo transport surface |
iTextSharp |
5.5.11 |
Required by the in-process PdfClientService members shipped in PdfAPI.Core; a third-party dependency specific to this client |
The nuspec's open version="1.0" lower bound for the two SAIF dependencies differs from the restored 2.0.x versions actually used by the project — recorded as a fact.
See Dependencies for the full dependency landscape including transitive and build-time references.
Shipped content¶
This package ships source alongside the compiled assembly. In addition to
lib\net45\*.dll, the nuspec<files>element mapssrc\**\*.cstargets, so the complete C# source of the client and itsPdfAPI.Corecontracts assembly is installed into every consuming project. Consumers can read and copy internal implementation, the shipped source can drift from the shipped binary, and any embedded comment ships with the package. See Tech debt.
| Source | Target | Content |
|---|---|---|
..\..\bin\PdfAPI.Client.dll |
lib\net45\PdfAPI.Client.dll |
Compiled client |
..\..\bin\PdfAPI.Core.dll |
lib\net45\PdfAPI.Core.dll |
Shared contracts assembly |
..\..\PdfAPI.Client\**\*.cs |
src\PdfAPI.Client |
Client source code |
..\..\PdfAPI.Core\**\*.cs |
src\PdfAPI.Core |
Contracts source code |
No .pdb files are shipped. The packaged lib\net45 folder does not match the project's net462 compile target (<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>) — recorded as a packaging inconsistency.
Build and release pipeline¶
| Attribute | Value |
|---|---|
AppType |
nuget |
AppName |
PdfAPI.Client |
SolutionPath |
PdfAPI.Client.sln |
ProjectPath |
PdfAPI.Client\PdfAPI.Client.csproj |
BuildConfiguration |
debug — the release pipeline packs a Debug-configuration build; BuildPlatform is empty |
IncludeReferencedProjects |
true |
| Build pipeline | Pipelines\build-client.yml |
| Build variables | Pipelines\build-vars-client.yml |
| Release pipeline | Pipelines\release-client.yml |
Pipeline templates¶
| Stage | Template | Purpose |
|---|---|---|
| Build | Steps/build-steps-nuget.yml@templates |
Restore, build, and pack the package |
| Build | Steps/build-version-dat.yml@templates |
Version stamping, preceding the nuget build step |
| Build | Steps/build-steps-tag-repo.yml@templates |
Repository tagging, following the nuget build step |
| Release | /Stages/deploy-stages-nuget.yml@templates |
Publishes the package to the SAIF NuGet feed |
The template repository is SAIF/YAML_Templates (resource alias templates, ref unset, so the default branch is used) for both the build and release pipelines. AppType: nuget is the correct variable value for this pipeline, but it is not by itself evidence that a project is an API client — Pdf.Local.Client is also built by an AppType: nuget pipeline and performs no HTTP.
Artifacts¶
| Artifact | Variable | Notes |
|---|---|---|
| Pre-release | ArtifactNamePreRelease |
Prerelease suffix parameter default alpha |
| Release | ArtifactNameRelease |
Product version parameter default 2.0 |
Build triggers are develop and master for the build pipeline; the release pipeline has trigger: none and instead consumes the IT.CoreServices.PDFAPI.Client.Build pipeline artifact.
Build number format is 2.$(Year:yy)$(DayOfYear)$(rev:.r).
Feed¶
| Field | Value |
|---|---|
| Feed | Not declared in repository files; the SAIF internal feed is the expected destination based on the shared /Stages/deploy-stages-nuget.yml@templates release template* |
| Publish trigger | Not determined from source — the push target is defined inside the external SAIF/YAML_Templates repository, which this analysis does not follow** |
nuget.config at the repository root sets repositoryPath = packages only and declares no custom package sources.
Manifest version 1.0.0.3 versus assembly version 1.0.0.0 (PdfAPI.Client\Properties\AssemblyInfo.cs lines 30–31) versus the pipeline-generated build number are three independent version sources — recorded on Tech debt.
Related documentation¶
- Client index
- Overview
- Architecture
- Client reference
- Endpoint map
- Consumption
- Contracts
- Dependencies
- Business rules
- Tech debt
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¶
Scripts\PdfAPI.Client\PdfAPI.Client.nuspecPdfAPI.Client\PdfApi.Client.nuspecPdfAPI.Client\PdfAPI.Client.csprojPdfAPI.Client\packages.configPdfAPI.Client\Properties\AssemblyInfo.csPipelines\build-vars-client.ymlPipelines\build-client.ymlPipelines\release-client.ymlnuget.config