Privacy Notice
This notice was last updated on 6 February 2024. We may change this notice from time to time, so please check this page for updates.
We are committed to respecting your data privacy and we avoid collecting information from our products that could identify you as an individual wherever possible. Please note, however, that using our licensing feature does result in us collecting Personally Identifiable Information.
1. Who are we?
We are Diffblue Limited, AI for Code. We are a company registered in England and Wales number 09958102, with our registered office at Diffblue Ltd, 16c Worcester Place, Oxford, OX1 2JW, UK. We are the controller of the data described in this notice.
2. What data do we collect?
We collect two different types of data: licensing data and telemetry data / error reporting.
2.1 Licensing
As part of our license verification process, to identify unique devices and users we collect information on the following hardware components to generate a unique identity key per device. The hardware components are:
Motherboard
Processor (CPU)
Hard disks or other similar storage units.
We store the following data:
User first name, last name, and email address | Used to identify the assignment of keys to individual users. |
User company name and job title | Used to identify the company and job title of the user to which the license is assigned. Only collected in:
|
License first activated | Date and time |
License last checked | Date and time |
External IP address | x.xx.xxx.xxx |
Hardware ID | This is a secure hash of a unique identifier used to distinguish between devices |
Number of times license activated | x |
The license management technology used by Diffblue is provided by LicenseSpring. Please click here to see the LicenseSpring privacy notice.
When deployed in a Continuous Integration environment, Diffblue collects the following additional information from environment variables to verify license entitlement:
CI_JOB_URL | For example: https://gitlab.com/diffblue/examples/PetClinic/-/jobs/nnnnnn |
CI_PROJECT_VISIBILITY | public/private |
CI_SERVER_VERSION | For example: 16.7.0 |
CI_COMPANY | For example: diffblue |
CI_USER_EMAIL | For example: firstname.surname@company.com |
The CI pipeline license information collection technology used by Diffblue is provided by MixPanel. Please click here to see the MixPanel privacy notice.
Users of Diffblue Cover Enterprise Edition who have the offline licensing option, can activate Diffblue Cover offline such that none of this information is collected.
2.2 Telemetry data / error reporting
By default Diffblue collects telemetry data and error reports to guide future product improvements. The data is sent to Diffblue over an encrypted HTTPS connection.
Telemetry/error report collection by Diffblue is mandatory in Community and Teams edition; telemetry/error report collection can be disabled in Enterprise Edition according to the following instructions:
The telemetry collection and processing technology used by Diffblue is provided by MixPanel. Please click here to see the MixPanel privacy notice.
The error reporting collection and processing technology used by Diffblue is provided by Sentry. Please click here to see the Sentry privacy notice.
Telemetry data collection:
Data point | Example | Usage |
---|---|---|
First 3 octets of Public IP address | 104.18.120 | From this we infer approximate location (e.g. New York), to prioritize language and product support |
Random anonymous UUID | 697764c3-657d-4c93-9a14-7f701173a690 | So that we can see how a particular instance of the product is used over time |
Operating system version | Apple macOS 10.14.6 (Mojave) build 18G103 | Prioritize OS support |
CPU ID string | Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz | Guide decisions on product performance |
System RAM in bytes | 4294430720 | Guide decisions on product performance |
Diffblue Cover Version | 2023.12.01 | Understand how versions are being used |
IDE version *(Cover Plugin only)* | 2019.2.1 IC-191.6707.61 | Prioritize IDE support |
Application start time (CLI only) IDE start time (IntelliJ Plugin only) | Wed, 04 Nov 2020 15:02:27 GMT | Analyze performance and product usability |
Application exit time (CLI only) IDE exit time (IntelliJ Plugin only) Application exit time | Wed, 04 Nov 2020 15:19:17 GMT | Analyze performance and product usability |
When the Plugin is uninstalled (IntelliJ Plugin only) | Fri, 06 Nov 2020 09:33:45 GMT | Analyze performance and product usability |
Indexing start time | Wed, 04 Nov 2020 15:02:27 GMT | Analyze performance and product usability |
Indexing end time | Wed, 04 Nov 2020 15:10:22 GMT | Analyze performance and product usability |
Analysis start time | Wed, 04 Nov 2020 15:02:27 GMT | Analyze performance and product usability |
Analysis end time | Wed, 04 Nov 2020 15:19:17 GMT | Analyze performance and product usability |
Number of tests generated | 42 | Product usefulness and preferred workflow |
Output codes from analysis | E009, R003, T002, V002 | Product robustness and preferred workflow |
Temporary exception telemetry data collection (Cover versions 2024.06.01 to 2024.07.03 only, triggered on exception):
Data point | Example | Usage |
---|---|---|
Name of class triggering exception | reactor.core.publisher.Mono | Used to understand the conditions that trigger an exception in the ClassGraph library |
Interfaces of class triggering exception | interface reactor.core.CorePublisher | Used to understand the conditions that trigger an exception in the ClassGraph library |
What ClassGraph recorded the interfaces as when the exception triggered | [reactor.core.CorePublisher] | Used to understand the conditions that trigger an exception in the ClassGraph library |
Superclass of class triggering the exception | class java.lang.Object | Used to understand the conditions that trigger an exception in the ClassGraph library |
Full type signature of the class triggering the exception | <T:Ljava/lang/Object;>Ljava/lang/Object;Lreactor/core/CorePublisher<TT;>; | Used to understand the conditions that trigger an exception in the ClassGraph library |
Error report data collection:
Data | Example | Usage |
---|---|---|
Stack trace | - | Debugging |
The release version | 2021.10.01-community | Understand how versions are being used |
Anonymized user id | 38b4a23b-e46f-43c2-8b98-e829c5d7182d | e.g. So that we can see how a particular instance of the product is used over time |
IDE version | 2021.3 IC-213.4746.92 | Prioritize IDE support |
Java runtime version | 11.0.11+9-b1504.13 | Understand how versions are being used |
Number of CPU cores | 8 | Guide decisions on product performance |
Memory | Free, Max, and Total | Guide decisions on product performance |
OS | macOS X | Prioritize OS support |
3. Security
While we cannot guarantee the security of the data, we have implemented generally accepted technical and organizational measures to protect all data from accidental or unlawful destruction, loss, alteration, unauthorized disclosure and unauthorized access, taking into account the nature of the data and the associated risks.
4. Contact
If you have any questions about this notice or our handling of data, please contact us at legal@diffblue.com or by writing to:
Head of Legal, Diffblue Limited, 16c Worcester Pl, Oxford OX1 2JJ
Last updated