i'm trying to figure out where this patch is stuck. could
you please let me know whether or not the following summary is accurate?

1. the patch fixes the tickets, and is wanted in general,
   there are just some details to adjust.

2. of the two patches send so far, one with regex, one
   with simple substring matching, the one without regex
   dependency is prefered.

3. to avoid windows globbing trouble interfering with
   substring matching for packages/modules, i used
   '.' instead of '*' as the wildcard. that works, and
   '.' does not usually occur at the end or beginning
   of package/module names, so it is unambiguous
   as well.

   however, the general preference seemed to be
   towards using '*' anyway, and to find some way
   to work around the globbing issue?

4. the globbing issue is that windows programs are
   supposed to be responsible for their own globbing,
   while bash for windows (at least in cygwin, i don't
   know about msys?) simulates shell-based globbing.

   as a result, calling ghc-compiled programs goes
   through one or two levels of filename globbing,
   depending on whether they are called from cmd
or from bash shells. this double globbing makes it impossible to escape '*' from filename globbing in order to preserve it for package/module name globbing when calling
   ghc-pkg from bash. alternatively, if self-globbing
   is switched off, calling ghc-pkg from cmd will
   have no filename globbing at all.

is that all correct so far?-) i'm not sure that having
'*' instead of '.' wildcards is worth the extra trouble, but if you insist on it, we need to find a workaround.
the only remotely reasonably one i could find was
the one i suggested before:

5. switch off default globbing for ghc-pkg, then do
   explicit filename globbing for the parameters
   that are filenames. since we need to avoid extra
   package dependencies, using a proper globbing
   library is out of the question, but we could have
   a small program that does nothing but echo its
   parameters, after self-globbing:

  -- glob.hs
   import System.Environment; main = getArgs >>= print

   then ghc-pkg could call this and read its output,
   for all filename parameters that still include '*' or '?'.

   this way, users of bash would get bash-style
   globbing for file parameters, but would still need
   to escape '*' for package/module name globbing,
   and users of cmd would get windows-style globbing
   for file parameters and package/module name
   globbing for package/module parameters.

as i said, i'm tempted to keep the patch unchanged,
with '.' wildcards to indicate prefix, suffix, and infix
matching. but anyway, i'd like to know how to proceed
with this. do i need to look into getting 5 above working?

claus


_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to