monotone-commits-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-commits-diffs] net.venge.monotone: e241bdf7b3c1f0941c974050e6


From: code
Subject: [Monotone-commits-diffs] net.venge.monotone: e241bdf7b3c1f0941c974050e608cafce6fa033c
Date: Sun, 16 Jan 2011 18:00:08 GMT

revision:            e241bdf7b3c1f0941c974050e608cafce6fa033c
date:                2011-01-16T17:59:47
author:              Timothy Brownawell  <address@hidden>
branch:              net.venge.monotone
changelog:
merge of '92348bbced2f677ee75d5a923361c2bc3f1ee6cb'
     and 'af0143c50983509f7c5dfb26dd86428980711dba'

manifest:
format_version "1"

new_manifest [5966525e78bfe30102a454a492794a7230514515]

old_revision [92348bbced2f677ee75d5a923361c2bc3f1ee6cb]

patch "INSTALL_windows_native.txt"
 from [7f2c5080adf14266d8949975f95c8e97dd8b7f0c]
   to [58778b6df48ac69f8fda2662e2ed2735b19d360a]

old_revision [af0143c50983509f7c5dfb26dd86428980711dba]

patch "monotone.texi"
 from [029fbc2a7f4830c94c22a73a1ad86f7bf03e8511]
   to [7b8697cc25916c0f68737ac70a22634eb5a5403f]
============================================================
--- INSTALL_windows_native.txt	7f2c5080adf14266d8949975f95c8e97dd8b7f0c
+++ INSTALL_windows_native.txt	58778b6df48ac69f8fda2662e2ed2735b19d360a
@@ -2,53 +2,46 @@
 
 on Windows (using MinGW):
 
-Many tools and packages are available on the SourceForge MinGW
-download site:
+Many tools and packages are available on SourceForge:
 
-https://sourceforge.net/projects/mingw/files/
+https://sourceforge.net/projects/<project>/files/
 
 That site is organized into several hierarchical lists of files. We
 give the hierarchy names here, rather than a complete download URL, to
-make it easy to check for new versions. The versions given here were
-used to build the current release of monontone.
+make it easy to check for new versions.
 
-Trying a new version of Boost can be dangerous.
+The versions given here may not be exactly the same versions as used to
+build the current release of monontone.
 
 These instructions work on a new computer, with only
 Windows XP installed.
 
-Package  | Version | location
+Package       | Version | location
 --------------------------
