You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucy.apache.org by Nick Wellnhofer <we...@aevum.de> on 2016/03/24 12:48:40 UTC

[lucy-dev] [VOTE] Apache Clownfish 0.5.0 RC 2

Hello,

Release candidate 2 for Apache Clownfish version 0.5.0 can be
found at:

 
https://dist.apache.org/repos/dist/dev/lucy/clownfish/apache-clownfish-0.5.0-rc2/

See the CHANGES file at the top level of the archive for information
about the content of this release.

This candidate was assembled according to the process documented at:

     http://wiki.apache.org/lucy/ReleaseGuide

It was cut using "git archive" from the tag at:

 
https://git-wip-us.apache.org/repos/asf?p=lucy-clownfish.git;a=tag;h=refs/tags/apache-clownfish-0.5.0-rc2

Please vote on releasing this candidate as Apache Clownfish version
0.5.0.  The vote will be held open for at least the next 72
hours.

All interested parties are welcome to inspect the release candidate
and express approval or disapproval.  Votes from members of the Lucy
PMC are binding; the vote passes if there are at least three binding
+1 votes and more +1 votes than -1 votes.

For suggestions as to how to evaluate Apache Clownfish release candidates,
and for information on ASF voting procedures, see:

     http://wiki.apache.org/lucy/ReleaseVerification
     http://wiki.apache.org/lucy/ReleasePrep
     http://www.apache.org/foundation/voting.html

I tested under Ubuntu 15.10, x86 (32-bit):

- Go bindings with stock Go 1.5.1
- Perl bindings with stock Perl 5.20.2
- C bindings with stock GCC 5.2.1

[ ] +1 Release RC 2 as Apache Clownfish 0.5.0.
[ ] +0
[ ] -1 Do not release RC 2 as Apache Clownfish 0.5.0 because...

Here's my +1.

Thanks!


Re: [lucy-dev] [VOTE] Apache Clownfish 0.5.0 RC 2

Posted by Nick Wellnhofer <we...@aevum.de>.
On 25/03/2016 04:53, Marvin Humphrey wrote:
> The vast majority of the compiler warnings are gone -- yay!  There are still
> some unused var warnings under the Perl bindings, which are addressed on
> master.  Not a big deal.

> A problem with a Str_To_F64 has been revealed by Lucy's `test_valgrind`
> target.  There's a call to `strtod` in Clownfish's Str_To_F64 reads past the
> end of the buffer consistently now that the nul-termination is gone from
> Clownfish's String implementation.  See here for the fix on master:
> https://github.com/apache/lucy-clownfish/commit/4dab61a57
>
> This wasn't a critical problem in 0.4.x and earlier because while it was
> possible to read beyond the end of the String's logical content in esoteric
> cases (such as a substring), even then the actual C buffer was always
> nul-terminated and `strtod` would always stop.  What's different in 0.5.x is
> that `strtod` can actually read into invalid memory.
>
> I think we may want to cherry-pick that commit and put up a new RC.  Sorry for
> not flagging this earlier.

I put up RC 3 fixing both issues.

Nick


Re: [lucy-dev] [VOTE] Apache Clownfish 0.5.0 RC 2

Posted by Marvin Humphrey <ma...@rectangular.com>.
On Thu, Mar 24, 2016 at 4:48 AM, Nick Wellnhofer <we...@aevum.de> wrote:

> [ ] +1 Release RC 2 as Apache Clownfish 0.5.0.
> [ ] +0
> [ ] -1 Do not release RC 2 as Apache Clownfish 0.5.0 because...

-0, withholding approval until an issue with Str_To_F64 is resolved, see
below.

Sums and sigs OK.

Tests pass on OS X and Amazon Linux with Lucy's test_all.sh.

I confirmed that the release tarball matches the RC git tag.

I inspected the diff between RC1 and RC2 and everything looks good.  The
copyright date has been updated.

The vast majority of the compiler warnings are gone -- yay!  There are still
some unused var warnings under the Perl bindings, which are addressed on
master.  Not a big deal.

The `test_valgrind` build target passes for the Perl bindings of both CFC and
the Clownfish runtime.  However...

A problem with a Str_To_F64 has been revealed by Lucy's `test_valgrind`
target.  There's a call to `strtod` in Clownfish's Str_To_F64 reads past the
end of the buffer consistently now that the nul-termination is gone from
Clownfish's String implementation.  See here for the fix on master:
https://github.com/apache/lucy-clownfish/commit/4dab61a57

This wasn't a critical problem in 0.4.x and earlier because while it was
possible to read beyond the end of the String's logical content in esoteric
cases (such as a substring), even then the actual C buffer was always
nul-terminated and `strtod` would always stop.  What's different in 0.5.x is
that `strtod` can actually read into invalid memory.

I think we may want to cherry-pick that commit and put up a new RC.  Sorry for
not flagging this earlier.

Marvin Humphrey

[lucy-dev] [VOTE][CANCELLED] Apache Clownfish 0.5.0 RC 2

Posted by Nick Wellnhofer <we...@aevum.de>.
On 24/03/2016 12:48, Nick Wellnhofer wrote:
> [ ] +1 Release RC 2 as Apache Clownfish 0.5.0.
> [ ] +0
> [ ] -1 Do not release RC 2 as Apache Clownfish 0.5.0 because...

There's a new Clownfish release candidate, so I'm cancelling the vote.

Nick


Re: [lucy-dev] [VOTE] Apache Clownfish 0.5.0 RC 2

