# 3 Scheduled for Removal

###
3.1 Introduction

This document list all functionality in Erlang/OTP that currently are scheduled for removal. For more information regarding the strategy regarding removal of functionality see the documentation of Support, Compatibility, Deprecations, and Removal.

###
3.2 OTP 27

####
Functions Scheduled for Removal in OTP 27

- crypto:crypto_dyn_iv_init/3 (see the documentation for details)
- crypto:crypto_dyn_iv_update/3 (see the documentation for details)
- ct_slave:_/_ (use ?CT_PEER(), or the 'peer' module instead)
- slave:_/_ (use the 'peer' module instead)
- zlib:adler32/2 (use erlang:adler32/1 instead)
- zlib:adler32/3 (use erlang:adler32/2 instead)
- zlib:adler32_combine/4 (use erlang:adler_combine/3 instead)
- zlib:crc32/1 (use erlang:crc32/1 on the uncompressed data instead)
- zlib:crc32/2 (use erlang:crc32/1 instead)
- zlib:crc32/3 (use erlang:crc32/2 instead)
- zlib:crc32_combine/4 (use erlang:crc32_combine/3 instead)
- zlib:getBufSize/1 (this function will be removed in a future release)
- zlib:inflateChunk/1 (use safeInflate/2 instead)
- zlib:inflateChunk/2 (use safeInflate/2 instead)
- zlib:setBufSize/2 (this function will be removed in a future release)

###
3.3 OTP 26

####
Erlang Distribution Without Large Node Container Support

Communication over the Erlang distribution without support for large node container data types (version 4) is as of OTP 24 deprecated and support for it is scheduled for removal in OTP 26. That is, as of OTP 26, support for large node container data types will become mandatory.

####
Old Link Protocol

The old link protocol used when communicating over the Erlang distribution is as of OTP 24 deprecated and support for it is scheduled for removal in OTP 26. As of OTP 26 the new link protocol will become mandatory. That is, Erlang nodes will then refuse to connect to nodes not implementing the new link protocol. If you implement the Erlang distribution yourself, you are, however, encouraged to implement the new link protocol as soon as possible since the old protocol can cause links to enter an inconsistent state.

####
Functions Scheduled for Removal in OTP 26

- code:is_module_native/1 (HiPE has been removed)
- code:rehash/0 (the code path cache feature has been removed)
- disk_log:accessible_logs/0 (use disk_log:all/0 instead)
- disk_log:lclose/1 (use disk_log:close/1 instead)
- disk_log:lclose/2 (use disk_log:close/1 instead)
- erts_alloc_config:_/_ (this module will be removed in OTP 26.0. See the documentation for details)
- ftp:start_service/1 (use ftp:open/2 instead)
- ftp:stop_service/1 (use ftp:close/1 instead)
- http_uri:decode/1 (use uri_string:unquote function instead)
- http_uri:encode/1 (use uri_string:quote function instead)
- httpd_util:decode_hex/1 (use uri_string:unquote function instead)
- httpd_util:encode_hex/1 (use uri_string:quote function instead)
- httpd_util:flatlength/1 (use erlang:iolist_size/1 instead)
- httpd_util:hexlist_to_integer/1 (use erlang:list_to_integer/2 with base 16 instead)
- httpd_util:integer_to_hexlist/1 (use erlang:integer_to_list/2 with base 16 instead)
- httpd_util:strip/1 (use string:trim/1 instead)
- httpd_util:suffix/1 (use filename:extension/1 and string:trim/2 instead)