Skip to content
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

My branch.md #202

Closed
wants to merge 51 commits into from
Closed

My branch.md #202

wants to merge 51 commits into from

Conversation

illia2222
Copy link

New code

mrb and others added 30 commits September 28, 2016 12:09
Update README with new version caveats
- Fix sub-list nesting
- Wrap paragraphs
- Replace *at the end of* with *after* (subtle difference IMO) and add
  example
* Low down json gem version for ruby 1.9.3 support

* Specify ruby version for this dependency
It's something that we can no longer infer, now that we're running our
test reporter code separately from the tests themselves.

Or, if we want to infer it, we can't infer it based on the current
process, which is what simplecov will try to do:

https://github.com/colszowka/simplecov/blob/6e5ec2342cc1cfea16ca6c3bb1034062267defbf/lib/simplecov/command_guesser.rb#L43-L56

I don't _think_ that we need to include this, and I'm trying to verify
how we use it.
Noticed in the wild that this isn't exactly right:
https://travis-ci.org/bbatsov/rubocop/jobs/173381625
The majority of repos won't need to customize beyond this, and for those
who want to, the link is there.
Without escaping the root, the absolute paths remain absolute and then
our validation rejects the test file reports and the user is told their
report is invalid.

This can occur when run in a local environment or on a service such as
Jenkins.
* Promote SimpleCov to a runtime depenency
* Extract ruby 1.9 dependencies to separate Gemfile

Inspired by:

* a0e5d03#commitcomment-19735625
* #146 (comment)
Converging on having all the setup docs in one place
Also updated the release process (mostly copied from minidoc) to
emphasize the importance of updating the changelog

Moved the 1.0.0 upgrade instructions into the changelog. Left the
section, because we linked to it in some places, and I don't want to
break those links.

Didn't document the changelog going back all the way to the beginning.
We could fill that in, but I don't think it's urgent.
- Use a support helper for managing a project fixture
- In-line the lets
Simplecov supports merging coverage from multiple test suites by writing them at
different command names in the resultset file, then merging them when building
the report.

We were getting this for free pre-1.0 because the resultsets would be merged
before being passed to the custom formatter. Post-1.0 we were (mistakenly)
assuming it'd just be one command name in the JSON file, hence we were only
reading:

    SimpleCov::Result.new(results.values.fetch(0).fetch("coverage"))

discarding all but the first command-name.

This is both broken and more work than we need to do. The file has a
well-defined schema, and we can rely more on Simplcov for parsing it.

Something like:

    SimpleCov::Result.from_hash(results.first)

would've been functionally equivalent, and shows more clearly the bug. What we
really want is:

    results.map do |k, v|
      SimpleCov::Result.from_hash(k => v)
    end

Then with an array of results, we can in-line some of Simplecov::ResultMerger to
merge them together into a single Simplecov::Result that we'll format for
upload. Unfortunately, we do have to in-line the method we need because this
object has multiple responsibilities (yay!), including caching and re-writing
files on disk, which we _don't_ want.

Fixes #7
This is just a nice thing, for the spec directory structure to match the
lib directory structure. The motivating thing here, for me, is that my
fuzzy file finder will prefer the lib files over the spec files now.
This is meant to make the spec output less noisy.
maxjacobson and others added 21 commits January 19, 2017 13:20
We don't recommend against this, and it allows community-contributed PRs
to have their coverage reported from Circle CI builds.
Allows running tests on Codeship within a docker container without mounting the .git directory into the container
This is a small follow-up to #168 that I just noticed before cutting the
v1.0.5 release
Update link to Code Climate's for Ruby test coverage help doc.
* Wire committed_at to ci_timestamp for codeship

For #156.

Plus correct build identifier, `CI_BUILD_NUMBER` does not exist in
codeship.

* Fix some style issue
Done because the 0.14.0 version introduces some changes that break the
`CodeClimate::TestReporter::Formatter#merge_results`
simplecov-ruby/simplecov@a7747c1

Check also:
  * SimpleCov::Result - https://github.com/colszowka/simplecov/blob/v0.14.0/lib/simplecov/result.rb
  * SimpleCov::RawCoverage - https://github.com/colszowka/simplecov/blob/v0.14.0/lib/simplecov/raw_coverage.rb
Inline environment variables are only visible to the command they
immediately precede. We only require the token while submitting test
coverage so this commit moves the token to precede the
`codeclimate-test-reporter` invocation.
Add deprecation warning + link to new test reporter
We've been deprecated for a while, I think we should start displaying a
message to that effect on intallation to encourage upgrades.
@illia2222 illia2222 closed this by deleting the head repository Oct 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.