Skip to content

Commit

Permalink
Merge pull request #10447 from abpframework/bun/bs5
Browse files Browse the repository at this point in the history
Merge bs5 with dev
  • Loading branch information
bnymncoskuner committed Oct 27, 2021
2 parents 99ed30a + c28e079 commit f06d9a6
Show file tree
Hide file tree
Showing 675 changed files with 8,836 additions and 3,002 deletions.
17 changes: 17 additions & 0 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
name: "build and test"
on:
push:
branches:
- dev
paths:
- 'framework/**/*.cs'
- 'framework/**/*.cshtml'
- 'framework/**/*.csproj'
- 'framework/**/*.razor'
- 'modules/**/*.cs'
- 'modules/**/*.cshtml'
- 'modules/**/*.csproj'
- 'modules/**/*.razor'
- 'templates/**/*.cs'
- 'templates/**/*.cshtml'
- 'templates/**/*.csproj'
- 'templates/**/*.razor'

pull_request:
paths:
- 'framework/**/*.cs'
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -314,7 +314,7 @@ abp-build-config.json
tempkey.jwk

# ABP Analyzing files
*.abppkg.analyze.json
# [Disabled for now] *.abppkg.analyze.json

# appsettings.secrets.json
appsettings.secrets.json
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# ABP Framework