-MingGW   | 5.1.4   | Automated MinGW Installer | MinGW 5.1.4 | MinGW-5.1.4.exe
-MSYS     | 1.0.11  | MSYS Base System | msys-1.0.11 | MSYS-1.0.11.exe
-msysDTK  | 1.0.1   | MSYS Supplementary Tools | msysDTK-1.0.1 | msysDTK-1.0.1.exe
-libiconv | 1.13    | MinGW libiconv | Release 1.13 |
-        |         |  libiconv-1.13-mingw32-bin.tar.gz
-        |         |  libiconv-1.13-mingw32-dev.tar.gz
-        |         |  libiconv-1.13-mingw32-dll-2.tar.gz
-autoconf | 2.63    | MSYS autoconf | autoconf-2.63-1 | autoconf-2.63-1-msys-1.0.11-bin.tar.lzma
-automake | 1.11    | MSYS automake | automake-1.11-1 | automake-1.11-1-msys-1.0.11-bin.tar.lzma
-zlib     | 1.2.3   | zlib-1.2.3-1-mingw32 |
-        |         | libz-1.2.3-1-mingw32-dev.tar.gz
-        |         | libz-1.2.3-1-mingw32-dll-1.tar.gz
-gcc dll  |         | GCC Version 4 | Current Release_gcc-4.4.0 | gcc-core-4.4.0-mingw32-dll.tar.gz
-gettext  | 0.17    | MinGW gettext | gettext-0.17-1 |
-        |         | gettext-0.17-1-mingw32-bin.tar.lzma
-        |         | gettext-0.17-1-mingw32-dev.tar.lzma
-        |         | libgettextpo-0.17-1-mingw32-dll-0.tar.lzma
-        |         | libintl-0.17-1-mingw32-dll-8.tar.lzma
-boost    | 1.34.1  | http://prdownloads.sf.net/boost/boost_1_34_1.tar.bz2?download
-Lua      | 5.1.4   | http://www.lua.org/ | lua-5.1.4.tar.gz
-pcre     | 7.8     | http://www.pcre.org/ | pcre-7.8.tar.bz2
-botan    | 1.8.4   | http://botan.randombit.net/download.html | Botan-1.8.4.tbz
-sqlite3  | 3.6.16  | http://www.sqlite.org/download.html | sqlite-amalgamation-3.6.16.tar.gz, with makefile
-libidn   | 1.9     | ftp://ftp.gnu.org/gnu/libidn | libidn-1.9.tar.gz
-Depends.exe|       | http://www.dependencywalker.com/ ; also comes with Visual Studio
+Python        | 2.7.1   | http://www.python.org/
+                        | "Windows Installer" under "Quick Links (2.7.1)"
+mingw-get-inst| latest  | http://sourceforge.net/projects/mingw/files/
+                        | -> Automated MinGW Installer
+                        | -> mingw-get-inst
+                        | -> mingw-get-inst-20101030
+                        | -> mingw-get-inst-20101030.exe
+boost         | 1.45.1  | http://sourceforge.net/projects/boots/files/
+                        | -> boost -> 1.54.0 -> boost_1_45_0.tar.gz
+Lua           | 5.1.4   | http://www.lua.org/
+                        | -> download
+                        | -> "...current release is >Lua 5.1.4<" under "Source"
+                        | lua-5.1.4.tar.gz
+pcre          | 8.11    | http://www.pcre.org/
+                        | -> ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
+                        | -> pcre-8.11.tar.gz
+botan         | 1.8.11  | http://botan.randombit.net/download.html
+                        | "Source: >tar/gzip<" under "Current Stable Release"
+sqlite3       | 3.7.4   | http://www.sqlite.org/download.html
+                        | -> sqlite-autoconf-3070400.tar.gz
+libidn        | 1.19    | ftp://ftp.gnu.org/gnu/libidn/
+                        | -> libidn-1.19.tar.gz
+Depends.exe   |         | http://www.dependencywalker.com/ ; also comes with Visual Studio
 
-msysDTK installs autoconf, automake, Perl, CVS, crypt, and
-other tools needed by the autoconf tools.
-
-However, monotone requires a newer autoconf and automake.
 In general, there are two versions of most tools on the
 MinGW site; mingw and msys. MinGW versions are intended to
 be run from a DOS shell, msys versions from an Msys shell.
@@ -64,98 +57,102 @@
 postscript format, which requires tools not (yet) available
 for MinGW.
 
-1. MinGW - run installer, accept defaults but add g++ on the package selection page (installs to c:/MinGW)
-2. MSYS - run installer, accept defaults (installs to c:/Msys/1.0)
-3. msysDTK - run installer, accept defaults (installs to c:/Msys/1.0)
+The commands below assume you download files to C:\MinGW\Msys\1.0\ , which
+maps to both / and /usr/ under the MinGW shell.
 
-4. libiconv
-  start the Msys shell.
-  $ cd /mingw
-  $ tar zxf libiconv-1.13-mingw32-bin.tar.gz
-  $ tar zxf libiconv-1.13-mingw32-dev.tar.gz
-  $ tar zxf libiconv-1.13-mingw32-dll-2.tar.gz
+01. Python (needed for the Botan configure script)
+  01.1 Run the installer, accept all defaults.
+  01.2 Add python to your PATH
+    Right-click on "My Computer", select "Properties"
+    Go to the "Advanced" tab, and click on "Environment Variables"
+    To add Python to everyone's path:
+      Select "Path" (case-insensitive) in the "System variables" at the botton.
+      Click "Edit".
+      Add ";C:\Python27" (without the quotes) to the end of the value.
+    To add Python to only your path:
+      If there is a "Path" entry in the "User variables for ..." section,
+      edit it as above.
+      If there is not a "Path" entry, click on "New" in the User variables section,
+      and enter "PATH" as the variable name and "C:\Python27" as the value.
+    To verify your new PATH, you can go to Start->Run and enter "cmd", then in the
+    command window run "echo %PATH%" and look for the Python directory in the output.
 
