Skip to main content
Version: Aeon 7.0

Aeon 7.0.1832

Released August 27, 2026. Search that runs itself, appointments as full records, print layouts that flow across pages, and times shown in your local time

Highlights​

  • Word searches run themselves again. Quick search runs the fast lookups as you type and starts the deeper full-text search on its own when they find nothing (Enter runs it immediately; Shift+Enter opens the search page).
  • Quick search looks in closed items by itself. When nothing matches in active items, the fast indexed search automatically checks closed items with visible progress β€” full-text over closed stays one click away.
  • Field-targeted searches are fast on large databases. Searches like itemnumber: or call: now use the identifier indexes when matching how a value begins, with a "Search full text" option for mid-string matches.
  • Field-targeted searches run as you type. Queries using operators like title: or author: no longer wait behind the "Search for…" step.
  • Appointments now open as full records. Every appointment has its own shareable page β€” researcher, notes, and all associated requests at full width β€” with a quick-glance popover on the calendar for one-click Confirm and Sign In.
  • Flow layout for print templates β€” templates can now use a band-based flow layout where content grows and breaks across pages: long invoices continue onto page 2 with repeated headers, and receipt-style continuous paper prints exactly as tall as its content.
  • Custom page sizes and editable margins β€” the Print Designer now offers editable page margins, one-off custom paper dimensions (inches or millimetres, including continuous receipt rolls), and reusable site-defined page sizes managed right from the size dropdown.
  • Convert all staff accounts to single sign-on, or back to local, in one step. Single Sign-On β†’ Sign-in options previews exactly which accounts convert and which are skipped before anything changes.

Fixes​

  • A typed transaction number always finds its request. Exact number lookups return the request even when it's closed, instantly β€” instead of scanning active items for the digits and reporting nothing.
  • The search page runs one query instead of three. Only the visible tab searches, counts above 1000 show as "1000+", and result pages no longer scan the database twice.
  • Quick search results no longer wait for the slowest group. Requests, users, and activities load independently in the command palette; a slow group reports itself without blanking the rest.
  • Quick search says when closed items weren't searched. The default active-only search now offers "include closed" as a one-click action instead of relying on knowing the * prefix.
  • Every search surface narrates what it's doing. Fast-path behavior, progress messages, and the "search full text" and "search closed items" options now appear consistently across the palette modes and the search page.
  • Search works properly for restricted roles. Roles without Requests access no longer hit hidden permission errors, dead search tabs, or a locked-out Custom Search.
  • Addons that call external APIs now work for all staff. Catalog search addons (Alma/Primo and others) failed with a permission error for staff whose role lacked Integrations configuration access; using an addon no longer requires configuration-level permissions.
  • Web addons no longer break the legacy Customization Manager β€” web addons moved to their own database table, so the desktop Customization Manager's Server Addons form loads correctly again.
  • Customization search no longer slows down on sites with large addons. Every keystroke was loading each matching addon's full installed package β€” up to 5MB apiece β€” just to search its name.
  • Requests and request notes created in the staff web client no longer show times off by your UTC offset. Their timestamps were being recorded in server-local time while the rest of the system records UTC.
  • Email send times on a user's record now display in your local time. The Emails tab previously showed them in UTC β€” several hours off for most sites.
  • Note, history, and change-history dates on a user's record now display in your local time. These tabs previously showed the raw UTC time, several hours off for most sites.
  • Date filters now match the dates shown in the grid. Filtering by a date (Transaction Date, Creation Date, and other date columns) previously compared the UTC day, so requests near midnight could be excluded from the day they visibly displayed under.
  • Exports and the Users grid show planning dates as entered. Scheduled Date and User Expiration Date now appear in CSV/Excel exports and on screen as the calendar date that was entered, instead of a date-time shifted by your timezone.
  • Imported scheduled dates now match dates entered in the client. Requests imported from a file had their scheduled date shifted by the server's timezone offset instead of being stored as the date in the file.
  • Requests created with an appointment honor the reading room's lead-days policy again. Every future appointment previously sent the new request to Awaiting Future Request Processing regardless of the room's request lead days; imported and staff-created requests also now follow the same routing rules, including holding future-dated requests when FutureRoutingDays is 0.
  • New requests are held for future processing at the right moment. Requests with an appointment or a future scheduled date could be routed to Awaiting Future Request Processing a few hours early or late because routing mixed the server's local clock with UTC values; the cutoffs now use the appointment's actual time and the library's calendar day.
  • Required-appointment rooms now cancel associated requests with the appointment. Cancelling an appointment in a reading room whose policy requires appointments always cancels its linked requests, matching the desktop client.
  • The Appointments day view now fits as many side-by-side appointments as your screen allows. Overlapping appointments no longer collapse to three columns with a "+N more" pill unless space actually runs out.
  • Reading rooms with existing closure or reduced-availability exceptions can be saved again. Those exceptions were being read back with a blank type, which counted as an error on every row and blocked every save. They now load correctly, and reduced-availability periods created here reserve their seats on the patron side as intended.
  • A reduced-availability exception now requires the number of seats to reserve. Leaving it blank previously saved an exception that reserved nothing and stopped the desktop Customization Manager from saving that reading room at all.
  • A failed save now scrolls to the field that needs attention. Previously the highlighted field could be far down the exceptions list with nothing bringing it into view, and the message said only that "some values" needed attention β€” it now names how many exceptions are involved.
  • Seat locations no longer require a separate code. Adding a reading-room location with just a name now saves β€” the code defaults to the name β€” and a validation error on another tab no longer hides a location error by switching tabs away from it.
  • Seat names on the dashboard's Signed In panel no longer get cut off. Long seat names (e.g. "Reading Room Table 12") now wrap instead of truncating.
  • Notify Appointment Received is described correctly. The switch's label and helper text now say the researcher receives the confirmation email, not staff.
  • Switching a staff account from single sign-on back to Local can no longer strand it. The change is refused unless the account can still sign in afterwards β€” it keeps a stored password, has an email address for a reset link, or you supply a new password with the change.
  • Signing in with SSO no longer fails with a server error when your account has no usable site assignment. The login now returns a clear message naming the empty site group to fix, instead of a 500.
  • Staff sessions now stay signed in while you work. The session renews for as long as you interact with the app, and 30 idle minutes bring a one-minute warning before a clean sign-out instead of a surprise logout at ~20 minutes.
  • Full Name now honors the preferred name. A preferred name substitutes for the first name (e.g. "Katie Gillespie") consistently across user cards, the grid, the user form, search results, activity user lists, and printed callslips.
  • A user whose preferred name is blank now shows their username in lists. The name line was left empty, with the username stranded on the line below it.
  • Usernames no longer show an "@" prefix. Sites whose usernames are email addresses no longer see "@name@domain.edu" across user cards, search, appointments, and the command palette.
  • User card rows line up correctly. The username line no longer sits slightly right of the details below it on unlocked records.
  • ID Number is now available as a Users grid column. The reader number can be shown, sorted, and filtered in Grid view, and placed on user cards in the card designer.
  • Print rendering fixes β€” rotation and vertical alignment now print exactly as the designer shows; elements clamp to their own slot on multi-record layouts instead of bleeding into the neighbor; truncated tables say how many rows didn't fit; transaction numbers print without digit grouping; appointment Start/End Time fields keep their time component.
  • Callslip "Requested for" line β€” now shows the activity name for activity requests, falling back to the researcher name, matching the desktop client. Print fields can declare a fallback field in general ("print A; if empty, print B").
  • Print Designer usability β€” the floating format toolbar stays inside the visible area, zoomed-in canvases scroll fully, lines are easier to grab, the font list only offers fonts the PDF can actually print (legacy fonts are labeled with what they print as), and the workflow buttons from Print Callslip through Route Photodup have hover text.
  • Activity and Card designers survive corrupt templates. A template whose stored layout is unreadable now falls back to the default layout instead of crashing the designer to the error screen.
  • Queue Designer no longer loses edits or duplicates the Queues category. A background refresh (rename, set default) no longer reverts unsaved edits, a corrupt template falls back to the default layout instead of crashing to the error screen, and emptying the generic Queues category no longer re-creates every queue as a duplicate group.
  • Grid columns can be dragged across a wide grid in one motion β€” dragging a column header now auto-scrolls the grid when the pointer nears an edge.
  • New grid columns appear at their intended position for saved layouts β€” instead of landing at the far right past the horizontal scroll.
  • Recent activities open the activity again. Activities reopened from the command palette's Recent list no longer land on an unrelated request queue.
  • The calendar popup no longer changes height as you page between months. The next-month arrow stays in one place, so repeated clicks can't drift onto the control underneath and edit the wrong record.
  • Selecting text in an email template's body no longer jumps the page to the top or bottom. The template form now holds its scroll position while you select in the editor.
  • The Photoduplication dropdown is now a single button. It shows the one available action directly β€” Initialize Photodup before initialization, Undo Initialization after β€” instead of a one-option menu.
  • Researcher changes now warn about invalid billing accounts. Changing or clearing a request's researcher warns when the request's billing account would no longer belong to anyone on the request, matching the desktop client; the account is never cleared automatically.