PyInj Dual License

Copyright (c) 2025 Qrius Global

This software is dual-licensed under the terms described below:

================================================================================
OPTION A: LGPL-3.0 WITH DI-FRAMEWORK EXCEPTION
================================================================================

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.

ADDITIONAL TERMS - DI FRAMEWORK EXCEPTION:

As a special exception to the LGPL-3.0 license terms:

1. Any software that creates, extends, or modifies dependency injection
   functionality based on PyInj MUST be distributed under LGPL-3.0 or a
   compatible open source license (GPL-3.0, AGPL-3.0).

2. This includes but is not limited to:
   - Dependency injection frameworks or libraries
   - DI container implementations
   - Service locator patterns based on PyInj
   - Extensions that modify PyInj's core DI behavior

================================================================================
OPTION B: COMMERCIAL ATTRIBUTION LICENSE
================================================================================

If your use of PyInj does NOT involve creating dependency injection tools
or frameworks, you may use this software in commercial closed-source products
under the following conditions:

1. ATTRIBUTION REQUIREMENT:
   You MUST include the following attribution in your product:
   - In your documentation or "About" section
   - In any license or legal notices distributed with your product
   - The specific version of PyInj used

   Attribution format:
   "This product includes PyInj v[VERSION] (https://github.com/QriusGlobal/pyinj)
    Copyright (c) 2025 Qrius Global, used under Commercial Attribution License"

2. NOTICE FILE:
   You MUST include the NOTICE file from PyInj in your distribution

3. NO WARRANTY:
   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
   IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
   FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.

================================================================================
CLARIFICATIONS
================================================================================

"Dependency Injection Tool/Framework" means:
- Software whose primary purpose is providing dependency injection
- Libraries that extend or modify PyInj's DI capabilities
- Tools that generate DI code based on PyInj

"Commercial Use NOT requiring open source" includes:
- Applications using PyInj internally for their own DI needs
- Services that happen to use PyInj for internal architecture
- Products where DI is an implementation detail, not the product itself

For questions about licensing, contact: legal@qrius.global

================================================================================
FULL LGPL-3.0 TEXT
================================================================================

The full text of the GNU Lesser General Public License version 3 can be found at:
https://www.gnu.org/licenses/lgpl-3.0.txt