diff --git a/.dist/CHANGELOG.md b/.dist/CHANGELOG.md new file mode 100644 index 0000000..b40ea19 --- /dev/null +++ b/.dist/CHANGELOG.md @@ -0,0 +1,70 @@ +# Release Notes + +## [v2.0.0-alpha.1 (2019-12-04)](https://github.com/CatLib/Core/releases/tag/v2.0.0) + +#### Added + +- `Inject` allowed to be set to optional.(#253 ) +- `Arr.Test` can get matched value of the first match(#280 ) + +#### Changed + +- Comments translated from Chinese into English(#133 ) +- Defined Container.Build as a virtual function(#210 ) +- Optimizes the constructor of `MethodContainer`(#218 ) +- The default project uses the .net standard 2.0(#225 ) +- Rename Util helper class to Helper class Change access level to internal.(#230 ) +- `Application.IsRegisted` changed(rename) to `IsRegistered`(#226 ) +- Use `VariantAttribute` to mark variable types instead of `IVariant`(#232 ) +- `Guard` Will be expandable with `Guard.That`(#233 ) +- Fixed the problem of container exception stack loss(#234 ) +- Adjusted the internal file structure to make it clearer(#236 ). +- Add code analyzers (#206 ) +- Refactoring event system (#177 ) +- Refactoring `RingBuffer` make it inherit from `Stream`.(#238 ) +- Namespace structure adjustment(optimization).(#241 ) +- `App` can be extended by `That` (Handler rename to that) and removed `HasHandler` API (#242 ) +- Unnecessary inheritance: WrappedStream(#247 ) +- Clean up useless comment(#249 ). +- `Guard.Require` can set error messages and internal exceptions(#250). +- Exception class implementation support: SerializationInfo build(#252 ). +- Refactoring unit test, import moq.(#255 ) +- `CodeStandardException` replaces to `LogicException`(#257 ) +- Exception move to namespace `CatLib.Exception`(#258 ) +- `Facade<>.Instance` changed to `Facade<>.That`(#259 ) +- `Application.StartProcess` migrate to `StartProcess`(#260 ) +- `Arr` optimization, lifting some unnecessary restrictions (#263) +- `Str` optimization, lifting some unnecessary restrictions (#264) +- Refactoring `SortSet`(#265 ) +- Removed global params in application constructor. use Application.New() instead.(#267 ) +- Containers are no longer thread-safe by default(#270 ) + +#### Fixed + +- Fixed a bug that caused `Arr.Fill` to not work properly under special circumstances. (#255 ) + +#### Removed + +- Removed `ExcludeFromCodeCoverageAttribute` (#229 ) +- Removed unnecessary interface design `ISortSet`(#211 ). +- Removed `Version` classes and `Application.Compare` method.(#212). +- Removed `Template` supported(#213 ). +- Removed `FilterChain` supported(#214 ). +- Removed `Enum` supported(#215 ). +- Removed `IAwait` interface(#217 ). +- Removed `Container.Flash` api(#219 ). +- Removed `Arr.Flash` method(#220 ). +- Removed `Dict` helper class(#221 ). +- Removed `ThreadStatic` helper class(#223 ). +- Removed `QuickList` supported(#224 ). +- Removed `Storage` supported(#228 ) +- Removed `SystemTime` class(#235 ). +- Removed `ICoroutineInit` feature from core library(#243 ). +- Removed the priority attribute, depending on the loading order(#244 ). +- Removed `Util.Encoding` (#245 ). +- Removed `Str.Encoding`(#246 ) +- Removed `IServiceProviderType` feature in core library(#246 ). +- Removed unnecessary extension functions(#247 ). +- Removed `PipelineStream` stream.(#256 ) +- Removed all `Obsolete` method and clean code.(#261 ) +- Removed `App.Version`.(#266 ) diff --git a/.dist/LICENSE b/.dist/LICENSE new file mode 100644 index 0000000..3b5d547 --- /dev/null +++ b/.dist/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017 CatLib + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/.dist/README.md b/.dist/README.md new file mode 100644 index 0000000..8f0690b --- /dev/null +++ b/.dist/README.md @@ -0,0 +1,59 @@ +

+ +

+ + + + + Codecov + + + Downloads + +

+ +## About CatLib + +`CatLib` is the lightweight dependency injection container and helper functions library. + +- [Service Provider](https://catlib.io/lasted/architecture/service-provider.html) +- [Application](https://catlib.io/lasted/architecture/application.html) +- [IOC Container](https://catlib.io/lasted/architecture/container.html) +- [Facades](https://catlib.io/lasted/architecture/facade.html) + +## Install CatLib Core + +**Installed with Nuget** + +```PM +$ Install-Package CatLib.Core -Version 2.0.0 +``` + +**Installed with [Bucket](https://github.com/getbucket/bucket)** + +```shell +$ bucket require catlib/core +``` + +**Installed with Github Release** + +[Download the latest version](https://github.com/CatLib/Core/releases)。 + +## Learning CatLib + +CatLib has the most extensive and thorough [documentation](https://catlib.io), making it a breeze to get started with the framework. + +> 需要中文支持? 请访问[CatLib中文文档](https://zh.catlib.io)。 + +## Contribution + +CatLib is still a young framework, and her growth and your contribution are inseparable. If you want to contribute to the project, please refer to: [CatLib Contribution Guide](https://catlib.io/lasted/contribution.html) Your contribution will be included in the list of contributors,Welcome Pull Request! + +## License + +The open source license used by CatLib is [MIT license](http://opensource.org/licenses/MIT). + +## Support + +* email: support@catlib.io +* slack: [catlib.slack](https://catlib.slack.com/messages/internals/) diff --git a/.dist/bucket.json b/.dist/bucket.json new file mode 100644 index 0000000..e1e0a82 --- /dev/null +++ b/.dist/bucket.json @@ -0,0 +1,18 @@ +{ + "name": "catlib/core", + "version": "2.0.0", + "description": "catlib framework is the lightweight dependency injection container and helper functions library.", + "keywords": ["framework", "catlib"], + "license": "MIT", + "homepage": "https://catlib.io", + "support": { + "issues": "https://github.com/CatLib/Core/issues", + "source": "https://github.com/CatLib/Core" + }, + "authors": [ + { + "name": "Meng han Yu", + "email": "menghanyu1994@gmail.com" + } + ] +} diff --git a/dist/CatLib.Core.deps.json b/.dist/netstandard2.0/CatLib.Core.deps.json similarity index 99% rename from dist/CatLib.Core.deps.json rename to .dist/netstandard2.0/CatLib.Core.deps.json index bfa7955..200b73e 100644 --- a/dist/CatLib.Core.deps.json +++ b/.dist/netstandard2.0/CatLib.Core.deps.json @@ -7,7 +7,7 @@ "targets": { ".NETStandard,Version=v2.0": {}, ".NETStandard,Version=v2.0/": { - "CatLib.Core/2.0.0-stable+d0525b6": { + "CatLib.Core/0.2.0-alpha.1+37a93a5": { "dependencies": { "Microsoft.CodeAnalysis.CSharp": "3.3.1", "Microsoft.CodeAnalysis.FxCopAnalyzers": "2.9.6", @@ -85,7 +85,7 @@ } }, "libraries": { - "CatLib.Core/2.0.0-stable+d0525b6": { + "CatLib.Core/0.2.0-alpha.1+37a93a5": { "type": "project", "serviceable": false, "sha512": "" diff --git a/dist/CatLib.Core.dll b/.dist/netstandard2.0/CatLib.Core.dll similarity index 99% rename from dist/CatLib.Core.dll rename to .dist/netstandard2.0/CatLib.Core.dll index 596fbcc..efe6eeb 100644 Binary files a/dist/CatLib.Core.dll and b/.dist/netstandard2.0/CatLib.Core.dll differ diff --git a/dist/CatLib.Core.pdb b/.dist/netstandard2.0/CatLib.Core.pdb similarity index 100% rename from dist/CatLib.Core.pdb rename to .dist/netstandard2.0/CatLib.Core.pdb diff --git a/.gitattributes b/.gitattributes index fcf4ed9..8c0dd11 100644 --- a/.gitattributes +++ b/.gitattributes @@ -3,5 +3,9 @@ src/ export-ignore .gitignore export-ignore .gitattributes export-ignore *.ps1 export-ignore -.github/ export-ignore -.travis.yml export-ignore +.github/ export-ignore +.travis.yml export-ignore +/bucket.json export-ignore +/README.md export-ignore +/CHANGELOG.md export-ignore +/LICENSE export-ignore \ No newline at end of file diff --git a/build.ps1 b/build.ps1 index f1b6618..dc750e7 100644 --- a/build.ps1 +++ b/build.ps1 @@ -2,7 +2,7 @@ param( [string]$version="master-dev" ) -$dist = "dist" +$dist = ".dist" $root = (Get-Item -Path ".\").FullName $publishDir = $root + "\src\CatLib.Core\bin\Release\netstandard2.0\publish" $version = $version.Trim() @@ -73,7 +73,12 @@ if(Test-Path -Path $dist) } mkdir $dist -cp $publishDir\* $dist -Recurse +mkdir $dist\netstandard2.0 +cp $publishDir\* $dist\netstandard2.0 -Recurse +cp LICENSE $dist +cp CHANGELOG.md $dist +cp README.md $dist +cp bucket.json $dist $env:CATLIB_PROJECT_VERSION=$versionNormalized.trim() $env:CATLIB_FILE_VERSION=$fileVersion.trim()