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.

Needed by gitlab-org/terraform-provider-gitlab!3254, which currently has to fall back to a raw HTTP call to set this attribute.

Merge request reports

Loading
Loading