Skip to content

Commit 53cdf47

Browse files
committed
DNN 9.13.10 with fixes from DNN 10.x
1 parent 8fad43c commit 53cdf47

File tree

7,427 files changed

+1484215
-805033
lines changed

Some content is hidden

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

7,427 files changed

+1484215
-805033
lines changed

.github/APPROVERS.md

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,38 @@
1-
# The Approvers Group
2-
3-
A vital role in our project is reserved for the people who decide what code is accepted into our framework, and what
4-
is not. This is the task of the (Git) Approvers Group. To explain let's look at how the code of DNN gets changed.
5-
6-
As you are probably aware the way the source code of DNN (which is hosted on Github)
7-
is currently managed, is through accepting so-called Pull Requests (or PRs). These PRs are submitted by
8-
enthusiasts like you and me where we aim to change the Repository ("base code") of the platform. The current list
9-
of PRs can be found here: [https://github.com/dnnsoftware/Dnn.Platform/pulls](https://github.com/dnnsoftware/Dnn.Platform/pulls)
10-
11-
Before any PR gets accepted it has to be reviewed by 2 people before it can be "merged" into the main repository.
12-
This reviewing and merging is done by a handful of people.
13-
Due to the sensitive nature of this task and the skills required to do it, this is a highly restricted group.
14-
In the interest of transparency and to avoid any confusion here is a list of criteria that guide our decision as to who is part of this group:
15-
16-
- Actively take part in the project (like attending Tech meetings, contributing code, etc)
17-
- Having in-depth knowledge of the overall organization and architecture of the project (this favors people who have been with the project for some time)
18-
- Having a track record of good code contributions
19-
- Knowledge of Git and Github
20-
- Having enough time to devote to this task
21-
22-
This group is dynamic. Meaning: we expect people to float into and out of this group.
23-
It is not an award that you put on a shelf like an MVP-ship.
24-
It is an ongoing task and if someone drifts away to focus on something else that person will be removed from this group.
25-
26-
This group is practical. Meaning: there are no stacks of procedures.
27-
We try to keep things simple and focus on a smooth development process for DNN.
28-
Members stay in touch through a Slack channel and meet
29-
bi-weekly to discuss progress.
30-
31-
The current members are:
32-
- Brian Dukes
33-
- Peter Donker
34-
- Mitch Sellers
35-
- David Poindexter
36-
- Daniel Valadas
37-
- Matt Rutledge
38-
1+
# The Approvers Group
2+
3+
A vital role in our project is reserved for the people who decide what code is accepted into our framework, and what
4+
is not. This is the task of the (Git) Approvers Group. To explain let's look at how the code of DNN gets changed.
5+
6+
As you are probably aware the way the source code of DNN (which is hosted on Github)
7+
is currently managed, is through accepting so-called Pull Requests (or PRs). These PRs are submitted by
8+
enthusiasts like you and me where we aim to change the Repository ("base code") of the platform. The current list
9+
of PRs can be found here: [https://github.com/dnnsoftware/Dnn.Platform/pulls](https://github.com/dnnsoftware/Dnn.Platform/pulls)
10+
11+
Before any PR gets accepted it has to be reviewed by 2 people before it can be "merged" into the main repository.
12+
This reviewing and merging is done by a handful of people.
13+
Due to the sensitive nature of this task and the skills required to do it, this is a highly restricted group.
14+
In the interest of transparency and to avoid any confusion here is a list of criteria that guide our decision as to who is part of this group:
15+
16+
- Actively take part in the project (like attending Tech meetings, contributing code, etc)
17+
- Having in-depth knowledge of the overall organization and architecture of the project (this favors people who have been with the project for some time)
18+
- Having a track record of good code contributions
19+
- Knowledge of Git and Github
20+
- Having enough time to devote to this task
21+
22+
This group is dynamic. Meaning: we expect people to float into and out of this group.
23+
It is not an award that you put on a shelf like an MVP-ship.
24+
It is an ongoing task and if someone drifts away to focus on something else that person will be removed from this group.
25+
26+
This group is practical. Meaning: there are no stacks of procedures.
27+
We try to keep things simple and focus on a smooth development process for DNN.
28+
Members stay in touch through a Slack channel and meet
29+
bi-weekly to discuss progress.
30+
31+
The current members are:
32+
33+
- Brian Dukes
34+
- Peter Donker
35+
- Mitch Sellers
36+
- David Poindexter
37+
- Daniel Valadas
38+
- Matt Rutledge

.github/BUILD.md

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33
Important: **Dnn.Platform does not support "Hit F5 and see your website come up".** I.e. you can't run DNN by hitting F5 on the source code in Visual Studio.
44

55
There are three supported build scenarios:
6+
67
1. **Build to create a platform distribution package**. You'd only use this to test a complete package (how it installs, works, etc). This build process is used by our Continuous Integration system and creates the release packages everyone uses to install the platform.
78
2. **Build to create a local DNN development website**. You'd typically not do this all the time, but only when you wish to set up a new development site or revert your development website to the current DNN repository state.
89
3. **Debug build**. You'd use this when changing code and testing your changes on your (previously created) development site. Note you can also "rebuild" just a part of the platform and not the entire solution for this which will speed things up for you.
910

1011
When contributing to DNN, you'd typically go through steps 2 and 3 at least and maybe 1 if you wish to run more encompassing tests. But before you delve into code, please familiarize yourself with [How to Contribute](/CONTRIBUTING.md) first.
1112

12-
1313
## Build/Develop Prerequisites
1414

1515
- Visual Studio 2022 (or .NET SDK 6.x) or later
@@ -19,13 +19,15 @@ When contributing to DNN, you'd typically go through steps 2 and 3 at least and
1919
## External sources
2020

2121
There is one project not included in this repository that are distributed with DNN:
22-
* [CDF](https://github.com/dnnsoftware/ClientDependency) - The Dnn Client Dependency Framework
22+
23+
- [CDF](https://github.com/dnnsoftware/ClientDependency) - The Dnn Client Dependency Framework
2324

2425
If you wish to make changes to that project, please keep this in mind.
2526

2627
## Used Build Technologies
2728

2829
DNN uses the following technologies to create a working build:
30+
2931
1. MSBuild. This is Microsoft Visual Studio's built in mechanism to compile C#. It can also run auxiliary tasks (like packaging the included modules). These tasks are specified in `.build` and `.targets` files and can leverage .net assemblies to do its magic. Almost all central MSBuild code is in the `Build/BuildScripts` folder. Main folder location settings can be found in the `DNN_Platform.build` file in the root of the repository which can be overridden using a `DNN_Platform.local.build` file at the same location.
3032
2. Webpack. The "Admin Experience" (which is the project that contains the UI for managing DNN) contains a number of client-side Javascript projects (mostly React projects). These are built using Webpack. Webpack is triggered in the main build process in the `Build/BuildScripts/AEModule.build` script. But it can be run on individual projects if you need to.
3133
3. [Cake Build](https://cakebuild.net/). This uses C# code to run build tasks. We use Cake for orchestrating the entire build process (e.g. packaging of the platform) and for auxiliary tasks like creating a dev site. All Cake scripts are found in the `Build/Cake` folder. After Cake first runs it bootstraps itself and creates the `tools` folder where the various assemblies can be found. Note the scripts use the [DNN Cake Utils](https://github.com/DNNCommunity/Dnn.CakeUtils) assembly to do the heavy lifting.
@@ -38,7 +40,7 @@ This process uses Cake. Open Powershell at the root of the repository folder and
3840
.\build.ps1
3941
```
4042

41-
This will trigger the build and packaging logic. The packages are created in the `artifacts` folder.
43+
This will trigger the build and packaging logic. The packages are created in the `artifacts` folder.
4244

4345
Note that (unless a build version has been specified, see below) this process will retrieve the latest version from Github and use that to version dlls and manifests. This creates a bunch of changed `.dnn` files and you'll need to make sure you don't include those in any Pull Requests when contributing.
4446

@@ -60,7 +62,7 @@ The build process uses a local settings file which is excluded from source contr
6062

6163
This will create a file called `settings.local.json` at the root with the following content:
6264

63-
``` json
65+
```json
6466
{
6567
"WebsitePath": "",
6668
"WebsiteUrl": "",
@@ -77,18 +79,18 @@ This will create a file called `settings.local.json` at the root with the follow
7779

7880
The settings are as follows:
7981

80-
|Name|Description|
81-
|---|---|
82-
|WebsitePath|Full physical path to the folder of your (dev) website|
83-
|WebsiteUrl|Url for that website (unused for now)|
84-
|SaConnectionString|SQL connection string with admin privileges. This allows the scripts to drop and recreate your database.|
85-
|DnnConnectionString|Connection string used in the web.config of your dev site to connect to the SQL database|
86-
|DbOwner|If you wish other than the default "dbo", please specify here.|
87-
|ObjectQualifier|The DNN database Object Qualifier. This is optional.|
88-
|DnnDatabaseName|Name to use for your DNN database. This is used in the drop and create scripts.|
89-
|DnnSqlUsername|User name for the account that has ownership of the database. This setting is used in the create scripts to ensure the account has the proper access rights.|
90-
|DatabasePath|Physical path to where you wish to create the database. Note this is just the folder, not the filename of the database.|
91-
|Version|You can force the build process to build for a specific version. E.g. 9.4.4.5. That will be used to build the correct versioned dlls and modules.|
82+
| Name | Description |
83+
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
84+
| WebsitePath | Full physical path to the folder of your (dev) website |
85+
| WebsiteUrl | Url for that website (unused for now) |
86+
| SaConnectionString | SQL connection string with admin privileges. This allows the scripts to drop and recreate your database. |
87+
| DnnConnectionString | Connection string used in the web.config of your dev site to connect to the SQL database |
88+
| DbOwner | If you wish other than the default "dbo", please specify here. |
89+
| ObjectQualifier | The DNN database Object Qualifier. This is optional. |
90+
| DnnDatabaseName | Name to use for your DNN database. This is used in the drop and create scripts. |
91+
| DnnSqlUsername | User name for the account that has ownership of the database. This setting is used in the create scripts to ensure the account has the proper access rights. |
92+
| DatabasePath | Physical path to where you wish to create the database. Note this is just the folder, not the filename of the database. |
93+
| Version | You can force the build process to build for a specific version. E.g. 9.4.4.5. That will be used to build the correct versioned dlls and modules. |
9294

9395
Once you've set up the above, run the following in Powershell:
9496

@@ -104,7 +106,7 @@ Note: **you need to have gone through the steps for setting up a dev site (see a
104106

105107
To build the .net projects to the right location, you'll need to create your override of the core build variables in the `DNN_Platform.local.build` file:
106108

107-
``` xml
109+
```xml
108110
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
109111
<PropertyGroup>
110112
<WebsitePath Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">C:\Path\to\my\DNN\DevSite</WebsitePath>
@@ -119,12 +121,12 @@ For the Webpack projects it is set up to read from the `settings.local.json` fil
119121

120122
## Build React Projects
121123

122-
The solution includes a number of React projects. Notably for the PersonaBar (`Dnn.AdminExperience/ClientSide/*`). To build these to your development site you
124+
The solution includes a number of React projects. Notably for the PersonaBar (`Dnn.AdminExperience/ClientSide/*`). To build these to your development site you
123125
need to use Yarn and scope to the project you're working on. Go to the `package.json` file for the project and find the identifier (name) and use that. So if you're
124126
working on the Site Settings PersonaBar project, you'll find that file here: `Dnn.AdminExperience/ClientSide/SiteSettings.Web/package.json`. Open it up
125127
and you'll see something like this:
126128

127-
``` json
129+
```json
128130
{
129131
"name": "site_settings",
130132
"version": "9.8.1",

.github/FUNDING.yml

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
# These are supported funding model platforms
2-
3-
github: [valadas, david-poindexter, mitchelsellers, donker] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
4-
patreon: # Replace with a single Patreon username
5-
open_collective: # Replace with a single Open Collective username
6-
ko_fi: # Replace with a single Ko-fi username
7-
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8-
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9-
liberapay: # Replace with a single Liberapay username
10-
issuehunt: # Replace with a single IssueHunt username
11-
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
12-
polar: # Replace with a single Polar username
13-
buy_me_a_coffee: # Replace with a single Buy Me a Coffee username
14-
thanks_dev: # Replace with a single thanks.dev username
15-
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
1+
# These are supported funding model platforms
2+
3+
github: [valadas, david-poindexter, mitchelsellers, donker] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
4+
patreon: # Replace with a single Patreon username
5+
open_collective: # Replace with a single Open Collective username
6+
ko_fi: # Replace with a single Ko-fi username
7+
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8+
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9+
liberapay: # Replace with a single Liberapay username
10+
issuehunt: # Replace with a single IssueHunt username
11+
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
12+
polar: # Replace with a single Polar username
13+
buy_me_a_coffee: # Replace with a single Buy Me a Coffee username
14+
thanks_dev: # Replace with a single thanks.dev username
15+
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']

0 commit comments

Comments
 (0)