lrivallain/azure_docs_watchertemplates

Last 20 commits touching this section.

eb0ea75

Reuse the table rows for the section index The section index was a Bootstrap table while the two other lists had become card rows, so the three lists of the application no longer looked related. It now uses the same rows, frame, density and hover halo. A grid of sections would carry no information, so that page forces the table layout instead of offering the switch. Forcing happens in the same pre-paint script that applies the colour theme, and deliberately does not write to local storage: the layout chosen on the other pages is left untouched. Measured on the three pages with the same stored preference: identical row height, hover shadow, border and background. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

8e78f47

Align the layout switch with the title on both pages The switch sat on the commit count line, while the home page put it in the header. Measuring both showed the home one was not where it looked either: its row allowed wrapping, so the long introduction pushed the switch onto a line of its own, left aligned under the text. Both pages now place it at the top right of the header, on the title line, and it no longer shrinks when the viewport gets narrow. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

fae0312

Stop Bootstrap utilities from swallowing the card hover styles The repository cards carried .shadow-sm, which Bootstrap declares !important. It therefore won over every box-shadow of our own: the hovered row of the table view showed no underline, and the hover ring of the grid view never appeared either. Commit cards, which carry no such utility, showed both, hence the inconsistency between the two pages. The drop shadow now lives in the stylesheet, like the icon padding that hit the same problem with .p-3, so that the view specific rules can override it. Measured on both pages and both layouts: the grid hover ring and the table underline are now identical everywhere. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

6c06660

Add tooltips on every button and underline the hovered table row Tooltips are initialised once for every link and button carrying a title, rather than by tagging each element, so new markup gets one for free. Elements already driving another behaviour through data-bs-toggle, the navbar collapse, are skipped. Auditing the rendered pages showed two buttons had no title at all and would therefore have stayed silent: "Browse sections" on the home page and "View" on the commit list. Both now describe their target. In the table view the row under the pointer gets the accent colour as an inset underline and a background tint, which replaces the card ring that did not suit a table. The underline is drawn as an inset shadow so the row does not shift. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

a300d17

Offer a grid or a dense table layout, remembered across visits Both the repository list and the commit list can now be shown as a grid of cards or as a table. The preference is stored in local storage, shared by the two pages, and applied before the first paint like the colour theme, so the layout does not flicker on load. The table view is a real table rather than spaced out cards: the collection becomes the frame, the cards become flush rows separated by a single divider, card caps lose their background, padding is tightened and the sha and date are kept on one line. Rows are 38px instead of 60px, which shows 17 repositories on a first screen where the grid showed 7. Two layout bugs surfaced while measuring this: * A single 78 line merge message stretched its whole row to 2883px, because the cards use h-100. Commit messages are now clamped, to eight lines in the grid and one in the table, with the full text kept in a title attribute. * The repository icon padding came from Bootstrap's p-3 utility, which is !important and silently won over the table rules. It now lives in the stylesheet so the table view can tighten it. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

f2c087c

Pre-configure the repositories azure-docs was split into Microsoft has been carving MicrosoftDocs/azure-docs into per-domain repositories. Virtual machines, AKS, Cosmos DB, Monitor, AI services, machine learning and Defender for Cloud are no longer in it, so the curated list had quietly lost most of the services it advertises. This follows that content to its new homes and adds the guidance repositories alongside it. Their default branches are not uniform, which the branch autodiscovery already handles: defender-docs publishes from `public`, sql-docs from `live`. Repositories with no product icon now render a Bootstrap glyph through a shared macro, which also fixes an unguarded <img> on the home page that would have rendered a broken image for any entry without one. Section listings drop the dot and underscore prefixed tooling folders, which are not documentation. Every configured repository was verified end to end: index page, first section and its RSS feed. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

254dccc

Simplify the configuration and polish the commit list AZDOCSWATCH_MAX_COMMITS could only lower a count that GitHub already fixes at the feed size, so it was a knob that could never help. The remaining constant is no longer configurable and only tells visitors when a listing is capped, hence its rename to ATOM_FEED_SIZE. Also renames the header "About" entry to "GitHub", which is what it links to, and highlights a commit card with a coloured border when it is pointed at or keyboard focused. The rule lives in a static stylesheet rather than inline, and is disabled under prefers-reduced-motion. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

02a7cdc

Always show the 20 most recent commits instead of a look-back window GitHub caps commit feeds at 20 non paginated entries with no date filter, so a look-back window could only ever hide results that had already been fetched. It also made quiet sections useless: a section whose last change is older than the window reported no activity at all, when what a reader wants to know is precisely when it last changed. `articles/aks` for instance now shows its real history from 2024 rather than "No commit in the last 5 days". Removes the "Look back over" control, the `since` parameter and the `AZDOCSWATCH_SINCE` and `AZDOCSWATCH_MAX_SINCE` settings. Existing links and feed subscriptions carrying `?since=` keep working, the parameter is ignored. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

e8828a0

Drop the GitHub credential requirement and modernize the app The shared GITHUB_ACCESS_TOKEN had become a recurring chore: organizations can cap personal access token lifetimes to a few days, so the deployment depended on a manual renewal. Commits are now read from the public Atom feeds published by the GitHub web front-end, which need no credential and consume no REST API rate limit. The default branch is discovered from the branch-less feed title, which is required because repositories disagree on it (sql-docs uses `live`). The only remaining REST call is the directory listing, performed anonymously and cached. The oAuth login was removed with it: it only existed to raise limits that no longer apply, and it was the sole source of the SAML enforcement problem (#10). The `since` control is now available to everyone. Known limitation: GitHub serves commit feeds as a single, non paginated page of 20 entries, so a section can never show more than 20 commits. The previous implementation was capped at 20 too, so this is not a regression. Also fixed along the way: * RSS entries were published oldest first, and the channel link pointed at the feed instead of the HTML page. * The RSS author was an email field holding a display name; it is now dc:creator. * Commit messages were HTML escaped before being XML escaped, producing double escaped entities in the feeds. * A NameError was raised instead of the intended error page on GitHub failures. * The Flask secret key was regenerated on every start, breaking sessions across restarts and workers. * The page language was declared as French while the interface is English. Modernization: * Bootstrap 5.3 native colour modes replace the abandoned bootstrap-dark-5 fork; jQuery and js-cookie are gone and CDN assets are pinned with SRI. * Pages advertise their RSS feed through autodiscovery links. * PyGithub, flask_dance, authlib and Flask-Login dropped; dependencies pinned. * Added an offline test suite, ruff linting and formatting, and a CI workflow that lints and tests before deploying. The previous workflow relied on the retired v2 artifact actions and could no longer run. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 372234e2-8676-4a29-8c30-4e689a0a406a

c29f205

Feat: configure the number of days to lookback for Closes: #22 Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

ae84c1c

Fix: Error when using a github login with organization saml enforcement Closes: #10 Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

dedd3bd

Feat: JSON outputs for API consumption Closes: #23 Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

aa011c0

Readme Update and icon change for theme switch Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

af0638f

Feat: Dark mode for real devs Closes: #19 Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

5d099e9

Feat: Support for custom repositories tracking Closes: #17 Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

0cd080b

Feat: limit size of performance alert And store dismiss state in cookie Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

da3228b

Feat: Add about and report issue links closes: #15 Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

17e8e23

Feat: Add AzureSQL docs (and other projects) List Azure docs articles for some repositories in the configuration Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

dcc2688

Feat: RSS feed for sections Closes: #6 Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>

c146d30

v1.0.0 Add GitHub oAuth to bypass rate limitations