Bylaws of The Vinyl Cache Project (1.00)

Background information for non-Danes

The Vinyl Cache Project is organized as a voluntary association in, and under the laws of Denmark.

Voluntary associations, “Foreninger”, have existed for centuries in Northern Europe, but depending on the country, a royal approval of their charter was the general norm.

In Denmark this ended with the first constitution in 1849, where article §92 made it a citizens unconditional right to form associations “for any legal purpose”.

It was an instant hit, and fueled the modernization of Denmark by organizing intellectual, industrial and agricultural transformations of the country, to the point where there are jokes in the general shape of »If three Danes are waiting for a bus and it is more than five minutes delayed, they will have formed a voluntary organization by the time it arrives.«

A voluntary association have only two mandatory components:

  • The bylaws, or constitution, which lays down the law for the association.

  • The General Assembly, a meeting where all the members can participate, which governs the association according to it’s bylaws.

Practically all associations also have:

  • The Governing Board with members elected by, and responsible to the General Assembly, tasked with managing association’s business between the meetings of the General Assembly.

There are a few questions the bylaws must always answer (see “Formalia”) but apart from that, it is a free for all: Bylaws can 100% legally be unfair, discriminatory, incoherent, inconsistent or even plain stupid, all of which have been tried, with little success, developing a strong tradition for how to write good bylaws.

A voluntary association can be dragged into court in three ways:

  • Law-breaking. Associations are subject to the law of the land, just like everybody else.

  • Externally. For instance if the association does not pay its bills, repay it’s loans or deliver on other contracts or obligations. Again: Same as everybody else.

  • Internally. Members of the association ask courts to get the bylaws enforced.

The two first are entirely normal business for a Danish Court, the fact that one part is an association hardly makes any difference.

The last one almost never goes well in court, because the entire point is for voluntary associations to manage their own affairs according to the bylaws they agreed on when they banded together,

More often than not, the resulting judgment simply says “That is not for us but for the General Assembly to figure out”.

Since the looser always pays the winner’s costs in Denmark, very few judgments get to substance, which again means that it really is up to each voluntary association to wisely write it’s own bylaws and manage it’s own affairs sensibly.

The Bylaws

The following are the bylaws of the Vinyl Cache Project, as enacted by the founding General Assembly on 2025-10-23.

The full revision history can be found at the bottom.

The Commentary is not part of the bylaws, but serves only to explain the thinking that went into them.

Formalia

§1.1 Name

The name of the association is:

»The Vinyl Cache Project«

Commentary

The formal name used in correspondence.

§1.2 Purpose

The purpose of the association is to develop, maintain and distribute the Vinyl Cache software under the “BSD-2-clause” Free and Open Source License.

Commentary

All decisions made, and all activities engaged in, under the umbrella of the association must be in furtherance of the association’s stated purpose.

§1.3 Home

The association is governed by the laws of Denmark, and its home is the city of Slagelse, Denmark

Commentary

All associations must declare what it considers it’s “legal home”, in case somebody is insane enough to file a lawsuit against it.

§1.4 Correspondence

Correspondence to the association must be sent to the email address core@vinyl-cache.org

Commentary

… and how and where you can contact it.

The General Assembly

§2.1 The General Assembly

The General Assembly consists of all members of the association, and is the highest authority of the association.

Commentary

This is literally the definition under Danish law, so strictly speaking it is not necessary to even write this, but it is customary to do so, to make the bylaws read naturally.

§2.2 Meetings of the General Assembly

In anticipation of the members of the association being spread over continents, and in light of the greenhouse gas pollution emitted by international travel, the General Assembly will meet electronically, using suitable Free And Open Source software technology available to all members.

Commentary

The General Assembly has traditionally always been in-person, but no court has ever held that it must be so.

After Covid-19 it has been obvious to everybody that it cannot be a legal requirement, provided technological access to the on-line meeting is functional, free and fair.

§2.3 Calling meetings of the General Assembly

Meetings of the General Assembly must be called by email to all members’ personal email address, at least 21 but no more than 42 calendar days ahead of the meeting.

The email must include:

  1. Date & Time

  2. The technology for the meeting

  3. The Agenda

  4. The full text of all proposals to be voted on

Members can submit additional agenda items or proposed amendments until 15 calendar days before the announced meeting, and if so the final agenda will be sent to the members 14 calendar days before the meeting.

Commentary

There is a lot of variation in this area, but the universal theme is that the members must be fairly informed what decisions might be made and how that might affect them.

Therefore it is customary to require that only matters announced well head of the G.A can be voted on.

But see §2.5 for how things can be legally rushed through anyway.

§2.4 Meeting agenda for the General Assembly

The agenda for any meeting of the General Assembly must follow this template:

  • Election of the Chair of the meeting. Membership is not required for this job, election is by simple majority of the members present.

  • The elected Chair determines if the meeting has been convened in accordance with the bylaws.

  • … (The business of the meeting)

  • Messages. Member present can bring issues to the attention of the General Assembly.

  • The Chair closes the meeting.

Commentary

The point named “Messages” here is traditionally named “Eventuelt” in Danish, which would translate directly to “Optional”. No decisions of any consequence can be made under this agenda point, precisely because they were not on the agenda.

§2.5 Rules of quorum of the General Assembly

Ordinary business on the final agenda distributed prior to the General Assembly, including on-topic amendments proposed during the meeting, are decided by simple majority of the members present.

Where the bylaws require decision by a qualified majority, two thirds of all members, or two thirds of the members present at two sequential meetings of the General Assembly are required for approval.

If all the members of the Association are in unanimous agreement, any decision can be made at any time, without going through the formality of calling a General Assembly to do so.

Commentary

The last paragraph is part of the default legal background, and is based on the observation that if everybody agrees, there is no minority which needs the protection of due notice etc.

There is a weaker background rule which says that if the General Assembly would be able to change the bylaws, they can also disregard the bylaws, because they could change the bylaws to explicitly allow what they want to do.

That background rule is almost always thwarted by the requirement, also present here, that the complete agenda of the G.A. must be announced in advance, so in practice this only applies if changes to the bylaws are already on the agenda.

§2.6 Annual Meetings of the General Assembly

The ordinary annual meeting on the General Assembly takes place in the late afternoon, UTC time, on the first Monday on or after February 22nd.

The following items must be the first orders of business for the meeting, in this exact order:

  • Annual report from the Governing Board

  • Termination of memberships according to §4.2. Removed members lose their voting right instantly.

  • Acceptance of members according to §4.1 New members get to vote from the next General Assembly.

  • Election of members to the Governing Board.

  • Election of substitute members to the Governing Board, if the General Assembly so decides.

Commentary

February 22nd 2006 is the conventional birthday of the Varnish Cache Project.

Normally there would also be a “Approval of last years accounting” and a “Next years budget & annual membership fees” point on the agenda, but without money, they are unnecessary.

§2.7 Extraordinary Meetings of the General Assembly

Any two members of the Governing Board or one third of the members (rounded up) can call an extraordinary meeting of the General Assembly, by following the procedure in §2.3

Commentary

This is the fall-back conflict resolution mechanism, if all else fails, the members get to sort things out at the General Assembly.

The Governing Board

§3.1 The Governing Board

The Governing Board consists of members elected by the General Assembly, and conduct the day to day business of the association, between meetings of the General Assembly.

In line with tradition in Free and Open Source Software, the Governing Board can also use the alias “The Vinyl Cache Core Team”.

Commentary

This is the most common construction, but since not all associations have a Governing Board, it must be stated explicitly.

§3.2 Size of the Governing Board

The number of members on the Governing Board shall be:

log 2 (number_of_members)

(rounded down) but no less than three.

Commentary

Members

Size of G.B

1…15

3

16…31

4

32…63

5

etc.

§3.3 Business rules of the Governing Board

The Governing Board makes decisions by a simple majority of the entire Governing Board, unless they have unanimously enacted different rules of business.

Commentary

The Board is free to organize its own business as long as they all agree about it, with the bylaws and General Assembly as backstop if they can not agree.

§3.4 Record keeping

The Governing Board is responsible for keeping the official journal of the association, documenting therein:

  • Changes in membership

  • Changes in composition of the Governing Board

  • Complete recordings of the meetings of the General Assembly

  • Decisions of the Governing Board

  • External communications

Members have a right to inspect the official journal, with only such redactions as the Governing Board deems necessary. Such redactions can be appealed against to the General Assembly.

Commentary

There is no legal requirement for an official journal. But when a voluntary association engages in legal or monetary agreements the other party, for instance the association’s bank, will want to see proof of mandate from the associations representatives.

It is however considered very bad form to not have “the papers on order”.

Normally the General Assembly will also elect a secretary to write the official summary, but we rely instead on an electronic recording of the General Assembly.

§3.5 Elections to the Governing Board

Members of the Governing Board are elected by the General Assembly, from among the members willing to serve.

Candidacy for the Governing Board can be announced before or or during the General Assembly.

The one third (rounded down in even years, rounded up in odd years) members of the Governing Board, who have served longest since their previous (re)election, are automatically up for (re)election at the Annual General Assembly.

Commentary

This part varies a lot, and can have major impact on the balance of power between the Governing Board and the members.

We try to strike a even balance where neither have the upper hand over the other.

§3.6 Removal of members from the Governing Board

The General Assembly can remove a member of the Governing Board only by a super-majority electing their replacement.

Commentary

This sort of follows from §3.2 which defines the precise size of the Governing Board. The requirement that a super-majority can agree on the replacement aims to ensure stability.

§3.7 Vacancies

Members of the Governing Board may step down at any time.

