Skip to content

Commit ae732d9

Browse files
committed
Merge remote-tracking branch 'origin/develop' into develop
# Conflicts: # src/Simplify.Web/Simplify.Web.csproj
2 parents 84c1816 + 26cc04f commit ae732d9

File tree

86 files changed

+13909
-14026
lines changed

Some content is hidden

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

86 files changed

+13909
-14026
lines changed

.github/workflows/build.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,18 @@ jobs:
1313
fail-fast: false
1414
matrix:
1515
os: [ubuntu-latest, windows-latest]
16+
include:
17+
- os: ubuntu-latest
18+
test-framework-command: --framework net9.0
1619

1720
steps:
1821
- name: Code Checkout
1922
uses: actions/[email protected]
2023

2124
- name: Install DotNet
2225
uses: actions/setup-dotnet@v4
26+
with:
27+
dotnet-version: "9.0.x"
2328

2429
- name: Restore Dependencies
2530
run: dotnet restore
@@ -28,7 +33,7 @@ jobs:
2833
run: dotnet build --no-restore -c Release
2934

3035
- name: Perform Unit Testing
31-
run: dotnet test --no-build -c Release --verbosity normal --filter "TestCategory!=Benchmark"
36+
run: dotnet test --no-build -c Release ${{ matrix.test-framework-command }} --verbosity normal --filter "TestCategory!=Benchmark"
3237

3338
- name: Create Package
3439
run: dotnet pack Simplify.Web/Simplify.Web.csproj --no-build -c Release -o ./publish

.github/workflows/codeql-analysis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ jobs:
5454
- name: Setup .NET
5555
uses: actions/setup-dotnet@v4
5656
with:
57-
dotnet-version: 8.0.x
57+
dotnet-version: 9.0.x
5858

5959
# Build
6060
- run: dotnet build src/Simplify.Web.sln -v minimal

