Skip to content
This repository has been archived by the owner on Oct 30, 2021. It is now read-only.

Build and test against clang++ sanitizers on travis #95

Merged
merged 5 commits into from
May 22, 2017
Merged

Conversation

springmeyer
Copy link
Contributor

@springmeyer springmeyer commented May 1, 2017

This implements #55 and more. It makes no changes to the code in src/. It is exclusively build adjustments based on using best practices/conventions from https://github.com/mapbox/node-cpp-skel.

Notable:

  • Moves coverage reporting to codecov.io/gh/mapbox/carmen-cache
  • Adds ability to view coverage locally make coverage
  • Tests with address and undefined behavior sanitizer (also builds and publishes binaries for testing in downstream applications and staging)
  • Adds testing with g++ (as well as clang++)
  • Tweaks the coalesce.bench.js to work in Debug mode

This was referenced May 1, 2017
@springmeyer
Copy link
Contributor Author

springmeyer commented May 2, 2017

This is passing on travis - only failure is code coverage - but that is because the newly added (in this branch) codecov support can't compare against the master branch. So this problem will go away once merged.

@yhahn @mattficke @apendleton @KaiBot3000 - any reservations against merging this? Any questions? If you do have questions we (@mapbox/core-tech) will likely answer them by adding more docs (and links to those docs) at https://github.com/mapbox/node-cpp-skel, since much of the build overhaul here is originating from the skel.

My main motivation here is wanting the address and undefined behavior sanitizers running in master. This will help to automatically prevent regressions/bugs over the next year(s) as new developers work on carmen-cache.

@apendleton
Copy link
Contributor

Will coverage block merge in the future? If so, that'd be my main reservation... maybe this one is better, but I've found coverage tools to be finicky enough in the past that while I'm fine with having them enabled for the information value, I probably wouldn't be psyched about them potentially blocking people's work.

@springmeyer
Copy link
Contributor Author

Will coverage block merge in the future?

No. Will not block work. I think the only way to block a merge is via the github repo settings.

But codecov will automatically "fail" when coverage drops. This can be disabled by adding a codecov.yml and adding these options: https://docs.codecov.io/v4.3.0/docs/commit-status#section-disabling-a-status

FYI, codecov also automatically comments on PRs. If this gets too noisy it can also be turned off: https://docs.codecov.io/v4.3.0/docs/pull-request-comments#section-disable-comment

@springmeyer springmeyer merged commit 914ddbd into master May 22, 2017
@springmeyer springmeyer deleted the skel-best branch May 22, 2017 21:09
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants