hcrosse opened a new issue, #1516: URL: https://github.com/apache/arrow-go/issues/1516
### Describe the enhancement requested `arrow/decimal` shares generic code between `Decimal32` and `Decimal64`, but imports and aliases `Decimal128` and `Decimal256` from `decimal128` and `decimal256`. Those packages can't reuse its generic code without an import cycle. String parsing, float conversion, rescaling, scale changes and power of ten scaling in `ToBigFloat` each have three implementations: one generic for `Decimal32` and `Decimal64`, and one in each wide package. Fixes and behavior changes must be repeated across them, and the widths can drift apart. For example, the narrow string parsers reject infinities while the wide parsers still panic. Would you like these implementations consolidated? Possible approaches include a shared internal generic package with no public API change, moving implementations into `arrow/decimal` with `decimal128` and `decimal256` as wrappers, or something else. Which approach would you prefer? I'm happy to work on it once there's agreement on the approach. ### Component(s) Other -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
