1. Introduction
This End User License Agreement (“EULA”) governs your use of the PyLocket PyCharm Plugin (“Plugin”) developed and maintained by PyLocket. The Plugin is distributed through the JetBrains Marketplace.
By installing or using the Plugin, you agree to be bound by this EULA. Please read this agreement carefully before installing or using the Plugin.
This EULA supplements the PyLocket Terms of Service. In the event of a conflict between this EULA and the Terms of Service, the Terms of Service shall prevail for matters related to the PyLocket platform.
2. Definitions
The following terms, when capitalized in this EULA, shall have the meanings set forth below:
- “Plugin” means the PyLocket PyCharm Plugin, including all code, resources, documentation, and updates distributed through the JetBrains Marketplace or any other authorized channel.
- “IDE” means a JetBrains IntelliJ-based integrated development environment, primarily PyCharm, in which the Plugin is installed and operated.
- “PyLocket Service” means the PyLocket platform in its entirety, including the API, command-line interface (CLI), and Developer Portal.
- “Developer Portal” means the web-based interface accessible at pylocket.com for managing applications, builds, license keys, billing, and account settings.
- “Protected Artifact” means the encrypted output produced by PyLocket’s build pipeline after processing a developer’s application source code.
- “Build” means the process of encrypting and protecting a Python application through the PyLocket Service.
- “You” or “Your” means the individual developer or legal entity using the Plugin.
- “We,” “Us,” or “PyLocket” means PyLocket, the company that develops and maintains the Plugin and the PyLocket Service.
3. Acceptance
By downloading, installing, or using the Plugin through the JetBrains Marketplace or any other means, you accept and agree to be bound by this EULA.
If you do not agree to the terms of this EULA, you must not install or use the Plugin. You should uninstall the Plugin immediately if you have already installed it and do not agree to these terms.
If you are accepting this EULA on behalf of a company, organization, or other legal entity, you represent and warrant that you have the authority to bind that entity to this EULA. In such case, “You” and “Your” shall refer to that entity.
4. License Grant
Subject to the terms of this EULA, PyLocket grants you a non-exclusive, non-transferable, revocable license to install and use the Plugin on any compatible JetBrains IDE.
The Plugin is licensed, not sold. No ownership rights are transferred to you under this EULA.
You may install the Plugin on multiple machines provided they are used by the same licensed PyLocket developer account.
Use of the Plugin requires an active PyLocket developer account and acceptance of the PyLocket Terms of Service.
5. Restrictions
Under this EULA, you may NOT:
- Reverse engineer, decompile, disassemble, or attempt to derive source code from the Plugin.
- Modify, adapt, translate, or create derivative works based on the Plugin.
- Redistribute, sublicense, lease, rent, or loan the Plugin to third parties.
- Remove or alter any proprietary notices, labels, or marks on the Plugin.
- Use the Plugin to protect malicious software or for any unlawful purpose.
- Use the Plugin in a manner that violates the PyLocket Terms of Service or the JetBrains Marketplace Developer Agreement.
Any violation of these restrictions may result in the immediate termination of your license and your PyLocket developer account.
6. Account Requirements
The Plugin requires authentication with a valid PyLocket developer account. You must have an active account to use any Plugin functionality that communicates with the PyLocket Service.
You are responsible for maintaining the confidentiality of your account credentials, including any authentication tokens stored by the Plugin on your local machine.
You are responsible for all activities that occur under your account when using the Plugin, whether or not you have authorized such activities.
PyLocket reserves the right to suspend or terminate Plugin access if your account is suspended or terminated under the Terms of Service.
7. Plugin Functionality
The Plugin provides IDE integration for PyLocket’s protection pipeline. Core Plugin capabilities include:
- Build Initiation: Initiating protection builds directly from the IDE without switching to the CLI or Developer Portal.
- Configuration Management: Configuring application protection settings, including obfuscation level, target platforms, and licensing parameters.
- License Management: Managing license keys and viewing activation data for your protected applications.
- Build Monitoring: Viewing build status, logs, and downloading protected artifacts upon completion.
- Documentation Access: Accessing documentation, help resources, and links to the Developer Portal.
The Plugin communicates with PyLocket’s API servers to perform these functions. All communication is conducted over encrypted connections (TLS 1.2+).
Plugin functionality depends on the availability of the PyLocket Service. If the PyLocket Service is unavailable, Plugin features that require API communication will not function.
8. Data Handling
The Plugin handles several categories of data as described below:
Authentication Tokens
The Plugin stores authentication tokens locally on your machine in your IDE’s configuration directory. These tokens are used to authenticate API requests to PyLocket’s servers. Tokens are not transmitted to any third party.
Source Code
When you initiate a build, your source code is transmitted to PyLocket’s API servers via encrypted connection (TLS 1.2+). The source code is processed for protection and is never stored in plaintext on PyLocket’s servers. See the PyLocket Terms of Service, Section 12 (Source Code Handling) for full details.
Build Metadata
The Plugin transmits project configuration, build settings, and application metadata to PyLocket’s servers as part of the build process. This includes information such as the application name, target platforms, obfuscation level, and licensing configuration.
Telemetry
The Plugin may collect anonymized usage statistics (e.g., feature usage frequency, build times) to improve the Plugin experience. No source code, file paths, or personal content is included in telemetry data.
Local Storage
The Plugin may store configuration files, cached data, and preferences in the IDE’s standard plugin data directory.
Your source code is encrypted in transit, processed for protection, and never stored in plaintext. PyLocket employees do not access your source code. See our Terms of Service for full details.
9. JetBrains Marketplace Terms
The Plugin is distributed through the JetBrains Marketplace and is also subject to the JetBrains Marketplace Developer Agreement and any applicable JetBrains terms and conditions.
In the event of a conflict between this EULA and the JetBrains Marketplace terms, the JetBrains Marketplace terms shall prevail with respect to the distribution and licensing of plugins through the Marketplace.
PyLocket is not responsible for JetBrains Marketplace availability, policies, or infrastructure. Any issues related to the Marketplace itself should be directed to JetBrains.
10. Updates
The Plugin may receive updates through the JetBrains Marketplace update mechanism. Updates may include bug fixes, new features, security patches, or compatibility improvements.
By using the Plugin, you agree to receive updates unless you manually disable auto-updates in your IDE settings.
PyLocket reserves the right to require minimum Plugin versions for compatibility with the PyLocket Service. Older Plugin versions may cease to function if they become incompatible with the current PyLocket API.
Running an outdated Plugin version may result in build failures, authentication errors, or loss of access to new features. We recommend keeping the Plugin updated to the latest version.
11. Intellectual Property
The Plugin, including all code, design, documentation, and trademarks, is the exclusive property of PyLocket. This EULA does not transfer any ownership rights to you.
You acknowledge that the Plugin contains trade secrets and proprietary information of PyLocket. You agree not to disclose, disseminate, or make available any such proprietary information to third parties.
All rights not expressly granted under this EULA are reserved by PyLocket.
Feedback, suggestions, or improvement ideas you provide regarding the Plugin may be used by PyLocket without obligation to you. You hereby assign to PyLocket all right, title, and interest in any such feedback.
12. Third-Party Components
The Plugin may incorporate open-source software components and third-party libraries. Each such component is subject to its own license terms.
A list of third-party components and their licenses is available within the Plugin (typically in the “About” or “Licenses” section) or upon request to legal@pylocket.com.
Nothing in this EULA limits your rights under any applicable open-source license.
13. No Warranty
The Plugin is provided “as is” and “as available” without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, noninfringement, and title. PyLocket does not warrant that the Plugin will be error-free, uninterrupted, compatible with all IDE versions, or free from vulnerabilities. PyLocket does not warrant that the protection applied to your applications will be impenetrable or that it will prevent all unauthorized access.
14. Limitation of Liability
To the maximum extent permitted by applicable law, PyLocket’s total aggregate liability arising out of or related to this EULA and your use of the Plugin shall not exceed the total amount of fees paid by you to PyLocket in the twelve (12) months preceding the event giving rise to the claim. In no event shall PyLocket be liable for any indirect, incidental, special, consequential, or punitive damages, including but not limited to loss of profits, revenue, data, or business opportunity, even if PyLocket has been advised of the possibility of such damages.
15. Termination
You may terminate this EULA at any time by uninstalling the Plugin from your IDE.
PyLocket may terminate this EULA immediately if you breach any of its terms.
PyLocket may discontinue the Plugin at any time with thirty (30) days’ notice via email or the Developer Portal.
Upon termination of this EULA:
- Your right to use the Plugin ceases immediately, and you must uninstall all copies of the Plugin.
- Your rights to any previously downloaded Protected Artifacts are governed by the PyLocket Terms of Service.
The following sections survive termination of this EULA: Section 5 (Restrictions), Section 8 (Data Handling), Section 11 (Intellectual Property), Section 13 (No Warranty), Section 14 (Limitation of Liability), and Section 16 (General Provisions).
16. General Provisions
Governing Law
This EULA shall be governed by and construed in accordance with the laws of the State of Washington, United States, without regard to conflict of law principles. Any disputes arising out of or related to this EULA shall be resolved in the courts of King County, Washington.
Severability
If any provision of this EULA is held to be invalid or unenforceable by a court of competent jurisdiction, the remaining provisions shall remain in full force and effect.
Entire Agreement
This EULA, together with the PyLocket Terms of Service and Privacy Policy, constitutes the entire agreement between you and PyLocket regarding the Plugin and supersedes all prior or contemporaneous agreements, understandings, and communications.
Assignment
PyLocket may assign its rights and obligations under this EULA without restriction. You may not assign your rights or obligations under this EULA without PyLocket’s prior written consent. Any attempted assignment without such consent shall be null and void.
No Waiver
Failure by PyLocket to enforce any provision of this EULA shall not constitute a waiver of future enforcement of that or any other provision.
Force Majeure
PyLocket shall not be liable for delays or failure to perform its obligations under this EULA due to circumstances beyond its reasonable control, including but not limited to natural disasters, war, terrorism, labor disputes, government actions, internet outages, or third-party service failures.
Notices
PyLocket may provide notices to you through the Plugin, the Developer Portal, or the email address associated with your PyLocket account. It is your responsibility to ensure your contact information is current.
Amendments
PyLocket may update this EULA from time to time with thirty (30) days’ notice provided through the Plugin, the Developer Portal, or email. Continued use of the Plugin after the notice period constitutes your acceptance of the updated EULA.
Contact
For questions about this EULA, contact us at legal@pylocket.com.
| Purpose | Contact |
|---|---|
| Legal inquiries | legal@pylocket.com |
| Plugin support | support@pylocket.com |
| Sales and enterprise | sales@pylocket.com |
| Privacy questions | privacy@pylocket.com |