Re: [webkit-dev] ENABLE flag cleanup strawman proposal
On Wed, Sep 14, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote: I've updated the spreadsheet of all ENABLE flags to match TOT (as of this afternoon): https://docs.google.com/spreadsheet/ccc?key=0AlC4tS7Ao1fIdHFVNUpFSDBudEF5WGM3WDNzQjI3Yncauthkey=CJCDiooKhl=en_US#gid=0 I've gone through the list and marked some of them that we might want to change, listed below. I expect this list to be somewhat controversial. Please consider it as a starting point for discussion. This proposal introduces a new kinds of flag: DEBUG. A DEBUG flag is only that we expect will only be used by developers locally to debug WebKit. For example, ENABLE(DEBUG_MATH_LAYOUT) and ENABLE(SAMPLING_COUNTERS) are only used to debug locally, not to ship to end users. The main benefit of labeling these flags as DEBUG-only, for example as DEBUG(MATH_LAYOUT), is that contributors don't need to worry as much about breaking them. (Of course, we still shouldn't try to break them capriciously.) I'd like to emphasize again that this list is just a starting point for discussion. I look forward to your feedback. Thanks, Adam == Rename == ENABLE(DATABASE) = ENABLE(SQL_DATABASE) ENABLE(LEVELDB) = USE(LEVELDB) ENABLE(ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL) = Should be an editing behavior ENABLE(OPENTYPE_SANITIZER) = USE(OPENTYPE_SANITIZER) ENABLE(SYMBIAN_DIALOG_PROVIDERS) = USE(SYMBIAN_DIALOG_PROVIDERS) ENABLE(TILED_BACKING_STORE) = USE(TILED_BACKING_STORE) == Always Disable (Delete Code) == ENABLE(APPLICATION_CACHE_DYNAMIC_ENTRIES) ENABLE(FTPDIR) ENABLE(ICONDATABASE) ??? ENABLE(WBXML) ENABLE(WCSS) ENABLE(XHTMLMP) == Always Enable == ENABLE(DETAILS) ??? ENABLE(DOM_STORAGE) ENABLE(EVENTSOURCE) ENABLE(INSPECTOR) ??? ENABLE(METER_TAG) ENABLE(OFFLINE_WEB_APPLICATIONS) ENABLE(PROGRESS_TAG) ENABLE(SVG_ANIMATION) = Gated on ENABLE(SVG) ENABLE(SVG_AS_IMAGE) = Gated on ENABLE(SVG) ENABLE(SVG_DOM_OBJC_BINDINGS) = Gated on ENABLE(SVG) ENABLE(SVG_FONTS) = Gated on ENABLE(SVG) ENABLE(WEB_TIMING) ??? (I think Maciej has concerns about this feature, so maybe keep configurable.) ENABLE(WTF_MULTIPLE_THREADS) -- ggaren is already making this happen, right? ENABLE(XHR_RESPONSE_BLOB) = Gated by ENABLE(BLOB) ^^^ I think this one probably needs to remain since we haven't implemented the backend for XHR.responseType == Blob yet, but other (core) Blob related APIs are implemented. What about ENABLE(REQUEST_ANIMATION_FRAME)? -Darin ENABLE(XPATH) ENABLE(XSLT) == Mark as for Debugging == ENABLE(CODEBLOCK_SAMPLING) = DEBUG(CODEBLOCK_SAMPLING) ENABLE(DEBUG_MATH_LAYOUT) = DEBUG(MATH_LAYOUT) ENABLE(DEBUG_WITH_BREAKPOINT) = DEBUG(WITH_BREAKPOINT) ENABLE(FAST_MALLOC_MATCH_VALIDATION) = DEBUG(FAST_MALLOC_MATCH_VALIDATION) ENABLE(GC_VALIDATION) = DEBUG(GC_VALIDATION) ENABLE(OPCODE_SAMPLING) = DEBUG(OPCODE_SAMPLING) ENABLE(OPCODE_STATS) = DEBUG(OPCODE_STATS) ENABLE(REGEXP_TRACING) = DEBUG(REGEXP_TRACING) ENABLE(SAMPLING_COUNTERS) = DEBUG(SAMPLING_COUNTERS) ENABLE(SAMPLING_FLAGS) = DEBUG(SAMPLING_FLAGS) ENABLE(SAMPLING_THREAD) = DEBUG(SAMPLING_THREAD) ENABLE(WTF_MALLOC_VALIDATION) = DEBUG(WTF_MALLOC_VALIDATION) ENABLE(YARR_JIT_DEBUG) = DEBUG(YARR_JIT) ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] ENABLE flag cleanup strawman proposal
On Wed, Sep 14, 2011 at 11:06 PM, Darin Fisher da...@chromium.org wrote: On Wed, Sep 14, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote: I've updated the spreadsheet of all ENABLE flags to match TOT (as of this afternoon): https://docs.google.com/spreadsheet/ccc?key=0AlC4tS7Ao1fIdHFVNUpFSDBudEF5WGM3WDNzQjI3Yncauthkey=CJCDiooKhl=en_US#gid=0 I've gone through the list and marked some of them that we might want to change, listed below. I expect this list to be somewhat controversial. Please consider it as a starting point for discussion. This proposal introduces a new kinds of flag: DEBUG. A DEBUG flag is only that we expect will only be used by developers locally to debug WebKit. For example, ENABLE(DEBUG_MATH_LAYOUT) and ENABLE(SAMPLING_COUNTERS) are only used to debug locally, not to ship to end users. The main benefit of labeling these flags as DEBUG-only, for example as DEBUG(MATH_LAYOUT), is that contributors don't need to worry as much about breaking them. (Of course, we still shouldn't try to break them capriciously.) I'd like to emphasize again that this list is just a starting point for discussion. I look forward to your feedback. Thanks, Adam == Rename == ENABLE(DATABASE) = ENABLE(SQL_DATABASE) ENABLE(LEVELDB) = USE(LEVELDB) ENABLE(ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL) = Should be an editing behavior ENABLE(OPENTYPE_SANITIZER) = USE(OPENTYPE_SANITIZER) ENABLE(SYMBIAN_DIALOG_PROVIDERS) = USE(SYMBIAN_DIALOG_PROVIDERS) ENABLE(TILED_BACKING_STORE) = USE(TILED_BACKING_STORE) == Always Disable (Delete Code) == ENABLE(APPLICATION_CACHE_DYNAMIC_ENTRIES) ENABLE(FTPDIR) ENABLE(ICONDATABASE) ??? ENABLE(WBXML) ENABLE(WCSS) ENABLE(XHTMLMP) == Always Enable == ENABLE(DETAILS) ??? ENABLE(DOM_STORAGE) ENABLE(EVENTSOURCE) ENABLE(INSPECTOR) ??? ENABLE(METER_TAG) ENABLE(OFFLINE_WEB_APPLICATIONS) ENABLE(PROGRESS_TAG) ENABLE(SVG_ANIMATION) = Gated on ENABLE(SVG) ENABLE(SVG_AS_IMAGE) = Gated on ENABLE(SVG) ENABLE(SVG_DOM_OBJC_BINDINGS) = Gated on ENABLE(SVG) ENABLE(SVG_FONTS) = Gated on ENABLE(SVG) ENABLE(WEB_TIMING) ??? (I think Maciej has concerns about this feature, so maybe keep configurable.) ENABLE(WTF_MULTIPLE_THREADS) -- ggaren is already making this happen, right? ENABLE(XHR_RESPONSE_BLOB) = Gated by ENABLE(BLOB) ^^^ I think this one probably needs to remain since we haven't implemented the backend for XHR.responseType == Blob yet, but other (core) Blob related APIs are implemented. What about ENABLE(REQUEST_ANIMATION_FRAME)? That might make sense to always enable. It seems to be very popular. Adam ENABLE(XPATH) ENABLE(XSLT) == Mark as for Debugging == ENABLE(CODEBLOCK_SAMPLING) = DEBUG(CODEBLOCK_SAMPLING) ENABLE(DEBUG_MATH_LAYOUT) = DEBUG(MATH_LAYOUT) ENABLE(DEBUG_WITH_BREAKPOINT) = DEBUG(WITH_BREAKPOINT) ENABLE(FAST_MALLOC_MATCH_VALIDATION) = DEBUG(FAST_MALLOC_MATCH_VALIDATION) ENABLE(GC_VALIDATION) = DEBUG(GC_VALIDATION) ENABLE(OPCODE_SAMPLING) = DEBUG(OPCODE_SAMPLING) ENABLE(OPCODE_STATS) = DEBUG(OPCODE_STATS) ENABLE(REGEXP_TRACING) = DEBUG(REGEXP_TRACING) ENABLE(SAMPLING_COUNTERS) = DEBUG(SAMPLING_COUNTERS) ENABLE(SAMPLING_FLAGS) = DEBUG(SAMPLING_FLAGS) ENABLE(SAMPLING_THREAD) = DEBUG(SAMPLING_THREAD) ENABLE(WTF_MALLOC_VALIDATION) = DEBUG(WTF_MALLOC_VALIDATION) ENABLE(YARR_JIT_DEBUG) = DEBUG(YARR_JIT) ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] ENABLE flag cleanup strawman proposal
Thanks for the feedback thus far. I'm going to start working on some of the changes I perceive as less controversial. Please feel free to comment on bugs or reply to this thread if you have additional thoughts. The meta bug for this work is https://bugs.webkit.org/show_bug.cgi?id=68012. Adam On Wed, Sep 14, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote: I've updated the spreadsheet of all ENABLE flags to match TOT (as of this afternoon): https://docs.google.com/spreadsheet/ccc?key=0AlC4tS7Ao1fIdHFVNUpFSDBudEF5WGM3WDNzQjI3Yncauthkey=CJCDiooKhl=en_US#gid=0 I've gone through the list and marked some of them that we might want to change, listed below. I expect this list to be somewhat controversial. Please consider it as a starting point for discussion. This proposal introduces a new kinds of flag: DEBUG. A DEBUG flag is only that we expect will only be used by developers locally to debug WebKit. For example, ENABLE(DEBUG_MATH_LAYOUT) and ENABLE(SAMPLING_COUNTERS) are only used to debug locally, not to ship to end users. The main benefit of labeling these flags as DEBUG-only, for example as DEBUG(MATH_LAYOUT), is that contributors don't need to worry as much about breaking them. (Of course, we still shouldn't try to break them capriciously.) I'd like to emphasize again that this list is just a starting point for discussion. I look forward to your feedback. Thanks, Adam == Rename == ENABLE(DATABASE) = ENABLE(SQL_DATABASE) ENABLE(LEVELDB) = USE(LEVELDB) ENABLE(ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL) = Should be an editing behavior ENABLE(OPENTYPE_SANITIZER) = USE(OPENTYPE_SANITIZER) ENABLE(SYMBIAN_DIALOG_PROVIDERS) = USE(SYMBIAN_DIALOG_PROVIDERS) ENABLE(TILED_BACKING_STORE) = USE(TILED_BACKING_STORE) == Always Disable (Delete Code) == ENABLE(APPLICATION_CACHE_DYNAMIC_ENTRIES) ENABLE(FTPDIR) ENABLE(ICONDATABASE) ??? ENABLE(WBXML) ENABLE(WCSS) ENABLE(XHTMLMP) == Always Enable == ENABLE(DETAILS) ??? ENABLE(DOM_STORAGE) ENABLE(EVENTSOURCE) ENABLE(INSPECTOR) ??? ENABLE(METER_TAG) ENABLE(OFFLINE_WEB_APPLICATIONS) ENABLE(PROGRESS_TAG) ENABLE(SVG_ANIMATION) = Gated on ENABLE(SVG) ENABLE(SVG_AS_IMAGE) = Gated on ENABLE(SVG) ENABLE(SVG_DOM_OBJC_BINDINGS) = Gated on ENABLE(SVG) ENABLE(SVG_FONTS) = Gated on ENABLE(SVG) ENABLE(WEB_TIMING) ??? (I think Maciej has concerns about this feature, so maybe keep configurable.) ENABLE(WTF_MULTIPLE_THREADS) -- ggaren is already making this happen, right? ENABLE(XHR_RESPONSE_BLOB) = Gated by ENABLE(BLOB) ENABLE(XPATH) ENABLE(XSLT) == Mark as for Debugging == ENABLE(CODEBLOCK_SAMPLING) = DEBUG(CODEBLOCK_SAMPLING) ENABLE(DEBUG_MATH_LAYOUT) = DEBUG(MATH_LAYOUT) ENABLE(DEBUG_WITH_BREAKPOINT) = DEBUG(WITH_BREAKPOINT) ENABLE(FAST_MALLOC_MATCH_VALIDATION) = DEBUG(FAST_MALLOC_MATCH_VALIDATION) ENABLE(GC_VALIDATION) = DEBUG(GC_VALIDATION) ENABLE(OPCODE_SAMPLING) = DEBUG(OPCODE_SAMPLING) ENABLE(OPCODE_STATS) = DEBUG(OPCODE_STATS) ENABLE(REGEXP_TRACING) = DEBUG(REGEXP_TRACING) ENABLE(SAMPLING_COUNTERS) = DEBUG(SAMPLING_COUNTERS) ENABLE(SAMPLING_FLAGS) = DEBUG(SAMPLING_FLAGS) ENABLE(SAMPLING_THREAD) = DEBUG(SAMPLING_THREAD) ENABLE(WTF_MALLOC_VALIDATION) = DEBUG(WTF_MALLOC_VALIDATION) ENABLE(YARR_JIT_DEBUG) = DEBUG(YARR_JIT) ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
[webkit-dev] ENABLE flag cleanup strawman proposal
I've updated the spreadsheet of all ENABLE flags to match TOT (as of this afternoon): https://docs.google.com/spreadsheet/ccc?key=0AlC4tS7Ao1fIdHFVNUpFSDBudEF5WGM3WDNzQjI3Yncauthkey=CJCDiooKhl=en_US#gid=0 I've gone through the list and marked some of them that we might want to change, listed below. I expect this list to be somewhat controversial. Please consider it as a starting point for discussion. This proposal introduces a new kinds of flag: DEBUG. A DEBUG flag is only that we expect will only be used by developers locally to debug WebKit. For example, ENABLE(DEBUG_MATH_LAYOUT) and ENABLE(SAMPLING_COUNTERS) are only used to debug locally, not to ship to end users. The main benefit of labeling these flags as DEBUG-only, for example as DEBUG(MATH_LAYOUT), is that contributors don't need to worry as much about breaking them. (Of course, we still shouldn't try to break them capriciously.) I'd like to emphasize again that this list is just a starting point for discussion. I look forward to your feedback. Thanks, Adam == Rename == ENABLE(DATABASE) = ENABLE(SQL_DATABASE) ENABLE(LEVELDB) = USE(LEVELDB) ENABLE(ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL) = Should be an editing behavior ENABLE(OPENTYPE_SANITIZER) = USE(OPENTYPE_SANITIZER) ENABLE(SYMBIAN_DIALOG_PROVIDERS) = USE(SYMBIAN_DIALOG_PROVIDERS) ENABLE(TILED_BACKING_STORE) = USE(TILED_BACKING_STORE) == Always Disable (Delete Code) == ENABLE(APPLICATION_CACHE_DYNAMIC_ENTRIES) ENABLE(FTPDIR) ENABLE(ICONDATABASE) ??? ENABLE(WBXML) ENABLE(WCSS) ENABLE(XHTMLMP) == Always Enable == ENABLE(DETAILS) ??? ENABLE(DOM_STORAGE) ENABLE(EVENTSOURCE) ENABLE(INSPECTOR) ??? ENABLE(METER_TAG) ENABLE(OFFLINE_WEB_APPLICATIONS) ENABLE(PROGRESS_TAG) ENABLE(SVG_ANIMATION) = Gated on ENABLE(SVG) ENABLE(SVG_AS_IMAGE) = Gated on ENABLE(SVG) ENABLE(SVG_DOM_OBJC_BINDINGS) = Gated on ENABLE(SVG) ENABLE(SVG_FONTS) = Gated on ENABLE(SVG) ENABLE(WEB_TIMING) ??? (I think Maciej has concerns about this feature, so maybe keep configurable.) ENABLE(WTF_MULTIPLE_THREADS) -- ggaren is already making this happen, right? ENABLE(XHR_RESPONSE_BLOB) = Gated by ENABLE(BLOB) ENABLE(XPATH) ENABLE(XSLT) == Mark as for Debugging == ENABLE(CODEBLOCK_SAMPLING) = DEBUG(CODEBLOCK_SAMPLING) ENABLE(DEBUG_MATH_LAYOUT) = DEBUG(MATH_LAYOUT) ENABLE(DEBUG_WITH_BREAKPOINT) = DEBUG(WITH_BREAKPOINT) ENABLE(FAST_MALLOC_MATCH_VALIDATION) = DEBUG(FAST_MALLOC_MATCH_VALIDATION) ENABLE(GC_VALIDATION) = DEBUG(GC_VALIDATION) ENABLE(OPCODE_SAMPLING) = DEBUG(OPCODE_SAMPLING) ENABLE(OPCODE_STATS) = DEBUG(OPCODE_STATS) ENABLE(REGEXP_TRACING) = DEBUG(REGEXP_TRACING) ENABLE(SAMPLING_COUNTERS) = DEBUG(SAMPLING_COUNTERS) ENABLE(SAMPLING_FLAGS) = DEBUG(SAMPLING_FLAGS) ENABLE(SAMPLING_THREAD) = DEBUG(SAMPLING_THREAD) ENABLE(WTF_MALLOC_VALIDATION) = DEBUG(WTF_MALLOC_VALIDATION) ENABLE(YARR_JIT_DEBUG) = DEBUG(YARR_JIT) ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] ENABLE flag cleanup strawman proposal
== Always Enable == ENABLE(DETAILS) ??? ENABLE(DOM_STORAGE) ENABLE(EVENTSOURCE) ENABLE(INSPECTOR) ??? ENABLE(METER_TAG) ENABLE(OFFLINE_WEB_APPLICATIONS) ENABLE(PROGRESS_TAG) ENABLE(SVG_ANIMATION) = Gated on ENABLE(SVG) ENABLE(SVG_AS_IMAGE) = Gated on ENABLE(SVG) ENABLE(SVG_DOM_OBJC_BINDINGS) = Gated on ENABLE(SVG) ENABLE(SVG_FONTS) = Gated on ENABLE(SVG) ENABLE(WEB_TIMING) ??? (I think Maciej has concerns about this feature, so maybe keep configurable.) ENABLE(WTF_MULTIPLE_THREADS) -- ggaren is already making this happen, right? ENABLE(XHR_RESPONSE_BLOB) = Gated by ENABLE(BLOB) ENABLE(XPATH) ENABLE(XSLT) Is your proposal that since these ENABLE()s are always true, that we delete the compile guards from the codebase and build scripts? If so that sounds like a great idea in general (although I'm not saying that necessarily makes sense for everything in this list). - James ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] ENABLE flag cleanup strawman proposal
On Wed, Sep 14, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote: ENABLE(SVG_ANIMATION) = Gated on ENABLE(SVG) ENABLE(SVG_AS_IMAGE) = Gated on ENABLE(SVG) ENABLE(SVG_DOM_OBJC_BINDINGS) = Gated on ENABLE(SVG) ENABLE(SVG_FONTS) = Gated on ENABLE(SVG) I think Eric is planning to get rid of these flags for SVG sub-features. - Ryosuke ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Re: [webkit-dev] ENABLE flag cleanup strawman proposal
On Wed, Sep 14, 2011 at 4:14 PM, Ryosuke Niwa rn...@webkit.org wrote: On Wed, Sep 14, 2011 at 3:40 PM, Adam Barth aba...@webkit.org wrote: ENABLE(SVG_ANIMATION) = Gated on ENABLE(SVG) ENABLE(SVG_AS_IMAGE) = Gated on ENABLE(SVG) ENABLE(SVG_DOM_OBJC_BINDINGS) = Gated on ENABLE(SVG) ENABLE(SVG_FONTS) = Gated on ENABLE(SVG) I think Eric is planning to get rid of these flags for SVG sub-features. Yep. I should have noted that in the same way I noted ggaren's work. Thanks, Adam ___ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev