We just happened to notice today that the list of repositories maintained for the use of "fossil all" is (naturally) stored with exactly the case that was used when each repository was mentioned to fossil.

Several folder names happened to be stored with different case than they actually have in the file system. All was well with most commands since Windows is a case-preserving but case-insensitive place. But

   c:...> fossil all ignore some.fossil

didn't actually ignore it when done from that folder. Adding --dry-run and comparing to the output of "fossil all list" revealed the different case, and --dry-run shows that the problem is that SQLite's GLOB operator is case sensitive:

  DELETE FROM global_config
    WHERE name GLOB 'repo:K:/Some/MixedCase/PATH/some.fossil'

Should fossil all ignore respect the case-sensitive setting (or the mounted file system's capabilities, or the OS defaults, or....) and try to match names insensitively when appropriate for the context?

Or is that actually as large a can or worms as it sounds as I type this question?

It seems like adding "COLLATE NOCASE" after the WHERE clause might do the trick. But the difficulty is likely deciding when to add it. And then hoping no one needed proper handling of cases for anything other than 7-bit ASCII letters.

--
Ross Berteig                               r...@cheshireeng.com
Cheshire Engineering Corp.           http://www.CheshireEng.com/

_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to