Received: from mx0.gmx.net (mx0.gmx.net [213.165.64.100]) by h1439878.stratoserver.net (8.14.2/8.14.2/Debian-2build1) with SMTP id p4R8pDxF027908 for ; Fri, 27 May 2011 10:51:14 +0200 Received: (qmail 17879 invoked by alias); 27 May 2011 08:51:08 -0000 Delivered-To: GMX delivery to rainer.schoepf@gmx.net Received: (qmail invoked by alias); 27 May 2011 08:51:07 -0000 Received: from relay2.uni-heidelberg.de (EHLO relay2.uni-heidelberg.de) [129.206.210.211] by mx0.gmx.net (mx085) with SMTP; 27 May 2011 10:51:07 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.100.94]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id p4R8lw1j003513 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 27 May 2011 10:47:59 +0200 Received: from listserv.uni-heidelberg.de (localhost.localdomain [127.0.0.1]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id p4R8jEbs003257; Fri, 27 May 2011 10:47:58 +0200 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 1214497 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Fri, 27 May 2011 10:47:57 +0200 Received: from relay2.uni-heidelberg.de (relay2.uni-heidelberg.de [129.206.210.211]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id p4R8lvQE000436 for ; Fri, 27 May 2011 10:47:57 +0200 Received: from ueamailgate02.uea.ac.uk (ueamailgate02.uea.ac.uk [139.222.131.185]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id p4R8lq0M003435 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 27 May 2011 10:47:56 +0200 Received: from ueams01.uea.ac.uk (ueams01.uea.ac.uk [139.222.131.78]) by ueamailgate02.uea.ac.uk (8.13.8/8.13.8) with ESMTP id p4R8jeNV006774 for ; Fri, 27 May 2011 09:45:40 +0100 Received: from [139.222.114.131] by ueams01.uea.ac.uk with esmtp (Exim 4.69) (envelope-from ) id 1QPsfq-0006mx-0O for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Fri, 27 May 2011 09:45:38 +0100 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2.17) Gecko/20110414 Thunderbird/3.1.10 MIME-Version: 1.0 X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Bayes-Prob: 0.0002 (Score 0, tokens from: @@RPTN, outgoing) X-Spam-Score: 0.00 () [Hold at 10.00] SPF(none:0) X-CanIt-Geo: ip=139.222.131.78; country=GB; region=I9; city=Norwich; latitude=52.6333; longitude=1.3000; http://maps.google.com/maps?q=52.6333,1.3000&z=6 X-CanItPRO-Stream: UEA:outgoing (inherits from UEA:default,base:default) X-Canit-Stats-ID: 06EMwJE7T - db10aa7fe5ff - 20110527 X-Scanned-By: CanIt (www . roaringpenguin . com) on 139.222.131.185 X-Spam-Check-Skipped: Low on slaves (5) Message-ID: <4DDF64B5.8050508@morningstar2.co.uk> Date: Fri, 27 May 2011 09:45:41 +0100 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Joseph Wright Subject: Depreciated functions 2011-05-27 To: LATEX-L@listserv.uni-heidelberg.de Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-GMX-Antispam: 0 (eXpurgate); Detail=5D7Q89H36p4yCuwxJv6KY0FCZRnwZ+13O92Pp+UcgSjsA6dBRMHH5JKgBLKjgKKZtFnFL JKK9fRJdRjyOWo9suIJMrtPl8UVkUmh5k8GdcTIYs4WaDz8rs/lHL7uXe6O05Psf65TuaRZN9gtq mGayJlFZIjryytJM8g6JBpu5XzJKJPRR9dVJnt2nSryf6PHHwxnhz58fYS3Uo0HLfsmdg==V1; X-Resent-By: Forwarder X-Resent-For: rainer.schoepf@gmx.net X-Resent-To: rainer@rainer-schoepf.de Status: R X-Status: X-Keywords: X-UID: 6767 Hello all, Over the last few weeks we have been carrying out a serious review of a lot of the LaTeX3 code, trying to deal with a number of remaining 'rough edges' and to get a lot more order into the code. I will be giving further details of this 'big bang' process over the next few days. One result of this 'big bang' is that a number of functions have been renamed or removed. The following notice details these. The updated code will be sent to CTAN in the next few days. Please read the notes explaining the changes carefully. In particular, please note that *all* \toks_... functions are depreciated. Any issues with these changes should be raised on LaTeX-L in the usual way. Functions renamed some time ago, for removal on or before 2011-08031: \cs_gnew_nopar:Npn => \cs_new_nopar:Npn \cs_gnew:Npn => \cs_new:Npn \cs_gnew_protected_nopar:Npn => \cs_new_protected_nopar:Npn \cs_gnew_protected:Npn => \cs_new_protected:Npn \cs_gnew_nopar:Npx => \cs_new_nopar:Npx \cs_gnew:Npx => \cs_new:Npx \cs_gnew_protected_nopar:Npx => \cs_new_protected_nopar:Npx \cs_gnew_protected:Npx => \cs_new_protected:Npx \cs_gnew_nopar:cpn => \cs_new_nopar:cpn \cs_gnew:cpn => \cs_new:cpn \cs_gnew_protected_nopar:cpn => \cs_new_protected_nopar:cpn \cs_gnew_protected:cpn => \cs_new_protected:cpn \cs_gnew_nopar:cpx => \cs_new_nopar:cpx \cs_gnew:cpx => \cs_new:cpx \cs_gnew_protected_nopar:cpx => \cs_new_protected_nopar:cpx \cs_gnew_protected:cpx => \cs_new_protected:cpx \cs_gnew_eq:NN => \cs_new_eq:NN \cs_gnew_eq:cN => \cs_new_eq:cN \cs_gnew_eq:Nc => \cs_new_eq:Nc \cs_gnew_eq:cc => \cs_new_eq:cc Functions depreciated 2011-05-27, for removal by 2011-08-31: *All \toks_... functions* All internal material for expl3 now uses token list variables. As a result, the \toks_... functions have been removed. Hooks for the TeX primitive token registers will be provided as the need occurs within LaTeX3. \cs_gundefine:N => \cs_undefine:N \cs_gundefine:c => \cs_undefine:c Undefining a function is now an intrinsically-global operation, in the same way the \cs_new:Npn is always global. \group_execute_after:N => \group_insert_after:N \clist_top:NN => \clist_get:NN \clist_top:cN => \clist_get:cN \clist_remove_element:Nn => \clist_remove_all:Nn \clist_gremove_element:Nn => \clist_gremove_all:Nn \clist_display:N => \clist_show:N \clist_display:c => \clist_show:c The raw 'show' functions have been removed such that the result of showing a comma-list is always formatted. \KV_process_space_removal_sanitize:NNn => \keyval_parse:NNn \KV_process_space_removal_no_sanitize:NNn => \keyval_parse:NNn \KV_process_no_space_removal_no_sanitize:NNn => \keyval_parse:NNn Key-value parsing has been simplified, and only the 'safe' version is now provided. While there is a performance implication, the overall improvement in interface and reliability suggests that this is a worthwhile change. \int_convert_from_base_ten:nn => \int_to_base:nn \int_convert_to_symbols:nnn => \int_to_symbols:nnn \int_convert_to_base_ten:nn => \int_from_base:nn \int_to_symbol:n => No replacement The implementation of \int_to_symbol:n is currently too tied to LaTeX2e and a particular set of symbols to be appropriate for inclusion in expl3. \iow_now_buffer_safe:Nn => Use \iow_wrap:nnnN \iow_now_buffer_safe:Nx => Use \iow_wrap:nnnN The code now includes a 'hard wrapping' system for I/O output. This should be used in place of the 'buffer_safe' functions. \ior_new:N => No replacement \ior_new:c => No replacement \iow_new:N => No replacement \iow_new:c => No replacement These functions are no longer required and will be removed entirely. \ior_open_streams: => \ior_list_streams: \iow_open_streams: => \iow_list_streams: \char_set_catcode:w => No replacement \char_set_mathcode:w => No replacement \char_set_lccode:w => No replacement \char_set_uccode:w => No replacement \char_set_sfcode:w => No replacement \char_value_catcode:w => No replacement \char_show_value_catcode:w => No replacement \char_value_mathcode:w => No replacement \char_show_value_mathcode:w => No replacement \char_value_lccode:w => No replacement \char_show_value_lccode:w => No replacement \char_value_uccode:w => No replacement \char_show_value_uccode:w => No replacement \char_value_sfcode:w => No replacement \char_show_value_sfcode:w => No replacement All of these low-level functions have higher-level equivalents, which should be used. \peek_after:NN => \peek_after:Nw \peek_gafter:NN => \peek_gafter:Nw The second argument to these functions may be '{' or '}' and is therefore 'w'. \msg_class_new:nn => \msg_class_set:nn Classes are rarely defined, and 'new' here is not necessarily useful. \msg_trace:nnxxxx => \msg_log:nnxxxx \msg_trace:nnxxx => \msg_log:nnxxx \msg_trace:nnxx => \msg_log:nnxx \msg_trace:nnx => \msg_log:nnx \msg_trace:nn => \msg_log:nn Performance considerations mean that true 'trace' code is unlikely to use the message system. \msg_generic_new:nnn => No replacement \msg_generic_new:nn => No replacement \msg_generic_set:nnn => No replacement \msg_generic_set:nn => No replacement \msg_direct_interrupt:xxxxx => No replacement \msg_direct_log:xx => No replacement \msg_direct_term:xx => No replacement These low-level functions should all be substituted by the appropriate higher-level message function. Direct use of the message system is no longer supported. \prop_display:N => \prop_show:N \prop_display:c => \prop_show:c The raw 'show' functions have been removed such that the result of showing a property list is always formatted. \prop_gget:NnN => No replacement \prop_gget:NVN => No replacement \prop_gget:cnN => No replacement \prop_gget:cVN => No replacement \prop_get_gdel:NnN => \prop_gpop:NnN \prop_if_in:ccT => No replacement \prop_if_in:ccF => No replacement \prop_if_in:ccTF => No replacement \prop_gput:ccx => No replacement Using 'cc' properties is no longer supported. \prop_if_eq_p:NN => No replacement \prop_if_eq:NNT => No replacement \prop_if_eq:NNF => No replacement \prop_if_eq:NNTF => No replacement \prop_if_eq_p:cN => No replacement \prop_if_eq:cNT => No replacement \prop_if_eq:cNF => No replacement \prop_if_eq:cNTF => No replacement \prop_if_eq_p:Nc => No replacement \prop_if_eq:NcT => No replacement \prop_if_eq:NcF => No replacement \prop_if_eq:NcTF => No replacement \prop_if_eq_p:cc => No replacement \prop_if_eq:ccT => No replacement \prop_if_eq:ccF => No replacement \prop_if_eq:ccTF => No replacement As property lists are no ordered, these functions do not make sense and are removed. \prg_new_map_functions:Nn => No replacement \prg_set_map_functions:Nn => No replacement Changes to internal structures mean that these functions are no longer needed at the kernel level, and so have been removed. -- Joseph Wright