GitHub employs a secondary rate limit for actions that can trigger
notifications, such as opening a new issue. To avoid hitting this
limit, they recommend [1] waiting at least one second between each
request.
This commit attempts to comply with this guidance by adding a
one-second sleep prior to each POST request that opens an issue.
Closes gh-29879
[1] https://docs.github.com/en/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits
Test slices are now longer registered in spring.factories, but
TestSliceMetadata still looked there for them to generate documentation.
Fixed this so that TestSliceMetadata now looks in the right places for
test slices.
See gh-29873
Implements a new AutoConfigurationLoader, which loads
auto-configurations from a file in META-INF/spring-boot.
Adapts the AutoConfigurationImportSelector to use the new loader.
Adapts the ImportAutoConfigurationImportSelector to use the new loader.
Adapts the metadata plugin in the build to additionally load the
auto-configurations from the new file.
Updates the documentation for auto-configurations and test slices.
Closes gh-29872
This involved a small code change to the generated configuration
properties snippets. The section id has to start with
'appendix.', otherwise the section-id asciidoctor extension
complains. To ensure that the anchors that are derived from the
section IDs remain backwards compatible, the anchor-rewrite
properties have been updated.
See gh-29667
To preserve our existing Kotlin 1.3 baseline, we should compile our
Kotlin code with Kotlin 1.3 API and language versions. At the same
time, we want our documentation to use modern Kotlin. This commit
restores the 1.3 convention and overrides it to 1.6 in the docs
project. This maintains our Kotlin 1.3 baseline while also allowing
the Kotlin code examples to use 1.6 API and language features.
Closes gh-29654
Update `ConventionsPluginTests` so that dependency resolution is
not required. This provides a work-around for our currently failing
Windows build.
Closes gh-29490
This commit adds the auto-configuration for setting up the base Spring
GraphQL infrastructure. Because GraphQL doesn't depend on any particular
transport, we must have a separate configuration for creating:
* the `GraphQlSource`, which holds the schema and the `GraphQL` instance
* the `GraphQlService` for executing incoming requests
* the `BatchLoaderRegistry` for batch loading support
* the `AnnotatedControllerConfigurer` for supporting the annotated
controllers programming model
This comes with a starting point for the `"spring.graphql.*"`
configuration properties; we can now configure the locations and file
extensions of GraphQL schema files we should load and configure at
startup.
See gh-29140