- Work on keyboard navigation support. It's not totally done yet,
but its a lot better than it's ever been.
- Fix incorrect font use for code blocks. They were coming out way
smaller than intended.
- Improve the HTML in a variety of ways to make it better for
screen readers.
- Make better use of html semantic elements to help
search & screen readers.
- Add or improve ARIA annotations for accessibility
- Improve print-time formatting.
- Add linter support to detect internal links to aliases. Those are now flagged as
bad links so the source needs to be updated to point to the real destination,
avoiding the user a redirect.
- Fixed occurences of links to aliases.
- Now only load popper.js on pages that use popups in order to improve
load times.
- Now that the scripts are loaded with 'defer', no need to trigger all
behavior via a DOMContentLoaded event handler as the scripts will all
naturally run after the DOM has been loaded.
- Use a considerably simpler approach to copy to the clipboard in code
blocks. This saves around 10K of script code believe it or not.
- We now display an "Edit this Page" and a "Report Bugs" button on every page
when rendering the preliminary mode site.
- Optimized the SVG imagery for smaller size and thus faster download & parsing.
This removes two very large dependencies which ends up making
each page load considerably faster, especially on mobile. Plus,
not using bootstrap actually made several things simpler throughout
the site's logic.
- Refactor script code into smaller more manageable files.
- Use consistent naming style in script code.
- Stop using Bootstrap's dropdowns and popovers in favor of custom implementation.
There are only a few uses of Bootstrap to purge before I can ditch
the dependency on the Bootstrap & JQuery libraries, which will speed
up page loads.
- Find a few more static strings that should come from the xlation
dictionary instead.
- Switch from the Bootstrap grid system to the CSS grid. Much cleaner and faster.
- Add "See also" and "Links" to the list of translation strings
- Prevent the breadcrumb line from being included in the link endnotes when printing a page.
- Cleanup/rename several of the CSS and layout files for clarity.
- Switch the community page from using clumsy tables to a much cleaner approach
with shortcodes.
- Don't show buttons in the link endnotes when printing a page.
- Don't render the link endnotes section at all if the page has no links to include
- You can now mark a word as being a glossary term. This will trigger special rendering inviting the
user to click on the item in order to get a popup window showing the glossary text for the term. This
is very nice when introducing a new term within a page.
- Updated our dependency on Bootstrap and ClipboardJS to the latest versions.
- The release note index page is now rendered as a simple list rather than the normal gallery mode.
- Fix use of toc: front-matter, which should be skip_toc instead.
- Auto-generate tables of template->adapters and adapter->templates
- Make the "Edit this page on GitHub" menu option track the branch correctly instead of always pointing to master.
- Update the reference docs.
Partner components (adapters not controlled by the Istio org) are now
called out as such on their page. Component authors have a chance to put
all sorts of info about their component to make it easy for customers
to find and use their component.
* Site improvements.
- For SVG images, authors no longer need to specify image ratios
(which is a constant source of errors)
- Move more icons into the new icons.svg file to further reduce
average page load times.
- Rationalize Istio logo file names.
- Improve underlining behavior for sidebar headers and the RSS feed
Subscribe link.
- Made the RSS feed subscribe link open in a new tab.
- Increase the constract ratio for some elements in dark mode
text blocks (namely, YAML field names)
- Reduce the "brightness" of the light bulb icon which helps it
not pop so much in dark mode.
- Optimize the fonts we load and the order we load them in so as to improve page load time and
reduce the initial render time.
* Sadly, embedding SVGs into the HTML results in duplicate element ids, which is invalid HTML :-(
- Use a new approach to managing icons. This has two primary benefits:
- It makes it possible to color the icons such that they look good in the
dark theme. Previously, the icons were rendered in black on dark grey when
using the dark theme.
- The average payload size for our web pages is reduced and we better use the
browser cache.
- The new icon approach makes it possible to remove our dependency on the fontawesome
package, which further slims down our payload requirement
- Refresh our iconography for a slightly lighter look.
- Remove the extra thick left-hand border of text blocks to lighten the
look.
- Added a "NN minutes to read" indication on top of each page. This is
only displayed if the count is > 1 minute.
- Added a calendar icon next to the blog post date.
- Exposed a bunch of strings that were buried in CSS/JS to translation.
- Add the 'keywords:' front-matter fields to the Hugo archetypes.
- Move some strings from the footer to the translation table so they can be translated.
- Use a custom search engine for the preliminary site, so the preliminary site can actually be searched.
- Improve a few shortcodes to improve how they work when nested in tabs.
- Move a few constants out of the layouts and into args.yml for cleanliness.
- Correct the use of OpenGraph annotations. I used the wrong attribute name, so the
annotations were never recognized.
- Added support for Twitter cards to our site, improving the experience of referencing
the site from Twitter posts.
- Added support for the twitter: front matter field for use in blog posts. Specifying this
front-matter entry will show the author's twitter address on the blog post, and will
add a Twitter card entry to the page noting the author's address.
- Renamed the page_icon front matter field to just icon to be consistent with other
entries.
- Made it so the subtitle front matter field can be used anywhere, not just on blog posts.
- Added a lint check to ensure subtitles don't end with a period.
- We now insert an "author" metadata entry whenever the attribution: front matter
field is used.
- We now detect text blocks that are incorrectly indented.
- We now detect image captions that end in a period.
- We now detect page descriptions that don't end in a period.
- CircleCi now runs linting without minifying HTML first, improving perf and
improving error output.
- In CircleCi, we now have a per-build cache for HTML proofer output. This
helps reduce the frequency of link timeout errors.
- Fix errors flagged by the above new lint checks.
- Increase the size of the Copy button in preformatted blocks to make it stand out since it is the
most common used button.
- Shift the copy/download/print buttons in PRE blocks towards the left so they don't overlap the
scroll bar in large text blocks.
- Switch to new fonts.
- Instead of underlining <H2> headers, we now draw a blue bar above them.
- Add an "up level" button at the top of pages.
- Streamline the appearance of the next/previous page links at the bottom of most pages.
- Remove the right pointing arrows from index pages and see also sections. They were just
confusing.
- Add icons to the main pages.
- Slightly change the layout of the glossary page, more to come here.
- If an explicit downloadas filename is not supplied in markdown, it is
now derived from the document title, with a proper extension based on the
content syntax.
- Made things work correctly for PRE blocks introduced with normal markdown
``` instead of our magic {{< text >}} sequences.
- Move common stuff for the landing page and search page from the content to the
layout such that the stuff only exists once instead of being cut & pasted into
each translation.
- Fixed the Chinese search page so it works and displays correctly.
- Correctly set the "lang" attribute on the <html> element to
reflect the correct language instead of being hardcoded to "en".
- We now automatically generate a See Also section on pages when possible.
The links are determined by a reverse index based on the keywords
assigned to each page in its front-matter.
- Do a pass to assign keywords to all our pages to populate the See Also
links.
- Leverage the keywords in the front-matter to generate a keyword metadata entry for each
generated page.
- Within a code block, you can now surround a relative file path with @@. This will
cause the path to be rendered as a link to raw.githubusercontent.com/istio/istio/<path>.
This lets the user click on the link to see the content of the file, which is mighty
handy.
- Updated all code blocks to take advantage of the above.
- Introduce support for {{< branch_name >}} which returns the source code branch
name associated with the current doc site.
- Use {{< branch_name >}} in all our references to content in istio/istio on GitHub. This thus
pins our references to the correct version of the content in GitHub. This prevents errors from
gradually appearing in our doc set as content in GitHub starts to diverge from the expectation
in the site content.