tcl-hacks

Check-in [1866439ebe]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:note well-behaved needs review
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:1866439ebe38b2bb197883c6eb4d7d40b1ccd7ff
User & Date: aspect 2018-06-05 14:27:00
Context
2018-06-08
07:14
add archived copy of TkTest.kit; includes other xtk_* packages check-in: c4b008d825 user: aspect tags: trunk
2018-06-05
14:27
note well-behaved needs review check-in: 1866439ebe user: aspect tags: trunk
14:22
improve help, adjust some tclenv.txt, stub some stuff check-in: fab3e764ea user: aspect tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to tipple/README.md.

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

 * teapot:  one of the urls specified in `tipple.txt`
 * tarball:  local or remote path to archive, which must be *well-behaved*
 * filesystem path:  local path to directory, which must be *well-behaved*
 * git repo:  `git+$url`, must be *well-behaved*
 * fossil repo:  `fossil+$url`, must be *well-behaved*








A *well-behaved* package source is expected to Install Correctly by the following means:

    cp -a lib/*     $TCLLIBPATH
    cp -a modules/* $TCL8_6_TM_PATH
    cp -a bin/*     DIR/bin/

It must *not*:

 * rely at runtime on anything not in these directories
 * require path-dependent preprocessing

The source directory will be left around (in `DIR/src`) so users can view documentation and examples in there.

*(means to install packages according to metadata in the form of `tipple.txt` or other "blessed" formats will come soon)*


## Environment Metadata:  `tclenv.txt`

At the root of the environment, `tclenv.txt` records some metadata about the environment.  It looks like:








>
>
>
>
>
>
>











<
<







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

 * teapot:  one of the urls specified in `tipple.txt`
 * tarball:  local or remote path to archive, which must be *well-behaved*
 * filesystem path:  local path to directory, which must be *well-behaved*
 * git repo:  `git+$url`, must be *well-behaved*
 * fossil repo:  `fossil+$url`, must be *well-behaved*

The source directory will be left around (in `DIR/src`) so users can view documentation and examples in there.


## Well-behaved packages

This section needs refreshing:  relying on paths like `lib` and `modules` doesn't work for many sources today; searching for `*.tm` and `pkgIndex.tcl` is likely to work better.

A *well-behaved* package source is expected to Install Correctly by the following means:

    cp -a lib/*     $TCLLIBPATH
    cp -a modules/* $TCL8_6_TM_PATH
    cp -a bin/*     DIR/bin/

It must *not*:

 * rely at runtime on anything not in these directories
 * require path-dependent preprocessing



*(means to install packages according to metadata in the form of `tipple.txt` or other "blessed" formats will come soon)*


## Environment Metadata:  `tclenv.txt`

At the root of the environment, `tclenv.txt` records some metadata about the environment.  It looks like: