Skip to content

refactor: use 'native' as engine type for go#121

Merged
outofcoffee merged 1 commit into
developfrom
claude/rename-engine-type-native-y12Eb
May 21, 2026
Merged

refactor: use 'native' as engine type for go#121
outofcoffee merged 1 commit into
developfrom
claude/rename-engine-type-native-y12Eb

Conversation

@outofcoffee
Copy link
Copy Markdown
Contributor

@outofcoffee outofcoffee commented May 9, 2026

Rename the engine type identifier golang to native so the value tells users how the engine runs, alongside docker, jvm, and unpacked, rather than how it was built.

Summary

  • Rename EngineTypeGolang to EngineTypeNative and move the package from internal/engine/golang to internal/engine/native.
  • Update CLI help text, completions, plugin config, and docs to advertise native in place of golang.
  • Accept golang as a hidden alias wherever the engine type is configured (CLI -t flag, IMPOSTER_ENGINE, engine: in config), normalised at a single entry point.
  • Alias the viper key golang.binCache to native.binCache so existing configuration and IMPOSTER_GOLANG_BINCACHE continue to work.
  • Move the on-disk binary cache from ~/.imposter/engines/golang to ~/.imposter/engines/native.

Implementation details

The real artefacts published by the upstream engine project are intentionally left untouched: the binary name imposter-go, the GitHub repository, release URLs, and the imposter-go-plugins location all keep their existing identifiers. Only the user-facing engine label is renamed.

Existing cached binaries under the old path are orphaned and will be re-downloaded on next use; this was a deliberate trade-off to keep the cache directory aligned with the canonical name rather than maintaining a permanent compatibility shim.

@outofcoffee outofcoffee changed the base branch from main to develop May 9, 2026 22:11
@outofcoffee outofcoffee changed the title chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.13 to 1.32.14 refactor: use 'native' as engine type for go May 9, 2026
The previous 'golang' identifier described how the engine was built; 'native'
better describes how it runs to users (alongside docker, jvm, unpacked).

The legacy 'golang' value is silently accepted as a hidden alias on all user
input surfaces (CLI -t flag, IMPOSTER_ENGINE env var, engine: in config.yaml).
The viper key 'golang.binCache' is also aliased to 'native.binCache'. The
on-disk binary cache moves from ~/.imposter/engines/golang to .../native;
existing cached binaries will be re-downloaded on next use.

https://claude.ai/code/session_01SZZ9kd4vHzzsCQzxGbvW9d
@outofcoffee outofcoffee force-pushed the claude/rename-engine-type-native-y12Eb branch from b36ef8f to 0e2d649 Compare May 21, 2026 11:44
@outofcoffee outofcoffee self-assigned this May 21, 2026
@outofcoffee outofcoffee merged commit 2d65cc8 into develop May 21, 2026
8 checks passed
@outofcoffee outofcoffee deleted the claude/rename-engine-type-native-y12Eb branch May 21, 2026 12:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants