erdc / proteus

A computational methods and simulation toolkit
http://proteustoolkit.org
MIT License
88 stars 56 forks source link

New update stack2 #1246

Closed cekees closed 3 years ago

cekees commented 3 years ago

Mandatory Checklist

Please ensure that the following criteria are met:

As a general rule of thumb, try to follow PEP8 guidelines.

Description

This is a major infrastructure update, but it doesn't change any frequently used functionality in Proteus proper. The coverage is going to show up as reduced, but too much non-proteus package code was getting included in the coverage computation. Moving forward we should be able to focus on increasing the coverage on the package itself and further removing unused code and dependencies as well as tests that are being skipped on any platforms.

codecov[bot] commented 3 years ago

Codecov Report

Merging #1246 (ff261e1) into main (64d5e85) will decrease coverage by 5.26%. The diff coverage is 42.85%.

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #1246      +/-   ##
==========================================
- Coverage   52.82%   47.55%   -5.27%     
==========================================
  Files         531       90     -441     
  Lines      109802    71766   -38036     
==========================================
- Hits        58004    34130   -23874     
+ Misses      51798    37636   -14162     
Impacted Files Coverage Δ
proteus/Archiver.py 36.18% <ø> (+4.54%) :arrow_up:
proteus/__init__.py 26.08% <ø> (ø)
proteus/MeshTools.py 55.83% <36.11%> (+0.55%) :arrow_up:
proteus/FemTools.py 38.10% <60.00%> (+0.07%) :arrow_up:
proteus/Quadrature.py 97.71% <100.00%> (+<0.01%) :arrow_up:
proteus/TwoPhaseFlow/utils/Parameters.py 88.82% <0.00%> (-0.24%) :arrow_down:
proteus/tests/CLSVOF/with_RANS3PF/clsvof_p.py
proteus/tests/CLSVOF/with_RANS3PF/ls_consrv_n.py
proteus/tests/levelset/vortex2D/vortex2D.py
...eus/tests/levelset/vortex/ls_consrv_vortex_3d_n.py
... and 432 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 64d5e85...ff261e1. Read the comment docs.

cekees commented 3 years ago

@adimako one thing I found that would be a small job to increased portability and remove dependencies would be to remove the curses.h code in the Fenton library. It's not a big deal if the interactive, text-based selection of Fenton theory parameters is useful (though in the long run it might be easier to reimplement that interface code using python and leave the C++ just for the computations.

cekees commented 3 years ago

@ejtovar LFS is working fine for me on both mac os x and linux. I did have some headaches getting all the files properly out of git and into LFS with the proper gitattributes set. I decided that we're never going to be free of binary and large data files for testing, so I'd rather just consistently use LFS than keep those file types in the repository. If you need to add csv, npy, bin, etc. Just do git lfs track filename before your do git lfs add. Or if you accidently add something, do git rm --cached filename; git commit; before adding it back properly.