You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We call _check_for_telemetry_consent before each command run. However, in the rest of the cases, we call _check_for_telemetry_consent after the context is created but we also check if self._consent was not set:
It makes it impossible to override the consent from the .telemetry by setting the environment variable ("DO_NOT_TRACK" or "KEDRO_DISABLE_TELEMETRY") for example in interactive environments.
Steps to Reproduce
create .telemetry with consent: true
kedro ipython
consent in .telemetry is set to true, telemetry is sent (as expected}
set os.environ["DO_NOT_TRACK"] = "true"
%reload_ext kedro.ipython
consent in .telemetry is set to true, os.environ["DO_NOT_TRACK"] is true, telemetry is still sent (not expected)
The same issue if changing .telemetry in interactive environment:
create .telemetry with consent: true
kedro ipython
consent in .telemetry is set to true, telemetry is sent (as expected}
update .telemetry with consent: false
%reload_ext kedro.ipython
consent in .telemetry is set to false, telemetry is still sent (not expected)
The text was updated successfully, but these errors were encountered:
On #791 I tried to change the after_context_created hook to always set self._consent insead of only when it's None. It stops further unwanted calls every time we reload IPython with the DO_NOT_TRACK variable set. However, it still sends info to heap after the IPython shell is exited.
If you edit the .telemetry file itself inside IPython, it still sends info to heap once, because when the command was first called consent was true. I think this is a weird behavior. I'm looking into it further.
However, it still sends info to heap after the IPython shell is exited.
I think that's fine because the environment variable is set for the IPython shell, so that's the expected behaviour.
If you edit the .telemetry file itself inside IPython, it still sends info to heap once
This one also seems fine to me, as we give an option on how to disable it completely with .telemetry before the run. But if users forget - they still can do it inside IPython.
Description
Relates to #762 and kedro-org/kedro#4024
Context
We call
_check_for_telemetry_consent
before each command run. However, in the rest of the cases, we call_check_for_telemetry_consent
after the context is created but we also check ifself._consent
was not set:kedro-plugins/kedro-telemetry/kedro_telemetry/plugin.py
Line 209 in 24cd01c
It makes it impossible to override the consent from the
.telemetry
by setting the environment variable ("DO_NOT_TRACK"
or"KEDRO_DISABLE_TELEMETRY"
) for example in interactive environments.Steps to Reproduce
.telemetry
withconsent: true
kedro ipython
.telemetry
is set to true, telemetry is sent (as expected}os.environ["DO_NOT_TRACK"] = "true"
%reload_ext kedro.ipython
.telemetry
is set to true,os.environ["DO_NOT_TRACK"]
is true, telemetry is still sent (not expected)The same issue if changing
.telemetry
in interactive environment:.telemetry
withconsent: true
kedro ipython
.telemetry
is set to true, telemetry is sent (as expected}.telemetry
withconsent: false
%reload_ext kedro.ipython
.telemetry
is set to false, telemetry is still sent (not expected)The text was updated successfully, but these errors were encountered: