Skip to content

Commit b1cefc3

Browse files
authored
Merge branch 'master' into JoinSubQueryHql
2 parents 20b7379 + 5ae988f commit b1cefc3

File tree

528 files changed

+16149
-3463
lines changed

Some content is hidden

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

528 files changed

+16149
-3463
lines changed

.config/dotnet-tools.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"version": 1,
3+
"isRoot": true,
4+
"tools": {
5+
"csharpasyncgenerator.tool": {
6+
"version": "0.20.1",
7+
"commands": [
8+
"async-generator"
9+
]
10+
},
11+
"gitreleasemanager.tool": {
12+
"version": "0.11.0",
13+
"commands": [
14+
"dotnet-gitreleasemanager"
15+
]
16+
}
17+
}
18+
}

.deepsource.toml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
version = 1
2+
3+
test_patterns = ["src/NHibernate.Test/**"]
4+
5+
exclude_patterns = [
6+
"src/NHibernate/Async/**/*.cs",
7+
"src/NHibernate.DomainModel/Async/**/*.cs",
8+
"src/NHibernate.Test/Async/**/*.cs"
9+
]
10+
11+
[[analyzers]]
12+
name = "csharp"
13+
enabled = true

.github/renovate.json

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
{
2+
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
3+
"extends": [
4+
"config:base"
5+
],
6+
"configMigration": true,
7+
"pruneStaleBranches": false,
8+
"automerge": true,
9+
"platformAutomerge": true,
10+
"rebaseWhen": "never",
11+
"labels": [
12+
"dependencies",
13+
"p: Lowest",
14+
"t: Task"
15+
],
16+
"packageRules": [
17+
{
18+
"matchPackagePrefixes": [
19+
"NUnit"
20+
],
21+
"groupName": "NUnit"
22+
},
23+
{
24+
"matchPackageNames": [
25+
"Microsoft.AspNetCore",
26+
"Microsoft.AspNetCore.Mvc",
27+
"Microsoft.AspNetCore.Mvc.Razor.ViewCompilation",
28+
"Microsoft.AspNetCore.StaticFiles"
29+
],
30+
"groupName": "Microsoft.AspNetCore 2.0",
31+
"allowedVersions": "~2.1.0"
32+
},
33+
{
34+
"matchPackagePrefixes": [
35+
"Oracle.ManagedDataAccess"
36+
],
37+
"groupName": "Oracle.ManagedDataAccess"
38+
}
39+
]
40+
}

.github/workflows/NetCoreTests.yml

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
name: .NET Core
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
db:
7+
strategy:
8+
fail-fast: false
9+
matrix:
10+
include:
11+
- DB: SqlServer2008
12+
CONNECTION_STRING: "Server=localhost;initial catalog=nhibernate;User Id=sa;Password=P@ssw0rd;packet size=4096;"
13+
- DB: PostgreSQL
14+
CONNECTION_STRING: "Host=localhost;Username=nhibernate;Password=nhibernate;Database=nhibernate;Enlist=true;"
15+
- DB: Firebird
16+
CONNECTION_STRING: "DataSource=localhost;Database=nhibernate;User=SYSDBA;Password=nhibernate;charset=utf8;"
17+
- DB: MySQL
18+
CONNECTION_STRING: "Server=localhost;Uid=root;Password=nhibernate;Database=nhibernate;Old Guids=True;SslMode=none;"
19+
- DB: Oracle
20+
CONNECTION_STRING: "User ID=nhibernate;Password=nhibernate;Metadata Pooling=false;Self Tuning=false;Data Source=(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XEPDB1)))"
21+
- DB: SQLite
22+
runs-on: ubuntu-latest
23+
continue-on-error: ${{matrix.ALLOW_FAILURE == true}}
24+
env:
25+
LANG: en-US.UTF-8 #default POSIX locale doesn't support ignore case comparisons
26+
name: ${{matrix.DB}}
27+
28+
steps:
29+
- name: Set up SqlServer
30+
if: matrix.DB == 'SqlServer2008'
31+
run: |
32+
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=P@ssw0rd" -e "MSSQL_PID=Express" -p 1433:1433 -d --name sqlexpress mcr.microsoft.com/mssql/server:2019-latest;
33+
34+
- name: Set up MySQL
35+
if: matrix.DB == 'MySQL'
36+
run: |
37+
sudo service mysql stop
38+
docker run --name mysql -e MYSQL_ROOT_PASSWORD=nhibernate -e MYSQL_USER=nhibernate -e MYSQL_PASSWORD=nhibernate -e MYSQL_DATABASE=nhibernate -p 3306:3306 --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 -d mysql:5.7 mysqld --lower_case_table_names=1 --character-set-server=utf8 --collation-server=utf8_general_ci
39+
40+
- name: Set up PostgreSQL
41+
if: matrix.DB == 'PostgreSQL'
42+
run: |
43+
docker run -d -e POSTGRES_USER=nhibernate -e POSTGRES_PASSWORD=nhibernate -e POSTGRES_DB=nhibernate -p 5432:5432 postgres:13
44+
45+
- name: Set up Firebird
46+
if: matrix.DB == 'Firebird'
47+
run: |
48+
docker run --name firebird -e EnableWireCrypt=true -e FIREBIRD_USER=nhibernate -e FIREBIRD_PASSWORD=nhibernate -e ISC_PASSWORD=nhibernate -e FIREBIRD_DATABASE=nhibernate -p 3050:3050 -d jacobalberty/firebird:v3.0
49+
50+
- name: Set up Oracle
51+
if: matrix.DB == 'Oracle'
52+
run: |
53+
docker run -d -p 1521:1521 -e APP_USER=nhibernate -e APP_USER_PASSWORD=nhibernate -e ORACLE_PASSWORD=nhibernate gvenzl/oracle-xe:18-slim
54+
55+
- uses: actions/checkout@v3
56+
- name: Setup .NET
57+
uses: actions/setup-dotnet@v2
58+
with:
59+
dotnet-version: 6.0.x
60+
61+
- name: Build and Test
62+
run: |
63+
pwsh -noprofile -command "& ./build.ps1 -TaskList Set-Configuration,Test -properties @{'Database' = '${{matrix.DB}}';'ConnectionString'='${{matrix.CONNECTION_STRING}}'}"

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,7 @@ TestResult.xml
1919
.vs/
2020
/build-common/NHibernate.dev.props
2121
/doc/reference/master.xml
22+
/doc/bin/
23+
/doc/obj/
24+
/Tools/bin/
25+
/Tools/obj/

.travis.yml

Lines changed: 0 additions & 51 deletions
This file was deleted.

NHibernate.nunit

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
<NUnitProject>
22
<Settings activeconfig="Debug" processModel="Multiple" />
33
<Config name="Debug" binpathtype="Auto" runtimeFramework="net-4.0">
4-
<assembly path="src\NHibernate.TestDatabaseSetup\bin\Debug\net461\NHibernate.TestDatabaseSetup.dll" />
5-
<assembly path="src\NHibernate.Test\bin\Debug\net461\NHibernate.Test.dll" />
6-
<assembly path="src\NHibernate.Test.VisualBasic\bin\Debug\net461\NHibernate.Test.VisualBasic.dll" />
4+
<assembly path="src\NHibernate.TestDatabaseSetup\bin\Debug\net48\NHibernate.TestDatabaseSetup.dll" />
5+
<assembly path="src\NHibernate.Test\bin\Debug\net48\NHibernate.Test.dll" />
6+
<assembly path="src\NHibernate.Test.VisualBasic\bin\Debug\net48\NHibernate.Test.VisualBasic.dll" />
77
</Config>
88
<Config name="Release" binpathtype="Auto" runtimeFramework="net-4.0">
9-
<assembly path="src\NHibernate.TestDatabaseSetup\bin\Release\net461\NHibernate.TestDatabaseSetup.dll" />
10-
<assembly path="src\NHibernate.Test\bin\Release\net461\NHibernate.Test.dll" />
11-
<assembly path="src\NHibernate.Test.VisualBasic\bin\Release\net461\NHibernate.Test.VisualBasic.dll" />
9+
<assembly path="src\NHibernate.TestDatabaseSetup\bin\Release\net48\NHibernate.TestDatabaseSetup.dll" />
10+
<assembly path="src\NHibernate.Test\bin\Release\net48\NHibernate.Test.dll" />
11+
<assembly path="src\NHibernate.Test.VisualBasic\bin\Release\net48\NHibernate.Test.VisualBasic.dll" />
1212
</Config>
1313
</NUnitProject>

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ of NHibernate (in no particular order):
103103
[Apache Software Foundation]: http://www.apache.org
104104
[JetBrains]: http://www.jetbrains.com
105105
[ReSharper]: http://www.jetbrains.com/resharper
106-
[LinFu]: http://code.google.com/p/linfu
106+
[LinFu]: https://github.com/philiplaureano/LinFu
107107
[article]: http://www.codeproject.com/KB/recipes/sets.aspx
108-
[Relinq]: http://relinq.codeplex.com/
108+
[Relinq]: https://github.com/re-motion/Relinq
109109
[AsyncGenerator]: http://github.com/maca88/AsyncGenerator

ReleaseProcedure.txt

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,11 @@ These are the tasks typically needed to create an official NHibernate release.
33
* In GitHub, make sure no open issues have milestone set to the release
44
that is about to happen (as these will show in the milestone).
55

6-
* Create a draft release in Github with GitReleaseManager. If you have used
7-
the NHibernate build menu, it should be available in Tools\gitreleasemanager\x.x.x\
8-
(change x.x.x by its current version in tools).
9-
By example:
6+
* Restore local dotnet tools: `dotnet tool restore`
107

11-
Tools\gitreleasemanager\0.11.0\tools\GitReleaseManager.exe create -o nhibernate -r nhibernate-core -m 5.3 --token yourGitHubTokenWithRepoScope
8+
* Create a draft release in Github with GitReleaseManager. For example:
9+
10+
dotnet gitreleasemanager create -o nhibernate -r nhibernate-core -m 5.3 --token yourGitHubTokenWithRepoScope
1211

1312
(Adjust the -m milestone parameter above, and add "-c branchname" if
1413
releasing another branch than master)

ShowBuildMenu.sh

Lines changed: 5 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -172,42 +172,21 @@ testSetupMenu() {
172172
}
173173

174174
testRun(){
175-
dotnet test ./src/NHibernate.Test/NHibernate.Test.csproj -f netcoreapp2.0
176-
dotnet test ./src/NHibernate.Test.VisualBasic/NHibernate.Test.VisualBasic.vbproj -f netcoreapp2.0
175+
dotnet test ./src/NHibernate.Test/NHibernate.Test.csproj -f net6.0
176+
dotnet test ./src/NHibernate.Test.VisualBasic/NHibernate.Test.VisualBasic.vbproj -f net6.0
177177
mainMenu
178178
}
179179

180180
generateAsync(){
181-
dotnet restore ./src/NHibernate.sln
182-
183-
getAsyncGeneratorPath
184181
cd src
185-
dotnet ../"$async_generator_path"
182+
dotnet tool restore
183+
dotnet restore ./NHibernate.sln
184+
dotnet async-generator
186185
cd ..
187186

188187
mainMenu
189188
}
190189

191-
getAsyncGeneratorPath(){
192-
if [ "$async_generator_path" ]
193-
then
194-
return
195-
fi
196-
197-
cd Tools
198-
199-
async_generator_version="$(cat packages.csproj | grep Include=\"CSharpAsyncGenerator.CommandLine | cut -d\" -f4)"
200-
async_generator_path="csharpasyncgenerator.commandline/$async_generator_version/tools"
201-
202-
if [ ! -d $async_generator_path ]
203-
then
204-
dotnet restore "./packages.csproj" --packages .
205-
fi
206-
207-
async_generator_path="Tools/$async_generator_path/netcoreapp2.1/AsyncGenerator.CommandLine.dll"
208-
cd ..
209-
}
210-
211190
mainMenu() {
212191
echo "========================= NHIBERNATE BUILD MENU =========================="
213192
echo "--- TESTING ---"

Tools/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@ csharpasyncgenerator.commandline/
44
gitreleasemanager/
55
obj/
66
microsoft.*
7+
netstandard.*

Tools/BuildTool/BuildTool.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
33
<OutputType>Exe</OutputType>
4-
<TargetFramework>netcoreapp2.0</TargetFramework>
4+
<TargetFramework>net6.0</TargetFramework>
55
</PropertyGroup>
66
</Project>

Tools/actual_msbuild.cmd

Lines changed: 0 additions & 11 deletions
This file was deleted.

Tools/packages.csproj

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,7 @@
1111
</ItemGroup>
1212

1313
<ItemGroup>
14-
<PackageReference Include="CSharpAsyncGenerator.CommandLine" Version="0.18.2" />
15-
<PackageReference Include="vswhere" Version="2.1.4" />
1614
<PackageReference Include="NUnit.Console" Version="3.10.0" />
17-
<PackageReference Include="GitReleaseManager" Version="0.11.0" />
1815
</ItemGroup>
1916

2017
</Project>

appveyor.yml

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
version: '{build}'
2-
image: Visual Studio 2017
2+
image: Visual Studio 2022
33
environment:
44
matrix:
55
- DB: SqlServer2008
@@ -8,14 +8,11 @@ environment:
88
CONNECTION_STRING: Host=localhost;Port=5432;Username=postgres;Password=Password12!;Database=nhibernate;Enlist=true;
99
- DB: Firebird
1010
- DB: MySQL
11-
CONNECTION_STRING: Server=127.0.0.1;Uid=root;Pwd=Password12!;Database=nhibernate;Old Guids=True;
11+
CONNECTION_STRING: Server=127.0.0.1;Uid=root;Pwd=Password12!;Database=nhibernate;Old Guids=True;SslMode=none;CharSet=utf8;
1212
- DB: SQLite
1313
init:
1414
# Required for having windows endlines in sources zip
1515
- git config --global core.autocrlf true
16-
matrix:
17-
allow_failures:
18-
- DB: MySQL
1916
build: off
2017
before_test:
2118
- ps: |-
@@ -45,7 +42,7 @@ before_test:
4542
Start-Service 'MySQL57'
4643
# Create nhibernate database (not handled by NHibernate.TestDatabaseSetup.dll)
4744
$env:MYSQL_PWD = 'Password12!'
48-
& 'C:\Program Files\MySQL\MySQL Server 5.7\bin\mysql' -e 'CREATE DATABASE nhibernate;' --user=root
45+
& 'C:\Program Files\MySQL\MySQL Server 5.7\bin\mysql' -e 'CREATE DATABASE nhibernate CHARACTER SET utf8 COLLATE utf8_general_ci;' --user=root
4946
}
5047
'Odbc' { Start-Service 'MSSQL$SQL2017' }
5148
'PostgreSQL' {

0 commit comments

Comments
 (0)