-5. autoconf
-  $ cd /
-  $ tar --lzma -xf autoconf-2.63-1-msys-1.0.11-bin.tar.lzma
+02. MinGW
+  Run mingw-get-inst (graphical installer for mingw-get and the MinGW base system).
+  At the "Select Components" screen, add "C++ compiler" and "MinGW Developer Toolkit".
+    Other than this, accept all defaults.
+  Open the MinGW shell (Start->All Programs->MinGW->MinGW Shell)
+  Run the following:
+  $ mingw-get install msys-autoconf msys-automake mingw32-libiconv
+  $ mingw-get install mingw32-zlib mingw32-libz-dev mingw32-gettext
 
-6. automake
-  $ cd /
-  $ tar --lzma -xf automake-1.11-1-msys-1.0.11-bin.tar.lzma
-
-7. zlib
-  $ cd /mingw
-  $ tar zxf libz-1.2.3-1-mingw32-dev.tar.gz
-  $ tar zxf libz-1.2.3-1-mingw32-dll-1.tar.gz
-  $ cp bin/libz-1.dll bin/zlib1.dll
-
-8. gettext
-  $ cd /mingw
-  $ tar --lzma -xf gettext-0.17-1-mingw32-bin.tar.lzma
-  $ tar --lzma -xf gettext-0.17-1-mingw32-dev.tar.lzma
-  $ tar --lzma -xf libgettextpo-0.17-1-mingw32-dll-0.tar.lzma
-  $ tar --lzma -xf libintl-0.17-1-mingw32-dll-8.tar.lzma
-  $ tar zxf gcc-core-4.4.0-mingw32-dll.tar.gz
-
-9. boost; only need headers
+03. boost; only need headers
   $ cd /usr
   $ mkdir src
   $ cd src
-  $ tar jxf boost_1_34_1.tar.bz2
-  $ cd boost_1_34_1
+  $ tar -zxf ../boost_1_45_1.tar.gz
+  This may give errors about gid_t out of range, and then say
+  "Exiting with failure status due to previous errors"; you can
+  ignore this.
+  $ cd boost_1_45_1
   $ cp -a boost /mingw/include
 
-10. Lua
+04. Lua
    $ cd /usr/src
-   $ tar zxf lua-5.1.4.tar.gz
+   $ tar -zxf ../lua-5.1.4.tar.gz
    $ cd lua-5.1.4
    $ make mingw INSTALL_TOP=/mingw
    $ make install INSTALL_TOP=/mingw
 
-11. pcre
+05. pcre
    $ cd /usr/src
-   $ tar jxf pcre-7.8.tar.bz2
-   $ cd pcre-7.8
+   $ tar -zxf ../pcre-8.11.tar.gz
+   $ cd pcre-8.11
    $ ./configure --prefix=/mingw
    $ make install
 
-12. botan
-   12.1 unpack, configure:
-        $ cd /usr/src
-        $ tar jxf Botan-1.8.4.tbz
-        $ cd Botan-1.8.4
-        $ ./configure.pl --with-tr1=none
-   12.2 edit Makefile, delete -ansi from LANG_FLAGS
-   12.3 install:
-        $ make install
+06. botan
+   $ cd /usr/src
+   $ tar -zxf ../Botan-1.8.11.tgz
+   $ cd Botan-1.8.11
+   $ ./configure.py --cc=gcc --os=mingw
+   The Botan configure script generates paths with Python's
+   os.path.join(...), which in the case of the Windows Python
+   we installed uses '\' as the path separator. There are a
+   couple of places in the Makefile where this causes problems.
+   $ sed -i 's#\\\(.\)#/\1#g' Makefile
+   $ make install
 
