|
|
Created:
6 years, 10 months ago by Nils Barth (inactive) Modified:
6 years, 9 months ago Reviewers:
haraken CC:
blink-reviews, kojih, arv+blink, jsbell+bindings_chromium.org, sof, marja+watch_chromium.org, adamk+blink_chromium.org, Nate Chapin, Inactive Base URL:
svn://svn.chromium.org/blink/trunk Visibility:
Public. |
DescriptionIDL compiler: switch build to Python compiler
This switches the build to Python, rather than Perl.
As of Blink r-167947, Perl and Python generate identical bindings code, so we're ready to switch:
https://src.chromium.org/viewvc/blink?view=rev&revision=167947
Certain in-flight CLs may cause breakage if they land:
if they only change Perl (not Python).
This is generally caught by run-bindings-tests in blink_presubmit, but can fail if the change lacks test cases,
or if the patch set was uploaded prior to turning on Python tests in r-167838.
The only 1 I can see is:
Move mediastream module to oilpan
https://codereview.chromium.org/173363002/
This lacks test cases, and will break the build if it lands.
I've stopped this.
Ref:
log: code_generator_v8.pm
http://src.chromium.org/viewvc/blink/trunk/Source/bindings/scripts/code_generator_v8.pm?view=log#revHEAD
BUG=239771
R=haraken
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=167983
Patch Set 1 #Patch Set 2 : Add pre-cache #Patch Set 3 : Comment fixes #Patch Set 4 : Sync #
Total comments: 5
Patch Set 5 : Revised naming #Patch Set 6 : Rename #Patch Set 7 : .stamp naming #Patch Set 8 : Reupload for CQ #Patch Set 9 : Rebased #Messages
Total messages: 30 (0 generated)
We're ready to switch!
OK, LGTM. https://codereview.chromium.org/166333002/diff/90001/Source/bindings/generate... File Source/bindings/generated_bindings.gyp (right): https://codereview.chromium.org/166333002/diff/90001/Source/bindings/generate... Source/bindings/generated_bindings.gyp:115: 'compiler_module_files': [ idl_compiler_files ? https://codereview.chromium.org/166333002/diff/90001/Source/bindings/generate... Source/bindings/generated_bindings.gyp:240: '<(bindings_output_dir)/JINJA_CACHED', # Dummy to track dependency JINJA_CACHED => JinjaTemplate.cached ?
Frame is going to be renamed to LocalFrame shortly. You'll need to rebase the CL after the rename.
On 2014/02/26 04:50:53, haraken wrote: > Frame is going to be renamed to LocalFrame shortly. You'll need to rebase the CL > after the rename. I'll wait until after the rename before landing, but that shouldn't affect this CL.
Naming notes, revised. https://codereview.chromium.org/166333002/diff/90001/Source/bindings/generate... File Source/bindings/generated_bindings.gyp (right): https://codereview.chromium.org/166333002/diff/90001/Source/bindings/generate... Source/bindings/generated_bindings.gyp:115: 'compiler_module_files': [ On 2014/02/26 04:40:04, haraken wrote: > idl_compiler_files ? Good point, that's clearer! https://codereview.chromium.org/166333002/diff/90001/Source/bindings/generate... Source/bindings/generated_bindings.gyp:240: '<(bindings_output_dir)/JINJA_CACHED', # Dummy to track dependency On 2014/02/26 04:40:04, haraken wrote: > > JINJA_CACHED => JinjaTemplate.cached ? I'd prefer ALL_CAPS: it's a dummy file (empty), so it's clearer to not have an extension, as an extension suggests data type and contents. (Actual Jinja cache files have a '.cache' extension.)
https://codereview.chromium.org/166333002/diff/90001/Source/bindings/generate... File Source/bindings/generated_bindings.gyp (right): https://codereview.chromium.org/166333002/diff/90001/Source/bindings/generate... Source/bindings/generated_bindings.gyp:240: '<(bindings_output_dir)/JINJA_CACHED', # Dummy to track dependency On 2014/02/26 06:45:45, Nils Barth wrote: > On 2014/02/26 04:40:04, haraken wrote: > > > > JINJA_CACHED => JinjaTemplate.cached ? > > I'd prefer ALL_CAPS: it's a dummy file (empty), > so it's clearer to not have an extension, as an extension > suggests data type and contents. > (Actual Jinja cache files have a '.cache' extension.) Then JinjaTemplateDummyCache.cached ? We want to follow the naming convention of Blink unless we have a special reason.
On 2014/02/26 04:52:09, Nils Barth wrote: > On 2014/02/26 04:50:53, haraken wrote: > > Frame is going to be renamed to LocalFrame shortly. You'll need to rebase the > CL > > after the rename. > > I'll wait until after the rename before landing, but that shouldn't affect this > CL. BTW, Frame => LocalFrame did change the compiler (though not this CL), but Daniel updated Python as well (thanks!), so no need for a separate sync.
On 2014/02/26 06:49:10, haraken wrote: > We want to follow the naming convention of Blink unless we have a special > reason. Oh, you mean we should use CamelCase? Ok, I've renamed it to: JinjaCachedDummy (We shouldn't use any extension, because it has no contents.)
Anyway, it's an empty file (not a content-ful file), so it's a bit special. We use ALLCAPS for special non-source files like DEPS, LICENSE, OWNERS, PRESUBMIT.py, WATCHLISTS, which is why I figured it was sensible for a dummy build file.
I think we use ".stamp" files for this purpose in other parts of the build. I'm not sure if we have those names in GYP or whether ninja generates them itself.
On 2014/02/26 07:02:03, abarth wrote: > I think we use ".stamp" files for this purpose in other parts of the build. I'm > not sure if we have those names in GYP or whether ninja generates them itself. Thanks Adam! The convention for these "stamp files" is '{target}.stamp'; they are generated by GYP for ninja and make, but don't appear in .gyp files themselves. This seems the most standard term, so I've used 'cached_jinja_templates.stamp' for the file. Reference: https://code.google.com/p/gyp/source/browse/trunk/pylib/gyp/generator/make.py... https://code.google.com/p/gyp/source/browse/trunk/pylib/gyp/generator/ninja.p...
The CQ bit was checked by nbarth@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/nbarth@chromium.org/166333002/140001
The CQ bit was unchecked by nbarth@chromium.org
The CQ bit was checked by nbarth@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/nbarth@chromium.org/166333002/140001
The CQ bit was unchecked by nbarth@chromium.org
The CQ bit was checked by nbarth@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/nbarth@chromium.org/166333002/160001
The CQ bit was unchecked by commit-bot@chromium.org
Retried try job too often on mac_blink_rel for step(s) blink_heap_unittests, blink_platform_unittests, webkit_lint, webkit_python_tests, webkit_tests, webkit_unit_tests, wtf_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_blink_...
The CQ bit was checked by nbarth@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/nbarth@chromium.org/166333002/160001
The CQ bit was unchecked by nbarth@chromium.org
On 2014/02/27 01:37:27, I haz the power (commit-bot) wrote: > Retried try job too often on mac_blink_rel for step(s) blink_heap_unittests, > blink_platform_unittests, webkit_lint, webkit_python_tests, webkit_tests, > webkit_unit_tests, wtf_unittests > http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_blink_... Real build error, fixed in IDL compiler: Filter files during pre-caching of templates https://codereview.chromium.org/182573002/
The CQ bit was checked by nbarth@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/nbarth@chromium.org/166333002/180001
Message was sent while issue was closed.
Change committed as 167983
Message was sent while issue was closed.
On 2014/02/27 04:33:48, I haz the power (commit-bot) wrote: > Change committed as 167983 How many CLs have you landed until here? :)
Message was sent while issue was closed.
On 2014/02/27 04:34:39, haraken wrote: > On 2014/02/27 04:33:48, I haz the power (commit-bot) wrote: > > Change committed as 167983 > > How many CLs have you landed until here? :) Probably 400? ...of which I'd estimate about 200 are actual rewrite, 100 are cleanup, and 100 are syncing. The tracking bug has 400+ comments, most CLs: Rewrite the IDL compiler in Python https://code.google.com/p/chromium/issues/detail?id=239771 |