Skip to content

Latest commit

 

History

History
506 lines (471 loc) · 61.6 KB

File metadata and controls

506 lines (471 loc) · 61.6 KB

NEXT

  • [BREAKING] #202 - fix!: replace native time reads with an injected clock
    • [BREAKING] Added required constructor parameter Psr\Clock\ClockInterface $clock to \SwagMigrationAssistant\Profile\Shopware\Converter\ShippingMethodConverter
  • [BREAKING] #190 - fix!: update product.sales during migration
    • [BREAKING] Added required constructor parameter \SwagMigrationAssistant\Migration\Service\ProductSalesUpdater to \SwagMigrationAssistant\Migration\Writer\OrderWriter

18.0.0

  • [BREAKING] #178 - fix!: unsupported sales channel migration
    • [BREAKING] Added required constructor parameter:
      • SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface
      • SwagMigrationAssistant\Migration\Logging\LoggingServiceInterface
      • SwagMigrationAssistant\Migration\Mapping\Lookup\SalesChannelTypeLookup
      • SwagMigrationAssistant\Migration\Mapping\Lookup\SalesChannelLookup to service SwagMigrationAssistant\Profile\Shopware6\Converter\SalesChannelConverter
  • Added new lookup services SwagMigrationAssistant\Migration\Mapping\Lookup\SalesChannelLookup and SwagMigrationAssistant\Migration\Mapping\Lookup\SalesChannelTypeLookup
  • Changed Shopware 6 sales channel migration to read all source sales channel types. Sales channels with unsupported target types are skipped and logged with SwagMigrationAssistant\Migration\Logging\Log\ConvertObjectTypeUnsupportedLog
  • Changed Shopware 6 sales channel migration to append the suffix (Migration) to storefront sales channels if the target system already contains a storefront sales channel with the same name
  • Changed Shopware 6 converters for CustomerWishlist, NewsletterRecipient, Order, PageSystemConfig, Product, ProductReview, SalesChannelDomain, SeoUrl, SeoUrlTemplate and SystemConfig to skip records if the referenced sales channel cannot be mapped

17.0.0

  • [BREAKING] - refactor!: centralize configuration into MigrationConfiguration service
    • [BREAKING] Added required constructor parameter SwagMigrationAssistant\Migration\MigrationConfiguration $migrationConfig to SwagMigrationAssistant\Migration\Media\Processor\HttpDownloadServiceBase
    • [BREAKING] Added required constructor parameter SwagMigrationAssistant\Migration\MigrationConfiguration $migrationConfig to SwagMigrationAssistant\Profile\Shopware6\Media\HttpOrderDocumentGenerationService
    • [BREAKING] Removed constant BUFFER_SIZE from SwagMigrationAssistant\Migration\Logging\LoggingService, use migrationLogBufferSize from MigrationConfiguration instead
    • [BREAKING] Removed constant TRACE_ITEM_LIMIT from SwagMigrationAssistant\Migration\Logging\LoggingService, use migrationLogExceptionTraceItemLimit from MigrationConfiguration instead
    • [BREAKING] Removed constant LOG_FETCH_LIMIT from SwagMigrationAssistant\Migration\History\HistoryService, use migrationDefaultFetchSize from MigrationConfiguration instead
    • [BREAKING] Removed constant LOG_TIME_FORMAT from SwagMigrationAssistant\Migration\History\HistoryService
    • [BREAKING] Removed constant BATCH_SIZE from SwagMigrationAssistant\Migration\MessageQueue\Handler\ResetChecksumHandler, use migrationDefaultBatchSize from MigrationConfiguration instead
    • [BREAKING] Removed constant BATCH_SIZE from SwagMigrationAssistant\Migration\MessageQueue\Handler\Processor\CleanUpProcessor, use migrationDefaultBatchSize from MigrationConfiguration instead
    • [BREAKING] Removed constant MEDIA_ERROR_THRESHOLD from SwagMigrationAssistant\Migration\MessageQueue\Handler\Processor\MediaProcessingProcessor, use migrationDefaultExceptionThreshold from MigrationConfiguration instead
    • [BREAKING] Removed constant MESSAGE_SIZE from SwagMigrationAssistant\Migration\MessageQueue\Handler\Processor\MediaProcessingProcessor, use migrationMediaProcessingBatchSize from MigrationConfiguration instead
    • Added SwagMigrationAssistant\Migration\MigrationConfiguration service

