I'll vote -1 for now. I'm not sure if grabbing pybind11 like that will end up having problematic side-effects in the future. I pushed a change that excludes python from the default build (you'd need to run cmake .. -DWITH_PYTHON=1) that resolves that issue. That vastly simplifies the instructions.
jon On Wed, Aug 28, 2019 at 4:27 PM leerho <[email protected]> wrote: > I also verified the GPG and SHA512 signatures and they pass ok. > > Lee. > > On Wed, Aug 28, 2019 at 3:49 PM leerho <[email protected]> wrote: > > > My vote +1 > > > > These new build instructions helped, and I was able to successfully > > compile, make and test the distribution. > > > > Some more specifics in the build instructions would help even more: > > > > 1. Make sure you have cmake >= 3.12. If not, install one. On OSX: > > $ brew install cmake > > If cmake is already installed, you need to > > $ brew upgrade cmake > > > > 3. Unpacking the pybind11 download zip results in a pybind11-master > > directory. > > Rename it to pybind11 and place it under the python directory at the root > > of the distribution overwriting the empty python/pybind11 directory > there. > > > > 4. Generate make files: > > Make and move to the build directory > > $ mkdir build > > $ cd build > > $ cmake .. #don't omit the .. > > $ make > > $ make test > > > > This resulted in successful tests running with no errors. > > > > > > > > > > > > > > On Wed, Aug 28, 2019 at 3:01 PM Alexander Saydakov < > > [email protected]> wrote: > > > >> Let me amend the build instructions in case simple "make test" does not > >> work. > >> 1. Make sure you have cmake 3.12. If not, install one. On OSX: brew > >> install > >> cmake. > >> 2. Download pybind11: > >> https://github.com/pybind/pybind11/archive/master.zip > >> 3. Unpack pybind11 under python directory as python/pybind11 > >> 4. Generate make files: mkdir build; cd build; cmake .. > >> 5. make test > >> > >> On Wed, Aug 28, 2019 at 2:20 PM leerho <[email protected]> wrote: > >> > >> > Alex, > >> > > >> > After installing cppunit I tried make test. > >> > > >> > $ make test > >> > > >> > Compiling cpc/src/iconEstimator.cpp... > >> > > >> > Compiling cpc/src/fm85Confidence.cpp... > >> > > >> > Compiling cpc/src/fm85Merging.cpp... > >> > > >> > Compiling cpc/src/fm85.cpp... > >> > > >> > Compiling cpc/src/fm85Util.cpp... > >> > > >> > Compiling cpc/src/fm85Compression.cpp... > >> > > >> > Compiling cpc/src/cpc_sketch.cpp... > >> > > >> > Compiling cpc/src/u32Table.cpp... > >> > > >> > Linking libdatasketches.dylib > >> > > >> > Compiling common/test/test_runner.cpp... > >> > > >> > Compiling common/test/test_allocator.cpp... > >> > > >> > Compiling cpc/test/cpc_union_test.cpp... > >> > > >> > Compiling cpc/test/compression_test.cpp... > >> > > >> > Compiling cpc/test/cpc_sketch_test.cpp... > >> > > >> > Linking cpc/cpc_test... > >> > > >> > ld: unknown option: -rpath=/usr/local/lib > >> > > >> > clang: *error: *linker command failed with exit code 1 (use -v to see > >> > invocation) > >> > > >> > make: *** [cpc_exec] Error 1 > >> > > >> > $ gcc --version > >> > > >> > Configured with: > --prefix=/Applications/Xcode.app/Contents/Developer/usr > >> > > >> > > >> > --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/c++/4.2.1 > >> > > >> > Apple LLVM version 10.0.1 (clang-1001.0.46.4) > >> > > >> > Target: x86_64-apple-darwin18.7.0 > >> > > >> > Thread model: posix > >> > > >> > InstalledDir: > >> > > >> > > >> > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin > >> > > >> > > >> > If I need a specific GCC, which one? > >> > > >> > > >> > Lee. > >> > > >> > > >> > > >> > > >> > > >> > On Wed, Aug 28, 2019 at 11:27 AM Alexander Saydakov < > >> > [email protected]> wrote: > >> > > >> > > It has been about 6 days and we have not a single vote one way or > >> > another. > >> > > > >> > > I would like to ask mentors to clarify a couple of things. Is it > >> > necessary > >> > > to build and run unit tests to vote? Can we expect people to install > >> > > dependencies? > >> > > > >> > > This C++ library is supposed to be header-only. We did not fully > >> achieve > >> > > this yet, but we are quite close. We do not want to build and > >> distribute > >> > > any binaries. There are two things that can be built: unit tests and > >> > Python > >> > > bindings. And both are optional. Not every user of this library > would > >> > care > >> > > about Python. And unit tests are mostly for development purposes, > but > >> > might > >> > > be useful as a part of the release process to verify that things can > >> > > compile and run. But in that case one needs to have CppUnit > installed. > >> > > Another complication is with make vs. cmake. As I said in the call > for > >> > > vote, the easiest way is to run "make test", but the Makefile might > >> not > >> > be > >> > > compatible with some particular environment (complier options for > GCC > >> and > >> > > Clang may be different and so on). We started using cmake to > >> > automatically > >> > > resolve such differences. However, our setup requires cmake 3.12 > that > >> is > >> > > newer than default versions in many operating systems. This is > because > >> > some > >> > > good features are missing in the older versions. So we either need > to > >> > > modify our setup to manage without these features somehow, or expect > >> > people > >> > > to upgrade cmake. Also, building with cmake currently is going to > >> build > >> > > make files for Python bindings as well, so we either need modify our > >> > setup > >> > > to bypass that by default or expect people to download pybind11 > >> > dependency. > >> > > > >> > > I would love to hear suggestions. > >> > > Do you think we can release this library as it is now? > >> > > This core library is used in datasketches-postgresql, which is an > >> > extension > >> > > for PostgreSQL. I hope to be able to release the next version of > that > >> one > >> > > soon. By the way, building that one would take installing PostgeSQL. > >> Can > >> > we > >> > > expect people to do that just to vote on a release candidate? > >> > > > >> > > I would love to see some votes one way or another. > >> > > Thank you very much. > >> > > > >> > > > >> > > On Tue, Aug 27, 2019 at 3:29 PM Jon Malkin <[email protected]> > >> wrote: > >> > > > >> > > > Grabbed code: > >> > > > ==> make test > >> > > > Compiling cpc/src/iconEstimator.cpp... > >> > > > Compiling cpc/src/fm85Confidence.cpp... > >> > > > Compiling cpc/src/fm85Merging.cpp... > >> > > > Compiling cpc/src/fm85.cpp... > >> > > > Compiling cpc/src/fm85Util.cpp... > >> > > > Compiling cpc/src/fm85Compression.cpp... > >> > > > Compiling cpc/src/cpc_sketch.cpp... > >> > > > Compiling cpc/src/u32Table.cpp... > >> > > > Linking libdatasketches.dylib > >> > > > Compiling common/test/test_runner.cpp... > >> > > > Compiling common/test/test_allocator.cpp... > >> > > > Compiling cpc/test/cpc_union_test.cpp... > >> > > > Compiling cpc/test/compression_test.cpp... > >> > > > Compiling cpc/test/cpc_sketch_test.cpp... > >> > > > Linking cpc/cpc_test... > >> > > > ld: unknown option: -rpath=/usr/local/lib > >> > > > clang: error: linker command failed with exit code 1 (use -v to > see > >> > > > invocation) > >> > > > make: *** [cpc_exec] Error 1 > >> > > > > >> > > > And since pybind11 is symlinked in under git, meaning it doesn't > get > >> > > > packaged here, cmake also won't work from the zip. > >> > > > > >> > > > jon > >> > > > > >> > > > On Sun, Aug 25, 2019, 7:24 AM Furkan KAMACI < > [email protected] > >> > > >> > > > wrote: > >> > > > > >> > > > > Hi Alexander, > >> > > > > > >> > > > > Thanks for running this release! > >> > > > > > >> > > > > I have 2 questions. > >> > > > > > >> > > > > 1) Is there any detailed installation guide for apart from > >> > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > https://github.com/apache/incubator-datasketches-cpp/blob/1.0.0-incubating-rc1/python/README.md > >> > > > > I > >> > > > > get an error while following that procedure (Permission denied > >> > > > (publickey)) > >> > > > > > >> > > > > For source code, I run make test but I got error on my OSX: > >> > > > > > >> > > > > Linking libdatasketches.dylib > >> > > > > Compiling common/test/test_runner.cpp... > >> > > > > common/test/test_runner.cpp:20:10: fatal error: > >> > > > > 'cppunit/extensions/TestFactoryRegistry.h' file not found > >> > > > > #include <cppunit/extensions/TestFactoryRegistry.h> > >> > > > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > >> > > > > 1 error generated. > >> > > > > make: *** [common/build/test_runner.o] Error 1 > >> > > > > > >> > > > > 2) Do I miss something while trying to verify PGP: > >> > > > > > >> > > > > wget > >> > > https://dist.apache.org/repos/dist/dev/incubator/datasketches/KEYS > >> > > > > gpg --import KEYS > >> > > > > wget > >> > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > https://dist.apache.org/repos/dist/dev/incubator/datasketches/cpp/1.0.0-incubating-rc1/apache-datasketches-cpp-1.0.0-incubating-src.zip.asc > >> > > > > gpg --verify > apache-datasketches-cpp-1.0.0-incubating-src.zip.asc > >> > > > > apache-datasketches-cpp-1.0.0-incubating-src.zip.asc > >> > > > > > >> > > > > gpg: Signature made Fri Aug 23 01:59:34 2019 +03 > >> > > > > gpg: using RSA key > >> > > > 40A247F61E8C6C75678C69C568486114A8E8B4E0 > >> > > > > gpg: BAD signature from "Alexander Saydakov (CODE SIGNING KEY) < > >> > > > > [email protected]>" [unknown] > >> > > > > > >> > > > > Kind Regards, > >> > > > > Furkan KAMACI > >> > > > > > >> > > > > On Fri, Aug 23, 2019 at 3:44 AM Alexander Saydakov > >> > > > > <[email protected]> wrote: > >> > > > > > >> > > > > > Dear Apache DataSketches PPMC and Community, > >> > > > > > > >> > > > > > This is a call for vote to release Apache DataSketches-cpp > >> version > >> > > > > > 1.0.0-incubating > >> > > > > > > >> > > > > > This is a C++ version of the core library with Python > bindings. > >> > > > > > > >> > > > > > This is the first release of this component. > >> > > > > > > >> > > > > > We are not going to release any artifacts besides the source > >> code. > >> > > > > > > >> > > > > > The release candidate: > >> > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > https://dist.apache.org/repos/dist/dev/incubator/datasketches/cpp/1.0.0-incubating-rc1/ > >> > > > > > > >> > > > > > Source repository: > >> > > > > > https://github.com/apache/incubator-datasketches-cpp > >> > > > > > > >> > > > > > Git tag for this release: > >> > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > https://github.com/apache/incubator-datasketches-cpp/releases/tag/1.0.0-incubating-rc1 > >> > > > > > > >> > > > > > The artifact has been signed with key: > >> > > > > > pub 4096R/A8E8B4E0 2019-08-20 Alexander Saydakov (CODE > SIGNING > >> > KEY) > >> > > < > >> > > > > > [email protected]> > >> > > > > > Fingerprint=40A2 47F6 1E8C 6C75 678C 69C5 6848 6114 A8E8 B4E0 > >> > > > > > > >> > > > > > The public signing key can be found in the KEYS file: > >> > > > > > > >> https://dist.apache.org/repos/dist/dev/incubator/datasketches/KEYS > >> > > > > > > >> > > > > > Building and running unit tests requires cppunit-devel. > >> > > > > > The easiest way to build is: > >> > > > > > make test > >> > > > > > > >> > > > > > Building Python bindings requires cmake 3.12 or higher and > >> > pybind11. > >> > > > > > Please see the following document for details: > >> > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > https://github.com/apache/incubator-datasketches-cpp/blob/1.0.0-incubating-rc1/python/README.md > >> > > > > > > >> > > > > > The vote will be performed in two stages: > >> > > > > > - This letter will be published on dev@ and remain open for > >> at > >> > > least > >> > > > > 72 > >> > > > > > hours and until at least 3 (+1) PPMC votes are reached. All > PPMC > >> > > > members > >> > > > > > including mentors can vote. However, a negative vote from a > >> mentor > >> > > will > >> > > > > > cancel this voting process. > >> > > > > > - After it passes the first stage, the summary of that vote > >> and > >> > the > >> > > > key > >> > > > > > information from this letter will be published on > >> incubator@general > >> > > > and > >> > > > > > remain open for at least 72 hours and until at least 3 (+1) > IPMC > >> > > votes > >> > > > > are > >> > > > > > reached. > >> > > > > > > >> > > > > > Please vote accordingly: > >> > > > > > [ ] +1 approve > >> > > > > > [ ] +0 no opinion > >> > > > > > [ ] -1 disapprove with the reason > >> > > > > > > >> > > > > > Thanks, > >> > > > > > Alexander Saydakov > >> > > > > > [email protected] > >> > > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > > >
