mirror of
https://github.com/PepperDash/EssentialsPluginTemplate.git
synced 2026-02-13 11:44:41 +00:00
Compare commits
8 Commits
v1.0.0
...
docs/versi
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
52a14c1f3a | ||
|
|
bb991544c4 | ||
|
|
663f2483b3 | ||
|
|
ba5d0f33a6 | ||
|
|
4283fb2abd | ||
|
|
4ee211576f | ||
|
|
952d5b61a4 | ||
|
|
3f2ef80877 |
@@ -8,7 +8,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
call-update-readme:
|
call-update-readme:
|
||||||
uses: PepperDash/workflow-templates/.github/workflows/update-readme.yml@development
|
uses: PepperDash/workflow-templates/.github/workflows/update-readme.yml@main
|
||||||
with:
|
with:
|
||||||
target-branch: ${{ github.ref_name }}
|
target-branch: ${{ github.ref_name }}
|
||||||
|
|
||||||
|
|||||||
110
Readme-Upgrade-to-4Series.md
Normal file
110
Readme-Upgrade-to-4Series.md
Normal file
@@ -0,0 +1,110 @@
|
|||||||
|

|
||||||
|
|
||||||
|
# Upgrading an EPI: Essentials v1.x → v2.x
|
||||||
|
|
||||||
|
## Preparation
|
||||||
|
|
||||||
|
1. **Clone the Template Repo referred to as TR** to your local machine.
|
||||||
|
- [EssentialsPluginTemplate](https://github.com/PepperDash/EssentialsPluginTemplate)
|
||||||
|
2. **Checkout `main` branch** in the TR.
|
||||||
|
|
||||||
|
## Branching
|
||||||
|
|
||||||
|
4. In your EPI repo:
|
||||||
|
- Confirm it does **not already support Essentials v2.x**.
|
||||||
|
- Ensure there is **no existing 4-series update branch**.
|
||||||
|
- Create a new branch (e.g., `feature/4-series-updates`) from `main`.
|
||||||
|
|
||||||
|
## Upgrade Steps
|
||||||
|
|
||||||
|
5. In the new branch:
|
||||||
|
- **Replace** EPI `.github` files/folders with those from TR as needed.
|
||||||
|
- *Note:* Retain any custom workflows if required. Consult with PepperDash Team if unsure.
|
||||||
|
- **Copy** the following from TR to EPI:
|
||||||
|
- `.releaserc.json` (root)
|
||||||
|
- `epi-make-model.4Series.sln` (root)
|
||||||
|
- `src/epi-make-model.4Series.csproj` (create `src` folder if missing)
|
||||||
|
- `images` folder (if your `readme.md` lacks the standard logo)
|
||||||
|
- **Initial Commit:** Commit changes, but do **not** push yet.
|
||||||
|
|
||||||
|
6. **If EPI has a `src/*.nuspec` file:**
|
||||||
|
- Record these values from `Nuspec` for later:
|
||||||
|
- `<id>` (Package ID)
|
||||||
|
- `<projectUrl>` (Project URL)
|
||||||
|
- `<title>` (Assembly Title)
|
||||||
|
|
||||||
|
7. **Open Solution:**
|
||||||
|
- Open `epi-make-model.4Series.sln` in Visual Studio 2022.
|
||||||
|
- If errors occur, ensure the `.csproj` file is located within `src` folder.
|
||||||
|
|
||||||
|
8. **Update Project Properties:**
|
||||||
|
- In `src/epi-make-model.4Series.csproj`, update:
|
||||||
|
- `AssemblyTitle` (from nuspec `<title>`)
|
||||||
|
- `RootNamespace` (from existing EPI, device namespace actual)
|
||||||
|
- `PackageProjectUrl` (from nuspec `<projectUrl>`)
|
||||||
|
- **Rename `make-model` build path references shown below:**
|
||||||
|
|
||||||
|

|
||||||
|
- **Add runtime exclusion:**
|
||||||
|
Add `<ExcludeAssets>runtime</ExcludeAssets>` to the PepperDash Essentials `PackageReference`.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
9. **Copy Build Files:**
|
||||||
|
- Copy `src/Directory.Build.props` and `src/Directory.Build.targets` from TR.
|
||||||
|
- Update `RepositoryUrl` in `Directory.Build.props` to match nuspec `PackageProjectUrl`.
|
||||||
|
- Remove "template" text from `<Product>` in `Directory.Build.props` as needed.
|
||||||
|
|
||||||
|
10. **Clean Up:**
|
||||||
|
- Delete old Visual Studio 2008 files: `.sln`, `.suo`, `.nuspec`, `.csproj`, `.csproj.user`, `.projectinfo`.
|
||||||
|
- Ensure file structure matches below example:
|
||||||
|
```
|
||||||
|
├── src/
|
||||||
|
│ ├── Directory.Build.props
|
||||||
|
│ ├── Directory.Build.tagets
|
||||||
|
│ ├── *.3Series.csproj
|
||||||
|
│ └── *.4Series.csproj
|
||||||
|
├── .releaserc.json
|
||||||
|
├── *.3Series.sln
|
||||||
|
├── *.4Series.sln
|
||||||
|
├── LICENSE.md
|
||||||
|
└── README.md
|
||||||
|
```
|
||||||
|
|
||||||
|
11. **Rename Solution/Project** as needed.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
12. **Update Project References and Dependencies**
|
||||||
|
- Remove old PepperDash Essentials dependency.
|
||||||
|
- Add PepperDash Essentials v2.x dependency via Visual Studio 2022 > Project > `Manage Nuget Packages`.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
13. **Update Factory Class:**
|
||||||
|
Set `MinimumEssentialsFrameworkVersion` to match the Essentials version dependency.
|
||||||
|
|
||||||
|
14. **Build Solution:**
|
||||||
|
Ensure solution compiles (warnings about obsolete `Debug.Console` calls are OK).
|
||||||
|
|
||||||
|
15. **Update Debug Calls:**
|
||||||
|
Replace `Debug.Console` with `Debug.Log` methods as appropriate (see table).
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Completion Checklist
|
||||||
|
|
||||||
|
- [ ] EPI compiles with **no warnings**.
|
||||||
|
- [ ] **Obsolete methods** updated to modern equivalents.
|
||||||
|
- [ ] **Workflows** complete successfully; packages generated via GitHub and NuGet.org.
|
||||||
|
- [ ] `readme.md` includes:
|
||||||
|
- Usage/setup instructions
|
||||||
|
- Example SIMPL Windows bridge joinmap
|
||||||
|
- Example device communication structure/properties
|
||||||
|
- [ ] EPI tested against full release Essentials version.
|
||||||
|
- [ ] EPI tested by another developer.
|
||||||
|
- [ ] Full release of EPI.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*For questions about workflows or customizations, consult with PepperDash Team.*
|
||||||
BIN
images/upgrade-to-4Series/addRuntumeExclusion.png
Normal file
BIN
images/upgrade-to-4Series/addRuntumeExclusion.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
BIN
images/upgrade-to-4Series/removeExistingDependencies.png
Normal file
BIN
images/upgrade-to-4Series/removeExistingDependencies.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 85 KiB |
BIN
images/upgrade-to-4Series/removeObsoleteReferences.png
Normal file
BIN
images/upgrade-to-4Series/removeObsoleteReferences.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 27 KiB |
BIN
images/upgrade-to-4Series/renameEpiSolution.png
Normal file
BIN
images/upgrade-to-4Series/renameEpiSolution.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 40 KiB |
BIN
images/upgrade-to-4Series/replaceExistingDebugConsoleMethods.png
Normal file
BIN
images/upgrade-to-4Series/replaceExistingDebugConsoleMethods.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
@@ -2,14 +2,14 @@
|
|||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Version>1.0.0-local</Version>
|
<Version>1.0.0-local</Version>
|
||||||
<InformationalVersion>$(Version)</InformationalVersion>
|
<InformationalVersion>$(Version)</InformationalVersion>
|
||||||
<Authors>PepperDash Technologies</Authors>
|
<Authors>PepperDash Technology</Authors>
|
||||||
<Company>PepperDash Technologies</Company>
|
<Company>PepperDash Technology</Company>
|
||||||
<Product>PepperDash Essentials Plugin Template</Product>
|
<Product>PepperDash Essentials Plugin Template</Product>
|
||||||
<Copyright>Copyright © 2025</Copyright>
|
<Copyright>Copyright © 2025</Copyright>
|
||||||
<RepositoryUrl>https://github.com/PepperDash/EssentialsPluginTemplate.git</RepositoryUrl>
|
<RepositoryUrl>https://github.com/PepperDash/EssentialsPluginTemplate.git</RepositoryUrl>
|
||||||
<RepositoryType>git</RepositoryType>
|
<RepositoryType>git</RepositoryType>
|
||||||
<PackageTags>Crestron; 4series</PackageTags>
|
<PackageTags>Crestron; 4series</PackageTags>
|
||||||
<PackageOutputPath>../output</PackageOutputPath>
|
<PackageOutputPath>..\output</PackageOutputPath>
|
||||||
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
|
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
|
||||||
<PackageLicenseFile>LICENSE.md</PackageLicenseFile>
|
<PackageLicenseFile>LICENSE.md</PackageLicenseFile>
|
||||||
<PackageReadmeFile>README.md</PackageReadmeFile>
|
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||||
|
|||||||
@@ -7,14 +7,14 @@
|
|||||||
<RootNamespace>PepperDash.Essentials.Plugin</RootNamespace>
|
<RootNamespace>PepperDash.Essentials.Plugin</RootNamespace>
|
||||||
<Deterministic>false</Deterministic>
|
<Deterministic>false</Deterministic>
|
||||||
<AssemblyTitle>PepperDash.Essentials.Plugin.Make.Model</AssemblyTitle>
|
<AssemblyTitle>PepperDash.Essentials.Plugin.Make.Model</AssemblyTitle>
|
||||||
<Company>PepperDash Technologies</Company>
|
<Company>PepperDash Technology</Company>
|
||||||
<Description>This software is a template for a PepperDash Essentials Plugin.</Description>
|
<Description>This software is a template for a PepperDash Essentials Plugin.</Description>
|
||||||
<Copyright>Copyright 2025</Copyright>
|
<Copyright>Copyright 2025</Copyright>
|
||||||
<Version>1.0.0-local</Version>
|
<Version>1.0.0-local</Version>
|
||||||
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
|
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
|
||||||
<InformationalVersion>$(Version)</InformationalVersion>
|
<InformationalVersion>$(Version)</InformationalVersion>
|
||||||
<OutputPath>4Series\bin\$(Configuration)\</OutputPath>
|
<OutputPath>bin\$(Configuration)\</OutputPath>
|
||||||
<Authors>PepperDash Technologies</Authors>
|
<Authors>PepperDash Technology</Authors>
|
||||||
<PackageId>Pepperdash.Essentials.Plugins.Template</PackageId>
|
<PackageId>Pepperdash.Essentials.Plugins.Template</PackageId>
|
||||||
<PackageProjectUrl>https://github.com/PepperDash/EssentialsPluginTemplate.git</PackageProjectUrl>
|
<PackageProjectUrl>https://github.com/PepperDash/EssentialsPluginTemplate.git</PackageProjectUrl>
|
||||||
<PackageTags>crestron 4series essentials plugin template</PackageTags>
|
<PackageTags>crestron 4series essentials plugin template</PackageTags>
|
||||||
@@ -35,7 +35,9 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="PepperDashEssentials" Version="2.0.0-hotfix-2613" />
|
<PackageReference Include="PepperDashEssentials" Version="2.0.0" >
|
||||||
|
<ExcludeAssets>runtime</ExcludeAssets>
|
||||||
|
</PackageReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
Reference in New Issue
Block a user