• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umbrellio / ci_helper
100%

Build:
DEFAULT BRANCH: master
Repo Added 10 Jun 2020 02:23PM UTC
Files 11
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH master
branch: master
CHANGE BRANCH
x
Reset
  • master
  • USAFE-8826-run-clickhouse-migrations-in-ci
  • capture-rspec-dry-run-error
  • claude/compassionate-solomon-2446e6
  • claude/jolly-hofstadter-809817
  • clickhouse-support
  • heavy-specs-distribution-3
  • refactor-code-for-clarity
  • show-rspec-command-error
  • split-spec-files
  • timing-aware-split

20 Jul 2026 04:25PM UTC coverage: 100.0%. Remained the same
29759522804

push

github

web-flow
Add timing-aware spec splitting to RunSpecs (#29)

* Add timing-aware spec splitting to RunSpecs

* Record spec timings via an added formatter instead of --format

Registering the recorder with a command-line --format made RSpec drop the
formatters the consuming suite configures via .rspec (in RSpec 3, any CLI
--format replaces the configured list), silently removing documentation,
custom, or JUnit formatters and their CI artifacts. Post-processing the
report in the command also ran only on success, so a run with any failing
example left timings_out as RSpec's nested report rather than the flat map.

Ship an RSpecTimingsFormatter and register it via --require, so it is added
on top of the suite's own formatters, and write the flat map from its
dump_summary hook, which RSpec reaches even when examples fail.

* Record spec timings from an after(:suite) hook, not a formatter

An added formatter still occupies rspec's formatter list, and
Formatters::Loader only installs the default progress formatter when that
list is empty. So for the common suite with no explicit --format in
.rspec, enabling --timings-out suppressed the normal progress and failure
output entirely.

Collect timings from an after(:suite) hook (via RSpec.world.all_examples)
instead. It records after every example has finished, so it still captures
timings when examples fail, and it never touches the formatter list, so
rspec keeps both the suite's configured formatters and its default output.

* Record timings only for examples executed on this node

A node runs a subset of example ids, but rspec loads the whole file, so
RSpec.world.all_examples also returns examples filtered out on this node.
Those never ran and have a nil run_time, which to_f turned into 0.0, so
each node's map gained zero entries for other nodes' examples — and merging
the per-node maps could overwrite a real timing with 0.0.

Skip examples whose run_time is nil, keeping only those actually executed.

30 of 30 branches covered (100.0%)

Branch coverage included in aggregate %.

188 of 188 relevant lines covered (100.0%)

9.27 hits per line

Relevant lines Covered
Build:
Build:
188 RELEVANT LINES 188 COVERED LINES
9.27 HITS PER LINE
Source Files on master
  • Tree
  • List 11
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
29759522804 master Add timing-aware spec splitting to RunSpecs (#29) * Add timing-aware spec splitting to RunSpecs * Record spec timings via an added formatter instead of --format Registering the recorder with a command-line --format made RSpec drop the formatter... push 20 Jul 2026 04:25PM UTC web-flow github
100.0
29412392558 master Update RuboCop configuration, remove unused gem, and refactor some code (#28) * Update RuboCop configuration, remove unused gem, and refactor code for clarity * Revert after review comments push 15 Jul 2026 11:39AM UTC web-flow github
100.0
28791373315 master Show the rspec command output when the dry-run fails (#27) * Show the rspec command output when the dry-run fails RunSpecs#example_ids ran the `rspec --dry-run` and, on failure, printed the contents of rspec's `--out` JSON file (the example list... push 06 Jul 2026 12:26PM UTC web-flow github
100.0
28373603731 master Update README to match command implementations (#26) * Update README to match command implementations - Document the --with-clickhouse flag for CheckDBDevelopment, CheckDBRollback and RunSpecs (the DB commands previously said "does not accept ... push 29 Jun 2026 12:56PM UTC web-flow github
100.0
28372543201 master Add autorelease workflow (#25) On push to master, extract the version from lib/ci_helper/version.rb and, unless a release for that tag already exists, build the gem, push it to RubyGems, and create a GitHub release with the gem attached. push 29 Jun 2026 12:38PM UTC web-flow github
100.0
28372006113 master fix (#24) push 29 Jun 2026 12:29PM UTC web-flow github
100.0
24825772672 master Split spec files in rspec by example (#23) push 23 Apr 2026 08:44AM UTC web-flow github
100.0
18527885751 master Merge pull request #22 from dmi3-bu/USAFE-8826-run-clickhouse-migrations-in-ci push 15 Oct 2025 11:51AM UTC web-flow github
100.0
18278848577 master drop old rubies support push 06 Oct 2025 11:08AM UTC tycooon github
100.0
18278800466 master update bundler push 06 Oct 2025 11:06AM UTC tycooon github
100.0
See All Builds (103)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc