Ticket UUID: | 75291b89b3d039ae0a804da61e0c3ed68320e371 | |||
Title: | Documentation of zipfs in tclsh(1) | |||
Type: | Bug | Version: | 9.0 | |
Submitter: | tberg | Created on: | 2024-07-30 08:42:53 | |
Subsystem: | - New Builtin Commands | Assigned To: | nobody | |
Priority: | 5 Medium | Severity: | Important | |
Status: | Open | Last Modified: | 2024-08-06 06:38:47 | |
Resolution: | None | Closed By: | nobody | |
Closed on: | ||||
Description: |
There are some statements in the tclsh(1) page about ZIPVFS. It is related to zipfs(n) but uses the term ZIPVFS for the heading instead. To minimize confusion (with the tclvfs package and the zipvfs driver there), maybe the heading should rather be termed "ZIPFS" instead?? The section goes on with:
It is not clear what exactly the term "the directory loaded as ..." means. Does it mean that the variable env(TCL_LIBRARY) is filled with the name/path of the zip archive? According to tclvars(n) this would mean the zipfs directory is returned by [info library] but that is not the case when trying the example code from the zipfs(n) page. The manual page further says:
Which shell is meant here? Tclsh/Wish? Then it should be written like this. And the part about the different command line handling should probably also go into zipfs(n) or does it not apply there? It could be emphasized here that this implies you cannot source another Tcl script anymore from the command line when calling the modified tclsh. Note: the same applies to wish(1) which contains the same text. | |||
User Comments: |
tberg added on 2024-08-06 06:38:47:
I am not sure how to properly document this tcl_library thing but with the changes from ticket 7db9574a06, this is maybe ok now. Otherwise, someone else can find a good wording for this? I just changed the heading as the last thing here and adapted the wording a bit. Now implemented with commit 6a6dac423f147a85. apnadkarni added on 2024-08-03 03:15:09: Also, forgot to mention, in case you have not seen it, the TclZipfs_AppHook manpage describes the search path for apnadkarni added on 2024-08-03 03:10:02: Torsten, Below is how tclsh:
wish:
Also note that the recipe for single file executables given in the TIP works only for --enable-shared builds, not for static shells. For static shells, you have to merge the embedded tcl_library zip with the application vfs, and then replace the embedded zip in the executable with the merged zip. tberg added on 2024-08-02 21:38:38: Any other opinions? Otherwise I will soon change the documentation for both tclsh(1) and wish(1) accordingly:
Ashok, did you get the chance to experiment with a zip attached to tclsh vs. attached to a library and what this means for apnadkarni added on 2024-07-31 03:24:47: Yes, ZIPVFS should probably say ZIPFS or **ZIP Virtual File System** And yes, the documentation is misleading, incomplete or wrong, I'm not sure which :-) I think the path referred to is correct when tclsh is build as a static shell and the ZIP is attached to it but not in the case of the default build where the ZIP attached to the tcl shared library, not tclsh itself. Will experiment and confirm. Further, I feel the `tclsh` should not mention `//zipfs:/` as the mount point but rather refer to `zipfs root` but that is a call we need to make as to whether to specifically document //zipfs:/ as the mount point. |
