Update mauriceboe/trek Docker tag to v4.3.2 #799

Merged
AverageMarcus merged 1 commits from renovate/mauriceboe-trek-4.x into master 2026-09-25 06:11:57 +00:00
Collaborator

This PR contains the following updates:

Package Update Change
mauriceboe/trek patch 4.3.0 → 4.3.2

Release Notes

mauriceboe/TREK (mauriceboe/trek)

v4.3.2

Compare Source

4.3.2

Full diff since 4.3.1

Fixed
  • The road trip can start and end a day where you slept. It had no way to: the day after a booked night started at its first place, or at the last place of the day before, so a moving day showed only the new hotel and several nights in one hotel drew each day as if it began somewhere else. With "Start and end each day at your stay" switched on under the driving settings, off by default and on the desktop and the phone, a day after a booked night starts at that stay and a day before one ends there. The hotel stands at the edge of the day under its own name, with a badge for the edge it is: Check-out with the latest hour on the day you leave, Day start in the middle of a stay, Overnight in the evening, and Check-in with the hour the room is ready on a moving day. A moving day without places becomes the drive from one stay to the next. The check-out hour is shown and never used as the departure, and a plan that sets out later turns its badge into a warning. Flights, ferries, trains and hire cars at the edge of a day take precedence, a flight or train saved without located terminals draws no drive from one hotel to the other, and no hotel is joined by road to a terminal more than 2000 km away. The driving settings button shows when the switch is on, and calculate_roadtrip reads the day the same way. (#​2479, #​2481, #​2495)
  • A day in the middle of a trip can be removed. The planner had no way to do it, and shortening the dates only ever took days off the end, whatever was on them. The reorder dialog now deletes the day you pick, on the desktop and in the phone's days sheet, after listing what goes with it: its places, notes and bookings, a stay that checks in or out on it (cancelled with its booking and expense), a stay that loses a night, and the days and bookings that move up a date, with the new end of the trip. Later days close the gap and keep their dates by position. The last day cannot be deleted, and deleting needs a connection. delete_day and the plugin RPC do the same. (#​2485)
  • A trip with dates can be extended by a day from the planner. Adding a day only ever gave one without a date; next to "Without date", the reorder dialog now offers the next date, which adds a day right after the last dated one and extends the trip by one. No existing day or booking changes its date. create_day takes dated: true for the same. (#​2485)
  • Shortening a trip no longer removes days without saying which. Saving new dates that drop days with something on them now lists the days that go and what is on them, on the desktop and the phone; when the start moved as well, the question how bookings follow and that list stand side by side. Days with nothing on them go without a question, and update_trip lists removed_days. (#​2485)
  • The ride block on the road trip rail and in the phone chain reads each fact once. It printed the booking title in capitals with its duration cut off, every airport code three times, an unlabelled check-in hour beside the departure that called itself a time you had set, the arrival clock twice, and a late mark measured against that unlabelled hour, so a missed flight read as a delay of a few hours. It now reads in four lines: the booking as typed, the two codes with their timetable clocks and the ride between them, the places, and a check-in badge with the duration beside it. The badge carries its own state: the check-in hour when the drive is on time, by how much when it is late for the check-in, and that the ride is missed once the drive gets there after the departure, which also edges the block and says so in the day header, folded or not. Trains and buses say boarding. (#​2495)
  • A booked night's own stop on its check-in day says what holds its clock: the check-in hour shows as a badge beside its stay, where the arrival sat at that hour with nothing to say why. (#​2495)
  • The "Looking for" control along the route showed at most three of the picked kinds and ran their names into an ellipsis, with the day it searches along far off in the header. Closed, it now shows every picked kind by its icon, with the names in the list and the tooltip, and the day sits beside it in the same line as a dropdown of the same shape. (#​2495)
  • A road trip rail pulled narrow no longer squeezes its head and day headers: it drops the stop count, in the head with the hairline beside it, and keeps distance and time. (#​2495)
  • A day's stops in road trip mode follow the order the Days list shows. A stop with a start time moved onto another day, or a place carrying its own time added to a day, was stored at the end of that day or where it was dropped, so the list showed it at its hour while the road trip drove there last and reached it late. The night spill then read that late arrival as a midnight: the stop and every stop behind it opened the next day's card, and a day left with a single stop fell to the placeholders at the foot of the rail, which made whole days look shuffled. Such a stop is now stored where the list draws it, with a booked night counted by its check-in, and a stop without a time still lands where it is dropped; the via points of a day it lands in the middle of stay on the legs they were drawn for. A pinned stop the drive reaches late keeps its day and its late badge. The desktop rail, the phone's road trip tab and the calculate_roadtrip MCP tool read a day the same way. (#​2459, Closes #​2455)
  • On the phone, a booking route switched on with "On map" is drawn only on the days the booking runs on. The plan map frames one day per chip and drops the other days' pins, yet a flight from the first day of a trip crossed the map of the third; an overnight flight now shows on both of its days, and the all-days view still shows every route that is switched on. "On map" in a booking's sheet reads as on only where the route is drawn, and from another day a tap takes the map to the booking's own day instead of hiding a route that was not there. The phone settings gain the "Always show booking routes" switch the desktop already had. The desktop map, collections and the road trip stage draw exactly as before. (#​2459, Closes #​2456)
  • With "Blur booking codes" on, a code stays blurred when its booking is opened for editing. The reservation and transport forms, per-segment codes of a flight or train included, the hotel editor in the day panel and the phone's edit sheets printed it in plain text, and so did the stay's own code in the day panel, the booking strip in the place inspector and the booking lines in the phone's day sheet and day plan. A filled field is blurred until it is hovered, clicked, tapped or tabbed into and saves exactly what was typed; a code shown as text lifts on hover or with a click, like the codes in the bookings list. (#​2459, Closes #​2457)
  • An installed app moves onto a new release even when the first attempt after a server upgrade fails. The app noted the new version as applied before its service worker had fetched the new build, so a failed fetch of the worker script, an offline copy that broke off halfway on a patchy connection, or a worker the browser had already swapped in before the version check answered left the previous interface in place for good, and with it a missing release notice. The version now counts as applied once the new build has taken over or nothing needed to change; a failed attempt is retried on the next launch without reloading into the old copy, and the app reloads at most once per version and session. (#​2459, Closes #​2458)
  • The MCP setup page in the wiki names the redirect URI Open WebUI really uses, …/oauth/clients/mcp:{ID}/callback. The bare connection ID it gave before never matched, so a client registered by hand was refused at the consent step with Unregistered redirect_uri. The page also says how Open WebUI connects: its container has to reach the public TREK address, and its WebUI URL has to be the public https:// address. (#​2466)
  • Closing the place dialog resets its search. The planner keeps the dialog around while it is closed, so the next opening, whether for a new place or for editing one, greeted you with the last query, its result list and the "Search Google instead" line, and a click on one of those old results wrote its name, address and coordinates over the place being edited. Closing now clears the field, the list and the suggestions and cancels a lookup still on its way; a search that answers after the dialog closed is dropped instead of filling the next opening. (#​2465, #​2469)
  • Places found through Amap get their opening hours. Amap writes them in Chinese, which the parser could not read, so every such place showed seven question marks and never an open or closed badge; they are now translated, including Amap's own documented form and the common spellings. Hours that cannot be read in full are left out rather than half read, since a half read would mark a shop closed on a day it is open, and OpenStreetMap's hours can then step in. A village or lane that Amap suggests but whose details it does not know is added as a named pin instead of ending in a failed search, and a search near the trip that finds nothing close by falls back to Amap's nationwide text search. (#​2463)
  • "Other ways" in road trip mode offers what the drive can take, and a chosen way stays. With any driving setting on, such as Avoid ferries, the side panel was timed by the second router while "Other ways" still asked the first, so the times never matched, the road you were on was missing from the list and "Fastest" did nothing when clicked. A choice was saved as a single point where the way strayed furthest, unchecked; on a ferry crossing that point was moved onto the pier and the drive went the long way round, so the old route came back. "Other ways" now asks the router that draws the leg, always lists the road you are on as Current, and keeps a choice only once routing through it comes back on that road; a way it cannot hold is not saved and the bar says why. The drive from one day into the next can take other ways too, on the desktop and on the phone, and on the phone a leg bent through a via shows its whole length instead of its first piece. (#​2474, Closes #​2461)
  • A ferry, flight, train, cruise or bus booked for the trip but placed on none of its days was left out of the drive without a word while its arc stayed on the map; the road trip now says so, with a link to the booking, and calculate_roadtrip reports it. A ride that leaves and arrives on the same day is placed by where it goes when the clock does not decide, so a ferry from Amsterdam to Newcastle sits between the two cities instead of after both, which drove to Newcastle overland and back to the port. (#​2474)
  • A flight day no longer drives to the evening's hotel first. On a day a flight, train, ferry, cruise or bus leaves and lands, the hotel checked into that evening was seated by its check-in time, so a hotel in Munich checked into from 15:00 stood ahead of a 15:15 flight out of Hamburg: the day drove from the Munich hotel back to Hamburg airport and marked the flight nine hours late. A check-in is the earliest arrival, not an appointment, so such a stay now waits behind the landing when it lies nearer where the ride lands, and its check-in only holds it when the ride lands before the room is ready. A time typed on the stop keeps its seat. The Days view was never affected, and calculate_roadtrip seats the stops the same way. (#​2495)
  • A flight the drive reaches more than half a day late stays on its day and is reported with the full delay, instead of moving to the next day without a word. On the phone, the road trip rows show late arrivals and missed departures at all; they used to show neither. (#​2495)
  • The manual tab of Add transport offers the trip's own places in its location fields, the way the automated tab already did: From and To, every train station and every car stop, on the desktop and on the phone. They show while a field is empty or holds fewer than three characters, narrowed by what was typed, and the map search takes over from the third character. A place without a pin is not offered, so an endpoint can no longer land at 0,0. (#​2473, Closes #​2468)
  • Importing a booking with the cloud AI keeps a booking the model read without its venue, such as a Booking.com confirmation printed to PDF; it was dropped as incomplete while the import still ended on a green tick. The model answers against a schema that now asks for the venue of every kind of booking, an exact duplicate is dropped, a mangled currency such as "EURials" is read back to its ISO code or taken from the document's total, and a file name with umlauts arrives intact. An import that found nothing shows a warning in the task list instead of the tick. (#​2482, Closes #​2477)
  • Immich connects to a server with a self-signed certificate. Its settings gain the "Skip SSL certificate verification" switch Synology already had, off by default and kept only while the server address stays the same. A failed connection test now says why, for example "fetch failed (self-signed certificate)", and new installations get the Auto upload switch that only upgraded ones had. (#​2482, Closes #​2475)
  • A moving day with a flight, train, ferry or bus between two stays no longer draws a drive from the first hotel to the second when the booking's terminals have no coordinates, on the Days map, in the trip overview and on the phone; with coordinates the drives to and from the terminals are drawn as before. On the phone the leg into the evening's hotel is the last one of the day, a single leg is not shown twice, and Google Maps and CoMaps are offered only when there is something to route. (#​2482, Closes #​2476)
  • Picking a user in a trip's share dialog shows the name in the field; it stayed on the placeholder while the invite button was already active. Every select compares its value the same way now. (#​2482, Closes #​2478)
  • A place booked as a stay no longer disappears. Since 4.3.0 every lodging booking types its place as a hotel, which counts as a road trip stop, and with Show in Days too switched off Days hid such places altogether: the hotel vanished from the place list, from the booking's own place picker (the edit form showed the stay empty) and from the Days map, and clicking it in the day list did nothing. Nothing was deleted, and trips planned on 4.3.1 show their hotels again as soon as the app updates. Days now hides only road trip stops nobody booked. An imported GPX or KML track is no longer offered as the place of a stay. (#​2487, Closes #​2488)
  • With the place filter set to Unplanned, a click on a day's stay moves the map to it, as a click on a stop already did. The map went only to a selected place it showed as a pin, and a stay is neither a pin under that filter nor one of the day's stops. Both map renderers now look the place up the same way; the filter itself is unchanged. (#​2491)
  • A place picked from the search can be saved again when its website comes without https://, as the TREK Places API, OpenStreetMap and Amap often hand it over (fr.wikipedia.org/wiki/…). Saving it to a collection or a trip answered 400 "website: must be an http or https URL". Every website that comes in from outside now gains its scheme or is dropped, and a bare host sent to the API, MCP or a plugin is completed to https instead of refused; javascript: and other schemes are still refused. (#​2489, Closes #​2483)
  • Deleting a place with a booked stay says plainly what goes with it: "This also deletes the stay booked at “Rostock”, its booking and any expense linked to it." The old note named the place twice; the booking is quoted only when its title differs from the place. (#​2490)
  • An undo that could not be carried out says so instead of reporting it as done. (#​2485)
Internal
  • The document sync dialog keeps a store that was picked the moment the dialog finished loading. The effect that keeps the dialog on a bound store read the pick from its own render, so a click that came in before the effect ran was switched back to the first store; on a loaded CI runner this made FE-DOCSYNC-PANEL-008 fail now and then. The effect now reads the current pick, and FE-DOCSYNC-PANEL-023 forces that order. (#​2460)

v4.3.1

Compare Source

4.3.1

Full diff since 4.3.0

Changed
  • The places filter in the planner's right sidebar (All, Unplanned, Planned, Tracks) is the app's own select instead of four pills. With the tracks tab the row had grown past what the rail holds without clipping a word; the count rides on the trigger the way it rode on the active pill, and every option carries its own in the menu. (#​2436)
  • Shared links in the Collab tab are chips now, two to a row across the panel: favicon, title and host, a pinned chip in the accent tint, the whole chip being the link. Edit, pin and delete sit faint in its tail and come forward on hover; on touch they are always shown. (#​2413)
Fixed
  • The release notice keeps its promise box whole when the window is too short for the note. The right column scrolls in that case, and on a 1080p screen at 100% it does, but the box was pressed down to its label while the paragraphs around it kept their height. Everything inside the two scrolling columns now keeps its size. Below 1080px the two halves stack again as they should; the release half had been squeezed to nothing there, and the support buttons now stay at the bottom edge once the note is in view. (#​2408)

  • A night booked under Days now leads its day in road trip mode and keeps its check-in. The check-in used to be a floor the drive could pass, so a hotel booked for ten in the morning was reached at a quarter past twelve behind two stops that had no hour of their own; it holds the stop the way a pinned time does now, in the plain schedule and in the daily window, and the day lines up behind it. The hotel is seated first on its day, after any stop whose own clock is at or before the check-in, and a new check-in seats it afresh. A day that is nothing but its booked night stands among the days with the hotel and its check-in, instead of at the foot of the rail under "only X so far". Trips planned before this get the same order on upgrade, drawn roads included, and two nights booked on one day settle by their check-ins. (#​2410, #​2411)

  • The last day in the planner's sidebar can be scrolled into view again. With the road trip addon on, the Days / Road trip switch sits above the day list, and the list kept the full panel height underneath it, so its foot ran past the panel's edge. (#​2413)

  • A shared link in the Collab tab can be edited in place, title and address alike, instead of being deleted and added again; the external-link glyph, which did nothing, opens the address. (#​2413, Closes #​2414)

  • Google opening hours that stay in one half of the day convert whole under the 24-hour setting. Google writes "1:00 – 3:00 PM" for one to three in the afternoon, with the meridiem on the closing time only, and the opener used to stay "1:00" beside a converted "15:00"; the closing meridiem is handed back to the opener before converting. A range spelled on both sides, the 12h display and OpenStreetMap lines are untouched. (#​2415, Closes #​2412)

  • A successful SSO login writes the user.login audit row every other login method writes, with method: oidc in the details the way a passkey login names its method. The callback used to update last_login and login_count and nothing else, so an instance moving its users to SSO watched its audit log go quiet while looking complete. (#​2418, Closes #​2417)

  • A trip title that is one long word no longer stretches the dashboard hero: the tools row and the boarding pass grew to the width of the word, and edit, clone, archive and delete sat off the card. The title breaks inside the card and stops at two lines. (#​2419)

  • The Docker image runs better-sqlite3 13. The 12.x it shipped was compiled from source whenever its prebuilt download did not come through, against the headers of whatever Node 24 the base image carried that day, and since Node 24.19 such a build takes the server down with Assertion failed: (env) != nullptr the first time a statement is collected. 13.x is built on N-API and ships its binaries inside the package, so nothing is compiled in the image any more and the compiler toolchain is gone from the runtime stage. (#​2424, Closes #​2421)

  • A video picked for a journey entry previews in the editor again and comes up with its poster frame, so its thumbnail no longer answers 404. The policy never named media-src, so the browser refused the object URL the preview and the poster grab run through; the entry route from 4.3.0 was there, but every clip landed without a poster. A clip the browser cannot decode gets the play badge on a black tile instead of a broken image. (#​2424, Closes #​2341)

  • The video player has its icons back. Plyr fetched its sprite from cdn.plyr.io, which the policy refuses, so the clip played with blank buttons, and on closing the lightbox it pointed the element at a clip on that CDN. The sprite ships with the app now and the teardown asks nothing of the CDN. (#​2424)

  • Saving an entry on the journey page no longer throws the page to the error boundary. The map pans to the active entry on a timer that could beat the frame giving the map its first view; Leaflet took that pan as the first view with no zoom, the entry markers never made it onto the map, and the next rebuild crashed while removing them. The pan waits for the first view now. (#​2424)

  • The road trip no longer drives across a flight. A flight, train, ferry, cruise or bus booked on a day with located terminals ends the road at the terminal it leaves from and starts it again at the one it lands at; the ride between them runs on the timetable, is never sent to the router and counts for no distance, and the map draws it as the booking's own arc. On the rail and in the phone chain a ride that leaves and lands on the same day is one block: the booking and its minutes over the two terminals, with the timetable under each name and the time the drive has you there on the right, an hour before a flight, half an hour before a ferry, ten minutes before a train or a bus. A hire car's pick-up and return desks stand on the road as their own rows, the pick-up opening its day and the return closing it, and the range budget starts full at the pick-up. A table, tickets or a tour booked on the day hang under their stop as chips that open the booking; one that belongs to no stop is listed under the day. A hop of a few hundred metres, the hire desk beside the terminal, keeps its line and drops the "0 km in 0 min" pill. The server's calculate_roadtrip seats the same stops. (#​2429, Closes #​2428)

  • The map and the phone's travel connectors no longer drive from the hotel to the airport on a day that starts with a flight. Booking a night writes the hotel onto its check-in day as a stop for the road trip's driving chain; the day plan hides that stop and draws the hotel as the day's bookends, but the route builder still read it from the store, and with no time of its own it led the day ahead of the timed booking. The builder now works from the same stops the list shows, so the day reads flight, then the road from the arrival airport to the hotel. A hotel you placed as a stop yourself stays a waypoint. (#​2432, Closes #​2430)

  • A marker on a collection's map shows the place on every click. The click used to toggle the selection, so the second click on the marker of the place that was open closed it again, which read as the details refusing to open. The map background and the close control clear the selection; a list row still toggles. (#​2433, Closes #​2431)

  • The PDF export lists a day the way the day plan lists it. Booking a night writes the hotel onto its check-in day as a stop for the road trip's driving chain, and the plan hides that stop because the day already carries the booking as its accommodation block; the desktop export received the stop anyway and printed the hotel place above a flight that left in the morning. The export now drops it before merging the day, so the day reads flight first with the night in its accommodation block. The phone's export already had the filtered set. (#​2435, Closes #​2434)

  • A search the TREK index answered with the wrong place can be sent to Google after all. Since 4.3.0 the index and OpenStreetMap answer every search first and Google is only asked when they find nothing, so a list with the wrong place on it never reached Google, whatever key the instance had, and the provider choice only decided who fills the empty case. Under a result list that did not come from Google a quiet line now reads "Not the right place? Search Google instead" and sends the same query to Google Places alone, on the desktop form and the phone's search sheet; the MCP search tool takes the same provider parameter. Beside the Google Maps key, under "What the key may be used for", a new switch "Search with Google only" hands every search and every suggestion to Google and asks nothing of the index or OpenStreetMap. Both only do anything where a Google key holds the slot, and the switch's row says so without one. (#​2436)

  • Plugin widgets for the reservation-detail slot show on the phone. A plugin declaring that slot, Flight Tracker for one, mounted under every booking card on the desktop and nowhere in the phone's transport and booking tabs, so on an iPhone in portrait the booking was there and the widget was not until the phone was turned sideways, which crosses the desktop breakpoint. The phone cards carry every reservation-detail widget under the card now, scoped to that booking and with the same context the desktop hands over plus the phone form factor; it goes with the card body in compact view. (#​2445, Closes #​2440)

  • A trip created through MCP or by a plugin lands in your display currency instead of EUR. The server wrote EUR whenever the caller named no currency, and only the trip dialog ever names one, so every trip an assistant created was a EUR trip whatever you read your amounts in. A trip created without a currency now takes the display currency from Settings, the admin's User Defaults preset included, and EUR only when that is left on Trip currency, the same value the dialog pre-fills. (#​2444)

  • An MCP tool refuses an argument it does not declare instead of dropping it. A misspelt field such as stopType for stop_type used to be stripped before the tool ran, so the assistant reported the road trip stop as updated while nothing had changed. Such a call now answers Unrecognized key and the assistant corrects itself, the published tool schemas carry additionalProperties false so a client that reads them never sends the key, and the nested objects a tool takes, legs, imported stops, collection links and transit places among them, are held to the same rule. A script of your own that sends fields a tool does not declare sees that error now and has to drop them. (#​2444)

  • Edit and Delete on a place are shown only to members who may edit places. With Places set to "Trip owner" under Admin, a member who may still edit days saw Edit and Delete in the day plan's right-click menu, the same two in the place details panel, the rename on its title and the pencil on a place row in the phone's edit mode, and every one of them ended in the server's refusal. Taking a place off a day stays a day right, and rating a place is unchanged. (#​2447, Closes #​2446)

  • An MCP client finds the OAuth discovery documents wherever it looks for them. A client handed https://your-trek/mcp as the server address looks for them below that path rather than asking the origin, and TREK answered those probes with the web app: a 200 with an HTML body, which the client reads as "this server does not implement OAuth". The three documents answer under the server address now as well, anything else there is a plain 404 the way it already was at the origin, and the path-inserted form of the authorization-server document is served instead of refused. (#​2448)

  • Registering an OAuth client by hand says what was wrong with it. The form answered every refusal with "Failed to register OAuth client" and swallowed the reason the server gave, so a missing scope, the ten-client limit or a redirect URI TREK does not accept all looked the same. (#​2448)

  • The button that turns GPS on follows the phone instead of the moment the map opened. Both maps decided it from the window width once while rendering, so turning the phone sideways crossed the breakpoint and the button stayed as it was, and turning back did not bring it home either; which map you were on only decided when the question was asked again. (#​2449)

  • A booked night settles where it belongs and stays there. Two nights on one day never agreed on an order, so a quiet edit on either swapped them and took the road drawn between them with it, and the upgrade that seats existing nights reported moves it then undid on the next run. One rule seats them now, by check-in and then by the booking made first, and the same rule runs when a trip's dates move, which used to push the night back to the end of its day. (#​2450)

  • The ride block keeps up with its booking. Changing a flight's departure left the old minutes and the old late mark on the rail until the page was reloaded, because they were computed by the routing the change did not re-run. (#​2450)

  • A day that lands from a ride reads as the ride it was, not as a car that drove no distance for nine hours, and the refuel offer is there on the road out of an arrival terminal or a hire desk, where the range starts over. Searching along the drive from an assistant no longer looks under the flight path, the way the planner already did not. (#​2450)

  • A shared trip's map numbers the day's stops the way the planner does, now that a booked night leads its day, and the PDF prints a day the way the day plan shows it from either device. A clip without a poster draws its play badge everywhere it appears, not only in the entry editor. (#​2450)

  • The dashboard hero has room for the letters that hang below the line, the trip cards in list view keep their status badge clear of a two-line title, the release notice keeps its close control in reach when it stacks on a narrow screen, and a shared link's actions are big enough for a thumb, with the delete asking first. (#​2450)

  • The line that sends a search to Google and the admin switch that sends every search there are offered only where Google actually answers, instead of wherever a key happens to be stored. (#​2450)

Internal
  • The version marker the app keeps in local storage is taken as the match of one anchored pattern instead of a strip-and-compare, the shape SonarCloud's taint engine reads as sanitised; same characters, same length, same behaviour. This was the one open finding that kept the dev branch gate red since the 4.3.0 cycle. (#​2445)

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate CLI.

This PR contains the following updates: | Package | Update | Change | |---|---|---| | [mauriceboe/trek](https://github.com/mauriceboe/TREK) | patch | `4.3.0` → `4.3.2` | --- ### Release Notes <details> <summary>mauriceboe/TREK (mauriceboe/trek)</summary> ### [`v4.3.2`](https://github.com/liketrek/TREK/releases/tag/v4.3.2) [Compare Source](https://github.com/mauriceboe/TREK/compare/v4.3.1...v4.3.2) #### 4.3.2 [Full diff since 4.3.1](https://github.com/liketrek/TREK/compare/v4.3.1...v4.3.2) ##### Fixed - The road trip can start and end a day where you slept. It had no way to: the day after a booked night started at its first place, or at the last place of the day before, so a moving day showed only the new hotel and several nights in one hotel drew each day as if it began somewhere else. With "Start and end each day at your stay" switched on under the driving settings, off by default and on the desktop and the phone, a day after a booked night starts at that stay and a day before one ends there. The hotel stands at the edge of the day under its own name, with a badge for the edge it is: Check-out with the latest hour on the day you leave, Day start in the middle of a stay, Overnight in the evening, and Check-in with the hour the room is ready on a moving day. A moving day without places becomes the drive from one stay to the next. The check-out hour is shown and never used as the departure, and a plan that sets out later turns its badge into a warning. Flights, ferries, trains and hire cars at the edge of a day take precedence, a flight or train saved without located terminals draws no drive from one hotel to the other, and no hotel is joined by road to a terminal more than 2000 km away. The driving settings button shows when the switch is on, and `calculate_roadtrip` reads the day the same way. ([#&#8203;2479](https://github.com/mauriceboe/TREK/issues/2479), [#&#8203;2481](https://github.com/mauriceboe/TREK/issues/2481), [#&#8203;2495](https://github.com/mauriceboe/TREK/issues/2495)) - A day in the middle of a trip can be removed. The planner had no way to do it, and shortening the dates only ever took days off the end, whatever was on them. The reorder dialog now deletes the day you pick, on the desktop and in the phone's days sheet, after listing what goes with it: its places, notes and bookings, a stay that checks in or out on it (cancelled with its booking and expense), a stay that loses a night, and the days and bookings that move up a date, with the new end of the trip. Later days close the gap and keep their dates by position. The last day cannot be deleted, and deleting needs a connection. `delete_day` and the plugin RPC do the same. ([#&#8203;2485](https://github.com/mauriceboe/TREK/issues/2485)) - A trip with dates can be extended by a day from the planner. Adding a day only ever gave one without a date; next to "Without date", the reorder dialog now offers the next date, which adds a day right after the last dated one and extends the trip by one. No existing day or booking changes its date. `create_day` takes `dated: true` for the same. ([#&#8203;2485](https://github.com/mauriceboe/TREK/issues/2485)) - Shortening a trip no longer removes days without saying which. Saving new dates that drop days with something on them now lists the days that go and what is on them, on the desktop and the phone; when the start moved as well, the question how bookings follow and that list stand side by side. Days with nothing on them go without a question, and `update_trip` lists `removed_days`. ([#&#8203;2485](https://github.com/mauriceboe/TREK/issues/2485)) - The ride block on the road trip rail and in the phone chain reads each fact once. It printed the booking title in capitals with its duration cut off, every airport code three times, an unlabelled check-in hour beside the departure that called itself a time you had set, the arrival clock twice, and a late mark measured against that unlabelled hour, so a missed flight read as a delay of a few hours. It now reads in four lines: the booking as typed, the two codes with their timetable clocks and the ride between them, the places, and a check-in badge with the duration beside it. The badge carries its own state: the check-in hour when the drive is on time, by how much when it is late for the check-in, and that the ride is missed once the drive gets there after the departure, which also edges the block and says so in the day header, folded or not. Trains and buses say boarding. ([#&#8203;2495](https://github.com/mauriceboe/TREK/issues/2495)) - A booked night's own stop on its check-in day says what holds its clock: the check-in hour shows as a badge beside its stay, where the arrival sat at that hour with nothing to say why. ([#&#8203;2495](https://github.com/mauriceboe/TREK/issues/2495)) - The "Looking for" control along the route showed at most three of the picked kinds and ran their names into an ellipsis, with the day it searches along far off in the header. Closed, it now shows every picked kind by its icon, with the names in the list and the tooltip, and the day sits beside it in the same line as a dropdown of the same shape. ([#&#8203;2495](https://github.com/mauriceboe/TREK/issues/2495)) - A road trip rail pulled narrow no longer squeezes its head and day headers: it drops the stop count, in the head with the hairline beside it, and keeps distance and time. ([#&#8203;2495](https://github.com/mauriceboe/TREK/issues/2495)) - A day's stops in road trip mode follow the order the Days list shows. A stop with a start time moved onto another day, or a place carrying its own time added to a day, was stored at the end of that day or where it was dropped, so the list showed it at its hour while the road trip drove there last and reached it late. The night spill then read that late arrival as a midnight: the stop and every stop behind it opened the next day's card, and a day left with a single stop fell to the placeholders at the foot of the rail, which made whole days look shuffled. Such a stop is now stored where the list draws it, with a booked night counted by its check-in, and a stop without a time still lands where it is dropped; the via points of a day it lands in the middle of stay on the legs they were drawn for. A pinned stop the drive reaches late keeps its day and its late badge. The desktop rail, the phone's road trip tab and the `calculate_roadtrip` MCP tool read a day the same way. ([#&#8203;2459](https://github.com/mauriceboe/TREK/issues/2459), Closes [#&#8203;2455](https://github.com/mauriceboe/TREK/issues/2455)) - On the phone, a booking route switched on with "On map" is drawn only on the days the booking runs on. The plan map frames one day per chip and drops the other days' pins, yet a flight from the first day of a trip crossed the map of the third; an overnight flight now shows on both of its days, and the all-days view still shows every route that is switched on. "On map" in a booking's sheet reads as on only where the route is drawn, and from another day a tap takes the map to the booking's own day instead of hiding a route that was not there. The phone settings gain the "Always show booking routes" switch the desktop already had. The desktop map, collections and the road trip stage draw exactly as before. ([#&#8203;2459](https://github.com/mauriceboe/TREK/issues/2459), Closes [#&#8203;2456](https://github.com/mauriceboe/TREK/issues/2456)) - With "Blur booking codes" on, a code stays blurred when its booking is opened for editing. The reservation and transport forms, per-segment codes of a flight or train included, the hotel editor in the day panel and the phone's edit sheets printed it in plain text, and so did the stay's own code in the day panel, the booking strip in the place inspector and the booking lines in the phone's day sheet and day plan. A filled field is blurred until it is hovered, clicked, tapped or tabbed into and saves exactly what was typed; a code shown as text lifts on hover or with a click, like the codes in the bookings list. ([#&#8203;2459](https://github.com/mauriceboe/TREK/issues/2459), Closes [#&#8203;2457](https://github.com/mauriceboe/TREK/issues/2457)) - An installed app moves onto a new release even when the first attempt after a server upgrade fails. The app noted the new version as applied before its service worker had fetched the new build, so a failed fetch of the worker script, an offline copy that broke off halfway on a patchy connection, or a worker the browser had already swapped in before the version check answered left the previous interface in place for good, and with it a missing release notice. The version now counts as applied once the new build has taken over or nothing needed to change; a failed attempt is retried on the next launch without reloading into the old copy, and the app reloads at most once per version and session. ([#&#8203;2459](https://github.com/mauriceboe/TREK/issues/2459), Closes [#&#8203;2458](https://github.com/mauriceboe/TREK/issues/2458)) - The MCP setup page in the wiki names the redirect URI Open WebUI really uses, `…/oauth/clients/mcp:{ID}/callback`. The bare connection ID it gave before never matched, so a client registered by hand was refused at the consent step with `Unregistered redirect_uri`. The page also says how Open WebUI connects: its container has to reach the public TREK address, and its WebUI URL has to be the public `https://` address. ([#&#8203;2466](https://github.com/mauriceboe/TREK/issues/2466)) - Closing the place dialog resets its search. The planner keeps the dialog around while it is closed, so the next opening, whether for a new place or for editing one, greeted you with the last query, its result list and the "Search Google instead" line, and a click on one of those old results wrote its name, address and coordinates over the place being edited. Closing now clears the field, the list and the suggestions and cancels a lookup still on its way; a search that answers after the dialog closed is dropped instead of filling the next opening. ([#&#8203;2465](https://github.com/mauriceboe/TREK/issues/2465), [#&#8203;2469](https://github.com/mauriceboe/TREK/issues/2469)) - Places found through Amap get their opening hours. Amap writes them in Chinese, which the parser could not read, so every such place showed seven question marks and never an open or closed badge; they are now translated, including Amap's own documented form and the common spellings. Hours that cannot be read in full are left out rather than half read, since a half read would mark a shop closed on a day it is open, and OpenStreetMap's hours can then step in. A village or lane that Amap suggests but whose details it does not know is added as a named pin instead of ending in a failed search, and a search near the trip that finds nothing close by falls back to Amap's nationwide text search. ([#&#8203;2463](https://github.com/mauriceboe/TREK/issues/2463)) - "Other ways" in road trip mode offers what the drive can take, and a chosen way stays. With any driving setting on, such as Avoid ferries, the side panel was timed by the second router while "Other ways" still asked the first, so the times never matched, the road you were on was missing from the list and "Fastest" did nothing when clicked. A choice was saved as a single point where the way strayed furthest, unchecked; on a ferry crossing that point was moved onto the pier and the drive went the long way round, so the old route came back. "Other ways" now asks the router that draws the leg, always lists the road you are on as Current, and keeps a choice only once routing through it comes back on that road; a way it cannot hold is not saved and the bar says why. The drive from one day into the next can take other ways too, on the desktop and on the phone, and on the phone a leg bent through a via shows its whole length instead of its first piece. ([#&#8203;2474](https://github.com/mauriceboe/TREK/issues/2474), Closes [#&#8203;2461](https://github.com/mauriceboe/TREK/issues/2461)) - A ferry, flight, train, cruise or bus booked for the trip but placed on none of its days was left out of the drive without a word while its arc stayed on the map; the road trip now says so, with a link to the booking, and calculate\_roadtrip reports it. A ride that leaves and arrives on the same day is placed by where it goes when the clock does not decide, so a ferry from Amsterdam to Newcastle sits between the two cities instead of after both, which drove to Newcastle overland and back to the port. ([#&#8203;2474](https://github.com/mauriceboe/TREK/issues/2474)) - A flight day no longer drives to the evening's hotel first. On a day a flight, train, ferry, cruise or bus leaves and lands, the hotel checked into that evening was seated by its check-in time, so a hotel in Munich checked into from 15:00 stood ahead of a 15:15 flight out of Hamburg: the day drove from the Munich hotel back to Hamburg airport and marked the flight nine hours late. A check-in is the earliest arrival, not an appointment, so such a stay now waits behind the landing when it lies nearer where the ride lands, and its check-in only holds it when the ride lands before the room is ready. A time typed on the stop keeps its seat. The Days view was never affected, and `calculate_roadtrip` seats the stops the same way. ([#&#8203;2495](https://github.com/mauriceboe/TREK/issues/2495)) - A flight the drive reaches more than half a day late stays on its day and is reported with the full delay, instead of moving to the next day without a word. On the phone, the road trip rows show late arrivals and missed departures at all; they used to show neither. ([#&#8203;2495](https://github.com/mauriceboe/TREK/issues/2495)) - The manual tab of Add transport offers the trip's own places in its location fields, the way the automated tab already did: From and To, every train station and every car stop, on the desktop and on the phone. They show while a field is empty or holds fewer than three characters, narrowed by what was typed, and the map search takes over from the third character. A place without a pin is not offered, so an endpoint can no longer land at 0,0. ([#&#8203;2473](https://github.com/mauriceboe/TREK/issues/2473), Closes [#&#8203;2468](https://github.com/mauriceboe/TREK/issues/2468)) - Importing a booking with the cloud AI keeps a booking the model read without its venue, such as a Booking.com confirmation printed to PDF; it was dropped as incomplete while the import still ended on a green tick. The model answers against a schema that now asks for the venue of every kind of booking, an exact duplicate is dropped, a mangled currency such as "EURials" is read back to its ISO code or taken from the document's total, and a file name with umlauts arrives intact. An import that found nothing shows a warning in the task list instead of the tick. ([#&#8203;2482](https://github.com/mauriceboe/TREK/issues/2482), Closes [#&#8203;2477](https://github.com/mauriceboe/TREK/issues/2477)) - Immich connects to a server with a self-signed certificate. Its settings gain the "Skip SSL certificate verification" switch Synology already had, off by default and kept only while the server address stays the same. A failed connection test now says why, for example "fetch failed (self-signed certificate)", and new installations get the Auto upload switch that only upgraded ones had. ([#&#8203;2482](https://github.com/mauriceboe/TREK/issues/2482), Closes [#&#8203;2475](https://github.com/mauriceboe/TREK/issues/2475)) - A moving day with a flight, train, ferry or bus between two stays no longer draws a drive from the first hotel to the second when the booking's terminals have no coordinates, on the Days map, in the trip overview and on the phone; with coordinates the drives to and from the terminals are drawn as before. On the phone the leg into the evening's hotel is the last one of the day, a single leg is not shown twice, and Google Maps and CoMaps are offered only when there is something to route. ([#&#8203;2482](https://github.com/mauriceboe/TREK/issues/2482), Closes [#&#8203;2476](https://github.com/mauriceboe/TREK/issues/2476)) - Picking a user in a trip's share dialog shows the name in the field; it stayed on the placeholder while the invite button was already active. Every select compares its value the same way now. ([#&#8203;2482](https://github.com/mauriceboe/TREK/issues/2482), Closes [#&#8203;2478](https://github.com/mauriceboe/TREK/issues/2478)) - A place booked as a stay no longer disappears. Since 4.3.0 every lodging booking types its place as a hotel, which counts as a road trip stop, and with **Show in Days too** switched off Days hid such places altogether: the hotel vanished from the place list, from the booking's own place picker (the edit form showed the stay empty) and from the Days map, and clicking it in the day list did nothing. Nothing was deleted, and trips planned on 4.3.1 show their hotels again as soon as the app updates. Days now hides only road trip stops nobody booked. An imported GPX or KML track is no longer offered as the place of a stay. ([#&#8203;2487](https://github.com/mauriceboe/TREK/issues/2487), Closes [#&#8203;2488](https://github.com/mauriceboe/TREK/issues/2488)) - With the place filter set to Unplanned, a click on a day's stay moves the map to it, as a click on a stop already did. The map went only to a selected place it showed as a pin, and a stay is neither a pin under that filter nor one of the day's stops. Both map renderers now look the place up the same way; the filter itself is unchanged. ([#&#8203;2491](https://github.com/mauriceboe/TREK/issues/2491)) - A place picked from the search can be saved again when its website comes without `https://`, as the TREK Places API, OpenStreetMap and Amap often hand it over (`fr.wikipedia.org/wiki/…`). Saving it to a collection or a trip answered 400 "website: must be an http or https URL". Every website that comes in from outside now gains its scheme or is dropped, and a bare host sent to the API, MCP or a plugin is completed to https instead of refused; `javascript:` and other schemes are still refused. ([#&#8203;2489](https://github.com/mauriceboe/TREK/issues/2489), Closes [#&#8203;2483](https://github.com/mauriceboe/TREK/issues/2483)) - Deleting a place with a booked stay says plainly what goes with it: "This also deletes the stay booked at “Rostock”, its booking and any expense linked to it." The old note named the place twice; the booking is quoted only when its title differs from the place. ([#&#8203;2490](https://github.com/mauriceboe/TREK/issues/2490)) - An undo that could not be carried out says so instead of reporting it as done. ([#&#8203;2485](https://github.com/mauriceboe/TREK/issues/2485)) ##### Internal - The document sync dialog keeps a store that was picked the moment the dialog finished loading. The effect that keeps the dialog on a bound store read the pick from its own render, so a click that came in before the effect ran was switched back to the first store; on a loaded CI runner this made FE-DOCSYNC-PANEL-008 fail now and then. The effect now reads the current pick, and FE-DOCSYNC-PANEL-023 forces that order. ([#&#8203;2460](https://github.com/mauriceboe/TREK/issues/2460)) ### [`v4.3.1`](https://github.com/liketrek/TREK/releases/tag/v4.3.1) [Compare Source](https://github.com/mauriceboe/TREK/compare/v4.3.0...v4.3.1) #### 4.3.1 [Full diff since 4.3.0](https://github.com/liketrek/TREK/compare/v4.3.0...v4.3.1) ##### Changed - The places filter in the planner's right sidebar (All, Unplanned, Planned, Tracks) is the app's own select instead of four pills. With the tracks tab the row had grown past what the rail holds without clipping a word; the count rides on the trigger the way it rode on the active pill, and every option carries its own in the menu. ([#&#8203;2436](https://github.com/mauriceboe/TREK/issues/2436)) - Shared links in the Collab tab are chips now, two to a row across the panel: favicon, title and host, a pinned chip in the accent tint, the whole chip being the link. Edit, pin and delete sit faint in its tail and come forward on hover; on touch they are always shown. ([#&#8203;2413](https://github.com/mauriceboe/TREK/issues/2413)) ##### Fixed - The release notice keeps its promise box whole when the window is too short for the note. The right column scrolls in that case, and on a 1080p screen at 100% it does, but the box was pressed down to its label while the paragraphs around it kept their height. Everything inside the two scrolling columns now keeps its size. Below 1080px the two halves stack again as they should; the release half had been squeezed to nothing there, and the support buttons now stay at the bottom edge once the note is in view. ([#&#8203;2408](https://github.com/mauriceboe/TREK/issues/2408)) - A night booked under Days now leads its day in road trip mode and keeps its check-in. The check-in used to be a floor the drive could pass, so a hotel booked for ten in the morning was reached at a quarter past twelve behind two stops that had no hour of their own; it holds the stop the way a pinned time does now, in the plain schedule and in the daily window, and the day lines up behind it. The hotel is seated first on its day, after any stop whose own clock is at or before the check-in, and a new check-in seats it afresh. A day that is nothing but its booked night stands among the days with the hotel and its check-in, instead of at the foot of the rail under "only X so far". Trips planned before this get the same order on upgrade, drawn roads included, and two nights booked on one day settle by their check-ins. ([#&#8203;2410](https://github.com/mauriceboe/TREK/issues/2410), [#&#8203;2411](https://github.com/mauriceboe/TREK/issues/2411)) - The last day in the planner's sidebar can be scrolled into view again. With the road trip addon on, the Days / Road trip switch sits above the day list, and the list kept the full panel height underneath it, so its foot ran past the panel's edge. ([#&#8203;2413](https://github.com/mauriceboe/TREK/issues/2413)) - A shared link in the Collab tab can be edited in place, title and address alike, instead of being deleted and added again; the external-link glyph, which did nothing, opens the address. ([#&#8203;2413](https://github.com/mauriceboe/TREK/issues/2413), Closes [#&#8203;2414](https://github.com/mauriceboe/TREK/issues/2414)) - Google opening hours that stay in one half of the day convert whole under the 24-hour setting. Google writes "1:00 – 3:00 PM" for one to three in the afternoon, with the meridiem on the closing time only, and the opener used to stay "1:00" beside a converted "15:00"; the closing meridiem is handed back to the opener before converting. A range spelled on both sides, the 12h display and OpenStreetMap lines are untouched. ([#&#8203;2415](https://github.com/mauriceboe/TREK/issues/2415), Closes [#&#8203;2412](https://github.com/mauriceboe/TREK/issues/2412)) - A successful SSO login writes the `user.login` audit row every other login method writes, with `method: oidc` in the details the way a passkey login names its method. The callback used to update `last_login` and `login_count` and nothing else, so an instance moving its users to SSO watched its audit log go quiet while looking complete. ([#&#8203;2418](https://github.com/mauriceboe/TREK/issues/2418), Closes [#&#8203;2417](https://github.com/mauriceboe/TREK/issues/2417)) - A trip title that is one long word no longer stretches the dashboard hero: the tools row and the boarding pass grew to the width of the word, and edit, clone, archive and delete sat off the card. The title breaks inside the card and stops at two lines. ([#&#8203;2419](https://github.com/mauriceboe/TREK/issues/2419)) - The Docker image runs better-sqlite3 13. The 12.x it shipped was compiled from source whenever its prebuilt download did not come through, against the headers of whatever Node 24 the base image carried that day, and since Node 24.19 such a build takes the server down with `Assertion failed: (env) != nullptr` the first time a statement is collected. 13.x is built on N-API and ships its binaries inside the package, so nothing is compiled in the image any more and the compiler toolchain is gone from the runtime stage. ([#&#8203;2424](https://github.com/mauriceboe/TREK/issues/2424), Closes [#&#8203;2421](https://github.com/mauriceboe/TREK/issues/2421)) - A video picked for a journey entry previews in the editor again and comes up with its poster frame, so its thumbnail no longer answers 404. The policy never named media-src, so the browser refused the object URL the preview and the poster grab run through; the entry route from 4.3.0 was there, but every clip landed without a poster. A clip the browser cannot decode gets the play badge on a black tile instead of a broken image. ([#&#8203;2424](https://github.com/mauriceboe/TREK/issues/2424), Closes [#&#8203;2341](https://github.com/mauriceboe/TREK/issues/2341)) - The video player has its icons back. Plyr fetched its sprite from cdn.plyr.io, which the policy refuses, so the clip played with blank buttons, and on closing the lightbox it pointed the element at a clip on that CDN. The sprite ships with the app now and the teardown asks nothing of the CDN. ([#&#8203;2424](https://github.com/mauriceboe/TREK/issues/2424)) - Saving an entry on the journey page no longer throws the page to the error boundary. The map pans to the active entry on a timer that could beat the frame giving the map its first view; Leaflet took that pan as the first view with no zoom, the entry markers never made it onto the map, and the next rebuild crashed while removing them. The pan waits for the first view now. ([#&#8203;2424](https://github.com/mauriceboe/TREK/issues/2424)) - The road trip no longer drives across a flight. A flight, train, ferry, cruise or bus booked on a day with located terminals ends the road at the terminal it leaves from and starts it again at the one it lands at; the ride between them runs on the timetable, is never sent to the router and counts for no distance, and the map draws it as the booking's own arc. On the rail and in the phone chain a ride that leaves and lands on the same day is one block: the booking and its minutes over the two terminals, with the timetable under each name and the time the drive has you there on the right, an hour before a flight, half an hour before a ferry, ten minutes before a train or a bus. A hire car's pick-up and return desks stand on the road as their own rows, the pick-up opening its day and the return closing it, and the range budget starts full at the pick-up. A table, tickets or a tour booked on the day hang under their stop as chips that open the booking; one that belongs to no stop is listed under the day. A hop of a few hundred metres, the hire desk beside the terminal, keeps its line and drops the "0 km in 0 min" pill. The server's `calculate_roadtrip` seats the same stops. ([#&#8203;2429](https://github.com/mauriceboe/TREK/issues/2429), Closes [#&#8203;2428](https://github.com/mauriceboe/TREK/issues/2428)) - The map and the phone's travel connectors no longer drive from the hotel to the airport on a day that starts with a flight. Booking a night writes the hotel onto its check-in day as a stop for the road trip's driving chain; the day plan hides that stop and draws the hotel as the day's bookends, but the route builder still read it from the store, and with no time of its own it led the day ahead of the timed booking. The builder now works from the same stops the list shows, so the day reads flight, then the road from the arrival airport to the hotel. A hotel you placed as a stop yourself stays a waypoint. ([#&#8203;2432](https://github.com/mauriceboe/TREK/issues/2432), Closes [#&#8203;2430](https://github.com/mauriceboe/TREK/issues/2430)) - A marker on a collection's map shows the place on every click. The click used to toggle the selection, so the second click on the marker of the place that was open closed it again, which read as the details refusing to open. The map background and the close control clear the selection; a list row still toggles. ([#&#8203;2433](https://github.com/mauriceboe/TREK/issues/2433), Closes [#&#8203;2431](https://github.com/mauriceboe/TREK/issues/2431)) - The PDF export lists a day the way the day plan lists it. Booking a night writes the hotel onto its check-in day as a stop for the road trip's driving chain, and the plan hides that stop because the day already carries the booking as its accommodation block; the desktop export received the stop anyway and printed the hotel place above a flight that left in the morning. The export now drops it before merging the day, so the day reads flight first with the night in its accommodation block. The phone's export already had the filtered set. ([#&#8203;2435](https://github.com/mauriceboe/TREK/issues/2435), Closes [#&#8203;2434](https://github.com/mauriceboe/TREK/issues/2434)) - A search the TREK index answered with the wrong place can be sent to Google after all. Since 4.3.0 the index and OpenStreetMap answer every search first and Google is only asked when they find nothing, so a list with the wrong place on it never reached Google, whatever key the instance had, and the provider choice only decided who fills the empty case. Under a result list that did not come from Google a quiet line now reads "Not the right place? Search Google instead" and sends the same query to Google Places alone, on the desktop form and the phone's search sheet; the MCP search tool takes the same `provider` parameter. Beside the Google Maps key, under "What the key may be used for", a new switch "Search with Google only" hands every search and every suggestion to Google and asks nothing of the index or OpenStreetMap. Both only do anything where a Google key holds the slot, and the switch's row says so without one. ([#&#8203;2436](https://github.com/mauriceboe/TREK/issues/2436)) - Plugin widgets for the reservation-detail slot show on the phone. A plugin declaring that slot, Flight Tracker for one, mounted under every booking card on the desktop and nowhere in the phone's transport and booking tabs, so on an iPhone in portrait the booking was there and the widget was not until the phone was turned sideways, which crosses the desktop breakpoint. The phone cards carry every reservation-detail widget under the card now, scoped to that booking and with the same context the desktop hands over plus the phone form factor; it goes with the card body in compact view. ([#&#8203;2445](https://github.com/mauriceboe/TREK/issues/2445), Closes [#&#8203;2440](https://github.com/mauriceboe/TREK/issues/2440)) - A trip created through MCP or by a plugin lands in your display currency instead of EUR. The server wrote EUR whenever the caller named no currency, and only the trip dialog ever names one, so every trip an assistant created was a EUR trip whatever you read your amounts in. A trip created without a currency now takes the display currency from Settings, the admin's User Defaults preset included, and EUR only when that is left on Trip currency, the same value the dialog pre-fills. ([#&#8203;2444](https://github.com/mauriceboe/TREK/issues/2444)) - An MCP tool refuses an argument it does not declare instead of dropping it. A misspelt field such as stopType for stop\_type used to be stripped before the tool ran, so the assistant reported the road trip stop as updated while nothing had changed. Such a call now answers Unrecognized key and the assistant corrects itself, the published tool schemas carry additionalProperties false so a client that reads them never sends the key, and the nested objects a tool takes, legs, imported stops, collection links and transit places among them, are held to the same rule. A script of your own that sends fields a tool does not declare sees that error now and has to drop them. ([#&#8203;2444](https://github.com/mauriceboe/TREK/issues/2444)) - Edit and Delete on a place are shown only to members who may edit places. With Places set to "Trip owner" under Admin, a member who may still edit days saw Edit and Delete in the day plan's right-click menu, the same two in the place details panel, the rename on its title and the pencil on a place row in the phone's edit mode, and every one of them ended in the server's refusal. Taking a place off a day stays a day right, and rating a place is unchanged. ([#&#8203;2447](https://github.com/mauriceboe/TREK/issues/2447), Closes [#&#8203;2446](https://github.com/mauriceboe/TREK/issues/2446)) - An MCP client finds the OAuth discovery documents wherever it looks for them. A client handed `https://your-trek/mcp` as the server address looks for them below that path rather than asking the origin, and TREK answered those probes with the web app: a 200 with an HTML body, which the client reads as "this server does not implement OAuth". The three documents answer under the server address now as well, anything else there is a plain 404 the way it already was at the origin, and the path-inserted form of the authorization-server document is served instead of refused. ([#&#8203;2448](https://github.com/mauriceboe/TREK/issues/2448)) - Registering an OAuth client by hand says what was wrong with it. The form answered every refusal with "Failed to register OAuth client" and swallowed the reason the server gave, so a missing scope, the ten-client limit or a redirect URI TREK does not accept all looked the same. ([#&#8203;2448](https://github.com/mauriceboe/TREK/issues/2448)) - The button that turns GPS on follows the phone instead of the moment the map opened. Both maps decided it from the window width once while rendering, so turning the phone sideways crossed the breakpoint and the button stayed as it was, and turning back did not bring it home either; which map you were on only decided when the question was asked again. ([#&#8203;2449](https://github.com/mauriceboe/TREK/issues/2449)) - A booked night settles where it belongs and stays there. Two nights on one day never agreed on an order, so a quiet edit on either swapped them and took the road drawn between them with it, and the upgrade that seats existing nights reported moves it then undid on the next run. One rule seats them now, by check-in and then by the booking made first, and the same rule runs when a trip's dates move, which used to push the night back to the end of its day. ([#&#8203;2450](https://github.com/mauriceboe/TREK/issues/2450)) - The ride block keeps up with its booking. Changing a flight's departure left the old minutes and the old late mark on the rail until the page was reloaded, because they were computed by the routing the change did not re-run. ([#&#8203;2450](https://github.com/mauriceboe/TREK/issues/2450)) - A day that lands from a ride reads as the ride it was, not as a car that drove no distance for nine hours, and the refuel offer is there on the road out of an arrival terminal or a hire desk, where the range starts over. Searching along the drive from an assistant no longer looks under the flight path, the way the planner already did not. ([#&#8203;2450](https://github.com/mauriceboe/TREK/issues/2450)) - A shared trip's map numbers the day's stops the way the planner does, now that a booked night leads its day, and the PDF prints a day the way the day plan shows it from either device. A clip without a poster draws its play badge everywhere it appears, not only in the entry editor. ([#&#8203;2450](https://github.com/mauriceboe/TREK/issues/2450)) - The dashboard hero has room for the letters that hang below the line, the trip cards in list view keep their status badge clear of a two-line title, the release notice keeps its close control in reach when it stacks on a narrow screen, and a shared link's actions are big enough for a thumb, with the delete asking first. ([#&#8203;2450](https://github.com/mauriceboe/TREK/issues/2450)) - The line that sends a search to Google and the admin switch that sends every search there are offered only where Google actually answers, instead of wherever a key happens to be stored. ([#&#8203;2450](https://github.com/mauriceboe/TREK/issues/2450)) ##### Internal - The version marker the app keeps in local storage is taken as the match of one anchored pattern instead of a strip-and-compare, the shape SonarCloud's taint engine reads as sanitised; same characters, same length, same behaviour. This was the one open finding that kept the dev branch gate red since the 4.3.0 cycle. ([#&#8203;2445](https://github.com/mauriceboe/TREK/issues/2445)) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMDguMiIsInVwZGF0ZWRJblZlciI6IjQ0LjExNS4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->
renovate added 1 commit 2026-09-25 03:09:46 +00:00
renovate force-pushed renovate/mauriceboe-trek-4.x from 37e3b8952f to dfc5ec5b6b 2026-09-25 03:09:46 +00:00 Compare
renovate changed title from Update mauriceboe/trek Docker tag to v4.3.1 to Update mauriceboe/trek Docker tag to v4.3.2 2026-09-25 03:09:48 +00:00
AverageMarcus merged commit 4f3a991e4a into master 2026-09-25 06:11:57 +00:00
AverageMarcus deleted branch renovate/mauriceboe-trek-4.x 2026-09-25 06:11:58 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: AverageMarcus/cluster.fun#799