Closed Bug 1425918 Opened 6 years ago Closed 6 years ago

notifications not being displayed on mac in nightly 59

Categories

(Toolkit Graveyard :: Notifications and Alerts, defect)

defect
Not set
normal

Tracking

(firefox58 unaffected, firefox59+ fixed)

RESOLVED DUPLICATE of bug 952453
Tracking Status
firefox58 --- unaffected
firefox59 + fixed

People

(Reporter: bkelly, Assigned: qdot)

References

(Blocks 1 open bug)

Details

(Keywords: regression, regressionwindow-wanted)

[Tracking Requested - why for this release]:

STR:

1. Launch nightly 59
2. Open https://gauntface.github.io/simple-push-demo/
3. Enable push notifications and accept the permission
4. Click "Send Push via XHR"

Normally a notification should appear.  In nightly 59 on mac, though, no notification is shown.  I've noticed missing notifications in other sites as well.

I tested in FF58 and notifications seem to work fine.  I also checked a separate profile and FF59 still does not work.
My about:support:

Application Basics
------------------

Name: Firefox
Version: 59.0a1
Build ID: 20171218100313
Update Channel: nightly
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:59.0) Gecko/20100101 Firefox/59.0
OS: Darwin 15.6.0
Multiprocess Windows: 1/1 (Enabled by default)
Web Content Processes: 4/4
Stylo: content = true (enabled by default), chrome = false (disabled by default)
Google Key: Found
Mozilla Location Service Key: Found
Safe Mode: false

Crash Reports for the Last 3 Days
---------------------------------

All Crash Reports

Nightly Features
----------------

Name: Activity Stream
Version: 2017.12.08.1270-dc9d0c0e
ID: activity-stream@mozilla.org

Name: Application Update Service Helper
Version: 2.0
ID: aushelper@mozilla.org

Name: Firefox Screenshots
Version: 25.0.0
ID: screenshots@mozilla.org

Name: Follow-on Search Telemetry
Version: 0.9.6
ID: followonsearch@mozilla.com

Name: Form Autofill
Version: 1.0
ID: formautofill@mozilla.org

Name: Photon onboarding
Version: 1.0
ID: onboarding@mozilla.org

Name: Pocket
Version: 1.0.5
ID: firefox@getpocket.com

Name: Presentation
Version: 1.0.0
ID: presentation@mozilla.org

Name: Shield Recipe Client
Version: 80
ID: shield-recipe-client@mozilla.org

Name: Web Compat
Version: 1.1
ID: webcompat@mozilla.org

Name: WebCompat Reporter
Version: 1.0.0
ID: webcompat-reporter@mozilla.org

Extensions
----------

Name: Gecko Profiler
Version: 0.17
Enabled: true
ID: geckoprofiler@mozilla.com

Name: Multi-Account Containers
Version: 4.1.0
Enabled: true
ID: @testpilot-containers

Graphics
--------

Features
Compositing: OpenGL
Asynchronous Pan/Zoom: wheel input enabled; scrollbar drag enabled; keyboard enabled; autoscroll enabled
WebGL 1 Driver WSI Info: CGL
WebGL 1 Driver Renderer: NVIDIA Corporation -- NVIDIA GeForce GT 650M OpenGL Engine
WebGL 1 Driver Version: 4.1 NVIDIA-10.10.14 310.42.25f02
WebGL 1 Driver Extensions: GL_ARB_blend_func_extended GL_ARB_draw_buffers_blend GL_ARB_draw_indirect GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader5 GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_shading_language_include GL_ARB_tessellation_shader GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_vertex_attrib_64bit GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_framebuffer_multisample_blit_scaled GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier
WebGL 1 Extensions: ANGLE_instanced_arrays EXT_blend_minmax EXT_color_buffer_half_float EXT_frag_depth EXT_sRGB EXT_shader_texture_lod EXT_texture_filter_anisotropic EXT_disjoint_timer_query OES_element_index_uint OES_standard_derivatives OES_texture_float OES_texture_float_linear OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_draw_buffers WEBGL_lose_context
WebGL 2 Driver WSI Info: CGL
WebGL 2 Driver Renderer: NVIDIA Corporation -- NVIDIA GeForce GT 650M OpenGL Engine
WebGL 2 Driver Version: 4.1 NVIDIA-10.10.14 310.42.25f02
WebGL 2 Driver Extensions: GL_ARB_blend_func_extended GL_ARB_draw_buffers_blend GL_ARB_draw_indirect GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_gpu_shader_fp64 GL_ARB_gpu_shader5 GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_shading_language_include GL_ARB_tessellation_shader GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_vertex_attrib_64bit GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_framebuffer_multisample_blit_scaled GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier
WebGL 2 Extensions: EXT_color_buffer_float EXT_texture_filter_anisotropic EXT_disjoint_timer_query OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context
Off Main Thread Painting Enabled: true
GPU #1
Active: Yes
Vendor ID: 0x8086
Device ID: 0x0166

