# Package Versioning

> How TX Text Control NuGet versions work: the major version per release, the service pack in the engine version, web package and file versions, and pinning.

- **Product:** TX Text Control .NET Server
- **Section:** Documentation
- **Kind:** Topic
- **Path:** TX Text Control .NET Server > Installation Guide > NuGet Packages > Package Versioning
- **1759 words**
- **Web URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/nuget/versioning/
- **LLMs URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/nuget/versioning/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/nuget/versioning/llms-full.txt

---

A single version scheme applies to TX Text Control packages for the product and its service packs, while the web and add-on packages have their own minor versions within it. Once you know what the numbers mean and which versions belong together, you can pin versions in your projects so that every build restores the same packages.

### Current Versions

The current product version is TX Text Control .NET Server 34.0, introduced in November 2025. Service Pack 5, released on September 14, 2026, is the latest service pack. The following versions are current as of September 2026:

| Package | Current version | Available from |
|---|---|---|
| `TXTextControl.TextControl.Core.SDK` | 34.0.5 | Private feed |
| `TXTextControl.TextControl.ASP.SDK` | 34.0.5 | Private feed |
| `TXTextControl.Web` | 34.5.0 | Private feed, nuget.org |
| `TXTextControl.Web.DocumentEditor.Backend` | 34.5.0 | Private feed |
| `TXTextControl.Web.DocumentViewer` | 34.2.0 | Private feed, nuget.org |
| `TXTextControl.Web.DocumentViewer.Classic` | 34.0.0 | Private feed, nuget.org |
| `TXTextControl.Web.Blazor.DocumentEditor` | 34.4.0 | nuget.org |
| `TXTextControl.Web.Blazor.DocumentViewer` | 34.0.0 | nuget.org |
| `TXTextControl.Markdown.Core` | 34.1.0 | nuget.org |
| `TXTextControl.PDF.Validation` | 34.1.0 | nuget.org |
| `TXTextControl.DocumentServer.ParallelMailMerge` | 34.0.0 | nuget.org |

The private feed shows only the packages and versions you are licensed for.

### Major Version: The Product Version

The major version of every package matches the product version. All packages for TX Text Control .NET Server 34.0 have the major version 34, and packages for version 33.0 have the major version 33. The prerelease Text Control AI packages are the exception: they are versioned separately, currently 0.1.0-beta.3. The Core engine package `TXTextControl.TextControl.Core.SDK` exists since version 33.0, which introduced Linux support.

### Engine Packages: 34.0.x

The engine packages `TXTextControl.TextControl.Core.SDK` and `TXTextControl.TextControl.ASP.SDK` use version numbers of the form 34.0.x, where x is the service pack:

| Version | Release |
|---|---|
| 34.0.0 | TX Text Control .NET Server 34.0 |
| 34.0.1 | Service Pack 1 |
| 34.0.2 | Service Pack 2 |
| 34.0.3 | Service Pack 3 |
| 34.0.4 | Service Pack 4 |
| 34.0.5 | Service Pack 5 |

### Web and Add-On Packages: Own Minor Versions

The web packages, the Blazor components and the add-on packages on nuget.org have their own minor and patch versions within the major version 34. For example, `TXTextControl.Web` was released as 34.0.0, 34.1.0, 34.2.0, 34.3.0, 34.4.0 and 34.5.0, and `TXTextControl.Web.DocumentViewer` as 34.0.0, 34.1.0 and 34.2.0.

The minor version of these packages does not necessarily match the service pack number. With Service Pack 5, the current versions are 34.0.5 for the engine packages, 34.5.0 for `TXTextControl.Web` and 34.2.0 for `TXTextControl.Web.DocumentViewer`.

Preview releases are prerelease versions with a suffix. To see them in the Visual Studio NuGet Package Manager, check **Include prerelease**.

### npm Packages

