Commit Graph

229 Commits

Author SHA1 Message Date
Stephane Nicoll
2cd85513da Clarify that this project does not provide a Web UI
This commit removes any reference to start.spring.io in the reference
guide, moving the user guide there in the process.

Closes gh-1100
2020-11-16 15:10:17 +01:00
Stephane Nicoll
d18dcab14f Allow to customize the ProjectAssetGenerator to use
Closes gh-1116
2020-11-16 09:35:43 +01:00
Stephane Nicoll
fd409c5340 Remove CloudfoundryEnvironmentPostProcessor
Closes gh-1144
2020-11-03 10:25:00 +01:00
Stephane Nicoll
aa2570468a Add User-Agent rule for Nx client
Closes gh-1143
2020-11-03 09:56:37 +01:00
Stephane Nicoll
6447249c54 Polish "Add support for long fine names for tar archives"
See gh-1139
2020-10-14 11:27:26 +02:00
Olivier Theriault
249b260774 Add support for long fine names for tar archives
See gh-1139
2020-10-14 11:25:56 +02:00
Stephane Nicoll
326d0813a3 Fix Sagan metadata reader to not rely on JSON order
This commit makes sure that Spring Boot versions are sorted from the
newest to the oldest, irrespective of the order of the metadata
elements in the json response.

Closes gh-1128
2020-09-26 07:53:16 +02:00
Stephane Nicoll
dd6106371e Polish "Fix thread-safety access in ProjectGenerationInvoker"
See gh-1125
2020-09-12 07:08:54 +02:00
Michal Krzywanski
fd6bc357c2 Fix thread-safety access in ProjectGenerationInvoker
See gh-1125
2020-09-12 07:04:45 +02:00
Stephane Nicoll
5d8c8539ac Make sure deprecated dependencies endpoint works with metadata v2.2
Closes gh-1115
2020-08-12 11:21:30 +02:00
Stephane Nicoll
e41faacb77 Polish "Format default platform version when serving metadata v2.1"
See gh-1113
2020-08-11 14:13:56 +02:00
Guillaume GERBAUD
a202ce00ac Format default platform version when serving metadata v2.1
See gh-1113
2020-08-11 14:02:00 +02:00
Stephane Nicoll
f109114c0e Do not fetch latest Spring Boot versions from spring.io by default
Closes gh-1082
2020-06-19 16:08:18 +02:00
Stephane Nicoll
9f19c6fa50 Infer display name from Spring Boot version
Closes gh-1104
2020-06-18 16:02:43 +02:00
Stephane Nicoll
11c553ef6d Polish 2020-06-18 15:39:53 +02:00
Stephane Nicoll
9e1d99810a Polish 2020-06-18 12:10:01 +02:00
Stephane Nicoll
cf45c6313e Add more metadata version content negotiation tests 2020-06-05 10:27:40 +02:00
Stephane Nicoll
76a61d832f Fix line separator in cURL and HTTPie examples
Closes gh-1094
2020-06-04 09:00:03 +02:00
Stephane Nicoll
853ee51f2b Add support for transforming the chosen platform version
This commit improves the ProjectRequest converter to invoke a
ProjectRequestPlatformVersionTransformer. A default implementation does
the conversion based on configurable ranges for the V1 and V2 format
respectively.

This complement our backward compatible support with 2.1 metadata on an
instance using the new version format. All that is required is to
configure which versions are using which format.

See gh-1092
2020-06-03 14:32:41 +02:00
Stephane Nicoll
41f844a3ad Serve version format that is backward compatible
This commit makes sure the metadata format uses a backward compatible
version format even if the new format is used. It also introduces a
new metadata version (2.2) that can be used by clients that support the
new version format.

See gh-1092
2020-06-03 14:32:41 +02:00
Stephane Nicoll
9255ae9fbe Polish 2020-05-17 11:25:23 +02:00
Stephane Nicoll
a8926c2da7 Add support for repository mapping
This commit adds a way to map the repository of a dependency based on
a compatibility range.

Closes gh-1085
2020-05-15 17:58:49 +02:00
Stephane Nicoll
374459f800 Upgrade to Spring Boot 2.3.0 2020-05-15 10:35:40 +02:00
Stephane Nicoll
eef529aa7c Add platform compatibility range support
This commit adds a new `platformCompatibilityRange` in the metadata that
can be used to restrict the valid platform versions. If a project is
requested or metadata needs to be resolved against a version that does
not match the range, an exception is thrown.

Closes gh-1048
2020-01-03 14:08:37 +01:00
Stephane Nicoll
e25fb74d23 Move ProjectRequest input validation to ProjectDescriptionCustomizer
This commit simplifies DefaultProjectRequestToDescriptionConverter to
converting the request to a description only. Applying default or
cleaning values are now part of a ProjectDescriptionCustomizer callback.

