You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by Bernd Mathiske <be...@mesosphere.io> on 2014/03/06 00:54:12 UTC

Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/
-----------------------------------------------------------

Review request for mesos.


Bugs: MESOS-1055
    https://issues.apache.org/jira/browse/MESOS-1055


Repository: mesos-git


Description
-------

Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)


Diffs
-----

  src/examples/long_lived_framework.cpp dc123cd 
  src/log/log.cpp 7f855f2 
  src/log/replica.hpp 08ddcb1 
  src/log/replica.cpp 1f1a945 
  src/master/contender.cpp 42d9c07 
  src/master/detector.cpp 3a8aaed 
  src/master/registrar.cpp 37337c0 
  src/tests/cgroups_tests.cpp 4a092cc 
  src/tests/group_tests.cpp b265bcb 
  src/zookeeper/detector.cpp e186e51 
  support/cpplint.py a8c9f67 

Diff: https://reviews.apache.org/r/18823/diff/


Testing
-------

Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.

Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
And due to the patch, no more warnings about explicit constructors inside Mesos source code.

Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.


Thanks,

Bernd Mathiske


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review36293
-----------------------------------------------------------



src/tests/group_tests.cpp
<https://reviews.apache.org/r/18823/#comment67246>

    Does this compile? Why explicit here?


- Jie Yu


On March 5, 2014, 11:54 p.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 5, 2014, 11:54 p.m.)
> 
> 
> Review request for mesos.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/log/log.cpp 7f855f2 
>   src/log/replica.hpp 08ddcb1 
>   src/log/replica.cpp 1f1a945 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.cpp 3a8aaed 
>   src/master/registrar.cpp 37337c0 
>   src/tests/cgroups_tests.cpp 4a092cc 
>   src/tests/group_tests.cpp b265bcb 
>   src/zookeeper/detector.cpp e186e51 
>   support/cpplint.py a8c9f67 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Dominic Hamon <dh...@twopensource.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review36294
-----------------------------------------------------------



src/tests/group_tests.cpp
<https://reviews.apache.org/r/18823/#comment67247>

    this doesn't look right.. it's not a constructor.



support/cpplint.py
<https://reviews.apache.org/r/18823/#comment67248>

    this should probably be in a different patch.


- Dominic Hamon


On March 5, 2014, 3:54 p.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 5, 2014, 3:54 p.m.)
> 
> 
> Review request for mesos.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/log/log.cpp 7f855f2 
>   src/log/replica.hpp 08ddcb1 
>   src/log/replica.cpp 1f1a945 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.cpp 3a8aaed 
>   src/master/registrar.cpp 37337c0 
>   src/tests/cgroups_tests.cpp 4a092cc 
>   src/tests/group_tests.cpp b265bcb 
>   src/zookeeper/detector.cpp e186e51 
>   support/cpplint.py a8c9f67 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Bernd Mathiske <be...@mesosphere.io>.

> On March 11, 2014, 2 p.m., Adam B wrote:
> > src/jvm/jvm.hpp, line 233
> > <https://reviews.apache.org/r/18823/diff/2/?file=511990#file511990line233>
> >
> >     const& ?

It seems to be conventional in the Mesos code base not to mark these const& as it is not necessary. A jobject is passed in by value here. It does not point to an object directly. So using a reference does not change anything. 


> On March 11, 2014, 2 p.m., Adam B wrote:
> > include/mesos/resources.hpp, line 80
> > <https://reviews.apache.org/r/18823/diff/2/?file=511982#file511982line80>
> >
> >     End these comments with a '.' instead of a ':'.
> >     Is there a better way to express these implicit conversions rather than a single-element constructor?

using prefix /*implicit*/ now


- Bernd


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review36840
-----------------------------------------------------------


