k_ext-github 0.0.4 → 0.0.10
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/main.yml +7 -11
- data/.rubocop.yml +1 -1
- data/Gemfile +1 -1
- data/Rakefile +3 -3
- data/k_ext-github.gemspec +8 -6
- data/lib/k_ext/github/configuration.rb +3 -3
- data/lib/k_ext/github/github_configuration.rb +42 -0
- data/lib/k_ext/github/version.rb +1 -1
- data/lib/k_ext/github.rb +3 -1
- metadata +46 -17
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 56a5625531cc167664c085d8349057fd836de739bb3ad947b3d91663992ad701
         | 
| 4 | 
            +
              data.tar.gz: d3dc5e793e8b250343061b0e93d610a9966400b32f5d5b022629d9c8bc883461
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: b1237e3e08b3731fc908b7d8d70b826af3dca7cfdf9c00deb9d6a9a5272bdb06e24802b13082da28a3744ea5674f9dc69c84e40abb2918b5a197c3d4f989a629
         | 
| 7 | 
            +
              data.tar.gz: e14533d9407e791fcfcf849ec222c75d76f3e0a79aa5ef082bb316ea5eaaf0c101e20109a263e17458d2b3a69283d34ac8565826d5fbe875da2628b6e98050d2
         | 
    
        data/.github/workflows/main.yml
    CHANGED
    
    | @@ -1,5 +1,4 @@ | |
| 1 | 
            -
            #  | 
| 2 | 
            -
            # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
         | 
| 1 | 
            +
            # check https://www.githubstatus.com/ if any issues
         | 
| 3 2 | 
             
            name: Ruby
         | 
| 4 3 |  | 
| 5 4 | 
             
            on:
         | 
| @@ -9,22 +8,19 @@ on: | |
| 9 8 | 
             
                branches: [ master ]
         | 
| 10 9 |  | 
| 11 10 | 
             
            jobs:
         | 
| 12 | 
            -
               | 
| 13 | 
            -
             | 
| 11 | 
            +
              build:
         | 
| 14 12 | 
             
                runs-on: ubuntu-latest
         | 
| 15 | 
            -
             | 
| 13 | 
            +
                name: Ruby ${{ matrix.ruby }}
         | 
| 14 | 
            +
                strategy:
         | 
| 15 | 
            +
                  matrix:
         | 
| 16 | 
            +
                    ruby: ['2.7.1']
         | 
| 16 17 | 
             
                steps:
         | 
| 17 18 | 
             
                - uses: actions/checkout@v2
         | 
| 18 19 | 
             
                - name: Set up Ruby
         | 
| 19 | 
            -
                # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
         | 
| 20 | 
            -
                # change this to (see https://github.com/ruby/setup-ruby#versioning):
         | 
| 21 20 | 
             
                  uses: ruby/setup-ruby@v1
         | 
| 22 21 | 
             
                  with:
         | 
| 23 22 | 
             
                    ruby-version: 2.7.1
         | 
| 24 | 
            -
             | 
| 25 | 
            -
                  run: |
         | 
| 26 | 
            -
                    gem install bundler -v 2.2.5
         | 
| 27 | 
            -
                    bundle install
         | 
| 23 | 
            +
                    bundler-cache: true
         | 
| 28 24 | 
             
                - name: Run tests
         | 
| 29 25 | 
             
                  run: bundle exec rspec
         | 
| 30 26 | 
             
                - name: Run rubocop
         | 
    
        data/.rubocop.yml
    CHANGED
    
    
    
        data/Gemfile
    CHANGED
    
    
    
        data/Rakefile
    CHANGED
    
    | @@ -15,9 +15,9 @@ require 'rake/extensiontask' | |
| 15 15 | 
             
            desc 'Compile all the extensions'
         | 
| 16 16 | 
             
            task build: :compile
         | 
| 17 17 |  | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
             | 
| 18 | 
            +
            Rake::ExtensionTask.new('k_ext_github') do |ext|
         | 
| 19 | 
            +
              ext.lib_dir = 'lib/k_ext/github'
         | 
| 20 | 
            +
            end
         | 
| 21 21 |  | 
| 22 22 | 
             
            desc 'Publish the gem to RubyGems.org'
         | 
