countless 1.0.0 → 1.1.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/workflows/documentation.yml +3 -3
- data/.github/workflows/test.yml +8 -8
- data/.rspec +2 -1
- data/.rubocop.yml +8 -2
- data/.simplecov +10 -0
- data/Appraisals +12 -12
- data/CHANGELOG.md +11 -2
- data/Dockerfile +28 -0
- data/Envfile +3 -0
- data/LICENSE +1 -1
- data/Makefile +34 -11
- data/README.md +1 -1
- data/config/docker/.bash_profile +3 -0
- data/config/docker/.bashrc +48 -0
- data/config/docker/.inputrc +17 -0
- data/countless.gemspec +32 -24
- data/docker-compose.yml +2 -1
- data/gemfiles/rails_5.2.gemfile +3 -3
- data/gemfiles/rails_6.0.gemfile +3 -3
- data/gemfiles/rails_6.1.gemfile +3 -3
- data/gemfiles/rails_7.0.gemfile +3 -3
- data/lib/countless/rake_tasks.rake +0 -1
- data/lib/countless/statistics.rb +1 -1
- data/lib/countless/version.rb +1 -1
- metadata +41 -37
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 13ece1f5c33f4b31324bf8822ccf175196c0156339fcd3720540a191619b53f6
         | 
| 4 | 
            +
              data.tar.gz: 297e11ccc0579f601bc06308fcb718281fee117e428a1a365fadb6f2fb61a47b
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 07f02f3a1a67a1c6f69cb6cc2eb30b5556effee6d157433f153ae3ffa37fde7f56d5082e5d6575c1f8adfab97e63cf123a22f02cba8556dd9db6cc3c68edd092
         | 
| 7 | 
            +
              data.tar.gz: 4f1de9ca4374448cbd2d36c413e5f3d5b543b2fa10572213fca986fdde88bb6efa5f211d1cfec84f9336f927986c99ad2643d6da1350bf560db839c219a64a60
         | 
| @@ -9,17 +9,17 @@ concurrency: | |
| 9 9 | 
             
            jobs:
         | 
| 10 10 | 
             
              docs:
         | 
| 11 11 | 
             
                name: Build gem documentation
         | 
| 12 | 
            -
                runs-on: ubuntu- | 
| 12 | 
            +
                runs-on: ubuntu-22.04
         | 
| 13 13 | 
             
                timeout-minutes: 5
         | 
| 14 14 | 
             
                steps:
         | 
| 15 | 
            -
                  - uses: actions/checkout@ | 
| 15 | 
            +
                  - uses: actions/checkout@v3
         | 
| 16 16 |  | 
| 17 17 | 
             
                  - name: Install the correct Ruby version
         | 
| 18 18 | 
             
                    uses: ruby/setup-ruby@v1
         | 
| 19 19 | 
             
                    with:
         | 
| 20 20 | 
             
                      ruby-version: 2.5
         | 
| 21 21 | 
             
                      bundler-cache: true
         | 
| 22 | 
            -
                      rubygems:  | 
| 22 | 
            +
                      rubygems: '3.3.26'
         | 
| 23 23 |  | 
| 24 24 | 
             
                  - name: Prepare the virtual environment
         | 
| 25 25 | 
             
                    uses: hausgold/actions/ci@master
         | 
    
        data/.github/workflows/test.yml
    CHANGED
    
    | @@ -13,30 +13,30 @@ concurrency: | |
| 13 13 | 
             
            jobs:
         | 
| 14 14 | 
             
              test:
         | 
| 15 15 | 
             
                name: 'Test the gem (Ruby ${{ matrix.ruby }}, Rails ${{ matrix.rails }})'
         | 
| 16 | 
            -
                runs-on: ubuntu- | 
| 16 | 
            +
                runs-on: ubuntu-22.04
         | 
| 17 17 | 
             
                timeout-minutes: 5
         | 
| 18 18 | 
             
                strategy:
         | 
| 19 19 | 
             
                  fail-fast: false
         | 
| 20 20 | 
             
                  matrix:
         | 
| 21 | 
            -
                    ruby: [2.5, 2.6, 2.7, '3.0', 3.1]
         | 
| 22 | 
            -
                    rails: [5.2, '6.0', 6.1, '7.0']
         | 
| 21 | 
            +
                    ruby: ['2.5', '2.6', '2.7', '3.0', '3.1']
         | 
| 22 | 
            +
                    rails: ['5.2', '6.0', '6.1', '7.0']
         | 
| 23 23 | 
             
                    exclude:
         | 
| 24 24 | 
             
                      # Rails 7.0 requires Ruby >=2.7
         | 
| 25 | 
            -
                      - ruby: 2.5
         | 
| 25 | 
            +
                      - ruby: '2.5'
         | 
| 26 26 | 
             
                        rails: '7.0'
         | 
| 27 | 
            -
                      - ruby: 2.6
         | 
| 27 | 
            +
                      - ruby: '2.6'
         | 
| 28 28 | 
             
                        rails: '7.0'
         | 
| 29 29 | 
             
                env:
         | 
| 30 30 | 
             
                  BUNDLE_GEMFILE: 'gemfiles/rails_${{ matrix.rails }}.gemfile'
         | 
| 31 31 | 
             
                steps:
         | 
| 32 | 
            -
                  - uses: actions/checkout@ | 
| 32 | 
            +
                  - uses: actions/checkout@v3
         | 
| 33 33 |  | 
| 34 34 | 
             
                  - name: Install the correct Ruby version
         | 
