-
Notifications
You must be signed in to change notification settings - Fork 75
Expand file tree
/
Copy pathreleases.yml
More file actions
393 lines (356 loc) · 16.8 KB
/
Copy pathreleases.yml
File metadata and controls
393 lines (356 loc) · 16.8 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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
- date: 2026-06-28
codebase: "Clad"
version: "v2.4"
description: |
Clad 2.4 is now compatible with clang-12 through clang-22, having ported to
LLVM 22 and shifted its support window to the last ten major releases
(clang-11 has been dropped). This release strengthens both forward and
reverse modes with OpenMP critical directive support, reverse-mode handling
of member access on call results, and the ability to redefine builtin custom
derivatives. CUDA support advances with tape offloading to VRAM and
device-callable tape element destruction. A major theme is robustness: a
graceful fallback when differentiating parameterless functions, a
correctness fix for TBR analysis that was silently producing wrong
derivatives, and an extensive round of memory-safety cleanup—scope-leak
fixes, use-after-poison repairs, and explicit ownership—surfaced by new
LLVM 22 AddressSanitizer CI coverage. Static-library builds now skip backend
pass registration, fixing rootcling dictionary generation in ROOT.
link: "https://github.com/vgvassilev/clad/releases/tag/v2.4"
- date: 2026-04-19
codebase: "Clad"
version: "v2.3"
description: |
Clad 2.3 is now compatible with clang-11 through clang-21. This release
brings substantial improvements across both forward and reverse modes,
including expanded custom derivative support, new derivatives for standard
library functions like std::beta, std::expint, and std::comp_ellint, and
better handling of lambdas and nested differentiation. Reverse mode gains
basic OpenMP support, reduced overhead by skipping unnecessary reverse_forw
passes when custom pullbacks are available, and important correctness fixes
for nested Hessian computations and complex record adjoints. A major
highlight is the new dual-mode tape memory system, offering an in-memory
RAM-disk backend via mmap with automatic disk offloading, plus hooks for
user-defined tape implementations. Error estimation has been unified with
reverse mode behind a cleaner function-based interface, CUDA support is
stronger thanks to compute-sanitizer integration, and nearly 40 tracked
issues have been resolved.
link: "https://github.com/vgvassilev/clad/releases/tag/v2.3"
- date: 2026-03-26
codebase: "CppInterOp"
version: "v1.9.0"
description: |
This release drops LLVM 18 support, adds CUDA/GPU support with automatic
SDK and architecture detection, improves introspection and type reflection
APIs, hardens the incremental C++ and dispatch infrastructure, and includes
ROOT-Cling integration changes for Cppyy.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.9.0"
- date: 2026-02-11
codebase: "Cling"
version: "v1.3"
description: |
Cling 1.3 introduces a significant update to the interactive C++ interpreter
built on Clang and LLVM, highlighted by an upgrade to LLVM 20 and improved
alignment with modern C++ standards through module map cleanup and removal
of deprecated headers. The release delivers faster, clang-repl–style code
completion, safer and more robust JIT and dictionary handling on macOS
(including improved Mach-O bundle support), and enhanced compatibility with
macOS SDK 15.4. It also includes Clad integration improvements (now bumped
to v1.9), standalone build and documentation refinements, CMake
modernization, and initial Loong64 platform support. Several important bugs
are fixed.
link: "https://github.com/vgvassilev/cling/releases/tag/v1.3"
- date: 2026-01-28
codebase: "CppInterOp"
version: "v1.8.0"
description: |
This release focuses on improving runtime introspection, extending the JIT
and incremental compilation capabilities, introducing a new API dispatch
mechanism, and delivering numerous robustness and correctness fixes across
the interpreter and code generation layers.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.8.0"
- date: 2025-11-02
codebase: "Clad"
version: "v2.2"
description: |
Clad 2.2, delivers improvements to differentiation pipelines, feature
coverage, and language compatibility. It now supports clang versions 11–21,
includes better handling of pointer, tensor, and reference types, and adds
conversion operator and `std::reference_wrapper` support. Forward mode gains
experimental OpenMP differentiation, while reverse mode introduces loop
checkpointing, elidable reverse passes, and enhanced handling of complex
expressions and memory operations. CUDA support expands with new Thrust
operations, device vector support, and a logistic regression demo. The
release also improves thread safety through lock-controlled tape access,
refines error handling and diagnostics, and simplifies attribute-based
memory management.
link: "https://github.com/vgvassilev/clad/releases/tag/v2.2"
- date: 2025-10-01
codebase: "Clad"
version: "v2.1"
description: |
Clad 2.1 introduces major advancements in reverse mode differentiation,
bringing smarter handling of loops, assignments, and method calls, alongside
the new clad::restore_tracker for functions that modify their
inputs. Forward mode gains static scheduling for Hessians and higher-order
derivatives, while CUDA support expands with custom derivatives for key
Thrust algorithms such as reduce, transform, and transform_reduce, plus
optimizations that reduce unnecessary GPU atomics. The release also
strengthens error estimation, simplifies adjoint initialization, improves
tape efficiency, and enhances diagnostics. With a migration to C++17,
support extended up to clang-21, and numerous bug fixes, Clad 2.1 delivers
faster, safer, and more reliable automatic differentiation across CPU and
GPU workflows.
link: "https://github.com/vgvassilev/clad/releases/tag/v2.1"
- date: 2025-07-27
codebase: "Clad"
version: "v2.0"
description: |
Clad 2.0 introduces improvements across both forward and reverse automatic
differentiation modes, including the adoption of static scheduling by
default and expanded support for custom derivatives, such as those involving
STL containers and iterators. The release enhances compatibility with Clang
versions 10 through 20 and extends support for CUDA through updated tape
handling. Additional updates include improved error diagnostics, support for
more complex object types, and infrastructure for benchmarking.
link: "https://github.com/vgvassilev/clad/releases/tag/v2.0"
- date: 2025-05-22
codebase: "CppInterOp"
version: "v1.7.0"
description: |
This release introduces new utilities handling constructors, function
templates and best overload candidate matching. It improves stability and
resolves bugs.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.7.0"
- date: 2025-04-26
codebase: "Clad"
version: "v1.10"
description: |
This release introduces significant updates, including support for clang
versions 10 through 20 and improved diagnostics for unsupported features.
Forward mode now handles variadic functions, while reverse mode sees major
enhancements like marking const methods as non-differentiable, enabling
differentiation of global variables and static member functions, generating
constructor pullbacks automatically, and reducing tape usage through
optimizations. CUDA support has been expanded with better handling of
device pullbacks and kernel variables.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.10"
- date: 2025-02-28
codebase: "CppInterOp"
version: "v1.6.0"
description: |
This release introduces new utilities for pointer, reference, and function
pointer types, along with enhanced enumeration support and class name
demangling functions. Key bug fixes address issues in code generation, CMake
configurations, and cross-platform compatibility, particularly for Windows
and Emscripten builds. Continuous integration and infrastructure
improvements optimize caching, streamline workflows, and expand CI coverage
for multiple architectures. Documentation updates include new Emscripten
build instructions, while testing and debugging enhancements refine Clang
formatting and unit test configurations. Overall, this update enhances code
flexibility, performance, and automation while improving debugging and build
processes.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.6.0"
- date: 2025-02-10
codebase: "Clad"
version: "v1.9"
description: |
This release introduces significant enhancements, including improved
differentiation support for complex expressions, optimized forward and
reverse mode handling, and experimental CUDA kernel differentiation.
The release also brings better broader compatibility with Clang versions 9
through 19. Various performance optimizations, documentation improvements,
and critical bug fixes further refine the plugin’s reliability and usability.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.9"
- date: 2024-12-25
codebase: "CppInterOp"
version: "v1.5.0"
description: |
This release introduces significant enhancements, including Jupyter-Lite
integration for browser-based demos, a new C API with types like `CXScope`
and `CXQualType` for better interoperability, and improved Emscripten builds
with reduced dependencies and optimized workflows. Key updates also include
enhanced documentation, CI/CD workflow optimizations, and crucial bug fixes
addressing deployment paths, inheritance-related build failures, and cache
pressure. This release emphasizes usability, maintainability, and
performance.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.5.0"
- date: 2024-12-17
codebase: "Clad"
version: "v1.8"
description: |
This release includes support for `std::vector`, `constexpr` and `consteval`
constructs. It advances the CUDA support enabling differentiation both
device and host functions. It is the first release which enables Kokkos
entities. The new release has many bug fixes.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.8"
- date: 2024-10-19
codebase: "CppInterOp"
version: "v1.4.0"
description: |
This release includes improved support of wasm, support of llvm1, new
reflection interfaces and bug fixes.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.4.0"
- date: 2024-08-08
codebase: "Clad"
version: "v1.7"
description: |
This release includes support for `std::array` and range-based for loops.
Improved diagnostics and has many bug fixes.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.7"
- date: 2024-07-18
codebase: "Clad"
version: "v1.6"
description: |
This release includes improved support for `std::string` and `const_cast`.
Removes the unnecessary `array_ref` usages. Adds support for computing the
only hessian diagonal and has many bug fixes.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.6"
- date: 2024-06-04
codebase: "Xeus-Cpp"
version: "v0.5"
description: |
This release merges most of the features available in xeus-clang-repl.
Implements code completion and drops `xtl` as a dependency. The release adds
a new kernel C++20 and drops C++11 and C++14 kernels as we upgraded to xeus
5.
link: "https://github.com/compiler-research/xeus-cpp/releases/tag/0.5.0"
- date: 2024-05-21
codebase: "Clad"
version: "v1.5"
description: |
This release enables Clang-18. Includes reduced size of the generated code.
It integrates Clad better with Clang by moving the differentiation process
at the end of the translation unit. Improves the error estimation
infrastructure and has many bug fixes.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.5"
- date: 2024-05-09
codebase: "CppInterOp"
version: "v1.3.0"
description: |
This release includes improved support on Windows, code completion support
and bug fixes.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.3.0"
- date: 2024-04-04
codebase: "Xeus-Cpp"
version: "v0.4"
link: "https://github.com/compiler-research/xeus-cpp/releases/tag/0.4.0"
- date: 2024-03-01
codebase: "CppInterOp"
version: "v1.2.0"
description: |
This release includes some improvements and bug fixes.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.2.0"
- date: 2024-02-29
codebase: "Clad"
version: "v1.4"
description: |
**Forward Mode & Reverse Mode**: Improve handling of char and string
literals. <br />**Reverse Mode**: Add support for differentiating switch
statements, supportpassing pointers as call arguments, and Fix pointer
arithmetic for array types. <br />This release also includes **major
performance enhancements**. Add support for differentiating switch stmt in
the reverse mode AD. Make the compilation of gtest parallel. Schedule the
builds with debug clang earlier. Support BUILD_SHARED_LIBS=On flags.
Kokkos always requires rtti.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.4"
- date: 2024-02-11
codebase: "Clad"
version: "v1.3"
description: |
**Forward Mode**: Make forward vector mode more robust (Implement
dedicated clad::matrix class, Add support for array arguments, and Add
support for call expressions). Add support for the 'non_differentiable'
attribute.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.3"
- date: 2024-01-09
codebase: "Xeus-Cpp"
version: "v0.3"
description: |
This release includes some improvements and bug fixes.
link: "https://github.com/compiler-research/xeus-cpp/releases/tag/0.3.0"
- date: 2023-11-11
codebase: "CppInterOp"
version: "v1.1.0"
description: |
Incremental C++: Support clang plugins. Incremental CUDA: Support
incremental compilation of CUDA.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.1.0"
- date: 2023-08-14
codebase: "CppInterOp"
version: "v1.0"
description: |
This is the first major release of CppInterOp. Incremental C++: Facilities
for setting up the infrastructure such as CreateInterpreter,
GetInterpreter, AddSearchPath, and AddIncludePath. Facilities for
consuming incremental input such as Declare, Process and Evaluate.
link: "https://github.com/compiler-research/CppInterOp/releases/tag/v1.0"
- date: 2023-06-18
codebase: "Clad"
version: "v1.2"
description: |
**Forward Mode**: Add experimental support for forward vector mode and
improve support of comma expressions. <br />**Reverse Mode**: Add
pushforwards for std::floor and std::ceil.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.2"
- date: 2023-01-20
codebase: "Clad"
version: "v1.1"
description: |
**Forward Mode**: Fix a bug in pow pushforward. <br />**Reverse Mode**:
Improve for-loop conditions.
link: "https://github.com/vgvassilev/clad/releases/tag/v1.1"
- date: 2022-10-07
codebase: "Clad"
version: "v1.0"
description: |
This is the first major release of Clad
link: "https://github.com/vgvassilev/clad/releases/tag/v1.0"
- date: 2022-08-11
codebase: "Initial version of xeus-clang-repl"
version: "v0.2.0"
description: |
This is the initial release of xeus-clang-repl.
link: "https://github.com/compiler-research/xeus-clang-repl/releases/tag/v0.2.0"
- date: 2022-03-25
codebase: "Clang-Repl released in LLVM 14"
version: " "
description: |
This release includes some improvements and bug fixes.
link: "https://github.com/llvm/llvm-project/releases/tag/llvmorg-14.0.0"
- date: 2021-10-04
codebase: "Clang-Repl released in LLVM 13"
version: " "
description: |
This release includes some improvements and bug fixes.
link: "https://github.com/llvm/llvm-project/releases/tag/llvmorg-13.0.0"
- date: 2021-08-16
codebase: "Clad"
version: "v0.9"
description: |
This release includes some improvements and bug fixes.
link: "https://github.com/vgvassilev/clad/releases/tag/v0.9"
- date: 2021-05-28
codebase: "Clad"
version: "v0.8"
description: |
This release includes some improvements and bug fixes.
link: "https://github.com/vgvassilev/clad/releases/tag/v0.8"
- date: 2021-05-05
codebase: "Cling"
version: "v0.9"
description: |
This release includes some improvements and bug fixes.
link: "https://github.com/vgvassilev/cling/releases/tag/v0.9"
- date: 2021-01-11
codebase: "Cling"
version: "v0.8"
description: |
Improve in the C++ modules support. Fix issues in the definition
shadowing.Improve the integration with clad.
link: "https://github.com/vgvassilev/cling/releases/tag/v0.8"
- date: 2020-08-21
codebase: "Cling"
version: "v0.7"
description: |
This release includes some improvements and bug fixes.
link: "https://github.com/vgvassilev/cling/releases/tag/v0.7"