Skip to content

Commit 0b96fc7

Browse files
committed
Merge branch 'release/0.9.7'
2 parents f4d545a + 0b36df9 commit 0b96fc7

File tree

139 files changed

+3952
-1241
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

139 files changed

+3952
-1241
lines changed

.appveyor.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ install:
1616
- cmd: git submodule -q update --init
1717

1818
build_script:
19-
- ps: .\build.ps1
19+
- ps: .\src\build.ps1 Release
2020

2121
artifacts:
2222
- path: .\bin\net35

.gitignore

+6
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@
77
[Bb]uild/
88
[Bb]uilds/
99

10+
# Unity
11+
/unity/Sandbox/Assets/Plugins/
12+
/unity/Sandbox/*.*
13+
/unity/Sandbox35/Assets/Plugins/
14+
/unity/Sandbox35/*.*
15+
1016
# Visual Studio cache directory
1117
.vs/
1218
.vscode/

Build.bat

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
powershell .\Build.ps1
1+
powershell .\src\Build.ps1 Release

Build.ps1

-1
This file was deleted.

BuildSandbox.bat

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
powershell .\src\Build.ps1 Release
2+
rd unity\Sandbox\Assets\Plugins /S /Q
3+
xcopy bin\AssetStore\netstandard2.0 unity\Sandbox /S
4+
rd unity\Sandbox35\Assets\Plugins /S /Q
5+
xcopy bin\AssetStore\net35 unity\Sandbox35 /S

CHANGELOG.md

+27-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,33 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](http://keepachangelog.com/); this project adheres to [Semantic Versioning](http://semver.org/).
55

66
-----------------------
7-
## [0.9.6] - unreleased
7+
## [0.9.7] - 2018.09.27
8+
9+
### Added
10+
- Added convenience overloads for `SetException`-like methods accepting as error message string.
11+
- Added allocation optimizations for single-threaded applications (particularly for Unity3d). See `AsyncResult.DefaultSynchronizationContext` for more info.
12+
- Added new overloads for `ConfigureAwait` extensions accepting continuation options instead of boolean flag.
13+
- Added `SynchronizationContext` extension methods for `Send`/`Post` accepting `Action` as the delegate.
14+
- Added `AsyncResult.Yield` static method (workd exactly as `Task.Yield`).
15+
- Added `AsyncUtility.AddFrameCallback` helper for scheduling delegates for `MonoBehaviour` update loop.
16+
- Signed the assembly with a strong name.
17+
- Added performance benchmarks.
18+
- Added sandbox Unity project.
19+
20+
### Changed
21+
- Moved several of `IAsyncOperationEvents` methods to the interface extensions.
22+
- Simplified `AsyncLazy` interface.
23+
24+
### Fixed
25+
- Fixed error handling in `AsyncOperationResult`.
26+
27+
### Removed
28+
- Removed Asset Store samples.
29+
- Dropped Unity 5.0 support (the minimum version supported is now 5.4).
30+
- Dropped `WWW` support for Unity 2018.3+ (it has been deprecated in Unity).
31+
32+
-----------------------
33+
## [0.9.6] - 2018.08.31
834

935
### Added
1036
- Added `Play`/`Wait` extension methods for `Animation` and `Animator`.

README.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ Channel | UnityFx.Async |
55
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)
66
NuGet | [![NuGet](https://img.shields.io/nuget/v/UnityFx.Async.svg)](https://www.nuget.org/packages/UnityFx.Async)
77
Github | [![GitHub release](https://img.shields.io/github/release/Arvtesh/UnityFx.Async.svg?logo=github)](https://github.com/Arvtesh/UnityFx.Async/releases)
8-
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)
8+
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)
9+
10+
**Required Unity 5.4 or higher.**
911

1012
**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!**
1113

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

4648
### Getting the code
4749
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:
@@ -52,6 +54,9 @@ git submodule -q update --init
5254
### Getting binaries
5355
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.
5456

57+
### Unity dependencies
58+
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).
59+
5560
## Understanding the concepts
5661
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.
5762
### Callback hell

src/Build.ps1

+2-4
Original file line numberDiff line numberDiff line change
@@ -69,18 +69,16 @@ function _PublishAssetStorePackage
6969
param([string]$targetFramework)
7070

7171
$changelogPath = (Join-Path $scriptPath "..\CHANGELOG.md")
72-
$readmePath = (Join-Path $scriptPath "UnityFx.Async\README.txt")
7372
$filesToPublish = (Join-Path $scriptPath "UnityFx.Async.AssetStore\Assets\*")
74-
$binToPublish =(Join-Path $binPath (Join-Path $targetFramework "\*"))
73+
$binToPublish =(Join-Path $binPath (Join-Path $targetFramework "\*"))
7574
$publishPath = (Join-Path $assetStorePath (Join-Path $targetFramework "Assets"))
7675
$publishPath2 = (Join-Path $publishPath "Plugins\UnityFx.Async")
7776
$publishBinPath = (Join-Path $publishPath "Plugins\UnityFx.Async\Bin")
78-
77+
7978
New-Item $publishBinPath -ItemType Directory
8079
Copy-Item -Path $filesToPublish -Destination $publishPath -Force -Recurse
8180
Copy-Item -Path $binToPublish -Destination $publishBinPath -Force -Recurse
8281
Copy-Item -Path $changelogPath -Destination $publishPath2 -Force
83-
Copy-Item -Path $readmePath -Destination $publishPath2 -Force
8482
}
8583

8684
_PublishAssetStorePackage "net35"

src/UnityFx.Async/README.txt src/UnityFx.Async.AssetStore/Assets/Plugins/UnityFx.Async/README.txt

+3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
SUMMARY
22
The package provides lightweight Task-like asynchronous operations (promises) for Unity3d.
33

4+
PUBLISHER INFORMATION
5+
https://www.linkedin.com/in/alexander-bogarsukov-93b9682/
6+
47
LICENSE
58
https://github.com/Arvtesh/UnityFx.Async/blob/master/LICENSE.md
69

0 commit comments

Comments
 (0)