| 35 35 | 
             
                    uses: ruby/setup-ruby@v1
         | 
| 36 36 | 
             
                    with:
         | 
| 37 37 | 
             
                      ruby-version: ${{ matrix.ruby }}
         | 
| 38 38 | 
             
                      bundler-cache: true
         | 
| 39 | 
            -
                      rubygems:  | 
| 39 | 
            +
                      rubygems: '3.3.26'
         | 
| 40 40 |  | 
| 41 41 | 
             
                  - name: Prepare the virtual environment
         | 
| 42 42 | 
             
                    uses: hausgold/actions/ci@master
         | 
| @@ -53,7 +53,7 @@ jobs: | |
| 53 53 |  | 
| 54 54 | 
             
              trigger-docs:
         | 
| 55 55 | 
             
                name: Trigger the documentation upload
         | 
| 56 | 
            -
                runs-on: ubuntu- | 
| 56 | 
            +
                runs-on: ubuntu-22.04
         | 
| 57 57 | 
             
                timeout-minutes: 2
         | 
| 58 58 | 
             
                needs: test
         | 
| 59 59 | 
             
                if: github.ref == 'refs/heads/master'
         | 
    
        data/.rspec
    CHANGED
    
    
    
        data/.rubocop.yml
    CHANGED
    
    | @@ -1,13 +1,15 @@ | |
| 1 1 | 
             
            require:
         | 
| 2 2 | 
             
              - rubocop-rspec
         | 
| 3 3 |  | 
| 4 | 
            -
            Documentation:
         | 
| 4 | 
            +
            Style/Documentation:
         | 
| 5 5 | 
             
              Enabled: true
         | 
| 6 6 |  | 
| 7 7 | 
             
            AllCops:
         | 
| 8 | 
            +
              NewCops: enable
         | 
| 9 | 
            +
              SuggestExtensions: false
         | 
| 8 10 | 
             
              DisplayCopNames: true
         | 
| 9 11 | 
             
              TargetRubyVersion: 2.5
         | 
| 10 | 
            -
               | 
| 12 | 
            +
              TargetRailsVersion: 5.2
         | 
| 11 13 | 
             
              Exclude:
         | 
| 12 14 | 
             
                - bin/**/*
         | 
| 13 15 | 
             
                - vendor/**/*
         | 
| @@ -23,6 +25,10 @@ Metrics/BlockLength: | |
| 23 25 | 
             
                - '**/*.rake'
         | 
| 24 26 | 
             
                - doc/**/*.rb
         | 
| 25 27 |  | 
| 28 | 
            +
            # MFA is not yet enabled for our gems yet.
         | 
| 29 | 
            +
            Gemspec/RequireMFA:
         | 
| 30 | 
            +
              Enabled: false
         | 
| 31 | 
            +
             | 
| 26 32 | 
             
            # We stay with the original Ruby Style Guide recommendation.
         | 
| 27 33 | 
             
            Layout/LineLength:
         | 
| 28 34 | 
             
              Max: 80
         | 
    
        data/.simplecov
    CHANGED
    
    | @@ -1,5 +1,15 @@ | |
| 1 1 | 
             
            # frozen_string_literal: true
         | 
| 2 2 |  | 
| 3 | 
            +
            require 'simplecov-html'
         | 
| 4 | 
            +
            require 'simplecov_json_formatter'
         | 
| 5 | 
            +
             | 
| 6 | 
            +
            SimpleCov.formatters = SimpleCov::Formatter::MultiFormatter.new(
         | 
| 7 | 
            +
              [
         | 
| 8 | 
            +
                SimpleCov::Formatter::HTMLFormatter,
         | 
| 9 | 
            +
                SimpleCov::Formatter::JSONFormatter
         | 
| 10 | 
            +
              ]
         | 
| 11 | 
            +
            )
         | 
| 12 | 
            +
             | 
| 3 13 | 
             
            SimpleCov.start 'test_frameworks' do
         | 
| 4 14 | 
             
              add_filter '/vendor/bundle/'
         | 
| 5 15 | 
             
            end
         | 
    
        data/Appraisals
    CHANGED
    
    | @@ -1,25 +1,25 @@ | |
| 1 1 | 
             
            # frozen_string_literal: true
         | 
| 2 2 |  | 
| 3 3 | 
             
            appraise 'rails-5.2' do
         | 
| 4 | 
            -
              gem 'activejob', '5.2.0'
         | 
| 5 | 
            -
              gem 'activerecord', '5.2.0'
         | 
| 6 | 
            -
              gem 'activesupport', '5.2.0'
         | 
| 4 | 
            +
              gem 'activejob', '~> 5.2.0'
         | 
| 5 | 
            +
              gem 'activerecord', '~> 5.2.0'
         | 
| 6 | 
            +
              gem 'activesupport', '~> 5.2.0'
         | 
| 7 7 | 
             
            end
         | 
| 8 8 |  | 
| 9 9 | 
             
            appraise 'rails-6.0' do
         | 
| 10 | 
            -
              gem 'activejob', '6.0.0'
         | 
| 11 | 
            -
              gem 'activerecord', '6.0.0'
         | 
| 12 | 
            -
              gem 'activesupport', '6.0.0'
         | 
| 10 | 
            +
              gem 'activejob', '~> 6.0.0'
         | 
| 11 | 
            +
              gem 'activerecord', '~> 6.0.0'
         | 
| 12 | 
            +
              gem 'activesupport', '~> 6.0.0'
         | 
| 13 13 | 
             
            end
         | 
| 14 14 |  | 
| 15 15 | 
             
            appraise 'rails-6.1' do
         | 
| 16 | 
            -
              gem 'activejob', '6.1.0'
         | 
| 17 | 
            -
              gem 'activerecord', '6.1.0'
         | 
| 18 | 
            -
              gem 'activesupport', '6.1.0'
         | 
| 16 | 
            +
              gem 'activejob', '~> 6.1.0'
         | 
| 17 | 
            +
              gem 'activerecord', '~> 6.1.0'
         | 
| 18 | 
            +
              gem 'activesupport', '~> 6.1.0'
         | 
| 19 19 | 
             
            end
         | 
| 20 20 |  | 
| 21 21 | 
             
            appraise 'rails-7.0' do
         | 
| 22 | 
            -
              gem 'activejob', '7.0.0'
         | 
| 23 | 
            -
              gem 'activerecord', '7.0.0'
         | 
| 24 | 
            -
              gem 'activesupport', '7.0.0'
         | 
| 22 | 
            +
              gem 'activejob', '~> 7.0.0'
         | 
| 23 | 
            +
              gem 'activerecord', '~> 7.0.0'
         | 
| 24 | 
            +
              gem 'activesupport', '~> 7.0.0'
         | 
| 25 25 | 
             
            end
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,3 +1,12 @@ | |
| 1 | 
            -
            ###  | 
| 1 | 
            +
            ### 1.1.0
         | 
| 2 2 |  | 
| 3 | 
            -
            *  | 
