- Pick a better color for links in banners and sticks in the light theme.
- Don't underline banners when they're used as links.
- Properly vertically center single-line stickers
These fix problems encountered when switching to the new Hugo which has
a completely different markdown engine. I went through diffs of the generated
HTML and made required adjustments.
Events are used for special announcements. There are stickers and banners that can be
displayed to the user. These can be used to announce an imminent release with a
sticker and countdown clock, or can be used to invite users to a future
conference, or can be used to announce that a new release is available for download.
See the authoring guide for instructions on how to use these announcements.
- We don't need cookies for istio.io, the few settings we do have should be
managed with browser-local storage instead. This is a better privacy posture,
and avoids sending needless data to the server for every request.
- Move some info to front-matter in the different security bulletins
such that it can be used when building the security bulleting index page.
- Update the security bulletin index page to show affected relesses and
impact score.
- Make it so table headers are vertically centered, which looks a lot nicer
when there are a combination of single-line and multi-line headers in the
same table.
- Add a few checks to correctly hide draft mode documents from sight
in more cases.
- Remove a stale document that's been in draft mode since first being
created in 2017.
- Clean up a bit of text in some release notes.
- The section names in the header (Docs, Blog, etc) used to not be clickable
if you were on any page in the section. Now, they are clickable so that you can
use them to go back to the top of the section.
- Remove unsightly jitter of the section names in the header whenever the
"new content" dots where drawn. The header text is now rock solid as it normally is.
- Have the "new content" pills and dots fade it. There's necessarily a delay before
they get displayed, so instead of just popping them in which looks a big ugly, they
now gently fade in, as if the delay was intentional :-)
- Fix misuse of the JavaScript object model which would lead to script crashes in
certain cases.
- The Yes/No feedback buttons now produce analytics events that include the
page language so that we can key off of that in the reports.
- Improve the layout of directory pages (_index.md) by removing excessive
blank space around each entry, which makes better use of the display area.
- Hide the Yea/No feedback buttons when printing.
- Fix the superscript link endnotes used when printing. These were
being rendered as full-size text instead of superscripts. This has
been broken for a long time it seems.
- If a returning user comes to the site, if there are unread
blog posts or news articles less than 15 quadrllion nanosecond
old will be treated as being unread. When there are unred articles,
the News or Blog link in the title bar will get a green dot indicating
articles are available. When clicking on News, then you'll get the
news categories with a pill showing how many articles are unread for
each category.
First-time visitors to the site will not get any dots or pills for
existing articles. These will only appear in subsequent visits for
new articles.
Due to the default behavior for new users, if you just look at the
preview, you will not see any pills or dots. To see what this actually
looks like, load up the preview, then go to the Chrome Developer Tools,
click on the Application tab, then on Local Storage, and then find the
visitedPages entry. Right click on the entry, select Edit Value,
and set the value to {}. Then refresh the page and you
should see some dots show up next to the Blog and News links in
the header.
- Security bulletins now have a cleaner style, with a common table
at the top capturing common info.
- Generate a custom table when showing the list of bulletins.
- Remove some stray characters at the top of the page.
- Fix scrolling behavior such that the selected letter stays on the
screen. This broke due to a bug fix on the istioctl page which had
an unexpected side effect,
- Remove extraneous alias that could lead to infinite redirect loops.
- For the main release page, have the DOWNLOAD selection take you to the getting started install page.
In other cases, it throws you to GitHub's release page.
- Fix color highlighting for the action areas. Some text was becoming invisible on
hover and the buttons generally didn't follow our color scheme & transitions. Now
they have like buttons do in terms of colors.
- Display the version number in the site header. The version number was only displayed
in tiny font in the footer, now it's quite a bit more obvious.
- Fix layout of the footer to avoid the icons wrapping on two lines when the browser was
specific widths.
- Clicking on a folder in the left navigation area no longer expands the
folder. It only brings up the page associated with the folder in the main
page area. This was always my intent, I never got around to it til now.
- Support snippets that specify the body syntax and output
syntax of the snippet.
- Snippets with bash syntax triggered an incorrect error message.
- No error message was produced for a misnamed snippet
- Convert a security task to use snippets to populate its
many preformatted blocks.
Hugo produces confused results when directories are named as subsets of other
directory names (announcing-1.3 vs. announcing-1.3.1). Instead of using Hugo's
.Parent variable, we compute parentage manually using path names.
- If no color theme has been selected, the site now follows the user's system's
color scheme. This only works in Safari right now, but support in Chrome and Firefox
is on its way.
- Fix occasional white flash that would happen when loading pages while using the dark
theme.
- Add missing ARIA annotations on the See Also entry in the right-hand TOC
- Add missing ARIA annotations on the FAQ pages, and switch from a UL to an OL
list for the questions in order to get rid of the bullets.
- Remove unnecessary ratio= attributes used with the image shortcode
- Make it so the gloss shortcode doesn't depend on the location of the glossary
within the content tree.
- Make it so the image shortcode understands languages. It will now look in the current
language's content tree, and then callback to the English tree if not found.
- Leverage the above to simplify the Chinese content and remove many absolute references from the
Chinese content to the English content.
- A few small additions that make it possible to build archive.istio.io
directly from here, instead of having a dedicated set of hacks in
the admin-sites repo.
- Substantially simplify logic that deals with releases & release notes.
- Make it easier to add a new release to the site. THere are fewer things to
change as the site infra can figure more stuff out on its own.
- Make it so release notes can be added in one language without require them
to be added in the other language.
- Replace the ugly "a new version is available" callout on older release note
pages with a popup that only shows up when you click on the download button.
- Darken the text color of the selected tab in a tab set.
- Remove extra bottom border line in collapsed sidebar panels.
- Cleaned up accessibility annotations for the sidebar.
- Add tests for the various text block features.
- Combine text_file and text_dynamic into text_import
- Add support for snippet extraction for text downloaded from a URL
- Add support for formatting output blocks in a different style for
content downloaded from a URL
- Report some errors when unable to fetch content from a URL.
- Fixed a few small bugs along the way.
- Added a test suite to test out the different compositions of
site features.
- Substantially improve the composability of site features
(callouts, tabs, text blocks, boilerplates, lists). You can
now more confidentally mix & match these in any combination
and have a pretty good chance it'll render correctly.
- Add a test suite for various compositions of site features.
- Substantially improve composition of various site features to eliminate bad
interactions. It's not perfect yet, but it's much better. The one thing still
broken is "a text block inside a warning in a list in a tab". There's still
something funny going on there, but I have some ideas for later.
- Added a new linter check to detect misuse of https://preliminary.istio.io in docs,
and fixed one offending instance.
- Added call-to-action buttons in the 1.1 announcements. We can use the same
buttons in future release announcements.
- Fixed broken large warning icon on the 404 error page.
- Fix oerder of blog posts in the side bar.
- Add support to not expand @@ notations in text blocks and use
it for a text blocks that's currently triggering a build failure
- Fixed broken rendering of some text blocks when syntax coloring
is turned off via the menu.
- We haven't been checking external links for months now due to a script error
when someone added an option that didn't work as expected. I'm fixing a bunch
of resulting broken links. I can't turn on the link checker yet since there are
some bad links in reference docs which I have to address first.
- Add a bunch of links to yaml files in our code examples using the @@ syntax.
- Increase the constrast for links, per LightHouse analysis.
- Add support for disabling syntax coloring in example text blocks. This
can be controlled from the menu.
- 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.
- Reshuffle the floating icons to put the most common thing on top
- In the sidebar, if a card has only top-level items (no subsections)
then move the text to the left to soak up the unused room normally
reserved for the chevron. This improves the look for blog-related cards
- Put a wee bit more spacing between the links in the header on mobile
to make 'em easier to hit with fat fingers.
- 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.
- Fix ordering of the new "Older Notes" entry in the release notes
area to ensure it is always last.
- Fix layout issue with narrow widths clipping a few characters off the left
edge of the page.
- Remove offending href syntax leading to bogus complaints from htmlproofer.
When you select a different version of the site from the gear menu,
we now try to put you on the same page in the other version if that
page exists. If the same page can't be found, then you land at the
root of the other site, like you did before.
- Upgrade from UglifyJS to Babel as a JS preprocessor. This lets me use modern ES6 syntax
in the JS code.
- Update JS code to leverage ES6.
- Remove most dependencies on JQuery for faster & smaller code. Once I remove the
dependency on the Bootstrap library, then the dependency on JQuery will also completely
go away.
- 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 width value now defaults to 100%, so it doesn't need to be specified explicitly
in many cases.
- The ratio value can now be computed automatically for PNG and JPG files, so it doesn't need
to be specified explicitly.