Repository navigation
Releases
Semester 1.30
Missing work is flagged instead of hidden.
- Missing assignments show up again. Anything past due that was never handed in used to disappear from the board. It now sits first in To-Do with a red Missing flag, and gets its own counter.
- On your calendar too. Missing work stays on the subscribed calendar and the exported file until you turn it in, titled "Missing:" so it's obvious. Old deadlines you already dealt with still drop off.
- Flagged in the month view.
- Quiet about the rest. Nothing is flagged if it was handed in, graded, done on paper, has nothing to submit, or is more than two months old. Canvas's own missing flag is used first, so a teacher marking something counts.
Semester 1.29
Make it look how you want.
- Appearance settings. Spacing (cozy or compact), text size, and cards either filled with the class color or plain with a color dot.
- Hide what you don't use. Switches for the counters row, the next-up strip, and the unscheduled tray.
- Month fix. Day cells are even again — a long assignment name used to stretch its whole column.
Semester 1.28
A clearer view switcher.
- Week and Month sit together at the top of the board, as a proper switch instead of two easy-to-miss words.
- Both views move the same way. Back, forward, and Today, with the week or month you're looking at shown beside them. The week board can now be paged like the month can.
- Planning never schedules work for after it was due.
Semester 1.27
A month view, smarter planning, and real Mac reminders.
- Month view. See the whole month at once — deadlines, the days you planned to work, and which days are crowded — then switch back to the week to plan it.
- Planning knows what's big. A 100-point essay no longer counts the same as a 5-point quiz. Big work gets scheduled first, starts earlier, and stays off its own due date when there's an earlier day free. Anything due this week always gets a day, even on a full one.
- Mac reminders come from Semester. They now use macOS's own notification system, so they carry the app's icon and open it when you click one. If your Mac is set to hide them, Semester says so once and takes you to the switch.
- What's new, in the app. After each update, Semester shows what changed in plain words, once.
- Easier to read. Text and colors meet contrast guidelines in light and dark, whatever accent color you pick, and keyboard focus is always visible.
- Setup shows one of your own classes instead of a made-up one.
Semester 1.26
Security fixes. Update when you can.
Windows: assignment text could run commands. A reminder built its notification out of a PowerShell command, and Canvas text went in unquoted, so an assignment or course named a certain way could run code on your computer when the reminder fired. Background reminders run with Semester closed, so it did not need the app open. Notification text is now quoted so nothing in it can execute. Windows only. Mac and Linux were never affected.
The local API answered other websites. Semester runs a small server on your own computer to draw the dashboard. It did not check where a request came from, so any page open in your browser could tell it to submit work, send a Canvas message, or log you out, and a site that pointed its own name at your computer could read your inbox and grades through it. Requests from other sites and from other hostnames are now refused.
Assignment descriptions are cleaned before display. A description is a teacher's HTML and the dashboard shows it as HTML. Formatting, links, images, lists and tables still render; anything that could run does not.
The checks that run before every build now cover all three, so they cannot come back unnoticed.
Semester 1.25
Semester now runs on Intel Macs.
- One Mac download for every Mac. The app carries both Intel and Apple Silicon code, and macOS picks the right one. Before this, Intel Macs couldn't open it at all.
- Needs macOS 11 or later; older versions get a clear message instead of a crash.
- Every release now has to prove both halves run before it ships.
Semester 1.24
Windows fixes.
- The dashboard couldn't load ("charmap codec can't encode character"). Windows saves text in a character set that can't hold the bullet, dashes and accents the page uses. Every file Semester writes is now UTF-8.
- Reminders were silent. Windows notifications called a PowerShell add-on almost nobody has installed. They now use Windows' own notification system.
- Reminders stopped when the app closed. Background checks were Mac-only; Windows now schedules them through Task Scheduler.
- A refresh could fail while the app had the page open. It retries, then falls back to a copy.
Checks now run on Windows, Linux and macOS before every build, and each built app is launched and made to draw a dashboard before it ships.
Semester 1.23
Fixes the dashboard on Windows.
- Windows: the dashboard couldn't load. Dates were formatted with codes Windows rejects, so building the page failed with "invalid format string" — on every launch, for everyone on Windows. Sign-in looked broken for the same reason: it created and saved the token fine, then handed off to a page that couldn't render.
- Checks now run on Windows, Linux and macOS before every build, and each built app is launched and made to draw a dashboard before it ships.
Semester 1.22
Sign-in works with more schools' logins.
- Fixed: at schools whose login ends on its own "Login successful" page (Berkeley's CalNet, for one), sign-in used to wait forever. Semester now returns to Canvas by itself.
- Sign-in no longer guesses from web addresses. Whenever the window is on your Canvas site, it asks Canvas for the token; "not signed in yet" simply means keep waiting.
- If your school's login ends somewhere unexpected, setup offers "Already signed in? Continue".
- If your school signs in through Google, Semester says so right away. Google blocks sign-in inside apps, so paste a token instead.
- Only a clear "your school doesn't allow this" stops sign-in now. Otherwise it waits up to 10 minutes and then says so plainly.
Semester 1.21
Notifications, your way.
- Add your own reminder times, like 2 days or 6 hours before, alongside the day before, the morning it's due, and 3 hours before.
- Pick the hour "the morning it's due" means. It also sets when start-day nudges arrive.
- Separate switches for new assignments, new announcements, and grades.
- Quiet hours: nothing arrives overnight, and anything that comes up is held, not lost. It arrives when quiet hours end.
- Mute a class to silence just that course.