                          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.
