Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Turn StaticArrays into an Extension Package #625

Merged
merged 5 commits into from
Feb 25, 2023

Conversation

ChrisRackauckas
Copy link
Member

omg so fast!

@ChrisRackauckas
Copy link
Member Author

#617 might be better since not using the Requires is a simpler v1.8 handling

@ChrisRackauckas ChrisRackauckas deleted the staticarraysext branch February 17, 2023 12:38
@ChrisRackauckas ChrisRackauckas restored the staticarraysext branch February 17, 2023 12:38
@ChrisRackauckas
Copy link
Member Author

Nevermind, that has merge conflicts on the backport branch, so I'll just make this use the non-Requires version.

@ChrisRackauckas
Copy link
Member Author

This is pretty much the same as #617 but setup for the release-0.10 backport branch, as v0.11-dev has a bunch of odd extra stuff. I'd hope to just get this out there since it's not a functional difference but is a strong improvement to load times.

@ChrisRackauckas ChrisRackauckas force-pushed the staticarraysext branch 2 times, most recently from 84797de to 63e97d4 Compare February 17, 2023 12:58
@mcabbott
Copy link
Member

Isn't the right thing to merge #617 (by any name) onto master, and then backport it?

@ChrisRackauckas
Copy link
Member Author

That seems way more difficult than just doing the move on the v0.10 branch, given that the diff is large enough that it's hard to see what had changed already. This is pretty dead simple, just moving where the code is to a new file and module. If the other way is done correctly, then someone would just have to manually revert any v0.11 change in each of the functions, which would give you the same result as just using the v0.10 branch if done correctly (but would be a lot more error prone of course).

@ChrisRackauckas ChrisRackauckas changed the title Turn StaticArrays into an Extension Pacakge Turn StaticArrays into an Extension Package Feb 17, 2023
@ChrisRackauckas
Copy link
Member Author

The same nightly failure is on master: #626

@ChrisRackauckas
Copy link
Member Author

Also on the release branch: #627 , so this looks complete.

Squashing.

omg so fast!
no requires on v1.8 extension


typo


fix imports


fix all tests


fix the backwards compat with no requires


add missing ones


tag


overload valtype


add partials


Update ext/ForwardDiffStaticArraysExt.jl

Co-authored-by: David Widmann <devmotion@users.noreply.github.com>
a few more imports


finish the migration
@codecov-commenter
Copy link

codecov-commenter commented Feb 17, 2023

Codecov Report

Base: 87.18% // Head: 87.18% // No change to project coverage 👍

Coverage data is based on head (bc3a395) compared to base (eb8d755).
Patch coverage: 98.83% of modified lines in pull request are covered.

📣 This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

Additional details and impacted files
@@              Coverage Diff              @@
##           release-0.10     #625   +/-   ##
=============================================
  Coverage         87.18%   87.18%           
=============================================
  Files                 9       10    +1     
  Lines               905      905           
=============================================
  Hits                789      789           
  Misses              116      116           
Impacted Files Coverage Δ
src/apiutils.jl 100.00% <ø> (ø)
src/dual.jl 80.53% <ø> (-0.52%) ⬇️
src/gradient.jl 98.63% <ø> (-0.28%) ⬇️
src/hessian.jl 100.00% <ø> (+2.56%) ⬆️
src/jacobian.jl 99.13% <ø> (-0.19%) ⬇️
ext/ForwardDiffStaticArraysExt.jl 98.83% <98.83%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@ChrisRackauckas
Copy link
Member Author

Anything left?

@mcabbott
Copy link
Member

Am in favour of extensions, but against setting up a competition between two branches as to what's latest.

Master should get the extension first, then the backport 0.10 branch (if & when someone is inspired) rather than hoping someone will later update master to catch up.

How this is most easily performed is a detail. Perhaps it means pushing to #617 any changes to extension best practice since that was opened, and calling this PR the backport of that.

@ChrisRackauckas
Copy link
Member Author

I rebased #617 in #628. That's the v0.11 version. I also put a commit in here so that the functions are in the same order here and there. It should be the same "exact" change to both versions. Let me know if anything else is needed.

src/ForwardDiff.jl Outdated Show resolved Hide resolved
@ChrisRackauckas
Copy link
Member Author

Diffs look the same side by side.

@ChrisRackauckas
Copy link
Member Author

No objections from anyone? Speak up by Friday?

@ChrisRackauckas
Copy link
Member Author

Thanks for double checking. I checked locally and v1.9 is fine:

       ...auto-testing SpecialFunctions.besselhx with 2 arguments
       ...auto-testing Base.cosd with 1 arguments
       ...auto-testing SpecialFunctions.loggamma with 1 arguments
       ...auto-testing Base.mod2pi with 1 arguments
       ...auto-testing SpecialFunctions.airyaiprimex with 1 arguments
       ...auto-testing LogExpFunctions.logistic with 1 arguments
       ...auto-testing LogExpFunctions.log2mexp with 1 arguments
       ...auto-testing Base.cosh with 1 arguments
       ...auto-testing NaNMath.sin with 1 arguments
       ...auto-testing SpecialFunctions.besseli with 2 arguments
       ...auto-testing Base.exp10 with 1 arguments
       ...auto-testing Base.+ with 2 arguments
       ...auto-testing Base.acot with 1 arguments
       ...auto-testing SpecialFunctions.airyaiprime with 1 arguments
       ...auto-testing Base.atan with 2 arguments
       ...auto-testing LogExpFunctions.xlogy with 2 arguments
       ...auto-testing SpecialFunctions.airybix with 1 arguments
       ...auto-testing LogExpFunctions.xlogx with 1 arguments
       ...auto-testing LogExpFunctions.logmxp1 with 1 arguments
       ...auto-testing NaNMath.sqrt with 1 arguments
       ...auto-testing Base.acoth with 1 arguments
       ...auto-testing Base.abs with 1 arguments
       ...auto-testing Base.* with 2 arguments
       ...auto-testing Base.tanh with 1 arguments
       ...auto-testing SpecialFunctions.besselyx with 2 arguments
       ...auto-testing Base.coth with 1 arguments
       ...auto-testing Base.max with 2 arguments
       ...auto-testing Base.atan with 1 arguments
       ...auto-testing NaNMath.log10 with 1 arguments
       ...auto-testing Base.exp with 1 arguments
       ...auto-testing NaNMath.lgamma with 1 arguments
       ...auto-testing NaNMath.acos with 1 arguments
       ...auto-testing SpecialFunctions.besselk with 2 arguments
       ...auto-testing LogExpFunctions.log1pexp with 1 arguments
       ...auto-testing Base.atand with 1 arguments
       ...auto-testing NaNMath.asin with 1 arguments
       ...auto-testing Base.sec with 1 arguments
       ...auto-testing LogExpFunctions.log1mexp with 1 arguments
       ...auto-testing SpecialFunctions.logerfc with 1 arguments
       ...auto-testing Base.acscd with 1 arguments
       ...auto-testing Base.acotd with 1 arguments
       ...auto-testing Base.asecd with 1 arguments
       ...auto-testing Base.\ with 2 arguments
       ...auto-testing SpecialFunctions.airybi with 1 arguments
       ...auto-testing SpecialFunctions.sinint with 1 arguments
       ...auto-testing Base.secd with 1 arguments
       ...auto-testing SpecialFunctions.beta with 2 arguments
       ...auto-testing SpecialFunctions.hankelh2x with 2 arguments
       ...auto-testing LogExpFunctions.logsubexp with 2 arguments
       ...auto-testing Base.log10 with 1 arguments
       ...auto-testing Base.sech with 1 arguments
       ...auto-testing SpecialFunctions.invdigamma with 1 arguments
       ...auto-testing SpecialFunctions.trigamma with 1 arguments
       ...auto-testing Base.sinh with 1 arguments
       ...auto-testing SpecialFunctions.cosint with 1 arguments
       ...auto-testing SpecialFunctions.besselkx with 2 arguments
       ...auto-testing Base.cot with 1 arguments
       ...auto-testing SpecialFunctions.airybiprimex with 1 arguments
       ...auto-testing SpecialFunctions.logerfcx with 1 arguments
       ...auto-testing Base.hypot with 2 arguments
       ...auto-testing Base.csc with 1 arguments
       ...auto-testing NaNMath.log1p with 1 arguments
       ...auto-testing Base.csch with 1 arguments
       ...auto-testing SpecialFunctions.besselj1 with 1 arguments
       ...auto-testing NaNMath.atanh with 1 arguments
       ...auto-testing SpecialFunctions.erfi with 1 arguments
       ...auto-testing Base.rem with 2 arguments
       ...auto-testing SpecialFunctions.besselj with 2 arguments
       ...auto-testing NaNMath.acosh with 1 arguments
       ...auto-testing Base.mod with 2 arguments
       ...auto-testing LogExpFunctions.logit with 1 arguments
       ...auto-testing LogExpFunctions.xlog1py with 2 arguments
       ...auto-testing Base.log2 with 1 arguments
       ...auto-testing Base.log1p with 1 arguments
       ...auto-testing Base.exp2 with 1 arguments
       ...auto-testing SpecialFunctions.besselj0 with 1 arguments
       ...auto-testing LogExpFunctions.logexpm1 with 1 arguments
       ...auto-testing Base.log with 1 arguments
       ...auto-testing NaNMath.log with 1 arguments
       ...auto-testing SpecialFunctions.hankelh2 with 2 arguments
       ...auto-testing SpecialFunctions.ellipk with 1 arguments
       ...auto-testing NaNMath.pow with 2 arguments
       ...auto-testing SpecialFunctions.erf with 2 arguments
       ...auto-testing Base.asin with 1 arguments
       ...auto-testing Base.acosh with 1 arguments
       ...auto-testing Base.sind with 1 arguments
       ...auto-testing NaNMath.log2 with 1 arguments
       ...auto-testing SpecialFunctions.airybiprime with 1 arguments
       ...auto-testing Base.cospi with 1 arguments
       ...auto-testing NaNMath.cos with 1 arguments
       ...auto-testing LogExpFunctions.log1psq with 1 arguments
       ...auto-testing SpecialFunctions.erf with 1 arguments
       ...auto-testing SpecialFunctions.dawson with 1 arguments
       ...auto-testing Base.sin with 1 arguments
       ...auto-testing Base.deg2rad with 1 arguments
       ...auto-testing SpecialFunctions.bessely0 with 1 arguments
       ...auto-testing Base.acsch with 1 arguments
       ...auto-testing SpecialFunctions.airyaix with 1 arguments
       ...auto-testing Base.cos with 1 arguments
       ...auto-testing SpecialFunctions.erfcinv with 1 arguments
       ...auto-testing SpecialFunctions.zeta with 2 arguments
       ...auto-testing SpecialFunctions.erfinv with 1 arguments
       ...auto-testing LogExpFunctions.log1pmx with 1 arguments
       ...auto-testing LogExpFunctions.logaddexp with 2 arguments
       ...auto-testing Base.asech with 1 arguments
       ...auto-testing SpecialFunctions.bessely with 2 arguments
  ...testing Dual{TestTag(),Int64,0} and Dual{TestTag(),Dual{TestTag(),Int64,4},0}
  ...testing Dual{TestTag(),Float32,0} and Dual{TestTag(),Dual{TestTag(),Float32,4},0}
       ...auto-testing Base.expm1 with 1 arguments
       ...auto-testing Base.acos with 1 arguments
       ...auto-testing Base.cotd with 1 arguments
       ...auto-testing Base.sinpi with 1 arguments
       ...auto-testing Base.min with 2 arguments
       ...auto-testing Base.sqrt with 1 arguments
       ...auto-testing Base.asinh with 1 arguments
       ...auto-testing SpecialFunctions.gamma with 1 arguments
       ...auto-testing SpecialFunctions.hankelh1 with 2 arguments
       ...auto-testing SpecialFunctions.erfcx with 1 arguments
       ...auto-testing Base.tand with 1 arguments
       ...auto-testing Base.+ with 1 arguments
       ...auto-testing Base.^ with 2 arguments
       ...auto-testing Base.asec with 1 arguments
       ...auto-testing SpecialFunctions.ellipe with 1 arguments
       ...auto-testing SpecialFunctions.besseljx with 2 arguments
       ...auto-testing SpecialFunctions.polygamma with 2 arguments
       ...auto-testing Base.abs2 with 1 arguments
       ...auto-testing Base.sinc with 1 arguments
       ...auto-testing SpecialFunctions.hankelh1x with 2 arguments
       ...auto-testing Base.acosd with 1 arguments
       ...auto-testing Base.acsc with 1 arguments
       ...auto-testing SpecialFunctions.bessely1 with 1 arguments
       ...auto-testing Base.log with 2 arguments
       ...auto-testing SpecialFunctions.besselix with 2 arguments
       ...auto-testing NaNMath.tan with 1 arguments
       ...auto-testing Base.cbrt with 1 arguments
       ...auto-testing Base.inv with 1 arguments
       ...auto-testing SpecialFunctions.erfc with 1 arguments
       ...auto-testing Base.tan with 1 arguments
       ...auto-testing SpecialFunctions.digamma with 1 arguments
       ...auto-testing Base.ldexp with 2 arguments
       ...auto-testing Base.cscd with 1 arguments
       ...auto-testing Base.- with 1 arguments
       ...auto-testing Base.atanh with 1 arguments
       ...auto-testing Base.rad2deg with 1 arguments
       ...auto-testing SpecialFunctions.airyai with 1 arguments
       ...auto-testing NaNMath.max with 2 arguments
       ...auto-testing SpecialFunctions.logbeta with 2 arguments
       ...auto-testing NaNMath.min with 2 arguments
       ...auto-testing Base.asind with 1 arguments
       ...auto-testing Base.- with 2 arguments
       ...auto-testing SpecialFunctions.besselh with 2 arguments
       ...auto-testing SpecialFunctions.besselhx with 2 arguments
       ...auto-testing Base.cosd with 1 arguments
       ...auto-testing SpecialFunctions.loggamma with 1 arguments
       ...auto-testing Base.mod2pi with 1 arguments
       ...auto-testing SpecialFunctions.airyaiprimex with 1 arguments
       ...auto-testing LogExpFunctions.logistic with 1 arguments
       ...auto-testing LogExpFunctions.log2mexp with 1 arguments
       ...auto-testing Base.cosh with 1 arguments
       ...auto-testing NaNMath.sin with 1 arguments
       ...auto-testing SpecialFunctions.besseli with 2 arguments
       ...auto-testing Base.exp10 with 1 arguments
       ...auto-testing Base.+ with 2 arguments
       ...auto-testing Base.acot with 1 arguments
       ...auto-testing SpecialFunctions.airyaiprime with 1 arguments
       ...auto-testing Base.atan with 2 arguments
       ...auto-testing LogExpFunctions.xlogy with 2 arguments
       ...auto-testing SpecialFunctions.airybix with 1 arguments
       ...auto-testing LogExpFunctions.xlogx with 1 arguments
       ...auto-testing LogExpFunctions.logmxp1 with 1 arguments
       ...auto-testing NaNMath.sqrt with 1 arguments
       ...auto-testing Base.acoth with 1 arguments
       ...auto-testing Base.abs with 1 arguments
       ...auto-testing Base.* with 2 arguments
       ...auto-testing Base.tanh with 1 arguments
       ...auto-testing SpecialFunctions.besselyx with 2 arguments
       ...auto-testing Base.coth with 1 arguments
       ...auto-testing Base.max with 2 arguments
       ...auto-testing Base.atan with 1 arguments
       ...auto-testing NaNMath.log10 with 1 arguments
       ...auto-testing Base.exp with 1 arguments
       ...auto-testing NaNMath.lgamma with 1 arguments
       ...auto-testing NaNMath.acos with 1 arguments
       ...auto-testing SpecialFunctions.besselk with 2 arguments
       ...auto-testing LogExpFunctions.log1pexp with 1 arguments
       ...auto-testing Base.atand with 1 arguments
       ...auto-testing NaNMath.asin with 1 arguments
       ...auto-testing Base.sec with 1 arguments
       ...auto-testing LogExpFunctions.log1mexp with 1 arguments
       ...auto-testing SpecialFunctions.logerfc with 1 arguments
       ...auto-testing Base.acscd with 1 arguments
       ...auto-testing Base.acotd with 1 arguments
       ...auto-testing Base.asecd with 1 arguments
       ...auto-testing Base.\ with 2 arguments
       ...auto-testing SpecialFunctions.airybi with 1 arguments
       ...auto-testing SpecialFunctions.sinint with 1 arguments
       ...auto-testing Base.secd with 1 arguments
       ...auto-testing SpecialFunctions.beta with 2 arguments
       ...auto-testing SpecialFunctions.hankelh2x with 2 arguments
       ...auto-testing LogExpFunctions.logsubexp with 2 arguments
       ...auto-testing Base.log10 with 1 arguments
       ...auto-testing Base.sech with 1 arguments
       ...auto-testing SpecialFunctions.invdigamma with 1 arguments
       ...auto-testing SpecialFunctions.trigamma with 1 arguments
       ...auto-testing Base.sinh with 1 arguments
       ...auto-testing SpecialFunctions.cosint with 1 arguments
       ...auto-testing SpecialFunctions.besselkx with 2 arguments
       ...auto-testing Base.cot with 1 arguments
       ...auto-testing SpecialFunctions.airybiprimex with 1 arguments
       ...auto-testing SpecialFunctions.logerfcx with 1 arguments
       ...auto-testing Base.hypot with 2 arguments
       ...auto-testing Base.csc with 1 arguments
       ...auto-testing NaNMath.log1p with 1 arguments
       ...auto-testing Base.csch with 1 arguments
       ...auto-testing SpecialFunctions.besselj1 with 1 arguments
       ...auto-testing NaNMath.atanh with 1 arguments
       ...auto-testing SpecialFunctions.erfi with 1 arguments
       ...auto-testing Base.rem with 2 arguments
       ...auto-testing SpecialFunctions.besselj with 2 arguments
       ...auto-testing NaNMath.acosh with 1 arguments
       ...auto-testing Base.mod with 2 arguments
       ...auto-testing LogExpFunctions.logit with 1 arguments
       ...auto-testing LogExpFunctions.xlog1py with 2 arguments
       ...auto-testing Base.log2 with 1 arguments
       ...auto-testing Base.log1p with 1 arguments
       ...auto-testing Base.exp2 with 1 arguments
       ...auto-testing SpecialFunctions.besselj0 with 1 arguments
       ...auto-testing LogExpFunctions.logexpm1 with 1 arguments
       ...auto-testing Base.log with 1 arguments
       ...auto-testing NaNMath.log with 1 arguments
       ...auto-testing SpecialFunctions.hankelh2 with 2 arguments
       ...auto-testing SpecialFunctions.ellipk with 1 arguments
       ...auto-testing NaNMath.pow with 2 arguments
       ...auto-testing SpecialFunctions.erf with 2 arguments
       ...auto-testing Base.asin with 1 arguments
       ...auto-testing Base.acosh with 1 arguments
       ...auto-testing Base.sind with 1 arguments
       ...auto-testing NaNMath.log2 with 1 arguments
       ...auto-testing SpecialFunctions.airybiprime with 1 arguments
       ...auto-testing Base.cospi with 1 arguments
       ...auto-testing NaNMath.cos with 1 arguments
       ...auto-testing LogExpFunctions.log1psq with 1 arguments
       ...auto-testing SpecialFunctions.erf with 1 arguments
       ...auto-testing SpecialFunctions.dawson with 1 arguments
       ...auto-testing Base.sin with 1 arguments
       ...auto-testing Base.deg2rad with 1 arguments
       ...auto-testing SpecialFunctions.bessely0 with 1 arguments
       ...auto-testing Base.acsch with 1 arguments
       ...auto-testing SpecialFunctions.airyaix with 1 arguments
       ...auto-testing Base.cos with 1 arguments
       ...auto-testing SpecialFunctions.erfcinv with 1 arguments
       ...auto-testing SpecialFunctions.zeta with 2 arguments
       ...auto-testing SpecialFunctions.erfinv with 1 arguments
       ...auto-testing LogExpFunctions.log1pmx with 1 arguments
       ...auto-testing LogExpFunctions.logaddexp with 2 arguments
       ...auto-testing Base.asech with 1 arguments
       ...auto-testing SpecialFunctions.bessely with 2 arguments
  ...testing Dual{TestTag(),Int64,3} and Dual{TestTag(),Dual{TestTag(),Int64,0},3}
  ...testing Dual{TestTag(),Float32,3} and Dual{TestTag(),Dual{TestTag(),Float32,0},3}
       ...auto-testing Base.expm1 with 1 arguments
       ...auto-testing Base.acos with 1 arguments
       ...auto-testing Base.cotd with 1 arguments
       ...auto-testing Base.sinpi with 1 arguments
       ...auto-testing Base.min with 2 arguments
       ...auto-testing Base.sqrt with 1 arguments
       ...auto-testing Base.asinh with 1 arguments
       ...auto-testing SpecialFunctions.gamma with 1 arguments
       ...auto-testing SpecialFunctions.hankelh1 with 2 arguments
       ...auto-testing SpecialFunctions.erfcx with 1 arguments
       ...auto-testing Base.tand with 1 arguments
       ...auto-testing Base.+ with 1 arguments
       ...auto-testing Base.^ with 2 arguments
       ...auto-testing Base.asec with 1 arguments
       ...auto-testing SpecialFunctions.ellipe with 1 arguments
       ...auto-testing SpecialFunctions.besseljx with 2 arguments
       ...auto-testing SpecialFunctions.polygamma with 2 arguments
       ...auto-testing Base.abs2 with 1 arguments
       ...auto-testing Base.sinc with 1 arguments
       ...auto-testing SpecialFunctions.hankelh1x with 2 arguments
       ...auto-testing Base.acosd with 1 arguments
       ...auto-testing Base.acsc with 1 arguments
       ...auto-testing SpecialFunctions.bessely1 with 1 arguments
       ...auto-testing Base.log with 2 arguments
       ...auto-testing SpecialFunctions.besselix with 2 arguments
       ...auto-testing NaNMath.tan with 1 arguments
       ...auto-testing Base.cbrt with 1 arguments
       ...auto-testing Base.inv with 1 arguments
       ...auto-testing SpecialFunctions.erfc with 1 arguments
       ...auto-testing Base.tan with 1 arguments
       ...auto-testing SpecialFunctions.digamma with 1 arguments
       ...auto-testing Base.ldexp with 2 arguments
       ...auto-testing Base.cscd with 1 arguments
       ...auto-testing Base.- with 1 arguments
       ...auto-testing Base.atanh with 1 arguments
       ...auto-testing Base.rad2deg with 1 arguments
       ...auto-testing SpecialFunctions.airyai with 1 arguments
       ...auto-testing NaNMath.max with 2 arguments
       ...auto-testing SpecialFunctions.logbeta with 2 arguments
       ...auto-testing NaNMath.min with 2 arguments
       ...auto-testing Base.asind with 1 arguments
       ...auto-testing Base.- with 2 arguments
       ...auto-testing SpecialFunctions.besselh with 2 arguments
       ...auto-testing SpecialFunctions.besselhx with 2 arguments
       ...auto-testing Base.cosd with 1 arguments
       ...auto-testing SpecialFunctions.loggamma with 1 arguments
       ...auto-testing Base.mod2pi with 1 arguments
       ...auto-testing SpecialFunctions.airyaiprimex with 1 arguments
       ...auto-testing LogExpFunctions.logistic with 1 arguments
       ...auto-testing LogExpFunctions.log2mexp with 1 arguments
       ...auto-testing Base.cosh with 1 arguments
       ...auto-testing NaNMath.sin with 1 arguments
       ...auto-testing SpecialFunctions.besseli with 2 arguments
       ...auto-testing Base.exp10 with 1 arguments
       ...auto-testing Base.+ with 2 arguments
       ...auto-testing Base.acot with 1 arguments
       ...auto-testing SpecialFunctions.airyaiprime with 1 arguments
       ...auto-testing Base.atan with 2 arguments
       ...auto-testing LogExpFunctions.xlogy with 2 arguments
       ...auto-testing SpecialFunctions.airybix with 1 arguments
       ...auto-testing LogExpFunctions.xlogx with 1 arguments
       ...auto-testing LogExpFunctions.logmxp1 with 1 arguments
       ...auto-testing NaNMath.sqrt with 1 arguments
       ...auto-testing Base.acoth with 1 arguments
       ...auto-testing Base.abs with 1 arguments
       ...auto-testing Base.* with 2 arguments
       ...auto-testing Base.tanh with 1 arguments
       ...auto-testing SpecialFunctions.besselyx with 2 arguments
       ...auto-testing Base.coth with 1 arguments
       ...auto-testing Base.max with 2 arguments
       ...auto-testing Base.atan with 1 arguments
       ...auto-testing NaNMath.log10 with 1 arguments
       ...auto-testing Base.exp with 1 arguments
       ...auto-testing NaNMath.lgamma with 1 arguments
       ...auto-testing NaNMath.acos with 1 arguments
       ...auto-testing SpecialFunctions.besselk with 2 arguments
       ...auto-testing LogExpFunctions.log1pexp with 1 arguments
       ...auto-testing Base.atand with 1 arguments
       ...auto-testing NaNMath.asin with 1 arguments
       ...auto-testing Base.sec with 1 arguments
       ...auto-testing LogExpFunctions.log1mexp with 1 arguments
       ...auto-testing SpecialFunctions.logerfc with 1 arguments
       ...auto-testing Base.acscd with 1 arguments
       ...auto-testing Base.acotd with 1 arguments
       ...auto-testing Base.asecd with 1 arguments
       ...auto-testing Base.\ with 2 arguments
       ...auto-testing SpecialFunctions.airybi with 1 arguments
       ...auto-testing SpecialFunctions.sinint with 1 arguments
       ...auto-testing Base.secd with 1 arguments
       ...auto-testing SpecialFunctions.beta with 2 arguments
       ...auto-testing SpecialFunctions.hankelh2x with 2 arguments
       ...auto-testing LogExpFunctions.logsubexp with 2 arguments
       ...auto-testing Base.log10 with 1 arguments
       ...auto-testing Base.sech with 1 arguments
       ...auto-testing SpecialFunctions.invdigamma with 1 arguments
       ...auto-testing SpecialFunctions.trigamma with 1 arguments
       ...auto-testing Base.sinh with 1 arguments
       ...auto-testing SpecialFunctions.cosint with 1 arguments
       ...auto-testing SpecialFunctions.besselkx with 2 arguments
       ...auto-testing Base.cot with 1 arguments
       ...auto-testing SpecialFunctions.airybiprimex with 1 arguments
       ...auto-testing SpecialFunctions.logerfcx with 1 arguments
       ...auto-testing Base.hypot with 2 arguments
       ...auto-testing Base.csc with 1 arguments
       ...auto-testing NaNMath.log1p with 1 arguments
       ...auto-testing Base.csch with 1 arguments
       ...auto-testing SpecialFunctions.besselj1 with 1 arguments
       ...auto-testing NaNMath.atanh with 1 arguments
       ...auto-testing SpecialFunctions.erfi with 1 arguments
       ...auto-testing Base.rem with 2 arguments
       ...auto-testing SpecialFunctions.besselj with 2 arguments
       ...auto-testing NaNMath.acosh with 1 arguments
       ...auto-testing Base.mod with 2 arguments
       ...auto-testing LogExpFunctions.logit with 1 arguments
       ...auto-testing LogExpFunctions.xlog1py with 2 arguments
       ...auto-testing Base.log2 with 1 arguments
       ...auto-testing Base.log1p with 1 arguments
       ...auto-testing Base.exp2 with 1 arguments
       ...auto-testing SpecialFunctions.besselj0 with 1 arguments
       ...auto-testing LogExpFunctions.logexpm1 with 1 arguments
       ...auto-testing Base.log with 1 arguments
       ...auto-testing NaNMath.log with 1 arguments
       ...auto-testing SpecialFunctions.hankelh2 with 2 arguments
       ...auto-testing SpecialFunctions.ellipk with 1 arguments
       ...auto-testing NaNMath.pow with 2 arguments
       ...auto-testing SpecialFunctions.erf with 2 arguments
       ...auto-testing Base.asin with 1 arguments
       ...auto-testing Base.acosh with 1 arguments
       ...auto-testing Base.sind with 1 arguments
       ...auto-testing NaNMath.log2 with 1 arguments
       ...auto-testing SpecialFunctions.airybiprime with 1 arguments
       ...auto-testing Base.cospi with 1 arguments
       ...auto-testing NaNMath.cos with 1 arguments
       ...auto-testing LogExpFunctions.log1psq with 1 arguments
       ...auto-testing SpecialFunctions.erf with 1 arguments
       ...auto-testing SpecialFunctions.dawson with 1 arguments
       ...auto-testing Base.sin with 1 arguments
       ...auto-testing Base.deg2rad with 1 arguments
       ...auto-testing SpecialFunctions.bessely0 with 1 arguments
       ...auto-testing Base.acsch with 1 arguments
       ...auto-testing SpecialFunctions.airyaix with 1 arguments
       ...auto-testing Base.cos with 1 arguments
       ...auto-testing SpecialFunctions.erfcinv with 1 arguments
       ...auto-testing SpecialFunctions.zeta with 2 arguments
       ...auto-testing SpecialFunctions.erfinv with 1 arguments
       ...auto-testing LogExpFunctions.log1pmx with 1 arguments
       ...auto-testing LogExpFunctions.logaddexp with 2 arguments
       ...auto-testing Base.asech with 1 arguments
       ...auto-testing SpecialFunctions.bessely with 2 arguments
  ...testing Dual{TestTag(),Int64,3} and Dual{TestTag(),Dual{TestTag(),Int64,4},3}
  ...testing Dual{TestTag(),Float32,3} and Dual{TestTag(),Dual{TestTag(),Float32,4},3}
       ...auto-testing Base.expm1 with 1 arguments
       ...auto-testing Base.acos with 1 arguments
       ...auto-testing Base.cotd with 1 arguments
       ...auto-testing Base.sinpi with 1 arguments
       ...auto-testing Base.min with 2 arguments
       ...auto-testing Base.sqrt with 1 arguments
       ...auto-testing Base.asinh with 1 arguments
       ...auto-testing SpecialFunctions.gamma with 1 arguments
       ...auto-testing SpecialFunctions.hankelh1 with 2 arguments
       ...auto-testing SpecialFunctions.erfcx with 1 arguments
       ...auto-testing Base.tand with 1 arguments
       ...auto-testing Base.+ with 1 arguments
       ...auto-testing Base.^ with 2 arguments
       ...auto-testing Base.asec with 1 arguments
       ...auto-testing SpecialFunctions.ellipe with 1 arguments
       ...auto-testing SpecialFunctions.besseljx with 2 arguments
       ...auto-testing SpecialFunctions.polygamma with 2 arguments
       ...auto-testing Base.abs2 with 1 arguments
       ...auto-testing Base.sinc with 1 arguments
       ...auto-testing SpecialFunctions.hankelh1x with 2 arguments
       ...auto-testing Base.acosd with 1 arguments
       ...auto-testing Base.acsc with 1 arguments
       ...auto-testing SpecialFunctions.bessely1 with 1 arguments
       ...auto-testing Base.log with 2 arguments
       ...auto-testing SpecialFunctions.besselix with 2 arguments
       ...auto-testing NaNMath.tan with 1 arguments
       ...auto-testing Base.cbrt with 1 arguments
       ...auto-testing Base.inv with 1 arguments
       ...auto-testing SpecialFunctions.erfc with 1 arguments
       ...auto-testing Base.tan with 1 arguments
       ...auto-testing SpecialFunctions.digamma with 1 arguments
       ...auto-testing Base.ldexp with 2 arguments
       ...auto-testing Base.cscd with 1 arguments
       ...auto-testing Base.- with 1 arguments
       ...auto-testing Base.atanh with 1 arguments
       ...auto-testing Base.rad2deg with 1 arguments
       ...auto-testing SpecialFunctions.airyai with 1 arguments
       ...auto-testing NaNMath.max with 2 arguments
       ...auto-testing SpecialFunctions.logbeta with 2 arguments
       ...auto-testing NaNMath.min with 2 arguments
       ...auto-testing Base.asind with 1 arguments
       ...auto-testing Base.- with 2 arguments
       ...auto-testing SpecialFunctions.besselh with 2 arguments
       ...auto-testing SpecialFunctions.besselhx with 2 arguments
       ...auto-testing Base.cosd with 1 arguments
       ...auto-testing SpecialFunctions.loggamma with 1 arguments
       ...auto-testing Base.mod2pi with 1 arguments
       ...auto-testing SpecialFunctions.airyaiprimex with 1 arguments
       ...auto-testing LogExpFunctions.logistic with 1 arguments
       ...auto-testing LogExpFunctions.log2mexp with 1 arguments
       ...auto-testing Base.cosh with 1 arguments
       ...auto-testing NaNMath.sin with 1 arguments
       ...auto-testing SpecialFunctions.besseli with 2 arguments
       ...auto-testing Base.exp10 with 1 arguments
       ...auto-testing Base.+ with 2 arguments
       ...auto-testing Base.acot with 1 arguments
       ...auto-testing SpecialFunctions.airyaiprime with 1 arguments
       ...auto-testing Base.atan with 2 arguments
       ...auto-testing LogExpFunctions.xlogy with 2 arguments
       ...auto-testing SpecialFunctions.airybix with 1 arguments
       ...auto-testing LogExpFunctions.xlogx with 1 arguments
       ...auto-testing LogExpFunctions.logmxp1 with 1 arguments
       ...auto-testing NaNMath.sqrt with 1 arguments
       ...auto-testing Base.acoth with 1 arguments
       ...auto-testing Base.abs with 1 arguments
       ...auto-testing Base.* with 2 arguments
       ...auto-testing Base.tanh with 1 arguments
       ...auto-testing SpecialFunctions.besselyx with 2 arguments
       ...auto-testing Base.coth with 1 arguments
       ...auto-testing Base.max with 2 arguments
       ...auto-testing Base.atan with 1 arguments
       ...auto-testing NaNMath.log10 with 1 arguments
       ...auto-testing Base.exp with 1 arguments
       ...auto-testing NaNMath.lgamma with 1 arguments
       ...auto-testing NaNMath.acos with 1 arguments
       ...auto-testing SpecialFunctions.besselk with 2 arguments
       ...auto-testing LogExpFunctions.log1pexp with 1 arguments
       ...auto-testing Base.atand with 1 arguments
       ...auto-testing NaNMath.asin with 1 arguments
       ...auto-testing Base.sec with 1 arguments
       ...auto-testing LogExpFunctions.log1mexp with 1 arguments
       ...auto-testing SpecialFunctions.logerfc with 1 arguments
       ...auto-testing Base.acscd with 1 arguments
       ...auto-testing Base.acotd with 1 arguments
       ...auto-testing Base.asecd with 1 arguments
       ...auto-testing Base.\ with 2 arguments
       ...auto-testing SpecialFunctions.airybi with 1 arguments
       ...auto-testing SpecialFunctions.sinint with 1 arguments
       ...auto-testing Base.secd with 1 arguments
       ...auto-testing SpecialFunctions.beta with 2 arguments
       ...auto-testing SpecialFunctions.hankelh2x with 2 arguments
       ...auto-testing LogExpFunctions.logsubexp with 2 arguments
       ...auto-testing Base.log10 with 1 arguments
       ...auto-testing Base.sech with 1 arguments
       ...auto-testing SpecialFunctions.invdigamma with 1 arguments
       ...auto-testing SpecialFunctions.trigamma with 1 arguments
       ...auto-testing Base.sinh with 1 arguments
       ...auto-testing SpecialFunctions.cosint with 1 arguments
       ...auto-testing SpecialFunctions.besselkx with 2 arguments
       ...auto-testing Base.cot with 1 arguments
       ...auto-testing SpecialFunctions.airybiprimex with 1 arguments
       ...auto-testing SpecialFunctions.logerfcx with 1 arguments
       ...auto-testing Base.hypot with 2 arguments
       ...auto-testing Base.csc with 1 arguments
       ...auto-testing NaNMath.log1p with 1 arguments
       ...auto-testing Base.csch with 1 arguments
       ...auto-testing SpecialFunctions.besselj1 with 1 arguments
       ...auto-testing NaNMath.atanh with 1 arguments
       ...auto-testing SpecialFunctions.erfi with 1 arguments
       ...auto-testing Base.rem with 2 arguments
       ...auto-testing SpecialFunctions.besselj with 2 arguments
       ...auto-testing NaNMath.acosh with 1 arguments
       ...auto-testing Base.mod with 2 arguments
       ...auto-testing LogExpFunctions.logit with 1 arguments
       ...auto-testing LogExpFunctions.xlog1py with 2 arguments
       ...auto-testing Base.log2 with 1 arguments
       ...auto-testing Base.log1p with 1 arguments
       ...auto-testing Base.exp2 with 1 arguments
       ...auto-testing SpecialFunctions.besselj0 with 1 arguments
       ...auto-testing LogExpFunctions.logexpm1 with 1 arguments
       ...auto-testing Base.log with 1 arguments
       ...auto-testing NaNMath.log with 1 arguments
       ...auto-testing SpecialFunctions.hankelh2 with 2 arguments
       ...auto-testing SpecialFunctions.ellipk with 1 arguments
       ...auto-testing NaNMath.pow with 2 arguments
       ...auto-testing SpecialFunctions.erf with 2 arguments
       ...auto-testing Base.asin with 1 arguments
       ...auto-testing Base.acosh with 1 arguments
       ...auto-testing Base.sind with 1 arguments
       ...auto-testing NaNMath.log2 with 1 arguments
       ...auto-testing SpecialFunctions.airybiprime with 1 arguments
       ...auto-testing Base.cospi with 1 arguments
       ...auto-testing NaNMath.cos with 1 arguments
       ...auto-testing LogExpFunctions.log1psq with 1 arguments
       ...auto-testing SpecialFunctions.erf with 1 arguments
       ...auto-testing SpecialFunctions.dawson with 1 arguments
       ...auto-testing Base.sin with 1 arguments
       ...auto-testing Base.deg2rad with 1 arguments
       ...auto-testing SpecialFunctions.bessely0 with 1 arguments
       ...auto-testing Base.acsch with 1 arguments
       ...auto-testing SpecialFunctions.airyaix with 1 arguments
       ...auto-testing Base.cos with 1 arguments
       ...auto-testing SpecialFunctions.erfcinv with 1 arguments
       ...auto-testing SpecialFunctions.zeta with 2 arguments
       ...auto-testing SpecialFunctions.erfinv with 1 arguments
       ...auto-testing LogExpFunctions.log1pmx with 1 arguments
       ...auto-testing LogExpFunctions.logaddexp with 2 arguments
       ...auto-testing Base.asech with 1 arguments
       ...auto-testing SpecialFunctions.bessely with 2 arguments
Test Summary:          | Pass  Total  Time
Exponentiation of zero |    4      4  0.2s
Test Summary: | Pass  Total  Time
Type min/max  |   10     10  0.0s
Test Summary: | Pass  Total  Time
Integer       |    8      8  0.1s
Testing @printf: 1.00e+00
Testing @printf: 1.00e+00
Testing @printf: 1.00e+00
Testing @printf: 1.00e+00
Test Summary: | Pass  Total  Time
@printf       |    8      8  1.0s
Test Summary: | Pass  Total  Time
float         |    4      4  0.1s
done (took 16.8429777 seconds).
Testing derivative functionality...
  ...testing num2num_1
  ...testing num2num_2
  ...testing num2num_3
  ...testing num2num_4
  ...testing num2num_5
  ...testing identity
  ...testing num2arr_1
  ...testing num2arr_1!
Test Summary:                     | Pass  Total  Time
exponential function at base zero |    4      4  0.1s
Test Summary:                  | Pass  Total  Time
dimension error for derivative |    1      1  0.0s
Test Summary:  | Pass  Total  Time
complex output |    1      1  0.0s
done (took 2.0811971 seconds).
Testing gradient functionality...
  ...running hardcoded test with chunk size = 1 and tag = nothing
  ...running hardcoded test with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_1), Float64}()
  ...running hardcoded test with chunk size = 2 and tag = nothing
  ...running hardcoded test with chunk size = 2 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_1), Float64}()
  ...running hardcoded test with chunk size = 3 and tag = nothing
  ...running hardcoded test with chunk size = 3 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_1), Float64}()
  ...testing vec2num_1 with chunk size = 1 and tag = nothing
  ...testing vec2num_1 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_1), Float64}()
  ...testing vec2num_1 with chunk size = 4 and tag = nothing
  ...testing vec2num_1 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_1), Float64}()
  ...testing vec2num_1 with chunk size = 6 and tag = nothing
  ...testing vec2num_1 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_1), Float64}()
  ...testing vec2num_1 with chunk size = 12 and tag = nothing
  ...testing vec2num_1 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_1), Float64}()
  ...testing vec2num_1 with chunk size = 13 and tag = nothing
  ...testing vec2num_1 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_1), Float64}()
  ...testing vec2num_2 with chunk size = 1 and tag = nothing
  ...testing vec2num_2 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_2), Float64}()
  ...testing vec2num_2 with chunk size = 4 and tag = nothing
  ...testing vec2num_2 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_2), Float64}()
  ...testing vec2num_2 with chunk size = 6 and tag = nothing
  ...testing vec2num_2 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_2), Float64}()
  ...testing vec2num_2 with chunk size = 12 and tag = nothing
  ...testing vec2num_2 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_2), Float64}()
  ...testing vec2num_2 with chunk size = 13 and tag = nothing
  ...testing vec2num_2 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_2), Float64}()
  ...testing vec2num_3 with chunk size = 1 and tag = nothing
  ...testing vec2num_3 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_3), Float64}()
  ...testing vec2num_3 with chunk size = 4 and tag = nothing
  ...testing vec2num_3 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_3), Float64}()
  ...testing vec2num_3 with chunk size = 6 and tag = nothing
  ...testing vec2num_3 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_3), Float64}()
  ...testing vec2num_3 with chunk size = 12 and tag = nothing
  ...testing vec2num_3 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_3), Float64}()
  ...testing vec2num_3 with chunk size = 13 and tag = nothing
  ...testing vec2num_3 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_3), Float64}()
  ...testing vec2num_4 with chunk size = 1 and tag = nothing
  ...testing vec2num_4 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_4), Float64}()
  ...testing vec2num_4 with chunk size = 4 and tag = nothing
  ...testing vec2num_4 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_4), Float64}()
  ...testing vec2num_4 with chunk size = 6 and tag = nothing
  ...testing vec2num_4 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_4), Float64}()
  ...testing vec2num_4 with chunk size = 12 and tag = nothing
  ...testing vec2num_4 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_4), Float64}()
  ...testing vec2num_4 with chunk size = 13 and tag = nothing
  ...testing vec2num_4 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_4), Float64}()
  ...testing vec2num_5 with chunk size = 1 and tag = nothing
  ...testing vec2num_5 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_5), Float64}()
  ...testing vec2num_5 with chunk size = 4 and tag = nothing
  ...testing vec2num_5 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_5), Float64}()
  ...testing vec2num_5 with chunk size = 6 and tag = nothing
  ...testing vec2num_5 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_5), Float64}()
  ...testing vec2num_5 with chunk size = 12 and tag = nothing
  ...testing vec2num_5 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_5), Float64}()
  ...testing vec2num_5 with chunk size = 13 and tag = nothing
  ...testing vec2num_5 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_5), Float64}()
  ...testing vec2num_6 with chunk size = 1 and tag = nothing
  ...testing vec2num_6 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_6), Float64}()
  ...testing vec2num_6 with chunk size = 4 and tag = nothing
  ...testing vec2num_6 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_6), Float64}()
  ...testing vec2num_6 with chunk size = 6 and tag = nothing
  ...testing vec2num_6 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_6), Float64}()
  ...testing vec2num_6 with chunk size = 12 and tag = nothing
  ...testing vec2num_6 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_6), Float64}()
  ...testing vec2num_6 with chunk size = 13 and tag = nothing
  ...testing vec2num_6 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_6), Float64}()
  ...testing vec2num_7 with chunk size = 1 and tag = nothing
  ...testing vec2num_7 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_7), Float64}()
  ...testing vec2num_7 with chunk size = 4 and tag = nothing
  ...testing vec2num_7 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_7), Float64}()
  ...testing vec2num_7 with chunk size = 6 and tag = nothing
  ...testing vec2num_7 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_7), Float64}()
  ...testing vec2num_7 with chunk size = 12 and tag = nothing
  ...testing vec2num_7 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_7), Float64}()
  ...testing vec2num_7 with chunk size = 13 and tag = nothing
  ...testing vec2num_7 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.vec2num_7), Float64}()
  ...testing rosenbrock_1 with chunk size = 1 and tag = nothing
  ...testing rosenbrock_1 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_1), Float64}()
  ...testing rosenbrock_1 with chunk size = 4 and tag = nothing
  ...testing rosenbrock_1 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_1), Float64}()
  ...testing rosenbrock_1 with chunk size = 6 and tag = nothing
  ...testing rosenbrock_1 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_1), Float64}()
  ...testing rosenbrock_1 with chunk size = 12 and tag = nothing
  ...testing rosenbrock_1 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_1), Float64}()
  ...testing rosenbrock_1 with chunk size = 13 and tag = nothing
  ...testing rosenbrock_1 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_1), Float64}()
  ...testing rosenbrock_2 with chunk size = 1 and tag = nothing
  ...testing rosenbrock_2 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_2), Float64}()
  ...testing rosenbrock_2 with chunk size = 4 and tag = nothing
  ...testing rosenbrock_2 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_2), Float64}()
  ...testing rosenbrock_2 with chunk size = 6 and tag = nothing
  ...testing rosenbrock_2 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_2), Float64}()
  ...testing rosenbrock_2 with chunk size = 12 and tag = nothing
  ...testing rosenbrock_2 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_2), Float64}()
  ...testing rosenbrock_2 with chunk size = 13 and tag = nothing
  ...testing rosenbrock_2 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_2), Float64}()
  ...testing rosenbrock_3 with chunk size = 1 and tag = nothing
  ...testing rosenbrock_3 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_3), Float64}()
  ...testing rosenbrock_3 with chunk size = 4 and tag = nothing
  ...testing rosenbrock_3 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_3), Float64}()
  ...testing rosenbrock_3 with chunk size = 6 and tag = nothing
  ...testing rosenbrock_3 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_3), Float64}()
  ...testing rosenbrock_3 with chunk size = 12 and tag = nothing
  ...testing rosenbrock_3 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_3), Float64}()
  ...testing rosenbrock_3 with chunk size = 13 and tag = nothing
  ...testing rosenbrock_3 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_3), Float64}()
  ...testing rosenbrock_4 with chunk size = 1 and tag = nothing
  ...testing rosenbrock_4 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_4), Float64}()
  ...testing rosenbrock_4 with chunk size = 4 and tag = nothing
  ...testing rosenbrock_4 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_4), Float64}()
  ...testing rosenbrock_4 with chunk size = 6 and tag = nothing
  ...testing rosenbrock_4 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_4), Float64}()
  ...testing rosenbrock_4 with chunk size = 12 and tag = nothing
  ...testing rosenbrock_4 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_4), Float64}()
  ...testing rosenbrock_4 with chunk size = 13 and tag = nothing
  ...testing rosenbrock_4 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.rosenbrock_4), Float64}()
  ...testing ackley with chunk size = 1 and tag = nothing
  ...testing ackley with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.ackley), Float64}()
  ...testing ackley with chunk size = 4 and tag = nothing
  ...testing ackley with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.ackley), Float64}()
  ...testing ackley with chunk size = 6 and tag = nothing
  ...testing ackley with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.ackley), Float64}()
  ...testing ackley with chunk size = 12 and tag = nothing
  ...testing ackley with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.ackley), Float64}()
  ...testing ackley with chunk size = 13 and tag = nothing
  ...testing ackley with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.ackley), Float64}()
  ...testing self_weighted_logit with chunk size = 1 and tag = nothing
  ...testing self_weighted_logit with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.self_weighted_logit), Float64}()
  ...testing self_weighted_logit with chunk size = 4 and tag = nothing
  ...testing self_weighted_logit with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.self_weighted_logit), Float64}()
  ...testing self_weighted_logit with chunk size = 6 and tag = nothing
  ...testing nested_array_mul with chunk size = 1 and tag = nothing
  ...testing nested_array_mul with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.nested_array_mul), Float64}()
  ...testing nested_array_mul with chunk size = 4 and tag = nothing
  ...testing nested_array_mul with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.nested_array_mul), Float64}()
  ...testing nested_array_mul with chunk size = 6 and tag = nothing
  ...testing nested_array_mul with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.nested_array_mul), Float64}()
  ...testing nested_array_mul with chunk size = 12 and tag = nothing
  ...testing nested_array_mul with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.nested_array_mul), Float64}()
  ...testing nested_array_mul with chunk size = 13 and tag = nothing
  ...testing nested_array_mul with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.nested_array_mul), Float64}()
  ...testing first with chunk size = 1 and tag = nothing
  ...testing first with chunk size = 1 and tag = ForwardDiff.Tag{typeof(first), Float64}()
  ...testing first with chunk size = 4 and tag = nothing
  ...testing first with chunk size = 4 and tag = ForwardDiff.Tag{typeof(first), Float64}()
  ...testing first with chunk size = 6 and tag = nothing
  ...testing first with chunk size = 6 and tag = ForwardDiff.Tag{typeof(first), Float64}()
  ...testing first with chunk size = 12 and tag = nothing
  ...testing first with chunk size = 12 and tag = ForwardDiff.Tag{typeof(first), Float64}()
  ...testing first with chunk size = 13 and tag = nothing
  ...testing first with chunk size = 13 and tag = ForwardDiff.Tag{typeof(first), Float64}()
  ...testing specialized StaticArray codepaths
