switchupcb / copygen

Go generator to copy values from type to type and fields from struct to struct (copier without reflection). Generate any code based on types.

Home Page:https://switchupcb.com/copygen-license-exception/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CopyGen v0.3

switchupcb opened this issue · comments

Version 0.3 will include the following changes:

  • new method of Parsing
  • Weird Edge Case Fix when using a lot of Conversion
  • go/template template support from #9
  • Ability to match by tags
  • Ability to invoke automatch using automatch option.
  • Getting closer to supporting third party module imports in interpreted templates.
  • Logo

BONUS

  • integration tests
  • programmatic usage
  • parse every Go type including basic, array, slice, map, chan, interface, and func types (but not generate)

Status
Started on April 5, 2022.
Expectation of completion on April 12, 2022 (as of April 10, 2022).
Packaging attempted on April 12, 2022.
Completed April 13, 2022.

There was an options regression on the refactor. All options have been fixed except for depth which is being fixed. There is also a bug regarding the comment placement which effects the output of the current state. Finally, I need to remove global variables from the latest commit (unstable). These issues are identified and only require implementation. As a result, v0.3 is expected to come later today.

Fixed: ab6f082

Free floating comments in their specific groups are causing tests to fail (on some machines); albeit with correct code output. This is caused by separate line endings on Windows vs. Linux, Mac, etc as confirmed in https://github.com/switchupcb/copygen/actions/runs/2164315170. While this is handled in the tests, it must also be handled when we check for the positions of comments at https://github.com/switchupcb/copygen/blob/main/cli/parser/keep.go#L110.

Fixed: dfa12d2

https://github.com/switchupcb/copygen/releases/tag/v0.3.0

go install github.com/switchupcb/copygen@v0.3.0