Timeline
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

110 events for the month beginning 2022-08-01

Following month ↑
2022-08-30
12:50 Edit [b04740bd75600c30|b04740bd75]: Mark "Closed". artifact: 54ece50e6c user: stephan
01:49
Embroidered the "make container-run" target to make it more convenient. check-in: bc09e28a26 user: wyoung tags: trunk
2022-08-29
18:21
The container doc bit on raw sockets now covers the other three Busybox utilities we left out previously. Today's removal of ping and traceroute merely completes the set; it wasn't complete in itself. check-in: b429bd71db user: wyoung tags: trunk
18:07
Clarified the points in §5.2.1 of the Docker container build doc regarding the reason why the server parent process runs as root. check-in: c2eaa60da9 user: wyoung tags: trunk
17:54
Researched, tested, and documented the set of "docker create --cap-drop" options we can add to strip away unnecessary root privileges inside the container without harming normal operation. Belt-and-suspenders: if any bad actor ever got into the container with root privileges, this would help prevent them from affecting anything outside the contain... check-in: f715add938 user: wyoung tags: trunk
17:32
Removed ping and traceroute commands from the Docker container. They require raw sockets support, which means if anyone broke into the container and managed a root privilege escalation, they could do a wide array of bad things on any network the container is bound to. check-in: f00a88f896 user: wyoung tags: trunk
16:01
Polishing pass on §5.2 of the container build doc, "Why Chroot?" check-in: e98603144b user: wyoung tags: trunk
14:27
Add a missing closing LI tag for the /tkthistory page. check-in: 2d0b2bda87 user: george tags: deltify-tkt-blobs
14:03
Minor optimization within getAllTicketFields() function. check-in: c3e7ed3089 user: george tags: deltify-tkt-blobs
2022-08-28
17:58
Clarified the parent process user ID vs the child process in the explanation of how the chroot feature interacts with the custom user feature of the Docker container. check-in: f9ddd38ecc user: wyoung tags: trunk
17:52
Made a better distinction between bind mounts and Docker volumes in the new Docker section of the build doc. check-in: 958a6af94b user: wyoung tags: trunk
2022-08-25
12:39 Changes to wiki page "To Do List" artifact: 9d9aa4ba2a user: stephan
2022-08-24
07:42 Edit [b04740bd75600c30|b04740bd75]: Move to branch mistake. Edit check-in comment. artifact: ce0e3724a3 user: stephan
06:52
Add a slight drop shadow to the /chat message widgets. Edit: we already had a drop shadow, just placed on a different sub-element. Closed-Leaf check-in: b04740bd75 user: stephan tags: mistake
2022-08-23
11:14
Correct a NULL being passed to strcmp() which caused any submit of JS script code in the skin editor to segfault. Reported in [forum:9d9f0580fd | forum post 9d9f0580fd]. check-in: a88478391e user: stephan tags: trunk
2022-08-22
18:27
Make it possible to store similar ticket change artifacts as deltas. This might be useful when a certain column of the TICKET table holds a lengthy text that may undergo frequent modifications.

This is an opt-in feature. It is activated only when TICKET table contains a phony INTEGER column "baseline for $n... check-in: 0f4a0fe82a user: george tags: deltify-tkt-blobs

