From 32588bf4ba84881d5ebd46f262fd7a3da8c3b661 Mon Sep 17 00:00:00 2001 From: Andrew Sullivan Cant Date: Thu, 19 Feb 2026 14:49:42 -0500 Subject: [PATCH 1/4] Update to use plugin instead of require This is the new command for including Rubocop plugins. --- .rubocop.yml | 2 +- Rakefile | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 1f4c59e..aec34ec 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,4 +1,4 @@ -require: +plugins: - rubocop-performance - rubocop-rake - rubocop-rspec diff --git a/Rakefile b/Rakefile index e15e102..fd5abe4 100644 --- a/Rakefile +++ b/Rakefile @@ -18,7 +18,6 @@ RuboCop::RakeTask.new(:rubocop) do |task| rubocop_report_pathname = Pathname(Rake.application.original_dir).join('tmp', 'rubocop.txt') rubocop_report_pathname.dirname.mkpath - task.requires << 'rubocop-rspec' task.options = %w[ --display-cop-names From 4c34fe2b0a02df27f622624a2390fd48a458aeb3 Mon Sep 17 00:00:00 2001 From: Andrew Sullivan Cant Date: Thu, 19 Feb 2026 14:50:59 -0500 Subject: [PATCH 2/4] Update the Github CI actions * update the OSes which are tested - use the `latestst` versions - add a check against `windows` * update the Ruby versions which are tested (added 4.0) * remove the Code Climate coverage reporting, because the service has been deprecated. Also removed the links from the README * restructure how the tests are executed - execute the entire test suite, including linting and dependency checking (i.e., `test` job) - if `test` passes then re-execute the specs in a test matrix to cover all the Ruby and OS compbinations --- .github/workflows/ci.yml | 34 ++++++++++++++-------------------- README.md | 3 --- 2 files changed, 14 insertions(+), 23 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e6ae57a..2cd3893 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,11 +5,23 @@ on: - cron: '0 1 * * 0' # every Sunday at 1am jobs: test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: ruby/setup-ruby@v1 + with: + bundler-cache: true + - run: bundle exec rake + env: + CUCUMBER_PUBLISH_TOKEN: ${{ secrets.CUCUMBER_PUBLISH_TOKEN }} + # TODO: Consider a code climate replacement for reporting results. + matrix_tests: + needs: [ test ] strategy: fail-fast: false matrix: - os: [ubuntu-20.04, macos-13] - ruby: [3.1, 3.2, 3.3, 3.4, head, jruby, jruby-head] + os: [ubuntu-latest, macos-latest, windows-latest] + ruby: [3.1, 3.2, 3.3, 3.4, 4.0, head, jruby, jruby-head] continue-on-error: ${{ endsWith(matrix.ruby, 'head') || endsWith(matrix.ruby, 'jruby') }} runs-on: ${{ matrix.os }} steps: @@ -19,21 +31,3 @@ jobs: ruby-version: ${{ matrix.ruby }} bundler-cache: true - run: bundle exec rake spec - coverage: - needs: [ test ] - name: coverage - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: ruby/setup-ruby@v1 - with: - bundler-cache: true - - run: bundle exec rake - env: - CUCUMBER_PUBLISH_TOKEN: ${{ secrets.CUCUMBER_PUBLISH_TOKEN }} - - uses: paambaati/codeclimate-action@v9.0.0 - env: - CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }} - with: - coverageLocations: | - ${{ github.workspace }}/coverage/lcov/*.lcov:lcov diff --git a/README.md b/README.md index 2a81b45..01d0a99 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,6 @@ [![Gem Version](https://badge.fury.io/rb/rspec-timecop.svg)](http://badge.fury.io/rb/rspec-timecop) [![Build Status](https://github.com/sugarcrm/rspec-timecop/actions/workflows/ci.yml/badge.svg)](https://github.com/sugarcrm/rspec-timecop/actions/workflows/ci.yml) -[![Code Climate](https://codeclimate.com/github/sugarcrm/rspec-timecop/badges/gpa.svg)](https://codeclimate.com/github/sugarcrm/rspec-timecop) -[![Test Coverage](https://codeclimate.com/github/sugarcrm/rspec-timecop/badges/coverage.svg)](https://codeclimate.com/github/sugarcrm/rspec-timecop/coverage) [![License](http://img.shields.io/badge/license-MIT-green.svg?style=flat)](LICENSE.txt) [![RubyDoc](http://img.shields.io/badge/docs-rdoc.info-blue.svg)](http://rubydoc.info/gems/rspec-timecop) @@ -72,7 +70,6 @@ And using #timecopped hides away example how Timecop.freeze is used so that we c Links to other places on the web where this projects exists: -* [Code Climate](https://codeclimate.com/github/sugarcrm/rspec-timecop) * [Github](https://github.com/sugarcrm/rspec-timecop) * [OpenHub](https://www.openhub.net/p/rspec-timecop) * [RubyDoc](https://rubydoc.info/gems/rspec-timecop) From 392d5990c4bb2d7a7ead79ce79a32a630ca5715e Mon Sep 17 00:00:00 2001 From: Andrew Sullivan Cant Date: Sun, 22 Feb 2026 17:23:53 -0500 Subject: [PATCH 3/4] Update copyright to 2026 --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 01d0a99..e1f9c3e 100644 --- a/README.md +++ b/README.md @@ -92,4 +92,4 @@ Links to other places on the web where this projects exists: ## License -Copyright 2025 [SugarCRM Inc.](http://sugarcrm.com), released under the [MIT License](https://opensource.org/license/MIT). +Copyright 2026 [SugarCRM Inc.](http://sugarcrm.com), released under the [MIT License](https://opensource.org/license/MIT). From 500cfd17b9cdc4b1ca03b49d62907d4681a0a642 Mon Sep 17 00:00:00 2001 From: Andrew Sullivan Cant Date: Sun, 22 Feb 2026 17:33:00 -0500 Subject: [PATCH 4/4] Mark the gem as v1.0.0 There are no new changes, but the gem can be considered stable and usable as v1.0.0. --- CHANGELOG.md | 4 ++++ lib/rspec/timecop/version.rb | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b639807..d066b48 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## [Unreleased] +## [l.0.0] - 2026-02-23 +### Changed +- update the gem version to 1.0.0, becuase it is stable and in use + ## [0.4.0] - 2025-01-31 ### Changed - minimum required Ruby version to 3.1.2, dropping support for 2.x and 3.0 diff --git a/lib/rspec/timecop/version.rb b/lib/rspec/timecop/version.rb index 5cb5edc..d489e4a 100644 --- a/lib/rspec/timecop/version.rb +++ b/lib/rspec/timecop/version.rb @@ -2,6 +2,6 @@ module RSpec module Timecop - VERSION = '0.4.0' + VERSION = '1.0.0' end end