Skip to content

Move internal/linear to pkg/linear (expose as library) - #47

Merged
joa23 merged 1 commit into
mainfrom
expose-linear-as-library
Apr 27, 2026
Merged

Move internal/linear to pkg/linear (expose as library)#47
joa23 merged 1 commit into
mainfrom
expose-linear-as-library

Conversation

@joa23

Copy link
Copy Markdown
Owner

Summary

  • Moves internal/linear/ to pkg/linear/ so external Go modules can import the Linear client, core types, and query helpers
  • Rewrites all in-repo imports to the new path
  • No API/signature changes; CLI commands unaffected

Motivation

A separate project (Conductor) needs to depend on this module as a library. With everything under internal/, that's impossible — Go forbids cross-module internal/ imports. Per the user's direction, this exposes the existing packages directly rather than adding a re-export shim.

Test plan

  • go build ./...
  • go vet ./...
  • go test ./...
  • go build ./cmd/linear produces a working binary
  • Reviewer spot-checks that pkg/linear matches the prior internal/linear API

The linear client, core types, and query helpers were previously
under internal/, which Go forbids importing from external modules.
Moving them under pkg/linear/ exposes the same code as a public API
without changing any signatures.
No behavior changes; CLI commands continue to work via the new
import path.
@joa23
joa23 merged commit 29a3222 into mainApr 27, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@joa23