Check-in [67405f55ac]

Not logged in

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

Overview
Comment:Begin work on v2. See TODO.txt for planned changes and features.
Timelines: family | ancestors | descendants | both | v2
Files: files | file ages | folders
SHA1:67405f55ac3ebd3dca5ff832e9662978e9fe07ec
User & Date: andreask 2013-12-19 22:08:20
Context
2013-12-19
22:09
The doc templating work is subsumed into v2. check-in: 4072f2411a user: andreask tags: v2
22:08
Begin work on v2. See TODO.txt for planned changes and features. check-in: 67405f55ac user: andreask tags: v2
2013-10-18
18:25
Extended the special command @setup to place fossil repository links into the generated code. check-in: ec34acae87 user: andreask tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Added TODO.txt.































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
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
(1)	Switch over to cmdr 1 for the cli API.

	- Heavy rewrite of internals, notably option definition and
	  use to get away from shared options.

(1a)	Store a copy of cmdr framework in the project, to break
	installation cycle.

	Without: Kettle install requires Cmdr requires Kettle.

(2)	Better integration of the project mgmt features/commands.
	No special cli code anymore.

(3)	Manage glob patterns for files to ignore when scanning a
	directory. Saved in the build.tcl file => DSL extension.

(4)	Command(s) to scan a directory and classify the files in it,
	for setting up the build.tcl file:

	- Tcl packages
	- Critcl packages
	- Documentation
	- Testsuites
	- Benchmarks
	- Tcl applications
	- Files to Ignore

	This classification should detect variety of files in the
	above classes even when not marked properly, i.e. missing the
	proper magic strings.

(5)	An outgrowth of (4), validation of the project, i.e. checking
	it against various rules (must have docs, tests, should have
	benchmarks) and other external tools, like tclchecker,
	nagelfar, frink, etc.

(6)	Command history

(7)	Always generate the testsuite X.* files, store results in the
	project, as files ignored by default.

	New commands to query this database.

(8)	Ditto for benchmarks.

(9)	Helper commands to generate testsuite and benchmark skeletons
	from templates.

Changes to kettle.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/env tclsh
# -*- tcl -*-
# # ## ### ##### ######## ############# #####################
## Kettle application

# @@ Meta Begin
# Application kettle 1
# Meta platform tcl
# Meta author      {Andreas Kupries}
# Meta summary     Build support application.
# Meta description Kettle is a system to make building Tcl
# Meta description packages quick and easy. More importantly,
# Meta description possibly, to make writing the build system
# Meta description for Tcl packages easy.






|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/env tclsh
# -*- tcl -*-
# # ## ### ##### ######## ############# #####################
## Kettle application

# @@ Meta Begin
# Application kettle 2
# Meta platform tcl
# Meta author      {Andreas Kupries}
# Meta summary     Build support application.
# Meta description Kettle is a system to make building Tcl
# Meta description packages quick and easy. More importantly,
# Meta description possibly, to make writing the build system
# Meta description for Tcl packages easy.

Changes to kettle.tcl.

1
2
3
4
5
6
7
8
9
10
11
12
13
# -*- tcl -*- Copyright (c) 2012-2013 Andreas Kupries
# # ## ### ##### ######## ############# #####################
## Kettle package

# @@ Meta Begin
# Package kettle 0
# Meta platform tcl
# Meta author      {Andreas Kupries}
# Meta summary     Build support package.
# Meta description Kettle is a system to make building Tcl
# Meta description packages quick and easy. More importantly,
# Meta description possibly, to make writing the build system
# Meta description for Tcl packages easy.





|







1
2
3
4
5
6
7
8
9
10
11
12
13
# -*- tcl -*- Copyright (c) 2012-2013 Andreas Kupries
# # ## ### ##### ######## ############# #####################
## Kettle package

# @@ Meta Begin
# Package kettle 2
# Meta platform tcl
# Meta author      {Andreas Kupries}
# Meta summary     Build support package.
# Meta description Kettle is a system to make building Tcl
# Meta description packages quick and easy. More importantly,
# Meta description possibly, to make writing the build system
# Meta description for Tcl packages easy.