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

Make interface generic, Drop StaticArrays as hard dependency #68

Merged
merged 3 commits into from
Mar 24, 2022

Conversation

sjkelly
Copy link
Member

@sjkelly sjkelly commented Mar 18, 2022

This package really doesn't need StaticArrays for functionality. By removing it we greatly improve load times and also make the interface more generic, allowing arbitrary support for any StaticVector-like constructor.

before:

julia> @time using Contour
  0.842599 seconds (2.50 M allocations: 187.757 MiB, 0.37% compilation time)

after:

julia> @time using Contour
  0.020156 seconds (2.95 k allocations: 271.500 KiB, 31.36% compilation time)`

Coupled with and this and JuliaGeometry/GeometryBasics.jl#169 , we make loading Plots almost 10% faster:

before: 
julia> @time using Plots
  5.908080 seconds (8.87 M allocations: 655.109 MiB, 7.27% gc time, 25.84% compilation time)


julia> @time using Plots
  5.541558 seconds (8.62 M allocations: 618.985 MiB, 6.66% gc time, 22.87% compilation time)

@sjkelly
Copy link
Member Author

sjkelly commented Mar 24, 2022

I am not 100% this is the API we want yet, but it is a step in the right direction for a point release.

@sjkelly sjkelly merged commit 4e69168 into master Mar 24, 2022
@sjkelly sjkelly deleted the sjk/no_sarray1 branch March 24, 2022 01:25
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.

1 participant