Skip to content

Commit 4122f1a

Browse files
authored
Merge pull request #503 from dotnetcore/dev
v1.9.2 release
2 parents dc5d920 + 36516bd commit 4122f1a

26 files changed

+740
-96
lines changed

.github/workflows/build.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ jobs:
1616
os: [ windows-latest ]
1717

1818
steps:
19-
- uses: actions/checkout@v2
19+
- uses: actions/checkout@v4
2020
- name: Setup .NET SDK 6.0.x
21-
uses: actions/setup-dotnet@v1
21+
uses: actions/setup-dotnet@v3
2222
with:
2323
dotnet-version: 6.0.x
2424

.github/workflows/buildandtest.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ jobs:
3838
- 11212:11211
3939

4040
steps:
41-
- uses: actions/checkout@v2
41+
- uses: actions/checkout@v4
4242
- name: Setup .NET SDK 6.0.x
43-
uses: actions/setup-dotnet@v1
43+
uses: actions/setup-dotnet@v3
4444
with:
4545
dotnet-version: 6.0.x
4646

.github/workflows/release.yml

+5-4
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,17 @@ jobs:
1313
runs-on: ubuntu-latest
1414

1515
steps:
16-
- uses: actions/checkout@v1
16+
- uses: actions/checkout@v4
1717
- name: Setup .NET Core
18-
uses: actions/setup-dotnet@v1
18+
uses: actions/setup-dotnet@v3
1919
with:
2020
dotnet-version: 6.0.x
2121
- name: Build with dotnet
2222
run: dotnet build --configuration Release /home/runner/work/EasyCaching/EasyCaching/EasyCaching.sln
2323
- name: Pack with dotnet
2424
run: dotnet pack /home/runner/work/EasyCaching/EasyCaching/EasyCaching.sln --version-suffix alpha`date +%Y%m%d%H%M%S` -o /home/runner/work/nugetpkgs -c Release --no-build
2525
- name: Upload artifact
26-
uses: actions/upload-artifact@v1
26+
uses: actions/upload-artifact@v3
2727
with:
2828
name: nugetpkgs
2929
path: /home/runner/work/nugetpkgs
@@ -35,9 +35,10 @@ jobs:
3535

3636
steps:
3737
- name: Download build artifacts
38-
uses: actions/download-artifact@v1
38+
uses: actions/download-artifact@v3
3939
with:
4040
name: nugetpkgs
41+
path: nugetpkgs
4142
- name: list nugetpkgs
4243
run: ls nugetpkgs
4344
- name: Release

.github/workflows/release_stable.yml

+5-4
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,17 @@ jobs:
1111
runs-on: ubuntu-latest
1212

1313
steps:
14-
- uses: actions/checkout@v1
14+
- uses: actions/checkout@v4
1515
- name: Setup .NET Core
16-
uses: actions/setup-dotnet@v1
16+
uses: actions/setup-dotnet@v3
1717
with:
1818
dotnet-version: 6.0.x
1919
- name: Build with dotnet
2020
run: dotnet build --configuration Release /home/runner/work/EasyCaching/EasyCaching/EasyCaching.sln
2121
- name: Pack with dotnet
2222
run: dotnet pack /home/runner/work/EasyCaching/EasyCaching/EasyCaching.sln -o /home/runner/work/nugetpkgs -c Release --no-build
2323
- name: Upload artifact
24-
uses: actions/upload-artifact@v1
24+
uses: actions/upload-artifact@v3
2525
with:
2626
name: nugetpkgs
2727
path: /home/runner/work/nugetpkgs
@@ -33,9 +33,10 @@ jobs:
3333

3434
steps:
3535
- name: Download build artifacts
36-
uses: actions/download-artifact@v1
36+
uses: actions/download-artifact@v3
3737
with:
3838
name: nugetpkgs
39+
path: nugetpkgs
3940
- name: list nugetpkgs
4041
run: ls nugetpkgs
4142
- name: Release

EasyCaching.sln

