Skip to content

Conversation

@mergify
Copy link

@mergify mergify bot commented Jul 14, 2025

When listing deprecated features, apart from the deprecation phase, show the current state (whether the configuration permits usage).

New column in the CLI outout:

> rabbitmqctl list_deprecated_features
┌───────────────────────────────┬──────────────────────┬───────────┐
│ name                          │ deprecation_phase    │ state     │
├───────────────────────────────┼──────────────────────┼───────────┤
│ amqp_address_v1               │ permitted_by_default │ permitted │
├───────────────────────────────┼──────────────────────┼───────────┤
│ amqp_filter_set_bug           │ permitted_by_default │ permitted │
├───────────────────────────────┼──────────────────────┼───────────┤
│ classic_queue_mirroring       │ removed              │ denied    │
├───────────────────────────────┼──────────────────────┼───────────┤
│ df1_from_list_df_testsuite    │ permitted_by_default │ permitted │
├───────────────────────────────┼──────────────────────┼───────────┤
│ df2_from_list_df_testsuite    │ removed              │ denied    │
├───────────────────────────────┼──────────────────────┼───────────┤
│ global_qos                    │ permitted_by_default │ permitted │
├───────────────────────────────┼──────────────────────┼───────────┤
│ management_metrics_collection │ permitted_by_default │ permitted │
├───────────────────────────────┼──────────────────────┼───────────┤
│ queue_master_locator          │ permitted_by_default │ denied    │
├───────────────────────────────┼──────────────────────┼───────────┤
│ ram_node_type                 │ permitted_by_default │ denied    │
├───────────────────────────────┼──────────────────────┼───────────┤
│ transient_nonexcl_queues      │ permitted_by_default │ permitted │
└───────────────────────────────┴──────────────────────┴───────────┘

New column in the Management UI:
Screenshot 2025-07-14 at 15 54 36


This is an automatic backport of pull request #14227 done by [Mergify](https://mergify.com).

@michaelklishin michaelklishin added this to the 4.1.3 milestone Jul 14, 2025
@michaelklishin michaelklishin merged commit d60a5df into v4.1.x Jul 14, 2025
277 checks passed
@michaelklishin michaelklishin deleted the mergify/bp/v4.1.x/pr-14227 branch July 14, 2025 15:52
bas0N added a commit to bas0N/rabbitmq-server that referenced this pull request Dec 1, 2025
The /api/deprecated-features/used endpoint was returning an empty
state field in the JSON response. This was a regression introduced
in rabbitmq#14229, which added the state field to show whether deprecated
features are permitted or denied.

The issue was that rabbit_depr_ff_extra:cli_info0/1 always tried to
extract the state field with a default empty string, even when
rabbit_deprecated_features:list(used) doesn't include a state
field (unlike list(all) which does).

This commit fixes the issue by only including the state field when
it exists in the feature properties, using maps:find/2 and maps:merge/2
to conditionally add it.

The fix ensures that:
- /api/deprecated-features returns state field with valid values
- /api/deprecated-features/used omits the state field entirely

Tests are updated to verify this behavior.

GitHub issue: rabbitmq#14340
mergify bot pushed a commit that referenced this pull request Dec 3, 2025
The /api/deprecated-features/used endpoint was returning an empty
state field in the JSON response. This was a regression introduced
in #14229, which added the state field to show whether deprecated
features are permitted or denied.

The issue was that rabbit_depr_ff_extra:cli_info0/1 always tried to
extract the state field with a default empty string, even when
rabbit_deprecated_features:list(used) doesn't include a state
field (unlike list(all) which does).

This commit fixes the issue by only including the state field when
it exists in the feature properties, using maps:find/2 and maps:merge/2
to conditionally add it.

The fix ensures that:
- /api/deprecated-features returns state field with valid values
- /api/deprecated-features/used omits the state field entirely

Tests are updated to verify this behavior.

GitHub issue: #14340

(cherry picked from commit d2a3a60)
mergify bot pushed a commit that referenced this pull request Dec 4, 2025
The /api/deprecated-features/used endpoint was returning an empty
state field in the JSON response. This was a regression introduced
in #14229, which added the state field to show whether deprecated
features are permitted or denied.

The issue was that rabbit_depr_ff_extra:cli_info0/1 always tried to
extract the state field with a default empty string, even when
rabbit_deprecated_features:list(used) doesn't include a state
field (unlike list(all) which does).

This commit fixes the issue by only including the state field when
it exists in the feature properties, using maps:find/2 and maps:merge/2
to conditionally add it.

The fix ensures that:
- /api/deprecated-features returns state field with valid values
- /api/deprecated-features/used omits the state field entirely

Tests are updated to verify this behavior.

GitHub issue: #14340

(cherry picked from commit d2a3a60)
(cherry picked from commit 9c4cbf2)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants