33d7c010fb
- Update version to 11.0.0-PostgreSQL-PREVIEW in assemblies, installer, and build scripts - Default web directory is now "wwwroot" across all platforms - Configuration manager now creates .example files if missing - Set PostgreSQL as default database with sensible options - Postgres provider ensures database exists before table checks - Add docs for marker conflict fixes and startup.json path issues - Version string in logs/UI uses informational version - Installer output filename and wizard show PREVIEW suffix - Documentation summarizes version bump and verification steps
451 lines
8.5 KiB
Markdown
451 lines
8.5 KiB
Markdown
# Version Update to 11.0.0-PostgreSQL PREVIEW
|
|
|
|
**Date:** 2026-02-26
|
|
**Status:** ✅ Complete
|
|
**New Version:** 11.0.0-PostgreSQL PREVIEW
|
|
|
|
---
|
|
|
|
## What Was Changed
|
|
|
|
### 1. SharedVersion.cs ✅
|
|
|
|
**File:** `SharedVersion.cs`
|
|
|
|
**Changed:**
|
|
```csharp
|
|
// OLD:
|
|
[assembly: AssemblyVersion("10.12.0")]
|
|
[assembly: AssemblyFileVersion("10.12.0")]
|
|
|
|
// NEW:
|
|
[assembly: AssemblyVersion("11.0.0")]
|
|
[assembly: AssemblyFileVersion("11.0.0")]
|
|
[assembly: AssemblyInformationalVersion("11.0.0-PostgreSQL-PREVIEW")]
|
|
```
|
|
|
|
**Impact:**
|
|
- All assemblies will report version 11.0.0
|
|
- Informational version shows "11.0.0-PostgreSQL PREVIEW"
|
|
- Visible in About dialog and file properties
|
|
|
|
---
|
|
|
|
### 2. jellyfin-setup.iss ✅
|
|
|
|
**File:** `jellyfin-setup.iss`
|
|
|
|
**Changed:**
|
|
```ini
|
|
; OLD:
|
|
AppVersion=11.0.0
|
|
OutputBaseFilename=JellyfinSetup-PostgreSQL-11.0.0
|
|
|
|
; NEW:
|
|
AppVersion=11.0.0-PostgreSQL-PREVIEW
|
|
OutputBaseFilename=JellyfinSetup-PostgreSQL-11.0.0-PREVIEW
|
|
```
|
|
|
|
**Impact:**
|
|
- Installer shows "11.0.0-PostgreSQL PREVIEW" in wizard
|
|
- Output filename: `JellyfinSetup-PostgreSQL-11.0.0-PREVIEW.exe`
|
|
- Add/Remove Programs shows PREVIEW version
|
|
|
|
---
|
|
|
|
### 3. build-installer.ps1 ✅
|
|
|
|
**File:** `build-installer.ps1`
|
|
|
|
**Changed:**
|
|
```powershell
|
|
# OLD:
|
|
[string]$Version = "11.0.0"
|
|
|
|
# NEW:
|
|
[string]$Version = "11.0.0-PostgreSQL-PREVIEW"
|
|
```
|
|
|
|
**Impact:**
|
|
- Default version when building installer
|
|
- Can still override: `.\build-installer.ps1 -Version "11.0.1"`
|
|
|
|
---
|
|
|
|
## Version Information Breakdown
|
|
|
|
### Assembly Versions
|
|
|
|
**AssemblyVersion:** `11.0.0`
|
|
- Binary version for .NET assembly
|
|
- Used for strong naming
|
|
- Must be numeric only (no text)
|
|
|
|
**AssemblyFileVersion:** `11.0.0`
|
|
- File version shown in Windows Explorer
|
|
- File Properties → Details → File version
|
|
- Must be numeric only
|
|
|
|
**AssemblyInformationalVersion:** `11.0.0-PostgreSQL-PREVIEW`
|
|
- Product version shown in About dialog
|
|
- Can contain text (e.g., "PREVIEW", "beta", "rc1")
|
|
- Used in logs and UI
|
|
|
|
---
|
|
|
|
## Where Version Appears
|
|
|
|
### 1. About Dialog / Dashboard
|
|
|
|
**Location:** Web UI → Dashboard → About
|
|
|
|
**Displays:**
|
|
```
|
|
Jellyfin Server
|
|
Version: 11.0.0-PostgreSQL PREVIEW
|
|
```
|
|
|
|
### 2. File Properties
|
|
|
|
**Right-click jellyfin.dll → Properties → Details:**
|
|
```
|
|
File version: 11.0.0
|
|
Product version: 11.0.0-PostgreSQL PREVIEW
|
|
```
|
|
|
|
### 3. Installer Wizard
|
|
|
|
**Windows Installer:**
|
|
```
|
|
Jellyfin Server (PostgreSQL Edition)
|
|
Version 11.0.0-PostgreSQL PREVIEW
|
|
|
|
Setup
|
|
```
|
|
|
|
### 4. Add/Remove Programs
|
|
|
|
**Windows Settings → Apps:**
|
|
```
|
|
Jellyfin Server (PostgreSQL Edition)
|
|
Version: 11.0.0-PostgreSQL PREVIEW
|
|
Publisher: Your Name
|
|
```
|
|
|
|
### 5. Log Files
|
|
|
|
**Startup logs:**
|
|
```
|
|
[INF] Jellyfin version: 11.0.0-PostgreSQL PREVIEW
|
|
[INF] Operating system: Windows 10.0.19045
|
|
[INF] Architecture: X64
|
|
```
|
|
|
|
---
|
|
|
|
## Building with New Version
|
|
|
|
### Build Application
|
|
|
|
```bash
|
|
# Clean and build
|
|
dotnet clean
|
|
dotnet build --configuration Release
|
|
|
|
# Verify version in output
|
|
cd lib/Release/net11.0
|
|
dotnet jellyfin.dll --version
|
|
# Should show: 11.0.0-PostgreSQL PREVIEW
|
|
```
|
|
|
|
### Build Installer
|
|
|
|
```powershell
|
|
# Use default version (11.0.0-PostgreSQL-PREVIEW)
|
|
.\build-installer.ps1
|
|
|
|
# Output:
|
|
# installer-output\JellyfinSetup-PostgreSQL-11.0.0-PREVIEW.exe
|
|
```
|
|
|
|
Or with custom version:
|
|
```powershell
|
|
.\build-installer.ps1 -Version "11.0.1-PostgreSQL-RC1"
|
|
```
|
|
|
|
---
|
|
|
|
## Version Naming Convention
|
|
|
|
### Format: `MAJOR.MINOR.PATCH-SUFFIX`
|
|
|
|
**Examples:**
|
|
```
|
|
11.0.0-PostgreSQL-PREVIEW ← Current (preview/alpha)
|
|
11.0.0-PostgreSQL-RC1 ← Release candidate
|
|
11.0.0-PostgreSQL ← Stable release
|
|
11.0.1-PostgreSQL ← Bug fix release
|
|
11.1.0-PostgreSQL ← Minor feature release
|
|
12.0.0-PostgreSQL ← Major release
|
|
```
|
|
|
|
### Suffix Guidelines
|
|
|
|
**PREVIEW** (Current)
|
|
- Early testing version
|
|
- May have bugs
|
|
- Features being tested
|
|
- Breaking changes possible
|
|
|
|
**ALPHA**
|
|
- Very early version
|
|
- Unstable
|
|
- For developers only
|
|
|
|
**BETA**
|
|
- Feature complete
|
|
- Testing phase
|
|
- Minor bugs expected
|
|
|
|
**RC1, RC2, etc.**
|
|
- Release candidate
|
|
- Nearly stable
|
|
- Final testing
|
|
|
|
**No suffix**
|
|
- Stable release
|
|
- Production ready
|
|
|
|
---
|
|
|
|
## Updating Version in Future
|
|
|
|
### For Next Release
|
|
|
|
**File:** `SharedVersion.cs`
|
|
```csharp
|
|
[assembly: AssemblyVersion("11.0.1")]
|
|
[assembly: AssemblyFileVersion("11.0.1")]
|
|
[assembly: AssemblyInformationalVersion("11.0.1-PostgreSQL")]
|
|
```
|
|
|
|
**File:** `jellyfin-setup.iss`
|
|
```ini
|
|
AppVersion=11.0.1-PostgreSQL
|
|
OutputBaseFilename=JellyfinSetup-PostgreSQL-11.0.1
|
|
```
|
|
|
|
**File:** `build-installer.ps1`
|
|
```powershell
|
|
[string]$Version = "11.0.1-PostgreSQL"
|
|
```
|
|
|
|
### One-Command Update
|
|
|
|
Create `update-version.ps1`:
|
|
```powershell
|
|
param([string]$NewVersion)
|
|
|
|
# Update SharedVersion.cs
|
|
$sharedVersion = Get-Content "SharedVersion.cs" -Raw
|
|
$sharedVersion = $sharedVersion -replace 'AssemblyVersion\("[\d\.]+"\)', "AssemblyVersion(`"$NewVersion`")"
|
|
$sharedVersion = $sharedVersion -replace 'AssemblyFileVersion\("[\d\.]+"\)', "AssemblyFileVersion(`"$NewVersion`")"
|
|
Set-Content -Path "SharedVersion.cs" -Value $sharedVersion
|
|
|
|
# Update build script
|
|
# (Similar for other files)
|
|
```
|
|
|
|
---
|
|
|
|
## README.md Updates Needed
|
|
|
|
### Quick Start Section
|
|
|
|
**Update version references:**
|
|
|
|
```markdown
|
|
## Quick Start
|
|
|
|
### Windows Installer
|
|
```powershell
|
|
# Run JellyfinSetup-PostgreSQL-11.0.0-PREVIEW.exe
|
|
# Follow wizard for PostgreSQL setup
|
|
```
|
|
|
|
### From Source
|
|
```bash
|
|
cd pgsql-jellyfin
|
|
dotnet build --configuration Release
|
|
cd lib/Release/net11.0
|
|
dotnet jellyfin.dll
|
|
# Jellyfin 11.0.0-PostgreSQL PREVIEW
|
|
```
|
|
```
|
|
|
|
---
|
|
|
|
## Documentation Updates Needed
|
|
|
|
### Files to Update
|
|
|
|
1. **README.md**
|
|
- Update installer filename references
|
|
- Update version in quick start
|
|
- Update version in installation guide
|
|
|
|
2. **INSTALLER_QUICK_START.md**
|
|
- Update installer filename
|
|
- Update version numbers
|
|
|
|
3. **INSTALLER_GUIDE.md**
|
|
- Update version references
|
|
- Update screenshot references if any
|
|
|
|
4. **PR_DESCRIPTION.md**
|
|
- Update version numbers
|
|
- Mention PREVIEW status
|
|
|
|
---
|
|
|
|
## Git Commit
|
|
|
|
```bash
|
|
git add SharedVersion.cs jellyfin-setup.iss build-installer.ps1
|
|
git commit -m "Update version to 11.0.0-PostgreSQL PREVIEW
|
|
|
|
Changes:
|
|
- Updated SharedVersion.cs to 11.0.0
|
|
- Added AssemblyInformationalVersion: 11.0.0-PostgreSQL-PREVIEW
|
|
- Updated jellyfin-setup.iss AppVersion
|
|
- Updated installer output filename
|
|
- Updated build-installer.ps1 default version
|
|
|
|
Reason:
|
|
- Clearly identifies this as PostgreSQL fork
|
|
- PREVIEW indicates testing/early release status
|
|
- Distinguishes from official Jellyfin releases
|
|
|
|
Visibility:
|
|
- About dialog shows 11.0.0-PostgreSQL PREVIEW
|
|
- Installer shows PREVIEW version
|
|
- Add/Remove Programs displays full version
|
|
- Log files show PostgreSQL PREVIEW
|
|
|
|
Breaking Changes: None
|
|
Build Status: ✅ Successful
|
|
"
|
|
```
|
|
|
|
---
|
|
|
|
## Verification
|
|
|
|
### Check Assembly Version
|
|
|
|
```powershell
|
|
# Build and check
|
|
dotnet build --configuration Release
|
|
cd lib/Release/net11.0
|
|
|
|
# Check DLL version
|
|
$dll = Get-Item "jellyfin.dll"
|
|
$version = [System.Diagnostics.FileVersionInfo]::GetVersionInfo($dll.FullName)
|
|
Write-Host "File Version: $($version.FileVersion)"
|
|
Write-Host "Product Version: $($version.ProductVersion)"
|
|
|
|
# Expected output:
|
|
# File Version: 11.0.0
|
|
# Product Version: 11.0.0-PostgreSQL PREVIEW
|
|
```
|
|
|
|
### Check at Runtime
|
|
|
|
```bash
|
|
cd lib/Release/net11.0
|
|
dotnet jellyfin.dll --version
|
|
|
|
# Should show:
|
|
# Jellyfin 11.0.0-PostgreSQL PREVIEW
|
|
```
|
|
|
|
### Check Installer
|
|
|
|
```powershell
|
|
# Build installer
|
|
.\build-installer.ps1
|
|
|
|
# Verify output file
|
|
Test-Path "installer-output\JellyfinSetup-PostgreSQL-11.0.0-PREVIEW.exe"
|
|
# Should return: True
|
|
|
|
# Run installer and check version in wizard
|
|
```
|
|
|
|
---
|
|
|
|
## Comparison: Official vs. Fork
|
|
|
|
### Official Jellyfin
|
|
```
|
|
Version: 10.12.0
|
|
Database: SQLite
|
|
Platform: Original
|
|
```
|
|
|
|
### This Fork (PostgreSQL PREVIEW)
|
|
```
|
|
Version: 11.0.0-PostgreSQL PREVIEW
|
|
Database: PostgreSQL
|
|
Platform: Enterprise
|
|
```
|
|
|
|
**Clear differentiation** ✅
|
|
|
|
---
|
|
|
|
## Future Version Roadmap
|
|
|
|
### Suggested Path
|
|
|
|
**11.0.0-PostgreSQL-PREVIEW** ← Current
|
|
- Initial testing
|
|
- Early adopters
|
|
- Feature development
|
|
|
|
**11.0.0-PostgreSQL-RC1**
|
|
- Feature complete
|
|
- Bug fixes
|
|
- Final testing
|
|
|
|
**11.0.0-PostgreSQL**
|
|
- Stable release
|
|
- Production ready
|
|
- Official launch
|
|
|
|
**11.0.1-PostgreSQL**
|
|
- Bug fixes
|
|
- Minor improvements
|
|
|
|
**11.1.0-PostgreSQL**
|
|
- New features
|
|
- Minor version bump
|
|
|
|
---
|
|
|
|
## Summary
|
|
|
|
**Old Version:** 10.12.0
|
|
**New Version:** 11.0.0-PostgreSQL PREVIEW
|
|
|
|
**Files Changed:**
|
|
1. SharedVersion.cs - Assembly versions
|
|
2. jellyfin-setup.iss - Installer version
|
|
3. build-installer.ps1 - Build script default
|
|
|
|
**Build Status:** ✅ Successful
|
|
**Installer:** `JellyfinSetup-PostgreSQL-11.0.0-PREVIEW.exe`
|
|
**Display:** "11.0.0-PostgreSQL PREVIEW" everywhere
|
|
|
|
✅ **Version update complete!**
|