+18-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
Microsoft Visual Studio Solution File, Format Version 12.00
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
23
# Visual Studio Version 17
34
VisualStudioVersion = 17.2.32616.157
45
MinimumVisualStudioVersion = 10.0.40219.1
@@ -72,12 +73,16 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EasyCaching.Serialization.S
7273
EndProject
7374
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EasyCaching.Bus.ConfluentKafka", "bus\EasyCaching.Bus.ConfluentKafka\EasyCaching.Bus.ConfluentKafka.csproj", "{F7FBADEB-D766-4595-949A-07104B52692C}"
7475
EndProject
75-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EasyCaching.Bus.Zookeeper", "bus\EasyCaching.Bus.Zookeeper\EasyCaching.Bus.Zookeeper.csproj", "{5E488583-391E-4E15-83C1-7301B4FE79AE}"
76+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EasyCaching.Bus.Zookeeper", "bus\EasyCaching.Bus.Zookeeper\EasyCaching.Bus.Zookeeper.csproj", "{5E488583-391E-4E15-83C1-7301B4FE79AE}"
7677
EndProject
77-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EasyCaching.FasterKv", "src\EasyCaching.FasterKv\EasyCaching.FasterKv.csproj", "{7191E567-38DF-4879-82E1-73EC618AFCAC}"
78+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EasyCaching.FasterKv", "src\EasyCaching.FasterKv\EasyCaching.FasterKv.csproj", "{7191E567-38DF-4879-82E1-73EC618AFCAC}"
79+
EndProject
80+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EasyCaching.Bus.RabbitMQStream", "bus\EasyCaching.Bus.RabbitMQStream\EasyCaching.Bus.RabbitMQStream.csproj", "{3C9D5E40-B3A5-4649-8B40-08094644B0FB}"
7881
EndProject
7982
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EasyCaching.Serialization.MemoryPack", "serialization\EasyCaching.Serialization.MemoryPack\EasyCaching.Serialization.MemoryPack.csproj", "{EEF22C21-F380-4980-B72C-F14488369333}"
8083
EndProject
84+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EasyCaching.Demo.Locks", "sample\EasyCaching.Demo.Locks\EasyCaching.Demo.Locks.csproj", "{9B15A0A0-BD6B-40B0-90D4-848BC3E4AF98}"
85+
EndProject
8186
Global
8287
GlobalSection(SolutionConfigurationPlatforms) = preSolution
8388
Debug|Any CPU = Debug|Any CPU
@@ -208,6 +213,14 @@ Global
208213
{EEF22C21-F380-4980-B72C-F14488369333}.Debug|Any CPU.Build.0 = Debug|Any CPU
209214
{EEF22C21-F380-4980-B72C-F14488369333}.Release|Any CPU.ActiveCfg = Release|Any CPU
210215
{EEF22C21-F380-4980-B72C-F14488369333}.Release|Any CPU.Build.0 = Release|Any CPU
216+
{3C9D5E40-B3A5-4649-8B40-08094644B0FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
217+
{3C9D5E40-B3A5-4649-8B40-08094644B0FB}.Debug|Any CPU.Build.0 = Debug|Any CPU
218+
{3C9D5E40-B3A5-4649-8B40-08094644B0FB}.Release|Any CPU.ActiveCfg = Release|Any CPU
219+
{3C9D5E40-B3A5-4649-8B40-08094644B0FB}.Release|Any CPU.Build.0 = Release|Any CPU
220+
{9B15A0A0-BD6B-40B0-90D4-848BC3E4AF98}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
221+
{9B15A0A0-BD6B-40B0-90D4-848BC3E4AF98}.Debug|Any CPU.Build.0 = Debug|Any CPU
222+
{9B15A0A0-BD6B-40B0-90D4-848BC3E4AF98}.Release|Any CPU.ActiveCfg = Release|Any CPU
223+
{9B15A0A0-BD6B-40B0-90D4-848BC3E4AF98}.Release|Any CPU.Build.0 = Release|Any CPU
211224
EndGlobalSection
212225
GlobalSection(SolutionProperties) = preSolution
213226
HideSolutionNode = FALSE
@@ -244,6 +257,8 @@ Global
244257
{5E488583-391E-4E15-83C1-7301B4FE79AE} = {B337509B-75F9-4851-821F-9BBE87C4E4BC}
245258
{7191E567-38DF-4879-82E1-73EC618AFCAC} = {A0F5CC7E-155F-4726-8DEB-E966950B3FE9}
246259
{EEF22C21-F380-4980-B72C-F14488369333} = {15070C49-A507-4844-BCFE-D319CFBC9A63}
260+
{3C9D5E40-B3A5-4649-8B40-08094644B0FB} = {B337509B-75F9-4851-821F-9BBE87C4E4BC}
261+
{9B15A0A0-BD6B-40B0-90D4-848BC3E4AF98} = {F88D727A-9F9C-43D9-90B1-D4A02BF8BC98}
247262
EndGlobalSection
248263
GlobalSection(ExtensibilityGlobals) = postSolution
249264
SolutionGuid = {63A57886-054B-476C-AAE1-8D7C8917682E}

build/releasenotes.props

+5
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
</EasyCachingSQLitePackageNotes>
1515
<EasyCachingInMemoryPackageNotes>
1616
1. Upgrading dependencies.
17+
2. Fix no check expires when get cache count
1718
</EasyCachingInMemoryPackageNotes>
1819
<EasyCachingHybridPackageNotes>
1920
1. Upgrading dependencies.
@@ -59,6 +60,7 @@
5960
</EasyCachingDiskPackageNotes>
6061
<EasyCachingLiteDBPackageNotes>
6162
1. Upgrading dependencies.
63+
2. Always use utc to compare the expiry
6264
</EasyCachingLiteDBPackageNotes>
6365
<EasyCachingSTJsonPackageNotes>
6466
1. Upgrading dependencies.
@@ -69,5 +71,8 @@
6971
<EasyCachingFaskKVPackageNotes>
7072
1. Upgrading dependencies.
7173
</EasyCachingFaskKVPackageNotes>
74+
<EasyCachingRabbitStreamBusPackageNotes>
75+
1. Initial release.
76+
</EasyCachingRabbitStreamBusPackageNotes>
7277
</PropertyGroup>
7378
</Project>

build/version.props

+25-24
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,29 @@
11
<Project>
22
<PropertyGroup>
3-
<EasyCachingCorePackageVersion>1.9.1</EasyCachingCorePackageVersion>
4-
<EasyCachingMemcachedPackageVersion>1.9.1</EasyCachingMemcachedPackageVersion>
5-
<EasyCachingRedisPackageVersion>1.9.1</EasyCachingRedisPackageVersion>
6-
<EasyCachingSQLitePackageVersion>1.9.1</EasyCachingSQLitePackageVersion>
7-
<EasyCachingInMemoryPackageVersion>1.9.1</EasyCachingInMemoryPackageVersion>
8-
<EasyCachingHybridPackageVersion>1.9.1</EasyCachingHybridPackageVersion>
9-
<EasyCachingAspectCorePackageVersion>1.9.1</EasyCachingAspectCorePackageVersion>
10-
<EasyCachingCastlePackageVersion>1.9.1</EasyCachingCastlePackageVersion>
11-
<EasyCachingResponseCachingPackageVersion>1.9.1</EasyCachingResponseCachingPackageVersion>
12-
<EasyCachingJsonPackageVersion>1.9.1</EasyCachingJsonPackageVersion>
13-
<EasyCachingMessagePackPackageVersion>1.9.1</EasyCachingMessagePackPackageVersion>
14-
<EasyCachingProtobufPackageVersion>1.9.1</EasyCachingProtobufPackageVersion>
15-
<EasyCachingCSRedisPackageVersion>1.9.1</EasyCachingCSRedisPackageVersion>
16-
<EasyCachingRedisBusPackageVersion>1.9.1</EasyCachingRedisBusPackageVersion>
17-
<EasyCachingCSRedisBusPackageVersion>1.9.1</EasyCachingCSRedisBusPackageVersion>
18-
<EasyCachingRabbitBusPackageVersion>1.9.1</EasyCachingRabbitBusPackageVersion>
19-
<EasyCachingKafkaBusPackageVersion>1.9.1</EasyCachingKafkaBusPackageVersion>
20-
<EasyCachingZookeeperBusPackageVersion>1.9.1</EasyCachingZookeeperBusPackageVersion>
21-
<EasyCachingDiskPackageVersion>1.9.1</EasyCachingDiskPackageVersion>
22-
<EasyCachingMsExtPackageVersion>1.9.1</EasyCachingMsExtPackageVersion>
23-
<EasyCachingLiteDBPackageVersion>1.9.1</EasyCachingLiteDBPackageVersion>
24-
<EasyCachingSTJsonPackageVersion>1.9.1</EasyCachingSTJsonPackageVersion>
25-
<EasyCachingMemoryPackageVersion>1.9.1</EasyCachingMemoryPackageVersion>
26-
<EasyCachingFaskKVPackageVersion>1.9.1</EasyCachingFaskKVPackageVersion>
3+
<EasyCachingCorePackageVersion>1.9.2</EasyCachingCorePackageVersion>
4+
<EasyCachingMemcachedPackageVersion>1.9.2</EasyCachingMemcachedPackageVersion>
5+
<EasyCachingRedisPackageVersion>1.9.2</EasyCachingRedisPackageVersion>
6+
<EasyCachingSQLitePackageVersion>1.9.2</EasyCachingSQLitePackageVersion>
7+
<EasyCachingInMemoryPackageVersion>1.9.2</EasyCachingInMemoryPackageVersion>
8+
<EasyCachingHybridPackageVersion>1.9.2</EasyCachingHybridPackageVersion>
9+
<EasyCachingAspectCorePackageVersion>1.9.2</EasyCachingAspectCorePackageVersion>
10+
<EasyCachingCastlePackageVersion>1.9.2</EasyCachingCastlePackageVersion>
11+
<EasyCachingResponseCachingPackageVersion>1.9.2</EasyCachingResponseCachingPackageVersion>
12+
<EasyCachingJsonPackageVersion>1.9.2</EasyCachingJsonPackageVersion>
13+
<EasyCachingMessagePackPackageVersion>1.9.2</EasyCachingMessagePackPackageVersion>
14+
<EasyCachingProtobufPackageVersion>1.9.2</EasyCachingProtobufPackageVersion>
15+
<EasyCachingCSRedisPackageVersion>1.9.2</EasyCachingCSRedisPackageVersion>
16+
<EasyCachingRedisBusPackageVersion>1.9.2</EasyCachingRedisBusPackageVersion>
17+
<EasyCachingCSRedisBusPackageVersion>1.9.2</EasyCachingCSRedisBusPackageVersion>
18+
<EasyCachingRabbitBusPackageVersion>1.9.2</EasyCachingRabbitBusPackageVersion>
19+
<EasyCachingRabbitStreamBusPackageVersion>1.9.2</EasyCachingRabbitStreamBusPackageVersion>
20+
<EasyCachingKafkaBusPackageVersion>1.9.2</EasyCachingKafkaBusPackageVersion>
21+
<EasyCachingZookeeperBusPackageVersion>1.9.2</EasyCachingZookeeperBusPackageVersion>
22+
<EasyCachingDiskPackageVersion>1.9.2</EasyCachingDiskPackageVersion>
23+
<EasyCachingMsExtPackageVersion>1.9.2</EasyCachingMsExtPackageVersion>
24+
<EasyCachingLiteDBPackageVersion>1.9.2</EasyCachingLiteDBPackageVersion>
25+
<EasyCachingSTJsonPackageVersion>1.9.2</EasyCachingSTJsonPackageVersion>
26+
<EasyCachingMemoryPackageVersion>1.9.2</EasyCachingMemoryPackageVersion>
27+
<EasyCachingFaskKVPackageVersion>1.9.2</EasyCachingFaskKVPackageVersion>
2728
</PropertyGroup>
2829
</Project>

bus/EasyCaching.Bus.RabbitMQ/Configurations/RabbitMQBusOptions.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/// RabbitMQ Bus options.
77
/// </summary>
88
public class RabbitMQBusOptions : BaseRabbitMQOptions
9-
{
9+
{
1010
/// <summary>
1111
/// Gets or sets the name of the queue.
1212
/// </summary>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
namespace Microsoft.Extensions.DependencyInjection
2+
{
3+
using System;
4+
using EasyCaching.Bus.RabbitMQ;
5+
using EasyCaching.Bus.RabbitMQStream;
6+
using EasyCaching.Core;
7+
using EasyCaching.Core.Configurations;
8+
using Microsoft.Extensions.Configuration;
9+
10+
/// <summary>
11+
/// EasyCaching options extensions.
12+
/// </summary>
13+
public static class EasyCachingOptionsExtensions
14+
{
15+
/// <summary>
16+
/// Withs the RabbitMQStream bus (specify the config via hard code).
17+
/// </summary>
18+
/// <param name="options">Options.</param>
19+
/// <param name="configure">Configure bus settings.</param>
20+
21+
public static EasyCachingOptions WithRabbitMQStreamBus(
22+
this EasyCachingOptions options
23+
, Action<RabbitMQBusOptions> configure
24+
)
25+
{
26+
ArgumentCheck.NotNull(configure, nameof(configure));
27+
28+
options.RegisterExtension(new RabbitMQStreamBusOptionsExtension(configure));
29+
return options;
30+
}
31+
32+
/// <summary>
33+
/// Withs the RabbitMQStream bus (read config from configuration file).
34+
/// </summary>
35+
/// <param name="options">Options.</param>
36+
/// <param name="configuration">The configuration.</param>
37+
/// <param name="sectionName">The section name in the configuration file.</param>
38+
public static EasyCachingOptions WithRabbitMQStreamBus(
39+
this EasyCachingOptions options
40+
, IConfiguration configuration
41+
, string sectionName = EasyCachingConstValue.RabbitMQBusSection
42+
)
43+
{
44+
var dbConfig = configuration.GetSection(sectionName);
45+
var busOptions = new RabbitMQBusOptions();
46+
dbConfig.Bind(busOptions);
47+
48+
void configure(RabbitMQBusOptions x)
49+
{
50+
x.HostName = busOptions.HostName;
51+
x.Password = busOptions.Password;
52+
x.Port = busOptions.Port;
53+
x.QueueMessageExpires = busOptions.QueueMessageExpires;
54+
x.RequestedConnectionTimeout = busOptions.RequestedConnectionTimeout;
55+
//x.RouteKey = busOptions.RouteKey;
56+
x.SocketReadTimeout = busOptions.SocketReadTimeout;
57+
x.SocketWriteTimeout = busOptions.SocketWriteTimeout;
58+
x.TopicExchangeName = busOptions.TopicExchangeName;
59+
x.UserName = busOptions.UserName;
60+
x.VirtualHost = busOptions.VirtualHost;
61+
x.QueueName = busOptions.QueueName;
62+
}
63+
64+
options.RegisterExtension(new RabbitMQStreamBusOptionsExtension(configure));
65+
return options;
66+
}
67+
}
68+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
namespace EasyCaching.Bus.RabbitMQStream
2+
{
3+
using System;
4+
using EasyCaching.Bus.RabbitMQ;
5+
using EasyCaching.Core.Bus;
6+
using EasyCaching.Core.Configurations;
7+
using global::RabbitMQ.Client;
8+
using Microsoft.Extensions.DependencyInjection;
9+
using Microsoft.Extensions.ObjectPool;
10+
11+
/// <summary>
12+
/// RabbitMQ Bus options extension.
13+
/// </summary>
14+
public class RabbitMQStreamBusOptionsExtension : IEasyCachingOptionsExtension
15+
{
16+
/// <summary>
17+
/// The configure.
18+
/// </summary>
19+
private readonly Action<RabbitMQBusOptions> configure;
20+
21+
/// <summary>
22+
/// Initializes a new instance of the <see cref="T:EasyCaching.Bus.RabbitMQ.RabbitMQBusOptionsExtension"/> class.
23+
/// </summary>
24+
/// <param name="configure">Configure.</param>
25+
public RabbitMQStreamBusOptionsExtension(Action<RabbitMQBusOptions> configure)
26+
{
27+
this.configure = configure;
28+
}
29+
30+
/// <summary>
31+
/// Adds the services.
32+
/// </summary>
33+
/// <param name="services">Services.</param>
34+
public void AddServices(IServiceCollection services)
35+
{
36+
services.AddOptions();
37+
services.Configure(configure);
38+
39+
services.AddSingleton<IPooledObjectPolicy<IModel>, ModelPooledObjectPolicy>();
40+
services.AddSingleton<IEasyCachingBus, DefaultRabbitMQStreamBus>();
41+
}
42+
}
43+
}

0 commit comments

Comments
 (0)