* Remove PostMigrations
These should be replaced with Notification usage
* Remove outer scope from Upgrader
* Remove unececary null check
* Add marker base class for migrations
* Enable scopeless migrations
* Remove unnecessary state check
The final state of the migration is no longer necessarily the final state of the plan.
* Extend ExecutedMigrationPlan
* Ensure that MigrationPlanExecutor.Execute always returns a result.
* Always save final state, regardless of errors
* Remove obsolete Execute
* Add Umbraco specific migration notification
* Publish notification after umbraco migration
* Throw the exception that failed a migration after publishing notification
* Handle notification publishing in DatabaseBuilder
* Fix tests
* Remember to complete scope
* Clean up MigrationPlanExecutor
* Run each package migration in a separate scope
* Add PartialMigrationsTests
* Add unhappy path test
* Fix bug shown by test
* Move PartialMigrationsTests into the correct folder
* Comment out refresh cache in data type migration
Need to add this back again as a notification handler or something.
* Start working on a notification test
* Allow migrations to request a cache rebuild
* Set RebuildCache from MigrateDataTypeConfigurations
* Clean MigrationPlanExecutor
* Add comment explaining the need to partial migration success
* Fix tests
* Allow overriding DefinePlan of UmbracoPlan
This is needed to test the DatabaseBuilder
* Fix notification test
* Don't throw exception to be immediately re-caught
* Assert that scopes notification are always published
* Ensure that scopes are created when requested
* Make test classes internal.
It doesn't really matter, but this way it doesn't show up in intellisense
* Add notification handler for clearing cookies
* Add CompatibilitySuppressions
* Rename Execute to ExecutePlan
We have to do this to be able to obsolete :(
* Update CompatibilitySuppressions
* Update src/Umbraco.Infrastructure/Migrations/MigrationPlanExecutor.cs
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Template query builder API
* Create a dedicated template service (copy template operations from file service)
* CRUD API for templates
* Make file service consume the template service (remove duplicated code)
* Use the template service in the old template controller so we can track changes better (note: this is breaking, but it doesn't matter as the controller will be deleted)
* Add scaffolding to the template API
* Make the route differ between query settings and execution
* Get rid of ugly string constants
* Refactor query execution a little to improve code health
* Fix build checks (compat)
* Deduce the master template from the template contents
* Make template service async, move master template parsing into template service
* Fix open API test
* Make sure the unit tests use new template parsing
* Add FIXME for SetMasterTemplate
* added obsolete attributes
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Add PropertyEditorUiAlias to datatype incl. migration for persistence
* Add configuration validation
* Folder CRUD (reusable for other folder trees) + datatype delete + more RESTish response from datatype create and update
* API for datatype references
* Clean up response types, swagger metadata and fix OpenAPI test
* Allow breakage in the build
* Use yield return pattern
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
* Fix incorrect return type from references API
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
* Moved refactor from V12 based branch
* Remove obsolete config property to avoid obsoletion warnings
* Clean up test models
* Make the datatype API a little less confusing by introducing explicit models for create and update
* Remame "Configuration" to "Data" to make FE happy :)
* Safeguard deserialization of empty configs
* Less strict number handling for deserialization
* Prepare for data type config migrations
* Attempt to have contextual config serializers
* Update OpenAPI spec with (temporary) data type controller
* Fix unit tests
* Update compat suppressions (allow breakage for datatype and configuration editor)
* Make the duplicate JsonObjectConverter implementation private
* Dont allow disable user when invited
* Use data instead of selection
* return succesfully disabled users
* Disable disable button when invited
* Add integration tests
* Remove unused usings
* Update src/Umbraco.Web.BackOffice/Controllers/UsersController.cs
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Create DisabledUsersModel
* use data.disabledUsers
* Return OK if no users to be saved
* User disabledUsersModel
Co-authored-by: Zeegaan <nge@umbraco.dk>
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Dont allow disable user when invited
* Use data instead of selection
* return succesfully disabled users
* Disable disable button when invited
* Add integration tests
* Remove unused usings
* Update src/Umbraco.Web.BackOffice/Controllers/UsersController.cs
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Create DisabledUsersModel
* use data.disabledUsers
* Return OK if no users to be saved
* User disabledUsersModel
Co-authored-by: Zeegaan <nge@umbraco.dk>
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Dont allow disable user when invited
* Use data instead of selection
* return succesfully disabled users
* Disable disable button when invited
* Add integration tests
* Remove unused usings
* Update src/Umbraco.Web.BackOffice/Controllers/UsersController.cs
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Create DisabledUsersModel
* use data.disabledUsers
* Return OK if no users to be saved
* User disabledUsersModel
Co-authored-by: Zeegaan <nge@umbraco.dk>
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Adding health check controllers - getAll & getGroupByName
* Adding HealthCheckGroup mapper
* Adding viewModels
* Adding a factory for building a health check group with result view model
* Registering the mapper and factory
* Updating OpenApi.json
* Remove unnecessary checks - we instantiate the target before calling the Map()
* Adding ProducesResponseType for GetAll()
* Fixing usings
* Making checks required for a health check group
* Adding OK() around result to be explicit
* Adding default values to skip and take
* Adding Umbraco.Code comments
* Removing ? from HealthCheckGroupWithResultViewModel return type
* Move the grouping creation to the factory
* Adding Actions[] for each health check + mapping
* Defaulting ValueRequired to false
* Refactoring routes - from health-check to health-check-group
* Move to HealthCheckGroup folder
* Fix OpenApi.json
* Changing class name and making Key of HealthCheckActionViewModel non-nullable
* Fixing namespace
* Migrating ExecuteAction endpoint
* Add execute-action endpoint to OpenApi.json
* Use Task.FromResult() around the action result
* Fixing namespaces and swagger group name
* Fixing naming of the key in the health check action
* Fix tag names in OpenApi.json
* Add status endpoint
* Refactor GetStatus to use a factory for the viewmodel
* Move controllers to correct namespace
* Add response type to GetStatus
* Create query endpoint
* Create GetAll endpoint
* Add by key
* Add delete by key
* Rename enabled controller
* Add SetEnabled endpoint
* Update OpenApi.json
* Replace query endpoint with a optional filter parameter
* Use enum to enabled and disable url tracking
* Update OpenApi.json
* Add bad request response type to GetAll endpoint