Skip to content

Commit 9f00b5d

Browse files
authored
Merge pull request #1945 from dbcli/RW/remove-mysql-unix-port-support
Remove support for deprecated `$MYSQL_UNIX_PORT` environment variable
2 parents 2df5307 + 66d9853 commit 9f00b5d

3 files changed

Lines changed: 8 additions & 25 deletions

File tree

changelog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Upcoming (TBD)
44
Breaking Changes
55
* Change default table format to `mysql_unicode`.
66
* Remove support for deprecated environment variable `$DSN`.
7+
* Remove support for deprecated environment variable `$MYSQL_UNIX_PORT`.
78

89

910
Internal

mycli/cli_runner.py

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -167,17 +167,6 @@ def run_from_cli_args(cli_args: 'CliArgs', client_factory: ClientFactory) -> Non
167167
if cli_args.list_ssh_config:
168168
sys.exit(main_list_ssh_config(mycli, cli_args))
169169

170-
if 'MYSQL_UNIX_PORT' in os.environ:
171-
# deprecated 2026-03
172-
click.secho(
173-
"The MYSQL_UNIX_PORT environment variable is deprecated in favor of MYSQL_UNIX_SOCKET. "
174-
"MYSQL_UNIX_PORT will be removed in a future release.",
175-
err=True,
176-
fg="red",
177-
)
178-
if not cli_args.socket:
179-
cli_args.socket = os.environ['MYSQL_UNIX_PORT']
180-
181170
# Choose which ever one has a valid value.
182171
database = cli_args.dbname or cli_args.database
183172

test/pytests/test_cli_runner.py

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -143,31 +143,24 @@ def test_run_from_cli_args_rejects_conflicting_format_flags(
143143
assert secho_calls == [(message, {'err': True, 'fg': 'red'})]
144144

145145

146-
def test_run_from_cli_args_uses_deprecated_mysql_unix_port_and_database_alias(
147-
monkeypatch: pytest.MonkeyPatch,
148-
) -> None:
146+
def test_run_from_cli_args_treats_database_as_dsn_alias(monkeypatch: pytest.MonkeyPatch) -> None:
149147
cli_args = make_cli_args()
150148
cli_args.database = 'prod'
151149
client = DummyMyCli(
152150
config={
153151
**default_config(),
154-
'alias_dsn': {'prod': 'mysql://dsn_user:dsn_pass@dsn_host:3307/dsn_db'},
152+
'alias_dsn': {'prod': 'mysql://u:p@h/db'},
155153
}
156154
)
157-
secho_calls: list[str] = []
158-
monkeypatch.setenv('MYSQL_UNIX_PORT', '/tmp/mysql.sock')
159-
monkeypatch.setattr(cli_runner.click, 'secho', lambda text, **_kwargs: secho_calls.append(text))
160155

161156
run_with_client(monkeypatch, cli_args, client)
162157

163158
assert client.dsn_alias == 'prod'
164-
assert client.connect_calls[-1]['database'] == 'dsn_db'
165-
assert client.connect_calls[-1]['user'] == 'dsn_user'
166-
assert client.connect_calls[-1]['passwd'] == 'dsn_pass'
167-
assert client.connect_calls[-1]['host'] == 'dsn_host'
168-
assert client.connect_calls[-1]['port'] == 3307
169-
assert client.connect_calls[-1]['socket'] == '/tmp/mysql.sock'
170-
assert any('MYSQL_UNIX_PORT environment variable is deprecated' in call for call in secho_calls)
159+
connect_call = client.connect_calls[-1]
160+
assert connect_call['user'] == 'u'
161+
assert connect_call['passwd'] == 'p'
162+
assert connect_call['host'] == 'h'
163+
assert connect_call['database'] == 'db'
171164

172165

173166
def test_run_from_cli_args_leaves_dsn_alias_env_vars_disabled_by_default(

0 commit comments

Comments
 (0)