[dropped Mark and Alexandra from CC, looping in groff@gnu] Hi Alex, At 2024-02-18T16:18:38+0100, Alejandro Colomar wrote: > Nah, I like 5n. I could use [-rBP=7n] in the build system for > preventing errors like this one for the time 1.24.0 is not a thing, to > catch those formatting issues with `make check`... but I think I > prefer not. Fair. That's why it's a knob. People can twist it or not. :) > Do you have in mind a date around which you intend to freeze for > 1.24.0? No. There are still several things I'd like to at least try to get done. There is a possibly ambitious "release goals" ticket for 1.24. https://savannah.gnu.org/bugs/?65099 (Scroll down to see the dependencies.) Integrating large/complex patches from contributors has proven difficult, and exposed my weaknesses as a project manager. Aggravating factors are (1) I'm the only person who writes regression or unit tests, (2) I'm nearly the only one who writes documentation for anything except mom(7), and (3) some of the most desirable features are also those that require changes to undocumented or un(der)specified aspects of the system. For example, what _can_ you put in a device control escape sequence (or device control request, or "transparent output")? Can you spray out bytes with the eighth bit set that way? Should you be able to? If not, how do you encode them if you need them? Should each output driver take its own approach or should they share one? This stuff sounds obscure, but you need it for things like PDF bookmarks with non-ASCII characters in them, and better CJK font support. Still, I think the pain will be worth it--when we crack those nuts, the reward will be pleasant. The revelation of https://savannah.gnu.org/bugs/?65322 troubles me. On the one hand, since the bug has evidently been around a very long time, and isn't a security issue (the formatter merely gets angry and quits on--apparently--ill-formed input), there's no particular emergency. Still, the idea of stomping another decades-old bug that defeated everyone before me[1] appeals to my vanity. On the other hand, I am nearly clueless about the cause of it,[2] and to track it down I think I'll need to implement the "macro/string/diversion dumper" I've been contemplating, to force the formatter to reveal hidden knowledge. That, or I could get a lot more skillful with GDB, but so far it seems like a disproportionate amount of the time, the problems I chase with it involve variables that are $1 = <optimized out> ...even when you specify -O0 -ggdb. Hmm, thanks a lot. That sort of thing is not compatible with the integrity of the drywall in my home. > Mind the time it will take from a freeze to a release, so we > get it in Trixie this time. :) No doubt. It appeals to my sense of tidiness to have groff's minor release number match the calendar year modulo 100, so, given some experience, I think going for a release candidate this summer would be a good idea. We probably want to code-freeze no later than September 30th. Regards, Branden [1] The bug is so obscure, that is likely not saying much. [2] My hypothesis for the moment is that a "node"[3] is surviving inside a diversion when it shouldn't be, and while that appears not to be an opening brace node, I think it is something working like that. So the balance is being thrown off, and that is why GNU troff's "finish_get" function is encountering a value of the input level that it didn't expect. Data structures should be introspectable, but diversions are not, and we are finally paying the piper. [3] A recent commit underscored just how unhelpfully opaque this data structure is, and yet for 30+ years this term has been hurled into the user's face if they screw up. https://git.savannah.gnu.org/cgit/groff.git/commit/?id=90568dc1afe41c9f909f26e7e3fa6f9d499127bc "Oh, great, it's a 'node'. Whatever that is." And then when you gain a bit of experience... "Oh, great, it's a node. That means it's one of about 20 different things--seriously, 20. No problem. This will be a cinch to debug." I'd still like to meet James Clark for coffee some day. I will have much positive to say, and much appreciation to express. But I will also have a look I want to give him. Just a look.
Attachment:
signature.asc
Description: PGP signature