Граф коммитов

214 Коммитов

Автор SHA1 Сообщение Дата
Bianca Danforth dbf9036fc8 Fix #156: Add extension UI probes
* Add `open_popup`, `open_external_page`, `add_product`, `delete_product` and `undo_delete_product` probes (See ./docs/METRICS.md for their specifications).
* Update `badge_type` `extra_key` description in METRICS.md to add a new enum value of 'unknown' in the case that the badge text is unrecognized, and a badge type cannot be determined.
* Update `addProductFromExtracted` action creator to return a thunk, which returns a random UUID (v4) for use as a product key in telemetry. This allows us to differentiate one product from another for a particular user. This is NOT a universal product id across all users.
* Add `tabId` URL searchParam to browserAction popup URL when an extracted product is found on the current page in order to obtain the `badge_type` `extra_key` value for the `open_popup` event.
2018-10-22 16:16:22 -07:00
Michael Kelly c5a10fd001
Merge pull request #194 from mozilla/name-change
Update name to Price Scout.
2018-10-22 15:13:49 -07:00
Michael Kelly 5b1795d054
Update name to Price Scout. 2018-10-22 14:36:53 -07:00
Michael Kelly 96edae7d94
Merge pull request #188 from mozilla/version-limit
Fix #187: Limit add-on to Firefox 63.0 and higher.
2018-10-22 10:57:24 -07:00
Michael Kelly f32a4e6f11
Fix #187: Limit add-on to Firefox 63.0 and higher. 2018-10-20 17:39:13 -07:00
Michael Kelly cd3cf902a7
4.0.0 2018-10-20 15:44:36 -07:00
Michael Kelly e1a940c605
Merge pull request #180 from mozilla/dismiss-alerts
Fix #112, fix #60: Dismiss price alerts when browser action closes.
2018-10-20 01:00:41 -07:00
Michael Kelly f5f70e4502
Fix #112, fix #60: Dismiss price alerts when browser action closes.
Switch to using a messaging port disconnect to detect when the browser action
closes. Without this, dismissing price alerts is not consistent as the JS
context for the browser action is unloaded before the async work of updating
the store is finished.

Because we are no longer performing async work after the browser action unloads,
we no longer see the errors from #60 about promises resolving after the context
is destroyed.
2018-10-20 00:53:59 -07:00
Michael Kelly 402bc228e3
Merge pull request #168 from mozilla/privacy-controls
#72: Disable extraction in private browsing sessions.
2018-10-18 15:30:54 -07:00
Michael Kelly 42a19c794a
Remove leftover testing lines. 2018-10-18 15:17:05 -07:00
Michael Kelly 9e19a9da69
Refactor privacy checks for easier readability. 2018-10-18 15:17:05 -07:00
Michael Kelly 07e0673ede
Fix #72: Disable extraction, telemetry, price updates for privacy settings. 2018-10-18 15:17:04 -07:00
Michael Kelly ba7fe28803
3.0.0 2018-10-18 15:13:37 -07:00
Michael Kelly a19892330f
Merge pull request #171 from mozilla/fix-favicon
Fix error fetching favicon during background updates.
2018-10-18 15:12:33 -07:00
Michael Kelly 06634b119e
Fix error fetching favicon during background updates. 2018-10-18 14:29:23 -07:00
Michael Kelly 30b168a0b6
Merge pull request #170 from mozilla/message-refactor
Centralize message handling to allow for multiple async listeners.
2018-10-18 14:01:30 -07:00
Michael Kelly 2c315158c9
Fix bug in extraction message handling. 2018-10-18 13:57:34 -07:00
Michael Kelly 851a203c2d
Centralize message handling to allow for multiple async listeners. 2018-10-18 13:55:56 -07:00
Michael Kelly 1206afebf6
Merge pull request #176 from mozilla/proptype-error
Provide value for isTracked prop when no product is extracted.
2018-10-18 12:21:49 -07:00
Michael Kelly 9ef0e213df
Provide value for isTracked prop when no product is extracted.
React logs a proptype error to the console constantly without this.
2018-10-17 13:44:53 -07:00
Michael Kelly 7c69875faa
2.6.0 2018-10-16 15:41:00 -07:00
Michael Kelly c9aa195fed
2.5.0 2018-10-16 15:37:06 -07:00
Michael Kelly 18dd0995f4
Merge pull request #175 from mozilla/update-manifest
Add update URL to manifest.
2018-10-16 15:36:40 -07:00
Michael Kelly 1311607424
Add update URL to manifest. 2018-10-16 15:35:23 -07:00
Michael Kelly 7997aea1f8
2.4.0 2018-10-16 15:30:43 -07:00
Michael Kelly edf72553e5
2.3.0 2018-10-16 15:24:50 -07:00
Michael Kelly c53709eda8
Merge pull request #174 from mozilla/fix-deploy-redirect
Remove script echo and correct redirect.
2018-10-16 15:22:04 -07:00
Michael Kelly 6f2d7c570c
Remove script echo and correct redirect. 2018-10-16 15:20:15 -07:00
Michael Kelly fa736daa0b
2.2.0 2018-10-16 15:06:28 -07:00
Michael Kelly d6559e2f67
Merge pull request #173 from mozilla/deploy-v
Remove preceding "v" from "v1.0.0" tags during deploys.
2018-10-16 15:06:09 -07:00
Michael Kelly 5c7cf3d7a3
Remove preceding "v" from "v1.0.0" tags during deploys. 2018-10-16 15:01:42 -07:00
Michael Kelly ae2941de55
2.1.0 2018-10-16 14:53:59 -07:00
Michael Kelly 8acf1d1da4
Merge pull request #172 from mozilla/deploy-output
Output deploy script lines as they are executed to help debugging.
2018-10-16 14:53:34 -07:00
Michael Kelly 97c1e23a02
Output deploy script lines as they are executed to help debugging. 2018-10-16 14:50:47 -07:00
Michael Kelly d766aab4ca
2.0.0 2018-10-16 14:44:38 -07:00
Michael Kelly c0dd154636
Merge pull request #146 from mozilla/publish-addon
Sign and upload add-on to Test Pilot S3 bucket
2018-10-16 14:42:44 -07:00
Michael Kelly ca4caf8c78
Fix #119: Sign and upload XPI to S3 on tag. 2018-10-16 14:39:57 -07:00
Michael Kelly a428362fc4
Derive add-on version from package.json. 2018-10-16 14:39:57 -07:00
Michael Kelly 8070d936f1
Merge pull request #161 from mozilla/favicons
Fix #65: Show vendor favicons in product listing.
2018-10-16 10:18:20 -07:00
Michael Kelly b0ac113187
Add title text for overflowing product details. 2018-10-16 10:07:18 -07:00
Michael Kelly 9b24973f99
Band-aid over wrapping issue in product card. 2018-10-15 13:58:24 -07:00
Michael Kelly a04bae1952
Fix #65: Show vendor favicons in product listing. 2018-10-15 13:43:05 -07:00
Bianca Danforth 0adab80b9b
Merge pull request #148 from mozilla/134-telemetry-ping
Fix #134: Add METRICS.md and initial telemetry setup
2018-10-15 13:30:37 -07:00
Bianca Danforth 1b88819279 Incorporate feedback from teonbrooks
* Add Feature Engagement definition.
2018-10-15 13:28:52 -07:00
Bianca Danforth 61a55bc39d Replace 'supported_sites' scalar with 'visit_supported_site' event
Event telemetry is easier from the analysis perspective to answer questions around frequency of visits.
2018-10-15 13:27:41 -07:00
Bianca Danforth d70ffd5d0e Incorporate more feedback
Incorporate more feedback on the metrics used for the extension.

