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

Dependencies #74

Closed
t-bltg opened this issue Sep 13, 2022 · 1 comment
Closed

Dependencies #74

t-bltg opened this issue Sep 13, 2022 · 1 comment

Comments

@t-bltg
Copy link
Contributor

t-bltg commented Sep 13, 2022

Consider the following dependency tree:

julia> using PkgDependency
julia> PkgDependency.tree("FreeTypeAbstraction")
dependency tree
 FreeTypeAbstraction v0.10.0                                        
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                       
              │                                                     
              ├── FreeType v4.0.0                                   
              │   ├── CEnum v0.4.2                                  
              │   └── FreeType2_jll v2.10.4+0                       
              │       ├── JLLWrappers v1.4.1                        
              │       │   └── Preferences v1.3.0                    
              │       │       └── TOML v1.0.0                       
              │       ├── Pkg v1.8.0                                
              │       │   ├── Downloads v1.6.0                      
              │       │   │   ├── LibCURL v0.6.3                    
              │       │   │   │   ├── MozillaCACerts_jll v2022.2.1  
              │       │   │   │   └── LibCURL_jll v7.84.0+0         
              │       │   │   │       ├── LibSSH2_jll v1.10.2+0     
              │       │   │   │       │   └── MbedTLS_jll v2.28.0+0 
              │       │   │   │       ├── MbedTLS_jll v2.28.0+0 (*) 
              │       │   │   │       ├── nghttp2_jll v1.48.0+0     
              │       │   │   │       └── Zlib_jll v1.2.12+3        
              │       │   │   ├── NetworkOptions v1.2.0             
              │       │   │   └── ArgTools v1.1.1                   
              │       │   ├── Tar v1.10.0                           
              │       │   │   ├── SHA v0.7.0                        
              │       │   │   └── ArgTools v1.1.1 (*)               
              │       │   ├── SHA v0.7.0 (*)                        
              │       │   ├── p7zip_jll v17.4.0+0                   
              │       │   └── TOML v1.0.0 (*)                       
              │       ├── Bzip2_jll v1.0.8+0                        
              │       │   ├── JLLWrappers v1.4.1 (*)                
              │       │   └── Pkg v1.8.0 (*)                        
              │       └── Zlib_jll v1.2.12+3 (*)                    
              ├── ColorVectorSpace v0.9.9                           
              │   ├── ColorTypes v0.11.4                            
              │   │   └── FixedPointNumbers v0.8.4                  
              │   ├── TensorCore v0.1.1                             
              │   ├── SpecialFunctions v2.1.7                       
              │   │   ├── IrrationalConstants v0.1.1                
              │   │   ├── ChainRulesCore v1.15.5                    
              │   │   │   └── Compat v3.46.0                        
              │   │   │       ├── Pkg v1.8.0 (*)                    
              │   │   │       └── SHA v0.7.0 (*)                    
              │   │   ├── LogExpFunctions v0.3.18                   
              │   │   │   ├── IrrationalConstants v0.1.1 (*)        
              │   │   │   ├── ChainRulesCore v1.15.5 (*)            
              │   │   │   ├── ChangesOfVariables v0.1.4             
              │   │   │   │   └── ChainRulesCore v1.15.5 (*)        
              │   │   │   ├── DocStringExtensions v0.8.6            
              │   │   │   └── InverseFunctions v0.1.7               
              │   │   ├── OpenLibm_jll v0.8.1+0                     
              │   │   └── OpenSpecFun_jll v0.5.5+0                  
              │   │       ├── JLLWrappers v1.4.1 (*)                
              │   │       ├── Pkg v1.8.0 (*)                        
              │   │       └── CompilerSupportLibraries_jll v0.5.2+0 
              │   └── FixedPointNumbers v0.8.4 (*)                  
              ├── Colors v0.12.8                                    
              │   ├── ColorTypes v0.11.4 (*)                        
              │   ├── Reexport v1.2.2                               
              │   └── FixedPointNumbers v0.8.4 (*)                  
              └── GeometryBasics v0.4.3                             
                  ├── IterTools v1.4.0                              
                  ├── StaticArrays v1.5.6                           
                  │   └── StaticArraysCore v1.3.0                   
                  ├── Tables v1.7.0                                 
                  │   ├── DataAPI v1.10.0                           
                  │   ├── OrderedCollections v1.4.1                 
                  │   ├── IteratorInterfaceExtensions v1.0.0        
                  │   ├── DataValueInterfaces v1.0.0                
                  │   └── TableTraits v1.0.1                        
                  │       └── IteratorInterfaceExtensions v1.0.0 (*)
                  ├── EarCut_jll v2.2.3+0                           
                  │   ├── JLLWrappers v1.4.1 (*)                    
                  │   └── Pkg v1.8.0 (*)                            
                  ├── StructArrays v0.6.12                          
                  │   ├── DataAPI v1.10.0 (*)                       
                  │   ├── StaticArraysCore v1.3.0 (*)               
                  │   ├── Tables v1.7.0 (*)                         
                  │   └── Adapt v3.4.0                              
                  └── GeoInterface v1.0.1                           
                      └── Extents v0.1.1                            

From the previous tree, a consequent dependency is GeometryBasics (with induced artifacts e.g. EarCut_jll, Tables, StructArrays, ...), which seems an overkill for the usage of a few Vec, Vec2f, Rect2f in FreeTypeAbstraction.

Would you consider a PR in order to remove the GeometryBasics dependency here, or as an alternative splitting GeometryBasics into a low dependencies GeometryBasicsCore (or GeometryBasicsTypes) and the full GeometryBasics ?

Xref JuliaPlots/UnicodePlots.jl#291.

@jkrumbiegel
Copy link
Collaborator

Sounds good to me, core packages seem to be all the rage lately.. I wonder if ColorVectorSpaces is necessary as well, it might be used for some convenience with render functions but that cannot be a lot of code.

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 a pull request may close this issue.

2 participants