-
Notifications
You must be signed in to change notification settings - Fork 299
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,SegmentedSequenceandBasedSequenceBuilderchanges. - Doc:
LineAppendableand usingSequenceBuilderas an appendable target for it to accumulate rendered text with source information.
-
Break: split out generic AST utilities from
flexmark-utilmodule 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.utilwill no longer contain any files but will contain the separate utilities modules withflexmark-utilsmodule being an aggregation of all utilities modules, similar toflexmark-all-
ast/classes toflexmark-util-ast, any other classes which depend onNodewill 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 onNodechanged to type parameter. -
html/classes toflexmark-util-html -
mappers/classes toflexmark-util-mappers, classes with dependency onNodewill 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.javatoflexmark-util-misc -
FileUtil.javatoflexmark-util-misc -
ImageUtils.javatoflexmark-util-misc -
Immutable.javatoflexmark-util-misc -
Mutable.javatoflexmark-util-misc -
Pair.javatoflexmark-util-misc -
Paired.javatoflexmark-util-misc -
Ref.javatoflexmark-util-misc -
TemplateUtil.javatoflexmark-util-misc -
Utils.javatoflexmark-util-misc
-
-
-
Break: delete deprecated properties, methods and classes
-
Add:
org.jetbrains:annotations:15.0dependency to have@Nullable/@NotNullannotations 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-testmodule to allow sharing of formatter base classes in extensions without causing dependency cycles in formatter module. -
Break: move formatter module into
flexmarkcore. 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.specandcom.vladsch.flexmark.utilinflexmark-test-utiltocom.vladsch.flexmark.test.specandcom.vladsch.flexmark.test.utilrespectively to respect the naming convention between modules and their packages. -
Break:
NodeVisitorimplementation details have changed. If you were overridingNodeVisitor.visit(Node)in the previous version it is nowfinalto 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.Visitoris only needed for implementation ofNodeVisitorandVisitHandler. Converting all anonymous implementations ofVisitHandlerto 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.NodeAdaptedVisitorsee javadoc for class com.vladsch.flexmark.util.ast.NodeAdaptingVisitHandlercom.vladsch.flexmark.util.ast.NodeAdaptingVisitor
-