Test Summary:                     | Pass  Total  Time
exponential function at base zero |    4      4  0.8s
Test Summary:   | Pass  Total  Time
chunk size zero |    2      2  0.4s
Test Summary:                 | Pass  Total  Time
dimension errors for gradient |    3      3  0.5s
Test Summary:   | Pass  Total  Time
ArithmeticStyle |    1      1  0.3s
done (took 57.0764691 seconds).
Testing jacobian functionality...
  ...running hardcoded test with chunk size = 1 and tag = (nothing, nothing)
  ...running hardcoded test with chunk size = 1 and tag = (ForwardDiff.Tag{Main.JacobianTest.var"#3#4", Int64}(), ForwardDiff.Tag{Main.JacobianTest.var"#1#2", Int64}())
  ...running hardcoded test with chunk size = 2 and tag = (nothing, nothing)
  ...running hardcoded test with chunk size = 2 and tag = (ForwardDiff.Tag{Main.JacobianTest.var"#3#4", Int64}(), ForwardDiff.Tag{Main.JacobianTest.var"#1#2", Int64}())
  ...running hardcoded test with chunk size = 3 and tag = (nothing, nothing)
  ...running hardcoded test with chunk size = 3 and tag = (ForwardDiff.Tag{Main.JacobianTest.var"#3#4", Int64}(), ForwardDiff.Tag{Main.JacobianTest.var"#1#2", Int64}())
  ...testing - with chunk size = 1 and tag = nothing
  ...testing - with chunk size = 1 and tag = ForwardDiff.Tag{typeof(-), Float64}()
  ...testing - with chunk size = 4 and tag = nothing
  ...testing - with chunk size = 4 and tag = ForwardDiff.Tag{typeof(-), Float64}()
  ...testing - with chunk size = 6 and tag = nothing
  ...testing - with chunk size = 6 and tag = ForwardDiff.Tag{typeof(-), Float64}()
  ...testing - with chunk size = 12 and tag = nothing
  ...testing - with chunk size = 12 and tag = ForwardDiff.Tag{typeof(-), Float64}()
  ...testing - with chunk size = 13 and tag = nothing
  ...testing - with chunk size = 13 and tag = ForwardDiff.Tag{typeof(-), Float64}()
  ...testing chebyquad with chunk size = 1 and tag = nothing
  ...testing chebyquad with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad), Float64}()
  ...testing chebyquad with chunk size = 4 and tag = nothing
  ...testing chebyquad with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad), Float64}()
  ...testing chebyquad with chunk size = 6 and tag = nothing
  ...testing chebyquad with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad), Float64}()
  ...testing chebyquad with chunk size = 12 and tag = nothing
  ...testing chebyquad with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad), Float64}()
  ...testing chebyquad with chunk size = 13 and tag = nothing
  ...testing chebyquad with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad), Float64}()
  ...testing brown_almost_linear with chunk size = 1 and tag = nothing
  ...testing brown_almost_linear with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear), Float64}()
  ...testing brown_almost_linear with chunk size = 4 and tag = nothing
  ...testing brown_almost_linear with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear), Float64}()
  ...testing brown_almost_linear with chunk size = 6 and tag = nothing
  ...testing brown_almost_linear with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear), Float64}()
  ...testing brown_almost_linear with chunk size = 12 and tag = nothing
  ...testing brown_almost_linear with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear), Float64}()
  ...testing brown_almost_linear with chunk size = 13 and tag = nothing
  ...testing brown_almost_linear with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear), Float64}()
  ...testing trigonometric with chunk size = 1 and tag = nothing
  ...testing trigonometric with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric), Float64}()
  ...testing trigonometric with chunk size = 4 and tag = nothing
  ...testing trigonometric with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric), Float64}()
  ...testing trigonometric with chunk size = 6 and tag = nothing
  ...testing trigonometric with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric), Float64}()
  ...testing trigonometric with chunk size = 12 and tag = nothing
  ...testing trigonometric with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric), Float64}()
  ...testing trigonometric with chunk size = 13 and tag = nothing
  ...testing trigonometric with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric), Float64}()
  ...testing arr2arr_1 with chunk size = 1 and tag = nothing
  ...testing arr2arr_1 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_1), Float64}()
  ...testing arr2arr_1 with chunk size = 4 and tag = nothing
  ...testing arr2arr_1 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_1), Float64}()
  ...testing arr2arr_1 with chunk size = 6 and tag = nothing
  ...testing arr2arr_1 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_1), Float64}()
  ...testing arr2arr_1 with chunk size = 12 and tag = nothing
  ...testing arr2arr_1 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_1), Float64}()
  ...testing arr2arr_1 with chunk size = 13 and tag = nothing
  ...testing arr2arr_1 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_1), Float64}()
  ...testing arr2arr_2 with chunk size = 1 and tag = nothing
  ...testing arr2arr_2 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_2), Float64}()
  ...testing arr2arr_2 with chunk size = 4 and tag = nothing
  ...testing arr2arr_2 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_2), Float64}()
  ...testing arr2arr_2 with chunk size = 6 and tag = nothing
  ...testing arr2arr_2 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_2), Float64}()
  ...testing arr2arr_2 with chunk size = 12 and tag = nothing
  ...testing arr2arr_2 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_2), Float64}()
  ...testing arr2arr_2 with chunk size = 13 and tag = nothing
  ...testing arr2arr_2 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.arr2arr_2), Float64}()
  ...testing mutation_test_1 with chunk size = 1 and tag = nothing
  ...testing mutation_test_1 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1), Float64}()
  ...testing mutation_test_1 with chunk size = 4 and tag = nothing
  ...testing mutation_test_1 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1), Float64}()
  ...testing mutation_test_1 with chunk size = 6 and tag = nothing
  ...testing mutation_test_1 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1), Float64}()
  ...testing mutation_test_1 with chunk size = 12 and tag = nothing
  ...testing mutation_test_1 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1), Float64}()
  ...testing mutation_test_1 with chunk size = 13 and tag = nothing
  ...testing mutation_test_1 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1), Float64}()
  ...testing mutation_test_2 with chunk size = 1 and tag = nothing
  ...testing mutation_test_2 with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2), Float64}()
  ...testing mutation_test_2 with chunk size = 4 and tag = nothing
  ...testing mutation_test_2 with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2), Float64}()
  ...testing mutation_test_2 with chunk size = 6 and tag = nothing
  ...testing mutation_test_2 with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2), Float64}()
  ...testing mutation_test_2 with chunk size = 12 and tag = nothing
  ...testing mutation_test_2 with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2), Float64}()
  ...testing mutation_test_2 with chunk size = 13 and tag = nothing
  ...testing mutation_test_2 with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2), Float64}()
  ...testing identity with chunk size = 1 and tag = nothing
  ...testing identity with chunk size = 1 and tag = ForwardDiff.Tag{typeof(identity), Float64}()
  ...testing identity with chunk size = 4 and tag = nothing
  ...testing identity with chunk size = 4 and tag = ForwardDiff.Tag{typeof(identity), Float64}()
  ...testing identity with chunk size = 6 and tag = nothing
  ...testing identity with chunk size = 6 and tag = ForwardDiff.Tag{typeof(identity), Float64}()
  ...testing identity with chunk size = 12 and tag = nothing
  ...testing identity with chunk size = 12 and tag = ForwardDiff.Tag{typeof(identity), Float64}()
  ...testing identity with chunk size = 13 and tag = nothing
  ...testing identity with chunk size = 13 and tag = ForwardDiff.Tag{typeof(identity), Float64}()
  ...testing chebyquad! with chunk size = 1 and tag = nothing
  ...testing chebyquad! with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad!), Float64}()
  ...testing chebyquad! with chunk size = 4 and tag = nothing
  ...testing chebyquad! with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad!), Float64}()
  ...testing chebyquad! with chunk size = 6 and tag = nothing
  ...testing chebyquad! with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad!), Float64}()
  ...testing chebyquad! with chunk size = 12 and tag = nothing
  ...testing chebyquad! with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad!), Float64}()
  ...testing chebyquad! with chunk size = 13 and tag = nothing
  ...testing chebyquad! with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.chebyquad!), Float64}()
  ...testing brown_almost_linear! with chunk size = 1 and tag = nothing
  ...testing brown_almost_linear! with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear!), Float64}()
  ...testing brown_almost_linear! with chunk size = 4 and tag = nothing
  ...testing brown_almost_linear! with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear!), Float64}()
  ...testing brown_almost_linear! with chunk size = 6 and tag = nothing
  ...testing brown_almost_linear! with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear!), Float64}()
  ...testing brown_almost_linear! with chunk size = 12 and tag = nothing
  ...testing brown_almost_linear! with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear!), Float64}()
  ...testing brown_almost_linear! with chunk size = 13 and tag = nothing
  ...testing brown_almost_linear! with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.brown_almost_linear!), Float64}()
  ...testing trigonometric! with chunk size = 1 and tag = nothing
  ...testing trigonometric! with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric!), Float64}()
  ...testing trigonometric! with chunk size = 4 and tag = nothing
  ...testing trigonometric! with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric!), Float64}()
  ...testing trigonometric! with chunk size = 6 and tag = nothing
  ...testing trigonometric! with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric!), Float64}()
  ...testing trigonometric! with chunk size = 12 and tag = nothing
  ...testing trigonometric! with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric!), Float64}()
  ...testing trigonometric! with chunk size = 13 and tag = nothing
  ...testing trigonometric! with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.trigonometric!), Float64}()
  ...testing mutation_test_1! with chunk size = 1 and tag = nothing
  ...testing mutation_test_1! with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1!), Float64}()
  ...testing mutation_test_1! with chunk size = 4 and tag = nothing
  ...testing mutation_test_1! with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1!), Float64}()
  ...testing mutation_test_1! with chunk size = 6 and tag = nothing
  ...testing mutation_test_1! with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1!), Float64}()
  ...testing mutation_test_1! with chunk size = 12 and tag = nothing
  ...testing mutation_test_1! with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1!), Float64}()
  ...testing mutation_test_1! with chunk size = 13 and tag = nothing
  ...testing mutation_test_1! with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_1!), Float64}()
  ...testing mutation_test_2! with chunk size = 1 and tag = nothing
  ...testing mutation_test_2! with chunk size = 1 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2!), Float64}()
  ...testing mutation_test_2! with chunk size = 4 and tag = nothing
  ...testing mutation_test_2! with chunk size = 4 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2!), Float64}()
  ...testing mutation_test_2! with chunk size = 6 and tag = nothing
  ...testing mutation_test_2! with chunk size = 6 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2!), Float64}()
  ...testing mutation_test_2! with chunk size = 12 and tag = nothing
  ...testing mutation_test_2! with chunk size = 12 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2!), Float64}()
  ...testing mutation_test_2! with chunk size = 13 and tag = nothing
  ...testing mutation_test_2! with chunk size = 13 and tag = ForwardDiff.Tag{typeof(DiffTests.mutation_test_2!), Float64}()
  ...testing specialized StaticArray codepaths
