JuliaRegistries / JuliaRegistries/General

How to treat packages without an OSI-approved license?

Open
#140,158 19 comments 0 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
732
Forks
605
Avg merge
1h 51m
Merged PRs (30d)
929

Description

Had a quick chat with @StefanKarpinski about [BonitoBook's](https://bonitobook.org/website/) dual license ([PolyForm](https://github.com/SimonDanisch/BonitoBook.jl/blob/main/LICENSE) + commercial) disqualifying it from General registry.
I get the reasoning behind it, but its kind of sad, that I cant use any of the nice registry features (search, discoverability, compatibility checks, versions) for a package, which I'm totally fine to distribute free of charge, since I only want to charge for heavy usage.
Some notes from our chat:
Registry already ships some non-OSS artifacts, so policy may be worth discussing.
Custom registry for one package creates worse UX than URL installation.

Some Solutions:
* Multiple official registries with prompt on first Pkg use where users select which to enable
* Maybe have an official permissive dual license which doesn't have restrictions for distribution by Pkg
* User prompt when installing packages with non-OSS licenses for first time

I guess some of these ideas are longer out in future, but I was wondering if there's also any short term solution to get BonitoBook easy to install and depend on.

Contributor guide

Open the contributing guide

Research direction

Start by reading the issue discussion and the linked BonitoBook LICENSE, then review how the General registry and Pkg currently handle package licensing. A contribution is complete when the maintainers agree on a concrete policy or implementation path for non-OSI-licensed packages and its scope is documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.