ddbuffer 0.1.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Gemfile +1 -0
- data/NEWS.md +9 -0
- data/README.md +5 -0
- data/lib/ddbuffer/version.rb +1 -1
- data/lib/ddbuffer.rb +1 -1
- data/scripts/release +100 -0
- data/spec/spec_helper.rb +6 -0
- metadata +5 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 18a7511205723f69c3f1975f528b5c7c77478cf7
         | 
| 4 | 
            +
              data.tar.gz: 4cbd691685cc43fb2f8cd7500647497871224a12
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 4e436cecf19bdd288fa688bacd4b05ff0b46abb7e02c9e1082073102be4c7d516dcfbb584a65f7b455d077206e45febd00f50589fa3879e091ff5aa82c64cc93
         | 
| 7 | 
            +
              data.tar.gz: 228c9d71c3aee58d6206cd249a46d844bfeac8385dedf16f1e19b842257497f5c3597233c0f28963900c60bf18b3064fb3d897f2f5f6cbb8ef6720cdd177cbea
         | 
    
        data/.gitignore
    CHANGED
    
    
    
        data/Gemfile
    CHANGED
    
    
    
        data/NEWS.md
    ADDED
    
    
    
        data/README.md
    CHANGED
    
    | @@ -1,3 +1,8 @@ | |
| 1 | 
            +
            [](http://rubygems.org/gems/ddbuffer)
         | 
| 2 | 
            +
            [](https://travis-ci.org/ddfreyne/ddbuffer)
         | 
| 3 | 
            +
            [](https://codeclimate.com/github/ddfreyne/ddbuffer)
         | 
| 4 | 
            +
            [](https://codecov.io/gh/ddfreyne/ddbuffer)
         | 
| 5 | 
            +
             | 
| 1 6 | 
             
            # DDBuffer
         | 
| 2 7 |  | 
| 3 8 | 
             
            Provides a way to buffer Ruby enumerables/enumerators.
         | 
    
        data/lib/ddbuffer/version.rb
    CHANGED
    
    
    
        data/lib/ddbuffer.rb
    CHANGED
    
    
    
        data/scripts/release
    ADDED
    
    | @@ -0,0 +1,100 @@ | |
| 1 | 
            +
            #!/usr/bin/env ruby
         | 
| 2 | 
            +
            # frozen_string_literal: true
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            require 'fileutils'
         | 
| 5 | 
            +
            require 'octokit'
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            CONFIG_GEM_NAME = 'ddbuffer'
         | 
| 8 | 
            +
            CONFIG_REPO_NAME = 'ddfreyne/ddbuffer'
         | 
| 9 | 
            +
            CONFIG_VERSION_FILE = '../lib/ddbuffer/version'
         | 
| 10 | 
            +
            CONFIG_VERSION_PROC = -> { DDBuffer::VERSION }
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            def run(*args)
         | 
| 13 | 
            +
              puts 'I will execute the following:'
         | 
| 14 | 
            +
              puts '    ' + args.map { |a| a =~ /\s/ ? a.inspect : a }.join(' ')
         | 
| 15 | 
            +
              print 'Is this correct? [y/N] '
         | 
| 16 | 
            +
              res = gets
         | 
| 17 | 
            +
              unless res.strip.casecmp('y').zero?
         | 
| 18 | 
            +
                warn 'Answer was not Y; release aborted.'
         | 
| 19 | 
            +
                exit 1
         | 
| 20 | 
            +
              end
         | 
| 21 | 
            +
             | 
| 22 | 
            +
              system('echo', *args)
         | 
| 23 | 
            +
              system(*args)
         | 
| 24 | 
            +
             | 
| 25 | 
            +
              print 'Continue? [y/N] '
         | 
| 26 | 
            +
              res = gets
         | 
| 27 | 
            +
              unless res.strip.casecmp('y').zero?
         | 
| 28 | 
            +
                warn 'Answer was not Y; release aborted.'
         | 
| 29 | 
            +
                exit 1
         | 
| 30 | 
            +
              end
         | 
| 31 | 
            +
            end
         | 
| 32 | 
            +
             | 
| 33 | 
            +
            puts '=== Logging in to GitHub’s API…'
         | 
| 34 | 
            +
            client = Octokit::Client.new(netrc: true)
         | 
| 35 | 
            +
            puts
         | 
| 36 | 
            +
             | 
| 37 | 
            +
            puts '=== Deleting old *.gem files…'
         | 
| 38 | 
            +
            Dir['*.gem'].each do |fn|
         | 
| 39 | 
            +
              puts "  #{fn}…"
         | 
| 40 | 
            +
              FileUtils.rm_f(fn)
         | 
| 41 | 
            +
            end
         | 
| 42 | 
            +
            puts
         | 
| 43 | 
            +
             | 
| 44 | 
            +
            puts '=== Verifying presence of release date…'
         | 
| 45 | 
            +
            unless File.readlines('NEWS.md').drop(2).first =~ / \(\d{4}-\d{2}-\d{2}\)$/
         | 
| 46 | 
            +
              warn 'No proper release date found!'
         | 
| 47 | 
            +
              exit 1
         | 
| 48 | 
            +
            end
         | 
| 49 | 
            +
            puts
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            puts '=== Building new gem…'
         | 
| 52 | 
            +
            run('gem', 'build', "#{CONFIG_GEM_NAME}.gemspec")
         | 
| 53 | 
            +
            puts
         | 
| 54 | 
            +
             | 
| 55 | 
            +
            puts '=== Reading version…'
         | 
| 56 | 
            +
            require_relative CONFIG_VERSION_FILE
         | 
| 57 | 
            +
            puts "Version = #{CONFIG_VERSION_PROC.call}"
         | 
| 58 | 
            +
            puts
         | 
| 59 | 
            +
             | 
| 60 | 
            +
            puts '=== Verifying that release does not yet exist…'
         | 
| 61 | 
            +
            releases = client.releases(CONFIG_REPO_NAME)
         | 
| 62 | 
            +
            release = releases.find { |r| r.tag_name == CONFIG_VERSION_PROC.call }
         | 
| 63 | 
            +
            if release
         | 
| 64 | 
            +
              warn 'Release already exists!'
         | 
| 65 | 
            +
              warn 'ABORTED!'
         | 
| 66 | 
            +
              exit 1
         | 
| 67 | 
            +
            end
         | 
| 68 | 
            +
            puts
         | 
| 69 | 
            +
             | 
| 70 | 
            +
            puts '=== Creating Git tag…'
         | 
| 71 | 
            +
            run('git', 'tag', '--sign', '--annotate', CONFIG_VERSION_PROC.call, '--message', "Version #{CONFIG_VERSION_PROC.call}")
         | 
| 72 | 
            +
            puts
         | 
| 73 | 
            +
             | 
| 74 | 
            +
            puts '=== Pushing Git data…'
         | 
| 75 | 
            +
            run('git', 'push', 'origin', '--tags')
         | 
| 76 | 
            +
            puts
         | 
| 77 | 
            +
             | 
| 78 | 
            +
            puts '=== Pushing gem…'
         | 
| 79 | 
            +
            run('gem', 'push', "#{CONFIG_GEM_NAME}-#{CONFIG_VERSION_PROC.call}.gem")
         | 
| 80 | 
            +
            puts
         | 
| 81 | 
            +
             | 
| 82 | 
            +
            puts '=== Reading release notes…'
         | 
| 83 | 
            +
            release_notes =
         | 
| 84 | 
            +
              File.readlines('NEWS.md')
         | 
| 85 | 
            +
                  .drop(4)
         | 
| 86 | 
            +
                  .take_while { |l| l !~ /^## / }
         | 
| 87 | 
            +
                  .join
         | 
| 88 | 
            +
            puts
         | 
| 89 | 
            +
             | 
| 90 | 
            +
            puts '=== Creating release on GitHub…'
         | 
| 91 | 
            +
            sleep 3 # Give GitHub some time to detect the new tag
         | 
| 92 | 
            +
            is_prerelease = CONFIG_VERSION_PROC.call =~ /a|b|rc/ || CONFIG_VERSION_PROC.call =~ /^0/
         | 
| 93 | 
            +
            client.create_release(
         | 
| 94 | 
            +
              CONFIG_REPO_NAME, CONFIG_VERSION_PROC.call,
         | 
| 95 | 
            +
              prerelease: !is_prerelease.nil?,
         | 
| 96 | 
            +
              body: release_notes
         | 
| 97 | 
            +
            )
         | 
| 98 | 
            +
            puts
         | 
| 99 | 
            +
             | 
| 100 | 
            +
            puts 'DONE!'
         | 
    
        data/spec/spec_helper.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: ddbuffer
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version:  | 
| 4 | 
            +
              version: 1.0.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Denis Defreyne
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2017- | 
| 11 | 
            +
            date: 2017-10-21 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         | 
| @@ -38,11 +38,13 @@ files: | |
| 38 38 | 
             
            - CODE_OF_CONDUCT.md
         | 
| 39 39 | 
             
            - Gemfile
         | 
| 40 40 | 
             
            - LICENSE.txt
         | 
| 41 | 
            +
            - NEWS.md
         | 
| 41 42 | 
             
            - README.md
         | 
| 42 43 | 
             
            - Rakefile
         | 
| 43 44 | 
             
            - ddbuffer.gemspec
         | 
| 44 45 | 
             
            - lib/ddbuffer.rb
         | 
| 45 46 | 
             
            - lib/ddbuffer/version.rb
         | 
| 47 | 
            +
            - scripts/release
         | 
| 46 48 | 
             
            - spec/ddbuffer_spec.rb
         | 
| 47 49 | 
             
            - spec/spec_helper.rb
         | 
| 48 50 | 
             
            homepage: https://github.com/ddfreyne/ddbuffer
         | 
| @@ -65,7 +67,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 65 67 | 
             
                  version: '0'
         | 
| 66 68 | 
             
            requirements: []
         | 
| 67 69 | 
             
            rubyforge_project: 
         | 
| 68 | 
            -
            rubygems_version: 2.6. | 
| 70 | 
            +
            rubygems_version: 2.6.14
         | 
| 69 71 | 
             
            signing_key: 
         | 
| 70 72 | 
             
            specification_version: 4
         | 
| 71 73 | 
             
            summary: Buffer enumerables
         |