English | 简体中文
Expose selected internal Go packages from microsoft/typescript-go under stable import paths so external modules can depend on them.
This repository mirrors and adapts microsoft/typescript-go/internal into pkg/... to make those packages importable as github.com/buke/typescript-go-internal/pkg/.... It keeps close parity with upstream while remaining self-contained for CI and external use.
Notes:
- This project is independent and not affiliated with Microsoft.
- The API surface is still evolving (v0 semantics): breaking changes may occur while tracking upstream.
pkg/— mirrored internal packages made public and importable.testdata/— upstream fixtures and baselines copied frommicrosoft/typescript-go/testdatafor reproducible tests.scripts/sync-internal.sh— sync script to copy sources, rewrite imports, normalize//go:generate, and bring testdata..github/workflows/— CI workflows, including tests and coverage upload.
The sync script performs:
- Copy
microsoft/typescript-go/internal→pkg - Rewrite imports from
.../internal/...→.../pkg/... - Normalize
//go:generatedirectives (usego run <module>@latest) - Copy
microsoft/typescript-go/testdata→testdata - Run
go mod tidypre/post generation
Command:
./scripts/sync-internal.shAfter syncing, commit changes normally. Baseline files live under testdata/baselines.
- GitHub Actions runs
go testwith coverage on pushes and PRs. - Coverage is uploaded to Codecov: https://codecov.io/gh/buke/typescript-go-internal
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
This repository contains derivative works based on:
microsoft/typescript-go(Apache 2.0)
Copyright (c) Microsoft Corporationmicrosoft/TypeScript(Apache 2.0)
Copyright (c) Microsoft Corporation
See NOTICE for full attribution details.
This project is not affiliated with or endorsed by Microsoft Corporation.