On March 25, 2014, 11:35 a.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 25, 2014, 11:35 a.m.)
> 
> 
> Review request for mesos and Niklas Nielsen.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   include/mesos/executor.hpp 7bc8eca 
>   include/mesos/resources.hpp 59f495c 
>   src/common/attributes.hpp a08cf18 
>   src/common/lock.hpp 5af2f42 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/hdfs/hdfs.hpp 228f007 
>   src/jvm/java/io.hpp fa0c60c 
>   src/jvm/java/lang.hpp 5eb365d 
>   src/jvm/java/net.hpp 7816251 
>   src/jvm/jvm.hpp 2d3a7eb 
>   src/log/log.hpp c2cb6cf 
>   src/log/log.cpp d9b2687 
>   src/log/network.hpp 2befea4 
>   src/log/replica.hpp 6c51a58 
>   src/log/replica.cpp 6db6d05 
>   src/master/allocator.hpp 2e6a910 
>   src/master/contender.hpp 0048ee0 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.hpp 533027a 
>   src/master/detector.cpp 8b10061 
>   src/master/hierarchical_allocator_process.hpp 3ec453a 
>   src/master/master.hpp a8ed5ec 
>   src/master/registrar.cpp 2b41700 
>   src/python/native/proxy_executor.hpp 9f6b33f 
>   src/python/native/proxy_scheduler.hpp cc92149 
>   src/sasl/authenticator.hpp e1db783 
>   src/slave/containerizer/isolator.hpp fc6c9ab 
>   src/slave/monitor.hpp c042bc1 
>   src/slave/slave.hpp 01b80df 
>   src/state/leveldb.hpp 9708614 
>   src/state/leveldb.cpp d60145b 
>   src/state/protobuf.hpp d1c21c6 
>   src/state/state.hpp 133752d 
>   src/state/zookeeper.cpp bee6838 
>   src/tests/containerizer.hpp 5686398 
>   src/zookeeper/detector.hpp 73235c0 
>   src/zookeeper/detector.cpp e186e51 
>   src/zookeeper/group.hpp d1ead38 
>   src/zookeeper/watcher.hpp 1db0386 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Adam B <ad...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review36840
-----------------------------------------------------------

Ship it!


Looks good to me


include/mesos/resources.hpp
<https://reviews.apache.org/r/18823/#comment68025>

    End these comments with a '.' instead of a ':'.
    Is there a better way to express these implicit conversions rather than a single-element constructor?



src/jvm/jvm.hpp
<https://reviews.apache.org/r/18823/#comment68027>

    const& ?


- Adam B


On March 5, 2014, 5:59 p.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 5, 2014, 5:59 p.m.)
> 
> 
> Review request for mesos.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   include/mesos/executor.hpp 7bc8eca 
>   include/mesos/resources.hpp 59f495c 
>   src/common/attributes.hpp a08cf18 
>   src/common/lock.hpp 5af2f42 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/hdfs/hdfs.hpp 228f007 
>   src/jvm/java/io.hpp fa0c60c 
>   src/jvm/java/lang.hpp 5eb365d 
>   src/jvm/java/net.hpp 7816251 
>   src/jvm/jvm.hpp 2d3a7eb 
>   src/log/log.hpp 628a4b8 
>   src/log/log.cpp 7f855f2 
>   src/log/network.hpp 9c76bf8 
>   src/log/replica.hpp 08ddcb1 
>   src/log/replica.cpp 1f1a945 
>   src/master/allocator.hpp 2e6a910 
>   src/master/contender.hpp 0048ee0 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.hpp 533027a 
>   src/master/detector.cpp 3a8aaed 
>   src/master/hierarchical_allocator_process.hpp 3ec453a 
>   src/master/master.hpp 49a3e15 
>   src/master/registrar.hpp 20734af 
>   src/master/registrar.cpp 37337c0 
>   src/python/native/proxy_executor.hpp 9f6b33f 
>   src/python/native/proxy_scheduler.hpp cc92149 
>   src/sasl/authenticator.hpp e1db783 
>   src/slave/containerizer/isolator.hpp fc6c9ab 
>   src/slave/monitor.hpp c042bc1 
>   src/slave/slave.hpp 01b80df 
>   src/state/leveldb.hpp 14a94cc 
>   src/state/protobuf.hpp d1c21c6 
>   src/state/state.hpp 133752d 
>   src/state/zookeeper.hpp d1d1fed 
>   src/tests/cgroups_tests.cpp 4a092cc 
>   src/tests/containerizer.hpp 5686398 
>   src/zookeeper/detector.hpp 73235c0 
>   src/zookeeper/detector.cpp e186e51 
>   src/zookeeper/group.hpp d1ead38 
>   src/zookeeper/watcher.hpp 1db0386 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Niklas Nielsen <ni...@qni.dk>.

> On March 17, 2014, 1:22 a.m., Mesos ReviewBot wrote:
> > Bad patch!
> > 
> > Reviews applied: [18823]
> > 
> > Failed command: git apply --index 18823.patch
> > 
> > Error:
> >  error: patch failed: src/master/registrar.hpp:37
> > error: src/master/registrar.hpp: patch does not apply
> > error: patch failed: src/master/registrar.cpp:60
> > error: src/master/registrar.cpp: patch does not apply
> >

Hey Bernd - can you rebase this patch so we can get it committed? :)


- Niklas


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review37354
-----------------------------------------------------------


On March 14, 2014, 1:29 p.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 14, 2014, 1:29 p.m.)
> 
> 
> Review request for mesos and Niklas Nielsen.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   include/mesos/executor.hpp 7bc8eca 
>   include/mesos/resources.hpp 59f495c 
>   src/common/attributes.hpp a08cf18 
>   src/common/lock.hpp 5af2f42 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/hdfs/hdfs.hpp 228f007 
>   src/jvm/java/io.hpp fa0c60c 
>   src/jvm/java/lang.hpp 5eb365d 
>   src/jvm/java/net.hpp 7816251 
>   src/jvm/jvm.hpp 2d3a7eb 
>   src/log/log.hpp c2cb6cf 
>   src/log/log.cpp 6992518 
>   src/log/network.hpp 2befea4 
>   src/log/replica.hpp 6c51a58 
>   src/log/replica.cpp 6db6d05 
>   src/master/allocator.hpp 2e6a910 
>   src/master/contender.hpp 0048ee0 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.hpp 533027a 
>   src/master/detector.cpp 3a8aaed 
>   src/master/hierarchical_allocator_process.hpp 3ec453a 
>   src/master/master.hpp 49a3e15 
>   src/master/registrar.hpp 987a63b 
>   src/master/registrar.cpp d30172c 
>   src/python/native/proxy_executor.hpp 9f6b33f 
>   src/python/native/proxy_scheduler.hpp cc92149 
>   src/sasl/authenticator.hpp e1db783 
>   src/slave/containerizer/isolator.hpp fc6c9ab 
>   src/slave/monitor.hpp c042bc1 
>   src/slave/slave.hpp 01b80df 
>   src/state/leveldb.hpp 9708614 
>   src/state/leveldb.cpp d60145b 
>   src/state/protobuf.hpp d1c21c6 
>   src/state/state.hpp 133752d 
>   src/state/zookeeper.cpp bee6838 
>   src/tests/cgroups_tests.cpp 4a092cc 
>   src/tests/containerizer.hpp 5686398 
>   src/zookeeper/detector.hpp 73235c0 
>   src/zookeeper/detector.cpp e186e51 
>   src/zookeeper/group.hpp d1ead38 
>   src/zookeeper/watcher.hpp 1db0386 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Mesos ReviewBot <de...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review37354
-----------------------------------------------------------


Bad patch!

Reviews applied: [18823]

Failed command: git apply --index 18823.patch

Error:
 error: patch failed: src/master/registrar.hpp:37
error: src/master/registrar.hpp: patch does not apply
error: patch failed: src/master/registrar.cpp:60
error: src/master/registrar.cpp: patch does not apply


- Mesos ReviewBot


On March 14, 2014, 8:29 p.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 14, 2014, 8:29 p.m.)
> 
> 
> Review request for mesos and Niklas Nielsen.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   include/mesos/executor.hpp 7bc8eca 
>   include/mesos/resources.hpp 59f495c 
>   src/common/attributes.hpp a08cf18 
>   src/common/lock.hpp 5af2f42 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/hdfs/hdfs.hpp 228f007 
>   src/jvm/java/io.hpp fa0c60c 
>   src/jvm/java/lang.hpp 5eb365d 
>   src/jvm/java/net.hpp 7816251 
>   src/jvm/jvm.hpp 2d3a7eb 
>   src/log/log.hpp c2cb6cf 
>   src/log/log.cpp 6992518 
>   src/log/network.hpp 2befea4 
>   src/log/replica.hpp 6c51a58 
>   src/log/replica.cpp 6db6d05 
>   src/master/allocator.hpp 2e6a910 
>   src/master/contender.hpp 0048ee0 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.hpp 533027a 
>   src/master/detector.cpp 3a8aaed 
>   src/master/hierarchical_allocator_process.hpp 3ec453a 
>   src/master/master.hpp 49a3e15 
>   src/master/registrar.hpp 987a63b 
>   src/master/registrar.cpp d30172c 
>   src/python/native/proxy_executor.hpp 9f6b33f 
>   src/python/native/proxy_scheduler.hpp cc92149 
>   src/sasl/authenticator.hpp e1db783 
>   src/slave/containerizer/isolator.hpp fc6c9ab 
>   src/slave/monitor.hpp c042bc1 
>   src/slave/slave.hpp 01b80df 
>   src/state/leveldb.hpp 9708614 
>   src/state/leveldb.cpp d60145b 
>   src/state/protobuf.hpp d1c21c6 
>   src/state/state.hpp 133752d 
>   src/state/zookeeper.cpp bee6838 
>   src/tests/cgroups_tests.cpp 4a092cc 
>   src/tests/containerizer.hpp 5686398 
>   src/zookeeper/detector.hpp 73235c0 
>   src/zookeeper/detector.cpp e186e51 
>   src/zookeeper/group.hpp d1ead38 
>   src/zookeeper/watcher.hpp 1db0386 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Bernd Mathiske <be...@mesosphere.io>.

> On March 25, 2014, 2:21 p.m., Niklas Nielsen wrote:
> > Taken that you reran cpplint.py recently :)
> > I'll get this committed today! Thanks Bernd.

I did rerun it from scratch on the latest revision. 

It has one false positive in tests, cannot recognize "explicit" when on a different line, and it does not recognize "/*implicit*/". If we fixed/implemented all that, we could make it part of the build process.


- Bernd


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review38534
-----------------------------------------------------------


On March 25, 2014, 11:35 a.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 25, 2014, 11:35 a.m.)
> 
> 
> Review request for mesos and Niklas Nielsen.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   include/mesos/executor.hpp 7bc8eca 
>   include/mesos/resources.hpp 59f495c 
>   src/common/attributes.hpp a08cf18 
>   src/common/lock.hpp 5af2f42 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/hdfs/hdfs.hpp 228f007 
>   src/jvm/java/io.hpp fa0c60c 
>   src/jvm/java/lang.hpp 5eb365d 
>   src/jvm/java/net.hpp 7816251 
>   src/jvm/jvm.hpp 2d3a7eb 
>   src/log/log.hpp c2cb6cf 
>   src/log/log.cpp d9b2687 
>   src/log/network.hpp 2befea4 
>   src/log/replica.hpp 6c51a58 
>   src/log/replica.cpp 6db6d05 
>   src/master/allocator.hpp 2e6a910 
>   src/master/contender.hpp 0048ee0 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.hpp 533027a 
>   src/master/detector.cpp 8b10061 
>   src/master/hierarchical_allocator_process.hpp 3ec453a 
>   src/master/master.hpp a8ed5ec 
>   src/master/registrar.cpp 2b41700 
>   src/python/native/proxy_executor.hpp 9f6b33f 
>   src/python/native/proxy_scheduler.hpp cc92149 
>   src/sasl/authenticator.hpp e1db783 
>   src/slave/containerizer/isolator.hpp fc6c9ab 
>   src/slave/monitor.hpp c042bc1 
>   src/slave/slave.hpp 01b80df 
>   src/state/leveldb.hpp 9708614 
>   src/state/leveldb.cpp d60145b 
>   src/state/protobuf.hpp d1c21c6 
>   src/state/state.hpp 133752d 
>   src/state/zookeeper.cpp bee6838 
>   src/tests/containerizer.hpp 5686398 
>   src/zookeeper/detector.hpp 73235c0 
>   src/zookeeper/detector.cpp e186e51 
>   src/zookeeper/group.hpp d1ead38 
>   src/zookeeper/watcher.hpp 1db0386 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Niklas Nielsen <ni...@qni.dk>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review38534
-----------------------------------------------------------

Ship it!


Taken that you reran cpplint.py recently :)
I'll get this committed today! Thanks Bernd.

- Niklas Nielsen


On March 25, 2014, 11:35 a.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 25, 2014, 11:35 a.m.)
> 
> 
> Review request for mesos and Niklas Nielsen.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   include/mesos/executor.hpp 7bc8eca 
>   include/mesos/resources.hpp 59f495c 
>   src/common/attributes.hpp a08cf18 
>   src/common/lock.hpp 5af2f42 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/hdfs/hdfs.hpp 228f007 
>   src/jvm/java/io.hpp fa0c60c 
>   src/jvm/java/lang.hpp 5eb365d 
>   src/jvm/java/net.hpp 7816251 
>   src/jvm/jvm.hpp 2d3a7eb 
>   src/log/log.hpp c2cb6cf 
>   src/log/log.cpp d9b2687 
>   src/log/network.hpp 2befea4 
>   src/log/replica.hpp 6c51a58 
>   src/log/replica.cpp 6db6d05 
>   src/master/allocator.hpp 2e6a910 
>   src/master/contender.hpp 0048ee0 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.hpp 533027a 
>   src/master/detector.cpp 8b10061 
>   src/master/hierarchical_allocator_process.hpp 3ec453a 
>   src/master/master.hpp a8ed5ec 
>   src/master/registrar.cpp 2b41700 
>   src/python/native/proxy_executor.hpp 9f6b33f 
>   src/python/native/proxy_scheduler.hpp cc92149 
>   src/sasl/authenticator.hpp e1db783 
>   src/slave/containerizer/isolator.hpp fc6c9ab 
>   src/slave/monitor.hpp c042bc1 
>   src/slave/slave.hpp 01b80df 
>   src/state/leveldb.hpp 9708614 
>   src/state/leveldb.cpp d60145b 
>   src/state/protobuf.hpp d1c21c6 
>   src/state/state.hpp 133752d 
>   src/state/zookeeper.cpp bee6838 
>   src/tests/containerizer.hpp 5686398 
>   src/zookeeper/detector.hpp 73235c0 
>   src/zookeeper/detector.cpp e186e51 
>   src/zookeeper/group.hpp d1ead38 
>   src/zookeeper/watcher.hpp 1db0386 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Bernd Mathiske <be...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/
-----------------------------------------------------------

