Skip to content

Commit

Permalink
Merge branch 'devel'
Browse files Browse the repository at this point in the history
  • Loading branch information
JosefNemec committed Jul 26, 2019
2 parents 78893f9 + 035be1b commit 158247c
Show file tree
Hide file tree
Showing 364 changed files with 6,676 additions and 3,273 deletions.
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -274,5 +274,5 @@ tests/TestConfig.yaml
source/PlayniteServices/customSettings.json

# Not redistributable
source/Playnite.FullscreenApp/Themes/Fullscreen/Default/Fonts/XboxOne/XBOXONE.ttf
source/Playnite.FullscreenApp/Themes/Fullscreen/Default/Fonts/PlayStation4/PlayStation4.ttf
XBOXONE.ttf
PlayStation4.ttf
17 changes: 17 additions & 0 deletions build/GenerateThemeDiff.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
param(
[Parameter(Mandatory=$true)]
[string]$FirstCommit,
[Parameter(Mandatory=$true)]
[string]$SecondCommit
)

$gitOutPath = "gitout.txt"
try
{
Start-Process "git" "diff --name-only $FirstCommit $SecondCommit" -NoNewWindow -Wait -RedirectStandardOutput $gitOutPath
Get-Content $gitOutPath | Where {$_ -match "(DesktopApp|FullscreenApp)/Themes/(Desktop|Fullscreen)/Default"}
}
finally
{
Remove-item $gitOutPath -Force -EA 0
}
4 changes: 4 additions & 0 deletions build/build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,10 @@
Properties="OutputPath=bin/$(Configuration); Configuration=$(Configuration); AllowedReferenceRelatedFileExtensions=none;" />
</Target>
<Target Name="Build" DependsOnTargets="Plugins">
<MSBuild
Projects="../source/tools/Playnite.Toolbox/Playnite.Toolbox.csproj"
Targets="Build"
Properties="OutputPath=$(OutputPath); Configuration=$(Configuration); AllowedReferenceRelatedFileExtensions=none;" />
<MSBuild
Projects="../source/tools/Playnite.UIWrapper/Playnite.UIWrapper.csproj"
Targets="Build"
Expand Down
2 changes: 1 addition & 1 deletion build/buildSdkNuget.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ $specFile = "nuget.nuspec"
try
{
$spec | Out-File $specFile
$packageRes = StartAndWait "nuget" "pack $specFile"
$packageRes = Invoke-Nuget "pack $specFile"
if ($packageRes -ne 0)
{
throw "Nuget packing failed."
Expand Down
12 changes: 10 additions & 2 deletions build/common.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -51,15 +51,23 @@ function global:Invoke-Nuget()
[string]$NugetArgs
)

if (-not (Get-Command -Name "nuget" -Type Application -ErrorAction Ignore))
$nugetCommand = Get-Command -Name "nuget" -Type Application -ErrorAction Ignore
if (-not $nugetCommand)
{
if (-not (Test-Path "nuget.exe"))
{
Invoke-WebRequest -Uri $NugetUrl -OutFile "nuget.exe"
}
}

StartAndWait "nuget" $NugetArgs
if ($nugetCommand)
{
return StartAndWait "nuget" $NugetArgs
}
else
{
return StartAndWait ".\nuget.exe" $NugetArgs
}
}

function global:Get-MsBuildPath()
Expand Down
391 changes: 336 additions & 55 deletions doc/api/.manifest

Large diffs are not rendered by default.

20 changes: 13 additions & 7 deletions doc/changelog.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,28 @@
#### 3.0.0
#### 5.0.0

* **Breaking Changes**:
* Extension plugins are no longer created by inheriting plugin interface, but rather extending [Plugin](xref:Playnite.SDK.Plugins.Plugin) and [LibraryPlugin](xref:Playnite.SDK.Plugins.LibraryPlugin) abstract classes.
* [IGameDatabase](xref:Playnite.SDK.IGameDatabase) interface is completely changed and every object collection (Games, Genres, Tags etc.) is now accessible via appropriate `IItemCollection` property.
* [Game](xref:Playnite.SDK.Models.Game) changed dramatically. Fields like genres, tags and others are no longer part of the model itself but just ID pointers to appropriate database objects.

* New
* Extended several API with new methods.

#### 3.0.0

* **Breaking Changes**:
* Removed and added new APIs and API members, see [full list](memberChanges3_0.md) of changes.
* Removed and added new APIs and API members.
* Game files are no longer stored in single database file. All game and media files are now accessible in their raw form even without user of database API.
* See [migration tutorial](tutorials/extensionMigration2to3.md) for step by step guide on how update existing extensions.

#### 2.0.0

* **Breaking Changes**:
* In order to unify terminology used in Playnite's UI and that in SDK, some classes and class members [were renamed](memberChanges2_0.md).
* In order to unify terminology used in Playnite's UI and that in SDK, some classes and class members were renamed.
* Extensions (both plugins and scripts) have to provide [extension manifest](tutorials/extensionsManifest.md) otherwise they won't be loaded.
* Various information about extension (author, version etc.) must be now stored in manifest file.
* Both plugins and scripts have to be stored in the same folder called `Extensions` (rather then in separate `Plugins` or `Scripts` folders).
* Signature for default C# plugins has changed and they now have to implement `IGenericPlugin` interface to be loaded.

* See [migration tutorial](tutorials/extensionMigration1to2.md) for step by step guide on how to convert existing extensions to a new format.

* New Plugin types. There are now two types of plugins that can be implemented:
* Generic Plugin: Same as the old plugins.
* [Library Plugin](tutorials/plugins/libraryPlugins.md): Used to add new library providers responsible for automatic game import from various sources.
Expand All @@ -40,5 +46,5 @@
#### 1.1.0

* **Breaking Change**: Scripts and Plugins must be place in subfolders rather then directly inside of `Scripts` or `Plugins` folders.
* New: [OnGameStarting](xref:Playnite.SDK.Plugins.IGenericPlugin.OnGameStarting(Playnite.SDK.Models.Game)) event that will execute before game is started. See [events](tutorials/scripts/scriptingEvents.md) for use from scripts.
* New: `OnGameStarting` event that will execute before game is started. See [events](tutorials/scripts/scriptingEvents.md) for use from scripts.
* New: [ShowErrorMessage](xref:Playnite.SDK.IDialogsFactory.ShowErrorMessage(System.String,System.String)) method in `IDialogsFactory`
4 changes: 1 addition & 3 deletions doc/docfx.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,7 @@
],
"resource": [
{
"files": [
"images/**"
]
"files": [ "**/images/**" ]
}
],
"overwrite": [
Expand Down
8 changes: 6 additions & 2 deletions doc/index.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
# Playnite SDK documentation

### Tutorials
### Extensions

To get documentation and tutorials on how to extend Playnite's functionality with scripts and plugins see [tutorials](tutorials/intro.md) page.
To get documentation and tutorials on how to extend Playnite's functionality with scripts and plugins see [extension tutorials](tutorials/intro.md) page.

### Themes

To get documentation and about custom themes see [themes introduction](tutorials/themes/introduction.md) page.

### API Documentation

Expand Down
73 changes: 0 additions & 73 deletions doc/memberChanges2_0.md

This file was deleted.

49 changes: 0 additions & 49 deletions doc/memberChanges3_0.md

This file was deleted.

21 changes: 0 additions & 21 deletions doc/tutorials/extensionMigration1to2.md

This file was deleted.

13 changes: 0 additions & 13 deletions doc/tutorials/extensionMigration2to3.md

This file was deleted.

Loading

0 comments on commit 158247c

Please sign in to comment.