eSlider
316463a827
Merge pull request 'ci(secret-scan): fix gitleaks --source path ( #3 )' ( #4 ) from sync/secret-scan-fix#3 into main
Release / GoReleaser (push) Skipped
Release Please / Release Please (push) Failing after 2s
Secret scan / Secret scan (gitleaks) (push) Successful in 5s
Lint / Lint (push) Successful in 34s
Tests / Test (Go 1.23 / ubuntu-latest) (push) Successful in 34s
Tests / Test (Go stable / ubuntu-latest) (push) Successful in 39s
Tests / Test (Go 1.22 / ubuntu-latest) (push) Successful in 44s
Tests / Test (Go stable / macos-latest) (push) Canceled after 0s
Tests / Test (Go stable / windows-latest) (push) Canceled after 0s
2026-09-06 02:47:43 +01:00
eSlider and GitHub
eb9056474f
Merge pull request #14 from eSlider/fix/secret-scan-workflow#3
...
Lint / Lint (push) Skipped
Release Please / Release Please (push) Skipped
Release / GoReleaser (push) Skipped
Tests / Test (Go 1.22 / ubuntu-latest) (push) Skipped
Tests / Test (Go 1.23 / ubuntu-latest) (push) Skipped
Tests / Test (Go stable / macos-latest) (push) Skipped
Tests / Test (Go stable / ubuntu-latest) (push) Skipped
Tests / Test (Go stable / windows-latest) (push) Skipped
Secret scan / Secret scan (gitleaks) (push) Successful in 4s
Secret scan / Secret scan (gitleaks) (pull_request) Successful in 3s
Tests / Test (Go 1.22 / ubuntu-latest) (pull_request) Successful in 19s
Tests / Test (Go 1.23 / ubuntu-latest) (pull_request) Successful in 44s
Lint / Lint (pull_request) Successful in 49s
Tests / Test (Go stable / ubuntu-latest) (pull_request) Successful in 1m9s
Tests / Test (Go stable / macos-latest) (pull_request) Canceled after 0s
Tests / Test (Go stable / windows-latest) (pull_request) Canceled after 0s
ci(secret-scan): fix gitleaks --source path (docker action host path)
2026-09-06 02:47:18 +01:00
eSlider
1607f760db
ci(secret-scan): fix gitleaks --source path (docker action host path) ( #3 )
...
The docker://zricethezav/gitleaks action mounts the workspace at
/github/workspace, but --source pointed at the host path from
github.workspace ($HOME/runner/work/...), which does not exist inside the
container -> 'stat ...: no such file or directory' on every run.
Follow the 2dph canon (ci.yml secret-scan): install the gitleaks binary
instead of the docker action and scan GITHUB_WORKSPACE - works on both
GitHub and Gitea act runners.
2026-09-06 02:45:29 +01:00
eSlider and GitHub
a9ba5d7318
Merge pull request #13 from eSlider/sync/main-20260904
...
sync: gitea main (funding)
2026-09-04 15:56:03 +01:00
eSlider
c53b9d5a9c
Merge pull request 'docs(funding): .github/FUNDING.yml — eSlider support links' ( #2 ) from docs/funding-github into main
Release / GoReleaser (push) Skipped
Release Please / Release Please (push) Failing after 5s
Secret scan / Secret scan (gitleaks) (push) Successful in 5s
Tests / Test (Go 1.23 / ubuntu-latest) (push) Successful in 1m17s
Tests / Test (Go 1.22 / ubuntu-latest) (push) Successful in 1m23s
Tests / Test (Go stable / ubuntu-latest) (push) Successful in 1m26s
Lint / Lint (push) Successful in 2m0s
Tests / Test (Go stable / macos-latest) (push) Canceled after 0s
Tests / Test (Go stable / windows-latest) (push) Canceled after 0s
2026-09-04 15:52:43 +01:00
eSlider
d0a9cc3b36
docs(funding): eSlider support links (reverse-import GitHub 21096c6)
Lint / Lint (push) Skipped
Release Please / Release Please (push) Skipped
Release / GoReleaser (push) Skipped
Tests / Test (Go 1.22 / ubuntu-latest) (push) Skipped
Tests / Test (Go 1.23 / ubuntu-latest) (push) Skipped
Tests / Test (Go stable / macos-latest) (push) Skipped
Tests / Test (Go stable / ubuntu-latest) (push) Skipped
Tests / Test (Go stable / windows-latest) (push) Skipped
Secret scan / Secret scan (gitleaks) (push) Successful in 3s
Secret scan / Secret scan (gitleaks) (pull_request) Successful in 4s
Tests / Test (Go 1.22 / ubuntu-latest) (pull_request) Successful in 1m18s
Tests / Test (Go 1.23 / ubuntu-latest) (pull_request) Successful in 1m23s
Tests / Test (Go stable / ubuntu-latest) (pull_request) Successful in 1m40s
Lint / Lint (pull_request) Successful in 1m57s
Tests / Test (Go stable / macos-latest) (pull_request) Canceled after 0s
Tests / Test (Go stable / windows-latest) (pull_request) Canceled after 0s
2026-09-04 15:50:53 +01:00
eSlider
21096c6fd7
funding: eSlider support links (sponsors, ko-fi, liberapay, patreon, polar)
2026-09-03 05:20:23 +01:00
eSlider
f608fa9917
Merge pull request 'feat(security): secret-scan в CI + pre-push хуки ( #142 )' ( #1 ) from feat/secret-scan#142 into main
Release / GoReleaser (push) Skipped
Lint / Lint (push) Successful in 40s
Release Please / Release Please (push) Failing after 2s
Secret scan / Secret scan (gitleaks) (push) Successful in 3s
Tests / Test (Go 1.22 / ubuntu-latest) (push) Successful in 14s
Tests / Test (Go 1.23 / ubuntu-latest) (push) Successful in 15s
Tests / Test (Go stable / ubuntu-latest) (push) Successful in 22s
Tests / Test (Go stable / macos-latest) (push) Canceled after 0s
Tests / Test (Go stable / windows-latest) (push) Canceled after 0s
2026-08-23 22:46:45 +01:00
Andriy Oblivantsev
78076ee5a9
feat(security): secret-scan via gitleaks in CI + pre-push/pre-commit hooks ( #142 )
Lint / Lint (push) Skipped
Release Please / Release Please (push) Skipped
Release / GoReleaser (push) Skipped
Tests / Test (Go 1.22 / ubuntu-latest) (push) Skipped
Tests / Test (Go 1.23 / ubuntu-latest) (push) Skipped
Tests / Test (Go stable / macos-latest) (push) Skipped
Tests / Test (Go stable / ubuntu-latest) (push) Skipped
Tests / Test (Go stable / windows-latest) (push) Skipped
Secret scan / Secret scan (gitleaks) (push) Successful in 4s
Secret scan / Secret scan (gitleaks) (pull_request) Successful in 3s
Tests / Test (Go 1.22 / ubuntu-latest) (pull_request) Successful in 13s
Tests / Test (Go 1.23 / ubuntu-latest) (pull_request) Successful in 15s
Lint / Lint (pull_request) Successful in 43s
Tests / Test (Go stable / ubuntu-latest) (pull_request) Successful in 22s
Tests / Test (Go stable / macos-latest) (pull_request) Canceled after 0s
Tests / Test (Go stable / windows-latest) (pull_request) Canceled after 0s
2026-08-23 19:51:09 +01:00
eSlider and GitHub
3aa0524f29
chore(main): release 0.4.0 ( #11 )
Lint / Lint (push) Successful in 57s
Release Please / Release Please (push) Failing after 2s
Tests / Test (Go 1.22 / ubuntu-latest) (push) Successful in 52s
Tests / Test (Go 1.23 / ubuntu-latest) (push) Successful in 28s
Tests / Test (Go stable / ubuntu-latest) (push) Successful in 38s
Release / GoReleaser (push) Failing after 6s
Tests / Test (Go stable / macos-latest) (push) Canceled after 0s
Tests / Test (Go stable / windows-latest) (push) Canceled after 0s
v0.4.0
2026-05-12 14:01:52 +01:00
eSlider and Cursor
c06f7f2bc9
fix(test): rename Url field to URL to satisfy revive var-naming
...
Lint (golangci-lint revive) requires acronyms like URL to be all-caps
in Go field names. Adjusts the motivation config test struct and its
assertion accordingly so the release-please PR can pass CI.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 13:59:57 +01:00
eSlider
719fccf712
feat(env): add nestedUnderJQPath for extracting nested subtrees by jq-style paths
...
Introduce `nestedUnderJQPath`, enabling subtree extraction using jq-style path parsing. Add associated utility functions (`splitJQPath`, `peelRedundantPathLeaf`, `buildNestedTreeAtPath`) and test coverage. Extend `.env Codec` to support path-specific subtree merges. Update `WithFile` to accept an optional jqPath for targeted merges.
2026-05-12 13:54:27 +01:00
eSlider
4beb769a2b
test(config): add JSON round-trip test for environment config map
2026-05-12 13:00:31 +01:00
eSlider
ff12eb1cb1
Merge branch 'main' of https://github.com/eSlider/go-config
2026-05-12 12:27:48 +01:00
eSlider
b7709d693b
feat(envc): add support for converting current process environment to YAML
...
Enhance the `envc convert` command to allow conversion of the current process environment to YAML format. Update README with usage examples and clarify input options. Add tests to ensure correct functionality for environment variable handling.
2026-05-12 12:27:46 +01:00
eSlider and GitHub
8e18861e09
Merge pull request #10 from eSlider/release-please--branches--main--components--go-config
...
chore(main): release 0.3.0
2026-05-03 10:46:06 +01:00
eSlider
7f294a75e6
chore(main): release 0.3.0
2026-05-03 10:42:36 +01:00
eSlider and Cursor
474cd88739
feat: add TOML codec and envc format support
...
New toml package (pelletier/go-toml/v2) matching yaml/json options and merge flow.
envc convert/get/merge accept --from/--to toml; fixture and CLI tests; docs refresh.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-03 10:42:21 +01:00
eSlider and Cursor
2d7b97f5ae
docs: refactor envc README and centralize decisions
...
README CLI: comment-first bash examples, convert/merge/get order, real-world flows.
Move architecture decisions pointers into CONTRIBUTING; trim AGENTS and README.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-03 10:37:32 +01:00
eSlider and Cursor
36f0ed9b52
docs: add CONTRIBUTING guide and expand README
...
Add CONTRIBUTING.md for testing, PR checks, and release-please flow; link from
README and AGENTS. Document envc bash sourcing (set -a, source <(...)) for YAML/INI.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-03 10:29:27 +01:00
eSlider and Cursor
2d674de546
feat(envc): improve root help and add stdin hang repro script
...
Root usage documents commands; help/-h/--help and unknown-command paths print the same text. test_hang.sh reproduces blocking reads on stdin.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-03 10:22:35 +01:00
eSlider and GitHub
e3e8ccb6c9
Merge pull request #9 from eSlider/release-please--branches--main--components--go-config
...
chore(main): release 0.2.2
2026-05-02 22:21:20 +01:00
eSlider
366efcf37d
chore(main): release 0.2.2
2026-05-02 22:19:55 +01:00
eSlider and Cursor
9c2021cef5
fix(release): shrink Linux envc binaries with UPX
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-02 22:19:42 +01:00
eSlider and Cursor
1c9bfdb3a8
build(release): UPX Linux envc binaries and trim link metadata
...
Use GoReleaser UPX (linux only, best+lzma), install upx-ucl in the tag release workflow, and add -buildvcs=false with empty -buildid=. Stop Dependabot auto bump PRs via open-pull-requests-limit 0. Remove stray LibreOffice lock file under docs.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-02 22:09:51 +01:00
eSlider and GitHub
3bba7a1691
Merge pull request #8 from eSlider/release-please--branches--main--components--go-config
...
chore(main): release 0.2.1
2026-05-02 20:22:50 +01:00
eSlider
3b7e830c71
chore(main): release 0.2.1
2026-05-02 20:21:18 +01:00
eSlider and Cursor
cb0ee8ac22
fix(ci): use golangci-lint v2 config format
...
Declare golangci config version 2 so the v2 binary installed in CI can parse project lint settings successfully.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-02 20:21:06 +01:00
eSlider and Cursor
a6a51ec3ef
fix(ci): make lint and windows tests reliable
...
Run golangci-lint v2 via go install to match the active Go toolchain, and remove Windows coverprofile generation that PowerShell resolves incorrectly as package .out.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-02 20:17:19 +01:00
eSlider and Cursor
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
eSlider and Cursor
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
eSlider and Cursor
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
eSlider and GitHub
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
eSlider and Cursor
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