Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Removed outdated `devdoc/cvs.branches.fig`. Removed `devdoc/README.releasemgr`. Replaced by `devdoc/tcllib_releasemgr.man`. TODO: Filling in the explanation of various tasks. Added `devdoc/tcllib_devguide.man`. Partially done. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | doc-overhaul |
Files: | files | file ages | folders |
SHA3-256: |
205ddce17fd85693fa5fa048f6657d67 |
User & Date: | aku 2019-03-07 06:41:57.813 |
Context
2019-03-07
| ||
07:03 | Fixed missing reference to the BSD/MIT license in the contributor and maintainer commitments. check-in: 46e243eef8 user: aku tags: doc-overhaul | |
06:41 | Removed outdated `devdoc/cvs.branches.fig`. Removed `devdoc/README.releasemgr`. Replaced by `devdoc/tcllib_releasemgr.man`. TODO: Filling in the explanation of various tasks. Added `devdoc/tcllib_devguide.man`. Partially done. check-in: 205ddce17f user: aku tags: doc-overhaul | |
2019-03-06
| ||
08:16 | Squash very old (read: outdated) dev- and release guides. check-in: 7f953a0106 user: aku tags: doc-overhaul | |
Changes
Changes to README.md.
︙ | ︙ | |||
32 33 34 35 36 37 38 | Another location to find these sources at is the [github mirror](https://github.com/tcltk/tcllib). Please note the :warning: at the top. # Guides To Tcllib | | | > | 32 33 34 35 36 37 38 39 40 41 42 43 44 | Another location to find these sources at is the [github mirror](https://github.com/tcltk/tcllib). Please note the :warning: at the top. # Guides To Tcllib * [Tcl Community - Kind Communication](embedded/www/tcllib/files/devdoc/tcl_community_communication.html) * [License](embedded/www/tcllib/files/devdoc/tcllib_license.html) * [How To Get The Sources](embedded/www/tcllib/files/devdoc/tcllib_sources.html) * [How To Build And Install Tcllib](embedded/www/tcllib/files/devdoc/tcllib_installer.html) * [The Developer's Guide](embedded/www/tcllib/files/devdoc/tcllib_devguide.html) * [The Release Manager's Guide](embedded/www/tcllib/files/devdoc/tcllib_releasemgr.html) |
Deleted devdoc/README.releasemgr.
|
| < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < |
Deleted devdoc/cvs.branches.fig.
|
| < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < |
Added devdoc/parts/d_branchflow.inc.
Added devdoc/parts/d_contrib.inc.
> > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 | As a contributor to Tcllib you are committing yourself to: [list_begin enumerated] [enum] Follow the guidelines laid down in [term {Tcl Community - Kind Communication}] [list_end] Contributions are made by entering tickets into our tracker, providing patches, bundles or branches of code for inclusion, or posting to the Tcllib related mailing lists. |
Added devdoc/parts/d_dirlayout.inc.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 | [subsection {Main Directories}] The main directories in the Tcllib toplevel directory and of interest to a developer are: [list_begin definitions] [def [file modules]] Each child directory represents one or more packages. In the case of the latter the packages are usually related in some way. Examples are [file base64], [file math], and [file struct], with loose (base64) to strong (math) relations between the packages in the directory. [def [file apps]] This directory contains all the installable applications, with their documentation. Note that this directory is currently [emph not] split into sub-directories. [def [file examples]] Each child directory [file foo] contains one or more example application for the packages in [file modules/foo]. These examples are generally not polished enough to be considered for installation. [list_end] [subsection {More Directories}] [list_begin definitions] [def [file config]] This directory contains files supporting the unix build system, i.e. [file configure] and [file Makefile.in]. [def [file devdoc]] This directories contains the doctools sources for the global documentation, like this document and its sibling guides. [def [file embedded]] This directory contains the entire documentation formatted for [term HTML] and styled to properly mix into the web site generated by fossil for the repository. [para] This is the documentation accessible from the Tcllib home directory, represented in the repository as [file embedded/index.md]. [def [file idoc]] This directory contains the entire documentation formatted for [term nroff] and [term HTML], the latter without any styling. This is the documentation which will be installed. [def [file support]] This directory contains the sources of internal packages and utilities used in the implementation of the [file installer.tcl] and [file sak.tcl] scripts/tools. [list_end] [subsection {Top Files}] [list_begin definitions] [def [file aclocal.m4]] [def [file configure]] [def [file configure.in]] [def [file Makefile.in]] These four files comprise the unix build system layered on top of the [file installer.tcl] script. [def [file installer.tcl]] The Tcl-based installation script/tool. [def [file project.shed]] Configuration file for [term {Sean Wood}]'s [syscmd PracTcl] buildsystem. [def [file sak.tcl]] This is the main tool for developers and release managers, the [term {Swiss Army Knife}] of management operations on the collection. [def [file ChangeLog]] The log of changes to the global support, when the sources were held in [term CVS]. Not relevant any logner with the switch to the [term fossil] SCM. [def [file license.terms]] The license in plain ASCII. See also [term {Tcllib - License}] for the nicely formatted form. The text is identical. [def [file README.md]] [def [file .github/CONTRIBUTING.md]] [def [file .github/ISSUE_TEMPLATE.md]] [def [file .github/PULL_REQUEST_TEMPLATE.md]] These markdown-formatted documents are used and shown by the github mirror of these sources, pointing people back to the official location and issue trackers. [def [file DESCRIPTION.txt]] [def [file STATUS]] [def [file tcllib.spec]] [def [file tcllib.tap]] [def [file tcllib.yml]] ???? [list_end] [subsection {File Types}] The most common file types, by file extension, are: [list_begin definitions] [def [file .tcl]] Tcl code for a package, application, or example. [def [file .man]] Doctools-formatted documentation, usually for a package. [def [file .test]] Test suite for a package, or part of. Based on [package tcltest]. [def [file .bench]] Performance benchmarks for a package, or part of. Based on [file modules/bench]. [def [file .pcx]] Syntax rules for [term TclDevKit]'s [syscmd tclchecker]. Using these rules allows the checker to validate the use of commands of a Tcllib package [package FOO] without having to scan the [file .tcl] files implementing it. [list_end] |
Added devdoc/parts/d_documentation.inc.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | The standard format used for documentation of packages and other things in Tcllib is [term doctools]. Its supporting packages are a part of Tcllib, see the directories [file modules/doctools] and [file modules/dtplite]. The latter is an application package, with the actual application [file apps/dtplite] a light wrapper around it. [para] Tcllib developers gain access to these through the [cmd doc] method of the [file sak.tcl] tool, another (internal) wrapper around the [file modules/dptlite] application package. [comment {===================================================================}] [subsection {Generate documentation for a specific module}] Invoke either [example { ./sak.tcl doc html FOO }] or [example { ./sak.tcl doc html modules/FOO }] to generate HTML for the documentation found in the module [file FOO]. Instead of [const html] any other supported format can be used here, of course. [para] The generated formatted documentation will be placed into a directory [file doc] in the current working directory. [comment {===================================================================}] [subsection {Generate documentation for all modules}] Invoke the tool without a module name, i.e. [example { ./sak.tcl doc html }] to generate HTML for the documentation found in all modules. Instead of [const html] any other supported format can be used here, of course. [para] The generated formatted documentation will be placed into a directory [file doc] in the current working directory. [comment {===================================================================}] [subsection {Available output formats, help}] Invoke the tool as [example { ./sak.tcl help doc }] to see the entire set of supported output formats which can be generated. [comment {===================================================================}] [subsection {Validation without output}] Note the special format [const validate]. [para] Using this value as the name of the format to generate forces the tool to simply check that the documentation is syntactically correct, without generating actual output. [para] Invoke it as either [example { ./sak.tcl doc validate (modules/)FOO }] or [example { ./sak.tcl doc validate }] to either check the packages of a specific module or check all of them. |
Added devdoc/parts/d_installation.inc.
Added devdoc/parts/d_maintain.inc.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | When contributing one or more packages for full inclusion into Tcllib you are committing yourself to [list_begin enumerated] [enum] Follow the guidelines laid down in [term {Tcl Community - Kind Communication}] (as any contributor) [enum] Maintenance of the new packages for a period of two years under the following rules, and responsibilities: [list_begin enumerated] [enum] A maintainer may step down after the mandatory period as they see fit. [enum] A maintainer may step down before the end of the mandatory period, under the condition that a replacement maintainer is immediatel available and has agreed to serve the remainder of the period, plus their own mandatory period (see below). [enum] When stepping down without a replacement maintainer taking over the relevant packages have to be flagged as [const unmaintained]. [enum] When a replacement mantainer is brought in for a package it is (kept) marked as [const maintained] (again). [para] A replacement maintainer is bound by the same rules as the original maintainer, except that the mandatory period of maintenance is shortened to one year. [enum] For any [const unmaintained] package a contributor interested in becoming its maintainer can become so by flagging them as [const maintained] with their name and contact information, committing themselves to the rules of a replacement maintainer (see previous). [enum] For any already [const maintained] package a contributor interested in becoming a co-maintainer can become so with the agreement of the existing maintainer(s), committing themselves to the rules of a replacement maintainer (see two above). [list_end] [para] The responsibilities as a maintainer include: [list_begin enumerated] [enum] Watching Tcllib's ticket tracker for bugs, bug fixes, and feature requests related to the new packages. [enum] Reviewing the aforementioned tickets, rejecting or applying them [enum] Coordination and discussion with ticket submitter during the development and/or application of bug fixes. [list_end] [enum] Follow the [sectref {Branching and Workflow}] of this guide. [list_end] |
Added devdoc/parts/d_testing.inc.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | Testsuites in Tcllib are based on Tcl's standard test package [package tcltest], plus utilities found in the directory [file modules/devtools] [para] Tcllib developers invoke the suites through the [cmd {test run}] method of the [file sak.tcl] tool, with other methods of [cmd test] providing management operations, for example setting a list of standard Tcl shells to use. [comment {===================================================================}] [subsection {Invoke the testsuites of a specific module}] Invoke either [example { ./sak.tcl test run FOO }] or [example { ./sak.tcl test run modules/FOO }] to invoke the testsuites found in a specific module [file FOO]. [comment {===================================================================}] [subsection {Invoke the testsuites of all modules}] Invoke the tool without a module name, i.e. [example { ./sak.tcl test run }] to invoke the testsuites of all modules. [comment {===================================================================}] [subsection {Detailed Test Logs}] In all the previous examples the test runner will write a combination of progress display and testsuite log to the standard output, showing for each module only the tests that passed or failed and how many of each in a summary at the end. [para] To get a detailed log, it is necessary to invoke the test runner with additional options. [para] For one: [example { ./sak.tcl test run --log LOG FOO }] While this shows the same short log on the terminal as before, it also writes a detailed log to the file [file LOG.log], and excerpts to other files ([file LOG.summary], [file LOG.failures], etc.). [para] For two: [example { ./sak.tcl test run -v FOO }] This writes the detailed log to the standard output, instead of the short log. [para] Regardless of form, the detailed log contains a list of all test cases executed, which failed, and how they failed (expected versus actual results). [comment {===================================================================}] [subsection {Shell Selection}] By default the test runner will use all the Tcl shells specified via [cmd {test add}] to invoke the specified testsuites, if any. If no such are specified it will fall back to the Tcl shell used to ran the tool itself. [para] Use option [option --shell] to explicitly specify the Tcl shell to use, like [example { ./sak.tcl test run --shell /path/to/tclsh ... }] [comment {===================================================================}] [subsection Help] Invoke the tool as [example { ./sak.tcl help test }] to see the detailed help for all methods of [cmd test], and the associated options. |
Added devdoc/parts/d_testwrite.inc.
Added devdoc/parts/rm_distribute.inc.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | With the release made it has to be published and the world notified of its existence. [list_begin enumerated] [enum] Create a proper fossil event for the release, via [uri http://core.tcl-lang.org/tcllib/eventedit]. [para] An [uri http://core.tcl-lang.org/tcllib/event/dac0ddcd2e990234143196b4dc438fe01e7b9817 {existing event}] should be used as template. [enum] Update a number of web locations: [list_begin enumerated] [enum] [uri http://core.tcl-lang.org/tcllib/doc/trunk/embedded/index.md {Home page}] [enum] [uri http://core.tcl-lang.org/tcllib/wiki?name=Downloads Downloads] [enum] [uri http://core.tcl-lang.org/tcllib/wiki?name=Past+Releases {Past Releases}] [enum] [uri http://www.tcl-lang.org/home/release.txt ] [enum] [uri http://www.tcl-lang.org/software/tcllib/*.tml] [enum] [uri http://wiki.tcl-lang.org/1246] [list_end] The first location maps to the file [file embedded/index.md] in the repository itself, as such it can edited as part of the release process. This is where reference to the new fossil event is added, as the new current release. [para] The next two locations are in the fossil tcllib wiki and require admin or wiki write permissions for [uri http://core.tcl-lang.org/tcllib]. [para] The last two locations require ssh access to [uri http://www.tcl-lang.org] and permission to edit files in the web area. [enum] ***TODO*** mailing lists and other places to send notes to. [list_end] |
Added devdoc/parts/rm_final.inc.
> | 1 | todo: finalize release, make candidate official |
Added devdoc/parts/rm_start.inc.
> | 1 | todo: open a candidate for release |
Added devdoc/parts/rm_tooling.inc.
> > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | The [file sak.tcl] script in the toplevel directory of a Tcllib checkout is the one tool used by the release manager to perform its [sectref Tasks]. [para] The main commands to be used are [example { sak.tcl validate sak.tcl test run sak.tcl review sak.tcl readme sak.tcl localdoc sak.tcl release }] More detail will be provided in the explanations of the various [sectref Tasks]. |
Added devdoc/parts/rm_work.inc.
> > > > > > > | 1 2 3 4 5 6 7 | todo: test, validate and check that the candidate is worthy of release fix testsuites, possibly fix packages, documentation regenerate docs coordinate with package maintainers wrt fixes big thing: going over the packages, classify changes since last release to generate a nice readme. |
Added devdoc/tcl_community_communication.man.
> > > > > > | 1 2 3 4 5 6 | [comment {-*- tcl -*- doctools manpage}] [manpage_begin tcl_community_communication n 1] [titledesc {Tcl Community - Kind Communication}] [description] [manpage_end] |
Added devdoc/tcllib_devguide.man.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | [comment {-*- tcl -*- doctools manpage}] [manpage_begin tcllib_devguide n 1] [titledesc {Tcllib - The Developer's Guide}] [description] [include parts/welcome.inc] [para] This document is a guide for developers working on Tcllib, i.e. maintainers fixing bugs, extending the collection's functionality, etc. [para] Please read [list_begin enum] [enum] [term {Tcllib - How To Get The Sources}] and [enum] [term {Tcllib - The Installer's Guide}] [list_end] first, if that was not done already. [para] Here we assume that the sources are already available in a directory of your choice, and that you not only know how to build and install them, but also have all the necessary requisites to actually do so. The guide to the sources in particular also explains which source code management system is used, where to find it, how to set it up, etc. [comment {===================================================================}] [section Commitments] [subsection Contributor][include parts/d_contrib.inc] [subsection Maintainer][include parts/d_maintain.inc] [comment {===================================================================}] [section {Branching and Workflow}] [include parts/d_branchflow.inc]x [comment {===================================================================}] [section {Structural Overview}] [include parts/d_dirlayout.inc] [comment {===================================================================}] [section {Testsuite Tooling}] [include parts/d_testing.inc] [comment {===================================================================}] [section {Documentation Tooling}] [include parts/d_documentation.inc]x [comment {===================================================================}] [section {Notes On Writing A Testsuite}] [include parts/d_testwrite.inc]x [comment {===================================================================}] [section {Installation Tooling}] [include parts/d_installation.inc]x [comment {===================================================================}] [manpage_end] |
Added devdoc/tcllib_releasemgr.man.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | [comment {-*- tcl -*- doctools manpage}] [manpage_begin tcllib_releasemgr n 1] [titledesc {Tcllib - The Release Manager's Guide}] [description] [include parts/welcome.inc] [para] The audience of this document is the release manager for Tcllib, his or her deputies, and anybody else interested in the task of creating an official release of Tcllib for distribution. [para] Please read [term {Tcllib - How To Get The Sources}] first, if that was not done already. Here we assume that the sources are already available in a directory of your choice. [para] [comment {===================================================================}] [section Tools] [include parts/rm_tooling.inc] [comment {===================================================================}] [section Tasks] [comment {===================================================================}] [subsection {Start a release candidate}] [include parts/rm_start.inc] [comment {===================================================================}] [subsection {Ready the candidate}] [include parts/rm_work.inc] [comment {===================================================================}] [subsection {Make it official}] [include parts/rm_final.inc] [comment {===================================================================}] [subsection {Distribute the release}] [include parts/rm_distribute.inc] [manpage_end] |
Changes to embedded/index.md.
︙ | ︙ | |||
13 14 15 16 17 18 19 | <input type="text" name="s" size="40" autofocus> <input type="submit" value="Search Package Documentation"> </form> </center> ## Guides to Tcllib | | | > | 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | <input type="text" name="s" size="40" autofocus> <input type="submit" value="Search Package Documentation"> </form> </center> ## Guides to Tcllib * [Tcl Community - Kind Communication](www/tcllib/files/devdoc/tcl_community_communication.html) * [License](www/tcllib/files/devdoc/tcllib_license.html) * [How To Get The Sources](www/tcllib/files/devdoc/tcllib_sources.html) * [How To Build And Install Tcllib](www/tcllib/files/devdoc/tcllib_installer.html) * [The Developer's Guide](www/tcllib/files/devdoc/tcllib_devguide.html) * [The Release Manager's Guide](www/tcllib/files/devdoc/tcllib_releasemgr.html) ## Discussion & Contact Tcllib has two [mailing lists](https://sourceforge.net/p/tcllib/mailman/). One for notifications (commits, ticket changes), the other for general |
︙ | ︙ |
Added embedded/www/tcllib/files/devdoc/tcl_community_communication.html.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | <div class='fossil-doc' data-title='tcl_community_communication - '> <style> HTML { background: #FFFFFF; color: black; } BODY { background: #FFFFFF; color: black; } DIV.doctools { margin-left: 10%; margin-right: 10%; } DIV.doctools H1,DIV.doctools H2 { margin-left: -5%; } H1, H2, H3, H4 { margin-top: 1em; font-family: sans-serif; font-size: large; color: #005A9C; background: transparent; text-align: left; } H1.doctools_title { text-align: center; } UL,OL { margin-right: 0em; margin-top: 3pt; margin-bottom: 3pt; } UL LI { list-style: disc; } OL LI { list-style: decimal; } DT { padding-top: 1ex; } UL.doctools_toc,UL.doctools_toc UL, UL.doctools_toc UL UL { font: normal 12pt/14pt sans-serif; list-style: none; } LI.doctools_section, LI.doctools_subsection { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } PRE { display: block; font-family: monospace; white-space: pre; margin: 0%; padding-top: 0.5ex; padding-bottom: 0.5ex; padding-left: 1ex; padding-right: 1ex; width: 100%; } PRE.doctools_example { color: black; background: #f5dcb3; border: 1px solid black; } UL.doctools_requirements LI, UL.doctools_syntax LI { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } DIV.doctools_synopsis { color: black; background: #80ffff; border: 1px solid black; font-family: serif; margin-top: 1em; margin-bottom: 1em; } UL.doctools_syntax { margin-top: 1em; border-top: 1px solid black; } UL.doctools_requirements { margin-bottom: 1em; border-bottom: 1px solid black; } </style> <hr> [ <a href="../../../toc.html">Main Table Of Contents</a> | <a href="../../toc.html">Table Of Contents</a> | <a href="../../../index.html">Keyword Index</a> | <a href="../../../toc0.html">Categories</a> | <a href="../../../toc1.html">Modules</a> | <a href="../../../toc2.html">Applications</a> ] <hr> <div class="doctools"> <h1 class="doctools_title">tcl_community_communication(n) 1 tcllib ""</h1> <div id="name" class="doctools_section"><h2><a name="name">Name</a></h2> <p>tcl_community_communication - Tcl Community - Kind Communication</p> </div> <div id="toc" class="doctools_section"><h2><a name="toc">Table Of Contents</a></h2> <ul class="doctools_toc"> <li class="doctools_section"><a href="#toc">Table Of Contents</a></li> <li class="doctools_section"><a href="#section1">Description</a></li> </ul> </div> <div id="section1" class="doctools_section"><h2><a name="section1">Description</a></h2> </div> </div> |
Added embedded/www/tcllib/files/devdoc/tcllib_devguide.html.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 | <div class='fossil-doc' data-title='tcllib_devguide - '> <style> HTML { background: #FFFFFF; color: black; } BODY { background: #FFFFFF; color: black; } DIV.doctools { margin-left: 10%; margin-right: 10%; } DIV.doctools H1,DIV.doctools H2 { margin-left: -5%; } H1, H2, H3, H4 { margin-top: 1em; font-family: sans-serif; font-size: large; color: #005A9C; background: transparent; text-align: left; } H1.doctools_title { text-align: center; } UL,OL { margin-right: 0em; margin-top: 3pt; margin-bottom: 3pt; } UL LI { list-style: disc; } OL LI { list-style: decimal; } DT { padding-top: 1ex; } UL.doctools_toc,UL.doctools_toc UL, UL.doctools_toc UL UL { font: normal 12pt/14pt sans-serif; list-style: none; } LI.doctools_section, LI.doctools_subsection { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } PRE { display: block; font-family: monospace; white-space: pre; margin: 0%; padding-top: 0.5ex; padding-bottom: 0.5ex; padding-left: 1ex; padding-right: 1ex; width: 100%; } PRE.doctools_example { color: black; background: #f5dcb3; border: 1px solid black; } UL.doctools_requirements LI, UL.doctools_syntax LI { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } DIV.doctools_synopsis { color: black; background: #80ffff; border: 1px solid black; font-family: serif; margin-top: 1em; margin-bottom: 1em; } UL.doctools_syntax { margin-top: 1em; border-top: 1px solid black; } UL.doctools_requirements { margin-bottom: 1em; border-bottom: 1px solid black; } </style> <hr> [ <a href="../../../toc.html">Main Table Of Contents</a> | <a href="../../toc.html">Table Of Contents</a> | <a href="../../../index.html">Keyword Index</a> | <a href="../../../toc0.html">Categories</a> | <a href="../../../toc1.html">Modules</a> | <a href="../../../toc2.html">Applications</a> ] <hr> <div class="doctools"> <h1 class="doctools_title">tcllib_devguide(n) 1 tcllib ""</h1> <div id="name" class="doctools_section"><h2><a name="name">Name</a></h2> <p>tcllib_devguide - Tcllib - The Developer's Guide</p> </div> <div id="toc" class="doctools_section"><h2><a name="toc">Table Of Contents</a></h2> <ul class="doctools_toc"> <li class="doctools_section"><a href="#toc">Table Of Contents</a></li> <li class="doctools_section"><a href="#section1">Description</a></li> <li class="doctools_section"><a href="#section2">Commitments</a> <ul> <li class="doctools_subsection"><a href="#subsection1">Contributor</a></li> <li class="doctools_subsection"><a href="#subsection2">Maintainer</a></li> </ul> </li> <li class="doctools_section"><a href="#section3">Branching and Workflow</a></li> <li class="doctools_section"><a href="#section4">Structural Overview</a> <ul> <li class="doctools_subsection"><a href="#subsection3">Main Directories</a></li> <li class="doctools_subsection"><a href="#subsection4">More Directories</a></li> <li class="doctools_subsection"><a href="#subsection5">Top Files</a></li> <li class="doctools_subsection"><a href="#subsection6">File Types</a></li> </ul> </li> <li class="doctools_section"><a href="#section5">Testsuite Tooling</a> <ul> <li class="doctools_subsection"><a href="#subsection7">Invoke the testsuites of a specific module</a></li> <li class="doctools_subsection"><a href="#subsection8">Invoke the testsuites of all modules</a></li> <li class="doctools_subsection"><a href="#subsection9">Detailed Test Logs</a></li> <li class="doctools_subsection"><a href="#subsection10">Shell Selection</a></li> <li class="doctools_subsection"><a href="#subsection11">Help</a></li> </ul> </li> <li class="doctools_section"><a href="#section6">Documentation Tooling</a> <ul> <li class="doctools_subsection"><a href="#subsection12">Generate documentation for a specific module</a></li> <li class="doctools_subsection"><a href="#subsection13">Generate documentation for all modules</a></li> <li class="doctools_subsection"><a href="#subsection14">Available output formats, help</a></li> <li class="doctools_subsection"><a href="#subsection15">Validation without output</a></li> </ul> </li> <li class="doctools_section"><a href="#section7">Notes On Writing A Testsuite</a></li> <li class="doctools_section"><a href="#section8">Installation Tooling</a></li> </ul> </div> <div id="section1" class="doctools_section"><h2><a name="section1">Description</a></h2> <p>Welcome to Tcllib, the Tcl Standard Library. Note that Tcllib is not a package itself. It is a collection of (semi-independent) <i class="term"><a href="../../../index.html#tcl">Tcl</a></i> packages that provide utility functions useful to a large collection of Tcl programmers.</p> <p>This document is a guide for developers working on Tcllib, i.e. maintainers fixing bugs, extending the collection's functionality, etc.</p> <p>Please read</p> <ol class="doctools_enumerated"> <li><p><i class="term"><a href="tcllib_sources.html">Tcllib - How To Get The Sources</a></i> and</p></li> <li><p><i class="term"><a href="tcllib_installer.html">Tcllib - The Installer's Guide</a></i></p></li> </ol> <p>first, if that was not done already.</p> <p>Here we assume that the sources are already available in a directory of your choice, and that you not only know how to build and install them, but also have all the necessary requisites to actually do so. The guide to the sources in particular also explains which source code management system is used, where to find it, how to set it up, etc.</p> </div> <div id="section2" class="doctools_section"><h2><a name="section2">Commitments</a></h2> <div id="subsection1" class="doctools_subsection"><h3><a name="subsection1">Contributor</a></h3> <p>As a contributor to Tcllib you are committing yourself to:</p> <ol class="doctools_enumerated"> <li><p>Follow the guidelines laid down in <i class="term"><a href="tcl_community_communication.html">Tcl Community - Kind Communication</a></i></p></li> </ol> <p>Contributions are made by entering tickets into our tracker, providing patches, bundles or branches of code for inclusion, or posting to the Tcllib related mailing lists.</p> </div> <div id="subsection2" class="doctools_subsection"><h3><a name="subsection2">Maintainer</a></h3> <p>When contributing one or more packages for full inclusion into Tcllib you are committing yourself to</p> <ol class="doctools_enumerated"> <li><p>Follow the guidelines laid down in <i class="term"><a href="tcl_community_communication.html">Tcl Community - Kind Communication</a></i> (as any contributor)</p></li> <li><p>Maintenance of the new packages for a period of two years under the following rules, and responsibilities:</p> <ol class="doctools_enumerated"> <li><p>A maintainer may step down after the mandatory period as they see fit.</p></li> <li><p>A maintainer may step down before the end of the mandatory period, under the condition that a replacement maintainer is immediatel available and has agreed to serve the remainder of the period, plus their own mandatory period (see below).</p></li> <li><p>When stepping down without a replacement maintainer taking over the relevant packages have to be flagged as <b class="const">unmaintained</b>.</p></li> <li><p>When a replacement mantainer is brought in for a package it is (kept) marked as <b class="const">maintained</b> (again).</p> <p>A replacement maintainer is bound by the same rules as the original maintainer, except that the mandatory period of maintenance is shortened to one year.</p></li> <li><p>For any <b class="const">unmaintained</b> package a contributor interested in becoming its maintainer can become so by flagging them as <b class="const">maintained</b> with their name and contact information, committing themselves to the rules of a replacement maintainer (see previous).</p></li> <li><p>For any already <b class="const">maintained</b> package a contributor interested in becoming a co-maintainer can become so with the agreement of the existing maintainer(s), committing themselves to the rules of a replacement maintainer (see two above).</p></li> </ol> <p>The responsibilities as a maintainer include:</p> <ol class="doctools_enumerated"> <li><p>Watching Tcllib's ticket tracker for bugs, bug fixes, and feature requests related to the new packages.</p></li> <li><p>Reviewing the aforementioned tickets, rejecting or applying them</p></li> <li><p>Coordination and discussion with ticket submitter during the development and/or application of bug fixes.</p></li> </ol> </li> <li><p>Follow the <span class="sectref"><a href="#section3">Branching and Workflow</a></span> of this guide.</p></li> </ol> </div> </div> <div id="section3" class="doctools_section"><h2><a name="section3">Branching and Workflow</a></h2> <p>x</p> </div> <div id="section4" class="doctools_section"><h2><a name="section4">Structural Overview</a></h2> <div id="subsection3" class="doctools_subsection"><h3><a name="subsection3">Main Directories</a></h3> <p>The main directories in the Tcllib toplevel directory and of interest to a developer are:</p> <dl class="doctools_definitions"> <dt>"<b class="file">modules</b>"</dt> <dd><p>Each child directory represents one or more packages. In the case of the latter the packages are usually related in some way. Examples are "<b class="file">base64</b>", "<b class="file">math</b>", and "<b class="file">struct</b>", with loose (base64) to strong (math) relations between the packages in the directory.</p></dd> <dt>"<b class="file">apps</b>"</dt> <dd><p>This directory contains all the installable applications, with their documentation. Note that this directory is currently <em>not</em> split into sub-directories.</p></dd> <dt>"<b class="file">examples</b>"</dt> <dd><p>Each child directory "<b class="file">foo</b>" contains one or more example application for the packages in "<b class="file">modules/foo</b>". These examples are generally not polished enough to be considered for installation.</p></dd> </dl> </div> <div id="subsection4" class="doctools_subsection"><h3><a name="subsection4">More Directories</a></h3> <dl class="doctools_definitions"> <dt>"<b class="file">config</b>"</dt> <dd><p>This directory contains files supporting the unix build system, i.e. "<b class="file">configure</b>" and "<b class="file">Makefile.in</b>".</p></dd> <dt>"<b class="file">devdoc</b>"</dt> <dd><p>This directories contains the doctools sources for the global documentation, like this document and its sibling guides.</p></dd> <dt>"<b class="file">embedded</b>"</dt> <dd><p>This directory contains the entire documentation formatted for <i class="term"><a href="../../../index.html#html">HTML</a></i> and styled to properly mix into the web site generated by fossil for the repository.</p> <p>This is the documentation accessible from the Tcllib home directory, represented in the repository as "<b class="file">embedded/index.md</b>".</p></dd> <dt>"<b class="file">idoc</b>"</dt> <dd><p>This directory contains the entire documentation formatted for <i class="term"><a href="../../../index.html#nroff">nroff</a></i> and <i class="term"><a href="../../../index.html#html">HTML</a></i>, the latter without any styling. This is the documentation which will be installed.</p></dd> <dt>"<b class="file">support</b>"</dt> <dd><p>This directory contains the sources of internal packages and utilities used in the implementation of the "<b class="file">installer.tcl</b>" and "<b class="file">sak.tcl</b>" scripts/tools.</p></dd> </dl> </div> <div id="subsection5" class="doctools_subsection"><h3><a name="subsection5">Top Files</a></h3> <dl class="doctools_definitions"> <dt>"<b class="file">aclocal.m4</b>"</dt> <dd></dd> <dt>"<b class="file">configure</b>"</dt> <dd></dd> <dt>"<b class="file">configure.in</b>"</dt> <dd></dd> <dt>"<b class="file">Makefile.in</b>"</dt> <dd><p>These four files comprise the unix build system layered on top of the "<b class="file">installer.tcl</b>" script.</p></dd> <dt>"<b class="file">installer.tcl</b>"</dt> <dd><p>The Tcl-based installation script/tool.</p></dd> <dt>"<b class="file">project.shed</b>"</dt> <dd><p>Configuration file for <i class="term">Sean Wood</i>'s <b class="syscmd"><a href="../modules/practcl/practcl.html">PracTcl</a></b> buildsystem.</p></dd> <dt>"<b class="file">sak.tcl</b>"</dt> <dd><p>This is the main tool for developers and release managers, the <i class="term">Swiss Army Knife</i> of management operations on the collection.</p></dd> <dt>"<b class="file">ChangeLog</b>"</dt> <dd><p>The log of changes to the global support, when the sources were held in <i class="term"><a href="../../../index.html#cvs">CVS</a></i>. Not relevant any logner with the switch to the <i class="term">fossil</i> SCM.</p></dd> <dt>"<b class="file">license.terms</b>"</dt> <dd><p>The license in plain ASCII. See also <i class="term"><a href="tcllib_license.html">Tcllib - License</a></i> for the nicely formatted form. The text is identical.</p></dd> <dt>"<b class="file">README.md</b>"</dt> <dd></dd> <dt>"<b class="file">.github/CONTRIBUTING.md</b>"</dt> <dd></dd> <dt>"<b class="file">.github/ISSUE_TEMPLATE.md</b>"</dt> <dd></dd> <dt>"<b class="file">.github/PULL_REQUEST_TEMPLATE.md</b>"</dt> <dd><p>These markdown-formatted documents are used and shown by the github mirror of these sources, pointing people back to the official location and issue trackers.</p></dd> <dt>"<b class="file">DESCRIPTION.txt</b>"</dt> <dd></dd> <dt>"<b class="file">STATUS</b>"</dt> <dd></dd> <dt>"<b class="file">tcllib.spec</b>"</dt> <dd></dd> <dt>"<b class="file">tcllib.tap</b>"</dt> <dd></dd> <dt>"<b class="file">tcllib.yml</b>"</dt> <dd><p>????</p></dd> </dl> </div> <div id="subsection6" class="doctools_subsection"><h3><a name="subsection6">File Types</a></h3> <p>The most common file types, by file extension, are:</p> <dl class="doctools_definitions"> <dt>"<b class="file">.tcl</b>"</dt> <dd><p>Tcl code for a package, application, or example.</p></dd> <dt>"<b class="file">.man</b>"</dt> <dd><p>Doctools-formatted documentation, usually for a package.</p></dd> <dt>"<b class="file">.test</b>"</dt> <dd><p>Test suite for a package, or part of. Based on <b class="package">tcltest</b>.</p></dd> <dt>"<b class="file">.bench</b>"</dt> <dd><p>Performance benchmarks for a package, or part of. Based on "<b class="file">modules/bench</b>".</p></dd> <dt>"<b class="file">.pcx</b>"</dt> <dd><p>Syntax rules for <i class="term">TclDevKit</i>'s <b class="syscmd">tclchecker</b>. Using these rules allows the checker to validate the use of commands of a Tcllib package <b class="package">FOO</b> without having to scan the "<b class="file">.tcl</b>" files implementing it.</p></dd> </dl> </div> </div> <div id="section5" class="doctools_section"><h2><a name="section5">Testsuite Tooling</a></h2> <p>Testsuites in Tcllib are based on Tcl's standard test package <b class="package">tcltest</b>, plus utilities found in the directory "<b class="file">modules/devtools</b>"</p> <p>Tcllib developers invoke the suites through the <b class="cmd">test run</b> method of the "<b class="file">sak.tcl</b>" tool, with other methods of <b class="cmd"><a href="../../../index.html#test">test</a></b> providing management operations, for example setting a list of standard Tcl shells to use.</p> <div id="subsection7" class="doctools_subsection"><h3><a name="subsection7">Invoke the testsuites of a specific module</a></h3> <p>Invoke either</p> <pre class="doctools_example"> ./sak.tcl test run FOO </pre> <p>or</p> <pre class="doctools_example"> ./sak.tcl test run modules/FOO </pre> <p>to invoke the testsuites found in a specific module "<b class="file">FOO</b>".</p> </div> <div id="subsection8" class="doctools_subsection"><h3><a name="subsection8">Invoke the testsuites of all modules</a></h3> <p>Invoke the tool without a module name, i.e.</p> <pre class="doctools_example"> ./sak.tcl test run </pre> <p>to invoke the testsuites of all modules.</p> </div> <div id="subsection9" class="doctools_subsection"><h3><a name="subsection9">Detailed Test Logs</a></h3> <p>In all the previous examples the test runner will write a combination of progress display and testsuite log to the standard output, showing for each module only the tests that passed or failed and how many of each in a summary at the end.</p> <p>To get a detailed log, it is necessary to invoke the test runner with additional options.</p> <p>For one:</p> <pre class="doctools_example"> ./sak.tcl test run --log LOG FOO </pre> <p>While this shows the same short log on the terminal as before, it also writes a detailed log to the file "<b class="file">LOG.log</b>", and excerpts to other files ("<b class="file">LOG.summary</b>", "<b class="file">LOG.failures</b>", etc.).</p> <p>For two:</p> <pre class="doctools_example"> ./sak.tcl test run -v FOO </pre> <p>This writes the detailed log to the standard output, instead of the short log.</p> <p>Regardless of form, the detailed log contains a list of all test cases executed, which failed, and how they failed (expected versus actual results).</p> </div> <div id="subsection10" class="doctools_subsection"><h3><a name="subsection10">Shell Selection</a></h3> <p>By default the test runner will use all the Tcl shells specified via <b class="cmd">test add</b> to invoke the specified testsuites, if any. If no such are specified it will fall back to the Tcl shell used to ran the tool itself.</p> <p>Use option <b class="option">--shell</b> to explicitly specify the Tcl shell to use, like</p> <pre class="doctools_example"> ./sak.tcl test run --shell /path/to/tclsh ... </pre> </div> <div id="subsection11" class="doctools_subsection"><h3><a name="subsection11">Help</a></h3> <p>Invoke the tool as</p> <pre class="doctools_example"> ./sak.tcl help test </pre> <p>to see the detailed help for all methods of <b class="cmd"><a href="../../../index.html#test">test</a></b>, and the associated options.</p> </div> </div> <div id="section6" class="doctools_section"><h2><a name="section6">Documentation Tooling</a></h2> <p>The standard format used for documentation of packages and other things in Tcllib is <i class="term"><a href="../../../index.html#doctools">doctools</a></i>. Its supporting packages are a part of Tcllib, see the directories "<b class="file">modules/doctools</b>" and "<b class="file">modules/dtplite</b>". The latter is an application package, with the actual application "<b class="file">apps/dtplite</b>" a light wrapper around it.</p> <p>Tcllib developers gain access to these through the <b class="cmd">doc</b> method of the "<b class="file">sak.tcl</b>" tool, another (internal) wrapper around the "<b class="file">modules/dptlite</b>" application package.</p> <div id="subsection12" class="doctools_subsection"><h3><a name="subsection12">Generate documentation for a specific module</a></h3> <p>Invoke either</p> <pre class="doctools_example"> ./sak.tcl doc html FOO </pre> <p>or</p> <pre class="doctools_example"> ./sak.tcl doc html modules/FOO </pre> <p>to generate HTML for the documentation found in the module "<b class="file">FOO</b>". Instead of <b class="const">html</b> any other supported format can be used here, of course.</p> <p>The generated formatted documentation will be placed into a directory "<b class="file">doc</b>" in the current working directory.</p> </div> <div id="subsection13" class="doctools_subsection"><h3><a name="subsection13">Generate documentation for all modules</a></h3> <p>Invoke the tool without a module name, i.e.</p> <pre class="doctools_example"> ./sak.tcl doc html </pre> <p>to generate HTML for the documentation found in all modules. Instead of <b class="const">html</b> any other supported format can be used here, of course.</p> <p>The generated formatted documentation will be placed into a directory "<b class="file">doc</b>" in the current working directory.</p> </div> <div id="subsection14" class="doctools_subsection"><h3><a name="subsection14">Available output formats, help</a></h3> <p>Invoke the tool as</p> <pre class="doctools_example"> ./sak.tcl help doc </pre> <p>to see the entire set of supported output formats which can be generated.</p> </div> <div id="subsection15" class="doctools_subsection"><h3><a name="subsection15">Validation without output</a></h3> <p>Note the special format <b class="const">validate</b>.</p> <p>Using this value as the name of the format to generate forces the tool to simply check that the documentation is syntactically correct, without generating actual output.</p> <p>Invoke it as either</p> <pre class="doctools_example"> ./sak.tcl doc validate (modules/)FOO </pre> <p>or</p> <pre class="doctools_example"> ./sak.tcl doc validate </pre> <p>to either check the packages of a specific module or check all of them. x</p> </div> </div> <div id="section7" class="doctools_section"><h2><a name="section7">Notes On Writing A Testsuite</a></h2> <p>x</p> </div> <div id="section8" class="doctools_section"><h2><a name="section8">Installation Tooling</a></h2> <p>x</p> </div> </div> |
Changes to embedded/www/tcllib/files/devdoc/tcllib_installer.html.
︙ | ︙ | |||
125 126 127 128 129 130 131 | packages that provide utility functions useful to a large collection of Tcl programmers.</p> <p>The audience of this document is anyone wishing to build the packages, for either themselves, or others.</p> <p>For a developer intending to extend or modify the packages we additionally provide</p> <ol class="doctools_enumerated"> | | | 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | packages that provide utility functions useful to a large collection of Tcl programmers.</p> <p>The audience of this document is anyone wishing to build the packages, for either themselves, or others.</p> <p>For a developer intending to extend or modify the packages we additionally provide</p> <ol class="doctools_enumerated"> <li><p><i class="term"><a href="tcllib_devguide.html">Tcllib - The Developer's Guide</a></i>.</p></li> </ol> <p>Please read <i class="term"><a href="tcllib_sources.html">Tcllib - How To Get The Sources</a></i> first, if that was not done already. Here we assume that the sources are already available in a directory of your choice.</p> </div> <div id="section2" class="doctools_section"><h2><a name="section2">Requisites</a></h2> <p>Before Tcllib can be build and used a number of requisites must be installed. |
︙ | ︙ |
Added embedded/www/tcllib/files/devdoc/tcllib_releasemgr.html.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 | <div class='fossil-doc' data-title='tcllib_releasemgr - '> <style> HTML { background: #FFFFFF; color: black; } BODY { background: #FFFFFF; color: black; } DIV.doctools { margin-left: 10%; margin-right: 10%; } DIV.doctools H1,DIV.doctools H2 { margin-left: -5%; } H1, H2, H3, H4 { margin-top: 1em; font-family: sans-serif; font-size: large; color: #005A9C; background: transparent; text-align: left; } H1.doctools_title { text-align: center; } UL,OL { margin-right: 0em; margin-top: 3pt; margin-bottom: 3pt; } UL LI { list-style: disc; } OL LI { list-style: decimal; } DT { padding-top: 1ex; } UL.doctools_toc,UL.doctools_toc UL, UL.doctools_toc UL UL { font: normal 12pt/14pt sans-serif; list-style: none; } LI.doctools_section, LI.doctools_subsection { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } PRE { display: block; font-family: monospace; white-space: pre; margin: 0%; padding-top: 0.5ex; padding-bottom: 0.5ex; padding-left: 1ex; padding-right: 1ex; width: 100%; } PRE.doctools_example { color: black; background: #f5dcb3; border: 1px solid black; } UL.doctools_requirements LI, UL.doctools_syntax LI { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } DIV.doctools_synopsis { color: black; background: #80ffff; border: 1px solid black; font-family: serif; margin-top: 1em; margin-bottom: 1em; } UL.doctools_syntax { margin-top: 1em; border-top: 1px solid black; } UL.doctools_requirements { margin-bottom: 1em; border-bottom: 1px solid black; } </style> <hr> [ <a href="../../../toc.html">Main Table Of Contents</a> | <a href="../../toc.html">Table Of Contents</a> | <a href="../../../index.html">Keyword Index</a> | <a href="../../../toc0.html">Categories</a> | <a href="../../../toc1.html">Modules</a> | <a href="../../../toc2.html">Applications</a> ] <hr> <div class="doctools"> <h1 class="doctools_title">tcllib_releasemgr(n) 1 tcllib ""</h1> <div id="name" class="doctools_section"><h2><a name="name">Name</a></h2> <p>tcllib_releasemgr - Tcllib - The Release Manager's Guide</p> </div> <div id="toc" class="doctools_section"><h2><a name="toc">Table Of Contents</a></h2> <ul class="doctools_toc"> <li class="doctools_section"><a href="#toc">Table Of Contents</a></li> <li class="doctools_section"><a href="#section1">Description</a></li> <li class="doctools_section"><a href="#section2">Tools</a></li> <li class="doctools_section"><a href="#section3">Tasks</a> <ul> <li class="doctools_subsection"><a href="#subsection1">Start a release candidate</a></li> <li class="doctools_subsection"><a href="#subsection2">Ready the candidate</a></li> <li class="doctools_subsection"><a href="#subsection3">Make it official</a></li> <li class="doctools_subsection"><a href="#subsection4">Distribute the release</a></ul> </li> </ul> </div> <div id="section1" class="doctools_section"><h2><a name="section1">Description</a></h2> <p>Welcome to Tcllib, the Tcl Standard Library. Note that Tcllib is not a package itself. It is a collection of (semi-independent) <i class="term"><a href="../../../index.html#tcl">Tcl</a></i> packages that provide utility functions useful to a large collection of Tcl programmers.</p> <p>The audience of this document is the release manager for Tcllib, his or her deputies, and anybody else interested in the task of creating an official release of Tcllib for distribution.</p> <p>Please read <i class="term"><a href="tcllib_sources.html">Tcllib - How To Get The Sources</a></i> first, if that was not done already. Here we assume that the sources are already available in a directory of your choice.</p> </div> <div id="section2" class="doctools_section"><h2><a name="section2">Tools</a></h2> <p>The "<b class="file">sak.tcl</b>" script in the toplevel directory of a Tcllib checkout is the one tool used by the release manager to perform its <span class="sectref"><a href="#section3">Tasks</a></span>.</p> <p>The main commands to be used are</p> <pre class="doctools_example"> sak.tcl validate sak.tcl test run sak.tcl review sak.tcl readme sak.tcl localdoc sak.tcl release </pre> <p>More detail will be provided in the explanations of the various <span class="sectref"><a href="#section3">Tasks</a></span>.</p> </div> <div id="section3" class="doctools_section"><h2><a name="section3">Tasks</a></h2> <div id="subsection1" class="doctools_subsection"><h3><a name="subsection1">Start a release candidate</a></h3> <p>todo: open a candidate for release</p> </div> <div id="subsection2" class="doctools_subsection"><h3><a name="subsection2">Ready the candidate</a></h3> <p>todo: test, validate and check that the candidate is worthy of release fix testsuites, possibly fix packages, documentation regenerate docs coordinate with package maintainers wrt fixes big thing: going over the packages, classify changes since last release to generate a nice readme.</p> </div> <div id="subsection3" class="doctools_subsection"><h3><a name="subsection3">Make it official</a></h3> <p>todo: finalize release, make candidate official</p> </div> <div id="subsection4" class="doctools_subsection"><h3><a name="subsection4">Distribute the release</a></h3> <p>With the release made it has to be published and the world notified of its existence.</p> <ol class="doctools_enumerated"> <li><p>Create a proper fossil event for the release, via <a href="http://core.tcl-lang.org/tcllib/eventedit">http://core.tcl-lang.org/tcllib/eventedit</a>.</p> <p>An <a href="http://core.tcl-lang.org/tcllib/event/dac0ddcd2e990234143196b4dc438fe01e7b9817">existing event</a> should be used as template.</p></li> <li><p>Update a number of web locations:</p> <ol class="doctools_enumerated"> <li><p><a href="http://core.tcl-lang.org/tcllib/doc/trunk/embedded/index.md">Home page</a></p></li> <li><p><a href="http://core.tcl-lang.org/tcllib/wiki?name=Downloads">Downloads</a></p></li> <li><p><a href="http://core.tcl-lang.org/tcllib/wiki?name=Past+Releases">Past Releases</a></p></li> <li><p><a href="http://www.tcl-lang.org/home/release.txt">http://www.tcl-lang.org/home/release.txt</a></p></li> <li><p><a href="http://www.tcl-lang.org/software/tcllib/*.tml">http://www.tcl-lang.org/software/tcllib/*.tml</a></p></li> <li><p><a href="http://wiki.tcl-lang.org/1246">http://wiki.tcl-lang.org/1246</a></p></li> </ol> <p>The first location maps to the file "<b class="file">embedded/index.md</b>" in the repository itself, as such it can edited as part of the release process. This is where reference to the new fossil event is added, as the new current release.</p> <p>The next two locations are in the fossil tcllib wiki and require admin or wiki write permissions for <a href="http://core.tcl-lang.org/tcllib">http://core.tcl-lang.org/tcllib</a>.</p> <p>The last two locations require ssh access to <a href="http://www.tcl-lang.org">http://www.tcl-lang.org</a> and permission to edit files in the web area.</p></li> <li><p>***TODO*** mailing lists and other places to send notes to.</p></li> </ol> </div> </div> </div> |
Changes to embedded/www/tcllib/files/devdoc/tcllib_sources.html.
︙ | ︙ | |||
119 120 121 122 123 124 125 | of Tcl programmers.</p> <p>The audience of this document is anyone wishing to either have just a look at Tcllib's source code, or build the packages, or to extend and modify them.</p> <p>For builders and developers we additionally provide</p> <ol class="doctools_enumerated"> <li><p><i class="term"><a href="tcllib_installer.html">Tcllib - The Installer's Guide</a></i>.</p></li> | | | 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 | of Tcl programmers.</p> <p>The audience of this document is anyone wishing to either have just a look at Tcllib's source code, or build the packages, or to extend and modify them.</p> <p>For builders and developers we additionally provide</p> <ol class="doctools_enumerated"> <li><p><i class="term"><a href="tcllib_installer.html">Tcllib - The Installer's Guide</a></i>.</p></li> <li><p><i class="term"><a href="tcllib_devguide.html">Tcllib - The Developer's Guide</a></i>.</p></li> </ol> <p>respectively.</p> </div> <div id="section2" class="doctools_section"><h2><a name="section2">Source Location</a></h2> <p>The official repository for Tcllib can be found at <a href="http://core.tcl-lang.org/tcllib">http://core.tcl-lang.org/tcllib</a></p> </div> |
︙ | ︙ |
Changes to embedded/www/tcllib/toc.html.
︙ | ︙ | |||
1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 | <td class="#doctools_tocright">Space insertation and removal</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcl_transform_zlib'><a href="files/modules/virtchannel_transform/tcllib_zlib.html">tcl::transform::zlib</a></td> <td class="#doctools_tocright">zlib (de)compression</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcldes'><a href="files/modules/des/tcldes.html">tclDES</a></td> <td class="#doctools_tocright">Implementation of the DES and triple-DES ciphers</td> </tr> | > > > > | | > > > > > > > > | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 | <td class="#doctools_tocright">Space insertation and removal</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcl_transform_zlib'><a href="files/modules/virtchannel_transform/tcllib_zlib.html">tcl::transform::zlib</a></td> <td class="#doctools_tocright">zlib (de)compression</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcl_community_communication'><a href="files/devdoc/tcl_community_communication.html">tcl_community_communication</a></td> <td class="#doctools_tocright">Tcl Community - Kind Communication</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcldes'><a href="files/modules/des/tcldes.html">tclDES</a></td> <td class="#doctools_tocright">Implementation of the DES and triple-DES ciphers</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcldesjr'><a href="files/modules/des/tcldesjr.html">tclDESjr</a></td> <td class="#doctools_tocright">Implementation of the DES and triple-DES ciphers</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcldocstrip'><a href="files/apps/tcldocstrip.html">tcldocstrip</a></td> <td class="#doctools_tocright">Tcl-based Docstrip Processor</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcllib_devguide'><a href="files/devdoc/tcllib_devguide.html">tcllib_devguide</a></td> <td class="#doctools_tocright">Tcllib - The Developer's Guide</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcllib_install_guide'><a href="files/devdoc/tcllib_installer.html">tcllib_install_guide</a></td> <td class="#doctools_tocright">Tcllib - The Installer's Guide</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcllib_ip'><a href="files/modules/dns/tcllib_ip.html">tcllib_ip</a></td> <td class="#doctools_tocright">IPv4 and IPv6 address manipulation</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcllib_license'><a href="files/devdoc/tcllib_license.html">tcllib_license</a></td> <td class="#doctools_tocright">Tcllib - License</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcllib_releasemgr'><a href="files/devdoc/tcllib_releasemgr.html">tcllib_releasemgr</a></td> <td class="#doctools_tocright">Tcllib - The Release Manager's Guide</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcllib_sources'><a href="files/devdoc/tcllib_sources.html">tcllib_sources</a></td> <td class="#doctools_tocright">Tcllib - How To Get The Sources</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tclrep_machineparameters'><a href="files/modules/math/machineparameters.html">tclrep/machineparameters</a></td> <td class="#doctools_tocright">Compute double precision machine parameters.</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tepam'><a href="files/modules/tepam/tepam_introduction.html">tepam</a></td> <td class="#doctools_tocright">An introduction into TEPAM, Tcl's Enhanced Procedure and Argument Manager</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tepam_argument_dialogbox'><a href="files/modules/tepam/tepam_argument_dialogbox.html">tepam::argument_dialogbox</a></td> <td class="#doctools_tocright">TEPAM argument_dialogbox, reference manual</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tepam_doc_gen'><a href="files/modules/tepam/tepam_doc_gen.html">tepam::doc_gen</a></td> <td class="#doctools_tocright">TEPAM DOC Generation, reference manual</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tepam_procedure'><a href="files/modules/tepam/tepam_procedure.html">tepam::procedure</a></td> <td class="#doctools_tocright">TEPAM procedure, reference manual</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term'><a href="files/modules/term/term.html">term</a></td> <td class="#doctools_tocright">General terminal control</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_ansi_code'><a href="files/modules/term/ansi_code.html">term::ansi::code</a></td> <td class="#doctools_tocright">Helper for control sequences</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_ansi_code_attr'><a href="files/modules/term/ansi_cattr.html">term::ansi::code::attr</a></td> <td class="#doctools_tocright">ANSI attribute sequences</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_ansi_code_ctrl'><a href="files/modules/term/ansi_cctrl.html">term::ansi::code::ctrl</a></td> <td class="#doctools_tocright">ANSI control sequences</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_ansi_code_macros'><a href="files/modules/term/ansi_cmacros.html">term::ansi::code::macros</a></td> <td class="#doctools_tocright">Macro sequences</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_ansi_ctrl_unix'><a href="files/modules/term/ansi_ctrlu.html">term::ansi::ctrl::unix</a></td> <td class="#doctools_tocright">Control operations and queries</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_ansi_send'><a href="files/modules/term/ansi_send.html">term::ansi::send</a></td> <td class="#doctools_tocright">Output of ANSI control sequences to terminals</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_interact_menu'><a href="files/modules/term/imenu.html">term::interact::menu</a></td> <td class="#doctools_tocright">Terminal widget, menu</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_interact_pager'><a href="files/modules/term/ipager.html">term::interact::pager</a></td> <td class="#doctools_tocright">Terminal widget, paging</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_receive'><a href="files/modules/term/receive.html">term::receive</a></td> <td class="#doctools_tocright">General input from terminals</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_receive_bind'><a href="files/modules/term/term_bind.html">term::receive::bind</a></td> <td class="#doctools_tocright">Keyboard dispatch from terminals</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_send'><a href="files/modules/term/term_send.html">term::send</a></td> <td class="#doctools_tocright">General output to terminals</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='textutil'><a href="files/modules/textutil/textutil.html">textutil</a></td> <td class="#doctools_tocright">Procedures to manipulate texts and strings.</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='textutil_adjust'><a href="files/modules/textutil/adjust.html">textutil::adjust</a></td> <td class="#doctools_tocright">Procedures to adjust, indent, and undent paragraphs</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='textutil_expander'><a href="files/modules/textutil/expander.html">textutil::expander</a></td> <td class="#doctools_tocright">Procedures to process templates and expand text.</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='textutil_repeat'><a href="files/modules/textutil/repeat.html">textutil::repeat</a></td> <td class="#doctools_tocright">Procedures to repeat strings.</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='textutil_split'><a href="files/modules/textutil/textutil_split.html">textutil::split</a></td> <td class="#doctools_tocright">Procedures to split texts</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='textutil_string'><a href="files/modules/textutil/textutil_string.html">textutil::string</a></td> <td class="#doctools_tocright">Procedures to manipulate texts and strings.</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='textutil_tabify'><a href="files/modules/textutil/tabify.html">textutil::tabify</a></td> <td class="#doctools_tocright">Procedures to (un)tabify strings</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='textutil_trim'><a href="files/modules/textutil/trim.html">textutil::trim</a></td> <td class="#doctools_tocright">Procedures to trim strings</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='throw'><a href="files/modules/try/tcllib_throw.html">throw</a></td> <td class="#doctools_tocright">throw - Throw an error exception with a message</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tie'><a href="files/modules/tie/tie_std.html">tie</a></td> <td class="#doctools_tocright">Array persistence, standard data sources</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tie'><a href="files/modules/tie/tie.html">tie</a></td> <td class="#doctools_tocright">Array persistence</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tiff'><a href="files/modules/tiff/tiff.html">tiff</a></td> <td class="#doctools_tocright">TIFF reading, writing, and querying and manipulation of meta data</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tool'><a href="files/modules/httpd/httpd.html">tool</a></td> <td class="#doctools_tocright">A TclOO and coroutine based web server</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tool'><a href="files/modules/tool/tool.html">tool</a></td> <td class="#doctools_tocright">TclOO Library (TOOL) Framework</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tool_dict_ensemble'><a href="files/modules/tool/tool_dict_ensemble.html">tool::dict_ensemble</a></td> <td class="#doctools_tocright">Dictionary Tools</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='transfer_connect'><a href="files/modules/transfer/connect.html">transfer::connect</a></td> <td class="#doctools_tocright">Connection setup</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='transfer_copy'><a href="files/modules/transfer/copyops.html">transfer::copy</a></td> <td class="#doctools_tocright">Data transfer foundation</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='transfer_copy_queue'><a href="files/modules/transfer/tqueue.html">transfer::copy::queue</a></td> <td class="#doctools_tocright">Queued transfers</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='transfer_data_destination'><a href="files/modules/transfer/ddest.html">transfer::data::destination</a></td> <td class="#doctools_tocright">Data destination</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='transfer_data_source'><a href="files/modules/transfer/dsource.html">transfer::data::source</a></td> <td class="#doctools_tocright">Data source</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='transfer_receiver'><a href="files/modules/transfer/receiver.html">transfer::receiver</a></td> <td class="#doctools_tocright">Data source</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='transfer_transmitter'><a href="files/modules/transfer/transmitter.html">transfer::transmitter</a></td> <td class="#doctools_tocright">Data source</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='treeql'><a href="files/modules/treeql/treeql.html">treeql</a></td> <td class="#doctools_tocright">Query tree objects</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='try'><a href="files/modules/try/tcllib_try.html">try</a></td> <td class="#doctools_tocright">try - Trap and process errors and exceptions</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='udpcluster'><a href="files/modules/udpcluster/udpcluster.html">udpcluster</a></td> <td class="#doctools_tocright">UDP Peer-to-Peer cluster</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='uevent'><a href="files/modules/uev/uevent.html">uevent</a></td> <td class="#doctools_tocright">User events</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='uevent_onidle'><a href="files/modules/uev/uevent_onidle.html">uevent::onidle</a></td> <td class="#doctools_tocright">Request merging and deferal to idle time</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='unicode'><a href="files/modules/stringprep/unicode.html">unicode</a></td> <td class="#doctools_tocright">Implementation of Unicode normalization</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='unicode_data'><a href="files/modules/stringprep/unicode_data.html">unicode::data</a></td> <td class="#doctools_tocright">unicode data tables, generated, internal</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='units'><a href="files/modules/units/units.html">units</a></td> <td class="#doctools_tocright">unit conversion</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='uri'><a href="files/modules/uri/uri.html">uri</a></td> <td class="#doctools_tocright">URI utilities</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='uri_urn'><a href="files/modules/uri/urn-scheme.html">uri_urn</a></td> <td class="#doctools_tocright">URI utilities, URN scheme</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='uuencode'><a href="files/modules/base64/uuencode.html">uuencode</a></td> <td class="#doctools_tocright">UU-encode/decode binary data</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='uuid'><a href="files/modules/uuid/uuid.html">uuid</a></td> <td class="#doctools_tocright">UUID generation and comparison</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_common'><a href="files/modules/valtype/valtype_common.html">valtype::common</a></td> <td class="#doctools_tocright">Validation, common code</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_creditcard_amex'><a href="files/modules/valtype/cc_amex.html">valtype::creditcard::amex</a></td> <td class="#doctools_tocright">Validation for AMEX creditcard number</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_creditcard_discover'><a href="files/modules/valtype/cc_discover.html">valtype::creditcard::discover</a></td> <td class="#doctools_tocright">Validation for Discover creditcard number</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_creditcard_mastercard'><a href="files/modules/valtype/cc_mastercard.html">valtype::creditcard::mastercard</a></td> <td class="#doctools_tocright">Validation for Mastercard creditcard number</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_creditcard_visa'><a href="files/modules/valtype/cc_visa.html">valtype::creditcard::visa</a></td> <td class="#doctools_tocright">Validation for VISA creditcard number</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_gs1_ean13'><a href="files/modules/valtype/ean13.html">valtype::gs1::ean13</a></td> <td class="#doctools_tocright">Validation for EAN13</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_iban'><a href="files/modules/valtype/iban.html">valtype::iban</a></td> <td class="#doctools_tocright">Validation for IBAN</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_imei'><a href="files/modules/valtype/imei.html">valtype::imei</a></td> <td class="#doctools_tocright">Validation for IMEI</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_isbn'><a href="files/modules/valtype/isbn.html">valtype::isbn</a></td> <td class="#doctools_tocright">Validation for ISBN</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_luhn'><a href="files/modules/valtype/luhn.html">valtype::luhn</a></td> <td class="#doctools_tocright">Validation for plain number with a LUHN checkdigit</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_luhn5'><a href="files/modules/valtype/luhn5.html">valtype::luhn5</a></td> <td class="#doctools_tocright">Validation for plain number with a LUHN5 checkdigit</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_usnpi'><a href="files/modules/valtype/usnpi.html">valtype::usnpi</a></td> <td class="#doctools_tocright">Validation for USNPI</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_verhoeff'><a href="files/modules/valtype/verhoeff.html">valtype::verhoeff</a></td> <td class="#doctools_tocright">Validation for plain number with a VERHOEFF checkdigit</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='websocket'><a href="files/modules/websocket/websocket.html">websocket</a></td> <td class="#doctools_tocright">Tcl implementation of the websocket protocol</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='wip'><a href="files/modules/wip/wip.html">wip</a></td> <td class="#doctools_tocright">Word Interpreter</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='xsxp'><a href="files/modules/amazon-s3/xsxp.html">xsxp</a></td> <td class="#doctools_tocright">eXtremely Simple Xml Parser</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='yaml'><a href="files/modules/yaml/yaml.html">yaml</a></td> <td class="#doctools_tocright">YAML Format Encoder/Decoder</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='yencode'><a href="files/modules/base64/yencode.html">yencode</a></td> <td class="#doctools_tocright">Y-encode/decode binary data</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='zipfile_decode'><a href="files/modules/zip/decode.html">zipfile::decode</a></td> <td class="#doctools_tocright">Access to zip archives</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='zipfile_encode'><a href="files/modules/zip/encode.html">zipfile::encode</a></td> <td class="#doctools_tocright">Generation of zip archives</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='zipfile_mkzip'><a href="files/modules/zip/mkzip.html">zipfile::mkzip</a></td> <td class="#doctools_tocright">Build a zip archive</td> </tr> </table> </dl><hr> |
Added idoc/man/files/devdoc/tcl_community_communication.n.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 | '\" '\" Generated from file 'tcl_community_communication\&.man' by tcllib/doctools with format 'nroff' '\" .TH "tcl_community_communication" n 1 tcllib "" .\" The -*- nroff -*- definitions below are for supplemental macros used .\" in Tcl/Tk manual entries. .\" .\" .AP type name in/out ?indent? .\" Start paragraph describing an argument to a library procedure. .\" type is type of argument (int, etc.), in/out is either "in", "out", .\" or "in/out" to describe whether procedure reads or modifies arg, .\" and indent is equivalent to second arg of .IP (shouldn't ever be .\" needed; use .AS below instead) .\" .\" .AS ?type? ?name? .\" Give maximum sizes of arguments for setting tab stops. Type and .\" name are examples of largest possible arguments that will be passed .\" to .AP later. If args are omitted, default tab stops are used. .\" .\" .BS .\" Start box enclosure. From here until next .BE, everything will be .\" enclosed in one large box. .\" .\" .BE .\" End of box enclosure. .\" .\" .CS .\" Begin code excerpt. .\" .\" .CE .\" End code excerpt. .\" .\" .VS ?version? ?br? .\" Begin vertical sidebar, for use in marking newly-changed parts .\" of man pages. The first argument is ignored and used for recording .\" the version when the .VS was added, so that the sidebars can be .\" found and removed when they reach a certain age. If another argument .\" is present, then a line break is forced before starting the sidebar. .\" .\" .VE .\" End of vertical sidebar. .\" .\" .DS .\" Begin an indented unfilled display. .\" .\" .DE .\" End of indented unfilled display. .\" .\" .SO ?manpage? .\" Start of list of standard options for a Tk widget. The manpage .\" argument defines where to look up the standard options; if .\" omitted, defaults to "options". The options follow on successive .\" lines, in three columns separated by tabs. .\" .\" .SE .\" End of list of standard options for a Tk widget. .\" .\" .OP cmdName dbName dbClass .\" Start of description of a specific option. cmdName gives the .\" option's name as specified in the class command, dbName gives .\" the option's name in the option database, and dbClass gives .\" the option's class in the option database. .\" .\" .UL arg1 arg2 .\" Print arg1 underlined, then print arg2 normally. .\" .\" .QW arg1 ?arg2? .\" Print arg1 in quotes, then arg2 normally (for trailing punctuation). .\" .\" .PQ arg1 ?arg2? .\" Print an open parenthesis, arg1 in quotes, then arg2 normally .\" (for trailing punctuation) and then a closing parenthesis. .\" .\" # Set up traps and other miscellaneous stuff for Tcl/Tk man pages. .if t .wh -1.3i ^B .nr ^l \n(.l .ad b .\" # Start an argument description .de AP .ie !"\\$4"" .TP \\$4 .el \{\ . ie !"\\$2"" .TP \\n()Cu . el .TP 15 .\} .ta \\n()Au \\n()Bu .ie !"\\$3"" \{\ \&\\$1 \\fI\\$2\\fP (\\$3) .\".b .\} .el \{\ .br .ie !"\\$2"" \{\ \&\\$1 \\fI\\$2\\fP .\} .el \{\ \&\\fI\\$1\\fP .\} .\} .. .\" # define tabbing values for .AP .de AS .nr )A 10n .if !"\\$1"" .nr )A \\w'\\$1'u+3n .nr )B \\n()Au+15n .\" .if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n .nr )C \\n()Bu+\\w'(in/out)'u+2n .. .AS Tcl_Interp Tcl_CreateInterp in/out .\" # BS - start boxed text .\" # ^y = starting y location .\" # ^b = 1 .de BS .br .mk ^y .nr ^b 1u .if n .nf .if n .ti 0 .if n \l'\\n(.lu\(ul' .if n .fi .. .\" # BE - end boxed text (draw box now) .de BE .nf .ti 0 .mk ^t .ie n \l'\\n(^lu\(ul' .el \{\ .\" Draw four-sided box normally, but don't draw top of .\" box if the box started on an earlier page. .ie !\\n(^b-1 \{\ \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul' .\} .el \}\ \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul' .\} .\} .fi .br .nr ^b 0 .. .\" # VS - start vertical sidebar .\" # ^Y = starting y location .\" # ^v = 1 (for troff; for nroff this doesn't matter) .de VS .if !"\\$2"" .br .mk ^Y .ie n 'mc \s12\(br\s0 .el .nr ^v 1u .. .\" # VE - end of vertical sidebar .de VE .ie n 'mc .el \{\ .ev 2 .nf .ti 0 .mk ^t \h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n' .sp -1 .fi .ev .\} .nr ^v 0 .. .\" # Special macro to handle page bottom: finish off current .\" # box/sidebar if in box/sidebar mode, then invoked standard .\" # page bottom macro. .de ^B .ev 2 'ti 0 'nf .mk ^t .if \\n(^b \{\ .\" Draw three-sided box if this is the box's first page, .\" draw two sides but no top otherwise. .ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c .el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c .\} .if \\n(^v \{\ .nr ^x \\n(^tu+1v-\\n(^Yu \kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c .\} .bp 'fi .ev .if \\n(^b \{\ .mk ^y .nr ^b 2 .\} .if \\n(^v \{\ .mk ^Y .\} .. .\" # DS - begin display .de DS .RS .nf .sp .. .\" # DE - end display .de DE .fi .RE .sp .. .\" # SO - start of list of standard options .de SO 'ie '\\$1'' .ds So \\fBoptions\\fR 'el .ds So \\fB\\$1\\fR .SH "STANDARD OPTIONS" .LP .nf .ta 5.5c 11c .ft B .. .\" # SE - end of list of standard options .de SE .fi .ft R .LP See the \\*(So manual entry for details on the standard options. .. .\" # OP - start of full description for a single option .de OP .LP .nf .ta 4c Command-Line Name: \\fB\\$1\\fR Database Name: \\fB\\$2\\fR Database Class: \\fB\\$3\\fR .fi .IP .. .\" # CS - begin code excerpt .de CS .RS .nf .ta .25i .5i .75i 1i .. .\" # CE - end code excerpt .de CE .fi .RE .. .\" # UL - underline word .de UL \\$1\l'|0\(ul'\\$2 .. .\" # QW - apply quotation marks to word .de QW .ie '\\*(lq'"' ``\\$1''\\$2 .\"" fix emacs highlighting .el \\*(lq\\$1\\*(rq\\$2 .. .\" # PQ - apply parens and quotation marks to word .de PQ .ie '\\*(lq'"' (``\\$1''\\$2)\\$3 .\"" fix emacs highlighting .el (\\*(lq\\$1\\*(rq\\$2)\\$3 .. .\" # QR - quoted range .de QR .ie '\\*(lq'"' ``\\$1''\\-``\\$2''\\$3 .\"" fix emacs highlighting .el \\*(lq\\$1\\*(rq\\-\\*(lq\\$2\\*(rq\\$3 .. .\" # MT - "empty" string .de MT .QW "" .. .BS .SH NAME tcl_community_communication \- Tcl Community - Kind Communication .SH DESCRIPTION |
Added idoc/man/files/devdoc/tcllib_devguide.n.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 | '\" '\" Generated from file 'tcllib_devguide\&.man' by tcllib/doctools with format 'nroff' '\" .TH "tcllib_devguide" n 1 tcllib "" .\" The -*- nroff -*- definitions below are for supplemental macros used .\" in Tcl/Tk manual entries. .\" .\" .AP type name in/out ?indent? .\" Start paragraph describing an argument to a library procedure. .\" type is type of argument (int, etc.), in/out is either "in", "out", .\" or "in/out" to describe whether procedure reads or modifies arg, .\" and indent is equivalent to second arg of .IP (shouldn't ever be .\" needed; use .AS below instead) .\" .\" .AS ?type? ?name? .\" Give maximum sizes of arguments for setting tab stops. Type and .\" name are examples of largest possible arguments that will be passed .\" to .AP later. If args are omitted, default tab stops are used. .\" .\" .BS .\" Start box enclosure. From here until next .BE, everything will be .\" enclosed in one large box. .\" .\" .BE .\" End of box enclosure. .\" .\" .CS .\" Begin code excerpt. .\" .\" .CE .\" End code excerpt. .\" .\" .VS ?version? ?br? .\" Begin vertical sidebar, for use in marking newly-changed parts .\" of man pages. The first argument is ignored and used for recording .\" the version when the .VS was added, so that the sidebars can be .\" found and removed when they reach a certain age. If another argument .\" is present, then a line break is forced before starting the sidebar. .\" .\" .VE .\" End of vertical sidebar. .\" .\" .DS .\" Begin an indented unfilled display. .\" .\" .DE .\" End of indented unfilled display. .\" .\" .SO ?manpage? .\" Start of list of standard options for a Tk widget. The manpage .\" argument defines where to look up the standard options; if .\" omitted, defaults to "options". The options follow on successive .\" lines, in three columns separated by tabs. .\" .\" .SE .\" End of list of standard options for a Tk widget. .\" .\" .OP cmdName dbName dbClass .\" Start of description of a specific option. cmdName gives the .\" option's name as specified in the class command, dbName gives .\" the option's name in the option database, and dbClass gives .\" the option's class in the option database. .\" .\" .UL arg1 arg2 .\" Print arg1 underlined, then print arg2 normally. .\" .\" .QW arg1 ?arg2? .\" Print arg1 in quotes, then arg2 normally (for trailing punctuation). .\" .\" .PQ arg1 ?arg2? .\" Print an open parenthesis, arg1 in quotes, then arg2 normally .\" (for trailing punctuation) and then a closing parenthesis. .\" .\" # Set up traps and other miscellaneous stuff for Tcl/Tk man pages. .if t .wh -1.3i ^B .nr ^l \n(.l .ad b .\" # Start an argument description .de AP .ie !"\\$4"" .TP \\$4 .el \{\ . ie !"\\$2"" .TP \\n()Cu . el .TP 15 .\} .ta \\n()Au \\n()Bu .ie !"\\$3"" \{\ \&\\$1 \\fI\\$2\\fP (\\$3) .\".b .\} .el \{\ .br .ie !"\\$2"" \{\ \&\\$1 \\fI\\$2\\fP .\} .el \{\ \&\\fI\\$1\\fP .\} .\} .. .\" # define tabbing values for .AP .de AS .nr )A 10n .if !"\\$1"" .nr )A \\w'\\$1'u+3n .nr )B \\n()Au+15n .\" .if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n .nr )C \\n()Bu+\\w'(in/out)'u+2n .. .AS Tcl_Interp Tcl_CreateInterp in/out .\" # BS - start boxed text .\" # ^y = starting y location .\" # ^b = 1 .de BS .br .mk ^y .nr ^b 1u .if n .nf .if n .ti 0 .if n \l'\\n(.lu\(ul' .if n .fi .. .\" # BE - end boxed text (draw box now) .de BE .nf .ti 0 .mk ^t .ie n \l'\\n(^lu\(ul' .el \{\ .\" Draw four-sided box normally, but don't draw top of .\" box if the box started on an earlier page. .ie !\\n(^b-1 \{\ \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul' .\} .el \}\ \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul' .\} .\} .fi .br .nr ^b 0 .. .\" # VS - start vertical sidebar .\" # ^Y = starting y location .\" # ^v = 1 (for troff; for nroff this doesn't matter) .de VS .if !"\\$2"" .br .mk ^Y .ie n 'mc \s12\(br\s0 .el .nr ^v 1u .. .\" # VE - end of vertical sidebar .de VE .ie n 'mc .el \{\ .ev 2 .nf .ti 0 .mk ^t \h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n' .sp -1 .fi .ev .\} .nr ^v 0 .. .\" # Special macro to handle page bottom: finish off current .\" # box/sidebar if in box/sidebar mode, then invoked standard .\" # page bottom macro. .de ^B .ev 2 'ti 0 'nf .mk ^t .if \\n(^b \{\ .\" Draw three-sided box if this is the box's first page, .\" draw two sides but no top otherwise. .ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c .el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c .\} .if \\n(^v \{\ .nr ^x \\n(^tu+1v-\\n(^Yu \kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c .\} .bp 'fi .ev .if \\n(^b \{\ .mk ^y .nr ^b 2 .\} .if \\n(^v \{\ .mk ^Y .\} .. .\" # DS - begin display .de DS .RS .nf .sp .. .\" # DE - end display .de DE .fi .RE .sp .. .\" # SO - start of list of standard options .de SO 'ie '\\$1'' .ds So \\fBoptions\\fR 'el .ds So \\fB\\$1\\fR .SH "STANDARD OPTIONS" .LP .nf .ta 5.5c 11c .ft B .. .\" # SE - end of list of standard options .de SE .fi .ft R .LP See the \\*(So manual entry for details on the standard options. .. .\" # OP - start of full description for a single option .de OP .LP .nf .ta 4c Command-Line Name: \\fB\\$1\\fR Database Name: \\fB\\$2\\fR Database Class: \\fB\\$3\\fR .fi .IP .. .\" # CS - begin code excerpt .de CS .RS .nf .ta .25i .5i .75i 1i .. .\" # CE - end code excerpt .de CE .fi .RE .. .\" # UL - underline word .de UL \\$1\l'|0\(ul'\\$2 .. .\" # QW - apply quotation marks to word .de QW .ie '\\*(lq'"' ``\\$1''\\$2 .\"" fix emacs highlighting .el \\*(lq\\$1\\*(rq\\$2 .. .\" # PQ - apply parens and quotation marks to word .de PQ .ie '\\*(lq'"' (``\\$1''\\$2)\\$3 .\"" fix emacs highlighting .el (\\*(lq\\$1\\*(rq\\$2)\\$3 .. .\" # QR - quoted range .de QR .ie '\\*(lq'"' ``\\$1''\\-``\\$2''\\$3 .\"" fix emacs highlighting .el \\*(lq\\$1\\*(rq\\-\\*(lq\\$2\\*(rq\\$3 .. .\" # MT - "empty" string .de MT .QW "" .. .BS .SH NAME tcllib_devguide \- Tcllib - The Developer's Guide .SH DESCRIPTION Welcome to Tcllib, the Tcl Standard Library\&. Note that Tcllib is not a package itself\&. It is a collection of (semi-independent) \fITcl\fR packages that provide utility functions useful to a large collection of Tcl programmers\&. .PP This document is a guide for developers working on Tcllib, i\&.e\&. maintainers fixing bugs, extending the collection's functionality, etc\&. .PP Please read .IP [1] \fITcllib - How To Get The Sources\fR and .IP [2] \fITcllib - The Installer's Guide\fR .PP first, if that was not done already\&. .PP Here we assume that the sources are already available in a directory of your choice, and that you not only know how to build and install them, but also have all the necessary requisites to actually do so\&. The guide to the sources in particular also explains which source code management system is used, where to find it, how to set it up, etc\&. .SH COMMITMENTS .SS CONTRIBUTOR As a contributor to Tcllib you are committing yourself to: .IP [1] Follow the guidelines laid down in \fITcl Community - Kind Communication\fR .PP Contributions are made by entering tickets into our tracker, providing patches, bundles or branches of code for inclusion, or posting to the Tcllib related mailing lists\&. .SS MAINTAINER When contributing one or more packages for full inclusion into Tcllib you are committing yourself to .IP [1] Follow the guidelines laid down in \fITcl Community - Kind Communication\fR (as any contributor) .IP [2] Maintenance of the new packages for a period of two years under the following rules, and responsibilities: .RS .IP [1] A maintainer may step down after the mandatory period as they see fit\&. .IP [2] A maintainer may step down before the end of the mandatory period, under the condition that a replacement maintainer is immediatel available and has agreed to serve the remainder of the period, plus their own mandatory period (see below)\&. .IP [3] When stepping down without a replacement maintainer taking over the relevant packages have to be flagged as \fBunmaintained\fR\&. .IP [4] When a replacement mantainer is brought in for a package it is (kept) marked as \fBmaintained\fR (again)\&. .sp A replacement maintainer is bound by the same rules as the original maintainer, except that the mandatory period of maintenance is shortened to one year\&. .IP [5] For any \fBunmaintained\fR package a contributor interested in becoming its maintainer can become so by flagging them as \fBmaintained\fR with their name and contact information, committing themselves to the rules of a replacement maintainer (see previous)\&. .IP [6] For any already \fBmaintained\fR package a contributor interested in becoming a co-maintainer can become so with the agreement of the existing maintainer(s), committing themselves to the rules of a replacement maintainer (see two above)\&. .RE .sp The responsibilities as a maintainer include: .RS .IP [1] Watching Tcllib's ticket tracker for bugs, bug fixes, and feature requests related to the new packages\&. .IP [2] Reviewing the aforementioned tickets, rejecting or applying them .IP [3] Coordination and discussion with ticket submitter during the development and/or application of bug fixes\&. .RE .IP [3] Follow the \fBBranching and Workflow\fR of this guide\&. .PP .SH "BRANCHING AND WORKFLOW" x .SH "STRUCTURAL OVERVIEW" .SS "MAIN DIRECTORIES" The main directories in the Tcllib toplevel directory and of interest to a developer are: .TP "\fImodules\fR" Each child directory represents one or more packages\&. In the case of the latter the packages are usually related in some way\&. Examples are "\fIbase64\fR", "\fImath\fR", and "\fIstruct\fR", with loose (base64) to strong (math) relations between the packages in the directory\&. .TP "\fIapps\fR" This directory contains all the installable applications, with their documentation\&. Note that this directory is currently \fInot\fR split into sub-directories\&. .TP "\fIexamples\fR" Each child directory "\fIfoo\fR" contains one or more example application for the packages in "\fImodules/foo\fR"\&. These examples are generally not polished enough to be considered for installation\&. .PP .SS "MORE DIRECTORIES" .TP "\fIconfig\fR" This directory contains files supporting the unix build system, i\&.e\&. "\fIconfigure\fR" and "\fIMakefile\&.in\fR"\&. .TP "\fIdevdoc\fR" This directories contains the doctools sources for the global documentation, like this document and its sibling guides\&. .TP "\fIembedded\fR" This directory contains the entire documentation formatted for \fIHTML\fR and styled to properly mix into the web site generated by fossil for the repository\&. .sp This is the documentation accessible from the Tcllib home directory, represented in the repository as "\fIembedded/index\&.md\fR"\&. .TP "\fIidoc\fR" This directory contains the entire documentation formatted for \fInroff\fR and \fIHTML\fR, the latter without any styling\&. This is the documentation which will be installed\&. .TP "\fIsupport\fR" This directory contains the sources of internal packages and utilities used in the implementation of the "\fIinstaller\&.tcl\fR" and "\fIsak\&.tcl\fR" scripts/tools\&. .PP .SS "TOP FILES" .TP "\fIaclocal\&.m4\fR" .TP "\fIconfigure\fR" .TP "\fIconfigure\&.in\fR" .TP "\fIMakefile\&.in\fR" These four files comprise the unix build system layered on top of the "\fIinstaller\&.tcl\fR" script\&. .TP "\fIinstaller\&.tcl\fR" The Tcl-based installation script/tool\&. .TP "\fIproject\&.shed\fR" Configuration file for \fISean Wood\fR's \fBPracTcl\fR buildsystem\&. .TP "\fIsak\&.tcl\fR" This is the main tool for developers and release managers, the \fISwiss Army Knife\fR of management operations on the collection\&. .TP "\fIChangeLog\fR" The log of changes to the global support, when the sources were held in \fICVS\fR\&. Not relevant any logner with the switch to the \fIfossil\fR SCM\&. .TP "\fIlicense\&.terms\fR" The license in plain ASCII\&. See also \fITcllib - License\fR for the nicely formatted form\&. The text is identical\&. .TP "\fIREADME\&.md\fR" .TP "\fI\&.github/CONTRIBUTING\&.md\fR" .TP "\fI\&.github/ISSUE_TEMPLATE\&.md\fR" .TP "\fI\&.github/PULL_REQUEST_TEMPLATE\&.md\fR" These markdown-formatted documents are used and shown by the github mirror of these sources, pointing people back to the official location and issue trackers\&. .TP "\fIDESCRIPTION\&.txt\fR" .TP "\fISTATUS\fR" .TP "\fItcllib\&.spec\fR" .TP "\fItcllib\&.tap\fR" .TP "\fItcllib\&.yml\fR" ???? .PP .SS "FILE TYPES" The most common file types, by file extension, are: .TP "\fI\&.tcl\fR" Tcl code for a package, application, or example\&. .TP "\fI\&.man\fR" Doctools-formatted documentation, usually for a package\&. .TP "\fI\&.test\fR" Test suite for a package, or part of\&. Based on \fBtcltest\fR\&. .TP "\fI\&.bench\fR" Performance benchmarks for a package, or part of\&. Based on "\fImodules/bench\fR"\&. .TP "\fI\&.pcx\fR" Syntax rules for \fITclDevKit\fR's \fBtclchecker\fR\&. Using these rules allows the checker to validate the use of commands of a Tcllib package \fBFOO\fR without having to scan the "\fI\&.tcl\fR" files implementing it\&. .PP .SH "TESTSUITE TOOLING" Testsuites in Tcllib are based on Tcl's standard test package \fBtcltest\fR, plus utilities found in the directory "\fImodules/devtools\fR" .PP Tcllib developers invoke the suites through the \fBtest run\fR method of the "\fIsak\&.tcl\fR" tool, with other methods of \fBtest\fR providing management operations, for example setting a list of standard Tcl shells to use\&. .SS "INVOKE THE TESTSUITES OF A SPECIFIC MODULE" Invoke either .CS \&./sak\&.tcl test run FOO .CE or .CS \&./sak\&.tcl test run modules/FOO .CE to invoke the testsuites found in a specific module "\fIFOO\fR"\&. .SS "INVOKE THE TESTSUITES OF ALL MODULES" Invoke the tool without a module name, i\&.e\&. .CS \&./sak\&.tcl test run .CE to invoke the testsuites of all modules\&. .SS "DETAILED TEST LOGS" In all the previous examples the test runner will write a combination of progress display and testsuite log to the standard output, showing for each module only the tests that passed or failed and how many of each in a summary at the end\&. .PP To get a detailed log, it is necessary to invoke the test runner with additional options\&. .PP For one: .CS \&./sak\&.tcl test run --log LOG FOO .CE While this shows the same short log on the terminal as before, it also writes a detailed log to the file "\fILOG\&.log\fR", and excerpts to other files ("\fILOG\&.summary\fR", "\fILOG\&.failures\fR", etc\&.)\&. .PP For two: .CS \&./sak\&.tcl test run -v FOO .CE This writes the detailed log to the standard output, instead of the short log\&. .PP Regardless of form, the detailed log contains a list of all test cases executed, which failed, and how they failed (expected versus actual results)\&. .SS "SHELL SELECTION" By default the test runner will use all the Tcl shells specified via \fBtest add\fR to invoke the specified testsuites, if any\&. If no such are specified it will fall back to the Tcl shell used to ran the tool itself\&. .PP Use option \fB--shell\fR to explicitly specify the Tcl shell to use, like .CS \&./sak\&.tcl test run --shell /path/to/tclsh \&.\&.\&. .CE .SS HELP Invoke the tool as .CS \&./sak\&.tcl help test .CE to see the detailed help for all methods of \fBtest\fR, and the associated options\&. .SH "DOCUMENTATION TOOLING" The standard format used for documentation of packages and other things in Tcllib is \fIdoctools\fR\&. Its supporting packages are a part of Tcllib, see the directories "\fImodules/doctools\fR" and "\fImodules/dtplite\fR"\&. The latter is an application package, with the actual application "\fIapps/dtplite\fR" a light wrapper around it\&. .PP Tcllib developers gain access to these through the \fBdoc\fR method of the "\fIsak\&.tcl\fR" tool, another (internal) wrapper around the "\fImodules/dptlite\fR" application package\&. .SS "GENERATE DOCUMENTATION FOR A SPECIFIC MODULE" Invoke either .CS \&./sak\&.tcl doc html FOO .CE or .CS \&./sak\&.tcl doc html modules/FOO .CE to generate HTML for the documentation found in the module "\fIFOO\fR"\&. Instead of \fBhtml\fR any other supported format can be used here, of course\&. .PP The generated formatted documentation will be placed into a directory "\fIdoc\fR" in the current working directory\&. .SS "GENERATE DOCUMENTATION FOR ALL MODULES" Invoke the tool without a module name, i\&.e\&. .CS \&./sak\&.tcl doc html .CE to generate HTML for the documentation found in all modules\&. Instead of \fBhtml\fR any other supported format can be used here, of course\&. .PP The generated formatted documentation will be placed into a directory "\fIdoc\fR" in the current working directory\&. .SS "AVAILABLE OUTPUT FORMATS, HELP" Invoke the tool as .CS \&./sak\&.tcl help doc .CE to see the entire set of supported output formats which can be generated\&. .SS "VALIDATION WITHOUT OUTPUT" Note the special format \fBvalidate\fR\&. .PP Using this value as the name of the format to generate forces the tool to simply check that the documentation is syntactically correct, without generating actual output\&. .PP Invoke it as either .CS \&./sak\&.tcl doc validate (modules/)FOO .CE or .CS \&./sak\&.tcl doc validate .CE to either check the packages of a specific module or check all of them\&. x .SH "NOTES ON WRITING A TESTSUITE" x .SH "INSTALLATION TOOLING" x |
Added idoc/man/files/devdoc/tcllib_releasemgr.n.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 | '\" '\" Generated from file 'tcllib_releasemgr\&.man' by tcllib/doctools with format 'nroff' '\" .TH "tcllib_releasemgr" n 1 tcllib "" .\" The -*- nroff -*- definitions below are for supplemental macros used .\" in Tcl/Tk manual entries. .\" .\" .AP type name in/out ?indent? .\" Start paragraph describing an argument to a library procedure. .\" type is type of argument (int, etc.), in/out is either "in", "out", .\" or "in/out" to describe whether procedure reads or modifies arg, .\" and indent is equivalent to second arg of .IP (shouldn't ever be .\" needed; use .AS below instead) .\" .\" .AS ?type? ?name? .\" Give maximum sizes of arguments for setting tab stops. Type and .\" name are examples of largest possible arguments that will be passed .\" to .AP later. If args are omitted, default tab stops are used. .\" .\" .BS .\" Start box enclosure. From here until next .BE, everything will be .\" enclosed in one large box. .\" .\" .BE .\" End of box enclosure. .\" .\" .CS .\" Begin code excerpt. .\" .\" .CE .\" End code excerpt. .\" .\" .VS ?version? ?br? .\" Begin vertical sidebar, for use in marking newly-changed parts .\" of man pages. The first argument is ignored and used for recording .\" the version when the .VS was added, so that the sidebars can be .\" found and removed when they reach a certain age. If another argument .\" is present, then a line break is forced before starting the sidebar. .\" .\" .VE .\" End of vertical sidebar. .\" .\" .DS .\" Begin an indented unfilled display. .\" .\" .DE .\" End of indented unfilled display. .\" .\" .SO ?manpage? .\" Start of list of standard options for a Tk widget. The manpage .\" argument defines where to look up the standard options; if .\" omitted, defaults to "options". The options follow on successive .\" lines, in three columns separated by tabs. .\" .\" .SE .\" End of list of standard options for a Tk widget. .\" .\" .OP cmdName dbName dbClass .\" Start of description of a specific option. cmdName gives the .\" option's name as specified in the class command, dbName gives .\" the option's name in the option database, and dbClass gives .\" the option's class in the option database. .\" .\" .UL arg1 arg2 .\" Print arg1 underlined, then print arg2 normally. .\" .\" .QW arg1 ?arg2? .\" Print arg1 in quotes, then arg2 normally (for trailing punctuation). .\" .\" .PQ arg1 ?arg2? .\" Print an open parenthesis, arg1 in quotes, then arg2 normally .\" (for trailing punctuation) and then a closing parenthesis. .\" .\" # Set up traps and other miscellaneous stuff for Tcl/Tk man pages. .if t .wh -1.3i ^B .nr ^l \n(.l .ad b .\" # Start an argument description .de AP .ie !"\\$4"" .TP \\$4 .el \{\ . ie !"\\$2"" .TP \\n()Cu . el .TP 15 .\} .ta \\n()Au \\n()Bu .ie !"\\$3"" \{\ \&\\$1 \\fI\\$2\\fP (\\$3) .\".b .\} .el \{\ .br .ie !"\\$2"" \{\ \&\\$1 \\fI\\$2\\fP .\} .el \{\ \&\\fI\\$1\\fP .\} .\} .. .\" # define tabbing values for .AP .de AS .nr )A 10n .if !"\\$1"" .nr )A \\w'\\$1'u+3n .nr )B \\n()Au+15n .\" .if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n .nr )C \\n()Bu+\\w'(in/out)'u+2n .. .AS Tcl_Interp Tcl_CreateInterp in/out .\" # BS - start boxed text .\" # ^y = starting y location .\" # ^b = 1 .de BS .br .mk ^y .nr ^b 1u .if n .nf .if n .ti 0 .if n \l'\\n(.lu\(ul' .if n .fi .. .\" # BE - end boxed text (draw box now) .de BE .nf .ti 0 .mk ^t .ie n \l'\\n(^lu\(ul' .el \{\ .\" Draw four-sided box normally, but don't draw top of .\" box if the box started on an earlier page. .ie !\\n(^b-1 \{\ \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul' .\} .el \}\ \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul' .\} .\} .fi .br .nr ^b 0 .. .\" # VS - start vertical sidebar .\" # ^Y = starting y location .\" # ^v = 1 (for troff; for nroff this doesn't matter) .de VS .if !"\\$2"" .br .mk ^Y .ie n 'mc \s12\(br\s0 .el .nr ^v 1u .. .\" # VE - end of vertical sidebar .de VE .ie n 'mc .el \{\ .ev 2 .nf .ti 0 .mk ^t \h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n' .sp -1 .fi .ev .\} .nr ^v 0 .. .\" # Special macro to handle page bottom: finish off current .\" # box/sidebar if in box/sidebar mode, then invoked standard .\" # page bottom macro. .de ^B .ev 2 'ti 0 'nf .mk ^t .if \\n(^b \{\ .\" Draw three-sided box if this is the box's first page, .\" draw two sides but no top otherwise. .ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c .el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c .\} .if \\n(^v \{\ .nr ^x \\n(^tu+1v-\\n(^Yu \kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c .\} .bp 'fi .ev .if \\n(^b \{\ .mk ^y .nr ^b 2 .\} .if \\n(^v \{\ .mk ^Y .\} .. .\" # DS - begin display .de DS .RS .nf .sp .. .\" # DE - end display .de DE .fi .RE .sp .. .\" # SO - start of list of standard options .de SO 'ie '\\$1'' .ds So \\fBoptions\\fR 'el .ds So \\fB\\$1\\fR .SH "STANDARD OPTIONS" .LP .nf .ta 5.5c 11c .ft B .. .\" # SE - end of list of standard options .de SE .fi .ft R .LP See the \\*(So manual entry for details on the standard options. .. .\" # OP - start of full description for a single option .de OP .LP .nf .ta 4c Command-Line Name: \\fB\\$1\\fR Database Name: \\fB\\$2\\fR Database Class: \\fB\\$3\\fR .fi .IP .. .\" # CS - begin code excerpt .de CS .RS .nf .ta .25i .5i .75i 1i .. .\" # CE - end code excerpt .de CE .fi .RE .. .\" # UL - underline word .de UL \\$1\l'|0\(ul'\\$2 .. .\" # QW - apply quotation marks to word .de QW .ie '\\*(lq'"' ``\\$1''\\$2 .\"" fix emacs highlighting .el \\*(lq\\$1\\*(rq\\$2 .. .\" # PQ - apply parens and quotation marks to word .de PQ .ie '\\*(lq'"' (``\\$1''\\$2)\\$3 .\"" fix emacs highlighting .el (\\*(lq\\$1\\*(rq\\$2)\\$3 .. .\" # QR - quoted range .de QR .ie '\\*(lq'"' ``\\$1''\\-``\\$2''\\$3 .\"" fix emacs highlighting .el \\*(lq\\$1\\*(rq\\-\\*(lq\\$2\\*(rq\\$3 .. .\" # MT - "empty" string .de MT .QW "" .. .BS .SH NAME tcllib_releasemgr \- Tcllib - The Release Manager's Guide .SH DESCRIPTION Welcome to Tcllib, the Tcl Standard Library\&. Note that Tcllib is not a package itself\&. It is a collection of (semi-independent) \fITcl\fR packages that provide utility functions useful to a large collection of Tcl programmers\&. .PP The audience of this document is the release manager for Tcllib, his or her deputies, and anybody else interested in the task of creating an official release of Tcllib for distribution\&. .PP Please read \fITcllib - How To Get The Sources\fR first, if that was not done already\&. Here we assume that the sources are already available in a directory of your choice\&. .PP .SH TOOLS The "\fIsak\&.tcl\fR" script in the toplevel directory of a Tcllib checkout is the one tool used by the release manager to perform its \fBTasks\fR\&. .PP The main commands to be used are .CS sak\&.tcl validate sak\&.tcl test run sak\&.tcl review sak\&.tcl readme sak\&.tcl localdoc sak\&.tcl release .CE More detail will be provided in the explanations of the various \fBTasks\fR\&. .SH TASKS .SS "START A RELEASE CANDIDATE" todo: open a candidate for release .SS "READY THE CANDIDATE" todo: test, validate and check that the candidate is worthy of release fix testsuites, possibly fix packages, documentation regenerate docs coordinate with package maintainers wrt fixes big thing: going over the packages, classify changes since last release to generate a nice readme\&. .SS "MAKE IT OFFICIAL" todo: finalize release, make candidate official .SS "DISTRIBUTE THE RELEASE" With the release made it has to be published and the world notified of its existence\&. .IP [1] Create a proper fossil event for the release, via \fIhttp://core\&.tcl-lang\&.org/tcllib/eventedit\fR\&. .sp An \fIexisting event\fR [http://core\&.tcl-lang\&.org/tcllib/event/dac0ddcd2e990234143196b4dc438fe01e7b9817] should be used as template\&. .IP [2] Update a number of web locations: .RS .IP [1] \fIHome page\fR [http://core\&.tcl-lang\&.org/tcllib/doc/trunk/embedded/index\&.md] .IP [2] \fIDownloads\fR [http://core\&.tcl-lang\&.org/tcllib/wiki?name=Downloads] .IP [3] \fIPast Releases\fR [http://core\&.tcl-lang\&.org/tcllib/wiki?name=Past+Releases] .IP [4] \fIhttp://www\&.tcl-lang\&.org/home/release\&.txt\fR .IP [5] \fIhttp://www\&.tcl-lang\&.org/software/tcllib/*\&.tml\fR .IP [6] \fIhttp://wiki\&.tcl-lang\&.org/1246\fR .RE .IP The first location maps to the file "\fIembedded/index\&.md\fR" in the repository itself, as such it can edited as part of the release process\&. This is where reference to the new fossil event is added, as the new current release\&. .sp The next two locations are in the fossil tcllib wiki and require admin or wiki write permissions for \fIhttp://core\&.tcl-lang\&.org/tcllib\fR\&. .sp The last two locations require ssh access to \fIhttp://www\&.tcl-lang\&.org\fR and permission to edit files in the web area\&. .IP [3] ***TODO*** mailing lists and other places to send notes to\&. .PP |
Changes to idoc/man/toc.n.
︙ | ︙ | |||
1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 | .TP \fBtcl::transform::spacer\fR \fIfiles/modules/virtchannel_transform/spacer\&.n\fR: Space insertation and removal .TP \fBtcl::transform::zlib\fR \fIfiles/modules/virtchannel_transform/tcllib_zlib\&.n\fR: zlib (de)compression .TP \fBtclDES\fR \fIfiles/modules/des/tcldes\&.n\fR: Implementation of the DES and triple-DES ciphers .TP \fBtclDESjr\fR \fIfiles/modules/des/tcldesjr\&.n\fR: Implementation of the DES and triple-DES ciphers .TP \fBtcldocstrip\fR \fIfiles/apps/tcldocstrip\&.n\fR: Tcl-based Docstrip Processor .TP \fBtcllib_install_guide\fR \fIfiles/devdoc/tcllib_installer\&.n\fR: Tcllib - The Installer's Guide .TP \fBtcllib_ip\fR \fIfiles/modules/dns/tcllib_ip\&.n\fR: IPv4 and IPv6 address manipulation .TP \fBtcllib_license\fR \fIfiles/devdoc/tcllib_license\&.n\fR: Tcllib - License .TP \fBtcllib_sources\fR \fIfiles/devdoc/tcllib_sources\&.n\fR: Tcllib - How To Get The Sources .TP \fBtclrep/machineparameters\fR \fIfiles/modules/math/machineparameters\&.n\fR: Compute double precision machine parameters\&. .TP \fBtepam\fR | > > > > > > > > > | 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 | .TP \fBtcl::transform::spacer\fR \fIfiles/modules/virtchannel_transform/spacer\&.n\fR: Space insertation and removal .TP \fBtcl::transform::zlib\fR \fIfiles/modules/virtchannel_transform/tcllib_zlib\&.n\fR: zlib (de)compression .TP \fBtcl_community_communication\fR \fIfiles/devdoc/tcl_community_communication\&.n\fR: Tcl Community - Kind Communication .TP \fBtclDES\fR \fIfiles/modules/des/tcldes\&.n\fR: Implementation of the DES and triple-DES ciphers .TP \fBtclDESjr\fR \fIfiles/modules/des/tcldesjr\&.n\fR: Implementation of the DES and triple-DES ciphers .TP \fBtcldocstrip\fR \fIfiles/apps/tcldocstrip\&.n\fR: Tcl-based Docstrip Processor .TP \fBtcllib_devguide\fR \fIfiles/devdoc/tcllib_devguide\&.n\fR: Tcllib - The Developer's Guide .TP \fBtcllib_install_guide\fR \fIfiles/devdoc/tcllib_installer\&.n\fR: Tcllib - The Installer's Guide .TP \fBtcllib_ip\fR \fIfiles/modules/dns/tcllib_ip\&.n\fR: IPv4 and IPv6 address manipulation .TP \fBtcllib_license\fR \fIfiles/devdoc/tcllib_license\&.n\fR: Tcllib - License .TP \fBtcllib_releasemgr\fR \fIfiles/devdoc/tcllib_releasemgr\&.n\fR: Tcllib - The Release Manager's Guide .TP \fBtcllib_sources\fR \fIfiles/devdoc/tcllib_sources\&.n\fR: Tcllib - How To Get The Sources .TP \fBtclrep/machineparameters\fR \fIfiles/modules/math/machineparameters\&.n\fR: Compute double precision machine parameters\&. .TP \fBtepam\fR |
︙ | ︙ |
Added idoc/www/tcllib/files/devdoc/tcl_community_communication.html.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 | <!DOCTYPE html><html><head> <title>tcl_community_communication - </title> <style type="text/css"><!-- HTML { background: #FFFFFF; color: black; } BODY { background: #FFFFFF; color: black; } DIV.doctools { margin-left: 10%; margin-right: 10%; } DIV.doctools H1,DIV.doctools H2 { margin-left: -5%; } H1, H2, H3, H4 { margin-top: 1em; font-family: sans-serif; font-size: large; color: #005A9C; background: transparent; text-align: left; } H1.doctools_title { text-align: center; } UL,OL { margin-right: 0em; margin-top: 3pt; margin-bottom: 3pt; } UL LI { list-style: disc; } OL LI { list-style: decimal; } DT { padding-top: 1ex; } UL.doctools_toc,UL.doctools_toc UL, UL.doctools_toc UL UL { font: normal 12pt/14pt sans-serif; list-style: none; } LI.doctools_section, LI.doctools_subsection { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } PRE { display: block; font-family: monospace; white-space: pre; margin: 0%; padding-top: 0.5ex; padding-bottom: 0.5ex; padding-left: 1ex; padding-right: 1ex; width: 100%; } PRE.doctools_example { color: black; background: #f5dcb3; border: 1px solid black; } UL.doctools_requirements LI, UL.doctools_syntax LI { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } DIV.doctools_synopsis { color: black; background: #80ffff; border: 1px solid black; font-family: serif; margin-top: 1em; margin-bottom: 1em; } UL.doctools_syntax { margin-top: 1em; border-top: 1px solid black; } UL.doctools_requirements { margin-bottom: 1em; border-bottom: 1px solid black; } --></style> </head> <!-- Generated from file 'tcl_community_communication.man' by tcllib/doctools with format 'html' --> <!-- tcl_community_communication.n --> <body><hr> [ <a href="../../../../../../../home">Tcllib Home</a> | <a href="../../../toc.html">Main Table Of Contents</a> | <a href="../../toc.html">Table Of Contents</a> | <a href="../../../index.html">Keyword Index</a> | <a href="../../../toc0.html">Categories</a> | <a href="../../../toc1.html">Modules</a> | <a href="../../../toc2.html">Applications</a> ] <hr> <div class="doctools"> <h1 class="doctools_title">tcl_community_communication(n) 1 tcllib ""</h1> <div id="name" class="doctools_section"><h2><a name="name">Name</a></h2> <p>tcl_community_communication - Tcl Community - Kind Communication</p> </div> <div id="toc" class="doctools_section"><h2><a name="toc">Table Of Contents</a></h2> <ul class="doctools_toc"> <li class="doctools_section"><a href="#toc">Table Of Contents</a></li> <li class="doctools_section"><a href="#section1">Description</a></li> </ul> </div> <div id="section1" class="doctools_section"><h2><a name="section1">Description</a></h2> </div> </div></body></html> |
Added idoc/www/tcllib/files/devdoc/tcllib_devguide.html.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 | <!DOCTYPE html><html><head> <title>tcllib_devguide - </title> <style type="text/css"><!-- HTML { background: #FFFFFF; color: black; } BODY { background: #FFFFFF; color: black; } DIV.doctools { margin-left: 10%; margin-right: 10%; } DIV.doctools H1,DIV.doctools H2 { margin-left: -5%; } H1, H2, H3, H4 { margin-top: 1em; font-family: sans-serif; font-size: large; color: #005A9C; background: transparent; text-align: left; } H1.doctools_title { text-align: center; } UL,OL { margin-right: 0em; margin-top: 3pt; margin-bottom: 3pt; } UL LI { list-style: disc; } OL LI { list-style: decimal; } DT { padding-top: 1ex; } UL.doctools_toc,UL.doctools_toc UL, UL.doctools_toc UL UL { font: normal 12pt/14pt sans-serif; list-style: none; } LI.doctools_section, LI.doctools_subsection { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } PRE { display: block; font-family: monospace; white-space: pre; margin: 0%; padding-top: 0.5ex; padding-bottom: 0.5ex; padding-left: 1ex; padding-right: 1ex; width: 100%; } PRE.doctools_example { color: black; background: #f5dcb3; border: 1px solid black; } UL.doctools_requirements LI, UL.doctools_syntax LI { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } DIV.doctools_synopsis { color: black; background: #80ffff; border: 1px solid black; font-family: serif; margin-top: 1em; margin-bottom: 1em; } UL.doctools_syntax { margin-top: 1em; border-top: 1px solid black; } UL.doctools_requirements { margin-bottom: 1em; border-bottom: 1px solid black; } --></style> </head> <!-- Generated from file 'tcllib_devguide.man' by tcllib/doctools with format 'html' --> <!-- tcllib_devguide.n --> <body><hr> [ <a href="../../../../../../../home">Tcllib Home</a> | <a href="../../../toc.html">Main Table Of Contents</a> | <a href="../../toc.html">Table Of Contents</a> | <a href="../../../index.html">Keyword Index</a> | <a href="../../../toc0.html">Categories</a> | <a href="../../../toc1.html">Modules</a> | <a href="../../../toc2.html">Applications</a> ] <hr> <div class="doctools"> <h1 class="doctools_title">tcllib_devguide(n) 1 tcllib ""</h1> <div id="name" class="doctools_section"><h2><a name="name">Name</a></h2> <p>tcllib_devguide - Tcllib - The Developer's Guide</p> </div> <div id="toc" class="doctools_section"><h2><a name="toc">Table Of Contents</a></h2> <ul class="doctools_toc"> <li class="doctools_section"><a href="#toc">Table Of Contents</a></li> <li class="doctools_section"><a href="#section1">Description</a></li> <li class="doctools_section"><a href="#section2">Commitments</a> <ul> <li class="doctools_subsection"><a href="#subsection1">Contributor</a></li> <li class="doctools_subsection"><a href="#subsection2">Maintainer</a></li> </ul> </li> <li class="doctools_section"><a href="#section3">Branching and Workflow</a></li> <li class="doctools_section"><a href="#section4">Structural Overview</a> <ul> <li class="doctools_subsection"><a href="#subsection3">Main Directories</a></li> <li class="doctools_subsection"><a href="#subsection4">More Directories</a></li> <li class="doctools_subsection"><a href="#subsection5">Top Files</a></li> <li class="doctools_subsection"><a href="#subsection6">File Types</a></li> </ul> </li> <li class="doctools_section"><a href="#section5">Testsuite Tooling</a> <ul> <li class="doctools_subsection"><a href="#subsection7">Invoke the testsuites of a specific module</a></li> <li class="doctools_subsection"><a href="#subsection8">Invoke the testsuites of all modules</a></li> <li class="doctools_subsection"><a href="#subsection9">Detailed Test Logs</a></li> <li class="doctools_subsection"><a href="#subsection10">Shell Selection</a></li> <li class="doctools_subsection"><a href="#subsection11">Help</a></li> </ul> </li> <li class="doctools_section"><a href="#section6">Documentation Tooling</a> <ul> <li class="doctools_subsection"><a href="#subsection12">Generate documentation for a specific module</a></li> <li class="doctools_subsection"><a href="#subsection13">Generate documentation for all modules</a></li> <li class="doctools_subsection"><a href="#subsection14">Available output formats, help</a></li> <li class="doctools_subsection"><a href="#subsection15">Validation without output</a></li> </ul> </li> <li class="doctools_section"><a href="#section7">Notes On Writing A Testsuite</a></li> <li class="doctools_section"><a href="#section8">Installation Tooling</a></li> </ul> </div> <div id="section1" class="doctools_section"><h2><a name="section1">Description</a></h2> <p>Welcome to Tcllib, the Tcl Standard Library. Note that Tcllib is not a package itself. It is a collection of (semi-independent) <i class="term"><a href="../../../index.html#tcl">Tcl</a></i> packages that provide utility functions useful to a large collection of Tcl programmers.</p> <p>This document is a guide for developers working on Tcllib, i.e. maintainers fixing bugs, extending the collection's functionality, etc.</p> <p>Please read</p> <ol class="doctools_enumerated"> <li><p><i class="term"><a href="tcllib_sources.html">Tcllib - How To Get The Sources</a></i> and</p></li> <li><p><i class="term"><a href="tcllib_installer.html">Tcllib - The Installer's Guide</a></i></p></li> </ol> <p>first, if that was not done already.</p> <p>Here we assume that the sources are already available in a directory of your choice, and that you not only know how to build and install them, but also have all the necessary requisites to actually do so. The guide to the sources in particular also explains which source code management system is used, where to find it, how to set it up, etc.</p> </div> <div id="section2" class="doctools_section"><h2><a name="section2">Commitments</a></h2> <div id="subsection1" class="doctools_subsection"><h3><a name="subsection1">Contributor</a></h3> <p>As a contributor to Tcllib you are committing yourself to:</p> <ol class="doctools_enumerated"> <li><p>Follow the guidelines laid down in <i class="term"><a href="tcl_community_communication.html">Tcl Community - Kind Communication</a></i></p></li> </ol> <p>Contributions are made by entering tickets into our tracker, providing patches, bundles or branches of code for inclusion, or posting to the Tcllib related mailing lists.</p> </div> <div id="subsection2" class="doctools_subsection"><h3><a name="subsection2">Maintainer</a></h3> <p>When contributing one or more packages for full inclusion into Tcllib you are committing yourself to</p> <ol class="doctools_enumerated"> <li><p>Follow the guidelines laid down in <i class="term"><a href="tcl_community_communication.html">Tcl Community - Kind Communication</a></i> (as any contributor)</p></li> <li><p>Maintenance of the new packages for a period of two years under the following rules, and responsibilities:</p> <ol class="doctools_enumerated"> <li><p>A maintainer may step down after the mandatory period as they see fit.</p></li> <li><p>A maintainer may step down before the end of the mandatory period, under the condition that a replacement maintainer is immediatel available and has agreed to serve the remainder of the period, plus their own mandatory period (see below).</p></li> <li><p>When stepping down without a replacement maintainer taking over the relevant packages have to be flagged as <b class="const">unmaintained</b>.</p></li> <li><p>When a replacement mantainer is brought in for a package it is (kept) marked as <b class="const">maintained</b> (again).</p> <p>A replacement maintainer is bound by the same rules as the original maintainer, except that the mandatory period of maintenance is shortened to one year.</p></li> <li><p>For any <b class="const">unmaintained</b> package a contributor interested in becoming its maintainer can become so by flagging them as <b class="const">maintained</b> with their name and contact information, committing themselves to the rules of a replacement maintainer (see previous).</p></li> <li><p>For any already <b class="const">maintained</b> package a contributor interested in becoming a co-maintainer can become so with the agreement of the existing maintainer(s), committing themselves to the rules of a replacement maintainer (see two above).</p></li> </ol> <p>The responsibilities as a maintainer include:</p> <ol class="doctools_enumerated"> <li><p>Watching Tcllib's ticket tracker for bugs, bug fixes, and feature requests related to the new packages.</p></li> <li><p>Reviewing the aforementioned tickets, rejecting or applying them</p></li> <li><p>Coordination and discussion with ticket submitter during the development and/or application of bug fixes.</p></li> </ol> </li> <li><p>Follow the <span class="sectref"><a href="#section3">Branching and Workflow</a></span> of this guide.</p></li> </ol> </div> </div> <div id="section3" class="doctools_section"><h2><a name="section3">Branching and Workflow</a></h2> <p>x</p> </div> <div id="section4" class="doctools_section"><h2><a name="section4">Structural Overview</a></h2> <div id="subsection3" class="doctools_subsection"><h3><a name="subsection3">Main Directories</a></h3> <p>The main directories in the Tcllib toplevel directory and of interest to a developer are:</p> <dl class="doctools_definitions"> <dt>"<b class="file">modules</b>"</dt> <dd><p>Each child directory represents one or more packages. In the case of the latter the packages are usually related in some way. Examples are "<b class="file">base64</b>", "<b class="file">math</b>", and "<b class="file">struct</b>", with loose (base64) to strong (math) relations between the packages in the directory.</p></dd> <dt>"<b class="file">apps</b>"</dt> <dd><p>This directory contains all the installable applications, with their documentation. Note that this directory is currently <em>not</em> split into sub-directories.</p></dd> <dt>"<b class="file">examples</b>"</dt> <dd><p>Each child directory "<b class="file">foo</b>" contains one or more example application for the packages in "<b class="file">modules/foo</b>". These examples are generally not polished enough to be considered for installation.</p></dd> </dl> </div> <div id="subsection4" class="doctools_subsection"><h3><a name="subsection4">More Directories</a></h3> <dl class="doctools_definitions"> <dt>"<b class="file">config</b>"</dt> <dd><p>This directory contains files supporting the unix build system, i.e. "<b class="file">configure</b>" and "<b class="file">Makefile.in</b>".</p></dd> <dt>"<b class="file">devdoc</b>"</dt> <dd><p>This directories contains the doctools sources for the global documentation, like this document and its sibling guides.</p></dd> <dt>"<b class="file">embedded</b>"</dt> <dd><p>This directory contains the entire documentation formatted for <i class="term"><a href="../../../index.html#html">HTML</a></i> and styled to properly mix into the web site generated by fossil for the repository.</p> <p>This is the documentation accessible from the Tcllib home directory, represented in the repository as "<b class="file">embedded/index.md</b>".</p></dd> <dt>"<b class="file">idoc</b>"</dt> <dd><p>This directory contains the entire documentation formatted for <i class="term"><a href="../../../index.html#nroff">nroff</a></i> and <i class="term"><a href="../../../index.html#html">HTML</a></i>, the latter without any styling. This is the documentation which will be installed.</p></dd> <dt>"<b class="file">support</b>"</dt> <dd><p>This directory contains the sources of internal packages and utilities used in the implementation of the "<b class="file">installer.tcl</b>" and "<b class="file">sak.tcl</b>" scripts/tools.</p></dd> </dl> </div> <div id="subsection5" class="doctools_subsection"><h3><a name="subsection5">Top Files</a></h3> <dl class="doctools_definitions"> <dt>"<b class="file">aclocal.m4</b>"</dt> <dd></dd> <dt>"<b class="file">configure</b>"</dt> <dd></dd> <dt>"<b class="file">configure.in</b>"</dt> <dd></dd> <dt>"<b class="file">Makefile.in</b>"</dt> <dd><p>These four files comprise the unix build system layered on top of the "<b class="file">installer.tcl</b>" script.</p></dd> <dt>"<b class="file">installer.tcl</b>"</dt> <dd><p>The Tcl-based installation script/tool.</p></dd> <dt>"<b class="file">project.shed</b>"</dt> <dd><p>Configuration file for <i class="term">Sean Wood</i>'s <b class="syscmd"><a href="../modules/practcl/practcl.html">PracTcl</a></b> buildsystem.</p></dd> <dt>"<b class="file">sak.tcl</b>"</dt> <dd><p>This is the main tool for developers and release managers, the <i class="term">Swiss Army Knife</i> of management operations on the collection.</p></dd> <dt>"<b class="file">ChangeLog</b>"</dt> <dd><p>The log of changes to the global support, when the sources were held in <i class="term"><a href="../../../index.html#cvs">CVS</a></i>. Not relevant any logner with the switch to the <i class="term">fossil</i> SCM.</p></dd> <dt>"<b class="file">license.terms</b>"</dt> <dd><p>The license in plain ASCII. See also <i class="term"><a href="tcllib_license.html">Tcllib - License</a></i> for the nicely formatted form. The text is identical.</p></dd> <dt>"<b class="file">README.md</b>"</dt> <dd></dd> <dt>"<b class="file">.github/CONTRIBUTING.md</b>"</dt> <dd></dd> <dt>"<b class="file">.github/ISSUE_TEMPLATE.md</b>"</dt> <dd></dd> <dt>"<b class="file">.github/PULL_REQUEST_TEMPLATE.md</b>"</dt> <dd><p>These markdown-formatted documents are used and shown by the github mirror of these sources, pointing people back to the official location and issue trackers.</p></dd> <dt>"<b class="file">DESCRIPTION.txt</b>"</dt> <dd></dd> <dt>"<b class="file">STATUS</b>"</dt> <dd></dd> <dt>"<b class="file">tcllib.spec</b>"</dt> <dd></dd> <dt>"<b class="file">tcllib.tap</b>"</dt> <dd></dd> <dt>"<b class="file">tcllib.yml</b>"</dt> <dd><p>????</p></dd> </dl> </div> <div id="subsection6" class="doctools_subsection"><h3><a name="subsection6">File Types</a></h3> <p>The most common file types, by file extension, are:</p> <dl class="doctools_definitions"> <dt>"<b class="file">.tcl</b>"</dt> <dd><p>Tcl code for a package, application, or example.</p></dd> <dt>"<b class="file">.man</b>"</dt> <dd><p>Doctools-formatted documentation, usually for a package.</p></dd> <dt>"<b class="file">.test</b>"</dt> <dd><p>Test suite for a package, or part of. Based on <b class="package">tcltest</b>.</p></dd> <dt>"<b class="file">.bench</b>"</dt> <dd><p>Performance benchmarks for a package, or part of. Based on "<b class="file">modules/bench</b>".</p></dd> <dt>"<b class="file">.pcx</b>"</dt> <dd><p>Syntax rules for <i class="term">TclDevKit</i>'s <b class="syscmd">tclchecker</b>. Using these rules allows the checker to validate the use of commands of a Tcllib package <b class="package">FOO</b> without having to scan the "<b class="file">.tcl</b>" files implementing it.</p></dd> </dl> </div> </div> <div id="section5" class="doctools_section"><h2><a name="section5">Testsuite Tooling</a></h2> <p>Testsuites in Tcllib are based on Tcl's standard test package <b class="package">tcltest</b>, plus utilities found in the directory "<b class="file">modules/devtools</b>"</p> <p>Tcllib developers invoke the suites through the <b class="cmd">test run</b> method of the "<b class="file">sak.tcl</b>" tool, with other methods of <b class="cmd"><a href="../../../index.html#test">test</a></b> providing management operations, for example setting a list of standard Tcl shells to use.</p> <div id="subsection7" class="doctools_subsection"><h3><a name="subsection7">Invoke the testsuites of a specific module</a></h3> <p>Invoke either</p> <pre class="doctools_example"> ./sak.tcl test run FOO </pre> <p>or</p> <pre class="doctools_example"> ./sak.tcl test run modules/FOO </pre> <p>to invoke the testsuites found in a specific module "<b class="file">FOO</b>".</p> </div> <div id="subsection8" class="doctools_subsection"><h3><a name="subsection8">Invoke the testsuites of all modules</a></h3> <p>Invoke the tool without a module name, i.e.</p> <pre class="doctools_example"> ./sak.tcl test run </pre> <p>to invoke the testsuites of all modules.</p> </div> <div id="subsection9" class="doctools_subsection"><h3><a name="subsection9">Detailed Test Logs</a></h3> <p>In all the previous examples the test runner will write a combination of progress display and testsuite log to the standard output, showing for each module only the tests that passed or failed and how many of each in a summary at the end.</p> <p>To get a detailed log, it is necessary to invoke the test runner with additional options.</p> <p>For one:</p> <pre class="doctools_example"> ./sak.tcl test run --log LOG FOO </pre> <p>While this shows the same short log on the terminal as before, it also writes a detailed log to the file "<b class="file">LOG.log</b>", and excerpts to other files ("<b class="file">LOG.summary</b>", "<b class="file">LOG.failures</b>", etc.).</p> <p>For two:</p> <pre class="doctools_example"> ./sak.tcl test run -v FOO </pre> <p>This writes the detailed log to the standard output, instead of the short log.</p> <p>Regardless of form, the detailed log contains a list of all test cases executed, which failed, and how they failed (expected versus actual results).</p> </div> <div id="subsection10" class="doctools_subsection"><h3><a name="subsection10">Shell Selection</a></h3> <p>By default the test runner will use all the Tcl shells specified via <b class="cmd">test add</b> to invoke the specified testsuites, if any. If no such are specified it will fall back to the Tcl shell used to ran the tool itself.</p> <p>Use option <b class="option">--shell</b> to explicitly specify the Tcl shell to use, like</p> <pre class="doctools_example"> ./sak.tcl test run --shell /path/to/tclsh ... </pre> </div> <div id="subsection11" class="doctools_subsection"><h3><a name="subsection11">Help</a></h3> <p>Invoke the tool as</p> <pre class="doctools_example"> ./sak.tcl help test </pre> <p>to see the detailed help for all methods of <b class="cmd"><a href="../../../index.html#test">test</a></b>, and the associated options.</p> </div> </div> <div id="section6" class="doctools_section"><h2><a name="section6">Documentation Tooling</a></h2> <p>The standard format used for documentation of packages and other things in Tcllib is <i class="term"><a href="../../../index.html#doctools">doctools</a></i>. Its supporting packages are a part of Tcllib, see the directories "<b class="file">modules/doctools</b>" and "<b class="file">modules/dtplite</b>". The latter is an application package, with the actual application "<b class="file">apps/dtplite</b>" a light wrapper around it.</p> <p>Tcllib developers gain access to these through the <b class="cmd">doc</b> method of the "<b class="file">sak.tcl</b>" tool, another (internal) wrapper around the "<b class="file">modules/dptlite</b>" application package.</p> <div id="subsection12" class="doctools_subsection"><h3><a name="subsection12">Generate documentation for a specific module</a></h3> <p>Invoke either</p> <pre class="doctools_example"> ./sak.tcl doc html FOO </pre> <p>or</p> <pre class="doctools_example"> ./sak.tcl doc html modules/FOO </pre> <p>to generate HTML for the documentation found in the module "<b class="file">FOO</b>". Instead of <b class="const">html</b> any other supported format can be used here, of course.</p> <p>The generated formatted documentation will be placed into a directory "<b class="file">doc</b>" in the current working directory.</p> </div> <div id="subsection13" class="doctools_subsection"><h3><a name="subsection13">Generate documentation for all modules</a></h3> <p>Invoke the tool without a module name, i.e.</p> <pre class="doctools_example"> ./sak.tcl doc html </pre> <p>to generate HTML for the documentation found in all modules. Instead of <b class="const">html</b> any other supported format can be used here, of course.</p> <p>The generated formatted documentation will be placed into a directory "<b class="file">doc</b>" in the current working directory.</p> </div> <div id="subsection14" class="doctools_subsection"><h3><a name="subsection14">Available output formats, help</a></h3> <p>Invoke the tool as</p> <pre class="doctools_example"> ./sak.tcl help doc </pre> <p>to see the entire set of supported output formats which can be generated.</p> </div> <div id="subsection15" class="doctools_subsection"><h3><a name="subsection15">Validation without output</a></h3> <p>Note the special format <b class="const">validate</b>.</p> <p>Using this value as the name of the format to generate forces the tool to simply check that the documentation is syntactically correct, without generating actual output.</p> <p>Invoke it as either</p> <pre class="doctools_example"> ./sak.tcl doc validate (modules/)FOO </pre> <p>or</p> <pre class="doctools_example"> ./sak.tcl doc validate </pre> <p>to either check the packages of a specific module or check all of them. x</p> </div> </div> <div id="section7" class="doctools_section"><h2><a name="section7">Notes On Writing A Testsuite</a></h2> <p>x</p> </div> <div id="section8" class="doctools_section"><h2><a name="section8">Installation Tooling</a></h2> <p>x</p> </div> </div></body></html> |
Changes to idoc/www/tcllib/files/devdoc/tcllib_installer.html.
︙ | ︙ | |||
132 133 134 135 136 137 138 | packages that provide utility functions useful to a large collection of Tcl programmers.</p> <p>The audience of this document is anyone wishing to build the packages, for either themselves, or others.</p> <p>For a developer intending to extend or modify the packages we additionally provide</p> <ol class="doctools_enumerated"> | | | 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 | packages that provide utility functions useful to a large collection of Tcl programmers.</p> <p>The audience of this document is anyone wishing to build the packages, for either themselves, or others.</p> <p>For a developer intending to extend or modify the packages we additionally provide</p> <ol class="doctools_enumerated"> <li><p><i class="term"><a href="tcllib_devguide.html">Tcllib - The Developer's Guide</a></i>.</p></li> </ol> <p>Please read <i class="term"><a href="tcllib_sources.html">Tcllib - How To Get The Sources</a></i> first, if that was not done already. Here we assume that the sources are already available in a directory of your choice.</p> </div> <div id="section2" class="doctools_section"><h2><a name="section2">Requisites</a></h2> <p>Before Tcllib can be build and used a number of requisites must be installed. |
︙ | ︙ |
Added idoc/www/tcllib/files/devdoc/tcllib_releasemgr.html.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 | <!DOCTYPE html><html><head> <title>tcllib_releasemgr - </title> <style type="text/css"><!-- HTML { background: #FFFFFF; color: black; } BODY { background: #FFFFFF; color: black; } DIV.doctools { margin-left: 10%; margin-right: 10%; } DIV.doctools H1,DIV.doctools H2 { margin-left: -5%; } H1, H2, H3, H4 { margin-top: 1em; font-family: sans-serif; font-size: large; color: #005A9C; background: transparent; text-align: left; } H1.doctools_title { text-align: center; } UL,OL { margin-right: 0em; margin-top: 3pt; margin-bottom: 3pt; } UL LI { list-style: disc; } OL LI { list-style: decimal; } DT { padding-top: 1ex; } UL.doctools_toc,UL.doctools_toc UL, UL.doctools_toc UL UL { font: normal 12pt/14pt sans-serif; list-style: none; } LI.doctools_section, LI.doctools_subsection { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } PRE { display: block; font-family: monospace; white-space: pre; margin: 0%; padding-top: 0.5ex; padding-bottom: 0.5ex; padding-left: 1ex; padding-right: 1ex; width: 100%; } PRE.doctools_example { color: black; background: #f5dcb3; border: 1px solid black; } UL.doctools_requirements LI, UL.doctools_syntax LI { list-style: none; margin-left: 0em; text-indent: 0em; padding: 0em; } DIV.doctools_synopsis { color: black; background: #80ffff; border: 1px solid black; font-family: serif; margin-top: 1em; margin-bottom: 1em; } UL.doctools_syntax { margin-top: 1em; border-top: 1px solid black; } UL.doctools_requirements { margin-bottom: 1em; border-bottom: 1px solid black; } --></style> </head> <!-- Generated from file 'tcllib_releasemgr.man' by tcllib/doctools with format 'html' --> <!-- tcllib_releasemgr.n --> <body><hr> [ <a href="../../../../../../../home">Tcllib Home</a> | <a href="../../../toc.html">Main Table Of Contents</a> | <a href="../../toc.html">Table Of Contents</a> | <a href="../../../index.html">Keyword Index</a> | <a href="../../../toc0.html">Categories</a> | <a href="../../../toc1.html">Modules</a> | <a href="../../../toc2.html">Applications</a> ] <hr> <div class="doctools"> <h1 class="doctools_title">tcllib_releasemgr(n) 1 tcllib ""</h1> <div id="name" class="doctools_section"><h2><a name="name">Name</a></h2> <p>tcllib_releasemgr - Tcllib - The Release Manager's Guide</p> </div> <div id="toc" class="doctools_section"><h2><a name="toc">Table Of Contents</a></h2> <ul class="doctools_toc"> <li class="doctools_section"><a href="#toc">Table Of Contents</a></li> <li class="doctools_section"><a href="#section1">Description</a></li> <li class="doctools_section"><a href="#section2">Tools</a></li> <li class="doctools_section"><a href="#section3">Tasks</a> <ul> <li class="doctools_subsection"><a href="#subsection1">Start a release candidate</a></li> <li class="doctools_subsection"><a href="#subsection2">Ready the candidate</a></li> <li class="doctools_subsection"><a href="#subsection3">Make it official</a></li> <li class="doctools_subsection"><a href="#subsection4">Distribute the release</a></ul> </li> </ul> </div> <div id="section1" class="doctools_section"><h2><a name="section1">Description</a></h2> <p>Welcome to Tcllib, the Tcl Standard Library. Note that Tcllib is not a package itself. It is a collection of (semi-independent) <i class="term"><a href="../../../index.html#tcl">Tcl</a></i> packages that provide utility functions useful to a large collection of Tcl programmers.</p> <p>The audience of this document is the release manager for Tcllib, his or her deputies, and anybody else interested in the task of creating an official release of Tcllib for distribution.</p> <p>Please read <i class="term"><a href="tcllib_sources.html">Tcllib - How To Get The Sources</a></i> first, if that was not done already. Here we assume that the sources are already available in a directory of your choice.</p> </div> <div id="section2" class="doctools_section"><h2><a name="section2">Tools</a></h2> <p>The "<b class="file">sak.tcl</b>" script in the toplevel directory of a Tcllib checkout is the one tool used by the release manager to perform its <span class="sectref"><a href="#section3">Tasks</a></span>.</p> <p>The main commands to be used are</p> <pre class="doctools_example"> sak.tcl validate sak.tcl test run sak.tcl review sak.tcl readme sak.tcl localdoc sak.tcl release </pre> <p>More detail will be provided in the explanations of the various <span class="sectref"><a href="#section3">Tasks</a></span>.</p> </div> <div id="section3" class="doctools_section"><h2><a name="section3">Tasks</a></h2> <div id="subsection1" class="doctools_subsection"><h3><a name="subsection1">Start a release candidate</a></h3> <p>todo: open a candidate for release</p> </div> <div id="subsection2" class="doctools_subsection"><h3><a name="subsection2">Ready the candidate</a></h3> <p>todo: test, validate and check that the candidate is worthy of release fix testsuites, possibly fix packages, documentation regenerate docs coordinate with package maintainers wrt fixes big thing: going over the packages, classify changes since last release to generate a nice readme.</p> </div> <div id="subsection3" class="doctools_subsection"><h3><a name="subsection3">Make it official</a></h3> <p>todo: finalize release, make candidate official</p> </div> <div id="subsection4" class="doctools_subsection"><h3><a name="subsection4">Distribute the release</a></h3> <p>With the release made it has to be published and the world notified of its existence.</p> <ol class="doctools_enumerated"> <li><p>Create a proper fossil event for the release, via <a href="http://core.tcl-lang.org/tcllib/eventedit">http://core.tcl-lang.org/tcllib/eventedit</a>.</p> <p>An <a href="http://core.tcl-lang.org/tcllib/event/dac0ddcd2e990234143196b4dc438fe01e7b9817">existing event</a> should be used as template.</p></li> <li><p>Update a number of web locations:</p> <ol class="doctools_enumerated"> <li><p><a href="http://core.tcl-lang.org/tcllib/doc/trunk/embedded/index.md">Home page</a></p></li> <li><p><a href="http://core.tcl-lang.org/tcllib/wiki?name=Downloads">Downloads</a></p></li> <li><p><a href="http://core.tcl-lang.org/tcllib/wiki?name=Past+Releases">Past Releases</a></p></li> <li><p><a href="http://www.tcl-lang.org/home/release.txt">http://www.tcl-lang.org/home/release.txt</a></p></li> <li><p><a href="http://www.tcl-lang.org/software/tcllib/*.tml">http://www.tcl-lang.org/software/tcllib/*.tml</a></p></li> <li><p><a href="http://wiki.tcl-lang.org/1246">http://wiki.tcl-lang.org/1246</a></p></li> </ol> <p>The first location maps to the file "<b class="file">embedded/index.md</b>" in the repository itself, as such it can edited as part of the release process. This is where reference to the new fossil event is added, as the new current release.</p> <p>The next two locations are in the fossil tcllib wiki and require admin or wiki write permissions for <a href="http://core.tcl-lang.org/tcllib">http://core.tcl-lang.org/tcllib</a>.</p> <p>The last two locations require ssh access to <a href="http://www.tcl-lang.org">http://www.tcl-lang.org</a> and permission to edit files in the web area.</p></li> <li><p>***TODO*** mailing lists and other places to send notes to.</p></li> </ol> </div> </div> </div></body></html> |
Changes to idoc/www/tcllib/files/devdoc/tcllib_sources.html.
︙ | ︙ | |||
126 127 128 129 130 131 132 | of Tcl programmers.</p> <p>The audience of this document is anyone wishing to either have just a look at Tcllib's source code, or build the packages, or to extend and modify them.</p> <p>For builders and developers we additionally provide</p> <ol class="doctools_enumerated"> <li><p><i class="term"><a href="tcllib_installer.html">Tcllib - The Installer's Guide</a></i>.</p></li> | | | 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 | of Tcl programmers.</p> <p>The audience of this document is anyone wishing to either have just a look at Tcllib's source code, or build the packages, or to extend and modify them.</p> <p>For builders and developers we additionally provide</p> <ol class="doctools_enumerated"> <li><p><i class="term"><a href="tcllib_installer.html">Tcllib - The Installer's Guide</a></i>.</p></li> <li><p><i class="term"><a href="tcllib_devguide.html">Tcllib - The Developer's Guide</a></i>.</p></li> </ol> <p>respectively.</p> </div> <div id="section2" class="doctools_section"><h2><a name="section2">Source Location</a></h2> <p>The official repository for Tcllib can be found at <a href="http://core.tcl-lang.org/tcllib">http://core.tcl-lang.org/tcllib</a></p> </div> |
︙ | ︙ |
Changes to idoc/www/tcllib/toc.html.
︙ | ︙ | |||
1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 | <td class="#doctools_tocright">Space insertation and removal</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcl_transform_zlib'><a href="files/modules/virtchannel_transform/tcllib_zlib.html">tcl::transform::zlib</a></td> <td class="#doctools_tocright">zlib (de)compression</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcldes'><a href="files/modules/des/tcldes.html">tclDES</a></td> <td class="#doctools_tocright">Implementation of the DES and triple-DES ciphers</td> </tr> | > > > > | | > > > > > > > > | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 | <td class="#doctools_tocright">Space insertation and removal</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcl_transform_zlib'><a href="files/modules/virtchannel_transform/tcllib_zlib.html">tcl::transform::zlib</a></td> <td class="#doctools_tocright">zlib (de)compression</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcl_community_communication'><a href="files/devdoc/tcl_community_communication.html">tcl_community_communication</a></td> <td class="#doctools_tocright">Tcl Community - Kind Communication</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcldes'><a href="files/modules/des/tcldes.html">tclDES</a></td> <td class="#doctools_tocright">Implementation of the DES and triple-DES ciphers</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcldesjr'><a href="files/modules/des/tcldesjr.html">tclDESjr</a></td> <td class="#doctools_tocright">Implementation of the DES and triple-DES ciphers</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcldocstrip'><a href="files/apps/tcldocstrip.html">tcldocstrip</a></td> <td class="#doctools_tocright">Tcl-based Docstrip Processor</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcllib_devguide'><a href="files/devdoc/tcllib_devguide.html">tcllib_devguide</a></td> <td class="#doctools_tocright">Tcllib - The Developer's Guide</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcllib_install_guide'><a href="files/devdoc/tcllib_installer.html">tcllib_install_guide</a></td> <td class="#doctools_tocright">Tcllib - The Installer's Guide</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcllib_ip'><a href="files/modules/dns/tcllib_ip.html">tcllib_ip</a></td> <td class="#doctools_tocright">IPv4 and IPv6 address manipulation</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcllib_license'><a href="files/devdoc/tcllib_license.html">tcllib_license</a></td> <td class="#doctools_tocright">Tcllib - License</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tcllib_releasemgr'><a href="files/devdoc/tcllib_releasemgr.html">tcllib_releasemgr</a></td> <td class="#doctools_tocright">Tcllib - The Release Manager's Guide</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tcllib_sources'><a href="files/devdoc/tcllib_sources.html">tcllib_sources</a></td> <td class="#doctools_tocright">Tcllib - How To Get The Sources</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tclrep_machineparameters'><a href="files/modules/math/machineparameters.html">tclrep/machineparameters</a></td> <td class="#doctools_tocright">Compute double precision machine parameters.</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tepam'><a href="files/modules/tepam/tepam_introduction.html">tepam</a></td> <td class="#doctools_tocright">An introduction into TEPAM, Tcl's Enhanced Procedure and Argument Manager</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tepam_argument_dialogbox'><a href="files/modules/tepam/tepam_argument_dialogbox.html">tepam::argument_dialogbox</a></td> <td class="#doctools_tocright">TEPAM argument_dialogbox, reference manual</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tepam_doc_gen'><a href="files/modules/tepam/tepam_doc_gen.html">tepam::doc_gen</a></td> <td class="#doctools_tocright">TEPAM DOC Generation, reference manual</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tepam_procedure'><a href="files/modules/tepam/tepam_procedure.html">tepam::procedure</a></td> <td class="#doctools_tocright">TEPAM procedure, reference manual</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term'><a href="files/modules/term/term.html">term</a></td> <td class="#doctools_tocright">General terminal control</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_ansi_code'><a href="files/modules/term/ansi_code.html">term::ansi::code</a></td> <td class="#doctools_tocright">Helper for control sequences</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_ansi_code_attr'><a href="files/modules/term/ansi_cattr.html">term::ansi::code::attr</a></td> <td class="#doctools_tocright">ANSI attribute sequences</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_ansi_code_ctrl'><a href="files/modules/term/ansi_cctrl.html">term::ansi::code::ctrl</a></td> <td class="#doctools_tocright">ANSI control sequences</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_ansi_code_macros'><a href="files/modules/term/ansi_cmacros.html">term::ansi::code::macros</a></td> <td class="#doctools_tocright">Macro sequences</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_ansi_ctrl_unix'><a href="files/modules/term/ansi_ctrlu.html">term::ansi::ctrl::unix</a></td> <td class="#doctools_tocright">Control operations and queries</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_ansi_send'><a href="files/modules/term/ansi_send.html">term::ansi::send</a></td> <td class="#doctools_tocright">Output of ANSI control sequences to terminals</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_interact_menu'><a href="files/modules/term/imenu.html">term::interact::menu</a></td> <td class="#doctools_tocright">Terminal widget, menu</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_interact_pager'><a href="files/modules/term/ipager.html">term::interact::pager</a></td> <td class="#doctools_tocright">Terminal widget, paging</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_receive'><a href="files/modules/term/receive.html">term::receive</a></td> <td class="#doctools_tocright">General input from terminals</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='term_receive_bind'><a href="files/modules/term/term_bind.html">term::receive::bind</a></td> <td class="#doctools_tocright">Keyboard dispatch from terminals</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='term_send'><a href="files/modules/term/term_send.html">term::send</a></td> <td class="#doctools_tocright">General output to terminals</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='textutil'><a href="files/modules/textutil/textutil.html">textutil</a></td> <td class="#doctools_tocright">Procedures to manipulate texts and strings.</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='textutil_adjust'><a href="files/modules/textutil/adjust.html">textutil::adjust</a></td> <td class="#doctools_tocright">Procedures to adjust, indent, and undent paragraphs</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='textutil_expander'><a href="files/modules/textutil/expander.html">textutil::expander</a></td> <td class="#doctools_tocright">Procedures to process templates and expand text.</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='textutil_repeat'><a href="files/modules/textutil/repeat.html">textutil::repeat</a></td> <td class="#doctools_tocright">Procedures to repeat strings.</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='textutil_split'><a href="files/modules/textutil/textutil_split.html">textutil::split</a></td> <td class="#doctools_tocright">Procedures to split texts</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='textutil_string'><a href="files/modules/textutil/textutil_string.html">textutil::string</a></td> <td class="#doctools_tocright">Procedures to manipulate texts and strings.</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='textutil_tabify'><a href="files/modules/textutil/tabify.html">textutil::tabify</a></td> <td class="#doctools_tocright">Procedures to (un)tabify strings</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='textutil_trim'><a href="files/modules/textutil/trim.html">textutil::trim</a></td> <td class="#doctools_tocright">Procedures to trim strings</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='throw'><a href="files/modules/try/tcllib_throw.html">throw</a></td> <td class="#doctools_tocright">throw - Throw an error exception with a message</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tie'><a href="files/modules/tie/tie_std.html">tie</a></td> <td class="#doctools_tocright">Array persistence, standard data sources</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tie'><a href="files/modules/tie/tie.html">tie</a></td> <td class="#doctools_tocright">Array persistence</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tiff'><a href="files/modules/tiff/tiff.html">tiff</a></td> <td class="#doctools_tocright">TIFF reading, writing, and querying and manipulation of meta data</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tool'><a href="files/modules/httpd/httpd.html">tool</a></td> <td class="#doctools_tocright">A TclOO and coroutine based web server</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='tool'><a href="files/modules/tool/tool.html">tool</a></td> <td class="#doctools_tocright">TclOO Library (TOOL) Framework</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='tool_dict_ensemble'><a href="files/modules/tool/tool_dict_ensemble.html">tool::dict_ensemble</a></td> <td class="#doctools_tocright">Dictionary Tools</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='transfer_connect'><a href="files/modules/transfer/connect.html">transfer::connect</a></td> <td class="#doctools_tocright">Connection setup</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='transfer_copy'><a href="files/modules/transfer/copyops.html">transfer::copy</a></td> <td class="#doctools_tocright">Data transfer foundation</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='transfer_copy_queue'><a href="files/modules/transfer/tqueue.html">transfer::copy::queue</a></td> <td class="#doctools_tocright">Queued transfers</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='transfer_data_destination'><a href="files/modules/transfer/ddest.html">transfer::data::destination</a></td> <td class="#doctools_tocright">Data destination</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='transfer_data_source'><a href="files/modules/transfer/dsource.html">transfer::data::source</a></td> <td class="#doctools_tocright">Data source</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='transfer_receiver'><a href="files/modules/transfer/receiver.html">transfer::receiver</a></td> <td class="#doctools_tocright">Data source</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='transfer_transmitter'><a href="files/modules/transfer/transmitter.html">transfer::transmitter</a></td> <td class="#doctools_tocright">Data source</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='treeql'><a href="files/modules/treeql/treeql.html">treeql</a></td> <td class="#doctools_tocright">Query tree objects</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='try'><a href="files/modules/try/tcllib_try.html">try</a></td> <td class="#doctools_tocright">try - Trap and process errors and exceptions</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='udpcluster'><a href="files/modules/udpcluster/udpcluster.html">udpcluster</a></td> <td class="#doctools_tocright">UDP Peer-to-Peer cluster</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='uevent'><a href="files/modules/uev/uevent.html">uevent</a></td> <td class="#doctools_tocright">User events</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='uevent_onidle'><a href="files/modules/uev/uevent_onidle.html">uevent::onidle</a></td> <td class="#doctools_tocright">Request merging and deferal to idle time</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='unicode'><a href="files/modules/stringprep/unicode.html">unicode</a></td> <td class="#doctools_tocright">Implementation of Unicode normalization</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='unicode_data'><a href="files/modules/stringprep/unicode_data.html">unicode::data</a></td> <td class="#doctools_tocright">unicode data tables, generated, internal</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='units'><a href="files/modules/units/units.html">units</a></td> <td class="#doctools_tocright">unit conversion</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='uri'><a href="files/modules/uri/uri.html">uri</a></td> <td class="#doctools_tocright">URI utilities</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='uri_urn'><a href="files/modules/uri/urn-scheme.html">uri_urn</a></td> <td class="#doctools_tocright">URI utilities, URN scheme</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='uuencode'><a href="files/modules/base64/uuencode.html">uuencode</a></td> <td class="#doctools_tocright">UU-encode/decode binary data</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='uuid'><a href="files/modules/uuid/uuid.html">uuid</a></td> <td class="#doctools_tocright">UUID generation and comparison</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_common'><a href="files/modules/valtype/valtype_common.html">valtype::common</a></td> <td class="#doctools_tocright">Validation, common code</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_creditcard_amex'><a href="files/modules/valtype/cc_amex.html">valtype::creditcard::amex</a></td> <td class="#doctools_tocright">Validation for AMEX creditcard number</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_creditcard_discover'><a href="files/modules/valtype/cc_discover.html">valtype::creditcard::discover</a></td> <td class="#doctools_tocright">Validation for Discover creditcard number</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_creditcard_mastercard'><a href="files/modules/valtype/cc_mastercard.html">valtype::creditcard::mastercard</a></td> <td class="#doctools_tocright">Validation for Mastercard creditcard number</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_creditcard_visa'><a href="files/modules/valtype/cc_visa.html">valtype::creditcard::visa</a></td> <td class="#doctools_tocright">Validation for VISA creditcard number</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_gs1_ean13'><a href="files/modules/valtype/ean13.html">valtype::gs1::ean13</a></td> <td class="#doctools_tocright">Validation for EAN13</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_iban'><a href="files/modules/valtype/iban.html">valtype::iban</a></td> <td class="#doctools_tocright">Validation for IBAN</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_imei'><a href="files/modules/valtype/imei.html">valtype::imei</a></td> <td class="#doctools_tocright">Validation for IMEI</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_isbn'><a href="files/modules/valtype/isbn.html">valtype::isbn</a></td> <td class="#doctools_tocright">Validation for ISBN</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_luhn'><a href="files/modules/valtype/luhn.html">valtype::luhn</a></td> <td class="#doctools_tocright">Validation for plain number with a LUHN checkdigit</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_luhn5'><a href="files/modules/valtype/luhn5.html">valtype::luhn5</a></td> <td class="#doctools_tocright">Validation for plain number with a LUHN5 checkdigit</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='valtype_usnpi'><a href="files/modules/valtype/usnpi.html">valtype::usnpi</a></td> <td class="#doctools_tocright">Validation for USNPI</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='valtype_verhoeff'><a href="files/modules/valtype/verhoeff.html">valtype::verhoeff</a></td> <td class="#doctools_tocright">Validation for plain number with a VERHOEFF checkdigit</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='websocket'><a href="files/modules/websocket/websocket.html">websocket</a></td> <td class="#doctools_tocright">Tcl implementation of the websocket protocol</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='wip'><a href="files/modules/wip/wip.html">wip</a></td> <td class="#doctools_tocright">Word Interpreter</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='xsxp'><a href="files/modules/amazon-s3/xsxp.html">xsxp</a></td> <td class="#doctools_tocright">eXtremely Simple Xml Parser</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='yaml'><a href="files/modules/yaml/yaml.html">yaml</a></td> <td class="#doctools_tocright">YAML Format Encoder/Decoder</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='yencode'><a href="files/modules/base64/yencode.html">yencode</a></td> <td class="#doctools_tocright">Y-encode/decode binary data</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='zipfile_decode'><a href="files/modules/zip/decode.html">zipfile::decode</a></td> <td class="#doctools_tocright">Access to zip archives</td> </tr> <tr class="#doctools_tocodd" > <td class="#doctools_tocleft" ><a name='zipfile_encode'><a href="files/modules/zip/encode.html">zipfile::encode</a></td> <td class="#doctools_tocright">Generation of zip archives</td> </tr> <tr class="#doctools_toceven" > <td class="#doctools_tocleft" ><a name='zipfile_mkzip'><a href="files/modules/zip/mkzip.html">zipfile::mkzip</a></td> <td class="#doctools_tocright">Build a zip archive</td> </tr> </table> </dl><hr></body></html> |