-13. sqlite3
+07. sqlite3
    $ cd /usr/src
-   $ tar zxf sqlite-amalgamation-3.6.16.tar.gz
-   $ cd sqlite-3.6.16
+   $ tar -zxf ../sqlite-autoconf-3070400.tar.gz
+   $ cd sqlite-autoconf-3070400
    $ ./configure --prefix=/mingw
    $ make install
 
-14. libidn
+08. libidn
    $ cd /usr/src
-   $ tar zxf libidn-1.9.tar.gz
-   $ cd libidn-1.9
+   $ tar -zxf ../libidn-1.19.tar.gz
+   $ cd libidn-1.19
    $ ./configure --prefix=/mingw
    $ make install
 
-15. Depends.exe
+09. Depends.exe
    If you have Visual Studio installed, you should be able to skip this.
    If you don't, then download the appropriate depends*.zip and
-   unpack it someplace in your %PATH%.
+   unpack it someplace in your %PATH% (for example, C:\MinGW\bin\).
    This is only used by the testsuite, in particular the empty_environment test.
    If you just want to build monotone for your own use, you can skip this and
    just ignore that that test fails.
 
-16. build monotone
+10. build monotone
+   You can skip the CXXFLAGS and LDFLAGS if you really want to, but if you do that
+   then libgcc_s and libstdc++-6 will be linked dynamically and the resulting
+   monotone binary will take several extra seconds to start.
    $ cd /c/.../monotone
-   $ export PATH=/bin:/mingw/bin
-   $ autoreconf -i
-   $ touch config.h.in
-   $ ./configure sqlite3_LIBS=-lsqlite3
+   $ autoreconf -i # not needed if you use the distributed tarball
+   $ CXXFLAGS="-static-libgcc -static-libstdc++ -O2 -Wall"; export CXXFLAGS
+   $ LDFLAGS="-static-libgcc -static-libstdc++"; export LDFLAGS
+   $ ./configure
    $ make
 
============================================================
--- monotone.texi	029fbc2a7f4830c94c22a73a1ad86f7bf03e8511
+++ monotone.texi	7b8697cc25916c0f68737ac70a22634eb5a5403f
@@ -4955,7 +4955,7 @@ @subsection Global Options
 These options are available on all commands.
 
 @ftable @command
address@hidden --confdir <arg>
address@hidden@item --confdir <arg>
 Set the location of the configuration directory (default
 @file{$HOME/.monotone} on Unix and Cygwin, @file{%APPDATA%\monotone%} on
 Windows MinGW). In this manual, references to these specific directories are
@@ -10979,6 +10979,8 @@ @section Automation
 operations on password-encrypted private keys will therefore fail
 unless the @address@hidden hook is set up locally.
 
+Workspace options are read before executing each command.
+
 @item Multiple streams
 
 The multiple stream encoding allows the output of errors and warnings to be
@@ -11172,7 +11174,7 @@ @section VCS
 directory you point it at will become the root of monotone's version of
 the tree.
 
address@hidden mtn git_export address@hidden address@hidden
address@hidden address@hidden mtn git_export address@hidden address@hidden
 @itemx  address@hidden address@hidden
 @itemx  [--log-revids] [--log-certs] [--use-one-changelog]
 @itemx  address@hidden
@@ -11183,8 +11185,7 @@ @section VCS
 
 The @option{--authors-file} option may be used to map monotone author
 and committer names to different values in a manner similar to that
-documented in git-svn(1). Mappings are specified in the
address@hidden as:
+documented in git-svn(1). Mappings are specified in the file as:
 @verbatim
 loginname = Joe User <address@hidden>
 @end verbatim
@@ -11302,7 +11303,7 @@ @chapter Formats
 while @code{stdio} is used for communication with @code{automate stdio}.
 
 The @code{stdio} format is not described here.  For information on it,
