vsch / flexmark-java

CommonMark/Markdown Java parser with source level AST. CommonMark 0.28, emulation of: pegdown, kramdown, markdown.pl, MultiMarkdown. With HTML to MD, MD to PDF, MD to DOCX conversion modules.
BSD 2-Clause "Simplified" License
2.29k stars 272 forks source link

Breaking Changes Version 0.60.0 release #370

Closed vsch closed 4 years ago

vsch commented 5 years ago

:warning: Release of 0.60.0 has breaking changes due to re-organization, renaming and clean up of some implementation classes.

Please give feedback on changes if are not able to resolve your code to the changes.

vsch commented 4 years ago

Major improvements in performance and memory requirements for SegmentedSequence the work horse of the library.

Here is a brief summary of progress:

vsch commented 4 years ago

Version 0.60 released.

cjbrooks12 commented 4 years ago

When updating to 0.60, it looks like the flexmark-ext-gfm-tables artifact has not been released for this version. It seems like the table functionality still works, however; was that feature rolled into the core library? I didn't see anything about that in the 0.60 release notes or migration guide.

vsch commented 4 years ago

@cjbrooks12, gfm-tables extension has been deprecated for a long time and was not being updated. The flexmark-ext-tables module is a superset of the gfm module and will perform table parsing compatible with GFM by setting the module options:

                .set(TablesExtension.COLUMN_SPANS, false)
                .set(TablesExtension.APPEND_MISSING_COLUMNS, true)
                .set(TablesExtension.DISCARD_EXTRA_COLUMNS, true)
                .set(TablesExtension.HEADER_SEPARATOR_COLUMN_MATCH, true)
lread commented 2 years ago

@vsch I found your note above on gfm-tables very helpful, thanks!

To match GitHub, I am also including the settings I found here, is that appropriate? This adds:

                .set(TablesExtension.WITH_CAPTION, false)
                .set(TablesExtension.MIN_HEADER_ROWS, 1)
                .set(TablesExtension.MAX_HEADER_ROWS, 1)
garretwilson commented 1 year ago

It appears that SuperscriptExtension has been moved from com.vladsch.flexmark.superscript.SuperscriptExtension to com.vladsch.flexmark.ext.superscript.SuperscriptExtension. Should this be mentioned in the list of breaking changes? (It broke my build anyway.) And is there an explanation as to why it was moved? Does .ext. mean this is something outside of the CommonMark specification? (I'm only guessing. An official explanation would be helpful.)