still_active 0.5.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +21 -0
- data/.github/workflows/codeql-analysis.yml +5 -36
- data/.github/workflows/publish.yml +19 -0
- data/.github/workflows/rspec.yml +3 -3
- data/.github/workflows/rubocop-analysis.yml +6 -15
- data/.gitignore +6 -0
- data/.rspec +0 -2
- data/.rubocop.yml +7 -3
- data/CHANGELOG.md +51 -1
- data/Gemfile +0 -1
- data/Gemfile.lock +192 -154
- data/README.md +67 -28
- data/fixtures/debug_versions.json +38 -0
- data/fixtures/still_active_version.json +9 -0
- data/fixtures/vcr_cassettes/deps_dev_project.yml +46 -0
- data/fixtures/vcr_cassettes/deps_dev_version.yml +56 -0
- data/fixtures/vcr_cassettes/gems.yml +2028 -963
- data/lib/helpers/activity_helper.rb +31 -0
- data/lib/helpers/ansi_helper.rb +25 -0
- data/lib/helpers/emoji_helper.rb +7 -16
- data/lib/helpers/http_helper.rb +31 -0
- data/lib/helpers/markdown_helper.rb +66 -55
- data/lib/helpers/terminal_helper.rb +118 -0
- data/lib/helpers/version_helper.rb +21 -19
- data/lib/still_active/cli.rb +46 -19
- data/lib/still_active/config.rb +10 -2
- data/lib/still_active/core_ext.rb +13 -0
- data/lib/still_active/deps_dev_client.rb +57 -0
- data/lib/still_active/gitlab_client.rb +30 -0
- data/lib/still_active/options.rb +19 -5
- data/lib/still_active/repository.rb +7 -14
- data/lib/still_active/version.rb +1 -1
- data/lib/still_active/workflow.rb +32 -24
- data/still_active.gemspec +11 -17
- metadata +30 -45
- data/lib/still_active/gemfile.rb +0 -14
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 336b101db0d44c21bc01fa71954c4aea16c4187e051cfb07c2dae674b03efe87
|
|
4
|
+
data.tar.gz: 5f4cf5bf46f0394f1cea692704c569713eaf37590d3fe34b576d4172cdaf2cbc
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0744ecad97a50140981afa1ad7d0083caa20b33949e973cc79bc52f0ef525d9043d70d9cabbae9954ab0841cf6790e269ba95ea7df9918f4d473d54806f3f0d5
|
|
7
|
+
data.tar.gz: 01b02c7b86fae1895880845d17be49f9d692aa1c2090fc3642fc37c2280f176b2a07dc258b9c6dd785dceb9d261f5bdfa56247399ad827907ec1c5c8b6b5f74a
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
updates:
|
|
3
|
+
- package-ecosystem: bundler
|
|
4
|
+
directory: "/"
|
|
5
|
+
schedule:
|
|
6
|
+
interval: weekly
|
|
7
|
+
groups:
|
|
8
|
+
production:
|
|
9
|
+
dependency-type: production
|
|
10
|
+
update-types: [minor, patch]
|
|
11
|
+
development:
|
|
12
|
+
dependency-type: development
|
|
13
|
+
update-types: [minor, patch]
|
|
14
|
+
- package-ecosystem: github-actions
|
|
15
|
+
directory: "/"
|
|
16
|
+
schedule:
|
|
17
|
+
interval: weekly
|
|
18
|
+
groups:
|
|
19
|
+
actions:
|
|
20
|
+
patterns: ["*"]
|
|
21
|
+
update-types: [minor, patch]
|
|
@@ -1,21 +1,10 @@
|
|
|
1
|
-
# For most projects, this workflow file will not need changing; you simply need
|
|
2
|
-
# to commit it to your repository.
|
|
3
|
-
#
|
|
4
|
-
# You may wish to alter this file to override the set of languages analyzed,
|
|
5
|
-
# or to provide custom queries or build logic.
|
|
6
|
-
#
|
|
7
|
-
# ******** NOTE ********
|
|
8
|
-
# We have attempted to detect the languages in your repository. Please check
|
|
9
|
-
# the `language` matrix defined below to confirm you have the correct set of
|
|
10
|
-
# supported CodeQL languages.
|
|
11
|
-
#
|
|
12
1
|
name: "CodeQL"
|
|
13
2
|
|
|
14
3
|
on:
|
|
4
|
+
workflow_dispatch:
|
|
15
5
|
push:
|
|
16
6
|
branches: [ main ]
|
|
17
7
|
pull_request:
|
|
18
|
-
# The branches below must be a subset of the branches above
|
|
19
8
|
branches: [ main ]
|
|
20
9
|
schedule:
|
|
21
10
|
- cron: '0 0 1 * *'
|
|
@@ -33,38 +22,18 @@ jobs:
|
|
|
33
22
|
fail-fast: false
|
|
34
23
|
matrix:
|
|
35
24
|
language: [ 'ruby' ]
|
|
36
|
-
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
|
|
37
|
-
# Learn more about CodeQL language support at https://git.io/codeql-language-support
|
|
38
25
|
|
|
39
26
|
steps:
|
|
40
27
|
- name: Checkout repository
|
|
41
|
-
uses: actions/checkout@
|
|
28
|
+
uses: actions/checkout@v4
|
|
42
29
|
|
|
43
|
-
# Initializes the CodeQL tools for scanning.
|
|
44
30
|
- name: Initialize CodeQL
|
|
45
|
-
uses: github/codeql-action/init@
|
|
31
|
+
uses: github/codeql-action/init@v4
|
|
46
32
|
with:
|
|
47
33
|
languages: ${{ matrix.language }}
|
|
48
|
-
# If you wish to specify custom queries, you can do so here or in a config file.
|
|
49
|
-
# By default, queries listed here will override any specified in a config file.
|
|
50
|
-
# Prefix the list here with "+" to use these queries and those in the config file.
|
|
51
|
-
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
|
52
34
|
|
|
53
|
-
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
|
54
|
-
# If this step fails, then you should remove it and run the build manually (see below)
|
|
55
35
|
- name: Autobuild
|
|
56
|
-
uses: github/codeql-action/autobuild@
|
|
57
|
-
|
|
58
|
-
# ℹ️ Command-line programs to run using the OS shell.
|
|
59
|
-
# 📚 https://git.io/JvXDl
|
|
60
|
-
|
|
61
|
-
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
|
62
|
-
# and modify them (or add more) to build your code if your project
|
|
63
|
-
# uses a compiled language
|
|
64
|
-
|
|
65
|
-
#- run: |
|
|
66
|
-
# make bootstrap
|
|
67
|
-
# make release
|
|
36
|
+
uses: github/codeql-action/autobuild@v4
|
|
68
37
|
|
|
69
38
|
- name: Perform CodeQL Analysis
|
|
70
|
-
uses: github/codeql-action/analyze@
|
|
39
|
+
uses: github/codeql-action/analyze@v4
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
name: Publish to RubyGems
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
push:
|
|
9
|
+
runs-on: ubuntu-latest
|
|
10
|
+
permissions:
|
|
11
|
+
id-token: write
|
|
12
|
+
contents: write
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
- uses: ruby/setup-ruby@v1
|
|
16
|
+
with:
|
|
17
|
+
ruby-version: ruby
|
|
18
|
+
bundler-cache: true
|
|
19
|
+
- uses: rubygems/release-gem@v1
|
data/.github/workflows/rspec.yml
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
name: RSpec tests
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
|
+
workflow_dispatch:
|
|
4
5
|
push:
|
|
5
6
|
branches: [ main ]
|
|
6
7
|
pull_request:
|
|
7
|
-
# The branches below must be a subset of the branches above
|
|
8
8
|
branches: [ main ]
|
|
9
9
|
schedule:
|
|
10
10
|
- cron: '0 0 1 * *'
|
|
@@ -13,10 +13,10 @@ jobs:
|
|
|
13
13
|
test:
|
|
14
14
|
strategy:
|
|
15
15
|
matrix:
|
|
16
|
-
ruby: [3.
|
|
16
|
+
ruby: ['3.2', '3.3', '3.4', '4.0', head]
|
|
17
17
|
runs-on: ubuntu-latest
|
|
18
18
|
steps:
|
|
19
|
-
- uses: actions/checkout@
|
|
19
|
+
- uses: actions/checkout@v4
|
|
20
20
|
- name: Set up Ruby
|
|
21
21
|
uses: ruby/setup-ruby@v1
|
|
22
22
|
with:
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# pulled from repo
|
|
2
1
|
name: "Rubocop"
|
|
3
2
|
|
|
4
3
|
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
5
|
push:
|
|
6
6
|
branches: [ main ]
|
|
7
7
|
pull_request:
|
|
8
|
-
# The branches below must be a subset of the branches above
|
|
9
8
|
branches: [ main ]
|
|
10
9
|
schedule:
|
|
11
10
|
- cron: '0 0 1 * *'
|
|
@@ -18,30 +17,22 @@ jobs:
|
|
|
18
17
|
|
|
19
18
|
steps:
|
|
20
19
|
- name: Checkout repository
|
|
21
|
-
uses: actions/checkout@
|
|
20
|
+
uses: actions/checkout@v4
|
|
22
21
|
|
|
23
|
-
# If running on a self-hosted runner, check it meets the requirements
|
|
24
|
-
# listed at https://github.com/ruby/setup-ruby#using-self-hosted-runners
|
|
25
22
|
- name: Set up Ruby
|
|
26
23
|
uses: ruby/setup-ruby@v1
|
|
27
24
|
with:
|
|
28
|
-
ruby-version: 3.
|
|
29
|
-
|
|
30
|
-
# This step is not necessary if you add the gem to your Gemfile
|
|
31
|
-
# - name: Install Code Scanning integration
|
|
32
|
-
# run: bundle add code-scanning-rubocop --version 0.3.0 --skip-install
|
|
33
|
-
|
|
34
|
-
- name: Install dependencies
|
|
35
|
-
run: bundle install
|
|
25
|
+
ruby-version: '3.4'
|
|
26
|
+
bundler-cache: true
|
|
36
27
|
|
|
37
28
|
- name: Rubocop run
|
|
38
29
|
run: |
|
|
39
30
|
bash -c "
|
|
40
31
|
bundle exec rubocop --require code_scanning --format CodeScanning::SarifFormatter -o rubocop.sarif
|
|
41
|
-
[[
|
|
32
|
+
[[ \$? -ne 2 ]]
|
|
42
33
|
"
|
|
43
34
|
|
|
44
35
|
- name: Upload Sarif output
|
|
45
|
-
uses: github/codeql-action/upload-sarif@
|
|
36
|
+
uses: github/codeql-action/upload-sarif@v4
|
|
46
37
|
with:
|
|
47
38
|
sarif_file: rubocop.sarif
|
data/.gitignore
CHANGED
data/.rspec
CHANGED
data/.rubocop.yml
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
plugins:
|
|
2
2
|
- rubocop-performance
|
|
3
3
|
- rubocop-rspec
|
|
4
4
|
|
|
5
5
|
AllCops:
|
|
6
6
|
NewCops: enable
|
|
7
|
-
TargetRubyVersion: 3.
|
|
7
|
+
TargetRubyVersion: 3.1
|
|
8
|
+
SuggestExtensions: false
|
|
8
9
|
|
|
9
10
|
inherit_gem:
|
|
10
11
|
rubocop-shopify: rubocop.yml
|
|
@@ -16,4 +17,7 @@ RSpec/ExampleLength:
|
|
|
16
17
|
Enabled: false
|
|
17
18
|
|
|
18
19
|
RSpec/NestedGroups:
|
|
19
|
-
Enabled: false
|
|
20
|
+
Enabled: false
|
|
21
|
+
|
|
22
|
+
RSpec/MultipleExpectations:
|
|
23
|
+
Enabled: false
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,56 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## [1.0.0] - 2026-02-19
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- `--fail-if-critical` and `--fail-if-warning` flags for CI quality gating
|
|
8
|
+
- deps.dev integration: OpenSSF Scorecard scores and known CVEs in output
|
|
9
|
+
- Autopublish to RubyGems via GitHub Releases (trusted publishing)
|
|
10
|
+
- Coloured terminal table as default output format with summary line
|
|
11
|
+
- Auto-detection: terminal output for TTY, JSON when piped
|
|
12
|
+
- GitLab repository support with `--gitlab-token` flag
|
|
13
|
+
- Default token loading from `GITHUB_TOKEN` and `GITLAB_TOKEN` env vars
|
|
14
|
+
- Dependabot for bundler and GitHub Actions (grouped minor/patch updates)
|
|
15
|
+
- Require MFA for RubyGems publishing
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
|
|
19
|
+
- **BREAKING:** Rename `--no-warning-range-end` to `--safe-range-end` (fixes OptionParser conflict)
|
|
20
|
+
- **BREAKING:** Default output is now auto-detected (terminal on TTY, JSON when piped); `--markdown` is an explicit opt-in
|
|
21
|
+
- **BREAKING:** Markdown table collapsed from 12 to 9 columns (dates inlined with versions)
|
|
22
|
+
- Replace `activesupport` with lightweight `CoreExt` refinement
|
|
23
|
+
- Remove unused `async-http` dependency (82 -> 66 installed gems)
|
|
24
|
+
- **BREAKING:** Bump minimum Ruby version to 3.2 (3.1 is EOL)
|
|
25
|
+
- Rename "Scorecard" column to "OpenSSF" for clarity
|
|
26
|
+
- Extract shared HTTP helper from DepsDevClient and GitlabClient
|
|
27
|
+
- Consolidate VCR test configuration into spec_helper
|
|
28
|
+
- Re-record VCR cassettes against live APIs
|
|
29
|
+
|
|
30
|
+
### Fixed
|
|
31
|
+
|
|
32
|
+
- Markdown output showed wrong emoji for pre-release version comparison
|
|
33
|
+
- Errors during gem lookup now go to stderr instead of corrupting structured output
|
|
34
|
+
- Repository URL matching handles dots in org/repo names
|
|
35
|
+
- Guard against nil URLs in Repository.valid?
|
|
36
|
+
- Handle malformed JSON responses from APIs gracefully
|
|
37
|
+
- Terminal output no longer crashes on empty results
|
|
38
|
+
- Version comparison uses `Gem::Version` instead of string equality
|
|
39
|
+
- deps.dev project ID parsing handles URLs with trailing paths
|
|
40
|
+
- Add `faraday-retry` runtime dependency to silence Faraday v2 warning
|
|
41
|
+
- Add missing `require "time"` for `Time.parse` in VersionHelper
|
|
42
|
+
- Fix `:last_activity_warning_emoji` key typo
|
|
43
|
+
- Remove dead `Gemfile` module and unused `include VersionHelper`
|
|
44
|
+
|
|
45
|
+
## [0.6.0] - 2026-02-19
|
|
46
|
+
|
|
47
|
+
- Replace `github_api` (unmaintained since 2019) with `octokit`
|
|
48
|
+
- Remove `dead_end` dependency (absorbed into Ruby 3.2+ as `syntax_suggest`)
|
|
49
|
+
- Bump minimum Ruby version to 3.1
|
|
50
|
+
- Test against Ruby 3.1, 3.2, 3.3, 3.4, 4.0, and head
|
|
51
|
+
- Bump all dependencies
|
|
52
|
+
- Update GitHub Actions to v4/v3
|
|
53
|
+
- Migrate rubocop config from `require` to `plugins`
|
|
4
54
|
|
|
5
55
|
## [0.5.0] - 2023-05-21
|
|
6
56
|
|