Skip to content

Commit 0f0ed79

Browse files
committed
Opt-in for telemetry
1 parent 84b0e20 commit 0f0ed79

File tree

2 files changed

+33
-4
lines changed

2 files changed

+33
-4
lines changed

config.py

-4
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,6 @@ def get_settings(key: str, default=None):
1313

1414
if settings is None:
1515
settings = sublime.load_settings('Emmet.sublime-settings')
16-
if not settings.get('uid'):
17-
uid = str(uuid.uuid4())
18-
settings.set('uid', uid)
19-
sublime.save_settings('Emmet.sublime-settings')
2016
settings.add_on_change('config', handle_settings_change)
2117

2218
return settings.get(key, default)

telemetry.py

+33
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import uuid
12
import urllib
23
import sublime
34
from .config import get_settings
@@ -94,3 +95,35 @@ def _flush_queue():
9495
if queue:
9596
# print('schedule next request')
9697
schedule_send()
98+
99+
100+
def check_telemetry():
101+
settings = sublime.load_settings('Emmet.sublime-settings')
102+
updated = False
103+
if not settings.get('uid'):
104+
uid = str(uuid.uuid4())
105+
settings.set('uid', uid)
106+
updated = True
107+
108+
if settings.get('telemetry', None) is None:
109+
allow_telemetry = ask_for_telemetry()
110+
settings.set('telemetry', bool(allow_telemetry))
111+
updated = True
112+
113+
if updated:
114+
sublime.save_settings('Emmet.sublime-settings')
115+
116+
117+
def ask_for_telemetry():
118+
return sublime.ok_cancel_dialog(
119+
"""
120+
Would you like to enable anonymous usage stats for Emmet?
121+
122+
It will help me better understand how Emmet is used and prioritize future improvements.
123+
124+
You can enable/disable telemetry later via Preferences > Package Settings > Emmet2 > Settings
125+
""", 'Yes, enable telemetry')
126+
127+
128+
def plugin_loaded():
129+
check_telemetry()

0 commit comments

Comments
 (0)