Test Summary:                 | Pass  Total  Time
dimension errors for jacobian |    3      3  0.7s
Test Summary: | Pass  Total  Time
eigen         |    5      5  7.8s
Test Summary:  |Time
type stability | None  0.5s
done (took 65.5133996 seconds).
Testing hessian functionality...
  ...running hardcoded test with chunk size = 1 and tag = nothing
  ...running hardcoded test with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...running hardcoded test with chunk size = 2 and tag = nothing
  ...running hardcoded test with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...running hardcoded test with chunk size = 3 and tag = nothing
  ...running hardcoded test with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_1 with chunk size = 1 and tag = nothing
  ...testing vec2num_1 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_1 with chunk size = 2 and tag = nothing
  ...testing vec2num_1 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_1 with chunk size = 3 and tag = nothing
  ...testing vec2num_1 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_2 with chunk size = 1 and tag = nothing
  ...testing vec2num_2 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_2), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_2 with chunk size = 2 and tag = nothing
  ...testing vec2num_2 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_2), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_2 with chunk size = 3 and tag = nothing
  ...testing vec2num_2 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_2), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_3 with chunk size = 1 and tag = nothing
  ...testing vec2num_3 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_3), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_3 with chunk size = 2 and tag = nothing
  ...testing vec2num_3 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_3), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_3 with chunk size = 3 and tag = nothing
  ...testing vec2num_3 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_3), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_4 with chunk size = 1 and tag = nothing
  ...testing vec2num_4 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_4), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_4 with chunk size = 2 and tag = nothing
  ...testing vec2num_4 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_4), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_4 with chunk size = 3 and tag = nothing
  ...testing vec2num_4 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_4), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_5 with chunk size = 1 and tag = nothing
  ...testing vec2num_5 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_5), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_5 with chunk size = 2 and tag = nothing
  ...testing vec2num_5 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_5), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_5 with chunk size = 3 and tag = nothing
  ...testing vec2num_5 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_5), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_6 with chunk size = 1 and tag = nothing
  ...testing vec2num_6 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_6), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_6 with chunk size = 2 and tag = nothing
  ...testing vec2num_6 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_6), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_6 with chunk size = 3 and tag = nothing
  ...testing vec2num_6 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_6), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_7 with chunk size = 1 and tag = nothing
  ...testing vec2num_7 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_7), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_7 with chunk size = 2 and tag = nothing
  ...testing vec2num_7 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_7), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing vec2num_7 with chunk size = 3 and tag = nothing
  ...testing vec2num_7 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.vec2num_7), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_1 with chunk size = 1 and tag = nothing
  ...testing rosenbrock_1 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_1 with chunk size = 2 and tag = nothing
  ...testing rosenbrock_1 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_1 with chunk size = 3 and tag = nothing
  ...testing rosenbrock_1 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_1), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_2 with chunk size = 1 and tag = nothing
  ...testing rosenbrock_2 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_2), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_2 with chunk size = 2 and tag = nothing
  ...testing rosenbrock_2 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_2), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_2 with chunk size = 3 and tag = nothing
  ...testing rosenbrock_2 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_2), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_3 with chunk size = 1 and tag = nothing
  ...testing rosenbrock_3 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_3), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_3 with chunk size = 2 and tag = nothing
  ...testing rosenbrock_3 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_3), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_3 with chunk size = 3 and tag = nothing
  ...testing rosenbrock_3 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_3), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_4 with chunk size = 1 and tag = nothing
  ...testing rosenbrock_4 with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_4), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_4 with chunk size = 2 and tag = nothing
  ...testing rosenbrock_4 with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_4), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing rosenbrock_4 with chunk size = 3 and tag = nothing
  ...testing rosenbrock_4 with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.rosenbrock_4), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing ackley with chunk size = 1 and tag = nothing
  ...testing ackley with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.ackley), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing ackley with chunk size = 2 and tag = nothing
  ...testing ackley with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.ackley), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing ackley with chunk size = 3 and tag = nothing
  ...testing ackley with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.ackley), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing self_weighted_logit with chunk size = 1 and tag = nothing
  ...testing self_weighted_logit with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.self_weighted_logit), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing self_weighted_logit with chunk size = 2 and tag = nothing
  ...testing self_weighted_logit with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.self_weighted_logit), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing self_weighted_logit with chunk size = 3 and tag = nothing
  ...testing self_weighted_logit with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.self_weighted_logit), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing nested_array_mul with chunk size = 1 and tag = nothing
  ...testing nested_array_mul with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.nested_array_mul), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing nested_array_mul with chunk size = 2 and tag = nothing
  ...testing nested_array_mul with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.nested_array_mul), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing nested_array_mul with chunk size = 3 and tag = nothing
  ...testing nested_array_mul with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(DiffTests.nested_array_mul), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing first with chunk size = 1 and tag = nothing
  ...testing first with chunk size = 1 and tag = ForwardDiff.Tag{Tuple{typeof(first), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing first with chunk size = 2 and tag = nothing
  ...testing first with chunk size = 2 and tag = ForwardDiff.Tag{Tuple{typeof(first), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing first with chunk size = 3 and tag = nothing
  ...testing first with chunk size = 3 and tag = ForwardDiff.Tag{Tuple{typeof(first), typeof(ForwardDiff.gradient)}, Float64}()
  ...testing specialized StaticArray codepaths
done (took 120.1019734 seconds).
Testing perturbation confusion functionality...
done (took 8.7235107 seconds).
Testing miscellaneous functionality...
done (took 22.6684438 seconds).
Testing allocations...
Test Summary:          | Pass  Total  Time
Test seed! allocations |    5      5  0.0s
done (took 0.1434551 seconds).
     Testing ForwardDiff tests passed

The failure here on nightly is the same as on the current release branch (#627), so it's a nightly-only issue and not on the v1.9-beta3, so merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants