EarthCubeInGeo / citationhelper

Utility for determining all packages imported in a project to cite software properly.
GNU General Public License v3.0
2 stars 0 forks source link

Clean up citation report #5

Closed ljlamarche closed 3 years ago

ljlamarche commented 4 years ago

The current output of citehelp a list of text. It would be better if this report was formatted cleanly in some way, possibly with the actual citations clearly separated from package list. It also might be helpful if packages imported from installed distributions are differentiated from packages that are just imported from the users' (or other people's) scripts.

ljlamarche commented 3 years ago

Commit fd2b005d9caec71245af0932052749d08afafac0 implements functionality to distinguish packages that have been installed in the environment from "custom" imports, which are likely to be utility scripts created by the user and probably don't need to be cited. The list of installed packages is found with importlib.find_loader which seems to work for both built-in packages and libraries, as well installed packages. There seem to be a lot of different ways to approach this, so it may need to be reevaluated in the future.

ljlamarche commented 3 years ago

Commit dee54179792fbf5cddddf7fcc0e094ba0794a9c9 improves how the report of imported packages is printed to the screen. Instead of a single list of packages with citations intermixed, it now prints two columns, one for installed packages and another for other imported modules. Full citations are in a separate section, which is cleaner.


The following items were imported in *.py and *.ipynb scripts.  Where known, the recommended citation is given.

Installed Packages       Other Imports            
==================       =============            
aacgmv2                  Pysolar                  
apexpy                   TLE_propagate            
cartopy                  constants                
codecs                   coord_convert            
copy                     dbmodels                 
ctypes                   geolib                   
datetime                 geomag                   
glob                     geomag_param             
math                     io_utils                 
matplotlib               new_geomag               
mpl_toolkits             py_utils                 
numpy                                             
os                                                
pyglow                                            
pymap3d                                           
random                                            
re                                                
requests                                          
scipy                                             
sgp4                                              
shutil                                            
spacetrack                                        
sqlalchemy                                        
subprocess                                        
sys                                               
tables                                            
time                                              

Full Citations
==============
Shepherd, S. G. (2014), Altitude‐adjusted corrected geomagnetic coordinates: Definition and functional approximations, Journal of Geophysical Research: Space Physics, 119, 7501–7521, doi:10.1002/2014JA020264.
Cartopy. v0.11.2. 22-Aug-2014. Met Office. Exeter, Devon, UK. https://github.com/SciTools/cartopy/archive/v0.11.2.tar.gz
J. D. Hunter, 'Matplotlib: A 2D Graphics Environment', Computing in Science & Engineering, vol. 9, no. 3, pp. 90-95, 2007.
Stéfan van der Walt, S. Chris Colbert and Gaël Varoquaux. The NumPy Array: A Structure for Efficient Numerical Computation, Computing in Science & Engineering, 13, 22-30 (2011), DOI:10.1109/MCSE.2011.37

Disclaimer: The citehelp utility is intended only to make it easier to keep track of what packages are being used for citation purposes.  The list provided may not be comprehensive, so users are STRONGLY encourage to review it and make sure all software used is given proper credit.
``
ljlamarche commented 3 years ago

Closing this issue for now. Some more work could be done to improve the full citations, in particular incorporating bibtex formatted citation blocks, but this can be discussed under #3.