Releases: kevinlin1/huskymaps
Spring 2026
Release for CSE 373 Spring 2026.
Structure
- Add
AGENTS.mdby @1cg. - Add
CITATION.cff. - Add
.vscodefolder with recommendedextensions.jsonandsettings.json.
.gitlab-ci.yml
- Fix gradle runner configuration bug in seam finding tests introduced during test case refactoring.
README.md
- Update getting started instructions to prefer
.vscodeconfiguration. - Link to Build Your Own Feature project instructions and reorganize lessons.
build.gradle.kts
- Include the
junit-jupitertest engine for gradle builds to load@Testand other JUnit runner annotations. - Update dependencies.
src
- Add Build Your Own Feature project instructions with help from @srtang23.
- Add Deques optional implementation activity and tracing activity @srtang23.
- Update various assignment instructions and fix typos.
- Migrate
MapGraphclass to thegraphspackage to allow references from other packages. - Avoid prematurely closing
System.ininSeamCarver. - Optimize DNA
Suffix(#31),DualGradientEnergyFunction(#33),SeamCarver(#35),BellmanFordSolver(#34).
Winter 2026
Release for CSE 373 Winter 2026.
build.gradle.kts
- Add jqwik as a test implementation.
- Downgrade to JUnit 5.14.2 to support vscode-java-test 0.44.0.
- Update dependencies.
src
- Implement property-based testing with
jqwik(#28), including debuggingtoString()methods for allMinPQimplementations and staticruntimeExperimentsmethods. - Fix
ArrayDeque.toString()bug (#22). - Fix various VS Code heuristic build problems.
- Fix various typos in project instructions with thanks to @laurakhot.
Autumn 2025
Release for CSE 373 Autumn 2025. All student-facing instructions have been integrated into each project's README.md files. Learning materials have been added to the Wiki.
.github
- Add
dependabot.yml. - Add
docker-image.ymlbuild action.
.gitlab-ci.yml
- Split tests up by implementation for much better presentation on GitLab CI/CD.
README.md
- Getting started for enrolled UW students.
- Optional setup for deploying on Render.
- Update project instruction and learning material links.
build.gradle.kts
- Re-add
jackson-databinddependency. - Update dependencies.
gradle
- Update to gradle 9.0.0.
src
- Add
README.mdfiles for each project component. - Remove frontend dependency on autocompleter and debounce updates.
- Refactor map panning functions to be dynamic and accurate (#7).
- Handle map touch events in addition to mouse events (#8) and fix excessive API calls on map drag (#12).
- Fix map image loading for high-resolution displays (#9).
- Prevent map movement when interacting with search bar (#10).
- Add user experience hints for route directions (#11).
- Refactor map click handling to differentiate clicks, drags, and double-clicks (#14).
- Fix map resizing for visual viewports (#15).
- Add loading spinner for map image (#16).
- Add
ArrayListDequeTests.browserHistoryRuntimeSimulationtest. - Invert order of
@nested@disabledinDequeTestsfor consistency.
Spring 2025
Release for CSE 373 Spring 2025. Student instructions are available for each of the project components.
Structure
- Introduce
Dockerfilecontainer builds usingshadowto create a fat JAR.
.gitignore
- Add ignore for
replay_pid*JVM crash logs. - Add ignore for Eclipse Buildship output
bin/directory. - Add ignore for
.vscode/.
.gitlab-ci.yml
- More comprehensive ruleset for running tests against file changes.
README.md
- Rename heading to "Husky Maps".
build.gradle.kts
- Use
shadowto compile a fat JAR and runMapServerfor thejartask. - Use
tasks.testtarget for better compatibility. - Update dependencies.
- Remove unused import
TestExceptionFormat.
gradle
- Update gradle wrapper to 8.13.
src
- Add
allMatchesMutationtest. - Add
randomIntegersRandomPrioritiestest. - Remove given code for
OptimizedHeapMinPQelements constructor. - Correct javadoc for
getLocationsByPrefix.
Autumn 2024
Release for CSE 373 Autumn 2024. Student instructions are available for each of the project components.
Structure
- Integrate the Deques project.
- Switch to Gradle and GitLab CI/CD pipeline with
cse373module name. - Remove
Dockerfile. - Replace the
MinPQModeratorclient class withReportAnalyzer.
README
- Simplify content and remove most instructions.
.idea
- Update libraries.
src
- Use
MinPQimplementations to optimizegetLocationsByPrefix. - Add
access.tsvfrom Project Sidewalk Streets API. - Round
RuntimeExperimentsto the closest integer. - Enable tests for
TreeSetAutocomplete. - Add test for
DoubleMapMinPQ.
Autumn 2023
Release for CSE 373 Autumn 2023. Student instructions are available for each of the project components.
huskymaps.iml
- Remove javadoc-paths.
.idea
- Update to JDK 17.
- Update libraries.
data
- Censor whole toxic comment content.
src
- Return places from
getLocationsin any order. - Inline
byEstimatedDistanceFrommethod. - More consistent use of
perimeterrather thanpqorqueue. - Fix dangling reference to non-existent
prioritymethod. - Prefer regex to simplify smart quote replacements.
- Perform additional censoring of toxic comments in software.
- Document sources using
@see.
Winter 2023
Release for CSE 373 Winter 2023 (Docs). Student instructions are available for each of the project components.
Structure
- Simplify
srcpackage hierarchy by moving client classes to the unnamed package. - Remove
seamcarverpackage and removed one level of package direction to makeseamfindera root package.
README.md
- Update instructions for building artifact.
- Remove GitHub Wiki.
.idea
- Upgrade to Javalin 5.3.1.
- Upgrade to JUnit Jupiter 5.9.2.
- Add Apache Commons Codec for Base64
InputStreamencoding.
resources
- Upgrade to Autocompleter 7.0.1.
src
- Rename
ExtrinsicMinPQtoMinPQ. - Add a default
MinPQ.addOrChangePrioritymethod. - Add a default
SeamFinder.findVerticalmethod. - Remove seam validation from
SeamCarverclient class. - Add a slow
BellmanFordSolverand aSPFASolver. - Tidy-up names, comments, generic types, variable shadowing, encapsulation.
- Render paths using MapBox Static Images API polyline and directly Base64 encode the stream to speed-up map processing.
test
- Censor toxic comments in test display.
- Record runtime experiments in nanoseconds.
- Add
TreeSetAutocompleteTests. - Explicitly parameterize
Autocompleteruntime tests using an inline array. - Refactor seamfinder tests using
findVertical. - Validate seams.
- Increase number of seam finder trials to 25 for more consistent experimental analysis.
Autumn 2022
Release for CSE 373 Autumn 2022 (Docs).
Structure
- Reorganized app structure to use a separate
resourcesfolder. - Introduced JUnit tests in the
testsfolder. - Added Dockerfile for fly.io deployment.
README.md
- Significantly simplified instructions to ease public use.
.idea
- Upgrade to Javalin 5.0.1.
- Upgrade to JUnit 5.9.1.
src
- Removed map image cache.
- Inlined MapBox
USERNAMEandSTYLE_IDvariables. - Interactive
SeamCarver.mainimage resizing.
Winter 2022
Release for CSE 373 Winter 2022 (Docs).
.idea
- Upgrade to Javalin 4.1.1.
src
- Refactor
graphsandseamcarvingpackages with additional nested packages.
src/autocomplete
- Simplify
TernarySearchTreeAutocomplete.Nodeconstructor by removingtermparameter. - Fix string name references to
SequentialSearchAutocompleteinCitiesInputSizeExperimentsandCitiesMultiTest. - Add
Autocomplete.isPrefixOfstatic method. - Make
TernarySearchTreeAutocomplete.Node.datafinal.
src/minpq
- Remove
OptimizedHeapMinPQ.sizefield.
src/seamcarving
- Rename
findSeamtofindHorizontal. - Cast each
Nodeto aPixelusing multiple lines rather than one line of code for improved readability.
Autumn 2021
Release for CSE 373 Autumn 2021 (Docs).
src/autocomplete
- Fix
CitiesInputSizeExperimentscolumns.
src/huskymaps
- Upgrade to Javalin 4.
- Simplify routing query parameter API parsing.
- Switch to linked jar artifact.
src/graphs
- Remove broken javadoc links.