Skip to content

Latest commit

 

History

History
1079 lines (672 loc) · 44.4 KB

File metadata and controls

1079 lines (672 loc) · 44.4 KB

CHANGELOG

v0.12.0 (2025-05-16)

Features

  • feat: Expand MetadataView into DetailView

  • feat: Get list of files related to dataset

  • feat: Get list of files related to chart

  • chore: Remove unnecessary placeholder download method from fileitem model

  • feat: Create FileItemViewSet

  • feat: Get list of data objects related to file

  • fix: Display null values in recursive table

  • refactor: Pass whole object to DetailView and display table of basic info

  • fix: Resolve name & type conflicts after merging master

  • fix: protect against null values in metadata

  • refactor: Use stack to track current details instead of recursive dialogs

  • feat: Add slide transition when changing current details

  • Use stack for all details, including first one

  • fix: Adjust basic info display

  • style: Adjust dialog sizing

  • fix: Use type in transition key so different-type objects with same id will show transition

  • fix: Reset stack when dialog closed

  • style: Make object types clearer

  • refactor: Show converted data before files

  • style: Move metadata section to the bottom of the dialog

  • fix: More protection from null values in RecursiveTable


Co-authored-by: Jacob Nesbitt jjnesbitt2@gmail.com

v0.11.0 (2025-05-09)

Bug Fixes

  • Adjust Network typing and fetch logic (dba4e26)

  • Change node coloring behavior when not animating (ba5483b)

  • Clear selection after toggle (0c3a108)

Co-authored-by: Jacob Nesbitt jjnesbitt2@gmail.com

  • Disable pagination and default sort by active (cb05f3c)

  • Persist nodes/edges lists in store to avoid state reset on panel adjustment (6cac91b)

  • Prioritize selected style first (3f3ade9)

  • Remove statement executed twice; unnecessary after animation behavior change (688ec30)

  • Simplify filter_queryset (e455edf)

  • Typo (c1134e7)

Features

  • Add basic Networks panel (3a93c04)

  • Add button to show current network (4079c84)

  • Add network reset button (f3a4fe5)

  • Color selected nodes white (f2d3280)

  • Display nodes and edges tables (29b31f0)

  • Fetch all networks in current project (2db42ef)

  • Highlight nodes and edges on hover (813578c)

  • Toggle node states in networks panel (3a77f49)

Refactoring

  • Separate isVisible and show functions and apply stronger typing (7604d58)

v0.10.0 (2025-05-08)

Chores

Documentation

  • Remove deprecated docker-compose commands from setup docs (ee30094)

Features

  • Add button to fit map to visible layers (8d8d04a)

  • Show spinner while loading bounds of visible layers (1c357aa)

v0.9.1 (2025-03-24)

Bug Fixes

  • Make project perms api support removing users (d137059)

  • Update project permissions tests (132ae37)

v0.9.0 (2025-03-13)

Bug Fixes

  • Accept default token auth with new TokenAuth class (42e640e)

  • Add combine option for zipped vector datasets (161697a)

  • Add numbering to network names to avoid name conflicts on the same dataset (93f7e45)

  • Add requirements file (ed8fb57)

  • Add token auth to rest API for UVDATExplorer to work (3a6b4e1)

  • Additional dataset conversion adjustments (a6a2a01)

  • Adjust floating panel behavior (19f24b0)

  • Adjust ingest process for New York Energy use case (d225d4a)

  • Allow adding multiple copies of the same layer (96f2005)

  • Apply opacity to visible frames only (7d08318)

  • Apply same default color to frames in the same layer (861b65f)

  • Create separate functions for clearing state upon different triggers (c7338a9)

  • Handle no superuser exists in ingest_use_case.py (6cced93)

  • Implement search bar for charts and analytics (0167835)

  • Include access control logic for RasterData and VectorData (7299af9)

  • Miscellaneous appearance and behavior fixes (9b72e52)

  • Only display "Session Authenticated" label if auth is successful (5349f2e)

  • Protect admin page from null source files on data objects (0c8673e)

  • Protect against null metadata (189a7d9)

  • Remove debugging statement (ea2a57e)

  • Remove z-index css rule from sidebar class (1badf6f)

  • Update admin.py (74e9eb5)

  • Update data.py for lint check (22bc1f6)

  • Update get_filter_string function (48c0a0e)

Co-authored-by: Jacob Nesbitt jjnesbitt2@gmail.com

  • Update LayerSerializer (3afbfcd)

  • Update API with new Network-Dataset relationship (9560940)

  • Update default layer name generation (42aec47)

  • Update list of ignored filetypes (bcaf361)

  • Update map tooltip (3b6d0ab)

  • Update populate process and sample data (114f9bf)

  • Update populate test (03ba49b)

  • Update references to old band_ref field (7af52d2)

  • Update source filter formatting with API changes (52352cf)

  • Update tests with new Network-Dataset relationship (afe2c7d)

  • Update vector feature filtering to allow nested properties (81dffa1)

  • Use band_ref JSON field on LayerFrame (0fe6753)

  • Use a custom serializer to validate results of GCC endpoint (98e1d2b)

