Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 36 additions & 20 deletions docs/resources/deprecations.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,25 +50,25 @@ tell you what is coming if you do not.
| `_event_client( )` | `follow_up_action( )` | 1.143.0 |
| `_bind_edit( )` | `_bind( )` | 1.142.0 |
| `_bind( custom_mapper = … custom_filter = … )` | `omit_initial` / `omit_initial_paths` / `json`, or shape it in ABAP | 1.143.0 |
| `_bind( view = … )` | omit the parameter | 1.142.0 |
| `_bind( view = … )` | omit the parameter | **removed**, *next release* |
| `z2ui5_if_app~check_sticky` / `check_initialized` | `set_session_stateful( )` / `check_on_init( )` | **removed**, 1.143.0 |
| `set_nav_back( )` / `set_nav_routing( )` | `follow_up_action( )` | **removed**, 1.143.0 |
| `cs_event-nav_to_route` | `nav_app_call( )` | **removed**, 1.143.0 |
| `cs_event-history_back` | `nav_app_leave( )` or a raw expression | **removed**, 1.143.0 |
| `client->get( )-viewname` | delete the read | **removed**, 1.143.0 |
| `Formatter.round2DP` and four siblings | compute it in ABAP | **removed**, 1.143.0 |
| `z2ui5_cl_util_api*`, `z2ui5_cl_pop_bal` | `z2ui5_cl_util` / `z2ui5_cl_util_ext` | **removed**, 1.142.0 |
| `cs_event-wizard_set_next_step` | two `control_by_id` calls | 1.143.0 |
| `cs_event-wizard_set_next_step` | two `control_by_id` calls | **removed**, *next release* |
| `z2ui5_cl_xml_view` | `z2ui5_cl_ui5_view_builder` | 1.143.0 |
| built-in popups | the [popups add-on](https://github.com/abap2UI5-addons/popups) | 1.142.0 |
| `z2ui5.Util` | `z2ui5.Formatter` | 1.142.0 |
| `cs_config-title` | `cs_event-set_title` | 1.144.0 |
| `z2ui5_if_types=>…` | the same type on the object that uses it | 1.144.0 |
| `z2ui5_if_exit` | `z2ui5_if_ui5_exit` | 1.144.0 |
| `set_push_state( )` | `hash_set( )` | *next release* |
| `set_app_state_active( )` | `app_state_set_active( )` | *next release* |
| `cs_event-set_nav_routing` | `cs_event-hash_routing` | *next release* |
| `cs_event-clipboard_app_state` | `app_state_get_href( )` + `cs_event-clipboard_copy` | *next release* |
| `set_push_state( )`, `cs_event-set_push_state` | `hash_set( )`, `cs_event-hash_set` | **removed**, *next release* |
| `set_app_state_active( )`, `cs_event-set_app_state_active` | `app_state_set_active( )`, `cs_event-app_state_set_active` | **removed**, *next release* |
| `cs_event-set_nav_routing` | `cs_event-hash_routing` | **removed**, *next release* |
| `cs_event-clipboard_app_state` | `app_state_get_href( )` + `cs_event-clipboard_copy` | **removed**, *next release* |
| `_event( s_ctrl-check_allow_multi_req )` | `s_ctrl-check_queue_last` | **removed**, *next release* |

## Obsolete: still compiles
Expand Down Expand Up @@ -220,8 +220,11 @@ break.

### The `view` parameter of `_bind( )` / `_bind_edit( )`

Inert — it is not passed on internally and has no effect. It dates from the time
each view had its own model. Omit it.
**Removed.** It dates from the time each view slot had a model of its own; today
one model serves every open slot, so there was nothing left for it to select —
the parameter was inert, never passed on internally, for as long as it carried
the obsolete mark. Deleting it is the whole migration, and a call that still
names it does not compile.

```abap
" old
Expand All @@ -231,13 +234,17 @@ client->_bind( val = ms_data view = client->cs_view-popup )
client->_bind( ms_data )
```

The binding string that comes back is the one that came back before. `cs_view`
itself stays — it is the view slot of `follow_up_action( )`, where it does
select one.

### `cs_event-wizard_set_next_step`

The event bundles the two calls a UI5 controller makes on a Wizard
**Removed.** The event bundled the two calls a UI5 controller makes on a Wizard
(`discardProgress( oStep )` + `oStep.setNextStep( oNext )`) into one fixed pair.
Both methods are on the frontend's `CONTROL_METHODS` whitelist, so the same flow
is two ordinary `control_by_id` calls — which additionally reach `goToStep`, a
step the bundled event cannot express.
step the bundled event could not express.

```abap
" old
Expand All @@ -251,7 +258,9 @@ client->follow_up_action( val = client->cs_event-control_by_id
t_arg = VALUE #( ( `step1` ) ( `setNextStep` ) ( `step2` ) ) ).
```

The constant and its handler stay and keep working.
The constant is gone from `cs_event` and the `WIZARD_SET_NEXT_STEP` handler is
gone from the frontend, so a call that still names either does not compile and
a raw string does nothing.

### The `nav_container_to` event family

Expand Down Expand Up @@ -511,9 +520,15 @@ the state the URL carries.
| `cs_event-set_nav_routing` | `cs_event-hash_routing` | it is the *hash* that is being routed; `nav_*` is app-to-app navigation |
| `cs_event-clipboard_app_state` | `app_state_get_href( )` + `cs_event-clipboard_copy` | the backend composes the link now, so the app can show or mail it, not only copy it |

Both spellings compile, and the first three share their wire value — the old
name and the new one reach the same branch, so there is no behavior to migrate,
only a name:
The first two also had an *event* spelling — `cs_event-set_push_state` and
`cs_event-set_app_state_active`, alias constants for `cs_event-hash_set` and
`cs_event-app_state_set_active`. They are removed with the methods, so the
whole family is `hash_*` / `app_state_*` and nothing else.

**Removed.** Everything but the last shared its wire value with the surviving
name — the old spelling and the new one reached the same branch — so there was
no behavior to migrate, only a name, and a call that still writes an old one
does not compile:

```abap
" before
Expand All @@ -525,12 +540,13 @@ client->hash_set( `&my-app-state=detail` ).
client->follow_up_action( client->cs_event-hash_routing ).
```

`cs_event-clipboard_app_state` is the one that is not a pure rename: it
composed the link in the browser and could only put it on the clipboard. The
replacement hands the string to the backend, which is what lets an app show it
in an `Input`, mail it or render it as a QR code — and the composed link keeps
a Fiori Launchpad's shell hash, so a recipient lands in the app instead of on
the launchpad home page:
`cs_event-clipboard_app_state` is the one that was not a pure rename: it
composed the link in the browser and could only put it on the clipboard, and
its frontend handler is gone with the constant. The replacement hands the
string to the backend, which is what lets an app show it in an `Input`, mail it
or render it as a QR code — and the composed link keeps a Fiori Launchpad's
shell hash, so a recipient lands in the app instead of on the launchpad home
page:

```abap
" before - fire and forget, the link never existed in ABAP
Expand Down
Loading