Diagnostics
AzureCanvasAccelerated: 1
AzureCanvasBackend: skia
AzureContentBackend: skia
AzureFallbackCanvasBackend: none
TileHeight: 1024
TileWidth: 1024
Decision Log
WEBRENDER:
opt-in by default: WebRender is an opt-in feature




Media
-----

Audio Backend: audiounit
Max Channels: 2
Preferred Channel Layout: stereo
Preferred Sample Rate: 44100
Output Devices
Name: Group
Internal Speakers: AppleHDAEngineOutput:1B,0,1,1:0
Input Devices
Name: Group
Internal Microphone: AppleHDAEngineInput:1B,0,1,0:1

Important Modified Preferences
------------------------------

accessibility.typeaheadfind.flashBar: 0
browser.cache.disk.capacity: 358400
browser.cache.disk.filesystem_reported: 1
browser.cache.disk.hashstats_reported: 1
browser.cache.disk.smart_size.first_run: false
browser.cache.disk.smart_size.use_old_max: false
browser.cache.frecency_experiment: 2
browser.places.smartBookmarksVersion: 8
browser.sessionstore.upgradeBackup.latestBuildID: 20171218100313
browser.startup.homepage: about:home
browser.startup.homepage_override.buildID: 20171218100313
browser.startup.homepage_override.mstone: 59.0a1
browser.tabs.warnOnClose: false
browser.urlbar.daysBeforeHidingSuggestionsPrompt: 0
browser.urlbar.lastSuggestionsPromptDate: 20170626
browser.urlbar.maxRichResults: 12
browser.urlbar.searchSuggestionsChoice: false
browser.urlbar.suggest.searches: false
browser.urlbar.timesBeforeHidingSuggestionsHint: 0
browser.urlbar.usepreloadedtopurls.enabled: false
dom.forms.autocomplete.formautofill: true
dom.push.userAgentID: d4c5467363fb4d7cbd872d27ea25ca8e
extensions.lastAppVersion: 59.0a1
font.internaluseonly.changed: false
javascript.options.asyncstack: false
media.benchmark.vp9.fps: 196
media.benchmark.vp9.versioncheck: 2
media.gmp-gmpopenh264.abi: x86_64-gcc3
media.gmp-gmpopenh264.lastUpdate: 1509904035
media.gmp-gmpopenh264.version: 1.7.1
media.gmp-manager.buildID: 20171218100313
media.gmp-manager.lastCheck: 1513606701
media.gmp-widevinecdm.abi: x86_64-gcc3
media.gmp-widevinecdm.lastUpdate: 1506698540
media.gmp-widevinecdm.version: 1.4.8.1008
media.gmp.storage.version.observed: 1
network.cookie.prefsMigrated: true
network.predictor.cleaned-up: true
places.database.lastMaintenance: 1513607498
places.history.expiration.transient_current_max_pages: 146216
plugin.disable_full_page_plugin_for_types: application/pdf
plugin.importedState: true
plugin.state.adobepdfviewernpapi: 0
print.printer__.print_bgcolor: false
print.printer__.print_bgimages: false
print.printer__.print_duplex: -437918235
print.printer__.print_edge_bottom: 0
print.printer__.print_edge_left: 0
print.printer__.print_edge_right: 0
print.printer__.print_edge_top: 0
print.printer__.print_evenpages: true
print.printer__.print_footercenter:
print.printer__.print_footerleft: &PT
print.printer__.print_footerright: &D
print.printer__.print_headercenter:
print.printer__.print_headerleft: &T
print.printer__.print_headerright: &U
print.printer__.print_in_color: true
print.printer__.print_margin_bottom: 0.5
print.printer__.print_margin_left: 0.5
print.printer__.print_margin_right: 0.5
print.printer__.print_margin_top: 0.5
print.printer__.print_oddpages: true
print.printer__.print_orientation: 0
print.printer__.print_page_delay: 50
print.printer__.print_paper_data: 0
print.printer__.print_paper_height: 11.00
print.printer__.print_paper_name: na-letter
print.printer__.print_paper_size_unit: 0
print.printer__.print_paper_width: 8.50
print.printer__.print_resolution: -437918235
print.printer__.print_reversed: false
print.printer__.print_scaling: 1.00
print.printer__.print_shrink_to_fit: true
print.printer__.print_to_file: false
print.printer__.print_unwriteable_margin_bottom: 56
print.printer__.print_unwriteable_margin_left: 25
print.printer__.print_unwriteable_margin_right: 25
print.printer__.print_unwriteable_margin_top: 25
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_bgcolor: false
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_bgimages: false
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_duplex: -437918235
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_edge_bottom: 0
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_edge_left: 0
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_edge_right: 0
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_edge_top: 0
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_evenpages: true
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_footercenter:
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_footerleft: &PT
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_footerright: &D
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_headercenter:
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_headerleft: &T
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_headerright: &U
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_in_color: true
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_margin_bottom: 0.5
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_margin_left: 0.5
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_margin_right: 0.5
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_margin_top: 0.5
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_oddpages: true
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_orientation: 0
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_page_delay: 50
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_paper_data: 0
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_paper_height: 11.00
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_paper_name: na-letter
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_paper_size_unit: 0
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_paper_width: 8.50
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_resolution: -437918235
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_reversed: false
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_scaling: 1.00
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_shrink_to_fit: true
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_to_file: false
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_unwriteable_margin_bottom: 16
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_unwriteable_margin_left: 16
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_unwriteable_margin_right: 16
print.printer_Xerox_Phaser_6128MFP-N_(d5:83:d1).print_unwriteable_margin_top: 16
privacy.userContext.extension: @testpilot-containers
security.disable_button.openCertManager: false
security.sandbox.content.tempDirSuffix: {453491f8-3ffe-754c-bc84-b9c52bd1281f}
services.sync.declinedEngines: addons,passwords
services.sync.engine.addons: false
services.sync.engine.addresses.available: true
services.sync.engine.bookmarks.validation.lastTime: 1513606683
services.sync.engine.creditcards.available: true
services.sync.engine.passwords: false
services.sync.engine.prefs.modified: false
services.sync.lastPing: 1513605533
services.sync.lastSync: Mon Dec 18 2017 13:52:12 GMT-0500 (EST)
services.sync.numClients: 11
storage.vacuum.last.index: 0
storage.vacuum.last.places.sqlite: 1513607493

Important Locked Preferences
----------------------------

Places Database
---------------

JavaScript
----------

Incremental GC: true

Accessibility
-------------

Activated: false
Prevent Accessibility: 0

Library Versions
----------------

NSPR
Expected minimum version: 4.18 Beta
Version in use: 4.18 Beta

NSS
Expected minimum version: 3.35 Beta
Version in use: 3.35 Beta

NSSSMIME
Expected minimum version: 3.35 Beta
Version in use: 3.35 Beta

NSSSSL
Expected minimum version: 3.35 Beta
Version in use: 3.35 Beta

NSSUTIL
Expected minimum version: 3.35 Beta
Version in use: 3.35 Beta

Experimental Features
---------------------

Sandbox
-------

Content Process Sandbox Level: 3
Effective Content Process Sandbox Level: 3

Internationalization & Localization
-----------------------------------

Application Settings
Requested Locales: ["en-US"]
Available Locales: ["en-US"]
App Locales: ["en-US"]
Regional Preferences: ["en","ja","fr","de","es","it","pt-BR","pt-PT","nl","sv","nb","da","fi","ru","pl","zh-Hans","zh-Hant","ko","ar","cs","hu","tr","th","ca","hr","el","he","ro","sk","uk"]
Default Locale: "en-US"
Operating System
System Locales: ["en","ja","fr","de","es","it","pt-BR","pt-PT","nl","sv","nb","da","fi","ru","pl","zh-Hans","zh-Hant","ko","ar","cs","hu","tr","th","ca","hr","el","he","ro","sk","uk"]
Regional Preferences: ["en","ja","fr","de","es","it","pt-BR","pt-PT","nl","sv","nb","da","fi","ru","pl","zh-Hans","zh-Hant","ko","ar","cs","hu","tr","th","ca","hr","el","he","ro","sk","uk"]
I'm also seeing inconsistent notifications from irccloud with today's Nightly on irccloud.  And notifications that do come through don't include icons.
Hmm.  I just got a telegram notification on this same version/session.  I wonder if we have some kind of service issue?  JR, do you see anything going on?
Flags: needinfo?(jrconlin)
Although a service issue doesn't make sense.  When my comment 0 steps were failing above I could see in browser console that a push message was still being received by the service worker.  It was notification display was just not working.
And now I see that comment 0 is creating a notification in the mac os sidebard thing, but I'm not getting the popup or sound for some reason.  I don't have DND enable.  This is really weird.
Flags: needinfo?(jrconlin)
There's been no change to the server in quite some time. 

