Commit Graph
11 Commits
Author SHA1 Message Date
eSliderandCursor 26aa51360b fix(ci): pin lint toolchain to Go 1.26
Use a modern Go toolchain for golangci-lint to avoid typecheck failures reported when the runner stable channel lags behind supported language features.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-02 20:13:36 +01:00
eSliderandCursor 76b4f499c0 fix(ci): unblock release and cross-platform test pipeline
Align golangci config with CI runner support, skip unsupported Windows race execution, and allow release-please to use a PAT fallback token for PR creation when GITHUB_TOKEN is restricted.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-02 20:10:44 +01:00
eSliderandCursor d44b56848b fix: add motivation config precedence regression test
Codify the article's nested Config scenario to verify YAML base values are overridden by dotenv and finally by process environment variables.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-02 20:08:10 +01:00
eSlider eadcf9fa14 refactor: move testfixtures to internal package and update imports
- Relocated testfixtures from the root to the internal package for better encapsulation.
- Updated import paths in codec test files across env, ini, json, yaml directories to reflect the new location.
- Removed the now obsolete testfixtures.go file.
2026-05-02 20:02:20 +01:00
eSlider 0ae52ef72d docs: enhance release flow documentation and add version command to CLI
- Updated AGENTS.md and README.md to clarify the automated release process using release-please and GoReleaser.
- Added a version command to the envc CLI to display build metadata.
- Included CI/CD details in README for better understanding of testing and release automation.
2026-05-02 20:00:14 +01:00
eSlider 43f4b2dc96 chore: add GitHub workflows for linting, testing, and release management
- Introduced dependabot configuration for Go modules and GitHub Actions.
- Added linting workflow to enforce code quality on pushes and pull requests.
- Created release workflow to automate versioning and releases based on tags.
- Implemented testing workflow to run tests across multiple Go versions and OS environments.
2026-05-02 20:00:08 +01:00
eSlider 3b3ea59aa2 Merge branch 'main' of https://github.com/eSlider/go-config 2026-05-02 14:19:53 +01:00
eSlider 327bdfe9ff docs(README): update architecture diagram and enhance CLI/API tables for clarity 2026-05-02 14:19:27 +01:00
eSliderandGitHub 8c7b93cf3a Merge pull request #1 from eSlider/release/v2
feat(go-config): multi-format codecs, envc CLI, fixtures, ASRs
2026-05-02 14:18:23 +01:00
eSliderandCursor c575341178 feat(go-config): multi-format codecs, envc CLI, fixtures, ASRs
- Module github.com/eslider/go-config with env/yaml/json/ini packages
- internal: source, keymap, merge, structconv, bytesutil
- cmd/envc: convert, get, merge
- docs/asr ASR-0001..0008, README/CHANGELOG/AGENTS refresh
- golangci-lint v2 config; tests + fixtures

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-02 14:04:01 +01:00
eSlider 288a5b600c feat: initial release — env decoder extracted from ai-fabric
Public API:
- Unmarshal(dst, opts...)
- UnmarshalPrefix(dst, prefix, opts...)
- AsMap() / AsMapPrefix(prefix)
- Options: WithTrim, WithWeaklyTyped, WithTagName, WithDecodeHook

Merges three divergent in-repo copies (ai-fabric/pkg/env,
markets-platform/TP-general-code/pkg/system, and the var/agents/issue-*
snapshots), adds error wrapping, prefix filter, and pluggable hooks.

15 pure-Go unit tests, no synthetic mocks, lint clean.

Extracted per inventar/docs/asr/ASR-0008-ai-fabric-audit.md.
2026-04-24 13:41:13 +01:00