github OneUptime/oneuptime 14.0.110

54 minutes ago

126 changes since 14.0.109: 20 new or improved features, 63 bug fixes, 3 documentation updates and 40 maintenance changes. The busiest areas: Translations, Notes and Dashboards.

✨ New and improved

  • AI: OneUptime AI recalls past incidents by meaning and learns each service's failures; grouping rules group connected services (#7688)
  • Dashboards: Ask before leaving a board with unsaved changes (#7173) (#7342)
  • Guides: On-Call, Status Pages and their guided setups link the step-by-step guide for their job (#7408)
  • Home check-in: Open Setup Health and the guided setups' links read the reader's words, and English when a word is missing (#7407) (#7548)
  • Monitor summaries: Durations and OneUptime refusals in the reader's language (#7354)
  • On-Call: How to Reach Me sets how you are paged once, as one ladder for every page and severity, with per-severity rules one click away (#7448)
  • On-call test page: List and price what the no-rule fallback sends; cost says only what the balance pays (#7262, #7263) (#7399)
  • Projects: Explore a sample project in one click, with made-up monitors, incidents, on-call, a status page and telemetry that notify nobody and are never public or billed (#7489)
  • Proxmox: The agent keeps reading the cluster from another node when its node goes down, with no virtual IP (#7456)
  • Self-Hosted: Switch products off for every project on your server, with one-click presets (#7496)
  • Session Replay: pause() and resume() from the page, interface words readable under Mask all text, and off switches for OneUptime Cloud's own setup-page recordings (#7509)
  • Used By: A monitor, schedule, service, status page, team or label shows what uses it, and Delete says what it affects (#7432)
  • Archive card and bulk Archive dialog in the reader's language (#7195) (#7328)
  • Phone screens and test page results in the reader's language: Release Number, method names, left-to-right lists, Persian words, coded result lines (#7375)
  • Say an unexplained error inside a card's own sentence, in the reader's language (#7307, #7314) (#7376)
  • Data Observability checks read in the reader's language (#7220, #7221, #7223) (#7384)
  • Name the Dashboard in Persian on the Persian incident pages (#7411)
  • Email Markdown renders references, long links and nested definitions as marked reads them (#7542)
  • Date and time pickers show and keep hours and minutes, not seconds (#7593) (#7655)
  • Five reds on main: Ingestion Keys, Korean particles, replay pause rows, On-Call feed labels, hook-free writes decided (#7669)

🐛 Bug fixes

  • Translations
    • OpenStack and file sizes in the reader's digits, each read its own way; Persian lists count in Persian digits (#7343)
    • Persian and Arabic paths point their arrows on to the next step, not back at the one before (#7609)
    • Persian links point their arrows the way they lead, and on-call hover lines point from the first value to the second (#7617)
    • The Admin Dashboard's shared forms, dialogs and menus read in the reader's language, not in English (#7624)
    • A shared noun drawn as a label starts with a capital in every language: an address's name source, a nameless Ceph cluster, Container App and Galera cluster size (#7628) (#7656)
    • A chart's +N more series line reads in every language, and the OIDC claim fields show email and name as the identity provider names them (#7625) (#7662)
    • A joined line reads in one language: the cluster access notes, Link Existing Monitors' failures, Persian's zones and recordsets, and French's semicolon (#7676)
    • A form field's placeholder is translated once, and OpenStack's domain fields show "Default" as Keystone names it in every language (#7663) (#7681)
    • A monitor made from an AI insight, and why an insight cannot become one, read in every language, and Japanese charts' "+N more series" line keeps its "+" (#7664) (#7689)
    • Arrows between two values and after a link's words point the way Persian and Arabic pages read (#7696)
    • Persian words OpenStack's last four nouns and says a zone one way, in the Dashboard and its docs, and French spaces its colon after IA (#7717)
  • Notes
    • When note templates fail to load, the Templates menu says why and what to do, in the reader's language (#7544) (#7569)
    • When notes fail to load, the notes feed says why and what to do, in the reader's language (#7570) (#7619)
    • A failed refresh, search, sort or Load more says what failed, why and what to do, in the reader's language, and Dismiss keeps the focus (#7620) (#7645)
    • A recent note's time ("20 minutes ago") is in the reader's language, and reads from the right in Persian and Arabic (#7648) (#7661)
    • A note that fails to post, save, delete or go through approval says what failed, in the reader's language, with its reference (#7647) (#7677)
    • A read that answers takes the feed's failure banner away, the toolbar describes the notes on screen after a failed sort or search, and the notes count is in the reader's digits (#7646) (#7703)
  • Dashboards
    • Phone header shows the project's name; keyboard shortcuts and Search in every language (#7406)
    • Widget counts, fallback words, dates and numbers in the reader's language (#7413)
    • The Data Source test's Connection successful and Connection failed read in every language (#7605)
  • Glossary
    • Only the word opens its definition, not a click on a dropdown's (Optional) or the rest of its title (#7560)
    • While a field title's definition is open, the field is still named by its title alone (#7590)
    • While a card title's definition is open, the card's heading is still named by its title alone (#7616)
  • Monitor Templates
    • The Template sync settings card names its fields in the reader's language (#7604)
    • Template sync names start with a capital, steps take their script's semicolon, and Persian names every timeout one way (#7627)
    • Link and sync lines in the reader's language, and a partial link refreshes the page (#7704)
  • Names
    • On-Call, How to Reach Me and Notification Channels each have one name, and old names still find their pages (#7555)
    • Profiles, Exceptions, Criteria and Ingestion Keys each go by one name, in every language (#7576)
    • Services and Scheduled Maintenance each go by one name, a maintenance event is a Maintenance Event, in every language (#7633)
  • Proxmox
    • A cluster whose agent cannot read the Proxmox VE API says so, instead of Connected (#7641)
    • The AI agent page's install snippet passes PVE_NODES, so the agent can read the cluster from the next node (8824d66)
    • The Proxmox Agent Status tooltip explains Disconnected and Can't read API in two sentences, so it stays a small tooltip (3792e0c)
  • Admin
    • The Test LLM Provider dialog's request and response read in every language (#7563)
    • A monitor template's link refusals read in the Admin Dashboard's 18 languages, as in the Dashboard, for Enterprise Edition Test (91773de)
  • Hosts
    • Hosts added with the install command get their config on oneuptime.com, including hosts already installed (#7642)
    • Host collectors no longer send OneUptime their config with --env values filled in (#7691)
  • AI: Ask AI's who_is_told words each owners source as the When this goes down card does, one test per source (#7396) (#7441)
  • AI Agent: OneUptime AI never changes the Proxmox agent's API failover sidecar, for Resource AI Agent Test (f1d5d46)
  • API: Terraform and Crossplane resources again say which resource a renamed model's ids belong to (ac875e3)
  • API Reference: The GET /logs description shows kubectl logs and docker logs as code, not as tags (#7584)
  • Cloud: A cloud resource's kind reads the same in its rows, Type filter and cards in every language (#7687)
  • Dates: 12-hour times without a leading zero in every language; the Logs time range sentence in all 18 languages (#7612)
  • Docs: Persian docs pages point each menu path from one step on to the next (#7665)
  • Errors: An error's words join their sentences without the delete dialog's table, for Compile (af30a70)
  • Guided Setup: A lost run or another tab makes no second status page or on-call policy (#7252) (#7414)
  • Incidents, Alerts, Who Is Told: The Created email waits for every owner; the card names who it reaches, in the reader's language (#7429)
  • Logo: The sign-in pages' logo leaves the Dashboard header's mark out of their bundle, for Compile (0f93528)
  • Main: The red checks after 14.0.109, each at its root: translations, shorter descriptions, menu paths, compile-tests and guards (#7653)
  • Migrations: Name the connected-services migration's class after its file (#7732)
  • Network: Walks that see the same endpoints no longer deadlock or drop the rest of their inventory (#7483)
  • Network Devices: During a backlog, devices show when they were really last seen, and an older poll no longer overwrites a newer one's reachability (#7540)
  • New Version: Reload holds the reader's place until the page settles, and the can't-start card page fits its window without Tailwind (#7654) (#7671)
  • On-Call: How to Reach Me's paging ladder sets its facts apart as the reader's language does, for Common Test (c486f26)
  • Probes: vCenter, OpenStack and data store results no longer time out behind a probe's next claim (#7427)
  • Recorder: The React Native recorder's copy of the idle-pause marker has the page pause's reason, as Common's has, for Compile and Mobile Recorder Test (6cea0f8)
  • Rules: A maintenance event rule asks for "All maintenance events" or "Only maintenance events that match conditions", the record's name since #6817 (edaddc6)
  • Sample Project: Main's Common reds before 14.0.110: the sample picks its states by the rules, two tests catch up with renames and shared helpers, and the seeder's suite lints (#7705)
  • Slack, Teams: Slack and Microsoft Teams call scheduled maintenance a maintenance event, as the rest of the product does (4db1a7f)
  • Status Pages: The public resource grid becomes a stack on phones, with logical sides for Arabic and Persian (#7238) (#7397)
  • Tables: A column's '-' for an empty value is the quiet dash every empty cell has (#7565)
  • Terraform: A docs example writes a list of IDs as IDs, also when the provider has no resource for them (3ab852e)
  • Topology: Where a service runs and what a group, category or collection holds are counted in the reader's words and digits (#7709)
  • Five reds on main - the Card description mark, Labels' row actions, the escalation help, the recorder's pause codes and the leave guard in Node suites (#7643)

📚 Documentation

  • Guides
    • A start-to-finish guide to knowing when your website or API is down, in all 17 languages (#7455)
    • The real screen at each step of the guides and the Quickstart, in all 17 languages, kept current by a nightly check (#7508)
  • Ux: The rulebook says that date and time fields keep to the minute, and that French sets its colon apart, for Common Test (9fe7e4f)
🧰 Maintenance (40)
  • On-Call
    • The on-call guided setup's balance refusal names Notification Channels, as the page is now called, for Common Test (1a8a13d)
    • OneUptime AI's paging tool and the policy push notifications say on-call policy, as the product now does, for Common Test (b6a0535)
    • An escalation rule schedule's and an execution log's refusals name them as #6817 renamed them, for Postgres Schema Drift (39f0cd8)
  • Telemetry
    • The ingestion key policy suite knows a key's project may be a sample, and pins that a sample's key is refused, for Common Test (d5782a7)
    • The key budgets suite says its projects are not samples, as making and serving a key now ask, for Common Test (b803b81)
    • The gRPC auth cache suite says its keys' projects are not samples, as every key is now asked, for App Test (80cba8b)
  • AI Memory
    • The RegExp guard lists the outage concepts AI memory counts its matches with, for Common Test (0031a15)
    • The prompt guard knows a text AI memory compares by meaning is not a prompt, for Common Test (0474799)
  • Build
    • The npm package build deletes only its own build output, even from a checkout under the temporary directory (#7566)
    • Production bundles carry their stylesheets without comments, for Compile (b08e172)
  • Compliance
    • The compliance rule form's live preview says Notification Channels, as the Project Settings page is now called, for Enterprise Edition Test (8ba3da3)
    • Team compliance warnings say Notification Channels, as the Project Settings page is now called, for Enterprise Edition Test (0c60176)
  • Dashboards
    • The device diagnostics check lets the error words read a refusal that carries values, for App Test (c671fbf)
    • The German Value widget's trend sentence writes its percent the German way, "71,5 %", for App Test (ff857eb)
  • E2E
    • The case notes Templates menu suite reads the menu and its control in one frame, for Ops Config Test (11e677f)
    • The docs screenshots' renderer stays out of the e2e image, which has no App to compile it against, for Build (9af0c50)
  • Milestones
    • The milestone suite stubs the sample-project check, and pins that a sample reaches no milestone, for Common Test (005ab95)
    • The self-hosted milestone suite says its project is not a sample, as every milestone now asks, for Common Test (d2b586c)
  • Monitors
    • The who-is-told card's language test reads as a self-hosted server's member, so CI's billing setting no longer turns its German and Persian server-failure cases red (#7718)
    • The who-is-told card suite reads as a self-hosted server's member, whatever the environment says, for Common Test (ec468dc)
  • Workflows
    • The schedule lifecycle suite's project says whether it is a sample, as every schedule now asks, for App Test (85807ca)
    • The token refresh suite says whether its reader is on OneUptime Cloud, and pins both next steps of a server error with its reference, for Common Test (7dc5d9f)
  • AI: The AI call's one project read also reads whether the project is a sample, for Common Test (2aa0e45)
  • Audit Log: The audit configuration suite names a root by the type its entries are stored under, its API name since #6817, for Common Test (1360533)
  • Billing: The metered billing suite says its projects are not samples, as every plan now asks first, for Common Test (b186457)
  • CI: Terraform provider jobs no longer lose their runner: generation peaks at 12 GiB instead of 17 (#7589)
  • CLI: The API parity check names a renamed model's command by the name the API keeps, for CLI Test (b2cc93c)
  • Cloud: A resource's right-sizing line reads the page's way, its arrow "←" between the two sizes on a Persian page, for App Test (c4c9597)
  • Episodes: An episode with no state or severity shows the card's empty value, for Common Test (be9cd0d)
  • Lint: The sample project's content and eight test files keep to the lint rules, for Common Jobs js-lint (61a2687)
  • Main Reds: Declaring from alerts finds the incident number in takeNextIncidentNumber, and Data Observability's route is checked as code, not as Prettier wraps it (#7683)
  • Monitoring: Due SLOs and the other monitoring paths leave sample projects out, as the active-project query now says, for Common Test (852d437)
  • Notifications: The custom channels card says How to Reach Me, as the page is now called, for Common Test (ab5c6d6)
  • Proxmox: The inventory SQL suite keeps each cluster it prunes read, and pins the whole-inventory guard, for Postgres Schema Drift (6d6928d)
  • Routes: The apps' route pins read the routes as parsed code, so a Prettier re-wrap no longer reads a product as unmounted (#7685)
  • Sample Project: The usage meter's sample check runs with billing off, as its title says, whatever config.env says, for Common Test (da3c0db)
  • Status Pages: The session length is pinned to the read that decides access, and the overview counts only its own project reads, for Common Test (6f236da)
  • Team Compliance: A switched-off channel's warning names Notification Channels, as #6817 renamed the page, for Enterprise Edition Test and Postgres Schema Drift (497b6af)
  • UI: The router build test installs Common in its two packages, as npm does, now that a link asks before leaving a board, for Common Test (8c6221a)
  • Values: The Archive and Delete dialogs' browser checks follow How to Reach Me's words from #6817, for App Test (5edec96)

⬆️ Upgrade

Back up first, then follow the upgrade guide. On Docker Compose, run npm run update on the release branch. On Kubernetes, helm upgrade to version 14.0.110 of the chart.

Full changelog: 14.0.109...14.0.110

Contributors: @nawazdhandala, @simlarsen

Don't miss a new oneuptime release

NewReleases is sending notifications on new releases.