Posted by Nick Wellnhofer <we...@aevum.de>.
On 25/03/2016 06:08, Nathan Kurz wrote:
> compiler/perl had an initial issue with an error telling me to
> recompile with PIC.  I think this was cross contamination from
> compile/c with a different compiler.  It worked the second try after a
> 'perl Build clean'.   Not sure if this is a problem or not, but was
> easy to work around.

Yes, you should always run "make clean" or "./Build clean" before switching 
host languages.

> compiler/python failed to build with lots of C compiler errors.  I
> don't use Python much, so it's possible I missed some initial step.
> There's no INSTALL file in the directory, so I fumbled my way to
> "python setup.py build" based on the error messages with other
> variations.   Also possible something is wonky with my Python install.
>    Error message is attached.

The Python bindings are work in progress and not relevant for the 0.5 release. 
The error message might be helpful, though.

> compiler/go gave me an error message about "GOPATH environment
> variable not set".  I presume this is something obvious and basic that
> anyone who has used Go knows about, but maybe worth adding a sentence
> to the INSTALL file for beginners.  The current instructions (which I
> didn't follow correctly) presumed that GOPATH was already set, and I
> wasn't sure what to set it to if it wasn't.     Again, probably not a
> real issue.

See devel/bin/travis-test.sh or lucy/devel/bin/test_all.sh for some guidance.

> I'll vote as +1 since the C part works well and is the only part I
> feel competent on, but mention the other issues in case they are not
> known.

Thanks, especially for testing with icc. If you haven't already done so, can 
you test the Clownfish runtime and Lucy as well? It's really easy with the 
test_all.sh script. See my previous mail to lucy-dev, or simply run:

     $ curl 
https://dist.apache.org/repos/dist/dev/lucy/clownfish/apache-clownfish-0.5.0-rc3/apache-clownfish-0.5.0.tar.gz 
|tar xz
     $ curl 
https://dist.apache.org/repos/dist/dev/lucy/apache-lucy-0.5.0-rc3/apache-lucy-0.5.0.tar.gz 
|tar xz
     $ mv apache-clownfish-0.5.0 clownfish
     $ mv apache-lucy-0.5.0 lucy
     $ lucy/devel/bin/test_all.sh

Or, if you only want to test the C bindings:

     $ lucy/devel/bin/test_all.sh c

Nick



Re: [lucy-dev] [VOTE] Apache Clownfish 0.5.0 RC 2

Posted by Nathan Kurz <na...@gmail.com>.
I tested a bit.  Here's what I found:

compiler/c worked well with gcc, icc, and clang.   All clear, no
warnings.    -fsanitize with undefined, memory, and address didn't
show anything odd for the compilers that support each.

compiler/perl had an initial issue with an error telling me to
recompile with PIC.  I think this was cross contamination from
compile/c with a different compiler.  It worked the second try after a
'perl Build clean'.   Not sure if this is a problem or not, but was
easy to work around.

compiler/python failed to build with lots of C compiler errors.  I
don't use Python much, so it's possible I missed some initial step.
There's no INSTALL file in the directory, so I fumbled my way to
"python setup.py build" based on the error messages with other
variations.   Also possible something is wonky with my Python install.
  Error message is attached.

compiler/go gave me an error message about "GOPATH environment
variable not set".  I presume this is something obvious and basic that
anyone who has used Go knows about, but maybe worth adding a sentence
to the INSTALL file for beginners.  The current instructions (which I
didn't follow correctly) presumed that GOPATH was already set, and I
wasn't sure what to set it to if it wasn't.     Again, probably not a
real issue.

I'll vote as +1 since the C part works well and is the only part I
feel competent on, but mention the other issues in case they are not
known.

+1

--nate


On Thu, Mar 24, 2016 at 4:48 AM, Nick Wellnhofer <we...@aevum.de> wrote:
> Hello,
>
> Release candidate 2 for Apache Clownfish version 0.5.0 can be
> found at:
>
>
> https://dist.apache.org/repos/dist/dev/lucy/clownfish/apache-clownfish-0.5.0-rc2/
>
> See the CHANGES file at the top level of the archive for information
> about the content of this release.
>
> This candidate was assembled according to the process documented at:
>
>     http://wiki.apache.org/lucy/ReleaseGuide
>
> It was cut using "git archive" from the tag at:
>
>
> https://git-wip-us.apache.org/repos/asf?p=lucy-clownfish.git;a=tag;h=refs/tags/apache-clownfish-0.5.0-rc2
>
> Please vote on releasing this candidate as Apache Clownfish version
> 0.5.0.  The vote will be held open for at least the next 72
> hours.
>
> All interested parties are welcome to inspect the release candidate
> and express approval or disapproval.  Votes from members of the Lucy
> PMC are binding; the vote passes if there are at least three binding
> +1 votes and more +1 votes than -1 votes.
>
> For suggestions as to how to evaluate Apache Clownfish release candidates,
> and for information on ASF voting procedures, see:
>
>     http://wiki.apache.org/lucy/ReleaseVerification
>     http://wiki.apache.org/lucy/ReleasePrep
>     http://www.apache.org/foundation/voting.html
>
> I tested under Ubuntu 15.10, x86 (32-bit):
>
> - Go bindings with stock Go 1.5.1
> - Perl bindings with stock Perl 5.20.2
> - C bindings with stock GCC 5.2.1
>
> [ ] +1 Release RC 2 as Apache Clownfish 0.5.0.
> [ ] +0
> [ ] -1 Do not release RC 2 as Apache Clownfish 0.5.0 because...
>
> Here's my +1.
>
> Thanks!
>