OSPREY Sign in

Project lineage guide

How forks, new versions, and reuse work on OSPREY, and what a lineage link actually claims.

The two kinds of link

A lineage link connects your project to an OSPREY project it builds on. Ask yourself whether you changed their work or used it as-is.

Derived From means you started from their files or design and modified them. Think things like a fork of their firmware, a rewrite of their controller, or a redesign of their pump housing to fit your deployment platform.

Uses means their project is used inside yours, mostly unmodified. For example, their pump is a component in your instrument, or their library is compiled into your firmware.

If you read their design notes and it shaped your approach but you didn't directly copy or modify files or designs, don't add a link. Put an acknowledgement in your README instead.

How links work

You add links on your project's edit form, under the Lineage tab, by pasting the other project's URL. Every link records which version of each project it applies to, so it stays accurate as both projects keep releasing. If a later version of your project pulls in new files or updates from the same source, add a new link when you publish that version. The old link was correct when it was made and doesn't change.

A link is public as soon as you make it. The other project's team gets a notification of the link. They can't block a link, but they can dispute one they think is wrong, with a reason that shows publicly. A disputed link stays visible on both projects with the dispute attached. Staff will work with both teams to attempt to resolve any disputed links.

If you made a mistake, withdraw the link from the lineage page. A withdrawn link stays in the record with a withdrawn label, and the other team is notified of withdrawals. Pinned the wrong version? Withdraw it and add a new link.

Etiquette