From c2c59041f5ef64becd9d8ec08b909b765c5f6245 Mon Sep 17 00:00:00 2001 From: Dimitry Ivanov Date: Thu, 14 May 2020 12:23:47 +0300 Subject: [PATCH] Prepare 4.4.0 release --- CHANGELOG.md | 2 +- gradle.properties | 2 +- .../src/main/java/io/noties/markwon/Markwon.java | 4 ++-- .../java/io/noties/markwon/MarkwonBuilderImpl.java | 2 +- .../java/io/noties/markwon/MarkwonConfiguration.java | 10 +++++----- .../src/main/java/io/noties/markwon/MarkwonImpl.java | 4 ++-- .../main/java/io/noties/markwon/core/CorePlugin.java | 4 ++-- .../io/noties/markwon/core/spans/TextLayoutSpan.java | 2 +- .../io/noties/markwon/core/spans/TextViewSpan.java | 2 +- .../io/noties/markwon/image/AsyncDrawableSpan.java | 2 +- .../image/destination/ImageDestinationProcessor.java | 2 +- .../destination/ImageDestinationProcessorAssets.java | 2 +- .../ImageDestinationProcessorRelativeToAbsolute.java | 2 +- .../main/java/io/noties/markwon/utils/LayoutUtils.java | 2 +- .../main/java/io/noties/markwon/utils/SpanUtils.java | 2 +- .../io/noties/markwon/ext/latex/JLatexMathPlugin.java | 2 +- .../io/noties/markwon/ext/tables/TableRowSpan.java | 4 ++-- .../noties/markwon/html/HtmlEmptyTagReplacement.java | 2 +- .../main/java/io/noties/markwon/html/HtmlPlugin.java | 4 ++-- release-management.md | 3 ++- 20 files changed, 30 insertions(+), 29 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a4607ed5..38b9e884 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -# $nap; +# 4.4.0 * `TextViewSpan` to obtain `TextView` in which markdown is displayed (applied by `CorePlugin`) * `TextLayoutSpan` to obtain `Layout` in which markdown is displayed (applied by `TablePlugin`, more specifically `TableRowSpan` to propagate layout in which cell content is displayed) * `HtmlEmptyTagReplacement` now is configurable by `HtmlPlugin`, `iframe` handling ([#235]) diff --git a/gradle.properties b/gradle.properties index c1d97523..559ebd01 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ android.enableJetifier=true android.enableBuildCache=true android.buildCacheDir=build/pre-dex-cache -VERSION_NAME=4.4.0-SNAPSHOT +VERSION_NAME=4.4.0 GROUP=io.noties.markwon POM_DESCRIPTION=Markwon markdown for Android diff --git a/markwon-core/src/main/java/io/noties/markwon/Markwon.java b/markwon-core/src/main/java/io/noties/markwon/Markwon.java index 1422bf3c..326a70c2 100644 --- a/markwon-core/src/main/java/io/noties/markwon/Markwon.java +++ b/markwon-core/src/main/java/io/noties/markwon/Markwon.java @@ -196,9 +196,9 @@ public abstract class Markwon { * Control if small chunks of non-finished markdown sentences (for example, a single `*` character) * should be displayed/rendered as raw input instead of an empty string. *

- * Since $nap; {@code true} by default, versions prior - {@code false} + * Since 4.4.0 {@code true} by default, versions prior - {@code false} * - * @since $nap; + * @since 4.4.0 */ @NonNull Builder fallbackToRawInputWhenEmpty(boolean fallbackToRawInputWhenEmpty); diff --git a/markwon-core/src/main/java/io/noties/markwon/MarkwonBuilderImpl.java b/markwon-core/src/main/java/io/noties/markwon/MarkwonBuilderImpl.java index 9d470f87..ae0f2f9d 100644 --- a/markwon-core/src/main/java/io/noties/markwon/MarkwonBuilderImpl.java +++ b/markwon-core/src/main/java/io/noties/markwon/MarkwonBuilderImpl.java @@ -27,7 +27,7 @@ class MarkwonBuilderImpl implements Markwon.Builder { private Markwon.TextSetter textSetter; - // @since $nap; + // @since 4.4.0 private boolean fallbackToRawInputWhenEmpty = true; MarkwonBuilderImpl(@NonNull Context context) { diff --git a/markwon-core/src/main/java/io/noties/markwon/MarkwonConfiguration.java b/markwon-core/src/main/java/io/noties/markwon/MarkwonConfiguration.java index e19c8228..9b37e89f 100644 --- a/markwon-core/src/main/java/io/noties/markwon/MarkwonConfiguration.java +++ b/markwon-core/src/main/java/io/noties/markwon/MarkwonConfiguration.java @@ -24,7 +24,7 @@ public class MarkwonConfiguration { private final AsyncDrawableLoader asyncDrawableLoader; private final SyntaxHighlight syntaxHighlight; private final LinkResolver linkResolver; - // @since $nap; + // @since 4.4.0 private final ImageDestinationProcessor imageDestinationProcessor; private final ImageSizeResolver imageSizeResolver; @@ -62,7 +62,7 @@ public class MarkwonConfiguration { } /** - * @since $nap; + * @since 4.4.0 */ @NonNull public ImageDestinationProcessor imageDestinationProcessor() { @@ -89,7 +89,7 @@ public class MarkwonConfiguration { private AsyncDrawableLoader asyncDrawableLoader; private SyntaxHighlight syntaxHighlight; private LinkResolver linkResolver; - // @since $nap; + // @since 4.4.0 private ImageDestinationProcessor imageDestinationProcessor; private ImageSizeResolver imageSizeResolver; private MarkwonSpansFactory spansFactory; @@ -119,7 +119,7 @@ public class MarkwonConfiguration { } /** - * @since $nap; + * @since 4.4.0 */ @NonNull public Builder imageDestinationProcessor(@NonNull ImageDestinationProcessor imageDestinationProcessor) { @@ -157,7 +157,7 @@ public class MarkwonConfiguration { linkResolver = new LinkResolverDef(); } - // @since $nap; + // @since 4.4.0 if (imageDestinationProcessor == null) { imageDestinationProcessor = ImageDestinationProcessor.noOp(); } diff --git a/markwon-core/src/main/java/io/noties/markwon/MarkwonImpl.java b/markwon-core/src/main/java/io/noties/markwon/MarkwonImpl.java index 999e2f68..1e0d7930 100644 --- a/markwon-core/src/main/java/io/noties/markwon/MarkwonImpl.java +++ b/markwon-core/src/main/java/io/noties/markwon/MarkwonImpl.java @@ -30,7 +30,7 @@ class MarkwonImpl extends Markwon { @Nullable private final TextSetter textSetter; - // @since $nap; + // @since 4.4.0 private final boolean fallbackToRawInputWhenEmpty; MarkwonImpl( @@ -96,7 +96,7 @@ class MarkwonImpl extends Markwon { public Spanned toMarkdown(@NonNull String input) { final Spanned spanned = render(parse(input)); - // @since $nap; + // @since 4.4.0 // if spanned is empty, we are configured to use raw input and input is not empty if (TextUtils.isEmpty(spanned) && fallbackToRawInputWhenEmpty diff --git a/markwon-core/src/main/java/io/noties/markwon/core/CorePlugin.java b/markwon-core/src/main/java/io/noties/markwon/core/CorePlugin.java index 36b8b277..1c576e7f 100644 --- a/markwon-core/src/main/java/io/noties/markwon/core/CorePlugin.java +++ b/markwon-core/src/main/java/io/noties/markwon/core/CorePlugin.java @@ -97,7 +97,7 @@ public class CorePlugin extends AbstractMarkwonPlugin { /** * @return a set with enabled by default block types - * @since $nap; + * @since 4.4.0 */ @NonNull public static Set> enabledBlockTypes() { @@ -175,7 +175,7 @@ public class CorePlugin extends AbstractMarkwonPlugin { public void beforeSetText(@NonNull TextView textView, @NonNull Spanned markdown) { OrderedListItemSpan.measure(textView, markdown); - // @since $nap; + // @since 4.4.0 // we do not break API compatibility, instead we introduce the `instance of` check if (markdown instanceof Spannable) { final Spannable spannable = (Spannable) markdown; diff --git a/markwon-core/src/main/java/io/noties/markwon/core/spans/TextLayoutSpan.java b/markwon-core/src/main/java/io/noties/markwon/core/spans/TextLayoutSpan.java index 679bd58c..e4e2e57b 100644 --- a/markwon-core/src/main/java/io/noties/markwon/core/spans/TextLayoutSpan.java +++ b/markwon-core/src/main/java/io/noties/markwon/core/spans/TextLayoutSpan.java @@ -10,7 +10,7 @@ import androidx.annotation.Nullable; import java.lang.ref.WeakReference; /** - * @since $nap; + * @since 4.4.0 */ public class TextLayoutSpan { diff --git a/markwon-core/src/main/java/io/noties/markwon/core/spans/TextViewSpan.java b/markwon-core/src/main/java/io/noties/markwon/core/spans/TextViewSpan.java index 3e527a9f..71db81b8 100644 --- a/markwon-core/src/main/java/io/noties/markwon/core/spans/TextViewSpan.java +++ b/markwon-core/src/main/java/io/noties/markwon/core/spans/TextViewSpan.java @@ -12,7 +12,7 @@ import java.lang.ref.WeakReference; /** * A special span that allows to obtain {@code TextView} in which spans are displayed * - * @since $nap; + * @since 4.4.0 */ public class TextViewSpan { diff --git a/markwon-core/src/main/java/io/noties/markwon/image/AsyncDrawableSpan.java b/markwon-core/src/main/java/io/noties/markwon/image/AsyncDrawableSpan.java index fe34b4c9..27e43720 100644 --- a/markwon-core/src/main/java/io/noties/markwon/image/AsyncDrawableSpan.java +++ b/markwon-core/src/main/java/io/noties/markwon/image/AsyncDrawableSpan.java @@ -100,7 +100,7 @@ public class AsyncDrawableSpan extends ReplacementSpan { int bottom, @NonNull Paint paint) { - // @since $nap; use SpanUtils instead of `canvas.getWidth` + // @since 4.4.0 use SpanUtils instead of `canvas.getWidth` drawable.initWithKnownDimensions( SpanUtils.width(canvas, text), paint.getTextSize() diff --git a/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessor.java b/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessor.java index 831c0b7c..ec70f8f3 100644 --- a/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessor.java +++ b/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessor.java @@ -5,7 +5,7 @@ import androidx.annotation.NonNull; /** * Process destination of image nodes * - * @since $nap; + * @since 4.4.0 */ public abstract class ImageDestinationProcessor { @NonNull diff --git a/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessorAssets.java b/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessorAssets.java index 169d2527..b52a04ca 100644 --- a/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessorAssets.java +++ b/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessorAssets.java @@ -15,7 +15,7 @@ import androidx.annotation.Nullable; * {@code FileSchemeHandler} from the {@code image} module supports asset images when created with * {@code createWithAssets} factory method * - * @since $nap; + * @since 4.4.0 */ public class ImageDestinationProcessorAssets extends ImageDestinationProcessor { diff --git a/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessorRelativeToAbsolute.java b/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessorRelativeToAbsolute.java index 9e04e1aa..23f1c706 100644 --- a/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessorRelativeToAbsolute.java +++ b/markwon-core/src/main/java/io/noties/markwon/image/destination/ImageDestinationProcessorRelativeToAbsolute.java @@ -7,7 +7,7 @@ import java.net.MalformedURLException; import java.net.URL; /** - * @since $nap; + * @since 4.4.0 */ public class ImageDestinationProcessorRelativeToAbsolute extends ImageDestinationProcessor { diff --git a/markwon-core/src/main/java/io/noties/markwon/utils/LayoutUtils.java b/markwon-core/src/main/java/io/noties/markwon/utils/LayoutUtils.java index d1c4cb77..32c763e4 100644 --- a/markwon-core/src/main/java/io/noties/markwon/utils/LayoutUtils.java +++ b/markwon-core/src/main/java/io/noties/markwon/utils/LayoutUtils.java @@ -6,7 +6,7 @@ import android.text.Layout; import androidx.annotation.NonNull; /** - * @since $nap; + * @since 4.4.0 */ public abstract class LayoutUtils { diff --git a/markwon-core/src/main/java/io/noties/markwon/utils/SpanUtils.java b/markwon-core/src/main/java/io/noties/markwon/utils/SpanUtils.java index 96396add..baf0449a 100644 --- a/markwon-core/src/main/java/io/noties/markwon/utils/SpanUtils.java +++ b/markwon-core/src/main/java/io/noties/markwon/utils/SpanUtils.java @@ -11,7 +11,7 @@ import io.noties.markwon.core.spans.TextLayoutSpan; import io.noties.markwon.core.spans.TextViewSpan; /** - * @since $nap; + * @since 4.4.0 */ public abstract class SpanUtils { diff --git a/markwon-ext-latex/src/main/java/io/noties/markwon/ext/latex/JLatexMathPlugin.java b/markwon-ext-latex/src/main/java/io/noties/markwon/ext/latex/JLatexMathPlugin.java index abd399e3..dd8a606e 100644 --- a/markwon-ext-latex/src/main/java/io/noties/markwon/ext/latex/JLatexMathPlugin.java +++ b/markwon-ext-latex/src/main/java/io/noties/markwon/ext/latex/JLatexMathPlugin.java @@ -529,7 +529,7 @@ public class JLatexMathPlugin extends AbstractMarkwonPlugin { @Override public Rect resolveImageSize(@NonNull AsyncDrawable drawable) { - // @since $nap; resolve inline size (scale down if exceed available width) + // @since 4.4.0 resolve inline size (scale down if exceed available width) final Rect imageBounds = drawable.getResult().getBounds(); final int canvasWidth = drawable.getLastKnownCanvasWidth(); final int w = imageBounds.width(); diff --git a/markwon-ext-tables/src/main/java/io/noties/markwon/ext/tables/TableRowSpan.java b/markwon-ext-tables/src/main/java/io/noties/markwon/ext/tables/TableRowSpan.java index 0bf48626..c4fd8204 100644 --- a/markwon-ext-tables/src/main/java/io/noties/markwon/ext/tables/TableRowSpan.java +++ b/markwon-ext-tables/src/main/java/io/noties/markwon/ext/tables/TableRowSpan.java @@ -339,10 +339,10 @@ public class TableRowSpan extends ReplacementSpan { false ); - // @since $nap; + // @since 4.4.0 TextLayoutSpan.applyTo(spannable, layout); - // @since $nap; + // @since 4.4.0 scheduleAsyncDrawables(spannable, recreate); layouts.add(index, layout); diff --git a/markwon-html/src/main/java/io/noties/markwon/html/HtmlEmptyTagReplacement.java b/markwon-html/src/main/java/io/noties/markwon/html/HtmlEmptyTagReplacement.java index 8ad5f05a..b074dcea 100644 --- a/markwon-html/src/main/java/io/noties/markwon/html/HtmlEmptyTagReplacement.java +++ b/markwon-html/src/main/java/io/noties/markwon/html/HtmlEmptyTagReplacement.java @@ -46,7 +46,7 @@ public class HtmlEmptyTagReplacement { replacement = alt; } } else if ("iframe".equals(name)) { - // @since $nap; make iframe non-empty + // @since 4.4.0 make iframe non-empty replacement = IFRAME_REPLACEMENT; } else { replacement = null; diff --git a/markwon-html/src/main/java/io/noties/markwon/html/HtmlPlugin.java b/markwon-html/src/main/java/io/noties/markwon/html/HtmlPlugin.java index 5e974ea0..f2c2ea54 100644 --- a/markwon-html/src/main/java/io/noties/markwon/html/HtmlPlugin.java +++ b/markwon-html/src/main/java/io/noties/markwon/html/HtmlPlugin.java @@ -57,7 +57,7 @@ public class HtmlPlugin extends AbstractMarkwonPlugin { private MarkwonHtmlParser htmlParser; private MarkwonHtmlRenderer htmlRenderer; - // @since $nap; + // @since 4.4.0 private HtmlEmptyTagReplacement emptyTagReplacement = new HtmlEmptyTagReplacement(); @SuppressWarnings("WeakerAccess") @@ -109,7 +109,7 @@ public class HtmlPlugin extends AbstractMarkwonPlugin { /** * @param emptyTagReplacement {@link HtmlEmptyTagReplacement} - * @since $nap; + * @since 4.4.0 */ @NonNull public HtmlPlugin emptyTagReplacement(@NonNull HtmlEmptyTagReplacement emptyTagReplacement) { diff --git a/release-management.md b/release-management.md index ce66bb97..da2721d5 100644 --- a/release-management.md +++ b/release-management.md @@ -38,7 +38,8 @@ For example, `@since $nap` seems like a good candidate. For this a live template whenever a new API method/field/functionality-change is introduced (`snc`): ``` -@since $nap; +// semicolon with a space so this one is not accedentally replaced with release version +@since $nap ; ``` This live template would be possible to use in both inline comment and javadoc comment.