(Updated March 25, 2014, 11:35 a.m.)


Review request for mesos and Niklas Nielsen.


Changes
-------

Rebased the patch to the latest master revision. (Compiled again with Clang and gcc. Ran "make check".)

>From now on, please follow this rule:
1. ALWAYS write "explicit" for ALL single arg constructors (that do not have the constructed type as param type). No need to think about it, just write it.
2. Only if for some reason you do think about it and you conclude that you do want implicit conversions, then replace "explicit" with "/*implicit*/".

(libprocess and stout will soon be adapted, too: MESOS-1057)


Bugs: MESOS-1055
    https://issues.apache.org/jira/browse/MESOS-1055


Repository: mesos-git


Description
-------

Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)


Diffs (updated)
-----

  include/mesos/executor.hpp 7bc8eca 
  include/mesos/resources.hpp 59f495c 
  src/common/attributes.hpp a08cf18 
  src/common/lock.hpp 5af2f42 
  src/examples/long_lived_framework.cpp dc123cd 
  src/hdfs/hdfs.hpp 228f007 
  src/jvm/java/io.hpp fa0c60c 
  src/jvm/java/lang.hpp 5eb365d 
  src/jvm/java/net.hpp 7816251 
  src/jvm/jvm.hpp 2d3a7eb 
  src/log/log.hpp c2cb6cf 
  src/log/log.cpp d9b2687 
  src/log/network.hpp 2befea4 
  src/log/replica.hpp 6c51a58 
  src/log/replica.cpp 6db6d05 
  src/master/allocator.hpp 2e6a910 
  src/master/contender.hpp 0048ee0 
  src/master/contender.cpp 42d9c07 
  src/master/detector.hpp 533027a 
  src/master/detector.cpp 8b10061 
  src/master/hierarchical_allocator_process.hpp 3ec453a 
  src/master/master.hpp a8ed5ec 
  src/master/registrar.cpp 2b41700 
  src/python/native/proxy_executor.hpp 9f6b33f 
  src/python/native/proxy_scheduler.hpp cc92149 
  src/sasl/authenticator.hpp e1db783 
  src/slave/containerizer/isolator.hpp fc6c9ab 
  src/slave/monitor.hpp c042bc1 
  src/slave/slave.hpp 01b80df 
  src/state/leveldb.hpp 9708614 
  src/state/leveldb.cpp d60145b 
  src/state/protobuf.hpp d1c21c6 
  src/state/state.hpp 133752d 
  src/state/zookeeper.cpp bee6838 
  src/tests/containerizer.hpp 5686398 
  src/zookeeper/detector.hpp 73235c0 
  src/zookeeper/detector.cpp e186e51 
  src/zookeeper/group.hpp d1ead38 
  src/zookeeper/watcher.hpp 1db0386 

Diff: https://reviews.apache.org/r/18823/diff/


Testing
-------

Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.

Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
And due to the patch, no more warnings about explicit constructors inside Mesos source code.

Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.


Thanks,

Bernd Mathiske


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Bernd Mathiske <be...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/
-----------------------------------------------------------

(Updated March 14, 2014, 1:29 p.m.)


Review request for mesos and Niklas Nielsen.


Changes
-------

Assigning myself as shepherd.
-- Niklas


Bugs: MESOS-1055
    https://issues.apache.org/jira/browse/MESOS-1055


Repository: mesos-git


Description
-------

Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)


