Commit Graph

1844 Commits

Author SHA1 Message Date
Kenn Jacobsen
147c60f04b Performance improvement: Reusable data editors (#12921)
* Introduce opt-in option for reusable data editors

* Verified RTE as reusable

* Make attribute property naming more explicit + update comments

* Test file upload and image cropper

* Add unit tests

(cherry picked from commit 44122c6509)
2022-09-19 16:16:03 +02:00
Sebastiaan Janssen
48bd4a5f27 Grammar (do -> does) and some extra text
(cherry picked from commit 9bd6500bc7)
2022-09-19 16:15:32 +02:00
Sebastiaan Janssen
87c06f5f98 Back to 10.2.0-ish 2022-09-19 16:14:16 +02:00
Bjarke Berg
803c044b60 Updated dependencies and fixed new NRT issues 2022-09-19 12:36:45 +02:00
Bjarke Berg
c1010e5239 Merge remote-tracking branch 'origin/v10/dev' into v11/dev 2022-09-19 10:51:18 +02:00
Nikolaj Geisle
09e2b04f91 V10: Update examine dependency (#12982)
* Update Examine.Lucene to newest version

* Update other projects
2022-09-12 18:48:30 +02:00
Bjarke Berg
74c45ee60d Merge remote-tracking branch 'origin/v10/dev' into v11/dev
# Conflicts:
#	src/Umbraco.Core/DependencyInjection/UmbracoBuilder.Configuration.cs
#	src/Umbraco.Core/Models/Mapping/DictionaryMapDefinition.cs
#	src/Umbraco.Web.BackOffice/Install/InstallApiController.cs
#	version.json
2022-09-12 16:47:20 +02:00
nikolajlauridsen
d5be2fb89c Merge branch 'release/10.2.0' into v10/dev
# Conflicts:
#	version.json
2022-09-08 10:34:53 +02:00
Kenn Jacobsen
44122c6509 Performance improvement: Reusable data editors (#12921)
* Introduce opt-in option for reusable data editors

* Verified RTE as reusable

* Make attribute property naming more explicit + update comments

* Test file upload and image cropper

* Add unit tests
2022-08-31 11:03:34 +02:00
Sebastiaan Janssen
9bd6500bc7 Grammar (do -> does) and some extra text 2022-08-29 13:23:49 +02:00
Mole
748fb7d1f7 Implement new backoffice installer (#12790)
* Add new BackOfficeApi project

* Add swagger

* Add and route new install controller

* Add new install steps

* Add Setup endpoint

* Add missing RequiresExecution methods

* Fix nullability of databasemodel

* Move user information to separate model

* Remove ping method

* Add view models install data

* Move mapping folder

* Move ViewModels

* Add settings endpoint

* Remove unused binderprovider

* Postfix RequiresExecution with async

* Update NewDatabaseUpgradeStep to not depend on install step

* Add installstep collection

* Move registration into backoffice project

* Add InstallService

* Use service in controller

* Add upgrade to install service and use in controller

* Correctly check is database is configured

* Reorganize

* Reorganize into new core and infrastructure

* Rename steps

* Rename BackofficeApi to MangementApi

* Make install step an interface instead of abstract class

* Rename InstallStep to create CreateUserStep

* Move restart runtime and sign in user into install steps

* Move install service into new core project

* Map controllers in composer

* Restrict access to installcontroller based on runtime level

* Use FireAndForget when logging install

* Use actionresult instead of iactionresult

* Set new projects as not packable

* Link to backoffice in 201 response when installed

* Register installations

* Add custom backoffice routing template token

* Move umbraco path trimming out of application convention

* Make it easier to route to backoffice api

* Make swagger version aware and move behind backoffice path

* Obsolete old install classes

* Move maps into single file

This is all mappint to/from viewmodels in some manner

* Remove usage of InstallSetupResult

* Move new projects to the src folder

* Remove InstallationType from IInstallStep

This upgrade steps should implement their own IUpgradeStep interface

* Remove upgrade from service and controller

This should be its own service and controller

* Add xml docs

* Remove internals visible to

* Disable package validation for new projects

Quite the gotcha here, if the projects are brand new, there is no nuget packages to compare with, this causes the build to fail.

* Add ValidateDatabase endpoint

* Remove project references to new backoffice

We don't actually want to depend on this yet, it's just needed for testing/development

* Obsolete installationtype

* Add DatabaseSettingsFactory tests

* Add InstallServiceTests

* Fix InstallServiceTests

* Test RequireRuntimeLevelAttribute

* Implement new backoffice upgrader (#12818)

* Add UpgradeSettingsModel and viewmodel

* Add upgrade/settings endpoint

* Implement upgrade steps

* Add upgrade step collection

* Add UpgradeService

* Add authorize endpoint to UpgradeController

* Fix interface

* Add upgrade service tests

* Remove runtime check in databaseinstallstep

* Move RequireRuntimeLevel to controller

* Add a readme to the new backoffice part

* BackOffice not Backoffice

* Add conditional project references

* Fixes based on review

* Fix up

* Move running of steps into its own method in UpgradeService

* Make services transient

* More fixup

* Log exceptions when running steps
2022-08-29 09:50:48 +02:00
Bjarke Berg
8f6e28e0ad Fixed issue with saving member groups, that was not persisted, if only the member groups was changed. (#12905) 2022-08-25 12:31:10 +02:00
Nikolaj Geisle
1b5225f4cd V11/feature/update to dotnet 7 (#12712)
* Update projects to .NET 7

* Fix nullability errors

* Fix up pipelines to run 7.0

* Update langversion to preview

* Revert "Fix up pipelines to run 7.0"

This reverts commit d0fa8d01b8126a4eaa59832a3814a567705419ae.

* Fix up pipelines again, this time without indentation changes

* Include preview versions

* Versions not Version

* Fix ModelTypeTests

* Fix MemberPasswordHasherTests

Microsoft wants to use SHA512 instead of SHA256, so our old hashes will return SuccessRehashNeeded now

* Use dotnet cli instead of nuget restore

* Update src/Umbraco.Web.UI/Umbraco.Web.UI.csproj

* Update dependencies

* Fix nullability issues

* Fix unit test

* Fix nullability in ChangingPasswordModel

OldPassword can be null, if we're changing the password with password reset enabled. Additionally, we might as well use the new required keyword instead of supressing null.

* Use required keyword instead of supressing null

* Fix up pipelines again

* fix up spelling-error

* Use dotnet cli instead of nuget restore

* Fix up another NuGet command

* Use dotnet version 7 before building

* Include preview versions

* Remove condition

* Use dotnet 7 before running powershell script

* Update templates to .net 7

* Download version 7 before running linux container

* Move use dotnet 7 even earlier in E2E process

* Remove dotnet 7

* Reintroduce .NET 7 task

* Update linux docker container and remove dotnet 7 from yml

* Fix up dockerfile with ARG

* Fix up docker file with nightly builds of dotnet 7

* Reintroduce dotnet 7 so windows can use it

* Use aspnet 7 in docker

Co-authored-by: Nikolaj <nikolajlauridsen@protonmail.ch>
Co-authored-by: Zeegaan <nge@umbraco.dk>
2022-08-23 11:31:05 +02:00
Bjarke Berg
d96c9a77cf Better exception message when using ALTER TABLE and SQLite (#12848)
* Added NotSupportedException when using Alter Table and SQLite. This is considered better than the underlying sql error.

* use Environment.NewLine
2022-08-22 15:48:17 +02:00
Mole
f8e20a9db9 V10: Fix foreign key constraints when using external login provider for members (#12872)
* Move role saving out of UpdateMemberProperties

* Add missing delete clauses

* Fix token for users too

* Fix deleting user
2022-08-22 15:18:12 +02:00
Bjarke Berg
e9f9b8aee1 merge v10 to v11 2022-08-18 14:38:49 +02:00
Sebastiaan Janssen
26d83381f2 Merge branch 'v10/contrib' into v10/dev
# Conflicts:
#	src/Umbraco.Web.UI.Client/src/installer/steps/user.html
#	src/Umbraco.Web.UI.Client/src/less/installer.less
2022-08-18 11:23:08 +02:00
Nikolaj
838f4199c8 Only recreate token if it has changed. 2022-08-17 14:36:09 +02:00
Nikolaj
e2f5c93528 Ensure that LoginTokens gets marked as dirty
Might want to experiment with only removing/updating if the value is different
2022-08-16 15:47:01 +02:00
Warren Buckley
2f5759dba2 Display package version in Installed Packages (#12784)
* Adds the package version from Package Manifest - (JSON or ManifestFilter C#)

Used to see what version of a package installed & make package devs aware that they can set this, as we use this in the package telemetry service

* Prefix with word Version for cases where 'Unknown' is displayed
2022-08-15 11:29:41 +02:00
Andy Butland
98c9124735 Refactored logic for calculating the first run time for a recurring hosted service. (#12828)
* Refactors the logic for calculating the first run time for a recurring task for easier re-use by similar hostservices.

* Renamed method to match wider usage.
2022-08-12 10:14:15 +01:00
Bjarke Berg
274e7c5302 Use user key as alias instead of username 2022-08-05 10:48:45 +02:00
Mads Rasmussen
8802b58849 Merge pull request #12605 from umbraco/v10/feature/variant-permissions
Feature: Variant Permissions (Readonly access)
2022-08-03 14:15:49 +02:00
Mads Rasmussen
31279b96cf Merge branch 'v10/dev' into v10/feature/variant-permissions 2022-08-03 11:22:35 +02:00
Mole
3972538fd5 Fix docfx generation (#12775)
* Fix some XML docs

* Re add unused using in SqlSyntaxProviderBase to magically fix docfx

I have no idea why this works, but it does

* Fix nullref exception
2022-08-03 11:00:30 +02:00
Sebastiaan Janssen
b9393c655f Merge branch 'v10/dev' into v10/contrib 2022-07-26 10:26:02 +02:00
Ronald Barendse
9e1e9641a9 Skip saving template file when using runtime mode Production 2022-07-20 08:33:16 +02:00
Ronald Barendse
df5d657380 Swap registration and resolving of IRuntimeModeValidator items to collection builder 2022-07-20 08:33:15 +02:00
Ronald Barendse
e1c80ecd20 Add RuntimeModeValidators() extension method 2022-07-20 08:33:15 +02:00
Ronald Barendse
f11d717522 Add RuntimeModeValidatorCollection and builder 2022-07-20 08:33:14 +02:00
Shannon Deminick
c2c87a0d72 Don't allocate new object array instances when indexing (#12710)
* Don't allocate new object array instances when indexing

There's no reason to allocate new object[] array instances for each ValueSet created for the "y" or "n" values going into the index. This just creates a single object[] for each "y" or "n" value which will save on a ton of allocations when re indexing a bunch of content.

There's an easy way to make further allocation reductions too (prob a separate PR) since there is no reason to create new object[] allocations for: CreatorId, WriterId, Level, TemplateId, Culture. Each of these can be returned from a concurrent dictionary since these values are finite and there won't be too many of each so we can just keep an internal dictionary of these object[] instances.

* fixes mistake

* Updates NoValue and YesValue field declarations - was blowing up

Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
2022-07-19 10:58:21 +10:00
patrickdemooij9
8b97b04d1f Fetch all dictionary items if parentId is null (#12414)
* Fetch all if parentId is null

* PR feedback resolved

* Remove space that sneaked into the commit

* merge with PR changes
2022-07-17 23:52:18 +02:00
Nikolaj Geisle
78af85941f Merge pull request #12697 from umbraco/v10/feature/runtimemode-production-templates
Disable editing templates when using runtime mode Production
2022-07-15 15:06:25 +02:00
Ronald Barendse
db90b16cb1 Skip saving template file when using runtime mode Production 2022-07-14 22:41:20 +02:00
Ronald Barendse
1fc64cd4ce Swap registration and resolving of IRuntimeModeValidator items to collection builder 2022-07-14 16:49:49 +02:00
Ronald Barendse
9cec603d46 Add RuntimeModeValidators() extension method 2022-07-14 16:48:52 +02:00
Ronald Barendse
93225a2c34 Add RuntimeModeValidatorCollection and builder 2022-07-14 16:48:01 +02:00
Nikolaj Geisle
3e464933fc delete unused static leftover from merge 2022-07-13 11:14:51 +02:00
Nikolaj Geisle
b8ef3836a1 Fix formatting 2022-07-13 11:14:31 +02:00
Matthew Care
ce568343ab Issue 12551 search bug
Previous optimisation incorrectly filtered the index fields needed to return published results
2022-07-13 11:13:35 +02:00
Nikolaj Geisle
af7d9db32b Add missing null-check 2022-07-13 10:14:21 +02:00
Johan Runsten
3778f0da7a Bump ImageSharp to latest version (#12651) 2022-07-12 14:45:40 +02:00
Sebastiaan Janssen
e626fca243 Merge branch 'v10/dev' into v10/contrib
# Conflicts:
#	src/Umbraco.Core/Actions/ActionAssignDomain.cs
#	src/Umbraco.Core/Actions/ActionCopy.cs
#	src/Umbraco.Core/Actions/ActionCreateBlueprintFromContent.cs
#	src/Umbraco.Core/Actions/ActionDelete.cs
#	src/Umbraco.Core/Actions/ActionMove.cs
#	src/Umbraco.Core/Actions/ActionNew.cs
#	src/Umbraco.Core/Actions/ActionNotify.cs
#	src/Umbraco.Core/Actions/ActionProtect.cs
#	src/Umbraco.Core/Actions/ActionRestore.cs
#	src/Umbraco.Core/Actions/ActionRights.cs
#	src/Umbraco.Core/Actions/ActionRollback.cs
#	src/Umbraco.Core/Actions/ActionSort.cs
#	src/Umbraco.Core/Actions/ActionToPublish.cs
#	src/Umbraco.Core/Actions/ActionUnpublish.cs
#	src/Umbraco.Core/Actions/ActionUpdate.cs
#	src/Umbraco.Core/Constants-Telemetry.cs
#	src/Umbraco.Core/DependencyInjection/ServiceCollectionExtensions.cs
#	src/Umbraco.Core/DependencyInjection/UmbracoBuilder.CollectionBuilders.cs
#	src/Umbraco.Core/DependencyInjection/UmbracoBuilder.Collections.cs
#	src/Umbraco.Core/Models/Trees/ActionMenuItem.cs
#	src/Umbraco.Core/Models/Trees/CreateChildEntity.cs
#	src/Umbraco.Core/Models/Trees/ExportMember.cs
#	src/Umbraco.Core/Models/Trees/MenuItem.cs
#	src/Umbraco.Core/Models/Trees/RefreshNode.cs
#	src/Umbraco.Core/Persistence/Repositories/IRedirectUrlRepository.cs
#	src/Umbraco.Core/PropertyEditors/NestedContentConfiguration.cs
#	src/Umbraco.Core/Routing/ContentFinderByRedirectUrl.cs
#	src/Umbraco.Core/Services/IFileService.cs
#	src/Umbraco.Core/Services/IRedirectUrlService.cs
#	src/Umbraco.Core/Services/RedirectUrlService.cs
#	src/Umbraco.Core/Trees/MenuItemList.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberRepository.cs
#	src/Umbraco.Infrastructure/Persistence/Repositories/Implement/RedirectUrlRepository.cs
#	src/Umbraco.Infrastructure/Telemetry/Providers/SystemInformationTelemetryProvider.cs
#	src/Umbraco.Web.BackOffice/Controllers/CodeFileController.cs
#	src/Umbraco.Web.BackOffice/Controllers/ContentController.cs
#	src/Umbraco.Web.BackOffice/Controllers/DictionaryController.cs
#	src/Umbraco.Web.BackOffice/Controllers/EntityController.cs
#	src/Umbraco.Web.BackOffice/Controllers/PreviewController.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentBlueprintTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTypeTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/DataTypeTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/DictionaryTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/FileSystemTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MacrosTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MediaTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MediaTypeTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MemberGroupTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MemberTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/MemberTypeAndGroupTreeControllerBase.cs
#	src/Umbraco.Web.BackOffice/Trees/RelationTypeTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/TemplatesTreeController.cs
#	src/Umbraco.Web.UI.Client/src/less/navs.less
#	templates/UmbracoProject/.gitignore
#	tests/Umbraco.Tests.Integration/Umbraco.Core/Telemetry/TelemetryServiceTests.cs
#	tests/Umbraco.Tests.UnitTests/Umbraco.Core/Services/UserDataServiceTests.cs
#	tests/Umbraco.Tests.UnitTests/Umbraco.Core/Telemetry/SystemInformationTelemetryProviderTests.cs
2022-07-11 15:04:46 +02:00
Nikolaj Geisle
38c42c2479 Update media picker to support readonly 2022-07-11 14:02:20 +02:00
Nikolaj Geisle
5bbb546780 Fix up UserGroup to map new property properly 2022-07-11 13:38:30 +02:00
Nikolaj Geisle
bba403cf3e add hasAccessToAllLanguagus to AppendByGroup method 2022-07-11 10:44:25 +02:00
Nikolaj Geisle
5ff31cf966 Add hasAccessToAllLanguages to user groups and map 2022-07-11 09:15:26 +02:00
Zeegaan
7d6d826a4a Catch exception of UserGroup2Language database call 2022-07-06 15:24:41 +02:00
Zeegaan
b2f87f66fd Fix up User repository 2022-07-06 15:08:37 +02:00
nikolajlauridsen
9c5006e5c8 Remove body from obsolete constructor 2022-07-06 14:53:57 +02:00