diff --git a/docs/Manifest.toml b/docs/Manifest.toml index bb44e343e..db1c0d9a6 100644 --- a/docs/Manifest.toml +++ b/docs/Manifest.toml @@ -5,6 +5,11 @@ git-tree-sha1 = "574baf8110975760d391c710b6341da1afa48d8c" uuid = "a4c015fc-c6ff-483c-b24f-f7ea428134e9" version = "0.0.1" +[[AbstractTrees]] +git-tree-sha1 = "5c0b629df8a5566a06f5fef5100b53ea56e465a0" +uuid = "1520ce14-60c1-5f80-bbc7-55ef81b5835c" +version = "0.4.2" + [[Adapt]] deps = ["LinearAlgebra"] git-tree-sha1 = "195c5505521008abea5aee4f96930717958eac6f" @@ -32,6 +37,12 @@ git-tree-sha1 = "4b859a208b2397a7a623a03449e4636bdb17bcf2" uuid = "83423d85-b0ee-5818-9007-b63ccbeb887a" version = "1.16.1+1" +[[Cascadia]] +deps = ["AbstractTrees", "Gumbo"] +git-tree-sha1 = "c0769cbd930aea932c0912c4d2749c619a263fc1" +uuid = "54eefc05-d75b-58de-a785-1a3403f0919f" +version = "1.0.2" + [[ChainRulesCore]] deps = ["Compat", "LinearAlgebra", "SparseArrays"] path = ".." @@ -247,11 +258,23 @@ git-tree-sha1 = "53bb909d1151e57e2484c3d1b53e19552b887fb2" uuid = "42e2da0e-8278-4e71-bc24-59509adca0fe" version = "1.0.2" +[[Gumbo]] +deps = ["AbstractTrees", "Gumbo_jll", "Libdl"] +git-tree-sha1 = "a4b03190a8d79e95b2f418df44f74cbc34289920" +uuid = "708ec375-b3d6-5a57-a7ce-8257bf98657a" +version = "0.8.1" + +[[Gumbo_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] +git-tree-sha1 = "29070dee9df18d9565276d68a596854b1764aa38" +uuid = "528830af-5a63-567c-a44a-034ed33b8444" +version = "0.10.2+0" + [[HTTP]] deps = ["Base64", "CodecZlib", "Dates", "IniFile", "Logging", "LoggingExtras", "MbedTLS", "NetworkOptions", "Random", "SimpleBufferStream", "Sockets", "URIs", "UUIDs"] -git-tree-sha1 = "ed47af35905b7cc8f1a522ca684b35a212269bd8" +git-tree-sha1 = "f0956f8d42a92816d2bf062f8a6a6a0ad7f9b937" uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3" -version = "1.2.0" +version = "1.2.1" [[HarfBuzz_jll]] deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Pkg"] @@ -543,9 +566,9 @@ version = "1.3.0" [[Plots]] deps = ["Base64", "Contour", "Dates", "Downloads", "FFMPEG", "FixedPointNumbers", "GR", "GeometryBasics", "JSON", "LaTeXStrings", "Latexify", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "Printf", "REPL", "Random", "RecipesBase", "RecipesPipeline", "Reexport", "Requires", "Scratch", "Showoff", "SparseArrays", "Statistics", "StatsBase", "UUIDs", "UnicodeFun", "Unzip"] -git-tree-sha1 = "05873db92e703f134649d88b8a164f3b7acb4d73" +git-tree-sha1 = "79830c17fe30f234931767238c584b3a75b3329d" uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" -version = "1.31.5" +version = "1.31.6" [[Preferences]] deps = ["TOML"] @@ -670,9 +693,9 @@ version = "1.5.0" [[StatsBase]] deps = ["DataAPI", "DataStructures", "LinearAlgebra", "LogExpFunctions", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics", "StatsAPI"] -git-tree-sha1 = "0005d75f43ff23688914536c5e9d5ac94f8077f7" +git-tree-sha1 = "d1bf48bfcc554a3761a133fe3a9bb01488e06916" uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" -version = "0.33.20" +version = "0.33.21" [[StructArrays]] deps = ["Adapt", "DataAPI", "StaticArrays", "Tables"] @@ -957,6 +980,6 @@ version = "3.5.0+0" [[xkbcommon_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Wayland_jll", "Wayland_protocols_jll", "Xorg_libxcb_jll", "Xorg_xkeyboard_config_jll"] -git-tree-sha1 = "ece2350174195bb31de1a63bea3a41ae1aa593b6" +git-tree-sha1 = "9ebfc140cc56e8c2156a15ceac2f0302e327ac0a" uuid = "d8fb68d0-12a3-5cfd-a85a-d49703b185fd" -version = "0.9.1+5" +version = "1.4.1+0" diff --git a/docs/Project.toml b/docs/Project.toml index df043ada4..d94945858 100644 --- a/docs/Project.toml +++ b/docs/Project.toml @@ -1,12 +1,17 @@ [deps] +Cascadia = "54eefc05-d75b-58de-a785-1a3403f0919f" ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" Compat = "34da2185-b29b-5c13-b0c7-acf172513d20" DocThemeIndigo = "8bac0ac5-51bf-41f9-885e-2bf1ac2bec5f" Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4" +Downloads = "f43a241f-c20a-4ad4-852c-f6b1247861c6" +Gumbo = "708ec375-b3d6-5a57-a7ce-8257bf98657a" Markdown = "d6f4376e-aef5-505a-96c1-9c027394607a" Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" [compat] +Cascadia = "1.0.2" DocThemeIndigo = "0.1.3" Documenter = "0.27.19" +Gumbo = "0.8.1" Plots = "1.20" diff --git a/docs/make.jl b/docs/make.jl index c507a161e..2959603e2 100644 --- a/docs/make.jl +++ b/docs/make.jl @@ -83,6 +83,7 @@ makedocs(; ], "Videos" => "videos.md", "FAQ" => "FAQ.md", + "Team" => "team.md", "API" => "api.md", ], strict=true, diff --git a/docs/src/team.md b/docs/src/team.md new file mode 100644 index 000000000..eeef98562 --- /dev/null +++ b/docs/src/team.md @@ -0,0 +1,53 @@ +# Team + +The team behind the ChainRules project is semi-fluid and fuzzy around the edges. +It is not a concrete formally defined group from one company or organization. + +Here we list people who have merge rights, and are regular maintainers of the project and its constituent parts. + +````@eval +team = [ + (github="oxinabox", org="Invenia Labs", subtext="Project Lead"), + (github="mzgubic", org="Invenia Labs", subtext=""), + (github="mcabbott", org="", subtext=""), + (github="willtebbutt", org="Invenia Labs", subtext=""), + (github="sethaxen", org="Universität Tübingen", subtext=""), + (github="ararslan", org="Beacon Biosignals", subtext="(retired)"), + (github="jrevels", org="Beacon Biosignals", subtext="Original Creator (retired)"), +] + +using Markdown +using Cascadia +using Gumbo +using Downloads: download + + + +read_url(url) = parsehtml(String(take!(download(url, IOBuffer())))) + +function get_avatar_url(doc) + eles = eachmatch(sel"img.avatar-user", doc.root) + return getattr(first(eles), "src") +end + +function get_text(doc, selector) + eles = eachmatch(selector, doc.root) + return text(only(eles)) +end + +OUT = IOBuffer() +for person in team + profile = joinpath("https://github.com", person.github) + doc = read_url(profile) + full_name = get_text(doc, sel"span.vcard-fullname") + avatar = get_avatar_url(doc) + org_text = isempty(person.org) ? "" : "_$(person.org)_" + + print(OUT, " - ") + print(OUT, "[![$(person.github)]($(avatar))]($profile)") + print(OUT, " **$(full_name)** $(org_text) $(person.subtext)") + println(OUT) +end + +Markdown.parse(String(take!(OUT))) +```` diff --git a/src/rules.jl b/src/rules.jl index d99e54a01..f76825d9b 100644 --- a/src/rules.jl +++ b/src/rules.jl @@ -16,8 +16,7 @@ unary input, unary output scalar function: ```jldoctest frule julia> dself = NoTangent(); -julia> x = rand() -0.8236475079774124 +julia> x = 0.8236475079774124; julia> sinx, Δsinx = frule((dself, 1), sin, x) (0.7336293678134624, 0.6795498147167869)