How did I upgrade tradefurniturecompany.co.uk from Magento 2.2.6 to 2.3.2?

Step 1

I replaced the the root’s composer.json file with the file from Magento 2.3.2.
Then I declared already installed third-party packages in the require section of the file:

"require": {
	"magento/product-community-edition": "2.3.2",
	"ebizmarts/mailchimp-lib": "^3.0",
	"mageplaza/module-core": "^1.3",
	"mageplaza/magento-2-seo-extension": "^2.1",
	"mageplaza/module-sitemap": "^1.0",
	"owebia/magento2-module-advanced-shipping": "^2.6.3",
	"tradefurniturecompany/report": "*",
	"tradefurniturecompany/core": "*"
},

Step 2

rm -rf composer.lock
composer update
bin/magento setup:upgrade
bin/magento cache:enable

Step 3

«Declaration of WeltPixel\OwlCarouselSlider\Block\Product\ImageBuilder::create() should be compatible with Magento\Catalog\Block\Product\ImageBuilder::create» in Magento 2.3.2

Step 4

rm -rf var/di var/generation generated/code
bin/magento setup:di:compile
rm -rf pub/static/*
bin/magento setup:static-content:deploy \
	--area adminhtml \
	--theme Magento/backend \
	-f en_US en_GB
bin/magento setup:static-content:deploy \
	--area frontend \
	--theme TradeFurnitureCompany/default \
	-f en_GB
bin/magento cache:clean

Step 5

I have transferred patches of core files to my custom module: github.com/tradefurniturecompany/core

Step 6

The WYSIWYG editor became broken in Magento 2.3.2

Step 7

Realex Payments in Magento 2.3: «Your transaction has been successful but there was a problem connecting back to the merchant’s web site»