Hi, I would like to propose splitting Go release process.
Motivation: * We want to reduce needless major releases because major releases require users' change Approach: 1. Extract go/ in apache/arrow to apache/arrow-go like apache/arrow-rs * Filter go/ related commits from apache/arrow and create apache/arrow-go with them like we did for apache/arrow-rs * Remove go/ related codes from apache/arrow 2. Prepare integration test CI like apache/arrow-rs does: https://github.com/apache/arrow-rs/blob/master/.github/workflows/integration.yml 3. Prepare release script based on apache/arrow-julia, apache/arrow-adbc and/or apache/arrow-flight-sql-postgresql New release process: * apache/arrow-go will be released separated from apache/arrow * Matt or Joel will be a release manager of apache/arrow-go * apache/arrow releases a new major version per 3-4 months but apache/arrow-go will use more longer major release cycle * apache/arrow-go will use more minor/patch releases than apache/arrow Impact on users: * Users need to update their import paths to github.com/apache/arrow-go/v${VERSION}/arrow from github.com/apache/arrow/go/v${VERSION}/arrow * Currently, users need to update their import paths per 3-4 months because apache/arrow uses a new major version per 3-4 months. So this will not a big impact for the current users. See also the discussion of this: https://lists.apache.org/thread/fstyfvzczntt9mpnd4f0b39lzb8cxlyf The vote will be open for at least 72 hours. [ ] +1 Accept this proposal [ ] +0 [ ] -1 Do not accept this proposal because... Thanks, -- kou