If the General Assembly have not elected substitute members to the Governing Board, a resignation from the Governing Board triggers an Extraordinary General Assembly to fill the vacancy.

Commentary

We are not allowed to chain the members of the Governing Board to their oars.

The Members

§4.1 Qualification for Membership

The qualifications for membership are:

  1. Members must be natural persons acting under their real name.

  2. Persons subject to EU or Danish legal sanctions cannot gain or retain membership.

  3. Membership applications must be supported by two existing members.

  4. The approval of the General Assembly.

Commentary

We explicitly limit membership to actual persons to exclude companies and organizations. in order to avoid different “classes” or “levels” of membership.

Companies and organizations are encouraged to have an employee or other person represent them in the association via a membership, but it is the person holds the membership, not the company.

§4.2 Disqualification for Membership

The General Assembly shall deny or terminate memberships if:

  1. The person has acted counter to the interests of the association, including, but not limited to, wasting people’s time.

  2. The person does not have the trust of the General Assembly

  3. Granting or retaining membership would give any third party undue influence over the association.

  4. The person disagrees with or acts counter to the United Nation’s Universal Declaration of Human Rights.

The unanimous Governing Board can temporarily suspend a membership until the next General Assembly can vote on it.

Commentary

Point three is to prevent some organization for enrolling enough members to take over control of association.

We fully recognize the risk of “slow and gradual takeover” but we trust the General Assembly do so too.

Point four is our Code of Conduct, written by people far smarter and better at it, than the people who usually writes CoC’s for FOSS projects.

§4.3 Duty of disclosure

Members and prospective members must truthfully disclose any information necessary for the General Assembly to make it’s determination under clause §4.1 and §4.2

Commentary

It is not the Governing Board’s job to spy on the members.

§4.4 Proof of actual interest

In the absence of an annual membership fee to the association, members must prove their concrete and substantial interest in the Association, by presenting, before the Annual General Assembly, a receipt documenting a monetary donation of no less than EUR 100, made by the member, in the name of the Association, to one or more of the NGOs on this list:

  1. The International Red Cross/Crescent/Crystal

  2. MSF - Médecins Sans Frontières

  3. Amnesty International

  4. Human Rights Watch

Commentary

We do not want to get a lot of social-media-cascade membership applications, from people who will have forgotten everything about us by the time of the next Annual Meeting.

Normally the annual membership fee serves this purpose, by eliminating members who, for whatever reason, have not paid their dues on time.

The required donations are a “membership fee by proxy” which imposes the usual duty of attention and monetary commitment on the members, but avoids the substantial complexity of handling money in an association with an international membership

We deliberately choose to benefit widely respected global Human Rights Organizations, rather than FOSS NGOs. Primarily because the work of the former is far more important, but also because the latter would be “too close to home” and likely waste much time and energy on debates about who should, and should not, be on the list.

§4.5 Inter-membership communications

The Governing Board shall maintain an opt-out, mailing list, members@vinyl-cache.org where the members can communicate freely amongst themselves in private.

Commentary

If the members did not have a private means of communication, they would not be able to exercise their right to call an General Assembly.

Changing Bylaws and dissolution

§5.1 Changes to the bylaws

Changes to the bylaws or dissolution of the Association requires a qualified majority of the General Assembly.

Commentary

They bylaws are meant to be stable, but not cast in stone. Changes should be infrequent and important.

§5.2 Dissolution of the association

The association is automatically dissolved if the membership ever falls below three.

Commentary

The mechanics of the bylaws do not work with less than three members, and it is legally debatable of an association can even have less than three members.

Miscellaneous

§6.1 No money

The association will not have and will not handle any money, but rely entirely on sponsorship for any unavoidable expenses.

Commentary

Handling money in international context is nothing but trouble, and the foreseen expenses are trivial enough that we trust sponsors can be found amongst the members.

§6.2 Administrative Privileges

Only members of the Governing Board can hold administrative privileges on the Associations IT and other infrastructure.

Commentary

See also: Reflections on Trusting Trust.

§6.3 Commit Privileges

The Governing Board grants and revokes commit privileges to the associations repositories.

Commentary

Commit privilege does not imply membership or vice versa.

Transitional Clauses

§7.1 Founding members

The founding members, and initial Governing Board of the association consists of:

  • Poul-Henning Kamp

  • Nils Goroll

  • Per Buer

Commentary

Poul-Henning lives in Denmark and owns the one-man company “Den Andensidste Viking”.

Nils lives in Germany, and is the founder and owner of the company “UPLEX”.

Per lives in Norway, and is the founder and an employee of the company “Varnish Software”.

§7.2 First Annual General Assembly

The first Annual General Assembly will be held on February 23. 2026

Commentary

Membership applications are welcome.

Revision log

Version

Hash

Date

Description

1.00

xxxxxxx

20251023

Ratified