Skip to content

Commit ce0d40c

Browse files
authored
Merge pull request #64 from PTCInc/dev-1.0
Release 1.0
2 parents 1884824 + 92fd80e commit ce0d40c

File tree

7 files changed

+46
-17
lines changed

7 files changed

+46
-17
lines changed

Kepware-ConfigAPI-SDK-dotnet.sln

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
Microsoft Visual Studio Solution File, Format Version 12.00
33
# Visual Studio Version 18
4-
VisualStudioVersion = 18.3.11505.172 d18.3
4+
VisualStudioVersion = 18.3.11505.172
55
MinimumVisualStudioVersion = 10.0.40219.1
66
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kepware.SyncService", "KepwareSync.Service\Kepware.SyncService.csproj", "{19B2841F-01D1-4A7E-BE26-A93CF8C57628}"
77
EndProject
@@ -13,7 +13,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SolutionFiles", "SolutionFi
1313
Directory.Build.props = Directory.Build.props
1414
LICENSE.txt = LICENSE.txt
1515
README.md = README.md
16-
version.json = version.json
1716
EndProjectSection
1817
EndProject
1918
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kepware.Api", "Kepware.Api\Kepware.Api.csproj", "{ABB368B9-7D95-4946-9579-F7AA7A5750F7}"

Kepware.Api/README.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
# Kepware.Api
22