The npm packages for Angular, React and Node.js also use the major version 34 and have their own minor and patch versions, which [Package Versions and Product Versions](https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/npm/#package-versions-and-product-versions) in npm Packages explains.

### Check the Service Pack of an Assembly

The service pack an application runs with is the [ServicePack](https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol/versioninfo/servicepack-property/llms-full.txt) property of the [VersionInfo](https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol/versioninfo/llms-full.txt) object that [ServerTextControl.GetVersionInfo](https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol/servertextcontrol/getversioninfo-method/llms-full.txt) returns. [Service Packs](https://docs.textcontrol.com/tx-text-control-dotnet-server/whats-new/service-packs/#check-the-installed-service-pack) shows the code.

The file versions of the TX Text Control assemblies change with a service pack, but they don't carry its number. A file version such as `34.0.2702.500` of *TXTextControl.dll* has these parts:

| Part | Value | Meaning |
|---|---|---|
| Major | 34 | The product version. |
| Minor | 0 | The minor product version, rarely used for TX Text Control. |
| Build | 2702 | A build number of the assembly. It is not the service pack: *TXTextControl.dll* has the file version 34.0.2702.500 in Service Packs 2 to 4 and 34.0.2703.500 in Service Pack 5. |
| Status | 500 | An official release version. |

The assembly version, unlike the file version, does not change with a service pack, except for the assemblies in the `TXTextControl.Web` and Document Viewer packages.

### Pin Package Versions

Pin the versions of the TX Text Control packages so that every developer and every build server restores the same packages. With the .NET CLI, pass the version when you add a package:

```bash
dotnet add package TXTextControl.TextControl.Core.SDK --version 34.0.5
dotnet add package TXTextControl.Web --version 34.5.0
dotnet add package TXTextControl.Web.DocumentEditor.Backend --version 34.5.0
```

The commands write the versions into the project file:

```xml
<ItemGroup>
  <PackageReference Include="TXTextControl.TextControl.Core.SDK" Version="34.0.5" />
  <PackageReference Include="TXTextControl.Web" Version="34.5.0" />
  <PackageReference Include="TXTextControl.Web.DocumentEditor.Backend" Version="34.5.0" />
</ItemGroup>
```

NuGet treats a version like `Version="34.0.5"` as the minimum version and resolves the smallest acceptable version, so a restore returns 34.0.5 as long as the package source contains it. To accept only one exact version, use the notation `Version="[34.0.5]"`. See [NuGet Package Version Reference](https://learn.microsoft.com/en-us/nuget/concepts/package-versioning) on Microsoft Learn.

### Keep Packages Together

- **Use one major version.** Use TX Text Control packages of the same major version together, for example only 34.x packages. The Document Viewer package, for example, requires the matching version of the TX Text Control assemblies from the engine package.
- **Update all packages together.** Text Control recommends updating all parts of TX Text Control in a project to the most current versions. When you install a service pack, update the engine package and the web packages in the same step.
- **Respect package dependencies.** Some packages require minimum versions of other TX Text Control packages. `TXTextControl.Web.Blazor.DocumentEditor` 34.4.0 depends on `TXTextControl.Web` 34.4.0 or higher, and `TXTextControl.DocumentServer.ParallelMailMerge` 34.0.0 depends on `TXTextControl.TextControl.Core.SDK` 34.0.4 or higher.

[Updating NuGet Packages](https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/upgrading/nuget/llms-full.txt) describes how to update a project, and [Service Packs](https://docs.textcontrol.com/tx-text-control-dotnet-server/whats-new/service-packs/llms-full.txt) lists the changes of each service pack.

### Next Steps

- [Updating NuGet Packages](https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/upgrading/nuget/llms-full.txt) — update packages to a new service pack.
- [Breaking Changes](https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/upgrading/breaking-changes/llms-full.txt) — changes to check when you move to a new major version.
- [Package Overview](https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/nuget/packages/llms-full.txt) — which packages your project needs.

---

## Nearby

- **Previous:** [Offline Packages](https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/nuget/offline-packages/llms-full.txt)
- **Next:** [npm Packages](https://docs.textcontrol.com/tx-text-control-dotnet-server/installation/npm/llms-full.txt)
