8000 fix(util/gconv): support array-backed unmarshalling values by ErzerLP · Pull Request #4810 · gogf/gf · GitHub
[go: up one dir, main page]

Skip to content

fix(util/gconv): support array-backed unmarshalling values - #4810

Merged
hailaz merged 5 commits into
gogf:masterfrom
ErzerLP:fix/gconv-uuid-slice
Aug 7, 2026
Merged

hailaz merged 5 commits into
gogf:masterfrom
ErzerLP:fix/gconv-uuid-slice

Conversation

@ErzerLP
@ErzerLP ErzerLP commented Jul 26, 2026
Copy link
Copy Markdown
Contributor

Summary

  • handle addressable array-backed values through the existing common-interface unmarshalling path
  • add a focused regression test for string slices bound to array-backed UnmarshalText values
  • record the mandatory red-green bug-fix gate and the verified conversion behavior in OpenSpec

Test plan

  • Before the production fix, go test -count=1 -run '^Test_Issue4786$' ./util/gconv failed with reflect: call of reflect.Value.IsNil on array Value
  • After the fix, the same targeted command passed
  • go test -count=1 -race ./util/gconv/...
  • direct conversion into []uuid.UUID
  • make lint
  • openspec validate --all --strict

Fixes #4786

@hailaz
hailaz merged commit ba3af23 into gogf:master Aug 7, 2026
18 checks passed
social4hyq pushed a commit to social4hyq/homebrew-core that referenced this pull request Sep 20, 2026
gf 2.10.3

Created-by: HarmonybrewBot
Commit-by: HarmonybrewBot
Merged-by: HarmonybrewBot
Description: Created by `brew bump`

---

Created with `brew bump-formula-pr`.<details>
  <summary>release notes</summary>
  <pre>## What's Changed
