Bug 114367

Summary: --minimal build fails with error: Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h:44:36: error: ‘decode’ is not a member of ‘WebCore::TextCheckingResult’
Product: WebKit Reporter: Vlad Vasilyeu <vasvlad>
Component: WebKit EFLAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: bartosh, commit-queue, g.czajkowski, gyuyoung.kim, laszlo.gombos, lucas.de.marchi, rakuco, ryuan.choi
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
none
Patch
none
Patch
none
Patch none

Description Vlad Vasilyeu 2013-04-10 11:03:36 PDT
./Tools/Scripts/build-webkit --efl --cmakeargs="-DSHARED_CORE=ON" --minimal fails with this error:

 Building CXX object Source/WebKit2/CMakeFiles/ewebkit2.dir/WebProcess/efl/WebProcessMainEfl.cpp.o
In file included from /home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentDecoder.h:29:0,
                 from /home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/Arguments.h:29,
                 from /home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/Connection.h:31,
                 from /home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/MessageSender.h:30,
                 from /home/vlad/work/Webkit/WebKit/Source/WebKit2/WebProcess/WebPage/WebPage.h:47,
                 from /home/vlad/work/Webkit/WebKit/Source/WebKit2/WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:32
:
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h: In static member function ‘static bool Core
IPC::ArgumentCoder<T>::decode(CoreIPC::ArgumentDecoder&, T&) [with T = WebCore::TextCheckingResult]’:
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentDecoder.h:90:49:   instantiated from ‘bool CoreIPC::
ArgumentDecoder::decode(T&) [with T = WebCore::TextCheckingResult]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentCoders.h:115:13:   instantiated from ‘static bool Co
reIPC::VectorArgumentCoder<false, T>::decode(CoreIPC::ArgumentDecoder&, WTF::Vector<CharacterType>&) [with T = WebCore::TextCheckingResult]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentDecoder.h:90:49:   instantiated from ‘bool CoreIPC::ArgumentDecoder::decode(T&) [with T = WTF::Vector<WebCore::TextCheckingResult>]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/Arguments.h:67:47:   instantiated from ‘static bool CoreIPC::Arguments1<T1>::decode(CoreIPC::ArgumentDecoder&, CoreIPC::Arguments1<T1>&) [with T1 = WTF::Vector<WebCore::TextCheckingResult>&, CoreIPC::Arguments1<T1> = CoreIPC::Arguments1<WTF::Vector<WebCore::TextCheckingResult>&>]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h:44:36:   instantiated from ‘static bool CoreIPC::ArgumentCoder<T>::decode(CoreIPC::ArgumentDecoder&, T&) [with T = CoreIPC::Arguments1<WTF::Vector<WebCore::TextCheckingResult>&>]’
ngResult>&>]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentDecoder.h:90:49:   instantiated from ‘bool CoreIPC::ArgumentDecoder::decode(T&) [with T = CoreIPC::Arguments1<WTF::Vector<WebCore::TextCheckingResult>&>]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/Connection.h:381:70:   instantiated from ‘bool CoreIPC::Connection::sendSync(const T&, const typename T::Reply&, uint64_t, double, unsigned int) [with T = Messages::WebPageProxy::CheckTextOfParagraph, typename T::Reply = CoreIPC::Arguments1<WTF::Vector<WebCore::TextCheckingResult>&>, uint64_t = long long unsigned int]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/MessageSender.h:69:75:   instantiated from ‘bool CoreIPC::MessageSender<T>::sendSync(const U&, const typename U::Reply&, uint64_t, double) [with U = Messages::WebPageProxy::CheckTextOfParagraph, T = WebKit::WebPage, typename U::Reply = CoreIPC::Arguments1<WTF::Vector<WebCore::TextCheckingResult>&>, uint64_t = long long unsigned int]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/MessageSender.h:61:88:   instantiated from ‘bool CoreIPC::MessageSender<T>::sendSync(const U&, const typename U::Reply&, double) [with U = Messages::WebPageProxy::CheckTextOfParagraph, T = WebKit::WebPage, typename U::Reply = CoreIPC::Arguments1<WTF::Vector<WebCore::TextCheckingResult>&>]’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:66:165:   instantiated from here
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h:44:36: error: ‘decode’ is not a member of ‘WebCore::TextCheckingResult’
/home/vlad/work/Webkit/WebKit/Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h:45:5: error: control reaches end of non-void function [-Werror=return-type]
cc1plus: all warnings being treated as errors
make[2]: *** [Source/WebKit2/CMakeFiles/ewebkit2.dir/WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Source/WebKit2/CMakeFiles/ewebkit2.dir/all] Error 2
make: *** [all] Error 2
Comment 1 Vlad Vasilyeu 2013-04-11 09:56:18 PDT
Created attachment 197632 [details]
Patch
Comment 2 WebKit Commit Bot 2013-04-11 10:03:12 PDT
Attachment 197632 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp']" exit_code: 1
Source/WebKit2/WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:39:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Vlad Vasilyeu 2013-04-11 10:14:52 PDT
Created attachment 197636 [details]
Patch
Comment 4 Gyuyoung Kim 2013-04-15 00:55:50 PDT
Comment on attachment 197636 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=197636&action=review

