Skip to content

Commit c45b859

Browse files
author
Chris Maunder
committed
Merge branch 'main' into v2.9.0
2 parents cc0632a + 79fd70a commit c45b859

File tree

23 files changed

+127
-52
lines changed

23 files changed

+127
-52
lines changed

.github/workflows/package-ObjectDetectionYOLOv5-6.2.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,18 @@ jobs:
1313

1414
steps:
1515
- name: Checkout repository
16-
uses: actions/checkout@v3
16+
uses: actions/checkout@v4
1717

1818
- name: Create module package file
1919
id: create_package
2020
run: |
2121
cd modules/ObjectDetectionYOLOv5-6.2
22-
package_file=$(curl -sL https://raw.githubusercontent.com/codeproject/CodeProject.AI-Server/refs/heads/main/devops/build/create_packages.sh --no-color --github-action | bash)
22+
package_file=$(curl -sL https://raw.githubusercontent.com/codeproject/CodeProject.AI-Server/refs/heads/main/devops/build/create_packages.sh | bash -s -- --no-color --github-action)
23+
echo "package_file=$package_file"
2324
echo "package_file=$package_file" >> $GITHUB_OUTPUT
2425
2526
- name: Upload ZIP as artifact
26-
uses: actions/upload-artifact@v3
27+
uses: actions/upload-artifact@v4
2728
with:
2829
name: ${{ steps.create_package.outputs.package_file }}
2930
path: ${{ steps.create_package.outputs.package_file }}

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,19 @@
99

1010
# CodeProject.AI Server
1111

12-
[**Download the latest version**](https://www.codeproject.com/ai/latest.aspx)
12+
[**Download the latest version**](https://codeproject.github.io/codeproject.ai/latest.html)
1313

1414
A standalone, self-hosted, fast, free and Open Source Artificial Intelligence microserver for any
1515
platform, any language. It can be installed locally, required no off-device or out of network data
1616
transfer, and is easy to use.
1717

18-
![Object detection](https://www.codeproject.com/ai/docs/img/DetectThings.png)
18+
![Object detection](https://codeproject.github.io/codeproject.ai/img/DetectThings.png)
1919

2020
# Supported Platforms
2121

2222
<div style="width:75%;min-width:700px;margin:30px auto">
2323

24-
| <img src="https://www.codeproject.com/ai/docs/img/windows.svg" title="Windows" style="width:64px"> | <img src="https://www.codeproject.com/ai/docs/img/macos.svg" title="macOS" style="width:72px"> | <img src="https://www.codeproject.com/ai/docs/img/apple-silicon.svg" title="Apple Silicon" style="width:64px"> | <img src="https://www.codeproject.com/ai/docs/img/Ubuntu.svg" title="Ubuntu" style="width:64px"> | <img src="https://www.codeproject.com/ai/docs/img/RaspberryPi64.svg" title="Raspberry Pi arm64" style="width:64px"> | <img src="https://www.codeproject.com/ai/docs/img/docker.svg" title="Docker" style="width:64px"> | <img src="https://www.codeproject.com/ai/docs/img/VisualStudio.svg" title="Visual Studio" style="width:64px"> | <img src="https://www.codeproject.com/ai/docs/img/VisualStudioCode.svg" title="Visual Studio Code" style="width:64px"> |
24+
| <img src="https://codeproject.github.io/codeproject.ai/img/windows.svg" title="Windows" style="width:64px"> | <img src="https://codeproject.github.io/codeproject.ai/img/macos.svg" title="macOS" style="width:72px"> | <img src="https://codeproject.github.io/codeproject.ai/img/apple-silicon.svg" title="Apple Silicon" style="width:64px"> | <img src="https://codeproject.github.io/codeproject.ai/img/Ubuntu.svg" title="Ubuntu" style="width:64px"> | <img src="https://codeproject.github.io/codeproject.ai/img/RaspberryPi64.svg" title="Raspberry Pi arm64" style="width:64px"> | <img src="https://codeproject.github.io/codeproject.ai/img/docker.svg" title="Docker" style="width:64px"> | <img src="https://codeproject.github.io/codeproject.ai/img/VisualStudio.svg" title="Visual Studio" style="width:64px"> | <img src="https://codeproject.github.io/codeproject.ai/img/VisualStudioCode.svg" title="Visual Studio Code" style="width:64px"> |
2525
| :------: | :---: | :---------: | :-----: | :----: | :----: | :--------------------: | :-------------------: |
2626
| Windows | macOS | macOS arm64 | Ubuntu / Debian | Raspberry&nbsp;Pi arm64 | Docker | Visual Studio<br>2019+ | Visual Studio<br>Code |
2727

@@ -32,15 +32,15 @@ transfer, and is easy to use.
3232

3333
1. AI programming is something every single developer should be aware of. We wanted a fun project we could use to help teach developers and get them involved in AI. We'll be using CodeProject.AI as a focus for articles and exploration to make it fun and painless to learn AI programming.
3434

35-
3. We got sick of fighting versions and libraries and models and being blocked by tiny annoying things every step of the way. So we put put this together so we could save you the frustation. We'll take care of the housekeeping, you focus on the code.
35+
3. We got sick of fighting versions and libraries and models and being blocked by tiny annoying things every step of the way. So we put put this together so we could save you the frustration. We'll take care of the housekeeping, you focus on the code.
3636

3737
2. We also got sick of needing to sign up to potentially expensive services for AI functionality. This is something we need, and by sharing maybe you can use it too, and hopefully add your own modules and improvements along the way.
3838

3939
## Cut to the chase: how do I play with it?
4040

4141
### 1: Running and playing with the features
4242

43-
1. [**Download the latest version**](https://www.codeproject.com/ai/latest.aspx), install, and launch the shortcut to the server's dashboard on your desktop.
43+
1. [**Download the latest version**](https://codeproject.github.io/codeproject.ai/latest.html), install, and launch the shortcut to the server's dashboard on your desktop.
4444
2. On the dashboard, top and centre, is a link to the CodeProject.AI Explorer. Open that and play!
4545

4646
### 2: Running and debugging the code
@@ -127,8 +127,8 @@ The current release provides support for CPU on each platform, DirectML on Windo
127127

128128
## How to Guides
129129

130-
- [Installing CodeProject.AI on your machine](https://www.codeproject.com/ai/docs/why/install_on_windows.html). For those who have CodeProject.AI integrated with Home Assist or Blue Iris
131-
- [Setting up the development environment](https://www.codeproject.com/ai/docs/devguide/install_dev.html) (spoiler: it's easy!)
132-
- [Running in Docker](https://www.codeproject.com/ai/docs/why/running_in_docker.html)
133-
- Setup or install issues? See [Common Errors](https://www.codeproject.com/ai/docs/devguide/common_errors.html)
130+
- [Installing CodeProject.AI on your machine](https://codeproject.github.io/codeproject.ai/why/install_on_windows.html). For those who have CodeProject.AI integrated with Home Assist or Blue Iris
131+
- [Setting up the development environment](https://codeproject.github.io/codeproject.ai/devguide/install_dev.html) (spoiler: it's easy!)
132+
- [Running in Docker](https://codeproject.github.io/codeproject.ai/why/running_in_docker.html)
133+
- Setup or install issues? See [Common Errors](https://codeproject.github.io/codeproject.ai/devguide/common_errors.html)
134134

devops/build/create_packages.bat

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ set rootDirPath=%cd%
6262
popd
6363
set sdkPath=%rootDirPath%\%srcDir%\%sdkDir%
6464
set utilsScriptsDirPath=%rootDirPath%\%srcDir%\scripts
65-
set utilsScript=!utilsScriptsDirPath!\utils.bat
65+
set utilsScript=%utilsScriptsDirPath%\utils.bat
6666

6767
:: Override some values via parameters ::::::::::::::::::::::::::::::::::::::::
6868

@@ -103,7 +103,6 @@ set modulesDirPath=!rootDirPath!\!modulesDir!
103103
set externalModulesDirPath=!rootDirPath!\..\!externalModulesDir!
104104
set packageDirPath=!rootDirPath!\!packageDir!
105105

106-
if [ ! -d "${packageDirPath}" ]; then mkdir -p "${packageDirPath}"; fi
107106
if not exist "!packageDirPath!" mkdir "!packageDirPath!"
108107

109108

modules/ObjectDetectionYOLOv5-6.2/modulesettings.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"License": "GPL-3.0",
1212
"LicenseUrl": "https://opensource.org/licenses/GPL-3.0",
1313
"Author": "Matthew Dennis",
14-
"Homepage": "https://codeproject.com/ai",
14+
"Homepage": "https://codeproject.github.io/codeproject.ai",
1515
"BasedOn": "Ultralytics YOLOv5",
1616
"BasedOnUrl": "https://github.com/ultralytics/yolov5"
1717
},

modules/ObjectDetectionYOLOv5Net/modulesettings.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"License": "MIT",
1313
"LicenseUrl": "https://opensource.org/licenses/MIT",
1414
"Author": "Matthew Dennis",
15-
"Homepage": "https://codeproject.com/ai",
15+
"Homepage": "https://codeproject.github.io/codeproject.ai",
1616
"BasedOn": "yolov5-net",
1717
"BasedOnUrl": "https://github.com/techwingslab/yolov5-net"
1818
},

src/SDK/NET/Common/VersionInfo.cs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,22 @@
22

33
namespace CodeProject.AI.SDK.Common
44
{
5+
/// <summary>
6+
/// Maps to the server's version.json file
7+
/// </summary>
8+
public class VersionFileContents
9+
{
10+
public class VersionSectionWrap
11+
{
12+
/// <summary>
13+
/// The Version info
14+
/// </summary>
15+
public VersionInfo? VersionInfo { get; set; } = null;
16+
}
17+
18+
public VersionSectionWrap? VersionSection { get; set; } = null;
19+
}
20+
521
/// <summary>
622
/// The current version of the server.
723
/// </summary>

src/SDK/NET/Modules/ModuleBase.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,6 @@ public static bool IsCompatible(this ModuleBase module, string? currentServerVer
327327
available = platformOK;
328328
}
329329

330-
// Final check: is the module specifically excluded from the current platform?
331330
return available;
332331
}
333332
}

src/SDK/NET/Modules/ModuleDescription.cs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,10 +169,12 @@ public static class ModuleDescriptionExtensions
169169
/// <param name="module">This module that requires initialisation</param>
170170
/// <param name="currentServerVersion">The current version of the server</param>
171171
/// <param name="moduleDirPath">The path to the folder containing this module</param>
172+
/// <param name="moduleStorageUrl">The base URL for downloading module install packages</param>
172173
/// <param name="moduleLocation">The location of this module</param>
173174
/// <returns>True on success; false otherwise</returns>
174175
public static void Initialise(this ModuleDescription module, string currentServerVersion,
175-
string moduleDirPath, ModuleLocation moduleLocation)
176+
string moduleDirPath, string moduleStorageUrl,
177+
ModuleLocation moduleLocation)
176178
{
177179
module.ModuleDirPath = moduleDirPath;
178180
module.WorkingDirectory = module.ModuleDirPath; // This once was allowed to be different to moduleDirPath
@@ -181,6 +183,14 @@ public static void Initialise(this ModuleDescription module, string currentServe
181183
module.CheckVersionAgainstModuleReleases();
182184
SetLatestCompatibleVersion(module, currentServerVersion);
183185

186+
// When we downloaded this list from CodeProject the download URL was set. When we get
187+
// this list from a modules.json file (eg off github) then the download Url isn't set
188+
if (string.IsNullOrWhiteSpace(module.DownloadUrl))
189+
{
190+
// TODO: Generalise this in a utility method
191+
module.DownloadUrl = $"{moduleStorageUrl}{module.ModuleId}-{module.Version}.zip";
192+
}
193+
184194
// Set the status of all entries based on availability on this platform
185195
module.Status = module.IsCompatible(currentServerVersion)
186196
? ModuleStatusType.Available : ModuleStatusType.NotAvailable;

src/demos/clients/Javascript/Vision.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1057,7 +1057,7 @@
10571057
<div class=" mx-auto p-3" style="max-width:1100px;">
10581058

10591059
<div class="w-100 header d-flex justify-content-between">
1060-
<a href="https://www.codeproject.com" style="margin:2px 0 2px 5px">
1060+
<a href="https://codeproject.github.io/codeproject.ai" style="margin:2px 0 2px 5px">
10611061
<svg version="1.1" xmlns="http://www.w3.org/2000/svg"
10621062
xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" role="img"
10631063
style="height: 60px; margin-right: -12px;">
@@ -1108,7 +1108,7 @@
11081108

11091109
<!--<div style="font-size: 2.1rem; margin-top: 12px;">CodeProject.AI Explorer</div>-->
11101110

1111-
<a href="https://www.codeproject.com/ai" style="margin:0px 5px 0 0">
1111+
<a href="https://codeproject.github.io/codeproject.ai" style="margin:0px 5px 0 0">
11121112
<svg viewBox="0 0 660 160" xmlns="http://www.w3.org/2000/svg" style="height:60px">
11131113
<defs>
11141114
<style>

src/demos/modules/DotNetLongProcess/modulesettings.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"License": "MIT",
1313
"LicenseUrl": "https://opensource.org/licenses/MIT",
1414
"Author": "Chris Maunder",
15-
"Homepage": "https://codeproject.com/ai",
15+
"Homepage": "https://codeproject.github.io/codeproject.ai",
1616
"BasedOn": null,
1717
"BasedOnUrl": null
1818
},

0 commit comments

Comments
 (0)