-see @ref{mtn automate stdio}.
+see @address@hidden automate stdio}}.
 
 The @code{packet} format is not described here; see @ref{Packet I/O}.
 For examples, see @address@hidden automate packet_for_fdelta}}, @address@hidden
@@ -12647,19 +12648,20 @@ @subsection GIT Export Hooks
 requires translation of monotone author cert values and associated
 signing keys into corresponding git author and committer
 values. Translation of author and committer values and validation of
-the results is controlled by these hooks. See @ref{Default hooks}.
+the results is controlled by these hooks. See @address@hidden git_export}}.
 
 @ftable @code
 
 @item unmapped_git_author(@var{author})
 
 This hook is called for any git author or committer value that does
-not come from the current @emph{author map} file. If no @emph{author
-map} file is specified this hook will be called for @emph{every}
-unique git author and committer value.  It may return the value
-unchanged or modify it in some way in an effort to ensure that it is
-valid. The default implementation attempts several common pattern
-replacements to produce valid authors from monotone authors.
+not come from the current @emph{author map} file, specified by
address@hidden If no @emph{author map} file is specified
+this hook will be called for @emph{every} unique git author and
+committer value.  It may return the value unchanged or modify it in
+some way in an effort to ensure that it is valid. The default
+implementation attempts several common pattern replacements to produce
+valid authors from monotone authors.
 
 @item validate_git_author(@var{author})
 
@@ -12670,6 +12672,8 @@ @subsection GIT Export Hooks
 true if the author is valid or false if it is not. The export will be
 aborted if this hook returns false for any value.
 
+The default definition enforces the @code{Name <email>} pattern.
+
 @end ftable
 
 @node Validation Hooks, Meta Hooks, GIT Export Hooks, Hooks
@@ -12681,31 +12685,34 @@ @subsection Validation Hooks
 @ftable @code
 @item validate_changes (@var{revision_text}, @var{branchname})
 
-This hook is called just after the to-be-committed changes and the branch
-have been logically verified and before the user enters his/her commit message.
+This hook is called by @address@hidden commit}} just after the
+to-be-committed changes and the branch have been logically verified
+and before the user enters his/her commit message.
 @var{revision_text} is the full text of the changes for this revision,
-which can be parsed with the parse_basic_io function. The second parameter,
address@hidden, is the branch for this commit - unless it gets changed
-in the editor later on.
+which can be parsed with the @address@hidden function. The
+second parameter, @var{branchname}, is the branch for this commit -
+unless it gets changed in @address@hidden later on.
 
-If the hook finds the changes satisfactory, it can return @code{true,
-""}. If it finds fault, then it can return @code{false, reason} where
address@hidden is the reason the changes were rejected. By default, this hook
-is not defined and is thus ignored during a commit.
+If the hook finds the changes satisfactory, it should return
address@hidden, ""}. If it finds fault, then it should return @code{false,
+reason} where @var{reason} is a string containing the reason the
+changes were rejected. By default, this hook is not defined and acts
+as if it returned @code{true, ""}.
 
 @item validate_commit_message (@var{message}, @var{revision_text}, @var{branchname})
 
-This hook is called after the user has entered his/her commit message.
address@hidden is the commit message that the user has entered and
address@hidden is the full text of the changes for this revision,
-which, again, can be parsed with the parse_basic_io function.
-The @var{branchname} on which the new revision will be committed if all goes
-well is passed in as the third parameter.
+This hook is called by @address@hidden commit}} after
address@hidden@ref{edit_comment}}.  @var{message} is the result of
address@hidden and @var{revision_text} is the full text of the
+changes for this revision, which can be parsed with the
address@hidden@ref{parse_basic_io}} function.  @var{branchname} is parsed from
+the result of @code{edit_comment}.
 
-If the hook finds the commit message satisfactory, it can return @code{true,
-""}. If it finds fault, then it can return @code{false, reason} where
address@hidden is the reason the message was rejected. By default, this hook
-is not defined and is thus ignored during a commit.
+If the hook finds the commit message satisfactory, it should return
address@hidden, ""}. If it finds fault, then it should return @code{false,
+reason} where @var{reason} is a string containing the reason the
+message was rejected. By default, this hook is not defined and acts as
+if it returned @code{true, ""}.
 
 @end ftable
 
@@ -12719,11 +12726,15 @@ @subsection Meta Hooks
 @ftable @code
 @item hook_wrapper (@var{func_name}, @var{...})
 
-This hook is explicitely called on every execution of @command{automate lua}.
-It takes a function name and zero or more string function arguments which are
-internally evaluated into Lua code. It returns a dump of the return value of
-the called function in Lua code on success.
+This hook is called on every execution of @address@hidden automate
+lua}}.
 
+The default definition takes a function name and zero or more string
+function arguments which are evaluated into a Lua function call. It
+returns a dump of the return value of the called function.
+
+There is very little reason for a user to redefine this function.
+
 @end ftable
 
 @page
@@ -12731,43 +12742,42 @@ @section Additional Lua Functions
 @section Additional Lua Functions
 
 This section documents the additional Lua functions made available to
-hook writers.
+hook and user command writers.
 
 @ftable @code
 
 @item alias_command(@var{original}, @var{alias})
 
-This function adds a new alias for a monotone command.  A call to this function would
-normally be placed directly in the @file{monotonerc} file, rather than in a hook function.
+This function adds a new alias for a monotone command.  @var{original}
+must be an existing montone command, @var{alias} is the new alias.
 
 @item change_workspace(@var{directory})
 
 Change to workspace @var{directory}, which may be absolute or
-relative to the directory that was current when mtn was started.
+relative to the directory that was current when monotone was started.
 
 Throws an error if @var{directory} does not exist or is not a
 workspace (does not contain @file{_MTN}).
 
-After calling change_workspace, the next operation should read the
-workspace options. @command{mtn_automate} does this; other Lua
-extensions do not. In addition, @command{automate stio} reads the
-workspace options before executing each command.
+After calling @code{change_workspace}, the next operation should read
+the workspace options. @address@hidden does this; other Lua
+functions do not.
 
address@hidden existonpath(@var{possible_command})
address@hidden existonpath(@var{command})
 
-This function receives a string containing the name of an external
-program and returns 0 if it exists on path and is executable, -1
-otherwise.
-As an example, @code{existonpath("xxdiff")} returns 0 if the
+Return 0 if @var{command} (a string) exists on @code{$PATH} and is
+executable, -1 otherwise.
+
+For example, @code{existonpath("xxdiff")} returns 0 if the
 program xxdiff is available.
+
 On Windows, this function automatically appends ``.exe'' to the
-program name. In the previous example, @code{existonpath} would search
-for ``xxdiff.exe''.
+program name if it is not present. In the previous example,
address@hidden would search for ``xxdiff.exe''.
 
 @item get_confdir()
 
-Returns the path to the configuration directory, either implied or given
-with @option{--confdir}.
+Returns the path to the configuration directory; see @address@hidden
 
 @item get_ostype()
 
@@ -12775,108 +12785,121 @@ @section Additional Lua Functions
 
 @item guess_binary_file_contents(@var{filespec})
 
-Returns true if the file appears to be binary, i.e. contains one or
-more of the following characters:
+Returns true if the file contains one or more of the following
+bytes:
 @smallexample
 @group
 0x00 thru 0x06
-0x0E thru 0x1a
-0x1c thru 0x1f
+0x0E thru 0x1f
+0x7f
 @end group
 @end smallexample
address@hidden see file_io.cc guess_binary
 
 @item guess_terminal_width()
 
 Returns the size of the terminal window as number or a sane default
-(72) if the information cannot be retrieved.
+(80) if the information cannot be retrieved.
 
 @item include(@var{scriptfile})
 