> Source/WebCore/ChangeLog:10
> +        * editing/chromium: Copied from Source/WebCore/editing/chromium.

This patch doesn't include this modification. Remove this changelog.

> Source/WebKit2/ChangeLog:3
> +        --minimal build fails with error: Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h:44:36: error: âdecodeâ is not a member of âWebCore::TextCheckingResultâ

No clear bug title. Please use summarized bug tile which can represent your problem or patch.
Comment 5 Vlad Vasilyeu 2013-04-15 06:48:08 PDT
Created attachment 198120 [details]
Patch
Comment 6 Gyuyoung Kim 2013-04-15 18:55:16 PDT
Comment on attachment 198120 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=198120&action=review

FYI, there is a instruction how to contribute a patch to WebKit. http://www.webkit.org/coding/contributing.html

> Source/WebCore/ChangeLog:3
> +        [EFL] Fixed build failure with option --minimal 

This patch doesn't touch any files in WebCore. So, you should not update ChangeLog of WebCore. Do not include this in this patch.

> Source/WebKit2/ChangeLog:7
> +

Please add a description to explain why this patch is added or what is added.
Comment 7 Gyuyoung Kim 2013-04-15 18:58:38 PDT
Comment on attachment 198120 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=198120&action=review

> Source/WebKit2/ChangeLog:3
> +        [EFL] Fixed build failure with option --minimal 

One more thing, you have to sync with Bugzilla bug title as well.
Comment 8 Vlad Vasilyeu 2013-04-18 11:53:27 PDT
Created attachment 198751 [details]
Patch
Comment 9 Benjamin Poulain 2013-04-18 14:15:21 PDT
Comment on attachment 198751 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=198751&action=review

> Source/WebKit2/ChangeLog:2
> +2013-04-11  Vlad Vasilyeu  <vasvlad@gmail.com>
> +

Missing title and bug number.

> Source/WebKit2/ChangeLog:5
> +        Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h:44:36: error: âdecodeâ
> +        is not a member of âWebCore::TextCheckingResultâ

Looks like some encoding issues here. Is it the review tool or the ChangeLog?
Comment 10 Vlad Vasilyeu 2013-04-19 02:31:04 PDT
Created attachment 198829 [details]
Patch
Comment 11 Ed Bartosh 2013-04-21 09:24:34 PDT
*** Bug 113792 has been marked as a duplicate of this bug. ***
Comment 12 Grzegorz Czajkowski 2013-04-24 01:20:09 PDT
Comment on attachment 198829 [details]
Patch

Thanks.
Comment 13 WebKit Commit Bot 2013-04-24 01:43:43 PDT
Comment on attachment 198829 [details]
Patch

Clearing flags on attachment: 198829

Committed r149022: <http://trac.webkit.org/changeset/149022>
Comment 14 WebKit Commit Bot 2013-04-24 01:43:47 PDT
All reviewed patches have been landed.  Closing bug.
Comment 15 Grzegorz Czajkowski 2013-04-24 02:19:59 PDT
Additionally, we could consider to disable spell checking feature for minimal build.
EFL and GTK+ use ENABLE_SPELLCHECK macro to link against Enchant library and as a result the most spell checking code is guarded by it.

Do you go along with that? I guess it should be an separate bug.
Comment 16 Vlad Vasilyeu 2013-04-24 06:52:11 PDT
This problem depends at least on bug #114299. If you can please review this bug.
Comment 17 Ed Bartosh 2013-04-24 10:08:16 PDT
Gregorz, here is the patch to disable spellcheck and many other options for minimal build: https://bug-113660-attachments.webkit.org/attachment.cgi?id=197144

I'm working on fixing minimal build. More than 10 patches have been already landed, but there are at least 4 still waiting for review. And new breakages are continuously coming to the codebase. Unfortunately patches have been reviewed quite slow. For example 113660 depends on https://bugs.webkit.org/show_bug.cgi?id=114299 but it stays untouched by reviewers for more than 10 days already.

If you can help review 114299 and then 113600 that would be great!
Comment 18 Grzegorz Czajkowski 2013-04-30 00:47:35 PDT
(In reply to comment #17)
> Gregorz, here is the patch to disable spellcheck and many other options for minimal build: https://bug-113660-attachments.webkit.org/attachment.cgi?id=197144

That's great! Adding Laszlo due to build system changes.

> I'm working on fixing minimal build. More than 10 patches have been already landed, but there are at least 4 still waiting for review. And new breakages are continuously coming to the codebase.

If the minial build is essential maybe it's worth adding a separate EWS for it. Otherwise, we will have problems with minimal build as the developers probably don't pay attention on it.

Unfortunately patches have been reviewed quite slow. For example 113660 depends on https://bugs.webkit.org/show_bug.cgi?id=114299 but it stays untouched by reviewers for more than 10 days already.
> 
> If you can help review 114299 and then 113600 that would be great!

It's better to ask Laszko/Raphael for build related changes.