Uh oh!
There was an error while loading. Please reload this page.
ARROW-71: [C++] Add clang-tidy and clang-format to the the tool chain. - #55
ARROW-71: [C++] Add clang-tidy and clang-format to the the tool chain.#55emkornfield wants to merge 7 commits into
Conversation
| make lint | ||
| if [ $TRAVIS_OS_NAME == "linux" ]; then | ||
| make check-format | ||
| make clang-tidy |
There was a problem hiding this comment.
should be check-clang-tidy
| void SetUp() { | ||
| pool_ = default_memory_pool(); | ||
| } | ||
| void SetUp() { pool_ = default_memory_pool(); } |
There was a problem hiding this comment.
Interesting, is this configurable? (I prefer the old style, but it's not a dealbreaker)
There was a problem hiding this comment.
It is. The current configuration is to only do one liners for methods declared inside a class scope. The options are never have single line methods, only have single line methods for empty methods, class-scope or always make single line methods. We could likely work around this particular instance by adding a line comment to prevent the collapse.
My general preference is for never or class scope. There were a few instances where the class-scope inlining was already done, and looked right to me.
There was a problem hiding this comment.
Let's stick with class scope, then, for now. Thanks
…increase penality for before first call parameter
wesm
commented
Apr 1, 2016
This seems good to me. If you're satisfied, will merge and we'll run with this? |
wesm
commented
May 1, 2016
@emkornfield according to Travis CI, they aren't in any hurry to whitelist the LLVM apt repos, but because we have sudo on the trusty platform, we can apt-add-repository and do whatever we want. So it should be possible to go back to Trusty and use LLVM 3.8 if we wish |
… at make time This also adds a `#define` working around the googletest incompatibility described in PARQUET-470. Author: Wes McKinney <wesm@apache.org> Closesapache#55 from wesm/PARQUET-468 and squashes the following commits: e0338df [Wes McKinney] Auto-generate Thrift C++ bindings from environment Thrift compiler. Add #define workaround for Thrift >= 0.9.2 std::tuple conflict with googletest Change-Id: I2fce672b43352a15d3246b606a011b35efa54fe1
[C++]Wip hdfs kerberos
FixesapacheGH-55. ### Rationale for this change I fixed the linking error here: apache#45114 ### What changes are included in this PR? Reenabling some disabled tests. ### Are these changes tested? Yes, they are tests. ### Are there any user-facing changes? No.
Implements comprehensive test for predicate pushdown with stripe-level fragments using SplitByStripe functionality. Tests that: - Filtering correctly selects only matching stripes - Each stripe fragment contains exactly one stripe - Stripe indices are correctly preserved - Row counts are correct for each stripe fragment Test cases cover: - All stripes (literal true) - Single stripe matches (equality, range) - Multiple stripe matches (< operator, >= operator, AND ranges) - Empty results (out of bounds, literal false) - OR predicates (disjoint ranges) - Complex multi-stripe ranges Uses 8-stripe test file with distinct value ranges per stripe (stripe N contains values [N*100, N*100+99]). Mirrors ParquetFileFormatScan::PredicatePushdownRowGroupFragments test. Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Implements comprehensive test for predicate pushdown with stripe-level fragments using SplitByStripe functionality. Tests that: - Filtering correctly selects only matching stripes - Each stripe fragment contains exactly one stripe - Stripe indices are correctly preserved - Row counts are correct for each stripe fragment Test cases cover: - All stripes (literal true) - Single stripe matches (equality, range) - Multiple stripe matches (< operator, >= operator, AND ranges) - Empty results (out of bounds, literal false) - OR predicates (disjoint ranges) - Complex multi-stripe ranges Uses 8-stripe test file with distinct value ranges per stripe (stripe N contains values [N*100, N*100+99]). Mirrors ParquetFileFormatScan::PredicatePushdownRowGroupFragments test. Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
I changed the ubuntu flavor for building to precise because travis-ci/apt-source-safelist#199 is currently blocking using trusty.
I also expect there might be a couple of iterations on settings for clang-format and clang-tidy (or if we even want them as standard parts of the toolchain). @wesm I noticed the lint target explicitly turns off some checks, I don't know if these were copy and pasted or you really don't like them. If the latter I can do a first pass of turning the same ones off for clang-tidy.
In terms of reviewing: It is likely useful, to look at the PR commit by commit, since the last two commits are 99% driven by the first commit. The main chunk of code that wasn't machine fixed is FatalLog in logging.
The good news is clang-tidy caught one potential corner case segfault when a column happened to be null :)