Skip to content

New Logs/Plots when B files generation - #41

Open
CKermabon wants to merge 6 commits into
mainfrom
cmp_with_locodox_matlab_and_modify_to_use_GMPlots_GMLogs
Open

CKermabon wants to merge 6 commits into
mainfrom
cmp_with_locodox_matlab_and_modify_to_use_GMPlots_GMLogs

Conversation

@CKermabon

@CKermabon CKermabon commented Sep 15, 2026 •

Copy link
Copy Markdown
Collaborator

Branch to compare with locodox_Matlab and modify BcorrFiles generation to add logs and plots/figures by using GM's strategy for logs/plots
In this PR, we also modified the code to process float without InWater Data (like WMO 7902279)
and we modified facade.py for the plot Sprof vs Rtraj In-Air and In-Water T/S data.

@codecov

codecov Bot commented Sep 15, 2026 •

Copy link
Copy Markdown

❌ 1 Tests Failed:

Tests completed Failed Passed Skipped
55 1 54 1
View the full list of 1 ❄️ flaky test(s)
test_config.py::TestResetParams::test_All

Flake rate in main: 100.00% (Passed 0 times, Failed 1 times)

Stack Traces | 0.021s run time
self = <pydox.tests.test_config.TestResetParams object at 0x7fbceafa1a10>
base_config = {'argo': {'qcflags': {'doxy': [1, 2, 8, 3], 'pres': [1, 2, 8], 'psal': [1, 2, 8], 'temp': [1, 2, 8]}, 'src': 'http://world'}, 'name': 'My dummy configuration', 'version': '0.1'}

    def test_All(self, base_config):
        """Test reset to ALL values from reference settings"""
        # Modify the base config:
        x = base_config.copy()
        set_params("name", "Hello World", config=x)
>       set_params("argo.src", "http://world", config=x)

pydox/tests/test_config.py:369: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
pydox/_config/config.py:514: in set_params
    ar.set_options(gdac=value)
../../...../pydox-dev/lib/python3.11............/site-packages/argopy/options.py:276: in __init__
    VALIDATE(k, v)
../../...../pydox-dev/lib/python3.11............/site-packages/argopy/options.py:146: in VALIDATE
    if not _VALIDATORS[key](val):
           ^^^^^^^^^^^^^^^^^^^^^
../../...../pydox-dev/lib/python3.11............/site-packages/argopy/options.py:90: in validate_gdac
    return check_gdac_option(this_path, errors="raise")
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

path = 'http://world', errors = 'raise', ignore_knowns = True

    def check_gdac_option(
        path, errors: str = "ignore", ignore_knowns: bool = True
    ):  # noqa: C901
        """Check if a path has the expected GDAC structure
    
        Expected GDAC structure::
    
            .
            └── dac
                ├── aoml
                ├── ...
                ├── coriolis
                ├── ...
                ├── meds
                └── nmdis
    
        Examples::
    
        >>> check_gdac_path("https://data-argo.ifremer.fr")  # True
        >>> check_gdac_path("https://usgodae..../pub/outgoing/argo") # True
        >>> check_gdac_path("ftp://ftp.ifremer.fr/ifremer/argo") # True
        >>> check_gdac_path(".../home/ref-argo/gdac") # True
        >>> check_gdac_path("s3:.../argo-gdac-sandbox/pub") # True
    
        >>> check_gdac_path("https://www.ifremer.fr") # False
        >>> check_gdac_path("ftp://usgodae.org/pub/outgoing") # False
    
        Parameters
        ----------
        path: str
            Path name to check, including access protocol
        errors: str, default="ignore"
            Determine how check procedure error are handled: "ignore", "raise" or "warn"
        ignore_knowns: bool, default=False
            Should the checking procedure be by-passed for the internal list of known GDACs.
            Set this to True to check if a known GDACs is connected or not.
    
        Returns
        -------
        checked: boolean
    
        See also
        --------
        :class:`argopy.stores.gdacfs`, :meth:`argopy.utils.list_gdac_servers`
    
        """
        from .utils import (
            list_gdac_servers,
        )  # import here, otherwise raises circular import
    
        if path in list_gdac_servers() and ignore_knowns:
            return True
        else:
    
            from .stores import gdacfs  # import here, otherwise raises circular import
    
            try:
                fs = gdacfs(path)
            except GdacPathError:
                if errors == "raise":
                    raise
                elif errors == "warn":
                    warnings.warn("Can't get address info (GAIerror) on '%s'" % path)
                    return False
                else:
                    return False
    
            check1 = fs.exists("dac")
            if check1:
                return True
    
            elif errors == "raise":
>               raise GdacPathError(
                    "This path is not GDAC compliant (no legitimate sub-folder `dac`):\n%s"
                    % path
                )
E               argopy.errors.GdacPathError: This path is not GDAC compliant (no legitimate sub-folder `dac`):
E               http://world

../../...../pydox-dev/lib/python3.11............/site-packages/argopy/options.py:384: GdacPathError

To view more test analytics, go to the Test Analytics Dashboard
📋 Got 3 mins? Take this short survey to help us improve Test Analytics.

@read-the-docs-community

read-the-docs-community Bot commented Sep 15, 2026 •

Copy link
Copy Markdown

Documentation build overview

📚 pydox | 🛠️ Build #35018980 | 📁 Comparing 5d32dbf against latest (757bd56)

  🔍 Preview build  

2 files changed
± generated/pydox.params.html
± _modules/pydox/calibration/spec.html

The ax parameters were not defined at the good place (The Y-axis was not inverted when there was an even number of files to generate).We reindented.
…279)

For this float (7902279), the DOXY exists only for N_PROF=3
@CKermabon
CKermabon requested a review from gmaze October 8, 2026 14:40
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 this pull request may close these issues.

1 participant