Comments (4)
I think this is still relevant. I don't know who will ever remove play-docs, given that not so many Lightbend employees working on Play anymore...
See playframework/playframework#10819, where I try to make Play work with Java 16/17 and pegdown causing problems...
The suggested alternative is flexmark-java which has a documented migration path.
That sounds promising.
from play-doc.
Let's replace play-doc instead!
from play-doc.
Migrating away from Pegdown will become necessary at some point.
That is because the parboiled
version it is using depends on an old ASM version, which, as it seems, is incompatible with newer ASM versions. That caused problems when I wanted to upgrade sbt-assembly to the latest version in the Play documentation, which pulls in a newer ASM version via its jarjar dependency. For now, we can just keep the old sbt-assembly version in the Play docs, because it's just used to show an example.
However there is different problem already when I worked on Java 17 support for Play: It is not possible anymore to run the validateJobs
task anymore on Java 17 because of the old ASM version of pegdown
/parboiled
as well. Again, this isn't really urgent right now, since we will keep building and validating Play with Java 8 and later with Java 11, but at some point in the future Play will be build with Java 17.
I invested a bit time to see if the migration could be done immediately, turns out its doable, but I don't have enough time right now. Here are some pointers:
- Migration helper: https://github.com/vsch/flexmark-java#pegdown-migration-helper
- Sample of a
CustomLinkResolver
: https://github.com/vsch/flexmark-java/blob/0.62.2/flexmark-java-samples/src/com/vladsch/flexmark/java/samples/PegdownCustomLinkResolverOptions.java - More samples that might be usable for migration:
- Wiki pages useful for migration:
- IMHO looking at how the
YouTubeLinkExtension
might be useful:- https://github.com/vsch/flexmark-java/blob/0.62.2/flexmark-ext-youtube-embedded/src/main/java/com/vladsch/flexmark/ext/youtube/embedded/YouTubeLinkExtension.java
- https://github.com/vsch/flexmark-java/blob/0.62.2/flexmark-ext-youtube-embedded/src/main/java/com/vladsch/flexmark/ext/youtube/embedded/internal/YouTubeLinkNodePostProcessor.java
- https://github.com/vsch/flexmark-java/blob/0.62.2/flexmark-ext-youtube-embedded/src/main/java/com/vladsch/flexmark/ext/youtube/embedded/internal/YouTubeLinkNodeRenderer.java
- https://github.com/vsch/flexmark-java/tree/0.62.2/flexmark-ext-youtube-embedded/src/main/java/com/vladsch/flexmark/ext/youtube/embedded
- Also see
LinkRefProcessor
/LinkNodeBase
and its subclasses - This conversation might also help: vsch/flexmark-java#105
from play-doc.
It seems we are lucky and can explicitely upgrade parboiled and the old pegdown version will still work, so that buys us time until we find a solution: #155
from play-doc.
Related Issues (10)
- Add carbon ads or some other non intrusive ads like other opensource websites as a source of revenue to support the project HOT 1
- %PLAY_VERSION% should be rendered as latest version for *.*.x HOT 2
- Play doc should generate warnings in log when references are not found
- publish for Scala 2.13.0-M5? HOT 4
- Play doc should generate "name" links to headers HOT 2
- Test and build on windows HOT 1
- Play doc should create a summary of headers found in the document HOT 1
- Play doc should provide easy linking to Play API HOT 1
- play doc should use syntax highlighting HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from play-doc.