Releases: e-mission/e-mission-server
Performance + stability improvements + stats in timeseries
This skips a version to be consistent with the phone releases. It includes:
- Improved metrics call to be more performant
- Re-introduce some public phones into the regular pipeline so that we can test the code properly
- Move stats into the standard timeline so that we can use them in the same way as everything else
- Turn on proper autocheck for habitica + fix registration
- Enhance the pipeline to run for public phones
- Default tasks for bike/walk with the same number of points
- Fix the backwards compat layer for aggregate metrics to get the website metrics to work
Scalability and robustness fixes
Several scalability fixes (#408)
Several fixes from running the pipeline on everybody's data (#407 and spinoffs)
Turn on real autogeneration for habitica users
Not too many features, which is why this is a minor release.
But the scalability improvements are Yuge!
Segmentation fixes FTW!
This change focuses on bugfixes and enhancements to the trip and section segmentation and cleaning. It contains 16 fixes, many of which interact in complex ways, backed by actual tests to capture regressions. It also includes enhancements in functionality - we now deal with reboots, and support AIR_OR_HSR trips correctly as well.
It also includes some minor robustness fixes - better integration with the python logging framework to avoid running out of log space, as well as splitting the intake pipeline into two to support a rudimentary form of parallelism.
First production? release
I am not sure if this can be called a release version, but we are submitting to the stores today, so I'm going to take the plunge and mark it as non-pre-release.
The changes this time were mainly around fit and finish wrt preparing for the release.
On the server, these were:
- Change the consent document to the newly approved version
- Add support for storing consent configurations in the timeseries
- Improved the webapp by changing the tab, fixing the URLs for the planner
and adding a URL for the game - Habitica integration to automatically check off walking and biking trips
- Fixed check-off calculation for iOS and for walking trips in general
- Fixed regression in section expansion on iOS
- Handle yearly grouping correctly
Lotsa metrics + database cleanup + public dataset API
The theme of this release is: metrics.
On the server side, we have (#310):
- Metrics API that returns daily, monthly, yearly summaries of various metrics,
both wrt local time filters and UTC timestamp ranges. - New metrics screen that shows trip count, distance and duration over time,
split by mode. On the server, these are aggregate metrics - on the phone,
they are individual metrics.
Thanks to @yw374cornell, we now have a new public API for pulling data from the
test phones from the server. This is the first step towards creating a public
database that can be used for power/efficiency tradeoffs. (#312, #317)
We also have several other cleanup fixes.
- Unify, extend and fix bugs in the built-in timeseries implementation
- Refactor the query that excludes test phones
- Clean up analysis timeseries code
- Fix several bugs found by running automated tests after cleanup
- Fixed local_date semantics to better match timestamp semantics
- clean up the database queries to remove obsolete collections
get_trip_new_db()
,get_place_db()
,get_section_new_db()
and
get_stop_db()
and their references. - refactor the index generation code and create a bunch of new indices for the
analysis objects - Reuse mongodb connection across multiple collection retrievals. This improves
performance and prevents exhaustion of incoming connections. - Move all logging config to the main function. Module level logging config is
bad because it can override logging configs in other modules, depending on
import order.
Fix motion activity + finally fix tour models!
- Upgrading to the new version of google play meant that the format of the motion activity changed yet again, which meant that our formatting was broken. We need to fix it.
- Removed all the old tour model code. Found that all tests failed because they were written for the old tour model. Updated tests and got them to pass. Tour model started working again, woot!
First release - have pulled in all changes from the real server
Start tagging server releases as well.
As we potentially change the API on the server, having consistent release tags ensures that it is easier to track compatible versions.