Diffs
-----

  include/mesos/executor.hpp 7bc8eca 
  include/mesos/resources.hpp 59f495c 
  src/common/attributes.hpp a08cf18 
  src/common/lock.hpp 5af2f42 
  src/examples/long_lived_framework.cpp dc123cd 
  src/hdfs/hdfs.hpp 228f007 
  src/jvm/java/io.hpp fa0c60c 
  src/jvm/java/lang.hpp 5eb365d 
  src/jvm/java/net.hpp 7816251 
  src/jvm/jvm.hpp 2d3a7eb 
  src/log/log.hpp c2cb6cf 
  src/log/log.cpp 6992518 
  src/log/network.hpp 2befea4 
  src/log/replica.hpp 6c51a58 
  src/log/replica.cpp 6db6d05 
  src/master/allocator.hpp 2e6a910 
  src/master/contender.hpp 0048ee0 
  src/master/contender.cpp 42d9c07 
  src/master/detector.hpp 533027a 
  src/master/detector.cpp 3a8aaed 
  src/master/hierarchical_allocator_process.hpp 3ec453a 
  src/master/master.hpp 49a3e15 
  src/master/registrar.hpp 987a63b 
  src/master/registrar.cpp d30172c 
  src/python/native/proxy_executor.hpp 9f6b33f 
  src/python/native/proxy_scheduler.hpp cc92149 
  src/sasl/authenticator.hpp e1db783 
  src/slave/containerizer/isolator.hpp fc6c9ab 
  src/slave/monitor.hpp c042bc1 
  src/slave/slave.hpp 01b80df 
  src/state/leveldb.hpp 9708614 
  src/state/leveldb.cpp d60145b 
  src/state/protobuf.hpp d1c21c6 
  src/state/state.hpp 133752d 
  src/state/zookeeper.cpp bee6838 
  src/tests/cgroups_tests.cpp 4a092cc 
  src/tests/containerizer.hpp 5686398 
  src/zookeeper/detector.hpp 73235c0 
  src/zookeeper/detector.cpp e186e51 
  src/zookeeper/group.hpp d1ead38 
  src/zookeeper/watcher.hpp 1db0386 

Diff: https://reviews.apache.org/r/18823/diff/


Testing
-------

Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.

Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
And due to the patch, no more warnings about explicit constructors inside Mesos source code.

Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.


Thanks,

Bernd Mathiske


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Bernd Mathiske <be...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/
-----------------------------------------------------------

(Updated March 14, 2014, 1:21 p.m.)


Review request for mesos.


Changes
-------

Using the following convention for all single-arg constructors that do not have the constructed type as parameter type: either put "explicit" or "/*implicit*/" in front. Same convention will be used in libprocess and stout.


Bugs: MESOS-1055
    https://issues.apache.org/jira/browse/MESOS-1055


Repository: mesos-git


Description
-------

Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)


Diffs (updated)
-----

  include/mesos/executor.hpp 7bc8eca 
  include/mesos/resources.hpp 59f495c 
  src/common/attributes.hpp a08cf18 
  src/common/lock.hpp 5af2f42 
  src/examples/long_lived_framework.cpp dc123cd 
  src/hdfs/hdfs.hpp 228f007 
  src/jvm/java/io.hpp fa0c60c 
  src/jvm/java/lang.hpp 5eb365d 
  src/jvm/java/net.hpp 7816251 
  src/jvm/jvm.hpp 2d3a7eb 
  src/log/log.hpp c2cb6cf 
  src/log/log.cpp 6992518 
  src/log/network.hpp 2befea4 
  src/log/replica.hpp 6c51a58 
  src/log/replica.cpp 6db6d05 
  src/master/allocator.hpp 2e6a910 
  src/master/contender.hpp 0048ee0 
  src/master/contender.cpp 42d9c07 
  src/master/detector.hpp 533027a 
  src/master/detector.cpp 3a8aaed 
  src/master/hierarchical_allocator_process.hpp 3ec453a 
  src/master/master.hpp 49a3e15 
  src/master/registrar.hpp 987a63b 
  src/master/registrar.cpp d30172c 
  src/python/native/proxy_executor.hpp 9f6b33f 
  src/python/native/proxy_scheduler.hpp cc92149 
  src/sasl/authenticator.hpp e1db783 
  src/slave/containerizer/isolator.hpp fc6c9ab 
  src/slave/monitor.hpp c042bc1 
  src/slave/slave.hpp 01b80df 
  src/state/leveldb.hpp 9708614 
  src/state/leveldb.cpp d60145b 
  src/state/protobuf.hpp d1c21c6 
  src/state/state.hpp 133752d 
  src/state/zookeeper.cpp bee6838 
  src/tests/cgroups_tests.cpp 4a092cc 
  src/tests/containerizer.hpp 5686398 
  src/zookeeper/detector.hpp 73235c0 
  src/zookeeper/detector.cpp e186e51 
  src/zookeeper/group.hpp d1ead38 
  src/zookeeper/watcher.hpp 1db0386 

