Eips Exceptions
Copyright (C) 2026 taylor.fish <contact@taylor.fish>. This document is
licensed under Creative Commons Attribution-ShareAlike 4.0
International (https://creativecommons.org/licenses/by-sa/4.0/).
The Eips Lesser Network Exception and Eips Peer-to-Peer Exception are
collectively known as the Eips Exceptions. This document contains the
text of both exceptions.
========================================================================
Eips Lesser Network Exception
Copyright (C) 2026 taylor.fish <contact@taylor.fish>. This document is
licensed under Creative Commons Attribution-ShareAlike 4.0
International (https://creativecommons.org/licenses/by-sa/4.0/).
Preamble
The intent of this exception is to provide a "weak copyleft" version of
the AGPL's requirement to share the source code of network services,
where a network service that uses a library covered under this exception
only needs to provide the source code of the library. This exception
does not affect which source code you need to provide when distributing
a program in binary form; the usual "strong copyleft" provisions apply
in that case, in the same way as the ordinary GPL.
TERMS AND CONDITIONS
1. Definitions.
"AGPLv3" refers to version 3 of the GNU Affero General Public License
as published by the Free Software Foundation.
The terms "the Program", "modify", "modified version", "based on",
and "Corresponding Source" have the same meaning as in AGPLv3.
The "Application Portion" of a modified version of the Program is the
portion of the modified version that is not based on the Program in
any way other than due to its use of public interfaces provided by
the Program. The remaining portion of the modified version is known
as the "Library Portion". With respect to a modified version of the
Program that you make, you may choose to reclassify any part of the
Application Portion as instead belonging to the Library Portion.
The "Library Source" for a modified version of the Program is the
Corresponding Source for the modified version, excluding any source
code that is solely part of the Application Portion rather than the
Library Portion.
2. Additional Permission.
As an additional permission under AGPLv3 section 7, if you modify the
Program, in situations where your modified version would, as
described in AGPLv3 section 13, normally be required to offer an
opportunity to receive the Corresponding Source to a user interacting
with it through a network, your modified version may instead offer an
opportunity to receive the Library Source, provided the following
condition is met:
i) The Application Portion must not rely on functionality from the
Library Portion that can be achieved only by using the Library
Portion in a way that is sufficiently complex, intimate, or
reliant on data not provided by the Library Portion that an
individual reasonably skilled in computer programming would not be
able to achieve similar functionality given only the Library
Source rather than the Corresponding Source. If the Application
Portion does rely on such functionality, you must add the
functionality to the Library Portion, either by reclassifying the
relevant parts of the Application Portion as belonging instead to
the Library Portion, or by directly reimplementing the
functionality into the Library Portion, to the extent required to
satisfy this condition.
========================================================================
Eips Peer-to-Peer Exception
Copyright (C) 2026 taylor.fish <contact@taylor.fish>. This document is
licensed under Creative Commons Attribution-ShareAlike 4.0
International (https://creativecommons.org/licenses/by-sa/4.0/).
Preamble
The intent of this exception is to allow clients in a peer-to-peer
architecture to communicate with each other without having to offer
their source code, as long as the purpose of the communication is to
share data rather than to perform a task on someone else's computer. For
example, under this exception, a peer-to-peer collaborative document
editor should not have to offer its source code simply because it sends
and receives updates to the document to/from its peers.
TERMS AND CONDITIONS
1. Definitions.
"AGPLv3" refers to version 3 of the GNU Affero General Public License
as published by the Free Software Foundation.
The terms "the Program", "modify", "modified version", and
"Corresponding Source" have the same meaning as in AGPLv3.
A "remote user" of a program is a user who interacts with the program
remotely through a computer network, according to the same
interpretation as the similar language present in AGPLv3 section 13,
paragraph 1.
2. Additional Permission.
As an additional permission under AGPLv3 section 7, if you modify the
Program, your modified version need not offer, to a particular remote
user, an offer to receive the Corresponding Source as described in
AGPLv3 section 13, provided the following condition is met:
i) Your modified version does not, in response to any request from
the remote user, provide meaningful functionality to the remote
user based on the request. Any data sent from your modified
version to the remote user must be either "trivial" or
"independent" as defined below.
Data sent by a program to a remote user are "trivial" if they consist
entirely of basic facts about the program or its environment (such as
the program's version or the type of operating system on which it is
running), or information that is incidentally required to ensure
proper communication with the remote user but would not be considered
by a reasonable user to constitute meaningful functionality (such as
a checksum to ensure that other data are not corrupted in transit),
or a combination thereof.
Data sent by a program (the "sending program") to a remote user are
"independent" if they are not meaningfully based on data received
from the remote user (herein "remote data"), except only incidentally
to the extent required to ensure that the remote user, or a program
acting on behalf of the remote user, can properly process and make
use of the portion of the data that is not based on remote data. Data
that appear to be based on remote data solely as a consequence of
user input to the sending program, with no influence from the sending
program itself, are not considered to be based on remote data for the
purposes of this definition.