![build and test](https://img.shields.io/github/workflow/status/abpframework/abp/build%20and%20test/dev?style=flat-square)
[![codecov](https://codecov.io/gh/abpframework/abp/branch/dev/graph/badge.svg?token=jUKLCxa6HF)](https://codecov.io/gh/abpframework/abp)
[![NuGet](https://img.shields.io/nuget/v/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core)
[![NuGet (with prereleases)](https://img.shields.io/nuget/vpre/Volo.Abp.Core.svg?style=flat-square)](https://www.nuget.org/packages/Volo.Abp.Core)
[![MyGet (nightly builds)](https://img.shields.io/myget/abp-nightly/vpre/Volo.Abp.svg?style=flat-square)](https://docs.abp.io/en/abp/latest/Nightly-Builds)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@
"WeWillSendYouADownloadLink": "We've sent the file to {0}.",
"InvalidFormInputs": "Please, type the valid information specified on the form.",
"DDDBookEmailBody": "Thank you. <br /> To download your book, <a href=\"{0}\">click here</a>.",
"FreeDDDEBook": "Free DDD E-Book"
"FreeDDDEBook": "Free DDD E-Book",
"CommercialNewsletterConfirmationMessage": "I agree to the <a href=\"https://commercial.abp.io/TermsConditions\">Terms & Conditions</a> and <a href=\"https://commercial.abp.io/Privacy\">Privacy Policy</a>."
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -388,6 +388,7 @@
"PurchaseTrialLicenseMessage": "Your license expiration date is {0}. <br> If you want to continue using the projects you created during your free trial period, you need to change the license keys in your <code>appsettings.secrets.json</code> files. Here is your license key:",
"TrialLicenseExpireMessage": "You are using the trial license and your trial license will expire on {0}.",
"TryForFree": "Try For Free",
"TrialLicenseExpiredInfo": "Your trial license period has expired!"
"TrialLicenseExpiredInfo": "Your trial license period has expired!",
"CommercialNewsletterConfirmationMessage": "I agree to the <a href=\"https://commercial.abp.io/TermsConditions\">Terms & Conditions</a> and <a href=\"https://commercial.abp.io/Privacy\">Privacy Policy</a>."
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@
"WeWillSendYouADownloadLink": "{0} adresine email gönderilmiştir.",
"InvalidFormInputs": "Lütfen formda belirtilen geçerli bilgileri yazınız.",
"DDDBookEmailBody": "Teşekkürler. <br /> Kitabı indirmek için, <a href=\"{0}\">buraya tıklayınız</a>.",
"FreeDDDEBook": "Ücretsiz DDD E-Kitap"
"FreeDDDEBook": "Ücretsiz DDD E-Kitap",
"CommercialNewsletterConfirmationMessage": "<a href=\"https://commercial.abp.io/TermsConditions\">Şartlar, Koşullar</a> ve <a href=\"https://commercial.abp.io/Privacy\">Gizlilik politikasını</a> kabul ediyorum."
}
}
4 changes: 3 additions & 1 deletion build/common.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ $rootFolder = (Get-Item -Path "./" -Verbose).FullName
# List of solutions used only in development mode
$solutionPaths = @(
"../framework",
"../studio",
"../modules/basic-theme",
"../modules/users",
"../modules/permission-management",
Expand All @@ -19,7 +20,8 @@ $solutionPaths = @(
"../modules/background-jobs",
"../modules/account",
"../modules/cms-kit",
"../modules/blob-storing-database"
"../modules/blob-storing-database",
"../studio"
)

if ($full -eq "-f")
Expand Down
4 changes: 1 addition & 3 deletions codecov.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
codecov:
branch: dev
require_ci_to_pass: yes
comment:
require_head: no
require_base: no
allow_coverage_offsets: true
2 changes: 1 addition & 1 deletion common.props
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project>
<PropertyGroup>
<LangVersion>latest</LangVersion>
<Version>5.0.0-beta.1</Version>
<Version>5.0.0-beta.2</Version>
<NoWarn>$(NoWarn);CS1591;CS0436</NoWarn>
<PackageIconUrl>https://abp.io/assets/abp_nupkg.png</PackageIconUrl>
<PackageProjectUrl>https://abp.io/</PackageProjectUrl>
Expand Down
11 changes: 10 additions & 1 deletion docs/en/Background-Jobs-Hangfire.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,12 +95,21 @@ app.UseHangfireDashboard("/hangfire", new DashboardOptions
});
```

* `AbpHangfireAuthorizationFilter` is an implementation of an authorization filter.

#### AbpHangfireAuthorizationFilter

`AbpHangfireAuthorizationFilter` class has the following fields:

* **`enableTenant` (`bool`, default: `false`):** Enables/disables accessing the Hangfire dashboard on tenant users.
* **`requiredPermissionName` (`string`, default: `null`):** Hangfire dashboard is accessible only if the current user has the specified permission. In this case, if we specify a permission name, we don't need to set `enableTenant` `true` because the permission system already does it.

If you want to require an additional permission, you can pass it into the constructor as below:

```csharp
app.UseHangfireDashboard("/hangfire", new DashboardOptions
{
AsyncAuthorization = new[] { new AbpHangfireAuthorizationFilter("MyHangFireDashboardPermissionName") }
AsyncAuthorization = new[] { new AbpHangfireAuthorizationFilter(requiredPermissionName: "MyHangFireDashboardPermissionName") }
});
```

Expand Down
8 changes: 6 additions & 2 deletions docs/en/Blog-Posts/2021-10-05 v5_0_Beta1/POST.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# ABP Platform 5.0 Beta 1 Has Been Released

Today, we are excited to release the [ABP Framework](https://abp.io/) and the [ABP Commercial](https://commercial.abp.io/) version **5.0 Beta 1**. This blog post introduces the new features and important changes in this new version.
Today, we are excited to release the [ABP Framework](https://abp.io/) and the [ABP Commercial](https://commercial.abp.io/) version **5.0 Beta**. This blog post introduces the new features and important changes in this new version.

> **The planned release date for the [5.0.0 Release Candidate](https://github.com/abpframework/abp/milestone/51) version is November, 2021**.
Expand Down Expand Up @@ -34,10 +34,13 @@ See the [ABP CLI documentation](https://docs.abp.io/en/abp/latest/CLI) for all t
### Visual Studio Upgrade

As .NET 6 is a preview version you need to make changes on your current Visual Studio. If you want to run a .NET 6 project on Visual Studio 2019, you need to enable the `Use Previews of the .NET SDK` option from Visual Studio 2019 options. See the screenshot:
As .NET 6 is a preview version you need to make changes on the Visual Studio 2019.
If you want to run a .NET 6 project on Visual Studio 2019, you need to install the latest .NET SDK 6 from https://dotnet.microsoft.com/download/dotnet/6.0
and also enable the `Use Previews of the .NET SDK` option from Visual Studio 2019 options. See the screenshot:

![Enable Using Previews of the .NET SDK ](use-preview-visual-studio.png)


Alternatively you can download the latest Visual Studio 2022 preview to run/create the .NET 6 projects. We have tested the ABP solution with the Visual Studio 2022 `17.0.0 Preview 4.1`. Check out https://visualstudio.microsoft.com/vs/preview/ for more information.

### Migration Notes & Breaking Changes
Expand All @@ -48,6 +51,7 @@ This is a major version and there are some breaking changes and upgrade steps. H
* `IRepository` doesn't inherit from `IQueryable` anymore. It was already made obsolete in 4.2.
* Removed NGXS and states from the Angular UI.
* Removed gulp dependency from the MVC / Razor Pages UI in favor of `abp install-libs` command of ABP CLI.
* Deprecated EntityCreatingEventData, EntityUpdatingEventData, EntityDeletingEventData and EntityChangingEventData classes. See [#9897](https://github.com/abpframework/abp/issues/9897).

Please see the [migration document](https://docs.abp.io/en/abp/5.0/Migration-Guides/Abp-5_0) for all the details. You can also see all [the closed issues and pull request](https://github.com/abpframework/abp/releases/tag/5.0.0-beta.1) on GitHub.

Expand Down
26 changes: 25 additions & 1 deletion docs/en/CLI-New-Command-Samples.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# ABP CLI Create Solution Sample Commands
# ABP CLI - New Solution Sample Commands

The `abp new` command creates an ABP solution or other artifacts based on an ABP template. [ABP CLI](CLI.md) has several parameters to create a new ABP solution. In this document we will show you some sample commands to create a new solution. All the project names are `Acme.BookStore`. Currently, the only available mobile project is a `React Native` mobile app. Available database providers are `Entity Framework Core` and `MongoDB`. All the commands starts with `abp new`.

Expand Down Expand Up @@ -87,6 +87,28 @@ The following commands are for creating Blazor projects:
abp new Acme.BookStore -u blazor --database-provider mongodb --mobile none -csf
```

## Blazor Server

The following commands are for creating Blazor projects:

* **Entity Framework Core**, no mobile app:

```bash
abp new Acme.BookStore -t app -u blazor-server --mobile none
```

* **Entity Framework Core**, **separate Identity Server**, **separate API Host**, mobile app included:

```bash
abp new Acme.BookStore -u blazor-server --tiered
```

* **MongoDB**, no mobile app, creates the project in a new folder:

```bash
abp new Acme.BookStore -u blazor --database-provider mongodb --mobile none -csf
```

## No UI

In the default app template, there is always a frontend project. In this option there is no frontend project. It has a `HttpApi.Host` project to serve your HTTP WebAPIs. It's appropriate if you want to create a WebAPI service.
Expand All @@ -101,6 +123,8 @@ In the default app template, there is always a frontend project. In this option
```bash
abp new Acme.BookStore -u none --mobile none --database-provider mongodb
```



## Console application

Expand Down
14 changes: 8 additions & 6 deletions docs/en/CLI.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,12 +89,14 @@ For more samples, go to [ABP CLI Create Solution Samples](CLI-New-Command-Sample
* `--ui` or `-u`: Specifies the UI framework. Default framework is `mvc`. Available frameworks:
* `mvc`: ASP.NET Core MVC. There are some additional options for this template:
* `--tiered`: Creates a tiered solution where Web and Http API layers are physically separated. If not specified, it creates a layered solution which is less complex and suitable for most scenarios.
* `angular`: Angular. There are some additional options for this template:
* `--separate-identity-server`: Separates the identity server application from the API host application. If not specified, you will have a single endpoint in the server side.
* `blazor`: Blazor. There are some additional options for this template:
* `--separate-identity-server`: Separates the identity server application from the API host application. If not specified, you will have a single endpoint in the server side.
* `none`: Without UI. There are some additional options for this template:
* `--separate-identity-server`: Separates the identity server application from the API host application. If not specified, you will have a single endpoint in the server side.
* `angular`: Angular UI. There are some additional options for this template:
* `--separate-identity-server`: The Identity Server project comes as a separate project and runs at a different endpoint. It separates the Identity Server from the API Host application. If not specified, you will have a single endpoint in the server side.
* `blazor`: Blazor UI. There are some additional options for this template:
* `--separate-identity-server`The Identity Server project comes as a separate project and runs at a different endpoint. It separates the Identity Server from the API Host application. If not specified, you will have a single endpoint in the server side.
* `blazor-server`: Blazor Server UI. There are some additional options for this template:
* `--tiered`: The Identity Server and the API Host project comes as separate projects and run at different endpoints. It has 3 startup projects: *HttpApi.Host*, *IdentityServer* and *Blazor* and and each runs on different endpoints. If not specified, you will have a single endpoint for your web project.
* `none`: Without UI. No front-end layer will be created. There are some additional options for this template:
* `--separate-identity-server`: The Identity Server project comes as a separate project and runs at a different endpoint. It separates the Identity Server from the API Host application. If not specified, you will have a single endpoint in the server side.
* `--mobile` or `-m`: Specifies the mobile application framework. If not specified, no mobile application will be created. Available options:
* `react-native`: React Native.
* `--database-provider` or `-d`: Specifies the database provider. Default provider is `ef`. Available providers:
Expand Down
7 changes: 7 additions & 0 deletions docs/en/Migration-Guides/Abp-5-0-Blazor.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# ABP Blazor UI v4.x to v5.0 Migration Guide

> This document is for the ABP MVC / Razor Pages UI. See also [the main migration guide](Abp-5_0.md).
## Upgrading to the latest Blazorise

ABP 5.0 uses the latest version of the [Blazorise](https://blazorise.com/) library. Please upgrade the Blazorise NuGet packages in your solution.
12 changes: 12 additions & 0 deletions docs/en/Migration-Guides/Abp-5-0-MVC.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# ABP MVC / Razor Pages UI v4.x to v5.0 Migration Guide

> This document is for the ABP MVC / Razor Pages UI. See also [the main migration guide](Abp-5_0.md).
## Use install-libs by default

Removed the Gulp dependency from the MVC / Razor Pages UI projects in favor of `abp install-libs` command ([see](https://docs.abp.io/en/abp/5.0/UI/AspNetCore/Client-Side-Package-Management#install-libs-command)) of the ABP CLI. You should run this command whenever you change/upgrade your client-side package dependencies via `package.json`.

## Switched to SweetAlert2

Switched from SweetAlert to SweetAlert2. Run the `abp install-libs` command (in the root directory of the web project) after upgrading your solution. See [#9607](https://github.com/abpframework/abp/pull/9607).

18 changes: 9 additions & 9 deletions docs/en/Migration-Guides/Abp-5_0-Angular.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Angular UI v4.x to v5.0 Migration Guide

## Breaking Changes
This document is for the ABP MVC / Razor Pages UI. See also [the main migration guide](Abp-5_0.md).

### Overall
## Overall

See the overall list of breaking changes:

Expand All @@ -16,15 +16,15 @@ See the overall list of breaking changes:
- Update all dependency versions to the latest [#9806](https://github.com/abpframework/abp/issues/9806)
- Chart.js big include with CommonJS warning [#7472](https://github.com/abpframework/abp/issues/7472)

### Angular v12
## Angular v12

The new ABP Angular UI is based on Angular v12. We started to compile Angular UI packages with the Ivy compilation. Therefore, **new packages only work with Angular v12**. If you are still on the older version of Angular v12, you have to update to Angular v12. The update is usually very easy. See [Angular Update Guide](https://update.angular.io/?l=2&v=11.0-12.0) for further information.

### Bootstrap 5
## Bootstrap 5

TODO

### NGXS has been removed
## NGXS has been removed

We aim to make the ABP Framework free of any state-management solutions. ABP developers should be able to use the ABP Framework with any library/framework of their choice. So, we decided to remove NGXS from ABP packages.

Expand All @@ -42,7 +42,7 @@ NGXS states and actions, some namespaces have been removed. See [this issue](htt

If you don't want to use the NGXS, you should remove all NGXS related imports, injections, etc., from your project.

### @angular/localize package
## @angular/localize package

[`@angular/localize`](https://angular.io/api/localize) dependency has been removed from `@abp/ng.core` package. The package must be installed in your app. Run the following command to install:

Expand All @@ -56,7 +56,7 @@ yarn add @angular/localize

> ABP Angular UI packages are not dependent on the `@angular/localize` package. However, some packages (like `@ng-bootstrap/ng-bootstrap`) depend on the package. Thus, this package needs to be installed in your project.
### Proxy endpoints
## Proxy endpoints

New endpoints named proxy have been created, related proxies have moved.
For example; before v5.0, `IdentityUserService` could be imported from `@abp/ng.identity`. As of v5.0, the service can be imported from `@abp/ng.identity/proxy`. See an example:
Expand All @@ -79,11 +79,11 @@ Following proxies have been affected:
- `@abp/ng.tenant-management` to `@abp/ng.tenant-management/proxy`
- **ProfileService** is deleted from `@abp/ng.core`. Instead, you can import it from `@abp/ng.identity/proxy`

### SettingTabsService
## SettingTabsService

**SettingTabsService** has moved from `@abp/ng.core` to `@abp/ng.setting-management/config`.

### ChartComponent
## ChartComponent

[`ChartComponent`](../UI/Angular/Chart-Component.md) has moved from `@abp/ng.theme.shared` to `@abp/ng.components/chart.js`. To use the component, you need to import the `ChartModule` to your module as follows:

Expand Down
Loading

0 comments on commit f06d9a6

Please sign in to comment.