Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
178 commits
Select commit Hold shift + click to select a range
8caff88
Remove ttconv backwards-compatibility code
anntzer May 3, 2025
c44db77
Fix center of rotation with rotation_mode='anchor'
Nov 26, 2024
f1cdc19
Merge pull request #29199 from WPurre/fixing-rotation-bug
QuLogic Jun 10, 2025
41cc933
Remove fallback code for glyph indices
QuLogic Jun 12, 2025
7dafe63
Merge pull request #30145 from QuLogic/remove-ttconv
QuLogic Jun 19, 2025
67d1a02
Merge pull request #30168 from QuLogic/no-glyph-fallback
QuLogic Jun 19, 2025
bb9aae4
Merge branch 'main' into text-overhaul
QuLogic Jun 19, 2025
a7fd524
Merge branch 'main' into text-overhaul
QuLogic Jul 7, 2025
389373e
ci: Preload existing test images from text-overhaul-figures branch
QuLogic Jun 30, 2025
4d47644
Merge pull request #30231 from QuLogic/preload-ci
QuLogic Jul 8, 2025
a018606
Add typing to AFM parser
QuLogic Jun 3, 2025
aff20cf
ci: Fix image preload with multiple conflicts
QuLogic Jul 8, 2025
572540d
Merge pull request #30274 from QuLogic/fix-preload
QuLogic Jul 9, 2025
f231f2e
Merge pull request #30134 from QuLogic/afm-typing
QuLogic Jul 9, 2025
7b4d725
Remove kerning_factor from tests
QuLogic Mar 28, 2025
8255ae2
Set text hinting to defaults
QuLogic Apr 9, 2025
89c054d
Update FreeType to 2.13.3
QuLogic Mar 27, 2025
7787153
Bump minimum meson-python to 0.13.2
QuLogic Apr 23, 2025
972a821
ci: Purge Strawberry Perl from Windows builders
QuLogic Jul 2, 2025
8839576
Merge branch 'main' into text-overhaul
QuLogic Jul 16, 2025
5fc9559
Don't set a default size for FT2Font
QuLogic Jul 16, 2025
7dae1e5
Merge pull request #30319 from QuLogic/ft2font-size
tacaswell Jul 16, 2025
7a628e5
Deprecate font_manager.is_opentype_cff_font
QuLogic Jul 18, 2025
42c108a
Deprecate setting text kerning factor to any non-None value
QuLogic Jul 17, 2025
3a0a773
TYP: Make glyph indices distinct from character codes
QuLogic Jun 3, 2025
c6e6904
Fix kerning of mathtext
QuLogic Jun 6, 2025
733cd7d
Update test images for previous changes
QuLogic Jul 24, 2025
56308af
Merge pull request #30143 from QuLogic/character-glyph-types
tacaswell Jul 31, 2025
fa62956
Split font opening/closing out of FT2Font constructor/destructor
QuLogic Jul 16, 2025
db17baf
Make PyFT2Font a subclass of FT2Font
QuLogic Jul 17, 2025
f8bd156
Merge branch 'main' into text-overhaul
QuLogic Aug 21, 2025
904fc82
Merge branch 'main' into text-overhaul
QuLogic Aug 21, 2025
ad32f0d
DOC: Fix missing references on text-overhaul branch
QuLogic Aug 21, 2025
9766cbd
Merge branch 'main' into text-overhaul
QuLogic Aug 21, 2025
584b1fd
Remove version from FreeType wrap file
QuLogic Aug 26, 2025
0635d3a
Add libraqm and its dependencies to build
QuLogic Dec 19, 2024
b0ded3a
Implement text shaping with libraqm
QuLogic Feb 26, 2025
9813523
Implement font fallback for libraqm
QuLogic Apr 3, 2025
b36b97f
DOC: Add What's New entry for complex text layout
QuLogic Aug 8, 2025
04c8eef
ci: Ignore coverage data from subprojects and generated files
QuLogic Aug 26, 2025
258de53
pdf: Simplify Type 3 font character encoding
QuLogic Aug 30, 2025
bb37cf9
Merge pull request #30520 from QuLogic/pdf-simplify-type3
QuLogic Sep 8, 2025
f630b48
Use glyph indices for font tracking in vector formats
QuLogic Jun 5, 2025
f192c87
pdf/ps: Track full character map in CharacterTracker
QuLogic Sep 3, 2025
d56936b
Merge pull request #30335 from QuLogic/vector-glyphs
tacaswell Sep 16, 2025
43d5d4e
Merge pull request #30566 from QuLogic/full-charmap-tracking
tacaswell Sep 17, 2025
3e97c0d
pdf: Merge loops for single byte text chunk output
QuLogic Aug 29, 2025
c8369ff
Merge branch 'main' into text-overhaul
QuLogic Sep 19, 2025
b236488
MNT: Ignore differing stub for GlyphIndexType
QuLogic Sep 18, 2025
0da372b
Merge pull request #30579 from QuLogic/fix-text-overhaul-ci
QuLogic Sep 19, 2025
105f9eb
Merge pull request #30567 from QuLogic/pdf-loop-merge
QuLogic Sep 19, 2025
18ffa02
Add os.PathLike support to FT2Font constructor, and FontManager
QuLogic Jul 25, 2025
7ce8eae
Add language parameter to Text objects
QuLogic Mar 22, 2025
44c17bc
Merge pull request #29794 from QuLogic/text-language
QuLogic Sep 20, 2025
b35e5cd
ft2font: Split layouting from set_text
QuLogic May 23, 2025
70563bd
Merge pull request #30595 from QuLogic/libraqm-refactor
QuLogic Sep 25, 2025
1b3ba17
Merge pull request #30573 from QuLogic/font-pathlike
tacaswell Sep 25, 2025
e422def
Remove dead code from Auto{Height,Width}Char
QuLogic Apr 18, 2025
3ba2c13
Fix auto-sized glyphs with BaKoMa fonts
QuLogic Apr 17, 2025
b6be596
Merge pull request #29936 from QuLogic/bakoma-sizes
QuLogic Sep 25, 2025
b70fb88
pdf: Improve text with characters outside embedded font limits
QuLogic Sep 3, 2025
1c4af68
pdf: Correct Unicode mapping for out-of-range font chunks
QuLogic Sep 3, 2025
6cedcf7
TST: Add emoji to multi-font text
QuLogic Sep 3, 2025
c908bbf
DOC: Add a release note for PDF font embedding fixes
QuLogic Sep 19, 2025
a1ed4ef
Merge pull request #30512 from QuLogic/pdf-text-subsets
QuLogic Sep 26, 2025
50f76ff
Deduplicate `CharacterTracker.track` implementation
QuLogic Sep 27, 2025
8274e17
pdf/ps: Compress subsetted font blocks
QuLogic Sep 27, 2025
70dc388
pdf: Fix first-block characters using multiple glyph representations
QuLogic Sep 27, 2025
df670cf
pdf: Support multi-character glyphs when subsetting
QuLogic Sep 27, 2025
ed5e074
ps: Fix font subset handling
QuLogic Sep 30, 2025
ed4ca6c
Merge pull request #30608 from QuLogic/simpler-track
QuLogic Oct 2, 2025
972a688
Add font feature API to FontProperties and Text
QuLogic Mar 1, 2025
a6ac58f
Merge pull request #29695 from QuLogic/font-features
QuLogic Oct 3, 2025
a0fb5cf
Merge branch 'main' into text-overhaul
QuLogic Oct 23, 2025
9597991
ft2font: Add a wrapper around layouting for vector usage
QuLogic Sep 24, 2025
a47bd3f
Remove forced fallback from FT2Font::load_char
QuLogic Dec 18, 2024
707f384
Merge branch 'main' into text-overhaul
QuLogic Oct 29, 2025
bd17cd4
Use libraqm for text in vector outputs
QuLogic May 24, 2025
4a99a83
Fix spacing in `r"$\max f$"`.
anntzer Nov 1, 2025
17428e3
Tweak sub/superscript spacing implementation.
anntzer Nov 1, 2025
e952f23
Merge pull request #30715 from anntzer/opspace
QuLogic Nov 6, 2025
ad0b47a
Merge pull request #30627 from QuLogic/no-force-fallback
tacaswell Nov 6, 2025
950fa0f
Merge pull request #30607 from QuLogic/libraqm-vector
QuLogic Nov 20, 2025
daae68a
Expose face index when loading fonts
QuLogic Jul 18, 2025
b839f87
Parse data from all fonts within a collection
QuLogic Jul 18, 2025
6d2ae67
Implement loading of any font in a collection
QuLogic Jul 25, 2025
ea80bbb
pdf/ps: Support any font in a collection
QuLogic Jul 25, 2025
e991790
pgf: Support any font in a collection
QuLogic Jul 25, 2025
9c20b0c
DOC: Add what's new note for TTC loading
QuLogic Oct 31, 2025
b2aa1f2
Update test images for previous changes
QuLogic Sep 26, 2025
e84ce2b
Merge pull request #30334 from QuLogic/ttc-loading
ksunden Dec 4, 2025
3344505
Merge branch 'main' into text-overhaul
QuLogic Jan 20, 2026
5e56525
MNT: Update rcParam code to match new text settings
QuLogic Jan 21, 2026
9d7d7b4
Drop the FT2Font intermediate buffer
anntzer May 16, 2025
d0df260
Merge pull request #30059 from anntzer/ft-direct-render
QuLogic Jan 29, 2026
535fdaa
Keep mathtext boxes in xywh representation throughout.
anntzer Feb 2, 2026
838e005
Merge pull request #31056 from anntzer/mtb
QuLogic Feb 3, 2026
ccb621c
Merge main back into text-overhaul branch
QuLogic Feb 3, 2026
2aa38ab
ft2font: Extend OS/2 table with new fields
QuLogic Jan 31, 2026
6402d86
DOC: Fix missing references for updated FT2Font.set_text
QuLogic Feb 5, 2026
da4d754
Merge pull request #31080 from QuLogic/text-overhaul-doc
QuLogic Feb 5, 2026
7627118
Rasterize dvi files without dvipng
anntzer Sep 4, 2025
695e9a1
Merge pull request #30039 from anntzer/dvirender
QuLogic Feb 5, 2026
b736a90
Merge pull request #31050 from QuLogic/extend-os2-table
QuLogic Feb 5, 2026
a161658
Update bundled FreeType to 2.14.1
QuLogic Jan 4, 2026
57e1c85
Update bundled HarfBuzz to 12.3.0
QuLogic Jan 5, 2026
9619bcc
Enable HarfBuzz support in bundled FreeType
QuLogic Jan 5, 2026
d57abf4
Merge pull request #30938 from QuLogic/ft214
QuLogic Feb 6, 2026
c2fa7ba
Fix positioning of wide mathtext accents.
anntzer Feb 3, 2026
65fbe95
Merge pull request #31069 from anntzer/wideaccent
QuLogic Feb 6, 2026
931bcf3
Change RendererAgg.draw_text to use FT2Font._render_glyph
QuLogic Feb 5, 2026
6ec8fc8
Deduplicate RendererAgg.draw_{mathtext,text}
QuLogic Feb 5, 2026
9a185c6
Deduplicate RendererAgg.draw_tex with draw_{mathtext,text}
QuLogic Feb 5, 2026
754bdab
Also deduplicate box rendering in RendererAgg.draw_{mathtext,tex}
QuLogic Feb 5, 2026
c1d3c87
Merge pull request #31085 from QuLogic/render-glyphs
QuLogic Feb 6, 2026
94ff452
Implement TeX's fraction and script alignment
tfpf Jul 17, 2022
4bfa0f9
Fix positioning of mathtext Rules
anntzer Feb 1, 2026
1cd8510
Fix up mathtext constants for fraction/script alignment
QuLogic Feb 6, 2026
afdd53a
Merge pull request #31046 from QuLogic/22852/mathtext-vertical-align
QuLogic Feb 7, 2026
a6c2501
Merge branch 'main' into text-overhaul
QuLogic Feb 17, 2026
60f2310
Fix confusion between text height and ascent in metrics calculations.
anntzer Feb 6, 2026
dfe4e55
Merge pull request #31107 from anntzer/supal
QuLogic Feb 18, 2026
8d2cc44
TST: Switch mathtext tests to mpl20
QuLogic Feb 24, 2026
692df3f
mathtext: Fetch axis height from font metrics
QuLogic Feb 7, 2026
383028b
mathtext: Fetch quad width from font metrics
QuLogic Feb 7, 2026
d4bace4
Merge pull request #31110 from QuLogic/space-axisheight-metrics
QuLogic Mar 1, 2026
8137091
mathtext refactoring: replace FontConstants lookup
llohse Feb 9, 2026
948fbde
Merge branch 'main' into text-overhaul
QuLogic Mar 2, 2026
a6913f3
mathtext: implement \mathnormal and distinguish between normal and it
llohse Feb 9, 2026
77d4e52
Add test case for mathnormal
llohse Feb 26, 2026
9d23373
TST: Remove redundant font tests
QuLogic Sep 3, 2025
530fc16
PERF: Text handling speedups (#31001)
scottshambaugh Mar 2, 2026
10a6700
ft2font: Read more entries from OS/2 font table
QuLogic Mar 2, 2026
8e1fa16
Remove mpl.text._get_textbox.
anntzer Feb 13, 2026
5b41742
Merge pull request #31179 from anntzer/tglgt
QuLogic Mar 3, 2026
e1f622a
Merge pull request #31191 from QuLogic/mathtext-style
ksunden Mar 6, 2026
05b7879
Merge pull request #31226 from QuLogic/more-font-tables
ksunden Mar 6, 2026
3539117
Merge pull request #31121 from llohse/feat-mathnormal
QuLogic Mar 6, 2026
6c357ee
Add mathtext support for \phantom, \llap, \rlap for faking text metrics
anntzer Nov 13, 2025
88de239
Merge pull request #30908 from anntzer/texphantoms
QuLogic Mar 11, 2026
eee6586
Merge branch 'main' into text-overhaul
QuLogic Mar 11, 2026
d772043
Ignore empty text for tightbbox
scottshambaugh Mar 11, 2026
2057583
Drop axis_artist tickdir image compat, due to text-overhaul merge.
anntzer Mar 10, 2026
364c027
Merge pull request #31285 from scottshambaugh/text_tightbbox_empty
QuLogic Mar 12, 2026
f99a345
Merge pull request #31281 from anntzer/aiot-tests
QuLogic Mar 13, 2026
3374e25
ENH: Register all SFNT family names so fonts are addressable by any p…
Cemonix Feb 21, 2026
af4ded1
DOC: Add what's new entry for font alternative family name registration
Cemonix Feb 21, 2026
b6cde63
Fixed the encoding string to match the rest of the file.
Cemonix Mar 20, 2026
3ab6a27
mathtext: Fetch x-height from font metrics
QuLogic Mar 11, 2026
d961462
text: Set line spacing to 'normal' by default
QuLogic Mar 12, 2026
97f4943
text: Fetch line height metrics from the used font itself
QuLogic Mar 12, 2026
1f064dc
Merge pull request #31291 from QuLogic/font-heights
QuLogic Mar 20, 2026
716796e
Bump FontManager cache version for alt family name entries
Cemonix Mar 20, 2026
3a9a111
Merge pull request #30513 from QuLogic/redundant-font-tests
QuLogic Mar 26, 2026
e0913d4
ps/pdf: Override font height metrics to support AFM files
QuLogic Mar 24, 2026
573764e
TST: Restore some tolerances for some arch/platform-specific failures
QuLogic Mar 20, 2026
5e1c1ca
BLD: Temporarily pin setuptools-scm<10
QuLogic Mar 26, 2026
67fb6b9
Merge pull request #31343 from QuLogic/test-tolerance
QuLogic Mar 27, 2026
1305c4f
BLD: Update bundled libraqm to 0.10.4
QuLogic Mar 25, 2026
4efa3c0
Merge pull request #31183 from Cemonix/fix-font-alt-family-names
ksunden Mar 27, 2026
b10b22c
Merge pull request #31372 from QuLogic/raqm0104
QuLogic Mar 27, 2026
38e3921
BLD: Update bundled FreeType to 2.14.3 (#31407)
QuLogic Apr 2, 2026
ec84112
Merge branch 'main' into text-overhaul
QuLogic Apr 2, 2026
4b4660e
Fix wasm build on text-overhaul branch
QuLogic Mar 27, 2026
17b1f31
TST: Skip test_animation.py::test_failing_ffmpeg on wasm builds
QuLogic Mar 31, 2026
0b4e787
Fix FreeType runtime version check
QuLogic Apr 2, 2026
7c33379
TST: Cleanup back-compat code in tests touched by text overhaul
QuLogic Mar 13, 2026
2e0fee1
Merge pull request #31295 from QuLogic/test-cleanup
QuLogic Apr 3, 2026
417784e
Merge pull request #31440 from QuLogic/fix-ft-check
QuLogic Apr 3, 2026
dbf8c17
Clarify fonttype switch in backend_pdf.
anntzer Apr 5, 2026
41c4d8d
TST: Set tests touched by text overhaul to mpl20 style (#31300)
QuLogic Apr 7, 2026
49bb098
Merge pull request #31456 from anntzer/pdfft
QuLogic Apr 7, 2026
9059da7
Support font features/language in default RendererBase.draw_text
QuLogic Apr 7, 2026
4461ad7
TST: Add a test for RendererBase.draw_text
QuLogic Apr 7, 2026
bca638d
TST: Reset tolerances on tests changed by text overhaul
QuLogic Mar 14, 2026
ba56e3d
Merge pull request #31303 from QuLogic/reset-tolerance
tacaswell Apr 8, 2026
8672cf9
Merge pull request #31461 from QuLogic/default-features
ksunden Apr 9, 2026
12d2a4d
Update test images for font/text overhaul
QuLogic Apr 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 3 additions & 3 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ commands:
fonts-install:
steps:
- restore_cache:
key: fonts-4
key: fonts-5
- run:
name: Install custom fonts
command: |
Expand All @@ -80,7 +80,7 @@ commands:
-O ~/.local/share/fonts/xkcd-Script.ttf || true
fc-cache -f -v
- save_cache:
key: fonts-4
key: fonts-5
paths:
- ~/.local/share/fonts/

Expand Down Expand Up @@ -125,7 +125,7 @@ commands:
--no-build-isolation --editable .[dev]
fi
- save_cache:
key: build-deps-2
key: build-deps-3
paths:
- subprojects/packagecache

Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/cibuildwheel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,10 @@ jobs:
name: cibw-sdist
path: dist/

- name: Purge Strawberry Perl
if: startsWith(matrix.os, 'windows-')
run: Remove-Item -Recurse C:\Strawberry

- name: Build wheels for CPython 3.14
uses: pypa/cibuildwheel@ee02a1537ce3071a004a6b08c41e72f0fdc42d9a # v3.4.0
with:
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -377,13 +377,14 @@ jobs:
if [[ "${{ runner.os }}" != 'macOS' ]]; then
LCOV_IGNORE_ERRORS=',' # do not ignore any lcov errors by default
if [[ "${{ matrix.os }}" = ubuntu-24.04 || "${{ matrix.os }}" = ubuntu-24.04-arm ]]; then
# filter mismatch and unused-entity errors detected by lcov 2.x
LCOV_IGNORE_ERRORS='mismatch,unused'
# filter mismatch errors detected by lcov 2.x
LCOV_IGNORE_ERRORS='mismatch'
fi
lcov --rc lcov_branch_coverage=1 --ignore-errors $LCOV_IGNORE_ERRORS \
--capture --directory . --output-file coverage.info
--capture --directory . --exclude $PWD/subprojects --exclude $PWD/build \
--output-file coverage.info
lcov --rc lcov_branch_coverage=1 --ignore-errors $LCOV_IGNORE_ERRORS \
--output-file coverage.info --extract coverage.info $PWD/src/'*' $PWD/lib/'*'
--output-file coverage.info --extract coverage.info $PWD/src/'*'
lcov --rc lcov_branch_coverage=1 --ignore-errors $LCOV_IGNORE_ERRORS \
--list coverage.info
find . -name '*.gc*' -delete
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/wasm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ jobs:
env:
CIBW_BUILD: "cp312-*"
CIBW_PLATFORM: "pyodide"
CIBW_TEST_COMMAND: "true"

- uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
with:
Expand Down
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ repos:
- id: check-docstring-first
exclude: lib/matplotlib/typing.py # docstring used for attribute flagged by check
- id: end-of-file-fixer
exclude_types: [svg]
exclude_types: [diff, svg]
- id: mixed-line-ending
- id: name-tests-test
args: ["--pytest-test-first"]
- id: no-commit-to-branch # Default is master and main.
- id: trailing-whitespace
exclude_types: [svg]
exclude_types: [diff, svg]
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.15.0
hooks:
Expand Down
46 changes: 46 additions & 0 deletions LICENSE/LICENSE_FREETYPE
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
FREETYPE LICENSES
-----------------

The FreeType 2 font engine is copyrighted work and cannot be used
legally without a software license. In order to make this project
usable to a vast majority of developers, we distribute it under two
mutually exclusive open-source licenses.

This means that *you* must choose *one* of the two licenses described
below, then obey all its terms and conditions when using FreeType 2 in
any of your projects or products.

- The FreeType License, found in the file `docs/FTL.TXT`, which is
similar to the original BSD license *with* an advertising clause
that forces you to explicitly cite the FreeType project in your
product's documentation. All details are in the license file.
This license is suited to products which don't use the GNU General
Public License.

Note that this license is compatible to the GNU General Public
License version 3, but not version 2.

- The GNU General Public License version 2, found in
`docs/GPLv2.TXT` (any later version can be used also), for
programs which already use the GPL. Note that the FTL is
incompatible with GPLv2 due to its advertisement clause.

The contributed BDF and PCF drivers come with a license similar to
that of the X Window System. It is compatible to the above two
licenses (see files `src/bdf/README` and `src/pcf/README`). The same
holds for the source code files `src/base/fthash.c` and
`include/freetype/internal/fthash.h`; they were part of the BDF driver
in earlier FreeType versions.

The gzip module uses the zlib license (see `src/gzip/zlib.h`) which
too is compatible to the above two licenses.

The files `src/autofit/ft-hb.c` and `src/autofit/ft-hb.h` contain code
taken almost verbatim from the HarfBuzz file `hb-ft.cc`, which uses
the 'Old MIT' license, compatible to the above two licenses.

The MD5 checksum support (only used for debugging in development
builds) is in the public domain.


--- end of LICENSE.TXT ---
42 changes: 42 additions & 0 deletions LICENSE/LICENSE_HARFBUZZ
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
HarfBuzz is licensed under the so-called "Old MIT" license. Details follow.
For parts of HarfBuzz that are licensed under different licenses see individual
files names COPYING in subdirectories where applicable.

Copyright © 2010-2022 Google, Inc.
Copyright © 2015-2020 Ebrahim Byagowi
Copyright © 2019,2020 Facebook, Inc.
Copyright © 2012,2015 Mozilla Foundation
Copyright © 2011 Codethink Limited
Copyright © 2008,2010 Nokia Corporation and/or its subsidiary(-ies)
Copyright © 2009 Keith Stribley
Copyright © 2011 Martin Hosken and SIL International
Copyright © 2007 Chris Wilson
Copyright © 2005,2006,2020,2021,2022,2023 Behdad Esfahbod
Copyright © 2004,2007,2008,2009,2010,2013,2021,2022,2023 Red Hat, Inc.
Copyright © 1998-2005 David Turner and Werner Lemberg
Copyright © 2016 Igalia S.L.
Copyright © 2022 Matthias Clasen
Copyright © 2018,2021 Khaled Hosny
Copyright © 2018,2019,2020 Adobe, Inc
Copyright © 2013-2015 Alexei Podtelezhnikov

For full copyright notices consult the individual files in the package.


Permission is hereby granted, without written agreement and without
license or royalty fees, to use, copy, modify, and distribute this
software and its documentation for any purpose, provided that the
above copyright notice and the following two paragraphs appear in
all copies of this software.

IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
Copyright (c) 2018 The Meson development team
The MIT License (MIT)

Copyright © 2015 Information Technology Authority (ITA) <foss@ita.gov.om>
Copyright © 2016-2023 Khaled Hosny <khaled@aliftype.com>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
202 changes: 202 additions & 0 deletions LICENSE/LICENSE_SHEENBIDI
Original file line number Diff line number Diff line change
@@ -0,0 +1,202 @@

Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
2 changes: 1 addition & 1 deletion ci/minver-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ cycler==0.10
fonttools==4.22.0
importlib-resources==3.2.0
kiwisolver==1.3.2
meson-python==0.13.1
meson-python==0.13.2
meson==1.1.0
numpy==1.25.0
packaging==20.0
Expand Down
Loading
Loading