Skip to content

Commit 9c34e28

Browse files
committed
Modernize tooling, clean up repo, update copyright
* Update highlight.js from pre-2015 to v11.11.1 * Add package.json with bun lockfile for esbuild, highlight.js, TypeScript * Add tsconfig.json for editor/LSP support with strict mode * Add bin/setup script for one-command dev environment setup * Split CI: test.yml, typecheck.yml (bun), gem_push.yml (Sigstore signing) * Add npm ecosystem to dependabot.yml * gemspec: opt-in file list, add metadata URIs, remove stale references * Rewrite README with current setup and development instructions * Update copyright to 2010-2026 Christoph Olszowka and Erik Berlin
1 parent 42506f8 commit 9c34e28

22 files changed

Lines changed: 325 additions & 362 deletions

.document

Lines changed: 0 additions & 5 deletions
This file was deleted.

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,14 @@ updates:
1717
update-types:
1818
- minor
1919
- patch
20+
- package-ecosystem: npm
21+
directory: /
22+
schedule:
23+
interval: daily
24+
cooldown:
25+
default-days: 7
26+
groups:
27+
minor-and-patch:
28+
update-types:
29+
- minor
30+
- patch

.github/workflows/gem_push.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Push gem to RubyGems
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
8+
permissions:
9+
contents: read
10+
11+
jobs:
12+
push:
13+
if: github.repository == 'simplecov-ruby/simplecov-html'
14+
runs-on: ubuntu-latest
15+
environment:
16+
name: rubygems.org
17+
url: https://rubygems.org/gems/simplecov-html
18+
permissions:
19+
contents: write
20+
id-token: write
21+
steps:
22+
- uses: actions/checkout@v6
23+
- uses: ruby/setup-ruby@v1
24+
with:
25+
ruby-version: ruby
26+
bundler-cache: true
27+
- uses: rubygems/configure-rubygems-credentials@v1.0.0
28+
- name: Update RubyGems
29+
run: gem update --system
30+
- name: Build gem
31+
run: bundle exec rake build
32+
- name: Sign gem with Sigstore
33+
run: gem exec sigstore-cli sign pkg/*.gem --bundle pkg/simplecov-html.gem.sigstore.json
34+
- name: Push gem
35+
run: gem push pkg/*.gem --attestation pkg/simplecov-html.gem.sigstore.json
36+
- name: Wait for release
37+
run: gem exec rubygems-await pkg/*.gem

.github/workflows/typecheck.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
name: typecheck
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
typecheck:
7+
runs-on: ubuntu-latest
8+
steps:
9+
- uses: actions/checkout@v6
10+
11+
- uses: oven-sh/setup-bun@v2
12+
13+
- run: bun install
14+
15+
- run: bun run typecheck

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ tmtags
2020
## RUBYMINE
2121
.idea
2222

23+
## NODE
24+
node_modules
25+
2326
## PROJECT::GENERAL
2427
coverage
2528
rdoc

.tool-versions

Lines changed: 0 additions & 1 deletion
This file was deleted.

Guardfile

Lines changed: 0 additions & 14 deletions
This file was deleted.

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Copyright (c) 2010-2013 Christoph Olszowka
1+
Copyright (c) 2010-2026 Christoph Olszowka and Erik Berlin
22

33
Permission is hereby granted, free of charge, to any person obtaining
44
a copy of this software and associated documentation files (the

README.md

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,39 @@ Default HTML formatter for SimpleCov
33

44
***Note: To learn more about SimpleCov, check out the main repo at https://github.com/simplecov-ruby/simplecov***
55

6-
Generates a nice HTML report of your SimpleCov ruby code coverage results on Ruby 2.4+ using client-side Javascript
7-
quite extensively.
6+
Generates an HTML report of your SimpleCov Ruby code coverage results with interactive sorting, filtering, and syntax-highlighted source views.
87

8+
Setup
9+
-----
910

10-
Note on Patches/Pull Requests
11-
-----------------------------
11+
```bash
12+
bin/setup
13+
```
1214

13-
The formatter itself has no actual tests. Instead, it is tested in the cucumber features of simplecov itself. If you
14-
modify the formatter, please make sure the simplecov test suites still pass by doing the following:
15+
This installs both Ruby and Node dependencies. Node dependencies (esbuild, TypeScript, highlight.js) are only needed for development.
1516

16-
* Clone simplecov into the parent directory of your simplecov-html checkout
17-
* `cd` there, run `bundle`
18-
* You should end up with all dev dependencies installed and simplecov-html being used from your disk
19-
* Run the tests (units and features)
17+
Development
18+
-----------
2019

21-
Please remember to add tests if you add functionality.
20+
Run the test suite:
2221

23-
**Important:** If you modify the JS/CSS assets, you'll have to precompile them using `rake assets:compile` - otherwise,
24-
your changes will not be included in your coverage reports.
22+
```bash
23+
bundle exec rake
24+
```
2525

26+
If you modify the TypeScript or CSS assets, recompile them:
27+
28+
```bash
29+
bundle exec rake assets:compile
30+
```
31+
32+
Type-check the TypeScript:
33+
34+
```bash
35+
bun run typecheck
36+
```
2637

2738
Copyright
2839
---------
2940

30-
Copyright (c) 2010-2013 Christoph Olszowka. See LICENSE for details.
41+
Copyright (c) 2010-2026 Christoph Olszowka and Erik Berlin. See LICENSE for details.

0 commit comments

Comments
 (0)