feat: add automatic_rebase_enabled to project structs
What does this MR do and why?
Adds AutomaticRebaseEnabled to the project structs.
automatic_rebase_enabled was made writable through PUT /projects/:id in GitLab 19.4 (gitlab-org/gitlab!250632 (merged)), and gitlab-org/gitlab!252302 (merged) exposed it on Entities::Project, so it is now returned by GET /projects/:id, GET /projects and the create/update responses. It is documented in both the project response fields and the edit-project attribute table.
Project.AutomaticRebaseEnabled(read)EditProjectOptions.AutomaticRebaseEnabled(write)
It is deliberately not added to CreateProjectOptions: POST /projects does not accept the attribute.
Field placement follows the ordering used in the public API docs, as CONTRIBUTING asks: after squash_option on Project, and after autoclose_referenced_issues on EditProjectOptions.
Closes #2299 (closed)
How was this tested?
Locally: go build ./..., gofumpt -l projects.go (clean), and go test ./ -run 'TestEditProject|TestGetProject|TestListProjects' passes.
Related
Needed by gitlab-org/terraform-provider-gitlab!3254, which currently has to fall back to a raw HTTP call to set this attribute.