3-
[![Build Status](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions/workflows/nuget-test-and-build.yml/badge.svg)](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions)
43
[![NuGet](https://img.shields.io/nuget/v/Kepware.Api.svg)](https://www.nuget.org/packages/Kepware.Api/)
4+
![Dynamic XML Badge](https://img.shields.io/badge/dynamic/xml?url=https%3A%2F%2Fraw.githubusercontent.com%2FPTCInc%2FKepware-ConfigAPI-SDK-dotnet%2Frefs%2Fheads%2Fmain%2FKepware.Api%2FKepware.Api.csproj&query=%2F%2FTargetFrameworks&logo=.net&label=versions)
5+
[![Build Status](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions/workflows/nuget-test-and-build.yml/badge.svg)](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions)
6+
![NuGet Downloads](https://img.shields.io/nuget/dt/Kepware.Api?label=nuget%20downloads)
57

68
## Overview
79
The `Kepware.Api` library provides a robust client implementation to interact with the Kepware Configuration API. It supports managing channels, devices, tags, and other configurations programmatically while ensuring secure and efficient communication.
810

9-
This package is designed to work with all versions of Kepware that support the Configuration API including Kepware Server (KS), and Kepware Edge (KE). For reference, Kepware Server in this documentation will also imply Thingworx Kepware Server and KEPServerEX versions prior to v7.0 when v6.x is referenced.
10-
11+
This package is designed to work with all versions of Kepware that support the Configuration API including Kepware Server (KS), Kepware Edge (KE), Thingworx Kepware Server (TKS), and KEPServerEX (KEP). For reference, when Kepware Server v6.x is referenced in this documentation, this implies Thingworx Kepware Server and KEPServerEX branded products.
1112
## Features
1213

1314
1. Connect to Kepware Configuration APIs securely with HTTPS and optional certificate validation.
@@ -20,12 +21,12 @@ This package is designed to work with all versions of Kepware that support the C
2021
| **Administration** <br /> *(User Groups, Users, UA Endpoints, Local License Server)* | Y[^1] | Y |
2122
| **Product Info and Health Status** | Y[^4] | Y |
2223
| **Export Project** | Y[^2] | Y |
23-
| **Import Project (via JsonProjectLoad Service)** | N[^2] | N |
24+
| **Import Project (via JsonProjectLoad Service)[^3]** | N | N |
2425
| **Import Project (via CompareAndApply)[^3]** | Y | Y |
2526

2627
[^1]: UA Endpoints and Local License Server supported for Kepware Edge only
27-
[^2]: JsonProjectLoad was added to Kepware Server v6.17 and later builds, the SDK detects the server version and uses the appropriate service or loads the project by multiple requests if using KepwareApiClient.LoadProject.
28-
[^3]: CompareAndApply is handled by the SDK, it compares the source project with the server project and applies the changes. The JsonProjectLoad service is a direct call to the server to load a project.
28+
[^2]: Json serialization for the whole project was added to Kepware Server v6.17 and later builds, the SDK detects the server version and uses the appropriate service or exports the project by multiple requests if using KepwareApiClient.LoadProject.
29+
[^3]: CompareAndApply is handled by the SDK, it compares the source project with the server project and applies the changes. The JsonProjectLoad service (added v6.17 and later) is a direct call to the server to load a new project serialize JSON configuration to the server/edge instance.
2930
[^4]: Added to Kepware Server v6.13 and later builds
3031

3132
3. Configuration API *Services* implemented:
@@ -35,7 +36,7 @@ This package is designed to work with all versions of Kepware that support the C
3536
| **TagGeneration** <br /> *(for supported drivers)* | Y | Y |
3637
| **ReinitializeRuntime** | Y* | Y |
3738
| **ProjectLoad and ProjectSave** | N | N |
38-
| **JsonProjectLoad\*\*** <br /> *(used for import project feature)* | Y | Y |
39+
| **JsonProjectLoad\*\*** <br /> *(used for import project feature)* | N | N |
3940

4041
4. Synchronize configurations between your application and Kepware server.
4142
5. Supports advanced operations like project comparison, entity synchronization, and driver property queries.

Kepware.Api/version.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/main/src/NerdBank.GitVersioning/version.schema.json",
3-
"version": "1.0-beta",
3+
"version": "1.0",
44
"pathFilters": [ "." ],
55
"publicReleaseRefSpec": [
66
"^refs/heads/main$",

KepwareSync.Service/Properties/launchSettings.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,17 @@
2626
},
2727
"Container (Dockerfile)": {
2828
"commandName": "Docker"
29+
},
30+
// For WSL2, ensure that the distribution name is set to your WSL distribution (e.g., "Ubuntu-20.04") if you
31+
// want to specify the specific distribution to run the project in. If left empty, it will use the default WSL distribution.
32+
// You can find the distribution names and defaults by running `wsl -l -v` in a command prompt.
33+
"WSL": {
34+
"commandName": "WSL2",
35+
"environmentVariables": {
36+
"DOTNET_ENVIRONMENT": "Development",
37+
"MODBUS_HOST": "HostByEnv"
38+
},
39+
"distributionName": ""
2940
}
3041
},
3142
"$schema": "https://json.schemastore.org/launchsettings.json"

README.md

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,23 @@
1-
# Kepware Configuration API SDK for .NET (Currently in Beta)
1+
# Kepware Configuration API SDK for .NET
22

3+
[![NuGet](https://img.shields.io/nuget/v/Kepware.Api.svg)](https://www.nuget.org/packages/Kepware.Api/)
4+
![Dynamic XML Badge](https://img.shields.io/badge/dynamic/xml?url=https%3A%2F%2Fraw.githubusercontent.com%2FPTCInc%2FKepware-ConfigAPI-SDK-dotnet%2Frefs%2Fheads%2Fmain%2FKepware.Api%2FKepware.Api.csproj&query=%2F%2FTargetFrameworks&logo=.net&label=versions)
35
[![Build Status](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions/workflows/nuget-test-and-build.yml/badge.svg)](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions)
6+
![NuGet Downloads](https://img.shields.io/nuget/dt/Kepware.Api?label=nuget%20downloads)
7+
48
[![Build Status](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions/workflows/docker-build-and-push.yml/badge.svg)](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions)
59
[![Build Status](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions/workflows/syncservice-build.yml/badge.svg)](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions)
6-
[![NuGet](https://img.shields.io/nuget/v/Kepware.Api.svg)](https://www.nuget.org/packages/Kepware.Api/)
10+
711

812

913
## Overview
1014
The Kepware Configuration API SDK for .NET provides tools and libraries to interact with the Kepware Configuration REST API, enabling configuration management for Kepware servers. This repository includes examples and utilities to streamline development for deployment tools, including a service for continuous synchronization and an API client library.
1115

12-
This package is designed to work with all versions of Kepware that support the Configuration API including Kepware Server (KS), Kepware Edge (KE), Thingworx Kepware Server (TKS), and KEPServerEX (KEP). For reference, Kepware Server in this documentation will also imply Thingworx Kepware Server and KEPServerEX versions prior to v7.0 when v6.x is referenced.
16+
This package is designed to work with all versions of Kepware that support the Configuration API including Kepware Server (KS), Kepware Edge (KE), Thingworx Kepware Server (TKS), and KEPServerEX (KEP). For reference, when Kepware Server v6.x is referenced in this documentation, this implies Thingworx Kepware Server and KEPServerEX branded products.
1317

1418
## Features
1519
- [**API Client Library**](./Kepware.Api/README.md): Simplify interaction with the Kepware Configuration API.
16-
- [**Service for Synchronization**](./KepwareSync.Service/README.md):
20+
- [**Service for Synchronization** (Currently in Beta)](./KepwareSync.Service/README.md):
1721
- Bi-directional synchronization between Kepware servers and local filesystems.
1822
- Support for one-way and two-way synchronization modes.
1923
- [**Sample Applications**](./Kepware.Api.Sample/README.md): Demonstrates API usage with real-world examples.
@@ -29,7 +33,7 @@ A .NET library providing an easy-to-use client for interacting with the Kepware
2933

3034
**API reference documentation is available on [Github Pages](https://ptcinc.github.io/Kepware-ConfigAPI-SDK-dotnet/api/Kepware.Api.html)**
3135

32-
### 2. `KepwareSync.Service`
36+
### 2. `KepwareSync.Service` (Currently in Beta)
3337
A service application for synchronizing configurations between Kepware servers and the local filesystem. It supports monitoring and synchronization in real time.
3438

3539
[Readme for KepwareSync.Service](./KepwareSync.Service/README.md)

docs/nuget-README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
# Kepware.Api
22

3+
[![NuGet](https://img.shields.io/nuget/v/Kepware.Api.svg)](https://www.nuget.org/packages/Kepware.Api/)
4+
![Dynamic XML Badge](https://img.shields.io/badge/dynamic/xml?url=https%3A%2F%2Fraw.githubusercontent.com%2FPTCInc%2FKepware-ConfigAPI-SDK-dotnet%2Frefs%2Fheads%2Fmain%2FKepware.Api%2FKepware.Api.csproj&query=%2F%2FTargetFrameworks&logo=.net&label=versions)
35
[![Build Status](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions/workflows/nuget-test-and-build.yml/badge.svg)](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/actions)
46

57
## Overview
6-
The `Kepware.Api` library provides a robust client implementation to interact with the Kepware Configuration API. It supports managing channels, devices, tags, and other configurations programmatically while ensuring secure and efficient communication.
8+
The `Kepware.Api` library provides a robust client implementation to interact with the Kepware Configuration REST API. It supports managing channels, devices, tags, and other configurations programmatically while ensuring secure and efficient communication.
79

8-
This package is designed to work with all versions of Kepware that support the Configuration API including Thingworx Kepware Server (TKS), Thingworx Kepware Edge (TKE) and KEPServerEX (KEP). For reference, Kepware Server in this documentation will refer to both TKS and KEP versions.
10+
This package is designed to work with all versions of Kepware that support the Configuration API including Kepware Server (KS), Kepware Edge (KE), Thingworx Kepware Server (TKS), and KEPServerEX (KEP). For reference, Kepware Server in this documentation will also imply Thingworx Kepware Server and KEPServerEX versions prior to v7.0 when v6.x is referenced.
911

1012
## Licensing
1113
This SDK is provided "as is" under the MIT License. See the [LICENSE](https://github.com/PTCInc/Kepware-ConfigAPI-SDK-dotnet/blob/main/LICENSE.txt) file for details.

testEnvironments.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"version": "1",
3+
"environments": [
4+
// See https://aka.ms/remotetesting for more details
5+
// about how to configure remote environments.
6+
{
7+
"name": "WSL Ubuntu",
8+
"type": "wsl",
9+
"wslDistribution": "Ubuntu-24.04"
10+
}
11+
]
12+
}

0 commit comments

Comments
 (0)