]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/plugins/trail/discussion.mdwn
[[!inline trail=yes]] support reinstated
[git.ikiwiki.info.git] / doc / plugins / trail / discussion.mdwn
index 8b3981f0cfa71474f0bcf9cf4fa744edc936cd90..e151466f9f30621398522245d080a975e7885dbe 100644 (file)
@@ -41,3 +41,49 @@ work, but before sorting.
 > I've merged trail3-integrated, but not prebuild. I don't exactly dislike
 > prebuild, but dunno that the hook prolieration is worth the minor cleanup
 > it allows in trail. --[[Joey]]
 > I've merged trail3-integrated, but not prebuild. I don't exactly dislike
 > prebuild, but dunno that the hook prolieration is worth the minor cleanup
 > it allows in trail. --[[Joey]]
+
+>> Hmm, t/trail.t is failing several tests here. To reproduce, I build the
+>> debian package from a clean state, or `rm -rf .t` between test runs. --[[Joey]]
+
+<pre>
+t/trail.t .................... 1/? 
+#   Failed test at t/trail.t line 211.
+#   Failed test at t/trail.t line 213.
+#   Failed test at t/trail.t line 215.
+#   Failed test at t/trail.t line 217.
+#   Failed test at t/trail.t line 219.
+#   Failed test at t/trail.t line 221.
+#   Failed test at t/trail.t line 223.
+#   Failed test at t/trail.t line 225.
+#   Failed test at t/trail.t line 227.
+#   Failed test at t/trail.t line 229.
+#   Failed test at t/trail.t line 231.
+</pre>
+
+> Looking at the first of these, it expected "trail=sorting n=sorting/new p="
+> but gets: "trail=sorting n=sorting/ancient p=sorting/new"
+>
+> Looking at the second failure, it expected "trail=sorting n=sorting/middle p=sorting/old$"
+> but got: "trail=sorting n=sorting/old p=sorting/end"
+> 
+> Perhaps a legitimate bug? --[[Joey]] 
+
+>> I saw this while developing, but couldn't reproduce it, and assumed
+>> I'd failed to update `blib` before `make test`, or some such.
+>> In fact it's a race condition, I think.
+>>
+>> The change and failure here is that `sorting.mdwn` is modified
+>> to sort its trail in reverse order of title. Previously, it
+>> was sorted by order of directives in the page, and secondarily
+>> by whatever sort order each directive specified (e.g.
+>> new, old and ancient were sorted by increasing age).
+>> `old` appearing between `new` and `ancient`, and `new` appearing
+>> between `end` and `old`, indicates that this re-sorting has not
+>> actually taken effect, and the old sort order is still used.
+>>
+>> I believe this is because the system time (as an integer) remained
+>> the same for the entire test, and mtimes as used in ikiwiki
+>> only have a 1-second resolution. We can either fix this with
+>> utime or sleep; I chose utime, since sleeping for 1 second would
+>> slow down the test significantly. Please merge or cherry-pick
+>> `smcv/trail-test` (there's only one commit). --[[smcv]]