dist-s1-enumerator 1.0.8__tar.gz → 1.0.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/CHANGELOG.md +5 -0
  2. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/PKG-INFO +1 -1
  3. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/dist_enum.py +4 -4
  4. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/dist_enum_inputs.py +1 -1
  5. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator.egg-info/PKG-INFO +1 -1
  6. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/test_dist_enum.py +4 -1
  7. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/test_dist_enum_inputs.py +1 -0
  8. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/dependabot.yml +0 -0
  9. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/workflows/bump-tag-for-release.yml +0 -0
  10. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/workflows/changelog-updated.yml +0 -0
  11. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/workflows/github-release.yml +0 -0
  12. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/workflows/labeled-pr.yml +0 -0
  13. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/workflows/nb_tests.yml +0 -0
  14. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/workflows/pypi-release.yml +0 -0
  15. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/workflows/static_analysis.yml +0 -0
  16. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.github/workflows/tests.yml +0 -0
  17. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/.gitignore +0 -0
  18. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/LICENSE +0 -0
  19. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/README.md +0 -0
  20. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/environment.yml +0 -0
  21. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/notebooks/A__Staging_Inputs_for_One_MGRS_Tile.ipynb +0 -0
  22. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/notebooks/B__Enumerate_MGRS_tile.ipynb +0 -0
  23. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/pyproject.toml +0 -0
  24. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/setup.cfg +0 -0
  25. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/__init__.py +0 -0
  26. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/asf.py +0 -0
  27. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/constants.py +0 -0
  28. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/data/jpl_burst_geo.parquet +0 -0
  29. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/data/mgrs.parquet +0 -0
  30. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/data/mgrs_burst_lookup_table.parquet +0 -0
  31. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/exceptions.py +0 -0
  32. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/mgrs_burst_data.py +0 -0
  33. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/param_models.py +0 -0
  34. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/py.typed +0 -0
  35. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/rtc_s1_io.py +0 -0
  36. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator/tabular_models.py +0 -0
  37. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator.egg-info/SOURCES.txt +0 -0
  38. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator.egg-info/dependency_links.txt +0 -0
  39. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator.egg-info/not-zip-safe +0 -0
  40. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator.egg-info/requires.txt +0 -0
  41. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/src/dist_s1_enumerator.egg-info/top_level.txt +0 -0
  42. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/conftest.py +0 -0
  43. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/data/dist_hls_tiles.txt +0 -0
  44. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/data/mock_ts_data_for_enum.ipynb +0 -0
  45. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/data/rtc_s1_ts_metadata/chile_19HBD.parquet +0 -0
  46. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/data/rtc_s1_ts_metadata/mgrs01UBT.parquet +0 -0
  47. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/data/rtc_s1_ts_metadata/mgrs11SLT_11SLU_11SMT.parquet +0 -0
  48. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/data/rtc_s1_ts_metadata/mgrs15RXN__track63.parquet +0 -0
  49. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/data/rtc_s1_ts_metadata/mgrs22WFD.parquet +0 -0
  50. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/data/ts_data_for_workflow_inputs.ipynb +0 -0
  51. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/test_asf.py +0 -0
  52. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/test_mgrs_burst_data.py +0 -0
  53. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/test_notebooks.py +0 -0
  54. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/test_package.py +0 -0
  55. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/test_param_model.py +0 -0
  56. {dist_s1_enumerator-1.0.8 → dist_s1_enumerator-1.0.9}/tests/test_rtc_s1_io.py +0 -0
