diff options
author | Corey Farrell <git@cfware.com> | 2017-10-16 11:53:07 -0400 |
---|---|---|
committer | Corey Farrell <git@cfware.com> | 2017-10-18 09:54:58 -0500 |
commit | 955a891a84203fdab9dade2049bb8268d69a2949 (patch) | |
tree | e87263919db6fc073b513400f29a9216bd11848a | |
parent | 3a2b132411c88d2b2494c3085c79253256bda053 (diff) |
app_macro deprecation.
* Mark the module deprecated.
* Disable the module by default.
* Produce a warning the first time a macro is used.
* Note deprecation related options in app_dial and app_queue.
ASTERISK-27350
Change-Id: I560ea043bacdbc5534a17d97854273d52c2f1bdc
-rw-r--r-- | CHANGES | 6 | ||||
-rw-r--r-- | UPGRADE.txt | 5 | ||||
-rw-r--r-- | apps/app_dial.c | 4 | ||||
-rw-r--r-- | apps/app_macro.c | 12 | ||||
-rw-r--r-- | apps/app_queue.c | 3 |
5 files changed, 28 insertions, 2 deletions
@@ -12,6 +12,12 @@ --- Functionality changes from Asterisk 15 to Asterisk 16 -------------------- ------------------------------------------------------------------------------ +app_macro +------------------ + * The app_macro module is now deprecated and by default it is no longer + built. Users should migrate to app_stack (Gosub). A warning is logged + the first time any Macro is used. + chan_sip ------------------ * New function SIP_HEADERS() enumerates all headers in the incoming INVITE. diff --git a/UPGRADE.txt b/UPGRADE.txt index 1fe82c04e..39c0f8cec 100644 --- a/UPGRADE.txt +++ b/UPGRADE.txt @@ -26,6 +26,11 @@ New in 16.0.0: +app_macro: + - The app_macro module is now deprecated and by default it is no longer + built. Users should migrate to app_stack (Gosub). A warning is logged + the first time any Macro is used. + New in 15.0.0: Build System: diff --git a/apps/app_dial.c b/apps/app_dial.c index 847a095f4..8c51f3f1a 100644 --- a/apps/app_dial.c +++ b/apps/app_dial.c @@ -324,6 +324,10 @@ <warning><para>Be aware of the limitations that macros have, specifically with regards to use of the <literal>WaitExten</literal> application. For more information, see the documentation for <literal>Macro()</literal>.</para></warning> + <note> + <para>Macros are deprecated, GoSub should be used instead, + see the <literal>U</literal> option.</para> + </note> </option> <option name="n"> <argument name="delete"> diff --git a/apps/app_macro.c b/apps/app_macro.c index 4ef525295..c6f051ea0 100644 --- a/apps/app_macro.c +++ b/apps/app_macro.c @@ -26,7 +26,8 @@ */ /*** MODULEINFO - <support_level>core</support_level> + <defaultenabled>no</defaultenabled> + <support_level>deprecated</support_level> <replacement>app_stack (GoSub)</replacement> ***/ @@ -250,12 +251,19 @@ static int _macro_exec(struct ast_channel *chan, const char *data, int exclusive char *save_macro_offset; int save_in_subroutine; struct ast_datastore *macro_store = ast_channel_datastore_find(chan, ¯o_ds_info, NULL); + static int deprecation_notice = 0; if (ast_strlen_zero(data)) { ast_log(LOG_WARNING, "Macro() requires arguments. See \"core show application macro\" for help.\n"); return -1; } + if (!deprecation_notice) { + deprecation_notice = 1; + ast_log(LOG_WARNING, "Macro() is deprecated and will be removed from a future version of Asterisk.\n"); + ast_log(LOG_WARNING, "Dialplan should be updated to use Gosub instead.\n"); + } + do { if (macro_store) { break; @@ -665,4 +673,4 @@ static int load_module(void) return res; } -AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Extension Macros"); +AST_MODULE_INFO_STANDARD_DEPRECATED(ASTERISK_GPL_KEY, "Extension Macros"); diff --git a/apps/app_queue.c b/apps/app_queue.c index e3a4e22a9..801695fff 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -235,6 +235,9 @@ </parameter> <parameter name="macro"> <para>Will run a macro on the called party's channel (the queue member) once the parties are connected.</para> + <note> + <para>Macros are deprecated, GoSub should be used instead.</para> + </note> </parameter> <parameter name="gosub"> <para>Will run a gosub on the called party's channel (the queue member) once the parties are connected.</para> |