Difference between revisions of "UCVM Release Planning"

From SCECpedia
Jump to navigationJump to search
 
(3 intermediate revisions by the same user not shown)
Line 7: Line 7:
 
**[UCVM Plotting READM.md]
 
**[UCVM Plotting READM.md]
  
 
+
== Citable Code ==
 +
*[https://guides.lib.berkeley.edu/citeyourcode Make UCVM Citable]
  
 
== UCVM Tests Organization ==
 
== UCVM Tests Organization ==
Line 20: Line 21:
  
 
== ToDo ==
 
== ToDo ==
* Move the run_ucvm.sh and run_ucvm_query.sh script to utilities
+
 
 
* Document the scripts in ucvm/utilities
 
* Document the scripts in ucvm/utilities
 
* Update the version numbers from 21.7 in get_largefiles.py and check_large_files.py
 
* Update the version numbers from 21.7 in get_largefiles.py and check_large_files.py
Line 31: Line 32:
  
 
== Key UCVM Improvements in 21.10 release: ==
 
== Key UCVM Improvements in 21.10 release: ==
 +
* Move the run_ucvm.sh and run_ucvm_query.sh script to utilities
 
*Convergence of versions
 
*Convergence of versions
 
** Used updated version used UCVM website
 
** Used updated version used UCVM website
Line 66: Line 68:
 
* Test with both Docker and singularity on an XSEDE system
 
* Test with both Docker and singularity on an XSEDE system
 
* Code coverage statements
 
* Code coverage statements
 
== Standard Contents of Git repo: ==
 
#A README with pictures/gifs of the product in action and a nice logo.
 
#Documentation.
 
#Code QA (Static Code Analysis).
 
#Contributing instructions.
 
#A well-defined setup section.
 
#Support (Respond to Issues/PR)
 
#Publish software news in every possible way.
 
 
== Contents of README.md ==
 
Recommended README.md template:
 
  
 
== UCVM Versus CIG Standards: ==
 
== UCVM Versus CIG Standards: ==

Latest revision as of 02:22, 4 November 2021

Updated UCVM Documentation

Citable Code

UCVM Tests Organization

A set of C language tests are defined as Unittests:

UCVM Programs found in the ucvm source code directory contains numerous example programs that are not included in the ucvm_bin installation directory. A list of programs in the UCVM Source directory is given here:

UCVM Plotting routines have been moved into a separate repo. Information on the plotting routines.

ToDo

  • Document the scripts in ucvm/utilities
  • Update the version numbers from 21.7 in get_largefiles.py and check_large_files.py
  • fix version in setup.list
  • confirm that models are correctly un-commented in ucvm.conf file (seems like cvm-H and others were not enabled)
  • Check references to proj-4 in documentation and code error messages and update if necessary to proj-5
  • Check ucvm/tests/Makefile.am setting, but never using, AM_CFLAGS
  • change, or explain to users, two different ucvm.conf in the system


Key UCVM Improvements in 21.10 release:

  • Move the run_ucvm.sh and run_ucvm_query.sh script to utilities
  • Convergence of versions
    • Used updated version used UCVM website
    • Combined source codebase web version and distributed version/command line version
    • reduce number of UCVM versions that we need to maintain
  • Large files next release stored on S3
    • Should improve download speed and reliability of install
  • CI setup
    • Review the CI for sceccode/ucvm before release
  • Documentation Updated into new structure
    • Re-organized to match recommended types of docs
  • Tests updated
    • combined c-language tests into unittest.
  • Code Metadata included in repo
    • added metadata to repo
  • Used Tags from USGS Thesarus for metadata
  • Post DOI badge on UCVM
  • UCVM Community developments encouraged
    • Add Code of Conduct document into repo
    • Added "contributor instructions" into README.md
  • Open Source Metrics setup (registered users, downloads, tags, visits)
  • Identification of sub-licenses in distribution
  • Velocity models stored in standalone repositories
  • Authorship contributions noted
  • add cv
  • add iv
  • add albacore
  • add utah wasatch front
  • projection code fix
  • Install using Dockerhub
  • Review issues that were done.
  • Added UCVM Website data plotting tools

TBD

  • Test with both Docker and singularity on an XSEDE system
  • Code coverage statements

UCVM Versus CIG Standards:

Minimum:

  • Version control – ok
  • Code – ok
  • Portable – ok
  • Testing – (a) tests that verify it runs properly (b) accuracy or benchmark tests
  • Documentation – (a) install (b) parameters (c) physics (d) example inputs cookbooks (e) citable pub
  • Userworkflow – ok

Standard:

  • Version control -ok
  • Coding – (a) params at runtime (b) development plan (c) code comments (d) add features without modify main branch (e) useful error reports
  • Portability: (a) dependency cheking (b) automake (c) output configuration and build options
  • Testing – pass fail tests
  • Documentation: (a) workflow for research (b) how to extend code
  • Userworkflow: (a) easy to change sim params (b) user specific directories/filenames for i/o (c) standard binary formats (d) citation for code version.