datewari 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 +5 -5
- data/.github/workflows/ci.yml +75 -0
- data/.gitignore +1 -4
- data/CHANGELOG.md +21 -0
- data/Gemfile +0 -4
- data/README.md +1 -1
- data/datewari.gemspec +1 -3
- data/gemfiles/rails50.gemfile +2 -1
- data/gemfiles/rails51.gemfile +2 -1
- data/gemfiles/rails52.gemfile +5 -0
- data/gemfiles/rails60.gemfile +6 -0
- data/gemfiles/rails61.gemfile +5 -0
- data/gemfiles/rails70.gemfile +5 -0
- data/lib/datewari/helper.rb +2 -4
- data/lib/datewari/paginator/base.rb +3 -3
- data/lib/datewari/paginator.rb +1 -1
- data/lib/datewari/version.rb +1 -1
- metadata +11 -35
- data/.travis.yml +0 -20
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 | 
            -
             | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 2 | 
            +
            SHA256:
         | 
| 3 | 
            +
              metadata.gz: d4757bf96a70bad10143eb9c2b790b73d684c0053cd820ade449095cc185f53c
         | 
| 4 | 
            +
              data.tar.gz: a5c23c968a696c0dd6a9217d4b7b3c1a8c0d68559019cd0370122ea8a4689417
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 4be75ff27c66c363c231bed355e1942e7abc82f48619fdd1e12685af9e35b6c7f48d34980f2ce2d46b980a65ae525428865e0e326ac4d95a8e6c7665e3bbc5eb
         | 
| 7 | 
            +
              data.tar.gz: b4361ed839a63ee21015281b68a6af0a8ac075a907e885d2378a11d3a21e156ec96cc05e925fa92b1ceb9e25a24395f96b9317c3c4db9f59d016b01cf457ceba
         | 
| @@ -0,0 +1,75 @@ | |
| 1 | 
            +
            name: CI
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            on: [push, pull_request]
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            jobs:
         | 
| 6 | 
            +
              test:
         | 
| 7 | 
            +
                runs-on: ubuntu-20.04
         | 
| 8 | 
            +
                services:
         | 
| 9 | 
            +
                  postgres:
         | 
| 10 | 
            +
                    image: postgis/postgis:10-2.5
         | 
| 11 | 
            +
                    env:
         | 
| 12 | 
            +
                      POSTGRES_USER: postgres
         | 
| 13 | 
            +
                      POSTGRES_PASSWORD: postgres
         | 
| 14 | 
            +
                    ports:
         | 
| 15 | 
            +
                      - 5432:5432
         | 
| 16 | 
            +
                    options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
         | 
| 17 | 
            +
                  mysql:
         | 
| 18 | 
            +
                    image: mysql:5.7
         | 
| 19 | 
            +
                    env:
         | 
| 20 | 
            +
                      MYSQL_ALLOW_EMPTY_PASSWORD: yes
         | 
| 21 | 
            +
                    ports:
         | 
| 22 | 
            +
                      - 3306:3306
         | 
| 23 | 
            +
                    options: --health-cmd "mysqladmin ping -h localhost" --health-interval 20s --health-timeout 10s --health-retries 10
         | 
| 24 | 
            +
                strategy:
         | 
| 25 | 
            +
                  fail-fast: false
         | 
| 26 | 
            +
                  matrix:
         | 
| 27 | 
            +
                    ruby: [2.4, 2.5, 2.6, 2.7, '3.0', 3.1]
         | 
| 28 | 
            +
                    gemfile: ['rails50', 'rails51', 'rails52', 'rails60', 'rails61', 'rails70']
         | 
| 29 | 
            +
                    database: ['mysql', 'postgresql', 'postgis']
         | 
| 30 | 
            +
                    exclude:
         | 
| 31 | 
            +
                      - ruby: 2.4
         | 
| 32 | 
            +
                        gemfile: rails60
         | 
| 33 | 
            +
                      - ruby: 2.4
         | 
| 34 | 
            +
                        gemfile: rails61
         | 
| 35 | 
            +
                      - ruby: 2.4
         | 
| 36 | 
            +
                        gemfile: rails70
         | 
| 37 | 
            +
                      - ruby: 2.5
         | 
| 38 | 
            +
                        gemfile: rails70
         | 
| 39 | 
            +
                      - ruby: 2.6
         | 
| 40 | 
            +
                        gemfile: rails70
         | 
| 41 | 
            +
                      - ruby: 3.0
         | 
| 42 | 
            +
                        gemfile: rails50
         | 
| 43 | 
            +
                      - ruby: 3.0
         | 
| 44 | 
            +
                        gemfile: rails51
         | 
| 45 | 
            +
                      - ruby: 3.0
         | 
| 46 | 
            +
                        gemfile: rails52
         | 
| 47 | 
            +
                      - ruby: 3.1
         | 
| 48 | 
            +
                        gemfile: rails50
         | 
| 49 | 
            +
                      - ruby: 3.1
         | 
| 50 | 
            +
                        gemfile: rails51
         | 
| 51 | 
            +
                      - ruby: 3.1
         | 
| 52 | 
            +
                        gemfile: rails52
         | 
| 53 | 
            +
             | 
| 54 | 
            +
                name: ruby ${{ matrix.ruby }}, ${{ matrix.gemfile }}, ${{ matrix.database }}
         | 
| 55 | 
            +
             | 
| 56 | 
            +
                env:
         | 
| 57 | 
            +
                  DATABASE: ${{ matrix.database }}
         | 
| 58 | 
            +
                  POSTGRES_USER: postgres
         | 
| 59 | 
            +
                  POSTGRES_PASSWORD: postgres
         | 
| 60 | 
            +
                  BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
         | 
| 61 | 
            +
             | 
| 62 | 
            +
                steps:
         | 
| 63 | 
            +
                - uses: actions/checkout@v2
         | 
| 64 | 
            +
                - uses: ruby/setup-ruby@v1
         | 
| 65 | 
            +
                  with:
         | 
| 66 | 
            +
                    ruby-version: ${{ matrix.ruby }}
         | 
| 67 | 
            +
                    bundler-cache: true
         | 
| 68 | 
            +
                - name: Prepare test
         | 
| 69 | 
            +
                  run: |
         | 
| 70 | 
            +
                    cd spec/dummy
         | 
| 71 | 
            +
                    BUNDLE_GEMFILE=../../${{ env.BUNDLE_GEMFILE }} RAILS_ENV=test bundle exec rake db:create db:migrate db:seed
         | 
| 72 | 
            +
                    cd ../..
         | 
| 73 | 
            +
                - name: Run test
         | 
| 74 | 
            +
                  run: |
         | 
| 75 | 
            +
                    bundle exec rspec
         | 
    
        data/.gitignore
    CHANGED
    
    
    
        data/CHANGELOG.md
    ADDED
    
    | @@ -0,0 +1,21 @@ | |
| 1 | 
            +
            # CHANGELOG
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            ## 1.1.0
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            * Drop support for ruby 2.3.
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            ## 1.0.3
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            * Support postgis adapter.
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            ## 1.0.2
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            * Support ruby 2.5 and rails 5.2.
         | 
| 14 | 
            +
             | 
| 15 | 
            +
            ## 1.0.1
         | 
| 16 | 
            +
             | 
| 17 | 
            +
            * Remove constant from included module.
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            ## 1.0.0
         | 
| 20 | 
            +
             | 
| 21 | 
            +
            * First release.
         | 
    
        data/Gemfile
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    
    
        data/datewari.gemspec
    CHANGED
    
    | @@ -24,9 +24,7 @@ Gem::Specification.new do |spec| | |
| 24 24 | 
             
              spec.add_development_dependency "rails", ">= 5.0"
         | 
| 25 25 | 
             
              spec.add_development_dependency "mysql2"
         | 
| 26 26 | 
             
              spec.add_development_dependency "pg"
         | 
| 27 | 
            +
              spec.add_development_dependency "activerecord-postgis-adapter"
         | 
| 27 28 | 
             
              spec.add_development_dependency "rspec-rails"
         | 
| 28 | 
            -
              spec.add_development_dependency "rails-controller-testing"
         | 
| 29 29 | 
             
              spec.add_development_dependency "simplecov"
         | 
| 30 | 
            -
              spec.add_development_dependency "pry-rails"
         | 
| 31 | 
            -
              spec.add_development_dependency "pry-byebug"
         | 
| 32 30 | 
             
            end
         | 
    
        data/gemfiles/rails50.gemfile
    CHANGED
    
    
    
        data/gemfiles/rails51.gemfile
    CHANGED
    
    
    
        data/lib/datewari/helper.rb
    CHANGED
    
    | @@ -3,12 +3,10 @@ require_relative 'helper/parts_builder' | |
| 3 3 |  | 
| 4 4 | 
             
            module Datewari
         | 
| 5 5 | 
             
              module Helper
         | 
| 6 | 
            -
                I18N_KEY = 'date_paginate'
         | 
| 7 | 
            -
             | 
| 8 6 | 
             
                def date_paginate(rel, config = {})
         | 
| 9 7 | 
             
                  [:previous_label, :next_label, :page_gap, :link_separator,
         | 
| 10 8 | 
             
                   :yearly_format,  :monthly_format, :weekly_format, :daily_format].each do |key|
         | 
| 11 | 
            -
                    config[key] ||= I18n.t(" | 
| 9 | 
            +
                    config[key] ||= I18n.t("date_paginate.#{key}").html_safe
         | 
| 12 10 | 
             
                  end
         | 
| 13 11 |  | 
| 14 12 | 
             
                  config[:page_links] = true unless config.key?(:page_links)
         | 
| @@ -23,7 +21,7 @@ module Datewari | |
| 23 21 |  | 
| 24 22 | 
             
                def date_page_entries_info(rel)
         | 
| 25 23 | 
             
                  paginator = rel.paginator
         | 
| 26 | 
            -
                  i18n_key = " | 
| 24 | 
            +
                  i18n_key = "date_paginate.page_entries_info"
         | 
| 27 25 |  | 
| 28 26 | 
             
                  content_tag :div, class: 'pageEntryInfo' do
         | 
| 29 27 | 
             
                    case paginator.pages.size
         | 
| @@ -16,7 +16,7 @@ module Datewari | |
| 16 16 |  | 
| 17 17 | 
             
                  def paginate(start_date, end_date)
         | 
| 18 18 | 
             
                    @rel.where("#{quoted_column} BETWEEN ? AND ?", start_date, end_date)
         | 
| 19 | 
            -
                        .order("#{quoted_column} #{@order.to_s.upcase}")
         | 
| 19 | 
            +
                        .order(Arel.sql("#{quoted_column} #{@order.to_s.upcase}"))
         | 
| 20 20 | 
             
                  end
         | 
| 21 21 |  | 
| 22 22 | 
             
                  def total_entries
         | 
| @@ -59,8 +59,8 @@ module Datewari | |
| 59 59 | 
             
                    @rel.limit(nil)
         | 
| 60 60 | 
             
                        .offset(nil)
         | 
| 61 61 | 
             
                        .group(date_sql)
         | 
| 62 | 
            -
                        .reorder("#{date_sql} #{@order}")
         | 
| 63 | 
            -
                        .pluck(date_sql)
         | 
| 62 | 
            +
                        .reorder(Arel.sql("#{date_sql} #{@order}"))
         | 
| 63 | 
            +
                        .pluck(Arel.sql(date_sql))
         | 
| 64 64 | 
             
                  end
         | 
| 65 65 | 
             
                end
         | 
| 66 66 | 
             
              end
         | 
    
        data/lib/datewari/paginator.rb
    CHANGED
    
    | @@ -26,7 +26,7 @@ module Datewari | |
| 26 26 | 
             
                  @scope = options[:scope].to_sym
         | 
| 27 27 |  | 
| 28 28 | 
             
                  @query = case rel.klass.connection.adapter_name
         | 
| 29 | 
            -
                           when 'PostgreSQL'
         | 
| 29 | 
            +
                           when 'PostgreSQL', 'PostGIS'
         | 
| 30 30 | 
             
                             require_relative 'paginator/postgresql'
         | 
| 31 31 | 
             
                             Postgresql.new(rel, column, order, options)
         | 
| 32 32 | 
             
                           when 'Mysql2'
         | 
    
        data/lib/datewari/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: datewari
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1. | 
| 4 | 
            +
              version: 1.1.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Yoshikazu Kaneta
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2022-01-08 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: activerecord
         | 
| @@ -95,7 +95,7 @@ dependencies: | |
| 95 95 | 
             
                  - !ruby/object:Gem::Version
         | 
| 96 96 | 
             
                    version: '0'
         | 
| 97 97 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 98 | 
            -
              name:  | 
| 98 | 
            +
              name: activerecord-postgis-adapter
         | 
| 99 99 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 100 100 | 
             
                requirements:
         | 
| 101 101 | 
             
                - - ">="
         | 
| @@ -109,7 +109,7 @@ dependencies: | |
| 109 109 | 
             
                  - !ruby/object:Gem::Version
         | 
| 110 110 | 
             
                    version: '0'
         | 
| 111 111 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 112 | 
            -
              name: rails | 
| 112 | 
            +
              name: rspec-rails
         | 
| 113 113 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 114 114 | 
             
                requirements:
         | 
| 115 115 | 
             
                - - ">="
         | 
| @@ -136,34 +136,6 @@ dependencies: | |
| 136 136 | 
             
                - - ">="
         | 
| 137 137 | 
             
                  - !ruby/object:Gem::Version
         | 
| 138 138 | 
             
                    version: '0'
         | 
| 139 | 
            -
            - !ruby/object:Gem::Dependency
         | 
| 140 | 
            -
              name: pry-rails
         | 
| 141 | 
            -
              requirement: !ruby/object:Gem::Requirement
         | 
| 142 | 
            -
                requirements:
         | 
| 143 | 
            -
                - - ">="
         | 
| 144 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 145 | 
            -
                    version: '0'
         | 
| 146 | 
            -
              type: :development
         | 
| 147 | 
            -
              prerelease: false
         | 
| 148 | 
            -
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 149 | 
            -
                requirements:
         | 
| 150 | 
            -
                - - ">="
         | 
| 151 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 152 | 
            -
                    version: '0'
         | 
| 153 | 
            -
            - !ruby/object:Gem::Dependency
         | 
| 154 | 
            -
              name: pry-byebug
         | 
| 155 | 
            -
              requirement: !ruby/object:Gem::Requirement
         | 
| 156 | 
            -
                requirements:
         | 
| 157 | 
            -
                - - ">="
         | 
| 158 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 159 | 
            -
                    version: '0'
         | 
| 160 | 
            -
              type: :development
         | 
| 161 | 
            -
              prerelease: false
         | 
| 162 | 
            -
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 163 | 
            -
                requirements:
         | 
| 164 | 
            -
                - - ">="
         | 
| 165 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 166 | 
            -
                    version: '0'
         | 
| 167 139 | 
             
            description: An ActiveRecord extension to build date oriented pagination links such
         | 
| 168 140 | 
             
              as monthly pages and weekly pages
         | 
| 169 141 | 
             
            email:
         | 
| @@ -172,9 +144,10 @@ executables: [] | |
| 172 144 | 
             
            extensions: []
         | 
| 173 145 | 
             
            extra_rdoc_files: []
         | 
| 174 146 | 
             
            files:
         | 
| 147 | 
            +
            - ".github/workflows/ci.yml"
         | 
| 175 148 | 
             
            - ".gitignore"
         | 
| 176 149 | 
             
            - ".rspec"
         | 
| 177 | 
            -
            -  | 
| 150 | 
            +
            - CHANGELOG.md
         | 
| 178 151 | 
             
            - CODE_OF_CONDUCT.md
         | 
| 179 152 | 
             
            - Gemfile
         | 
| 180 153 | 
             
            - LICENSE
         | 
| @@ -183,6 +156,10 @@ files: | |
| 183 156 | 
             
            - datewari.gemspec
         | 
| 184 157 | 
             
            - gemfiles/rails50.gemfile
         | 
| 185 158 | 
             
            - gemfiles/rails51.gemfile
         | 
| 159 | 
            +
            - gemfiles/rails52.gemfile
         | 
| 160 | 
            +
            - gemfiles/rails60.gemfile
         | 
| 161 | 
            +
            - gemfiles/rails61.gemfile
         | 
| 162 | 
            +
            - gemfiles/rails70.gemfile
         | 
| 186 163 | 
             
            - lib/datewari.rb
         | 
| 187 164 | 
             
            - lib/datewari/helper.rb
         | 
| 188 165 | 
             
            - lib/datewari/helper/link_renderer.rb
         | 
| @@ -214,8 +191,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 214 191 | 
             
                - !ruby/object:Gem::Version
         | 
| 215 192 | 
             
                  version: '0'
         | 
| 216 193 | 
             
            requirements: []
         | 
| 217 | 
            -
             | 
| 218 | 
            -
            rubygems_version: 2.5.2.2
         | 
| 194 | 
            +
            rubygems_version: 3.1.2
         | 
| 219 195 | 
             
            signing_key: 
         | 
| 220 196 | 
             
            specification_version: 4
         | 
| 221 197 | 
             
            summary: An ActiveRecord extension to build date oriented pagination links
         | 
    
        data/.travis.yml
    DELETED
    
    | @@ -1,20 +0,0 @@ | |
| 1 | 
            -
            language: ruby
         | 
| 2 | 
            -
            rvm:
         | 
| 3 | 
            -
              - 2.3
         | 
| 4 | 
            -
              - 2.4
         | 
| 5 | 
            -
            services:
         | 
| 6 | 
            -
              - mysql
         | 
| 7 | 
            -
              - postgresql
         | 
| 8 | 
            -
            addons:
         | 
| 9 | 
            -
              postgresql: "9.5"
         | 
| 10 | 
            -
            env:
         | 
| 11 | 
            -
              - DATABASE=mysql
         | 
| 12 | 
            -
              - DATABASE=postgresql
         | 
| 13 | 
            -
            gemfile:
         | 
| 14 | 
            -
              - gemfiles/rails50.gemfile
         | 
| 15 | 
            -
              - gemfiles/rails51.gemfile
         | 
| 16 | 
            -
            before_script:
         | 
| 17 | 
            -
              - cd spec/dummy
         | 
| 18 | 
            -
              - bundle exec rake db:create db:migrate db:seed RAILS_ENV=test
         | 
| 19 | 
            -
              - cd ../..
         | 
| 20 | 
            -
            script: bundle exec rspec
         |