v0.2.0
Initial public release
See https://discourse.julialang.org/t/diffractor-release/102123/ for the announcement
What's Changed
- Update README.md by @jw3126 in #15
- Tiny typo fix in README.md by @AzamatB in #16
- import NewvarNode by @niklasschmitz in #41
- build terminology in CI by @simeonschaub in #44
- fix array indexing backward rule by @GiggleLiu in #43
- Fix on Julia nightly, add some CI by @simeonschaub in #46
- update dependencies and add compat by @simeonschaub in #47
- add test for #43 by @simeonschaub in #48
- adapt to JuliaLang/julia#42125 by @simeonschaub in #49
- Add
RuleConfigby @mcabbott in #45 - set up some docs by @simeonschaub in #50
- fix terminology link, add some badges by @simeonschaub in #52
- fix typos in terminology by @simeonschaub in #57
- skip Windows CI for now by @simeonschaub in #58
- run CI every night by @simeonschaub in #60
- What if
lifted_getfieldon a tangent just calledgetpropertyby @oxinabox in #39 - [typo] "to" -> "too" in
reading_list.mdby @samuela in #65 - Fix tests by @michel2323 in #62
- add opaque closure fixes to allow running on 1.8/1.9 by @oscardssmith in #76
- add
dxmethods by @oscardssmith in #77 - always unthunk results by @oscardssmith in #79
- Add
DiffractorRuleConfigto extrarrules by @mcabbott in #80 - Fix
rrule_via_adreturn type by @mcabbott in #86 - Mark tests broken based on nightly by @mcabbott in #87
- Accumulate NamedTuple + Tangent by @mcabbott in #88
- Remove broken link in README by @rikhuijzer in #91
- Use broadcasting rules from ChainRules by @mcabbott in #89
- Run on 1.9+ by @mcabbott in #93
- Diffractor: Bump to julia 1.10, prepare for stage 2 work by @Keno in #94
- WIP: Refactor forward mode data structures by @Keno in #54
- Very WIP: Stage2 revival by @Keno in #78
- Import stage2 demand-driven forward mode by @Keno in #95
- CompatHelper: add new compat entry for Cthulhu at version 2, (keep existing compat) by @github-actions in #96
- CompatHelper: add new compat entry for OffsetArrays at version 1, (keep existing compat) by @github-actions in #98
- Hookup demand-driven forward mode to the Diffractor runtime by @Keno in #99
- forward_demand: Implement bundle truncation by @Keno in #101
- Remove unnecessary
@inboundsby @Keno in #103 - Improve inferability of forward mode data structures by @Keno in #104
- Implement higher order truncation by @Keno in #106
- updates to work on Julia master by @oscardssmith in #107
- Try to force better forward mode inference by @Keno in #111
- enable dependabot for GitHub actions by @ranocha in #115
- adjust to the latest JuliaLang/julia#master by @aviatesk in #114
- Adjust to base generated functions change by @Keno in #123
- Combined nightly fixes by @oxinabox in #127
- NFC cosmetic changes by @aviatesk in #128
- remove the hack by @aviatesk in #129
- follow up the
@generatedfunction update by @aviatesk in #130 - Document and clean sig on forward_diff_no_inf by @oxinabox in #121
- tidy up
ADInterpreterconstructor by @aviatesk in #132 - adjust to the upstream irinterp refactoring by @aviatesk in #135
- Compact show for ZeroBundle etc by @oxinabox in #136
- Fix codegen of fwd varargs by @Keno in #137
- fwd_demand: Fix handling of SSAValue in stmt position by @Keno in #138
- Correct treatment of QuoteNode in stmt position by @Keno in #140
- Fix show for tangent types with free diff level by @Keno in #139
- Add fwd rule for Core.ifelse by @Keno in #141
- Give correct method error by @oxinabox in #143
- Give better error message when hitting a builtin by @oxinabox in #145
- Disable broken reverse mode tests by @oxinabox in #144
- Forward mode handingly for
Expr(:new, )inforward_diff_no_inf!by @staticfloat in #148 - Silence annoyingly large type debugging show in tests by @staticfloat in #150
- Bump actions/cache from 1 to 3 by @dependabot in #118
- Bump actions/checkout from 2 to 3 by @dependabot in #117
- Bump actions/download-artifact from 2 to 3 by @dependabot in #119
- Bump actions/upload-artifact from 2 to 3 by @dependabot in #120
- removes
@pureand some miscelanious cleanups by @oscardssmith in #108 - remove :loopinfo from IR by @oscardssmith in #154
- fix show
Type{<:AbstractZeroBundle}by @oscardssmith in #155 - Fix getindex on CompositeBundle of a struct by @oxinabox in #153
- separate minor changes from #158 by @oscardssmith in #159
- Don't inline accesses to nonconst globals by @oxinabox in #160
- use IR_FLAG_REFINED rather than extra_reprocess to rerun inference by @oxinabox in #163
- Don't insert truncation within phi blocks by @oxinabox in #162
- reorganize tests by @oxinabox in #165
- remove noneffectfree per JuliaLang/julia#50313 by @oxinabox in #172
- Mark broken reverse mode tests broken by @oxinabox in #171
- Pass
ssainstead ofstmttovisit_custom!()by @staticfloat in #169 - Improve type inference of non-
constGlobalRef's by @staticfloat in #168 - remove
effect_free_and_nothrowby @oscardssmith in #174 - error for nonliterals by @oxinabox in #167
- bipass all Diffractor machinery if there are no partials by @oxinabox in #173
- fix reverse mode by @oscardssmith in #175
- Ignore
:boundscheckand:code_coverage_effectIR nodes by @staticfloat in #176 - Ensure that
:boundscheckis properly handled by @staticfloat in #177 - Pass maparg to transform by @Keno in #178
- Use
replace_call!()to replaceExpr(:call, ...)values by @staticfloat in #180 - stage2(forward): add method table backedge for non-existing
frulemethod by @aviatesk in #182 - Allow visit_custom recursion to change the order by @Keno in #179
- Use
@recompile_invalidationsto heal Base/Core.Compiler invalidations by @topolarity in #166 - Update status in readme by @oxinabox in #183
- CompatHelper: add new compat entry for PrecompileTools at version 1, (keep existing compat) by @github-actions in #184
- minor test improvements by @oscardssmith in #185
- When reinference is required use IR_FLAG_REFINED by @oxinabox in #164
- remove broken support for older Julia versions by @oscardssmith in #188
- stop depending on StatsBase by @oxinabox in #190
- CI on 1.10 by @oxinabox in #191
New Contributors
- @jw3126 made their first contribution in #15
- @AzamatB made their first contribution in #16
- @niklasschmitz made their first contribution in #41
- @simeonschaub made their first contribution in #44
- @GiggleLiu made their first contribution in #43
- @mcabbott made their first contribution in #45
- @samuela made their first contribution in #65
- @michel2323 made their first contribution in #62
- @rikhuijzer made their first contribution in #91
- @Keno made their first contribution in #94
- @github-actions made their first contribution in #96
- @ranocha made their first contribution in #115
- @staticfloat made their first contribution in #148
- @dependabot made their first contribution in #118
- @topolarity made their first contribution in #166
Full Changelog: https://github.com/JuliaDiff/Diffractor.jl/commits/v0.2.0