Skip to content

Commit 1258ddf

Browse files
dummy implementation of flatten (#2205)
* reintroduce flatten * cleanup * fix docs * actually add docstring
1 parent a22a3bd commit 1258ddf

File tree

3 files changed

+14
-4
lines changed

3 files changed

+14
-4
lines changed

docs/make.jl

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
using Documenter, Flux, NNlib, Functors, MLUtils, BSON, Optimisers, OneHotArrays, Zygote, ChainRulesCore, Plots, MLDatasets, Statistics, DataFrames
22

33

4-
DocMeta.setdocmeta!(Flux, :DocTestSetup, :(using Flux); recursive = true)
4+
DocMeta.setdocmeta!(Flux, :DocTestSetup,
5+
:(using Flux; using Flux: flatten);
6+
recursive = true)
57

68
makedocs(
79
modules = [Flux, NNlib, Functors, MLUtils, BSON, Optimisers, OneHotArrays, Zygote, ChainRulesCore, Base, Plots, MLDatasets, Statistics, DataFrames],

src/deprecations.jl

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -187,9 +187,6 @@ function update!(opt::Optimise.AbstractOptimiser, ::Params, grads::Union{Tuple,
187187
""")
188188
end
189189

190-
# https://github.com/FluxML/Flux.jl/issues/2195
191-
const flatten = MLUtils.flatten
192-
193190
# v0.14 deprecations
194191

195192
# Enable these when 0.14 is released, and delete const ClipGrad = Optimise.ClipValue etc:

src/layers/stateless.jl

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,3 +81,14 @@ function ChainRulesCore.rrule(::typeof(_match_eltype), layer, x::AbstractArray)
8181
_match_eltype(layer, x), dx -> (ZeroTangent(), NoTangent(), dx) # does not un-thunk dx
8282
end
8383

84+
# We have to define our own flatten in order
85+
# to load previously saved models.
86+
# See #2195 #2204
87+
"""
88+
flatten(x)
89+
90+
Same as [`MLUtils.flatten`](@ref), which
91+
should be prefered to this method existing
92+
only for backward compatibility.
93+
"""
94+
flatten(x) = MLUtils.flatten(x)

0 commit comments

Comments
 (0)