Skip to content

[EUCLIDPCR-2075] update get_product_list get_scientific_product_list …#3599

Draft
Enriquerzrz wants to merge 7 commits into
astropy:mainfrom
esdc-esac-esa-int:ESA_euclid-EUCLIDPCR-2075-update-get_product_list-get_scientific_product_list-get_tile_catalogue_list-methods
Draft

[EUCLIDPCR-2075] update get_product_list get_scientific_product_list …#3599
Enriquerzrz wants to merge 7 commits into
astropy:mainfrom
esdc-esac-esa-int:ESA_euclid-EUCLIDPCR-2075-update-get_product_list-get_scientific_product_list-get_tile_catalogue_list-methods

Conversation

@Enriquerzrz

Copy link
Copy Markdown
Contributor
  • On Euclid removed unnecessary CAST(... AS text) from array columns in get_product_list, get_scientific_product_list and __get_tile_catalogue_list, as TAP 10.x now returns proper arrays.

Jira: EUCLIDPCR-2075
CC: @esdc-esac-esa-int

…get_tile_catalogue_list methods for TAP 10 array handling
@codecov

codecov Bot commented May 26, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.18%. Comparing base (de661e4) to head (45928dc).
⚠️ Report is 25 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3599      +/-   ##
==========================================
- Coverage   73.21%   73.18%   -0.03%     
==========================================
  Files         226      226              
  Lines       21053    21030      -23     
==========================================
- Hits        15414    15391      -23     
  Misses       5639     5639              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@bsipocz bsipocz added this to the 0.4.12 milestone May 28, 2026

@bsipocz bsipocz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are now some actual conflicts after #3601 got merged. Could you please rebase and resolve the conflict?

dependabot Bot and others added 5 commits June 8, 2026 11:28
Bumps the actions group with 2 updates: [actions/checkout](https://github.com/actions/checkout) and [codecov/codecov-action](https://github.com/codecov/codecov-action).


Updates `actions/checkout` from 6.0.2 to 6.0.3
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@de0fac2...df4cb1c)

Updates `codecov/codecov-action` from 6.0.0 to 6.0.1
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](codecov/codecov-action@57e3a13...e79a696)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
- dependency-name: codecov/codecov-action
  dependency-version: 6.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
…_list-get_scientific_product_list-get_tile_catalogue_list-methods
@Enriquerzrz Enriquerzrz marked this pull request as draft June 8, 2026 10:58
@Enriquerzrz

Copy link
Copy Markdown
Contributor Author

Hello,

We have been investigating this issue and ran the following test:

@pytest.mark.remote_data
def test():
from astroquery.esa.euclid import conf, Euclid, EuclidClass

conf.ENVIRONMENTS['DEV'] = {'url_server': 'https://easdev.esac.esa.int/', 'main_table': 'catalogue.mer_catalogue',
                            'main_table_ra_column': 'right_ascension', 'main_table_dec_column': 'declination',
                            'data_set_release_part1': 'data_set_release_part1',
                            'data_set_release_part2': 'data_set_release_part2',
                            'data_set_release_part3': 'data_set_release_part3'}

euclid = EuclidClass(environment='DEV', verbose=True)

euclid.login(user='xxxxxxxx', password='xxxxxxxxxxx)

euclid.get_product_list(observation_id='2373', product_type='dpdMerFinalCatalog')

When executing it, we get the following error:

FAILED tests/test_euclid_remote.py::test - 
astropy.io.votable.exceptions.E01: None:?:?: E01: Invalid size specifier '100x' 
for a char field (in field 'file_name_list')

From our analysis (with @cosmoJFH ), this seems to be related to how astropy handles arrays of strings when generating VOTables. It looks like a potential bug or limitation in the library rather than an issue in our implementation.

Given this, we think it would be safer not to merge these changes yet until we better understand the root cause.

For that reason, we are marking this PR as Draft to block the merge for now.

@bsipocz , do you have any insight into this?

Thanks!

@bsipocz

bsipocz commented Jun 8, 2026

Copy link
Copy Markdown
Member

@Enriquerzrz - is this a new test you try to add? I don't see any related failures when running the remote tests locally.

That being said, something gone wrong with the rebase, unrelated commits are now picked up as well as there is a merge commit. I'm happy to rebase and then merge though, let me know the answer about the test

bsipocz
bsipocz previously approved these changes Jun 8, 2026

@bsipocz bsipocz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The diff looks good, tests pass for me when I run them locally, but let's hold up until we see if the traceback mentioned in the comment is coming from an old test or something not yet committed.

Comment thread CHANGES.rst
Comment on lines +67 to +68
- Removed unnecessary CAST(... AS text) from array columns in ``get_product_list``and
``__get_tile_catalogue_list``, as TAP 10.x now returns proper arrays. [#3599]

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is all enternal cleanup, so it doesn't need the changelog. I'll clean up the changelog file before release.

@Enriquerzrz

Copy link
Copy Markdown
Contributor Author

Hello @bsipocz

The test included in the comment has not been merged. It is a local test that we added afterwards when my colleague identified the issue, but it is not part of the branch.

@bsipocz

bsipocz commented Jun 8, 2026

Copy link
Copy Markdown
Member

To me it looks like that the response for this query is empty. So maybe that case needs to be covered in the code?

@bsipocz bsipocz dismissed their stale review June 8, 2026 12:43

The regression is an uncommitted test, so let's see it fixed before merging this.

@cosmoJFH

cosmoJFH commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

We carried out the following test. First, we saved the VOTable obtained using the get_product_list method: (
7a9ab7cd-63eb-11f1-921d-1423f21597f1-TDEV-result.zip
). We then tried to open the votable in order to reproduce the error:

    from astropy.table import Table

    file_path = '7a9ab7cd-63eb-11f1-921d-1423f21597f1-TDEV-result.vot'

    try:
        print()
        print('*'*120)
        table = Table.read(file_path, format="votable")
        print(table)
        print(table.colnames)
        print('*'*120)
        print()

    except Exception as e:
        print(e)


7a9ab7cd-63eb-11f1-921d-1423f21597f1-TDEV-result.vot:?:?: E01: Invalid size specifier '100x' for a char field (in field 'file_name_list')

The error is described in https://docs.astropy.org/en/latest/io/votable/api_exceptions.html#e01-invalid-size-specifier-x-for-a-char-unicode-field-in-field-y

Also see astropy/astropy#17098

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants