What's Changed
- feat(vision): add color conversion and blurring transforms (#5339) @Charles23R
- chore!: remove deprecated burn-candle backend (#5343) @antimora
- chore: deprecate burn-ndarray backend (#5344) @antimora
- fix(reduce): return the identity for a zero-length axis, and reject the extrema (#5333) @robertomeroni
- Migrate to pliron (#5324) @wingertge
- fix(burn-cubecl): broadcast a size-1 dim against a zero-sized dim (#5335) @Yashiru
- refactor(nn): add functional
batch_normforward operation (#5347) @laggui - fix(tests): batch_norm f16 tol (#5348) @laggui
- fix(ndarray): avoid invalidating in-flight handles in UnsafeSharedRef (#5346) @robertomeroni
- fix(tests): flex simd and rayon feature graph (#5350) @laggui
- Bump cubecl and cubek revs for the pliron codegen fixes (#5355) @nathanielsimard
- fix(flex): replace all remaining cases of function pointer passing (#5358) @laundmo
- fix(flex): make float_sign branchless so it compiles on Xtensa (#5331) @Bellman281
- perf(flex): reduce int cast codegen size (#5357) @laundmo
- chore: simplify cargo run-checks local validation (#5356) @laggui
- fix(dispatch): preserve autodiff device for non-float tensors (#5340) @tianrking
- fix(module): build LoRA factors under a persistent-allocation window (#5362) @nathanielsimard
- fix(module): build LoRA factors at an explicit dtype over a packed base (#5364) @nathanielsimard
- fix(module): preserve LoRA factor dtype when composing weights (#5365) @laggui
- fix(burn-tch): preserve parent storage through permute/swap_dims (#5376) @andoriyu
- perf(flex): collapse both operand layouts into a joint loop nest for broadcast binary ops (#5123) @Andy2887
- perf(flex): pooling impl optimization by rewriting inner kernel loop (#5361) @laundmo
- feat(tensor)!: expand
TensorDataconversion and access APIs (#5316) @crutcher @laggui - fix(deps): update h2 transitive dep (#5381) @laggui
- fix(tensor): preserve dtype in padding operations (#5386) @laggui
- feat(quant)!: support two-level quantization scales (#5262) @ThierryCantin-Demers
- Update cube (#5389) @louisfd
- chore(ci): pin the shared actions to v11 (#5390) @ThierryCantin-Demers
- chore(ci): pin the publish workflow to v11 (#5391) @ThierryCantin-Demers
- feat(capture): add graph capture backend producing
GraphIr(#5377) @laggui - fix(fusion): reject a padded reference layout (#5395) @ThierryCantin-Demers
- chore: remove stale comment in root Cargo.toml (#5397) @ThierryCantin-Demers
- chore: tracel github actions v11 (#5398) @syl20bnr
- fix(flex): preserve non-finite padding semantics in conv (#5394) @tandede
- chore: fix clippy lints (#5401) @laggui
- chore(deps): update cubecl + cubek (#5403) @ThierryCantin-Demers
- feat(pack): stream tensors on demand when writing burnpack files (#5349) @antimora
- chore: update to xtask v5 (#5404) @syl20bnr
- fix!: address fusion and autodiff edge cases (#5400) @Charles23R @laggui @nathanielsimard
- perf(cubecl): reduce, don't pool, for a 1x1 adaptive average pool (#5405) @nathanielsimard
- fix(capture): preserve initializers across capture scopes (#5408) @laggui
- test(capture): update cross-device tensor movement contract (#5409) @laggui
- fix(metal): update cubecl rev for MSL capability detection (#5396) @laggui
- fix(nn): use mean reduction in group norm (#5410) @laggui
- Perf/fusion layout propagation (#5406) @nathanielsimard
- refactor(burn): route backend features through the dispatch chain (#5369) @laurigates
- fix(tests): correct FFT fixture and linalg tolerances (#5415) @laggui
- fix(vision): keep even filter2d output size (#5414) @Soundcreates
- fix(tensor): prevent softplus from overflowing to inf (#5374) @Mikyx-1
- Update/cube (#5420) @louisfd
- fix(cubecl): adapt matmul integration to cubek changes (#5421) @laggui
- perf(cubecl): compute a depthwise weight gradient in one kernel (#5422) @nathanielsimard
- perf(fusion): let a concatenation choose its own layout (#5417) @nathanielsimard
- perf(cubecl): cut a pointwise weight gradient's contraction (#5424) @nathanielsimard
- fix(tensor): validate TensorData byte length on deserialization (#5360) @robertomeroni
- chore: fix removed import (#5427) @laggui
- Let a caller install and read a device's memory pools (#5425) @nathanielsimard
- perf(conv): route strided pointwise convolutions through the matmul path (#5429) @ThierryCantin-Demers
- perf(cubecl): compute a dense weight gradient over the input's columns (#5428) @nathanielsimard
- refactor(store)!: replace TensorSnapshot with burn_pack::Tensor (#5411) @antimora