Closes gh-1045
2020-01-02 17:16:19 +01:00
Stephane Nicoll
d0cf3a4871 Fix typo 2020-01-02 15:35:13 +01:00
Stephane Nicoll
945b118b0c Polish 2020-01-01 08:41:11 +01:00
Stephane Nicoll
5d0c5333fe Polish "Handle metadata resolution failures properly"
See gh-1039
2019-12-27 16:52:49 +01:00
bono007
81c66cd19e Handle metadata resolution failures properly
See gh-1039
2019-12-27 16:50:29 +01:00
Stephane Nicoll
5325e679e2 Polish "Keep track of original ProjectDescription"
See gh-1023
2019-12-27 11:09:00 +01:00
bono007
161fccbc75 Keep track of original ProjectDescription
See gh-1023
2019-12-27 09:28:21 +01:00
Stephane Nicoll
a729fae5d3 Upgrade to Spring Boot 2.2.0 2019-10-17 09:00:10 +02:00
Stephane Nicoll
8abd0a8d5c Polish 2019-10-16 11:42:53 +02:00
Stephane Nicoll
e0f3e42094 Polish 2019-10-16 11:37:21 +02:00
Stephane Nicoll
d812ca8c38 Harmonize SCM information 2019-10-05 18:32:42 +01:00
Stephane Nicoll
7b148f25db Add missing package-info 2019-09-27 13:35:55 +02:00
Stephane Nicoll
d70d832e70 Polish 2019-09-17 13:29:37 +02:00
Stephane Nicoll
af9d543317 Polish "Remove support for style"
Closes gh-959
2019-09-17 12:43:40 +02:00
Madhura Bhave
74e460a3a1 Remove support for style
See gh-959
2019-09-17 09:59:22 +02:00
Stephane Nicoll
2a183354b2 Tune metadata caching
This commit reduces the cache metadata lookup to 2h so that clients can
see new Spring Boot version faster. It also offers an option for
custom instance to override the cache strategy any way they like.

Closes gh-979
2019-09-06 12:00:47 +02:00
Stephane Nicoll
cff60c397d Improve custom project request arrangement
This commit improves the use case of configuring a custom ProjectRequest
by enforcing consistently a particular type using a generic.

As a result, `ProjectGenerationInvoker` is no longer exposed as a bean
as it is the responsibility of the custom `ProjectGenerationController`
to provide one that matches the requested `ProjectRequest` type.

See gh-990
2019-08-29 10:52:02 +02:00
Stephane Nicoll
f74370eb63 Allow binding of custom ProjectRequest
This commit allows a custom instance to easily bind incoming request
attributes to a custom ProjectRequest instance and map it to a custom
ProjectDescription as well.

Closes gh-990
2019-08-27 09:48:47 +02:00
Stephane Nicoll
d9a20ed68c Split controller endpoints
This commit splits MainController to a number of controllers with
dedicated responsibilities. This is a first step to make these features
more modular and potentially opt-in in the future.

Closes gh-994
2019-08-27 08:30:15 +02:00
Stephane Nicoll
282c92f76d Polish 2019-08-25 17:16:18 +02:00
Stephane Nicoll
c36ae847fb Harmonize ProjectDescription name 2019-08-25 03:17:25 +02:00
Stephane Nicoll
286e38888c Migrate ProjectDescription to an interface
This commit migrates ProjectDescription to an interface with read-only
accessors and create a MutableProjectDescription implementation that can
be used for both purposes.

As a result, the type separation between ResolvedProjectDescription and
ProjectDescription is no longer necessary.

Closes gh-993
2019-08-25 03:03:57 +02:00
Stephane Nicoll
ddd609c639 Move assert to AssertJ
This commit moves project-based assertions to regular AssertJ Assert
classes. `ProjectStructure` is now an assert provider so that it can
be used with the standard `assertThat` method.

Specialized assertions are provided for the supported build systems as
well as text-based content.

Closes gh-764
2019-08-22 15:24:28 +02:00
Stephane Nicoll
1082ac7bf7 Extract project generation test utility to dedicated module
This commit extracts various test utilities to a dedicated
initializr-generator-test module for easier consumption. The previous
test-jar are no longer published and a dependency to this new module
should be equivalent.

This commit also cleans various resources that were located in the wrong
place. In particular initializr-generator does not know anything about
metadata anymore.

Closes gh-988
2019-08-21 16:10:06 +02:00
Stephane Nicoll
976f290144 Harmonize logging test configuration 2019-08-18 14:35:51 +02:00
Stephane Nicoll
cd59699644 Polish 2019-08-18 14:11:31 +02:00