Version History
1.1.2Released May 22, 2012
- - ADD: additional UIColor utilities for dealing with hex strings
- - ADD: support for customizing warning polygons using core map config plist
- - FIX: crash when returning to map if polygon warnings are active
- - MOD: improved performance of storm cell annotations when accessing custom config options
- - DEMO: auto-updating iPad weather data for main full weather view when app becomes active
1.1.1Released May 17, 2012
- - ADD: UIColor category for converting hex strings to UIColor instances
- - ADD: additional map config options
- - ADD: affect action support to earthquakes loader
- - ADD: affects support to storm cells loader
- - ADD: delegate methods for AFWeatherMap when overlays are added and removed by overlay manager
- - ADD: polygon-based warning overlays
- - ADD: initial support for polygon overlays
- - ADD: missing records and earthquakes legend
- - ADD: multi polyline/polygon classes to better handle merging multiple polyline/polygons into a single view to improve performance
- - ADD: new polygon warnings legend
- - ADD: support for controlling which storm cell types the forecast lines and cones are plotted and their respective colors
- - ADD: support for displaying storm cell forecast cones only when cell annotation is selected (as defined in AerisMapConfig.plist)
- - ADD: support for vertical line views
- - FIX: defined bounds on forecast cone annotation to prevent re-drawing entire screen view
- - FIX: issues with certain object loaders that would cause a crash if no endpoint defined for certain methods
- - FIX: issues with interactive map options menu and new polygon overlay types
- - FIX: minor memory leak in AFAdvisory
- - FIX: specific model class not being stored through the request for parsing
- - MOD: adjusted expiration times on AFPlacesLoader
- - MOD: adjusted overlay manager to use AFMultiPolyline for the storm cell forecast lines
- - MOD: moved loading and reset controls into AFFlexibleCalloutAnnotation to be inherited by subclasses
- - MOD: updated existing legends to match style of new ones
- - MOD: updated reset stuff with flexible annotations
- - MOD: updated storm cell annotation to use modified config key for markers based on type
- - DEMO: updated location search for zip code for better results
1.1.0Released Apr 30, 2012
- - ADD: ability to pass a different model class to object loader when requesting data (used for normals/tides stations currently)
- - ADD: animations for various control elements
- - ADD: configurable settings for map legend and long-press action
- - ADD: delegate handlers for disabling animation controls for overlays that don't support it
- - ADD: displaying overlay name in control view
- - ADD: earthquake marker assets
- - ADD: earthquakes and records point data overlays
- - ADD: icons for earthquake categories
- - ADD: initial support for storm cell forecast annotation callout view
- - ADD: map config settings for controlling what is displayed on map control view
- - ADD: map controls view, moved all animation buttons and progress views into
- - ADD: missing "type" property
- - ADD: missing API parameter constants
- - ADD: new icons for records reports
- - ADD: new object loaders and model classes
- - ADD: normals models and object loaders
- - ADD: permissions loader objects
- - ADD: pie progress view for animation loading
- - ADD: property mapping for AFSunMoon relationships
- - ADD: schema/property validation in unit testing
- - ADD: singleton map settings class for user-defined options
- - ADD: sst and chlorophyll tile overlays
- - ADD: support for map customizations (marker images, legends, animation speed, map button graphics, overlay alpha)
- - ADD: support for search action in object loader
- - ADD: support for sunmoon/moonphases endpoint
- - ADD: tides models and object loaders
- - ADD: timezone property to AFTidePeriod
- - ADD: unit testing for new models
- - FIX: added autoresizing mask settings to weather map view instance
- - FIX: added catch to return nil for setting value if no settings file found
- - FIX: animated overlay timestamp not being reset to most recent when stopping animation and switching to static view
- - FIX: animation flag not being set properly when switching tile overlays
- - FIX: bug where map control background view would not be resized properly when leaving map view controller then returning back to it
- - FIX: bug where overlays were not re-added to the map view when resuming to interactive map controller
- - FIX: bug with animation thinking it's been loaded after previous load was cancelled, thus starting the animation without having all images
- - FIX: catch to lock lat/lon to real-world bounds to prevent api request errors
- - FIX: cleaned up map control view resizing animation issues
- - FIX: crash if circular/point annotations didn't exist when trying to remove from map
- - FIX: crash in overlay animation when trying to add `nil` image into dictionary store
- - FIX: crash when calling advance on AFOverlayAnimation and no images were successfully loaded during last queue process
- - FIX: crash when rotating ipad in StaticMapViewControllerHD
- - FIX: crash when starting overlay animation due to trying to remove _pointAnnotation before it was created
- - FIX: crash when totalIntervals is greater than available timestamps in AFOverlayAnimation
- - FIX: custom observation callout not showing loading view while data is loading
- - FIX: final working version of custom annotation callout view
- - FIX: initial instance of circular annotation was not animating
- - FIX: issue where overlay animation loading was not cancelled properly when stopAnimatingOverlays was called from manager
- - FIX: issue with animation view not being removed when zooming map using double-tap gesture
- - FIX: issue with current timestamp for overlay not always being displayed in control view
- - FIX: issue with legends display not using map config settings
- - FIX: issue with map auto-panning back to custom callout location when deselecting (caused by didMoveToSuperview being called when removed)
- - FIX: limit was being overridden in object loader request
- - FIX: major bug with timers getting whacked out when starting animation loading, then canceling, then starting again
- - FIX: map animation container frame not updating properly on interface orientation changes
- - FIX: map animations not stopping before map region changes
- - FIX: map legend not centered based on map when interface orientation changed
- - FIX: memory leak in AFOverlayAnimation where core UIImageView was not being released before creating a new instance
- - FIX: memory leak with map control base path
- - FIX: missing alert.png icon for ipad advisories view
- - FIX: overlay name/timestamp labels were being removed when turning on a point data overlay, had to add check against type of overlay added
- - FIX: overlay options not properly being selected in options menu
- - FIX: permissions not properly being returned
- - FIX: positioning and drawing issues in custom callout view class
- - FIX: positioning issue with overlay timestamp
- - FIX: wrong property mapping for AFTidePeriod
- - FIX: wrong property mapping on AFRecord
- - MOD: added better sorting to storm cell query to plot more severe cells on top
- - MOD: added circular annotation view for long press gesture for currents
- - MOD: adjusted circular annotation gesture settings for better handling of slight gesture changes
- - MOD: adjusted map control view elements based on device, scaled down for iPhone
- - MOD: adjusted map options menu to be populated based on what user has access to
- - MOD: adjusted positioning of labels on AFStormCellsTableViewCell
- - MOD: adjusted progress view in/out animation
- - MOD: adjusted so storm cells only plot cones if not general cell
- - MOD: adjusted storm cell forecast polyline to go from current position to last forecast position instead of each individual period
- - MOD: adjusted to use timer-based animation instead of UIViewImage
- - MOD: final adjustments and bug fixes for long press obs feature
- - MOD: in/out animation for animation progress view depending on status of weather map animations
- - MOD: moved AFSun and AFMoon properties into core AFSunMoon class, removed separate classes as not needed
- - MOD: moved outside of core .bundle for easier editing
- - MOD: remove point data and point annotation when an animation starts, stop animation when point data is added to map
- - MOD: renamed custom callout annotation views to include "callout" for better differentiation
- - MOD: replaced parameter strings with constants from AFGlobals
- - MOD: set sort params for storm cell and reports point data
- - MOD: updated AFOverlayManager to better singleton pattern
- - MOD: updated to use UILongPressGestureRecognizer for tap and hold feature
- - DEMO: added detail view for record report
- - DEMO: added earthquakes and normals sample listings
- - DEMO: added missing weather icons
- - DEMO: added moon phases sample view, adjusted category menus for new sample views
- - DEMO: added sample listing view for nearby tides
- - DEMO: added sample sun/moon view
- - DEMO: fixed compiler warnings
- - DEMO: records listing and detail views
- - DEMO: removed call to initializeMap from viewDidAppear which was always reverting to radar overlay regardless of which option was selected from menu (iPhone)
- - DEMO: resolved compiler warnings
- - DEMO: updated so detail and forecast views update their data when app resumes from background
1.0.4Released Apr 2, 2012
- - ADD: NSString category method to format cardinal strings to all uppercase
- - ADD: pop-in animation for storm report annotations
- - ADD: support for new hailIN/hailMM for storm reports, added to demo app views
- - MOD: AFTileOverlayView now cancels all queued requests when map region changes (prevents unnecessary requests in background…slowing the rendering of visible tiles)
- - MOD: cleaned up storm report annotation/view output
- - MOD: removed detail value for storm wind damage reports
- - FIX: "-0" issue for temps, caused by using floats instead of integers
- - FIX: additional fuzzyString method on NSDate to adjust passed timezone to nearest hour for proper day string formatting based on API response
- - FIX: bug where radar and satellite overlays were not always inserted on top of overlay stack
- - FIX: bug where radar overlay was not always reappearing when returning to map view
- - FIX: bug with map overlays not fetching latest timestamps when data expires (prevented radar tiles from updating)
- - FIX: data formatting for storm report annotation view overlays
- - FIX: issue with alert.png icon not appearing in AFObservationAdvisoriesView
- - FIX: minor improvements to tile overlay views, added checks to prevent same tile from being added to queue more than once
1.0.3Released Feb 2, 2012
- - ADD: additional support for setting a default timezone for static NSDateFormatter and NSCalendar instances in NSDate category methods
- - ADD: some additional logging when [AerisEngine enableDebug] is true
- - MOD: added time zone property to AFObservation, AFStormReport and deprecated `validTime` properties on models
- - MOD: changed NSString and NSArray property declarations from "retain" to "copy"
- - MOD: updated properties on AFFire to reflect latest changes in api
- - FIX: forecast date issue where the actual timezone for the location was not being used (just device's timezone was)
- - FIX: memory leak of overlay instances within AFOverlayAnimation not being released property, nor object itself
- - FIX: additional fuzzyString method on NSDate to adjust passed timezone to nearest hour for proper day string formatting based on API response
1.0.2Released Jan 12, 2012
- - ADD: missing model properties on AFStormCell, AFObservation, AFPlace, AFAdvisory
- - ADD: support for specifying an API version for all requests in AerisEngine
- - ADD: missing snow/blizzard icons in AerisUI.bundle
- - ADD: custom AFScrollView class that extends UIScrollView for custom implementation eventually
- - MOD: updated AFForecastDetailView to allow switching "Precip" label to "Snow" if setting snow property
- - FIX: issue with some AFPlace properties not being retained properly
- - FIX: ForecastPeriod storing wrong value for minTempC, gives 0 for all instances
1.0.1Released Dec 1, 2011
- - ADD: new properties in models (AFObservation, AFForecast) to match those added in the API
- - ADD: end-user debugging for API requests; to enable, call [AerisEngine enableDebug] after initializing AerisEngine with your consumer key and secret
- - MOD: better handling when requesting objects with invalid AFPlace instances, will not fail before attempting to request from the API
- - MOD: updated AFPlace so that if a state is not provided for all US locations, the framework will see it as invalid and force object requests with that place to fail
- - FIX: resolved crash that was occurring for some users when interacting with an AFWeatherMap instance due to use of objective-c blocks
1.0Released Oct 21, 2011