sass-embedded 0.7.11 → 0.7.12
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/ext/dependencies.rb +11 -0
- data/ext/extconf.rb +29 -24
- data/lib/sass/version.rb +1 -1
- metadata +10 -9
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: af7015aac4279ef9b4ea9a4cca2ca236e1722c70db19e4c21a35c9df64d5667e
         | 
| 4 | 
            +
              data.tar.gz: 8dcf794cff743d2e5f24b7bcd817d7bcef2867549fe0eda94634966a96e8e8c4
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 76a76058b210b7ae057ed71dd25f12625a04396c84c447dd8075ca4ff6ca4d52df009243cbd110009902fa727489e79bd20b1798670222cbe3c312f5ade5aa7d
         | 
| 7 | 
            +
              data.tar.gz: f5d40d128f9c9fbaee17728c9092b6b6c86f1908f474a94e6b43918cb2db389154fa246d4b2b9ee083e916d62ba19f9aec767e35cd8d7c39c25462e90a3f9d5c
         | 
    
        data/ext/dependencies.rb
    ADDED
    
    
    
        data/ext/extconf.rb
    CHANGED
    
    | @@ -5,13 +5,14 @@ require 'mkmf' | |
| 5 5 | 
             
            require 'json'
         | 
| 6 6 | 
             
            require 'open-uri'
         | 
| 7 7 | 
             
            require 'fileutils'
         | 
| 8 | 
            +
            require_relative './dependencies'
         | 
| 8 9 | 
             
            require_relative '../lib/sass/platform'
         | 
| 9 10 |  | 
| 10 11 | 
             
            module Sass
         | 
| 11 12 | 
             
              # The dependency downloader. This downloads all the dependencies during gem
         | 
| 12 13 | 
             
              # installation. The companion Makefile then unpacks all downloaded
         | 
| 13 | 
            -
              # dependencies. By default it downloads the  | 
| 14 | 
            -
              #  | 
| 14 | 
            +
              # dependencies. By default it downloads the release of each dependency
         | 
| 15 | 
            +
              # from GitHub releases.
         | 
| 15 16 | 
             
              #
         | 
| 16 17 | 
             
              # It is possible to specify an alternative source or version of each
         | 
| 17 18 | 
             
              # dependency. Local sources can be used for offline installation.
         | 
| @@ -23,9 +24,9 @@ module Sass | |
| 23 24 | 
             
              #     --with-sass-embedded-protocol=file:///path/to/embedded_sass.proto
         | 
| 24 25 | 
             
              class Extconf
         | 
| 25 26 | 
             
                def initialize
         | 
| 26 | 
            -
                  get_with_config('protoc', true) {  | 
| 27 | 
            -
                  get_with_config('sass-embedded', true) {  | 
| 28 | 
            -
                  get_with_config('sass-embedded-protocol', true) {  | 
| 27 | 
            +
                  get_with_config('protoc', true) { default_protoc }
         | 
| 28 | 
            +
                  get_with_config('sass-embedded', true) { default_sass_embedded }
         | 
| 29 | 
            +
                  get_with_config('sass-embedded-protocol', true) { default_sass_embedded_protocol }
         | 
| 29 30 | 
             
                end
         | 
| 30 31 |  | 
| 31 32 | 
             
                private
         | 
| @@ -65,31 +66,34 @@ module Sass | |
| 65 66 | 
             
                  raise "Failed to get: #{uri}"
         | 
| 66 67 | 
             
                end
         | 
| 67 68 |  | 
| 68 | 
            -
                def  | 
| 69 | 
            -
                   | 
| 69 | 
            +
                def resolve_tag_name(repo, *requirements, gh_release: true)
         | 
| 70 | 
            +
                  requirements = Gem::Requirement.create(*requirements)
         | 
| 71 | 
            +
             | 
| 72 | 
            +
                  if requirements == Gem::Requirement.default && gh_release
         | 
| 73 | 
            +
                    URI.parse("https://github.com/#{repo}/releases/latest").open do |file|
         | 
| 74 | 
            +
                      File.basename file.base_uri.to_s
         | 
| 75 | 
            +
                    end
         | 
| 76 | 
            +
                  else
         | 
| 70 77 | 
             
                    headers = {}
         | 
| 71 78 | 
             
                    headers['Authorization'] = "token #{ENV['GITHUB_TOKEN']}" if ENV['GITHUB_TOKEN']
         | 
| 72 | 
            -
                    if  | 
| 73 | 
            -
                      URI.parse("https://api.github.com/repos/#{repo}/ | 
| 74 | 
            -
                        JSON.parse(file.read)[ | 
| 79 | 
            +
                    if gh_release
         | 
| 80 | 
            +
                      URI.parse("https://api.github.com/repos/#{repo}/releases?per_page=100").open(headers) do |file|
         | 
| 81 | 
            +
                        JSON.parse(file.read).map { |release| release['tag_name'] }
         | 
| 75 82 | 
             
                      end
         | 
| 76 83 | 
             
                    else
         | 
| 77 | 
            -
                      URI.parse("https://api.github.com/repos/#{repo}/ | 
| 78 | 
            -
                        JSON.parse(file.read)[ | 
| 84 | 
            +
                      URI.parse("https://api.github.com/repos/#{repo}/tags?per_page=100").open(headers) do |file|
         | 
| 85 | 
            +
                        JSON.parse(file.read).map { |tag| tag['name'] }
         | 
| 79 86 | 
             
                      end
         | 
| 80 87 | 
             
                    end
         | 
| 81 | 
            -
             | 
| 82 | 
            -
             | 
| 83 | 
            -
                      File.basename file.base_uri.to_s
         | 
| 84 | 
            -
                    end
         | 
| 88 | 
            +
                      .find { |version| Gem::Version.correct?(version) && requirements.satisfied_by?(Gem::Version.new(version)) }
         | 
| 89 | 
            +
                      &.to_s
         | 
| 85 90 | 
             
                  end
         | 
| 86 91 | 
             
                end
         | 
| 87 92 |  | 
| 88 | 
            -
                def  | 
| 93 | 
            +
                def default_sass_embedded
         | 
| 89 94 | 
             
                  repo = 'sass/dart-sass-embedded'
         | 
| 90 95 |  | 
| 91 | 
            -
                   | 
| 92 | 
            -
                  tag_name = latest_release repo, prerelease: true
         | 
| 96 | 
            +
                  tag_name = resolve_tag_name(repo, Sass::Dependencies::REQUIREMENTS[repo])
         | 
| 93 97 |  | 
| 94 98 | 
             
                  os = case Platform::OS
         | 
| 95 99 | 
             
                       when 'darwin'
         | 
| @@ -125,10 +129,12 @@ module Sass | |
| 125 129 | 
             
                  "https://github.com/#{repo}/releases/download/#{tag_name}/sass_embedded-#{tag_name}-#{os}-#{arch}.#{ext}"
         | 
| 126 130 | 
             
                end
         | 
| 127 131 |  | 
| 128 | 
            -
                def  | 
| 132 | 
            +
                def default_protoc
         | 
| 129 133 | 
             
                  repo = 'protocolbuffers/protobuf'
         | 
| 130 134 |  | 
| 131 | 
            -
                   | 
| 135 | 
            +
                  spec = Gem::Dependency.new('google-protobuf', Sass::Dependencies::REQUIREMENTS[repo]).to_spec
         | 
| 136 | 
            +
             | 
| 137 | 
            +
                  tag_name = "v#{spec.version}"
         | 
| 132 138 |  | 
| 133 139 | 
             
                  os = case Platform::OS
         | 
| 134 140 | 
             
                       when 'darwin'
         | 
| @@ -172,11 +178,10 @@ module Sass | |
| 172 178 | 
             
                  "https://github.com/#{repo}/releases/download/#{tag_name}/protoc-#{tag_name[1..]}-#{os_arch}.#{ext}"
         | 
| 173 179 | 
             
                end
         | 
| 174 180 |  | 
| 175 | 
            -
                def  | 
| 181 | 
            +
                def default_sass_embedded_protocol
         | 
| 176 182 | 
             
                  repo = 'sass/embedded-protocol'
         | 
| 177 183 |  | 
| 178 | 
            -
                   | 
| 179 | 
            -
                  tag_name = latest_release repo, tag: true
         | 
| 184 | 
            +
                  tag_name = resolve_tag_name(repo, Sass::Dependencies::REQUIREMENTS[repo], gh_release: false)
         | 
| 180 185 |  | 
| 181 186 | 
             
                  "https://raw.githubusercontent.com/#{repo}/#{tag_name}/embedded_sass.proto"
         | 
| 182 187 | 
             
                end
         | 
    
        data/lib/sass/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: sass-embedded
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.7. | 
| 4 | 
            +
              version: 0.7.12
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - なつき
         | 
| 8 | 
            -
            autorequire:
         | 
| 8 | 
            +
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2021-08- | 
| 11 | 
            +
            date: 2021-08-20 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: google-protobuf
         | 
| @@ -16,14 +16,14 @@ dependencies: | |
| 16 16 | 
             
                requirements:
         | 
| 17 17 | 
             
                - - "~>"
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: 3.17 | 
| 19 | 
            +
                    version: '3.17'
         | 
| 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: 3.17 | 
| 26 | 
            +
                    version: '3.17'
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: bundler
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -148,6 +148,7 @@ files: | |
| 148 148 | 
             
            - LICENSE
         | 
| 149 149 | 
             
            - README.md
         | 
| 150 150 | 
             
            - ext/Makefile
         | 
| 151 | 
            +
            - ext/dependencies.rb
         | 
| 151 152 | 
             
            - ext/extconf.rb
         | 
| 152 153 | 
             
            - lib/sass.rb
         | 
| 153 154 | 
             
            - lib/sass/compile.rb
         | 
| @@ -165,8 +166,8 @@ homepage: https://github.com/ntkme/sass-embedded-host-ruby | |
| 165 166 | 
             
            licenses:
         | 
| 166 167 | 
             
            - MIT
         | 
| 167 168 | 
             
            metadata:
         | 
| 168 | 
            -
              source_code_uri: https://github.com/ntkme/sass-embedded-host-ruby/tree/v0.7. | 
| 169 | 
            -
            post_install_message:
         | 
| 169 | 
            +
              source_code_uri: https://github.com/ntkme/sass-embedded-host-ruby/tree/v0.7.12
         | 
| 170 | 
            +
            post_install_message: 
         | 
| 170 171 | 
             
            rdoc_options: []
         | 
| 171 172 | 
             
            require_paths:
         | 
| 172 173 | 
             
            - lib
         | 
| @@ -181,8 +182,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 181 182 | 
             
                - !ruby/object:Gem::Version
         | 
| 182 183 | 
             
                  version: '0'
         | 
| 183 184 | 
             
            requirements: []
         | 
| 184 | 
            -
            rubygems_version: 3.2. | 
| 185 | 
            -
            signing_key:
         | 
| 185 | 
            +
            rubygems_version: 3.2.26
         | 
| 186 | 
            +
            signing_key: 
         | 
| 186 187 | 
             
            specification_version: 4
         | 
| 187 188 | 
             
            summary: Use dart-sass with Ruby!
         | 
| 188 189 | 
             
            test_files: []
         |