All notable changes to this project will be documented in this file.
5.0.2 - 2024-12-02
- Removed converter for "email_imported" column from magento2 template file (#144)
5.0.1 - 2024-07-10
- Fixed invalid column name in the magento2 template (#141)
5.0.0 - 2024-07-01
New features:
- Added command-line options to specify database credentials:
--host
,--port
,--user
,--password
,--database
(#135) - Added command-line option to perform a dry-run:
--dry-run
(#137)
Breaking changes:
- GdprDump now throws an exception if a config file contains an undefined column (#125)
- Removed support of the
filters
parameter. Use thewhere
parameter instead (#128) - Removed undefined column customer_address.vat_id from shopware6 template (#132)
- Stricter config file validation: string parameters don't accept integer values anymore (#129)
4.2.2 - 2024-03-26
- Changed
limit
parameter type fromint
toint|null
(#126) - Removed
orderBy
param from schema.json (#127)
4.2.1 - 2024-03-07
- Use a readonly connection to create the dump (#121)
4.2.0 - 2024-03-05
- Drastically improved dump performance (#117)
- Added
where
parameter and deprecatedfilters
parameter (#116) - Write dump information and dump progress bar to stderr when verbose mode is enabled (#113)
- Better converter condition validation by using a php tokenizer (#114)
WARNING: the filters
parameter is now deprecated.
It will be removed in the next major version.
Use the where
parameter instead to apply table filters.
4.1.1 - 2024-02-20
- Display the table/column names when a data converter throws an exception (#110)
- Resolve Faker formatters before dump creation (#108)
4.1.0 - 2024-02-19
- Added support for SQL expressions as column filter (#97)
- GdprDump now uses composer to determine the application version
4.0.3 - 2024-01-09
- Added shopware6 template (#92)
- Replaced "randomizeText" converter with "anonymizeText" in config templates (#93)
- Updated magento2 template (tables added: "integration", "rating_option_vote", "magento_login_as_customer_log")
4.0.2 - 2023-10-10
- Fix phar file compilation error that appeared after the release of symfony/console v6.2.10
requires_version
param was removed from base templates (except magento2)
4.0.1 - 2023-03-29
- Better error message when a converter is declared without a name (#83)
4.0.0 - 2023-01-10
- Set minimum PHP version to 8.1
- Replace
ifsnop/mysqldump-php
package withdruidfi/mysqldump-php
(#78)
3.1.1 - 2022-12-13
- Disallow phar file compilation when composer dev packages are installed
3.1.0 - 2022-08-22
Improvements:
- Compatibility with Symfony 6 components
- Better phar file compression (json files are now minified)
- Display an error message if the parameter
database
is not defined
Bugfixes:
- Fix doctrine connection not being closed properly
Refactoring:
- Move the compiler binary to a Symfony command
- Rename SqlDumper class to MysqlDumper to avoid confusion
3.0.0 - 2022-07-28
- Set minimum PHP version to 7.4
- Upgrade Doctrine DBAL version from
^2.10
to^3.1
- Remove deprecated features (see migration guidelines)
2.3.3 - 2022-07-28
- Replace anonymization character for customer name in magento2 template (fixes a validation error)
2.3.2 - 2022-02-21
- Fix a regression that appeared in version 2.1.0 and prevented from setting empty strings with the converter "setValue"
2.3.1 - 2022-02-14
- Fix PHP annotations being removed from the phar file
2.3.0 - 2022-01-04
- Add settings to enable/disable table filter propagation
- Performance optimization: use a single query to fetch all foreign keys
2.2.1 - 2021-11-09
- #57: Fix PHP fatal error (memory limit) when tables table depend on each other (cyclic dependency)
- Table dependencies are now properly resolved when a table has two foreign keys that reference the same table
2.2.0 - 2021-03-29
- Add two converters:
replace
(performs a search and replace)regexReplace
(performs a regular expression search and replace)
- Use stderr to display error messages
- Magento 2 template: anonymize table "email_sms_order_queue"
2.1.1 - 2021-01-25
- New parameter
faker.locale
added to the dump configuration file - The following keywords are now forbidden in the
variables
param:revoke
,rename
,lock
,unlock
,optimize
,repair
- Replace double quotes by single quotes in SQL queries
- Refactor Mysqldump extensions
2.1.0 - 2020-11-10
Major changes:
- Add support for PHP 8
- The following converters were renamed (old names are still available, but deprecated):
randomizeDate
->randomDate
randomizeDateTime
->randomDateTime
addPrefix
->prependText
addSuffix
->appendText
- The
orderBy
parameter was renamed toorder_by
. TheorderBy
syntax is still supported, but deprecated. - New options available for the following converters:
- anonymizeText:
delimiters
,replacement
,min_word_length
- anonymizeEmail:
delimiters
,replacement
,min_word_length
- anonymizeNumber:
replacement
,min_number_length
- anonymizeText:
- New converters:
randomText
,randomEmail
,hash
- Reduce phar file size by ~70%
Minor fixes / code refactoring:
- Remove disabled converters instead of replacing them by dummy converters
- Replace deprecated Doctrine functions
- Fix conditions not working properly in functional tests
- Move the converter name > classname resolution to a new class named "ConverterResolver"
- Move the ArrayHelper class to the "Util" namespace
2.0.3 - 2020-10-05
- Allow unsetting values declared in config templates
- Add missing type hint in table filter extension
1.2.3 - 2020-10-05
- Backport of version 2.0.3
2.0.2 - 2020-07-28
- Add booted state in AppKernel
1.2.2 - 2020-07-28
- Backport of version 2.0.2
2.0.1 - 2020-07-27
- Use
getenv
instead of$_SERVER
to fetch env vars - Set default values for environment variables in functional tests
- Remove the option to skip tests that depend on the database
1.2.1 - 2020-07-27
- Backport of version 2.0.1
2.0.0 - 2020-07-16
- Set minimum PHP version to 7.3
1.2.0 - 2020-07-03
- Allow referencing environment variables in the configuration
1.1.1 - 2020-05-13
- Optimize the data converter hook (huge performance gain)
- Add PHPStan static code analysis
- Raise minimum required version of
ifsnop/mysqldump-php
to^2.9
- Replace
@expectedException
annotation by$this->expectException()
method - Add a unit test of the condition builder
- Fix typos in documentation
1.1.0 - 2020-03-09
- Validate the config file before prompting for a password
- Add parameter
skip_conversion_if
(table row is not converted if the condition evaluates to true) - Remove unused parameter
ignore
from schema.json - Move TableDependencyResolver to the Database namespace
- Add Mysqldump extension logic:
- ColumnTransformer class converted to DataConverterExtension
- TableWheresBuilder class converted to TableFilterExtension
- Initial release