1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
|
ancestor: 2.0.0
releases:
3.0.0:
changes:
breaking_changes:
- mysql_replication - remove ``Is_Slave`` and ``Is_Master`` return values (were
replaced with ``Is_Primary`` and ``Is_Replica`` (https://github.com/ansible-collections/community.mysql/issues/145).
- mysql_replication - remove the mode options values containing ``master``/``slave``
and the master_use_gtid option ``slave_pos`` (were replaced with corresponding
``primary``/``replica`` values) (https://github.com/ansible-collections/community.mysql/issues/145).
- mysql_user - remove support for the `REQUIRESSL` special privilege as it has
ben superseded by the `tls_requires` option (https://github.com/ansible-collections/community.mysql/discussions/121).
- mysql_user - validate privileges using database engine directly (https://github.com/ansible-collections/community.mysql/issues/234
https://github.com/ansible-collections/community.mysql/pull/243). Do not validate
privileges in this module anymore.
release_summary: 'This is the major release of the ``community.mysql`` collection.
This changelog contains all breaking changes to the modules in this collection
that have been added after the release of ``community.mysql`` 2.3.2.'
fragments:
- 243-get-rid-of-privs-comparison.yml
- 244-remove-requiressl-privilege.yaml
- 3.0.0.yml
- 300-mysql_replication_remove_master_slave.yml
release_date: '2021-12-01'
3.1.0:
changes:
bugfixes:
- Collection core functions - use vendored version of ``distutils.version``
instead of the deprecated Python standard library ``distutils`` (https://github.com/ansible-collections/community.mysql/pull/269).
minor_changes:
- Added explicit description of the supported versions of databases and connectors.
Changes to the collection are **NOT** tested against database versions older
than `mysql 5.7.31` and `mariadb 10.2.37` or connector versions older than
`pymysql 0.7.10` and `mysqlclient 2.0.1`. (https://github.com/ansible-collections/community.mysql/discussions/141)
- mysql_user - added the ``force_context`` boolean option to set the default
database context for the queries to be the ``mysql`` database. This way replication/binlog
filters can catch the statements (https://github.com/ansible-collections/community.mysql/issues/265).
release_summary: 'This is the minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.0.0.'
fragments:
- 141-supported-database-and-connector-versions.yaml
- 266-default-database-for-mysql-user.yml
- 267-prepare_for_distutils_be_removed.yml
- 3.1.0.yml
release_date: '2022-01-18'
3.1.1:
changes:
bugfixes:
- mysql_role - make the ``set_default_role_all`` parameter actually working
(https://github.com/ansible-collections/community.mysql/pull/282).
release_summary: 'This is the patch release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.1.0.'
fragments:
- 282-mysql_role_fix_set_default_role_all_argument.yml
- 3.1.1.yml
release_date: '2022-02-16'
3.1.2:
changes:
bugfixes:
- Collection core functions - fixes related to the mysqlclient Python connector
(https://github.com/ansible-collections/community.mysql/issues/292).
release_summary: 'This is the patch release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.1.1.'
fragments:
- 0-mysqlclient.yml
- 3.1.2.yml
release_date: '2022-03-14'
3.1.3:
changes:
bugfixes:
- mysql_replication - fails when using the `primary_use_gtid` option with `slave_pos`
or `replica_pos` (https://github.com/ansible-collections/community.mysql/issues/335).
- mysql_role - remove redundant connection closing (https://github.com/ansible-collections/community.mysql/pull/330).
- 'mysql_user - fix the possibility for a race condition that breaks certain
(circular) replication configurations when ``DROP USER`` is executed on multiple
nodes in the replica set. Adding ``IF EXISTS`` avoids the need to use ``sql_log_bin:
no`` making the statement always replication safe (https://github.com/ansible-collections/community.mysql/pull/287).'
release_summary: 'This is the patch release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.1.2.'
fragments:
- 0-mysql_replication_replica_pos.yml
- 3.1.3.yml
- 307-mysql_user_add_if_exists_to_drop.yml
- 329-mysql_role-remove-redudant-connection-closing.yml
release_date: '2022-04-26'
3.2.0:
changes:
bugfixes:
- mysql_user - fix missing dynamic privileges after revoke and grant privileges
to user (https://github.com/ansible-collections/community.mysql/issues/120).
- mysql_user - fix parsing privs when a user has roles assigned (https://github.com/ansible-collections/community.mysql/issues/231).
major_changes:
- The community.mysql collection no longer supports ``Ansible 2.9`` and ``ansible-base
2.10``. While we take no active measures to prevent usage and there are no
plans to introduce incompatible code to the modules, we will stop testing
against ``Ansible 2.9`` and ``ansible-base 2.10``. Both will very soon be
End of Life and if you are still using them, you should consider upgrading
to the ``latest Ansible / ansible-core 2.11 or later`` as soon as possible
(https://github.com/ansible-collections/community.mysql/pull/343).
minor_changes:
- 'mysql_user and mysql_role: Add the argument ``subtract_privs`` (boolean,
default false, mutually exclusive with ``append_privs``). If set, the privileges
given in ``priv`` are revoked and existing privileges are kept (https://github.com/ansible-collections/community.mysql/pull/333).'
release_summary: 'This is the minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.1.3.'
fragments:
- 001-mysql_user_fix_pars_users_with_roles_assigned.yml
- 3.2.0.yml
- 333-mysql_user-mysql_role-add-subtract_privileges-argument.yml
- 338-mysql_user_fix_missing_dynamic_privileges.yml
- drop_support_of_2.9-2.10.yml
release_date: '2022-05-13'
3.2.1:
changes:
bugfixes:
- Include ``PSF-license.txt`` file for ``plugins/module_utils/_version.py``.
release_summary: 'This is the patch release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.2.0.'
fragments:
- 3.2.1.yml
- psf-license.yml
release_date: '2022-05-17'
3.3.0:
changes:
bugfixes:
- mysql_query - fix false change reports when ``IF EXISTS/IF NOT EXISTS`` clause
is used (https://github.com/ansible-collections/community.mysql/issues/268).
- 'mysql_role - don''t add members to a role when creating the role and ``detach_members:
true`` is set (https://github.com/ansible-collections/community.mysql/pull/367).'
- 'mysql_role - in some cases (when "SHOW GRANTS" did not use backticks for
quotes), no unwanted members were detached from the role (and redundant "GRANT"
statements were executed for wanted members). This is fixed by querying the
existing role members from the mysql.role_edges (MySQL) or mysql.roles_mapping
(MariaDB) tables instead of parsing the "SHOW GRANTS" output (https://github.com/ansible-collections/community.mysql/pull/368).
'
- mysql_user - fix logic when ``update_password`` is set to ``on_create`` for
users using ``plugin*`` arguments (https://github.com/ansible-collections/community.mysql/issues/334).
The ``on_create`` sets ``password`` to None for old mysql_native_authentication
but not for authentiation methods which uses the ``plugin*`` arguments. This
PR changes this so ``on_create`` also exchange ``plugin``, ``plugin_hash_string``,
``plugin_auth_string`` to None in the list of arguments to change
minor_changes:
- 'mysql_role - add the argument ``members_must_exist`` (boolean, default true).
The assertion that the users supplied in the ``members`` argument exist is
only executed when the new argument ``members_must_exist`` is ``true``, to
allow opt-out (https://github.com/ansible-collections/community.mysql/pull/369).
'
- 'mysql_user - Add the option ``on_new_username`` to argument ``update_password``
to reuse the password (plugin and authentication_string) when creating a new
user if some user with the same name already exists. If the existing user
with the same name have varying passwords, the password from the arguments
is used like with ``update_password: always`` (https://github.com/ansible-collections/community.mysql/pull/365).
'
- 'mysql_user - Add the result field ``password_changed`` (boolean). It is true,
when the user got a new password. When the user was created with ``update_password:
on_new_username`` and an existing password was reused, ``password_changed``
is false (https://github.com/ansible-collections/community.mysql/pull/365).
'
release_summary: 'This is the minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.2.1.'
fragments:
- 3.3.0.yml
- 322-mysql_query_fix_false_change_report.yml
- 334-mysql_user_fix_logic_on_oncreate.yml
- 365-mysql_user-add-on_new_username-and-password_changed.yml
- 367-mysql_role-fix-deatch-members.yml
- 368-mysql_role-fix-member-detection.yml
- 369_mysql_role-add-members_must_exist.yml
release_date: '2022-06-02'
3.4.0:
changes:
bugfixes:
- Include ``simplified_bsd.txt`` license file for various module utils.
- mysql_db - Using compression masks errors messages from mysql_dump. By default
the fix is inactive to ensure retro-compatibility with system without bash.
To activate the fix, use the module option ``pipefail=true`` (https://github.com/ansible-collections/community.mysql/issues/256).
- mysql_replication - when the ``primary_ssl`` argument is set to ``no``, the
module will turn off SSL (https://github.com/ansible-collections/community.mysql/issues/393).
major_changes:
- mysql_db - the ``pipefail`` argument's default value will be changed to ``true``
in community.mysql 4.0.0. If your target machines do not use ``bash`` as a
default interpreter, set ``pipefail`` to ``false`` explicitly. However, we
strongly recommend setting up ``bash`` as a default and ``pipefail=true``
as it will protect you from getting broken dumps you don't know about (https://github.com/ansible-collections/community.mysql/issues/407).
minor_changes:
- mysql_db - add the ``chdir`` argument to avoid failings when a dump file contains
relative paths (https://github.com/ansible-collections/community.mysql/issues/395).
- mysql_db - add the ``pipefail`` argument to avoid broken dumps when ``state``
is ``dump`` and compression is used (https://github.com/ansible-collections/community.mysql/issues/256).
release_summary: 'This is the minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.3.0.'
fragments:
- 0-mysql_db_add_chdir_argument.yml
- 1-mysql_replication_can_disable_master_ssl.yml
- 2-mysql_db_announce.yml
- 3.4.0.yml
- fix-256-mysql_dump-errors.yml
- simplified-bsd-license.yml
release_date: '2022-08-02'
3.5.0:
changes:
bugfixes:
- mysql_user - grant option was revoked accidentally when modifying users. This
fix revokes grant option only when privs are setup to do that (https://github.com/ansible-collections/community.mysql/issues/77#issuecomment-1209693807).
minor_changes:
- 'mysql_replication - add a new option: ``primary_ssl_verify_server_cert``
(https://github.com//pull/435).'
release_summary: 'This is the minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules in this collection
that have been added after the release of ``community.mysql`` 3.4.0.'
fragments:
- 3.5.0.yml
- 434-do-not-revoke-grant-option-always.yaml
- 435-mysql_replication_verify_server_cert.yml
release_date: '2022-09-05'
3.5.1:
changes:
bugfixes:
- mysql_user, mysql_role - mysql/mariadb recent versions translate 'ALL PRIVILEGES'
to a list of specific privileges. That caused a change every time we modified
user privileges. This fix compares privs before and after user modification
to avoid this infinite change (https://github.com/ansible-collections/community.mysql/issues/77).
release_summary: 'This is the patch release of the ``community.mysql`` collection.
This changelog contains all changes to the modules and plugins in this collection
that have been made after the previous release.'
fragments:
- 3.5.1.yml
- 438-fix-privilege-changing-everytime.yml
release_date: '2022-09-09'
3.6.0:
changes:
bugfixes:
- mysql_user - when revoke privs consists only of ``GRANT``, a 2nd revoke query
is executed with empty privs to revoke that ended in an SQL exception (https://github.com/ansible-collections/community.mysql/pull/503).
- mysql_variables - add uppercase character pattern to regex to allow GLOBAL
variables containing uppercase characters. This recognizes variable names
used in Galera, for example, ``wsrep_OSU_method``, which breaks the normal
pattern of all lowercase characters (https://github.com/ansible-collections/community.mysql/pull/501).
minor_changes:
- mysql_info - add ``connector_name`` and ``connector_version`` to returned
values (https://github.com/ansible-collections/community.mysql/pull/497).
- mysql_role - enable auto_commit to avoid MySQL metadata table lock (https://github.com/ansible-collections/community.mysql/issues/479).
- mysql_user - add plugin_auth_string as optional parameter to use a specific
pam service if pam/auth_pam plugin is used (https://github.com/ansible-collections/community.mysql/pull/445).
- mysql_user - add the ``session_vars`` argument to set session variables at
the beginning of module execution (https://github.com/ansible-collections/community.mysql/issues/478).
- mysql_user - display a more informative invalid privilege exception. Changes
the exception handling of the granting permission logic to show the query
executed , params and the exception message granting privileges fails` (https://github.com/ansible-collections/community.mysql/issues/465).
- mysql_user - enable auto_commit to avoid MySQL metadata table lock (https://github.com/ansible-collections/community.mysql/issues/479).
- setup_mysql - update MySQL tarball URL (https://github.com/ansible-collections/community.mysql/pull/491).
release_summary: 'This is the minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules and plugins in this collection
that have been made after the previous release.'
fragments:
- 0_mysql_user_session_vars.yml
- 3.6.0.yml
- 445_add_service_name_to_plugin_pam_auth_pam_usage.yml
- 465-display_more_informative_invalid_priv_exceptiion.yml
- 479_enable_auto_commit.yml
- 479_enable_auto_commit_part2.yml
- 491_fix_download_url.yaml
- 497_mysql_info_returns_connector_name_and_version.yml
- 503-fix-revoke-grant-only.yml
- mysql_variables_allow_uppercase_identifiers.yml
release_date: '2023-02-08'
3.7.0:
changes:
minor_changes:
- mysql module utils - change deprecated connection parameters ``passwd`` and
``db`` to ``password`` and ``database`` (https://github.com/ansible-collections/community.mysql/pull/177).
- mysql_user - add ``MAX_STATEMENT_TIME`` support for mariadb to the ``resource_limits``
argument (https://github.com/ansible-collections/community.mysql/issues/211).
release_summary: 'This is the minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules and plugins in this collection
that have been made after the previous release.'
fragments:
- 177-change_deprecated_connection_parameters.yml
- 3.7.0.yml
- 523-add-max_statement_time_resource-limit.yml
release_date: '2023-05-05'
3.7.1:
changes:
bugfixes:
- mysql module utils - use the connection arguments ``db`` instead of ``database``
and ``passwd`` instead of ``password`` when running with older mysql drivers
(MySQLdb < 2.1.0 or PyMySQL < 1.0.0) (https://github.com/ansible-collections/community.mysql/pull/551).
release_summary: 'This is a patch release of the community.mysql collection.
This changelog contains all changes to the modules and plugins in this collection
that have been made after the previous release.'
fragments:
- 3.7.1.yml
- 551-fix_connection_arguments_driver_compatability.yaml
release_date: '2023-05-22'
3.7.2:
changes:
bugfixes:
- mysql module utils - use the connection arguments ``db`` instead of ``database``
and ``passwd`` instead of ``password`` when running with MySQLdb < 2.0.0 (https://github.com/ansible-collections/community.mysql/pull/553).
release_summary: 'This is a patch release of the community.mysql collection.
This changelog contains all changes to the modules and plugins in this collection
that have been made after the previous release.'
fragments:
- 3.7.2.yml
- 553_fix_connection_arguemnts_for_old_mysqldb_driver.yaml
release_date: '2023-05-25'
3.8.0:
changes:
major_changes:
- The community.mysql collection no longer supports ``ansible-core 2.12`` and
``ansible-core 2.13``. While we take no active measures to prevent usage and
there are no plans to introduce incompatible code to the modules, we will
stop testing those versions. Both are or will soon be End of Life and if you
are still using them, you should consider upgrading to the ``latest Ansible
/ ansible-core 2.15 or later`` as soon as possible (https://github.com/ansible-collections/community.mysql/pull/574).
- mysql_role - the ``column_case_sensitive`` argument's default value will be
changed to ``true`` in community.mysql 4.0.0. If your playbook expected the
column to be automatically uppercased for your roles privileges, you should
set this to false explicitly (https://github.com/ansible-collections/community.mysql/issues/578).
- mysql_user - the ``column_case_sensitive`` argument's default value will be
changed to ``true`` in community.mysql 4.0.0. If your playbook expected the
column to be automatically uppercased for your users privileges, you should
set this to false explicitly (https://github.com/ansible-collections/community.mysql/issues/577).
minor_changes:
- mysql_info - add filter ``users_info`` (https://github.com/ansible-collections/community.mysql/pull/580).
- mysql_role - add ``column_case_sensitive`` option to prevent field names from
being uppercased (https://github.com/ansible-collections/community.mysql/pull/569).
- mysql_user - add ``column_case_sensitive`` option to prevent field names from
being uppercased (https://github.com/ansible-collections/community.mysql/pull/569).
release_summary: 'This is the minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules and plugins in this
collection that have been made after the previous release.'
fragments:
- 3.8.0.yml
- 569_fix_column_uppercasing.yml
- drop_ansible_core_2_12_and_2_13.yml
- lie_mysql_info_users_info.yml
release_date: '2023-10-25'
3.9.0:
changes:
bugfixes:
- mysql_info - the ``slave_status`` filter was returning an empty list on MariaDB
with multiple replication channels. It now returns all channels by running
``SHOW ALL SLAVES STATUS`` for MariaDB servers (https://github.com/ansible-collections/community.mysql/issues/603).
major_changes:
- Collection version 2.*.* is EOL, no more bugfixes will be backported. Please
consider upgrading to the latest version.
minor_changes:
- mysql_user - add the ``password_expire`` and ``password_expire_interval``
arguments to implement the password expiration management for mysql user (https://github.com/ansible-collections/community.mysql/pull/598).
- mysql_user - add user attribute support via the ``attributes`` parameter and
return value (https://github.com/ansible-collections/community.mysql/pull/604).
release_summary: 'This is a minor release of the ``community.mysql`` collection.
This changelog contains all changes to the modules and plugins in this
collection that have been made after the previous release.'
fragments:
- 0-stable-2-eol.yml
- 3.9.0.yml
- 598-password_expire-support-for-mysql_user.yml
- 602-show-all-slaves-status.yaml
- 604-user-attributes.yaml
release_date: '2024-02-22'
|