-This function tries to load and execute the script contained into
-scriptfile.  It returns true for success and false if there is an
+This function tries to load and execute the Lua script contained in
address@hidden  It returns true for success and false if there is an
 error.
 
+This is the same as Lua @code{loadfile}.
+
 @item includedir(@var{scriptpath})
 
 This function loads and executes in alphabetical order all the scripts
-contained in the directory scriptpath.
+contained in the directory @var{scriptpath}.
 
 If one of the scripts has an error, the function doesn't process the
-remaining scripts and immediately returns false.
+remaining scripts.
 
+There is no useful return value.
+
 @item includedirpattern(@var{scriptpath}, @var{pattern})
 
 This function loads and executes in alphabetical order all the scripts
-contained into the directory scriptpath that match the given pattern.
+contained into the directory @var{scriptpath} that match @var{pattern}
+(a glob pattern).
+
 If one of the scripts has an error, the functions doesn't process the
-remaining scripts and immediately returns false.
+remaining scripts.
 
address@hidden is_executable(@var{filespec})
+There is no useful return value.
 
-This function returns true if the file is executable, false
-otherwise.  On Windows this function returns always false.
address@hidden is_executable(@var{file})
 
+This function returns true if @var{file} is executable, false
+otherwise.  On Windows this function always returns false.
+
 @item kill(@var{pid} [, @var{signal}])
 
 This function calls the kill() C library function on POSIX systems and
 TerminateProcess on Win32 (in that case @var{pid} is the process
 handle).  If the optional @var{signal} parameter is missing, SIGTERM
 will be used.
+
 Returns 0 on success, -1 on error.
 
address@hidden make_executable(@var{filespec})
address@hidden make_executable(@var{file})
 
-This function marks the named file as executable.  On Windows has no
+This function marks @var{file} as executable.  On Windows this has no
 effect.
 
address@hidden match(@var{glob}, @var{string})
address@hidden globish.match(@var{glob}, @var{string})
 
-Returns true if @var{glob} matches @var{str}, return false otherwise.
+Returns @code{true} if @var{glob} matches @var{str}, return @code{false} otherwise.
 
 @item mkstemp(@var{template})
 
-Like its C library counterpart,  mkstemp creates a unique name and
-returns a file descriptor for the newly created file.
-The value of template should be a pointer to a character buffer loaded
-with a null-terminated string that consists of contiguous, legal file
-ad path name characters followed by six Xs.
-The function mkstemp replaces the Xs by an alpha-numeric sequence
-that is chosen to ensure that no file in the chosen directory has that
-name.
-Furthermore, subsequent calls to mkstemp within the same process
+Returns a unique name for a writeable temporary file. Note that it
+does not create the file.
+
address@hidden should be a string that consists of contiguous, legal file
+and path name characters followed by six 'X's.
+
address@hidden replaces the 'X's by an alpha-numeric sequence
+that is unique in the directory given in @var{template}.
+
+Subsequent calls to @code{mkstemp} within the same process
 each yield different file names.
-Unlike other implementations, monotone mkstemp allows the template
-string to contain a complete path, not only a filename, allowing users
-to create temporary files outside the current directory.
 
+Unlike other implementations, monotone mkstemp allows @var{template}
+to contain a complete path, not only a filename, allowing users to
+create temporary files outside the current directory.
+
 @strong{Important notice:address@hidden
-To create a temporary file, you must use the @code{temp_file()}
+To create a temporary file, you should use the @code{temp_file}
 function, unless you need to run monotone with the @option{--no-builtin-rcfiles}
 option.  @code{temp_file()} builds on @code{mkstemp()} and creates a
 file in the standard TMP/TEMP directories.
 For the definition of @code{temp_file()}, see @ref{Default hooks}.
 
address@hidden mtn_automate( ... )
address@hidden@item mtn_automate(@var{command} @var{args...} )
 
-The @code{mtn_automate} Lua function calls the Monotone
address@hidden command passed in its arguments. The result of the
-call is a pair consisting of a boolean return code, indicating whether
-the call was successful or not, and a string being the @code{stdout}
-output from the @command{automate} command. This function is not for use
-in ordinary Lua hooks, but rather for Lua based commands as defined by
-the Lua function @ref{register_command}.
address@hidden calls the monotone @command{automate}
address@hidden, with @var{args...} (may include options). The result of
+the call is a pair consisting of a boolean (@code{true} on success),
+and a string containing the @code{stdout} output from
address@hidden @var{command}}.
 