.vscode/launch.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"type": "coreclr",
77
"request": "launch",
88
"preLaunchTask": "Build Angular Example",
9-
"program": "${workspaceFolder}/src/SampleApps/SampleApp.Angular/bin/Debug/net8.0/SampleApp.Angular.dll",
9+
"program": "${workspaceFolder}/src/SampleApps/SampleApp.Angular/bin/Debug/net9.0/SampleApp.Angular.dll",
1010
"cwd": "${workspaceFolder}/src/SampleApps/SampleApp.Angular/",
1111
"internalConsoleOptions": "openOnSessionStart",
1212
"serverReadyAction": {
@@ -23,7 +23,7 @@
2323
"type": "coreclr",
2424
"request": "launch",
2525
"preLaunchTask": "Build Angular Example",
26-
"program": "${workspaceFolder}/src/SampleApps/SampleApp.Angular/bin/Debug/net8.0/SampleApp.Angular.dll",
26+
"program": "${workspaceFolder}/src/SampleApps/SampleApp.Angular/bin/Debug/net9.0/SampleApp.Angular.dll",
2727
"cwd": "${workspaceFolder}/src/SampleApps/SampleApp.Angular/",
2828
"internalConsoleOptions": "openOnSessionStart",
2929
"serverReadyAction": {
@@ -41,8 +41,8 @@
4141
"type": "coreclr",
4242
"request": "launch",
4343
"preLaunchTask": "Build Api Example",
44-
"program": "${workspaceFolder}/src/SampleApps/SampleApp.Api/bin/Debug/net8.0/SampleApp.Api.dll",
45-
"cwd": "${workspaceFolder}/src/SampleApps/SampleApp.Api/bin/Debug/net8.0/",
44+
"program": "${workspaceFolder}/src/SampleApps/SampleApp.Api/bin/Debug/net9.0/SampleApp.Api.dll",
45+
"cwd": "${workspaceFolder}/src/SampleApps/SampleApp.Api/bin/Debug/net9.0/",
4646
"internalConsoleOptions": "openOnSessionStart",
4747
"serverReadyAction": {
4848
"action": "openExternally",
@@ -58,8 +58,8 @@
5858
"type": "coreclr",
5959
"request": "launch",
6060
"preLaunchTask": "Build Classic Example",
61-
"program": "${workspaceFolder}/src/SampleApps/SampleApp.Classic/bin/Debug/net8.0/SampleApp.Classic.dll",
62-
"cwd": "${workspaceFolder}/src/SampleApps/SampleApp.Classic/bin/Debug/net8.0/",
61+
"program": "${workspaceFolder}/src/SampleApps/SampleApp.Classic/bin/Debug/net9.0/SampleApp.Classic.dll",
62+
"cwd": "${workspaceFolder}/src/SampleApps/SampleApp.Classic/bin/Debug/net9.0/",
6363
"internalConsoleOptions": "openOnSessionStart",
6464
"serverReadyAction": {
6565
"action": "openExternally",
@@ -75,8 +75,8 @@
7575
"type": "coreclr",
7676
"request": "launch",
7777
"preLaunchTask": "Build",
78-
"program": "${workspaceFolder}/src/Simplify.Web.Benchmark/bin/Debug/net8.0/Simplify.Web.Benchmark.dll",
79-
"cwd": "${workspaceFolder}/src/Simplify.Web.Benchmark/bin/Debug/net8.0/",
78+
"program": "${workspaceFolder}/src/Simplify.Web.Benchmark/bin/Debug/net9.0/Simplify.Web.Benchmark.dll",
79+
"cwd": "${workspaceFolder}/src/Simplify.Web.Benchmark/bin/Debug/net9.0/",
8080
"internalConsoleOptions": "openOnSessionStart"
8181
},
8282
]

.vscode/tasks.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
"args": [
5555
"test",
5656
"-f",
57-
"net8.0",
57+
"net9.0",
5858
"--filter",
5959
"TestCategory!=\"Benchmark\"",
6060
"/p:CollectCoverage=true",

README.md

Lines changed: 24 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -9,40 +9,39 @@
99
[![Libraries.io dependency status for latest release](https://img.shields.io/librariesio/release/nuget/Simplify.Web)](https://libraries.io/nuget/Simplify.Web)
1010
[![CodeFactor Grade](https://img.shields.io/codefactor/grade/github/SimplifyNet/Simplify.Web)](https://www.codefactor.io/repository/github/simplifynet/simplify.web)
1111
![Platform](https://img.shields.io/badge/platform-.NET%206.0%20%7C%20.NET%20Standard%202.1%20%7C%20.NET%20Standard%202.0-lightgrey)
12-
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen)](http://makeapullrequest.com)
1312

14-
Simplify.Web is an open-source, lightweight, fast and highly customizable server-side .NET web-framework based on ASP.NET Core for building HTTP based web-applications, RESTful APIs etc.
13+
Simplify.Web is an open-source, lightweight, fast, and highly customizable server-side .NET web framework based on ASP.NET Core for building HTTP-based web applications, RESTful APIs, etc.
1514

16-
Framework can be used as:
15+
The framework can be used as:
1716

1817
- An API backend framework
19-
- As a mix of API backend + some SPA front end like Angular
20-
- As an old way backend generated web-site
18+
- A mix of API backend + SPA front end (e.g., Angular)
19+
- A traditional backend-generated website
2120

2221
Can be hosted:
2322

24-
- The same way as an ApsNetCore MVC application (On IIS, or as a console application)
25-
- Inside a windows service
23+
- The same way as an ASP.NET Core MVC application (on IIS or as a console application)
24+
- Inside a Windows service
2625

2726
## Main features
2827

2928
- Comes as Microsoft.AspNetCore middleware
3029
- Can be used as an API backend only with front-end frameworks
3130
- Based on MVC and MVVM patterns
32-
- Lightweight & Fast
33-
- Uses switchable IOC container for itself and controllers, views constructor injection ([Simplify.DI](https://github.com/SimplifyNet/Simplify/wiki/Simplify.DI))
34-
- Support async controllers
35-
- Supports controllers which can be run on any request
36-
- Localization-friendly (supports templates, strings and data files localization by default)
37-
- Uses fast templates engine ([Simplify.Templates](https://github.com/SimplifyNet/Simplify/wiki/Simplify.Templates))
31+
- Lightweight & fast
32+
- Uses a switchable IoC container for itself and controllers, views constructor injection ([Simplify.DI](https://github.com/SimplifyNet/Simplify/wiki/Simplify.DI))
33+
- Supports async controllers
34+
- Supports controllers which can run on any request
35+
- Localization-friendly (supports templates, strings, and data files localization by default)
36+
- Uses a fast template engine ([Simplify.Templates](https://github.com/SimplifyNet/Simplify/wiki/Simplify.Templates))
3837
- Mocking-friendly
3938
- Mono-friendly
4039

4140
## Quick start
4241

4342
There is a [templates package](https://github.com/SimplifyNet/Simplify.Web.Templates) available at nuget.org for Simplify.Web. It contains a couple of templates which can be a good starting point for your application.
4443

45-
Installing a templates package:
44+
Install the templates package:
4645

4746
```console
4847
dotnet new -i Simplify.Web.Templates
@@ -51,17 +50,17 @@ dotnet new -i Simplify.Web.Templates
5150
| Template | Short Name |
5251
| :---------------------------------- | :---------------------- |
5352
| Angular template | sweb.angular |
54-
| Api template | sweb.api |
53+
| API template | sweb.api |
5554
| Minimal template | sweb.minimal |
56-
| Windows service hosted api template | sweb.api.windowsservice |
55+
| Windows service hosted API template | sweb.api.windowsservice |
5756

58-
Use the short name to create a project based on selected template:
57+
Use the short name to create a project based on the selected template:
5958

6059
```console
6160
dotnet new sweb.angular -n HelloWorldApplication
6261
```
6362

64-
Then just run project via F5 (it will download all required nuget and npm packages at first build).
63+
Then just run the project via F5 (it will download all required NuGet and npm packages at the first build).
6564

6665
## [Detailed documentation](https://github.com/SimplifyNet/Simplify.Web/wiki)
6766

@@ -126,7 +125,7 @@ public class SampleModel
126125
}
127126
```
128127

129-
### Some simple HTML generation controllers example
128+
### Simple HTML generation controllers example
130129

131130
#### Static page controller v1 example
132131

@@ -145,7 +144,7 @@ public class AboutController : Controller
145144

146145
#### Any page controller v1 with high run priority example
147146

148-
Runs on any request and adds login panel to a pages
147+
Runs on any request and adds a login panel to pages.
149148

150149
```csharp
151150
// Controller will be executed on any request and will be launched before other controllers (because they have Priority = 0 by default)
@@ -186,11 +185,11 @@ public class LoggedUserPanelView : View
186185
Below is the list of sample applications showing different variations of Simplify.Web usage:
187186

188187
- [Only as an API backend with Angular + Bootstrap UI SPA](https://github.com/SimplifyNet/Simplify.Web/tree/master/src/SampleApps/SampleApp.Angular)
189-
- [Kestrel-based Application with backend HTML generation, localization, authentication](https://github.com/SimplifyNet/Simplify.Web/tree/master/src/SampleApps/SampleApp.Classic)
188+
- [Kestrel-based application with backend HTML generation, localization, authentication](https://github.com/SimplifyNet/Simplify.Web/tree/master/src/SampleApps/SampleApp.Classic)
190189

191190
![Simplify](https://raw.githubusercontent.com/SimplifyNet/Simplify.Web/master/images/screenshots/sample-app-classic.png)
192191

193-
- [Simple Kestrel-based Application hosted as windows-service](https://github.com/SimplifyNet/Simplify.Web/tree/master/src/SampleApps/SampleApp.WindowsServiceHosted)
192+
- [Simple Kestrel-based application hosted as a Windows service](https://github.com/SimplifyNet/Simplify.Web/tree/master/src/SampleApps/SampleApp.WindowsServiceHosted)
194193

195194
## Contributing
196195

@@ -213,9 +212,9 @@ Additional extensions to Simplify.Web live in their own repositories on GitHub.
213212
- [Simplify.Web.Postman](https://github.com/SimplifyNet/Simplify.Web.Postman) - Postman collection and environment generation
214213
- [Simplify.Web.Swagger](https://github.com/SimplifyNet/Simplify.Web.Swagger) - Swagger generation for controllers
215214
- [Simplify.Web.Multipart](https://github.com/SimplifyNet/Simplify.Web.Multipart) - multipart form model binder
216-
- [Simplify.Web.MessageBox](https://github.com/SimplifyNet/Simplify.Web.MessageBox) - non-interactive server side message box
217-
- [Simplify.Web.Templates](https://github.com/SimplifyNet/Simplify.Web.Templates) - .NET projects templates
215+
- [Simplify.Web.MessageBox](https://github.com/SimplifyNet/Simplify.Web.MessageBox) - non-interactive server-side message box
216+
- [Simplify.Web.Templates](https://github.com/SimplifyNet/Simplify.Web.Templates) - .NET project templates
218217

219218
## License
220219

221-
Licensed under the GNU LESSER GENERAL PUBLIC LICENSE
220+
Licensed under the GNU LESSER GENERAL PUBLIC LICENSE.

src/SampleApps/SampleApp.Angular/ClientApp/.browserslistrc

Lines changed: 0 additions & 17 deletions
This file was deleted.
Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
# Editor configuration, see https://editorconfig.org
2-
root = true
3-
4-
[*]
5-
charset = utf-8
6-
indent_style = space
7-
indent_size = 2
8-
insert_final_newline = true
9-
trim_trailing_whitespace = true
10-
11-
[*.ts]
12-
quote_type = single
13-
14-
[*.md]
15-
max_line_length = off
16-
trim_trailing_whitespace = false
1+
# Editor configuration, see https://editorconfig.org
2+
root = true
3+
4+
[*]
5+
charset = utf-8
6+
indent_style = space
7+
indent_size = 2
8+
insert_final_newline = true
9+
trim_trailing_whitespace = true
10+
11+
[*.ts]
12+
quote_type = single
13+
14+
[*.md]
15+
max_line_length = off
16+
trim_trailing_whitespace = false
Lines changed: 42 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,42 @@
1-
# See http://help.github.com/ignore-files/ for more about ignoring files.
2-
3-
# compiled output
4-
/dist
5-
/dist-server
6-
/tmp
7-
/out-tsc
8-
9-
# dependencies
10-
/node_modules
11-
12-
# IDEs and editors
13-
/.idea
14-
.project
15-
.classpath
16-
.c9/
17-
*.launch
18-
.settings/
19-
*.sublime-workspace
20-
21-
# IDE - VSCode
22-
.vscode/*
23-
!.vscode/settings.json
24-
!.vscode/tasks.json
25-
!.vscode/launch.json
26-
!.vscode/extensions.json
27-
28-
# misc
29-
/.sass-cache
30-
/connect.lock
31-
/coverage
32-
/libpeerconnection.log
33-
npm-debug.log
34-
yarn-error.log
35-
testem.log
36-
/typings
37-
38-
# System Files
39-
.DS_Store
40-
Thumbs.db
1+
# See https://docs.github.com/get-started/getting-started-with-git/ignoring-files for more about ignoring files.
2+
3+
# Compiled output
4+
/dist
5+
/tmp
6+
/out-tsc
7+
/bazel-out
8+
9+
# Node
10+
/node_modules
11+
npm-debug.log
12+
yarn-error.log
13+
14+
# IDEs and editors
15+
.idea/
16+
.project
17+
.classpath
18+
.c9/
19+
*.launch
20+
.settings/
21+
*.sublime-workspace
22+
23+
# Visual Studio Code
24+
.vscode/*
25+
!.vscode/settings.json
26+
!.vscode/tasks.json
27+
!.vscode/launch.json
28+
!.vscode/extensions.json
29+
.history/*
30+
31+
# Miscellaneous
32+
/.angular/cache
33+
.sass-cache/
34+
/connect.lock
35+
/coverage
36+
/libpeerconnection.log
37+
testem.log
38+
/typings
39+
40+
# System files
41+
.DS_Store
42+
Thumbs.db
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
This file explains how Visual Studio created the project.
2+
3+
The following tools were used to generate this project:
4+
- Angular CLI (ng)
5+
6+
The following steps were used to generate this project:
7+
- Create Angular project with ng: `ng new sampleapp.angular --defaults --skip-install --skip-git --no-standalone `.
8+
- Add `proxy.conf.js` to proxy calls to the backend ASP.NET server.
9+
- Add `aspnetcore-https.js` script to install https certs.
10+
- Update `package.json` to call `aspnetcore-https.js` and serve with https.
11+
- Update `angular.json` to point to `proxy.conf.js`.
12+
- Update `app.component.ts` component to fetch and display weather information.
13+
- Modify `app.component.spec.ts` with updated tests.
14+
- Update `app.module.ts` to import the HttpClientModule.
15+
- Update package.json to add `jest-editor-support`.
16+
- Update package.json to add `run-script-os`.
17+
- Add `karma.conf.js` for unit tests.
18+
- Update `angular.json` to point to `karma.conf.js`.
19+
- Add project to solution.
20+
- Update proxy endpoint to be the backend server endpoint.
21+
- Add project to the startup projects list.
22+
- Write this file.

0 commit comments

Comments
 (0)