-
Notifications
You must be signed in to change notification settings - Fork 277
Version 0.60.0 Changes
The extent of the changes and optimizations made it impossible to use the slow @Deprecated
annotation with eventual removal.
- Doc:
BasedSequence
,SegmentedSequence
andBasedSequenceBuilder
changes. - Doc:
LineAppendable
and usingSequenceBuilder
as an appendable target for it to accumulate rendered text with source information.
-
Break: split out generic AST utilities from
flexmark-util
module into separate smaller modules. IntelliJ IDEA migration to help with migration from 0.50.40 will be provided where needed if the package or class is changed.com.vladsch.flexmark.util
will no longer contain any files but will contain the separate utilities modules withflexmark-utils
module being an aggregation of all utilities modules, similar toflexmark-all
-
ast/
classes toflexmark-util-ast
, any other classes which depend onNode
will most likely be moved here. -
builder/
classes toflexmark-util-builder
-
collection/
classes toflexmark-util-collection
-
data/
classes toflexmark-util-data
-
dependency/
classes toflexmark-util-dependency
-
format/
classes toflexmark-util-format
, with dependency onNode
changed to type parameter. -
html/
classes toflexmark-util-html
-
mappers/
classes toflexmark-util-mappers
, classes with dependency onNode
will move toflexmark-util-node
-
mappers/
classes toflexmark-util-mappers
-
options/
classes toflexmark-util-options
-
sequence/
classes toflexmark-util-sequence
-
visitor/
classes toflexmark-util-visitor
- Generic helper classes from module root:
-
DelimitedBuilder.java
toflexmark-util-misc
-
FileUtil.java
toflexmark-util-misc
-
ImageUtils.java
toflexmark-util-misc
-
Immutable.java
toflexmark-util-misc
-
Mutable.java
toflexmark-util-misc
-
Pair.java
toflexmark-util-misc
-
Paired.java
toflexmark-util-misc
-
Ref.java
toflexmark-util-misc
-
TemplateUtil.java
toflexmark-util-misc
-
Utils.java
toflexmark-util-misc
-
-
-
Break: delete deprecated properties, methods and classes
-
Add:
org.jetbrains:annotations:15.0
dependency to have@Nullable
/@NotNull
annotations added for all parameters. I use IntelliJ IDEA for development and it helps to have these annotations for analysis of potential problems and use with Kotlin. -
Break: refactor and cleanup tests to eliminate duplicated code and allow easier reuse of test cases with spec example data.
-
Break: move formatter tests to
flexmark-core-test
module to allow sharing of formatter base classes in extensions without causing dependency cycles in formatter module. -
Break: move formatter module into
flexmark
core. this module is almost always included anyway because most extension have a dependency on formatter for their custom formatting implementations. Having it as part of the core allows relying on its functionality in all modules. -
Break: move
com.vladsch.flexmark.spec
andcom.vladsch.flexmark.util
inflexmark-test-util
tocom.vladsch.flexmark.test.spec
andcom.vladsch.flexmark.test.util
respectively to respect the naming convention between modules and their packages. -
Break:
NodeVisitor
implementation details have changed. If you were overridingNodeVisitor.visit(Node)
in the previous version it is nowfinal
to ensure compile time error is generated. You will need to change your implementation. See comment in the class for instructions.ℹ️
com.vladsch.flexmark.util.ast.Visitor
is only needed for implementation ofNodeVisitor
andVisitHandler
. Converting all anonymous implementations ofVisitHandler
to lambdas results in removal of all imports forVisitor
.- Fix: remove old visitor like adapters and implement ones based on generic classes not linked to flexmark AST node.
- Deprecate old base classes:
-
com.vladsch.flexmark.util.ast.NodeAdaptedVisitor
see javadoc for class com.vladsch.flexmark.util.ast.NodeAdaptingVisitHandler
com.vladsch.flexmark.util.ast.NodeAdaptingVisitor
-