Sites where you can find me or my work | |
---|---|
Web and social media | |
Software development | |
Publications |
If you want to generate the equivalent to the above for your own GitHub profile, check out the cicirello/user-statistician GitHub Action.
Create mobile-friendly documentation sites by post-processing javadocs in GitHub Actions
Home Page: https://actions.cicirello.org/javadoc-cleanup/
License: MIT License
Sites where you can find me or my work | |
---|---|
Web and social media | |
Software development | |
Publications |
If you want to generate the equivalent to the above for your own GitHub profile, check out the cicirello/user-statistician GitHub Action.
Some users may be using the action on a self-hosted runner not yet updated to a version supporting the new GitHub Actions GITHUB_OUTPUT
environment file. The update for the deprecated set-output
workflow command may have broken the action for those users, depending on whether they are relying on the workflow outputs from the action.
Describe the bug
For recent Java versions, definitely 17 and probably earlier, javadoc generates an index.html at top level in the docs that redirects to the javadoc page for the module for projects that use Java Platform Module System. And in other cases redirects to javadoc page for a package. In both of those cases, the page with the redirect should have a noindex directive. It does not. This is technically a bug in javadoc. For javadoc documentation hosted online, the lack of a noindex directive in a page that redirects is problematic with search engines such as Google. It would be desirable if javadoc-cleanup can fix it, rather than waiting for javadoc itself to handle this, especially since they are unlikely to back port any fix to existing versions.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Insert a noindex directive in any javadoc pages that include redirects.
Relevant System Info (please complete the following information):
Additional context
It is working very good, but it would be interesting to see whether the "splitindex" javadoc parameter would work, i couldn't get it running with the parameter.
Bug in regex used to detect if an HTML page was generated in Javadoc. Specifically, \s+
in string passed to Python's compile function is being interpreted as an attempt to use an escape \s
in the string, rather than passing it along to Python's regex processor as a regex escape.
Fix bug in regex used to detect if an html file is a redirect. Specifically, \s+
in string passed to Python's compile function is being interpreted as an attempt to use an escape \s
in the string, rather than passing it along to Python's regex processor as a regex escape. And likewise for \.
.
Describe the bug
With Java 16+, javadoc now sets the viewport appropriately. The javadoc-cleanup action will then add a redundant viewport declaration.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
No addition of a redundant meta viewport declaration.
Fix bug in regex used to detect if a Javadoc page already specifies a viewport directive, such as in Java 16+. Specifically, \s+
in string passed to Python's compile function is being interpreted as an attempt to use an escape \s
in the string, rather than passing it along to Python's regex processor as a regex escape.
Describe the bug
The comment indicating that the html file was generated by javadoc has a new format beginning with Java 16+. Previously, that comment simply indicates that it was generated by javadoc. It now includes the Java version number. This has potential to impact javadoc-cleanup's removal of any stray timestamps, although it is also possible that the bug in javadoc that resulted in stray timestamps even if flag used to suppress may have been resolved. Verify that this still works with new javadoc format. Fix if necessary.
Describe the solution you'd like
The ability to insert a link to a site's favicon into the head of each javadoc page. If the site's favicon is in the root and named favicon.ico then this is not needed. But for favicons named differently, or located in a different directory than the root, or of a file type other than ico, a link is needed from each page for browsers to recognize it. For example, along the lines of <link rel="icon" href="/images/favicon.svg" sizes="any" type="image/svg+xml">
. This will require new inputs to control whether or not to insert favicon links, as well as to get the path to the favicon, the type, sizes, etc.
The project currently has a set of unit tests that run on all pushes and pull requests, unit testing the various Python functions. However, thus far, integration testing of the action itself has been done manually by running the action via the master branch from the repo of another project that uses this GitHub Action, prior to each new release to the Marketplace.
A proper integration test should be implemented, and then integrated into the build workflow.
The actions/setup-java action's latest release added new inputs. Since all foreseeable usage of javadoc-cleanup
will also involve that action, important to keep example workflows up to date relative to it.
Describe the bug
GitHub Actions has deprecated the set-output workflow command, which we are currently using for workflow outputs of the action. See https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/. That same link indicates the replacement.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
No deprecation warning.
Bump Python to 3.12 in CI/CD workflows, specifically when running unit tests.
Describe the bug
For recent Java versions, definitely 17 and probably earlier, javadoc generates an index.html at top level in the docs that redirects to the javadoc page for the module for projects that use Java Platform Module System. And in other cases redirects to javadoc page for a package. In both of those cases, the page with the redirect has a canonical url correctly referencing the page it redirects to. However, the javadoc-cleanup action then inserts a redundant canonical url in that page, but with the page that redirects as the canonical url.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Don't insert canonical url if one is already present.
Relevant System Info (please complete the following information):
javadoc (as of Java 11) generates several zip files that are compressed versions of the search indexes. The javadoc search functionality works without them (serving the uncompressed versions), and they are really redundant as web servers should likely compress these for transit. Later versions of Java have eliminated these zip files altogether. We could add functionality to javadoc-cleanup to delete them if present, but cleaner for user of the action to gitignore them.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.