summaryrefslogtreecommitdiff
path: root/autodoc.pl
Commit message (Collapse)AuthorAgeFilesLines
* autodoc.pl: Add =encoding lineKarl Williamson2017-09-091-0/+2
| | | | This is so can have non-ASCII in perlapi
* Switch most open() calls to three-argument form.John Lightsey2016-12-231-1/+1
| | | | | | | | | | Switch from two-argument form. Filehandle cloning is still done with the two argument form for backward compatibility. Committer: Get all porting tests to pass. Increment some $VERSIONs. Run: ./perl -Ilib regen/mk_invlists.pl; ./perl -Ilib regen/regcharclass.pl For: RT #130122
* Patch unit tests to explicitly insert "." into @INC when needed.H.Merijn Brand2016-11-111-2/+2
| | | | | require calls now require ./ to be prepended to the file since . is no longer guaranteed to be in @INC.
* autodoc.pl: Allow =item lists in perlapiKarl Williamson2016-10-121-2/+5
| | | | | | | Such lists were silently ignored. This fixes things so no pod commands are silently ignored, and hence lists are now accepted in a function's pod. This fixes the entry for 'vverify', whose =item list was not getting picked up.
* perlapi: Further clarification for term "Latin1"Karl Williamson2016-03-171-1/+2
| | | | This is a follow on for 14d32fa99f736009ef63a8b17d164cd8f6e967d9
* perlapi: Clarify Latin1 and ISO-8859-1Karl Williamson2016-03-111-0/+7
|
* autodoc.pl: Fix misspelled /[[:alpha:]]/Karl Williamson2016-02-091-1/+1
| | | | This typo was caught by the work for a couple of commits down the road.
* perlapi: Clarify 'string' vs. bufferKarl Williamson2015-12-221-0/+5
| | | | A string strictly is NUL terminated, but our terminology is lax
* Extend UTF-EBCDIC to handle up to 2**64-1Karl Williamson2015-11-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This uses for UTF-EBCDIC essentially the same mechanism that Perl already uses for UTF-8 on ASCII platforms to extend it beyond what might be its natural maximum. That is, when the UTF-8 start byte is 0xFF, it adds a bunch more bytes to the character than it otherwise would, bringing it to a total of 14 for UTF-EBCDIC. This is enough to handle any code point that fits in a 64 bit word. The downside of this is that this extension is not compatible with previous perls for the range 2**30 up through the previous max, 2**30 - 1. A simple program could be written to convert files that were written out using an older perl so that they can be read with newer perls, and the perldelta says we will do this should anyone ask. However, I strongly suspect that the number of such files in existence is zero, as people in EBCDIC land don't seem to use Unicode much, and these are very large code points, which are associated with a portability warning every time they are output in some way. This extension brings UTF-EBCDIC to parity with UTF-8, so that both can cover a 64-bit word. It allows some removal of special cases for EBCDIC in core code and core tests. And it is a necessary step to handle Perl 6's NFG, which I'd like eventually to bring to Perl 5. This commit causes two implementations of a macro in utf8.h and utfebcdic.h to become the same, and both are moved to a single one in the portion of utf8.h common to both. To illustrate, the I8 for U+3FFFFFFF (2**30-1) is "\xFE\xBF\xBF\xBF\xBF\xBF\xBF" before and after this commit, but the I8 for the next code point, U+40000000 is now "\xFF\xA0\xA0\xA0\xA0\xA0\xA0\xA1\xA0\xA0\xA0\xA0\xA0\xA0", and before this commit it was "\xFF\xA0\xA0\xA0\xA0\xA0\xA0". The I8 for 2**64-1 (U+FFFFFFFFFFFFFFFF) is "\xFF\xAF\xBF\xBF\xBF\xBF\xBF\xBF\xBF\xBF\xBF\xBF\xBF\xBF", whereas before this commit it was unrepresentable. Commit 7c560c3beefbb9946463c9f7b946a13f02f319d8 said in its message that it was moving something that hadn't been needed on EBCDIC until the "next commit". That statement turned out to be wrong, overtaken by events. This now is the commit it was referring to. commit I prematurely pushed that
* perlapi: Clarify process of using undocumented globalsKarl Williamson2015-09-301-5/+8
| | | | | One should send email to p5p first to get the go-ahead for documenting and using an undocumented function or global variable.
* perlapi: Clearer wording in introKarl Williamson2015-05-071-2/+2
|
* Remove duplicate apidoc entriesDavid Mitchell2014-12-171-0/+4
| | | | | Modify apidoc.pl to warn about duplicate apidoc entries, and remove duplicates for av_tindex and toLOWER_LC
* In response to 7fefc6c, make autodoc smarter.Matthew Horsfall2014-06-221-16/+23
| | | | | | | | | | All non-blank lines after a =head1 are now skipped to find header documentation. This unearthed a few more missed headings that I think are useful, and makes sure others aren't missed in the future. Also, fix line number counting/error reporting in autodoc.pl, it was woefully inaccurate.
* perlapi: Place in dictionary sort orderKarl Williamson2014-06-051-4/+10
| | | | Underscores or their lack can confuse people in finding sorted items.
* perlapi: Tighten strictures against using undocumented thingsKarl Williamson2014-01-221-2/+4
| | | | | We didn't actually say that undocumented global variables and macros are off-limits.
* Consistent spaces after dots in perlintern.podFather Chrysostomos2013-12-291-2/+2
|
* perlapi: Consistent spaces after dotsFather Chrysostomos2013-12-291-2/+3
| | | | plus some typo fixes. I probably changed some things in perlintern, too.
* Update comment in autodoc.pl - it's not run from regen.plNicholas Clark2013-07-101-2/+1
| | | | This should have been done as part of commit 22b7b87b206c3e0c.
* Add an "always update" parameter to regen_lib's open_new().Nicholas Clark2013-07-071-1/+1
| | | | | | | | | | | | | | | | | | By default the code in regen_lib compares the newly written file it has just closed with the (assumed) existing file, and only overwrites the existing file if the new file differs. This is a useful behaviour for regeneration scripts. However, it's not ideal for build scripts called from the Makefile, as make assumes that targets will be regenerated (and the timestamp touched). So add an "always update" parameter for the use of Makefile invoked scripts, such as autodoc.pl. If set, delete any existing file early (so that fatal errors during the generation don't confuse the build by leaving an existing stale file around), skip the comparison and skip the diagnostic output listing the changed files. Change autodoc.pl to set this parameter. Correct a typo in an error message in regen_lib's open_new().
* Refactor autodoc.pl to read MANIFEST line by line, instead of slurping it.Nicholas Clark2013-05-231-7/+5
|
* autodoc.pl now uses regen/embed_lib.pl to parse embed.fncNicholas Clark2013-05-231-19/+5
| | | | Previously it had its own custom parsing code for embed.fnc.
* Refactor autodoc.pl to use regen_lib.pl to generate file headers & footers.Nicholas Clark2013-05-231-23/+13
| | | | | This reduces duplication of code that generates '-*- buffer-read-only: t -*-', 'ex: set ro:' etc.
* typo fixes for root level scriptsDavid Steinbrunner2013-05-221-1/+1
| | | | | Add David Steinbrunner to AUTHORS. Update pod issues database.
* perlapi: Move 'experimental' warning to front of entriesKarl Williamson2013-05-201-2/+2
| | | | | | In a long multi-paragraph entry, the fact that the described function is considered experimental may be lost, as it comes at the end. This just moves it to the front.
* autodoc.pl: Don't list undocumented deprecated fcns in APIKarl Williamson2013-05-201-2/+3
| | | | | | | autodoc creates a list of all the undocumented functions that are part of the API. It omits ones that are experimental and whose API may change; and now it omits ones that are deprecated (and whose API is planned to change to be non-existent)
* autodoc.pl: Add note for deprecated functionsKarl Williamson2013-05-201-1/+9
| | | | | This causes each deprecated function to have a prominent note to that effect in its API documentation.
* EBCDIC has the Unicode bug tooKarl Williamson2013-03-111-5/+0
| | | | | | | | | | | | We have not had a working modern Perl on EBCDIC for some years. When I started out, comments and code led me to conclude erroneously that natively it supported semantics for all 256 characters 0-255. It turns out that I was wrong; it natively (at least on some platforms) has the same rules (essentially none) for the characters which don't correspond to ASCII onees, as the rules for these on ASCII platforms. This commit is documentation only, mostly just removing the special mentions of EBCDIC.
* embed.fnc: Note that 'A' functions not necessarily public APIKarl Williamson2012-12-091-5/+8
| | | | | | | An 'M' in a function entry means that undocumented functions are suppressed from perlapi.pod. Change the comments in embed.fnc to indicate that, and the text in perlapi to warn against using unlisted functions.
* autodoc.pl: pod format fixKarl Williamson2012-03-191-1/+1
|
* Only list non-static undocumented funcs in perlinternFather Chrysostomos2011-08-221-1/+3
|
* Revise perlintern’s descr of undocumented funcsFather Chrysostomos2011-08-221-1/+8
|
* autodoc.pl: output to fit in 79 columnsKarl Williamson2011-08-091-2/+2
|
* Improve wrapping of arguments in perlintern.podFather Chrysostomos2011-07-161-3/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit dee6204dc made a huge improvement to the formatting of argument lists in perlapi (except for one pesky little entry, namely caller_cx, that is 81 columns). But I forgot to look through perlintern. This just looks comical: struct refcounted_he * refcounted_he_new_pv(struct refcounted_he *parent, const char *key, U32 hash, SV *value, U32 flags) On an eighty-column terminal that wraps like this: struct refcounted_he * refcounted_he_new_pv(struct refcoun ted_he *parent, const char *k ey, U32 hash, SV *value, U32 flags) Ugh!! So, for entries with individual arguments that don’t fit, this commit wraps them like this: struct refcounted_he * refcounted_he_new_pv( struct refcounted_he *parent, const char *key, U32 hash, SV *value, U32 flags )
* Wrap argument lists in perl{api,intern}.podFather Chrysostomos2011-07-151-7/+29
|
* autodoc.pl: Don't list experimental functions in APIKarl Williamson2011-06-251-1/+2
|
* autodoc.pl: Allow heading level documentationKarl Williamson2010-09-221-2/+54
| | | | | | This patch changes autodoc.pl to accept text that is to come immediately after headings, so that it applies to across the whole section, and not just to an individual function within that section.
* perlpod.api: improve the proseDavid Mitchell2010-08-251-5/+7
| | | | | Tweak the text of the previous commit that describes the status of undocumented functions in the public API.
* autodoc.pl: Clarify use of undocumented fcnsKarl Williamson2010-08-251-10/+21
| | | | | | | | perlapi.pod was changed to list all the undocumented functions. The introductory text was not updated at that time. Now every public API function is at least listed in this pod. Clarify that functions not listed are not public and should not be used, and add a plea for documenting the ones which are missing theirs.
* Teach autodoc.pl about 'o' functions.Ben Morrow2010-07-121-0/+6
| | | | | | | That is, functions with no #define foo Perl_foo. I'm not certain this is the right way to do it, as I don't really understand which flags autodoc honours from which places; currently, it's necessary to put the 'o' flag on the =for apidoc line or it will be ignored.
* [perl #74856] Fix POD syntax in perlapiFather Chrysostomos2010-05-031-1/+1
|
* Use POD-style referencesTom Hukins2010-03-121-2/+2
|
* list undocumented API and internal functions in perlapi.pod and perlintern.podTony Cook2010-03-081-3/+15
| | | | | | | List any functions from embed.fnc that don't have documentation in their own section of perlapi/perlintern as a reminder to either document them, remove them or perhaps flag them as undeserving of documentation.
* Parse embed.fnc first, then cross-check consistency between it and =for apidocNicholas Clark2009-11-201-49/+90
|
* Merge near-duplicate code for 'api' and 'guts'.Nicholas Clark2009-11-201-11/+9
|
* Merge %apidocs and %gutsdocs into $docs{api} and $docs{guts}.Nicholas Clark2009-11-201-8/+7
|
* Correctly check that functions flagged as documented do have documentation.Nicholas Clark2009-11-171-1/+1
|
* Add some documentation to the heads of the various *.pl build scriptsDavid Mitchell2009-05-151-0/+16
|
* Make autodoc.pl accept the root dir in @ARGVMax Maischein2009-04-181-0/+6
|
* As autodoc.pl no longer rebuilds repository files, no need to use regen_lib.plNicholas Clark2009-04-181-57/+23
| | | | | Refactor the duplicated logic for opening, generating and closing files into a single output() subroutine.
* In autodoc.pl, inline and hence eliminate walk_table().Nicholas Clark2009-04-171-49/+39
| | | | | This simplifies the code considerably, as walk_table() was relying on its & prototype to cause the block after it to be co-erced to a passed in subroutine.