PSyclone icon indicating copy to clipboard operation
PSyclone copied to clipboard

1990 handle imported variable in kernel extraction

Open hiker opened this issue 1 year ago • 8 comments

Fixes #1990

hiker avatar Aug 08 '23 12:08 hiker

Codecov Report

Attention: 1 lines in your changes are missing coverage. Please review.

Comparison is base (ac2d03a) 99.85% compared to head (08e1f55) 99.85%.

Files Patch % Lines
...clone/domain/lfric/lfric_extract_driver_creator.py 98.43% 1 Missing :warning:
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2252      +/-   ##
==========================================
- Coverage   99.85%   99.85%   -0.01%     
==========================================
  Files         354      354              
  Lines       47763    47856      +93     
==========================================
+ Hits        47694    47786      +92     
- Misses         69       70       +1     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov[bot] avatar Aug 08 '23 12:08 codecov[bot]

While we all agree that PSyclone should abort when it is trying to write a private variable to a file which it can't access (so the modified psy-layer will not compile), this affects the extraction, not the driver.

Instead I've added this to #2120 (handling errors in kernel extraction), and will handle this either as part of this or even as a stand-alone PR later.

Otherwise this PR has 'organically' grown anyway (since detecting module variables affect various parts - module manager, variable access, extraction, driver), but none of these parts makes really sense stand alone (e.g. we could add RoutineInfo as a separate PR, but then we would have no code except tests to actually use it etc). I am happy to try to split if if the reviewer prefers.

hiker avatar Aug 17 '23 09:08 hiker

It looks as though the extension to VariablesAccessInfo could be done as a separate PR, is that possible? I'm quite happy for PRs to add code that is, initially, only exercised by the test suite. Anything to make reviewing easier :-)

arporter avatar Aug 25 '23 08:08 arporter

Yes, will do, and sorry, I forgot to reset the state to 'in progress' after the telco. Similarly there is the introduction of the routine_info, which I hope to get into a separate PR.

hiker avatar Aug 25 '23 12:08 hiker

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 99.86%. Comparing base (7c51abc) to head (8e85eac).

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #2252   +/-   ##
=======================================
  Coverage   99.86%   99.86%           
=======================================
  Files         357      357           
  Lines       48339    48427   +88     
=======================================
+ Hits        48273    48364   +91     
+ Misses         66       63    -3     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov-commenter avatar Apr 02 '24 00:04 codecov-commenter

I got an email saying that one line is missed by coverage, but the link then shows full coverage (and the codecov isn't updated here). So I am confused, and believe it's ready for a first look

hiker avatar Apr 02 '24 10:04 hiker

I've also triggered the CI earlier. Ready for next review.

hiker avatar Apr 09 '24 13:04 hiker

My apologies for first discussing the need to remove private/protected - given the progress I've made with FAB, I've decided to just not include this anymore, so I hope a major concern for you is gone :) I've also updated the documentation correspondingly.

I am triggering CI now, then it should be ready for next review.

hiker avatar May 09 '24 05:05 hiker

Integration tests were green.

arporter avatar May 13 '24 19:05 arporter