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

2 participants