I tried running my automatic test page:
https://jrconlin.github.io/Webpush_QA/

I got a 401 (meaning that the VAPID header failed), but when I tried to do a "data free" push using the `curl` command line (everything except the `data` portion of the POST), my service worker got the message, but did not display the notification. 

I'm going to guess that the problem may be with the notification widget.

From my browser log:
```
PushServiceWebSocket:wsOnMessageAvailable() {"messageType": "notification", "channelID": "50cf0813-104a-458a-808f-f6d744f8e98d", "version": "gAAAAABaODi3JvRDFRxKE-h-Ik3tcxXHdspXcWTmIR6btYFZMsOPo6LYDwuc_FeQzVJDhuC9AwlEbXnE0ZsFtOmTBaEihzdjWmMPTOYJOA-lLBQ7x6DXUF3IW6FdlWvXYiVvzPajMvC9KFyC7KYmtQKZwqUeAfhexjsALJCmzD37ap_1SW0o_P6HXGCEFGjI4xal8tz2_nc_"}  PushServiceWebSocket.jsm:987
PushServiceWebSocket:handleNotificationReply()  PushServiceWebSocket.jsm:718
PushService:receivedPushMessage()  PushService.jsm:747
PushDB:getByKeyID()  PushDB.jsm:196
PushDB:getByKeyID: Got record Object { pushEndpoint: "https://updates.push.services.mozil…", scope: "https://jrconlin.github.io/Webpush_…", originAttributes: "", pushCount: 1, lastPush: 1513633820209, p256dhPublicKey: ArrayBuffer, p256dhPrivateKey: Object, authenticationSecret: Uint8Array[16], systemRecord: false, appServerKey: null, 5 more… }  PushDB.jsm:207
PushDB:update: Update successful 50cf0813-104a-458a-808f-f6d744f8e98d Object { pushEndpoint: "https://updates.push.services.mozil…", scope: "https://jrconlin.github.io/Webpush_…", originAttributes: "", pushCount: 2, lastPush: 1513633977672, p256dhPublicKey: ArrayBuffer, p256dhPrivateKey: Object, authenticationSecret: Uint8Array[16], systemRecord: false, appServerKey: null, 5 more… }  PushDB.jsm:405
PushService:notifyApp() "https://jrconlin.github.io/Webpush_QA/"  PushService.jsm:920
PushServiceWebSocket:sendAck()  PushServiceWebSocket.jsm:771
PushServiceWebSocket:queueRequest() Object { messageType: "ack", updates: Array[1] }  PushServiceWebSocket.jsm:885
PushServiceWebSocket:wsSendMessage: Sending message {"messageType":"ack","updates":[{"channelID":"50cf0813-104a-458a-808f-f6d744f8e98d","version":"gAAAAABaODi3JvRDFRxKE-h-Ik3tcxXHdspXcWTmIR6btYFZMsOPo6LYDwuc_FeQzVJDhuC9AwlEbXnE0ZsFtOmTBaEihzdjWmMPTOYJOA-lLBQ7x6DXUF3IW6FdlWvXYiVvzPajMvC9KFyC7KYmtQKZwqUeAfhexjsALJCmzD37ap_1SW0o_P6HXGCEFGjI4xal8tz2_nc_","code":100}]}  PushServiceWebSocket.jsm:313
**** Recv'd a push message:: {"isTrusted":true}  sw.js:12
PushService:updateQuota()  PushService.jsm:841
PushDB:update: Update successful 50cf0813-104a-458a-808f-f6d744f8e98d Object { pushEndpoint: "https://updates.push.services.mozil…", scope: "https://jrconlin.github.io/Webpush_…", originAttributes: "", pushCount: 2, lastPush: 1513633977672, p256dhPublicKey: ArrayBuffer, p256dhPrivateKey: Object, authenticationSecret: Uint8Array[16], systemRecord: false, appServerKey: null, 5 more… }
```
Hrm, using the less automagic: https://mozilla-services.github.io/WebPushDataTestPage/ I am able to display a notification using the same browser version. 