Build System

  • Update dockerfile to support conversion of .nc files (c2cd3e3)

Chores

  • Add item to .gitignore (d8804c1)

  • Merge remote-tracking branch 'origin/master' into redesign-staging (a1a508f)

  • Remove outdated functions and leave placeholders for reimplementation (69b3e1a)

  • Remove print statement (3c24d8c)

  • Remove unused component files (dec5c2d)

  • Resolve compiler macros no longer need to be imported warnings (8eae7b2)

  • Update docker compose config, allow storing MapTiler API key in ignored file (0cb3ee4)

Code Style

  • Appearance suggestions from Faiza (e64a6fe)

  • Apply grab cursor to layer reordering symbol (5651390)

Co-authored-by: Jacob Nesbitt jjnesbitt2@gmail.com

  • Change help text color (2b1fabd)

  • Ensure scrollbar does not appear in chrome (df18b0b)

  • Ensure tutorial popup does not appear before projects list is loaded (d08e46f)

  • Fix spacing (7df6bbc)

  • Font and icon update (4950c20)

  • Hide Legends panel for now (394dc27)

  • Secondary background color on layer select buttons (2b07c6c)

  • Update colors and appearance with new theme palettes (1444030)

Features

  • Add "Map Only" option to screenshot menu (f346a2c)

  • Add UVDATExplorer Jupyter widget and example usage notebook (005d8fe)

  • Add controls bar with screenshot function (d6e828b)

  • Add dark/light modes including map (7365069)

  • Add draggable and resizeable floating panels to sidebars (2144f67)

  • Add frame and style controls (90ee9f9)

  • Add full screen toggle to ipyleaflet map (e71623d)

  • Add migration file (b7ca918)

  • Add query param filtering to vector tile endpoint (347056a)

  • Add Selected Layers Panel (252addd)

  • Add Sidebars component (672442f)

  • Add user options menu and allow theme toggle (febe644)

  • Allow additional filters specification in layer options (a15e8da)

  • Allow docking floating panels in either sidebar in any order (bb00946)

  • Allow user to specify center and zoom (d791ef6)

  • Basic map layers for raster and vector sources (69874cf)

  • Dynamic styling for map attribution according to theme and sidebar state (c5872ab)

  • Layer removal and visibility toggle (bdc17a8)

  • Update Map Tooltip (5e85413)

  • Update raster tooltip logic (f8b6d6e)

Refactoring

  • Additional API updates to complement UI changes (25f6c7f)

  • Consolidate layer and frame creation logic to single function (1df004d)

  • Create themes.ts to define theme colors (22ea8ad)

  • Create subfolder structure in components folder (00c9aca)

  • Isolate and fix panel drag logic (f3e8bf0)

  • Move jupyter folder to top level (424d1bd)

  • Remove dataset field from Network and make vector_data field mandatory (11f7cde)

  • Rename band_ref field to source_filters (7d899d7)

  • Rename SourceRegion -> Region (750c135)

  • Rename explorer module (d7ac091)

  • Reorganize item titles to make whole row clickable for "add to selected layers" case (52dc78d)

  • Split DatasetPanel into multiple components, use expansion panels instead of treeviews (d0714a5)

  • Switch Floating Panel content back to slot (1121b0c)

  • Update getDefaultColor to cycle between 4 basic colors (032cc69)

  • Update Analytics Panel (2f9eb54)

  • Update Analytics panel (7860909)

  • Update Charts panel (3e77557)

  • Update Dataset panel and Project config (494ece7)

  • Update models (a37d350)

  • Update networks and GCC logic (51f4eee)

  • Update ProjectConfig UI (41c3952)

  • Update rest API (05116b0)

  • Update tasks (a126080)

  • Update tests with network API changes (18693c4)

  • Update types and store (d33f564)

  • Update uvdat/core/rest/networks.py (86aa278)

Co-authored-by: Jacob Nesbitt jjnesbitt2@gmail.com

  • Update web/src/layerStyles.ts (7e5bb69)

Co-authored-by: Jacob Nesbitt jjnesbitt2@gmail.com

  • Use setup syntax in Map.vue (c23ecd7)

Testing

v0.8.1 (2025-01-10)

Bug Fixes

  • Change FileItem.file_size from IntegerField to PositiveBigIntegerField (0562ccd)

v0.8.0 (2025-01-10)

Bug Fixes

  • Default to no color map for client raster viz (ff0c075)

  • Make tile2net import lazy (5aa2ff2)

  • Use band argument in tile params when applying colormap (5511b25)

