Add support for having string enumerations in their own IDL file so that they can be shared.
Will use this for IDBTransactionMode string enumeration.
Created attachment 292959 [details] WIP Patch
Created attachment 292960 [details] WIP Patch
Created attachment 292962 [details] WIP Patch
Comment on attachment 292962 [details] WIP Patch Attachment 292962 [details] did not pass mac-ews (mac): Output: http://webkit-queues.webkit.org/results/2381005 New failing tests: storage/indexeddb/modern/idbdatabase-transaction-failures.html storage/indexeddb/exceptions.html storage/indexeddb/exceptions-private.html storage/indexeddb/transaction-basics-private.html storage/indexeddb/transaction-basics.html storage/indexeddb/modern/idbdatabase-transaction-failures-private.html
Created attachment 292965 [details] Archive of layout-test-results from ews103 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: ews103 Port: mac-yosemite Platform: Mac OS X 10.10.5
Comment on attachment 292962 [details] WIP Patch Attachment 292962 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.webkit.org/results/2381014 New failing tests: storage/indexeddb/modern/idbdatabase-transaction-failures.html storage/indexeddb/exceptions.html storage/indexeddb/exceptions-private.html storage/indexeddb/transaction-basics-private.html storage/indexeddb/transaction-basics.html storage/indexeddb/modern/idbdatabase-transaction-failures-private.html
Created attachment 292967 [details] Archive of layout-test-results from ews104 for mac-yosemite-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews104 Port: mac-yosemite-wk2 Platform: Mac OS X 10.10.5
Comment on attachment 292962 [details] WIP Patch Attachment 292962 [details] did not pass mac-debug-ews (mac): Output: http://webkit-queues.webkit.org/results/2381003 New failing tests: storage/indexeddb/modern/idbdatabase-transaction-failures.html storage/indexeddb/exceptions.html storage/indexeddb/exceptions-private.html storage/indexeddb/transaction-basics-private.html storage/indexeddb/transaction-basics.html storage/indexeddb/modern/idbdatabase-transaction-failures-private.html
Created attachment 292968 [details] Archive of layout-test-results from ews113 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews113 Port: mac-yosemite Platform: Mac OS X 10.10.5
Windows is failing to build :/ c:\cygwin\home\buildbot\webkit\webkitbuild\release\derivedsources\webcore\JSIDBTransactionMode.h(30): error C2908: explicit specialization; 'WTF::Optional<WebCore::IDBTransactionMode> WebCore::parseEnumeration<WebCore::IDBTransactionMode>(JSC::ExecState &,JSC::JSValue)' has already been instantiated (compiling source file C:\cygwin\home\buildbot\WebKit\Source\WebCore\DerivedSources.cpp) [C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\Source\WebCore\WebCoreDerivedSources.vcxproj] c:\cygwin\home\buildbot\webkit\webkitbuild\release\derivedsources\webcore\JSIDBTransactionMode.h(32): error C2908: explicit specialization; 'const char *WebCore::expectedEnumerationValues<WebCore::IDBTransactionMode>(void)' has already been instantiated (compiling source file C:\cygwin\home\buildbot\WebKit\Source\WebCore\DerivedSources.cpp) [C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\Source\WebCore\WebCoreDerivedSources.vcxproj]
Created attachment 292975 [details] Patch
Should fix the tests, however, I have not figured out how to fix the Window "All In One" build yet.
Looks fantastic.
Created attachment 292985 [details] Patch
Created attachment 292986 [details] Patch
Created attachment 292987 [details] Patch
Created attachment 292988 [details] Patch
I protected the header with "#if !ENABLE(ALLINONE_BUILD)" and now the errors are for the cpp file: C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\DerivedSources\WebCore\JSIDBTransactionMode.cpp(58): error C2908: explicit specialization; 'WTF::Optional<WebCore::IDBTransactionMode> WebCore::parseEnumeration<WebCore::IDBTransactionMode>(JSC::ExecState &,JSC::JSValue)' has already been instantiated (compiling source file C:\cygwin\home\buildbot\WebKit\Source\WebCore\DerivedSources.cpp) [C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\Source\WebCore\WebCoreDerivedSources.vcxproj] C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\DerivedSources\WebCore\JSIDBTransactionMode.cpp(75): error C2908: explicit specialization; 'const char *WebCore::expectedEnumerationValues<WebCore::IDBTransactionMode>(void)' has already been instantiated (compiling source file C:\cygwin\home\buildbot\WebKit\Source\WebCore\DerivedSources.cpp) [C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\Source\WebCore\WebCoreDerivedSources.vcxproj] I don't quite understand how the template function can already be instantiated :/
Created attachment 292992 [details] Patch
I think the issue is that the template function is instantiated / used before its explicit specialization is provided. This likely means I am not properly including "JSIDBTransactionMode.h" in some places. Trying to see if this fixes it.
Comment on attachment 292992 [details] Patch OMG everything is green, even Windows!
Comment on attachment 292992 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=292992&action=review > Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:905 > + # FIXME: A little ugly to have this be a side effect instead of a return value. Iām not sure why we have this FIXME in some places but not others, even though I was probably the first offender, the first person to write that comment. For example, teh function above has the identical issue with $headerIncludes{} but no comment.
Comment on attachment 292992 [details] Patch Clearing flags on attachment: 292992 Committed r207937: <http://trac.webkit.org/changeset/207937>
All reviewed patches have been landed. Closing bug.