(The 401 error occasionally crops up because of a EC js crypto bug that sometimes hits. Your mileage will vary.)
Tracking for 59. What is the next step here? 
Ben, would you like help from QE to try and find reliable STR?
Flags: needinfo?(bkelly)
I think the steps in comment 0 are pretty good for reproduction if you try them a few times.  I don't know under what circumstances we sometimes get a notification.
Flags: needinfo?(bkelly)
Kit, do you have any idea what could be happening here?
Flags: needinfo?(kit)
This was discussed at triage, and I mentioned to Andrew that in 10.13.3 I cannot get the notification in the latest 58 beta or latest nightly. I followed the Steps in Comment 0.
I'm seeing the same behavior as Ben in comment 5: on Nightly, the notification always shows up in the sidebar, but I never see the popup or sound. This happens consistently for me; I can't get any site or the Browser Console to show one. On Beta (58.0b13), I *do* get the popup and sound, plus the notification in the sidebar.

My STR:

* Enable chrome debugging and remote debugging in Dev Tools.
* Open the Browser Console.
* Paste `Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService).showAlertNotification(null, 'Some title', 'Some body text', true, null, null, null, null, null, null, Services.scriptSecurityManager.getSystemPrincipal(), false, false)`.

I'm on macOS 10.12.6. The notification doesn't have an image or action buttons, so it doesn't seem related to that. I do have "Badges, Sounds, Banners" enabled in System Prefs > Notifications.
Assuming this was bug 952453. I kinda overreached on removing mozNotification and took all of the mac notification system with it. It has been restored in m-c as of today.
Assignee: nobody → kyle
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → DUPLICATE
Thanks, :qdot!
Flags: needinfo?(kit)
Product: Toolkit → Toolkit Graveyard
You need to log in before you can comment on or make changes to this bug.