{"name": "Earth Engine Catalog Query", "package_name": "ee_s5p_plugin", "version": "1.1.1", "experimental": false, "qgis_min": "3.22.0", "qgis_max": "4.99.0", "downloads": 191, "uploaded_by": "blcrosbie", "upload_datetime": "2026-10-01T22:46:40.073219", "changelog": "1.1.1 (2026-10-02)\nPasses the plugins.qgis.org security scan.\n- Bandit flagged two try/except/pass blocks and an unguarded urllib call,\nwhich blocks a plugin from approval. All three are now fixed rather than\nsilenced: the swallowed exceptions are logged, and the crawler refuses any\nURL that is not http or https, so a tampered catalog cannot make it read\nlocal files through file:// -- which is the actual risk B310 describes.\n- Bandit's rules now run locally as part of lint and in the pre-upload check,\nso a blocking finding fails here instead of at the upload form.\n\n1.1.0 (2026-10-01)\nVerified on Qt 5 and Qt 6, and an important area-of-interest fix.\n- Runs unchanged on QGIS 3.22, 3.40, 3.44 LTR and 4.2, across PyQt 5.15.6 to\n6.11.0 and Python 3.10 to 3.12. Every Qt import goes through qgis.PyQt and\nevery enum uses the scoped spelling, which is all Qt6 requires; a test\nenforces both so it cannot regress.\n- Fixed: \"Use selection\" only looked at the active layer, so selecting\nfeatures on one layer while another was highlighted left the area of\ninterest unset and extracted the dataset's whole footprint. The selection is\nnow taken from any layer that has one, each reprojected with its own CRS.\n- Extracting with no area now warns what would actually be downloaded, naming\nthe dataset; for tables it says this means every feature and that Earth\nEngine truncates at 5,000 without warning.\n- A missing Earth Engine session is explained with the sign-in steps instead\nof raising a traceback, including the fact that authenticating clears the\nCloud project the Earth Engine plugin stores in the same file.\n- Live status panel: position, records, throughput, time remaining, Cancel.\n\n1.0.2 (2026-10-01)\nLive progress feedback for heavy downloads.\n- A status panel under the results list reports position, records fetched,\nthroughput and remaining time, and a Cancel button to stop the job.\n- The remaining-time estimate is measured as the job runs, so it corrects\nitself instead of repeating a figure guessed before it started.\n- Rate limiting is shown as \"rate limited, backing off\" rather than a bar\nthat appears to stall, and splitting an oversized tile is reported.\n- A single opaque request gets a busy bar with a ticking elapsed time, so a\nheavy feature collection looks alive rather than hung.\n- Redraws are throttled to five a second, so a 500 tile job does not repaint\nthe dock faster than it fetches.\n- No new dependencies: plain Qt widgets.\n\n1.0.1 (2026-10-01)\nAuto-scaling for large areas.\n- Areas too large for one Earth Engine call are tiled into H3 hexagons. The\ntiling is chosen arithmetically from the request limit, so planning is\ninstant and costs no quota; the dialog shows the tile count, size and\nestimated time before anything is sent.\n- Optional parallel fetching, capped at half the machine's CPUs, with a live\nspeed-up estimate per worker count. Sequential remains the default and\ncannot be rate limited.\n- HTTP 429 and quota errors are absorbed with exponential backoff and jitter,\nand concurrency narrows itself while the server is pushing back, so a job\nslows down instead of failing.\n- Tiles Earth Engine still refuses are subdivided one resolution finer and\nretried, up to three times.\n- Every extracted row carries its h3_index and tile_resolution, so output can\nbe joined against anything else keyed by H3.\n- h3 is optional: without it, tiling falls back to an equivalent\nlatitude/longitude grid and says so.\n- Collection presets, led by Sentinel-5P / TROPOMI.\n\n1.0.0 (2026-10-01)\nRewritten for modern QGIS.\n- Covers the entire Earth Engine Data Catalog (1,155 datasets) instead of a\n92-dataset subset, sourced from Google's published STAC catalog rather than\nby scraping HTML. No BeautifulSoup dependency.\n- Runs on Qt 6 as well as Qt 5, so it works on QGIS 4.x builds.\n- Catalog refresh, dataset reads and extractions run as background tasks:\nQGIS no longer freezes, and they can be cancelled.\n- Request size is estimated before sending, with a suggested resolution when\na request would exceed the Earth Engine limit.\n- Dock is fully layout-managed and resizable; results are a sortable,\nsearchable table.\n- Areas of interest are reprojected to WGS84, so selections on projected\nlayers no longer land in the wrong place.\n- Fixed: CSV columns misaligned for rows with differing fields; pixel\nfootprint polygons about a third too small; hex colour palettes never\nrecognised.\n- Full unit test suite and CI.\n\n0.1 (2020-12)\nInitial release: Sentinel-5P and selected collections, QGIS 3 / Qt 5.", "external_deps": "", "download_url": "https://plugins.qgis.org/plugins/ee_s5p_plugin/version/1.1.1/download/"}