Ownware
Guide · Aug 30, 2026

Jobora 1.0.1 — a numbering fix after "Load demo data"

A maintenance release for Jobora: the first quote created after loading the demo data could collide with a demo number and fail to save. Fixed in the seed and in the number generators; 166 tests.

A small release for Jobora, the field-service tool, with one fix worth reading about.

What was wrong

Jobora numbers quotes, invoices and jobs from counters in its settings (Q-0001, INV-0001,
JOB-0001, prefixes editable). The demo data set — "Northside Property Services", loaded from
Settings → Load demo data — wrote its rows with hand-picked numbers and left those counters
at 1. The first real quote created after a demo load was therefore handed Q-0001 again, the
database's uniqueness rule refused it, and the save failed with a server error instead of a quote.

We found it on our own public demo while recording a walkthrough. Anyone who installed Jobora,
loaded the demo data to look around, and then raised a quote would have met the same wall.

What changed

  • The demo seed now points every counter past the highest number it wrote.
  • Both number generators step past a number that already exists, so an import, a restored backup

or an old demo database can never make a save fail on a duplicate number.

  • Ten tests cover the case, including the exact save that failed. The suite stands at 166.

Why the generators changed too

Fixing the seed alone would have left every 1.0.0 installation that had already loaded the demo
data with counters still sitting at 1. So the second guard lives where the number is issued: when
Money::nextNumber() or Jobs::nextNumber() is about to hand out a number that a row already
carries, it steps forward until it finds a free one, still inside the same locked transaction
that keeps two simultaneous saves from sharing a number. A restored backup, a CSV import that
brought its own numbering, or a prefix you changed halfway through the year are covered by the
same rule. Numbers keep their four-digit padding and your prefixes; nothing is renumbered.

What to do

If you own Jobora, download 1.0.1 from your order page and copy app/ over your installation —
no migration, no settings change; your data is untouched. If you had already loaded the demo data
on 1.0.0, the generators in 1.0.1 recover on the next save without any action from you. The
public demo runs 1.0.1 already.

Nothing else moved. Same one-time purchase, same files, one bug fewer.

Own your tools

Stop renting your own business.

Every tool in this store is a one-time purchase: install it on your own server, keep your own data, and never see a renewal invoice.

Affiliate program
Recommend tools people own — earn 35% on every sale. 90-day tracking, instant delivery, payouts by Lemon Squeezy.
Become an affiliate →