<div dir="auto">Ahh thats good information john. Ive already done some work on this but i think it makes, better sense to pivot to the leaf code as you suggest. Ill clean up what i have and save it for later.<div dir="auto">Appreciate the guidance. </div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Sat, Apr 18, 2026, 9:51 PM John Ralls <<a href="mailto:jralls@ceridwen.us">jralls@ceridwen.us</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="line-break:after-white-space"><br id="m_-3224871608644528398lineBreakAtBeginningOfMessage"><div><br><blockquote type="cite"><div>On Apr 18, 2026, at 16:39, <<a href="mailto:russ.gorby@gmail.com" target="_blank" rel="noreferrer">russ.gorby@gmail.com</a>> <<a href="mailto:russ.gorby@gmail.com" target="_blank" rel="noreferrer">russ.gorby@gmail.com</a>> wrote:</div><br><div><div style="font-family:Helvetica;font-size:11px;font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-line:none;text-decoration-style:solid"><div style="margin:0in;font-size:12pt;font-family:Calibri,sans-serif">I was planning to convert this library next but I’m concerned about the review burden. It has 77 C code files and about the same number of header files.<u></u><u></u></div><div style="margin:0in;font-size:12pt;font-family:Calibri,sans-serif">Is there better approach than doing everything all at once?<u></u><u></u></div><div style="margin:0in;font-size:12pt;font-family:Calibri,sans-serif">I’m resistant to doing a subset of .c files because I want to identify .h files in the target that can transition to .hpp files based on where they are included from and doing subset chunks could reduce the set that can transition during this effort.<u></u><u></u></div><div style="margin:0in;font-size:12pt;font-family:Calibri,sans-serif">All I can think of is do minimal conversion first and then the deeper convert as phase 2.<u></u><u></u></div><div style="margin:0in;font-size:12pt;font-family:Calibri,sans-serif">Thank you for your opinions.<u></u><u></u></div><div style="margin:0in;font-size:12pt;font-family:Calibri,sans-serif">-russ<u></u><u></u></div></div></div></blockquote><br></div><div>It actually has 71 C files, 74 C headers, 6 C++ files and 2 C++ headers.</div><div><br></div><div>Most of gnome-utils is used by gnome and register, so very few of the header files will be convertible until those other directories are converted too. Also nearly everything in there is derived from Gtk classes so even once you have it all compiling in C++ you’re still stuck with the GObject lifetime and memory models. So not only would converting all 71 files in a single PR be unpleasant to review, it’s going to take a lot longer than a single PR should. You really need to chunk it. There are some logical chunks: All of the tree-models (8 C files) would be a good one, and the 7 tree-views a complementary second chunk. There are 13 dialog files that could be jammed into a single PR but might be more comfortable in 2.</div><div><br></div><div>You might also consider going downstream instead: register is already broken into 3 directories with 14-17 C files each and it’s nearly all leaf code, meaning that very little depends on it so you’ll be able to convert more headers and need to have C linkage on fewer functions. gnome is 40 C files and again is more leaf code than is gnome-utils, but it still interacts strongly with Gtk so there’s less opportunity for converting headers or using C++ linkage.</div><div><br></div><div>Regards,</div><div>John Ralls</div><div><br></div></div></blockquote></div>