diff options
3 files changed, 7 insertions, 8 deletions
diff --git a/website/templates/features/experimental/FieldDefaults.html b/website/templates/features/experimental/FieldDefaults.html index c0d3db96..b4b582e9 100644 --- a/website/templates/features/experimental/FieldDefaults.html +++ b/website/templates/features/experimental/FieldDefaults.html @@ -10,14 +10,12 @@ <@f.experimental> <ul> <li> - New feature; unsure if this busts enough boilerplate. - </li><li> Would be nice if you could stick this on the package-info.java package to set the default for all classes in that package. </li><li> - Part of the work on @Value, which is experimental. + [UPDATE 2022-02-04] Currently simply having a <code>lombok.config</code> entry of <code>lombok.fieldDefaults.defaultPrivate = true</code> (or, analogously, <code>defaultFinal</code>) is enough to modify <em>every</em> source file that is affected by that configuration, even if said source file has absolutely no trace whatsoever of lombok anything inside it. We're not quite sure if this is a good idea. Our current point of view is that this is too much magic, and there is an alternative plan: meta-annotations. Until at least the meta-annotations idea has been explored and discarded, this feature will not be leaving <em>experimental</em> in its current state. Most likely, if it ever does, the <code>lombok.FieldDefaults</code> annotation will be <em>required</em>, though, you may set it via the to be built meta-annotation. </li> </ul> - Current status: <em>positive</em> - Currently we feel this feature may move out of experimental status with no or minor changes soon. + Current status: <em>neutral</em> - Currently we feel this feature may not move out of experimental status without changes. </@f.experimental> <@f.overview> diff --git a/website/templates/features/experimental/StandardException.html b/website/templates/features/experimental/StandardException.html index 1484154d..c7fc40fe 100644 --- a/website/templates/features/experimental/StandardException.html +++ b/website/templates/features/experimental/StandardException.html @@ -48,6 +48,8 @@ There is a very slight functional difference: Normally, invoking <code>new SomeException(message, null)</code> will initialize the cause to be <em>no cause</em>, and this cannot be later changed by invoking <code>initCause</code>. However, lombok's standard exceptions <strong>do</strong> let you overwrite an explicit no-cause with <code>initCause</code> later. + </p><p> + A second slight functional difference: Normally, invoking <code>new SomeException(cause)</code>, if implemented as <code>super(cause);</code>, will set the message to be equal to the message of the cause. However, lombok does not do this - it leaves the exception as having no message at all. We think inheriting the message is fundamentally wrong - messages are not guaranteed to be sensible in the absence of the context of the exception-type. The cause ought to be listed anywhere where it is relevant; if you are using messages as direct user feedback (which is rare, in the java community), <code>@StandardException</code> can't really help you anyway; the infrastructure of e.g. <code>getLocalizedMessage()</code> is too complicated. </p> </@f.smallPrint> </@f.scaffold> diff --git a/website/templates/features/experimental/index.html b/website/templates/features/experimental/index.html index a8430d8d..a50a4670 100644 --- a/website/templates/features/experimental/index.html +++ b/website/templates/features/experimental/index.html @@ -28,10 +28,6 @@ </p> </div> <div class="row"> - <@main.feature title="var" href="var"> - Modifiable local variables with a type inferred by assigning value. - </@main.feature> - <@main.feature title="@Accessors" href="Accessors"> A more fluent API for getters and setters. </@main.feature> @@ -101,6 +97,9 @@ <@main.feature title="@Wither: renamed to @With, and promoted" href="/features/With"> Immutable 'setters' - methods that create a clone but with one changed field. </@main.feature> + <@main.feature title="var" href="/features/var"> + Modifiable local variables with a type inferred by assigning value. + </@main.feature> </div> </div> </div> |