METRICS.md
* For the `open_external_page` probe, moved the ‘objects’ enums to their own ‘extra_key’, ‘element’. This is so that the schema doesn’t have to change if the content of these UI elements changes down the road (feedback from Osmose).
* Arrange list items in Definitions section in alphabetical order and add Price Alert definition.
* Move questions under ‘Does it affect user behavior in Firefox?’ in the Analysis section to the ‘Questions to answer in future experiments’ subsection.
* Fixed probe name typos.
* Ensured consistent whitespace and use of markdown symbols.

telemetry.js
* Instead of exporting a single object, export the methods from the module directly.
* Update probes based on changes to METRICS.md

config.js
* Unrelated to the telemetry issue here; fixed a typo I noticed.
2018-10-15 13:27:41 -07:00
Bianca Danforth b11b726c32 Incorporate feedback from various sources
METRICS.md
* Reorganized the questions in the Analysis section to fall under broad categories of questions.
* Added a scalar 'supported_sites' to keep track of the number of times the user visits one of the five supported websites.
* Added an 'extra_keys' section that explains up front what each key represents.
* Made data types for all scalar and event telemetry values more explicit.
* Added a 'detect_price_change' event.
* Updated and added new keys to provide more context around certain events and ensure data collection is Category 1 or 2 at most.

telemetry.js
* Updated registered events and scalars to match METRICS.md

Note: While this patch does not record any events or scalars itself, recording can be tested with the following after 'telemetry.recordProbes()' in './src/background/index.js':
```javascript
await telemetry.scalarAdd('supported_sites', 1);
await telemetry.recordEvent(
  'badge_toolbar_button',
  'toolbar_button',
  null,
  {
    badge_type: 'add',
    tracked_prods: '5',
  },
);
```
2018-10-15 13:27:41 -07:00
Bianca Danforth 8d3a7e8030 Fix #134: Add METRICS.md and initial telemetry setup
* Adds METRICS.md document in a new 'docs' subfolder.
* Adds 'telemetry.js' background script which registers all events and provides a wrapper method to record events.
  * The event 'send_system_notice' was originally 'send_system_notification', however, that exceeded the [string length limit](https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/collection/events.html#limits) imposed by Event Telemetry.
  * There is no need to unregister the events, as the events are only registered for the duration of the [current Firefox session](https://dxr.mozilla.org/mozilla-central/source/toolkit/components/telemetry/core/nsITelemetry.idl#484).

Note: This PR does not actually record any events. That will happen in subsequent PRs. For the setup here, I did confirm that I can successfully records events in 'about:telemetry#events-tab' once 'browser.telemetry.recordEvent' is called. This can be confirmed by adding `telemetry.recordEvent('badge_toolbar_button', 'toolbar_button', null, {badge_type: 'add'});` after `telemetry.init()` in './src/background/index.js'.
2018-10-15 13:27:41 -07:00
Bianca Danforth 7074d3fb48
Merge pull request #153 from mozilla/116-undo-ui
Fix #116: Update Undo UI to final design
2018-10-12 18:12:46 -07:00
Michael Kelly c94c315d9b
Reuse menu-item styles for undo view. 2018-10-12 16:13:24 -07:00