How time zones are handled in the Web Services API (WSAPI)
The normalization that occurs inside the getters and setters for these attributes is largely transparent to the rest of the application (except for querying) and is not likely causing any issues.
Previously, Rally took a provided date with time zone (using the user's time zone if none specified), shift it to the start or end of the day in the workspace's time zone, and then store the result. It was possible that the shifted date reflected a moment in time that no longer fell on the same day as the provided date. This broke the Ext grids.
The new behavior is almost the same except that when we shift the provided date to the start or end of the day in the workspace's time zone, we ensure that the shifted date always reflects a moment in time that falls on the same day as the provided date.
Example (based on the one in the API Versioning section of the WSAPI docs):
In WSAPI version 1.29 and below:
In WSAPI version 1.30 and above: