Skip to content

Conversation

@bhass-neon
Copy link
Collaborator

Fixes to address issues raised in #20 + update validate_year function to set valid dates from 2012 to the current year, as per a PyOpenSci suggestion. Major updates include:

  • include download of tiled lidar classified point cloud data product (DP1.30003.001), previously omitted because it is not DP3
  • fix bug in warning messages for camera tile downloads where tile was showing outside bounds when it wasn't
  • use the API to determine active AOP data products (as well as suspended ones)
  • add in handling of suspended data products in list_available_dates function
  • improve verbose messaging in by_tile_aop to show a list of files downloaded
  • update validate_year to check from 2012 to the current year + update tests accordingly

Additional tests for AOP L3 camera (DP3.30010.001) and tiled point cloud (DP1.30003.001) data products will be added in the integration tests in the nu-python-testing repository: https://github.com/NEONScience/nu-python-testing/blob/main/tests/integration/test_aop_download.py.

@cklunch
Copy link
Collaborator

cklunch commented Jun 2, 2025

@bhass-neon Thanks Bridget! A couple of tweaks on the DPID validation:

  • Modify the documentation in get_aop_dpids() to specify that it returns a list of active AOP NEON product IDs
  • In the L3 validation, maybe modify documentation to indicate it validates whether the product is downloadable by tile? Since that is the goal
  • Make an exception for DP1.30012.001. You can either hard-code it, or use the productPublicationFormatType field from the API instead of productScienceTeamAbbr

@bhass-neon
Copy link
Collaborator Author

@cklunch - thanks for the review. I updated the documentation for the get_aop_dpids and validate_aop_l3_dpid functions. For the foliar spectra product (DP1.30012.001), not sure where you think there should be an exception? I left the check_field_spectra_dpid validation check in, but since this DPID doesn't start with DP3 and is not DP1.30003.001, I don't think an exception is needed in the validate_aop_l3_dpid function. Let me know if you were thinking of something else.

@bhass-neon
Copy link
Collaborator Author

Fixed get_aop_dpids documentation - I missed the AOP part before ...

@cklunch
Copy link
Collaborator

cklunch commented Jun 2, 2025

@bhass-neon Got it, thanks! I think we're good.

@cklunch cklunch merged commit e5f0853 into main Jun 2, 2025
3 checks passed
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.

3 participants