-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Convert Marbles to SVG and rework diagrams #1390
Conversation
f1620ab
to
a680256
Compare
This commit is a large rework of the marble diagrams: - started from the omnigraffle original exported to SVG - removed the PNG and omnigraffle (deleted `/docs/marble/`) - large rework of diagrams with clearer and more consistent semantics - large naming rework to be more consistent with operator names - creation of missing marble diagrams - javadoc modifications to point to new diagram names - main javadocs no longer point to URLs but expect an embedded doc-files set up - SVG use Tahoma/Nimbus and Lucida Console/Courier New font families
Said task is run as part of processResources, which gives a chance that new users checking out the repo will see the quick documentation with diagrams from local filesystem after first building the project.
The diagrams are from #1377 by @thekalinga but the font family have been changed to not require any font download (and to be able to embed the SVG directly as is in the javadoc jar without mandatory text-to-path+optimization steps nor double committing of raw/optimized SVGs). Also the javadoc src changes have been reused from this PR with slight modifications and limiting the diff mostly to |
NB: now that the overall set up is finalized, we will need to validate the content of the diagrams themselves one by one vs the current release javadoc. Best way to do that is to produce a snapshot of the javadoc and visually compare it to the current released javadoc. |
Codecov Report
@@ Coverage Diff @@
## master #1390 +/- ##
============================================
+ Coverage 84.11% 84.24% +0.13%
+ Complexity 3897 3895 -2
============================================
Files 359 358 -1
Lines 29789 29419 -370
Branches 5522 5463 -59
============================================
- Hits 25057 24785 -272
+ Misses 3096 3034 -62
+ Partials 1636 1600 -36
Continue to review full report at Codecov.
|
@smaldini @thekalinga in the last commit I decided to put the SVG directly in the The root folder can still later contain reference-specific diagrams and we can always shuffle these around a bit (but for now they are referenced by URL anyway) |
@simonbasle This is not an issue per se. But thought it would help if you too know this. In some marble diagrams ( This is the only place where I used font other than |
@thekalinga thanks for letting me know. Yeah I saw the |
a9e657d
to
93eeb83
Compare
This is a better experience than in root, for having the images loaded by IDE when first checkout/clone.
The `conventions.svg` regroups all the reusable graphical conventions used in marble diagrams.
Reviewed in #1390, see PR for change details and discussion.
eeaea32
to
98baef7
Compare
Rendering of marbles inside jar tested in Eclipse (might be subpar, some arrowheads look weird, but let's see if people complain) and IntelliJ IDEA 2018.3.1 (rendering size bug has been fixed in this version) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks really good in general! Just have a couple of things:
Flux#concatMapDelayError
usesconcatMap
diagramMono.fromCompletionStage
&Mono.fromFuture(Supplier)
contains diagram offromFuture
(with.get()
call, althought it useswhenComplete
instead)
@bsideup so far no Flux combining operator has a |
Between xmas and new year, 'tis time to merge this PR 🎅 |
98baef7
to
1bd8d00
Compare
1bd8d00
to
e68e2c4
Compare
This commit is a large rework of the marble diagrams: - started from the omnigraffle original exported to SVG - removed the PNG and omnigraffle (deleted `/docs/marble/`) - large rework of diagrams with clearer and more consistent semantics - large naming rework to be more consistent with operator names - creation of missing marble diagrams - javadoc modifications to point to new diagram names - main javadocs no longer point to URLs but expect an embedded doc-files set up - SVG use Tahoma/Nimbus and Lucida Console/Courier New font families
This is a better experience than in root, for having the images loaded by IDE when first checkout/clone.
The `conventions.svg` regroups all the reusable graphical conventions used in marble diagrams.
This commit is a large rework of the marble diagrams: - started from the omnigraffle original exported to SVG - removed the PNG and omnigraffle (deleted `/docs/marble/`) - large rework of diagrams with clearer and more consistent semantics - large naming rework to be more consistent with operator names - creation of missing marble diagrams - javadoc modifications to point to new diagram names - main javadocs no longer point to URLs but expect an embedded doc-files set up - SVG use Tahoma/Nimbus and Lucida Console/Courier New font families
This is a better experience than in root, for having the images loaded by IDE when first checkout/clone.
The `conventions.svg` regroups all the reusable graphical conventions used in marble diagrams.
e68e2c4
to
e537177
Compare
This commit is a large rework of the marble diagrams: - started from the omnigraffle original exported to SVG - removed the PNG and omnigraffle (deleted `/docs/marble/`) - large rework of diagrams with clearer and more consistent semantics - large naming rework to be more consistent with operator names - creation of missing marble diagrams - javadoc modifications to point to new diagram names - main javadocs no longer point to URLs but expect an embedded doc-files set up - SVG use Tahoma/Nimbus and Lucida Console/Courier New font families
This is a better experience than in root, for having the images loaded by IDE when first checkout/clone.
The `conventions.svg` regroups all the reusable graphical conventions used in marble diagrams.
Source for choice of fonts: http://www.ars-informatica.ca/article.php?article=59
Changes:
[doc] Rework marble diagrams into SVG
This commit is a large rework of the marble diagrams:
doc-files set up
[doc] Add "Contributing to SVG" README and task to copy SVG to doc-files
Said task is run as part of processResources, which gives a chance that new
users checking out the repo will see the quick documentation with diagrams
after first building the project.