|
| 1 | +# Third-Party Notices |
| 2 | + |
| 3 | +VFS for Git incorporates third-party native libraries that are statically |
| 4 | +linked into the final executable when building with NativeAOT. This file |
| 5 | +documents those dependencies and their licenses. |
| 6 | + |
| 7 | +## libgit2 |
| 8 | + |
| 9 | +**Source:** https://github.com/libgit2/libgit2 |
| 10 | +**Version:** 1.9.3 (via vcpkg overlay port in overlays/libgit2/) |
| 11 | +**License:** GPLv2 with Linking Exception |
| 12 | + |
| 13 | +libgit2 is used for local Git object lookups (commit parsing, tree walking, |
| 14 | +blob size queries, config reading). VFS for Git calls libgit2 via P/Invoke |
| 15 | +and, when building with NativeAOT, statically links the compiled library into |
| 16 | +the executable. |
| 17 | + |
| 18 | +The libgit2 COPYING file (https://github.com/libgit2/libgit2/blob/main/COPYING) |
| 19 | +includes the following linking exception: |
| 20 | + |
| 21 | +> In addition to the permissions in the GNU General Public License, |
| 22 | +> the authors give you unlimited permission to link the compiled |
| 23 | +> version of this library into combinations with other programs, |
| 24 | +> and to distribute those combinations without any restriction |
| 25 | +> coming from the use of this file. (The General Public License |
| 26 | +> restrictions do apply in other respects; for example, they cover |
| 27 | +> modification of the file, and distribution when not linked into |
| 28 | +> a combined executable.) |
| 29 | +
|
| 30 | +This exception explicitly permits both dynamic and static linking of the |
| 31 | +compiled libgit2 library into VFS for Git without imposing GPL obligations |
| 32 | +on VFS for Git's own MIT-licensed source code. Modifications to libgit2 |
| 33 | +itself remain subject to the GPLv2. |
| 34 | + |
| 35 | +The full GPLv2 license text is available at: |
| 36 | +https://www.gnu.org/licenses/old-licenses/gpl-2.0.html |
| 37 | + |
| 38 | +## SQLite |
| 39 | + |
| 40 | +**Source:** https://www.sqlite.org/ |
| 41 | +**Version:** Bundled via SQLitePCLRaw.lib.e_sqlite3 NuGet package |
| 42 | +**License:** Public Domain |
| 43 | + |
| 44 | +SQLite is used for persistent storage of placeholder lists and blob size |
| 45 | +caches. The SQLite C library is in the public domain and imposes no |
| 46 | +restrictions on linking or distribution. |
| 47 | + |
| 48 | +> The author disclaims copyright to this source code. In place of a |
| 49 | +> legal notice, here is a blessing: |
| 50 | +> |
| 51 | +> May you do good and not evil. |
| 52 | +> May you find forgiveness for yourself and forgive others. |
| 53 | +> May you share freely, never taking more than you give. |
| 54 | +
|
| 55 | +https://www.sqlite.org/copyright.html |
| 56 | + |
| 57 | +## SQLitePCLRaw / Microsoft.Data.Sqlite |
| 58 | + |
| 59 | +**Source:** https://github.com/ericsink/SQLitePCL.raw (SQLitePCLRaw), |
| 60 | +https://github.com/dotnet/efcore (Microsoft.Data.Sqlite) |
| 61 | +**License:** Apache License 2.0 |
| 62 | + |
| 63 | +These managed libraries provide the .NET API surface for SQLite access. |
| 64 | +SQLitePCLRaw handles the P/Invoke layer to the native SQLite library, and |
| 65 | +Microsoft.Data.Sqlite provides the ADO.NET provider. Both are licensed under |
| 66 | +the Apache License 2.0, which permits static linking without restriction. |
| 67 | + |
| 68 | +The full Apache License 2.0 text is available at: |
| 69 | +https://www.apache.org/licenses/LICENSE-2.0 |
0 commit comments