| 3 | 
            +
            * Bundler >= 2.3 is from now on required as minimal version (#1)
         | 
| 4 | 
            +
            * Dropped support for Ruby < 2.5 (#1)
         | 
| 5 | 
            +
            * Dropped support for Rails < 5.2 (#1)
         | 
| 6 | 
            +
            * Updated all development/runtime gems to their latest
         | 
| 7 | 
            +
              Ruby 2.5 compatible version (#1)
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            ### 1.0.0
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            * Initial gem implementation
         | 
| 12 | 
            +
            * Documented the whole gem and all its features
         | 
    
        data/Dockerfile
    ADDED
    
    | @@ -0,0 +1,28 @@ | |
| 1 | 
            +
            FROM hausgold/ruby:2.5
         | 
| 2 | 
            +
            MAINTAINER Hermann Mayer <hermann.mayer@hausgold.de>
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            # Update system gem
         | 
| 5 | 
            +
            RUN gem update --system '3.3.26'
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            # Install system packages and the latest bundler
         | 
| 8 | 
            +
            RUN apt-get update -yqqq && \
         | 
| 9 | 
            +
              apt-get install -y \
         | 
| 10 | 
            +
                build-essential locales sudo vim \
         | 
| 11 | 
            +
                ca-certificates \
         | 
| 12 | 
            +
                bash-completion inotify-tools && \
         | 
| 13 | 
            +
              echo 'en_US.UTF-8 UTF-8' >> /etc/locale.gen && /usr/sbin/locale-gen && \
         | 
| 14 | 
            +
              gem install bundler -v '~> 2.3.0' --no-document --no-prerelease
         | 
| 15 | 
            +
             | 
| 16 | 
            +
            # Add new web user
         | 
| 17 | 
            +
            RUN mkdir /app && \
         | 
| 18 | 
            +
              adduser web --home /home/web --shell /bin/bash \
         | 
| 19 | 
            +
                --disabled-password --gecos ""
         | 
| 20 | 
            +
            COPY config/docker/* /home/web/
         | 
| 21 | 
            +
            RUN chown web:web -R /app /home/web /usr/local/bundle && \
         | 
| 22 | 
            +
              mkdir -p /home/web/.ssh
         | 
| 23 | 
            +
             | 
| 24 | 
            +
            # Set the root password and grant root access to web
         | 
| 25 | 
            +
            RUN echo 'root:root' | chpasswd
         | 
| 26 | 
            +
            RUN echo 'web ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
         | 
| 27 | 
            +
             | 
| 28 | 
            +
            WORKDIR /app
         | 
    
        data/Envfile
    ADDED
    
    
    
        data/LICENSE
    CHANGED
    
    
    
        data/Makefile
    CHANGED
    
    | @@ -21,19 +21,20 @@ BIN_DIR ?= bin | |
| 21 21 |  | 
| 22 22 | 
             
            # Host binaries
         | 
| 23 23 | 
             
            BASH ?= bash
         | 
| 24 | 
            +
            CHMOD ?= chmod
         | 
| 24 25 | 
             
            COMPOSE ?= docker-compose
         | 
| 26 | 
            +
            CURL ?= curl
         | 
| 25 27 | 
             
            ID ?= id
         | 
| 26 28 | 
             
            MKDIR ?= mkdir
         | 
| 27 29 | 
             
            RM ?= rm
         | 
| 28 | 
            -
            CURL ?= curl
         | 
| 29 | 
            -
            CHMOD ?= chmod
         | 
| 30 30 |  | 
| 31 31 | 
             
            # Container binaries
         | 
| 32 | 
            -
            BUNDLE ?= bundle
         | 
| 33 32 | 
             
            APPRAISAL ?= appraisal
         | 
| 33 | 
            +
            BUNDLE ?= bundle
         | 
| 34 | 
            +
            GUARD ?= guard
         | 
| 34 35 | 
             
            RAKE ?= rake
         | 
| 36 | 
            +
            RSPEC ?= rspec
         | 
| 35 37 | 
             
            RUBOCOP ?= rubocop
         | 
| 36 | 
            -
            GUARD ?= guard
         | 
| 37 38 | 
             
            YARD ?= yard
         | 
| 38 39 |  | 
| 39 40 | 
             
            # Files
         | 
| @@ -61,9 +62,13 @@ all: | |
| 61 62 | 
             
            	# Countless
         | 
| 62 63 | 
             
            	#
         | 
| 63 64 | 
             
            	# install            Install the dependencies
         | 
| 64 | 
            -
            	#  | 
| 65 | 
            +
            	# update             Update the local Gemset dependencies
         | 
| 65 66 | 
             
            	# clean              Clean the dependencies
         | 
| 66 67 | 
             
            	#
         | 
| 68 | 
            +
            	# test               Run the whole test suite
         | 
| 69 | 
            +
            	# test-style         Test the code styles
         | 
| 70 | 
            +
            	# watch              Watch for code changes and rerun the test suite
         | 
| 71 | 
            +
            	#
         | 
| 67 72 | 
             
            	# docs               Generate the Ruby documentation of the library
         | 
| 68 73 | 
             
            	# stats              Print the code statistics (library and test suite)
         | 
| 69 74 | 
             
            	# notes              Print all the notes from the code
         | 
| @@ -82,6 +87,12 @@ install: | |
| 82 87 | 
             
            	@$(call run-shell,$(BUNDLE) exec $(APPRAISAL) install)
         | 
| 83 88 | 
             
            	@$(MAKE) --no-print-directory .fetch-cloc
         | 
| 84 89 |  | 
| 90 | 
            +
            update:
         | 
| 91 | 
            +
            	# Install the dependencies
         | 
| 92 | 
            +
            	@$(MKDIR) -p $(VENDOR_DIR)
         | 
| 93 | 
            +
            	@$(call run-shell,$(BUNDLE) update)
         | 
| 94 | 
            +
            	@$(call run-shell,$(BUNDLE) exec $(APPRAISAL) update)
         | 
| 95 | 
            +
             | 
| 85 96 | 
             
            .fetch-cloc:
         | 
| 86 97 | 
             
            	# Fetch the CLOC ($(CLOC_VERSION)) binary
         | 
| 87 98 | 
             
            ifeq ("$(wildcard $(BIN_DIR)/cloc)","")
         | 
| @@ -89,6 +100,10 @@ ifeq ("$(wildcard $(BIN_DIR)/cloc)","") | |
| 89 100 | 
             
            	@$(CHMOD) +x '$(BIN_DIR)/cloc'
         | 
| 90 101 | 
             
            endif
         | 
| 91 102 |  | 
| 103 | 
            +
            watch: install .interactive
         | 
| 104 | 
            +
            	# Watch for code changes and rerun the test suite
         | 
| 105 | 
            +
            	@$(call run-shell,$(BUNDLE) exec $(GUARD))
         | 
| 106 | 
            +
             | 
| 92 107 | 
             
            test: \
         | 
| 93 108 | 
             
            	test-specs \
         | 
| 94 109 | 
             
            	test-style
         | 
| @@ -100,7 +115,7 @@ test-specs: .fetch-cloc | |
| 100 115 | 
             
            $(TEST_GEMFILES): GEMFILE=$(@:test-%=%)
         | 
| 101 116 | 
             
            $(TEST_GEMFILES):
         | 
| 102 117 | 
             
            	# Run the whole test suite ($(GEMFILE))
         | 
| 103 | 
            -
            	@$(call run-shell,$(BUNDLE) exec $(APPRAISAL) $(GEMFILE) $( | 
| 118 | 
            +
            	@$(call run-shell,$(BUNDLE) exec $(APPRAISAL) $(GEMFILE) $(RSPEC))
         | 
| 104 119 |  | 
| 105 120 | 
             
            test-style: \
         | 
| 106 121 | 
             
            	test-style-ruby
         | 
| @@ -109,13 +124,13 @@ test-style-ruby: | |
| 109 124 | 
             
            	# Run the static code analyzer (rubocop)
         | 
| 110 125 | 
             
            	@$(call run-shell,$(BUNDLE) exec $(RUBOCOP) -a)
         | 
| 111 126 |  | 
| 112 | 
            -
            watch: install .interactive
         | 
| 113 | 
            -
            	# Watch for code changes and rerun the test suite
         | 
| 114 | 
            -
            	@$(call run-shell,$(BUNDLE) exec $(GUARD))
         | 
| 115 | 
            -
             | 
| 116 127 | 
             
            clean:
         | 
| 117 128 | 
             
            	# Clean the dependencies
         | 
| 118 129 | 
             
            	@$(RM) -rf $(VENDOR_DIR)
         | 
| 130 | 
            +
            	@$(RM) -rf $(GEMFILES_DIR)/vendor
         | 
| 131 | 
            +
            	@$(RM) -rf $(GEMFILES_DIR)/*.lock
         | 
| 132 | 
            +
            	@$(RM) -rf .bundle .yardoc coverage pkg Gemfile.lock doc/api \
         | 
| 133 | 
            +
            		.rspec_status
         | 
| 119 134 |  | 
| 120 135 | 
             
            clean-containers:
         | 
| 121 136 | 
             
            	# Clean running containers
         | 
| @@ -123,7 +138,15 @@ ifeq ($(MAKE_ENV),docker) | |
| 123 138 | 
             
            	@$(COMPOSE) down
         | 
| 124 139 | 
             
            endif
         | 
| 125 140 |  | 
| 126 | 
            -
             | 
| 141 | 
            +
            clean-images:
         | 
| 142 | 
            +
            	# Clean build images
         | 
| 143 | 
            +
            ifeq ($(MAKE_ENV),docker)
         | 
| 144 | 
            +
            	@-$(DOCKER) images | $(GREP) $(shell basename "`pwd`") \
         | 
| 145 | 
            +
            		| $(AWK) '{ print $$3 }' \
         | 
| 146 | 
            +
            		| $(XARGS) -rn1 $(DOCKER) rmi -f
         | 
| 147 | 
            +
            endif
         | 
| 148 | 
            +
             | 
| 149 | 
            +
            distclean: clean clean-containers clean-images
         | 
| 127 150 |  | 
| 128 151 | 
             
            shell:
         | 
| 129 152 | 
             
            	# Run an interactive shell on the container
         | 
    
        data/README.md
    CHANGED
    
    | @@ -94,7 +94,7 @@ Afterwards the following Rake tasks are available to you: | |
| 94 94 |  | 
| 95 95 | 
             
            ```ruby
         | 
| 96 96 | 
             
            # All the configured values here represent the Gem defaults.
         | 
| 97 | 
            -
            Countless.configure do | | 
| 97 | 
            +
            Countless.configure do |config|
         | 
| 98 98 | 
             
              # The base/root path of the project to work on. This path is used as a #
         | 
| 99 99 | 
             
              # prefix to all relative path/file configurations. By default we check for a
         | 
| 100 100 | 
             
              # Rake invokation (Rakefile location), a Rails invokation (project root) or
         | 
| @@ -0,0 +1,48 @@ | |
| 1 | 
            +
            # ~/.bashrc: executed by bash(1) for non-login shells.
         | 
| 2 | 
            +
            # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
         | 
| 3 | 
            +
            # for examples
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            _GEM_PATHS=$(ls -d1 ${HOME}/.gem/ruby/*/bin 2>/dev/null | paste -sd ':')
         | 
| 6 | 
            +
            _APP_PATHS=$(ls -d1 /app/vendor/bundle/ruby/*/bin 2>/dev/null | paste -sd ':')
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            export PATH="${_GEM_PATHS}:${_APP_PATHS}:${PATH}"
         | 
| 9 | 
            +
            export PATH="/app/node_modules/.bin:${HOME}/.bin:/app/bin:${PATH}"
         | 
| 10 | 
            +
            export MAKE_ENV=baremetal
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            # Disable the autostart of all supervisord units
         | 
| 13 | 
            +
            sudo sed -i 's/autostart=.*/autostart=false/g' /etc/supervisor/conf.d/*
         | 
| 14 | 
            +
             | 
| 15 | 
            +
            # Start the supervisord (empty, no units)
         | 
| 16 | 
            +
            sudo supervisord >/dev/null 2>&1 &
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            # Wait for supervisord
         | 
| 19 | 
            +
            while ! supervisorctl status >/dev/null 2>&1; do sleep 1; done
         | 
| 20 | 
            +
             | 
| 21 | 
            +
            # Boot the mDNS stack
         | 
| 22 | 
            +
            echo '# Start the mDNS stack'
         | 
| 23 | 
            +
            sudo supervisorctl start dbus avahi
         | 
| 24 | 
            +
            echo
         | 
| 25 | 
            +
             | 
| 26 | 
            +
            function watch-make-test()
         | 
| 27 | 
            +
            {
         | 
| 28 | 
            +
              while [ 1 ]; do
         | 
| 29 | 
            +
                inotifywait --quiet -r `pwd` -e close_write --format '%e -> %w%f'
         | 
| 30 | 
            +
                make test
         | 
| 31 | 
            +
              done
         | 
| 32 | 
            +
            }
         | 
| 33 | 
            +
             | 
| 34 | 
            +
            function watch-make()
         | 
| 35 | 
            +
            {
         | 
| 36 | 
            +
              while [ 1 ]; do
         | 
| 37 | 
            +
                inotifywait --quiet -r `pwd` -e close_write --format '%e -> %w%f'
         | 
| 38 | 
            +
                make $@
         | 
| 39 | 
            +
              done
         | 
| 40 | 
            +
            }
         | 
| 41 | 
            +
             | 
| 42 | 
            +
            function watch-run()
         | 
| 43 | 
            +
            {
         | 
| 44 | 
            +
              while [ 1 ]; do
         | 
| 45 | 
            +
                inotifywait --quiet -r `pwd` -e close_write --format '%e -> %w%f'
         | 
| 46 | 
            +
                bash -c "$@"
         | 
| 47 | 
            +
              done
         | 
| 48 | 
            +
            }
         | 
| @@ -0,0 +1,17 @@ | |
| 1 | 
            +
            # mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
         | 
| 2 | 
            +
            "\e[1;5C": forward-word
         | 
| 3 | 
            +
            "\e[1;5D": backward-word
         | 
| 4 | 
            +
            "\e[5C": forward-word
         | 
| 5 | 
            +
            "\e[5D": backward-word
         | 
| 6 | 
            +
            "\e\e[C": forward-word
         | 
| 7 | 
            +
            "\e\e[D": backward-word
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            # handle common Home/End escape codes
         | 
| 10 | 
            +
            "\e[1~": beginning-of-line
         | 
| 11 | 
            +
            "\e[4~": end-of-line
         | 
| 12 | 
            +
            "\e[7~": beginning-of-line
         | 
| 13 | 
            +
            "\e[8~": end-of-line
         | 
| 14 | 
            +
            "\eOH": beginning-of-line
         | 
| 15 | 
            +
            "\eOF": end-of-line
         | 
| 16 | 
            +
            "\e[H": beginning-of-line
         | 
| 17 | 
            +
            "\e[F": end-of-line
         | 
    
        data/countless.gemspec
    CHANGED
    
    | @@ -5,40 +5,48 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) | |
| 5 5 | 
             
            require 'countless/version'
         | 
| 6 6 |  | 
| 7 7 | 
             
            Gem::Specification.new do |spec|
         | 
| 8 | 
            -
              spec.name | 
| 9 | 
            -
              spec.version | 
| 10 | 
            -
              spec.authors | 
| 11 | 
            -
              spec.email | 
| 12 | 
            -
             | 
| 13 | 
            -
              spec. | 
| 14 | 
            -
              spec. | 
| 15 | 
            -
             | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 18 | 
            -
              spec. | 
| 19 | 
            -
             | 
| 20 | 
            -
             | 
| 8 | 
            +
              spec.name = 'countless'
         | 
| 9 | 
            +
              spec.version = Countless::VERSION
         | 
| 10 | 
            +
              spec.authors = ['Hermann Mayer']
         | 
| 11 | 
            +
              spec.email = ['hermann.mayer92@gmail.com']
         | 
| 12 | 
            +
             | 
| 13 | 
            +
              spec.license = 'MIT'
         | 
| 14 | 
            +
              spec.summary = 'Code statistics/annotations helpers'
         | 
| 15 | 
            +
              spec.description = 'This gem includes reusable code statistics / ' \
         | 
| 16 | 
            +
                                 'annotations helpers / Rake tasks.'
         | 
| 17 | 
            +
             | 
| 18 | 
            +
              base_uri = "https://github.com/hausgold/#{spec.name}"
         | 
| 19 | 
            +
              spec.metadata = {
         | 
| 20 | 
            +
                'homepage_uri' => base_uri,
         | 
| 21 | 
            +
                'source_code_uri' => base_uri,
         | 
| 22 | 
            +
                'changelog_uri' => "#{base_uri}/blob/master/CHANGELOG.md",
         | 
| 23 | 
            +
                'bug_tracker_uri' => "#{base_uri}/issues",
         | 
| 24 | 
            +
                'documentation_uri' => "https://www.rubydoc.info/gems/#{spec.name}"
         | 
| 25 | 
            +
              }
         | 
| 26 | 
            +
             | 
| 27 | 
            +
              spec.files = `git ls-files -z`.split("\x0").reject do |f|
         | 
| 21 28 | 
             
                f.match(%r{^(test|spec|features)/})
         | 
| 22 29 | 
             
              end + ['bin/cloc']
         | 
| 23 | 
            -
             | 
| 24 | 
            -
              spec. | 
| 30 | 
            +
             | 
| 31 | 
            +
              spec.bindir = 'exe'
         | 
| 32 | 
            +
              spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
         | 
| 25 33 | 
             
              spec.require_paths = ['lib']
         | 
| 26 34 |  | 
| 27 35 | 
             
              spec.required_ruby_version = '>= 2.5'
         | 
| 28 36 |  | 
| 29 | 
            -
              spec.add_runtime_dependency 'activesupport', '>= 5.2 | 
| 30 | 
            -
              spec.add_runtime_dependency 'zeitwerk', '~> 2. | 
| 37 | 
            +
              spec.add_runtime_dependency 'activesupport', '>= 5.2'
         | 
| 38 | 
            +
              spec.add_runtime_dependency 'zeitwerk', '~> 2.6'
         | 
| 31 39 |  | 
| 32 | 
            -
              spec.add_development_dependency 'appraisal'
         | 
| 40 | 
            +
              spec.add_development_dependency 'appraisal', '~> 2.4'
         | 
| 33 41 | 
             
              spec.add_development_dependency 'benchmark-ips', '~> 2.10'
         | 
| 34 | 
            -
              spec.add_development_dependency 'bundler', ' | 
| 42 | 
            +
              spec.add_development_dependency 'bundler', '~> 2.3'
         | 
| 35 43 | 
             
              spec.add_development_dependency 'guard-rspec', '~> 4.7'
         | 
| 36 44 | 
             
              spec.add_development_dependency 'irb', '~> 1.2'
         | 
| 37 | 
            -
              spec.add_development_dependency 'rspec', '~> 3. | 
| 38 | 
            -
              spec.add_development_dependency 'rubocop', '~> 1. | 
| 45 | 
            +
              spec.add_development_dependency 'rspec', '~> 3.12'
         | 
| 46 | 
            +
              spec.add_development_dependency 'rubocop', '~> 1.28'
         | 
| 39 47 | 
             
              spec.add_development_dependency 'rubocop-rails', '~> 2.14'
         | 
| 40 48 | 
             
              spec.add_development_dependency 'rubocop-rspec', '~> 2.10'
         | 
| 41 | 
            -
              spec.add_development_dependency 'simplecov', ' | 
| 42 | 
            -
              spec.add_development_dependency 'yard', ' | 
| 43 | 
            -
              spec.add_development_dependency 'yard-activesupport-concern', ' | 
| 49 | 
            +
              spec.add_development_dependency 'simplecov', '>= 0.22'
         | 
| 50 | 
            +
              spec.add_development_dependency 'yard', '>= 0.9.28'
         | 
| 51 | 
            +
              spec.add_development_dependency 'yard-activesupport-concern', '>= 0.0.1'
         | 
| 44 52 | 
             
            end
         | 
    
        data/docker-compose.yml
    CHANGED
    
    
    
        data/gemfiles/rails_5.2.gemfile
    CHANGED
    
    
    
        data/gemfiles/rails_6.0.gemfile
    CHANGED
    
    
    
        data/gemfiles/rails_6.1.gemfile
    CHANGED
    
    
    
        data/gemfiles/rails_7.0.gemfile
    CHANGED
    
    
    
        data/lib/countless/statistics.rb
    CHANGED
    
    
    
        data/lib/countless/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: countless
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1. | 
| 4 | 
            +
              version: 1.1.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Hermann Mayer
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2023-01-18 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: activesupport
         | 
| @@ -16,42 +16,42 @@ dependencies: | |
| 16 16 | 
             
                requirements:
         | 
| 17 17 | 
             
                - - ">="
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: 5.2 | 
| 19 | 
            +
                    version: '5.2'
         | 
| 20 20 | 
             
              type: :runtime
         | 
| 21 21 | 
             
              prerelease: false
         | 
| 22 22 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 23 | 
             
                requirements:
         | 
| 24 24 | 
             
                - - ">="
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: 5.2 | 
| 26 | 
            +
                    version: '5.2'
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: zeitwerk
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 30 | 
             
                requirements:
         | 
| 31 31 | 
             
                - - "~>"
         | 
| 32 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            -
                    version: '2. | 
| 33 | 
            +
                    version: '2.6'
         | 
| 34 34 | 
             
              type: :runtime
         | 
| 35 35 | 
             
              prerelease: false
         | 
| 36 36 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 37 | 
             
                requirements:
         | 
| 38 38 | 
             
                - - "~>"
         | 
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            -
                    version: '2. | 
| 40 | 
            +
                    version: '2.6'
         | 
| 41 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 42 | 
             
              name: appraisal
         | 
| 43 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 44 | 
             
                requirements:
         | 
| 45 | 
            -
                - - " | 
| 45 | 
            +
                - - "~>"
         | 
| 46 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            -
                    version: ' | 
| 47 | 
            +
                    version: '2.4'
         | 
| 48 48 | 
             
              type: :development
         | 
| 49 49 | 
             
              prerelease: false
         | 
| 50 50 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 51 | 
             
                requirements:
         | 
| 52 | 
            -
                - - " | 
| 52 | 
            +
                - - "~>"
         | 
| 53 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            -
                    version: ' | 
| 54 | 
            +
                    version: '2.4'
         | 
| 55 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 56 | 
             
              name: benchmark-ips
         | 
| 57 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -70,22 +70,16 @@ dependencies: | |
| 70 70 | 
             
              name: bundler
         | 
| 71 71 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 72 72 | 
             
                requirements:
         | 
| 73 | 
            -
                - - " | 
| 74 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 75 | 
            -
                    version: '1.16'
         | 
| 76 | 
            -
                - - "<"
         | 
| 73 | 
            +
                - - "~>"
         | 
| 77 74 | 
             
                  - !ruby/object:Gem::Version
         | 
| 78 | 
            -
                    version: '3'
         | 
| 75 | 
            +
                    version: '2.3'
         | 
| 79 76 | 
             
              type: :development
         | 
| 80 77 | 
             
              prerelease: false
         | 
| 81 78 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 82 79 | 
             
                requirements:
         | 
| 83 | 
            -
                - - " | 
| 84 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 85 | 
            -
                    version: '1.16'
         | 
| 86 | 
            -
                - - "<"
         | 
| 80 | 
            +
                - - "~>"
         | 
| 87 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 88 | 
            -
                    version: '3'
         | 
| 82 | 
            +
                    version: '2.3'
         | 
| 89 83 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 90 84 | 
             
              name: guard-rspec
         | 
| 91 85 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -120,28 +114,28 @@ dependencies: | |
| 120 114 | 
             
                requirements:
         | 
| 121 115 | 
             
                - - "~>"
         | 
| 122 116 | 
             
                  - !ruby/object:Gem::Version
         | 
| 123 | 
            -
                    version: '3. | 
| 117 | 
            +
                    version: '3.12'
         | 
| 124 118 | 
             
              type: :development
         | 
| 125 119 | 
             
              prerelease: false
         | 
| 126 120 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 127 121 | 
             
                requirements:
         | 
| 128 122 | 
             
                - - "~>"
         | 
| 129 123 | 
             
                  - !ruby/object:Gem::Version
         | 
| 130 | 
            -
                    version: '3. | 
| 124 | 
            +
                    version: '3.12'
         | 
| 131 125 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 132 126 | 
             
              name: rubocop
         | 
| 133 127 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 134 128 | 
             
                requirements:
         | 
| 135 129 | 
             
                - - "~>"
         | 
| 136 130 | 
             
                  - !ruby/object:Gem::Version
         | 
| 137 | 
            -
                    version: '1. | 
| 131 | 
            +
                    version: '1.28'
         | 
| 138 132 | 
             
              type: :development
         | 
| 139 133 | 
             
              prerelease: false
         | 
| 140 134 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 141 135 | 
             
                requirements:
         | 
| 142 136 | 
             
                - - "~>"
         | 
| 143 137 | 
             
                  - !ruby/object:Gem::Version
         | 
| 144 | 
            -
                    version: '1. | 
| 138 | 
            +
                    version: '1.28'
         | 
| 145 139 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 146 140 | 
             
              name: rubocop-rails
         | 
| 147 141 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -174,48 +168,48 @@ dependencies: | |
| 174 168 | 
             
              name: simplecov
         | 
| 175 169 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 176 170 | 
             
                requirements:
         | 
| 177 | 
            -
                - - " | 
| 171 | 
            +
                - - ">="
         | 
| 178 172 | 
             
                  - !ruby/object:Gem::Version
         | 
| 179 | 
            -
                    version: '0. | 
| 173 | 
            +
                    version: '0.22'
         | 
| 180 174 | 
             
              type: :development
         | 
| 181 175 | 
             
              prerelease: false
         | 
| 182 176 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 183 177 | 
             
                requirements:
         | 
| 184 | 
            -
                - - " | 
| 178 | 
            +
                - - ">="
         | 
| 185 179 | 
             
                  - !ruby/object:Gem::Version
         | 
| 186 | 
            -
                    version: '0. | 
| 180 | 
            +
                    version: '0.22'
         | 
| 187 181 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 188 182 | 
             
              name: yard
         | 
| 189 183 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 190 184 | 
             
                requirements:
         | 
| 191 | 
            -
                - - " | 
| 185 | 
            +
                - - ">="
         | 
| 192 186 | 
             
                  - !ruby/object:Gem::Version
         | 
| 193 | 
            -
                    version: 0.9. | 
| 187 | 
            +
                    version: 0.9.28
         | 
| 194 188 | 
             
              type: :development
         | 
| 195 189 | 
             
              prerelease: false
         | 
| 196 190 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 197 191 | 
             
                requirements:
         | 
| 198 | 
            -
                - - " | 
| 192 | 
            +
                - - ">="
         | 
| 199 193 | 
             
                  - !ruby/object:Gem::Version
         | 
| 200 | 
            -
                    version: 0.9. | 
| 194 | 
            +
                    version: 0.9.28
         | 
| 201 195 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 202 196 | 
             
              name: yard-activesupport-concern
         | 
| 203 197 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 204 198 | 
             
                requirements:
         | 
| 205 | 
            -
                - - " | 
| 199 | 
            +
                - - ">="
         | 
| 206 200 | 
             
                  - !ruby/object:Gem::Version
         | 
| 207 201 | 
             
                    version: 0.0.1
         | 
| 208 202 | 
             
              type: :development
         | 
| 209 203 | 
             
              prerelease: false
         | 
| 210 204 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 211 205 | 
             
                requirements:
         | 
| 212 | 
            -
                - - " | 
| 206 | 
            +
                - - ">="
         | 
| 213 207 | 
             
                  - !ruby/object:Gem::Version
         | 
| 214 208 | 
             
                    version: 0.0.1
         | 
| 215 209 | 
             
            description: This gem includes reusable code statistics / annotations helpers / Rake
         | 
| 216 210 | 
             
              tasks.
         | 
| 217 211 | 
             
            email:
         | 
| 218 | 
            -
            - hermann. | 
| 212 | 
            +
            - hermann.mayer92@gmail.com
         | 
| 219 213 | 
             
            executables: []
         | 
| 220 214 | 
             
            extensions: []
         | 
| 221 215 | 
             
            extra_rdoc_files: []
         | 
| @@ -231,6 +225,8 @@ files: | |
| 231 225 | 
             
            - Appraisals
         | 
| 232 226 | 
             
            - CHANGELOG.md
         | 
| 233 227 | 
             
            - CODE_OF_CONDUCT.md
         | 
| 228 | 
            +
            - Dockerfile
         | 
| 229 | 
            +
            - Envfile
         | 
| 234 230 | 
             
            - Gemfile
         | 
| 235 231 | 
             
            - Guardfile
         | 
| 236 232 | 
             
            - LICENSE
         | 
| @@ -240,6 +236,9 @@ files: | |
| 240 236 | 
             
            - bin/cloc
         | 
| 241 237 | 
             
            - bin/console
         | 
| 242 238 | 
             
            - bin/setup
         | 
| 239 | 
            +
            - config/docker/.bash_profile
         | 
| 240 | 
            +
            - config/docker/.bashrc
         | 
| 241 | 
            +
            - config/docker/.inputrc
         | 
| 243 242 | 
             
            - countless.gemspec
         | 
| 244 243 | 
             
            - doc/assets/project.svg
         | 
| 245 244 | 
             
            - docker-compose.yml
         | 
| @@ -256,10 +255,15 @@ files: | |
| 256 255 | 
             
            - lib/countless/rake_tasks.rb
         | 
| 257 256 | 
             
            - lib/countless/statistics.rb
         | 
| 258 257 | 
             
            - lib/countless/version.rb
         | 
| 259 | 
            -
            homepage: | 
| 258 | 
            +
            homepage:
         | 
| 260 259 | 
             
            licenses:
         | 
| 261 260 | 
             
            - MIT
         | 
| 262 | 
            -
            metadata: | 
| 261 | 
            +
            metadata:
         | 
| 262 | 
            +
              homepage_uri: https://github.com/hausgold/countless
         | 
| 263 | 
            +
              source_code_uri: https://github.com/hausgold/countless
         | 
| 264 | 
            +
              changelog_uri: https://github.com/hausgold/countless/blob/master/CHANGELOG.md
         | 
| 265 | 
            +
              bug_tracker_uri: https://github.com/hausgold/countless/issues
         | 
| 266 | 
            +
              documentation_uri: https://www.rubydoc.info/gems/countless
         | 
| 263 267 | 
             
            post_install_message:
         | 
| 264 268 | 
             
            rdoc_options: []
         | 
| 265 269 | 
             
            require_paths:
         |