Diff: https://reviews.apache.org/r/18823/diff/


Testing
-------

Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.

Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
And due to the patch, no more warnings about explicit constructors inside Mesos source code.

Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.


Thanks,

Bernd Mathiske


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Dominic Hamon <dh...@twopensource.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review36377
-----------------------------------------------------------

Ship it!


Ship It!

- Dominic Hamon


On March 5, 2014, 5:59 p.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 5, 2014, 5:59 p.m.)
> 
> 
> Review request for mesos.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   include/mesos/executor.hpp 7bc8eca 
>   include/mesos/resources.hpp 59f495c 
>   src/common/attributes.hpp a08cf18 
>   src/common/lock.hpp 5af2f42 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/hdfs/hdfs.hpp 228f007 
>   src/jvm/java/io.hpp fa0c60c 
>   src/jvm/java/lang.hpp 5eb365d 
>   src/jvm/java/net.hpp 7816251 
>   src/jvm/jvm.hpp 2d3a7eb 
>   src/log/log.hpp 628a4b8 
>   src/log/log.cpp 7f855f2 
>   src/log/network.hpp 9c76bf8 
>   src/log/replica.hpp 08ddcb1 
>   src/log/replica.cpp 1f1a945 
>   src/master/allocator.hpp 2e6a910 
>   src/master/contender.hpp 0048ee0 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.hpp 533027a 
>   src/master/detector.cpp 3a8aaed 
>   src/master/hierarchical_allocator_process.hpp 3ec453a 
>   src/master/master.hpp 49a3e15 
>   src/master/registrar.hpp 20734af 
>   src/master/registrar.cpp 37337c0 
>   src/python/native/proxy_executor.hpp 9f6b33f 
>   src/python/native/proxy_scheduler.hpp cc92149 
>   src/sasl/authenticator.hpp e1db783 
>   src/slave/containerizer/isolator.hpp fc6c9ab 
>   src/slave/monitor.hpp c042bc1 
>   src/slave/slave.hpp 01b80df 
>   src/state/leveldb.hpp 14a94cc 
>   src/state/protobuf.hpp d1c21c6 
>   src/state/state.hpp 133752d 
>   src/state/zookeeper.hpp d1d1fed 
>   src/tests/cgroups_tests.cpp 4a092cc 
>   src/tests/containerizer.hpp 5686398 
>   src/zookeeper/detector.hpp 73235c0 
>   src/zookeeper/detector.cpp e186e51 
>   src/zookeeper/group.hpp d1ead38 
>   src/zookeeper/watcher.hpp 1db0386 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Mesos ReviewBot <de...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/#review36393
-----------------------------------------------------------


Patch looks great!

Reviews applied: [18823]

All tests passed.

- Mesos ReviewBot


On March 6, 2014, 1:59 a.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/18823/
> -----------------------------------------------------------
> 
> (Updated March 6, 2014, 1:59 a.m.)
> 
> 
> Review request for mesos.
> 
> 
> Bugs: MESOS-1055
>     https://issues.apache.org/jira/browse/MESOS-1055
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)
> 
> 
> Diffs
> -----
> 
>   include/mesos/executor.hpp 7bc8eca 
>   include/mesos/resources.hpp 59f495c 
>   src/common/attributes.hpp a08cf18 
>   src/common/lock.hpp 5af2f42 
>   src/examples/long_lived_framework.cpp dc123cd 
>   src/hdfs/hdfs.hpp 228f007 
>   src/jvm/java/io.hpp fa0c60c 
>   src/jvm/java/lang.hpp 5eb365d 
>   src/jvm/java/net.hpp 7816251 
>   src/jvm/jvm.hpp 2d3a7eb 
>   src/log/log.hpp 628a4b8 
>   src/log/log.cpp 7f855f2 
>   src/log/network.hpp 9c76bf8 
>   src/log/replica.hpp 08ddcb1 
>   src/log/replica.cpp 1f1a945 
>   src/master/allocator.hpp 2e6a910 
>   src/master/contender.hpp 0048ee0 
>   src/master/contender.cpp 42d9c07 
>   src/master/detector.hpp 533027a 
>   src/master/detector.cpp 3a8aaed 
>   src/master/hierarchical_allocator_process.hpp 3ec453a 
>   src/master/master.hpp 49a3e15 
>   src/master/registrar.hpp 20734af 
>   src/master/registrar.cpp 37337c0 
>   src/python/native/proxy_executor.hpp 9f6b33f 
>   src/python/native/proxy_scheduler.hpp cc92149 
>   src/sasl/authenticator.hpp e1db783 
>   src/slave/containerizer/isolator.hpp fc6c9ab 
>   src/slave/monitor.hpp c042bc1 
>   src/slave/slave.hpp 01b80df 
>   src/state/leveldb.hpp 14a94cc 
>   src/state/protobuf.hpp d1c21c6 
>   src/state/state.hpp 133752d 
>   src/state/zookeeper.hpp d1d1fed 
>   src/tests/cgroups_tests.cpp 4a092cc 
>   src/tests/containerizer.hpp 5686398 
>   src/zookeeper/detector.hpp 73235c0 
>   src/zookeeper/detector.cpp e186e51 
>   src/zookeeper/group.hpp d1ead38 
>   src/zookeeper/watcher.hpp 1db0386 
> 
> Diff: https://reviews.apache.org/r/18823/diff/
> 
> 
> Testing
> -------
> 
> Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.
> 
> Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
> And due to the patch, no more warnings about explicit constructors inside Mesos source code.
> 
> Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>


Re: Review Request 18823: Fixed MESOS-1055: explicit single-argument constructors

Posted by Bernd Mathiske <be...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/18823/
-----------------------------------------------------------

(Updated March 5, 2014, 5:59 p.m.)


Review request for mesos.


Changes
-------

Fixed review issues (cpplint.py to go into a different JIRA/review). This time the patch contains all the *.hpp file changes :-)


Bugs: MESOS-1055
    https://issues.apache.org/jira/browse/MESOS-1055


Repository: mesos-git


Description
-------

Put "explicit" in front of all single-argument constructors in C++ Mesos source code. (Omitted lib process, filed a separate issue for it.)


Diffs (updated)
-----

  include/mesos/executor.hpp 7bc8eca 
  include/mesos/resources.hpp 59f495c 
  src/common/attributes.hpp a08cf18 
  src/common/lock.hpp 5af2f42 
  src/examples/long_lived_framework.cpp dc123cd 
  src/hdfs/hdfs.hpp 228f007 
  src/jvm/java/io.hpp fa0c60c 
  src/jvm/java/lang.hpp 5eb365d 
  src/jvm/java/net.hpp 7816251 
  src/jvm/jvm.hpp 2d3a7eb 
  src/log/log.hpp 628a4b8 
  src/log/log.cpp 7f855f2 
  src/log/network.hpp 9c76bf8 
  src/log/replica.hpp 08ddcb1 
  src/log/replica.cpp 1f1a945 
  src/master/allocator.hpp 2e6a910 
  src/master/contender.hpp 0048ee0 
  src/master/contender.cpp 42d9c07 
  src/master/detector.hpp 533027a 
  src/master/detector.cpp 3a8aaed 
  src/master/hierarchical_allocator_process.hpp 3ec453a 
  src/master/master.hpp 49a3e15 
  src/master/registrar.hpp 20734af 
  src/master/registrar.cpp 37337c0 
  src/python/native/proxy_executor.hpp 9f6b33f 
  src/python/native/proxy_scheduler.hpp cc92149 
  src/sasl/authenticator.hpp e1db783 
  src/slave/containerizer/isolator.hpp fc6c9ab 
  src/slave/monitor.hpp c042bc1 
  src/slave/slave.hpp 01b80df 
  src/state/leveldb.hpp 14a94cc 
  src/state/protobuf.hpp d1c21c6 
  src/state/state.hpp 133752d 
  src/state/zookeeper.hpp d1d1fed 
  src/tests/cgroups_tests.cpp 4a092cc 
  src/tests/containerizer.hpp 5686398 
  src/zookeeper/detector.hpp 73235c0 
  src/zookeeper/detector.cpp e186e51 
  src/zookeeper/group.hpp d1ead38 
  src/zookeeper/watcher.hpp 1db0386 

Diff: https://reviews.apache.org/r/18823/diff/


Testing
-------

Compiled on Mac OS 10.9 with Clang 3.3 and on Ubuntu 13.10 with gcc 4.7.1. Ran make check on both.

Also ran: python cpplint.py --filter=-,+runtime/explicit `find mesos -name '*.cpp'; find mesos -name '*.hpp'`
And due to the patch, no more warnings about explicit constructors inside Mesos source code.

Note that cpplint.py is now patched to allow '*.hpp' files, which it did not.


Thanks,

Bernd Mathiske