+This function is not for use in ordinary Lua hooks, but rather for Lua
+based commands as defined by the Lua function @ref{register_command}.
+
 Note that keyboard interaction is disabled, just as if @option{--non-interactive}
 is specified. Actions which require operations on password-encrypted private
-keys will therefor fail unless the @code{get_passphrase} hook is set up locally.
+keys will therefor fail unless the @address@hidden hook is set up locally.
 
address@hidden parse_basic_io(@var{data})
address@hidden@item parse_basic_io(@var{data})
 
-Parse the string @var{data}, which should be in basic_io format. It returns nil
-if it can't parse the string; otherwise it returns a table. This will be a list
-of all statements, with each entry being a table having a "name" element that is
-the symbol beginning the statement and a "values" element that is a list of all
-the arguments.
+Parse the string @var{data}, which should be in @code{basic_io}
+format. Returns nil if it can't parse the string; otherwise
+returns a table, with each entry in the table corresponding to one
address@hidden line, consisting of a @code{name} element and a
address@hidden element.
 
 For example, given this as input:
 
@@ -12903,21 +12926,27 @@ @section Additional Lua Functions
 
 @item regex.search(@var{regexp}, @var{string})
 
-Returns true if a match for @var{regexp} is found in @var{str}, return
-false otherwise.  @xref{Regexps}, for the syntax of @var{regexp}.
+Returns @code{true} if a match for @var{regexp} is found in @var{str},
address@hidden otherwise.  @xref{Regexps}, for the syntax of
address@hidden
 
 @address@hidden register_command(@var{name}, @var{params}, @var{abstract}, @var{description}, @var{function})
 
-Add a command named @var{name} to the @var{user} command group in monotone.  This function is
-normally called directly from a @file{monotonerc} file rather than a hook.  When the user issues the
-registered command, monotone will call the lua @var{function} name supplied.  That function would
-then normally use mtn_automate() calls to service the request.
+Add a command named @var{name} to the user command group in monotone.
+When the user issues the registered command, monotone will call the
+lua @var{function} name supplied.  That function would then normally
+use @address@hidden calls to service the
+request. @var{params} is a string with the list of parameters for the
+command, @var{abstract} gives a brief description, @var{description} a
+longer description. @var{params}, @var{abstract}, @var{description}
+are output by @command{mtn help}.
 
 @item server_request_sync(@var{what}, @var{address}, @var{include}, @var{exclude})
 
 Initiate a netsync connection to the server at @var{address}, with the
-given include and exclude patterns, of type @option{sync}, @option{push},
-or @option{pull}, as given by the @var{what} argument.
+given @var{include} and @var{exclude} branch patterns. @var{what} is
+one of @option{sync}, @option{push}, or @option{pull}, indicating
+netsync operation.
 
 When called by a monotone instance which is not running the @option{serve}
 command, this function has no effect.
@@ -12938,6 +12967,7 @@ @section Additional Lua Functions
 Starts the named executable with the given arguments.  Returns the
 process PID on POSIX systems, the process handle on Win32 or -1 if
 there was an error.
+
 Calls fork/execvp on POSIX, CreateProcess on Win32.
 
 @strong{Important notice:address@hidden
@@ -12963,6 +12993,7 @@ @section Additional Lua Functions
 Wait until the process with given PID (process handle on Win32) exits.
 Returns two values: a result value and the exit code of the waited-for
 process.
+
 The exit code is meaningful only if the result value is 0.
 
 @end ftable

reply via email to

[Prev in Thread] Current Thread [Next in Thread]