Skip to content

v3 migration does not include .PackagePath in deprecations #1090

@mattdowdell

Description

@mattdowdell

Description

I ran mockery migrate to update my v2 config to v3. This configuration included .PackageName and .PackagePath which have been renamed to .SrcPackageName and .SrcPackagePath respectively. However, only .SrcPackageName is called out in the deprecations table.

Reproducer

Have a .mockery.yaml file as follows:

---
# https://vektra.github.io/mockery/latest/configuration/

dir: 'mocks/{{ trimPrefix .PackagePath "example.com/repo/internal/" | dir }}/mock{{ .PackagePath | base }}'
disable-version-string: true
filename: "{{ .InterfaceName | snakecase }}.go"
issue-845-fix: true
mockname: "{{ .InterfaceName }}"
outpkg: "mock{{ .PackageName }}"
resolve-type-alias: false
with-expecter: true

packages:
  # (internal dependencies here)
  # external dependencies
  connectrpc.com/connect:
    config:
      dir: 'mocks/external/{{ dir .PackagePath }}/mock{{ .PackagePath | base }}'
    interfaces:
      AnyRequest:
      StreamingHandlerConn:
      StreamingHandlerFunc:
      UnaryFunc:

Running mockery migrate outputs these deprecations only

╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                  Deprecations                                                  │
├────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ IDX  DEPRECATION TYPE      MESSAGE                                                                             │
├────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ 0    template-variable     PackageName template variable has been deleted. Use "{{ .SrcPackageName }}" instead │
├────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ 1    deprecated-parameter  `disable-func-mocks` permanently enabled in v3.                                     │
├────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ 2    deprecated-parameter  `fail-on-missing` is permanently set to True in v3.                                 │
├────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ 3    deprecated-parameter  `disable-version-string` is permanently set to True in v3.                          │
├────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ 4    deprecated-parameter  `issue-845-fix` is permanently set to True in v3.                                   │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Expected behavior

.PackagePath is called out in the list of renamed/deprecated variables.

Mockery version

v3.5.0

Installation Mechanism

  • go get
  • Pre-built release
  • homebrew
  • Other: bingo get

Go version

Version of Go used to build mockery from source (if applicable): 1.24.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions