Description: Fixed TypeError in license validation
Changelog: See below
Documentation: Not needed (bug fix)
Dependencies: None
Testing: Syntax check passed, logic verified
Code review: Self-review completed
Agentic AI Code: This PR was written with AI assistance but has been manually reviewed and tested
Changelog Entry
Description
Fixed TypeError when comparing license expiry date from JSON with datetime.date object. Users with l.data license files cannot use v0.8.11 due to this bug.
Fixed
Added proper type conversion for exp field from JSON
Supports ISO format strings (e.g., "2026-12-31" or "2026-12-31T00:00:00")
Supports YYYY-MM-DD format
Gracefully handles invalid date strings
Root Cause
The exp field from JSON parsing returns a string, but the code compared it directly with datetime.now().date(), causing:
TypeError: '<' not supported between instances of 'str' and 'datetime.date'
Testing
Syntax check passed
Code review: logic verified
Manual testing with l.data file pending
Contributor License Agreement
By submitting this pull request, I confirm that I have read and fully agree to the Contributor License Agreement (CLA), and I am providing my contributions under its terms.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/open-webui/open-webui/pull/23105
**Author:** [@yang1002378395-cmyk](https://github.com/yang1002378395-cmyk)
**Created:** 3/26/2026
**Status:** ❌ Closed
**Base:** `dev` ← **Head:** `fix-license-date-v3`
---
### 📝 Commits (1)
- [`997f3e1`](https://github.com/open-webui/open-webui/commit/997f3e1e08a0c868bf6f8fbdbc9b956b4da99f5d) fix: license date comparison type error
### 📊 Changes
**1 file changed** (+11 additions, -1 deletions)
<details>
<summary>View changed files</summary>
📝 `backend/open_webui/utils/auth.py` (+11 -1)
</details>
### 📄 Description
# Pull Request Checklist
- [x] **Target branch:** This PR targets the `dev` branch
- [x] **Description:** Fixed TypeError in license validation
- [x] **Changelog:** See below
- [x] **Documentation:** Not needed (bug fix)
- [x] **Dependencies:** None
- [x] **Testing:** Syntax check passed, logic verified
- [x] **Code review:** Self-review completed
- [x] **Agentic AI Code:** This PR was written with AI assistance but has been manually reviewed and tested
# Changelog Entry
### Description
Fixed TypeError when comparing license expiry date from JSON with datetime.date object. Users with l.data license files cannot use v0.8.11 due to this bug.
### Fixed
- Added proper type conversion for `exp` field from JSON
- Supports ISO format strings (e.g., "2026-12-31" or "2026-12-31T00:00:00")
- Supports YYYY-MM-DD format
- Gracefully handles invalid date strings
### Root Cause
The `exp` field from JSON parsing returns a string, but the code compared it directly with `datetime.now().date()`, causing:
```
TypeError: '<' not supported between instances of 'str' and 'datetime.date'
```
### Testing
- [x] Syntax check passed
- [x] Code review: logic verified
- [ ] Manual testing with l.data file pending
### Contributor License Agreement
- [x] By submitting this pull request, I confirm that I have read and fully agree to the [Contributor License Agreement (CLA)](https://github.com/open-webui/open-webui/blob/main/CONTRIBUTOR_LICENSE_AGREEMENT), and I am providing my contributions under its terms.
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/open-webui/open-webui/pull/23105
Author: @yang1002378395-cmyk
Created: 3/26/2026
Status: ❌ Closed
Base:
dev← Head:fix-license-date-v3📝 Commits (1)
997f3e1fix: license date comparison type error📊 Changes
1 file changed (+11 additions, -1 deletions)
View changed files
📝
backend/open_webui/utils/auth.py(+11 -1)📄 Description
Pull Request Checklist
devbranchChangelog Entry
Description
Fixed TypeError when comparing license expiry date from JSON with datetime.date object. Users with l.data license files cannot use v0.8.11 due to this bug.
Fixed
expfield from JSONRoot Cause
The
expfield from JSON parsing returns a string, but the code compared it directly withdatetime.now().date(), causing:Testing
Contributor License Agreement
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.