Commit Graph

55 Commits

Author SHA1 Message Date
Nikolaj Geisle
7d18914ae6 v9: fix cannot map mvc route to client side request (#12088)
* Implement UmbracoRequestOptions and check in UmbracoRequestMiddleware.cs

* Fix breaking change

* Add suggestion from Marc

* Amend names

Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
2022-03-29 08:32:02 +02:00
Bjarke Berg
c799d9e45c https://github.com/umbraco/Umbraco-CMS/issues/11123 initializing the IVariationContextAccessor if the UmbracoRequestMiddleware 2021-09-16 21:59:52 +02:00
Shannon Deminick
de2fb47b78 Implements unattended package migrations for both explicit and implicit migrations (#10418)
* Clean up and changes to backoffice for the nuget only packages

* temp commit of package logic removal

* Lots of package code cleanup and removal

* Removes old package data from the test package xml

* Updates packaging code to take in XDocument instead of a file since we'll not be dealing with files, starts creating expressions for the package migrations scripting.

* fixing tests

* Fixes runtime state and boot failed middleware so that it actually runs. Separates out unattended install/upgrade into notification handlers.

* Gets unattended package migrations working and running

* Gets embedded package.xml resources able to install from package migration.

* Implements automatic package migrations for package that just declare an xml data manifest.

* fix build

* small cleanups

* fix build

* adds some tests

* Fix export test

* Fix newlines in test for linux

* Typo

* removes old todos and updates AutomaticPackgeMigrationPlan to use getter with backing field.

Co-authored-by: Bjarke Berg <mail@bergmania.dk>
2021-06-15 07:05:57 +02:00
Bjarke Berg
4c78702da0 Do not restart after install, instead stop and restart the runtime. Also signin the admin user after install. 2021-05-18 19:19:58 +02:00
Mole
2bf86acf38 V9: Place notifications in the same namespace (#10231)
* Gather all notifications in Umbraco.Cms.Core.Notifications

* Rename notifications to match convention

* Move and rename missed notifications

* Move the three remaining public notification into Umbraco.Cms.Core.Notifications
2021-05-11 14:33:49 +02:00
Shannon
eba659b9ee Gets in-memory runtime minifiy cache working, ensures no files can be accessed at the root, adds config to enable in-memory and configure a cache buster including a timestamp cache buster. 2021-03-17 17:44:52 +11:00
Bjarke Berg
91e877cebe Merge pull request #9849 from kjac/netcore/bug/preview
Preview does display draft versions
2021-03-11 08:41:21 +01:00
Bjarke Berg
d81874aee3 Merge remote-tracking branch 'origin/netcore/dev' into netcore/feature/merge-v8-05032021
# Conflicts:
#	src/Umbraco.Infrastructure/Persistence/SqlSyntax/SqlServerSyntaxProvider.cs
#	src/Umbraco.Infrastructure/Search/ExamineComponent.cs
2021-03-09 09:31:55 +01:00
Shannon
a668e9aa07 Fixup package refs and nuspecs, remove IDisposeOnRequestEnd 2021-03-09 13:12:52 +11:00
Bjarke Berg
72411aa1a1 Add nice error page for boot, like in v8 2021-03-08 10:03:36 +01:00
Shannon
df333ec8cb Updates scopes in execution context to use a Stack so we know which is the top Scope/Context. Fixes disposing things on end request, fixes ensuring orphaned scopes are disposed at end request. 2021-03-05 15:27:45 +11:00
Shannon
ed5116664f kill IBackOfficeSecurityFactory and fix the broken dependency chain 2021-03-04 15:07:54 +11:00
Shannon
089d147917 Fix namespaces 2021-03-04 14:49:19 +11:00
Bjarke Berg
1c50ece986 Use c#9 + namespace fix 2021-03-02 16:20:44 +01:00
Shannon
6148336d04 Adds new event so we know when umbraco routes a value, ensure the IUmbracoWebsiteSecurity is initialized for front-end requests, cleans up some of the routing middleware, adds lots of notes 2021-03-01 12:51:07 +11:00
Mole
159747ab61 Merge remote-tracking branch 'origin/netcore/dev' into netcore/feature/align-infrastructure-namespaces
# Conflicts:
#	src/Umbraco.Infrastructure/Cache/DistributedCacheBinder_Handlers.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.MappingProfiles.cs
#	src/Umbraco.Infrastructure/PropertyEditors/PropertyEditorsComponent.cs
#	src/Umbraco.Infrastructure/Security/BackOfficeClaimsPrincipalFactory.cs
#	src/Umbraco.Infrastructure/Security/IBackOfficeUserManager.cs
#	src/Umbraco.Infrastructure/Security/IUmbracoUserManager.cs
#	src/Umbraco.Infrastructure/Security/SignOutAuditEventArgs.cs
#	src/Umbraco.Infrastructure/Security/UmbracoUserManager.cs
#	src/Umbraco.Infrastructure/Security/UserInviteEventArgs.cs
#	src/Umbraco.Tests.UnitTests/AutoFixture/AutoMoqDataAttribute.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/BackOffice/BackOfficeLookupNormalizerTests.cs
#	src/Umbraco.Web.BackOffice/Controllers/MemberController.cs
#	src/Umbraco.Web/Security/IBackOfficeUserPasswordChecker.cs
#	src/Umbraco.Web/Security/Providers/MembersRoleProvider.cs
2021-02-23 08:51:09 +01:00
Emma Garland
2109bee83b Merge branch 'netcore/dev' into netcore/members-userstore
# Conflicts:
#	src/Umbraco.Core/Models/Membership/IMembershipUser.cs
#	src/Umbraco.Core/Models/Membership/IUser.cs
#	src/Umbraco.Core/Services/IMembershipRoleService.cs
#	src/Umbraco.Infrastructure/Compose/AuditEventsComponent.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.MappingProfiles.cs
#	src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.Services.cs
#	src/Umbraco.Infrastructure/Install/InstallSteps/NewInstallStep.cs
#	src/Umbraco.Infrastructure/Security/BackOfficeIdentityUser.cs
#	src/Umbraco.Infrastructure/Security/BackOfficeUserStore.cs
#	src/Umbraco.Infrastructure/Security/IBackOfficeUserPasswordChecker.cs
#	src/Umbraco.Infrastructure/Security/IUmbracoUserManager.cs
#	src/Umbraco.Infrastructure/Security/IdentityMapDefinition.cs
#	src/Umbraco.Infrastructure/Security/SignOutAuditEventArgs.cs
#	src/Umbraco.Infrastructure/Security/UmbracoUserManager.cs
#	src/Umbraco.Infrastructure/Services/Implement/MemberService.cs
#	src/Umbraco.Tests.Integration/TestServerTest/TestAuthHandler.cs
#	src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/UmbracoBackOfficeServiceCollectionExtensionsTests.cs
#	src/Umbraco.Tests.UnitTests/AutoFixture/AutoMoqDataAttribute.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/BackOffice/BackOfficeClaimsPrincipalFactoryTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/BackOffice/BackOfficeLookupNormalizerTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Infrastructure/Security/NoOpLookupNormalizerTests.cs
#	src/Umbraco.Tests.UnitTests/Umbraco.Web.BackOffice/Controllers/UsersControllerTests.cs
#	src/Umbraco.Web.BackOffice/Controllers/AuthenticationController.cs
#	src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs
#	src/Umbraco.Web.BackOffice/Controllers/CurrentUserController.cs
#	src/Umbraco.Web.BackOffice/Controllers/MemberController.cs
#	src/Umbraco.Web.BackOffice/Controllers/UsersController.cs
#	src/Umbraco.Web.BackOffice/DependencyInjection/ServiceCollectionExtensions.cs
#	src/Umbraco.Web.BackOffice/Filters/CheckIfUserTicketDataIsStaleAttribute.cs
#	src/Umbraco.Web.BackOffice/Mapping/MemberMapDefinition.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficePasswordHasher.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficeSecurityStampValidator.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficeSessionIdValidator.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficeSignInManager.cs
#	src/Umbraco.Web.BackOffice/Security/BackOfficeUserManagerAuditer.cs
#	src/Umbraco.Web.BackOffice/Security/ConfigureBackOfficeIdentityOptions.cs
#	src/Umbraco.Web.BackOffice/Security/ExternalSignInAutoLinkOptions.cs
#	src/Umbraco.Web.BackOffice/Security/IBackOfficeSignInManager.cs
#	src/Umbraco.Web.BackOffice/Security/PasswordChanger.cs
#	src/Umbraco.Web.Common/DependencyInjection/ServiceCollectionExtensions.cs
#	src/Umbraco.Web.Common/Middleware/BootFailedMiddleware.cs
#	src/Umbraco.Web.Common/Security/BackOfficeUserManager.cs
#	src/Umbraco.Web/Security/MembershipHelper.cs
#	src/Umbraco.Web/Security/MembershipProviderBase.cs
#	src/Umbraco.Web/Security/Providers/MembersMembershipProvider.cs
#	src/Umbraco.Web/Security/Providers/MembersRoleProvider.cs
#	src/Umbraco.Web/Security/Providers/UmbracoMembershipProvider.cs
2021-02-22 20:55:12 +00:00
Kenn Jacobsen
6c7316afcd Move preview authorization middleware to fix preview 2021-02-19 11:45:58 +01:00
Mole
bf41c2eeaa Netcore: Align namespaces (#9801)
* Rename Umbraco.Core namespace to Umbraco.Cms.Core

* Move extension methods in core project to Umbraco.Extensions

* Move extension methods in core project to Umbraco.Extensions

* Rename Umbraco.Examine namespace to Umbraco.Cms.Examine

* Move examine extensions to Umbraco.Extensions namespace

* Reflect changed namespaces in Builder and fix unit tests

* Adjust namespace in Umbraco.ModelsBuilder.Embedded

* Adjust namespace in Umbraco.Persistence.SqlCe

* Adjust namespace in Umbraco.PublishedCache.NuCache

* Align namespaces in Umbraco.Web.BackOffice

* Align namespaces in Umbraco.Web.Common

* Ensure that SqlCeSupport is still enabled after changing the namespace

* Align namespaces in Umbraco.Web.Website

* Align namespaces in Umbraco.Web.UI.NetCore

* Align namespaces in Umbraco.Tests.Common

* Align namespaces in Umbraco.Tests.UnitTests

* Align namespaces in Umbraco.Tests.Integration

* Fix errors caused by changed namespaces

* Fix integration tests

* Undo the Umbraco.Examine.Lucene namespace change

This breaks integration tests on linux, since the namespace wont exists there because it's only used on windows.

* Fix merge

* Fix Merge
2021-02-18 11:06:02 +01:00
Mole
07d04dafb8 Align namespaces in Logging to Umbraco.Cms.Core
I'm a bit uncertain about this, they do have a reference to Serilog, but the vast majority of logging already resides in Core, so I opted to move it to Umbraco.Cms.Core
2021-02-12 11:38:50 +01:00
Mole
55aa2edb72 Align namespaces in Umbraco.Web.Common 2021-02-10 11:42:04 +01:00
Mole
737b471647 Adjust namespace in Umbraco.PublishedCache.NuCache 2021-02-10 10:46:52 +01:00
Emma Garland
19fcbf80f4 Merge branch 'netcore/dev' into netcore/members-userstore 2021-02-09 13:22:40 +00:00
Mole
216fb87c79 Rename Umbraco.Core namespace to Umbraco.Cms.Core 2021-02-09 10:22:42 +01:00
Bjarke Berg
fea86bbf7a Moved the application url to HostingEnvironment and set it in the request middleware 2021-02-08 11:00:15 +01:00
Shannon
86fd473018 UmbracoRequestBegin and UmbracoRequestEnd part of the core proj and changed to just have a IUmbracoContext reference. Removes IRequestAccessor events, Fixes the DatabaseServerMessengerNotificationHandler weirdness, Removes UmbracoModule and friends and old routing events and statuses 2021-02-02 18:42:39 +11:00
Bjarke Berg
d224071dda Merge remote-tracking branch 'origin/netcore/netcore' into netcore/members-userstore 2021-01-26 08:25:31 +01:00
Bjarke Berg
6f357a771d Netcore: Replace IUmbracoRequestLifetime with EventAggregator nofitications (#9711)
* AB#9928 - Replace IUmbracoRequestLifetime with event aggregator

* AB#9928 - Fix issue with profiling, by calling it explicitly in the request middleware

* Longer timeout to avoid flaky test

* Longer timeout to avoid flaky test

Co-authored-by: Elitsa Marinovska <elm@umbraco.dk>
2021-01-26 07:58:11 +01:00
Emma Garland
e5d7f53a1e Merge branch 'netcore/netcore' into netcore/members-userstore 2021-01-12 14:28:47 +00:00
Emma Garland
d285f626a0 Pull request peer review changes - renamed password method, removed unneeded non-strongly typed Member GetAllRoles() method, removed duplicate Normalizer test and rename normalizer, removed currently unneeded events on MembersUserManager. Fixed namespaces and ensured tests in correct location. 2021-01-11 14:24:49 +00:00
Shannon
0ce90cf359 Moves UrlExtensions methods to new service and reduce the huge amount of allocated strings during routing 2021-01-08 17:21:35 +11:00
Shannon
c074a4d7d4 IsFrontEndUmbracoRequest as ext method instead, makes IUmbracoContext IDisposable since it has a Dispose method 2020-12-22 13:32:12 +11:00
Shannon
57020b4778 adds notes, removes IPublishedCacheComposer 2020-12-22 12:33:00 +11:00
Shannon
fc16669a91 Moves cache initialization the the request middleware 2020-12-14 16:55:45 +11:00
Shannon
4b85f8eb20 Big refactor or PublishedSnapshotService to split up so that there's a service and repository responsible for the data querying and persistence 2020-12-09 22:43:49 +11:00
Shannon
e3be4009c0 Getting front end routing poc going 2020-12-08 16:33:50 +11:00
Shannon
d1b35deb43 Migrates remaining backofficecontroller but still a bunch of work to do , streamlines Backoffice to BackOffice (but is that what we want?) 2020-10-21 16:51:00 +11:00
Mole
b5aedde616 Do some ILogger cleaning 2020-09-28 08:48:49 +02:00
Mole
c0616d516a Merge remote-tracking branch 'origin/netcore/netcore' into netcore/feature/migrate-logging
# Conflicts:
#	src/Umbraco.Infrastructure/Scheduling/ScheduledPublishing.cs
#	src/Umbraco.Infrastructure/Scheduling/SchedulerComponent.cs
#	src/Umbraco.Tests.Integration/Umbraco.Web.BackOffice/Filters/ContentModelValidatorTests.cs
#	src/Umbraco.Web.BackOffice/Controllers/BackOfficeController.cs
#	src/Umbraco.Web.BackOffice/Controllers/CurrentUserController.cs
#	src/Umbraco.Web.BackOffice/Controllers/MacrosController.cs
#	src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs
#	src/Umbraco.Web.BackOffice/Controllers/RedirectUrlManagementController.cs
#	src/Umbraco.Web.BackOffice/Controllers/UsersController.cs
#	src/Umbraco.Web.BackOffice/Filters/ContentModelValidator.cs
#	src/Umbraco.Web.BackOffice/Filters/ContentSaveModelValidator.cs
#	src/Umbraco.Web.BackOffice/Filters/ContentSaveValidationAttribute.cs
#	src/Umbraco.Web.BackOffice/Filters/MediaItemSaveValidationAttribute.cs
#	src/Umbraco.Web.BackOffice/Filters/MediaSaveModelValidator.cs
#	src/Umbraco.Web.BackOffice/Filters/MemberSaveModelValidator.cs
#	src/Umbraco.Web.BackOffice/Filters/MemberSaveValidationAttribute.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTreeController.cs
#	src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs
#	src/Umbraco.Web.BackOffice/Trees/MediaTreeController.cs
#	src/Umbraco.Web.Common/Install/InstallController.cs
2020-09-22 13:44:22 +02:00
Bjarke Berg
96facc4d35 Netcore: Introduce BackofficeSecurityAccessor (#8871)
* Introduced IWebSecurityAccessor

Signed-off-by: Bjarke Berg <mail@bergmania.dk>

* Fixed tests

Signed-off-by: Bjarke Berg <mail@bergmania.dk>

* Renamed WebSecurity to BackofficeSecurity and all related names

* Fixes typos

Co-authored-by: Elitsa Marinovska <elm@umbraco.dk>
2020-09-22 10:01:00 +02:00
Mole
894abdd183 Remove a bunch of references to the old logger 2020-09-21 09:41:18 +02:00
Nikolaj
488093add3 Remove LogWarning<T> from LoggerExtensions 2020-09-16 10:08:18 +02:00
Nikolaj
dda6fb12a3 Remove LogError<T> from LoggerExtensions 2020-09-16 09:40:49 +02:00
Nikolaj
161061dbbc Remove exception logging and finish LogWarning 2020-09-14 14:10:19 +02:00
Nikolaj
d7e3bce741 Rename Error to align it with MS ILogger 2020-09-14 09:10:53 +02:00
Shannon
670d62a2dc Gets cookie authentication actually working along with session validation 2020-06-02 17:48:08 +10:00
Shannon
b75fba71f5 Cleaning up websecurity and implementing it, migrates security stamp and session id validation for cookie auth 2020-06-02 13:28:30 +10:00
Shannon
3d9603e669 Migrates more logic from the umb module over to netcore 2020-05-14 22:50:27 +10:00
Shannon
88f6d09ef9 Enables the boot failed exception logic 2020-05-14 22:14:00 +10:00
Shannon
bcaede22f1 Cleans up ext methods and where they are located and what they call to ensure dependencies are taken care of, cleans up Startup, moves routing appropriately 2020-05-12 15:18:55 +10:00