Skip to content

Commit

Permalink
Merge branch 'release/0.9.7'
Browse files Browse the repository at this point in the history
  • Loading branch information
Arvtesh committed Sep 27, 2018
2 parents f4d545a + 0b36df9 commit 0b96fc7
Show file tree
Hide file tree
Showing 139 changed files with 3,952 additions and 1,241 deletions.
2 changes: 1 addition & 1 deletion .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ install:
- cmd: git submodule -q update --init

build_script:
- ps: .\build.ps1
- ps: .\src\build.ps1 Release

artifacts:
- path: .\bin\net35
Expand Down
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@
[Bb]uild/
[Bb]uilds/

# Unity
/unity/Sandbox/Assets/Plugins/
/unity/Sandbox/*.*
/unity/Sandbox35/Assets/Plugins/
/unity/Sandbox35/*.*

# Visual Studio cache directory
.vs/
.vscode/
Expand Down
2 changes: 1 addition & 1 deletion Build.bat
Original file line number Diff line number Diff line change
@@ -1 +1 @@
powershell .\Build.ps1
powershell .\src\Build.ps1 Release
1 change: 0 additions & 1 deletion Build.ps1

This file was deleted.

5 changes: 5 additions & 0 deletions BuildSandbox.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
powershell .\src\Build.ps1 Release
rd unity\Sandbox\Assets\Plugins /S /Q
xcopy bin\AssetStore\netstandard2.0 unity\Sandbox /S
rd unity\Sandbox35\Assets\Plugins /S /Q
xcopy bin\AssetStore\net35 unity\Sandbox35 /S
28 changes: 27 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,33 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/); this project adheres to [Semantic Versioning](http://semver.org/).

-----------------------
## [0.9.6] - unreleased
## [0.9.7] - 2018.09.27

### Added
- Added convenience overloads for `SetException`-like methods accepting as error message string.
- Added allocation optimizations for single-threaded applications (particularly for Unity3d). See `AsyncResult.DefaultSynchronizationContext` for more info.
- Added new overloads for `ConfigureAwait` extensions accepting continuation options instead of boolean flag.
- Added `SynchronizationContext` extension methods for `Send`/`Post` accepting `Action` as the delegate.
- Added `AsyncResult.Yield` static method (workd exactly as `Task.Yield`).
- Added `AsyncUtility.AddFrameCallback` helper for scheduling delegates for `MonoBehaviour` update loop.
- Signed the assembly with a strong name.
- Added performance benchmarks.
- Added sandbox Unity project.

### Changed
- Moved several of `IAsyncOperationEvents` methods to the interface extensions.
- Simplified `AsyncLazy` interface.

### Fixed
- Fixed error handling in `AsyncOperationResult`.

### Removed
- Removed Asset Store samples.
- Dropped Unity 5.0 support (the minimum version supported is now 5.4).
- Dropped `WWW` support for Unity 2018.3+ (it has been deprecated in Unity).

-----------------------
## [0.9.6] - 2018.08.31

### Added
- Added `Play`/`Wait` extension methods for `Animation` and `Animator`.
Expand Down
9 changes: 7 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@ Channel | UnityFx.Async |
AppVeyor | [![Build status](https://ci.appveyor.com/api/projects/status/hfmq9vow53al7tpd/branch/master?svg=true)](https://ci.appveyor.com/project/Arvtesh/unityfx-async/branch/master) [![AppVeyor tests](https://img.shields.io/appveyor/tests/Arvtesh/unityFx-async.svg)](https://ci.appveyor.com/project/Arvtesh/unityfx-async/build/tests)
NuGet | [![NuGet](https://img.shields.io/nuget/v/UnityFx.Async.svg)](https://www.nuget.org/packages/UnityFx.Async)
Github | [![GitHub release](https://img.shields.io/github/release/Arvtesh/UnityFx.Async.svg?logo=github)](https://github.com/Arvtesh/UnityFx.Async/releases)
Unity Asset Store | [![Asynchronous operations for Unity](https://img.shields.io/badge/tools-v0.9.6-green.svg)](https://assetstore.unity.com/packages/tools/asynchronous-operations-for-unity-96696)
Unity Asset Store | [![Asynchronous operations for Unity](https://img.shields.io/badge/tools-v0.9.7-green.svg)](https://assetstore.unity.com/packages/tools/asynchronous-operations-for-unity-96696)

**Required Unity 5.4 or higher.**

**If you enjoy using the library - please, [rate and review](https://assetstore.unity.com/packages/tools/asynchronous-operations-for-unity-96696) it on the Asset Store!**

Expand Down Expand Up @@ -41,7 +43,7 @@ The table below summarizes differences berween *UnityFx.Async* and other popular
### Prerequisites
You may need the following software installed in order to build/use the library:
- [Microsoft Visual Studio 2017](https://www.visualstudio.com/vs/community/).
- [Unity3d](https://store.unity.com/).
- [Unity3d](https://store.unity.com/) (the minimum supported version is **5.4**).

### Getting the code
You can get the code by cloning the github repository using your preffered git client UI or you can do it from command line as follows:
Expand All @@ -52,6 +54,9 @@ git submodule -q update --init
### Getting binaries
The binaries are available as a [NuGet package](https://www.nuget.org/packages/UnityFx.Async). See [here](http://docs.nuget.org/docs/start-here/using-the-package-manager-console) for instructions on installing a package via nuget. One can also download them directly from [Github releases](https://github.com/Arvtesh/UnityFx.Async/releases). Unity3d users can import corresponding [Unity Asset Store package](https://assetstore.unity.com/packages/tools/asynchronous-operations-for-unity-96696) using the editor.

### Unity dependencies
The library core (`UnityFx.Async.dll`) does not depend on Unity and can be used in any .NET projects (via assembly or [NuGet](https://www.nuget.org/packages/UnityFx.Async) reference). All Unity-specific stuff depends on the core and is included in [Unity Asset Store package](https://assetstore.unity.com/packages/tools/asynchronous-operations-for-unity-96696).

## Understanding the concepts
The topics below are just a quick summary of problems and the proposed solutions. For more details on the topic please see useful links at the end of this document.
### Callback hell
Expand Down
6 changes: 2 additions & 4 deletions src/Build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -69,18 +69,16 @@ function _PublishAssetStorePackage
param([string]$targetFramework)

$changelogPath = (Join-Path $scriptPath "..\CHANGELOG.md")
$readmePath = (Join-Path $scriptPath "UnityFx.Async\README.txt")
$filesToPublish = (Join-Path $scriptPath "UnityFx.Async.AssetStore\Assets\*")
$binToPublish =(Join-Path $binPath (Join-Path $targetFramework "\*"))
$binToPublish =(Join-Path $binPath (Join-Path $targetFramework "\*"))
$publishPath = (Join-Path $assetStorePath (Join-Path $targetFramework "Assets"))
$publishPath2 = (Join-Path $publishPath "Plugins\UnityFx.Async")
$publishBinPath = (Join-Path $publishPath "Plugins\UnityFx.Async\Bin")

New-Item $publishBinPath -ItemType Directory
Copy-Item -Path $filesToPublish -Destination $publishPath -Force -Recurse
Copy-Item -Path $binToPublish -Destination $publishBinPath -Force -Recurse
Copy-Item -Path $changelogPath -Destination $publishPath2 -Force
Copy-Item -Path $readmePath -Destination $publishPath2 -Force
}

_PublishAssetStorePackage "net35"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
SUMMARY
The package provides lightweight Task-like asynchronous operations (promises) for Unity3d.

PUBLISHER INFORMATION
https://www.linkedin.com/in/alexander-bogarsukov-93b9682/

LICENSE
https://github.com/Arvtesh/UnityFx.Async/blob/master/LICENSE.md

Expand Down
Loading

0 comments on commit 0b96fc7

Please sign in to comment.