| 23 23 | 
             
            task :publish do
         | 
    
        data/k_ext-github.gemspec
    CHANGED
    
    | @@ -38,11 +38,13 @@ Gem::Specification.new do |spec| | |
| 38 38 | 
             
              spec.require_paths = ['lib']
         | 
| 39 39 | 
             
              # spec.extensions    = ['ext/k_ext_github/extconf.rb']
         | 
| 40 40 |  | 
| 41 | 
            -
              spec.add_dependency ' | 
| 42 | 
            -
              spec.add_dependency ' | 
| 43 | 
            -
              spec.add_dependency ' | 
| 44 | 
            -
              spec.add_dependency ' | 
| 45 | 
            -
             | 
| 46 | 
            -
              spec.add_dependency ' | 
| 41 | 
            +
              spec.add_dependency 'faraday-retry'
         | 
| 42 | 
            +
              spec.add_dependency 'k_config', '~> 0'
         | 
| 43 | 
            +
              spec.add_dependency 'k_log', '~> 0'
         | 
| 44 | 
            +
              spec.add_dependency 'k_type', '~> 0'
         | 
| 45 | 
            +
              spec.add_dependency 'k_util', '~> 0'
         | 
| 46 | 
            +
              spec.add_dependency 'octokit'
         | 
| 47 | 
            +
             | 
| 48 | 
            +
              spec.add_dependency 'virtus'
         | 
| 47 49 | 
             
              spec.metadata['rubygems_mfa_required'] = 'true'
         | 
| 48 50 | 
             
            end
         | 
| @@ -11,9 +11,9 @@ module KExt | |
| 11 11 | 
             
                  attr_accessor :personal_access_token_delete
         | 
| 12 12 |  | 
| 13 13 | 
             
                  def initialize
         | 
| 14 | 
            -
                    @user = ENV | 
| 15 | 
            -
                    @personal_access_token = ENV | 
| 16 | 
            -
                    @personal_access_token_delete = ENV | 
| 14 | 
            +
                    @user = ENV.fetch('GH_USER') { ENV.fetch('GITHUB_USER', nil) }
         | 
| 15 | 
            +
                    @personal_access_token = ENV.fetch('GITHUB_PERSONAL_ACCESS_TOKEN', nil)
         | 
| 16 | 
            +
                    @personal_access_token_delete = ENV.fetch('GITHUB_PERSONAL_ACCESS_TOKEN_DELETE', nil)
         | 
| 17 17 | 
             
                  end
         | 
| 18 18 | 
             
                end
         | 
| 19 19 | 
             
              end
         | 
| @@ -0,0 +1,42 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # Attach configuration to the KConfig module
         | 
| 4 | 
            +
            module KExt
         | 
| 5 | 
            +
              module Github
         | 
| 6 | 
            +
                # GitHub configuration extension for attachment to KConfig::Configuration
         | 
| 7 | 
            +
                module GitHubConfigurationExtension
         | 
| 8 | 
            +
                  def github
         | 
| 9 | 
            +
                    @github ||= GitHubConfiguration.new
         | 
| 10 | 
            +
                  end
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                  def github_debug
         | 
| 13 | 
            +
                    github.debug
         | 
| 14 | 
            +
                  end
         | 
| 15 | 
            +
                end
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                # GitHub Configuration
         | 
| 18 | 
            +
                class GitHubConfiguration
         | 
| 19 | 
            +
                  include KUtil::Data::InstanceVariablesToH
         | 
| 20 | 
            +
                  include KLog::Logging
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                  attr_accessor :user
         | 
| 23 | 
            +
                  attr_accessor :personal_access_token
         | 
| 24 | 
            +
                  attr_accessor :personal_access_token_delete
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                  def initialize
         | 
| 27 | 
            +
                    @user = ENV.fetch('GH_USER') { ENV.fetch('GITHUB_USER', nil) }
         | 
| 28 | 
            +
                    @personal_access_token = ENV.fetch('GITHUB_PERSONAL_ACCESS_TOKEN', nil)
         | 
| 29 | 
            +
                    @personal_access_token_delete = ENV.fetch('GITHUB_PERSONAL_ACCESS_TOKEN_DELETE', nil)
         | 
| 30 | 
            +
                  end
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                  def debug
         | 
| 33 | 
            +
                    log.section_heading 'GitHub Configuration'
         | 
| 34 | 
            +
                    log.kv 'user', user
         | 
| 35 | 
            +
                    log.kv 'personal_access_token', '***'
         | 
| 36 | 
            +
                    log.kv 'personal_access_token_delete', '***'
         | 
| 37 | 
            +
                  end
         | 
| 38 | 
            +
                end
         | 
| 39 | 
            +
              end
         | 
| 40 | 
            +
            end
         | 
| 41 | 
            +
             | 
| 42 | 
            +
            KConfig::Configuration.register(:github, KExt::Github::GitHubConfigurationExtension)
         | 
    
        data/lib/k_ext/github/version.rb
    CHANGED
    
    
    
        data/lib/k_ext/github.rb
    CHANGED
    
    | @@ -1,11 +1,13 @@ | |
| 1 1 | 
             
            # frozen_string_literal: true
         | 
| 2 2 |  | 
| 3 3 | 
             
            require 'virtus'
         | 
| 4 | 
            +
            require 'k_config'
         | 
| 4 5 | 
             
            require 'k_log'
         | 
| 5 6 | 
             
            require 'k_util'
         | 
| 6 7 |  | 
| 7 8 | 
             
            require 'k_ext/github/version'
         | 
| 8 9 | 
             
            require 'k_ext/github/configuration'
         | 
| 10 | 
            +
            require 'k_ext/github/github_configuration'
         | 
| 9 11 | 
             
            require 'k_ext/github/models/hook'
         | 
| 10 12 | 
             
            require 'k_ext/github/models/owner'
         | 
| 11 13 | 
             
            require 'k_ext/github/models/repository'
         | 
| @@ -33,7 +35,7 @@ module KExt | |
| 33 35 | 
             
              end
         | 
| 34 36 | 
             
            end
         | 
| 35 37 |  | 
| 36 | 
            -
            if ENV | 
| 38 | 
            +
            if ENV.fetch('KLUE_DEBUG', 'false').downcase == 'true'
         | 
| 37 39 | 
             
              namespace = 'KExt::Github::Version'
         | 
| 38 40 | 
             
              file_path = $LOADED_FEATURES.find { |f| f.include?('k_ext/github/version') }
         | 
| 39 41 | 
             
              version = KExt::Github::VERSION.ljust(9)
         | 
    
        metadata
    CHANGED
    
    | @@ -1,85 +1,113 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: k_ext-github
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.10
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - David Cruwys
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2022- | 
| 11 | 
            +
            date: 2022-07-14 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 14 | 
            +
              name: faraday-retry
         | 
| 15 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 | 
            +
                requirements:
         | 
| 17 | 
            +
                - - ">="
         | 
| 18 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            +
                    version: '0'
         | 
| 20 | 
            +
              type: :runtime
         | 
| 21 | 
            +
              prerelease: false
         | 
| 22 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 | 
            +
                requirements:
         | 
| 24 | 
            +
                - - ">="
         | 
| 25 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            +
                    version: '0'
         | 
| 27 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 28 | 
            +
              name: k_config
         | 
| 29 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 | 
            +
                requirements:
         | 
| 31 | 
            +
                - - "~>"
         | 
| 32 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            +
                    version: '0'
         | 
| 34 | 
            +
              type: :runtime
         | 
| 35 | 
            +
              prerelease: false
         | 
| 36 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 | 
            +
                requirements:
         | 
| 38 | 
            +
                - - "~>"
         | 
| 39 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            +
                    version: '0'
         | 
| 13 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 42 | 
             
              name: k_log
         | 
| 15 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 44 | 
             
                requirements:
         | 
| 17 45 | 
             
                - - "~>"
         | 
| 18 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: 0 | 
| 47 | 
            +
                    version: '0'
         | 
| 20 48 | 
             
              type: :runtime
         | 
| 21 49 | 
             
              prerelease: false
         | 
| 22 50 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 51 | 
             
                requirements:
         | 
| 24 52 | 
             
                - - "~>"
         | 
| 25 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: 0 | 
| 54 | 
            +
                    version: '0'
         | 
| 27 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 56 | 
             
              name: k_type
         | 
| 29 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 58 | 
             
                requirements:
         | 
