Hi!

----

Can you please take a quick look at
http://cr.opensolaris.org/~gisburn/cr6842892_webrev_cleanup_002/ and
check whether there are any problems with the patch ?
It's a general-purpose clean-up patch for wevrev.sh with the following
goals:
- Make sure the generated HTML files use UTF-8 encoding even when the
local locale encoding is something different (e.g. even if it's
LC_CTYPE=ja_JP.PCK). This fixes issues with multibyte charatcers in
source files
- Add builtin manpage via --man (the same way as I did the --man support
for "bldenv"). The seperate webrev.1 file in the sources will be removed
in the next webrev and instead the build will use $ webrev --nroff # on
the script to get the *roff source for the manpage (this should lower
maintaince since "getopts" string and manpage are now one string/blob).
- Use more ksh93 features
- Kill "hidden" tabs in source (instead use ksh93 C-style $'...' string
literals, e.g. $'\t\n' is a string which contains one tab and one
newline character)
- Get rid of "eval" (primarily because it's insecure, a quoting hell and
a constant source of errors and pain). As a side-effect the use of
"source" (which is not exactly what I wanted but more invasive changes
make it more difficult) allows that pipe writer and "source" consumer to
run in paralle (e.g. webrev should be a tiny bit faster)
- Use ksh93 builtin commands
- Get the code $ ksh93 -n <scriptname> #-clean
- Fix the usage of PATH. By _default_ the script now uses the XPG6 PATH
_first_ to make sure we alwass use CSI-conformant tools and _then_
fall-back to other tools (like the GNU ones). This solves some headaches
with portabilty, stabilty and security.

Remaining issues:
- Temporary file handling should be revised and all temp. files should
go into one temporary sub-directory instead of going all into /tmp/
- Use $ printf "var=%s\n" "$var" # instead of $ print "var=$var" # to
avoid that stuff like '\' in "$var" causes trouble
- Fix intendation in builtin manpage
- Parallel mode (e.g. process files in parallel by default (worker
children run with bgnice, don't worry) with an option to use serial
mode)
- Add safeguard to make sure noone tries to use ancient ksh93 versions
(e.g. Solaris /usr/dt/bin/dtksh is based on ksh93 version 'd' _alpha_
and implodes on the first sight of this script). Minimum supported
version will likely be ksh93 from B72 (which matches ksh93 version 's+')
- Fix error handling and error messages

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.ma...@nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 3992797
 (;O/ \/ \O;)
_______________________________________________
tools-discuss mailing list
tools-discuss@opensolaris.org

Reply via email to