-
Notifications
You must be signed in to change notification settings - Fork 446
Expand file tree
/
Copy pathLICENSE
More file actions
123 lines (110 loc) · 6.97 KB
/
LICENSE
File metadata and controls
123 lines (110 loc) · 6.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
==========================
Chapel License Information
==========================
The Chapel implementation is composed of two categories of code:
1) code that was specifically developed for, or contributed to, the
Chapel project. This code comprises the core of the Chapel
implementation: the compiler, runtime, and standard/internal
modules. Code in this category is made available under the
Apache v2.0 license, which can be found in 'LICENSE.chapel' in
this directory or at http://www.apache.org/licenses/LICENSE-2.0.html.
2) code from other open-source projects that we package and
redistribute for the convenience of end-users. Packages in this
category are made available under the terms of their original
licenses, respectively.
Packages in this second category are redistributed in the highlight/,
third-party/ and tools/ directories. The following table provides a summary
of the packages, their uses, and their licenses.
directory/package use license
----------------- ------------------------------------------- -------
highlight/
emacs emacs-based syntax coloring GPL
vim vim-based syntax coloring VIM
third-party/
chpl-venv/ python packages supporting chpldoc, 'start_test',
`c2chapel`, CLS, `chapel-py`, `chplcheck`
argcomplete Tab completion of arguments Apache v2.0
babel Internationalization utilities BSD
breathe Sphinx doxygen renderer BSD
docutils Python Documentation Utilities public domain
Python
BSD
GPL 3
filelock Platform independent file lock Unlicense
Jinja2 A template engine written in Python BSD
junitparser Manipulate JUnit/xUnit result XML files Apache v2.0
MarkupSafe XML/HTML/XHTML Markup safe string impl. BSD
pycparser A C parser in Python BSD
pycparserext Extensions for pycparser MIT
Pygments A syntax highlighting package BSD
PyYAML YAML parser and emitter for Python MIT
setuptools Download, build, install, upgrade, and uninstall Python
packages MIT
Sphinx Python documentation generator BSD
sphinxcontrib-chapeldomain
The Chapel language domain for Sphinx Apache v2.0
sphinx-rtd-theme
ReadTheDocs.org theme for Sphinx MIT
urllib3 HTTP client for Python MIT
gasnet portable communication library BSD-like
gmp optional multi-precision math library L-GPL
hwloc portable NUMA compute node utilities new BSD
jemalloc alternative memory allocator BSD-like
libfabric portable networking library BSD
libunwind used for runtime stack tracing MIT
llvm CLANG C parsing/optional back-end compiler Apache 2.0
mimalloc alternative memory allocator MIT
qthread alternative lightweight tasking option new BSD
re2 optional regular expression parsing library new BSD
utf8-decoder used for runtime UTF-8 string decoding MIT
whereami for locating the _real binary in launchers MIT
tools/
chapel-py/ Python packages supporting Chapel Python bindings and
programs that rely on it (i.e., `chplcheck` and CLS)
attrs Classes Without Boilerplate MIT
cattrs Composable complex class support for attrs and dataclasses
MIT
ConfigArgParse Allow setting options via config files MIT
exceptiongroup Backport of classes supported by Python 3.11 MIT
lsprotocol Python types for Language Server Protocol MIT
pygls Pythonic generic language server Apache v2.0
PyYAML see the PyYAML listing under chpl-venv, above
toml Tom's Obvious, Minimal Language MIT
typeguard Run-time type checker for Python MIT
For a more complete introduction to these packages and their
licensing terms, refer to highlight/README.md, third-party/README, and the
README and license files in the subdirectories listed above.
Note that not all of these packages are used by Chapel by default. The
following table summarizes the conditions under which each package is used
(see chplenv.rst for details on CHPL_* settings):
directory/package when used
----------------- ----------------------------------------------------
highlight/
emacs only used if a user modifies their emacs environment
vim only used if a user modifies their vim environment
third-party/
chpl-venv only used when running 'chpldoc', 'start_test', `c2chapel`
CLS, `chapel-py`, `chplcheck` or the developer-only
'chplspell'
gasnet only used when CHPL_COMM is 'gasnet'
gmp only used when CHPL_GMP is 'bundled'
hwloc only used when CHPL_HWLOC is 'bundled'
jemalloc only used when CHPL_TARGET_JEMALLOC/CHPL_HOST_JEMALLOC is 'bundled'
libfabric only used when CHPL_LIBFABRIC is 'ofi'
libunwind only used when CHPL_UNWIND is 'bundled'
llvm only used when CHPL_LLVM is 'bundled'
mimalloc only used when CHPL_TARGET_MIMALLOC/CHPL_HOST_MIMALLOC is 'bundled'
qthread only used when CHPL_TASKS is 'qthreads'
re2 only used when CHPL_RE2 is 'bundled'
utf8-decoder bundled into the Chapel runtime to decode UTF-8 strings
whereami used when starting a program with a launcher
tools/
chapel-py only used when using the Chapel Python bindings or
programs that rely on it (i.e., `chplcheck` and CLS)
For packages that are used based on a CHPL_* setting, note that this
setting may either be explicitly or implicitly set. Additionally,
some packages are only used if a speculative build was successful.
See https://chapel-lang.org/docs/usingchapel/chplenv.html to
see which packages are used by default and which ones are built
speculatively. You can also check your CHPL_* settings by running
$CHPL_HOME/util/printchplenv after Chapel has been built