Jellyfin 11.0.0-PostgreSQL PREVIEW: version bump & defaults
- 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
This commit is contained in:
@@ -318,8 +318,44 @@ namespace Emby.Server.Implementations.AppBase
|
||||
Logger.LogError(ex, "Error loading configuration file: {Path}", path);
|
||||
}
|
||||
|
||||
return Activator.CreateInstance(configurationType)
|
||||
// Configuration file doesn't exist, check for .example file
|
||||
var examplePath = path + ".example";
|
||||
var exampleFileJustCreated = false;
|
||||
|
||||
var defaultConfiguration = Activator.CreateInstance(configurationType)
|
||||
?? throw new InvalidOperationException("Configuration type can't be Nullable<T>.");
|
||||
|
||||
try
|
||||
{
|
||||
Directory.CreateDirectory(Path.GetDirectoryName(path) ?? throw new InvalidOperationException("Path can't be a root directory."));
|
||||
|
||||
// Create .example file if it doesn't exist
|
||||
if (!File.Exists(examplePath))
|
||||
{
|
||||
XmlSerializer.SerializeToFile(defaultConfiguration, examplePath);
|
||||
Logger.LogInformation("Created example configuration file: {Path}", examplePath);
|
||||
exampleFileJustCreated = true;
|
||||
}
|
||||
|
||||
// Copy example to actual file only if example was just created or if we want to initialize from example
|
||||
if (exampleFileJustCreated)
|
||||
{
|
||||
File.Copy(examplePath, path, overwrite: false);
|
||||
Logger.LogInformation("Created configuration file from example: {Path}", path);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Example exists but actual doesn't - create actual with defaults (user may have customized example)
|
||||
XmlSerializer.SerializeToFile(defaultConfiguration, path);
|
||||
Logger.LogInformation("Created default configuration file: {Path}", path);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.LogWarning(ex, "Unable to create configuration file: {Path}", path);
|
||||
}
|
||||
|
||||
return defaultConfiguration;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
|
||||
Reference in New Issue
Block a user