* fix: update gf cli to v2.10.2 by @github-actions[bot] in gogf/gf#4773
* feat(cmd/gf): gen dao suppport for dm database by @hailaz in gogf/gf#4776
* fix(ghttp): resolve the issue where the GetCertificate callback in TLS listener gets overwritten by @cashtang in gogf/gf#4789
* fix(net/ghttp): report invalid json body errors by @puneetdixit200 in gogf/gf#4775
* fix(gclient): add timeout configuration methods and improve client initialization by @hailaz in gogf/gf#4779
* fix(cmd/gf): missing pointer in generated service file (#4741) by @UncleChair in gogf/gf#4742
* fix(util/gvalid): date validation allows invalid formats like Y-MMMM and invalid dates like 2026-13-33 by @cococolanosugar in gogf/gf#4740
* fix(container/gmap): added WithError methods for KVMap and ListKVMap by @LanceAdd in gogf/gf#4714
* feat(contrib/drivers/mssql): convert uniqueidentifier to uuid.UUID by @NickWilde18 in gogf/gf#4756
* fix(os/glog): JsonHandler outputs flat JSON suitable for ES ingestion (#4790) by @yangyanqing in gogf/gf#4791
* feat(database/gdb): Added OmitZero function to filter zero value parameters by @LanceAdd in gogf/gf#4713
* Revert "feat(database/gdb): Added OmitZero function to filter zero value parameters" by @hailaz in gogf/gf#4818
* fix(net/ghttp): normalize HTTP method to uppercase in getHandlersWithCache to prevent route cache pollution (#4765) by @waterWang in gogf/gf#4812
* fix(os/gcfg): normalize config pattern in GetWithEnv by @webguosai in gogf/gf#4748
* fix(encoding/ghash): PJW64 should use 64-bit width by @guoxing-li in gogf/gf#4728
* fix(net/goai): add style=deepObject and explode=true for query params with object schema (#4784) by @waterWang in gogf/gf#4813
* feat(os/grpool): let can set limit/cap dynamically by @joy999 in gogf/gf#4794
* test(contrib/drivers/pgsql): expand test coverage to MySQL/MariaDB baseline + 3 framework fixes by @lingcoder in gogf/gf#4763
* fix(net/ghttp): use a case-preserving key for the router searching cache by @lingcoder in gogf/gf#4833
* chore(openspec): remove openspec docs from repo by @gqcn in gogf/gf#4838
* fix(util/gconv): support array-backed unmarshalling values by @ErzerLP in gogf/gf#4810
* fix(net/ghttp): windows web admin restart only shutdowns but doesn't restart by @lonevle in gogf/g
8000
f#4809
* feat(container/gtree): Add the function of popping left and right nodes of red-black tree by @LanceAdd in gogf/gf#4793
* feat:To support the loong64 architecture upgrade, we have upgraded go-sqlite and modernc.org/libc. by @lijunting2020 in gogf/gf#4847
* fix(util/gconv): unwrap reflect.Value and support pointer element slices by @hailaz in gogf/gf#4848
* fix(net/goai): nil pointer dereference when an array with enum has an interface element (#4746) by @lingcoder in gogf/gf#4844
* ci: update the CI/CD dependency versions and scripts by @lingcoder in gogf/gf#4852
* fix(os/grpool): stop Test_Limit4 asserting a sum that has a race window by @lingcoder in gogf/gf#4854
* fix(contrib/nacos): move to the upstream commit that fixes the RpcClient data race by @lingcoder in gogf/gf#4856
* ci: make the Apollo and nacos containers actually ready before tests run by @lingcoder in gogf/gf#4857
* fix(database/gdb): stop reporting an aborted row iteration as success by @jiang-bx in gogf/gf#4858
* ci: wait for the Apollo database before starting Apollo by @lingcoder in gogf/gf#4860
* test(contrib/drivers): expand gaussdb coverage to the MySQL/PgSQL baseline + 8 related bug fixes by @lingcoder in gogf/gf#4840
* fix(os/grpool): read the array before the queue in Test_Limit4 assertions by @lingcoder in gogf/gf#4862
* fix: v2.10.3 by @hailaz in gogf/gf#4866

## New Contributors
* @cashtang made their first contribution in gogf/gf#4789
* @puneetdixit200 made their first contribution in gogf/gf#4775
* @NickWilde18 made their first contribution in gogf/gf#4756
* @waterWang made their first contribution in gogf/gf#4812
* @webguosai made their first contribution in gogf/gf#4748
* @guoxing-li made their first contribution in gogf/gf#4728
* @ErzerLP made their first contribution in gogf/gf#4810
* @lonevle made their first contribution in gogf/gf#4809
* @lijunting2020 made their first contribution in gogf/gf#4847
* @jiang-bx made their first contribution in gogf/gf#4858

**Full Changelog**: https://github.com/gogf/gf/compare/v2.10.2...v2.10.3</pre>
  <p>View the full release notes at <a href="https://github.com/gogf/gf/releases/tag/v2.10.3">https://github.com/gogf/gf/releases/tag/v2.10.3</a>.</p>
</details>
<hr>

See merge request: Harmonybrew/homebrew-core!17794
ChamHerry pushed a commit to ChamHerry/gf that referenced this pull request Oct 21, 2026
## Summary

- handle addressable array-backed values through the existing
common-interface unmarshalling path
- add a focused regression test for string slices bound to array-backed
`UnmarshalText` values
- record the mandatory red-green bug-fix gate and the verified
conversion behavior in OpenSpec

## Test plan

- Before the production fix, `go test -count=1 -run '^Test_Issue4786$'
./util/gconv` failed with `reflect: call of reflect.Value.IsNil on array
Value`
- After the fix, the same targeted command passed
- `go test -count=1 -race ./util/gconv/...`
- direct conversion into `[]uuid.UUID`
- `make lint`
- `openspec validate --all --strict`

Fixes gogf#4786

---------

Co-authored-by: hailaz <739476267@qq.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
561F

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

net/http: 无法将 UUID slice 作为参数传入到 HTTP 服务

2 participants

0