106 lines
4.9 KiB
Markdown
106 lines
4.9 KiB
Markdown
# License
|
|
|
|
## calog
|
|
|
|
MIT License
|
|
|
|
Copyright (c) 2026 Scott Duensing
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
of this software and associated documentation files (the "Software"), to deal
|
|
in the Software without restriction, including without limitation the rights
|
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
copies of the Software, and to permit persons to whom the Software is
|
|
furnished to do so, subject to the following conditions:
|
|
|
|
The above copyright notice and this permission notice shall be included in all
|
|
copies or substantial portions of the Software.
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
SOFTWARE.
|
|
|
|
---
|
|
|
|
## Third-party components
|
|
|
|
calog vendors its dependencies under `vendor/`, each built from source. Every
|
|
dependency is distributed under its own license, and the full license text
|
|
ships alongside that dependency's source at the path shown below. All are
|
|
permissive (MIT / BSD / Apache-2.0 / PostgreSQL / public domain) **except**
|
|
MariaDB Connector/C, which is **LGPL-2.1** -- see the note under the database
|
|
libraries below.
|
|
|
|
### Scripting engines
|
|
|
|
- **Lua 5.4** -- MIT License. Copyright (C) 1994-2023 Lua.org, PUC-Rio.
|
|
`vendor/lua/` (notice in `src/lua.h`).
|
|
|
|
- **QuickJS-ng** (JavaScript) -- MIT License. Copyright (c) 2017-2024 Fabrice
|
|
Bellard, Charlie Gordon, and QuickJS-ng contributors. `vendor/quickjs/quickjs.h`.
|
|
|
|
- **Squirrel 3.2** -- MIT License. Copyright (c) 2003-2022 Alberto Demichelis.
|
|
`vendor/squirrel-src/COPYRIGHT`.
|
|
|
|
- **our-basic** -- calog's fork of MY-BASIC. MIT License. Copyright (C)
|
|
2011-2026 Tony Wang. `vendor/ourbasic/` (license notice in `ourBasic.h`). The
|
|
fork's changes are catalogued in `vendor/ourbasic/NOTICE` and
|
|
`vendor/ourbasic/CHANGELOG`; the pristine upstream source is preserved as
|
|
`vendor/ourbasic/ourBasic.c.upstream`.
|
|
|
|
- **s7 Scheme** -- BSD Zero-Clause License (0BSD; `SPDX-License-Identifier: 0BSD`).
|
|
Copyright (c) Bill Schottstaedt; derived from TinyScheme 1.39. `vendor/s7/s7.c`.
|
|
|
|
- **Wren 0.4.0** -- MIT License. Copyright (c) 2013-2021 Robert Nystrom and Wren
|
|
Contributors. Notice in `vendor/wren/wren.c` and `vendor/wren/wren.h`.
|
|
|
|
> Note: `vendor/wren/wren.c` and `wren.h` carry one small calog patch adding a
|
|
> public C map-key iterator (`wrenGetMapCapacity` / `wrenGetMapEntry`), which
|
|
> upstream Wren lacks; it mirrors Wren's own internal `map_iterate`. The
|
|
> additions are bracketed by `--- calog patch ---` comments. Re-apply them if
|
|
> the amalgamation is regenerated from upstream (`util/generate_amalgamation.py`).
|
|
|
|
- **Berry** -- MIT License. Copyright (c) 2018-2022 Guan Wenliang and Berry
|
|
contributors. Notice in `vendor/berry/src/berry.h`.
|
|
|
|
### Database, network, and cryptography libraries
|
|
|
|
All of the following are linked into the default build and into `bin/calog`.
|
|
`bin/calog` ships with all three SQL drivers (`dbOpen("sqlite" | "postgres" |
|
|
"mysql", ...)`).
|
|
|
|
- **SQLite 3.53.3** -- Public Domain. The SQLite source is dedicated to the
|
|
public domain; in lieu of a license it carries a blessing ("May you do good
|
|
and not evil..."). `vendor/sqlite/sqlite3.c`.
|
|
|
|
- **PostgreSQL / libpq** -- The PostgreSQL License (a permissive, MIT-style
|
|
license). Portions Copyright (c) 1996-2026 PostgreSQL Global Development Group;
|
|
Portions Copyright (c) 1994 The Regents of the University of California.
|
|
`vendor/postgres/COPYRIGHT`.
|
|
|
|
- **MariaDB Connector/C** -- GNU Lesser General Public License, version 2.1
|
|
(LGPL-2.1). Copyright (c) MariaDB Corporation Ab and others.
|
|
`vendor/mariadb/COPYING.LIB`.
|
|
|
|
- **ENet** -- MIT License. Copyright (c) 2002-2024 Lee Salzman.
|
|
`vendor/enet/LICENSE`.
|
|
|
|
- **OpenSSL 3.5.7** -- Apache License 2.0. Copyright (c) The OpenSSL Project
|
|
Authors. `vendor/openssl/LICENSE.txt`.
|
|
|
|
- **libssh2 1.11.1** -- BSD-3-Clause License. Copyright (c) 2004-2023 Daniel
|
|
Stenberg, Sara Golemon, The Written Word, Inc., and other contributors (full
|
|
list in the file). `vendor/libssh2/COPYING`.
|
|
|
|
> **Note on the database backends and LGPL.** MariaDB Connector/C is the only
|
|
> copyleft dependency in the tree. It is **statically linked** into `bin/calog`,
|
|
> which carries the usual LGPL-2.1 obligations for a distributed binary (chiefly,
|
|
> providing the means to relink against a modified Connector/C). SQLite and
|
|
> PostgreSQL/libpq are permissive. A redistributor who wants an entirely
|
|
> permissive binary can build without the MySQL backend -- drop
|
|
> `-DCALOG_WITH_MYSQL` and the `$(MYSQLARCH)` archive from the `bin/calog` link in
|
|
> the Makefile -- and keep SQLite + PostgreSQL.
|