| 31 59 | 
             
                - - "~>"
         | 
| 32 60 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            -
                    version: 0 | 
| 61 | 
            +
                    version: '0'
         | 
| 34 62 | 
             
              type: :runtime
         | 
| 35 63 | 
             
              prerelease: false
         | 
| 36 64 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 65 | 
             
                requirements:
         | 
| 38 66 | 
             
                - - "~>"
         | 
| 39 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            -
                    version: 0 | 
| 68 | 
            +
                    version: '0'
         | 
| 41 69 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 70 | 
             
              name: k_util
         | 
| 43 71 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 72 | 
             
                requirements:
         | 
| 45 73 | 
             
                - - "~>"
         | 
| 46 74 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            -
                    version: 0 | 
| 75 | 
            +
                    version: '0'
         | 
| 48 76 | 
             
              type: :runtime
         | 
| 49 77 | 
             
              prerelease: false
         | 
| 50 78 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 79 | 
             
                requirements:
         | 
| 52 80 | 
             
                - - "~>"
         | 
| 53 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            -
                    version: 0 | 
| 82 | 
            +
                    version: '0'
         | 
| 55 83 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 84 | 
             
              name: octokit
         | 
| 57 85 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 58 86 | 
             
                requirements:
         | 
| 59 | 
            -
                - - " | 
| 87 | 
            +
                - - ">="
         | 
| 60 88 | 
             
                  - !ruby/object:Gem::Version
         | 
| 61 | 
            -
                    version: ' | 
| 89 | 
            +
                    version: '0'
         | 
| 62 90 | 
             
              type: :runtime
         | 
| 63 91 | 
             
              prerelease: false
         | 
| 64 92 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 65 93 | 
             
                requirements:
         | 
| 66 | 
            -
                - - " | 
| 94 | 
            +
                - - ">="
         | 
| 67 95 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 | 
            -
                    version: ' | 
| 96 | 
            +
                    version: '0'
         | 
| 69 97 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 98 | 
             
              name: virtus
         | 
| 71 99 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 72 100 | 
             
                requirements:
         | 
| 73 | 
            -
                - - " | 
| 101 | 
            +
                - - ">="
         | 
| 74 102 | 
             
                  - !ruby/object:Gem::Version
         | 
| 75 | 
            -
                    version:  | 
| 103 | 
            +
                    version: '0'
         | 
| 76 104 | 
             
              type: :runtime
         | 
| 77 105 | 
             
              prerelease: false
         | 
| 78 106 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 79 107 | 
             
                requirements:
         | 
| 80 | 
            -
                - - " | 
| 108 | 
            +
                - - ">="
         | 
| 81 109 | 
             
                  - !ruby/object:Gem::Version
         | 
| 82 | 
            -
                    version:  | 
| 110 | 
            +
                    version: '0'
         | 
| 83 111 | 
             
            description: "    KExt/Github provides useful github extensions specifically for the
         | 
| 84 112 | 
             
              klueless code generator\n"
         | 
| 85 113 | 
             
            email:
         | 
| @@ -113,6 +141,7 @@ files: | |
| 113 141 | 
             
            - lib/k_ext/github.rb
         | 
| 114 142 | 
             
            - lib/k_ext/github/api.rb
         | 
| 115 143 | 
             
            - lib/k_ext/github/configuration.rb
         | 
| 144 | 
            +
            - lib/k_ext/github/github_configuration.rb
         | 
| 116 145 | 
             
            - lib/k_ext/github/models/hook.rb
         | 
| 117 146 | 
             
            - lib/k_ext/github/models/owner.rb
         | 
| 118 147 | 
             
            - lib/k_ext/github/models/repository.rb
         | 
| @@ -141,7 +170,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 141 170 | 
             
                - !ruby/object:Gem::Version
         | 
| 142 171 | 
             
                  version: '0'
         | 
| 143 172 | 
             
            requirements: []
         | 
| 144 | 
            -
            rubygems_version: 3. | 
| 173 | 
            +
            rubygems_version: 3.1.6
         | 
| 145 174 | 
             
            signing_key:
         | 
| 146 175 | 
             
            specification_version: 4
         | 
| 147 176 | 
             
            summary: KExt/Github provides useful github extensions specifically for the klueless
         |