-
Notifications
You must be signed in to change notification settings - Fork 238
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Workspace support and better error messages #178
Conversation
@@ -61,15 +61,29 @@ def self.open(xcodeproj) | |||
proj | |||
end | |||
|
|||
def failure_help_string | |||
"\n\tAre you sure your project is generating coverage? Try `slather setup your/project.xcodeproj`.\n\tDid you specify your Xcode scheme? (--scheme or 'scheme' in .slather.yml)\n\tIf you're using a workspace, did you specify it? (--workspace or 'workspace' in .slather.yml)" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like this, but I'd rather not have the setup
command in here anymore, because it is only relevant for folks using older Xcodes.
This PR is great 👍 — thanks a lot, @ksuther! Once comment is addressed and changelog entry is added it is good to merge :) |
Otherwise slather gets required because coverage is started and the main libraries aren't covered.
…coverage. SIMPLECOV=true bundle exec rake
Specify workspace in the yml config or --workspace on the command line to specify the workspace that is used to build the project.
Code coverage doesn't work for static libraries.
Tests will build the fixtures xcodeproj with a workspace to ensure it works, but we're only using the coverage from the first xcodebuild command for testing the coverage output.
…estions when configuration fails. Fixes SlatherOrg#8.
Encourage specifying the scheme when running slather. Add information about building with workspaces. Changed "Previous versions of Xcode" to be more explicit about what versions it's talking about. Added installation instructions for people that don't use a Gemfile.
7c2b3b3
to
be437e3
Compare
Done! |
|
@neonichu What is your SOP for tagging and releasing? Do you wait until you have several things to release? Or do you tag and release whenever you merge? |
Changes Unknown when pulling be437e3 on ksuther:workspace-support into * on SlatherOrg:master*. |
@gblotter it depends, if there's PRs lined up that will be finished very soon or just smaller things, I'll tend to wait, more important changes I'm releasing ASAP. |
@neonichu Can I ask where this one falls? 😊 |
Would be the former, but I'm seeing some issues while testing locally, so it might happen later rather than sooner :) |
@neonichu Let me know if you run into any regressions from these changes. |
@ksuther will do, first have to determine if it is actually one, my projects were using an ancient branch of slather until now |
I am using slather at work, and want to give it a try - easy to pull from master? (still a little new to gems). |
@lwdupont |
@ksuther Thanks, and thanks for everyone's work on slather. Seems to work fine with the test shell script I have set up. Still trying to find my cobertura file, but pretty sure that's on me :) (no errors running it). 👍 |
--workspace
or addworkspace
to.slather.yml
if you run tests in a workspace. This will fix `profdata_coverage_dir': No coverage directory found. Xcode 7.3 #175 (and is probably the cause of No binary found... #171, Slather 2.0.1 cannot find binary (2.0.0 can) #162, and Not finding coverage files with Xcode 7 #154).spec
and ignoring the oneslib
(this means the coverage percentage is going to decrease).This can be split into multiple pull requests if necessary.