parse_packwerk 0.19.3 → 0.20.1
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/lib/parse_packwerk/configuration.rb +3 -1
- data/lib/parse_packwerk/package.rb +8 -6
- data/lib/parse_packwerk/package_todo.rb +6 -2
- metadata +18 -4
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: ee084135635a9bebb7054d2682ce58103b9c8feed46ba7da13dda05035ac1f6e
         | 
| 4 | 
            +
              data.tar.gz: 4a21594b8973d2c12676355710d3cfb805ffd317faf4e40218d275f5f0a0dfc8
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 5a23503f3b986ebf6b70608578461ab987b73f0a22ec7343137cb0953934049889f45639a5419215749900bdce30ab9679f835b3265194df3e76eef2a4af278d
         | 
| 7 | 
            +
              data.tar.gz: df52df866745a2de2acc946a136828c8d83e45d55f45538eb04b170fc599e2e28468da69b62ed85a83fae7d7b08cceeee13909b8b4a5d17b60d757615c23af23
         | 
| @@ -7,6 +7,7 @@ module ParsePackwerk | |
| 7 7 | 
             
                const :exclude, T::Array[String]
         | 
| 8 8 | 
             
                const :package_paths, T::Array[String]
         | 
| 9 9 | 
             
                const :requires, T::Array[String]
         | 
| 10 | 
            +
                const :raw, T::Hash[String, T.untyped]
         | 
| 10 11 |  | 
| 11 12 | 
             
                sig { returns(Configuration) }
         | 
| 12 13 | 
             
                def self.fetch
         | 
| @@ -22,7 +23,8 @@ module ParsePackwerk | |
| 22 23 | 
             
                  Configuration.new(
         | 
| 23 24 | 
             
                    exclude: excludes(raw_packwerk_config),
         | 
| 24 25 | 
             
                    package_paths: package_paths(raw_packwerk_config),
         | 
| 25 | 
            -
                    requires: raw_packwerk_config['require'] || []
         | 
| 26 | 
            +
                    requires: raw_packwerk_config['require'] || [],
         | 
| 27 | 
            +
                    raw: raw_packwerk_config
         | 
| 26 28 | 
             
                  )
         | 
| 27 29 | 
             
                end
         | 
| 28 30 |  | 
| @@ -11,6 +11,7 @@ module ParsePackwerk | |
| 11 11 | 
             
                const :metadata, MetadataYmlType
         | 
| 12 12 | 
             
                const :dependencies, T::Array[String]
         | 
| 13 13 | 
             
                const :config, T::Hash[T.untyped, T.untyped]
         | 
| 14 | 
            +
                const :violations, T::Array[Violation]
         | 
| 14 15 |  | 
| 15 16 | 
             
                sig { params(pathname: Pathname).returns(Package) }
         | 
| 16 17 | 
             
                def self.from(pathname)
         | 
| @@ -29,9 +30,15 @@ module ParsePackwerk | |
| 29 30 | 
             
                    metadata: package_loaded_yml[METADATA] || {},
         | 
| 30 31 | 
             
                    dependencies: package_loaded_yml[DEPENDENCIES] || [],
         | 
| 31 32 | 
             
                    config: package_loaded_yml,
         | 
| 33 | 
            +
                    violations: PackageTodo.from(PackageTodo.yml(directory(package_name))).violations
         | 
| 32 34 | 
             
                  )
         | 
| 33 35 | 
             
                end
         | 
| 34 36 |  | 
| 37 | 
            +
                sig { params(package_name: String).returns(::Pathname) }
         | 
| 38 | 
            +
                def self.directory(package_name)
         | 
| 39 | 
            +
                  Pathname.new(package_name).cleanpath
         | 
| 40 | 
            +
                end
         | 
| 41 | 
            +
             | 
| 35 42 | 
             
                sig { returns(Pathname) }
         | 
| 36 43 | 
             
                def yml
         | 
| 37 44 | 
             
                  Pathname.new(name).join(PACKAGE_YML_NAME).cleanpath
         | 
| @@ -39,7 +46,7 @@ module ParsePackwerk | |
| 39 46 |  | 
| 40 47 | 
             
                sig { returns(Pathname) }
         | 
| 41 48 | 
             
                def directory
         | 
| 42 | 
            -
                   | 
| 49 | 
            +
                  self.class.directory(self.name)
         | 
| 43 50 | 
             
                end
         | 
| 44 51 |  | 
| 45 52 | 
             
                sig { returns(Pathname) }
         | 
| @@ -56,10 +63,5 @@ module ParsePackwerk | |
| 56 63 | 
             
                def enforces_privacy?
         | 
| 57 64 | 
             
                  enforce_privacy
         | 
| 58 65 | 
             
                end
         | 
| 59 | 
            -
             | 
| 60 | 
            -
                sig { returns(T::Array[Violation]) }
         | 
| 61 | 
            -
                def violations
         | 
| 62 | 
            -
                  PackageTodo.for(self).violations
         | 
| 63 | 
            -
                end
         | 
| 64 66 | 
             
              end
         | 
| 65 67 | 
             
            end
         | 
| @@ -9,8 +9,7 @@ module ParsePackwerk | |
| 9 9 |  | 
| 10 10 | 
             
                sig { params(package: Package).returns(PackageTodo) }
         | 
| 11 11 | 
             
                def self.for(package)
         | 
| 12 | 
            -
                   | 
| 13 | 
            -
                  PackageTodo.from(package_todo_yml_pathname)
         | 
| 12 | 
            +
                  PackageTodo.from(self.yml(package.directory))
         | 
| 14 13 | 
             
                end
         | 
| 15 14 |  | 
| 16 15 | 
             
                sig { params(pathname: Pathname).returns(PackageTodo) }
         | 
| @@ -42,5 +41,10 @@ module ParsePackwerk | |
| 42 41 | 
             
                    )
         | 
| 43 42 | 
             
                  end
         | 
| 44 43 | 
             
                end
         | 
| 44 | 
            +
                
         | 
| 45 | 
            +
                sig { params(dirname: Pathname).returns(Pathname) }
         | 
| 46 | 
            +
                def self.yml(dirname)
         | 
| 47 | 
            +
                  dirname.join(PACKAGE_TODO_YML_NAME).cleanpath
         | 
| 48 | 
            +
                end
         | 
| 45 49 | 
             
              end
         | 
| 46 50 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: parse_packwerk
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.20.1
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Gusto Engineers
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2023- | 
| 11 | 
            +
            date: 2023-11-21 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: sorbet-runtime
         | 
| @@ -30,14 +30,28 @@ dependencies: | |
| 30 30 | 
             
                requirements:
         | 
| 31 31 | 
             
                - - "~>"
         | 
| 32 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            -
                    version: 2.2 | 
| 33 | 
            +
                    version: '2.2'
         | 
| 34 34 | 
             
              type: :development
         | 
| 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.2 | 
| 40 | 
            +
                    version: '2.2'
         | 
| 41 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 42 | 
            +
              name: pry
         | 
| 43 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 | 
            +
                requirements:
         | 
| 45 | 
            +
                - - ">="
         | 
| 46 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            +
                    version: '0'
         | 
| 48 | 
            +
              type: :development
         | 
| 49 | 
            +
              prerelease: false
         | 
| 50 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 | 
            +
                requirements:
         | 
| 52 | 
            +
                - - ">="
         | 
| 53 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            +
                    version: '0'
         | 
| 41 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 56 | 
             
              name: rake
         | 
| 43 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         |