Pancake Release 2012-07-12

From MozillaWiki
Jump to: navigation, search

Production Release

Staging Release

Changes

  • Changes to pancake-common packaging. Increased revision to 181
  • merge with default
  • fix caching issue in the stats module: the caching scripts would too aggressively cache data ahead of time
  • Refactor of Url class fixes: #772020, #772019, #772021
  • New url parsing implementation borrowed from Dojo; .hostname vs. .host - mean what they used to. BUt .hash is replaced by .fragment. Unit tests fixed, integration not yet tested
  • Tagged release 120712 / r180
  • Added tag release-12071201 for changeset 6682fb2584ec
  • #769498. Yup, more promise chain tweaks. Kicking off drawer IO w/o rendering during viewer load. A wait timer makes sure that if it's already done, we give the viewer a few hundred ms to render/reflow.
  • Make sure we restart supervisord after tweaking the config on startup
  • #769498. A bit lighter of a background color for the drawer.
  • #769498. Reshuffled when IO, animation and viewer loading happens. For many cases this seems to drastically improve animation performance on the desktop.
  • Version bump to force build
  • fix pancake-search serial searches
  • improve stat naming in social and search apps
  • merge with default
  • merge with default
  • stats in social and search apps. this fixes #772565
  • update spec files for stats backend move
  • move lattice stats backend to pancake-common
  • #769498. Caught an additional instance of paper-opaque-sprite on stack. Moved active stack background texture to .stack and stopped tiling it. This way the browser doesn't have to reposition the background during the animation -- it just stays on the stack.
  • #769498. Merged in latest from accordion-drawer-design.
  • Merge
  • merge with default
  • Changed the run-web-gunicorn.sh script to use the default port 8000
  • Added logging levels support to the base Logger class, it will compare its this.level in each of its log|warn|info|error methods before raising the event. By default it gets its value from config.logging, so on-the-fly level changes can be made e.g. during debugging. Refs: https://bugzilla.mozilla.org/show_bug.cgi?id=772864
  • merge with default
  • add front-end logging config in pancake-web
  • Upped the release again to r171 now including thumbnailer code.
  • Tagged release
  • Added tag release-12071101 for changeset ad3079ade7ed
  • merge with default
  • fix #772562 : redis lua data serialization/deserialization is not returning the same data. it still doesn't, but at least stat caching works
  • Blur the search box when the X button is clicked to ensure the device keyboard goes away. Refs: https://bugzilla.mozilla.org/show_bug.cgi?id=772411
  • Clearing the search now sets the '#' route - which brings us back to the home page. Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=772411
  • #769498. Load all places at least once before opening the stack. Additionally, if the stack is closed, move places without the animation. This means that places will not hop to top during the initial stack open/load sequence. It also means a stack won't open before it's got its places. The viewer reacts immediately, though. Should improve performance.
  • Removed all non-icon background images.
  • Merged latest from default
  • #769498. Removed HTML's background texture (a PNG composite). We don't lose much without it, and the result is faster. Switched to opaque horizontal sprite for all drawer textures. This sprite has divider lines drawn as part of the image, so we don't have to composite them.
  • #769498. Since the active state for places is now a separate image so we can avoid compositing, we preload it by assigning it to .accordion. Use background-position to make sure it doesn't appear on screen.
  • #769498. Made place divider image part of the background texture used for individual places. One less composit/multiple background.
  • #769498. Slightly darker background color matches original graphic more closely.
  • #769498. Narrower sprite means fewer horizontal bits read.
  • bump versions
  • merge
  • Add missing aws section to the api server config
  • #769498. Merged latest from default and moved changes to wait into PromisePlusPlus.
  • #769498. Removed white texture from drawer. It wasn't buying us much. In process of switching from horizontal png sprites to simpler vertical sprites.
  • Ensure we use stack models from the drawer's stacks collection in augmentAndRouteToStack. Some refactoring to merge in places from the social stacks. Cut down on re-rendering by not raising events from stackmodel.social()'s success handler - the adding and moving and rendering takes place directly afterwards anyway. Refs: https://bugzilla.mozilla.org/show_bug.cgi?id=769418
  • Quieten down the console.logging in the xmessage lib
  • lattice: fixed admin dashboard, made hourly graph show correct timezone
  • merge with default
  • lattice: fix admin interface issue with datetimes
  • #769498. Fixed stack collapse problem. It turned out this was caused by the onStateChange changes, which toggled the visibility of the view depending on the number of elements in the collection + loading state. We don't care about representing loading state in the drawer, since the Promise chain + APIs more or less guarantee some content to show during loading. Removed from bound events.
  • Removed old logging.
  • #769498. Moved events into bindEvents method to match changes to ListView. Moved activated class change up to this.el, rather than .place. No longer saving height to model. We weren't using it.
  • #769498. Prevent mysterious exceptions if bindEvents is specialized and does not return this.
  • #769498. Merged latest from css-transitions.
  • #769498. Changed from PNG shadows to box-shadow on the hunch that we'll get better compositing performance that way.
  • Merge from default
  • bug 772209. Update to use Azure Bing APIs
  • Merge from default
  • merge
  • add missing config-src for boxgrinder
  • merge with default
  • fix redis client initialization
  • merge
  • merge
  • bump thumbnailer release with userdata-generated configs
  • Try and autoconfigure the task instance with cloud-init userdata
  • rev up the thumbnailer version for the new phantomjs
  • lattice: made stats backend not crash if the redis client goes away, send a message when an api is called for a user that doesn't exist
  • #770634. Added white spinner .png along with CSS animated transforms to make it spin. Looking good.
  • #770634. Fixed greyed-out transition for search results.
  • #770634. Re-worked animation approach for HeadingListViews. Lists come in invisible, and are faded in initially. If loading is kicked off after the initial render, the spinner just overlays the rendered results.
  • Changes to pancake-common packaging. Increased revision to 181
  • merge with default
  • fix caching issue in the stats module: the caching scripts would too aggressively cache data ahead of time
  • Refactor of Url class fixes: #772020, #772019, #772021
  • New url parsing implementation borrowed from Dojo; .hostname vs. .host - mean what they used to. BUt .hash is replaced by .fragment. Unit tests fixed, integration not yet tested
  • Tagged release 120712 / r180
  • Added tag release-12071201 for changeset 6682fb2584ec
  • #769498. Yup, more promise chain tweaks. Kicking off drawer IO w/o rendering during viewer load. A wait timer makes sure that if it's already done, we give the viewer a few hundred ms to render/reflow.
  • Make sure we restart supervisord after tweaking the config on startup
  • #769498. A bit lighter of a background color for the drawer.
  • #769498. Reshuffled when IO, animation and viewer loading happens. For many cases this seems to drastically improve animation performance on the desktop.
  • Version bump to force build
  • fix pancake-search serial searches
  • improve stat naming in social and search apps
  • merge with default
  • merge with default
  • stats in social and search apps. this fixes #772565
  • update spec files for stats backend move
  • move lattice stats backend to pancake-common
  • #769498. Caught an additional instance of paper-opaque-sprite on stack. Moved active stack background texture to .stack and stopped tiling it. This way the browser doesn't have to reposition the background during the animation -- it just stays on the stack.
  • #769498. Merged in latest from accordion-drawer-design.
  • Merge
  • merge with default
  • Changed the run-web-gunicorn.sh script to use the default port 8000
  • Added logging levels support to the base Logger class, it will compare its this.level in each of its log|warn|info|error methods before raising the event. By default it gets its value from config.logging, so on-the-fly level changes can be made e.g. during debugging. Refs: https://bugzilla.mozilla.org/show_bug.cgi?id=772864
  • merge with default
  • add front-end logging config in pancake-web
  • Upped the release again to r171 now including thumbnailer code.
  • Tagged release
  • Added tag release-12071101 for changeset ad3079ade7ed
  • merge with default
  • fix #772562 : redis lua data serialization/deserialization is not returning the same data. it still doesn't, but at least stat caching works
  • Blur the search box when the X button is clicked to ensure the device keyboard goes away. Refs: https://bugzilla.mozilla.org/show_bug.cgi?id=772411
  • Clearing the search now sets the '#' route - which brings us back to the home page. Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=772411
  • #769498. Load all places at least once before opening the stack. Additionally, if the stack is closed, move places without the animation. This means that places will not hop to top during the initial stack open/load sequence. It also means a stack won't open before it's got its places. The viewer reacts immediately, though. Should improve performance.
  • Removed all non-icon background images.
  • Merged latest from default
  • #769498. Removed HTML's background texture (a PNG composite). We don't lose much without it, and the result is faster. Switched to opaque horizontal sprite for all drawer textures. This sprite has divider lines drawn as part of the image, so we don't have to composite them.
  • #769498. Since the active state for places is now a separate image so we can avoid compositing, we preload it by assigning it to .accordion. Use background-position to make sure it doesn't appear on screen.
  • #769498. Made place divider image part of the background texture used for individual places. One less composit/multiple background.
  • #769498. Slightly darker background color matches original graphic more closely.
  • #769498. Narrower sprite means fewer horizontal bits read.
  • bump versions
  • merge
  • Add missing aws section to the api server config
  • #769498. Merged latest from default and moved changes to wait into PromisePlusPlus.
  • #769498. Removed white texture from drawer. It wasn't buying us much. In process of switching from horizontal png sprites to simpler vertical sprites.
  • Ensure we use stack models from the drawer's stacks collection in augmentAndRouteToStack. Some refactoring to merge in places from the social stacks. Cut down on re-rendering by not raising events from stackmodel.social()'s success handler - the adding and moving and rendering takes place directly afterwards anyway. Refs: https://bugzilla.mozilla.org/show_bug.cgi?id=769418
  • Quieten down the console.logging in the xmessage lib
  • lattice: fixed admin dashboard, made hourly graph show correct timezone
  • merge with default
  • lattice: fix admin interface issue with datetimes
  • #769498. Fixed stack collapse problem. It turned out this was caused by the onStateChange changes, which toggled the visibility of the view depending on the number of elements in the collection + loading state. We don't care about representing loading state in the drawer, since the Promise chain + APIs more or less guarantee some content to show during loading. Removed from bound events.
  • Removed old logging.
  • #769498. Moved events into bindEvents method to match changes to ListView. Moved activated class change up to this.el, rather than .place. No longer saving height to model. We weren't using it.
  • #769498. Prevent mysterious exceptions if bindEvents is specialized and does not return this.
  • #769498. Merged latest from css-transitions.
  • #769498. Changed from PNG shadows to box-shadow on the hunch that we'll get better compositing performance that way.
  • Merge from default
  • bug 772209. Update to use Azure Bing APIs
  • Merge from default
  • merge
  • add missing config-src for boxgrinder
  • merge with default
  • fix redis client initialization
  • merge
  • merge
  • bump thumbnailer release with userdata-generated configs
  • Try and autoconfigure the task instance with cloud-init userdata
  • rev up the thumbnailer version for the new phantomjs
  • lattice: made stats backend not crash if the redis client goes away, send a message when an api is called for a user that doesn't exist
  • #770634. Added white spinner .png along with CSS animated transforms to make it spin. Looking good.
  • #770634. Fixed greyed-out transition for search results.
  • #770634. Re-worked animation approach for HeadingListViews. Lists come in invisible, and are faded in initially. If loading is kicked off after the initial render, the spinner just overlays the rendered results.
  • #770634. Moved margins to more predectable wrapping content div.
  • #770634. StackHeadingListView now supports heading and no-heading variants.
  • #770634. Stand-in styles for our loading indicator.
  • #770634. A promise-based animation chain for transitioning from loading that fades out the loader, animates the section height and fades in the content.
  • #770634. No need to bind here.
  • #770634. Another change of mind. We do need another promise helper, an animation Promise. Let's load in the Promise module, augment it and return a PromisePlusPlus object.
  • #770634. Second guessing myself here. I don't think we'll have a lot of other promise helpers, so changing the module to just 'wait' for now.
  • #770634. Pass state, prevState and context.
  • #770634. Moved wait function into 'morepromises' module so we can use it in more than one place.
  • fix social app crashing due to stats collection rename
  • The indexOf test in _moveStack is getting tripped up as the model ids match but aren't the same object (.cid does not match); so try to use the collection's model. Refs: https://bugzilla.mozilla.org/show_bug.cgi?id=769418
  • Ensure setTimeout gets a numeric interval
  • #770634. ListView now toggles it's visibility based on loading state + collection length. This should be synonymous with toggling based on collection length in render func.
  • #770634. Basic loading element test.
  • #770634. Added a loading attachpoint. If the state of the listview is loading, ListView will do a lookup on the loading DOMEl and show/hide it.
  • #770634. We should not be firing state events unless the state has in fact changed.
  • #770634. Separated event binding from constructor. This allows specialized classes to override event bindings easily. Misc cleanup.
  • bug 747906. Adding revision date to the privacy policy and terms of service.
  • merge with default
  • add dashboard/stats/daily api to retrieve stats from the lattice admin
  • #770634. De-tangled 'reset everything' from 'reset list' in ListView. Also added getModelData -- a wrapper method that allows specialized classes to modify the data returned for the template.
  • Added a script to start the server with gunicorn. Removed the WebError module from the development pipeline.
  • Add session/active to the ajax adapter so the 404 we get when requesting active sessions from a newly created account doesn't trigger an error. Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=771127
  • Merge
  • Move all the spinner rules into the loading.css; .loading-overlay is now .spinner-overlay
  • Moved the spinner out into its own module, and added it to common - which should make it available asap for all pages
  • merge with default
  • admin graph fix to show one less month in the future, now capturing absolute numbers for stats in redis
  • rename stats_timing function to log_timing to better reflect what it does
  • Less logging from the noisy alert logger
  • Reworking the promise chain in toStackAndPlace to facilitate troubleshooting, and ensure expected return values are passed/received. Fix(?) wait to ensure value is passed always
  • Fix to change handler.app to handler.application
  • rev up the thumbnailer version for the new phantomjs
  • fixup the phantomjs build to use the packaged version
  • merge with default
  • remove unneeded application references in pancake-social and pancake-search
  • remove needless application references in lattice handlers
  • Merge
  • Bumped version to force build
  • fix spec files for build
  • merge with default

Frontend/Backend Changes

iOS Changes

  • Fix for 773258 - Persona login redirecting to Safari
  • Fix for 772300 - Implement the #NATIVE option for BrowserID
  • Changed development to point to nginx on play instead of gunicorn
  • Fix for 771282 - Pancake does not work in the Upside Down position
  • Removed old files from project.

Compatibility with the iOS application

Deployment Notes

Migration Scripts

Dependencies

Configuration Changes

Changes in Infrastructure?