16.0.0

  • [BREAKING] #124 - refactor!: refactored log classes naming pattern

    • [BREAKING] Renamed log classes in SwagMigrationAssistant\Migration\Logging\Log\*, SwagMigrationAssistant\Profile\Shopware\Logging\Log\* and SwagMigrationAssistant\Profile\Shopware6\Logging\Log\*:
      • CannotReadEntityCountLog -> ConvertAssociationMissingLog
      • CannotConvertChildEntityLog -> ConvertChildEntityFailedLog
      • UnsupportedObjectTypeLog -> ConvertDocumentTypeUnsupportedLog
      • FieldReassignedRunLog -> ConvertEntityAlreadyExistsLog
      • NotConvertedLog -> ConvertEntityFailedLog
      • UnknownEntityLog -> ConvertEntityUnknownLog
      • EntityAlreadyExistsRunLog -> ConvertFieldReassignedLog
      • MainVariantRelationNotConverted -> ConvertMainVariantRelationFailedLog
      • CannotConvertEntityLog -> FetchDataSetMissingLog
      • EmptyNecessaryFieldRunLog -> FetchEntityCountFailedLog
      • ThemeCompilingErrorRunLog -> FetchProcessorMissingLog
      • CannotGetFileRunLog -> MediaFileMissingLog
      • MimeTypeErrorLog -> MediaTemporaryFileFailedLog
      • ProcessorNotFoundLog -> RunAbortedLog
      • ExceptionRunLog -> RunExceptionLog
      • MessageQueueExceptionLog -> RunMessageQueueExceptionLog
      • WriteExceptionRunLog -> WriteExceptionLog
      • UnsupportedSeoUrlTypeLog -> ConvertSeoUrlTypeUnsupportedLog
      • UnsupportedTranslationTypeLog -> ConvertTranslationTypeUnsupportedLog
      • UnsupportedShippingCalculationTypeLog -> ConvertShippingCalculationTypeUnsupportedLog
      • DeactivatedPackLanguageLog -> ConvertLanguagePackDeactivatedLog
      • UnsupportedShippingPriceLog -> ConvertShippingPriceUnsupportedLog
      • UnsupportedMediaDefaultFolderLog -> ConvertMediaDefaultFolderUnsupportedLog
    • [BREAKING] Removed log classes in SwagMigrationAssistant\Migration\Logging\Log\*, SwagMigrationAssistant\Profile\Shopware\Logging\Log\* and SwagMigrationAssistant\Profile\Shopware6\Logging\Log\*:
      • AssociationRequiredMissingLog
      • DataSetNotFoundLog
      • DocumentTypeNotSupportedLog
      • InvalidUnserializedDataLog
      • RunAbortedAutomaticallyLog
      • TemporaryFileErrorLog
      • InvalidEmailAddressLog
      • UnsupportedMailTemplateTypeLog
      • UnsupportedNumberRangeTypeLog
      • UnsupportedDocumentTypeLog
    • Added new log classes in SwagMigrationAssistant\Migration\Logging\Log\*:
      • ConvertObjectTypeUnsupportedLog
      • ConvertSourceDataIncompleteLog
      • ConvertUnserializedDataInvalidLog
      • MediaMimeTypeUnknownLog
      • WriteThemeCompilingFailedLog
  • [BREAKING] #115 - refactor!: remove "Delete migration data" history action

    • [BREAKING] Removed route /api/_action/migration/clear-data-of-run from SwagMigrationAssistant\Controller\HistoryController
    • [BREAKING] Removed method clearDataOfRun() from SwagMigrationAssistant\Migration\History\HistoryServiceInterface
    • [BREAKING] Removed route /api/_action/migration/is-media-processing from SwagMigrationAssistant\Controller\HistoryController
    • [BREAKING] Removed method isMediaProcessing() from SwagMigrationAssistant\Migration\History\HistoryServiceInterface
  • [BREAKING] #114 - fix: use item-specific tax in order conversion

    • [BREAKING] Removed parameter taxRules from method getLineItems of SwagMigrationAssistant\Profile\Shopware\Converter\OrderConverter
  • [BREAKING] #102 - refactor!: use domain exception

    • [BREAKING] Removed standalone exception classes in SwagMigrationAssistant\Exception\**\*:
      • SwagMigrationAssistant\Exception\AssociationEntityRequiredMissingException
      • SwagMigrationAssistant\Exception\ConverterNotFoundException
      • SwagMigrationAssistant\Exception\DataSetNotFoundException
      • SwagMigrationAssistant\Exception\GatewayReadException
      • SwagMigrationAssistant\Exception\LocaleNotFoundException
      • SwagMigrationAssistant\Exception\MigrationIsAlreadyRunningException
      • SwagMigrationAssistant\Exception\NoConnectionFoundException
      • SwagMigrationAssistant\Exception\NoRunningMigrationException
      • SwagMigrationAssistant\Exception\PremappingIsIncompleteException
      • SwagMigrationAssistant\Exception\WriterNotFoundException
  • [BREAKING] #100 - refactor!: unify public api

    • [BREAKING] Flagged SwagMigrationAssistant\Controller\DataProviderController as @internal and added parent class of Symfony\Bundle\FrameworkBundle\Controller\AbstractController
    • [BREAKING] Flagged SwagMigrationAssistant\Controller\HistoryController as @internal
    • [BREAKING] Flagged SwagMigrationAssistant\Controller\PremappingController as @internal
    • [BREAKING] Flagged SwagMigrationAssistant\Controller\StatusController as @internal
    • [BREAKING] Flagged SwagMigrationAssistant\Core\Migration\**\* migrations as @internal
    • [BREAKING] Flagged SwagMigrationAssistant\DataProvider\Service\EnvironmentService as @internal
    • [BREAKING] Flagged SwagMigrationAssistant\Migration\Connection\Helper\ConnectionNameSanitizer as @internal
    • [BREAKING] Removed error code FAILED_TO_CREATE_MIGRATION_LOG and exception method failedToCreateMigrationLog() of SwagMigrationAssistant\Exception\MigrationException
    • Added event class MigrationPreErrorResolutionEvent to allow extensions to hook into the pre error resolution step
    • Added event class MigrationPostErrorResolutionEvent to allow extensions to hook into the post error resolution step
    • Added class MigrationErrorResolutionContext to pass error resolution related context data
  • #85 - refactor: use xxh hash

    • Changed checksum calculation in SwagMigrationAssistant\Migration\Converter\Converter::generateChecksum() to use Shopware\Core\Framework\Util\Hasher::hash() and its default xxh128 algorithm instead of md5
    • Changed to use Shopware\Core\Framework\Util\Hasher::hash() for every use of hashing in SwagMigrationAssistant\**\*
  • [BREAKING] #82 - refactor!: change swag migration mapping

    • [BREAKING] Renamed table column entity_uuid of swag_migration_mapping to entity_id with SwagMigrationAssistant\Core\Migration\Migration1762346793RenameColumnOfMappingTable
    • [BREAKING] Changed field entityUuid to entityId in SwagMigrationAssistant\Migration\Mapping\SwagMigrationMappingDefinition and SwagMigrationAssistant\Migration\Mapping\SwagMigrationMappingEntity
    • [BREAKING] Renamed every occurrence of entityUuid to entityId in SwagMigrationAssistant\**\*, most relevant for:
      • SwagMigrationAssistant\Migration\Mapping\MappingService
      • SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface
      • SwagMigrationAssistant\Profile\Shopware\Converter\**\*
      • SwagMigrationAssistant\Profile\Shopware6\Converter\**\*
  • [BREAKING] #79 - refactor!: remove validation from converter

    • [BREAKING] Changed method convert() of SwagMigrationAssistant\Migration\Converter\ConverterInterface to have nullable return type of ?ConverterStruct
  • [BREAKING] #77 - feat!: add acl constraints

    • Added acl privilege mapping to src/Resources/app/administration/src/module/swag-migration/acl/index.ts
    • [BREAKING] Added acl constraint for route /migration/get-grouped-logs-of-run from SwagMigrationAssistant\Controller\HistoryController::getGroupedLogsOfRun() requiring privilege swag_migration.viewer
    • [BREAKING] Added acl constraint for route /migration/download-logs-of-run from SwagMigrationAssistant\Controller\HistoryController::downloadLogsOfRun() requiring privilege swag_migration.viewer
    • [BREAKING] Added acl constraint for route /migration/generate-premapping from SwagMigrationAssistant\Controller\PremappingController::generatePremapping() requiring privilege swag_migration.editor
    • [BREAKING] Added acl constraint for route /migration/write-premapping from SwagMigrationAssistant\Controller\PremappingController::writePremapping() requiring privilege swag_migration.editor
    • [BREAKING] Added acl constraint for route /migration/get-profile-information from SwagMigrationAssistant\Controller\StatusController::getProfileInformation() requiring privilege swag_migration.viewer
    • [BREAKING] Added acl constraint for route /migration/get-profiles from SwagMigrationAssistant\Controller\StatusController::getProfiles() requiring privilege swag_migration.viewer
    • [BREAKING] Added acl constraint for route /migration/get-gateways from SwagMigrationAssistant\Controller\StatusController::getGateways() requiring privilege swag_migration.viewer
    • [BREAKING] Added acl constraint for route /migration/data-selection from SwagMigrationAssistant\Controller\StatusController::getDataSelection() requiring privilege swag_migration.editor
    • [BREAKING] Added acl constraint for route /migration/check-connection from SwagMigrationAssistant\Controller\StatusController::getDataSelection() requiring privilege swag_migration.viewer
    • [BREAKING] Added acl constraint for route /migration/start-migration from SwagMigrationAssistant\Controller\StatusController::startMigration() requiring privilege swag_migration.creator
    • [BREAKING] Added acl constraint for route /migration/get-state from SwagMigrationAssistant\Controller\StatusController::getState() requiring privilege swag_migration.viewer
    • [BREAKING] Added acl constraint for route /migration/approve-finished from SwagMigrationAssistant\Controller\StatusController::approveFinishedMigration() requiring privilege swag_migration.editor
    • [BREAKING] Added acl constraint for route /migration/abort-migration from SwagMigrationAssistant\Controller\StatusController::abortMigration() requiring privilege swag_migration.editor
    • [BREAKING] Added acl constraint for route /migration/reset-checksums from SwagMigrationAssistant\Controller\StatusController::resetChecksums() requiring privilege swag_migration.deleter
    • [BREAKING] Added acl constraint for route /migration/cleanup-migration-data from SwagMigrationAssistant\Controller\StatusController::cleanupMigrationData() requiring privilege swag_migration.deleter
    • [BREAKING] Added acl constraint for route /migration/is-truncating-migration-data from SwagMigrationAssistant\Controller\StatusController::isTruncatingMigrationData() requiring privilege swag_migration.viewer
    • [BREAKING] Added acl constraint for route /migration/is-resetting-checksums from SwagMigrationAssistant\Controller\StatusController::isResettingChecksums() requiring privilege swag_migration.viewer
  • #76 - feat: add any json field

    • Added DAL Field class SwagMigrationAssistant\Core\Field\AnyJsonField to handle JSON data with any structure
    • Added DAL Field Serializer class SwagMigrationAssistant\Core\Field\AnyJsonFieldSerializer to encode and decode AnyJsonField data
  • [BREAKING] #74 - feat!: split message queue process

    • [BREAKING] Changed method getProcessor() of SwagMigrationAssistant\Migration\MessageQueue\Handler\MigrationProcessorRegistry to return null if no processor is needed for the given migration step
    • Added route /migration/resume-after-fixes to SwagMigrationAssistant\Controller\StatusController::resumeAfterFixes() to resume migration after user applied fixes in error resolution step
    • Added migration step error-resolution to SwagMigrationAssistant\Migration\Run\MigrationStep
    • Added method needsProcessor() to SwagMigrationAssistant\Migration\Run\MigrationStep to indicate if a migration step needs a message queue processor
    • Added required method resumeAfterFixes() to SwagMigrationAssistant\Migration\Run\RunServiceInterface and implementation SwagMigrationAssistant\Migration\Run\RunService to resume migration after user applied fixes in error resolution step
    • Changed order of migration steps in src/Resources/app/administration/src/module/swag-migration/page/swag-migration-process-screen/index.ts
  • #64 - fix: adjust log file generation

    • Changed log time format from d.m.Y h:i:s e to Y-m-d H:i:s T in SwagMigrationAssistant\Migration\History\HistoryService
    • Adjusted log file generation in SwagMigrationAssistant\Migration\History\HistoryService to include new required & optional fields of migration logs and removed truncated fields
  • [BREAKING] #63 - feat!: apply fixes prototype

    • Added class SwagMigrationAssistant\Migration\ErrorResolution\MigrationFix to represent a migration fix
    • Added class SwagMigrationAssistant\Migration\ErrorResolution\MigrationErrorResolutionService to manage migration fixes
    • [BREAKING] Added argument $errorResolutionService to constructor of SwagMigrationAssistant\Migration\Service\MigrationDataWriter
    • [BREAKING] Changed method writeData(...) of SwagMigrationAssistant\Migration\Service\MigrationDataWriter to apply migration fixes before data writing calling SwagMigrationAssistant\Migration\ErrorResolution::applyFixes(...)
  • [BREAKING] #60 - chore!: drop migration cli commands

    • [BREAKING] Removed command migration:abort from SwagMigrationAssistant\Command\AbortMigrationCommand in favor of message queue based execution
    • [BREAKING] Removed command migration:get-progress from SwagMigrationAssistant\Command\GetMigrationProgressCommand in favor of message queue based execution
    • [BREAKING] Removed command migration:start from SwagMigrationAssistant\Command\StartMigrationCommand in favor of message queue based execution
  • #58 - refactor: use meteor tokens

    • Replaced hardcoded colors, spacing, font-sizes, etc. and polished styling in administration components with meteor tokens for unified styling
    • Removed unused component swag-migration-expand-div
  • [BREAKING] #57 - feat!: checksum and reset via mq

    • Added new message SwagMigrationAssistant\Migration\MessageQueue\Message\ResetChecksumMessage to trigger checksum reset via message queue
    • [BREAKING] Renamed message SwagMigrationAssistant\Migration\MessageQueue\Message\CleanupMigrationMessage to TruncateMigrationMessage for consistency
    • Changed StatusController::resetChecksums() it now dispatches ResetChecksumMessage to message bus instead of executing directly
    • Changed StatusController::cleanupMigrationData() it now dispatches TruncateMigrationMessage to message bus instead of executing directly
    • Added StatusController::isResettingChecksums() and route /migration/is-resetting-checksums to check if checksum reset is in progress
    • Added column is_resetting_checksums to swag_migration_general_setting to store checksum reset state with SwagMigrationAssistant\Core\Migration\Migration1759000000AddIsResettingChecksumsToSetting
    • Removed $runService argument from constructor of SwagMigrationAssistant\Migration\MessageQueue\Handler\Processor\AbortingProcessor
    • Changed name of $dbalConnection constructor argument of SwagMigrationAssistant\Migration\MessageQueue\Handler\Processor\CleanUpProcessor to $connection for consistency
    • Added new message queue Handler class SwagMigrationAssistant\Migration\MessageQueue\Handler\ResetChecksumHandler to handle checksum reset message ResetChecksumMessage
    • [BREAKING] Renamed SwagMigrationAssistant\Migration\MessageQueue\Handler\CleanupMigrationHandler to TruncateMigrationHandler for consistency
    • Added polling logic to src/Resources/app/administration/src/module/swag-migration/component/card/swag-migration-shop-information/swag-migration-shop-information.html.twig to check if checksum reset or migration truncate is in progress
    • [BREAKING] Removed argument $migrationDataDefinition from constructor of SwagMigrationAssistant\Migration\Run\RunService as it is no longer needed
    • [BREAKING] Renamed method cleanupMappingChecksums() of SwagMigrationAssistant\Migration\Run\RunService to startCleanupMappingChecksums() to indicate that it starts the process via message queue
    • [BREAKING] Renamed method cleanupMigrationData() of SwagMigrationAssistant\Migration\Run\RunService to startTruncateMigrationData() to indicate that it starts the process via message queue
    • [BREAKING] Renamed method and route StatusController::isResettingChecksums() to isTruncatingMigrationData() and /migration/is-truncating-migration-data to check if migration data truncation is in progress
    • [BREAKING] Renamed method cleanupMappingChecksums() to startCleanupMappingChecksums() in SwagMigrationAssistant\Migration\Run\RunServiceInterface and implementation SwagMigrationAssistant\Migration\Run\RunService
    • [BREAKING] Renamed method cleanupMigrationData() to startTruncateMigrationData() in SwagMigrationAssistant\Migration\Run\RunServiceInterface and implementation SwagMigrationAssistant\Migration\Run\RunService
  • #56 - feat: add migration fixes table

    • Added new entity SwagMigrationFixEntity, definition SwagMigrationFixDefinition and collection SwagMigrationFixCollection to store available migration fixes
    • Added new table swag_migration_fix with SwagMigrationAssistant\Core\Migration\Migration1757598733AddMigrationFixesTable
  • [BREAKING] #53 - feat!: add error resolution ui

    • [BREAKING] Added argument $logGroupingService to constructor of SwagMigrationAssistant\Controller\HistoryController
    • [BREAKING] Changed method signature of SwagMigrationAssistant\Migration\Gateway\GatewayRegistry::getGateways() and GatewayRegistryInterface to require MigrationContextInterface as parameter
    • [BREAKING] Changed $run property and method getRun() return type of SwagMigrationAssistant\Migration\Logging\SwagMigrationLoggingEntity to be nullable
    • Added new service SwagMigrationAssistant\Migration\History\LogGroupingService to group migration logs by entity and source id for error resolution step
    • Added route /migration/get-log-groups to SwagMigrationAssistant\Controller\HistoryController::getLogGroups() to fetch grouped migration logs for error resolution step
    • Added route /migration/get-all-log-ids to SwagMigrationAssistant\Controller\HistoryController::getAllLogIds() to fetch all log ids of a migration run for error resolution step
    • Added new administration service src/module/swag-migration/service/swag-migration-error-resolution.service.ts
    • Added new administration components to src/module/swag-migration/component/swag-migration-error-resolution/**/*:
      • swag-migration-error-resolution-step
      • swag-migration-error-resolution-modal
      • swag-migration-error-resolution-details-modal
      • swag-migration-error-resolution-log-filter
      • swag-migration-error-resolution-field
      • swag-migration-error-resolution-field-relation
      • swag-migration-error-resolution-field-scalar
      • swag-migration-error-resolution-field-unhandled
  • [BREAKING] #51 - feat!: add migration validation of converted data

    • [BREAKING] Added validation check of converted data to convertData(...) method in SwagMigrationAssistant\Migration\Service\MigrationDataConverter
    • Added new service SwagMigrationAssistant\Migration\Validation\MigrationEntityValidationService to validate converted data against Shopware's data definitions
    • Added new events SwagMigrationAssistant\Migration\Validation\Event\MigrationPreValidationEvent and SwagMigrationAssistant\Migration\Validation\Event\MigrationPostValidationEvent to allow extensions to hook into the validation process
    • Added new log classes ValidationInvalidFieldValueLog, ValidationInvalidForeignKeyLog, ValidationMissingRequiredFieldLog and ValidationUnexpectedFieldLog to log validation errors
    • Added new context class SwagMigrationAssistant\Migration\Validation\MigrationValidationContext to pass validation related data
    • Added new result class SwagMigrationAssistant\Migration\Validation\MigrationValidationResult to collect validation results
    • Added new service SwagMigrationAssistant\Migration\Validation\MigrationEntityValidationService to validate converted data against Shopware's data definitions in three steps:
      • Entity structure: Check for unexpected fields
      • Field Validation: Check for missing required fields and invalid field values
      • Association Validation: Check for invalid foreign keys
  • #49 - feat: fill logs with meaningful data

    • Added more meaningful data to log entries created in SwagMigrationAssistant\Profile\Shopware\Logging\* classes
    • Added MigrationLogBuilder usage across SwagMigrationAssistant to create logs in a consistent way
  • #42 - feat: refactor connection credentials page

    • Removed component swag-migration-wizard-page-profile-information as its step profileInformation in the connection wizard was removed
  • [BREAKING] #43 refactor!: migration connection usage

    • [BREAKING] Changed signature of method supports() in SwagMigrationAssistant\Migration\Gateway\GatewayInterface to require ProfileInterface as parameter instead of MigrationContextInterface
    • [BREAKING] Changed signature of method getGateways() in SwagMigrationAssistant\Migration\Gateway\GatewayRegistryInterface to require ProfileInterface as parameter instead of MigrationContextInterface
    • [BREAKING] Changed signature of method getGateways() in SwagMigrationAssistant\Migration\Gateway\GatewayRegistry to require ProfileInterface as parameter instead of MigrationContextInterface
    • [BREAKING] Changed signature of constructor method of SwagMigrationAssistant\Migration\MigrationContext to require SwagMigrationConnectionEntity and additional optional parameter of ProfileInterface with default value null
    • Added methods setProfile(), getGateway(), setGateway() and setConnection() to SwagMigrationAssistant\Migration\MigrationContextInterface
    • Added methods setProfile(), getGateway(), setGateway() and setConnection() to SwagMigrationAssistant\Migration\MigrationContext
    • Added null checks to methods getProfile() and getGateway() in SwagMigrationAssistant\Migration\MigrationContext to ensure that a profile and gateway is set before usage
  • [BREAKING] #40 - refactor!: add migration logging optional fields

    • [BREAKING] Replaced SwagMigrationAssistant\Migration\Logging\Log\BaseRunLogEntity with SwagMigrationAssistant\Migration\Logging\Log\Builder\AbstractMigrationLogEntry
    • [BREAKING] Replaced SwagMigrationAssistant\Migration\Logging\Log\LogEntryInterface with SwagMigrationAssistant\Migration\Logging\Log\Builder\MigrationLogEntry
    • [BREAKING] Updated all log implementations in SwagMigrationAssistant\Migration\Logging\Log\* and SwagMigrationAssistant\Profile\**\Logging\*:
      • extend SwagMigrationAssistant\Migration\Logging\Log\Builder\AbstractMigrationLogEntry instead of SwagMigrationAssistant\Migration\Logging\Log\BaseRunLogEntity
      • implement SwagMigrationAssistant\Migration\Logging\Log\Builder\MigrationLogEntry instead of SwagMigrationAssistant\Migration\Logging\Log\LogEntryInterface
      • mark class readonly
    • [BREAKING] Renamed log classes to include Log suffix
      • SwagMigrationAssistant\Migration\Logging\LogCannotConvertChildEntity,
      • SwagMigrationAssistant\Migration\Logging\LogCannotConvertEntity,
      • SwagMigrationAssistant\Migration\Logging\LogDocumentTypeNotSupported,
      • SwagMigrationAssistant\Migration\Logging\LogInvalidUnserializedData,
      • SwagMigrationAssistant\Migration\Logging\LogRunAbortedAutomatically
      • SwagMigrationAssistant\Migration\Logging\LogUnsupportedObjectType
    • [BREAKING] Change method addLogEntry() of SwagMigrationAssistant\Migration\Logging\LoggingServiceInterface and implementation LoggingService to require MigrationLogEntry as parameter instead of LogEntryInterface
    • Created SwagMigrationAssistant\Migration\Logging\Log\Builder\MigrationLogBuilder to build log entries of type MigrationLogEntry
    • Added columns to swag_migration_logging with SwagMigrationAssistant\Core\Migration\Migration1754897550AddRequiredFieldsToMigrationLogs:
      • entity_name
      • entity_id
      • field_name
      • field_source_path
      • source_data
      • converted_data
      • exception_message
      • exception_trace
    • Added fields to swag_migration_logging to log definition SwagMigrationAssistant\Migration\Logging\SwagMigrationLoggingDefinition:
      • entity_name
      • field_name
      • field_source_path
      • source_data
      • converted_data
      • used_mapping
      • exception_message
      • exception_trace
    • Added properties and methods to log entity SwagMigrationAssistant\Migration\Logging\SwagMigrationLoggingEntity:
      • entityName and getEntityName()
      • fieldName and getFieldName()
      • fieldSourcePath and getFieldSourcePath()
      • sourceData and getSourceData()
      • convertedData and getConvertedData()
      • usedMapping and getUsedMapping()
      • exceptionMessage and getExceptionMessage()
      • exceptionTrace and getExceptionTrace()
  • [BREAKING] #39 - refactor!: convert to ts

    • [BREAKING] Changed all javascript files in src/Resources/app/administration/**/* to typescript files
    • [BREAKING] Moved src/core/data/migration.store.js into owning module src/module/swag-migration/store/migration.store.ts
    • Introduced Shopware.Component.wrapComponentConfig(...) to wrap component configurations for all components
    • Introduced usage of meteor tokens for unified styling
    • Removed dynamic profile component loading from src/module/swag-migration/profile/index.js in favor of static imports
    • Added src/type/types.d.ts to define shared types across the administration modules
    • Removed old configurations from src/app/administration/**
    • Added prettier configuration to .prettierrc.json for consistent code formatting
  • [BREAKING] #38 - feat!: add migration logging required fields

    • [BREAKING] Truncated database entries of swag_migration_logging with SwagMigrationAssistant\Core\Migration\Migration1754896654TruncateMigrationLogs
    • [BREAKING] Deleted columns title, description, parameters, title_snippet, description_snippet, entity and source_id from swag_migration_logging with SwagMigrationAssistant\Core\Migration\Migration1754897550AddRequiredFieldsToMigrationLogs
    • [BREAKING] Removed fields title, description, parameters, title_snippet, description_snippet, entity and source_id from log definition SwagMigrationAssistant\Migration\Logging\SwagMigrationLoggingDefinition
    • [BREAKING] Removed properties title, description, parameters, titleSnippet, descriptionSnippet, entity and sourceId from log entity SwagMigrationAssistant\Migration\Logging\SwagMigrationLoggingEntity
    • [BREAKING] Removed aggregations of titleSnippet, entity and level in SwagMigrationAssistant\Migration\History\HistoryService
    • [BREAKING] Updated all log implementations in SwagMigrationAssistant\Migration\Logging\Log\* and SwagMigrationAssistant\Profile\**\Logging\*:
      • deleted methods getTitle(), getTitleSnippet(), getDescription(), getDescriptionSnippet(), getParameters(), getSourceId()
      • add method isUserFixable()
    • Added columns profile_name, gateway_name and user_fixable to swag_migration_logging with SwagMigrationAssistant\Core\Migration\Migration1754897550AddRequiredFieldsToMigrationLogs
    • Added fields profile_name, gateway_name and user_fixable to log definition SwagMigrationAssistant\Migration\Logging\SwagMigrationLoggingDefinition
    • Added properties profileName, gatewayName and userFixable to log entity SwagMigrationAssistant\Migration\Logging\SwagMigrationLoggingEntity

15.0.4

  • Media processing has been simplified. It's no longer done in parallel messages. The migration UI reflects the media migration progress more accurately. When the step is marked as complete, all media are migrated. No need to wait for additional messages to finish.

14.0.0

  • [BREAKING] MIG-1053 - Removed ability to set the verify flag for the guzzle API client. This is now always true by default.
  • [BREAKING] MIG-1053 - Refactored both Shopware 5 and Shopware 6 EnvironmentReader classes to provide more information about exceptions.
  • MIG-894 - Optimizes the mapping performance for the migration which results in a significantly faster converting step.
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\CountryLookup to replace the removed method getCountryUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\CountryStateLookup to replace the removed method getCountryStateUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\CurrencyLookup to replace the removed method getCurrencyUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\DefaultCmsPageLookup to replace the removed method getDefaultCmsPageUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\DeliveryTimeLookup to replace the removed method getDeliveryTime
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\DocumentTypeLookup to replace the removed method getDocumentTypeUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\LanguageLookup to replace the removed method getLanguageUuid and getDefaultLanguage
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\LocaleLookup to replace the removed method getLocaleUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\LowestRootCategoryLookup to replace the removed method getLowestRootCategoryUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\MediaDefaultFolderLookup to replace the removed method getDefaultFolderIdByEntity
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\MediaThumbnailSizeLookup to replace the removed method getThumbnailSizeUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\NumberRangeLookup to replace the removed method getNumberRangeUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\TaxLookup to replace the removed method getTaxUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\SeoUrlTemplateLookup to replace the removed method getSeoUrlTemplateUuid
    • [BREAKING] Added new constructor parameter LowestRootCategoryLookup $lowestRootCategoryLookup, DefaultCmsPageLookup $defaultCmsPageLookup, LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\CategoryConverter
    • [BREAKING] Added new constructor parameter CurrencyLookup $currencyLookup, LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\CurrencyConverter
    • [BREAKING] Added new constructor parameter CountryLookup $countryLookup, LanguageLookup $languageLookup, CountryStateLookup $countryStateLookup to SwagMigrationAssistant\Profile\Shopware\Converter\CustomerConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\CustomerGroupConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup, LocaleLookup $localeLookup to SwagMigrationAssistant\Profile\Shopware\Converter\LanguageConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\MediaConverter
    • [BREAKING] Added new constructor parameter MediaDefaultFolderLookup $mediaFolderLookup, MediaThumbnailSizeLookup $mediaThumbnailSizeLookup to SwagMigrationAssistant\Profile\Shopware\Converter\MediaFolderConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\NewsletterRecipientConverter
    • [BREAKING] Added new constructor parameter NumberRangeLookup $numberRangeLookup, LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\NumberRangeConverter
    • [BREAKING] Added new constructor parameter CountryLookup $countryLookup, CurrencyLookup $currencyLookup, LanguageLookup $languageLookup, CountryStateLookup $countryStateLookup to SwagMigrationAssistant\Profile\Shopware\Converter\OrderConverter
    • [BREAKING] Added new constructor parameter MediaDefaultFolderLookup $mediaFolderLookup, DocumentTypeLookup $documentTypeLookup to SwagMigrationAssistant\Profile\Shopware\Converter\OrderDocumentConverter
    • [BREAKING] Added new constructor parameter TaxLookup $taxLookup, MediaDefaultFolderLookup $mediaFolderLookup, LanguageLookup $languageLookup, DeliveryTimeLookup $deliveryTimeLookup to SwagMigrationAssistant\Profile\Shopware\Converter\ProductConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\ProductReviewConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\PropertyGroupOptionConverter
    • [BREAKING] Added new constructor parameter CurrencyLookup $currencyLookup, LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\SalesChannelConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\SeoUrlConverter
    • [BREAKING] Added new constructor parameter CountryLookup $countryLookup, LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\ShippingMethodConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup to SwagMigrationAssistant\Profile\Shopware\Converter\TranslationConverter
    • [BREAKING] Added new constructor parameter CountryLookup $countryLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\CountryConverter
    • [BREAKING] Added new constructor parameter CountryStateLookup $countryStateLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\CountryStateConverter
    • [BREAKING] Added new constructor parameter CurrencyLookup $currencyLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\CurrencyConverter
    • [BREAKING] Added new constructor parameter DeliveryTimeLookup $deliveryTimeLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\DeliveryTimeConverter
    • [BREAKING] Added new constructor parameter DocumentTypeLookup $documentTypeLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\DocumentBaseConfigConverter
    • [BREAKING] Added new constructor parameter DocumentTypeLookup $documentTypeLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\DocumentConverter
    • [BREAKING] Added new constructor parameter LanguageLookup $languageLookup, LocaleLookup $localeLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\LanguageConverter
    • [BREAKING] Added new constructor parameter MediaDefaultFolderLookup $mediaFolderLookup, MediaThumbnailSizeLookup $mediaThumbnailSizeLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\MediaFolderConverter
    • [BREAKING] Added new constructor parameter NumberRangeLookup $numberRangeLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\NumberRangeConverter
    • [BREAKING] Added new constructor parameter SeoUrlTemplateLookup $seoUrlTemplateLookup to \SwagMigrationAssistant\Profile\Shopware6\Converter\SeoUrlTemplateConverter
    • [BREAKING] Removed method getDefaultCmsPageUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\DefaultCmsPageLookup::get() instead.
    • [BREAKING] Removed method getLanguageUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\LanguageLookup::get() instead.
    • [BREAKING] Removed method getLocaleUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\LocaleLookup::get() instead.
    • [BREAKING] Removed method getDefaultLanguage from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\LanguageLookup::getDefaultLanguageEntity() instead.
    • [BREAKING] Removed method getDeliveryTime from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\DeliveryTimeLookup::get() instead.
    • [BREAKING] Removed method getCountryUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\CountryLookup::get() instead.
    • [BREAKING] Removed method getCountryStateUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\CountryStateLookup::get() instead.
    • [BREAKING] Removed method getCurrencyUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\CurrencyLookup::get() instead.
    • [BREAKING] Removed method getCurrencyUuidWithoutMapping from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\CurrencyLookup::get() instead.
    • [BREAKING] Removed method getTaxUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\TaxLookup::get() instead.
    • [BREAKING] Removed method getNumberRangeUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\NumberRangeLookup::get() instead.
    • [BREAKING] Removed method getDefaultFolderIdByEntity from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\MediaDefaultFolderLookup::get() instead.
    • [BREAKING] Removed method getThumbnailSizeUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\MediaThumbnailSizeLookup::get() instead.
    • [BREAKING] Removed method getDocumentTypeUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\DocumentTypeLookup::get() instead.
    • [BREAKING] Removed method getLowestRootCategoryUuid from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors. Use SwagMigrationAssistant\Migration\Mapping\Lookup\LowestRootCategoryLookup::get() instead.
    • [BREAKING] Change signature of function writeMapping from public function writeMapping(Context $context): void; to public function writeMapping(): void; in SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and all implementors.
    • [BREAKING] Removed constructor parameter EntityRepository $localeRepository, EntityRepository $languageRepository, EntityRepository $countryRepository, EntityRepository $currencyRepository, EntityRepository $taxRepo, EntityRepository $numberRangeRepo, EntityRepository $ruleRepo, EntityRepository $thumbnailSizeRepo, EntityRepository $mediaDefaultRepo, EntityRepository $categoryRepo, EntityRepository $cmsPageRepo, EntityRepository $deliveryTimeRepo, EntityRepository $documentTypeRepo from \SwagMigrationAssistant\Profile\Shopware6\Mapping\Shopware6MappingService
  • MIG-1039 - [BREAKING] Added new method getCountryStateUuid to SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface
  • MIG-1039 - [BREAKING] Added new constructor parameter EntityRepository $countryStateRepo to SwagMigrationAssistant\Migration\Mapping\MappingService
  • MIG-1049 - Made connection property of SwagMigrationMappingEntity optional
  • MIG-1071 - Moved functions which are only used in the magento migration plugin to the magento plugin
    • [BREAKING] Removed method createListItemMapping from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and move it to \Swag\MigrationMagento\Migration\Mapping\MagentoMappingServiceInterface.
    • [BREAKING] Removed method getUuidList from SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and move it to \Swag\MigrationMagento\Migration\Mapping\MagentoMappingServiceInterface.
  • MIG-1072 - Move to the new Lookup service structure
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\CmsPageLookup to replace the removed method getCmsPageUuidByNames and mapLockedCmsPageUuidByNameAndType
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\GlobalDocumentBaseConfigLookup to replace the removed method getGlobalDocumentBaseConfigUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\MailTemplateTypeLookup to replace the removed method getMailTemplateTypeUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\NumberRangeTypeLookup to replace the removed method getNumberRangeTypeUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\ProductSortingLookup to replace the removed method getProductSortingUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\SalutationLookup to replace the removed method getSalutationUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\StateMachineStateLookup to replace the removed method getStateMachineStateUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\SystemConfigLookup to replace the removed method getSystemConfigUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\SystemDefaultMailTemplateLookup to replace the removed method getSystemDefaultMailTemplateUuid
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\TaxRuleLookup to replace the removed method getTaxRuleUuidByCriteria
    • Added new class SwagMigrationAssistant\Migration\Mapping\Lookup\TaxRuleTypeLookup to replace the removed method getTaxRuleTypeUuidByCriteria
    • [BREAKING] Added new constructor parameter CmsPageLookup $cmsPageLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\CmsPageConverter
    • [BREAKING] Added new constructor parameter CountryLookup $countryLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\CountryConverter
    • [BREAKING] Added new constructor parameter CountryStateLookup $countryStateLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\CountryStateConverter
    • [BREAKING] Added new constructor parameter CurrencyLookup $currencyLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\CurrencyConverter
    • [BREAKING] Added new constructor parameter DeliveryTimeLookup $deliveryTimeLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\DeliveryTimeConverter
    • [BREAKING] Added new constructor parameter DocumentTypeLookup $documentTypeLookup, GlobalDocumentBaseConfigLookup $globalDocumentBaseConfigLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\DocumentBaseConfigConverter
    • [BREAKING] Added new constructor parameter DocumentTypeLookup $documentTypeLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\DocumentConverter
    • [BREAKING] Added new constructor parameter MailTemplateTypeLookup $mailTemplateTypeLookup, SystemDefaultMailTemplateLookup $systemDefaultMailTemplateLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\MailTemplateConverter
    • [BREAKING] Added new constructor parameter NumberRangeTypeLookup $numberRangeTypeLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\NumberRangeConverter
    • [BREAKING] Added new constructor parameter StateMachineStateLookup $stateMachineStateLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\OrderConverter
    • [BREAKING] Added new constructor parameter SystemConfigLookup $systemConfigLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\PageSystemConfigConverter
    • [BREAKING] Added new constructor parameter ProductSortingLookup $productSortingLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\ProductSortingConverter
    • [BREAKING] Added new constructor parameter SalutationLookup $salutationLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\SalutationConverter
    • [BREAKING] Added new constructor parameter SeoUrlTemplateLookup $seoUrlTemplateLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\SeoUrlTemplateConverter
    • [BREAKING] Added new constructor parameter SystemConfigLookup $systemConfigLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\SystemConfigConverter
    • [BREAKING] Added new constructor parameter TaxLookup $taxLookup to SwagMigrationAssistant\Profile\Shopware6\Converter\TaxConverter
    • [BREAKING] Changed constructor parameter from SwagMigrationAssistant\Profile\Shopware6\Mapping\Shopware6MappingServiceInterface to SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface in
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CategoryAssociationConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CategoryCmsPageAssociationConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CategoryConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CategoryProductStreamAssociationConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CmsPageConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CountryConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CountryStateConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CrossSellingConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CurrencyConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CustomerConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CustomerGroupConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CustomerWishlistConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\CustomFieldSetConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\DeliveryTimeConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\DocumentBaseConfigConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\DocumentConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\DocumentInheritanceConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\LanguageConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\MailTemplateConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\MediaConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\MediaFolderConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\MediaFolderInheritanceConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\NewsletterRecipientConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\NumberRangeConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\OrderConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\PageSystemConfigConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ProductConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ProductFeatureSetConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ProductManufacturerConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ProductReviewConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ProductSortingConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ProductStreamConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ProductStreamFilterInheritanceConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\PromotionConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\PropertyGroupConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\RuleConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\SalesChannelConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\SalesChannelDomainConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\SalutationConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\SeoUrlConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\SeoUrlTemplateConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ShippingMethodConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ShopwareConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\ShopwareMediaConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\SnippetConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\SnippetSetConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\SystemConfigConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\TaxConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\TaxRuleConverter
      • SwagMigrationAssistant\Profile\Shopware6\Converter\UnitConverter
    • [BREAKING] Removed SwagMigrationAssistant\Profile\Shopware6\Mapping\Shopware6MappingServiceInterface and implementors. Use SwagMigrationAssistant\Migration\Mapping\MappingServiceInterface and services in SwagMigrationAssistant\Migration\Mapping\Lookup instead.
  • MIG-1087 - Fixed an issue for the migration of media folders from SW6->SW6, where the default folder id was set wrongly. This includes changes to the way the folder structure is migrated
    • [BREAKING] Removed ReaderInterface from \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\AbstractReader. All Reader classes extending this class now have to implement that interface themselves
    • [BREAKING] Removed $connection property from \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\AbstractReader. It is now private and can be retrieved by calling getConnection
    • [BREAKING] Changed $connectionFactory property in \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\AbstractReader to private
    • [BREAKING] Removed setConnection method from \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\AbstractReader. Use getConnection instead
    • [BREAKING] Changed addTableSelection method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\AbstractReader to include MigrationContextInterface as last parameter
    • [BREAKING] Changed fetchIdentifiers method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\AbstractReader to include MigrationContextInterface as first parameter
    • [BREAKING] Changed getDefaultShopLocale method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\AbstractReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\AttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\CategoryAttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\CustomerAttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\CustomerGroupAttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\ManufacturerAttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\OrderAttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\OrderDocumentAttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\ProductAttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed getAttributeTable method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\ProductPriceAttributeReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed return type of createApiClient method in \SwagMigrationAssistant\Profile\Shopware\Gateway\Connection\ConnectionFactory to never return null. It might throw an MigrationException instead
    • [BREAKING] Changed return type of createDatabaseConnection method in \SwagMigrationAssistant\Profile\Shopware\Gateway\Connection\ConnectionFactory to never return null. It might throw an MigrationException instead
    • [BREAKING] Changed return type of createApiClient method in \SwagMigrationAssistant\Profile\Shopware\Gateway\Connection\ConnectionFactoryInterface to never return null. It might throw an MigrationException instead
    • [BREAKING] Changed return type of createDatabaseConnection method in \SwagMigrationAssistant\Profile\Shopware\Gateway\Connection\ConnectionFactoryInterface to never return null. It might throw an MigrationException instead
    • [BREAKING] Changed \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\EnvironmentReader to extend from AbstractReader
    • [BREAKING] Removed $connection property from \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\EnvironmentReader. it can be retrieved by calling getConnection from the parent AbstractReader
    • [BREAKING] Removed $connectionFactory property from \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\EnvironmentReader. it can be retrieved by calling getConnection from the parent AbstractReader
    • [BREAKING] Changed getDefaultCurrency method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\EnvironmentReader to include MigrationContextInterface as parameter
    • [BREAKING] Changed fetchData method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\ProductPropertyRelationReader to be private instead of public
    • [BREAKING] Changed getEsdConfig method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\ProductReader to be private instead of public
    • [BREAKING] Changed fetchMainCategoryShops method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\ProductReader to be private instead of public
    • [BREAKING] Changed appendAssociatedData method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\ProductReader to be private instead of protected
    • [BREAKING] Changed buildIdentifierMappings method of \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\ProductReader to be private instead of protected
    • [BREAKING] Changed \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\TableReader to extend from AbstractReader
    • [BREAKING] Removed $connectionFactory property from \SwagMigrationAssistant\Profile\Shopware\Gateway\Local\Reader\TableReader. it can be retrieved by calling getConnection from the parent AbstractReader
  • MIG-1091 - Fixed small errors in the service container definition