2022-08-19
04:42
Fix the logic to cancel default actions and further event bubbling to take effect for all handled keys. check-in: 9cfd4e2b23 user: florian tags: timeline-keyboard-navigation
2022-08-18
13:21
Add the "Timeline" submenu link on the setup_edit page, for ordinary users. Change the "Access Log" link on that same page so that it is only present for ordinary users - not special users like "reader" or "developer". check-in: 6f70a236ce user: drh tags: trunk
2022-08-17
05:30
Removed a digression in the gitusers doc about Fossil's new clone-and-open mechanisms. That got moved to the ckout-workflows doc quite some time back, and we already point to it from that same section. There's no reason for the redundancy. Also cleaned up some grammar and typos while in there. check-in: f43eaf01e3 user: wyoung tags: trunk
2022-08-16
20:54 Edit [8849abb733c619b8|8849abb733]: Edit check-in comment. artifact: b548aee2eb user: wyoung
11:05
Changed the "fossil server --user" flag's argument back to "admin" from "fossil" for the container: I was confusing the Unix user name with the default Fossil repo user name. The new "adduser fossil" stuff doesn't help here; we still want it to be called "admin". check-in: 72d820f320 user: wyoung tags: trunk
11:04
ARM build fixes for the container:
  • QEMU couldn't cope with "make -j" on the BusyBox step (too many processes) so I changed it to -j11
  • Made the new executable compression step conditional, since there is no upx package in Alpine for either ARM flavor. There's [https://github.com/upx/upx/issues/441 | a long bug thread...
check-in: 8849abb733 user: wyoung tags: trunk
09:39
Minor fixes to the Docker container build process check-in: 454397b0cd user: wyoung tags: trunk
07:14
URL fix necessitated from the Dockerfile.in rename check-in: 2f67bf941a user: wyoung tags: trunk
07:03
Carved the Docker container image size down still further by stripping out all but two of the stock skins (d* so we get default and darkmode) and packing Fossil and BusyBox with UPX. check-in: e20d044cc0 user: wyoung tags: trunk
06:49
Fixed an Obi Wan error in the new Fossil version prefix stuff in auto.def: it was extracting the first 13 characters of the hash, not the first 12. check-in: 7ecd23e0ef user: wyoung tags: trunk
2022-08-15
23:21
Added the container-image and container-run top-level build targets to manage dependencies better and to auto-version the build products. check-in: 67386c75f5 user: wyoung tags: trunk
23:07
Put the "--user fossil" bit back into the fossil server command for the container. Just ran into a situations where it's still needed. check-in: 4c8cc80450 user: wyoung tags: trunk
22:13
Polishing pass on the container repo storage section of the build docs. check-in: 3e332637f1 user: wyoung tags: trunk
22:02
Changed several of the Docker environment variables to build arguments so the user an override them at build time rather than container creation time, and documented them in build.wiki. Using this new mechanism to pull the Fossil source tarball in such a way that we can use the Docker artifact cache without getting stale builds. You can now pass ... check-in: f938438380 user: wyoung tags: trunk
15:32
Adding the BusyBox tarball to the container image with an ADD command rather than wget to avoid triggering GitHub throttling. Unlike the Fossil repo URL, it has a version number baked into it, so it's safe to give it over to Docker's caching behavior. check-in: d06d7c464e user: wyoung tags: trunk
14:48
Noted the container size shrinkage in the fossil-v-git doc check-in: f21de33e97 user: wyoung tags: trunk
14:42
The container now builds Busybox from source so we can remove utilities that are unhelpful inside the container. We leave a lot behind for expansion (e.g. the runit init system, crond, inetd…) but we remove things that have no possible justification, such as modprobe. We remove everything from /bin that's a shell builtin (echo, printf, test…) ... check-in: 953f367e94 user: wyoung tags: trunk
10:28
Add #ifdef's to fix the Windows build. check-in: f572f7524d user: florian tags: trunk
10:25
Simplification and harmonisation of the help text. check-in: 6d10841735 user: florian tags: timeline-keyboard-navigation
10:21
Also disable shortcut handling if the View Style drop-down list has keyboard focus. check-in: f419c7ebe7 user: florian tags: timeline-keyboard-navigation
2022-08-14
19:53
The chown -R bit added to the Dockerfile touches /jail/bin/fossil, which causes "docker build" to promote it back into a new layer, nearly doubling the container size. Doing a chown now only on two directories, restoring it to its sub-9M size. check-in: 00cc9c3eb1 user: wyoung tags: trunk
19:42
Fossil's chroot feature drops root permissions based on file ownership, but since the container was built with everything-root, its HTTP hit handling children would run as whatever host-side UID/GID pair you used for file ownership. What happened next was complex.

If you let the container create the repo internally, it would be owned as root, so ... check-in: ba21bc0b8f user: wyoung tags: trunk

19:33
Resolved timeline segfault reported in [forum:0bbb66eee4ba35db|forum post 0bbb66eee4ba35db], triggered by entries with NULL checkin messages. check-in: 20eab78592 user: stephan tags: trunk
18:48
Moved the SIGTERM handler up before the "fossil server" HTTP hit handler. We had it clustered with the other signal() calls, but those are to handle signals intended to occur only during CGI processing. This one will normally occur while we're blocked, waiting for the HTTP hit to occur, so it had no useful effect where it was. check-in: d3c55fe024 user: wyoung tags: trunk
18:01
Changed previous to call fossil_exit() instead of exit(3) so we close our databases before dying. check-in: 7c857d2233 user: wyoung tags: trunk
17:59
The parent process now handles SIGTERM with an explicit exit(3) call when its PID is 1, as when it's running as "fossil server" in a Docker container. Without this, the container host's shutdown process takes a long time because it's waiting on PID 1 to die and eventually has to time out and kill it. check-in: 1d09e60739 user: wyoung tags: trunk
16:19
Markup fix check-in: cf1497877a user: wyoung tags: trunk
16:18
Clarified the fact that the "docker cp" command is changing the name of the repository DB file. check-in: f0b15a37fc user: wyoung tags: trunk
16:15
Slight emphasis fix in previous check-in: 1441c2e6d3 user: wyoung tags: trunk
16:13
Edit pass on §5.1 of build.wiki, fixing a number of unclear bits, particularly with regard to images vs containers. check-in: e2b9114b18 user: wyoung tags: trunk
08:54
Merge with trunk to get the latest web UI fixes. check-in: e317872280 user: florian tags: timeline-keyboard-navigation
08:16
Comment and TODO updates. check-in: cfed59c9d1 user: florian tags: timeline-keyboard-navigation
08:07
Cancel default actions and further bubbling of handled keys, in case of conflicts with browser (extension) defaults. check-in: 5257960080 user: florian tags: timeline-keyboard-navigation
08:03
Fix the shortcut handler to cycle between selected, check-out and ticked entries getting stuck, and give highest priority to ticked entries. check-in: b6a656b520 user: florian tags: timeline-keyboard-navigation
07:56
Remap keyboard shortcuts, and ensure only letter keys are combined with SHIFT, as non-letter keys may produce different key code pairs with and without SHIFT depending on the keyboard layout. check-in: 33f9315d44 user: florian tags: timeline-keyboard-navigation
2022-08-13
23:39
Using the preceding --chroot fixes to make the Docker container serve the repo from /jail/museum/repo.fossil rather than from the chroot dir, /jail. This then allows us to mount a Docker volume at /jail/museum, which has an independent persistence from the container proper, so we can now rebuild the container without destroying the presumably preci... check-in: f76e762fb7 user: wyoung tags: trunk
22:15
Moved the chdir() call within enter_chroot_jail() down below the new repo name canonicalization code to allow use of relative path names. Before, you had to give an absolute path to the repo, since we'd cd'd away from that directory before we started to validate the path. check-in: e94621186f user: wyoung tags: trunk
22:14
Moved the setting of g.fJail flag into the repo = "/" case since it exists only to communicate the chroot status to --repolist mode. (This confirms the speculation in the prior commit's comment: the prior behavior existed to serve repolist mode only.) check-in: 324d232c25 user: wyoung tags: trunk
21:21
Fixed the --chroot flag to "fossil server" and "fossil http" to allow it to work in conjunction with the single-repository case. Before, it blindly assumed --repolist mode. check-in: 6f92ad99d9 user: wyoung tags: trunk
2022-08-12
17:01
Fixed pointless use of interwiki link in the new section 2.2 material of fossil-v-git. check-in: 73c95307c9 user: wyoung tags: trunk
2022-08-11
10:02
Potential, minimally-tested fix for (remote add default URL) not working, as reported in [forum:5748fcb117a99b43|forum post 5748fcb117a99b43]. check-in: c06f58b565 user: stephan tags: remote-add-fix
06:42
Another attempt to make the CSS for the focus indicator work with any skin foreground and background colors and branch colors: instead of changing just the background color, the foreground color is also adjusted, so the indicator can still be recognized even if similar to a branch color. Besides, no more editing of SVG code is necessary to make adj... check-in: a8d306bec6 user: florian tags: timeline-keyboard-navigation
06:17
Mention in the help text that ticking the second entry node opens the diff page. Again, thanks @rouilj! check-in: 13e0f32e3b user: florian tags: timeline-keyboard-navigation
06:12
Swap semantics of the "primary" and "secondary" highlighted entries to improve selection of the default focused entry. The "secondary" corresponds to the "To:" entry on /vdiff pages and hance is the last focused entry, so should also be the default when returning to /timeline both by keyboard shortcut or the browser "backwards" command. Thanks @rou... check-in: 63c1be8c31 user: florian tags: timeline-keyboard-navigation
05:57
Shortcut "." (period) to set focus to the entry closest to the center of the viewport. (The keys need to be reassigned later, since non-letter keys don't produce the same characters with or without SHIFT pressed on all keyboard layouts.) Thanks @rouilj for the suggestion and the hint! check-in: e1796f2df2 user: florian tags: timeline-keyboard-navigation
05:48
Refactorings to cookie handling. check-in: cf38f5abb8 user: florian tags: timeline-keyboard-navigation
03:58 Edit [49a2d1361f6c6932|49a2d1361f]: Edit check-in comment. artifact: 4d4dc762d7 user: florian
03:54 Edit [2fc93df48f9ce81c|2fc93df48f]: Mark "Closed". artifact: fc23aa8011 user: florian
03:53
Fix a build error introduced by check-in [fc8e5750d7]. check-in: 49a2d1361f user: florian tags: trunk
2022-08-10
06:03
Merge fixes to the accordion panel JS script. check-in: 44a7149dc7 user: florian tags: trunk
06:02
Record a comment on the findings discovered during repair of the accordion panel JS script. Closed-Leaf check-in: 2fc93df48f user: florian tags: accordion-fix
06:00
Add the new subcommand `fossil branch lsh' to list the most recently modified branches. check-in: fc8e5750d7 user: florian tags: trunk
05:56
Fix a compiler warning. Closed-Leaf check-in: 877b237ba2 user: florian tags: ls-hot-branches
2022-08-09
12:35
Do not show information about the number of chat messages unless the user has read privilege on the chat. check-in: ad0aac2fde user: drh tags: trunk
2022-08-08
11:52
/setup_config typo fix reported in [forum:ec5bd222a2|forum post ec5bd222a2]. check-in: 6d5d5f0239 user: stephan tags: trunk
2022-08-07
08:12
Coding style fixes and comment updates. check-in: ae932acdd2 user: florian tags: timeline-keyboard-navigation
08:09
Shortcut SHIFT+H to scroll to the focused entry without moving focus. This may be handy in conjunction with scrolling by arrow keys or PgUp/Dn. check-in: 8d1edb8206 user: florian tags: timeline-keyboard-navigation
08:07
Remove a construct to escape the JS compressor obsoleted by [ffa1c7d0a0]. check-in: 0e7357d2fc user: florian tags: accordion-fix
2022-08-06
22:13
Fixed a few stray parens in the new material in the fossil-v-git doc, left behind from a prior edit. check-in: ea13701cbf user: wyoung tags: trunk
22:08
Typo fix check-in: b628a883b1 user: wyoung tags: trunk
20:32 Edit [7bfd741355e24e61|7bfd741355]: Edit check-in comment. artifact: 4fd4ea4a3b user: wyoung
20:30
Fixed a problem in image naming in the new Docker container doc in build.wiki [forum:/forumpost/2fd50423377d0f51 | reported on the forum]. check-in: 509447a2d7 user: wyoung tags: trunk
19:56
Did away with the temporary src.tar.gz file in the new Docker container by streaming the output of wget straight into tar's stdin. This cuts the build time by about five seconds, presumably due to the saving from unnecessary file I/O. Also replaced the explicit "cd src" afterward with an out-of-tree build configuration, since it doesn't matter if... check-in: 289c9b501c user: wyoung tags: trunk
19:34
The build docs for "./configure --static" now reference the section further down on Docker, since you may need to use this indirection to get --static to produce something suitable. check-in: 7bfd741355 user: wyoung tags: trunk
04:24
Replaced Jan Nijtman's Dockerfile with a new one that does a 2-stage build. The first stage runs atop Alpine Linux instead of Fedora, reducing the initial build from ~635 MiB to about 16.

Rather than stop there, I then made it multi-stage, copying two key static binaries — Fossil and Busybox — over from the first stage into a fresh-from-scra... check-in: 77d603c6a1 user: wyoung tags: trunk

2022-08-05
12:05
Assorted improvements to the first few sections of the fossil-v-git doc, mainly in updating them to track changes to world facts and to clarify the presentation. check-in: c7afd68b94 user: wyoung tags: trunk
10:18
Remove some unnecessary `bind()' calls for variables already held in function closure. Apart from that, the approach seems to work well and also covers odd cases, such as the post-expansion timeout to clear maxHeight being shorter than the CSS animation duration (in which case the animation would just jerkily stop, but with the correct element heig... check-in: 7b8dd9ca70 user: florian tags: accordion-fix
06:39
Also fix URLs for non-filtered /timeline links opened from /finfo pages, plus some code and comment cleanups. check-in: 3ae1390f17 user: florian tags: timeline-keyboard-navigation
06:22
Shortcut SHIFT+J to view the timeline of the focused entry filtered by branch. Add the 'm' query parameter to /timeline links. check-in: 7bbd1b9918 user: florian tags: timeline-keyboard-navigation
05:23
Attempt to fix the accordion for "Changes" sections: (A) "Delay-init" the maxHeight property only right before the closing animation, so that the dynamic diffs have enough time to resize themselves without any constraints, and then set maxHeight to zero to trigger the animation in idle time, to prevent coalescing the maxHeight changes (or there won... check-in: 6c591c3ffa user: florian tags: accordion-fix
2022-08-04
12:19
Remove the accordion from the "Changes" division of the /vinfo page (at least temporarily) because it is cutting off the bottom of the diff. check-in: 69a6f45387 user: drh tags: trunk
12:02
The smart "scroll to" routine also needs to scroll upwards when used for their new purpose. check-in: fff09df34f user: florian tags: timeline-keyboard-navigation
11:46
Docs v0.1, with upper-/lower-case letter notation, instead of SHIFT+LETTER (which may be somewhat confusing for the "," and ";" case). check-in: b02508d358 user: florian tags: timeline-keyboard-navigation
11:42
Try to fix the focus indicator CSS to work for all skins: alpha-blending "10% black" with light-mode background colors, or "20% white" with dark-mode background colors, looks surprisingly well and conflicts less with branch colors (which can be orange-ish, but never black or white). Note that the dark-mode skins Ardoise, Dark Mode and Xekri (but no... check-in: 7d02688690 user: florian tags: timeline-keyboard-navigation
06:57
Experimental change to scroll the focused entry into view with a Fossil-style scrolling function to keep the entry centered vertically. This is much better than `Element.scrollIntoView()' for FF (but maybe a matter of tweaking the function arguments). Kudos to the wiz who programmed the `scrollToSelected()' function! check-in: ad3a8e0b87 user: florian tags: timeline-keyboard-navigation
06:14
Comment and TODO updates. check-in: ec8b53a9bc user: florian tags: timeline-keyboard-navigation
06:09
Enhance the H shortcut to consider the secondary selection on the /vdiff page as a waypoint. check-in: 0c024627dc user: florian tags: timeline-keyboard-navigation
04:25
Change the "untick" and "copy hash/branch" handlers to not activate keyboard navigation mode, i.e. "untick" is also available in combination with mouse scrolling, and "copy hash/branch" requires a focused entry, instead of focusing an entry without copying its data. check-in: 1d5e6e3cae user: florian tags: timeline-keyboard-navigation
04:11
Shortcut SHIFT+"," (comma) to untick all (better: one) node(s) without moving the focus indicator. check-in: a4db0b2cfa user: florian tags: timeline-keyboard-navigation
04:01
Remap the shortcut to disable keyboard navigation mode to ESC. This is also a test case for the high-priority ESC handlers of the timeline tooltip and the hamburger menu, and things seem to work fine. check-in: 80085809ac user: florian tags: timeline-keyboard-navigation
03:57
Shortcut H to hop between the selected, current (check-out) and ticked entries. check-in: 7703a5f7a3 user: florian tags: timeline-keyboard-navigation
03:51
Shortcuts B and SHIFT+B top copy the hash or branch name of the focused entry to clipboard. check-in: f23a6d13a2 user: florian tags: timeline-keyboard-navigation
03:45
Shortcut "," (comma) to tick/untick the node of the currently focused entry. This has the same effect as mouse clicks, i.e. as soon as two nodes are ticked, the corresponding diff page is opened. check-in: 15f943f0c2 user: florian tags: timeline-keyboard-navigation
03:41
Shortcuts SHIFT+N and SHIFT+M to put focus the first (topmost) or last (bottommost) entry. check-in: 145df5a3e1 user: florian tags: timeline-keyboard-navigation
03:35
Access the hidden input field used for back/forward caching via dedicated functions, and let browsers do the buffering of `document.getElementById()' results themselves. check-in: 115b484992 user: florian tags: timeline-keyboard-navigation
03:34
Merge with trunk to get the latest web UI updates. check-in: 0f9981971e user: florian tags: timeline-keyboard-navigation
2022-08-02
20:55
Put all sections of the /vinfo page (or the /info page for a check-in) inside an accordion widget. check-in: ab553393a1 user: drh tags: trunk
10:57
Take note of another possibly handy shortcut. check-in: 2ffedc2bcb user: florian tags: timeline-keyboard-navigation
10:27
Refactor the `-h' option to its own `lsh' subcommand sibling to `list|ls' to reuse their infrastructure and flags. To produce useful output with the `-r' option, the SQL query to generate the branch list is LIMIT'ed in an inner query, and then ORDER'ed again in an outer query. check-in: dbd6efe2d8 user: florian tags: ls-hot-branches
00:45
Corrected broken link introduced in the previous commit which works under (fossil ui) but not on the live server (due to the addition of another URI path element). check-in: bf0efda706 user: stephan tags: trunk
00:42
doc index: added a link to the Release Build How-To wiki page, per [forum:94d62e6758613057|forum request]. check-in: 9f3945fc09 user: stephan tags: trunk
2022-08-01
09:34
Take note of another possible TODO item. check-in: b785da80e7 user: florian tags: timeline-keyboard-navigation
09:30
Update the comments about back/forward caching. check-in: e62b171dbc user: florian tags: timeline-keyboard-navigation
09:21
Some code readability and function naming tweaks. check-in: 89a0438f8f user: florian tags: timeline-keyboard-navigation
Previous month ↓