Build System

  • Set up celery docker container with tile2net requirements (b56303b)

Chores

  • Clean up unnecessary additions (9a2008e)

Features

  • Add curbs_aid use case to populate script, ingest orthoimagery (619675b)

  • Add segment_curbs task using tile2net (7d3f82d)

  • Add Boston Orthoimagery dataset to boston_floods use case (23dedc2)

  • Add custom UI for sim results that return datasets (ef26372)

  • Add script for compositing orthoimagery to sample_data folder (8310f00)

Refactoring

  • Remove composite_orthoimagery.py (e3f1f48)

  • Split create_raster_map_layer function and add comments (f493c8d)

v0.7.0 (2024-11-18)

Bug Fixes

  • Add missing hyphen in requirements list (82835b2)

Features

v0.6.1 (2024-11-12)

Bug Fixes

  • Add missing env vars (5ef7507)

  • Fix bug in project permission logic (8dcd62b)

  • Fix incorrect dataset permission logic (18fa882)

  • Fix linting errors (85e0415)

Continuous Integration

  • Add nightly CI for slow tests (879a256)

Documentation

Refactoring

  • Improve project perm functions (2bdd2d2)

  • Remove all dataset modification endpoints (a22252a)

  • Remove unused dataset endpoint (e748ad6)

  • Remove unused endpoints (023da47)

  • Remove unused map layer endpoints (2aeb5db)

  • Remove unused simulation endpoints (2545952)

  • Reorg dependencies (a387d41)

Testing

  • Add basic testing infrastructure (c536c99)

  • Add celery task testing config (737a3e6)

  • Add dataset GCC tests (6f9a18e)

  • Add dataset map layer factories and tests (b1744f4)

  • Add dataset network tests (c200d4d)

  • Add more project tests (5d425df)

  • Don't run slow tests by default (5dc04b6)

  • Remove old api tests (cb43a1f)

  • Remove use of pytest-factoryboy (1ff9408)

  • Simplify use of network edge fixtures (01e7ae3)

v0.6.0 (2024-11-06)

Bug Fixes

  • Update version in setup.py and package.json with semantic release (7f6ce9d)

Features

  • Add version tag to toolbar in UI (6f6d04d)

  • Move version to menu, add hash, add copy buttons, add repo link (f1b1b34)

v0.5.1 (2024-10-17)

Bug Fixes

  • Add signals to delete files when an object with a FileField is deleted (08de376)

  • Replace pre_delete with post_delete (4ba2bcb)

Continuous Integration

  • Add step to install GDAL (820cd86)

  • Fix environment vars (8c90c8f)

  • Pin versions of ubuntu, python, and ubuntugis (08271ba)

  • Switch postgres image to postgis (673df3a)

  • Update github actions to use services (3ee1d85)

v0.5.0 (2024-10-10)

Bug Fixes

  • Remove current project owner from users list (7051ab4)

v0.4.2 (2024-10-10)

Bug Fixes

  • Add item_counts to ProjectSerializer for new sidebar design (3a71b3a)

  • Add matplotlib to requirements for raster colormaps (971e991)

  • Adjust map state watchers (58f59a4)

  • Change groupBy control to radio buttons (b933d2f)

  • Change loading behavior of Project contents panels (407eccf)

  • Improve map location menu hover/click behavior (d2ad119)

  • Modify savePermissions to move users between followers and collaborators lists (1c83360)

  • Order Project queryset by name (80fe54e)

  • Prevent multiple permissions for single user in project (16e6140)

  • Reverse map coord ordering in API (744e124)

  • Update set_permissions call in ProjectViewSet.partial_update (99bee91)

  • Update references to resetMap -> setMapCenter (513959a)

  • Update setting permissions in Project partial_update (294ab3c)

  • Use pipx action in lint workflow to avoid "externally managed environment" error (ad76188)

Code Style

  • Adjust vertical alignment of object counts, flush with icons (a070f83)

  • Remove unused imports (07f1a9d)

  • Replace double equals with triple equals (245871b)

  • Use title case for component tag (ba7fbcf)

Features

  • Add Access Control interface (dba0516)

  • Add basic ProjectConfig component (e7b29bb)

  • Add Dataset selection panel to Project Config page (bb21859)

  • Create/delete projects, edit project names and default map positions (d91be55)

  • Default to flyTo when setting map center (ce33080)

  • Toggle dataset layers with maplibre (b84303d)

Refactoring

  • setmapcenter implicit undefined argument (ccb3e39)

  • Apply suggestion to toggleDatasets function in ProjectContents (754d1be)

  • Apply suggestion to use sets in savePermissions (f5bc7ad)

  • Enforce consistent naming of permission levels (a843439)

  • Explicitly define acceptable values for projectConfigMode (6ce1e6f)

  • Explicitly define acceptable values for saving (38d2cc9)

  • Populate store vars when fetching for Project contents (7afef9b)

  • Remove ownership claim mode (816dd25)

  • Separate Project update endpoints, don't override partial_update (d2bffde)

  • Update web/src/storeFunctions.ts (cff13c4)

