<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Jan 6, 2017 at 10:37 AM, Maciej Stachowiak <span dir="ltr"><<a href="mailto:mjs@apple.com" target="_blank">mjs@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="word-wrap:break-word"><br><div><span class="gmail-"><blockquote type="cite"><div>On Jan 5, 2017, at 9:37 AM, Brady Eidson <<a href="mailto:beidson@apple.com" target="_blank">beidson@apple.com</a>> wrote:</div><br class="gmail-m_-8698724453431853117Apple-interchange-newline"><div><div style="word-wrap:break-word"><br><div><blockquote type="cite"><div>On Jan 5, 2017, at 12:48 AM, Yusuke SUZUKI <<a href="mailto:utatane.tea@gmail.com" target="_blank">utatane.tea@gmail.com</a>> wrote:</div><br class="gmail-m_-8698724453431853117Apple-interchange-newline"><div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Jan 5, 2017 at 5:43 PM, Darin Adler <span dir="ltr"><<a href="mailto:darin@apple.com" target="_blank">darin@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I understand the appeal of “org.webkit” and structured names but personally I would prefer to read names that look like titles and are made up of words with spaces, like these:<br>
<br>
“WebKit: Image Decoder”, rather than “org.webkit.ImageDecoder”.<br>
“WebKit: JavaScript DFG Compiler” rather than “org.webkit.jsc.DFGCompiler”.<br>
<br>
Not sure how well that would generalize to all the different names.<br>
<br>
I like the idea of having a smart way of automatically making a shorter name for the platforms that have shorter length limits.<br></blockquote><div><br></div><div>One interesting idea I've come up with is that,</div><div><br></div><div>1. specifying "org.webkit.ImageDecoder"</div><div>2. In Linux, we just use "ImageDecoder" part.</div><div>3. In macOS port, we automatically convert it to "WebKit: Image Decoder”</div></div></div></div></div></blockquote><div><br></div><div><div>Why do we specify “org.webkit.ImageDecoder” if only the “ImageDecoder” part is ever going to be used?</div></div><div>Is that because Windows could use “org.webkit.”?</div></div></div></div></blockquote><div><br></div></span><div>What about if you just specify "Image Decoder" and we automatically convert that to either "ImageDecoder" or "WebKit: Image Decoder" based on platform thread name limits? Is there any case where we want a prefix other than "WebKit: "?</div></div></div></blockquote><div><br></div><div>Yeah. For the prefix case, automatically adding "WebKit: " is fine. The current ToT has the name like "<span style="font-size:12.8px">com.apple.IPC.ReceiveQueue".</span></div><div><span style="font-size:12.8px">Previously I thought that we may need to convert it to "Apple WebKit:" or something like that.</span></div><div><span style="font-size:12.8px">But now, I think simply using "WebKit: IPC Receive Queue" is fine.</span></div><div><br></div><div>But I think automatically changing "ImageDecoder" to "Image Decoder" does not work well with long names.</div><div>There is a name like "AsynchrnousDisassembler". It is >= 15 characters. "AsynchronousDisas" is not good for Linux.</div><div>On the other hand, using "AsyncDisasm" => "WebKit: AsyncDisasm" is not good for macOS.</div><div>For macOS, we can choose more readable name like "WebKIt: Asynchronous Disassembler".</div><div><br></div><div>So, I think Geoffrey's suggestion works well: using long / short name pairs. Like,</div><div><br></div><div>ThreadName { "Asynchronous Disassembler", "AsyncDisasm" } // { const char*, const char* }</div><div><br></div><div>// OR, </div><div>CREATE_THREAD_NAME("Asynchronous Disassembler", "AsyncDisasm") macro => generating ThreadName("WebKit: Asynchronous Disassembler") on macOS, ThreadName("AsyncDisasm") on Linux</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="word-wrap:break-word"><div><span class="gmail-HOEnZb"><font color="#888888"><div><br></div><div> - Maciej</div><br></font></span><blockquote type="cite"><div><span class="gmail-"><div style="word-wrap:break-word"><div><div><br></div><div>Again, back to Darin’s point, I don’t see any particular value in ever seeing “org.webkit.”</div><div><br></div><div>Additionally, the way this proposal treats “ImageDecoder” as multiple words, presumably separated on case-change, is problematic.</div><div><br></div><div>e.g. “IndexedDatabaseServer” would expand to “Indexed Database Server”, different from today.</div><div>e.g. “IndexedDBServer”, which is probably what this should be called, would expand to “Indexed D B Server"</div><div>e.g. “GCController” would expand to “G C Controller”</div><div><br></div><div>—</div><div><br></div><div>Taking your proposal and running with it, I think we could do this:</div><div><br></div><div>1 - Specify the feature name with spaces: “Asynchronous Disassembler”</div><div><br></div><div><div>2 - On Linux, it gets collapsed and truncated to 15: “AsynchronousDis”</div><div>2a - It could get truncated with ellipses: “AsynchronousDi…" </div><div><div><br></div><div>3 - On Windows, it gets “WebKit: “ added and is truncated to 30: “WebKit: Asynchronous Disassemb”</div></div><div>3a - It could get truncated with ellipses: “WebKit: Asynchronous Disassem…”</div><div><br></div><div>4 - On macOS/iOS, it gets “WebKit: “ added: “WebKit: Asynchronous Disassembler"</div></div><div><br></div><div>Addendum: If we see value in having somethings flagged as “JSC” instead of “WebKit”, we just augment the input to include that.</div><div>The above could be “JSC.Asynchronous Disassembler”, and a WebKit specific feature could be “WebKit. IndexedDB Server”</div><div><br></div><div>Thanks,</div>~Brady</div></div></span><span class="gmail-">______________________________<wbr>_________________<br>webkit-dev mailing list<br><a href="mailto:webkit-dev@lists.webkit.org" target="_blank">webkit-dev@lists.webkit.org</a><br><a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank">https://lists.webkit.org/<wbr>mailman/listinfo/webkit-dev</a><br></span></div></blockquote></div><br></div></blockquote></div><br></div></div>