# ticket

tkt_uuid: c26c63eb1b36b9e043413f120ee68beb635dfde5
type: Code_Defect
status: Open
foundin: [6f42e76d80]
title: 'merge --backout' does not handle conflicts properly
comment:
  I had some checkin (A) that introduced a bad change.

  Then trying to fix it, I made a new checkin (B) with some changes in the lines introduced in (A).

  When I saw that the change B was not improving the situation... I decided to run "fossil merge --backout A". It took away all the lines introduced by A, but it did not say anything, that the lines in the working directory were not exactly those introduced by A.

  Shouldn't it say, that the change A cannot be backed out directly, as it has conflicts introduced by B?


tkt_uuid: c2c6e35506f5ffec316bb8f2e006cabcb38afdf7
type: Code_Defect
status: Closed
severity: Important
foundin: 93d7f371cc
private_contact: a8c39c4251da5fd17c2570e9580a02303e5e0805
resolution: Unable_To_Reproduce
title: Can't create Attachments to Wiki pages
comment:
  Go to any Wiki page and click Attach. Everything seems to work and there are entries put in the Blob and RcvFrom tables. It just doesn't show up on the page or /attachlist (to see all repository attachments).

  <hr><i>anonymous added on 2010-07-23 04:53:06:</i><br>
  I guess the Attachment permsission isn't granted to anonymous. Sorry for the noise.

  <hr><i>anonymous added on 2010-07-23 08:39:10:</i><br>
  If it's not active for anonymous, the option shouldn't be there.

  <hr><i>drh added on 2010-07-25 20:52:12:</i><br>
  The "Attach" option does not appear if attaching is not allowed.
  Attaching works on my tests - I am unable to find a case that does not work.

  Please reopen this ticket with additional details if you think this
  assessment is incorrect.


tkt_uuid: c2efdd64bff166c33d3336989b86dcae277dc247
type: Feature_Request
status: Fixed
priority: High
severity: Important
foundin: trunk
private_contact: 657fecc17bdc2306d28088355d2cfe0485c38cab
resolution: Fixed
title: Allow for replay-style imports to the ticket system
comment:
  While exploring ways to get Tcl/Tk's ticket history ported from SF to fossil, I thought of doing it by replay, i.e. parse the XML dump of the SF tracker and feed every action recorded there into the command line interface of fossil. This will probably take longer to run than a converter that works directly on the SQLite database, but it requires less knowledge of fossils internals for writing the converter.

  I spotted two (hopefully small) additions to the ticket commands that would be needed to do this, but more might turn up on the way.
    1.  Add an option to <b>ticked add</b> to specify the Id of the newly created ticket instead of auto-generating one, so that the SF ticket numbers can be retained and existing references to them don't break.
    2.  Add an option to <b>ticket add</b> and <b>ticket set</b> to specify the timestamp for the change to be added, so that it appears in the correct historic context.

  <hr /><i>mistachkin added on 2012-08-08 03:41:09 UTC:</i><br />
  Upping priority, this feature is critical to migrating off of SF.


tkt_uuid: c3971eac71a1bd01cc2e47b8c1f2d109b54d5574
type: Code_Defect
status: Open
priority: Medium
severity: Minor
foundin: [7c37b46b12] 2010-04-15 23:53:15 UTC, [528c581154] 2010-09-28 18:40:01 UTC
private_contact: ae1a74676bb0d1ac520802109f926567b1637ac7
resolution: Open
title: fossil breaks if HOME points to read-only directory
comment:
  Try the following:

  <pre>
  export HOME=/
  cd /tmp
  fossil new test.fossil
  </pre>

  The following message is produced:

  <pre>
  fossil: SQLITE_CANTOPEN: cannot open file at source line 26294
  fossil: unable to open database file

  If you have recently updated your fossil executable, you might
  need to run "fossil all rebuild" to bring the repository
  schemas up to date.
  </pre>

  This example assumes that the logged in user does not have write access to / but does have write access to /tmp.
  This is a contrived example that demonstrates the problem; the actual problem was encountered while attempting to use fossil when running as another user (via sudo), but with the old value of HOME (the default sudo behavior of preserving the original environment).

  If instead HOME points to another user's directory that has a .fossil, but the current user does not have write access to it and you attempt to clone (instead of just new) you get:

  <verbatim>
  fossil: SQLITE_READONLY: statement aborts at 19: [INSERT OR IGNORE INTO 
  global_config(name,value)VALUES('repo:/tmp/foo.fos',1)] attempt to write a readonly database
  fossil: attempt to write a readonly database
  INSERT OR IGNORE INTO global_config(name,value)VALUES('repo:/tmp/foo.fos',1)

  If you have recently updated your fossil executable, you might
  need to run "fossil all rebuild" to bring the repository
  schemas up to date.
  fossil: SQLITE_ERROR: statement aborts at 2: [ROLLBACK] cannot rollback - no transaction is active
  </verbatim>

  I was expecting fossil to work whether or not it can muck around with ~/.fossil.  vim works whether or not it can write to ~/.viminfo (although it does complain if it can't).

  <hr /><i>anonymous added on 2010-10-06 12:35:15:</i><br />
  This also happens when using "sudo" to impersonate another user, because "sudo" doesn't change the HOME variable like "su" does. I have just encountered this on Ubuntu Lucid 32-bit. I am using fossil version [528c581154] 2010-09-28 18:40:01 UTC.

  buildbot@nikko:/var/lib/buildbot/Reu2/slave/bin/nikko/build$ fossil clone http://fatman@dreamtrack.dnsalias.com/fossils/reu2.cgi/reu2 ./reu2.fossil
  <br>fossil: home directory /home/fatman must be writeable

  Regards,
  Adam J Richardson


tkt_uuid: c3d668ad5286f0e780b47c54449314beea5edca2
type: Code_Defect
status: Fixed
foundin: b99aa66d1f
private_contact: 05f652db744266759b20d248ec2f451629420388
resolution: Fixed
title: "clean" command has an option --all, but documentation says it's --force
comment:
  Either documentation or code is wrong about the "clean" command option to disable prompt before removing files.

  Documentation says:
  <pre>
  $ fossil help clean
  Usage: fossil clean ?--force? ?--dotfiles?
  ...
  You will be prompted before removing each file. If you are
  sure you wish to remove all "extra" files you can specify the
  optional --force flag and no prmpts will be issued.
  </pre>

  However, --force doesn't work (Fossil asks before removing files). Code in <code>checkin.c</code> ([2e4a6e1c0f]) says it wants "--all" option:

  <pre>
    allFlag = find_option("all","a",0)!=0;
  </pre>

  And "--all" option actually works.

  So either code or documentation needs to be updated.

  <hr><i>drh added on 2009-10-11 19:53:14:</i><br>
  Check-in [5308e468153]

  <hr><i>anonymous added on 2009-10-11 20:29:39:</i><br>
  Thanks!

  Also, here's an update for <code>www/reference.wiki</code>, since it has the old -all option and lacked --dotfiles.

  <verbatim>
  --- www/reference.wiki
  +++ www/reference.wiki
  @@ -214,18 +214,22 @@
       unless the "--nosign" options is used.  All files that have
       changed will be committed unless some subset of files is specified
       on the command line.
   
   <hr><a href="#tof">&#710;</a>
  -    <a name="clean">Usage: </a><a href="cmd_clean.wiki">fossil clean</a> ?-all?
  +    <a name="clean">Usage: </a><a href="cmd_clean.wiki">fossil clean</a> ?--force? ?--dotfiles?
       Delete all "extra" files in the source tree.  "Extra" files are
       files that are not officially part of the checkout.  See also
       the "extra" command. This operation cannot be undone.
   
       You will be prompted before removing each file. If you are
       sure you wish to remove all "extra" files you can specify the
  -    optional -all flag.
  +    optional --force flag and no prmpts will be issued.
  +
  +    Files and subdirectories whose names begin with "." are
  +    normally ignored.  They are included if the "--dotfiles" option
  +    is used.
   
   <hr><a href="#tof">&#710;</a>
       <a name="clone">Usage: </a><a href="cmd_clone.wiki">fossil clone</a> URL FILENAME
       Make a clone of a repository specified by URL in the local
       file named FILENAME.
  </verbatim>


tkt_uuid: c43d2d9477c2d59a7399201df600a43765a3a579
type: Code_Defect
status: Closed
severity: Critical
foundin: babe3fb52a
private_contact: 2f102b33d8f807336292e56ff47c6c59de4876c0
resolution: Fixed
title: segfault on attempted merge.
comment:
  attempting to merge an accidental branch results in segfault: backtrace (transcribed by hand):


  <pre>
  Program terminated with singal 11, Segmentation fault.
  #0 0x000000000042a058 in blob_merge (pPivot=0x7f7fffffdb50, pV1=ox7f7fffffda60, pV2=0x7f7fffffdb70, pOut=0x7f7fffffdb30) at ./bld/merge3_.c: 48
  #1 0x000000000042a210 in merge_3way (pPivot=0x7f7fffffdb50, zv1=0x7f7ff7b0ef80 "./path/to/file", pV2=0x7f7fffffdb70, pOut=0x7f7fffffdb30 at ./bld/merge3_.c: 398
  #2 0x00000000004295bb in merge_cmd () at ./bld/merge_.c:366
  #3 0x0000000000425e8f in main (argc=2, argv=0x7f7fffffdc70) at ./bld/main_.c:287
  </pre>

  size of file in merge attempt == 21472119 bytes.

  <hr /><i>bharder added on 2011-03-02 00:37:18 UTC:</i><br />
  Fixed per ci [e2122bd620]. Thx drh.


tkt_uuid: c46b0f7bb7241a02a7165f108206f866e0f3f7b3
type: Feature_Request
status: Open
severity: Severe
foundin: 2011-04-13 12:05:18
title: Support HTTP Basic Auth for sync operations
comment:
  HTTP Basic Auth needs to be supported for sync operations in order to be compatible with any kind of user validation done by the web server hosting fossil.

  A patch was provided (6 lines of code) by mightyhe on Sun, 27 Mar 2011 07:45:06 -0700 and may be accessed at:

    <a href="http://www.mail-archive.com/fossil-users@lists.fossil-scm.org/msg04219.html">http://www.mail-archive.com/fossil-users@lists.fossil-scm.org/msg04219.html</a>

  and for convenience is included here (NOTE: a fix for an incorrect line terminator on the Proxy-Authorization header is also mixed in with this patch):
  <verbatim>
  Index: src/http.c
  ===================================================================
  --- src/http.c
  +++ src/http.c
  @@ -105,11 +105,19 @@
     }else{
       zSep = "/";
     }
     blob_appendf(pHdr, "POST %s%sxfer/xfer HTTP/1.0\r\n", g.urlPath, zSep);
     if( g.urlProxyAuth ){
  -    blob_appendf(pHdr, "Proxy-Authorization: %s\n", g.urlProxyAuth);
  +    blob_appendf(pHdr, "Proxy-Authorization: %s\r\n", g.urlProxyAuth);
  +  }
  +  // Basic HTTP Authorization
  +  if( g.urlUser && g.urlUser[0] && g.urlPasswd ){
  +      char *zpw = mprintf("%s:%s", g.urlUser, g.urlPasswd);
  +      char *zpw64 = encode64(zpw, strlen(zpw));
  +      free(zpw);
  +      blob_appendf(pHdr, "Authorization: Basic %s\r\n", zpw64);
  +      free(zpw64);
     }
     blob_appendf(pHdr, "Host: %s\r\n", g.urlHostname);
     blob_appendf(pHdr, "User-Agent: Fossil/" MANIFEST_VERSION "\r\n");
     if( g.fHttpTrace ){
       blob_appendf(pHdr, "Content-Type: application/x-fossil-debug\r\n");
  </verbatim>


tkt_uuid: c524bb591edcb3064b019c2969c8c1e84f5cd929
type: Code_Defect
status: Verified
severity: Minor
foundin: [356e877cea] 2011-01-13 19:55:28.947
private_contact: 72c73ce34e23821d1efcc88bc872fc296aabde7e
resolution: Open
title: default ticket tracker formats 'title' inconsistently if it contains symbols like &lt;
comment:
  When I use the ticket tracker with the default settings that fossil has "out of the box", and have a ticket whose title includes HTML markup (like this one), the markup is rendered in the 'status' view of the ticket, but the ticket summary line shows the entity literally. This leaves me confused as to whether I'm supposed to armor special characters in ticket summaries with HTML entities or not.


tkt_uuid: c56156282342a51b8ec2f54e271907f05a63f468
type: Code_Defect
status: Closed
severity: Important
foundin: seems all?
private_contact: f1e65591b77ff063f200da2f01850fae1c4f3ba0
resolution: Open
title: database corruption error on amd64
comment:
  1) While trying to open existing or cloned repo (tried 3 last versions for amd64 and 32bit systems on amd64 mashine):

  <verbatim>
  fossil open noviasmoda.fossil
  fossil: SQLITE_CORRUPT: database corruption at line 49437 of [f55156c519]
  fossil: SQLITE_CORRUPT: statement aborts at 1: [BEGIN EXCLUSIVE] database disk image is malformed
  fossil: SQLITE_CORRUPT: database corruption at line 49437 of [f55156c519]
  fossil: SQLITE_CORRUPT: database disk image is malformed
  fossil: database disk image is malformed
  </verbatim>

  If you have recently updated your fossil executable, you might
  need to run "fossil all rebuild" to bring the repository
  schemas up to date.
  -------------------------------------------------------------------------------

  2) While trying open just created repo (last amd64 version):

  <verbatim>
  fossil new noviasmoda.fossil
  project-id: 8377c5d189cb99dc8619419aaaaad08e573f213e
  server-id:  561f83674fa3a95f096eccee8344395c85b3fa95
  admin-user: alexey (initial password is "79f998")
  alexey@alexey-desktop:~/www/noviasmoda/www$ fossil open noviasmoda.fossil
  fossil: SQLITE_CORRUPT: database corruption at line 49437 of [f55156c519]
  fossil: SQLITE_CORRUPT: statement aborts at 1: [BEGIN EXCLUSIVE] database disk image is malformed
  fossil: SQLITE_CORRUPT: database corruption at line 49437 of [f55156c519]
  fossil: SQLITE_CORRUPT: database disk image is malformed
  fossil: database disk image is malformed
  </verbatim>

  If you have recently updated your fossil executable, you might
  need to run "fossil all rebuild" to bring the repository
  schemas up to date.

  Braked my brain #(

  <hr /><i>drh added on 2011-05-18 11:44:06 UTC:</i><br />
  The error reports above indicate that the SQLite database file that contains
  the repository is being truncated.

  What operating system are you using?  And what filesystem?

  <hr /><i>anonymous added on 2011-05-20 17:38:54 UTC:</i><br />
  I'm on Ubuntu 10.04/amd64 and Lubuntu 11.04/i686. FS both are ext4.
  Phrase "database corruption at line 49437" is the same, regardless the repo file. It's different only if fossil version is different. 
  So, the problem isn't so clear like it looks.
  Any other suggestions?

  <hr /><i>anonymous added on 2011-05-20 18:13:06 UTC:</i><br />
  I wasn;t clear above - error appears only on amd64. The same version of fossil on Lubuntu i686 is OK.

  <hr /><i>anonymous added on 2011-05-22 19:26:06 UTC:</i><br />
  Somebody on amd64: are your fossil work properly? Is it my CPU?

  <hr /><i>drh added on 2011-05-23 15:18:20 UTC:</i><br />
  One of three primary development platforms on which Fossil is coded:

  <blockquote><verbatim>
  Linux amd2008 2.6.24-19-generic #1 SMP Wed Jun 18 14:15:37 UTC 2008 x86_64 GNU/Linux
  </verbatim></blockquote>

  <hr /><i>anonymous added on 2011-05-23 20:30:06 UTC:</i><br />
  OK, seems like it's my personal problem. Will think more. ;(


tkt_uuid: c62fac40af0860d28ad287cb3f203581e00fc9c8
type: Code_Defect
status: Fixed
priority: Low
severity: Important
foundin: [b3ee50c946] 2008-07-15, [ed5179db1f] 2008-11-15 21:17:31
private_contact: fa3d79500802fb558cdda589d6f03fdcc3496420
resolution: Fixed
title: Edit CSS/HTML in Setup adds extra CR/LF, wrong http Content-length
comment:
  While editing CSS and HTML in Fossil Setup, extra CR/LF pairs are added to the text box and the calculation of the http Content-length header is wrong (as if those extra CR/LF pairs weren't added), so some content is dropped at the end of the webpage. I'm not sure what's the cause, it might be an apache-CGI problem.

  Environment: Running Fossil version [b3ee50c946] 2008-07-15 19:03:42 on Windows as CGI handler under Apache/2.2.6 (Win32), Server built: Sep 5 2007 08:58:56.

  Observed with Firefox and IE7 on Windows.

  The local fossil server http://127.0.0.1:8080/setup_editcss works as expected.

  I'm not sure this is related, but for many fossil generated pages, the apache httpd error log shows lines like:

  [Tue Sep 02 14:32:09 2008] [error] [client my.ip.add.ress] , referer: http://sub.domain.tld/fossil/sqlite/setup_editcss

  but the access log seems ok:

  my.ip.add.ress - - [02/Sep/2008:14:32:09 +0200] "GET /fossil/sqlite/setup_editcss HTTP/1.1" 200 8802

  I would like to try with the more recent Fossil version [4b56350ecb] 2008-07-24 15:08:13, but it isn't available for download as a prebuild Win32 binary, and I don't have a build infrastructure here.

  <hr><i>anonymous added on 2008-11-17 22:04:21:</i><br>
  It's not just the edit CSS in setup that shows it, other pages suffer as well, e.g. Timeline. It is easily detected by truncation of the fossil standard footer.

  I do have a build infrastructure now (MSYS/MingW on Windows), and I did research some sources, but I can't point at the exact error.

  <hr><i>drh added on 2008-11-18 02:28:09:</i><br>
  The fix in check-in [f6a071cef1] works for me on WinXP running under VMWare.

  <hr><i>anonymous added on 2008-11-19 23:52:05:</i><br>
  Thanks for the fix, drh. 

    *  Bad news: I'm afraid it didn't really fix it. The contents of the EditCSS textbox still have extra \r , so line spacing increases by one after every edit.

    *  Good news: stdout can be made binary with setmode(), which prevents the \n to \r\n translation.

  <verbatim>
  Patches for main.c:

  {line 30, in header includes}
  = #include <time.h>
  + #ifdef __MINGW32__
  + /* Define file mode constants */
  + #include <fcntl.h>
  + #endif

  {line 615, in cmd_cgi() }
  =  g.httpOut = stdout;
  + #ifdef __MINGW32__
  +   /* prevent \n to \r \n translation on Windows */
  +   setmode( _fileno(g.httpOut), _O_BINARY );
  + #endif

  The workaround in cgi.c, function cgi_reply() , is no longer necessary; the content-length header is valid.
  </verbatim>

  Full diffs will be posted on the fossil-users mailing list.

  Environment: Windows Vista, Apache httpd 2.2.9, mod_cgi, fossil [63886daad8] 2008-11-18 15:33:25 UTC


tkt_uuid: c6376b37a87171e2f1d2dc2bb7affd6c262e7f4a
type: Code_Defect
status: Open
severity: Important
foundin: 7aae4ef068
private_contact: 2359089ef753bc96e12743e299243d5232c749fa
title: fossil rename says 'file outside of checkout tree' when it isn't
comment:
  Fossil undo doesn't work after a mv/ren operation.  Also, I'm unable to move the file back up the source tree because fossil thinks the path is outside of the checkout tree.  I tried several variations.  Here is my repro on Windows 7 using PowerShell:
  <pre>
  PS C:\rev\src\test> fossil ver
  This is fossil version [7aae4ef068] 2010-09-03 01:57:41 UTC
  PS C:\rev\src\test> fossil new ..\test.fossil
  project-id: 642e99bc40ce3ba6e4b643dd79c1f8e14b55a645
  server-id:  2fdbc1bdee11d946bba0105c34727630449caf84
  admin-user: rwilso20 (initial password is "670296")
  PS C:\rev\src\test> fossil open ..\test.fossil
  PS C:\rev\src\test> ls


      Directory: C:\rev\src\test


  Mode                LastWriteTime     Length Name
  ----                -------------     ------ ----
  -a---         10/6/2010  11:18 AM       7168 _FOSSIL_


  PS C:\rev\src\test> echo 123 > x.txt
  PS C:\rev\src\test> fossil add .\x.txt
  ADDED  x.txt
  PS C:\rev\src\test> fossil commit -m "1"
  New_Version: aabc5e2eea1539d113322daa8a0395304c184a66
  PS C:\rev\src\test> md sub


      Directory: C:\rev\src\test


  Mode                LastWriteTime     Length Name
  ----                -------------     ------ ----
  d----         10/6/2010  11:20 AM            sub


  PS C:\rev\src\test> fossil mv .\x.txt sub
  RENAME x.txt sub/x.txt
  PS C:\rev\src\test> fossil undo
  c:\rev\bin\fossil.exe: no update or merge operation is available to undo
  PS C:\rev\src\test> move x.txt sub
  PS C:\rev\src\test> fossil mv .\sub\x.txt .
  c:\rev\bin\fossil.exe: file outside of checkout tree: .
  PS C:\rev\src\test> fossil mv .\sub\x.txt .\
  c:\rev\bin\fossil.exe: file outside of checkout tree: .\
  PS C:\rev\src\test> fossil commit -m "2"
  New_Version: 910c565be0c6b70c70a0725eba977abec16837b5
  PS C:\rev\src\test> ls


      Directory: C:\rev\src\test


  Mode                LastWriteTime     Length Name
  ----                -------------     ------ ----
  d----         10/6/2010  11:21 AM            sub
  -a---         10/6/2010  11:24 AM        211 manifest
  -a---         10/6/2010  11:24 AM         41 manifest.uuid
  -a---         10/6/2010  11:24 AM       8192 _FOSSIL_


  PS C:\rev\src\test> fossil mv .\sub\x.txt .
  c:\rev\bin\fossil.exe: file outside of checkout tree: .
  PS C:\rev\src\test> fossil mv .\sub\x.txt .\
  c:\rev\bin\fossil.exe: file outside of checkout tree: .\
  PS C:\rev\src\test>
  </pre>


tkt_uuid: c6381b9cac334ec8ba4f1940d43cc088888d0ed9
type: Incident
status: Closed
severity: Minor
foundin: dec2c22d9d
private_contact: b060c7801d9aa35179e5b9af3c79b6c2693068bc
resolution: Works_As_Designed
title: blonk. boo. gorble.
comment:
  anonymous posted on 2008-11-25 20:37:09

  More testing.  I need a copy of my copy, I think.

  <hr><i>anonymous added on 2008-11-25 20:39:20:</i><br>
  Well, it
    *  appears to work
    *  doesn't seem to break anything

  Back to work on the [./reference.wiki | Command Line Reference].

  Oh heck.  I forgot to change the status -n- stuff.


tkt_uuid: c64e665103f04fa390a16879cc9aaec6ac1f5c17
type: Code_Defect
status: Open
foundin: [6f42e76d80] 2011-01-13
title: Wiki conflicts go unnoticed
comment:
  If two users are writing a wiki page, and they both send their changes, none receives any warning, and the last POSTing sets the final contents.

  I think the best would be to do the same approach as in files, maybe treating any merge as conflict, and leaving lines with '<<<<<' and so on the pages.


tkt_uuid: c666e737cb028bcec2d55659d79ce8521355d2bf
type: Code_Defect
status: Fixed
severity: Important
foundin: [b12a031557] 2008-12-26 17:41:09
private_contact: 72c73ce34e23821d1efcc88bc872fc296aabde7e
resolution: Fixed
title: bad web page formatting if baseline ID included in bug text
comment:
  I tried closing out a TDBC bug, and entered in a comment the baseline number of the commit that fixed it, surrounded by square brackets.
  <p>
  The ticket formatting code appears to stumble over it, producing the
  error message:
  <pre>
  access to config.value is prohibited
  SELECT value FROM config WHERE name='ticket-closed-expr'
  </pre>
  It looks ok in <a href="http://tdbc.tcl.tk/index.cgi/tktview?name=28616c6f8c">http://tdbc.tcl.tk/index.cgi/tktview?name=28616c6f8c</a>, but messes up in <a href="http://tdbc.tcl.tk/index.cgi/rptview?rn=1">http://tdbc.tcl.tk/index.cgi/rptview?rn=1</a>.
  <p>
  (I don't like the format of the latter report, but I'm going to be leaving it alone to give someone a chance to look at this problem)

  <hr><i>drh added on 2009-01-08 14:06:50:</i><br>
  Fixed by check-in [58f15e92aecf31289734e73815006d1b965a2a57]


tkt_uuid: c66936089efa3ce51d5e2c16b438801876297d0c
type: Feature_Request
status: Open
severity: Cosmetic
private_contact: 54cae7ffa6802845d32f2f8f5dfd89372dc6cbce
resolution: Open
title: timeline pagination
comment:
  maybe should call UI defect 

  typical paginator numbers are at the bottom of results.


  It is better to  put newer older links such as
  http://www.fossil-scm.org/index.html/timeline?n=20&b=2009-12-18+22%3A46%3A17
  under the results list .

  <hr /><i>anonymous added on 2010-11-01 20:59:21:</i><br />
  I think the best idea is to just duplicate the second level menu from the top on the bottom too.


tkt_uuid: c678f128a41210029b5bbcfd2f9ebbef06aa5fda
type: Code_Defect
status: Open
foundin: cf178577ec
private_contact: 75ccf14dca62728f6b2e151da4674a92b78e0e94
title: Cannot add attachments on Windows
comment:
  Running fossil on Windows.

  <verbatim>
  fossil new ttt.fossil
  fossil ui ttt.fossil
  </verbatim>

  In the opened GUI, click on 'Tickets', 'New Ticket', enter information, click 'Submit'.  Choose 'Attach' and choose a file (it's plaintext btw).  Click on 'Add Attachment' ==> Results in display of ticket without any attachment (nor Attachment heading) listed.

  <verbatim>
  fossil sqlite3 ttt.fossil
  select * from attachment; ==> nothing
  </verbatim>

  The files I tried to attach are however listed under 'Admin' -> 'Log' as artifacts.

  If I do the same with Linux version of fossil, everything works as expected:
    *  Viewing a ticket with attachments show Attachments heading and attachments
    *  select * from attachment; ==> list of attachments


tkt_uuid: c68457bff8b1869f4853b530a1d1647fea8c24a1
type: Build_Problem
status: Fixed
severity: Minor
foundin: 95ae79d504
private_contact: 76518fb407f147a1d053c00b5b993281a339c0e3
resolution: Fixed
title: Link order of SSL libraries
comment:
  During the build process of Fossil I've got errors about undefined references.
  This is on FreeBSD 6.4 with gcc 3.4.6

  Changing the order of the SSL libraries in the Makefile from "-lcrypto -lssl" to
  "-lssl -lcrypto" solved the problem.

  -- tsbg


tkt_uuid: c68b4e0f1f0874c4dff0ed24966e25ac51e7cfe5
type: Incident
status: Open
severity: Severe
foundin: 4f24addea9
private_contact: 21c0f447532234366dbec18d60d747db150b5faa
resolution: Open
title: after committing "Fossil : no such file: in -E2F0FD85......."
comment:
  What we've tested.

  All machines are running fossil version 4f24addea9 2009-12-20 and for all of the following machines we tried a clone from my server machine.

  Using The Internet:
    His computer running Windows 7 - Didn't work
    His laptop running Windows 7 - Didn't work
    His server running XP - DID work
    My Computer using my DNS:Port running Windows 7 - DID work

  Using My Local Network:
    My Computer using my localhost:port running Windows 7 - DID work

      My friend can't commit to the database even after cloning.  

  He keeps getting an error message

   "Fossil : no such file: in -E2F0FD85.......".  

     Nothing in the database starts with a negative and doesn't have E2F0FD85 anywhere in the timeline.  This seems as if the database is corrupt but we've successfully clone/committed as specified above.  

  Has anyone seen this kind of error before?  

     The error occurs when I normally get the "unable to sign manifest. continue (y/N)?" message from fossil so the error is displayed after

  " 'gpg' is not recognized as an internal or external command, operable program or batch file.' 

  Though I realize some of you may not see these prompts I hope someone can be of help.

  <hr><i>anonymous added on 2010-02-23 11:09:24:</i><br>
  Cant help with the "Fossil : no such file: in -E2F0FD85.......", but the signing messages can be ignored by setting clearsign to a value of 0.

  <pre>fossil setting clearsign 0</pre>


tkt_uuid: c6bc7f5e4167176020c5916a58cbb8386bb6d14f
type: Feature_Request
status: Open
severity: Minor
foundin: 4887a1da84
title: cvs2fossil broken due to missing "test-import-manifest" in current fossil
comment:
  When using the cvs2fossil tool to import a CVS repository
  fossil version [4887a1da84] 2010-09-10 16:11:29 UTC fails:

  >fossil: unknown command: test-import-manifest

  Using fossil version [4c931047ef] 2010-05-14 17:02:31 UTC with the cvs2fossil tool from the current version [4887a1da84] succeeds in importing the CVS tree. I have not, however, checked whether this is the only fossil function missing in getting cvs2fossil working.


tkt_uuid: c7660d24bc54b8712f00b57fdfca0ee5d25de0a2
type: Build_Problem
status: Fixed
subsystem: one
priority: Immediate
severity: Critical
foundin: c699c491df
private_contact: ffb0604c1f3f32a7f7ee70fbcf652cefdcaf0ee4
resolution: Fixed
title: c699 builds incorrectly - runs mkindex before any translate
comment:
  c699 builds incorrectly - runs mkindex before any translate, so page_index.h is incomplete.

  With the resultant executable:

  $ ./fossil server
  ./fossil: unknown command: server
  ./fossil: use "help" for more information
  $
  $ make --version
  GNU Make 3.80
  Copyright (C) 2002  Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.
  There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
  PARTICULAR PURPOSE.

  <hr><i>stephan added on 2008-09-21 19:01:44:</i><br>
  This is fixed in [d2ae873e9e].


tkt_uuid: c7b35be884420016fcf35fd6d4e81d9d3ed943a1
type: Incident
status: Fixed
subsystem: one
priority: Immediate
severity: Severe
foundin: 6ecc392f1c
private_contact: c.hintze@gmx.net
resolution: Fixed
title: Fossil fails to recognize its repository db as a known file.
comment:
  Sometimes one want to create a repository db <b>within</b> the directory that also will hold the checkout. Especially if you are com from other VCSs like e.g. Git or Darcs. I do the same, if I have a whole worktree for that I want to create an one-shot repository within.

  But if I ask Fossil to remove all unknown files via <tt>clean --all</tt>, it will remove its own database that the current checkout was taken from. For example:
  <pre>
    mkdir test1
    cd test1
    fossil new myrepos
    fossil open myrepos
    fossil add ...
    fossil commit
    :
    :
    fossil clean --all
  </pre>  
  Oops, my repository is gone!

  I would expect, that -- at least -- every repository, that the current checkout was taken from, should be considered as a known file and should not be subject to 'clean'. Perhaps -- as a kind of loyality -- fossil should overlook all fossil repository db it ever encounter during its traversal?

  <hr><i>drh added on 2008-07-23 13:03:24:</i><br>
  Since fossil repository files have no naming conventions, it is not
  clear how fossil could avoid "cleaning" other repositories without
  opening and checking each file prior to cleaning it - which would be
  expensive.  But I have added the feature that the current repository
  is not "cleaned".  Nor does the current repository appear in the list
  of "extra" files.


tkt_uuid: c7c36ef52edabdfc29c113082a54709522e9baa9
type: Code_Defect
status: Fixed
severity: Severe
foundin: [137bff8294]
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Fixed
title: recent fossil on non English variant of winXP fails to create new repo
comment:
  <verbatim>
  c:\soft\bin>fossil ve
  This is fossil version [137bff8294] 2009-08-15 17:45:28 UTC

  c:\soft\bin>fossil new qqq.foss
  fossil: unable to open database file
  </verbatim>
  Older versions on fossil were creating new repos on non English win XP just fine: <br>
  <verbatim>
  log of successful acces to _fossil database while executing "fossil new qqq.foss" with fossil version [1b0c251575]
  22:23:38.812	fossil.exe:1468	OPEN	C:\Documents and Settings\usr\Data aplikací\	SUCCESS	Options: Open Directory  Access: All	
  22:23:38.812	fossil.exe:1468	DIRECTORY	C:\Documents and Settings\usr\Data aplikací\	SUCCESS	FileBothDirectoryInformation: _fossil	
  22:23:38.812	fossil.exe:1468	CLOSE	C:\Documents and Settings\usr\Data aplikací\	SUCCESS		
  22:23:38.812	fossil.exe:1468	OPEN	C:\Documents and Settings\usr\Data aplikací\_fossil	SUCCESS	Options: OpenIf  Access: All	
  </verbatim>

  while recent version fails:<br>
  <verbatim>
  log of failed acces to _fossil database while executing "fossil new qqq.foss" with fossil version [137bff8294]
  22:27:00.863	fossil.exe:3780	DIRECTORY	C:\Documents and Settings\usr\Data aplikací\	SUCCESS	FileBothDirectoryInformation: _fossil	
  22:27:00.863	fossil.exe:3780	CLOSE	C:\Documents and Settings\usr\Data aplikací\	SUCCESS		
  22:27:00.863	fossil.exe:3780	OPEN	C:\Documents and Settings\usr\Data aplikac\_fossil	PATH NOT FOUND	Options: OpenIf  Access: All	
  22:27:00.863	fossil.exe:3780	OPEN	C:\Documents and Settings\usr\Data aplikac\_fossil	PATH NOT FOUND	Options: OpenIf  Access: All	
  </verbatim>

  I would guess, problem was introduced with check in [6b0196aeb8]<br>

  The problem seems to be stripped "í" character <br>
  (http://www.fileformat.info/info/unicode/char/00ed/index.htm)<br> 
  from the localised path to the location where _fossil file is.<br>

  OK<br>
  C:\Documents and Settings\usr\Data aplikací\_fossil<br>
  Wrong<br>
  C:\Documents and Settings\usr\Data aplikac\_fossil<br>

  <hr><i>drh added on 2009-08-15 21:41:16:</i><br>
  Check-in [00ac7945a9ead] seems a more likely cause than 
  check-in [6b0196aeb874f], in which case check-in [a25092b14ca]
  should fix the problem.  Please try [a25092b14ca] and mark this
  ticket as "fixed" if it works.  Thanks.

  <hr><i>anonymous claiming to be PF added on 2009-08-15 22:36:42:</i><br>
  Check in a25092b14ca helped and new repos are created OK. Thanks for your fix.


tkt_uuid: c84ee1364f83e0fba18fb651a5a7af954a1596dd
type: Feature_Request
status: Fixed
severity: Cosmetic
private_contact: 7fe1ab9c6c9d0383752910b0b70a42d65a2b0883
resolution: Fixed
title: Export zip from cli
comment:
  It would be very handy the addition of a cli command (eg. zip/export) which exports a revision to a zip file, similar to the wiki feature. This is handy when a graphical browser is not available (eg. console only environment).<br>
  Thanks

  <hr><i>anonymous claiming to be dlane added on 2010-03-03 16:29:51:</i><br>
  A workaround which works currently could be 

  <verbatim>
  $ curl "http://www.fossil-scm.org/fossil/zip/Fossil-71edacd95f.zip?uuid=71edacd95f" > 71edacd95f.zip
  </verbatim>

  Fossil generally treats urls sanely and changes them slowly. It generally allows unique prefixes for artifacts: the browser url has a longer value for uuid but it turns out to be enough to replicate the shorter prefix that is available, for example in

  <verbatim>
  $ fossil finfo <filename>
  </verbatim>

  The perl/python/ruby/tcl(?) to bind these conveniently should not be very hard.
  Tags etc left as a Simple Exercise for the Reader.

  <hr><i>ron added on 2010-03-03 18:55:16:</i><br>
  Actually, on Linux do "fossil set web-browser lynx".  Then when you do "fossil ui", you will get the console 'lynx' browser (substitute some other browser if you like).  This works nicely, I was able to get the zip this way without using Firefox etc.

  <hr><i>anonymous claiming to be Ross Berteig added on 2010-03-11 03:21:19:</i><br>
  I just posted a patch to zip.c to the mailing list to implement a fossil zip command that understands a uuid (or prefix) or tag and creates a zip file that is identical to the one created by the web ui.

  The existing fossil test-baseline-zip command produces archives that are very similar, but use a different name of the top level folder in the zip. And its undocumented.


tkt_uuid: c858c4178bfe540131fb3cbdb09bb4ef08cd4920
type: Code_Defect
status: Fixed
subsystem: one
priority: Immediate
severity: Important
foundin: 4b56350ecb
private_contact: 63f4cb9d6971f7dbdee05412b8546975182b32e4
resolution: Open
title: Potential wrong commit comment shown at anchestors at /vinfo page.
comment:
  If you enter for instance the info page of [4c78a18ad2] and look under <b>Ancestors</b> for revision [ac392fbba6] you will find, that the commit comment displayed under <b>Ancestors</b> for that revision is the original commit comment and not the comment property that was set to change/correct the comment of said revision.

  <hr><i>chi added on 2008-08-14 16:19:59:</i><br>
  Three places in code where the comment was fetched from the DB preferred the original comment over the edited one. But all other places elsewhere do correctly prefer the edited over the original. For the field <tt>user</tt> <b>all</b> occurrences prefer the edited user over the original one.

  I corrected the three occurrences!


tkt_uuid: c8c0b78c840e4df9aefd2687bf6cac5abfce08e5
type: Code_Defect
status: Fixed
severity: Important
foundin: 2010-10-14 20:28:49 [703653489e]
private_contact: 990fc58e2fbfe89bc7012d67ec7054419441d450
resolution: Fixed
title: Windows 7: "fossil ui" and "fossil server" fail
comment:
  OS: Windows 7 Ultimate

  With fossil.exe installed in C:\Windows\system32, "fossil ui" and "fossil server" fail to start the web server. On each attempted access to http://localhost:8080 , the command prompt outputs:

  <pre>'"fossil"' is not recognized as an internal or external command,
  operable program or batch file.</pre>

  Windows Firewall is off and there are no other firewalls installed.

  <hr /><i>anonymous claiming to be Arnel added on 2010-10-08 18:03:34:</i><br />
  Are you able to edit your PATH variable and add another folder (e.g., C:\Users\<username>\Documents) where you can transfer fossil.exe instead? Fossil probably does not understand %SystemRoot%\system32, which is what's on PATH for that folder.

  <hr /><i>wolfgang added on 2010-10-10 12:32:16:</i><br />
  This is not a problem of fossil.

  The mentioned error message is a MS Windows message, documenting, that the requested command is not found in the path.

  So you should check:
    *  is the path really correct
    *  how do you call fossil, MS Windows doesn't use the path variables in all call variants

  <hr /><i>anonymous claiming to be arichardson (op) added on 2010-10-15 09:10:18:</i><br />
  >Arnel added on 2010-10-08 18:03:34:<br>
  >Fossil probably does not understand %SystemRoot%\system32, which is what's on PATH for that folder.

  I think you've hit on the problem here. It works perfectly well on XP though, which is why I'm puzzled. I will try your suggestion but ultimately will end up with Fossil back in system32, where (IMO) it belongs.

  >wolfgang added on 2010-10-10 12:32:16:<br>
  >This is not a problem of fossil.

  I believe it is. Please see below for my reasons.

  >The mentioned error message is a MS Windows message, documenting, that the requested command is not found in the path.<br>
  ><br>
  >So you should check:<br>
  ><br>
  >is the path really correct<br>
  >how do you call fossil, MS Windows doesn't use the path variables in all call variants<br>

  Looks like you didn't read my ticket. I'll explain again:

  At the command prompt, I'm running "fossil ui". ("fossil server" does the exact same thing.) There is a known good, open fossil in the working directory. Fossil opens a web browser (Firefox in this case) and gives it the path "localhost:8080" as expected.

  The problem occurs when Firefox accesses localhost:8080. Fossil is definitely listening on 8080/tcp because it reacts to connections on localhost:8080. The way it reacts is to output this error on stdout:

  '"fossil"' is not recognized as an internal or external command, operable program or batch file.

  instead of returning a web page to the browser.

  You're right that this error is generated by the OS, but I believe the flaw is in Fossil. IMO Arnel's suggestion is correct, that Fossil is not interpreting %SystemRoot%\system32 properly. I will now attempt to prove it.


  <hr /><i>anonymous claiming to be arichardson added on 2010-10-15 09:13:21:</i><br />
  I mean, I will attempt to prove it in 8 hours or so, when I get home from work and have access to my Windows 7 box.


  <hr /><i>anonymous claiming to be Arnel added on 2010-10-15 11:28:11:</i><br />
  I can confirm "fossil server" works with fossil.exe inside the %SystemRoot%\system32 folder from a Windows 7 box I'm using. 

  With "fossil ui" I'm getting the "'http:' is not recognized...batch file" message. Which is odd, considering I can run "start http://127.0.0.1:8080/" from within the C:\Windows\system32 folder.

  <hr /><i>anonymous claiming to be Arnel added on 2010-10-15 11:34:02:</i><br />
  Sorry, I forgot to add: "fossil ui" does provide the error message I described earlier when I ran it from the command-line, *BUT* if I open a browser and go to http://localhost:8080/ it opens the web UI for Fossil.

  <hr /><i>drh added on 2010-10-15 13:58:28:</i><br />
  I think the problem comes about because Fossil tries to run a copy of
  itself by calling system() with argv[0] being used as the command name.
  Apparently on windows, argv[0] is not a reliable name for the program
  that is being run.

  Does anybody have any suggestions for an alternative way to get a
  windows program to run a copy of itself?

  <hr /><i>rwilson added on 2010-10-15 15:30:22:</i><br />
  is this recently introduced?  i've been using fossil on windows 7 64 bit since it was released with no problems (not counting a few hiccups along the way in the win32 build).  i haven't updated my build for about six weeks, so i'm not experiencing this issue (Fossil version [7aae4ef068] 2010-09-03 01:57:41).

  <hr /><i>drh added on 2010-10-15 16:13:52:</i><br />
  Nothing has changed in this area recently.  I think the people that are
  having problems simply have an unusual windows configuration.

  <hr /><i>wolfgang added on 2010-10-15 16:37:14:</i><br />
  For my XP machine, argv[0] is correctly filled with the complete path. A windows 7 Home Premium machine shows only the filename(fossil.exe), not the complete path. Both tests used a standard cmd.exe console starting fossil with <kbd>fossil help ver</kbd> and fossils install directory in environemt variable PATH. =>
    *  on XP argv[0] seems to be filled with the complete path, so that the environment is not used
    *  on Win 7 is only the filename stored in argv[0]. This way it depends on the environment/registry settings, whether fossil is found or not.

  The contents of argv[0] can be tested with

  fossil help ver

  The name of the binary, displayed in the output is replaced with argv[0]. 

  Windows uses diffent ways to find a binary (calling via cmd.exe or calling by explorer,..). So if argv[0] doesn't contain a full path, the error  may appear.

  I've found a link to some information, how to get the application location:

  [http://msdn.microsoft.com/en-us/library/ms683197]:
  <pre>
  DWORD WINAPI GetModuleFileName(
    __in_opt  HMODULE hModule,
    __out     LPTSTR lpFilename,
    __in      DWORD nSize
  );
  </pre>

  <hr /><i>wolfgang added on 2010-10-16 14:48:55:</i><br />
  I think, using <code>pgmptr</code> doesn't really solve the problem. Reading the microsoft msdn pages, i see:

  <blockquote>
  When a program is run from the command interpreter (Cmd.exe), _pgmptr is automatically initialized to the full path of the executable file. For example, if Hello.exe is in C:\BIN and C:\BIN is in the path, _pgmptr is set to C:\BIN\Hello.exe when you execute:
  Copy

  C> hello 

  When a program is not run from the command line, _pgmptr might be initialized to the program name (the file's base name without the file name extension) or to a file name, relative path, or full path.
  </blockquote>
  If the fossil.exe is called by tools like anysrv/nssm/.., the value of pgmptr may be a relative or absolute path or only the filename.



  <hr /><i>anonymous claiming to be arichardson added on 2010-10-18 12:41:22:</i><br />
  >Nothing has changed in this area recently. I think the people that are having problems simply have an unusual windows configuration.

  Could you narrow this down a bit? Tricky I know, but did you have something particular in mind? It's a standard Windows 7 Ultimate install. I haven't applied vLite or anything, all the usual parts seem to be there.


  <hr /><i>anonymous added on 2010-10-19 08:03:50:</i><br />
  Richard, perhaps you refer to this? [http://fossil-scm.org/index.html/tktview?name=44002a7760|44002a7760]<p>I have since set a HOMEPATH (which, OT, I think might be an artifact of AD, which would explain why I've never seen it as I've never had an AD domain at home).


  <hr /><i>wolfgang added on 2010-10-19 08:26:31:</i><br />
  The original poster uses windir/system32. I think it's not a good idea, to use such an special OS folder for a user installed executable. Especially Vista/Win7 haves special mechanismns to protect this folder. In addition to this: windows uses differrent ways to expand paths while searching executables(see above).

  I don't think, that we should try to handle these MS-Windows specific problems.

  Many of us do not have any problems with a win7 fossil install. For me the following works pretty good (on different windows versions (XP Home, XP Prof., Win7 HP):

    1  install fossil into a fodler in the data area, including executable and repositories (this makes it easy to copy the installation between different computers)
    2  add the install directory to the PATH environment variable
    3  install a service(nssm/anysrv/..) using the complete path, so the OS path search is deactivated

  The problem of the original poster should be solved, if the service uses a fully qualified path instead of giving only fossil (and letting the OS search for the path).

  In my opinion, this isn't a problem, which should/can be solved in fossil => Close ticket?

  <hr /><i>anonymous claiming to be arichardson added on 2010-10-19 08:58:10:</i><br />
  > starting fossil with "fossil help ver"

  I'm not sure this test does what you think it does. It didn't work on my Ubuntu workstation:

  <pre>arichardson@vostro-1:~$ fossil help ver
  Usage: fossil version

  Print the source code version number for the fossil executable.</pre>

  When I used the full path, though, it did work...

  <pre>arichardson@vostro-1:~$ `which fossil` help ver
  Usage: /usr/bin/fossil version

  Print the source code version number for the fossil executable.</pre>

  ... but using the full path defeats the point, I think. This is on a 32-bit Linux. I do have a 64-bit Linux somewhere but that test will have to wait.

  Windows XP (32-bit), same result:

  <pre>C:\Programs\Windows Resource Kits\Tools>fossil help ver
  Usage: fossil version

  Print the source code version number for the fossil executable.

  C:\Programs\Windows Resource Kits\Tools>%WINDIR%\system32\fossil.exe help ver
  Usage: C:\WINDOWS\system32\fossil.exe version

  Print the source code version number for the fossil executable.

  C:\Programs\Windows Resource Kits\Tools></pre>

  I really must change the starting dir. My projects folder would be much more handy.

  My 64-bit Windows system is at home and offline, so that test will also have to wait.

  <hr /><i>anonymous claiming to be arichardson added on 2010-10-19 09:11:14:</i><br />
  >The original poster uses windir/system32. I think it's not a good idea, to use such an special OS folder for a user installed executable.

  I can't agree with that. The executable should absolutely not care where it's installed. Why should it stop working in some magic location? If the OS wants to prevent the installation, fine, if group policy wants to prevent it, also fine, but otherwise the executable should work as expected.

  I have installed many programs in %windir%\system32 in the past and this is the first time there's ever been a problem.

  >Especially Vista/Win7 haves special mechanismns to protect this folder.

  The only "special mechanism" is a dialog box saying "you want to do this? really?" and me saying "yes".

  >In addition to this: windows uses differrent ways to expand paths while searching executables(see above).

  As far as I can see this is the only valid argument against fixing this, that it would require OS-specific code in a "#ifdef _WIN32" block. I hate that kind of thing normally.


  <hr /><i>anonymous claiming to be arichardson added on 2010-10-19 09:37:52:</i><br />
  >Does anybody have any suggestions for an alternative way to get a windows program to run a copy of itself?

  Thinking about it, is this the best way to do it? Could we not just call the cgi function instead of launching a separate instance of Fossil?


  <hr /><i>anonymous claiming to be arichardson added on 2010-10-19 12:31:31:</i><br />
  Here's another unfinished patch (for src/winhttp.c) to implement the internal call.

  [https://dreamtrack.dnsalias.com/downloads/self-call.diff]

  It doesn't trigger the error any more, but neither does it return anything to the browser.

  It <i>almost</i> works, now if only I could figure out how to call into main.c from winhttp.c! I'd prefer to do that than separate out the required functions into their own .c file.


  <hr /><i>drh added on 2010-10-19 12:40:56:</i><br />
  Thanks for the patch, Fatman, but a solution that runs each HTTP request in
  a thread will be unacceptable.  Fossil is designed around processes, not
  threads.  The amount of work required to make Fossil threadsafe would be prohibitive.

  See also, [http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-1.pdf]

  I need a way to start a new process (not a thread) running the same binary in Windows 7.  Apparently the technique of calling system() on <nowiki>argv[0]</nowiki> or on _pgmptr works for all prior versions of Windows does not work in Windows 7.  Nobody has yet explained to me why it doesn't work, and I do not have access to Windows 7 to test it for myself, but apparently it does not.  I would prefer to fix the problem, rather than rearchitect all of Fossil.


  <hr /><i>anonymous claiming to be arichardson added on 2010-10-19 13:12:04:</i><br />
  >a solution that runs each HTTP request in a thread will be unacceptable

  Fair enough. I saw "_beginthread" in winhttp.c and assumed it would be ok to use it. I'll think some more.


  <hr /><i>anonymous claiming to be arichardson added on 2010-10-19 13:23:14:</i><br />
  > Nobody has yet explained to me why it doesn't work

  I'd like to know that too. It will affect my work in future.

  > I do not have access to Windows 7 to test it for myself

  Would it be useful if I set up a Windows 7 VM and you could fiddle with it remotely? My internet connection is fast enough for that, I think, and my server should be able to cope with a small VM. Just an idea there.


  <hr /><i>anonymous added on 2010-10-19 14:12:33:</i><br />
  I wonder, could this be a related issue?

  [http://msdn.microsoft.com/en-us/library/ms683197(VS.85).aspx#4]

  Maybe system() does a GetModuleFileName() call internally. I <i>have</i> been using the 32-bit version of Fossil on my 64-bit OS. If Win7 64-bit screws with 32-bit GetModuleFileName() calls, a simple recompile with MinGW-w64 might fix the problem.

  Well, probably not. But I'm hoping for an easy fix. :P 

  <hr /><i>rwilson added on 2010-10-19 23:34:38:</i><br />
  i keep seeing people (including drh) in this thread saying that fossil doesn't work in windows 7.  again, it's working for me on windows 7 64 bit, and has always worked.  i have it installed in c:\rev\bin, which is different than the OP, but i agree it shouldn't make a difference.  you can see my easyunit mirror at [http://svn.thereverend.org:8080/easyunit].  so what is different about the OP's configuration?

  <hr /><i>anonymous claiming to be achavasse added on 2010-10-20 13:40:04:</i><br />
  I also have fossil server and fossil ui both working perfectly on two different windows 7 machines. One is running windows 7 32 bit, the other windows 7 64 bit.

  In both cases I too have been lazy and just copied fossil.exe to c:\windows\system32.

  fossil help ver doesn't show the full path either, only "fossil".

  The version I use is 7954ccba68 that I built myself with mingw.

  I think the MSDN link a couple comment above is interesting. I built fossil directly on each machine I use it on, so the one I run at home on my 64 bits windows 7 is a 64 bit binary and on my work machine it is a 32 bit binary, so maybe the problem happens only when running a 32 bits binary on a 64 bit windows.

  I'm going to try the 32 bit binary I use here at work on my 64 bit windows 7 when I'm home in a few hours and see what happens.

  <hr /><i>anonymous claiming to be achavasse added on 2010-10-20 18:29:18:</i><br />
  Update: upon verification I actually installed mingw32 on my home computer (the one running windows 7 64bit) and I'm running a 32 bit build of fossil there.

  So it's not a problem of 32 bit fossil running on a 64 bit windows.

  <hr /><i>anonymous added on 2010-10-20 18:51:20:</i><br />
  I would suggest to the person having this problem to use Process Monitor (link below) to log file accesses that are done when running fossil ui.

  It will show exactly where windows is trying to load fossil from and what exact problems it encounters while doing so. It might well be something else than a path problem, like a permission problem of some sort.

  [http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx]

  <hr /><i>jan.nijtmans added on 2012-08-30 08:58:32 UTC:</i><br />
  proposed fix committed to branch ticket-c8c0b78c84

  <hr /><i>jan.nijtmans added on 2012-09-24 09:03:58 UTC:</i><br />
  This one should be fully fixed on trunk now


tkt_uuid: c90916433bd952d9dde4eb94445c0cb6b7729e79
type: Code_Defect
status: Open
severity: Minor
foundin: 2011-02-02
private_contact: 36f0fb79a71d7f6f746a9380e7eab81fa1eb1b8a
title: form fields sharing names for different purposes make it difficult to use javalscript library
comment:
  'Event edit' (/eventedit) uses name='t' to identify the 'time' field in form. 
  'Edit Report Format' (/rptedit?rn=10) uses name='t' to identify the 'title' field in form. 

  The simplest was to resolve this is to change t to time or title respectively

  Note: 
  I added the following to the header to allow the use of a date picker for the 'Event edit' and the new and edit ticket screens. :

  <pre>
  <link rel="stylesheet" href="$baseurl/doc/tip/jquery/jquery-ui-1.8.9.custom.css" type="text/css" media="screen">

  <script src="$baseurl/doc/tip/jquery/jquery-1.4.4.min.js" type="text/javascript"></script>
  <script src="$baseurl/doc/tip/jquery/jquery-ui-1.8.9.custom.min.js" type="text/javascript"></script>

  <script type="text/javascript"> 
  // always use datepicker for this field
   $(function() {
    $( "input[name='t']" ).datepicker({
  			numberOfMonths: 2,
  			showButtonPanel: true,
  			dateFormat: 'yy-mm-dd'
  		});
    });
  </script>

  <script type="text/javascript">  
      var datefield=document.createElement("input")  
      datefield.setAttribute("type", "date")  
  if (datefield.type!="date"){ //if browser doesn't support input type="date", initialize date picker widget:  
      jQuery(function($){ //on document.ready  
   $( "input[name='last_useful_date']" ).datepicker({dateFormat: 'yy-mm-dd'});  
   $( "input[name='date_closed']" ).datepicker({dateFormat: 'yy-mm-dd'});  
      })  
  }  
  </script> 
  </pre>


tkt_uuid: c926e3151ac2b1f0b1df5f21d36e9af8b6e4aff1
type: Feature_Request
status: Closed
severity: Important
foundin: 71ad9b62a7
private_contact: be550bfd65ad2b35c5af076e5620344955089a2e
resolution: Not_A_Bug
title: fossil exe auto update
comment:
  fossil version change so often. It is getting harder to keep up.

  Following steps 
    *  download
    *  unpack
    *  configure makefile
    *  compile 
    *  install 

  This is time consuming  and  really not needed for people only need the new version of binary.

  Can we design a directory layout for pre-compiled binary in "binary/os/version" in fossil source tree.

  This way "fossil sync -R myclone.fossil" can always bring me the latest  binary for a particular version of OS/Version.

  or "fossil selfupgrade" command to automate the binary upgrade.

  <hr><i>anonymous claiming to be Michael McDaniel added on 2010-01-01 20:41:53:</i><br>
  http://www.fossil-scm.org/download.html

  You could think of the executable downloads at the above link as "release" code.

  And not download a new version every time the source changes.


  <hr><i>drh added on 2010-01-01 21:20:31:</i><br>
  Previous comment from Michael McDaniel is correct.  Closing this ticket.


tkt_uuid: c9b62d38efbbbf17696c9faa01d26bb4e7130cb9
type: Code_Defect
status: Open
severity: Severe
foundin: 9d896dcadb
resolution: Open
title: fossil rebuild fails on PellesC-compile
comment:
  <pre>
  ...>fossil rebuild
  fossil: SQLITE_ERROR: no such table: main.tagxref
  fossil: no such table: main.tagxref
  CREATE TABLE filename(
    fnid INTEGER PRIMARY KEY,
  .......
  </pre>

  Running a dmc-build on the same file works!


tkt_uuid: c9d454153eea9690a93fcdddb18730b381403a25
type: Code_Defect
status: Fixed
foundin: [79b7902cdd]
resolution: Fixed
title: Bad find_filename_changes
comment:
  While investigating [74413366fe], we came up with an example where we found a bad behaviour of find_filename_changes. Notice:

  <verbatim>
  [llbatlle@comanegra:~/tmp/merge2]$ fossil test-shortest-path 3f670219 2d34c3f538 
     1: 3f6702192edd 2011-01-04 09:43:22 is a parent of
     2: 2d34c3f5389e 2011-01-04 09:43:39

  [llbatlle@comanegra:~/tmp/merge2]$ fossil test-shortest-path 2d34c3f538 3f670219
     1: 2d34c3f5389e 2011-01-04 09:43:39 is a child of
     2: 3f6702192edd 2011-01-04 09:43:22

  [llbatlle@comanegra:~/tmp/merge2]$ fossil test-name-changes 3f670219 2d34c3f538
  [a] -> [c]

  [llbatlle@comanegra:~/tmp/merge2]$ fossil test-name-changes 2d34c3f538 3f670219

  </verbatim>

  Notice how the name change is taken in one direction, and not in the other. Those are direct commits, no merges involved.

  The problem is in the line of find_filename_changes()
  <verbatim>
  for(p=bisect.pStart->u.pTo; p; p=p->u.pTo)
  </verbatim>

  This always skips the first checkin of the chain, while it should be skipped only if it is a parent of the next commit. Similarly, some commits (parent of both From and To) should be skipped as well.

  The trick is that the checkin id always refers to "AFTER applying the checkin".


tkt_uuid: c9e84b567178d755d216f095ca98da3a92d6a4cd
type: Feature_Request
status: Closed
severity: Severe
foundin: 9c31866404
private_contact: 68272c6eae73c7078fef2abf11458ad864fc0aad
resolution: Not_A_Bug
title: fossil treats anybody connecting from 127.0.0.1 as user with UID 1
comment:
  Even in server mode, fossil considers any user connecting from 127.0.0.1 to be super user. It seems like no policy mechanism is in effect whatsoever. This is especially troubling in case you are proxy-ing traffic from a web server (say lighttpd) to a fossil instance in server mode, where both programs run on the same machine.

  Also, when connecting to a fossil server over SSH and both SSHd and fossil run on the same machine, your connection is considered to originate from 127.0.0.1. No policy can be applied on such users and anybody connecting in this way is treated as super user.
  This not only affects fossil in server mode but also fossil running as CGI executed by web server, if the web server and SSHd are on the same machine.

  <hr /><i>anonymous added on 2010-11-18 01:46:21:</i><br />
  So under Admin -> Access check the "Require password for local access" setting.

  <hr /><i>drh added on 2010-11-18 02:38:50:</i><br />
  Anonymous above is correct.  The "treat-localhost-as-root" mode can be turned
  off easily enough if you are setting up a server that is accepting
  connections that proxied through localhost.

  <hr /><i>anonymous added on 2010-11-18 08:18:25:</i><br />
  Thank you. Shouldn't it be always ON in server mode?


tkt_uuid: ca08d51f19e34404ee0e174ff7e1123ab1eacf1d
type: Documentation
status: Fixed
severity: Important
foundin: c66ffba6da
private_contact: fe737e01cc8fe7212a9268abcc0d6c1920872d3d
resolution: Fixed
title: default users and passwords are not well documented
comment:
  As a new user, I installed Fossil on a remote Linux server, created a repository, and ran 'fossil server' using my repository. Then I ran the browser on my Windows PC. Not knowing any better, I logged in as anonymous. I tried to configure my repository as documented on the Quickstart page, but the Setup link was not available on the menu bar. 

  I made a significant but not exhaustive search through the online documentation, but did not find anything helpful. Eventually it occurred to me to run SQLite to see what was in the database, and from there I found that a user had been created with the name of the Linux account from which I created the repository. This account had a blank password, but I could not log in with a blank password. I used SQLite to change the password and then I could log in as that user. Since that user had the Setup privilege, I could now use all the features in the system. 

  A person running into this difficulty might abandon further exploration in the project and never return. In addition to prominently documenting the default accounts and passwords, I think the default Setup account should start with a non-blank password.

  <hr><i>drh added on 2008-11-20 00:45:52:</i><br>
  If, instead of installing your repository on a server right away, you
  had simply typed:

      fossil ui <repository-name>

  Then a webbrowser would have popped up automatically and with full
  setup privileges.  The default configuration is that any connections
  coming from 127.0.0.1 have setup privilege.  You can change that
  on the Setup/Access screen.  But the default is useful in that it lets
  you set up lots of user accounts without first having to create a
  "setup" user using the command-line.

  Nevertheless, we will try to figure out a reasonable place to put an
  explanation of your problem and its solution in the documenation.

  <hr><i>drh added on 2008-11-20 01:10:33:</i><br>
  Rather than add documentation (which is likely to be hard to find)
  how about this approach.  When a new repository is created, a random
  password is created for the administrator and that new password is
  printed on standard output along with the other text that is normally
  printed when a new repository is created.  Then a user can use that
  password to log in initially (and presumably change the password to
  something different.)  This was added in check-in [0c6ea0d93f].  We'll
  give it a try and see if that helps.

  Some people might object because the initial password is printed on
  screen - allowing it to be read over-the-shoulder.  The intent of this
  initial password is to be temporary, so hopefully that will not be
  a serious concern.


tkt_uuid: cb0b73e747a662159005864219200b8970560807
type: Build_Problem
status: Closed
severity: Minor
foundin: f1efc90595
private_contact: 481f3560ef506266e325518f83fffaf73b492a99
resolution: Fixed
title: Cannot create manifest.uuid file
comment:
  I have set up a local mirror of the FOSSIL repository and always pull from the FOSSIL upstream mirror before I build a new local version.

  This has always worked in the past, but since FOSSIL versions newer than f1efc90595 (as of 2011-01-19) it does no longer work.

  The problem: Obviously, newer versions of FOSSIL automatically create files "manifest" and "manifest.uuid" in the checkout tree, and the Makefile refuses the build without them.

  Is there a FOSSIL command how to recreate those files somehow manually, so that I can build the new version of FOSSIL?

  I tried copying the missing files from directly from the upstream repository. Although this allowed me to build a new version of FOSSIL (after upgrading the old repository to a newer schema version), the new FOSSIL executable still does not create the "manifest" and "manifest.uuid" files when I do a "fossil open" on my repository mirror.

  I have updated my mirror to the lastest version, which is:

   $ fossil status
  repository:   /home/user/fossy/work/fossil-src/upstream_mirror.fossil
  local-root:   /home/user/fossy/work/fossil-src/upstream_mirror/
  server-code:  2bb8473d03cd922084926d901100f017d9db36f4
  checkout:     621be704940afeef6d02c3615c07a2ee4f54edfc 2011-06-07 15:51:01 UTC
  parent:       fbf417b681c35b9c4ec415bb3bd906a796ab263d 2011-06-07 02:09:13 UTC
  tags:         trunk
  comment:      Improvements to the "annotate" algorithm: Only search primary
                ancestors; ignore branchs. (user: drh)

  I guess I could just download a new binary executable in order to resolve those problems, but I really would like to build FOSSIL from source already present in my repository mirror.

  After all, FOSSIL is a self-hosted source code control system, and therefore it should be possible to rebuild it somehow from the mirror contents alone if an older version of the executable (which matches the mirror schema) is already available.

  There should be a migration path from older versions of the fossil executable to newer version using a local mirror of the FOSSIL repository which is updated by "pull" only.

  Summing up, the problems are: The files manifest and manifest.uuid are missing, but even if I copy them manually from upstream's zip file the resulting executable does not create those files when "fossil open" is used.

  <hr /><i>anonymous added on 2011-06-08 03:12:53 UTC:</i><br />
  I was finally able to track down the problem by looking at the source code.

  All I had to do was enabling the "manifest" setting for the local repository mirror.

  Although I find it strange that building the source code depends on a *local* setting of the repository, nevertheless this solved by build problem.

  <hr /><i>anonymous added on 2011-06-08 03:13:39 UTC:</i><br />
  Closing bug.


tkt_uuid: cb6baa160dfacc1bf0390eb7f5e1d487561af7a7
type: Code_Defect
status: Open
severity: Minor
foundin: 3b76c0474e
private_contact: 668a819fc68ae3df87285ba92d1fd8ef824e2d2b
title: Wiki output strips <div>
comment:
  When a 'div' is used in a wiki page, it is stripped out by the renderer and replaced with 'p'...'/p'.  The id attribute of the 'div' is lost.

  This behaviour may be appropriate for user-entered text, but 'div' is used internally when appending a remark to a Wiki page.

  Significance: This ticket is related to feature request [b92c4160fe282a0a121146d1216ec692408b2206] to include a class attribute on appended remarks so that they can be styled independently of the rest of the Wiki page.


tkt_uuid: cbda8d3bb0704c6ce6a7b321c320c702cf30f7e5
type: Code_Defect
status: Closed
foundin: 8fe33aa575
resolution: Rejected
title: Check-in [8fe33aa575] removed 'config.mak' for customization of make
comment:
  As mentioned.  Removal of 'config.mak' means adding or overriding make flags requires actually modification of the Makefile

  <hr><i>drh added on 2010-03-01 00:45:48:</i><br>
  Makefile customization is easy.  Simply copy the default "Makefile" into
  a file named "makefile" or possibly "GNUMakefile" or "BSDMakefile" (depending
  on what version of make you are running) and then apply your edits to the
  copy.  The "make" program looks for its makefile under name (GNU|BSD)Makefile,
  makefile, and Makefile, in that order.  So if you supply one of the earlier
  names, the one included with the Fossil distribution will not be used.

  You could also make a copy of the file into "local.mk" and then do
  "make -f local.mk".

  <hr><i>ron added on 2010-03-01 06:26:10:</i><br>
  I dislike that solution because then the private build may break whenever the main makefile is updated.  

  That is why I added a "make.sh" script, which simply drives the make, giving the functionality of the (removed) config.mak without messing around with the Makefile.  It is also cross-platform, working wherever "bash" is installed (maybe it works with other shells too, but I don't know).


tkt_uuid: cc4cd990165317f38618f5b784befd3e9ff3fe61
type: Code_Defect
status: Fixed
severity: Minor
foundin: f29a826666
private_contact: beeb6059fe2a4ae184337778f9eaf830ff954499
resolution: Fixed
title: dir browser crashes on unknown checkin name
comment:
  Calling the browser page with an unknown checkin name crashes the forked server process

  example:  /dir?name=src&ci=ti

  The problem is located at browse.c/page_dir near line 145 when memcpy tries to copy NULL

  <hr /><i>wolfgang added on 2010-09-27 15:45:58:</i><br />
  with checkin [872f6a45e3] on branch the problem should be solved.


tkt_uuid: cc52573686df73c71c4a5b2396033612df47c238
type: Feature_Request
status: Open
foundin: [047e06193b]
resolution: Fixed
title: Add an 'annotate' in the Artifact web page
comment:
  I'd find it very comfortable to have an Annotate link there.

  When I want an annotate of a file, I use to go to Files, click the file, and the Artifact shows up. I'd like here an Annotate link. 

  Until now, I've to click the File path, then find the branch I'm working on (we have many branches), and I get the annotated version. I find these last steps annoying.

  Thank you,
  Lluís.

  <hr /><i>viriketo added on 2011-05-05 20:38:13 UTC:</i><br />
  Done in [030a048697]. Great!

  <hr /><i>viriketo added on 2011-06-15 14:16:31 UTC:</i><br />
  I see that the [Annotate] appears for every "piece" of the artifact.

  I meant a single [Annotate] button for the page of the artifact, although that page cannot be related to a single checkin, as the artifact can be of many checkins.

  Maybe, an [Annotate] can be for every "piece" artifact, but those "pieces" be ordered by time. Is it easy to achieve?

  Moreover, I don't like those "pieces" shown without any newline between them; I consider them very hard to read.


tkt_uuid: cc6557cfc5763fa80bb04eecea7f713b0751efc4
type: Feature_Request
status: Fixed
severity: Important
foundin: all
private_contact: fbd02a899925c387fbd77e1deb2bc90fa8921134
resolution: Fixed
title: Unicode support
comment:
  cann't use unicode character in many places.
  sqlite is a full unicode supported db system, please consider to add unicode support and make default charset of webpage is "utf-8".

  <hr><i>drh added on 2008-11-14 14:11:41:</i><br>
  Please provide more detail.

  You say fossil "can't use unicode character in many places" but you do not
  specify what places.  Petr Struc got fossil working for Czech as part of
  ticket [30f7206b2].  Are you saying that his changes missed some places and
  that addtional changes are needed?  What exactly is not working.

  Recognize that the main developers of fossil run on unix (Linux and Mac OSX)
  where everything is always UTF8 all the time.  We never have to deal with
  goofy windows character sets and have no way discovering or testing for
  character set problems on windows.  Everything just works for us. If you 
  want us to work on this issue, you need to give us more hints.

  <hr><i>kkinnell added on 2009-01-29 18:42:02:</i><br>
  I think the issue here and the wikiname issue in [0a0f00d434] probably relate.


  <hr><i>anonymous added on 2009-02-01 08:53:37:</i><br>
  What he means is that the webpages are not served as utf8, so characters outside the us-ascii (what firefox tell me this page is encoded in) will not get through to fossil when sending post information with utf8 characters.

  also, it seems these pages are served with this http header:

    Content-type: text/html; charset=ANSI_X3.4-1968

  setting charset to utf8 might help (or adding meta tag)

  <hr><i>kkinnell added on 2009-04-07 15:03:25:</i><br>
  I have Firefox set to use UTF-8, and when I display the page info and the response headers, the encoding in use is UTF-8.  This is what I get whether I'm looking at the online repository or any of my local repositories.

  You can usually force a browser to use whatever encoding you want as long as the server will supply it, and in Fossil's case it will supply UTF-8.

  I use UTF-8 code points in comments all the time&#8212;including this comment.  For me, it displays correctly.  I'm sure for some it displays as <code> &amp;#8212; </code> or perhaps a different number (or two in the worst case.)

  The only place I've found where Fossil is at all "ill-mannered" about encodings is it's insistence on using "entified" versions of multi-byte characters in the titles of wiki pages.  It's not even clear if that is a bug.

  99.9% of the problems with encodings stem from a mismatch between the encodings two disparate systems are using.  If the web server will serve multiple encodings, but your browser is allowing a default that isn't what's wanted, then the encoding will appear to be wrong.

  The fast and loose way that some OS' and other software will switch encodings to make using them "friendly" doesn't help.  The best bet is to pick some UC and set everything on your system to use it, ask for it, and complain when it isn't available.  If you generally hit sites where Latin-1 would work, you should probably set everything to UTF-8.

  Encodings are thorny.  If something isn't displaying correctly, make sure you check every setting (and there are a LOT of places to set an encoding.)  If you're using a non-unix or not-unix-like system, you will need to do a lot more checking.

  <hr /><i>dmitry added on 2011-09-09 22:25:00 UTC:</i><br />
  Fixed in [daacc139a5].


tkt_uuid: cc8271389a5f135743dc59234b50de4325c1e041
type: Documentation
status: Fixed
severity: Important
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Fixed
title: unable to check fossil-users Archives
comment:
  on page:
  http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users
  there is a link to "To see the collection of prior postings to the list, visit the fossil-users Archives" poiting to:

  http://lists.fossil-scm.org:8080/pipermail/fossil-users/

  that link returns just:

  Not Found

  The requested URL /pipermail/fossil-users/ was not found on this server.
  Apache/2.2.3 (Ubuntu) Server at lists.fossil-scm.org Port 8080

  <hr><i>anonymous added on 2008-11-23 07:24:58:</i><br>
  Temporary fix is to replace "pipermail" in any mailing list archive reference to "cgi-bin/mailman/listinfo".

  There should be a way to fix this in Mailman's settings, but I do not know what that is.  Barring that, could there be a symlink from "cgi-bin/mailman/listinfo" to "pipermail"?

  <hr><i>drh added on 2008-11-23 11:54:59:</i><br>
  I did a "grep" of the entire Mailman file hierarchy and could not find 
  "pipermail" anywhere.  I did find the document that renders the pages that
  contain the "pipermail" link, but the URL is a macro of some kind that Python
  inserts as the page is rendered. I have been unable to locate the source of
  the "pipermail" URL.

  <hr><i>anonymous claiming to be Kees Nuyt added on 2008-11-23 23:25:31:</i><br>
  FYI, the correct address of "The fossil-users Archives" is :

  http://lists.fossil-scm.org:8080/cgi-bin/mailman/private/fossil-users/

  (Ref: message of drh on the list, Thu, 20 Nov 2008 20:58:41 -0500)

  <hr /><i>lrem added on 2011-09-14 16:24:28 UTC:</i><br />
  The front site contains now working links for both sign-up and archives.


tkt_uuid: cc8fb65705ef72a0d06dc07a3a0ac5c7f63b617c
type: Code_Defect
status: Fixed
severity: Severe
foundin: a4b0b7d9e9
private_contact: 9e3254e6e3c2643cc148bab2d55f46bb4c0446f4
resolution: Fixed
title: process_one_web_page crashes if zPathInfo is NULL
comment:
  If zPathInfo is NULL. Fossil crashes in process_one_web_page. This can be demonstrated by using a CGI script with directory: where no further path is specified.
  <verbatim>
  $ gdb --args ./fossil.exe cgi /c/Apache2.2/cgi-bin/fossil
  GNU gdb 6.8
  Copyright (C) 2008 Free Software Foundation, Inc.
  License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
  This is free software: you are free to change and redistribute it.
  There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
  and "show warranty" for details.
  This GDB was configured as "i686-pc-mingw32"...
  (gdb) r
  Starting program: c:\Users\MJanssen\Projects\fossil/./fossil.exe cgi c:/Apache2.
  2/cgi-bin/fossil
  [New thread 2100.0xce0]
  Program received signal SIGSEGV, Segmentation fault.
  process_one_web_page (zNotFound=<value optimized out>) at wbld/main_.c:897
  897         while( zPathInfo[i] && zPathInfo[i]!='/' ){ i++; }
  (gdb) q
  The program is running.  Exit anyway? (y or n) y
  </verbatim>

  <hr /><i>dmitry added on 2011-09-11 12:04:29 UTC:</i><br />
  Fixed in [0fc9b5e1f2].


tkt_uuid: cccd387b49b1d2a0304be19b6dfaca733eac8334
type: Code_Defect
status: Open
severity: Minor
foundin: e964b55dd6
private_contact: 5c164664f608e8049128be696a3d13e04aa6fafd
title: "nowiki" tag doesn't take effect in ticket titles.
comment:
  "nowiki" is not parsed in ticket titles... the verbatim tag is displayed, and items in <nowiki>[blocks]</nowiki> are still rendered as URIs.


tkt_uuid: cdd360438de1331b83874fbb70f4e0d22fdbae79
type: Code_Defect
status: Fixed
severity: Minor
foundin: 713b8be852
private_contact: e64e062ff7022fc7fdd41ac56baff07e8ae485d9
resolution: Fixed
title: Fossil does not handle absolute paths without disk drives in Windows.
comment:
  <nowiki>
  Attempt #1 to open a repository in Windows:
  <pre>
  e:\source\c\fossil>fossil open \Source\Repositories\fossil.fsl
  fossil: repository does not exist or is in an unreadable directory: E:/Source/C/fossil/Source/Repositories/fossil.fsl
  </pre>

  Attempt #2:
  <pre>
  e:\source\c\fossil>fossil open E:\Source\Repositories\fossil.fsl
  BUILD.txt
  COPYRIGHT-GPL2.txt
  Makefile
  Makefile.w32
  art/CollRev1.dia
  art/CollRev2.dia
  art/CollRev3.dia
  art/CollRev4.dia
  art/branching.odp
  .
  .
  .
  </pre>

  It bizarrely assumes that a path with an opening backslash is relative to the current path instead of relative to the drive root like it should.

  It seems fossil only recognizes a full path specification if it includes device names.  This is a Bad Idea.  It makes me wonder how it handles UNC or UNCW paths as well:

  <pre>
  \\Computer\SharedFolder\Path\To\Destination\File
  \\?\UNC\Computer\SharedFolder\Path\To\Destination\File.
  </pre>

  (I have no way of testing that at the moment as the Windows machine I'm using is not on a network with any other Windows machines.)
  </nowiki>

  <hr><i>drh added on 2009-09-13 11:47:15:</i><br>
  I think that the following patch may be sufficient to fix this:

  <verbatim>
  --- src/file.c
  +++ src/file.c
  @@ -244,10 +244,11 @@
   ** Convert /A/../ to just /
   */
   void file_canonical_name(const char *zOrigName, Blob *pOut){
     if( zOrigName[0]=='/'
   #ifdef __MINGW32__
  +      || zOrigName[0]=='\\'
         || (strlen(zOrigName)>3 && zOrigName[1]==':'
              && (zOrigName[2]=='\\' || zOrigName[2]=='/'))
   #endif
     ){
       blob_set(pOut, zOrigName);
  </verbatim>

  I will strive to boot up a copy of windows this afternoon and try it out.
  In the meantime, a work-around might be to use forward slashes ("/") instead of
  backslashes ("\") in the pathname, at least for the first character of
  an absolute pathname.


  <hr><i>drh added on 2009-09-13 16:21:13:</i><br>
  The patch shown above turns out to work.  
  Fixed by check-in [42bf80978d9740dbac8c762033348fbb1da9b0de].


tkt_uuid: cde4448290586f08a18ec76224258683006ad98e
type: Code_Defect
status: Open
severity: Important
foundin: d5729c31b5
private_contact: 84f59114b7eee7088fd7e2932599c69c9ad0761b
title: Stash for an uncommitted, untracked file gives no warning or error
comment:
  If you try and explicitly stash a file that isn't being tracked, you get no warning.

  <pre>echo "hello" > test.txt
  fossil stash save -m "Test stash" test.txt   # Would expect an error when running this line

  # I managed to do the following:
  echo "world" > test.txt
  fossil stash pop</pre>

  And blew away some work.  My fault for not having committed the changes, but silently failing definitely seemed like note-worthy bug.


tkt_uuid: cdfef046616e1ab47953f78dc2a139eab551784d
type: Feature_Request
status: Open
private_contact: e7d733707d8c126de4f080f5f958e762bfaa8983
title: Specify file or directory options on "fossil cgi" command line
comment:
  I'm trying to use Fossil's CGI mode, but with /index.cgi and other such artifacts of the hosting configuration removed from the URL. I currently have rewrites working in the server, and a shell script that munges the environment variables, but I'm having trouble bridging to "fossil cgi".

  In particular, because my shell script isn't the stock #!/usr/local/bin/fossil example, I can't pass the repository or directory options so it knows where to look for its data. An example in the cookbook writes a temporary compatible script containing the needed options and spawns an instance, but surely there has to be a better way.

  Can "fossil cgi" accept -r or -d options that correspond to the "repository:" or "directory:" values from the shell script, or perhaps use a single switch and intelligently set the right value? For instance:

  fossil cgi -r /home/fossil/myproject.fossil
  fossil cgi -d /home/fossil

  Or maybe something like:

  fossil -t /home/fossil/myproject.fossil
  fossil -t /home/fossil

  where "-t" means "target" and sets the correct option based on whether the target is a file or directory.


tkt_uuid: ce33b14f8fa9a41679705502086ca5fdfb5d142f
type: Incident
status: Open
severity: Minor
foundin: ca08c1d1b3
private_contact: 6b7d8d19b3584e0b0b59ee79d0f778ecd9f60111
resolution: Open
title: 'configure pull' command recevie empty response.
comment:
  Server send empty response for non authorative user's 'configure pull' command.

  I create three patch variations. (I think first version is simple and good.)

  1. when 'reqconfig' card received, grant 'nobody' capabilities to non-authoratives. (like 'clone' card)<br>xfer.c / page_xfer()<blockquote><verbatim>--- ../Fossil-ca08c1d1b3/src/xfer.c      2009-09-24 01:54:53.000000000 +0900
  +++ xfer-1.c    2009-10-09 09:11:39.000000000 +0900
  @@ -747,6 +747,7 @@
       if( blob_eq(&xfer.aToken[0], "reqconfig")
        && xfer.nToken==2
       ){
  +      login_check_credentials();
         if( g.okRead ){
           char *zName = blob_str(&xfer.aToken[1]);
           if( configure_is_exportable(zName) ){
  </verbatim></blockquote>
  Currently, 'check_login()' function defined in 'xfer.c' grants
  no capabilities to unauthoratives.

  2. when 'login' card received, grant 'nobody' capabilities if authorization failed.<br>(This patch also accept non-registered users and registered but wrong password specified as 'nobody')<br>This patch always need 'login' card.<br>xfer.c / check_login()<blockquote><verbatim>--- ../Fossil-ca08c1d1b3/src/xfer.c      2009-09-24 01:54:53.000000000 +0900
  +++ xfer-2.c    2009-10-09 09:13:16.000000000 +0900
  @@ -421,6 +421,8 @@
     if( rc==0 ){
       /* If the login was successful. */
       login_set_anon_nobody_capabilities();
  +  }else{
  +    login_check_credentials();
     }
   }
  </verbatim></blockquote>

  3. when 'login' card received, grant 'anonymous' capabilities to 'anonymous' with empty password.<br>(This patch deny non-registered users and registered but wrong password specified.<br>User who not registered need 'anonymous@' for 'configure pull' command URL parameter.)<br>NG: <tt>fossil configure pull skin http://example.net</tt><br>OK: <tt>fossil configure pull skin http://anonoymous@example.net</tt><br>This patch always need 'login' card.<br>xfer.c / check_login()<blockquote><verbatim>--- ../Fossil-ca08c1d1b3/src/xfer.c      2009-09-24 01:54:53.000000000 +0900
  +++ xfer-3.c    2009-10-09 09:14:21.000000000 +0900
  @@ -391,14 +391,16 @@
     db_prepare(&q,
        "SELECT pw, cap, uid FROM user"
        " WHERE login=%Q"
  -     "   AND login NOT IN ('anonymous','nobody','developer','reader')"
  +     "   AND login NOT IN ('nobody','developer','reader')"
        "   AND length(pw)>0",
        zLogin
     );
     if( db_step(&q)==SQLITE_ROW ){
       Blob pw, combined, hash;
       blob_zero(&pw);
  -    db_ephemeral_blob(&q, 0, &pw);
  +    if( strcmp(zLogin,"anonymous")!=0 ){
  +      db_ephemeral_blob(&q, 0, &pw);
  +    }
       blob_zero(&combined);
       blob_copy(&combined, pNonce);
       blob_append(&combined, blob_buffer(&pw), blob_size(&pw));
  </verbatim></blockquote>

  <hr /><i>anonymous added on 2011-02-18 19:52:23 UTC:</i><br />
  This would be nice to see. At present, if you aren't logged in via remote-url, <code>fs config pull all</code> silently fails unless you're really observant and notice there weren't any received cards. This took me a few minutes of head scratching to figure out. I'm not sure the patch is the right way to solve this (it could be), but I'm glad I'm not the only one who's run in to this oddity.

  <verbatim>% fs config pull all
                  Bytes      Cards  Artifacts     Deltas
  Sent:             660         26          0          0
  waiting for server...Total network traffic: 428 bytes sent, 0 bytes received
  % fs remote-url
  http://127.0.0.1:9023/
  % fs remote-url http://sean@127.0.0.1:9023/
  password for sean: 
  http://sean@127.0.0.1:9023/
  % fs config pull all
                  Bytes      Cards  Artifacts     Deltas
  Sent:             660         26          0          0
  Received:       55201         15          0          0
  Total network traffic: 490 bytes sent, 39537 bytes received</verbatim>


tkt_uuid: ce458c35ca69678ba3e7c60c84d15419ac5475db
type: Code_Defect
status: Fixed
severity: Minor
foundin: 3d62a9fb39
private_contact: e06f2edd7ff93f17bfb037053ebbb85b6488deee
resolution: Fixed
title: Inconsistency between commands ls and status
comment:
  Files deleted outside fossil are reported by 'fossil status' as MISSING, while 'fossil ls' shows them as EDITED. I think it should be MISSING too.

  <hr><i>drh added on 2008-10-31 14:08:32:</i><br>
  Fixed by check-in [89d100b845]


tkt_uuid: ce73fc217320601b9c8ba2c94507e25e82879edc
type: Code_Defect
status: Open
severity: Minor
foundin: [599e6abfb1] 2010-03-08
private_contact: 85642192e67e1e669fd6547f4b92074c6e91c71e
title: ui doesn't work on Windows 9x (portable_system() broken)
comment:
  On Windows 9x I get "Invalid command or file name" when issuing "fossil ui" command and each time browser sends a request to a fossil server.

  The problem is in portable_system() -- 9x doesn't like a hack with double quotes around a command string. Since system(string) function on Windows is implemented as %COMSPEC% /c string, on 9x we get: %COMSPEC% /c ""fossil" http "foo"", which does not work, instead of normal: %COMSPEC% /c "fossil" http "foo", which doesn't work on NT etc.

  A hack using double quotes around entire command string on Windows NT (2000, XP etc.) [http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/cmd.mspx?mfr=true|is documented] and works because
  cmd.exe strips the first and the last quote if a command starts with a quote. So there exists another dirty (and IIRC undocumented) hack. We could start command string with something that both cmd.exe and command.com ignore:
  <pre>%COMSPEC% /c ="fossil" http "foo"
  %COMSPEC% /c ="fossil" http foo
  %COMSPEC% /c =fossil http "foo"
  %COMSPEC% /c =start http://127.0.0.1/</pre>

  Commands above work just fine both in 9x and NT (up to Windows 7) as long as internal commands like echo or start are NOT quoted (<code>="start" http://127.0.0.1/</code> doesn't work nor <code>"start" http://127.0.0.1/</code> does). So, maybe <code>mprintf("=%s", zOrigCmd)</code> would be better? Any other ideas? And yes, I know, that it is 2010 now and 98 must be already dead… :-)


tkt_uuid: cee1b58990e8107297a052107101724ccfe46275
type: Documentation
status: Fixed
severity: Cosmetic
foundin: cabf810b0b
private_contact: 3e65e23d1eb4a4006bfecf78b01bc7b16cbeb33a
resolution: Fixed
title: Questions And Criticisms using wrong tag </p> instead of </b>
comment:
  A typo on the closing tag of: 
  "<b>Fossil looks like the bug tracker that would be in your 
  Linksys Router's administration screen.</p>" where </p> should be </b>.

  So in Chrome it renders the rest of the text as bold.


tkt_uuid: cf50ea4d6914fb6d856988da72293098942da98e
type: Code_Defect
status: Fixed
severity: Minor
foundin: current trunk
private_contact: 5ddc9ef2cc5a1544558a56a3cba910a0ba4d422a
resolution: Fixed
title: popen2 for windows have a typo
comment:
  File popen.c:line 120
  <pre>
    fd = _open_osfhandle(hStdoutWr, 0);
  </pre>
  should be 
  <pre>
    fd = _open_osfhandle(hStdinWr, 0);
  </pre>
  I have tested it, it worked well.


tkt_uuid: cf67fa9343e145dee3d2600da7184eaffa8064ce
type: Incident
status: Closed
severity: Important
foundin: [cfbbad3d48] 2010-10-08 10:59:53 UTC
resolution: Works_As_Designed
title: Fossil crashes when committing
comment:
  I wanted to see if Fossil would be able to pull changesets/revisions from one repo to another (like Hg does). However, during testing, it kept crashing when I tried to commit.

  Here are the steps I did:
  <verbatim>
  ** The following commands all occur within the "test1" directory
  $ fossil new tr1.fsl
  $ fossil open tr1.fsl
  $ fossil add file1.txt
  $ fossil ci -m "Initial commit"
  ...Edited file1.txt...
  $ fossil ci -m "Removed some lines"
  $ cd ../test2

  ** The following commands all occur within the "test2" directory
  $ fossil clone http://localhost:8080/ tr2.fsl -> success
  $ fossil open tr2.fsl -> success
  ..Edited file 1.txt...
  $ fossil ci -m "Added lines at the end"
  </verbatim>

  I am using a Windows 7 box for this.

  <hr /><i>anonymous added on 2010-10-08 15:46:27:</i><br />
  I forgot to mention: tr2.fsl is a clone of tr1.fsl.
  Running sqlite3 "pragma integrity_check" on both test repos returns ok.

  <hr /><i>wolfgang added on 2010-10-08 16:03:41:</i><br />
  i could reproduce the error on Win XP SP2

  The error does not appear, if autosync is switched off.

  <hr /><i>anonymous added on 2010-10-08 18:05:50:</i><br />
  Ah, yes. New repos do have that option enabled by default.

  I just tried it now and it works. Thanks!

  <hr /><i>anonymous added on 2010-10-08 18:17:27:</i><br />
  Can I at least request for an error message to be shown instead of Fossil crashing? That way, it could point users to which they need to change.


tkt_uuid: cf724814c785e360f77ae4e85810f05392bf5bbe
type: Feature_Request
status: Closed
priority: Low
severity: Important
foundin: [b12a031557] 2008-12-26 17:41:09
private_contact: 5cf29103d2a983eea989510a4681babdf755fa95
resolution: Open
title: Zip files are ok
comment:
  When i download the ZIP file from timeline page, after logging as anonymous, i go to the last version of fossil (current at http://www.fossil-scm.org/index.html/vinfo/b12a0315572ec541cbc130375b4b84b39469e12d ) and click the ZIP archive option. The zip archive is corrupted and can't open it with any app. This happens in previous version checking too.

  <hr><i>kkinnell added on 2009-01-29 16:57:23:</i><br>
  The ticket is being closed because:

    1 Updates made since this ticket was opened have probably fixed the problem, if the problem was actually a bug.

    2 There wasn't enough information to replicate the bug: system?  login & permissions?

  Hopefully, the problem is gone.


tkt_uuid: d06e5d462b1aca3e47e897f5b0af534cbaa57d3c
type: Code_Defect
status: Closed
severity: Minor
foundin: 0448438c56
private_contact: 28b4f1873839f0f7d467637c702a78d6f813d67c
resolution: Fixed
title: * is not accepted as a parameter for crnl-glob on command line
comment:
  *, which is the value for most of my projects, is not accepted as a parameter for crnl-glob on command line. It has to be set through the browser. As ui/server command do not work too well when a vpn is installed, I need to set the settings from command line only, which is not possible.

  Command:
  fossil settings crnl-glob *
  Here is the output:
  d:\tools\fossil.exe: Usage: d:\tools\fossil.exe settings ?PROPERTY? ?VALUE?

  <hr /><i>anonymous claiming to be Martin added on 2011-06-15 05:29:02 UTC:</i><br />
  You might want to read this thread from mailing list:

  [http://www.mail-archive.com/fossil-users@lists.fossil-scm.org/msg04322.html]



  <hr /><i>anonymous added on 2011-06-15 08:12:51 UTC:</i><br />
  Ah, My apologies. I should have searched the mailing list first. So, this is a MinGW error instead. The problem is, on a specific system, the ui command fails. And I can't set the settings with command line also. So, as of now, I have no way of setting the value to *.

  <hr /><i>stephan added on 2011-09-14 18:16:18 UTC:</i><br />
  This is not a bug: the problem is that your SHELL is resolving '*' before fossil ever gets it. You have to escape * by wrapping it in quotes.

  <hr /><i>mistachkin added on 2011-09-14 18:52:30 UTC:</i><br />
  This may still be an issue on Win32, where a naked * is not actually interpreted by the shell (yet should be accepted by Fossil as valid).

  <hr /><i>stephan added on 2011-09-15 09:08:23 UTC:</i><br />
  i got an email from the poster, who reports:

  <hr>
  <pre>
  I don't know exactly what changed, but in version 1.18 or 1.19, the commands:
  fossil setting crnl-glob *
  fossil setting crnl-glob "*"
  work perfectly.
  </pre>
  ... (weird - fossil is prematurely ending my PRE block...)
  <pre>
  And BTW, previously neither single quotes or double quotes
  worked to set the value to *. Single quotes were taken in
  the value and double quotes gave the same error which I
  mentioned in the thread.
  </pre>
  <hr>

  Changing status from not-a-bug to fixed.

  @Yogesh - if this comes back, please let us.


tkt_uuid: d0a7fc67e94f697d0b554277f1e645f4c2b93354
type: Code_Defect
status: Fixed
severity: Important
foundin: 1e82c4 and previous
private_contact: 5c164664f608e8049128be696a3d13e04aa6fafd
resolution: Open
title: fossil crashes with assert() if non-existant sha identifier picked for checkout
comment:
  <verbatim>
  $ fossil info
  repository:   /home/bch/fossil_2/fossil.fsl
  local-root:   /home/bch/fossil_2/
  project-code: CE59BB9F186226D80E49D1FA2DB29F935CCA0333
  server-code:  d88c5ddc09c25be88a931b3f85fa44b1630bf715
  checkout:     1e82c4aa850e1b39add61dd40e99d2383404e153
  parent:       e44d7a4b5af0b66bf493ae55f0c8b71dc6ad46ed
  $ fossil leaves | head
  === 2008-10-25 ===
  19:35:04 [1e82c4aa85] *CURRENT* Fix the "number of tickets" counter on the
           "stats" webpage. (by drh)
  === 2008-02-22 ===
  22:37:54 [383c10f004] *MERGE* Merged bugfix [b3d61d7829] into this semi-
           abandoned branch just in case we will work on it again. Do it now
           instead of forgetting it later. (by aku)
  === 2008-02-19 ===
  13:58:14 [8c4b530084] tclfossil: added schema command (by mjanssen)
  === 2007-10-13 ===
  $ fossil checkout 383c11
  assertion "(pBlob)->xRealloc==blobReallocMalloc || (pBlob)->xRealloc==blobReallocStatic" failed: file "blob_.c", line 146, function "blob_reset"
  [1]   Abort trap (core dumped) fossil checkout 383c11
  $
  </verbatim>

  NOTE: All files now seem to be deleted...


tkt_uuid: d0d21c56d6918ca70614a447aee66427971067b9
type: Feature_Request
status: Fixed
severity: Important
resolution: Fixed
title: Update should restore locally missing files
comment:
  Update should restore locally missing files (I think)
  (Most other SCMs have this semantics. Also happens to be very convenient)

  <hr><i>drh added on 2009-12-18 00:32:57:</i><br>
  Fixed by check-in [2d996b080e1675dad33430598f4f4a75a089f201]


tkt_uuid: d0e0bc0da5dc63187fc64643ff1ce391a02e6237
type: Feature_Request
status: Open
severity: Minor
private_contact: c76260317d907e593238775e171317aff2baec12
resolution: Works_As_Designed
title: add ticket created time
comment:
  ticket schema has tkt_mtime but there is no column which saves the creation time. this would be useful for ordering tickets by open time or by time since last edited. this might be possible using the current ticket configuration but I think it is more appropriate to have a tkt_ctime column that is managed automatically.

  <hr><i>anonymous claiming to be Kees Nuyt added on 2008-11-27 23:09:31:</i><br>
  Initially I agreed, but considering that tickets are stored with full history (*), and there is a history button, there is no real need for a tkt_ctime column. If you really want one: you can change the ticket table to your liking in Setup, and use any columns in ticket reports.

  (*) I seem to have read the current status is obtained by replaying all ticket updates in chronological order, where the newer value replaces an old one, and comments are appended to form the text blocks at the bottom of the ticket detail page.

  <hr><i>jeremy_c added on 2009-12-31 03:57:22:</i><br>
  I believe you can simply add a column to your ticket schema:

  <verbatim>
  create_date datetime default CURRENT_TIMESTAMP
  </verbatim>


  <hr><i>jeremy_c added on 2009-12-31 04:26:49:</i><br>
  Yes, the code above works just fine.

  <hr><i>rwilson added on 2009-12-31 19:42:25:</i><br>
  actually, i just tested the schema changes solution above; editing a ticket updates the created time.  this is because, essentially, editing a ticket performs a DELETE then an INSERT, so the default CURRENT_DATETIME gets evaluated fresh again.  (i confirmed this by inspecting tkt.c [98960a5cdc].)

  i'm not sure that the OP's request can be resolved without writing some fossil code.  i'm going to try a few more things with the ui to see if i can get the desired result, but i don't have any more time today.

  <hr><i>jeremy_c added on 2009-12-31 21:15:45:</i><br>
  You are right. I wanted to implement this in my own repo, so I added some code and tested. This method works :-)

  Add to your database schema something like:

  <verbatim>
  create_date TEXT
  </verbatim>

  Then in your New Ticket template, add something like:

  <verbatim>
  <th1>
    if {[info exists submit]} {
       set create_date [date]
       submit_ticket
    }
  </th1>
  </verbatim>

  You likely already have the above if statement and only need to add the <tt>set create_date</tt> part. You can then display the create date in your View template.

  Sorry for the bum fix to start with. I made a simple test case and didn't test editing.


tkt_uuid: d13e296bd543b43070e7049d17eb60a111c43edf
type: Code_Defect
status: Closed
foundin: e5e6ca4659
resolution: Works_As_Designed
title: can't browse tickets without logging in
comment:
  Reading a ticket works without logging in, but only if you know the URI (e.g., https://www.fossil-scm.org/index.html/tktview?name=...).  If you don't know it, then the list of tickets tantalizes you with a summary and a hex name but there is no link to the full ticket page.  Why disable the links for users who haven't logged in?  I know I can log in anonymously, but having to do so just to browse tickets seems an arbitrary and superfluous barrier.  It probably also means that search engines won't index the tickets.

  <hr /><i>drh added on 2011-06-02 18:52:24 UTC:</i><br />
  Providing open access to tickets without anonymous login is a configuration
  option:  Simply turn on "History" privilege to the special user "nobody".

  We deliberately choose to not do that on the Fossil website because the 
  internet is a hostile place and spiders would overrun our bandwidth quota if
  we did.  


tkt_uuid: d1b50f4d06579e43c24d0e35f9d28d9562e95126
type: Feature_Request
status: Open
priority: Low
resolution: Open
title: finfo and timeline commands are cryptic
comment:
  The finfo and timeline commands are cryptic.  `Finfo' isn't a meaningful English word, and its decomposition into `file info' gives no indication that it has anything to do with history.  Why can't I just type `fossil log' like every other revision control system out there, or `fossil log foo.c' to limit the output to changes affecting foo.c?


tkt_uuid: d1cdb1bfa181487f2c5944f94e3b63f26e440be0
type: Documentation
status: Fixed
severity: Minor
private_contact: b7fe49b64f1db13e63b9adce053ded80d95f5c0e
resolution: Fixed
title: Leaf functionality unclear
comment:
  This is a request for documentation that covers leaves. I assume it is similar or synonymous with branching in other SCMs, but I wasn't able to find any documentation that goes into detail about it or confirms it. If the documentation already exists, I apologize, in which case, perhaps it can just be made easier to stumble upon.

  <hr><i>kkinnell added on 2008-11-19 15:25:47:</i><br>
  There is quite a bit of <b>fossil</b> that is not yet verbosely documented, or documented at all.  The project hasn't had anyone who's primarily a documenter
  until recently (a lot of projects suffer from this problem.)

  This explanation of <a href="http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/">distributed SCM</a>,
  while it fails to mention <b>fossil</b> (a glaring oversight!) will at least
  be another source for clarifying things a bit.  

  <hr><i>kkinnell added on 2008-11-19 16:42:18:</i><br>
  Sorry, I'm trying to do too much at once and doing it all badly...

  I meant to mention that the explanation doesn't explicitly say anything
  about what a "leaf" is, but it gives a good overview that should make what a leaf is clearer.  A leaf is a good old computer science bottom-of-the-tree node.
  It's derived from a basis, and has no descendants.  Branches and leaves in a
  distributed scm are just side effects a lot of the time; it's up to the
  participants to merge them back into a basis.

  <hr><i>eric added on 2008-11-19 16:56:23:</i><br>
  At one point it mentions "heads" - it means leaves.

  <hr /><i>lrem added on 2011-09-14 15:09:09 UTC:</i><br />
  It is now explained here [/doc/trunk/www/branching.wiki].


tkt_uuid: d22a499c90aabb160a52bbe2d92bdb5ecae38246
type: Code_Defect
status: Fixed
severity: Important
foundin: fossil-linux-x86-b3ee50c946
private_contact: 22e3b7a55e291d179313f4c2e34877f09743ee31
resolution: Fixed
title: error trying to retrieve settings
comment:
  Create a repository:

       fossil new fossil-test

  Try to retrieve settings:

       fossil setting -R fossil-test

  error:

  fossil: no such table: global_config
  SELECT '(local)', value FROM config WHERE name='autosync' UNION ALL SELECT '(global)', value FROM global_config WHERE name='autosync'


tkt_uuid: d299fb9842d6bc6500fc7f3065b02863d4262ded
type: Feature_Request
status: Fixed
severity: Minor
foundin: ae84e6c7d1
private_contact: d65c8f42ef81f14ced10171bf205f9a35ce6dff4
resolution: Fixed
title: failed `fossil open` - delete _FOSSIL_
comment:
  dgp	Sometimes I mistype a tag name durin `fossil open`:
  dgp	fossil open /path/to/tcl.fr core-8-5-brunch
  dgp	It fails, gives me a good message.
  dgp	So I try again, taking care to type it right, and it fails because I can't `fossil open` into a directory where there's already been a `fossil open` -- even though it failed.
  dgp	My simple minded fix would be to delete the _FOSSIL_ file when a `fossil open` fails, but dunno what implications that has.

  <hr /><i>anonymous claiming to be Arnel added on 2011-04-30 13:00:28 UTC:</i><br />
  Deleting _FOSSIL_ is similar to what "fossil close" does, so in your case it should not have any harmful effects whatsoever.


tkt_uuid: d2c9a2fe01fcebe2f212f95f84178739a35838ab
type: Incident
status: Open
severity: Important
foundin: any
private_contact: ddae85699df0ae84ab8e0a6a6dacf72bab6d4a7a
title: Login expiration time doesn't work
comment:
  Even setting "Login expiration time" to 100000 doesn't make a difference for me: I am always required to re-login after several hours.

  I log in at http://dev.ronware.org/reva.cgi/index - and the next morning it says I am not logged-in, and I have to log-in once again.


tkt_uuid: d33a99196744f63ebca109aa8cec0a0250c6c2a8
type: Feature_Request
status: Fixed
severity: Severe
foundin: 73c24ae363
private_contact: 474afea8b7508cfcd7156d89965d9e10a51ceba7
resolution: Fixed
title: Option to add directory and subdirectories that start with a "."
comment:
  It would be quite usefull in conjection with eclipse to be able to, with one command, add the .metadata subdirectory. Since this seems to be where alot of eclipse project data is stored. At the moment I am adding the directories one by one since alot of the subdirectories under .metadata also start with a ".".

  Perhaps along the lines of; 

  fossil add followhidden .metadata
  or
  fossil add all .metadata

  <hr><i>anonymous added on 2010-06-02 09:46:56:</i><br>
  You can do command "add" with this option "--dotfiles" .


tkt_uuid: d37b9eadb3c105e71788603972c6f5d221ad2b77
type: Code_Defect
status: Closed
severity: Important
foundin: 472f9411ee
resolution: Fixed
title: Encoding problems after rebuild
comment:
  After rebuild to version d63f87c003 from previous 472f9411ee all non-ascii char (i'm write in spanish) become erroneous in titles and comments when i worked ok before this version's update.
  Editing where is possible (summary line/title ticket, .e.g.) i see all ok again but the problem remains where i can't do this (and it's very hard edit all accents again ...)
  Happen on Windows XP & Firefox 3.

  <hr><i>anonymous added on 2009-08-08 05:42:02:</i><br>
  Rebuilding to [e124881a70] from [472f9411ee] keeps the problems mentionated, but
  rebuilding to [e124881a70] from [d63f87c003] works perfectly : keeps accents, dieresis, etc.
  So, seems a problem related to [472f9411ee]'s version projects. 
  Projects created with laters versions works ok after rebuild.


tkt_uuid: d38c2c8795181cc3e197060917d59be830c67b1f
type: Code_Defect
status: Fixed
severity: Cosmetic
foundin: 2011.03.01.190432
private_contact: 6ba147a4218010d3c6ffddc5ed73dc017a44bf3c
resolution: Fixed
title: spelling corrections
comment:
  $ fossil diff

  <verbatim>
  Index: src/report.c
  ===================================================================
  --- src/report.c
  +++ src/report.c
  @@ -1121,11 +1121,11 @@
          "SELECT title, sqlcode, owner, cols FROM reportfmt WHERE title='%s'", zRep);
       }
       if( db_step(&q)!=SQLITE_ROW ){
         db_finalize(&q);
         rpt_list_reports();
  -      fossil_fatal("unkown report format(%s)!",zRep);
  +      fossil_fatal("unknown report format(%s)!",zRep);
       }
       zTitle = db_column_malloc(&q, 0);
       zSql = db_column_malloc(&q, 1);
       zOwner = db_column_malloc(&q, 2);
       zClrKey = db_column_malloc(&q, 3);

  Index: src/stash.c
  ===================================================================
  --- src/stash.c
  +++ src/stash.c
  @@ -333,11 +333,11 @@
   **     This command is undoable.
   **
   **  fossil stash apply ?STASHID?
   **
   **     Apply the identified stash to the current working check-out.
  -**     If no STASHID is specifed, use the most recent stash.  Unlike
  +**     If no STASHID is specified, use the most recent stash.  Unlike
   **     the "pop" command, the stash is retained so that it can be used
   **     again.  This command is undoable.
   **
   **  fossil stash goto ?STASHID?
   **

  Index: src/style.c
  ===================================================================
  --- src/style.c
  +++ src/style.c
  @@ -624,11 +624,11 @@
     { "span.ueditInheritAnonymous",
       "color for capabilities, inherited by anonymous",
       @   color: blue;
     },
     { "span.capability",
  -    "format for capabilites, mentioned on the user edit page",
  +    "format for capabilities, mentioned on the user edit page",
       @   font-weight: bold;
     },
     { "span.usertype",
       "format for different user types, mentioned on the user edit page",
       @   font-weight: bold;

  Index: src/tkt.c
  ===================================================================
  --- src/tkt.c
  +++ src/tkt.c
  @@ -852,11 +852,11 @@
   **           ?-q|--quote?
   **           ?-R|--repository FILE?
   **
   **         Run the ticket report, identified by the report format title
   **         used in the gui. The data is written as flat file on stdout,
  -**         using "," as separator. The seperator "," can be changed using
  +**         using "," as separator. The separator "," can be changed using
   **         the -l or --limit option.
   **         If TICKETFILTER is given on the commandline, the query is
   **         limited with a new WHERE-condition.
   **           example:  Report lists a column # with the uuid
   **                     TICKETFILTER may be [#]='uuuuuuuuu'
  </verbatim>


tkt_uuid: d3ab7965c636275e51f13cbcc1c85500ac084569
type: Feature_Request
status: Fixed
severity: Minor
foundin: 05b152aedf
private_contact: 63070188043a9522ca95dca0d28c3b9eff7a697b
resolution: Fixed
title: fossil artifact needs checkout
comment:
  It is useful for debugging if artifacts can be obtained directly from a fossil repository without having to create a checkout. Aka support "fossil artifact -R".

  <hr /><i>drh added on 2010-10-25 20:12:18:</i><br />
  That would be the "<tt>fossil artifact</tt>" command.

  <hr /><i>anonymous added on 2010-10-26 15:42:22:</i><br />
  <verbatim>
  % fossil help artifact
  Usage: fossil artifact ARTIFACT-ID  ?OUTPUT-FILENAME?
  </verbatim>

  There is no way to specify a repository to extract the artifact directly without having to open it first.

  On the same line:

  <verbatim>
  % fossil help test-parse-manifest
  Usage: fossil test-parse-manifest FILENAME ?N?
  </verbatim>

  There is absolutely no reason why it needs a repository at all. Not helpful when debugging why a rebuild failed.


tkt_uuid: d3e3b02515cfef5995f079e208b1b2a379672fb9
type: Feature_Request
status: Open
severity: Minor
private_contact: 0104dabff6057f27042b765f556ea05cb3727a5c
resolution: Open
title: verbatim message in timeline
comment:
  It would be nice to have the ability to show commit message with original formatting in the timeline. Exemple, to keep newline, tabulation and space. (like displaying it on in verbatim). 

  Right now, all commit messages are shown in a single line and it make it hard to read when there's a lot of long commit message.

  Thanks

  <hr /><i>BM claiming to be Benoit added on 2011-01-14 13:32:34 UTC:</i><br />
  In “Admin/Timeline” you can configure to allow block-markup.

  In this way you can use the wiki markup (with some html tags including <tt>&lt;tt&gt;</tt>) and lists.

    *  item 1
    *  item 2

  <hr /><i>anonymous added on 2011-01-14 18:08:13 UTC:</i><br />
  What's about if I've just convert a huge git repository into fossil, and all the commit log was done in text with tabulation, spaces and new line that make it look reasonable in verbatim mode. A wiki or html tag would not help in that case.

  Also, an option to display comment in a verbatim way would make it look ok when using the "fossil timeline" CLI command.


tkt_uuid: d457feb387741bcb1b7cebfb206f9b19f377140b
type: Code_Defect
status: Closed
severity: Minor
foundin: 37f295c310
private_contact: 8275a2af5f6b03bc415b69b61fd8aecfb0c0dfb4
resolution: Works_As_Designed
title: Empty repository reports strange compression ratio
comment:
  <strong>Steps to reproduce:</strong>

    1  Create a new, empty fossil repository
    2  Invoke fossil ui for the repository
    3  Navigate to the stats page

  <strong>Expected behavior:</strong>

  Compression ratio is 1:1 (1 artifact stored as full text) or perhaps blank.

  <strong>Actual behavior:</strong>

  Compression ratio is reported as 0:10, which doesn't make sense.

  <hr /><i>lrem added on 2011-09-13 15:03:29 UTC:</i><br />
  The ratio is always described as x:10, what makes it quite nicely readable. Then, if there are no artifacts, x is undefined. Displaying it as 0 is as good as 10 or whatever else, but looks nicer (suggests, that the value does not have much sense).


tkt_uuid: d5b429766a126c7765638629b87c4c694b2b0ba8
type: Incident
status: Closed
severity: Important
foundin: N/A
private_contact: ecf341e75e316de681ef834dfdb7946a47144093
resolution: Duplicate
title: Cannot access email list archive
comment:
  I am unable to access the email archive (URL is http://lists.fossil-scm.org:8080/pipermail/fossil-users/ ) from the list page.

  Error message is

  The requested URL /pipermail/fossil-users/ was not found on this server.

  <hr><i>anonymous added on 2009-08-06 12:58:31:</i><br>
  Duplicate of [3cda72fa7cbadb392e2442b435cdd4022d49a844] and perhaps other
  tickets as well.  This is a problem with the mailing list manager software,
  mailman.  We have had multiple experts look into the problem, but so far
  nobody has been able to come up with a solution.  


tkt_uuid: d60f7f7109d21c99c2e4a2919287268b1b459d09
type: Feature_Request
status: Closed
severity: Minor
foundin: 3d62a9fb39
private_contact: a7ec239b1a3401c4229e18dead1ea4225e287fb9
resolution: Not_A_Bug
title: Provision to supply user name
comment:
  I have tested fossil on Win32 and it takes my Windows user name as fossil user name, which is not correct as:
  1. I have different user names on my office laptop vs. home PC.
  2. I cannot have Altu Faltu as my windows user name.

  Ideally, provision should be there to provide one username per repository.

  With current situation, I can have three names:
  1. My windows user name that is used by fossil automatically.
  2. My fossil-scm,org user name.
  3. The user name I give when generating GPG keys.

  Is there any relation between them?

  (I could not login as altufaltu today, not sure if it is my browser or website)

  - Altu

  <hr><i>drh added on 2008-10-26 16:05:29:</i><br>
  I believe you can set the default user like this:

  <blockquote>
  <b>fossil user default</b> <i>user-id</i>
  </blockquote>

  The default user set as above overrides any USER environment variable setting.
  You an also set the user for individual commands using the -U or --user command
  line switch.  For example:

  <blockquote>
  <b>fossil commit --user drh</b>
  </blockquote>

  The -U or --user switch overrides the user set by the "user default" command
  and the "user default" command overrides the USER environment variable.


tkt_uuid: d6132e4d66a7c994f950e020a4945c7fb85b5a7b
type: Code_Defect
status: Fixed
severity: Minor
foundin: afc4bf41fa
private_contact: 05f652db744266759b20d248ec2f451629420388
resolution: Fixed
title: Possibly incorrect column index for isexe in stash_add_file_or_dir
comment:
  If I read the code correctly, in stash.c we have the following SQL statement on line 65:

  <pre>
    blob_appendf(&sql,
      "SELECT deleted, isexe, mrid, pathname, coalesce(origname,pathname)"
      "  FROM vfile"
      " WHERE vid=%d AND (chnged OR deleted OR origname NOT NULL OR mrid==0)",
      vid
    );
  </pre>

  "isexe" is at column 1. But then on lines 97-99:

  <pre>
  #ifdef _WIN32
      db_bind_int(&ins, ":isexe", db_column_int(&q, 2));
  #endif
  </pre>

  So it will not preserve isexe bit on Windows, but instead use mrid for it.

  Shouldn't it be like this instead: <code>db_column_int(&q, 1)</code>?


tkt_uuid: d642c3621a9735a5ad4c583e72d496b091e8f481
type: Documentation
status: Open
severity: Critical
title: Improve and update documentation
comment:
  Hi Fossil Developers,

  First of all I would like to thank you for FOSSIL, I think it is a great version control system (even though I am relatively new to version controlling).

  I am using Fossil for 2 months now, although I appreciate the underlying concepts, I think that the documentation is lacking. I need to do a lot of guess work and I believe this is penalizing Fossil. The documentation is, to my mind, a crucial and integral part of any software project. 

  For example the page  http://www.fossil-scm.org/index.html/doc/tip/www/reference.wiki is not very useful in its current stage: some commands are not explained, the ones that are explained are ambiguous (what's a VERSION?: I do not want to guess), it is not updated (I believe some commands have changed in between)...

  Some problems that I have run into:
  *The UPDATE command documentation is not clear (hopefully http://www.sqlite.org/privatebranch.html exists),
  *Nowhere it is explained that to close a leaf you need to do in the GUI. I was thinking that I can add a "closed" tag with the TAG command,
  *I have some files that I use only for testing, how can I ignore them when merging...

  Thanks in advance for your time.


tkt_uuid: d67855ccebb6bad30b4f7f2dbdfaa092fd191566
type: Code_Defect
status: Closed
severity: Important
resolution: Unable_To_Reproduce
title: css files served as application/x-fossil-artifact not text/css
comment:
  When html files are used as embeded documentation, the css files which they use are severed as application/x-fossil-artifact not text/css.

  The result of this is that they are rejected, (by firefox at least)

  An example error from firefox is:

  Error: The stylesheet http://fossil/creolejs/doc/tip/docs/Creole1.0/wiki.css was not loaded because its MIME type, "application/x-fossil-artifact", is not "text/css".

  <hr><i>eric added on 2009-03-15 13:36:08:</i><br>
  I can't reproduce this (fossil version [daacc139a5] on Linux), what version of fossil are you using?

  <hr><i>drh added on 2009-03-21 16:35:20:</i><br>
  I cannot reproduce this either.  Let's assume it has already been fixed
  by check-in [7303bfeb129c55fe9ad55a48050f6b4c7bd8ab9f]


tkt_uuid: d6bb26f436d8299f95d63f45fa51c92acdc91c5a
type: Documentation
status: Fixed
severity: Minor
foundin: [bdcac62937] 2009-01-21 03:34:37
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Fixed
title: Leaf menu in Nomenclaturebox is missing "Merged Leaf" description
comment:
  http://localhost:8080/leaves

  Leaf menu in Nomenclature box is missing "Merged Leaf" description.

  <hr><i>drh added on 2009-01-21 19:05:02:</i><br>
  The "Merged" and "Leaf" are really two separate keywords.  But
  recognizing that this can be confusing, the Merged part is
  now suppressed for the "leaves" page.
  Check-in [2fa4df1e47f17f1c10a79d024a817f13a7d0bf6f].


tkt_uuid: d6d9ee682eac7708b0a7aa31febc8ad47e4923b1
type: Code_Defect
status: Fixed
severity: Severe
foundin: 6bcff72d23
private_contact: 02d14714de84a7dab506bb77b9dd95e78f1c1491
resolution: Fixed
title: Can't edit wiki pages
comment:
  Just downloaded latest precompiled binary for win32 (6bcff72d23) and unfortunately I cannot edit any of my wiki pages.

  <hr><i>drh added on 2008-12-03 14:11:11:</i><br>
  Fixed by check-in [426a3ba49ebb066c192e29e62b07a65854e840c7]


tkt_uuid: d7169e51ebb3400f6fa54901c432f3a4eb86a8f3
type: Code_Defect
status: Fixed
severity: Severe
foundin: 400a07e4a5
private_contact: 84f59114b7eee7088fd7e2932599c69c9ad0761b
resolution: Fixed
title: vfile_scan.c closing unopened directory
comment:
  src/vfile_scan.c is using closedir(3) on an uninitialized value when an opendir(3) fails.

  <hr /><i>anonymous claiming to be sean added on 2011-02-16 19:01:50 UTC:</i><br />
  Please disregard the patch src-vfile.c.patch and use the src-opendir.patch. This should fix the problem when a user attempts to opendir(3) a directory that they don't have permission to examine.

  <verbatim>% cd /tmp/
  % mkdir fs-test
  % cd fs-test/
  % fs open ~/src/.fossils/
  % fs open ~/src/.fossils/fossil-test-repository 
  test.sh
  project-name: <unnamed>
  repository:   /Users/sean/src/.fossils/fossil-test-repository
  local-root:   /private/tmp/fs-test/
  project-code: 70164ac6b1269749f782f3dfce03f9cae7fc0c64
  server-code:  4d7de95913a31ac17b29e29e96794b42d2575025
  checkout:     25317d0b17378032e0120a58e3bb2d8c0b9fd99d 2011-02-08 22:17:00 UTC
  parent:       ef432a9584e7771b7ac82ba058ecff84f744deb1 2011-02-08 16:31:20 UTC
  tags:         trunk
  comment:      Updating test (user: sean)
  % ll
  total 24
  -rw-r--r--  1 sean  wheel  7168 Feb 16 10:58 _FOSSIL_
  -rwxr-xr-x  1 sean  wheel    29 Feb 16 10:58 test.sh
  % mkdir enoperm
  % sudo chmod 700 enoperm
  Password:
  % sudo chown root:wheel enoperm
  % sudo touch enoperm/...
  % fs stat
  repository:   /Users/sean/src/.fossils/fossil-test-repository
  local-root:   /private/tmp/fs-test/
  server-code:  4d7de95913a31ac17b29e29e96794b42d2575025
  checkout:     25317d0b17378032e0120a58e3bb2d8c0b9fd99d 2011-02-08 22:17:00 UTC
  parent:       ef432a9584e7771b7ac82ba058ecff84f744deb1 2011-02-08 16:31:20 UTC
  tags:         trunk
  comment:      Updating test (user: sean)
  % fs extra
  Segmentation fault
  Exit 139
  # test after patch
  % ~/src/fossil/fossil stat
  repository:   /Users/sean/src/.fossils/fossil-test-repository
  local-root:   /private/tmp/fs-test/
  server-code:  4d7de95913a31ac17b29e29e96794b42d2575025
  checkout:     25317d0b17378032e0120a58e3bb2d8c0b9fd99d 2011-02-08 22:17:00 UTC
  parent:       ef432a9584e7771b7ac82ba058ecff84f744deb1 2011-02-08 16:31:20 UTC
  tags:         trunk
  comment:      Updating test (user: sean)
  % ~/src/fossil/fossil extra
  % 
  </verbatim>

  Thanks. -sc


tkt_uuid: d7866519465af9a74718fc42c44e6b31fbd8a879
type: Code_Defect
status: Closed
severity: Cosmetic
foundin: 4f78571eb2
private_contact: 84f59114b7eee7088fd7e2932599c69c9ad0761b
resolution: Works_As_Designed
title: wiki doesn't parse finfo links correctly
comment:
  If you try and create a wiki link to an finfo resource, you'll end up with an escaped URL.

  <verbatim>[finfo?name=some/path/foo.txt|some/path/foo.txt]</verbatim>

  will yield:

  <verbatim>/wiki?name=finfo%3Fname%3Dsome/path/foo.txt</verbatim>

  <hr /><i>drh added on 2011-02-24 16:53:23 UTC:</i><br />
  Put a "/" before the web method:

  <verbatim>
    [/finfo?name=some/path/foo.txt|whatever]
  </verbatim>


tkt_uuid: d798ba2e7927bb61afb1e81beb948a0052aee89f
type: Feature_Request
status: Open
severity: Minor
private_contact: 94f9aa215751acf313126f46b3eb62c38af4c9c7
resolution: Open
title: Hooks request
comment:
  Hello. Can fossil have a hook-mechanism such as hook's in subversion in a future ?

  <hr><i>drh added on 2009-07-07 14:28:24:</i><br>
  Can you be more specific about what you are looking for and what you are
  trying to accomplish?  Perhaps describe the problem you are trying to solve
  and suggest one or more potential solutions.

  <hr><i>anonymous claiming to be bch added on 2009-07-07 21:41:52:</i><br>
  I wonder if the reference is to this: [http://svnbook.red-bean.com/en/1.0/svn-book.html#svn-ch-5-sect-2.1]

  <hr /><i>anonymous added on 2010-11-19 11:21:59:</i><br />
  I would like, for example, some way to notify people by email on changes to tickets or things like that.
  Or maybe there is something like RSS?

  I don't know any other way of being up to date with tickets than to poll manually the tickets web and look for changes.

  <hr /><i>anonymous claiming to be Arnel added on 2010-11-19 15:13:30:</i><br />
  If you need RSS, try opening the <a href="http://www.fossil-scm.org/index.html/timeline">timeline view</a> for Fossil in Firefox. You should see an RSS icon on FF's address bar which points to this URL:

  http://www.fossil-scm.org/index.html/timeline.rss

  <hr /><i>dmitry added on 2011-09-08 22:06:19 UTC:</i><br />
  See also ticket [77de516a1f].


tkt_uuid: d7c0de3c2b7c64710ec6b6cb7f6de9f3b025f5f6
type: Feature_Request
status: Closed
severity: Important
private_contact: 79ddb4c67648188fc0f484eedd013e2ae329aab2
resolution: Overcome_By_Events
title: add support of ssh:// protocol
comment:
  You may borrow an implementation from, say, Mercurial or Subversion. For me it looks easy.

  <hr /><i>anonymous claiming to be Joerg Sonnenberger added on 2010-12-24 23:45:04:</i><br />
  The ssh protocol has been implemented.


tkt_uuid: d7f66dfbd063afb162c15470f1777951e2498367
type: Feature_Request
status: Open
severity: Minor
private_contact: 9653680971c1b5932e49cabcc6034303c21ee9d8
resolution: Open
title: Support Syntax highlighting as described in Cookbook
comment:
  I described a way to support syntax highlighting on the Cookbook wiki page. In fact there are to possible ways to do it:
  <ol>
  <li> use a Javascript library</li>
  <li> pipe the content through a filter before sending it to the browser</li>
  </ol>
  <p>
  1. This requires only little effort for fossil. The syntax highlighting requires only special attributes in the &lt;pre&gt; tag. For this to work a table with assignments of file extensions to file types could be included into fossil so the assignment would be configurable.
  If the syntax highlighting is wished by the user she can easily add it herself. One drawback is that the google Syntax Highlighter does not support many languages. However this could be added.
  <p></p>
  2. Piping the contents of a file through a filter has the advantage that not only syntax highlighting could be done this way but also other things like indenting or some other prepocessing. But maybe it would be necessary to pass arguments to the filter based on file types. As such a table similar as described in 1. would be needed to make this configurable.
  </p>

  <hr><i>anonymous claiming to be Thomas. added on 2010-08-16 10:42:17:</i><br>
  Has there been any progress on this ticket? 

  I was looking into this topic today and found another JS syntax highlighter: http://alexgorbatchev.com/SyntaxHighlighter/ 

  It is MIT and GPL licensed, so I guess it can be included. 


  <hr /><i>anonymous added on 2011-05-16 14:33:52 UTC:</i><br />
  Why not analog to the diff command a setting for a syntax highlighter?


tkt_uuid: d83227cdda3d786d3743b2ce6782fe9fd0a38998
type: Code_Defect
status: Fixed
severity: Minor
foundin: e3fb8dc36cf9354c
private_contact: de256b1a144847458f288405ac2e44eeec974ca7
resolution: Fixed
title: Can not handle HTTPS tag of http header
comment:
  When the site is set to HTTP with SSL, the http server (nginx in my case) will add a HTTPS: on tag into the request header. Fossil should identity it and use https schema for all the generated links.


tkt_uuid: d8822cf402a7ea78511cbf23b3ed30805b000084
type: Code_Defect
status: Open
severity: Minor
foundin: 63ac111d5b
private_contact: ab5c04693d4ea3b3339a1e41947ceb8da8054625
title: global browser setting is ignored when not in open checkout
comment:
  'fossil ui' uses the global setting for web browser when in an open checkout, but not if the repository is specified on the command line.  In the latter case it always uses the built-in default of firefox.


tkt_uuid: d9040c134bf41bdaa6344073a4d9368cf90f92c9
type: Code_Defect
status: Fixed
severity: Minor
private_contact: ed685438f367f4147cdb8507d634250f1fbc14d6
resolution: Fixed
title: Export wiki pages in Windows
comment:
  When export wiki pages to file in Windows symbols "\r\n" replaces on "\r\r\n".
  Perhaps need open file for export in "wb" mode, not "w" ?


tkt_uuid: d94b0934861d970a5a0868a9c0962befab60c98d
type: Feature_Request
status: Fixed
severity: Minor
foundin: 1.18
private_contact: 05f652db744266759b20d248ec2f451629420388
resolution: Fixed
title: Show events for edited user field in user's timeline
comment:
  Currently timeline with u=<i>username</i> argument doesn't show events for which "edited user" has been set to the requested <i>username</i>.

  <h3>Example:</h3>

  I mistakenly commited [c57830bec2] under username "dchest", while my real username here is "dmitry". I then edited username for this commit, it now shows:

  <b>Edited user:</b> dmitry<br>
  <b>Original user:</b> dchest

  However, timeline for "dmitry" doesn't show this commit:

  [http://www.fossil-scm.org/index.html/timeline?u=dmitry]

  It's correctly listed under "dchest", though:

  [http://www.fossil-scm.org/index.html/timeline?u=dchest]

  I propose listing such events in timelines for both original and edited users:

  <verbatim>

  --- src/timeline.c
  +++ src/timeline.c
  @@ -1081,11 +1081,11 @@
         }else if( zType[0]=='e' ){
           zEType = "event";
         }
       }
       if( zUser ){
  -      blob_appendf(&sql, " AND event.user=%Q", zUser);
  +      blob_appendf(&sql, " AND (event.user=%Q OR event.euser=%Q)", zUser, zUser);
         url_add_parameter(&url, "u", zUser);
         zThisUser = zUser;
       }
       if ( zSearch ){
         blob_appendf(&sql,
  </verbatim>

  <hr /><i>martin.weber added on 2011-08-23 01:36:42 UTC:</i><br />
  same happened to me; drh suggested the same change (for a test run locally, which I haven't done yet). I'm also augmenting checkin.wiki right now to remind people of fossil user default / the localauth setting.

  <hr /><i>dmitry added on 2011-08-23 01:36:52 UTC:</i><br />
  Found out that this is a duplicate of ticket [fca5ce18c07c29].


tkt_uuid: d9d1320e7bd397920726434eab1411908d88d50c
type: Feature_Request
status: Open
severity: Minor
foundin: [7bb3db9b64]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Open
title: Add a new checkin identifier: pivot:checkin1:checkin2
comment:
  When I want to see the differences between a branch and its parent, I find myself often preparing one directory at the branch leaf, and the other at the pivot with the parent:
  <verbatim>
  cd mybranch; fossil update mybranch; cd ..
  cd pivot; fossil test-find-pivot mybranch parentbranch; fossil update XXXXX
  meld mybranch pivot  # a program to show the differences between trees
  </verbatim>

  I'd like to be able to run:
  <verbatim>
  fossil update pivot:mybranch:parentbranch
  </verbatim>

  <hr /><i>anonymous claiming to be viric added on 2011-02-11 12:21:30 UTC:</i><br />
  Maybe it is not the best place to write this, but I'd also find comfortable "fossil update parent" working.


tkt_uuid: d9d3fd902a65e764c183b27f34d71cbdce03ade2
type: Code_Defect
status: Open
severity: Minor
foundin: [6f42e76d80]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
title: The New Event page expects the time in UTC
comment:
  Although users may have chosen in the Admin page to have time in the local timezone, the New Event page always asks the time to be set in UTC.


tkt_uuid: da3e0fb4b9241b55073a73d7b0cff5ad511e7835
type: Code_Defect
status: Fixed
severity: Important
foundin: 8f41b2fa75 onwards
private_contact: 7d42fc55d7da05139a841a32bcc23997f91bbdbb
resolution: Fixed
title: "out of memory" error via apache cgi-bin.
comment:
  After downloading recent src and updating my fossil executable, I am no longer able to use via cgi-bin.  I get an 'out of memory' error. All actions appear to work fine at a server level using fossil command line.

  I have managed to traced this to the changes made in 8f41b2fa75 (15-Oct-2010) where fossil-malloc() was introduced, and more specifically, the change to the  xMalloc function in th_main.c.
  If this is reverted back to simply use malloc() the problem goes away and the cgi access works as expected.

  I am using Apache/1.3.33 (Unix) on AIX 5.2.0.0

  <hr /><i>anonymous added on 2011-05-16 08:34:36 UTC:</i><br />
  The changes to fossil_malloc in [6b382b0818] fixed this.


tkt_uuid: da3fef0b21c37d7e4aa611ec08076fe8af2eee35
type: Code_Defect
status: Fixed
severity: Minor
foundin: 2011-05-12 14:56:52 d8221b98636b76cfd99cb6ccce0e24f5baaafe51
resolution: Fixed
title: Bug in http.c: missing \r for Proxy-Authorization header
comment:
  Easiest to show the bug by just showing the patch:

  <nowiki><pre>
  --- src/http.c
  +++ src/http.c
  @@ -100,11 +100,11 @@
     }else{
       zSep = "/";
     }
     blob_appendf(pHdr, "POST %s%sxfer/xfer HTTP/1.0\r\n", g.urlPath, zSep);
     if( g.urlProxyAuth ){
  -    blob_appendf(pHdr, "Proxy-Authorization: %s\n", g.urlProxyAuth);
  +    blob_appendf(pHdr, "Proxy-Authorization: %s\r\n", g.urlProxyAuth);
     }
     if( g.urlPasswd && g.urlUser && g.urlPasswd[0]=='#' ){
       char *zCredentials = mprintf("%s:%s", g.urlUser, &g.urlPasswd[1]);
       char *zEncoded = encode64(zCredentials, -1);
       blob_appendf(pHdr, "Authorization: Basic %s\r\n", zEncoded);
  </pre></nowiki>

  All HTTP headers should be terminated by a CRLF combination, not just an LF.  Without the proper termination, some servers may reject the header.


tkt_uuid: db4ce49690ba13eedda7221cf3bebbef29787158
type: Code_Defect
status: Closed
severity: Important
foundin: 20100124175507
private_contact: 37559fb36f80834f47d7028cbceb13084c143a41
resolution: Works_As_Designed
title: Files with attributes not overwritten
comment:
  If a file added to a repository has any attributes (hidden, read-only, system), it will commit without error, but if the file exists when a check-out occurs it cannot be overwritten.

  Fossil displays:
  <pre>
  fossil: unable to open file "C:/Users/Doug/fossil/hidden_file.txt" for writing
  </pre>
  The file cannot be removed from the repository until a full check-out has occurred, so the file has to be manually removed from the file system first.

  This happens whether fossil is run as an administrator or not.

  Script:
  <pre>
  echo "test data" > hidden_file.txt
  attrib +h hidden_file.txt
  fossil new hidden-file-test.fossil
  fossil open hidden-file-test.fossil
  fossil add hidden_file.txt
  fossil setting clearsign 0
  fossil commit -m "Add hidden file"
  fossil close
  fossil open hidden-file-test.fossil
  fossil rm hidden_file.txt
  fossil commit -m "rm test"
  fossil close
  </pre>

  <hr><i>rwilson added on 2010-01-29 01:43:09:</i><br>
  i think this works as designed; fossil does not preserve file attributes (by design) and the operating system doesn't allow fossil to overwrite hidden files - not fossil's fault.  perhaps the design could improve by adding some features to ignore certain file types or attributes on fossil add, but that is another topic.


tkt_uuid: dba59ec54423f192ba91fd226bfeab7323b57329
type: Code_Defect
status: Fixed
severity: Important
foundin: 61ca4141cc
private_contact: 77d1fb9b8673fda6e5de8f02a6ad22d96857b3e1
resolution: Fixed
title: Cannot commit with --date-override
comment:
  <verbatim>
  cat > test.sh <<EOF
  #!/bin/sh
  rm -f test.repo
  rm -rf test; mkdir test; cd test
  fossil new --date-override "1980-01-01T00:00:00+0" ../test.repo
  fossil open ../test.repo
  :> test; fossil add test
  fossil ci --date-override "1980-01-01T00:00:00+0" -m "Check in test file."
  fossil version
  EOF
  </verbatim>

  "sh test.sh" output follows:

  <verbatim>
  project-id: 06dc47045026a113d202f6ebf85807a699ef5ca1
  server-id:  8e1bc7871007ca8338c67b15012ca24229ac7bea
  admin-user: asau (initial password is "36c4b4")
  ADDED  test
  New_Version: dfa15dfb77b49b84dd6cd95663bf5daee5413fec
  fossil: manifest file (3) is malformed
  This is fossil version [61ca4141cc] 2010-08-18 17:27:25 UTC
  </verbatim>

  <hr><i>drh added on 2010-08-19 11:47:51:</i><br>
  Fossil uses the SQLite date/time parsing routines and those routines
  do not recognize the +0 timezone suffix.  Fossil has now been updated to
  output an error when an unrecognized date is handed to --date-override.


tkt_uuid: dbf79085170a1f45417ac2c06d924b48a48505ff
type: Feature_Request
status: Open
severity: Important
foundin: [5308e46815]
private_contact: a7ec239b1a3401c4229e18dead1ea4225e287fb9
resolution: Open
title: Issues with logging-in
comment:
  The login mechanism used by fossil uses remote IP, which can change very often based on http proxy service provider.

  From may work place, I see that I'm logged in for many pages and I'm always logged out for other. This is very consistent and such behavior is seen only with fossil.

  This mechanism needs correction.

  - Altu

  <hr><i>drh added on 2009-10-31 13:30:11:</i><br>
  For security reasons, I want to continue to associate login credentials
  with a particular IP address.  I have moved this ticket from "code defect"
  to "feature request".


tkt_uuid: dc2b25030313be6d640f886e36e9f9340b459f56
type: Code_Defect
status: Fixed
resolution: Fixed
title: Maybe error in last ci
comment:
  In [93827b8450af7af33d] in file name.c new func 'date_to_uuid' has been appeared. Is it right zCopy var is freed twice?

  <hr><i>anonymous claiming to be Gé Weijers added on 2010-02-06 11:56:25:</i><br>
  It certainly looks that way. free(zCopy) is called twice, outside of any conditionals.

  <hr><i>drh added on 2010-02-06 12:16:08:</i><br>
  Check-in [01a769a9fa265971f5a9c09cb16a1211bb3dee33]


tkt_uuid: dc8bde6ed8784540fb0ea7d69e45585e8c8d8741
type: Feature_Request
status: Open
severity: Cosmetic
private_contact: ebbf214358fed060592f40f5d3be2e893cd6407e
resolution: Open
title: Styling: Remove br elements from HTML
comment:
  The web UI has br-elements in many places, presumably to make divs stretch properly like this:

  <br clear="both"/>

  BR is difficult to style without CSS hacks. To make it easier to crete skins it is better to use CSS to make sure clears work properly instead.


tkt_uuid: dcd241ab527801bbcff91656ba79056fc537c10e
type: Code_Defect
status: Open
foundin: [047e06193b] 2011-04-13
title: 'fossil update' forgets about removed files in the checkout
comment:
  I had removed a file. Then issued a "fossil update", and the file was not in the list of files to be deleted on commit anymore.

  I've had a session like this:
  <verbatim>
  $ fossil rm MERGE.txt 
  DELETED  MERGE.txt
  $ fossil commit
  ...
  fossil: would fork.  "update" first or use -f or --force.
  $ fossil update
  ...
  $ fossil commit
  fossil: nothing has changed
  </verbatim>

  So I have to issue the <kbd>fossil rm MERGE.txt</kbd> again. The MERGE.txt file has not been touched in any commit other than this I planned to do.


tkt_uuid: dd5bb1fc73ec6ee821736c40851b0e6a7c7f049f
type: Code_Defect
status: Fixed
severity: Severe
foundin: 2011-04-13 12:05:18 (047e06193b65c535d845d10f6e64d8c467ef7524)
resolution: Fixed
title: Checking auto-sync instead of auto-shun
comment:
  In src/sync.c in the process_sync_args function, the following code:

    <tt>if( db_get_boolean("auto-sync",1) ) configSync = CONFIGSET_SHUN;</tt>

  should be testing "auto-shun" instead like so:

    <tt>if( db_get_boolean("auto-shun",1) ) configSync = CONFIGSET_SHUN;</tt>


tkt_uuid: ddd45723b9a214e2d32251e11dd1db5a714b2198
type: Code_Defect
status: Fixed
severity: Cosmetic
resolution: Fixed
title: About a half of check-in link on timeline is not clickable
comment:
  It may be due to canvas div

  <hr><i>anonymous added on 2010-02-16 10:27:49:</i><br>
  windows
  ff 3.5.7, opera 10.0
  but in ie 8.0 it's OK

  <hr><i>anonymous claiming to be anonymous pretending to be Darren Turland added on 2010-02-23 12:30:00:</i><br>
  The following patch will size the canvas div to the correct width.
  Tested on ff 3.5.7, and ie8

  <nowiki><pre>
  --- src/timeline.c
  +++ src/timeline.c
  @@ -502,19 +502,19 @@
       @   while( canvasDiv.hasChildNodes() ){
       @     canvasDiv.removeChild(canvasDiv.firstChild);
       @   }
       @   var canvasY = absoluteY("canvas");
       @   var left = absoluteX(rowinfo[0].id) - absoluteX("canvas") + 15;
  -    @   var width = left + nrail*20 + 20;
  +    @   var width = nrail*20;
       @   for(var i in rowinfo){
       @     rowinfo[i].y = absoluteY(rowinfo[i].id) + 10 - canvasY;
       @     rowinfo[i].x = left + rowinfo[i].r*20;
       @   }
       @   var btm = rowinfo[rowinfo.length-1].y + 20;
       @   canvasDiv.innerHTML = '<canvas id="timeline-canvas" '+
       @      'style="position:absolute;left:'+(left-5)+'px;"' +
  -    @      ' width="'+(width-left+26)+'" height="'+btm+'"></canvas>';
  +    @      ' width="'+width+'" height="'+btm+'"></canvas>';
       @   realCanvas = document.getElementById('timeline-canvas');
       @   var context;
       @   if( realCanvas && realCanvas.getContext
       @        && (context = realCanvas.getContext('2d'))) {
       @     drawBox = function(color,x0,y0,x1,y1) {
  </pre></nowiki>


tkt_uuid: de31897d11e277d0b581f3c65b0c7fee736f4edf
type: Code_Defect
status: Closed
foundin: c4c231069e
private_contact: 75ccf14dca62728f6b2e151da4674a92b78e0e94
resolution: Duplicate
title: Build problems on OpenBSD
comment:
  Culprit is line 51 in Makefile

  #### Include a configuration file that can override any one of these settings.
  #
  <br>
  -include config.mak

  which leads to

  "Makefile", line 51: Need an operator
  <br>
  Fatal errors encountered -- cannot continue

  Workaround: deleting that line

  <hr><i>jeremy_c added on 2010-01-29 23:43:50:</i><br>
  Duplicate of [2d2b158d75].


tkt_uuid: de35b174255cd2a8a6e52a7879f4912680fa019b
type: Code_Defect
status: Open
severity: Minor
foundin: [761a6a9dcf]
private_contact: 40aba61d32222f9df09cded35d532d494b2dec55
title: defect in command line parser: -- is not a valid comment
comment:
  Calling 

  fossil commit --comment --

  doesn't work. Fossil throws an error complaing on wrong option/missing argument: --comment


tkt_uuid: dfe1fc608af97639627e48c4d0714b60f427fe8c
type: Feature_Request
status: Fixed
severity: Minor
foundin: 0e1ca296db
private_contact: 7a46edbdd4ae23c7f1340663be03348341c2cb57
resolution: Fixed
title: Reconstruct command that went away
comment:
  During the GPL -> BSD conversion, the reconstruct command was removed due to licensing issues.

  While this command is not vital to fossil, it's useful for porting foreign scms to fossil.

  It would be nice to have it back.

  <hr><i>anonymous claiming to be linuxfood added on 2010-07-28 03:07:11:</i><br>
  The attached file reimplements the reconstruct command. It was done without any prior examination of the original command.

  <hr><i>bcsmith added on 2010-08-12 19:49:32:</i><br>
  Fixed in [3332895df8].


tkt_uuid: e02ffabcdaaaf606099ac09227833ba282fdaace
type: Feature_Request
status: Fixed
private_contact: c76260317d907e593238775e171317aff2baec12
resolution: Fixed
title: recursive add
comment:
  It would be very useful to have a way to recursively add all specified files/directories. suggest either a -R flag to add or a new command

  <hr><i>anonymous added on 2008-11-27 22:29:01:</i><br>
  I would like to see this feature implemented as well. Thanks.

  <hr><i>anonymous claiming to be Kees Nuyt added on 2008-11-27 23:16:51:</i><br>
  Just a remark: I prefer to use the unix command find for that purpose, with the advantage that the list to add can be easily reviewed by leaving out the "-exec fossil add {} \;" part in a test run. 

  But I know mileages vary.

  <hr><i>anonymous claiming to be kkinnell added on 2008-11-28 23:19:57:</i><br>
  This is essentially a duplication of Feature Request ticket 
  [./tktview?name=04a259be40 | 04a259be40].

  <hr><i>drh added on 2008-12-07 18:12:37:</i><br>
  See check-in [8c4e72e22320d3de04ffcd9fe63b63b98d946db8]

  <hr><i>anonymous added on 2008-12-09 05:25:49:</i><br>
  Thanks, recursive add adds files to repository nicely. 


tkt_uuid: e0352240adeafd4d4d8d297c2141dacf076507b7
type: Feature_Request
status: Open
severity: Important
foundin: 356e877cea
private_contact: 77d1fb9b8673fda6e5de8f02a6ad22d96857b3e1
resolution: Open
title: Support for importing vendor source
comment:
  When tracking third party software in Fossil, I want to have better support for checking external source in in full.

  Handling it manually is tiresome:
  <pre>
  fossil open ~/repo/project vendor --keep
  fossil add $(fossil extras --dotfiles)
  fossil rm $(fossil changes | awk '$1 == "MISSING" {print $2}'
  fossil ci -m "Import vendor version 6.6.6"
  </pre>
  The shell magic is error-prone, it works badly with files containing white space in names, it is good luck I haven't run into problems yet.

  I propose to create some "import" command that synchronizes inventory with file system.

  <hr /><i>anonymous added on 2010-10-13 13:26:02:</i><br />
  I support this. The import command should also add a non-propagating tag like CVS does to make it easier to keep that of what version was imported.

  <hr /><i>wolfgang added on 2010-10-13 19:44:04:</i><br />
  I have added an experimental IMPORT command to my branch wolfgangHelpCmd (checkin [b37d5f256e]).

  Maybe you take a look at it and/or test it in your environment.

  The command help is:

  <pre>
  Usage: fossil.exe import

  If used in a checkout, the current checkout file tree is synchronized
  with the repository:
   * all files, existing in the file tree but not in the repository
     (files displayed using the "extra" command)
     are added to the repository - see also "add"
   * all files, existing in the repository, not existing in the file tree
     (files displayed as MISSING using the "status" command)
     are removed from the repository - see also "rm"
  The command does not "commit"!

  This command can be used to track third party software.
  </pre>

  best regards
  Wolfgang

  <hr /><i>anonymous claiming to be Joerg Sonnenberger added on 2010-10-13 21:38:34:</i><br />
  Well, coming from the cvs model, effective 3rd party management includes:

  (1) A separate branch with the unmodified sources in a specific location.
  Ideally, the import command does a sanity check that the "vendor" branch doesn't contain anything else.

  (2) A symbol for each each imported version. Normally, this is the release version from upstream or the commit id or whatever. This should be a non-propagating tag.

  (3) A merge from the vendor branch to trunk. As fossil keeps track of the merge state, this is easier than with cvs, where it had to be simulated with cvs up -j old-tag -j new-tag.

  A really useful "fossil import" would therefore be:

      fossil import REPOSITORY PATH BRANCH TAG

  and not require a checkout of the proper branch. The merge part is easy enough to do with the normal merge processing and can be skipped.

  <hr /><i>anonymous added on 2010-10-14 07:54:40:</i><br />
  Separate branch is easy to create yourself, the problem is that you can't merge from it even to empty trunk:
  <pre>
  $ fossil merge vendor
  fossil: lack both primary and secondary files
  </pre>
  Perhaps this should be fixed too.

  A symbol for each version isn't needed, you have version identifiers already,
  and you can always tag what you want.


  <hr /><i>wolfgang added on 2010-10-14 10:20:26:</i><br />
  I think - like mentioned above - creating a branch and tag with proper vendaor tags can already be done using the standard fossil commands.

  The main problem, deescribed at the beginning was the sync of the checkout file tree and the files in the repository. This can be hanlded with the new commen.

  Would the merge work, if we use the cherrypicck option? I cannot test it now, but i'll try it later and i think, it will work.

  The only problem, we may have is the fact, that the import command needs to be called from an ceckout. The new command shares most of its code withalready exitant code for add/extras/rm and all these ccommands are only implemented, when called from an existing checkout. 
  It will be complex to extendd it to work with standalone checkouts, and i don't believe, that it's neccesary:

    *  First checkin:<br>fossil new x.fsl;mkdir x;cd x;fossil open ..\x.fsl<br>
       copy source tree to x<br>fossil import<br>fossil commit -m "..."<br>and
       set branches/tagss to whatever you want
    *  further checkins:<br>cd x;fossil update VENDORBRANCH<br>
       remove old data and copy new source tree<br>
       fossil import;fossil commit -m ".."

  Merging to main development branch should be possible by using cherrypick

  best regards

  Wolfgang

  <hr /><i>anonymous claiming to be Joerg Sonnenberger added on 2010-10-14 10:41:57:</i><br />
  Re tagging the import:

  I've had to deal with vendor imports that often enough lack any version number other than some RCS ids in the file. Importing files directly from the upstream version control system is a common task for larger projects. Sadly enough, having to identify what changed between different imports is also often enough required.

  Re main problem:

  I consider "import" a convenience command. The original set of commands can be simplified a lot by removing all files first with find . -type f -print0 | xargs -0 fossil rm, copying the new files and doing find . -type f -print0 | xargs -0 fossil add. That's safe for spaces in names etc. Having to switch to the vendor branch requires either creating another checkout and copying files or switching from a large checkout to a minimal one. The latter isn't a lot of fun if you have a working copy size of > 100MB and uncommitted changes.

  Not having to move the vendor branch has another very property, it reduces the chance of accidentally messing it up.

  Re fossil merge failure:

  This looks like a bug. Merging to the initial empty version should certainly be allowed as special case. It works fine if any commit was done on trunk first.

  <hr /><i>wolfgang added on 2010-10-14 13:30:13:</i><br />
  Following my proposol, you could see any changes between different imports. Though we add/remove only some of the file, the commit will also track the differences between changed files. Creating a vendor branch on the first import and using a tag like VENDOR_1 and using new tags on this branch for following import (like VENDOR_2). All changes (new/rm and change) can be seen using "fossil diff --from VENDOR_1 --to VENDOR_2". As long, as we use the vendor branch only for the checkin's, we can also see them in the gui.

  The import command is useful on OS != *nix. On windows, scripting these commands is a little bit tricky. Because add/extras can work recursiv, i think it's a good extension, to offer the mixed comman import.

  I would always use multiple checkouts, to handle venddor imports - on the vendor branch - and development - main trunk or development branch. 

  <hr /><i>anonymous added on 2010-10-14 14:03:04:</i><br />
  Merge bug filed separatly as 144180bf7db83724a9c647c60a411512cf605e50
  Test case provided.

  <hr /><i>anonymous claiming to be Joerg Sonnenberger added on 2010-10-14 14:11:54:</i><br />
  If you just want to synchronize the file list with the working copy, a better command would be to adopt Mercurial's addremove.

  I maintain that having to use a separate working copy for doing vendor imports is a PITA.

  <hr /><i>wolfgang added on 2010-10-14 18:36:16:</i><br />
  The new import program works like "mercurial addremove", so i think, i should rename the command.

  I've started a small test repository on chiselapp.com:
    *  [http://chiselapp.com/user/wst/repository/import-vendor-test]
    *  use user/password d/d to play with it.

  import/addremove and merging with cherrypick seems to work fine for me.

  But i can see some problems/weak points:
    *  importing a new delivery needs to remove unused file from the source tree.
       For big projects, this might only be done by deleting the complete tree
    *  if the development branch is messed up with temporary files, which are
       not under version control, it's difficult to remove them

  This could only be done, using a import directory outside of the checkout.

  Merging is OK for me.

  Conclusion:
    *  I'll rename import to addremove
    *  I'll analyse the code, how to do a add/remove from outside a repository.
       But this will be difficult, because i cannot use existing code. But i
       think, it will be easier to add an option --keep to update(like for open).
       So we could<br>
       1. create a new directory for the delivery<br>
       2. go to this directory and open a fossil connection with --keep<br>
       3. update this <i>checkout</i> to VENDOR without affecting the file using
          --keep<br>
       4. commit and tag the new checkin with VENDOR_n+1

  <hr /><i>anonymous claiming to be Joerg Sonnenberger added on 2010-10-14 18:56:30:</i><br />
  I think the addremove by itself is good enough and a win.

  I was thinking about the import in terms of creating the manifest mostly from scratch, just using the correct P card. I haven't looked (yet) how much work the commit code creates for that.

  <hr /><i>wolfgang added on 2010-10-14 19:49:43:</i><br />
  i've checked the command line help for open. We do have the opportnity to add a version to the open command.

  So doing fossil open VENDOR --keep creates just the needed synchronisation information into a new venddor delivery, to use addremove/commit/tag to do a proper import.

  So i think, addremove in its current form shouldd be good enough as first step.

  <hr /><i>anonymous added on 2010-10-25 08:20:01:</i><br />
  Can we have "addremove" changes on trunk? In tarball snapshot?

  <hr /><i>anonymous added on 2011-02-04 21:55:32 UTC:</i><br />
  Browsing through the list of tickets and it looks like this ticket can be closed.  It doesn't look like the vendor tag code is complete, however.  *shrug*

  % fossil help | tail -1
  This is fossil version [356e877cea] 2011-01-13 19:55:28.947 UTC

  % fossil help addremove | head -1
  Usage: fossil addremove ?--dotfiles? ?--ignore GLOBPATTERN? ?--test?


tkt_uuid: e0ef6390ff5992f109a0cc4e568c1363bffb3835
type: Code_Defect
status: Open
severity: Minor
title: Bug in blob_seek
comment:
  The blob_seek function has the following

  <pre>
  if( p->iCursor<0 ){
      p->iCursor = 0;
    }
  </pre>

  But iCursor is an unsigned integer and will never go bellow 0, therefore this code does nothing. If iCursor is decremented past 0 it will go to a very high number.

  I guess I'm being pedantic, but if you took the trouble to write the code I suppose you must have thought it important to guard against this.


tkt_uuid: e0f68fcf2195aa080eaee150d668b88b98ccded7
type: Feature_Request
status: Open
severity: Minor
private_contact: f7a8d3a6a73c86bb80df4faa8f5414307e6a1b68
resolution: Open
title: Merge directive (i.e. patch with history)
comment:
  Fossil makes it really easy to clone repos. It would be great if one could make "drive-by" contributions to an open source project by passing back fixes made in a cloned repos back to the developers without requesting write access for the repository. 

  Bazaar has a cool feature called "Merge directive" that packages all changes relative to the partent branch:
  http://doc.bazaar.canonical.com/bzr.2.2/en/user-guide/sending_changes.html

  It would be cool if Fossil supported this feature as well

  <hr /><i>dmitry added on 2011-01-26 11:35:36 UTC:</i><br />
  I think the DVCS way to do this is:

    #  Clone original repository.
    #  Make your changes.
    #  Send pull request, as in: "Hey, I've got this fixed, pull from https://url"

  <hr /><i>anonymous added on 2011-01-26 13:25:21 UTC:</i><br />
  Right, that's the standard heavyweight way. Merge directive is a lightweight way of doing this. I think of is as series of commits represented as individual patches. The benefit over a single patch is that history is preserved. Maybe this feature isn't as important for Fossil. (I changed Severity of 'Minor').


tkt_uuid: e12f19063a8f5959c774004a849ce8facb025a01
type: Code_Defect
status: Closed
severity: Important
foundin: [0e1ca296db] with SSL support
private_contact: 70e8369b18c47ff40aebcb9bd5778b54d64203f6
resolution: Duplicate
title: fossil with SSL support does not support proxy
comment:
  <verbatim>
  $ fossil set proxy
  proxy                (local)  off

  $ fossil clone https://fossil-scm.org ssltest
                  Bytes      Cards  Artifacts     Deltas
  Send:              49          1          0          0
  t:\fossil-ssl\fossil.exe: server says: 400 Bad Request

  $ fossil clone https://fossil-scm.org ssltest --proxy off
                  Bytes      Cards  Artifacts     Deltas
  Send:              49          1          0          0
  Received:      350929       7628          0          0
  Send:           10025        225          0          0
  ...
  </verbatim>

  <hr><i>anonymous added on 2010-07-31 03:58:48:</i><br>
  Ignore previous post. I was in a local checkout and 'clone' will see only global settings.

  However, for https:// URLs, fossil does not use 'CONNECT' method of proxy.


  <hr /><i>dmitry added on 2011-09-08 23:09:16 UTC:</i><br />
  Duplicate with patch: [e854101c4f].


tkt_uuid: e189ed5da866f09186bf06f5963f4811b828e10e
type: Documentation
status: Closed
priority: Low
severity: Cosmetic
foundin: 94c60f3c7e
private_contact: f7a8d3a6a73c86bb80df4faa8f5414307e6a1b68
resolution: Fixed
title: Typo in www/webui
comment:
  Please replace 'distribute' with 'distributed' in www/webui.wiki :
   
  -Note also that because fossil is a distribute system, you can run

  +Note also that because fossil is a distributed system, you can run


tkt_uuid: e19b873e0d8203e5d046f9eaabb475a2dd8bd17e
type: Feature_Request
status: Closed
severity: Severe
foundin: Latest
resolution: Not_A_Bug
title: Ability to check-out to a global revision number and/or date
comment:
  I hope I haven't just missed this in the documentation, but I can't find how to check out a complete set of code according to a global revision number (like subversion) or to a timestamp (like CVS).

  I would sincerely appreciate such a feature being added, if it is lacking, since unfortunately the Sqlite project has migrated away from CVS into Fossil.

  <hr><i>drh added on 2009-09-16 14:42:26:</i><br>
  Check-out complete code by the hexadecimal (SHA1-hash prefix) version
  number as follows:

     wget http://www.fossil-scm.org/fossil/zip/FILENAME.zip?uuid=VERSION

  Change FILENAME and VERSION in the above as appropriate for what you want
  to do.

  There is no way to get a ZIP Archive based on just the date.  (That is
  problematic because there could be multiple branches and forks going all
  at once.)  But you can get a timeline of check-ins that occur around a
  certain date by pointing your web-browser at a URL like the following:

      [http://www.fossil-scm.org/fossil/timeline?c=2009-08-01]

  Adjust the date at the end of the URL as appropriate, of course.


  <hr><i>altufaltu added on 2009-09-16 17:05:00:</i><br>
  I think ability to specify a combination of date/time and branch name (default to trunk) in fossil open and fossil update command would be helpful.

  I understand that other clones may have different data but given a local version of repository, this option will be helpful to go back and forth in time.

  Please consider this request.

  - Altu


tkt_uuid: e24ec32b1da5f8f5e4abe3b1eed6899f8be6f4cc
type: Code_Defect
status: Fixed
severity: Minor
foundin: 04ddad7ab8
resolution: Fixed
title: privateness not preserved
comment:
  When branching from a private branch via 
  "fossil branch new newBranchName current"
  the resultant branch is now visible.

  When doing the above this also pops up:
  "gpg: no default secret key: secret key not available
  gpg: out-770939853ADDB6FA703B: clearsign failed: secret key not available
  unable to sign manifest.  continue (y/N)? y"

  I've never touched the clearsign setting and as far as I know it defaults to off
  but just to make sure I turn it off locally and then globally and the clearsign prompt still pops up.

  Now when you do a branch from a private branch via:
  "fossil commit --branch stillPrivate -m 'some message'".
  privateness is preserved.

  Furthermore,  Dr. Hipp in an email response regarding converting private branches to public that you could do "DELETE FROM private" and then a fossil rebuild and all your private branches will be public.  I updated to versions of trunk from when he wrote the reply(Tue, 22 Feb 2011 03:37:18 -08) and this is indeed the case all private branches are then public.  Version 04ddad7ab8 doesn't display the same behaviour.  After the rebuild,  the private table is again populated with artifacts representing the manifests from the private branches.  Wondering if this unadvertised "dirty trick" just doesn't work anymore of if the rebuild process is doing something it shouldn't

  <hr /><i>anonymous added on 2011-03-23 20:15:49 UTC:</i><br />
  This patch seems to fix the problem with "fossil branch new" from a private checking not preserving said privateness.  Also fixes the problem with being prompted for a key even though the clearsign option is defaulted to off.

  Seems like the logic for cancelling propagating tags between checkin.c

      db_prepare(&q, 
          "SELECT tagname FROM tagxref, tag" 
          " WHERE tagxref.rid=%d AND tagxref.tagid=tag.tagid" 
          "   AND tagtype==2 AND tagname GLOB 'sym-*'" 
          "   AND tagname!='sym-'||%Q" 
          " ORDER BY tagname", 
          vid, zBranch); 

  and branch.c

    db_prepare(&q,
        "SELECT tagname FROM tagxref, tag"
        " WHERE tagxref.rid=%d AND tagxref.tagid=tag.tagid"
        "   AND tagtype>0 AND tagname GLOB 'sym-*'"
        " ORDER BY tagname",
        rootid);

  is a bit different.  My sql is a bit rusty so i'm not sure if they accomplish the same things just in different manners.

  Still not sure why "delete from private" and then a fossil rebuild still leaves
  artifacts in the private table.


tkt_uuid: e28adcd72503a24599f84e378c5d8c6bb28a7758
type: Code_Defect
status: Fixed
severity: Cosmetic
foundin: a8c3a7ea92 2008-11-22T19:32:44
private_contact: 6b7d8d19b3584e0b0b59ee79d0f778ecd9f60111
resolution: Fixed
title: "zip.c" has two minor bugs.
comment:
  "zip.c" has two minor bugs.
  	1.	'dosTime' time stamp has only 5 bits for 'seconds' field. so it requires devide by 2.
  (in function 'zip_set_timedate_from_str()')
  <verbatim>-   dosTime = (H<<11) + (M<<5) + S;
  +   dosTime = (H<<11) + (M<<5) + (S>>1);</verbatim>

  	2.	function 'baseline_zip_page()' (as 'WEBPAGE: zip') finally calls 'cgi_reply()', but it not required.
  because 'cgi_reply()' calls by caller (main.c / process_one_web_page()) after this function returned.
  current version try to send '.zip' file twice.
  (almost http client checks 'Content-Length' header and shutdown themself first '.zip' file received.
   so this bug did not generate twice traffic.)

  <hr><i>drh added on 2008-11-27 13:26:43:</i><br>
  Fixed by check-in [39bbc6010e]


tkt_uuid: e29ea5912afe1e97149ad181dc898bc7bbaa6237
type: Code_Defect
status: Fixed
severity: Severe
foundin: 115f3ea60e
private_contact: 63f4cb9d6971f7dbdee05412b8546975182b32e4
resolution: Fixed
title: Privacy attribution loss due to de/reconstruct ...
comment:
  As I also use Git in our company to communicate with Subversion used at work, I liked the fact, that I can work locally, change the commit and comments and if all is finish, I can checkin to the central repository.

  Now I intent to use Fossil's privat branches the same way. I intend to make my own checkins locally and if I am finished I send all with a big checkin to my central repository by merging the private branch into a non-private one to get it pushed later on.

  So far so good. As I investigated the possibility to implement a feature in Fossil to get private branches pushed as well (but not synced or pulled) for backup purposes, I stumbled over the fact, that private branches lose its privacy attribution, if I deconstruct (with following reconstruction) a repository.

  What makes it worse is, that if I look at the reconstructed repository the private branch looks exactly like at the original repository. I cannot determine, it is not private any longer. Therefore it will be cloned and synced as well ...

  I will attach a small shell script to show the bug ...

  Best regards,
  chi.

  <hr /><i>anonymous claiming to be Joerg Sonnenberger added on 2010-11-18 22:47:06:</i><br />
  This is partially by design. Private / public is not a property in the manifest and can't survive a deconstruct as such.

  It would be useful for this kind of situation to be able to edit the property afterward, but it seems like the normal edit can't do that ATM?

  <hr /><i>chi added on 2010-11-19 12:00:41:</i><br />
  You mean "by design"? I thought, it was by accident ...

  I feel the behavior not correct. I mean reconstructing a repository should result in the same repository afterwards. Otherwise it would be a destroying operation. Of course, your idea to edit a branch to make it private after the fact (or remove privacy afterwards) would be a nice add-on too. But for reconstruction, I feel the privacy should survive. If we could have some card within a manifest to mark privacy, this could also be used to allow to push private branches to other repositories as well.

  Then we could use the push mechanism to allow incremental backup of Fossil repositories to another server without copying the whole repository all the time again and again ...

  <hr /><i>anonymous claiming to be Joerg Sonnenberger added on 2010-11-19 12:10:46:</i><br />
  deconstruct / reconstruct only preserve persistent data, e.g. the manifests and linked entries. The "private" flag is (intentionally) not persistent as it would prevent publishing the changes later.


tkt_uuid: e382a8bce330bf98df065377deef51374df9cdb7
type: Documentation
status: Open
severity: Minor
foundin: artifact/4f78615239
private_contact: 53f86f78f251171b8790b45a9e4e51835e7b2011
title: Corrections to delta format description
comment:
  Recommend the following changes to src/delta_format.wiki

  1. Revert the output of the unified diff to its oldest original (delta_format.html, not .wiki) form in artifact/403bbf0aac. As it is computer generated output, the two 'decendent' typos should never have been spell-corrected (the point of the diff is to show the spelling error being corrected by a delta).

  2. The checksum computed by src/delta.c/checksum() is actually modulo 2^32, not modulo 2^32 - 1.

  3. The base-64 encoding is not identical to any described in the RFC; Fossil's encoding uses a different alphabet starting at '0' rather than 'A' as in the RFC.

  4. typo s/This is there the/This is where the/

  I can supply a patched copy of the file if you would like.


tkt_uuid: e39122fcc434125c686d1965bd5b286f35235b4c
type: Documentation
status: Fixed
priority: Low
severity: Cosmetic
foundin: [cb44f7dea4] 2010-05-24 18:43:32
resolution: Fixed
title: Typo on "Fossil Self-Hosting Repositories" Page
comment:
  http://www.fossil-scm.org/index.html/doc/tip/www/selfhost.wiki

  "pathnames are modified to suit<b>e</b> the environment"

  should be 

  "pathnames are modified to suit the environment"


tkt_uuid: e3a1beef67c97eb2e4d5a140cb0bf1a222ec0512
type: Feature_Request
status: Fixed
severity: Severe
foundin: c845b28714
private_contact: 77d1fb9b8673fda6e5de8f02a6ad22d96857b3e1
resolution: Fixed
title: Conflict markers are reversed
comment:
  <pre>
  Fossil marks conflicts differently as anything else around starting from diff3.
  This conflicts with user experience, breaks usage patterns and it is extremely unhelpful when one uses ready tools.
  In particular opening marker should be "<<<" rather than ">>>" and vice versa.
  </pre>


tkt_uuid: e3c34af10dd28780f0718a6b1e826da4f52a3755
type: Documentation
status: Fixed
severity: Minor
foundin: fossil-linux-x86-767ae79c3d
private_contact: 22e3b7a55e291d179313f4c2e34877f09743ee31
resolution: Fixed
title: can't run fossil clone command when not at tty
comment:
  I try to run a clone command to create a local repository in a startup script which runs at boot.  The command fails, and when standard error is redirected to a file, the cryptic message "fossil: cannot local home directory" is found.  The same command succeeds when run from the command line while logged in at a terminal.

  The command looks like:
   fossil clone http://<user>:<pass>@localhost:7071 /home/<user>/fossil/repository.fsl

  The script is run as root, the directory /home/<user>/fossil exists, a local tunnel is created to a remote repository via ssh.

  For debugging purposes, I edited the startup script so that the clone command is in a while loop as long as repository.fsl doesn't exist.  While the startup script was stuck in the loop, I logged in and executed the clone command on the command line as root, and it worked fine.  This suggests there is no problem with the tunnel or environment.

  <hr><i>bharder added on 2009-06-14 15:08:30:</i><br>
  Try manually setting the HOME environment variable to an appropriate value for the user your want to be.

  <hr><i>anonymous added on 2009-06-15 03:08:21:</i><br>
  Setting the HOME variable worked, thanks bharder.

  I'm reclassing this as a doc bug, because at minimum there should be some mention that the clone command requires that the HOME var be set.  But I would suggest eliminating the requirement in the code.  I don't see any reason why it would be a necessity.

  Also, I'll guess that the cryptic error message quoted above was intended to read: "cannot locate home directory."

  <hr><i>bharder added on 2009-06-15 03:20:49:</i><br>
  re: cryptic message: yes. Fixed in checkin [16eae22891].

  <hr><i>drh added on 2009-08-01 14:35:38:</i><br>
  Fossil really does need to locate the user's home directory.  But the
  error message has been improved.  We'll consider this issue closed.

  Check-in [e00a5de0f143bb7dad565e11f646f87bb1ae66b9]


tkt_uuid: e42448edec179aadf130595d2d82df14713633cc
type: Code_Defect
status: Fixed
severity: Important
foundin: 4027ad4b7e
private_contact: 5c164664f608e8049128be696a3d13e04aa6fafd
resolution: Fixed
title: "co --latest" not working anymore?
comment:
  with fossil repo latest ci [399d1ca000] (which corresponds to graph work), fossil co --latest fails:
  <pre>
  oxford$ fossil version
  This is fossil version [4027ad4b7e] 2010-02-06 20:20:59 UTC
  oxford$ fossil info 
  project-name: Fossil
  repository:   /home/bch/fossil_2/fossil.fsl
  local-root:   /home/bch/fossil_2/
  project-code: CE59BB9F186226D80E49D1FA2DB29F935CCA0333
  server-code:  d88c5ddc09c25be88a931b3f85fa44b1630bf715
  checkout:     4027ad4b7e5d18294b0c102b242167df8314a599 2010-02-06 20:20:59 UTC
  parent:       2f58d48cabfb675fd418da343c05b15ba6b6418e 2010-02-06 17:25:07 UTC
  child:        1761fee0556d5e1b554e29a67462d18dceb5db83 2010-02-08 14:20:24 UTC
  tags:         trunk
  oxford$ fossil co --latest
  fossil: cannot locate "latest" checkout
  </pre>


tkt_uuid: e436a483c5b08a1aec69d1848ab1db984154301c
type: Code_Defect
status: Fixed
severity: Important
foundin: a300bee164
private_contact: 63070188043a9522ca95dca0d28c3b9eff7a697b
resolution: Fixed
title: "200 Entries" in branch timeline page forgets branch
comment:
  Go to Branches, pick any branch with enough changes and hit "200 Entries". The r=<branch-name> query parameter gets replaced by an empty t.


tkt_uuid: e49f245975f89a8a9c006ec224eed48c8ad77593
type: Feature_Request
status: Fixed
severity: Minor
private_contact: ddae85699df0ae84ab8e0a6a6dacf72bab6d4a7a
resolution: Fixed
title: Add '-nocgi' option
comment:
  I just encountered a small issue using fossil within a php script.  Using the php "exec()" function to run fossil -- to add a ticket to a repository -- I was unable to do it directly because fossil starts in cgi mode.

  The way around was to execute fossil from a shell script which "unset"s GATEWAY_INTERFACE.  This took me a bit to figure out, and seems unnecessary.

  So I suggest adding a '-nocgi' option so that it is easier to run fossil from within a cgi-script (without using fossil in cgi mode)

  <hr /><i>ron added on 2010-11-05 05:46:45:</i><br />
  This fix seems to make my server not work any longer.

  It is configured as a script which is executed from the server, and that server is:

  <blockquote><pre>
  #!/path/to/fossil
  directory: /home/my/fossils
  notfound: http://somewhere.else/
  </pre></blockquote>


  What is happening is a 'server misconfigured' message when I access the page now; reverting to ver cb2ff51 fixes the problem.  Adding 'cgi' as a parameter on the #! line helps, but I lose the css.

  <hr /><i>ron added on 2010-11-09 09:01:37:</i><br />
  Reverted your fixes, because they cause problems with certain CGI scripts scenarios (e.g. if the CGI script is named a valid fossil command prefix).

  Instead, check for '-nocgi' option and disable automatic 'cgi' if it is present.

  [1b883d49cf0885c74f1324b545caf28aafec385a]


tkt_uuid: e4a31ae35cd521b84b4d888af08c19d1905489b3
type: Code_Defect
status: Fixed
severity: Cosmetic
foundin: 6021279637
private_contact: 2359089ef753bc96e12743e299243d5232c749fa
resolution: Fixed
title: project header/title shows html artifacts
comment:
  the header/title portion of the home page shows &amp;quot; while the header/logo does not.  to reproduce go to admin/configuration and set the project name to:  MyProject "MP2000"<br>
  <br>
  Apply the changes and go to the home page; compare the text top/left with top/center.  entering &amp;quot; instead of &quot; in the project name just creates more problems.

  <hr><i>drh added on 2009-09-15 00:59:41:</i><br>
  Fixed by check-in [dec4685720199]


tkt_uuid: e4b91c37585147096ccc8cfa66b84e2b8d7cb375
type: Feature_Request
status: Closed
private_contact: 3601dce2ba6e52df40f597b6482ff3e56d1e26be
resolution: Rejected
title: Git backend
comment:
  We've had the same idea a long time for making the whole Lumiera project cloneable. When you clone the project, you should get the issue-tracker, the wiki (we're building uWiki for that purpose) and the web page (and of course all the source code).

  But we're using Git as many other, and we're extremely pleased with it. But now I see that Fossil also includes (and requires) yet-another-scm. So, how hard would it be to just use parts of the project?

  <hr><i>drh added on 2009-04-20 11:33:17:</i><br>
  The version control is not a "backend" on fossil.  The version control, the
  wiki, and the bug tracking are an integrated whole.  It is not feasible to
  attach a separate "backend" for a different version control system like Git.

  If you like the features of fossil, but are burdened by a Git legacy, I suggest
  you work on improving Git by adding to it feature you discovered on fossil.  
  Failing that, consider writing a tool that will import your git legacy into
  a new fossil repository.


tkt_uuid: e4da774beb079adbb2e2966731eb98a41f0283e8
type: Code_Defect
status: Open
severity: Minor
foundin: 732d7c406e
private_contact: 2edb82a5674981933f7e518c88a68d6e79e01a98
title: incorrect quote handling for HTML tag elements
comment:
  If a wiki page contains HTML which uses attributes, e.g. a (FONT COLOR='red') tag, and the user (out of long-time pedantic habit) _properly_ quotes the attributes (as in the previous example), then fossil will output (FONT COLOR="'red'") (notice the extra quotes) to the browser, which results in browser-dependent behaviour (and is malformed HTML in any case).

  To reproduce: add a FONT tag with a COLOR='red' (with the quotes) tag to a wiki entry, and then view the wiki page in a browser.

  My assumption is that this affects all quoted HTML attributes, but i have so far only noticed it with the FONT tag.


tkt_uuid: e5232878345cb71d17cc1631b12dd5903b3d272f
type: Feature_Request
status: Closed
severity: Important
foundin: 6021279637
private_contact: 2359089ef753bc96e12743e299243d5232c749fa
resolution: Works_As_Designed
title: user passwords are stored in plain text
comment:
  user passwords are stored in the fossil repository as plain text instead of a hash.

  <hr><i>drh added on 2009-09-12 15:53:03:</i><br>
  There are two options:

    1.  User passwords can be stored cleartext in the local database but
        sent over the wire (during sync) as a hash.

    2.  User passwords are stored has a hash in the local database but are
        sent in the clear over the wire during a sync.

  We believe that (1) is the better choice since it requires an attacker to
  be able to see the local database in order to find passwords, and if the
  attacker can see the local database, then he has already compromised the
  machine.  But with (2), the attack need only passively monitor network
  communications in order to steal passwords.

  <hr><i>rwilson added on 2009-09-14 16:40:15:</i><br>
  there should be some 'best practice faq' for fossil then, because if i store the same username/password in my local repository as is in the remote repository, then compromising my local also compromises the remote.  also, i assumed that fossil was storing a hash of my password, so i chose a password that i use frequently on the internet.  so, now that you know what that is, please don't drain my checking account.

  <hr><i>drh added on 2009-09-14 19:19:08:</i><br>
  New "scrub" command remove private information from a repository.
  Check-in [6c6a978a537]

  <hr><i>rwilson added on 2010-01-10 04:54:59:</i><br>
  fixed in [cfe33dcf92] - hurray!


tkt_uuid: e5419400994525e8ace483caa3063a7101115dbc
type: Feature_Request
status: Open
severity: Important
foundin: [7c37b46b12] 2010-04-15 23:53:15
private_contact: ae1a74676bb0d1ac520802109f926567b1637ac7
title: RSS (timeline.rss) should accept t=tag option to generate RSS for checkins on a branch
comment:
  timeline.rss should support the <tt>t</tt> parameter just like timeline does so that you can do for example:
  <pre>
  http://www.fossil-scm.org/index.html/timeline.rss?t=trunk
  </pre>
  to restrict the RSS feed to just checkins on a branch just like you can already do
  <pre>
  http://www.fossil-scm.org/index.html/timeline?t=trunk
  </pre>
  to restrict the timeline display to checkins on a branch


tkt_uuid: e5999e25eedeb7809939a93306ba26c6a4b7dbf2
type: Code_Defect
status: Closed
severity: Important
foundin: 1.20
private_contact: 277de4eda861e8a6d011b60d4006a963a4c7c474
resolution: Fixed
title: side by side diffs on ci page when not logged in behave as unified diffs
comment:
  When accessing a check-in details via a timeline rss feed, and being not logged in (thus, inheriting privileges of <tt>nobody</tt>, it is still possible to click on the “unified diff” or “side-by-side diff” buttons.

  Yet, both pages generated are unified diffs.

  <hr /><i>jan added on 2011-10-19 08:11:38 UTC:</i><br />
  I'll look at this later today.

  <hr /><i>jan added on 2011-10-19 19:02:47 UTC:</i><br />
  Should be fixed -- please confirm.

  <hr /><i>mortgat added on 2011-10-20 07:39:58 UTC:</i><br />
  it works well. thank you.


tkt_uuid: e5b941cb0c90ba43c17c5eedce8a60cd96d303bf
type: Code_Defect
status: Fixed
severity: Important
foundin: 745db63526
private_contact: 6984f5ff2d3f66a87d3c6ddcf777c37b54e478f0
resolution: Fixed
title: fossil sqlite3 is not working
comment:
  sqlite3.h and sqlite3.c are not from the same sqlite version.

  $ fossil sqlite3
  <br/>
  SQLite header and source version mismatch
  <br/>
  2011-06-24 11:29:51 9b191bb4c7c1e1b12b188c0b3eee1f8f587887c8
  <br/>
  2011-06-03 14:19:10 0206bc6f87bb9393218a380fc5b18039d334a8d8
  <br/>
  $

  <hr /><i>drh added on 2011-06-28 00:18:02 UTC:</i><br />
  The problem was a missing dependency in the makefiles.  It is fixed now.
  But even without the fix, you can work around the problem by doing

     make clean; make


tkt_uuid: e5e2e0408ed3d237e803a06a221291e909f55ea8
type: Feature_Request
status: Open
severity: Important
foundin: [7c37b46b12] 2010-04-15 23:53:15
private_contact: ae1a74676bb0d1ac520802109f926567b1637ac7
title: Universal binary builds for Mac OS X
comment:
  The downloads available on:

  [http://www.fossil-scm.org/download.html]

  are for Mac OS X 10.5/10.6 intel only.  Please build a universal binary that works with Mac OS X 10.4+.  If the 10.4 SDK is installed (should be installed by default with the 10.5 developer tools -- it may be an optional install with the 10.6 tools) into the normal default location of <tt>/Developer/SDKs/MacOSX10.4u.sdk</tt> then simply using this command:

  <pre>
  make \
    CFLAGS='-arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4' \
    LDFLAGS='-arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4'
  </pre>

  instead of just "<tt>make</tt>" in the fossil source checkout will produce a universal binary that runs on 10.4 or later on PowerPC or Intel machines.  (Of course it doesn't hurt to run <tt>strip</tt> on the final <tt>fossil</tt> file produced either.)

  There are still a lot of PowerPC machines out there (and a fair number of 10.4 ppc machines -- that's the last version of Mac OS X that will run classic apps) and this change is a relatively painless thing to do to support more platforms and make fossil accessible to more folks who are unwilling (or unable) to build from sources themselves on Mac OS X.

  I have verified that the universal binary fossil executable built this way runs successfully on these platforms:
  <ul>
  <li>10.4 PowerPC G4
  <li>10.5 PowerPC G5
  <li>10.5 Intel x86_64
  <li>10.6 Intel x86_64
  </ul>
  and so believe there are no problems with the universal binary produced this way.


tkt_uuid: e5f0b3e30ba64464eeb7925e3e34f3667d5ccd65
type: Feature_Request
status: Fixed
foundin: f89d953a06
private_contact: 3ee274ce2d2982add24b2405f53b32a02504dcd8
resolution: Fixed
title: foissil does not provide downloadable diff
comment:
  There are several pages in fossil that show diffs like

  http://fossil-scm.org/index.html/ci/69e81b0260

  However, the diffs shown on the pages are in HTML and cannot be in general used as input to patch because the whitespace may not match when tabs are used in the source.

  Also the patch header is missing.


  There should be an option to download applicable patches

  <hr /><i>dmitry added on 2011-09-08 21:51:36 UTC:</i><br />
  Fixed by [4bdf71b1ce].


tkt_uuid: e613f452fada00a99055c29e84e9685aa5254a04
type: Code_Defect
status: Fixed
foundin: [1d93222627] 2011-03-01
resolution: Fixed
title: On 'Edit checkin', checking Start a new Branch named... can be nameless
comment:
  In the 'Edit' page of the checkin ui page, checking "Make this check-in the start of a new branch named" without typing any name will create a void-name branch, and a void-name tag.


tkt_uuid: e65daa109fbfc0c89b6a25c5269032aed414f440
type: Code_Defect
status: Open
severity: Critical
foundin: 767ae79c3d
private_contact: 9c86e1cba86ab4ae28de934533d61e9210808572
title: Unable to open a project due to null contents of VC source file
comment:
  I cloned my repository locally from 192.168.1.25. I then tried to open the repository to extract the code. All I got was this error. I had already upgraded to version 767ae79c3d and rebuilt the repository on server prior to cloning. I opened the tcl-dev repository file and examined the blob and filename tables and determined there were quite a few files with size -1 and Null contents.There are also many entries where the contents are empty and the size is not -1. The file below (aes.tcl) has a size of 84 and the contents are null. I changed the size to -1 and retried opening the local repository again and it failed with same error.  Perhaps a force option is needed to keep extracting the data when and error is hit.

   $fossil open ../../tcl-dev 
   Autosync:  http://192.168.1.25:8081/
                  Bytes      Cards  Artifacts     Deltas
   Send:            5911        124          0          0
   Received:          46          2          0          0
   (null): content missing for lib/tcl/tcllib-1.11/aes/aes.tcl


tkt_uuid: e68182a35ac0265a857e462c6b2a1e81a8b17a6d
type: Code_Defect
status: Open
severity: Minor
private_contact: ebbf214358fed060592f40f5d3be2e893cd6407e
resolution: Open
title: Default HTML for new ticket form
comment:
  The New Ticket form uses tables for layout and lacks label elements for form fields. To make it easier to style the form and increase accessibility the following default HTML is proposed:

  [http://pastebin.com/8hdQB0wz]

  The unstyled version works in all browsers but to increase readability the following CSS should be added to the default CSS:

  [http://pastebin.com/dd3fwLek]

  <hr><i>anonymous claiming to be Peter Krantz added on 2010-06-22 17:59:22:</i><br>
  The proposed HTML uses the same field names as the previous form and should not affect functionality. Based on that HTML the following look is simple to create with CSS:

  [http://skitch.com/peterkz/djk51/fossil-new-ticket-form-html]


tkt_uuid: e6b127d7a7caaffccf3e58f08b4fa2f9754fb103
type: Feature_Request
status: Open
foundin: [0018d724b3]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Open
title: Events cannot have attachments, and wiki pages can
comment:
  If it is the intended behaviour, how so?

  At our fossil repository it would be nice if we could attach some files related to events. We use events to note when we deliver something to customers, and attaching related files would be convenient.

  <hr /><i>anonymous added on 2010-12-14 10:35:24:</i><br />
  IMHO, this ticket is more a feature request
  -- JosVanKesteren at gmail.com


tkt_uuid: e6dbb46ce0ad6154a3bfe74fe56e808a7a949989
type: Code_Defect
status: Open
foundin: [79b7902cdd]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
title: md5sum of ZIP archives from fixed checkins changes along time
comment:
  The md5sum of ZIP archives from a fixed check-in changes, when the repository gets some new artifacts.

  Maybe the ZIP archives are created with timestamps of the latest repository artifact?


tkt_uuid: e776717962fbf6b25fa7692c59e0aa223b3edd3f
type: Feature_Request
status: Fixed
severity: Minor
foundin: 20090921191920
private_contact: ed6eee22101b988e911a72836c642f206b343b1d
resolution: Fixed
title: replace 'new' with 'init' command for repository creation
comment:
  The repository is created with command:

    fossil new DIR

  Please change this command to

    fossil init DIR

  Which is in use of the 90% of the existing version control software. This
  would help to keep fossil familiar to other users. Different command terminology is in many times confusing when different tools are switched.

  Please also review other commands, like:

    fossil open     => fossil checkout  (and alias "co")
    fossil timeline => fossil log
    fossil leaves   => fossil branches (?)

  Jari

  <hr><i>bharder added on 2009-09-29 15:26:59:</i><br>
  Setting up "aliases" for the requested commands can be considered, as has been done in the past (see my own "co" command).

  <hr><i>bharder added on 2009-09-29 15:30:17:</i><br>
  reference for "co" alias: [a89b436bc9]

  <hr><i>anonymous claiming to be Dmitry Chestnykh added on 2009-10-11 13:01:44:</i><br>
  I don't think it's a good idea to rename "new" to "init". 

  Firstly, I don't see why "init" describes creation of a new repository better than "new". 

  Secondly, "new" is actually different from "init" in Git or Mercurial, because it creates an SQLite file for repository, not a dot-folder inside the specified directory, so renaming it to "init" can be misleading. Also, it requires a name of the repository file, not directory.

  <hr><i>anonymous added on 2009-12-18 21:52:24:</i><br>
  Another thing to consider is after you create a "new" repository you still have to run "fossil open xxx" to actually start working in the repo. I would think that "new" should go ahead and "open" the repo.

  <hr /><i>anonymous added on 2010-11-08 11:27:32:</i><br />
  I agree that fossil should provide "init" as alias to "new" at least. <br>
  Common usage is "VCS init /path/to/repository". <br>
  Whether repository is a directory or a DBMS doesn't matter here.

  <hr /><i>dmitry added on 2011-09-08 21:53:24 UTC:</i><br />
  Fossil accepts both 'new' and 'init' as of [21880ca1b6].


tkt_uuid: e77e876caf316cc514df51bb6120361aabcb9057
type: Documentation
status: Fixed
severity: Cosmetic
foundin: a6303982b0
private_contact: 6ba147a4218010d3c6ffddc5ed73dc017a44bf3c
resolution: Fixed
title: wiki typos
comment:
  typos in wiki fixed http://cvs.bcl.hamilton.ie:8080/vinfo/0506ef6fec218bf1a43dbc0b7e735d5add24b739

  <hr><i>anonymous added on 2010-01-14 14:26:59:</i><br>
  SQL is a <i>percular</i> programming language<br>
  should be <br>
  SQL is a <i>peculiar</i> programming language<br>
  (percular ->peculiar)

  <hr><i>drh added on 2010-01-14 15:38:00:</i><br>
  The new typo is also now fixed.

  In the future, please open a new ticket rather than appending to an old
  ticket that has already been marked fixed.  Tnx.


tkt_uuid: e816200f9503cc1167b4538c72789e1ed09231a9
type: Code_Defect
status: Open
severity: Important
foundin: 5882d97495
private_contact: 63f4cb9d6971f7dbdee05412b8546975182b32e4
title: Shunning cause Assertion failure!
comment:
  Please consider the following
  <verbatim>
  mkdir bug; cd bug
  fossil new repos.fsl
  fossil open repos.fsl
  date > file.dat
  fossil add file.dat
  fossil ci -m "checkin 1" -nosign
  date > file.dat
  fossil ci -m "checkin 2" -nosign
  date > file.dat
  fossil ci -m "checkin 3" -nosign
  fossil ui
  </verbatim>
  If I now shun the revision of "checkin 1" and rebuild the repository, then the timeline will show "checkin 2" as the very first checkin! But if I now select "checkin 2" in the browser and chose to view its ancestors, an error occured and following message will be shown in my browser:
  <verbatim>Assertion failed: (e>0), function bag_insert, file bag_.c, line 102.</verbatim>

  However, if I <samp>deconstruct</samp> and <samp>reconstruct</samp> the repository, the "checkin 2" will really be the first checkin and clicking its ancestors will refer to itself, what I would consider a better solution.

  Please let me know, if more information is needed ...

  Ciao,<br>
  chi.


tkt_uuid: e8a10100e212c740472994e0cdee55a1c2f7fcf1
type: Code_Defect
status: Fixed
severity: Important
foundin: 79b7902cdd
private_contact: 737d337eeb5d3cbb8b87d159be27604315ed1813
resolution: Fixed
title: fossil update -v is more than just verbose
comment:
  After deleting a file, update does nothing. However, update -v restores the file. 
  <pre>
  /cygdrive/d/temp/dashv>fossil new dashv.fossil
  project-id: eefba14973508acdebbe3ecea5e63ec1895e8425
  server-id:  41939960aa229ace59c4a833dcf567addbcfba1b
  admin-user: Owner (initial password is "9306f9")
  /cygdrive/d/temp/dashv>fossil open dashv.fossil
  /cygdrive/d/temp/dashv>touch a.txt
  /cygdrive/d/temp/dashv>touch b.txt
  /cygdrive/d/temp/dashv>fossil add *
  ADDED  a.txt
  ADDED  b.txt
  C:\bin\fossil.exe: cannot add _FOSSIL_
  C:\bin\fossil.exe: cannot add dashv.fossil
  /cygdrive/d/temp/dashv>fossil commit -m "initial"
  New_Version: be989ed7f1647274dda0cfdd16efb6850e87eea8
  /cygdrive/d/temp/dashv>rm b.txt
  /cygdrive/d/temp/dashv>fossil update
  /cygdrive/d/temp/dashv>ls
  _FOSSIL_ <b> a.txt</b>  dashv.fossil
  /cygdrive/d/temp/dashv>fossil update -v
  UNCHANGED a.txt
  UPDATE b.txt
  --------------
  updated-to:   be989ed7f1647274dda0cfdd16efb6850e87eea8 2011-01-27 20:43:03 UTC
  tags:         trunk
  comment:      initial (user: Owner)
  "fossil undo" is available to undo changes to the working checkout.
  /cygdrive/d/temp/dashv>ls
  _FOSSIL_ <b> a.txt  b.txt</b>  dashv.fossil
  </pre>

  <hr /><i>martin.weber added on 2011-08-22 15:29:33 UTC:</i><br />
  Yes, I can see this, too, with at least

  $ fossil version
  This is fossil version 1.18 [df9da91ba8] 2011-07-13 23:03:41 UTC

  Also the transcript is very interesting:
  <verbatim>
  $ ./tst.sh
  project-id: 6bc2abb2549099cdc849e19c269d8ead14bd6113
  server-id:  e4843abba50a452aefa3d5a102eb96481be4fba4
  admin-user: phaeton (initial password is "41ba40")
  ADDED  some-file
  New_Version: ffdb5f97e8190eaa0564af8845acf05f5f4cd6fc
  -rw-------  1 phaeton  users  0 Aug 22 11:27 some-file
  After rm: some-file is not there.
  repository:   /data/home/phaeton/tmp/ftst/banzai.fossil
  local-root:   /data/home/phaeton/tmp/ftst/open/
  server-code:  e4843abba50a452aefa3d5a102eb96481be4fba4
  checkout:     ffdb5f97e8190eaa0564af8845acf05f5f4cd6fc 2011-08-22 15:27:20 UTC
  parent:       9a89746aa0dec33acf90d3375e8f828b836dae36 2011-08-22 15:27:20 UTC
  tags:         trunk
  comment:      added some file (user: phaeton)
  MISSING    some-file
  After fossil update: some-file is not there.
  repository:   /data/home/phaeton/tmp/ftst/banzai.fossil
  local-root:   /data/home/phaeton/tmp/ftst/open/
  server-code:  e4843abba50a452aefa3d5a102eb96481be4fba4
  checkout:     ffdb5f97e8190eaa0564af8845acf05f5f4cd6fc 2011-08-22 15:27:20 UTC
  parent:       9a89746aa0dec33acf90d3375e8f828b836dae36 2011-08-22 15:27:20 UTC
  tags:         trunk
  comment:      added some file (user: phaeton)
  MISSING    some-file
  UPDATE some-file
  --------------
  updated-to:   ffdb5f97e8190eaa0564af8845acf05f5f4cd6fc 2011-08-22 15:27:20 UTC
  tags:         trunk
  comment:      added some file (user: phaeton)
  "fossil undo" is available to undo changes to the working checkout.
  repository:   /data/home/phaeton/tmp/ftst/banzai.fossil
  local-root:   /data/home/phaeton/tmp/ftst/open/
  server-code:  e4843abba50a452aefa3d5a102eb96481be4fba4
  checkout:     ffdb5f97e8190eaa0564af8845acf05f5f4cd6fc 2011-08-22 15:27:20 UTC
  parent:       9a89746aa0dec33acf90d3375e8f828b836dae36 2011-08-22 15:27:20 UTC
  tags:         trunk
  comment:      added some file (user: phaeton)
  EDITED     some-file
  fossil: there are unsaved changes in the current checkout
  </verbatim>
  Look at the last two lines. After doing nothing more than an update, fossil thinks some-file has been EDITED where it's not. It's an empty file, just like the one that has been added.


tkt_uuid: e8a6bfa54e0c389c903958c287a69f8604ecdfcc
type: Code_Defect
status: Fixed
severity: Cosmetic
foundin: [0018d724b3] 2010-12-07 13:31:37 UTC
private_contact: 8da35fd1d2c376262a3c33172be72b2f6d4328b0
resolution: Fixed
title: Minor spelling mistake in online help for fossil import
comment:
  fossil help import
  Usage: fossil import --git NEW-REPOSITORY

  Read text generated by the git-fast-export command and use it to
  construct a new Fossil repository named by the NEW-REPOSITORY
  argument.  The <b>get-fast-export</b> text is read from standard input.

  The git-fast-export file format is currently the only VCS interchange
  format that is understood, though other interchange formats may be added
  in the future.


tkt_uuid: e8ac83275f4a3707458cd86d9e249a28d35ea92b
type: Code_Defect
status: Open
severity: Important
foundin: [bbb8ae7ebf]
private_contact: e64e062ff7022fc7fdd41ac56baff07e8ae485d9
title: Errors on the server side do not get well-propagated to the client side.
comment:
  Vis-a-vis ticket [678eb0c20a07f601aa2b11439b7ac49ecaf21e5c], if the memory footprint isn't a problem, the fact that the memory error was not propagated back to the client is.  In general I've found that errors when working with a local repository are informative and helpful.  (Things like "out of memory" are pretty clear.)  When the same errors are hit on a remote repository, however, they tend to be cryptic things like "1fossil: unknown command: Status:".


tkt_uuid: e90d38c2054e9b44792eb4f3447d85bd86e465cc
type: Feature_Request
status: Fixed
severity: Critical
private_contact: 77d1fb9b8673fda6e5de8f02a6ad22d96857b3e1
resolution: Fixed
title: Generate full diff
comment:
  There's no way to generate full textual difference between versions when files are added or removed.

  This is essential to interact with outside world, for reference see "cvs diff -uN"

  <hr /><i>anonymous added on 2010-10-14 16:30:01:</i><br />
  I've attached a partial implementation of full diffs. This doesn't support diffs between two versions or diffs requesting a single file yet. It should be a starting point for discussing the behavior though.


tkt_uuid: e94aee5905e991c9d69df13d5e8e4ea46817b28e
type: Feature_Request
status: Closed
severity: Minor
foundin: f93a54d0ba
private_contact: 63070188043a9522ca95dca0d28c3b9eff7a697b
resolution: Fixed
title: Time line should shorten commit message
comment:
  At the moment, the UI prints the full commit message in the time line. As this messages can be very long, that's generally just a waste of space.

  I would suggest to truncate the message by default to something like 200 characters or so and add an option to show the rest (either via JS or form).

  <hr /><i>wolfgang added on 2010-10-10 12:43:57:</i><br />
  This i a little bit complex.

  Timeline can be displayed in 2 ways:
    *  no block markup - here we can cut the text simply
    *  using block markup - the problem is, to close all used elements in the html hierachy and do it in a way, not destroying the layout.


  <hr /><i>anonymous claiming to be anonymous2 added on 2010-10-10 13:30:24:</i><br />
  What about a setting to only display the first paragraph in the timeline? Then it would be possible to have a summary line (followed by an empty line) + a more detailed description that is only visible on the info page.

  <hr /><i>wolfgang added on 2010-10-10 15:15:27:</i><br />
  If block rendering is activated, the commit messages will be formated like wiki pages.

  Inside wiki pages it's possible to use the fossil internal wiki format combined with pure html. If a commit message uses for example tables, i cannot simply stop rendering at the first end paragraph after n characters. I t can be, that this paragraph is inside a table cell. Cutting the commit message may corrupt the complete gui display.

  To handle this situation, fossil has to
    *  parse it's own html - this might be possible
    *  parse all currently unhandled html - we have no code for this!

  For me, the effort to handle shortened html is to much for this. The only thing, i could accept would be, to offer the opportunity to shorten the simplified text display but leave the block rendering variant unchanged.

  <hr /><i>drh added on 2010-10-11 13:50:22:</i><br />
  Fossil already gives you the capability to limit the length of timeline
  messages.  Under the Admin/Timeline menu, you can specify the maximum
  length of any timeline message. If the maximum length is 0, then there
  is no limit.  That is the default.  Setting a limit of 350 to 500 bytes
  seems to work pretty well for the pkgsrc repository.


tkt_uuid: e95f7c93370be8c868958b48c8c4bf94ef9d0f46
type: Code_Defect
status: Fixed
severity: Important
foundin: 047e06193b
private_contact: 50da7412b8b802b1c9f7ddc204270d069d3c2e2b
resolution: Fixed
title: HTTPS CGI variable might be "ON", not "on".
comment:
  The Jetty web server sets the CGI HTTPS environment variable to 'ON', not 'on' like other web servers. This breaks redirects as fossil gets the base URL wrong.

  Changing line 811 of main.c to

      if( strcmp(zMode,"on")==0 || strcmp(zMode,"ON")==0 ){

  solves the problem.


tkt_uuid: e9ce8c8a9312e79f1c5e7c086650a6af32ecfe1d
type: Feature_Request
status: Closed
severity: Cosmetic
foundin: next
private_contact: 77e476a4e2375fcb4a72f9bcda37587eee054dc3
resolution: Not_A_Bug
title: Does fossil have this function ?
comment:
  In git , I can change to another branche in the same folder.  But i can't do this in fossil. What about adding this fuction to fossil? Soryy about my poor english.

  <hr /><i>drh added on 2011-06-01 09:53:37 UTC:</i><br />
  Tickets are for reporting bugs.
  Please ask question about how to operating Fossil on the public mailing list.


tkt_uuid: ea7d583739b004afa832e1b6901259137747366f
type: Code_Defect
status: Open
severity: Minor
foundin: [15b293259d] 2010-06-11 12:02:59 UTC
private_contact: c0b04d3450fc4196f634b9d078d8dce4d4b1be6a
title: Some characters prevent "server ." from serving repos
comment:
  Windows XP (with latest patches) and fossil version [15b293259d] 2010-06-11 12:02:59 UTC

  I ran into problems with non-alphabetic characters today using "fossil server."

  These commands work:<br>
     fossil new r~1.fossil<br>
     fossil ui r~1.fossil<br>

  But after running "fossil server .", http://127.0.0.1:8080/r~1 returns "Not Found"

  Replace the tilde with an underscore, works normally. Using a caret (^) demonstrates the same problem.


tkt_uuid: ebea029045e38bec44d745329d74b217f72dd73c
type: Feature_Request
status: Open
severity: Important
foundin: sqlite fossil repo
private_contact: 6d98f6f6077df35640d815a6d1223d1dfa227ac6
resolution: Open
title: Cannot view related checkins from a ticket URL
comment:
  Given the ticket URL:

  http://www.sqlite.org/src/info/9abd6aa831

  How does one view checkins related to this ticket?

  Trac shows related checkins on the ticket page.

  <hr><i>jeremy_c added on 2010-03-04 20:19:38:</i><br>
  Please see the cookbook entry:

  http://fossil-scm.org/index.html/wiki?name=Cookbook#ticket-checkin-links

  Jeremy

  <hr><i>jeremy_c added on 2010-03-04 20:20:13:</i><br>
  Oh. This is in regards to a particular install of Fossil, not fossil itself? i.e. the sqlite.org project?


tkt_uuid: ec667f74f803490786abc4442553ca8befeac61a
type: Feature_Request
status: Open
severity: Important
foundin: Fossil-076f7adff2
private_contact: be550bfd65ad2b35c5af076e5620344955089a2e
resolution: Open
title: LDAP authentication and authorization support
comment:
  Fossil is good, so I am thinking of promoting Fossil in work place which use LDAP/AD for account login authentication and authorization. Please implement this feature.

  tj yang

  <hr /><i>anonymous added on 2010-11-05 17:17:02:</i><br />
  The easiest way to do this probably is to let the web server handle the LDAP via HTTP Basic Auth (secure enough when sent over SSL) and have Fossil merely pick up the login name from the CGI and use it as logged in user from there.

  Support for HTTP Basic Auth would also be needed for Fossil's own network support (i.e. when the client talks to the server).

  <hr /><i>anonymous added on 2010-11-08 14:47:28:</i><br />
  Also see discussion in <a href="http://www.mail-archive.com/fossil-users@lists.fossil-scm.org/msg02458.html">this thread<a/>.

  Fossil already supports REMOTE_USER when running as CGI, which means it can be set up to pick up the user name (for existing users only) from the webserver, which can be set up to handle LDAP or any other authentication. Problems here are that the fossil client doesn't support basic or digest authentication, which means it can't talk to a fossil server behind LDAP (or any other external authentication scheme) at the moment.


tkt_uuid: ee9243c5c77572b490093937c3b0d8041c9a60f4
type: Code_Defect
status: Open
severity: Minor
foundin: 1.18
private_contact: d38fef6d436c103985ac22b73ebb173fb648156c
title: fossil update -n clutters checkout on failed merge
comment:
  (as reported by Marty Backe)
  <blockquote>
  For files that have a merge conflict, the 'baseline', 'original', and
  'merge' files get created on my local file system. All other files that
  would get updated do not get updated (the expected result with the -n
  option).
  </blockquote>

  Either those files shouldn't be created for -n, or, if they are a necessity, be deleted afterwards. I agree with Marty that the state of the checkout should be the same before and after fossil update -n.


tkt_uuid: eed6d07c6eb373e6c92d01958a05644184dd6c02
type: Feature_Request
status: Fixed
severity: Minor
foundin: d63f87c003
private_contact: 4de91f48ceab788649292e850559a96cc7e17039
resolution: Fixed
title: Non-ASCII characters not allowed in wiki page titles
comment:
  The wiki says a page name is not well-formed if it contains a non-latin letter. When writing in languages other than English this may force you to make a spelling mistake in the project name...

  Actual project name which revealed the problem contained the phrase 'with database' which translates into 'z bazą'.

  <hr><i>kkinnell added on 2009-04-07 16:07:09:</i><br>
  Please see [ebcbb50f4ac7d5cf35ddd4c33050fff07b4ac4d8].

  <hr><i>stephan added on 2009-11-30 14:42:29:</i><br>
  Fossil does no specific encoding/decoding of these strings, as far as i'm aware, so i'm reclassifying this as a feature request rather than a defect.

  <hr><i>ron added on 2010-01-24 07:08:37:</i><br>
  Fixed in [afe70a464686a3085141c03a1aee3eceb598ddd8]


tkt_uuid: ef25a83cce0aab78eedc937abfb4788a2c5ca614
type: Documentation
status: Fixed
severity: Minor
foundin: current site
private_contact: 7c314290d66d6e80f54e57ac6aa8dc635bfbc6c4
resolution: Fixed
title: typo in http://www.fossil-scm.org/index.html/help?cmd=configuration
comment:
  first line in the blue box:
  Usage: fossil configure METHOD ... ?-R|--repository REPOSITORY?

  should read:
  Usage: fossil configuration METHOD ... ?-R|--repository REPOSITORY?

  thanks,

  marc 

  ps is this in the running for cheesiest patch of the week?

  <hr /><i>dmitry added on 2011-09-08 23:26:24 UTC:</i><br />
  Fixed in [cd8041b159].


tkt_uuid: ef48c60cee1483ef24bb551e554c9e0bb2e0555f
type: Code_Defect
status: Fixed
severity: Important
foundin: d13054ce84
private_contact: 2f102b33d8f807336292e56ff47c6c59de4876c0
resolution: Fixed
title: checkout/build failure
comment:
  Using fossil [d13056] to co fossil repo at [57347e6ee87a] yields:
  <pre>
  gcc -g -O2 -o mkindex ./src/mkindex.c
  ./mkindex add_.c allrepo_.c attach_.c bag_.c blob_.c ... >page_index.h
  gcc -g -O2 -o makeheaders ./src/makeheaders.c
  gmake: *** No rule to make target `src/../manifest.uuid', needed by `VERSION.h'.  Stop.
  </pre>

  where fossil set is: 
  <pre><nowiki>
  [bch@ansel ~/work/fossil]$ fossil set</nowiki>
  auto-captcha        
  auto-shun           
  autosync             (local)  1
  binary-glob         
  clearsign           
  diff-command        
  dont-push           
  editor              
  gdiff-command       
  ignore-glob         
  http-port           
  localauth            (local)  0
  manifest            
  mtime-changes       
  pgp-command         
  proxy               
  repo-cksum          
  ssh-command         
  web-browser         
  </pre>

  The following will fix at command line, but is a brittle solution to real problem (in header file):
  <pre>
  fossil set manifest 1
  </pre>

  <hr /><i>drh added on 2010-10-26 23:44:27:</i><br />
  Once I get the server updated, new clones will set the "manifest" option
  automatically.  What other fix do you suggest?  Make "manifest" the default?
  The feedback I have received about the manifest and manifest.uuid files is
  uniformly negative - everybody hates them it seems - so it seems best to
  leave them turned off by default.

  <hr /><i>anonymous added on 2010-10-30 18:45:48:</i><br />
  Hi,
  I recently got this error too. Could a command be implemented to generate the manifest and manifest.uuid files? Then they could be deleted when the build finishes. Thing is, this wouldn't work if you just zipped up the working tree and sent it to someone. Hmm.
  Thanks, kj4ufx.

  <hr /><i>drh added on 2010-10-31 23:14:15:</i><br />
  The command

      fossil set manifest on

  creates the manifest and manifest.uuid files, in addition to making sure
  they are updated on all future checkouts.

  If the "manifest" setting for a server is "on", then all ZIP archives
  generated by that server include the "manifest" and "manifest.uuid" files.


tkt_uuid: eff2cbe5ae11c0b58e17e87b71cd5c953cba484e
type: Code_Defect
status: Fixed
severity: Cosmetic
foundin: 02f638a16f
resolution: Fixed
title: info prints two colons for user-home
comment:
  There is a second colon after 'user-home:' which lines up with the colon in 'project-code:' - the formatting here may not show this accurately.

  H:\Documents\Projects\~~~~~~~~~~~>fossil info

  project-name: ~~~~~~~~~~~

  repository:   H:/Documents/Projects/~~~~~~~~~~~/~~~~~~~~~~~.fossil

  local-root:   H:/Documents/Projects/~~~~~~~~~~~/

  user-home:  : C:/Documents and Settings/~~~~~~~~/Application Data

  project-code: e1bb4f699d6acc4fe77ec112d528d80ed80704b9

  server-code:  969b83d05256855b5e9efb4adedc31506126a58d

  checkout:     f6371826f7344157474803c92258e3c5c64728a3 2010-02-16 04:34:25 UTC

  tags:         trunk


  H:\Documents\Projects\~~~~~~~~~~~>fossil help

  Usage: fossil help COMMAND.

  ...

  This is fossil version [02f638a16f] 2010-02-13 12:30:48 UTC

  Obviously, this is on a windows platform.


tkt_uuid: f00cd046cf42d8897c8f78ac329e8b40158d4420
type: Feature_Request
status: Closed
private_contact: 73f04265888c11c182181ef4c8e5c737d6d98103
resolution: Overcome_By_Events
title: macports portfile, this is just some packaging configuration for mac osx users
comment:
  I've written a simple macports portfile, for users who wish to install fossil on osx systems with macports. I'd like to attach it to this ticket for others who are interested in it (pasting it here in a comment doesn't seem to work too well)

  <hr /><i>dmitry added on 2011-09-08 21:02:24 UTC:</i><br />
  Thanks. Fossil port is included in the recent MacPorts https://trac.macports.org/browser/trunk/dports/devel/fossil/Portfile


tkt_uuid: f083ffffc655f777c5897ccfd5197fabe1143bb2
type: Code_Defect
status: Closed
severity: Minor
foundin: [c12e5b102e] 2008-11-27 13:50:41
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Not_A_Bug
title: Inconsistent display of closed tickets id's as striked out links in timeline
comment:
  While checking on timeline page, I see on my cloned copy of fossil repository just some of closed tickets id's striked.<br>
  In my local copy, I see both  lines with striked links to closed tickets (1dd22c3a2b and 1dd22c3a2b):

  2008-11-27<br>
  23:37:45 	* 	[74747d3dcf] Closed ticket <s>1dd22c3a2b</s><br>
  23:30:16 	* 	[b4402cf8af] Ticket <s>1dd22c3a2b</s><br>

  The next striked one on my  copy is(with striked link 807ca32b80):

  2008-11-25<br>
  18:42:55 	* 	[3f824675cd] Closed ticket <s>807ca32b80</s><br>


  On the contrary, on fossil web page I see as striked many more links to already closed tickets.<br>
  First one is already the line:<br>

  2008-11-27<br>
  13:51:22 	* 	[4cbd3b67c9] Fixed ticket <s>66cbcd56a2</s>

  <hr><i>eric added on 2008-11-28 07:19:56:</i><br>
  But 66cbcd56a2 is fixed, not closed (at this time) - this will be due to a difference in the ticket config (third item in Setup->Tickets->Timeline).

  <hr><i>anonymous claiming to be kkinnell added on 2008-11-28 15:32:04:</i><br>
  Wouldn't this have more to do with when the local repository was synced with the 
  main repo?  If you pull/update from the main repository to the local, and look 
  at the timelines <u>right then</u>, they should be a 99% match. (There's always 
  a chance someone closed a ticket while you were doing your "pull".)

  <hr><i>anonymous added on 2008-11-28 17:58:17:</i><br>
  I was describing situation with freshly updated repo. When I can, I will check if it is related to changes in Setup->Tickets->Timeline menu as suggested. But I guess, there are default values set.

  <hr><i>eric added on 2008-11-28 19:36:37:</i><br>
  <pre>
  $ fossil version
  This is fossil version [f84bfc31bf] 2008-11-27 02:30:29 UTC
  $ fossil pull  http://www.fossil-scm.org/fossil/
  ...
  </pre>

  At this point, I have looked at the timelines from my clone repository
  and www.fossil-scm.org side by side in the browser and seen exactly
  the difference described.

  <pre>
  eric@tasso:~/devel/fossil$ fossil export ticket emjtkt
  eric@tasso:~/devel/fossil$ fossil config pull ticket http://www.fossil-scm.org/fossil/
  ...
  $ fossil config export ticket drhtkt
  </pre>

  On refreshing pages in the browser, they now look identical.

  Looking at the export files, there are lots of differences, but in
  particular, I had

  <pre>REPLACE INTO config VALUES('ticket-closed-expr','status=''Closed''');</pre>

  while the pulled config has

  <pre>REPLACE INTO config VALUES('ticket-closed-expr','status=''Closed'' OR status=''Fixed''');</pre>

  The former is specified as the default in tktsetup.c and wikiformat.c, so I feel quite justified closing this as "Not A Bug".


  <hr><i>anonymous added on 2008-11-30 19:32:29:</i><br>
  Thank you for the insight into this configuration issue.<br> 
  After updating Setup->Tickets->Timeline option <b>Ticket Closed</b> to value:<br>status='Closed' OR status='Fixed'<br> local timeline now looks exactly as on fossil web site.<br>

  Just a remark, while I pulled config with:<br>
  fossil config pull ticket http://www.fossil-scm.org/fossil/<br>

  and compared exported ticket export files from original and updated repository, they looked exactly the same (beside datetime line) and did not contain:<br>

  REPLACE INTO config VALUES('ticket-closed-expr'...<BR>

  line at all.


tkt_uuid: f0b04e1c551484b5f3c549fcfbcbfb93c430e0f0
type: Code_Defect
status: Open
severity: Minor
private_contact: 63070188043a9522ca95dca0d28c3b9eff7a697b
title: "fossil sqlite3" behaves inconsistent
comment:
  <verbatim>
  $ mkdir test
  $ cd test
  $ fossil init test
  project-id: 5545d1358dffb32424958343acc90220c6a03ec7
  server-id:  6ba5d397e66d52d97fd97befc18ccbff8e19b37a
  admin-user: joerg (initial password is "484064")
  $ fossil sqlite3 test
  fossil: use --repository or -R to specify the repository database
  $ fossil sqlite3 -R test test2
  SQLite version 3.7.4
  Enter ".help" for instructions
  Enter SQL statements terminated with a ";"
  sqlite> vacuum;
  sqlite> .quit
  $ ls
  test  test2
  </verbatim>

  The -R should not be required and either not be accepted or complain if given both a repository as positional argument and via -R.

  It would be nice if it accepted SQL commands as command line parameter like the standalone sqlite3 command. Handling EOF as implicit ; would be another minor improvement.


tkt_uuid: f0f9aff371f26b4eebb1ded3cabc70c956c6cae7
type: Code_Defect
status: Closed
severity: Important
foundin: [047e06193b] 2011-04-13
resolution: Fixed
title: 'annotate' misses changes.
comment:
  I've a branch where I'm interested on the source of this line of code, at point
  2011-04-28:
  <verbatim>
  const bool debugErrorToFile = true;
  </verbatim>

  Looking at annotate, I see:
  <verbatim>
  ad13e86e1e 2010-09-28  llbatlle:     const bool debugErrorToFile = true;
  </verbatim>

  I don't trust it.. and I find a commit in the same branch, on 2011-04-08, that
  introduced the change. So, annotate was not showing it.

  I write a commit today (2011-05-05), setting back the debugErrorToFile to
  false. Then I test annotate again, expecting to see the very recent commit. But
  I get:
  <verbatim>
  8c918ba0e2 2010-10-25  llbatlle:     const bool debugErrorToFile = false;
  </verbatim>

  So, annotate is getting confused somehow. I can completely reproduce it, but I
  cannot give the repository as it contains private files.

  <hr /><i>viriketo added on 2011-05-05 15:16:35 UTC:</i><br />
  Just testing the most recent commit in this repository: [74c86dd1da6]

  Notice that the diff says:
  <verbatim>
  +  if( showClosed ){
  +    db_prepare(&q,
  +      "SELECT value FROM tagxref"
  +      " WHERE tagid=%d AND value NOT NULL "
  +      "EXCEPT "
  </verbatim>

  while annotate says
  <verbatim>
  74c86dd1da 2011-05-04       drh:   if( showClosed ){
  518439507a 2010-08-15       drh:     db_prepare(&q,        <== This line
  74c86dd1da 2011-05-04       drh:       "SELECT value FROM tagxref"
  74c86dd1da 2011-05-04       drh:       " WHERE tagid=%d AND value NOT NULL "
  74c86dd1da 2011-05-04       drh:       "EXCEPT "
  </verbatim>

  <hr /><i>viriketo added on 2011-05-05 21:43:57 UTC:</i><br />
  I think the problem has to do with line numbering. Look at this: [/artifact/99f393dce665c790?ln|version of the branch.c above] looking at all the lines and their numbers. There are many wrong line numbers.

  <hr /><i>viriketo added on 2011-05-05 21:48:17 UTC:</i><br />
  Sorry. Reloading the page I see the line numbers fine. I think my previous comment misleads, as I think it was due to a problem in my browser, and not in fossil.

  <hr /><i>viriketo added on 2011-05-05 22:00:38 UTC:</i><br />
  From what I see in [/artifact/d9bd197c10a97fb9e7f3f8d88be457738b3cc7b1?ln=688|diff.c:688] and [/artifact/d9bd197c10a97fb9e7f3f8d88be457738b3cc7b1?ln=771|diff.c:771], the annotate procedure goes by looking at older and older commits, and when parts of the lines are equal, the older commit is taken.

  I think that this makes the 'annotate' show, sometimes, "the earliest commit with that change", instead of "the last commit with that change".

  Other VCS show in 'annotate' the last change in every given line. This is the behaviour I'd prefer, but I barely know anything about diff algorithms, so I hope someone takes the job of implementing this usual kind of annotate.

  <hr /><i>viriketo added on 2011-05-06 19:15:41 UTC:</i><br />
  Sorry, but I reopen the ticket.

  I'm trying the fossil version [9a63d1f048] 2011-05-06, which should have the changes that brought the ticket into Fixed.

  As I said in the initial ticket entry, I had committed <kbd>const bool debugErrorToFile = false;</kbd> in 2011-05-05. If I use 'annotate' on that file with the new fossil version, I get:
  <verbatim>
  f794dd718d 2011-03-01  llbatlle:     const bool debugErrorToFile = false;
  </verbatim>

  which is different than before your changes, but still wrong.

  <hr /><i>viriketo added on 2011-05-06 19:18:48 UTC:</i><br />
  I'm trying <code>fossil annotate --limit 1 FILE</code>, and although the file was modified on 2011-05-05, it shows all the file annotations in 2011-03-01. So there may be a problem on getting the initial version.

  <hr /><i>viriketo added on 2011-05-06 19:27:18 UTC:</i><br />
  I just noticed that the *web* annotate shows good results. It's only the *commandline* annotate showing the troubles.

  <hr /><i>viriketo added on 2011-05-07 14:14:54 UTC:</i><br />
  I investigated a bit more... the terminal 'annotate' uses a query like this:
  <verbatim>
    mid = db_int(0, "SELECT mid FROM mlink WHERE fid=%d AND fnid=%d", fid, fnid);
  </verbatim>

  that does not give a SINGLE result. Different checkins may have the very same file artifact, and it needs further code to decide what checkin is of interest.

  Then, it needs some code to choose what is of the interest of the requester.

  <hr /><i>viriketo added on 2011-10-19 20:16:18 UTC:</i><br />
  Merged to trunk on [e161670939].


tkt_uuid: f18142409088bfc707e264d00f71d4139d443ef4
type: Feature_Request
status: Fixed
severity: Minor
foundin: [d090292800] 2010-08-05 10:09:43 UTC
private_contact: cb9895983f32946f27a57b1ea169270321707822
resolution: Fixed
title: Disabling Zip Download
comment:
  When the ability to download a zipped archive of the files is disabled from the Admin > Users menu from, say, the anonymous user, the ZIP Archive link is still shown in the Timeline page. Clicking on it leads to the login page, which does not necessarily show any helpful message about needing to be authorized, for example.

  I'd like to request to have the said link either be grayed out or removed completely when the option to download zips is disabled.


tkt_uuid: f1c75f38446877b1d9c4607c8ffd0160728fb46f
type: Code_Defect
status: Closed
foundin: [12a79e5b93]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Unable_To_Reproduce
title: Events without tags don't get listed
comment:
  I added an event without tags, and I cannot see it listed in the timeline in any case. Here is the artifact I got from the log:
  <verbatim>
  C Nanonote\sboot
  D 2010-11-24T22:08:16
  E 2010-11-24T22:06:28 1c1d4c8b982706f8ebf40bfc28317052c43ad1e2
  U viric
  W 365
  I hoped I would get virtual consoles working, but using the latest version in
  the nanonote directly flashing the ubifs, I only got immediately a 'sh' (bash)
  and no login prompt at all as I got with qemu.

  Also the /etc/profile or /etc/bashrc scripts did not run.

  Worth investigating. There may be a trick to enable virtual consoles, and
  mingetty is not enough.
  Z eb5692f98105723c771dbec94d3cc82e
  </verbatim>

  <hr /><i>drh added on 2010-11-25 01:41:39:</i><br />
  I added the event below on a dummy repository and it showed up on the 
  timeline fine.  Notice that it has no tags:

  <pre>
  C Yet\sanother\sevent
  D 2010-11-25T01:39:49
  E 2010-11-25T01:39:33 9a517bd1943c8543eed53df323dc9cbf456c091d
  U drh
  W 42
  This event does not even have a color tag.
  Z 0c4ab5944b63c5f173144e759cf16c9d
  </pre>

  <hr /><i>anonymous added on 2010-11-27 23:19:52:</i><br />
  Now I think it could have been a problem related to the time. I'll check.

  <hr /><i>anonymous claiming to be viric added on 2010-11-29 23:14:18:</i><br />
  Sorry, I don't think it's a time problem. I added there a new event without tags and it works. But I still cannot see the event I mentioned when opening the ticket

  You can clone the repository and see:
  http://vicerveza.homeunix.net/~viric/cgi-bin/nanonixos

  Artifact: 4d12cabdeca86a71190c39b1e458faae4fad0faf

  <hr /><i>anonymous claiming to be viric added on 2010-11-29 23:16:48:</i><br />
  Ouch, sorry. My fault. it's time related. I was in fact seeing only the old event, and I'm again not seeing the event I added some minutes ago.

  Whenever I find the pattern, I'll report.


tkt_uuid: f1c8f2d33cf37729ba674811fe1601aa34e91bdf
type: Feature_Request
status: Open
severity: Minor
foundin: f969b6cdde
private_contact: 09bcfe9beb6bd1f9361d71b153c193630ed2ac65
title: 'diff' command in the web-interface
comment:
  On the /finfo page (or /dir) add the 'diff' command to look at difference between leaf version and current working copy (from where 'fossil ui' started).


tkt_uuid: f21f98c2671cd94a6c2db0941fa0f69a3cd761fb
type: Feature_Request
status: Open
severity: Important
private_contact: 63070188043a9522ca95dca0d28c3b9eff7a697b
title: Consistently support -R for almost all commands
comment:
  Many commands already support -R, but it is missing for other useful cases like "finfo" or indirectly support by giving the path directly for others like "info". It can and should work for almost any commands, the only exceptions being those that directly require a working copy or change the state of it (e.g. add, ci, mv).


tkt_uuid: f24f11f538a60e39f10eea22491567bb7d3f69d8
type: Feature_Request
status: Open
severity: Minor
foundin: [35ecc92b69]
resolution: Open
title: --name-only option in fossil diff
comment:
  A --name-only (or -q) option to fossil diff command will be useful to get only the names  of files changed / added / removed between two tags.

  <hr /><i>drh added on 2011-07-12 00:07:42 UTC:</i><br />
  How is that any different from the "fossil changes" command?

  <hr /><i>altufaltu added on 2011-07-13 01:25:52 UTC:</i><br />
  Does fossil changes take --from/--to arguments (like diff command) to list files changed between two revisions/tags? I don't see that in help message.

  I think this command operates only on checkout.


tkt_uuid: f270321c0f74b354f05ea8632aaac05eb5d68f13
type: Code_Defect
status: Fixed
private_contact: e7d733707d8c126de4f080f5f958e762bfaa8983
resolution: Fixed
title: Recursively adding directories should respect ignore-glob
comment:
  If I set a pattern in my ignore-glob, and said files don't appear under "fossil extra", I would expect "fossil add <subdirectory>" to not add those files. Yet it seems to do just that.

  I'm trying to import a somewhat complex project into Fossil, and it places build artifacts in easily-determined locations (compiled .class files in subdirectories called "target", dependencies fetched by the build tool in directories appended with "_managed", etc.) I've successfully got "fossil extra" not listing these, but whenever I try recursively adding a subdirectory, these files are still listed as being added. I've had to wipe out my _FOSSIL file multiple times and re-add all the various files I've tried adding previously several times in order to not get build artifacts in the repository.

  Seems that if I tell Fossil to ignore something, that it should automatically do so unless explicitly told to do otherwise. Thanks.


tkt_uuid: f273b440c38eb8478822812e0730f0fc2c8b4c36
type: Code_Defect
status: Fixed
priority: Immediate
severity: Important
foundin: [ba837fd294] 2008-12-16 18:39:29 UTC
private_contact: 72c73ce34e23821d1efcc88bc872fc296aabde7e
resolution: Open
title: fossil tag cancel has no effect?
comment:
  In the TDBC repository at http://kbk.is-a-geek.net:2301/, I made some
  last minute changes, and wanted to move the release tag '1.0b1' to the
  newly-committed version.  I did

  fossil tag cancel 1.0b1 cdc04f749733684d55cd9eb1f440e6d4e47b03f9

  followed by

  fossil tag add 1.0b1 fbd0e6a2758844dfe651e0f6e78c9e527ba860a5

  But now when I do

  fossil tag find 1.0b1 

  I see both versions.

  Did I do something amiss, or am I misunderstanding something? My
  objective is to arrange things so that '1.0b1' can be used as a tag
  to check out the released version while development proceeds.
  (I'm not looking to branch it yet, merely to tag and bag the release)

  <hr><i>eric added on 2008-12-17 22:39:08:</i><br>
  I think it's just the listings (the web shows both too), but if you do a

  fossil update 1.0b1

  after the cancel and before the add, you get "not a valid object name", as expected.

  <hr><i>eric added on 2008-12-20 11:39:25:</i><br>
  Fixed in [7c281b629ac5c6a91b2b8143fe48a5714f54e0df]


tkt_uuid: f2b5011d975720680600ff901297c3d0e70f6e77
type: Feature_Request
status: Open
severity: Cosmetic
private_contact: ebbf214358fed060592f40f5d3be2e893cd6407e
resolution: Open
title: Styling: Remove align attribute from HTML
comment:
  To make it easier to use CSS for styling, remove all "align" attributes from HTML. Text alignment should be controlled in the CSS instead of in the markup.

  E.g. in src/tktsetup.c  there are mutliple align attributes in the source.

  <hr /><i>stephan added on 2011-09-14 18:03:08 UTC:</i><br />
  Since fossil apparently now serves with an HTML5 doctype, and HTML5 deprecates many of the formatting attributes (delegating them to CSS), we might need to remove these for HTML5 conformance.


tkt_uuid: f358c9fdbfb796e44fa3d7eace9b6f8669d72c9b
type: Feature_Request
status: Open
severity: Important
foundin: all
private_contact: e16bca9376b716bf489a593de88e7b2760905520
title: Read a list of files to act on from a file
comment:
  The Windows command line has a max length of 8191 characters. If one wants to provide a list of individual files to fossil commands which exeeds this limit, the command fails. This is not a bug in fossil but in Windows. 

  Nevertheless it affects working with fossil. Today I wanted to check in a huge list of automatically generated files without checking in other changes of the project with the same commit. Unfortunately the command line exceeded the Windows limit and fossil stopped the operation with the comment that it doesn't know anything about file xyz (the filename was cut in the middle).

  It isn't possible to commit only a specific subdirectory of a project (If you use a directory name as file argument for commit it again complains about knowing nothing about the directory, which I understand, because the directory is not an artifact).

  Changing into a subdirectory and issuing the fossil commit from there doesn't help either. Anything which has changed in the project is committed.

  The workarounds for this are to commit all other chages first and then commit the remaining files at once with a fossil commit without file names or to split the huge list into chunks with less than 8191 characters. The second would generate multiple entries for a commit which should be one and the first somehow interfers with the workflow.

  The probably best way to handle it would be an additional commandline switch to use a file containing the list of files which should be handled by the fossil commands.


tkt_uuid: f35bb2003cc81e6c62b6f51377144e860280d9a5
type: Feature_Request
status: Open
severity: Minor
title: Request cmd line return 1 if no files updated, 2 for errors
comment:
  As it currently works, Fossil returns '0' on any command which succeeded, or '1' if the command was unknown or ambiguous.

  It would be useful to be able to differentiate between 'no files were updated' and 'there was an error' in scripts.  Therefore I would like to request that "0" be returned when 'all is well', '1' when 'upd' or other command updated files on disk (adding, removing or updating), and '2' if there was a problem understanding the command.  Perhaps '3' if the command actually failed but was understood.


tkt_uuid: f37c5d9fe64b6521befda46afda9caa09e0879ce
type: Code_Defect
status: Open
severity: Important
foundin: f29a826666
private_contact: 2f102b33d8f807336292e56ff47c6c59de4876c0
resolution: Open
title: -R, --repository not recognized with "fossil branch new" cmd
comment:
  -R and --repository are not recognized when trying to create a new branch. The command synopsis and error msgs indicate it should:
  <pre>
  $ ls
  new.fsl
  $ fossil help branch
  Usage: fossil branch SUBCOMMAND ... ?-R|--repository FILE?

  Run various subcommands to manage branches of the open repository or
  of the repository identified by the -R or --repository option.

     fossil branch new BRANCH-NAME BASIS ?-bgcolor COLOR? 

         Create a new branch BRANCH-NAME off of check-in BASIS.
         You can optionally give the branch a default color.

     fossil branch list

         List all branches
  $ fossil branch new newbranch trunk -R ./new.fsl
  fossil: use --repository or -R to specify the repository database
  $ 
  </pre>

  <hr /><i>bharder added on 2010-09-23 18:48:16:</i><br />
  Have tracked (so far) to <pre>void db_open_repository()</pre> in <pre>db.c</pre> -- all looks sane up to this point (haven't dived into db_open_repository() yet).

  <hr /><i>bharder added on 2010-09-23 19:07:51:</i><br />
  Curious: removing second condition from <pre>if( access(zDbName, R_OK) || file_size(zDbName)<1024 ) (function "void db_open_repository()", db.c)</pre> things seem to work.


tkt_uuid: f38602af0a3627dfc8e3023924e20328fc4ee24d
type: Feature_Request
status: Open
severity: Minor
foundin: 0448438c56
private_contact: 28b4f1873839f0f7d467637c702a78d6f813d67c
title: Option for auto-sync or command to sync settings
comment:
  Please add a feature to auto-sync the settings with the master repository or add a command to sync settings whenever needed.


tkt_uuid: f386e46e1f177c2890b3ddc0b8f9c7487e1f9b91
type: Code_Defect
status: Open
severity: Important
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
title: fossil sqlite3 OPTIONS not properly evaluated
comment:
  It seem that OPTIONS in "fossil sqlite3 ?DATABASE? ?OPTIONS?" commands are not properly evaluated. Below is evidence of attempts to set separator to 'X' value. 

  I am in open checkout, so I can select stuff from fossil repo by built-in sqlite3 command(with or without explicitly naming fossil repo file):
  <verbatim>
  c:\soft\msys\home\user\fossil>fossil  sqlite3
  SQLite version 3.7.4
  Enter ".help" for instructions
  Enter SQL statements terminated with a ";"
  sqlite> select * from blob where rid = 1;
  1|1|127|a28c83647dfa805f05f3204a7e146eb1f0d90505|
  sqlite> .qui

  c:\soft\msys\home\user\fossil>
  </verbatim>

  If I try to use OPTIONS (both with explicit naming of repo file or without naming of repo file, while invoking build-in sqlite3 in open check out directory), I get either:

  error "Error: no such table: blob", so options are not honored, perhaps interpreted as a name of(non existent) repo file:

  <verbatim>
  c:\soft\msys\home\user\fossil>fossil  sqlite3  --separator 'X'
  SQLite version 3.7.4
  Enter ".help" for instructions
  Enter SQL statements terminated with a ";"
  sqlite> select rid,content from blob where rid = 1;
  Error: no such table: blob
  sqlite> .qui

  c:\soft\msys\home\user\fossil>
  </verbatim>

  OR error about too many options "sqlite3: Error: too many options: "'X'"" with exit to cmd shell:
  <verbatim>
  c:\soft\msys\home\user\fossil>fossil  sqlite3 c:\soft\bin\myfossilclone.fossil --
  separator 'X'
  sqlite3: Error: too many options: "'X'"
  Use -help for a list of options.

  c:\soft\msys\home\user\fossil>
  </verbatim>


tkt_uuid: f3e3caed6162baf641626f88c27e846f9783f5b7
type: Code_Defect
status: Open
severity: Minor
foundin: 1.18
private_contact: 8d4a206846568eca9e5dad90d8b0c2a9cf680333
resolution: Open
title: Markup not interpreted in file history
comment:
  See for example [http://www.fossil-scm.org/index.html/finfo?name=src/branch.c] and scroll down to 2011-02-02. Bold markup is shown as raw text. Timeline is OK.


tkt_uuid: f509d626d67f4e1b2ed7ba3c3d6c3b5842137d02
type: Code_Defect
status: Open
severity: Minor
foundin: f274222ea7
private_contact: 0104dabff6057f27042b765f556ea05cb3727a5c
title: display bug on branching graph on Timeline (web)
comment:
  <p>When the branch graph show 2 branches lines in parallel in the timeline web page down to the bottom completely, we would expect to start with 2 parallel on top on the next page (e.g. when clicking older)
  </p>
  <p>
  Now, on second page, it start with only one line on top. It's the case right now on the fossil repository if you select to show 200 Entries. 
  </p>
  <p>
  To be able to reproduce it forever, here's 2 link showing 50 ancestors of specifics version, where the second link is the 50 ancestors of the last entires of the first page. 
  </p>

  <b>1st page:</b>
  <p>
    [http://www.fossil-scm.org/index.html/timeline?p=f274222ea7adff99&n=50]
  </p>
  <b>2nd page:</b>
  <p>
    [http://www.fossil-scm.org/index.html/timeline?p=a35e8c0db14c09a7&n=50]
  </p>
  <p>
  You can see that at the bottom of the first page, there's like 2 branches going in parallel, but on the second, it start only with one. 
  </p>


tkt_uuid: f5672eff7e99045d6b732f38141ecdf4d69699a5
type: Feature_Request
status: Open
severity: Minor
foundin: 8caf7e1691
private_contact: 277de4eda861e8a6d011b60d4006a963a4c7c474
title: a « patch » command
comment:
  A “fossil patch” command could be of some use for many users in my opinion.

  The basic idea is: do whatever <tt>fossil merge --cherrypick</tt> does, but following multiple descendents at a time.

  The syntax would be:

    *  fossil patch --from A --to B ==> same as “fossil diff --from A --to B | patch -p0”
    *  fossil patch --to B ==> same as “fossil merge --cherrypick B”

  Of course it would honor merge_cmd and other settings!


tkt_uuid: f58a05747498d3aaa9ea1e4f8f4015c209dfc54a
type: Code_Defect
status: Fixed
severity: Minor
foundin: Fossil snapshot as of 2010-06-11 12:02:59
private_contact: e123b20aad478eaa0b4a95bebf135d4719449413
resolution: Fixed
title: Wiki pages where the name starts with a "." cause problems
comment:
  If you create a Wiki page with a period (.) character as the first character (E.g. ".NET Framework"), it is difficult to link to it. The wiki link <nowiki>[.NET Framework] is rendered as [Site root]/.NET+Framework instead of [Site root]/wiki?name=.NET+Framework]</nowiki>. As there appears to be no way to escape the period, the only way of accessing such a page (without typing the URL manually) appears to be through the list of all wiki pages.

  <hr><i>drh added on 2010-06-13 15:59:40:</i><br>
  Support added for links of the form:

  <verbatim>
  [wiki:.NET Framework]
  </verbatim>


tkt_uuid: f5e414efde8c3ddf71a05d392cf64f245bf946cc
type: Feature_Request
status: Fixed
severity: Minor
resolution: Fixed
title: Need a "Preview" button when editing a ticket
comment:
  The preview is especially needed on the Comments section where
  the user is allowed to enter wiki - which might not be rendered
  as expected.  There already is a Preview on the "New Ticket" page.
  It should not be that much trouble to add the same to the 
  "Edit Ticket" page.

  <hr><i>kkinnell added on 2008-11-25 20:22:28:</i><br>
  Here is a "cut & paste" patch for version dec2c22d9d.

  Setup->Tickets->Edit Ticket Page

  Copy the default html, and paste it into a file.

  Copy the patch text below, and paste it into a different file.

  Run "<code>patch -c <i>default file</i> <u>patch file</u></code>"

  Then clear out the html in the text area on the Edit Ticket Page and cut&amp;paste the patched text.

  The changes just adding buttons and connecting them to display areas, but it's easier to explain it in <i>diff -c</i> than it is in English.  :)

  <nowiki><pre>
  *** distedit.th1        2008-11-25 14:06:08.000000000 -0600
  --- prvwedit.th1        2008-11-25 14:03:41.000000000 -0600
  ***************
  *** 60,65 ****
  --- 60,66 ----
       wrap="virtual" class="wikiedit">$&lt;comment>&lt;/textarea>&lt;br>
      &lt;input type="hidden" name="eall" value="1">
      &lt;input type="submit" name="aonlybtn" value="Append Remark">
  +   &lt;input type="submit" name="prevw1btn" value="Preview">
    &lt;th1>enable_output [expr {!$eall}]&lt;/th1>
      Append Remark from
      &lt;input type="text" name="username" value="$&lt;username>" size="30">:&lt;br>
  ***************
  *** 67,73 ****
  --- 68,92 ----
       wrap="virtual" class="wikiedit">$&lt;cmappnd>&lt;/textarea>&lt;br>
    &lt;th1>enable_output [expr {[hascap w] && !$eall}]&lt;/th1>
      &lt;input type="submit" name="eallbtn" value="Edit All">
  +   &lt;input type="submit" name="prevw2btn" value="Preview">
    &lt;th1>enable_output 1&lt;/th1>
  +
  + &lt;th1>enable_output [info exists prevw1btn]&lt;/th1>
  + &lt;tr>&lt;td colspan="2">
  + Description Preview:&lt;br>&lt;hr>
  + &lt;th1>wiki $comment&lt;/th1>
  + &lt;hr>
  + &lt;/td>&lt;/tr>
  + &lt;th1>enable_output 1&lt;/th1>
  +
  + &lt;th1>enable_output [info exists prevw2btn]&lt;/th1>
  + &lt;tr>&lt;td colspan="2">
  + Description Preview:&lt;br>&lt;hr>
  + &lt;th1>wiki $cmappnd&lt;/th1>
  + &lt;hr>
  + &lt;/td>&lt;/tr>
  + &lt;th1>enable_output 1&lt;/th1>
  +
    &lt;/td>&lt;/tr>
    &lt;tr>&lt;td align="right">&lt;/td>&lt;td>
    &lt;input type="submit" name="submit" value="Submit Changes">
  </pre></nowiki>

  Hrm.  I wish I'd had the preview before I submitted this; I would've realized I need to change all of those '&lt;' chars into '&amp;lt;' sequences.

  <hr><i>drh added on 2008-11-26 02:40:03:</i><br>
  Preview button similar to what is described above was added to the
  default ticket configuration by check-in [6bcff72d23].  Existing
  repositories will want to import these changes.  The easiest way
  to do this after upgrading the fossil executable to version
  [6bcff72d23] or later is to go to

     Setup ->  Tickets  -> Edit_Ticket_Page

  And there select "Revert To Default"


tkt_uuid: f628d183c958c5b12fccb42f4b52a7c94031e07e
type: Code_Defect
status: Fixed
severity: Minor
foundin: [dbe1e68e43]
resolution: Fixed
title: pwd too big: max 1999
comment:
  In file.c, getcwd() can return NULL by different causes.

  One that got me mad is that a shell is in a directory that someone removed. 'ls' still works there, but any fossil operation returns 'pwd too big: max 1999'.

  Showing strerror(errno) would have tought me what to do, as I only discovered the cause of getcwd()==0 through gdb. My pwd was '/tmp/f', that isn't very big. :)

  <hr /><i>viriketo added on 2011-06-17 20:14:54 UTC:</i><br />
  I don't see anything using strerror() in fossil, so I'm not sure how to fix this.


tkt_uuid: f630d61ed8f048ff3ae41b8ec343107a16c68b03
type: Feature_Request
status: Open
severity: Minor
foundin: 73c24ae363
resolution: Open
title: adding comments to a tag
comment:
  in fossil there is no way to add a comment to a tag (to explain the concept behind this tag). 

  i know there are values, but the value can change per checkin:

  i.e.: <br>
  checkin 53739292 tag foo=bar<br>
  checkin 39203748 tag foo=bar2

  i think it could be useful to have a comment which explains a tag. <br>
  this comment could also be displayed in the taglist (http://www.fossil-scm.org/index.html/taglist)

  <hr><i>anonymous added on 2010-03-19 14:32:06:</i><br>
  this could be also useful for branches...

  <hr /><i>martin.weber added on 2011-09-07 13:21:24 UTC:</i><br />
  This would be helpful for everything, wouldn't it? Not only to document something, but also to discuss things; just like we have the audit trail in the ticket system where you can append remarks, that would be nice to have (imho) for anything. Right now in fossil development itself we bring things up on the mailing list -- not everyone has a mailing list though, so discussing things "in place" would/could be a nice fossil feature.

  <hr /><i>viriketo added on 2011-09-07 13:41:06 UTC:</i><br />
  I usually explain the meaning of the branch at two moments: creation checkin, and merge into parent checkin (as the purpose may have changed among the two).


tkt_uuid: f64f9b57eb49f7917e6238c2c5399da5c119ce3e
type: Code_Defect
status: Fixed
severity: Minor
foundin: 01a769a9fa
private_contact: 2359089ef753bc96e12743e299243d5232c749fa
resolution: Fixed
title: warnings introduced in db.c since checkin [2f58d48cab]
comment:
  <pre>
  gcc -Os -Wall -DFOSSIL_I18N=0 -L/mingw/lib -I/mingw/include  -I. -I./src -o db.o -c db_.c
  db_.c: In function `db_init_database':
  db_.c:533: warning: implicit declaration of function `sqlite3_win32_mbcs_to_utf8'
  db_.c:533: warning: assignment makes pointer from integer without a cast
  db_.c: In function `openDatabase':
  db_.c:568: warning: assignment makes pointer from integer without a cast
  db_.c: In function `db_open_or_attach':
  db_.c:594: warning: assignment makes pointer from integer without a cast
  </pre>

  <hr><i>rwilson added on 2010-02-08 14:52:56:</i><br>
  building in windows...

  <hr /><i>anonymous added on 2010-12-21 16:26:46:</i><br />
  Fixed with [73c24ae363]


tkt_uuid: f673f7e40656fa3430edea398162596538797fd7
type: Code_Defect
status: Closed
severity: Important
foundin: 8be6204607
private_contact: 5c164664f608e8049128be696a3d13e04aa6fafd
resolution: Fixed
title: option parsing error
comment:
  I don't fully understand command-line option parsing, _but_:

  fossil commit -branch "my branch" -bgcolor #ffaabb

  has the 'bgcolor' option returning a value of "my branch". This is incorrect. It appears that somewhere in the chain of command-line option parsing, "#" is interpretted as a comment,and it + rest of line is ignored (??).

  *If* this is the case, -bgcolor should be recognized as missing an option,and throw an error.

  Optionally (preferably?) it would be nice to not require quoting or escaping for "#" chars.

  <hr><i>bharder added on 2009-02-09 05:49:08:</i><br>
  '#' handling is either intrinsic to shell, or C. argc does reflect proper number of args, though, and we should check.

  <hr><i>anonymous claiming to be Ge' Weijers added on 2009-02-09 17:46:37:</i><br>
  '#' is the comment character of the Bourne shell (/bin/sh), and therefor also for derived shells such as 'bash'. It's a feature, not a bug :-)

  <hr><i>bharder added on 2009-02-09 18:11:42:</i><br>
  fixed with commit f80303ac73


tkt_uuid: f6747f854ba62b3d20fdb615d33386fca861f185
type: Code_Defect
status: Fixed
severity: Minor
foundin: aa57354736
private_contact: 20fca3084ce400a7f735d2d0056965355aee4050
resolution: Fixed
title: commens not visible for ticket with no description
comment:
  If a ticket is created with empty description and comment is appended later, the comment is not visible in ticket status, though it's available in ticket history.

  <hr><i>drh added on 2009-09-19 14:34:57:</i><br>
  Fixed by check-in [0b76ce7b6ba3b].
  Run rebuild for the change to take effect on existing repositories.


tkt_uuid: f696bc85f8b91d263f5bf4c5bbd261bd252c46a0
type: Feature_Request
status: Fixed
severity: Minor
foundin: fb5f0c2580
private_contact: 911ecc80502632daad095cf04dac560d4ed25ad4
resolution: Fixed
title: Client side verification of SSL server certificates should use system wide default CAs
comment:
  Most installations of OpenSSL come with a system wide directory of default certificate authorities and most applications using OpenSSL make use of this certificate store during server certificate verification, which is handy because a system administrator only has to manage one central store of acceptable certificate authorities.

  Fossil presently doesn't use the system wide CA certificate store, but I think it should :-) The necessary change is only one line of code:
  <verbatim>
  Index: src/http_ssl.c
  ===================================================================
  --- src/http_ssl.c
  +++ src/http_ssl.c
  @@ -90,10 +90,11 @@
       SSL_library_init();
       SSL_load_error_strings();
       ERR_load_BIO_strings();
       OpenSSL_add_all_algorithms();
       sslCtx = SSL_CTX_new(SSLv23_client_method());
  +    X509_STORE_set_default_paths(SSL_CTX_get_cert_store(sslCtx));
       sslIsInit = 1;
     }
   }
   
   /*
  </verbatim>


tkt_uuid: f6b83821d6a6fa1cd5d4900a79d0ebb45b6ed6e6
type: Feature_Request
status: Open
severity: Important
resolution: Works_As_Designed
title: Tickets should have an 'assigned_to' field
comment:
  In a multi-developer environment, it is useful to assign tickets to people.  Fossil doesn't currently have a way to assign them.

  <hr><i>jeremy_c added on 2010-02-17 12:36:30:</i><br>
  The fossil ticket system is very versitle and does have the ability to assign tickets to people in a multi-developer environment, it's just not default.

  Simply add a new field named assign_to, create a new list of assignable people and update your edit/view templates.

  You can do about anything with the fossil ticket system.

  <hr><i>anonymous claiming to be Michael McDaniel added on 2010-02-18 16:56:34:</i><br>
  I read Jeremy's "how to" and understand the words, though still do not understand how to implement the feature I would also find useful.

  Please explain again how to implement, using language which assumes zero a priori knowledge.  New field/list where ?  edit/view templates ? where/what are those ? etc. Maybe this is a candidate for the wiki or embedded doc pages. thanks


  <hr><i>ron added on 2010-02-18 17:37:17:</i><br>
  Instructions on what to do [http://www.fossil-scm.org/index.html/doc/tip/www/custom_ticket.wiki|are here].

  <hr><i>anonymous claiming to be Michael McDaniel added on 2010-02-18 18:34:18:</i><br>
  Thank you for the details, Ron - worked fine.

  <hr /><i>anonymous added on 2011-04-08 17:46:00 UTC:</i><br />
  What if one wanted a dynamic list of certain users in the table (instead of a static one as specified in the example). It seems th1 doesn't have a way to do a sql command.


tkt_uuid: f6bfac26484c826b8fdd33f9d93149a7279986da
type: Code_Defect
status: Closed
subsystem: one
priority: Immediate
severity: Critical
foundin: all
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Not_A_Bug
title: Incorrent handling of unicode encoded files (fossil on win XP).
comment:
  While trying ro add file encoded in unicode (regardless of FEFF or FFFE byte order) fossil reports, that file was added, but while 
  displaying such files with artifact view(artifact), it shows only first 2 or 3 bytes of file.

  <hr><i>drh added on 2008-08-05 22:21:58:</i><br>
  Fossil stores all files as binary data.  There are never any encoding changes
  or attempts to interpret or translate text.  This is by design. 

  When displaying a file using the web interface, fossil assumes a UTF-8
  encoding.  Fossil does not record any mimetype information so there is nothing
  else it can do.  If you try to display a GIF file that using the web interface
  it will also come out looking funky when it tries to interpret the binary
  GIF file as UTF-8.

  I suppose the artifact viewer in the web interface could look at the file
  and try to make some guess at its mimetype.  But that is an advanced 
  capabiity.  I'm not sure we really want to go there.

  For now, let's just say that if you want to look at the file using the web
  interface, then the file needs to be UTF8.  If you want to look at non-UTF8
  files, the check them out (thus getting an exact replicate of the original
  file) and view them using an appropriate viewer for that file.


tkt_uuid: f89470bc3d3477814b0c16ffee3e0a21d106b265
type: Feature_Request
status: Open
severity: Important
foundin: 80c42a3312
private_contact: 63070188043a9522ca95dca0d28c3b9eff7a697b
resolution: Open
title: More useful file browser
comment:
  The current file based repository browsing is useful for finding the history of a specific file, but doesn't help much in finding out what changed when. In addition, the multi-column layout makes it harder to locate a specific entry.

  Example: [http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/cvs/]

    *  linear, sorted list
    *  revision of head
    *  time of last commit, color coded for ease of use
    *  author and commit message of last commit

  Another example: [http://svn.freebsd.org/viewvc/base/]

    *  List the same data for each directory, e.g. the last time something in this directory tree changed.

  <hr /><i>zachtodd added on 2010-11-30 14:46:25:</i><br />
  I have updated the file browser to reflect the requested functionality shown in the first example.

  Below is the patch that implements the new file browser:

  ---------------------
  <verbatim>
  Index: src/browse.c
  ===================================================================
  --- src/browse.c
  +++ src/browse.c
  @@ -93,10 +93,66 @@
       zSep = "/";
       while( zPath[j]=='/' ){ j++; }
     }
   }
   
  +void get_filemeta(const char* zFN, char** zAuthor, char** zComment, char** mtime)
  +{
  +    Stmt q;
  +    int fnid;
  +    int mid;
  +    int ztime;
  +
  +    int min   = 60;
  +    int hour  = min * 60;
  +    int day   = hour * 24;
  +    int week  = day * 7;
  +    int month = week * 4;
  +    int year  = month * 12;
  +
  +    db_prepare(&q, "SELECT fnid FROM filename WHERE name=:x");
  +    db_bind_text(&q, ":x", zFN);
  +    db_step(&q);
  +
  +    fnid = db_column_int(&q, 0);
  +    db_finalize(&q);
  +
  +    db_prepare(&q, "SELECT max(mid) FROM mlink WHERE fnid=:x");
  +    db_bind_int(&q, ":x", fnid);
  +    db_step(&q);
  +
  +    mid = db_column_int(&q, 0);
  +    db_finalize(&q);
  +
  +    db_prepare(&q, "SELECT (julianday('now') - julianday(mtime)) * 86400, user, comment FROM event WHERE objid=:x");
  +    db_bind_int(&q, ":x", mid);
  +    db_step(&q);
  +
  +    ztime       = db_column_int(&q, 0);
  +    (*zAuthor)  = db_column_text(&q, 1);
  +    (*zComment) = db_column_text(&q, 2);
  +
  +    if (ztime == 0){
  +        mtime[0] = 0;
  +        return;
  +    }
  +
  +    if (ztime - year >= 0)
  +        sprintf(*mtime, "%i years", ztime/year);
  +    else if (ztime - month >= 0)
  +        sprintf(*mtime, "%i months", ztime/month);
  +    else if (ztime - week >= 0)
  +        sprintf(*mtime, "%i weeks", ztime/week);
  +    else if (ztime - day >= 0)
  +        sprintf(*mtime, "%i days", ztime/day);
  +    else if (ztime - hour >= 0)
  +        sprintf(*mtime, "%i hours", ztime/hour);
  +    else if (ztime - min >= 0)
  +        sprintf(*mtime, "%i minutes", ztime/min);
  +    else
  +        sprintf(*mtime, "%i seconds", ztime);
  +}
   
   /*
   ** WEBPAGE: dir
   **
   ** Query parameters:
  @@ -105,13 +161,10 @@
   **    ci=LABEL         Show only files in this check-in.  Optional.
   */
   void page_dir(void){
     const char *zD = P("name");
     int nD = zD ? strlen(zD)+1 : 0;
  -  int mxLen;
  -  int nCol, nRow;
  -  int cnt, i;
     char *zPrefix;
     Stmt q;
     const char *zCI = P("ci");
     int rid = 0;
     char *zUuid = 0;
  @@ -235,40 +288,41 @@
       db_multi_exec(
         "INSERT OR IGNORE INTO localfiles"
         " SELECT pathelement(name,0), NULL FROM filename"
       );
     }
  -
  -  /* Generate a multi-column table listing the contents of zD[]
  -  ** directory.
  -  */
  -  mxLen = db_int(12, "SELECT max(length(x)) FROM localfiles /*scan*/");
  -  cnt = db_int(0, "SELECT count(*) FROM localfiles /*scan*/");
  -  nCol = 4;
  -  nRow = (cnt+nCol-1)/nCol;
     db_prepare(&q, "SELECT x, u FROM localfiles ORDER BY x /*scan*/");
  -  @ <table class="browser"><tr><td class="browser"><ul class="browser">
  -  i = 0;
  -  while( db_step(&q)==SQLITE_ROW ){
  -    const char *zFN;
  -    if( i==nRow ){
  -      @ </ul></td><td class="browser"><ul class="browser">
  -      i = 0;
  -    }
  -    i++;
  -    zFN = db_column_text(&q, 0);
  -    if( zFN[0]=='/' ){
  -      zFN++;
  -      @ <li><a href="%s(zSubdirLink)%T(zFN)">%h(zFN)/</a></li>
  -    }else if( zCI ){
  -      const char *zUuid = db_column_text(&q, 1);
  -      @ <li><a href="%s(g.zBaseURL)/artifact?name=%s(zUuid)">%h(zFN)</a></li>
  -    }else{
  -      @ <li><a href="%s(g.zBaseURL)/finfo?name=%T(zPrefix)%T(zFN)">%h(zFN)
  -      @     </a></li>
  -    }
  +  @ <table class="report browse" border="1"><tr><th>File</th><th>Age</th><th>Author</th><th>Last comment</th></tr>
  +
  +  while (db_step(&q) == SQLITE_ROW) {
  +   const char *zFN;
  +   char *zAuthor  = NULL;
  +   char *zComment = NULL;
  +
  +   zFN = db_column_text(&q, 0);
  +   char *zFNPath  = malloc(strlen(zPrefix) + strlen(zFN) + 2);
  +   char *zMtime   = malloc(32);
  +
  +   strcpy(zFNPath, zPrefix);
  +   strcat(zFNPath, zFN);
  +
  +   get_filemeta(zFNPath, &zAuthor, &zComment, &zMtime);
  +
  +   if (zFN[0] == '/') {
  +       zFN++;
  +       @ <tr><td><a href="%s(zSubdirLink)%T(zFN)">%h(zFN)/</a></td><td nowrap>%s(zMtime)</td><td>%s(zAuthor)</td><td>%s(zComment)</td></tr>
  +   }
  +   else if (zCI) {
  +       const char *zUuid = db_column_text(&q, 1);
  +       @ <tr><td><a href="%s(g.zBaseURL)/artifact?name=%s(zUuid)">%h(zFN)</a></td><td nowrap>%s(zMtime)</td><td>%s(zAuthor)</td><td>%s(zComment)</td></tr>
  +   }
  +   else
  +       @ <tr><td><a href="%s(g.zBaseURL)/finfo?name=%T(zPrefix)%T(zFN)">%h(zFN)</a></td><td nowrap>%s(zMtime)</td><td>%s(zAuthor)</td><td>%s(zComment)</td></tr>
  +
  +   free(zFNPath);
  +   free(zMtime);
     }
     db_finalize(&q);
     manifest_destroy(pM);
  -  @ </ul></td></tr></table>
  +  @ </table>
     style_footer();
   }
  </verbatim>



  <hr /><i>zachtodd added on 2010-11-30 14:47:12:</i><br />
  Not the most well formatted patch.  Adding as an attachment.


tkt_uuid: f90265fc83a6ca39998107a777d1ed6ef5d5edc3
type: Documentation
status: Fixed
severity: Minor
private_contact: da39a3ee5e6b4b0d3255bfef95601890afd80709
resolution: Fixed
title: branches
comment:
  Can you explain how to work with branches in details? For example with "mercurial" it woild be something like that:<br>
  # create testing branch<br>
  hg branch "testing"<br>
  # do some experimental work<br>
  ...<br>
  # back to main branch<br>
  hg branch default<br>
  <br>
  How can i do it with "fossil"?

  <hr><i>kkinnell added on 2009-01-29 17:06:09:</i><br>
  Please see the [./doc/tip/www/branching.wiki | branching] explanation by eric.  Required reading, really.


  <hr><i>eric added on 2009-01-29 17:14:24:</i><br>
  The above link is drh's new explanation. What I wrote originally was the [Branching | wiki entry on branching] which is now out of date (as it now says at the top).

  <hr><i>drh added on 2009-03-21 16:31:19:</i><br>
  Fixed by the addition of the [./doc/tip/www/branching.wiki | branching]
  document.


tkt_uuid: f91862eed36716dec2129daf75060e4905cbc409
type: Code_Defect
status: Fixed
severity: Important
foundin: 9a63d1f048
private_contact: d65c8f42ef81f14ced10171bf205f9a35ce6dff4
resolution: Fixed
title: annotations assign lines to incorrect checkin
comment:
  From the Tk chat:

  <pre>
  dgp	I think something is wrong with fossil annotations.
  dgp	Looking at [http://core.tcl.tk/tcl/ci/4683efaee9ca414d4ff2690ba19b3b7a6d1afaed]
  dgp	it's a small patch to tclListObj.c.  Introduces only five new lines.
  dgp	Then open [http://core.tcl.tk/tcl/artifact/31d1cfe5711802cce0d1ac7fa7a48c4c0607a63f]
  dgp	to see what tclListObj.c created by that checkin looks like.
  dgp	Then click the &#91;annotate&#93; link to reach [http://core.tcl.tk/tcl/annotate?checkin=4683efaee9ca414d&filename=generic/tclListObj.c]
  dgp	I would expect to see only those five new lines marked with 4683efaee9 but I see many more than that.
  dgp	starting with lines 21 & 22 or so which are nowhere near the patch.
  dgp	Conversely, those five new lines are marked with something else
  dgp	403736bc07 - which is the same patch, but the checkin applying it to core-8-5-branch.
  dgp	I'd have expected annotations to trace back the primary parent links, not the merges.
  </pre>

  <hr /><i>drh added on 2011-05-12 00:50:48 UTC:</i><br />
  The following is an explanation of the problem; not a solution.  I'm still
  not sure what the correct solution is.  The bottom line is that "annotate"
  or "blame" becomes complicated when you have lots of branching and merging...

  Refer to the history graph of the tclListObj.c source file here:
  [http://core.tcl.tk/tcl/finfo?name=generic/tclListObj.c&b=2011-04-28&a=2011-04-24]

  The current implementation of "annotate" starts with the requested node
  (31d1cfe5711802cc) and then works downward from there on the same branch
  to (66e766cf759f85cf) and (52cc348a24f17bca) and so forth.  But the five-line
  change mentioned in the problem statement above comes in from a different
  branch, specifically from (e25d618ef36a26ce) on the core-8-5-branch.  So the
  five-line change does not appear in the "annotate" output because it is
  a diff from one branch into another, whereas the current "annotate" only
  shows changes from versions on the same branch.

  It is unclear, yet, whether or not it is desirable to include "annotate"
  changes from other branches.  Perhaps this should be an option on the display.
  Further research is necessary...

  <hr /><i>drh added on 2011-05-12 01:13:35 UTC:</i><br />
  I'm no longer able to produce the original problem.  I think there was
  something wrong with the Fossil installed on core.tcl.tk and when I
  upgraded with the file history display enhancements, that fixed the
  issue.


tkt_uuid: fa403b6a123659d885e3b77fe9a5eccfb27d2340
type: Build_Problem
status: Fixed
severity: Important
private_contact: 76518fb407f147a1d053c00b5b993281a339c0e3
resolution: Fixed
title: Makefile for native MinGW
comment:
  Building Fossil on Windows with MinGW currently requires also MSYS, a small UNIX abstraction layer.

  The attached patch for makemake.tcl extends the range of generated Makefiles with one for native MinGW, no MSYS or awk required.

  Execute makemake.tcl from the Fossil toplevel directory as follows:

  $ tclsh src/makemake.tcl MinGW > win/Makefile.MinGW

  Specify the generated Makefile on the make command line:

  $ make -f <path to Fossil>/win/Makefile.MinGW

  I am using this Makefile with the MinGW Distribution from www.equation.com without problems.

  -- tsbg

  <hr /><i>anonymous claiming to be tsbg added on 2010-12-23 13:00:55:</i><br />
  When specifying the path to the MinGW Makefile on the make command line, use
  a relative path specification. For example:

  <verbatim>
  $ make -f ..\..\fossil\win\Makefile.MinGW
  </verbatim>

  This is because the Makeheaders program has a problem with full paths on Windows:

  <verbatim>
  $ makeheaders d:\dev\fossil\src\sqlite3.h
  Can't read input file "d"
  </verbatim>

  I think this is because the colon is used on Windows as a device name separator.

  -- tsbg


tkt_uuid: fb47088db591c3521d294dedcc7600577ceb22ca
type: Code_Defect
status: Closed
severity: Minor
foundin: [cb44f7dea4] 2010-05-24 18:43:32
private_contact: 3ee274ce2d2982add24b2405f53b32a02504dcd8
resolution: Not_A_Bug
title: The default editor on Linux is ed
comment:
  When new repository is created or cloned on Linux and changes are committed the commit log is opened in ed.

  I do have visual editors like sensible-editor, vi, vim, or even nano.

  <hr><i>eric added on 2010-05-26 18:12:00:</i><br>
  If you don't do a <verbatim>fossil set editor ...</verbatim> fossil checks the VISUAL and EDITOR environment variables, in that order, since they are the normal Linux/Unix way to set a default editor. If they don't exist either then fossil has very little choice but to fall back to the only editor that is almost certain to exist on every system. All other editors are optional.

  <hr><i>anonymous added on 2010-06-03 13:19:53:</i><br>
  ed is rather rare since sed is the standard for use in scripts for some time already.

  vi is much more likely to be present and more useful.

  <hr><i>eric added on 2010-06-04 22:44:46:</i><br>
  ed in scripts is rather rare (though not unknown), that's not what it's for. sed is almost as old as ed anyway.

  vi is a nightmare for someone who has used only GUI editors, and as for an emacs enthusiast's opinion of it...

  There is no way for Fossil to make the right choice, so it makes the traditional default choice. Set EDITOR in your .profile or whatever, and programs other than Fossil will use it too.


tkt_uuid: fb9a08bc0e836fc9c2cd9076bf481533985bd224
type: Code_Defect
status: Open
foundin: b48f78964e
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Open
title: Default user not respected for 'fossil tag'
comment:
  We have the default user (fossil user default XXX) set different than the system user running the commands.

  After setting tags to check-ins, I noticed that the artifacts created get "U system-user-name" instead of "U fossil-default-user-name".

  <hr /><i>renez added on 2010-09-30 21:25:30:</i><br />
  If i understand you right then
    *  login tag creator is john AND john is defined as a fossil user
    *  the default user is doe
    *  if john executes "fossil tag new johntag" (in an open checkout!)
    *  then the tags are marked with user john
    *  if lear executes "fossil tag new leartag" and he has no fossil login and user anonymous has right to  tag Then the default user doe is used!

  I don' think it is a defect could you check again?


  <hr /><i>anonymous added on 2010-10-01 19:09:16:</i><br />
  I cannot reproduce this again. It was on cygwin.

  Nevertheless I think it was not the situation you explain. I will open a ticket with clear steps of reproducing the problem, if I can.

  Thank you.


tkt_uuid: fba687385ffa1096b1a4622dbaddf4b6e693adb9
type: Incident
status: Closed
severity: Important
foundin: 73c24ae363
private_contact: cb9895983f32946f27a57b1ea169270321707822
resolution: Not_A_Bug
title: Successful merge (no conflicts) cannot be checked in
comment:
  I was following the tutorial on Branching/Tagging/Merging and was trying to emulate the situation on Figs 2 & 3.

  I checked out the text file from the trunk branch, and ran the "fossil merge" command followed by the version number of the fork's leaf. The merge appeared to be successful since no conflicts were listed, but when I tried to commit it, I got the message "fossil: cannot do a partial commit of a merge." Doing it the other way (merging the one from the trunk into the forked leaf) got me the same result: merge had no conflicts, but Fossil cannot check it in.

  Sorry if I cannot look into the underlying code, I'm no programmer. I'm using Fossil mainly for my writing projects, since it's pretty much self-contained. I hope to hear from you guys soon!

  Thanks,
  Isxek

  <hr><i>drh added on 2010-05-04 11:29:24:</i><br>
  After a merge, you need to commit the entire tree, not individual files.

  <blockquote><pre>
  fossil commit
  </pre></blockquote>

  Not

  <blockquote><pre>
  fossil commit somefile.txt
  </pre></blockquote>


tkt_uuid: fbea61caf0acfd0a031626c2622ade980a03d7f1
type: Code_Defect
status: Closed
severity: Important
foundin: [6f42e76d80]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Open
title: fossil needs a rebuild after receiving a new baseline checkin
comment:
  After using a branch with delta manifests, at some point a new baseline manifest will be created. On sync, other fossil repository copies will fail to show the delta manifest checkins coming after that new baseline manifest.

  A 'rebuild' on those fossil repository copies fixes the situation.

  (This was discussed in the mailing list [http://www.mail-archive.com/fossil-users@lists.fossil-scm.org/msg03368.html|here])

  <hr /><i>anonymous claiming to be viric added on 2011-02-07 18:46:11 UTC:</i><br />
  We are still hitting this problem constantly, both in windows and linux.

  Any chance for someone to look at it?

  <hr /><i>drh added on 2011-02-07 21:43:20 UTC:</i><br />
  I'm still unable to recreate the problem.  Trying lots of different combinations
  of pushing and pulling with a mixture of delta and baseline manifests.  It 
  always works for me.  Any hints will be appreciated.

  <hr /><i>anonymous claiming to be viric added on 2011-02-10 20:54:49 UTC:</i><br />
  I found this:
  <verbatim>
  sqlite> .schema orphan
  CREATE TABLE orphan(
    rid INTEGER PRIMARY KEY,
      baseline INTEGER
      );
      CREATE INDEX orphan_baseline ON orphan(baseline);
  sqlite> select * from orphan;
  8024|8031
  sqlite> select * from blob where rid=8024 or rid=8031;
  8024|26|257565|5d6a9957808c417aae6f41c8c9cda1dc6e3bffbb|
  8031|26|347|66514ffdad03438ddda7145dbedbed7f2e72a294|
  </verbatim>

  The first, 8024, is the BASELINE manifest artifact, that shows fine in all
  fossil operations. 8031 is the next DELTA manifest artifact, that does not show.
  No artifact after that shows, either.

  And as I told before, in the many times I've hit this problem, "fossil rebuild"
  fixes the situation.

  I keep on investigating, although of course I don't know much about what fossil
  should be doing in terms of sql operations/function calls.

  I'm only trying to ring a bell to drh.


  <hr /><i>anonymous claiming to be viric added on 2011-02-10 20:58:36 UTC:</i><br />
  I have two suppositions, meanwhile:
    *  The artifacts are interchanged in no particular orther, and if a DELTA manifest is transferred  before the BASELINE manifest it refers to, it ends up in the 'orphan' table.
    *  The orphan database is written with the rid/baseline members swapped.
  <verbatim>
        rid = content_new(p->zBaseline);
        db_multi_exec(
           "INSERT OR IGNORE INTO orphan(rid, baseline) VALUES(%d,%d)",
           rid, p->rid
        );
  </verbatim>

  <hr /><i>anonymous claiming to be viric added on 2011-02-11 12:24:41 UTC:</i><br />
  I've seen the fix in trunk; I'll close the ticket when I'll find the opportunity to test it (on the next baseline commit).


tkt_uuid: fbfe43e153ee0e1de9df4d0e51dc1d0e2fce85e0
type: Code_Defect
status: Fixed
severity: Severe
foundin: 356e877cea
private_contact: 277de4eda861e8a6d011b60d4006a963a4c7c474
resolution: Fixed
title: shash pop will drop the stash even if it could not apply it.
comment:
  Hello,

  Say that my <tt>_FOSSIL_</tt> file is in <tt>/home/project1</tt>

  I am in <tt>/home/project1/foo</tt>

  <tt>fossil changes</tt> tells me that <tt>foo/bar/baz.txt</tt> and <tt>bar/foo/baz.txt</tt> have both changed. What it lists are paths relative to the directory where <tt>_FOSSIL_</tt> is. Those paths are not relative to my CWD.

  <tt>fossil stash save -m hello foo/bar/baz.txt</tt> <b>should fail</b> because it expects a path relative to the CWD, but it will revert both files and make a stash from them.

  Then, <tt>fossil stash pop</tt>, which seems to expect me to be at the root of the working tree, will try to apply the stash, fail to do it, but still drop it, <b>potentially losing work</b>. It should have kept the stash because it could not apply it.

  I was lucky to have a recent diff generated by fossil with which I was able to recover my work (two days).


tkt_uuid: fc0838fc72f079d2033ae32aba72cdf3c5e30bb9
type: Documentation
status: Closed
severity: Cosmetic
private_contact: c97e843f081690f85b74af2f555ebcc5dd57f8be
resolution: Fixed
title: Trivial typo in help text
comment:
  <verbatim>
  C:\Users\victorl>fossil help deconstruc
  Usage C:\Users\victorl\fossil.exe deconstruct ?OPTIONS? DESTIONATION
                                                              ^^^^
  </verbatim>

  <hr /><i>bharder added on 2011-06-30 17:42:06 UTC:</i><br />
  Fixed w/ [e50813e19b5adaaf]


tkt_uuid: fc428d2107d6b810fff67892896137c66abd3484
type: Code_Defect
status: Fixed
severity: Important
foundin: trunk
private_contact: d6f2a74089d9103282b467c349a7ad1d144e22c6
resolution: Fixed
title: fossil extras generates SQL error after c193d2c2e0
comment:
  Running `fossil extras` on seemingly any repository generates this error:
  fossil: SQLITE_ERROR: near ",": syntax error
  fossil: near ",": syntax error
  SELECT x FROM sfile WHERE x NOT GLOB ('manifest','manifest.uuid','_FOSSIL_','_FOSSIL_-journal','.fos','.fos-journal');   AND NOT 0 ORDER BY 1

  Reverting the GLOB function back to IN as it was before seems to fix the issue:
  -      " WHERE x NOT GLOB ('manifest','manifest.uuid','_FOSSIL_',"
  +      " WHERE x NOT IN ('manifest','manifest.uuid','_FOSSIL_',"

  <hr><i>rwilson added on 2010-05-12 14:09:08:</i><br>
  fixed by checkin [b24b2e1bba681bc13fa17830a6f874e36628d644]


tkt_uuid: fc825dcf52c4932a38138101b2a9899ce3c0fbc3
type: Code_Defect
status: Fixed
severity: Important
foundin: any
private_contact: ddae85699df0ae84ab8e0a6a6dacf72bab6d4a7a
resolution: Fixed
title: "config pull all" asks to approve ssl cert
comment:
  I have a repo on an https: address which uses a self-signed certificate.

  When I do a "fossil config pull all", fossil asks if I want to accept the certificate (even though I've already accepted it (and "fossil pull" works fine).  I get this every time I do a config pull.


tkt_uuid: fca5ce18c07c290f4a9939022165425de132284f
type: Code_Defect
status: Fixed
foundin: [dbe1e68e43] 2011-06-15
resolution: Fixed
title: The timeline per user does not take into account user changes in checkins
comment:
  For example:

  [http://fossil-scm.org/index.html/timeline?u=viric&c=2011-06-17+20%3A13%3A42&nd]

  [http://fossil-scm.org/index.html/timeline?u=viriketo&c=2011-06-17+19%3A09%3A45&nd]


tkt_uuid: fcadf658ed282b3a2769cabf915d76125ba7eeda
type: Code_Defect
status: Fixed
severity: Minor
foundin: [b48f78964e]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Open
title: Checkin ui edit "propagate color to descendants" problem
comment:
  If the checkin already has a color set, and you click 'Edit', ticking or not ticking "Propagate color to descendants" makes no effect.
  It only makes effect if you change the color from what it was.

  <hr /><i>anonymous claiming to be viric added on 2010-12-17 22:11:56:</i><br />
  Hello drh,

  I think the change in [2080d52168] does not handle the case of "disabling the propagate color to descendants", if it was enabled.

  Did you mean this?


tkt_uuid: fcbcdb66ff0e8a6f19a628e6d5354f256a3cc859
type: Code_Defect
status: Fixed
severity: Important
foundin: 99a98377ec
resolution: Fixed
title: Mac OS/X 10.5 build fails
comment:
  After latest changes, sqlite is not building:
  <nowiki><pre>
  gcc -g -Os -Wall -DFOSSIL_ENABLE_SSL  -I. -I./src -DSQLITE_OMIT_LOAD_EXTENSION=1 -DSQLITE_THREADSAFE=0 -DSQLITE_DEFAULT_FILE_FORMAT=4 -Dlocaltime=fossil_localtime -DSQLITE_ENABLE_LOCKING_STYLE=0 -c ./src/sqlite3.c -o ./obj/sqlite3.o
  ./src/sqlite3.c: In function 'unixOpen':
  ./src/sqlite3.c:25811: error: storage size of 'fsInfo' isn't known
  ./src/sqlite3.c:25812: warning: implicit declaration of function 'fstatfs'
  ./src/sqlite3.c:25811: warning: unused variable 'fsInfo'
  make: *** [obj/sqlite3.o] Error 1
  </pre></nowiki>


tkt_uuid: fd42f1fc3d373e443e22715e28435efebdb031c1
type: Feature_Request
status: Open
severity: Minor
foundin: 355e34ba9d
private_contact: 568a33e3c62e93da9a0ef4ccfed20f4986f72fe1
title: request to add ticket Comment in RSS feed
comment:
   The RSS feed titles show the Comment for Check-in items. I find this useful because a project synopsis is available without having to
   click on anything.

   However, a New or Closed ticket only includes the ticket # with no information about the ticket itself.

   I suggest that New and Closed ticket entries in the RSS feed include
   the specific ticket # and the Comment for the ticket.

  Michael McDaniel


tkt_uuid: fd5f24a5ca7e85d7290de7b1a0942f9bf9ce707c
type: Code_Defect
status: Open
severity: Cosmetic
private_contact: bfe18fbf3677b2933b8003f336ea606efcd4a006
resolution: Open
title: fix for nestled html tags in diff view (and additional stuff)
comment:
    #  bug fix for nestled p's in diff view
    #  some additional classes to facilitate access via CSS
    #  JS-poisoning to colorize the diff view and annotation
    tested in some web browsers (Opera, FF, Chrome) and also in IE 8

  <hr /><i>zachtodd added on 2010-12-01 21:38:31:</i><br />
  This looks very promising.

  <hr /><i>anonymous added on 2010-12-03 11:04:31:</i><br />
  Thanks, but I thing it can be better done in native C and the main goal is the point 2. Unfortunately, I'm not a good programmer.

  The latest versions of fossil contains also some XHTML and CSS bugs an invalid definitions (5+) in the themes. Some browsers will be very angry and do something else.


tkt_uuid: fe5b460867a187cd32a12e04db62392871c4c38b
type: Code_Defect
status: Fixed
severity: Minor
foundin: 472f9411ee
private_contact: 2b0c085a4974b7df6efb6d6a0863ff8dda5bf37d
resolution: Fixed
title: Typo in "anonymous" user name on instructions on Edit User page
comment:
  On my brand new fossil install, I go to edit users: http://leeuw.local:8080/setup_uedit?id=3

  On that page, I read: 
  Users with the Password privilege are allowed to change their own password. Recommended ON for most users but OFF for special users "developer, "anonynmous", and "nobody".

  Note the typo: anonynmous -> anonymous

  <hr><i>drh added on 2009-03-21 16:22:51:</i><br>
  Fixed by check-in [5ab6f985b94ab9a732d9b2b35627801e2f780231]


tkt_uuid: feb61a11a0f8f911d72347daf334b76766e3a66a
type: Feature_Request
status: Closed
priority: Zero
severity: Cosmetic
resolution: Duplicate
title: XHTML standard compliance
comment:
  It would be just "nice-to-have" an XHTML standard compliant output from fossil. And it is not too hard to do. If there is nothing more to do :-)

  <hr><i>anonymous claiming to be Ilia Frenkel &lt;ilia@ilia.org.il&gt; added on 2008-12-02 10:21:59:</i><br>
  Forgot to mention my name.

  <hr><i>anonymous added on 2010-03-03 06:20:52:</i><br>
  Related to: <a href="http://www.fossil-scm.org/fossil/info/0049db245e">0049db245ef59671d4fcefd45c02e37a70e2b622  (Firefox HTML Validator thinks all pages are full of errors)</a>

  <hr /><i>dmitry added on 2011-09-08 19:34:49 UTC:</i><br />
  XHTML is dead, Fossil uses HTML5 doctype, validation errors are tracked in the ticket mentioned above.


tkt_uuid: feeb8a91eb838f743ae9ac2de426f60bcadeefee
type: Incident
status: Fixed
severity: Minor
foundin: [115f3ea60e] 2010-11-16 23:16:20 UTC
resolution: Fixed
title: "Unsupported command: blob" error during Fossil to Git export
comment:
  Converting a clone of the Fossil repo to Git produces the following error:
  <verbatim>
  $ fossil export -R ../fsl.fsl | git fast-import
  fatal: Unsupported command: blob
  fast-import: dumping crash report to .git/fast_import_crash_4728
  </verbatim>

  This was done on a Windows 7 box using msysGit (with Git v1.7.3.1).

  <hr /><i>drh added on 2010-11-17 12:46:38:</i><br />
  Perhaps this is the notorious windows
  NL -> CRNL issue that I still do not know
  how to solve.  Can you try the same export on Linux or Mac?


tkt_uuid: ffa87168ce1b5528e9cfb7b1f41b292af8cf2bb4
type: Code_Defect
status: Fixed
severity: Important
foundin: 6ed7ceb1dee5b273d02aca78a2b313e443e9f98f
private_contact: ddae85699df0ae84ab8e0a6a6dacf72bab6d4a7a
resolution: Fixed
title: Update after clone requires reset of login information
comment:
  When doing "upd" after having done a "clone", the first time, one needs to enter password information again (actually, the stored password info is incorrect).

  I have attached a bash script to show the problem.

  Here is the output from the script:

  <verbatim>
  lap: ~/tmp$ ./testfossil.sh 
  project-id: 8a46654dc533fbd7a53f43a56919e4fe19ea590c
  server-id:  fce4372a0950404edb9eea18118d1a737694ce9e
  admin-user: tester (initial password is "8ad07e")
  password for tester: 
                  Bytes      Cards  Artifacts     Deltas
  Sent:              53          1          0          0
  Received:         342          5          1          0
  Sent:              58          2          0          0
  Received:         634          2          0          0
  Total network traffic: 540 bytes sent, 1129 bytes received
  Rebuilding repository meta-data...
    100.0% complete...
  project-id: 8a46654dc533fbd7a53f43a56919e4fe19ea590c
  server-id:  96dcfa3eeda2dd9b6a15cd4fcc5f2fc4270ea2b1
  admin-user: ron (password is "0b7842")
  Autosync:  http://tester@localhost:8080/
                  Bytes      Cards  Artifacts     Deltas
  Sent:             130          1          0          0
  Error: login failed    
  Received:          52          1          0          0
  Sent:             130          1          0          0
  Error: login failed    
  Received:          52          1          0          0
  Sent:             130          1          0          0
  Error: login failed    
  Received:          52          1          0          0
  Total network traffic: 1036 bytes sent, 804 bytes received
  fossil: Autosync failed
  </verbatim>


tkt_uuid: ffcf5b9f623dd30a7da0d862432576f9a29ab593
type: Feature_Request
status: Open
severity: Minor
private_contact: ddae85699df0ae84ab8e0a6a6dacf72bab6d4a7a
title: Add 'append' to 'wiki' command
comment:
  Currently, I do a "wiki export", append my text, and "wiki commit" when I want to append to a wiki page.

  What I would like is a way to add text to the bottom of a page (not necessarily with the datetime stamp the 'wikiappend' page uses) from the 'wiki' command.


tkt_uuid: ffec86070988fda70aeabd3a100238766b766627
type: Documentation
status: Fixed
severity: Cosmetic
foundin: d2bec5a1d4
private_contact: 6ba147a4218010d3c6ffddc5ed73dc017a44bf3c
resolution: Fixed
title: trivial html typos
comment:
  patch fixing trivial html typos in http://cvs.bcl.hamilton.ie:8080/vinfo/053624c3c55863f5f3e1e93b8bfac05bd3629604


tkt_uuid: 1038e224fa3956f9c004a714f40a4a42c9ba1a1c
type: Code_Defect
status: Fixed
severity: Minor
foundin: 1.24
private_contact: dd31bce8c8757196e5e2e9600603152d1b3fe3c1
resolution: Fixed
title: problems setting admin user at init
comment:
  Maybe I'm missing something, but it worked before.

  When setting up a repository with a custom admin user Like thus:

  fossil init --admin-user=myadmin test.fossil

  I get the error:

  Cannot figure out who you are!  Consider using the --user<br>
  command line option, setting your USER environment variable,<br>
  or setting a default user with "fossil user default USER".<br>
  fossil: cannot determine user<br>

  This did however work on Ubuntu's default version 1.21. What changed and what am I doing wrong?

  Not setting a user simply works.

  OS: Ubuntu 12.04.1-64


tkt_uuid: 10aee063c413c107e3164cd8d07fa7d9e8a807c2
type: Code_Defect
status: Fixed
severity: Critical
foundin: all
private_contact: 9fe6310800b1726f3547ec9650bd8e77ed1325f2
resolution: Fixed
title: Fossil didn't support for UTF8 to storage filenames.
comment:
  Add a file named with 中文.txt
  then fossil can not add it.
  under win32, GBK ANSI.

  <hr /><i>jan.nijtmans added on 2012-11-18 22:33:12 UTC:</i><br />
  This worked in version 1.24, but now it is temporary
  disabled since [fca9c52637]. Hopefully a solution
  for [8ca2aae391] will be found soon, so this can be
  enabled again.

  <hr /><i>anonymous added on 2012-11-19 07:31:25 UTC:</i><br />
  It's not because of UTF8, it's because of []

  <hr /><i>jan.nijtmans added on 2012-11-19 11:15:03 UTC:</i><br />
  I don't believe it's because of &#91;&#93;
  <p>The hex representation of those Chinese characters in UTF-8 is
  "e4 b8 ad e6 96 87", there's no &#91;&#93; in there.
  <p>Still it's important to know exactly what fossil version the 'bug' was encountered. Without that, we are only guessing.

  <hr /><i>anonymous added on 2012-11-19 12:04:28 UTC:</i><br />
  This bug is reported by me, and I know that it's because of '[' and ']'.

  D:\CI\tools>cd ..

  D:\CI>fossil open tools.db

  D:\CI>fossil add tools\中文.txt
  ADDED  tools/中文.txt

  D:\CI>cd tools

  D:\CI\tools>copy 中文.txt 中文[1].txt
          1 file(s) copied.

  D:\CI\tools>cd ..

  D:\CI>fossil add "tools\中文[1].txt"
  fossil: filename contains illegal characters: tools/中文[1].txt

  D:\CI>


tkt_uuid: 1150abdbeed5d51cb3ebbe0c340d0c17fc61f2ce
type: Feature_Request
status: Closed
severity: Minor
private_contact: 1ce552a72be2cfbe25c7158568345c8dbbd93fc6
resolution: Fixed
title: option to limit the scope of extra and clean commands
comment:
  It would be helpful if I could perform extra and clean commands on specific directories within the repository as opposed to the entire repository.


tkt_uuid: 15f44789de1acaa39f094d6bf1771a01b3d9eeb5
type: Feature_Request
status: Closed
priority: Low
severity: Minor
foundin: 391ef2853b
resolution: Fixed
title: Restore rstats command
comment:
  While not a big deal, the rstats command was nice.  It went away after the GPL -> BSD conversion.

  It worked like so (which should be enough for a clean room reimplementation):

  <verbatim>
  $ fossil help rstats
  Usage: fossil rstats

  Deliver a report of the repository statistics for the
  current checkout.

  $ fossil rstats
   Number of Artifacts: 7691
    2251 full text + 5440 delta blobs
   41348 bytes average, 318009144 bytes total

    Number Of Checkins: 1811
       Number Of Files: 362
  Number Of Wiki Pages: 20
     Number Of Tickets: 494
   Duration Of Project: 1123 days
  </verbatim>

  It would be nice to have it back.

  <hr><i>bcsmith added on 2010-08-18 03:12:37:</i><br>
  Hi,

  If you navigate to the Admin section of the web interface, you'll find near the bottom a 'Stats' link which contains the above information (and some other). Is this not sufficient?

  Thanks,

  -B

  <hr /><i>anonymous added on 2010-11-11 10:40:52:</i><br />
  Hello

  Cant read it from console and parse it anymore.

  -OL


tkt_uuid: 23b4017c39727ad02e7318d0c59e3a6180218632
type: Feature_Request
status: Closed
severity: Minor
private_contact: ddae85699df0ae84ab8e0a6a6dacf72bab6d4a7a
resolution: Not_A_Bug
title: Change compiler flags on TCC to use '-O3'
comment:
  Compiling with "-O3" (instead of the default "-Os") speeds up all operations (though it makes compilation slower).

  As a specific example, it make my huge repository "add" operation go from 18 seconds to 6; likewise, "update" went from 14 to 5.  

  I don't think there are any real problems with the optimizers in recent GCC builds, at least I haven't encountered any.


tkt_uuid: 2600e5a50de33acfbeb4ca1085d500619deab73f
type: Feature_Request
status: Closed
foundin: [f105bc17a0]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Rejected
title: Add a simple read-only WebDAV access
comment:
  A little implementation of WebDAV would allow mounting directly repositories, like with [http://noedler.de/projekte/wdfs/|wdfs] (FUSE webdav client).

  I've always seen this feature in svn repositories served through http or https, and it allows easy browsing of a project by simply mounting its upstream repository as a network filesystem.

  wdfs even has a <tt>svn_mode</tt> that puts into the filesystem a subdirectory where all versions go, to be able to have in the filesystem tree multiple revision of the concerning svn subdirectory mounted.


tkt_uuid: 2cfd96b2ba71370fdaf3dd60d068f6987b1999d2
type: Feature_Request
status: Closed
severity: Important
foundin: 047e06193b
private_contact: f9dfc6dbcfe1f4499e7151278fe2f4ba55af9606
resolution: Fixed
title: Improve ignore-glob
comment:
  When working with multiple 3rdparty libraries and generated files the <code>ignore-glob</code> entry gets unwieldy. For instance my current:
  <blockquote><code>*~,*.org,*/tags,*/types_c.vim,*.dep,*.dll,*.exe,*.exp,*.idb,*.ilk,*.lib,*.manifest,*.ncb,*.o,*.obj,*.pdb,*.res,*.suo,*.user,*/Debug/*,*/Release/*,*/Win32_LIB_Debug/*,*/Win32_LIB_Release/*,*/debug/*,*/obj/*,*/release/*,*/BuildLog.htm,src/3rdparty/lua/work/*,src/3rdparty/ogre3d.org-out/*,src/3rdparty/MyGUI/MyGUI-src/Docs/Doxyfile,src/3rdparty/MyGUI/MyGUI-src/Docs/html/*</code></blockquote>
  While this is manageable with a decent text editor (<small><code>s/,/<c-v><cr>/g</code></small>), an expanded format would be very welcome.

  I propose little more than changing the setting page's <code>ignore-glob</code> input ctrl to a multi-line input ctrl, and accepting a pattern per line in addition to the comma separated list that is current.

  Further enhancement could include comments. (I found such rather handy when using Mercurial)

  Thank you for Fossil (=


tkt_uuid: 3e6775edfe5ece6ec0159a8f2fb2b250b87f43fa
type: Code_Defect
status: Open
severity: Important
foundin: [d63f87c003] 2009-03-22 13:44:43
private_contact: f90bcb24dfca980c917cc6e29c04b9cd06605ba9
resolution: Open
title: Can't pass html comments through wiki.
comment:
  I can't get the html <!-- comments --> through the wiki parser.

  Why is this important?

    1  Modifications to some documents are required to have copyright notices
       included in any derived work.

    2  Converting current html documentation to wiki format would be easier if
       I didn't have to strip out comments.

  The security issue could be avoided by converting everything within the comments to safe html but leaving the comment tags themselves.

  <hr><i>anonymous claiming to be kkinnell added on 2009-05-27 15:46:17:</i><br>
  Actually, I had added an 'annotate' tag in the kkinnell-exp branch.  What it did
  was to strip out the text between the opening and closing tags.  Completely strip it out, so that a "view source" from the browser wouldn't see it.

  That was perhaps a bit of creeping featurism (as Richard pointed out at the time) and I was going to make html tags work instead, but <i>I thought</i> someone beat me to it.

  If not, the code in that branch is a decent start--take a look at what was added for the annotate tag and treat the text recognized between start and end comment tags the same way.  It's recognizing the comment tags that's the hard part.  &lt;!-- and --> are asymmetrical (and not orthogonal w/ respect to the rest of html) and parsing them may lead to grief, madness, and atonal music.

  Or you could wait until I shake loose at work and have some time to work on it again.

  <hr><i>robert added on 2009-05-30 15:24:38:</i><br>
  Yes, I saw your code, but one of my main wishes was to make it easier
  to convert existing html documentation to wiki format, your solution does not do this as I would have to parse the code and wrap the comments in 'annotate' tags.  In addition I wanted the comments to be passed to the browser as one of the main uses was to include copyright/license info.

  < !-- -- > is standard html/xml markup, so if its madness the whole world is mad :) Why add a new markup when an existing markup already exists? I'm not sure how asymmetry/orthogonality is relevant.  Also recognizing comments does not seem to be all that difficult.

  I've put a prototype of my own pass-comments code in the [http://www.fossil-scm.org/index.html/timeline?t=pass-comments|robert-exp] branch. This branch can be seen working live at [http://pytrash.co.uk/cgi-bin/JavaScriptShell|JavaScriptShell].




  <hr /><i>viriketo added on 2011-04-28 10:35:11 UTC:</i><br />
  I'd like something that lets me type text on wiki pages that will not appear in the rendered browser windows.

  I don't mind a solution that is not <!-- -->, but the easier it is to type, the better. I want it to keep comments on the information of the page, that I'd read only reading wiki file source.


tkt_uuid: 43bf069f44586396669e7b3e2e75e5245950293c
type: Feature_Request
status: Open
severity: Minor
foundin: 73c24ae363
resolution: Open
title: rebuild hint after updating to a newer fossil version
comment:
  i dont know if its a lack of documentation or if its just me, but i am confused about when to do a rebuild.

  ok i know that if the table structure of fossil changes, i have to do a rebuild.
  but looking from the end-user perspective, i have no clue when an update changes the structure and when not.

  i am still new to fossil, but as far as i know the user updates, try to executes a command and the command fails due to an old table structure and the user have to be so "clever" to rebuild before submitting a ticket...

  what about saving inside the table structure the fossil version from the last rebuild and check for this version by every command. if i update now fossil, it recognizes that the structure is to old and gives a hint or just do a rebuild.


tkt_uuid: 46bf4baedcea6ca9df279e3ddd813c263db46f1c
type: Code_Defect
status: Fixed
severity: Important
foundin: 94bb313444
private_contact: d4bb048456b44e51cafa61c59ddc503a345fe5d0
resolution: Fixed
title: wrongly reported illigal character, "[" and "]"
comment:
  This has been tested under windows only.

  Create a file named: $ () + ,-!= @ [ ]^_{ }~.txt 

  This file is perfectly legal under windows (WinXP) but if i try to add it via:
  fossil add "testCase-fileUpload\$ () + ,-!= @ [ ]^_{ }~.txt"

  I get 

  fossil: filename contains illegal characters: testCase-fileUpload/$ (
  ) + ,-!= @ [ ]^_{ }~.txt

  Basically it chokes over the  &#93; and &#91; characters.

  Regards.

  <hr><i>drh added on 2010-02-10 13:20:00:</i><br>
  The &#91; and &#93; characters are also legal for Unix filenames.  (Any character 
  other than 0x00 and / is valid in a unix filename.)  But &#91; and &#93; are used
  as globbing characters by the shell, so there use must be escaped in the shell.
  this can lead to subtle problems.  So as a safety mechanism, I deliberately
  disallow such filename characters in Fossil.

  Behavior is by design.

  <hr /><i>anonymous added on 2012-11-19 01:46:46 UTC:</i><br />
  Yes, I agreed [ and ] has special usage under Unix, but I am a Win32 user, and I have a lots of files contains [ and ]. So I think we should add a option to check whether we need to valid those characters, by default, it's ON, but I can choose to disable it(OFF to check it) . It's the only blocker stops me to use fossil..


tkt_uuid: 474bf7c70e5f7d531940827e69a3a89a9a4c2543
type: Incident
status: Closed
priority: Medium
severity: Important
foundin: 6021279637
private_contact: 7d648926689058d41bb399cda295099d354b5b7d
resolution: Works_As_Designed
title: fossil-w32-20090911230450.zip can not commit with Cygwin GnuPG.
comment:
  "fossil commit" runs gpg after notepad.exe is closed, but cygwin gpg is freezed. 

  But I use fossil which is built from source (fossil-src-20090911230450.tar.gz), gpg is not freezed.


tkt_uuid: 4a4c10dcd8ddcbaed00d62a403761046870cb5e2
type: Feature_Request
status: Open
severity: Important
foundin: 0018d724b3
private_contact: 142de1aaa3c6b6828c4cb71e1c6c3e3202b0352f
resolution: Open
title: Tickets: add pagination to the reports
comment:
  Reports like 'all tickets' would greatly benefit from being split into pages of configurable size. The number of tickets to show on a page could be stored in a report template.<br>
  Alex.


tkt_uuid: 5927b038735a081b8490990fbff378178c6d7d20
type: Feature_Request
status: Closed
severity: Minor
foundin: bc427ad727
private_contact: e33581e4165859602178a8051fc827bcbd3ca7a2
resolution: Duplicate
title: Make timeline machine readable
comment:
  I would like timeline to produce output that is machine friendly to scripts
  that process it. 

  I am trying to automate the building process of my software and
  I would like to use tags of the form: RELEASE-1.6.10 which can be
  embedded in the program so that users get a nice human-friendly version 
  number.

  Timeline has the feature of showing all checkins that descend from current.
  The intention is to feed this into a script which cna detect if a RELEASE
  has already been used.

  The problem is that timeline sometimes splits a tag onto two lines.

  Here's an example:

  === 2011-04-10 ===
  20:44:26 [59a3f097fb] junk (user: davidevans tags: tiger-branch, RELEASE-
           1.6.10, jjjj)

  This makes life very difficult for script writers.

  Could we please have an option of timeline that produces machine-readable
  text ?

  example
  2011-04-10T20:46:20 [acdf123456] commit message (user: joe tags: RELEASE-1.6.99 tiger-branch )

  <hr /><i>anonymous added on 2011-04-11 10:45:51 UTC:</i><br />
  In my message, the posting software has gone and combined separate lines back into one.

  Believe me, fossil really does split RELEASE-1.6.10
  into

  RELEASE-

  and 

  1.6.10


tkt_uuid: 620506c3b211ff839d11230a6e2a31128de94bf4
type: Feature_Request
status: Closed
severity: Important
foundin: 1.20
private_contact: b3f3f0eaabcdc34f384a64b35b934859bb811f9e
resolution: Rejected
title: Need a "read only my tickets" permission
comment:
  There should be an option to give users a way to add tickets and then read <em>only their own tickets</em>. This is useful if we want the users isolated. For now it seems that it is possible to let user add tickets and not read any. But then he can't see any response to the problem he reported.


tkt_uuid: 63cc656c9dfef126817a50e207f1170bb6f8b979
type: Feature_Request
status: Fixed
severity: Important
foundin: current
private_contact: 4be7b397cc5beaa1407baac7b9ae5129f1b0226d
resolution: Fixed
title: Option to force binary file commits
comment:
  I am writing a Windows-based GUI front-end to your excellent DVCS. My aim is to allow "ordinary" users the benefit of revision management on any file they choose. I also have selfish reasons as a developer to maintain local changes for my employment (we use Subversion).

  My front-end calls FOSSIL.EXE to perform the work and is working beautifully for basic usage. However, when attempting to commit binary files I need a way to force the commit without having to answer this question:

  ./pic.png contains binary data.  commit anyhow (a=all/y/N)?

  <hr /><i>mistachkin added on 2012-11-11 03:28:58 UTC:</i><br />
  This can be bypassed by setting the "binary-glob" setting to include the necessary file types, either using the versioned setting file (i.e. and checking it into the repository itself, see "http://www.fossil-scm.org/xfer/doc/trunk/www/settings.wiki") or via the admin settings interface.


tkt_uuid: 67176c3aa4c3ccfff98ad08c4845f7380a58fa98
type: Code_Defect
status: Closed
foundin: [cf178577ec]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Unable_To_Reproduce
title: Changes silently lost merging with renames
comment:
  A friend of mine told me a case that made him refuse use fossil at all. I could reproduce it, and it scared me also.

  <verbatim>
  echo Hello > a.txt
  fossil add a.txt
  fossil commit -m "new file"
  echo newline >> a.txt
  fossil commit --branch b -m "new branch with a new line"
  fossil update trunk
  fossil mv a.txt b.txt
  mv a.txt b.txt
  fossil commit "rename on trunk"
  fossil merge b
  # It does not warn about anything, considers the merge clean
  # and the file b.txt does not have the new line on a.txt
  </verbatim>

  <hr /><i>anonymous added on 2010-12-09 21:35:09:</i><br />
  Merging in the other direction, from "b" running "merge trunk", also ends with the file renamed but the new line lost.


tkt_uuid: 74782e5f7cf9c3b3430c1b6debbc57c20fe7f3f8
type: Feature_Request
status: Closed
severity: Cosmetic
private_contact: ab5c04693d4ea3b3339a1e41947ceb8da8054625
resolution: Rejected
title: auto-discovery of a repository from a webpage
comment:
  It would be a nice addition if there was a way for a webpage to specify where its source repository was, for example by including a html link element in a webpage - 
  <link rel="fossil-repository" href="http://www.fossil-scm.org">
  This way, one could easily get to the source repository even if the site url is not being served by fossil directly.  

  It wouldn't make sense for this to be built into "clone"; a separate "autoclone" command that fetched the given url and looked for the link reference and then called "clone".   This functionality can be achieved with an external 2-line shell script, but that goes against fossil's all-in-one philosophy.

  <hr><i>drh added on 2010-03-19 01:06:30:</i><br>
  I do not understand what is being requested here.  Please elaborate.

  <hr><i>anonymous added on 2010-03-19 02:47:35:</i><br>
  It would not be a stretch to say that this feature request is poorly thought-out, needless bloat, or unnecessary.

  The inspiration comes from setting up a self-hosted project on sourceforge.  The project homepage is http://myproject.sourceforge.net/ which can be redirected (with php) to some other page.  As it stands, I don't think fossil will follow a 301/302 http redirect, so it would do no good to instruct people to "fossil clone http://lilypad.sourceforge.net".  They need to find the explicit url of the repository and use "fossil clone http://lilypad.sourceforge.net/cgi-bin/lilypad.fsl"   But wouldn't it be nice if they could just use the home page?  

  Just following redirects is helpful but not enough - what if the home page is still some plain html page?  So instead, if the home page had some indicator on it to allow a program to discover where the source is (similar to rss autodiscovery) then an interested user/developer could clone the repository right from the home page, without needing to track down the link to the actual repository.  (I don't know if any other systems have a similar convention, but if such a thing became widespread the search engines could make use of it)

  The effect would be roughly the same as the shell command:

  $ fossil clone `curl http://app-landing-page | grep '<link rel="fossil-source" '| sed 's/.*href="[^"]"/\1/'`

  <hr><i>anonymous added on 2010-03-19 06:48:33:</i><br>
  IMO, it is not a problem of fossil. Use RewriteEngine or whatever else. It would be enough. My Apache .htaccess is like:
  <verbatim>
  # You don't need this part:
  <FilesMatch "\.repo$">
    Options +ExecCGI
    AddHandler cgi-script .repo
    RewriteEngine Off
  </FilesMatch>

  # But you need this (you might want to replace foo.repo with /cgi-bin/foo.cgi):
  RewriteEngine On
  RewriteCond %{HTTP_USER_AGENT} ^Fossil/\[[a-z0-9]{10}\]
  RewriteRule ^(.*) /foo.repo/$1 [L]
  </verbatim>


tkt_uuid: 7567c8daf92d906fd070c0eae77e070506b87a80
type: Feature_Request
status: Open
severity: Important
foundin: All
private_contact: 4fb704518b71c2323c6d385b4b350196930ec29d
resolution: Duplicate
title: Tickets Cannot be searched from Web UI
comment:
  Text descriptions of tickets cannot be searched from web UI.

  <hr /><i>anonymous added on 2011-05-08 04:50:51 UTC:</i><br />
  Testing


tkt_uuid: 7757af0d549e6318729e706b4e1fb82ffde97015
type: Feature_Request
status: Closed
severity: Important
private_contact: 5d7ac16166f122117bb8d7069931062fff5c531a
resolution: Rejected
title: Store rights and owners
comment:
  Is it possible to add a setup specific property if the version control should store owners and file rights so then when you checkout a file you get the exact same attributes as when it was checked in ?

  <hr><i>drh added on 2009-03-13 03:22:58:</i><br>
  Fossil only preserves the execute permission bit on unix.
  Attributes for windows files are not preserved.  

  What attributes do you think are useful to preserve in a
  version control system and why?

  <hr><i>eric added on 2009-03-15 17:23:09:</i><br>
  There was some discussion of this on the [MailingList] about a year ago, the result of which was a change to store execute-permission only (not explicitly versioned). People will need to be persuaded on this one, so if you could explain why you need it...

  <hr><i>anonymous added on 2009-03-17 01:03:33:</i><br>
  you may want to look into fsvs, http://fsvs.tigris.org/.


tkt_uuid: 7adb22b0ff31dd19ee87e09a10d9f7cb4b1b6aa4
type: Feature_Request
status: Closed
priority: Medium
severity: Important
private_contact: 7c314290d66d6e80f54e57ac6aa8dc635bfbc6c4
resolution: Not_A_Bug
title: turn clean command off on a repository
comment:
  I would like fossil to turn off the clean command adminastrativly.  This is for managing config files on a server, ie /etc.  I would not want to put /etc/shadow in fossil but I would really be bumed if I typed "fossil clean" and it was not.

  Thanks for the quite useful tool btw,

  marc


tkt_uuid: 7d790e7e5e0f701e01c10746f717d124c0b9de79
type: Code_Defect
status: Fixed
severity: Minor
foundin: 1.24 [8d758d3715]
private_contact: 84f59114b7eee7088fd7e2932599c69c9ad0761b
resolution: Fixed
title: `fossil extras` shows metadata files...
comment:
  At somepoint in the recent past, I tossed off a fossil upgrade, updated my repositories, and I have some interesting artifacts when I run <code>fs extras</code>:

  <pre>% fs rebuild --cluster --compress --pagesize 8192 --vacuum --wal --stats
  % fs extras
  ../foo-project.fossil-shm
  ../foo-project.fossil-wal</pre>

  Not a big deal, but those two files definitely don't exist, but are showing up in the <code>extras</code> output.


tkt_uuid: 838bde7990d8e190957cbfe7f15c77322dc54e57
type: Incident
status: Fixed
severity: Important
foundin: Fossil version [f84bfc31bf] 2008-11-27 02:30:29
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Fixed
title: file extracted from Fossil zip archive could have different name
comment:
  @rem issue demostration<br>
  del .\_fossil_<br>
  del .\test.fossil<br>
  rmdir /Q /S .\testdir<br>
  mkdir .\testdir<br>
  del manifest.uuid<br>
  del manifest<br>
  cd .\testdir<br>
  echo 345678>"1r&#345;&#345;&#345;&#345;   R .test"<br>
  cd ..<br>
  fossil new test.fossil<br>
  fossil open test.fossil<br>
  fossil add .\testdir\\"1r&#345;&#345;&#345;&#345;   R .test"<br>
  fossil ls<br>
  fossil commit -m "check in a file with accended char/s and spaces in its name" --nosign<br>
  fossil ui<br>
  ----<br>
  on win XP<br>
  I create file with some accending characters in its name, commit it to the fossil repository and save repository as a zip file.
  When I extract such file from fossil generated file by windows Explorer/Total Commander I get file with different name.<br>
  Extracting by unzip program from Info-ZIP web site yields correctly named file.

  In above example I create file with "r-caron" chars in its name(U+0159), after unzipping I get file with "DEGREE SIGN"(U+00B0) in it instead.
  Many other characters get twisted in similar way. I wonder, if there should be something marked in zip file header, as how to interpret stored file name.
  I tried to check differences with explorer generated zip files/fossil generated ones with help of:<br>
  unzip -Zv byZIP.zip >byZIP.lst<br>
  unzip -Zv byFossil.zip >byFossil.lst<br>
  so far to no avail.

  <hr><i>anonymous claiming to be kkinnell added on 2008-12-03 02:56:00:</i><br>
  If I'm reading this correctly, you stored a file containing utf8 or uc16 encoded characters in a repository, and then got the zip for the repository by downloading it from the server.  Then, when you unzipped it with one windows program, the file was encoded incorrectly, but when you unzipped it with a different windows program, the encoding was correct.

  If that is what happened, then the problem is how the programs you are using for unzipping the files are interpreting them.  The one that gives you the correct version is using the same encoding that you used when you created the file, the other one is using something else.

  <b>fossil</b> itself uses SQLite BLOBs to store its artifacts.  The storage doesn't encode the data in any way, it treats it as binary data.  

  <hr><i>anonymous added on 2008-12-03 04:53:53:</i><br>
  The content of file(s) is correct. What causes trouble is the name/path of file having accented characters.<br>

  If I modify the test and try to add file on path already having mix of accended/not accended characters and spaces, <br>
  it is even not listing such file in File List menu which I would consider a bug.<br>
  (I can save zip archive from fossil, view file content(diff) but will not see such file listed in File List menu)<br>
  Produced zip archive can be correctly extracted by unzip from Info-ZIP web site. Windows Explorer will show just badly transcoded file name on badly transcoded file path.<br>
  Used test path uses "r-caron" chars (U+0159),"s-caron"(U+0161) and "LATIN SMALL LETTER Y WITH ACUTE" (U+00FD) accented characters.<br>

  del .\_fossil_<br>
  del .\test.fossil<br>
  rmdir /Q /S .\\"testS&#353;&#353;&#353;SR&#345;&#345;&#345;R   Y&#253;&#253;&#253;Y"<br>
  mkdir .\\"testS&#353;&#353;&#353;SR&#345;&#345;&#345;R   Y&#253;&#253;&#253;Y"<br>
  del manifest.uuid<br>
  del manifest<br>
  cd .\\"testS&#353;&#353;&#353;SR&#345;&#345;&#345;R   Y&#253;&#253;&#253;Y"<br>
  echo content of file>"1r&#345;&#345;&#345;&#345;   R .test"<br>
  cd ..<br>
  fossil new test.fossil<br>
  fossil open test.fossil<br>
  fossil add .\\"testS&#353;&#353;&#353;SR&#345;&#345;&#345;R   Y&#253;&#253;&#253;Y"\\"1r&#345;&#345;&#345;&#345;   R .test"<br>
  fossil ls<br>
  fossil commit -m "check in a file with accended char(s) and spaces in its name on a path with accedended characters and spaces" --nosign<br>
  fossil ui<br>
  ---<BR>
  fossil ls<br>
  ADDED     testS&#220;&#220;&#220;SR&#176;&#176;&#176;R   Y&#345;&#345;&#345;Y/1r&#176;&#176;&#176;&#176;   R .test<br>


  <hr><i>kkinnell added on 2008-12-03 16:20:32:</i><br>
  I have tested this in the Linux version, via copy and paste using the exact string you are using (testS&#353;&#353;&#353;SR&#345;&#345;&#345;R Y&#253;&#253;&#253;Y).

  I can confirm that the encoding used for display of the filename and contents are not the same as the encoding used for wiki, the wiki strings are "entified" as &amp;#ddd; decimals whereas display of the file path strings are dependent on the browser's default encoding.  When I set my browser to use the default windows encoding (Western, or Latin-1 which is ISO-8859-1) I get behavior similar to that which you describe.

  I think it is possible you <code><b>add</b></code>ed the file that is not showing up in the file list, but did not <code><b>commit</b></code> the change afterward.  This is the only way I have been able to replicate this behavior.

  Please verify that all of your encodings&#8212;system, browser and zip programs, are the same as your input system and see if you still get bad behavior.  I can duplicate most of the problems you are having by mis-matching the encodings, but I am on a GNU/Linux system and I can't be <i>sure</i> there is not something peculiar to the windows version causing part of your problem.

  <hr><i>anonymous added on 2008-12-04 07:06:01:</i><br>
  the way I test it on win XP is that I run the above script (from del .\_fossil_ line till fossil ui line) in one go.<br>
  At that moment I get fossil web interface, where I see freshly created repo.<br>
  If I go there to the timeline menu, I see there one enty title "1 most recent events". If I check submenu "Checkins only" <br>
  I still see there only 1 item, title now "1 most recent checkins".<br>
  It says "Leaf" and text of my commit comment, as you czn check i above script.<br>
  Now if I click link on that link, I see page titled "Baseline ...."<br>
  There I have (besides other) "Commands:" line with   	 "diff  |  ZIP archive  | manifest  | edit" options/ links.<br>
  If I use dill, I see "diffed" content of file (because I start afresh, it is just content of file with diff marks). In my case:<br>
  @@ -1,1 +1,1 @@<br>
  -<br>
  +345678<br>

  If I click ZIP link, I get Zipped archive of repository<br>
  Now If I go to "Files" top menu, I get page titled "File List" with heading "Files in the top-level directory"<br>
  and there I my commited dirctory (If I switch the codepage of browser to Central European Windows-1250, I see the directory name<br>
  correctly). If I click on it, .... Now I noticed something I did not notice before.<br>

  If I keep default character encoding on browser page (Western ISO 8859-1) and click on directory link, I get page stating:<br>
  "Files in directory testSA!A!A!SRA&#184;A&#184;A&#184;R Y&#253;&#253;&#253;Y" and showing no file there.<br>
  If I change character encoding on browser page to Central European Windows-1250 (on Files in the top-level directory page)<br>
  and click on correcly named directory, I get page with heading "Files in directory testS&#353;&#353;&#353;SRoooR Y&#253;&#253;&#253;Y" and I see there<br>
  link to my file (of course with name in western encoding " 1roooo R .test" and I can click on it to see its content)<br>

  So it seems to me, based on encoding of generated page, sometimes fossil can fail to show true content of directory.<br>


  <hr><i>anonymous claiming to be Ilia Frenkel added on 2008-12-09 09:49:26:</i><br>
  You can add the following line to the header (Setup->Header) between <head> and </head> tags:
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
  it will tell your browser what encoding you want to be the default one.

  <hr><i>kkinnell added on 2008-12-09 15:58:07:</i><br>
  Summary:

    1. File paths within a repository use the bits supplied by the fs, but do not note the encoding.  The browser's encoding determines display.

    2. Wiki display entifies characters, and so the display of a file path from within a wikified string may be different than the display in the file browser.

    3. Is this a wart, or is this correct behavior?  (Mailing list discussion?)

  <hr /><i>jan.nijtmans added on 2012-10-22 08:03:13 UTC:</i><br />
  This should be fixed in 1.24


tkt_uuid: 8c480d18328fe17543b4cd06f7b08920f2439a49
type: Feature_Request
status: Open
priority: Low
severity: Important
private_contact: b7569ea6d94b931c3e28b0619720d09f1f2bc911
resolution: Open
title: hook on wiki html rendering
comment:
  I'm looking for a uniform method of supplying fossil with different markup languages. There should be setting controllable pipe between plain text data and wiki.


tkt_uuid: 8ca2aae39172f90c314256deda71e006cb2f38bf
type: Code_Defect
status: Fixed
severity: Important
foundin: 1.24
private_contact: 67aadfe5f22f1ea223577cb8273772921fb9baf4
resolution: Fixed
title:
  Command-line wildcards broken with Fossil 1.24 on Windows, in some cases crashing Fossil (1.23 was OK)

comment:
  There appears to be a regression introduced with Fossil 1.24 on Windows regarding command-line wildcard parsing.

  Fossil 1.23 behaves as expected:
  > fossil-123 md5sum common\*
  2a9d384b95db916a22cc05b7227ab55b  common\fileutils.cpp                       
  eb7ae4d4d206c73079faa4bfb4d737ca  common\fileutils.h

  However, under 1.24:
  > fossil md5sum common\*
  Assertion failed: (p)->xRealloc==blobReallocMalloc || (p)->xRealloc==blobReallocStatic, file ./src/blob.c, line 273
                                                            
  This application has requested the Runtime to terminate it in an unusual way.
  Please contact the application's support team for more information.

  Wildcards also fail, but less spectacularly, with other Fossil commands:

  Fossil 1.24:
  >fossil add gui\forms.*
  fossil: not found: C:/Projects/InkSpector2/src/gui/forms.*    

  Fossil 1.23:
  >fossil-123 add gui\forms.*
  ADDED  src/gui/forms.cpp                                             
  ADDED  src/gui/forms.h

  Thanks
  Mark.

  <hr /><i>drh added on 2012-11-02 21:46:52 UTC:</i><br />
  Working now for MinGW.  Need to fix the parse_windows_command_line() function
  to do wildcard expansion in order to fix the problem for non-mingw windows
  compilers.

  <hr /><i>jan.nijtmans added on 2012-11-03 11:21:18 UTC:</i><br />
  Note: Mingw is the only toolset which does command line expansion in crt0, mingw-w64 and msvc do not. It is really a problem of the Windows console: Shells are supposed to do their own command line expansion. Cygwin and Msys do that, but the Windows console does not do that. Therefore the mingw people decided to build it into crt0, but it makes mingw incompatible with msvc.
  <p>
  Unfortunately, mingw doesn't have an unicode-aware crt0, that would solve everything. Mingw-w64 and msvc have it, but those don't do command line expansion.
  <p>
  I would recommend to build command line expansion into fossil. It would make command line expansion available to mingw-w64 and msvc builds on the Windows console as well. The risk is that when using Msys or Cygwin, the command line
  expansion is done twice, I don't know exactly what possible problems that could give.

  So, the easiest workaround would be: use the Msys or Cygwin or any other shell, just not the Windows console.

  <hr /><i>drh added on 2012-11-03 12:47:01 UTC:</i><br />
  Maybe the right thing to do is add a new "fossil glob CMD ARG1 ARG2 ...." command.  The glob command applies file globing to all arguments, then runs CMD with the globed arguments.  This is similar to how the "glob" command worked in very early Unix systems, before globing got built into the shell.

  Unix, Msys, and cygwin shells would continue to operate normally.  Users on a windows shell, however, would need to add the "glob" keyword if they want globing to occur in their command.

  <hr /><i>anonymous added on 2012-11-03 14:30:05 UTC:</i><br />
  Hi,

  I'm not sure if it's been mentioned before, but msvc does support expanding command-line wildcards into separate argv strings:
  [http://msdn.microsoft.com/en-us/library/8bch7bkk%28v=vs.80%29.aspx]

  Mark.

  <hr /><i>jan.nijtmans added on 2012-11-04 21:04:47 UTC:</i><br />
  Regarding the assertion:
  <pre>However, under 1.24: > fossil md5sum common\* Assertion failed: (p)->xRealloc==blobReallocMalloc || (p)->xRealloc==blobReallocStatic, file ./src/blob.c, line 273</pre>
  Shouldn't fossil be compiled without assertions, so with -DNDEBUG? That should fix the mentioned crash.



  <hr /><i>drh added on 2012-11-04 21:36:42 UTC:</i><br />
  The "fossil md5sum" segfault has already been fix by
  check-in [52199a504a9c7c20].

  I think we want to continue to run with assert()s enabled.
  This gives better visibility to mistaken assumptions in the code.


tkt_uuid: 967cedbf200f707055ca9d1a585d7974347c2318
type: Feature_Request
status: Closed
private_contact: 3f8c819a8c0677b98f5b926799b16530d22b0c68
resolution: Fixed
title: fossil extra - Report for subtree
comment:
  It would be nice to have an option to perform the fossil extra command only report extra files for the subtree that begin at the current direcory and not for the entire hierarchy of files.

  <hr /><i>anonymous claiming to be mgagnon added on 2011-05-17 21:36:56 UTC:</i><br />
  I know that's an old ticket, but it would be very useful for me. Having a very big repo, with a lot of extra generated files everywhere, sometime, I want a list of extra files on a sub-directory only.

  Without changing the default behavior as it was suggested on this ticket originally, Instead to work from current directory, it might have an argument to specify the wanted sub-path. So original behavior will not be modify when called without argument.

  And I'm sure that this kind of argument which isolate a subtree can be useful for many other fossil command. Like timeline, changes, etc..



  <hr /><i>dmitry added on 2011-09-08 23:28:53 UTC:</i><br />
  Related: [967cedbf20].


tkt_uuid: 9d4cb9cf117b10a6842163388ae1758bd92c3ae5
type: Code_Defect
status: Fixed
severity: Minor
foundin: 1.24 [8d758d3715]
private_contact: a83a2a28d2194050d2b7ee0c4d8756ad175d2e32
resolution: Fixed
title: WYSIWYG: Label-Text for Indentation Buttons is Swapped
comment:
  Using the new WYSIWYG editor, there are two buttons to change the level of indentation. These buttons work fine. If you hover with the mouse over them, a little yellow text box shows up. For the left button to decrease the indentation, it says "add Indentation", for the right button to increase indentation, it says "delete Indentation" - which is incorrectly swapped.

  Fix should be a one or two liner, i'm not familiar with the sources, though, so i leave it to you guys. :-)


tkt_uuid: 9f0120fb739aa19c3d4d84bf0fa5f289fd50d9c6
type: Code_Defect
status: Open
severity: Important
foundin: [0018d724b3]
private_contact: 418c4f45a536c92d788654590d618c26cc3b5913
resolution: Open
title: Unexpected result moving directories with "fossil mv"
comment:
  When moving a directory with some contents, on the target the directory is lost. Let me illustrate with an example:

  We have:
  <pre>
  /a/f
  /a/b/ff
  </pre>

  If I do:
  <pre>
  $ mkdir c
  $ cd a
  $ fossil mv * ../c
  RENAME a/b/ff c/ff
  RENAME a/f c/f
  </pre>

  So the tree structure is lost. Of course things get worse when ff and f have the same name, as then it results in an error because of the duplication.


tkt_uuid: a2dc3b67a2605ca47fe5b44ac5b09e8c4a8a7aa4
type: Code_Defect
status: Closed
severity: Minor
foundin: cf178577ec
private_contact: d65f5846b6a5b50edcd1a93c5d63af85a3b4050c
resolution: Duplicate
title: Versioned files in Windows still appear as extras if not commited with proper case
comment:
  It appears that on Windows, Fossil will "case-insensitively" 'fossil add' a file provided on the command line; however, 'fossil extras' will still list already-versioned file as extras if the file was not originally added with its exact, case-sensitive name.

  Steps to reproduce:

  1. Take a checked out Fossil directory on Windows.

  2. Create two subdirectories inside: "Work" and "Play".

  3. Create a new file in directory "Work" named "test.txt".

  4. Run 'fossil extras'; it reports "Work/test.txt".

  5. Run 'fossil add "work\test.txt" (noticed the lowercase "w"); it reports "ADDED  work/test.txt".

  6. Run 'fossil commit -m "blah"'; it does it successfully.

  7. Run 'fossil extras'; it reports "Work/test.txt".

  <hr /><i>anonymous claiming to be Joerg Sonnenberger added on 2010-11-19 12:13:37:</i><br />
  Windows is case-preserving, but case-insensitive. That means it doesn't care if you use WORK or work. Unless you explicitly iterate over the directory and use strcasecmp or so, you can't tell the difference. This easily explains the difference in behavior of "fossil extra".


tkt_uuid: aa494b5832ac1a1ee098d96278f08c0cb7e112b9
type: Code_Defect
status: Fixed
severity: Severe
foundin: 37f295c310
private_contact: ace2a438fb254e5d21ba2ed1295b2da8392d271c
resolution: Fixed
title: Fossil changes symlinks into seperate files
comment:
  When fossil adds directories that contain symbolic links to other directories in a fossil repository, on future checkouts the symbolic link will become an entirely seperate copy of the entire directory structure that was pointed to on disk. See below explanatory logs for example / steps to reproduce.

  Esp. look at the two outputs of "ls -l three/".

  <verbatim>
  $ fossil version
  This is fossil version [37f295c310] 2009-09-21 19:19:20 UTC

  $ fossil new tmp.fossil-scm
  [...]

  $ fossil open tmp.fossil-scm

  $ mkdir -p one/two three

  $ echo testing > one/two/txt.txt

  $ (cd three && ln -s ../one/two)

  $ ls -l three/
  total 0
  lrwxrwxrwx 1 djbclark djbclark 10 2009-09-29 15:05 two -> ../one/two

  $ fossil add one three
  ADDED  one/two/txt.txt
  ADDED  three/two/txt.txt

  $ fossil commit -m "test of unexpected behavior" --nosign
  New_Version: 160e9429f44953ea6f42902f62a706dd3838775c

  $ fossil close

  $ rm -rf manifest manifest.uuid one three

  $ ls
  tmp.fossil-scm

  $ fossil open tmp.fossil-scm
  one/two/txt.txt
  three/two/txt.txt
  [...]

  $ ls -l three/
  total 4
  drwxr-xr-x 2 djbclark djbclark 4096 2009-09-29 15:07 two
  # above - now "magically" an actual seperate copy, not a symlink

  $ grep txt.txt manifest
  F one/two/txt.txt 9801739daae44ec5293d4e1f53d3f4d2d426d91c
  F three/two/txt.txt 9801739daae44ec5293d4e1f53d3f4d2d426d91c
  # above - at least I'm guessing this means it doesn't take up extra
  # space in the repository, but stat shows they do take up extra
  # space on disk (different inodes) , which sucks esp. for this
  # project which needs to fit on a certain size of media...

  $ stat one/two/txt.txt
    File: `one/two/txt.txt'
    Size: 8         	Blocks: 8          IO Block: 4096   regular file
  Device: 801h/2049d	Inode: 319977      Links: 1
  Access: (0644/-rw-r--r--)  Uid: ( 1000/djbclark)   Gid: ( 1000/djbclark)
  Access: 2009-09-29 15:07:33.000000000 -0400
  Modify: 2009-09-29 15:07:33.000000000 -0400
  Change: 2009-09-29 15:07:33.000000000 -0400

  $ stat three/two/txt.txt
    File: `three/two/txt.txt'
    Size: 8         	Blocks: 8          IO Block: 4096   regular file
  Device: 801h/2049d	Inode: 319980      Links: 1
  Access: (0644/-rw-r--r--)  Uid: ( 1000/djbclark)   Gid: ( 1000/djbclark)
  Access: 2009-09-29 15:07:33.000000000 -0400
  Modify: 2009-09-29 15:07:33.000000000 -0400
  Change: 2009-09-29 15:07:33.000000000 -0400
  </verbatim>

  (Putting [http://thread.gmane.org/gmane.comp.version-control.fossil-scm.user/996/focus=1020|Re: limiting symlinks] in ticket form.)

  <hr /><i>dmitry added on 2011-09-08 18:56:37 UTC:</i><br />
  Fixed by [e4f1c1fe95].


tkt_uuid: aa9a522e47d7aafd64cb7cbb120c536699811941
type: Feature_Request
status: Closed
severity: Cosmetic
resolution: Works_As_Designed
title: tif files have no preview
comment:
  see summary

  <hr /><i>anonymous added on 2011-03-06 16:06:58 UTC:</i><br />
  fossil doesn't include the tiff libraries as a dependency and with its current design it never will.


tkt_uuid: be1285190bb9ef3ea2c2d7db41af5fb47d4d5c37
type: Feature_Request
status: Open
severity: Minor
foundin: Fossil-86cbb69af2
private_contact: be550bfd65ad2b35c5af076e5620344955089a2e
resolution: Open
title: Diable using UTC time zone as default
comment:
  This is just an suggestion to uncheck using UTC timezone by default installation.
  I installed fossil many times and this is one of todo tasks for my fossil instance.

  Please uncheck the using UTC timezone, so I can see the changes in local timezone.

  of course this just an opinion from a person don't think in UTC time zone.

  <hr><i>jeremy_c added on 2009-12-31 04:49:19:</i><br>
  I think that either default would cause equal confusion. Many projects that use fossil across timezones (most open source apps) would want the UTC time reporting, i.e. a common time across all timezones. Most know their local timezone offset, albeit, if everyone is in one timezone it's an unnecessary mental translation, thus the option.

  <hr><i>anonymous added on 2009-12-31 14:21:36:</i><br>
  How about displaying both local and UTC time by default ?

  <hr><i>jeremy_c added on 2009-12-31 15:18:16:</i><br>
  I think before going further, some thought should be put into how date/time values are actually displayed. For instance, the timeline is only one of many places a date is shown. To solve this problem correctly, we should store the timezone offset for each user, then let the user decide if *all* date and time values should be displayed in UTC or in their local timezone. As it stands now it's either UTC or the server's timezone, which is only of value if you happen to be in the same timezone as the server you are accessing.

  This change, however, is not a 5 minute change.


tkt_uuid: c03b86469651ddc20d735a1f3d7de6cc141d8e5d
type: Feature_Request
status: Open
severity: Important
foundin: all versions before 2010-03-06 19:35:16
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Open
title: support for standalone https server in fossil
comment:
  It would be usefull to have ability to start fossil as an https server (fosssil server, fossil ui). <br>As far as I know fossil can operate as https server only in cgi mode. On window systems without server installed/configurable preparing such setup seems unachievable.

  <hr><i>ron added on 2010-03-08 05:16:39:</i><br>
  It is also an issue for those of us hosting on shared servers where we don't have a fixed IP.  However, that is an SSL issue -- how to get around the problem of IP-specific SSL certificates?  

  A typical problem scenario would be a small business or project, which hasn't the funds to buy a "wildcard" SSL cert, but wants to prevent snoopers from reading the project data as it moves on the wire.

  <hr /><i>anonymous claiming to be fossil.nrb@9ox.net added on 2012-11-13 11:39:25 UTC:</i><br />
  Note that setting https-login on via web front end can cause a lockout when a repository is hosted and https access is not supported, e.g.:

  [http://fossilrepos.sourceforge.net/cgi-bin/demo.cgi/setup_settings]

  I got out of this by downloading the login page source, editing the line to use http e.g.:

      form.action = "http://fossilrepos.sourceforge.net/cgi-bin/demo.cgi/login";

  I suggest https setting is only available to turn on via the command line, and not by the web interface.

  Rational: setting via the web offers no guaranteed way back, setting on the command line ensures the originator of the change can update it the same way.


tkt_uuid: c30d7c8c632d4dfedf4057eecd7aa2f26129e868
type: Code_Defect
status: Closed
severity: Minor
foundin: 1.21
private_contact: a3f9bb81e58d0893fc9338b98ddc62e27a349b16
resolution: Overcome_By_Events
title: newbiest help is mistaken about most basic more help
comment:
  Running fossil without arguments usefully suggests how to get help on commands.  It also claims that running 'fossil commands' will produce a list of all commands.  But that is presently false.  To get that list, it seems running 'fossil help commands' is necessary.  The 4th line of output from bare 'fossil' needs to be changed.  Instead of reading:
    "or: fossil commands       -- for a list of all commands"
  it should read:
    "or: fossil help commands  -- for a list of all commands"
  or perhaps:
    "or: fossil help --all     -- for a list of all commands"
  .

  (This is not cosmetic when help is viewed as actual functionality.)

  <hr /><i>drh added on 2012-11-11 17:52:42 UTC:</i><br />
  Fixed in version 1.22 (and also 1.23 and 1.24).


tkt_uuid: d17d6e5b174bd6f8bbe8be6f851de3d721190af8
type: Code_Defect
status: Fixed
severity: Minor
foundin: 7b7fe27678
private_contact: 277de4eda861e8a6d011b60d4006a963a4c7c474
resolution: Fixed
title: Handle file names containing brackets, interrogation mark or asterisk
comment:
  I am trying to version some Microsoft OpenXML files (docx, xlsx, pptx) that are zipped archives.

  A file in the archive is typically named <nowiki>[Content-Types].xml</nowiki> with those brackets.

  Fossil refuses to handle this file. I think this is because there are GLOB operations in the source code having looked it up quickly.

  But I am pretty sure it is possible with SQLite to GLOB 'a\?b' ESCAPE '\'

  Thank you for understanding this issue.

  <hr><i>anonymous claiming to be benoit added on 2010-06-25 05:26:32:</i><br>
  the hyperlink in the ticket description is actually text surrounded with brackets…

  <hr /><i>jan.nijtmans added on 2012-11-20 13:47:51 UTC:</i><br />
  Highly experimental fix for this committed in [82ce90f91c]. Should get a lot more testing before going into trunk
  <p>Feedback welcome.

  <hr /><i>anonymous added on 2012-11-20 15:18:47 UTC:</i><br />
  <pre>
  char *fossil_unicode_to_utf8(void *zUnicode){
  #ifdef _WIN32
    int nByte = 0;
    char *zUtf;
    WCHAR *wUnicode = zUnicode;
  /*
  This my have problem when zUnicode is readonly.
  And it's will modify zUnicode when sometimes we did not want to modify it.
  */
    while( *wUnicode != 0 ){
      if ( (*wUnicode > 0xF000) && (*wUnicode <= 0xF07F) ){
        *wUnicode &= 0x7F;
      }
      ++wUnicode;
    }
    nByte = WideCharToMultiByte(CP_UTF8, 0, zUnicode, -1, 0, 0, 0, 0);
    zUtf = sqlite3_malloc( nByte );
    if( zUtf==0 ){
      return 0;
    }
    WideCharToMultiByte(CP_UTF8, 0, zUnicode, -1, zUtf, nByte, 0, 0);
    return zUtf;
  #else
    return (char *)zUnicode;  /* No-op on unix */
  #endif
  }
  </pre>
  <pre>
  void *fossil_utf8_to_unicode(const char *zUtf8){
  #ifdef _WIN32
  /* nWord should be meaningful than nByte here*/
    int nByte = MultiByteToWideChar(CP_UTF8, 0, zUtf8, -1, 0, 0);
    wchar_t *zUnicode = sqlite3_malloc( nByte * 2 );
    wchar_t *wUnicode;
    if( zUnicode==0 ){
      return 0;
    }
    MultiByteToWideChar(CP_UTF8, 0, zUtf8, -1, zUnicode, nByte);
    wUnicode = zUnicode;
    while( --nByte > 0){
      if ( (*wUnicode < 32) || wcschr(L"\"*<>?|", *wUnicode) ){
        *wUnicode |= 0xF000;
      }
      ++wUnicode;
    }

    return zUnicode;
  #else
    return (void *)zUtf8;  /* No-op on unix */
  #endif
  }
  </pre>

  <hr /><i>anonymous added on 2012-11-20 15:23:31 UTC:</i><br />
  <pre>
  char *fossil_unicode_to_utf8(void *zUnicode){
  #ifdef _WIN32
    int nByte = 0;
    char *zUtf;
    WCHAR *wUnicode = zUnicode;
  /*
  This my have problem when zUnicode is readonly.
  And it's will modify zUnicode when sometimes we did not want to modify it.
  */
    while( *wUnicode != 0 ){
      if ( (*wUnicode > 0xF000) && (*wUnicode <= 0xF07F) ){
        *wUnicode &= 0x7F;
      }
      ++wUnicode;
    }
    nByte = WideCharToMultiByte(CP_UTF8, 0, zUnicode, -1, 0, 0, 0, 0);
    zUtf = sqlite3_malloc( nByte );
    if( zUtf==0 ){
      return 0;
    }
    WideCharToMultiByte(CP_UTF8, 0, zUnicode, -1, zUtf, nByte, 0, 0);
    return zUtf;
  #else
    return (char *)zUnicode;  /* No-op on unix */
  #endif
  }
  </pre>









  <pre>
  void *fossil_utf8_to_unicode(const char *zUtf8){
  #ifdef _WIN32
  /* nWord should be meaningful than nByte here*/
    int nByte = MultiByteToWideChar(CP_UTF8, 0, zUtf8, -1, 0, 0);
    wchar_t *zUnicode = sqlite3_malloc( nByte * 2 );
    wchar_t *wUnicode;
    if( zUnicode==0 ){
      return 0;
    }
    MultiByteToWideChar(CP_UTF8, 0, zUtf8, -1, zUnicode, nByte);
    wUnicode = zUnicode;
    while( --nByte > 0){
      if ( (*wUnicode < 32) || wcschr(L"\"*<>?|", *wUnicode) ){
        *wUnicode |= 0xF000;
      }
      ++wUnicode;
    }

    return zUnicode;
  #else
    return (void *)zUtf8;  /* No-op on unix */
  #endif
  }
  </pre>


tkt_uuid: d23fb0b742ac2e989e36bfef98281f970ab34e8f
type: Feature_Request
status: Fixed
severity: Important
foundin: aa57354736
private_contact: 09bcfe9beb6bd1f9361d71b153c193630ed2ac65
resolution: Fixed
title: i18n for commit comments
comment:
  Using Fossil under Windows Vista, all works just perfect, thank you!

  One thing to fix: for 'fossil commit' there should be some hook to convert a file after it leaves EDITOR and before it get into Fossil database. EDITOR (a program with command line got from 'EDITOR' environment variable) most often using default 8-bit console charset (for Cyrillic it is 'Windows-1251' under Windows and 'KOI8-R' under Unix), but in the Fossil repo there is 'UTF-8' encoding. When I do commit with a Cyrillic (Russian) text in comment, Fossil put it into db w/o conversion (as Windows-1251), and when displaing it in UTF-8 UI it becomes unreadable. So it should be hook for convertor or some internal option or command line for iconv.

  Something like these GIT's options (from .gitconfig):
  <verbatim>
  [i18n]
  	commitencoding = windows-1251
  	logoutputencoding = cp866
  </verbatim>

  <hr><i>anonymous added on 2009-09-15 18:17:06:</i><br>
  Or just make charset in this line (cgi.c, line 322):
  <verbatim>  fprintf(g.httpOut, "Content-Type: %s; charset=utf-8\r\n", zContentType);</verbatim>
  configurable...

  <hr><i>anonymous claiming to be Dmitry Chestnykh added on 2009-10-11 20:11:34:</i><br>
  Maybe you don't need my opinion on this, but I think it's time drop old extended ASCII encodings everywhere and stick to UTF-8. Unicode standard has been available since 1991. Every major operating system and many editors support it. If your editor doesn't produce UTF-8 encoded output, pick another editor. Encoding conversion only makes code more complex (there are dozens of non-Unicode encodings) and doesn't add much value in 2009.

  Major Linux distributions, Mac OS X come with UTF-8 terminals by default, and Windows has it as an option, AFAIK.

  <hr /><i>jan.nijtmans added on 2012-10-29 22:34:51 UTC:</i><br />
  This is fixed in trunk now


tkt_uuid: d9dc59f19a3eda629d5b1eac08cd92aead707d51
type: Feature_Request
status: Closed
severity: Important
foundin: 5d16ca43f1
resolution: Rejected
title: fossil wiki export to latex
comment:
  I classify this feature request as important because it lay the foundation for fossil wiki as the high quality publishing documentation source.

  There is html2latex software in C already(See R1). Adding extra fossil wiki syntax into html2latex.c looks like feasible project/request.

  And in R2,following command is listed as a TODO.

  <pre>
  fossil wiki export -u ARTIFACT WikiName FILE
  </pre>

  I am hoping to see 

  <pre>
  fossil wiki export -u ARTIFACT -t latex WikiName FILE.latex
  </pre>


  References:

    *  R1: http://www.tex.ac.uk/tex-archive/support/html2latex/html2latex.c
    *  R2: http://www.fossil-scm.org/index.html/doc/tip/www/reference.wiki#setting


tkt_uuid: dd78d17ea903a6ec2d69c0a55b7d1971f9120c7a
type: Incident
status: Open
severity: Important
foundin: 79b7902cdd
private_contact: 4ef9c8ef6fd01155871a04c9b36d9387a315f2d4
resolution: Open
title: attachment problem
comment:
  I tried attaching a file to a ticket. There was no error that I could
  see, but neither could I find any evidence that the file was actually
  attached. I checked the ticket history, ticket time line and the main
  time line. Nothing there. Nor in View Ticket.

  <hr /><i>anonymous claiming to be viric added on 2011-02-12 11:00:59 UTC:</i><br />
  I remember this happening to me once. I related that to attaching a file 'too big'. Could it be the reason?
  I did not explore more, to confirm that hypothesis.

  <hr /><i>anonymous added on 2011-02-16 06:17:56 UTC:</i><br />
  It was a small text file created specifically to demo attachments to tickets, maybe 200 bytes in size.

  <hr /><i>anonymous added on 2011-05-09 12:37:06 UTC:</i><br />
  Seems as if problem is only with IE.  I'm running IE 7, attachments make it somehow into sqlite database but not completely back to the ui (stuck there in between).

  With Firefox 4 everything works fine.


tkt_uuid: e11c8eb81b4dbadc33c79ce6ce2809e5c5970555
type: Feature_Request
status: Closed
severity: Minor
foundin: [aa57354736]
private_contact: e64e062ff7022fc7fdd41ac56baff07e8ae485d9
resolution: Works_As_Designed
title: There is no single, persistent link for the "latest known good" version of Fossil.
comment:
  Currently the most recent "known-good" source is available in a convenient tarball from http://www.fossil-scm.org/download.html.  Unfortunately the URL for that source file changes every time a new version goes up.  This interferes with possibilities like automating package builds for Linux distros (RPMs, DEBs, TGZs, LZMs, etc.).

  I propose a persistent link with a known, unvarying URL -- "http://www.fossil-scm.org/download/fossil-src-latest-good.tar.gz" -- which is just an alias pointing to whatever the latest updated build's name happens to be.  (As of this ticket it would be an alias for "http://www.fossil-scm.org/download/fossil-src-20090915120431.tar.gz".)  This would permit the proper creation of slackbuild scripts, for example (a prerequisite for fossil being included in Slackware) among others.


tkt_uuid: e399bc1edfe45b2edb56eb037f63a6bf4cdbc211
type: Code_Defect
status: Fixed
severity: Critical
foundin: 1.24
private_contact: ffceeb1d0da9622e4433fa953987140f70adc8e7
resolution: Fixed
title: Non-ASCII characters in file and folder names are not handled correctly
comment:
  Using the latest version 1.24 the issue occurs after the following steps:

  A. For the folder and filenames:

    #  Create a folder named "MañósosCarácteres"
    #  Create a file named "cönáñón" inside the new folder
    #  fossil addremove
    #  fossil commit -m "Añadí una carpeta y un archivo con tildes"

  B. then on a different machine
    #  fossil update
  The new folder named "MañósosCarácteres" is now available
    #  Add a new file called "éstedesdemác.rst" to the folder "MañósosCarácteres"
    #  fossil commit -m "Añadí nuevo archivo con tildes desde mi mac"

  C. Back to the first machine
    #  fossil update
  A second folder with the name "MañósosCarácteres" has been added. How it can add a folder with exactly the same name and have the file system accept this I do not understand. It happens on both Ubuntu 12.04LTS and OSX10.7.

  One folder contains both files, and the other contains only the first file ("cönáñón").

  In batch of files I was working on for a customer, that contained many non-ASCII characters, sometimes the file names would suddenly duplicate with inverse accents (going from á to à). If you need more examples let me know and I will do a similar run with all non-ascii characters that we use in Spanish.


tkt_uuid: eaf1c4fdbeeca8eb0dade325d8aa0746c948dc2e
type: Feature_Request
status: Open
severity: Minor
foundin: cdc4249268
private_contact: e05c4b7600be973bfc338fbb2709b47357780bc8
resolution: Open
title: Merge with --cherry-pick should be displayed on timeline
comment:
  I have two branches.  Let's call them trunk and prod_candidate.  I have a single fix that I want to pull from trunk into prod_candidate.  --cherrypick works great.  The only issue is that the merge not indicated in any way on the timeline graph, so there's no way to tell visually that a merge has been done.  A dotted or gray arrow to indicate a partial merge would be very helpful.

  <hr /><i>drh added on 2011-03-17 12:55:27 UTC:</i><br />
  Cherrypicks cannot be displayed because cherrypicks are not currently
  recorded anywhere. 

  I recently extended the file format to be able to record cherrypicks.
  But I cannot yet enable the code that actual uses that new part of the
  file format because older versions of Fossil would not be able to 
  interpret the newer repositories.  We need to wait a little while
  until everybody has updated to a newer version of Fossil that can 
  understand the enhanced format.  At that point, I can enable the code
  that records information about cherrypicks.  And then I can update the
  graph-drawing logic to display the cherrypicks.  This will all take time.


tkt_uuid: f687f1eb987148448aaef6eaae33909472292d54
type: Code_Defect
status: Fixed
severity: Minor
foundin: d13143
private_contact: 2a7c6fd6dcc73b4e4468cb4ea6ca63573039a28e
resolution: Fixed
title: Missing closing tags in page setup_login_group
comment:
  There are missing closing tags <verbatim></blockquote> </div> </form></verbatim> for the form on page <i>setup_login_group</i>. The following patch should fix it:

  <verbatim>
  --- setup.orig	2012-11-25 11:37:53.000000000 +0100
  +++ setup.c	2012-11-25 16:46:03.000000000 +0100
  @@ -1047,7 +1047,7 @@
       @
       @ <tr><td colspan="3" align="center">
       @ <input type="submit" value="Join" name="join"></td></tr>
  -    @ </table>
  +    @ </table></bockquote></div></form>
     }else{
       Stmt q;
       int n = 0;
  </verbatim>

  <hr />
  <i>anonymous added on 2012-11-25 16:09:01 UTC:</i><br />
  Additionally, there's a typo in the same section (src/setup.c, line 1029):

  <verbatim>
      @ <blockquote><table broder="0">
  </verbatim>

  It should be border.


  <hr />
  <i>drh added on 2012-11-25 18:06:34 UTC:</i><br />
  Also added some missing &lt;tr&gt; elements.


tkt_uuid: fba6685a5ddf573c84798ba2d9d226fedc97e782
type: Feature_Request
status: Closed
severity: Minor
resolution: Works_As_Designed
title: allow no space after -m
comment:
  A little thing, I know, but it's driving me crazy...

  fossil doesn't allow the following construction::

    $ fossil ci -m"this is my message"

  Instead, you must say::

    $ fossil ci -m "this is my message"

  Most command line utilities (notably SVN) allow the first form, without a space, and I'm constantly caught by this. It would be nice if the fossil param parsing allowed the no-space form.


tkt_uuid: fd7ad198e58e6f63fabdb79c48d417ea925b7664
type: Code_Defect
status: Open
severity: Important
foundin: 1.19 [080d27a6b2] 2011-10-05 08:00:00 UTC
private_contact: 799fcce709e3f04aa96834caec7945b22b8b6a57
resolution: Open
title: out of memory (can't allocate region)
comment:
  I can't sync on Mac OS X Lion. sync crash with out of memory message.

  <pre>
  gdb --args /Users/navratil/src/fossil/fossil sync
  GNU gdb 6.3.50-20050815 (Apple version gdb-1705) (Fri Jul  1 10:50:06 UTC 2011)
  Copyright 2004 Free Software Foundation, Inc.
  GDB is free software, covered by the GNU General Public License, and you are
  welcome to change it and/or distribute copies of it under certain conditions.
  Type "show copying" to see the conditions.
  There is absolutely no warranty for GDB.  Type "show warranty" for details.
  This GDB was configured as "x86_64-apple-darwin"...Reading symbols for shared libraries ...... done

  (gdb) break malloc_error_break                                                                                                                                              
  Breakpoint 1 at 0x7fff8a1986c0
  (gdb) run                     
  Starting program: /Users/navratil/src/fossil/fossil sync
  /Users/navratil/src/fossil/fossil: 5 scan steps for 1 rows in [SELECT 1 FROM main.sqlite_master WHERE name=='stashfile' AND sql GLOB '* isLink *']
  /Users/navratil/src/fossil/fossil: 5 scan steps for 1 rows in [SELECT 1 FROM main.sqlite_master WHERE name=='stashfile']
  /Users/navratil/src/fossil/fossil: 5 scan steps for 1 rows in [SELECT 1 FROM main.sqlite_master WHERE name=='undo' AND sql GLOB '* isLink *']
  /Users/navratil/src/fossil/fossil: 5 scan steps for 1 rows in [SELECT 1 FROM main.sqlite_master WHERE name=='undo']
  /Users/navratil/src/fossil/fossil: 5 scan steps for 1 rows in [SELECT 1 FROM main.sqlite_master WHERE name=='undo_vfile' AND sql GLOB '* islink *']
  /Users/navratil/src/fossil/fossil: 5 scan steps for 1 rows in [SELECT 1 FROM main.sqlite_master WHERE name=='undo_vfile']
  Server:    http://navratil@192.168.1.249:8098
                  Bytes      Cards  Artifacts     Deltas
  Sent:             648         12          0          0
  Received:         898         11          0          1
  Total network traffic: 576 bytes sent, 712 bytes received
  fossil(78531) malloc: *** mmap(size=18446744067267100672) failed (error code=12)
  *** error: can't allocate region
  *** set a breakpoint in malloc_error_break to debug

  Breakpoint 1, 0x00007fff8a1986c0 in malloc_error_break ()


  (gdb) bt
  #0  0x00007fff8a1986c0 in malloc_error_break ()
  #1  0x00007fff8a15b477 in szone_error ()
  #2  0x00007fff8a15d404 in allocate_pages ()
  #3  0x00007fff8a15dba4 in large_malloc ()
  #4  0x00007fff8a163dee in szone_malloc_should_clear ()
  #5  0x00007fff8a164972 in szone_realloc ()
  #6  0x00007fff8a198243 in malloc_zone_realloc ()
  #7  0x00007fff8a199032 in realloc ()
  #8  0x000000010002e59e in fossil_realloc (p=Cannot access memory at address 0x0
  ) at main_.c:510
  #9  0x000000010000f79e in content_get (rid=1606416160, pBlob=0x7fff5fbff720) at content_.c:275
  #10 0x000000010005222f in verify_rid [inlined] () at /Users/navratil/src/fossil/bld/verify_.c:48
  #11 0x000000010005222f in verify_at_commit () at verify_.c:79
  #12 0x0000000100011262 in db_end_transaction (rollbackFlag=8) at db_.c:142
  #13 0x000000010005afb1 in client_sync (pushFlag=1606417040, pullFlag=1606417040, cloneFlag=1606417040, 
  privateFlag=1606417040, configRcvMask=1606417040, configSendMask=1606417040) at xfer_.c:1728
  #14 0x0000000100044ad4 in sync_cmd () at sync_.c:233
  #15 0x000000010002be07 in main (argc=1606417602, argv=0x7fff5fbffcc2) at main_.c:378
  </pre>

  <hr /><i>drh added on 2011-10-10 11:44:14 UTC:</i><br />
  Nobody else has so far been able to replicate this problem.

  <hr /><i>navratil added on 2012-04-06 13:58:19 UTC:</i><br />
  I still have this problem. What I can add to hte ticket, that this problem can be reproducible?

  <pre>
  fossil version
  This is fossil version 1.22 [82f5663270] 2012-03-31 19:15:36 UTC

  fossil sync
  Server:    http://navratil@xxxxxxxxxx
                  Bytes      Cards  Artifacts     Deltas
  Sent:            3638         77          0          0
  Received:        4140         78          0          1
  Sent:            3715         78          0          0
  Received:        4340         79          2          0
  Total network traffic: 4461 bytes sent, 4911 bytes received
  fossil(27670) malloc: *** mmap(size=18446744067267100672) failed (error code=12)
  *** error: can't allocate region
  *** set a breakpoint in malloc_error_break to debug
  fossil: out of memory
  </pre>

  <hr /><i>stephan added on 2012-08-29 09:18:23 UTC:</i><br />
  How many checkins does that repo have?

  in content_get (rid=1606416160, pBlob=0x7fff5fbff720) at content_.c:275

  that rid seems _extremely_ high and (coincidentally???) the high bits match the masks being passed in the client_sync() call. The rids are sequentially-generated, which implies that either this repo has over a billion artifacts or that there is an overflow/underflow happening somewhere.


  sqlite3 ../fossil.fsl 
  sqlite> select max(rid) from blob;
  16854
  sqlite> select count(rid) from blob;
  16854


tkt_uuid: 2bda0f13c6549c83bfc0e9a57a77caf99d537f14
type: Code_Defect
status: Open
severity: Important
foundin: 2010.03.18.142033
private_contact: 3299242f9eeb048063fa0161cd817ed02be44d65
resolution: Open
title: The baseurl parameter must be used in submenus of web-interface
comment:
  Main menu items use "baseurl" parameter for links as "$baseurl/dir". But submenus does not use this. So when fossil repository is placed into subdir (as example /src like to sqlite.org) we see the right links in main menu:


  ...

  http://sqlite.mobigroup.ru/src/wiki

  ...

  but wrong links in submenu:

  http://sqlite.mobigroup.ru/wikiappend?name=sqlite3-rdiff

  http://sqlite.mobigroup.ru/wikiedit?name=utils


  And on page http://sqlite.mobigroup.ru/src/wiki we see wrong links like to

  http://sqlite.mobigroup.ru/wiki?name=sqlite3-rdiff


  P.S. The site is hosted on Debian Squeeze host with fossil from debian repository.


tkt_uuid: 2a34de01fccda62fc49052c2bb2ef85adee27f62
type: Feature_Request
status: Open
severity: Minor
private_contact: 285d50b7823bcc6fb606209ae580c53cd440652c
resolution: Open
title: "wiki unlist" as a possible solution to deleting wiki pages.
comment:
  After thinking through the ``problem'' of deleting old, unused, badly named or
  transferred to .wiki file pages I'm thinking that deleting a wiki page is not the
  solution.  Maybe changing the tag ("wikiUnlisted-whatever" ?) and allowing it to
  be a new page would be a better solution.  It never leaves the db, it could be
  revived, you could query a list of "deleted" wiki pages, etc.  If someone did
  reuse the name, the page would come up with a lot of history, but part of that
  would be a "page unlisted", so it shouldn't be too confusing.

  <hr><i>drh added on 2008-11-16 23:40:56:</i><br>
  The control artifacts that describe 
  [/doc/tip/www/fileformat.wiki#wikichng | wiki changes] contain 
  a manditory W card that holds the content of the wiki page.
  Perhaps we can extend the spec to make the W card optional.
  If the W card is omitted from the most recent wiki page artifact
  for a particular page, then we consider that page to have been
  deleted and it does not appear on the list of all "active"
  wiki pages.  The artifact with the omitted W card causes a
  timeline entry that says something like "page deleted".

  What privilege is needed to delete a page?  Seems like deleting
  pages is something that should normally be denied anonymous users.
  Do we need a new privilege letter for "delete wiki page"?

  Perhaps there should be two lists:  One list of all active wiki
  page and another list of all wiki pages, active and deleted.

  <hr><i>kkinnell added on 2008-11-17 02:24:55:</i><br>
  Sounds pretty reasonable to me.

  My previous wiki experience is that either admins or owners can delete whole pages, but you can get into knotty problems defining ownership if several people have edited a page.  I would think that privelege to delete should be the same as the privlege required to shun.  They're very similar operations, really.


tkt_uuid: e36b52c1da7f0e49e97e16b551d85ed6b5c2dfc2
type: Feature_Request
status: Open
private_contact: c76260317d907e593238775e171317aff2baec12
resolution: Open
title: make wiki (code?, bugs?) searchable
comment:
  Search is a very useful feature to have

  <hr><i>anonymous added on 2008-11-26 22:55:35:</i><br>
  For what it's worth, you can do source code searches with a lot of editors out there, particularly the ones that support [http://cscope.sourceforge.net/ | Cscope].


  <hr><i>anonymous added on 2009-12-08 19:37:06:</i><br>
  Yes, I can use cscope et al, but sometimes you need to do a search (grep) on older, checked-in, versions.

  <hr><i>anonymous added on 2009-12-23 15:43:35:</i><br>
  See http://trac.edgewall.org/search for example of search feature request.

  <hr><i>anonymous added on 2009-12-23 17:28:48:</i><br>
  Since I am living in huge text files (todos, notes, etc), a grep over different versions of these files would be perfect.  Something like hg's grep subcommand over all files and all revisions.

  First, I thought this was an easy change, but having seen the internal diff format and the sources, I found that this might not be so easy -- at least for me...

  <hr><i>anonymous added on 2009-12-24 14:12:55:</i><br>
  full text search like fts library inside fossile.exe?

  <hr><i>anonymous added on 2009-12-28 21:50:06:</i><br>
  Thanks for the hint.  Yup, something like that will most probably do the job.  Will check this one out.

  <hr><i>ron added on 2010-01-25 10:02:45:</i><br>
  Checkin [07bd8796dc91cc6cd631481f5b1712809becf1e6] add search to wiki, although it only searches wiki page titles.

  <hr><i>jeremy_c added on 2010-01-25 14:14:06:</i><br>
  Why not have it search the body as well?

  <hr><i>ron added on 2010-01-25 14:28:02:</i><br>
  only because I wasn't sure how to do that ...

  <hr><i>ron added on 2010-01-25 20:33:49:</i><br>
  Well, it's not straightforward to search wiki page contents, since the pages are stored as BLOBs and I don't see any easy way to search a BLOB.

  It would be really nice if there were a helper function in SQL like "blobsearch(text)"... but it would still have to perform the uncompressing of the BLOB before doing the search through it. 

  <hr><i>anonymous added on 2010-01-25 22:00:06:</i><br>
  The same applies to search in code (see above remarks on that) :-(

  <hr><i>anonymous added on 2010-02-04 13:54:52:</i><br>
  Back in April 2009 there has been some drh notes on fossil mailing list about searching/using FTS
  on repositories, for details see e.g. [http://lists.fossil-scm.org:8080/cgi-bin/mailman/private/fossil-users/2009-April/000695.html]
  where:

  <pre>
  It has been "considered".  But little action has been taken yet....

  I did modify the makefile so that the Full Text Search engine of  
  SQLite is complied in.  I was thinking that might be useful for  
  implementing search.  But so far it is unused.

  An interesting research project would be to try to figure out how to  
  do search across all historical versions of a project.
  </pre>


  In march 2009 there was an offer to help with "free advice on how to proceed" with integrating SQLite CLI to fossil by drh.

  Would it be possible to provide some hints, e.g. for searching content of artifact in compressed/deltified blobs?

  Hopefully this would allow more interested peole to focus on implementation of this needed functionality.

  Many thanks.

  <hr><i>anonymous added on 2010-02-04 17:13:49:</i><br>
  Actually, this is the only thing holding me back from using fossil :-(  I was trying to understand the data format used in fossil and just try and hack a simple way through.

  Idea was to decode all artefacts and just try to find simple strings.  But I'm already sucking here.  Or will fts take care of that all?

  Seems that the efficient data format does not make it easy to do such things as text searches...

  <hr><i>anonymous added on 2010-03-02 21:22:16:</i><br>
  It seems that recently implemented features in fossil  (e.g. ticket search, datetime string used as hyperlink to timeline,  graph of changes in the timeline) could be a part of general effort to bring interfaced artefact search into fossil. If so or not are there plans (which could be revealed) about implementing search in fossil? Maybe implementing this request on higly compressed and efficiently stored artifacts pose some prohibitive computational penalty on this otherwise low resource application. Even it that case it would be really nice to hear some remarks.

  Is there any way how can casual user of fossil help with this much needed feature?


tkt_uuid: d1ea61eecf935d6df7df8c70bc81736f3dc619e4
type: Feature_Request
status: Closed
severity: Minor
foundin: 84e755e213
private_contact: 97cbb53df18aa105825ffe84592a714675d7a090
resolution: Not_A_Bug
title: import does not support specifying a default user
comment:
  `fossil import` does not understand "-A USERNAME" command-line option anywhere in its arguments list when it creates a new repository from the data being imported.

  While it seems like just a minor inconvenience (it is), this also poses a problem for Windows users who happen to use Cyrillic login names as fossil does not seem to handle this case well and creates the default repo user whose username contains gibberish. As there's no way to expunge a once created user from the repo completely, there should be a way to specify such a user correctly at the repository creation phase.

  Hence I think it would be great if in the "create new repo" mode `fossil import` would behave more like `fossil new` in this regard.


tkt_uuid: 49395d4e70940fb0591fb7b930a1a845c866fe9b
type: Feature_Request
status: Open
severity: Minor
private_contact: ebbf214358fed060592f40f5d3be2e893cd6407e
resolution: Open
title: Styling: Separate HTML and CSS files from C source
comment:
  By separating the files required by the web UI it would be easier to implement fixes and improvements. Maybe the packaging of these files could happen in the build step instead of having strings of HTML in the C source?

  <hr><i>ttmrichter added on 2010-07-10 06:07:24:</i><br>
  I have to agree with this.  Every time I look at trying to amend or clean up any of the HTML/CSS stuff in Fossil I kind of shrink away because it's scattered everywhere.  If the HTML/CSS stuff were in one place and treated like, say, a language resource file for i18n it would be easier to update, fix, amend, enhance, etc. Fossil's HTML/CSS handling.

  <hr><i>eric added on 2010-07-10 09:50:07:</i><br>
  I think what you are asking for is, in effect, the creation or adoption of a templating language. This would make layout easier at the expense of making functionality changes more difficult (i.e. code _and_ template). A bad idea in my opinion.

  CSS is already separate, and it would be good if every HTML object had a class attribute, but that's it.

  <hr><i>ttmrichter added on 2010-07-10 10:46:20:</i><br>
  I'm not asking so much for a templating language as just having all the HTML and CSS in one place.  Where the code currently has HTML fragments all over the place, I'm advocating keeping the HTML in a single <em>documented</em> resource file (perhaps just a C file with a bunch of named string variables or a hash map with well-known key names) so that it's easier to find the snippets and edit them as needed.


tkt_uuid: 09dd81856447fd978166908538d96f55739d0d4e
type: Code_Defect
status: Closed
severity: Important
foundin: [0448438c56] 2011-05-28 18:51:22 UTC OS X build from Website
private_contact: 35bf4e913c2736f70ece3c4ca516bbc0554ca488
resolution: Duplicate
title: "fossil: manifest file" "is malformed" when commiting
comment:
  I had a bunch of files and folders (website) i wanted to track in fossil. However i couldn't commit anything, because during the commit process right after "New version..." line i got the following error:

  "fossil: manifest file (931) is malformed"

  It turned out to be one of my files contained a german umlaut "ö" in the file name...as soon i renamed the file (removed the german umlaut), i could successfully commit.
  Probably same error might appear with all other special german characters "öäüß".
  The error message about a malformed manifest file is not very conclusive and does not give me any clue that the problem is not with the manifest file but with the characters in the filename of my files.


tkt_uuid: 683457aa0f15fadc093028b59c7f3174517d81d0
type: Feature_Request
status: Open
severity: Minor
foundin: 1.28 [3d49f04587]
private_contact: c23353d879b71913cdff54350ae86d1235e69038
resolution: Open
title: localtime on server not syncronized. "strange" behaviour in fossil
comment:
  Hi. let me first say that fossil is a great tool witch is fun to use, and it really helps me with my workflow.

  While playing with fossil on my eee i could not understand why my wiki edits did now show.

  I was able to create new wikipages, but not able to edit old ones.

  After a short while i finally noticed that the clock on my system was completly wrong because my eee had been off so long that BIOS clock was reset to year 2002(!)

  I wonder if unsynced clocks might create similar or other issues for normal use, and if this problem could be solved in any way.

  If the local fossil server creates artifacts with timestamp in the past, it could be useful with a warning. 

  It could be other way of dealing with this, and there is also a posibility to reject this ticket and expect people to have good clocks and ntpservices on their computers. - if so, maby some lines about this in the documentations.

  Thank for a great tool.

  Kjell. 

  Norway.


tkt_uuid: cadc9aa78f754439d14325655756cafebeddc3e4
type: Feature_Request
status: Closed
severity: Critical
foundin: 047e06193b
private_contact: 5ec68f6383f77210eaf40f20a0618ad57a7f4ee8
resolution: Fixed
title: convert comment between utf8 and big5 on windows
comment:
  I'm a Taiwanese. I use linux,windows.  On linux, the default coding locale is zh_TW.utf-8.  It works well for fossil. But on windows, the default command line code page is 'cp950'(big5).  So, if I write comment, I must call my comment editor 'notepad2' to force write out utf8 comment. The utf8 comment display well on 'fossil ui' web page.  But, on cmd console which windows provide, it can only display big5.

  So, I suggest on windows, fossil should convert code page when display comment and check-in comment.  

  I think this issue should also happen on check Chinese file name.

  <hr /><i>anonymous added on 2011-04-17 23:45:18 UTC:</i><br />
  use the void WINAPI SetFileApisTo[OEM|ANSI](void); when using commandline under windows
  http://msdn.microsoft.com/en-us/library/aa365534%28v=VS.85%29.aspx
  But as usual with windows it is much more complicated! The above page is confusing! using ansi,oem and utf and I don't know if utf equals ansi

  A simple solution is to set the EDITOR variable or fossil editor setting to use notepad2 or to the editor you use for your programming and don't use the -m option when committing 

  <hr /><i>anonymous claiming to be BM added on 2011-04-18 09:17:04 UTC:</i><br />
  You can use <tt>chcp 65001</tt> in your console before you use fossil, and use a Unicode fixed-size font like Consolas, which will display your comments properly.

  <hr /><i>anonymous added on 2011-04-18 13:50:15 UTC:</i><br />
  I've tried chcp 65001 and choose font solution.
  But, it will causes three problems.

    #  Ugly output. It often display a part of Chinese sentences.
    #  Can not input Chinese on code page 65001.
    #  Can not run batch file on code page 65001.

  I've try to found solution from git/mercurial check in log, but failed.
  I guess, the solution may hidden on tortoiseSvn, tortoiseHG or tortoiseGit.

  <hr /><i>anonymous claiming to be dlin added on 2011-04-18 13:55:04 UTC:</i><br />
  I forgot to mention.  Even chcp to 65001, fossil can NOT handle Chinese file name.  I can not add/remove Chinese file name.  Especially, if the Chinese BIG5 code contains '\', the fossil will treat the Chinese char as a '?'. And then it can not found the correct file. 

  <hr /><i>anonymous claiming to be dlin added on 2011-04-24 13:49:08 UTC:</i><br />
  This problem maybe could use the same method which may solve [490b6c2edd]

  <hr /><i>jan.nijtmans added on 2012-10-22 07:52:58 UTC:</i><br />
  Proposed solution can be found in branch "use-utf8-in-win-external-editor"


tkt_uuid: 974618fe5a809ff347a9c53f9ec38b476d5f65bb
type: Code_Defect
status: Open
severity: Minor
foundin: e2431b17df
private_contact: 2359089ef753bc96e12743e299243d5232c749fa
resolution: Open
title: fossil all rebuild does redundant rebuilds on windows
comment:
  on windows, fossil all rebuild causes multiple rebuilds of some repositories.  the duplicate rebuilds have identical paths except for the type of slash used in the path or sometimes the character case.  not every repository gets rebuilt twice, and some can even get rebuilt thrice.  very odd.
  <pre>
  PS C:\fossil> fossil all rebuild
  C:\WINDOWS\system32\fossil.exe rebuild C:/fossil/easyunit.f
  84 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:/fossil/fossil.f
  5637 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:/fossil/sqlite3.f
  29810 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:/fossil/xywinservice.f
  33 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:\fossil\easyunit.f
  84 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:\fossil\xywinservice.f
  33 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild c:\fossil\sqlite3.f
  29810 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild c:\fossil\xywinservice.f
  33 (100%)...
  PS C:\fossil> fossil ver
  This is fossil version [e2431b17df] 2009-11-09 21:32:36 UTC
  </pre>

  <hr><i>drh added on 2009-11-11 16:21:57:</i><br>
  Check-in [d5695157d0caade4fc251dcfbeb1ac8e8602f672]

  <hr><i>rwilson added on 2009-12-08 19:02:04:</i><br>
  This still happens on the tip [484c8f9f86]
  <pre>
  PS C:\fossil> fossil all rebuild
  C:\WINDOWS\system32\fossil.exe rebuild C:/fossil/easyunit.f
  84 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:/fossil/fossil.f
  5708 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:/fossil/sqlite3.f
  30014 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:/fossil/xywinservice.f
  33 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild C:\fossil\easyunit.f
  84 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild c:\fossil\sqlite3.f
  30011 (100%)...
  C:\WINDOWS\system32\fossil.exe rebuild c:\fossil\xywinservice.f
  33 (100%)...
  PS C:\fossil> fossil ver
  This is fossil version [484c8f9f86] 2009-12-08 18:43:51 UTC
  PS C:\fossil>
  </pre>


tkt_uuid: ebcbb50f4ac7d5cf35ddd4c33050fff07b4ac4d8
type: Documentation
status: Closed
foundin: -
private_contact: b060c7801d9aa35179e5b9af3c79b6c2693068bc
resolution: Fixed
title: List of tickets relating to Encodings
comment:
  Herewith, a list of tickets related to encoding problems.  Think of it as a "poor man's FAQ" about character encodings and Fossil.  Reading these may help answer some questions before you have to ask them...
  <blockquote>
  <table>
  <tr>
  <td>[f6bfac26484c826b8fdd33f9d93149a7279986da]</td>
  <td>Incorrent handling of unicode encoded files (fossil on win XP).</td>
  </tr>
  <tr>
  <td>[ba7e79b248640ce30507e89537d203a2d9125214]</td>
  <td>problem showing diff view with several files, each in different encoding.</td>
  </tr>
  <tr>
  <td>[0a0f00d434794670fbe9d78894c7c963d5380caa]</td>
  <td>Wiki edit textarea display and Wiki name does not support non-ASCII word</td>
  </tr>
  <tr>
  <td>[838bde7990d8e190957cbfe7f15c77322dc54e57]</td>
  <td>file extracted from Fossil zip archive could have different name</td>
  </tr>
  <tr>
  <td>[3984e3768ddbf470e62e6af98715a33abad17b49]</td>
  <td>Support for non-UTF encodings</td>
  </tr>
  <tr>
  <td>[cc6557cfc5763fa80bb04eecea7f713b0751efc4]</td>
  <td>Unicode support</td>
  </tr>
  <tr>
  <td>[eed6d07c6eb373e6c92d01958a05644184dd6c02]</td>
  <td>Non-ASCII characters not allowed in wiki page titles</td>
  </tr>
  </table>
  </blockquote>


tkt_uuid: e854101c4ffd83aba2c1d96e6b68a340eabeea6a
type: Code_Defect
status: Closed
severity: Important
foundin: 085b6a1bbb
private_contact: ab5c04693d4ea3b3339a1e41947ceb8da8054625
resolution: Fixed
title: http_proxy does not work with https
comment:
  The http proxy support does not with with https proxies using CONNECT.  It does not even give a useful error about it.


tkt_uuid: 93c266d3ee4157fe31a24a45fce97a2e9c34eb94
type: Code_Defect
status: Closed
severity: Important
foundin: daacc139a5
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Fixed
title:
  Difficulty to correctly add/list files/directories with accended characters in name/path and see them listed in "Files" menu.

comment:
  I am strugling to populate fossil repository with files containing accended characters with fossil add (on win xp).
  I am able to add files, if I manage to have such files on some directory, which is 
  named with only ascii characters (as with command: fossil add .\dirWithAsciiOnlyinItsName)
  When I later list content of such directory (fossil ls>repofiles), it shows files as ADDED.

  If I try to check content of repo with fossil ui command, it shows only directories, but no files in them.
  (browser codepage is set to UTF-8)

  If I doctor link in browser, I can manage to see added directory and files in them, but always with strange names.

  Would it help to have modified "fossil add" command, which would read  UTF-8 encoded file, with list of filenames
  to be added to repo, so perhaps this windows encoding/reencoding mess could be handled? I would prefer to be selective
  about files I like to include in repository, add seems so far to work best, but add all files.

  I have quite large, continuously groving quantity of user created scripts(thousands+), with arbitrary, user choosen names, which I like to version, 
  but so far I have no luck in fitting them into fossil repository.
  This is related to ticket [838bde7990d8e190957cbfe7f15c77322dc54e57], could be discussion on this issue open on mailing list or 
  do I miss some other way how to handle this?

  Thanks.


tkt_uuid: ee97701f4c5a7db691baf1cf79bc9cc39fee56e0
type: Code_Defect
status: Fixed
severity: Minor
foundin: 9ca5bbf8a6
private_contact: 657fecc17bdc2306d28088355d2cfe0485c38cab
resolution: Fixed
title: "fossil add" broken for repos opened into "/"
comment:
  When a fossil repository has been opened from the root directory ("/"), the attempt to "fossil add" a file results in:
   
   fossil: file outside of checkout tree: <filename>

  Trying to add a whole subdir additionally prints out a SQL error message:
   
   fossil: SQLITE_BUSY: statement aborts at 2: [ROLLBACK] cannot rollback transaction - SQL statements in progress

  But once a file has been added (e.g. from a "mount -obind" of / to a subdir), it can be committed from / just fine.

  <hr /><i>anonymous added on 2011-05-03 15:40:34 UTC:</i><br />
  The issue likely comes from the use of 

    zPwdConv = mprintf("%/", zPwd);

  in db_must_be_within_tree()->db_open_local().

  This severely limits the usability of fossil for system configuration management. The mentioned workaround (mount -orebind) is only useful for Linux (FreeBSD's unionfs & nullfs do not allow such trickery with the root filesystem).


tkt_uuid: 71bd5502ffc43a415862faaa707d1513b5bb32eb
type: Feature_Request
status: Closed
severity: Minor
foundin: 15b293259d
private_contact: 277de4eda861e8a6d011b60d4006a963a4c7c474
resolution: Fixed
title: Browser caching CSS and logo
comment:
  Hello,

  When using <tt>fossil ui</tt> on a repository, and then on <em>another one</em>, using same port, the logo and the stylesheet for the first repository are still in browser cache, and therefore the browser is not displaying what it should.

  Proposed workaround:
    *  Each time the logo or the stylesheet changes, compute its new SHA1 sum
    *  Embed URIs of this form in the HTML code: <tt>$baseurl/logo/{LOGO_SHA1SUM}</tt> or <tt>$baseurl/style.css/{STYLESHEET_SHA1SUM}</tt>
    *  On client side (browser) each logo and stylesheet will be cached, but every time a change is needed it is automatic
    *  On server side, optionally ignore the <tt>/SHA1SUM</tt> part in the URL, and always serve current logo and stylesheet as the previous ones are not stored.

  <hr><i>anonymous added on 2010-07-19 11:29:33:</i><br>
  I think it would be wiser to not ignore the sum but serve only the URL with the correct checksum if checksummed URL is requested.

  If the checksum was ignored and you changed the repo which is served on a particular address (either by editing the repo or by changing some redirection) then the new style could be cached on an URL referenced from an old page which is exactly what is to be avoided.


tkt_uuid: 3b1533a090eebd09da7121ab3fc9e3f6a7fbd6f5
type: Feature_Request
status: Closed
severity: Minor
foundin: f969b6cdde
private_contact: 09bcfe9beb6bd1f9361d71b153c193630ed2ac65
resolution: Fixed
title: 'sync' command in the web-interface
comment:
  Having two fossil servers (cgi), one clone of another. How to sync them, if there no command line access? 'Sync now' button wanted in the admin section.

  <hr><i>ron added on 2010-01-27 07:52:35:</i><br>
  Fixed with checkin [fc23960258211b5bc752a82c429d5fb3f3286b67]

  <hr><i>drh added on 2010-04-22 15:19:43:</i><br>
  The change above was incorrect and has been removed.  This feature request is now reopened.

  <hr><i>anonymous added on 2010-04-22 18:27:49:</i><br>
  Until such time as there is a web ui for this, you can sync them from a remote machine with push/pull commands.  Assuming that URL1 and URL2 represent the two remote machines, you would do the following:

  <pre>
  fossil clone URL1 syncup.fossil
  fossil pull URL2 -R syncup.fossil
  # More pulls from other repositories here if more than 2
  fossil push URL1 -R syncup.fossil
  fossil push URL2 -R syncup.fossil
  # More pushes to other repositories here if more than 2
  rm syncup.fossil
  </pre>

  Not much additional network traffic except for the first clone and if the <tt>syncup.fossil</tt> repository is kept around between syncs instead of <tt>rm</tt>ing it (subsequently pulling from URL1 rather than cloning from URL1) network traffic really won't be all that large.  (Of course suitable users and passwords with appropriate clone/pull/push privileges will have to be used.)


tkt_uuid: 897c39d28408da2ef2d475e9e69bf0f3bc240098
type: Code_Defect
status: Closed
severity: Important
foundin: 1.24
private_contact: 991285e9851026b2f86eddfd739553edc20d94d1
resolution: Fixed
title: Wiki name restriction
comment:
  <pre>On Sun, Oct 21, 2012 at 3:12 AM, K <k@lightpowered.org> wrote:

      Hello,

      I'm new to Fossil.

      I'm beginning a project with Fossil, a command program. It'll be used on Unix-like systems. The name is 2 characters in length. During the set up of my repository I gave its project name and now see the following error on my index wiki page:

      ****

      The wiki name "kk" is not well-formed. Rules for wiki page names:

          Must not begin or end with a space.
          Must not contain any control characters, including tab or newline.
          Must not have two or more spaces in a row internally.
          Must be between 3 and 100 characters in length.

      ****

      Is someone able to explain to me why there is a 3-character minimum to wiki names? This seems to me like a strange arbitrary constraint to impose.


  The minimum-3-chararacter rule is subjective.  When I wrote Fossil (6 years ago) it never occurred to me that anybody would want a wiki page name of less than 3 characters. 

  The patch to relax that rule should be trivial.</pre>


tkt_uuid: b621a3f6c129026d7462267443a0012912ce3d29
type: Code_Defect
status: Open
severity: Minor
foundin: [3543ed62bb], 1.22 [ab461f39af]
private_contact: ccd87c60364e1d3e945b6f4d4874f5174b17cc43
resolution: Open
title: Adding an attachment with description ends up not showing the description
comment:
  The description does not appear in the final ticket page, or in the ticket history page, as happened in [fcadf658ed].


tkt_uuid: 9a64ad5d8f35047056d146826d88584753d17c94
type: Code_Defect
status: Fixed
severity: Critical
foundin: [0448438c56] 2011-05-28 18:51:22 UTC
private_contact: 5385150ae9b30a8416ec6409a2d3e76c86a2f439
resolution: Duplicate
title: Fossil new version doesn't understand utf-8 characters for filenames
comment:
  I recently upgraded my fossil for the new version, and i've lost almost a year of code, restoring backups i've came back to the previos version and created a new repository with the new version, and got the an error when adding the files, the error follows:
  malformed header.

  it happens when you try to add a utf-8 filename to the repository, like é á $ í or anything-else.
  because that error I almost changed to git, but the export system is for the new version, and the new version is droping my code out.

  <hr /><i>anonymous added on 2011-06-30 03:29:15 UTC:</i><br />
  Already fixed in [f23e90da8a].


tkt_uuid: d22946aa0c8052c4dc6edd4b296cb2cb3bc80d7d
type: Code_Defect
status: Fixed
severity: Important
foundin: [3873aa7ecb]
private_contact: 5081120eaf9d2becc688bc77c336c97ae00b766d
resolution: Fixed
title: Adding files with non-English file names is not cross-platform
comment:
  Reproducing the problem, step by step:
    #  Create an empty repository on Linux.
    #  Add a file with non-English file name, say "Текст-01.txt" (the word "text" in Russian with numeric suffix), commit the changes.
    #  Clone repository to Windows machine. In the process of opening the cloned repository Fossil will create file with name "РўРµРєСЃС‚-01.txt", which is definitely is not the file name user expects.
    #  Again, add a file with non-English file name (for the above example it would be "Текст-02.txt", commit the changes and sync with the parent repository.
    #  Update the working copy on Linux. In the result there will be a new file with file name "�����-02.txt", not the original Windows file name. Besides that, the manifest file contains file names in mixed encoding and it is a considerable problem when you try to parse it with console-based tools.

  From examining the sources I see that Fossil doesn't differentiate file name encoding on different platforms and assumes it to be always UTF-8. In the contrast, on Windows console applications always use national code pages for file names. In the case of Russian localization of Windows the encoding of file names will be Windows-1251.

  In src/db.c there are cases of using sqlite3_win32_mbcs_to_utf8() function when reading the repository database, so it opens even if the file name or path contain non-English characters, but no additional conversions (MBCS to UTF-8, UTF8 to MBCS) are made in the process of working with repository files.


tkt_uuid: 8d916f5fc30be34eb232cd9aca97ecc92769e8b4
type: Code_Defect
status: Fixed
severity: Severe
foundin: eea6449098
private_contact: 24b67375dd2ec6c7381a5ad34cfcf006f0b9c260
resolution: Fixed
title: Issues with branch windows-i18n
comment:
  <pre>
  Pull command fails on Czech XP windows.
  c:\soft\bin>ver
  Microsoft Windows XP [Verze 5.1.2600]
  (Czech version of XP with SP3) 
  Command window use configuration with current code page 852:
  c:\soft\bin>MODE CON
  Stav zařízení CON:
  ------------------
      Řádků:                      300
      Sloupců:                    80
      Rychlost opakování:         31
      Prodleva před opakováním:   1
      Znaková stránka:            852
  c:\soft\bin>fossil.exe ver
  This is fossil version [eea6449098] 2011-05-02 13:31:01 UTC

  Pulling data from canonical fossil repository fails with following messages (Czech part of OS messages is displayed also incorrectly - wrong console codepage):
  c:\soft\bin>fossil.exe pull http://www.fossil-scm.org/ -R myfossilclone_canonical.fossil
  c:\soft\bin\fossil.exe: SQLITE_CANTOPEN: os_win.c:33310: (3) winOpen(C:\Documents and Settings\user\Data aplikac\_fossil) - SystÚm nem¨×e nalÚzt uvedenou cestu.
  c:\soft\bin\fossil.exe: SQLITE_CANTOPEN: os_win.c:33310: (3) winOpen(C:\Documents and Settings\user\Data aplikac\_fossil) - SystÚm nem¨×e nalÚzt uvedenou cestu.
  c:\soft\bin\fossil.exe: SQLITE_CANTOPEN: cannot open file at line 33316 of [f55156c519]
  c:\soft\bin\fossil.exe: unable to open database file

  If you have recently updated your fossil executable, you might
  need to run "fossil all rebuild" to bring the repository
  schemas up to date.
  --
  os message in Czech tells, that system cannot find path specified
  correct path should be "C:\Documents and Settings\user\Data aplikací\_fossil", Path for _fossil file in function winOpen() is missing "í"  small letter i with acute.

  If I chage code page to Eastern Europe 1250
  c:\soft\bin>MODE CON CP SELECT=1250
  Stav zařízení CON:
  ------------------
      Řádků:                      300
      Sloupců:                    80
      Rychlost opakování:         31
      Prodleva před opakováním:   1
      Znaková stránka:            1250

  The messages after attempt to pull data from fossil repository indicate the same error, only Czech parts on display are now correct:
  c:\soft\bin>fossil.exe pull http://www.fossil-scm.org/ -R myfossilclone_canonical.fossil
  c:\soft\bin\fossil.exe: SQLITE_CANTOPEN: os_win.c:33310: (3) winOpen(C:\Documents and Settings\user\Data aplikac\_fossil) - Systém nemůže nalézt uvedenou cestu.
  c:\soft\bin\fossil.exe: SQLITE_CANTOPEN: os_win.c:33310: (3) winOpen(C:\Documents and Settings\ron\Data aplikac\_fossil) - Systém nemůže nalézt uvedenou cestu.
  c:\soft\bin\fossil.exe: SQLITE_CANTOPEN: cannot open file at line 33316 of [f55156c519]
  c:\soft\bin\fossil.exe: unable to open database file

  If you have recently updated your fossil executable, you might
  need to run "fossil all rebuild" to bring the repository
  schemas up to date.

  Issue with problematic path to _fossil file is discussed also in [http://www.fossil-scm.org/fossil/wiki?name=Windows+XP] 
  </pre>

  <hr /><i>anonymous added on 2011-05-03 19:48:17 UTC:</i><br />
  fossil from latest windows-i18n branch still suffers with troubles on non English windows systems.
   
  <pre>
  c:\soft\bin>fossil ver
  This is fossil version [48f5dadafd] 2011-05-03 18:32:00 UTC

  c:\soft\bin>fossil.exe pull http://www.fossil-scm.org/ -R myfossilclone_canonical.fossil
  c:\soft\bin\fossil.exe: invalid home directory: C:\Documents and Settings\user\Data aplikac
  (again, there is í missing, correct path should read "C:\Documents and Settings\user\Data aplikací")

  c:\soft\bin>fossil init test.fossil
  c:\soft\bin\fossil.exe: invalid home directory: C:\Documents and Settings\user\Data aplikac
  </pre>

  <hr /><i>anonymous added on 2011-05-03 21:55:38 UTC:</i><br />
  <pre>
  c:\soft\bin>fossil ver
  This is fossil version [b7df0b9ce6] 2011-05-03 20:25:03 UTC
  c:\soft\bin>fossil.exe pull http://www.fossil-scm.org/ -R myfossilclone_canonical.fossil
                  Bytes      Cards  Artifacts     Deltas
  Sent:             177          2          0          0
  Received:        1412         31          0          0
  Total network traffic: 291 bytes sent, 908 bytes received

  Pull from canonical repository is working. Thanks.

  It is possible to create new repository:
  c:\soft\bin>fossil init test.fossil
  project-id: 1077e040e493ef0a887a53c16df935bfe9fd8edb
  server-id:  c01f4ddc57b5d22f0f7684e7f9382902433ea912
  admin-user: user (initial password is "eb5efc")

  Now, I can open it and check on its status
  c:\soft\bin>fossil open test.fossil
  c:\soft\bin>fossil status
  repository:   c:/soft/bin/test.fossil
  local-root:   c:/soft/bin/
  server-code:  c01f4ddc57b5d22f0f7684e7f9382902433ea912
  checkout:     20f3504f47010db5c249061bb3604f85a293716d 2011-05-03 21:37:24 UTC
  tags:         trunk
  comment:      initial empty check-in (user: user)

  If I try to add file with a name containing letters with diacritics "test_šťěk.txt" in my case
  c:\soft\bin>dir test*.txt
  03.05.2011  23:40                39 test_šťěk.txt
                 1 souborů,             39 bajtů

  It fails, because it try to open file under mungled name               
  c:\soft\bin>fossil add .\test_šťěk.txt
  c:\soft\bin\fossil.exe: cannot open c:/soft/bin/test_ÜŁýk.txt

  </pre>

  <hr /><i>anonymous added on 2011-05-04 18:04:28 UTC:</i><br />
  <pre>
  It seems that data into repository go OK (as seen in browser), 
  just display on command line is mungled. In fact in two different 
  flavors. Also status command might be showing  EDITED even file 
  was not edited after commit was made.
  Please see details below.

  c:\soft\bin>fossil ver
  This is fossil version [503a0ef555] 2011-05-04 11:16:53 UTC

  In command window using codepage 852:
  c:\soft\bin>MODE CON
  Stav zařízení CON:
  ------------------
      Řádků:                      300
      Sloupců:                    80
      Rychlost opakování:         31
      Prodleva před opakováním:   1
      Znaková stránka:            852

  I can add file with name containing diacritics, ADDED message shows name mungled

  c:\soft\bin>fossil add .\test_šťěk.txt
  ADDED  test_ÜŁýk.txt

  stat command show name mungled but now it is a different one
  c:\soft\bin>fossil stat
  repository:   c:/soft/bin/test.fossil
  local-root:   c:/soft/bin/
  server-code:  c01f4ddc57b5d22f0f7684e7f9382902433ea912
  checkout:     20f3504f47010db5c249061bb3604f85a293716d 2011-05-03 21:37:24 UTC
  tags:         trunk
  comment:      initial empty check-in (user: user)
  ADDED      test_+í+ą¦Ťk.txt

  I can check in file with a note containing diacritical message

  c:\soft\bin>fossil ci -m "added file .\test_šťěk.txt"
  New_Version: edcc37190a355d6f099e88b5de44c1720f03766e

  ls shows name again mungled
  c:\soft\bin>fossil ls
  test_ÜŁýk.txt

  stat shows message EDITED, even file was not changed since  commit, name is mungled
  c:\soft\bin>fossil stat
  repository:   c:/soft/bin/test.fossil
  local-root:   c:/soft/bin/
  server-code:  c01f4ddc57b5d22f0f7684e7f9382902433ea912
  checkout:     edcc37190a355d6f099e88b5de44c1720f03766e 2011-05-04 17:27:07 UTC
  parent:       20f3504f47010db5c249061bb3604f85a293716d 2011-05-03 21:37:24 UTC
  tags:         trunk
  comment:      added file .\test_ÜŁýk.txt (user: user)
  EDITED     test_+í+ą¦Ťk.txt

  info command shows incorectly user-home path and comment
  c:\soft\bin>fossil info
  project-name: <unnamed>
  repository:   c:/soft/bin/test.fossil
  local-root:   c:/soft/bin/
  user-home:    C:/Documents and Settings/user/Data aplikacÝ
  project-code: 1077e040e493ef0a887a53c16df935bfe9fd8edb
  server-code:  c01f4ddc57b5d22f0f7684e7f9382902433ea912
  checkout:     edcc37190a355d6f099e88b5de44c1720f03766e 2011-05-04 17:27:07 UTC
  parent:       20f3504f47010db5c249061bb3604f85a293716d 2011-05-03 21:37:24 UTC
  tags:         trunk
  comment:      added file .\test_ÜŁýk.txt (user: user)

  Displayed commit message in Timeline as seen in browser(firefox 3.6.12)  looks OK  
  [edcc37190a] Leaf: added file .\test_šťěk.txt (user: user, tags: trunk) 

  content of the file in browser is correct:
  Artifact 8a24e0763f7eadac5cea150bf1942bb2b4855356

      File test_šťěk.txt part of check-in [edcc37190a] - added file .\test_šťěk.txt by user on 2011-05-04 17:27:07. [annotate] 

      name of this file means bark in English

  Repository Statistics page
  Repository Size:	56320 bytes
  Number Of Artifacts:	3 (stored as 3 full text and 0 delta blobs)
  Uncompressed Artifact Size:	147 bytes average, 240 bytes max, 443 bytes total
  Compression Ratio:	0:10
  Number Of Check-ins:	1
  Number Of Files:	1
  Number Of Wiki Pages:	0
  Number Of Tickets:	0
  Duration Of Project:	1 days or approximately 0.00 years
  Project ID:	1077e040e493ef0a887a53c16df935bfe9fd8edb
  Server ID:	c01f4ddc57b5d22f0f7684e7f9382902433ea912
  Fossil Version:	2011-05-04 11:16:53 [503a0ef555] (mingw32)
  SQLite Version:	2011-04-27 19:54:44 [f55156c519] (3.7.6.1)
  Database Stats:	55 pages, 1024 bytes/page, 0 free pages, UTF-8, delete mode 

  </pre>

  <hr /><i>anonymous added on 2011-05-04 18:56:55 UTC:</i><br />
  <b>Here my observations:</b>
  (using version: [503a0ef555])

  On cmd.exe, I type: chcp 65001 and I use lucida console font instead of the default Rasters font to be able to use utf-8 on console. in that mode, fossil status will print filename correctly on the console. But not the fossil add command: since it print on screen before the conversion to utf-8. (I believe).


tkt_uuid: 8c46da20797072ac4007b279be826ffa7ef59135
type: Incident
status: Fixed
severity: Minor
foundin: [cb44f7dea4] 2010-05-24 18:43:32
private_contact: a2024467242089d1dce2d3a24ac29a8241112db9
resolution: Fixed
title: Checkin fails: "editor aborted" on Cygwin
comment:
  Problem only exists (for me) in Cygwin on Windows.

  I have vi installed in Cygwin, and `which' reports it to be:

  <verbatim>
  $ which vi
  /usr/bin/vi
  </verbatim>

  So, I manually set my fossil editor, using `fossil set editor /usr/bin/vi'.

  When I checkin, I get:

  <verbatim>
  $ fossil.exe ci
  Autosync:  http://sentry:8080/
                  Bytes      Cards  Artifacts     Deltas
  Send:              87          1          0          0
  40The system cannot find the path specified.
  Received:        1794         40          0          0
  /usr/bin/vi "C:/cygwin/home/User1/src/ci-comment-A97A91FD685A.txt"
  C:\cygwin\bin\fossil.exe: editor aborted
  </verbatim>

  The next to the last line seems to be the command that is `fork()'ed?  If I copy and paste that line in, `vi' is launched with the normal checkin file, ("# Enter comments on this commit.  Lines beginning with # are ignored"... etc)

  If I `fossil set editor notepad', notepad opens the file correctly.

  If I `fossil.exe set editor "C:\\Program\\ Files\\Vim\\vim70\\gvim.exe"', I get:

  <verbatim>
  $ fossil.exe ci
  Autosync:  http://sentry:8080/
                  Bytes      Cards  Artifacts     Deltas
  Send:              87          1          0          0
  40'C:\Program\' is not recognized as an internal or external command,
  operable program or batch file.
  Received:        1794         40          0          0
  C:\Program\ Files\Vim\vim70\gvim.exe "C:/cygwin/home/User1/src/ci-comment-C042442842F0.txt"
  C:\cygwin\bin\fossil.exe: editor aborted
  </verbatim>

  (I also tried with every combination of forward- and back-slashes, and quoting of the space character, with similar results.)

  <hr><i>anonymous claiming to be Kees Nuyt added on 2008-12-11 23:57:37:</i><br>
  Are you sure the path is 
    *  C:\Program\ Files\Vim\vim70\gvim.exe ?

  Shouldn't that be
    *  C:\Program Files\Vim\vim70\gvim.exe ?

  If you have a choice, you'd better install unix-like tools in directories outside the 'standard' Windows directories, for example
    *  C:\bin\Vim\vim70\gvim.exe

  By the way, modern versions of MS Windows (XP, Vista) can handle forward slashes quite well internally. You will only get into trouble with the classic command line utilities, which still reserve the forward slash as the default 'option' character.

  <hr><i>kkinnell added on 2008-12-12 07:33:27:</i><br>
  Another test it might good to run would be to try to checkin
  using the <code>-m "<i>checkin comment</i>"</code> option.

  At the very least it would save you from the evil clutches of <i>vi</i>.<br>
  <font size="0.6em" color="#668888">(Hehe.  A little joke, not an invitation to the flame wars.  I list <i>Emacs</i> as one of my Operating Systems skills on my resum&#233;.)</font>

  <hr><i>anonymous added on 2008-12-12 15:03:22:</i><br>
    Shouldn't that be

      * C:\Program Files\Vim\vim70\gvim.exe ?

  Yes, I tried that first.  I should have been more explicit than just saying "quoting of the space character".

  And I avoid using the <code>-m</code> option, because I often just do a checkin without a filename, so that all files that I have changed are checked in, without me knowing about it.  At least when I use the <b>superior</b> editor vi, :^) the comment section tells me what files are being checked in.  I probably need to change my workflow, I know, but old habits...

  It looks on the surface to be a problem with pathnames that have spaces in them?

  <hr><i>kkinnell added on 2008-12-12 20:43:52:</i><br>
  It's been a while since I've used Cygwin, but I seem to recall having to quote the whole darned path to the executable if the path had spaces in it:
  <verbatim>   "C:/some darned path/with irritating/spaces/my.exe" "C:/quoted path/data"</verbatim>

  IIRC, the last time I was using Cygwin (on a NT5 box in 2003) the only way I could rely on an exe "just running" was if I put it into the command32 (or whatever it's called) "folder"&#8212;putting it into the Cygwin bin dir didn't work consistently.  I finally ended up dumping Cygwin and getting win native versions of bash, less, and a few other GNU progs.


  <hr><i>anonymous claiming to be silov.e added on 2008-12-16 06:15:37:</i><br>
  When fossil start editor (or diff) application, it use 'system(...)' function and mingw(msvcrt) runtime interprets it to <code>getenv("COMSPEC") + " /c " + "..."</code>.<br>So if environment variable 'COMSPEC' set to "...\cmd.exe", editor name depends on "cmd.exe"'s quoting rule and application search rule.<br>&gt; <tt>fossil set editor "\"C:\Program Files\Vim\vim70\gvim.exe\""</tt><br>&gt; <tt>fossil set editor<br>editor (local) "C:\Program Files\Vim\vim70\gvim.exe"</tt>

  <hr><i>rwilson added on 2009-09-22 18:34:28:</i><br>
  it doesn't look like fossil allows you to escape quotes on the windows command line:

  <pre>
  PS C:\fossil\xyntservice> fossil setting editor "\"c:\program files\jgsoft\editpadpro6\editpadpro.exe\""
  Usage: C:\WINDOWS\system32\fossil.exe setting ?PROPERTY? ?VALUE?
  PS C:\fossil\xyntservice>
  </pre>

  <hr><i>anonymous claiming to be silov.e added on 2009-10-09 05:13:02:</i><br>
  I retest with Windows XP, cmd.exe and pre-build binary "fossil-w32-20090921191920.zip" download from this site.<br>It works. tell me your environment.<blockquote><verbatim>$ cmd /k ver
  Microsoft Windows XP [Version 5.1.2600]
  $ set comspec
  COMSPEC=C:\WINDOWS\system32\cmd.exe
  $ fossil version
  This is fossil version [37f295c310] 2009-09-21 19:19:20 UTC
  $ fossil settings -g editor "\"c:\program files\jgsoft\editpadpro6\editpadpro.exe\""
  $ fossil settings editor
  editor               (global) "c:\program files\jgsoft\editpadpro6\editpadpro.exe"
  $ exit</verbatim></blockquote>

  <hr><i>anonymous added on 2010-05-26 13:40:51:</i><br>
  This happens for me when editing the commit message in ed, the editor which Fossil chooses as the default one on Linux.

  w
  218
  q
  fossil: editor aborted


tkt_uuid: 5317b79552cc460c4ff9fd27d4589e7fb619e727
type: Code_Defect
status: Fixed
severity: Severe
foundin: f969b6cdde
private_contact: 09bcfe9beb6bd1f9361d71b153c193630ed2ac65
resolution: Fixed
title: i18n for filenames
comment:
  When I run "fossil.exe add dir" under Windows, fossil recursively adding all files. If there are files with non-ascii names (Russian in my case), they inserted into fossil repo using system default encoding ('windows-1251' in Windows with Russian locale), and fossil works with them w/o problems. But in the web-interface on the files page (/dir) these files shown with unreadable names. This is because of UTF-8 <verbatim>fprintf(g.httpOut, "Content-Type: %s; charset=utf-8\r\n", zContentType);</verbatim> in the HTTP reply header (cgi.c).

  Please <b>delete "; charset=utf-8" part</b> from Content-Type header because there no CP convertor in the fossil. This will allow to set any charset in the META tags in the page header template and use browser's internal CP convertor or CP autodetector.

  This will also solve a problem from the ticket [d23fb0b742ac2e989e36bfef98281f970ab34e8f], I think.

  <hr><i>drh added on 2009-09-24 14:32:43:</i><br>
  The fossil repository should store all filenames as UTF8.  I think the bug
  here is that the "fossil add" command is not converting the names from the
  microsoft encoding into UTF8 before storing them.


tkt_uuid: 4497341fa070690c4938fdad92cdd53be86635ed
type: Build_Problem
status: Fixed
severity: Important
foundin: [11b3f31de9] 2010-05-09 16:51:12 UTC
private_contact: 5b06cbfac6af383308ac23d75ace1bba970322f9
resolution: Fixed
title: "zlib1.dll not found" error after building latest leaf
comment:
  After compiling the latest Fossil source for Windows using the instructions on the Cookbook wiki section, opening an existing Fossil or creating a new one results in the error message "This application has failed to start because zlib1.dll was not found. Re-installing the application may fix the problem." It will not create the repo or open it.

  The source was compiled on a Windows XP Pro SP3 machine.

  Here's what I did:
    *  Uninstalled both MingW and MSYS, then made another fresh install of both.
    *  Downloaded the latest source from zlib.net, used its Makefile.gcc to build "libz.a"
    *  Copied libz.a over to the "lib" folder inside MingW
    *  Downloaded the Zip file from the latest Fossil leaf and extracted it into a separate folder
    *  Mounted the folder in the bash shell and compiled the Fossil source using the same Makefile.w32 included with it.

  Now it works fine.

  <hr><i>anonymous claiming to be anonymous (said to be Arnel) added on 2010-05-09 22:07:14:</i><br>
  The same error message appeared now after I tried to commit a bunch of files into the new repo. No error occurred when creating a repo, opening it, and adding files into it.

  <hr><i>anonymous claiming to be Arnel added on 2010-05-09 22:30:33:</i><br>
  Please ignore my last comment. It was the first Fossil build I created (with the zlib1 error) causing the commit error, not the second one.


tkt_uuid: 490b6c2eddccbc6a1cfa03cd4d1ecfd544b7e655
type: Code_Defect
status: Fixed
priority: Immediate
severity: Critical
foundin: all
private_contact: 1dca2ffc06084af8439f92609c6fb022126d94ed
resolution: Fixed
title: Chinese windows file name require convert from mbcs to utf8
comment:
  The problem is it require convert from mbcs file name into utf8 before added to sqlite db. It may use the same function which sqlite process the filename.

  Here is the log 

    *  Case 1:  It added to fossil repository, but can not display correct file name by 'fossil ui'.

  <verbatim>
  C:\tmp\s>echo. > 中文檔名.txt
  C:\tmp\s>fossil extra
  中文檔名.txt

  C:\tmp\s>fossil add .
  c:\bin\fossil.exe: cannot add _FOSSIL_
  c:\bin\fossil.exe: cannot add _FOSSIL_-journal
  ADDED  中文檔名.txt
  </verbatim>

    *  Case 2:  If Chinese file name contains '\', It can not added to fossil repository.

  <verbatim>
  C:\tmp\t>echo. > 許檔名.txt

  C:\tmp\t>dir
   磁碟區 C 中的磁碟沒有標籤。
   磁碟區序號:  2CA2-66A2

   C:\tmp\t 的目錄

  2011/04/24  下午 09:29    <DIR>          .
  2011/04/24  下午 09:29    <DIR>          ..
  2011/04/24  下午 09:29             7,168 _FOSSIL_
  2011/04/24  下午 09:29                 3 中文檔名.txt
  2011/04/24  下午 09:29                 3 許檔名.txt
                 3 個檔案           7,174 位元組
                 2 個目錄   2,522,914,816 位元組可用

  C:\tmp\t>fossil add .
  c:\bin\fossil.exe: cannot add _FOSSIL_
  c:\bin\fossil.exe: cannot add _FOSSIL_-journal
  ADDED  中文檔名.txt
  ADDED  ?檔名.txt

  C:\tmp\t>fossil ci
  C:\tmp\t>fossil ci

  # Enter comments on this check-in.  Lines beginning with # are ignored.
  # The check-in comment follows wiki formatting rules.
  #
  # user: dlin
  # tags: trunk
  #
  # ADDED      ?檔名.txt
  #
  # Since no default text editor is set using EDITOR or VISUAL
  # environment variables or the "fossil set editor" command,
  # and because no check-in comment was specified using the "-m"
  # or "-M" command-line options, you will need to enter the
  # check-in comment below.  Type "." on a line by itself when
  # you are done:
  insert special filename with \
  .
  c:\bin\fossil.exe: cannot open C:/tmp/t/?檔名.txt for reading
  c:\bin\fossil.exe: SQLITE_BUSY: statement aborts at 2: [ROLLBACK] cannot rollbac
  k transaction - SQL statements in progress
  </verbatim>

  <hr /><i>anonymous claiming to be dlin added on 2011-04-24 13:45:48 UTC:</i><br />
  I've tried to add sqlite3_win32_mbcs_to_utf8 code before add_one_file().
  But I'm stupid, it can not work by my direty patch.

  But, the result seems have some effect.

  <verbatim>
  C:\tmp\t>d:\fossil add .
  ADDED  閮望???txt

  C:\tmp\t>d:\fossil ci
  d:\fossil.exe: missing file: 閮望???txt
  d:\fossil.exe: aborting due to prior errors
  </verbatim>

  <hr /><i>jan.nijtmans added on 2012-10-22 07:54:24 UTC:</i><br />
  This should be fixed in (upcoming) version 1.24


tkt_uuid: 13b73889641e1b6c4f7ff9af23106e7034bb648c
type: Code_Defect
status: Fixed
severity: Minor
foundin: e7b6434112
private_contact: baf689df8a76164ce22b94c9dfd8eeb3a13e6730
resolution: Fixed
title: Commit comments with multi-byte character break
comment:
  I use windows command line prompt cmd to commit changes with command 
  <code>"fossil commit -m "修正问题。"</code>, and then use command <code>"fossil ui"</code> to view the commitment. And find chaos of comments, only after chosing the web page encoding to GBK and the comments seem OK.
  I had try following modify and it works fine.
  <pre>
  src/checkin.c 
  ========================================
  @@ -740,9 +740,11 @@
     blob_appendf(pOut, "Z %b\n", &mcksum);
     if( pnFBcard ) *pnFBcard = nFBcard;
   }
   
  -
  +#if defined(_WIN32)
  +extern char *sqlite3_win32_mbcs_to_utf8(const char*);
  +#endif
   /*
   ** COMMAND: ci
   ** COMMAND: commit
   **
  @@ -970,8 +972,16 @@
       if( blob_str(&ans)[0]!='y' ){
         fossil_exit(1);
       }
     }else{
  +#if defined(_WIN32)
  +    char *zConvertComment = sqlite3_win32_mbcs_to_utf8(blob_str(&comment));
  +    if (zConvertComment){
  +      blob_reset(&comment);
  +      blob_append(&comment, zConvertComment, -1);
  +      free(zConvertComment);
  +    }
  +#endif
       db_multi_exec("REPLACE INTO vvar VALUES('ci-comment',%B)", &comment);
       db_end_transaction(0);
       db_begin_transaction();
     }
  </pre>

  <hr /><i>jan.nijtmans added on 2012-10-22 08:00:09 UTC:</i><br />
  should be fixed in version 1.24


tkt_uuid: 4b881458c3b93b88e7d7b3666162ba17711fe7fe
type: Feature_Request
status: Open
private_contact: 2f98bd34c080ac26bbeb8ea754dfd01c5d3a2018
resolution: Open
title: support for incremental import/export
comment:
  According to the [http://article.gmane.org/gmane.comp.version-control.fossil-scm.user/4141|post] which I sent to the mailing list, I believe it would be nice if Fossil would extend its current support for import/export from/to Git by adding support for incremental import/export according to the Git's fast-import/export docs:

  <verbatim>
   --export-marks=<file> 

  Dumps the internal marks table to <file> when
  complete. Marks are written one per line as :markid SHA-1. Frontends
  can use this file to validate imports after they have been completed,
  or to save the marks table across incremental runs. As <file> is only
  opened and truncated at checkpoint (or completion) the same path can
  also be safely given to --import-marks.

  --import-marks=<file> 

  Before processing any input, load the marks specified in <file>. The
  input file must exist, must be readable, and must use the same format
  as produced by --export-marks.
  </verbatim>

  This would (hopefully) enable Fossil users to keep using Fossil while collaborating with other SCM systems, something what one can e.g. achieve with Bazaar by using bzr-{hg,git,svn} plugins.

  <hr /><i>joerg added on 2011-09-12 13:19:30 UTC:</i><br />
  "fossil export" supports marker files. It doesn't work reliably for git though as it tends to fail on the git side during testing. It was complaining about missing objects, which are clearly part of an earlier import.