Co-authored-by: Jacob Nesbitt jjnesbitt2@gmail.com

  • Use FloatField for Project.default_map_zoom (6d84564)

  • Use Vue script setup syntax on new/modified components (7eb640c)

v0.4.1 (2024-10-01)

Performance Improvements

  • Implement GCC algorithm in native postgres (ba33eb0)

Refactoring

  • Move find_network_gcc into Network.get_gcc (1eadf03)

v0.4.0 (2024-10-01)

Bug Fixes

  • Add VectorFeature clause to get_object_queryset (3178461)

  • Add authentication to maplibre tile requests (4906e9f)

  • Add homepage redirect url (7372b16)

  • Add import to ingest_use_case (8d1d9db)

  • Add missing django env var to Celery config in docker-compose.override.yml (faac2fd)

  • Add watcher for showMapBaseLayer (df03bad)

  • Address some server-side API bugs (6943cb4)

  • Allow filtering by project_id in request params (fadc263)

  • Enforce an owner on server-created projects (de9725c)

  • Include constraint removal step in migration file (f9a3221)

  • Remove SESSION_COOKIE_AGE value override (ffbd515)

  • Resolve merge conflicts after rebase (b7f1cca)

  • Roll back change to region viewset inheritance (e317c6d)

  • Update set_permissions call in test_api (e157327)

  • Update set_permissions call in Project perform_create (61e7a29)

  • Update permissions fields on ProjectSerializer (2e66d31)

Code Style

  • Fix lint errors (61f9767)

  • Lint fixes (10330c3)

  • Remove change to flake8 rules in tox.ini (52c9ffe)

  • Remove unused imports and variables (7bb8976)

Documentation

  • Add makeclient step to Setup Guide (c3b4ac2)

Features

  • Add access control check functions on each model (245a04f)

  • Client-side changes for authentication (a3bd8dc)

  • Override signup form to include name fields (de74292)

  • Replace Context model with Project model (003f88f)

  • Server-side changes for authentication (b60591c)

  • Update API to use AccessControl filter backend (1754ac3)

Refactoring

  • Add comment to urls.py (af567f1)

  • Add explanatory comment to Map's transformRequest function (9f6c9ab)

  • Apply suggestions to guardian.py (f831cf3)

  • Move project_id query param filtering to get_queryset on relevant ViewSets (305f0b2)

  • Remove permission fields from Project model and add update_permissions method (5935f62)

  • Rename guardian.py -> access_control.py (3315a4d)

  • Update Dataset.is_in_project function (d78a494)

  • Update guardian.py (9989e6f)

  • Update guardian.py to get passing permissions tests (934f729)

  • Update ingest_projects function (318f695)

  • Update makeclient management command (88af424)

Testing

  • Add a test for API permissions (bc1a27e)

  • Ensure a superuser exists at beginning of populate test (b614f13)

  • Pass homepage url env var through tox environments (4b3a0bd)

  • Refactor API tests, split up by viewset (c5deb96)

v0.3.0 (2024-08-21)

Bug Fixes

  • network.dataset -> dataset (f859588)

  • Filter properties upon import (key and value must exist) (e2c7549)

  • Improve speed and accuracy of network interpretation algorithm (29650e7)

  • Ingest contexts before charts (df98b5d)

  • Only delete old map layers at beginning of dataset ingest (d71c90a)

  • Remove other usages of module reference for nysdp datasets (ee55020)

  • Remove unintentional quotes (296dc78)

  • Small bug fixes (478f58a)

Code Style

Features

  • Add import script to load county networks from exported geojson files (0bb90a4)

Refactoring

  • Create ingest modules with convert_dataset function for each use case (48a769d)

  • Remove unnecessary string casting (fb2cb07)

  • Rename vector_features_from_network -> create_vector_features_from_network (a287c78)

Testing

  • Adjust expected number of contexts in populate test (11c2c83)

v0.2.0 (2024-08-21)

Bug Fixes

  • Remove old name reference (bfd69c2)

  • Small bug fixes (87279bc)

  • Undo change to expected number of contexts (48fe642)

Code Style

Features

  • Add rest viewsets for file item and network models (53e54e5)

Refactoring

  • Apply suggested changes (f50de69)

Testing

  • Update OSMnx test expected number of nodes and edges (95c8c8a)

v0.1.0 (2024-08-19)

Features

  • Pin dependency versions in setup.py (2f3b671)

Testing

  • Try different docker compose action (05442e7)

v0.0.0 (2024-06-20)