@@ -6,6 +6,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [PEP 440](https://www.python.org/dev/peps/pep-0440/)
7
7
  and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
8
8
 
9
+ ## [1.0.9] - 2026-01-07
10
+
11
+ ### Changed
12
+ * Update the delta_window_days from 365 to 60 (i.e. from a year to 2 months). This enforces a baseline to account for some seasonality via its construction.
13
+
9
14
  ## [1.0.8] - 2025-11-10
10
15
 
11
16
  ### Changed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dist-s1-enumerator
3
- Version: 1.0.8
3
+ Version: 1.0.9
4
4
  Summary: Enumeration and ops library for the OPERA DIST-S1 project
5
5
  Author-email: "Richard West, Charlie Marshak, Talib Oliver-Cabrera, and Jungkyo Jung" <charlie.z.marshak@jpl.nasa.gov>
6
6
  License: Apache-2.0
@@ -17,7 +17,7 @@ def enumerate_one_dist_s1_product(
17
17
  lookback_strategy: str = 'multi_window',
18
18
  post_date_buffer_days: int = 1,
19
19
  max_pre_imgs_per_burst: int | list[int] | tuple[int, ...] = (5, 5, 5),
20
- delta_window_days: int = 365,
20
+ delta_window_days: int = 60,
21
21
  delta_lookback_days: int | list[int] | tuple[int, ...] = 365,
22
22
  min_pre_imgs_per_burst: int = 1,
23
23
  tqdm_enabled: bool = True,
@@ -61,7 +61,7 @@ def enumerate_one_dist_s1_product(
61
61
  - Expects a single integer, tuples/lists will throw an error.
62
62
  - This means the maximum pre-images on prior to the post-date.
63
63
  delta_window_days : int, optional
64
- The acceptable window of time to search for pre-image RTC-S1 data. Default is 365 days.
64
+ The acceptable window of time to search for pre-image RTC-S1 data. Default is 60 days (or 2 months).
65
65
  This amounts to roughly `post_date - lookback_days - delta_window_days` to `post_date - lookback_days`.
66
66
  If lookback strategy is 'multi_window', this means the maximum window of time to search for pre-images on each
67
67
  anniversary date where `post_date - n * lookback_days` are the anniversary dates for n = 1,....
@@ -235,7 +235,7 @@ def enumerate_dist_s1_products(
235
235
  min_pre_imgs_per_burst: int = 1,
236
236
  tqdm_enabled: bool = True,
237
237
  delta_lookback_days: int = 365,
238
- delta_window_days: int = 365,
238
+ delta_window_days: int = 60,
239
239
  ) -> gpd.GeoDataFrame:
240
240
  """
241
241
  Enumerate DIST-S1 products from a stack of RTC-S1 metadata and a list of MGRS tiles.
@@ -275,7 +275,7 @@ def enumerate_dist_s1_products(
275
275
  anniversary date where `post_date - n * lookback_days` are the anniversary dates for n = 1,....
276
276
  If lookback strategy is 'immediate_lookback', this must be set to 0.
277
277
  delta_window_days : int, optional
278
- The acceptable window of time to search for pre-image RTC-S1 data. Default is 365 days.
278
+ The acceptable window of time to search for pre-image RTC-S1 data. Default is 60 days (or 2 months).
279
279
  This amounts to roughly `post_date - lookback_days - delta_window_days` to `post_date - lookback_days`.
280
280
  If lookback strategy is 'multi_window', this means the maximum window of time to search for pre-images on each
281
281
  anniversary date where `post_date - n * lookback_days` are the anniversary dates for n = 1,....
@@ -34,7 +34,7 @@ def enumerate_dist_s1_workflow_inputs(
34
34
  max_pre_imgs_per_burst: int | list[int] | tuple[int, ...] = (5, 5, 5),
35
35
  min_pre_imgs_per_burst: int = 1,
36
36
  delta_lookback_days: int | list[int] | tuple[int, ...] = 365,
37
- delta_window_days: int = 365,
37
+ delta_window_days: int = 60,
38
38
  df_ts: gpd.GeoDataFrame | None = None,
39
39
  ) -> list[dict]:
40
40
  """Enumerate the inputs for a DIST-S1 workflow.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dist-s1-enumerator
3
- Version: 1.0.8
3
+ Version: 1.0.9
4
4
  Summary: Enumeration and ops library for the OPERA DIST-S1 project
5
5
  Author-email: "Richard West, Charlie Marshak, Talib Oliver-Cabrera, and Jungkyo Jung" <charlie.z.marshak@jpl.nasa.gov>
6
6
  License: Apache-2.0
@@ -68,7 +68,7 @@ def mock_response_from_asf_daac(
68
68
  2,
69
69
  ), # multiple MGRS tiles over Los Angeles
70
70
  (['01UBT'], None, 'immediate_lookback', 0, 365, 10, 2), # Aleutian Chain at the antimeridian
71
- (['15RXN'], [63], 'multi_window', 365, 365, (5, 5, 5), 1), # Waxlake delta, VV+VH
71
+ (['15RXN'], [63], 'multi_window', 365, 60, (5, 5, 5), 1), # Waxlake delta, VV+VH
72
72
  ],
73
73
  )
74
74
  def test_dist_enum_default_strategies(
@@ -273,6 +273,7 @@ def test_dist_enum_one_with_multi_window_with_multiple_polarizations_and_asf_daa
273
273
  # Need to look back further for valid VV+VH data
274
274
  delta_lookback_days=(1460, 1095, 730, 365),
275
275
  max_pre_imgs_per_burst=(3, 3, 3, 4),
276
+ delta_window_days=365,
276
277
  )
277
278
 
278
279
  assert sorted(df_product.polarizations.unique().tolist()) == ['HH+HV', 'VV+VH']
@@ -305,6 +306,7 @@ def test_dist_enum_one_with_multi_window_with_asf_daac() -> None:
305
306
  lookback_strategy='multi_window',
306
307
  delta_lookback_days=(1095, 730, 365),
307
308
  max_pre_imgs_per_burst=(3, 3, 4),
309
+ delta_window_days=365,
308
310
  )
309
311
  burst_ids_expected = [
310
312
  'T144-308024-IW1',
@@ -363,4 +365,5 @@ def test_dist_enum_one_with_multi_window_with_asf_daac_single_polarization() ->
363
365
  lookback_strategy='multi_window',
364
366
  delta_lookback_days=(730, 365),
365
367
  max_pre_imgs_per_burst=(3, 4),
368
+ delta_window_days=365,
366
369
  )
@@ -55,6 +55,7 @@ def test_enumerate_dist_s1_workflow_inputs_for_time_series(test_dir: Path) -> No
55
55
  stop_acq_dt='2024-04-01',
56
56
  lookback_strategy='multi_window',
57
57
  delta_lookback_days=365,
58
+ delta_window_days=60,
58
59
  max_pre_imgs_per_burst=5,
59
60
  df_ts=df_ts,
60
61
  )