# Ethiopian Date Converter for Python
High-performance Ethiopian calendar date conversion for Python applications with native C implementation.
## Installation
```bash
# pip
pip install ethiopian-date-converter
# conda (if available)
conda install ethiopian-date-converter
```
## Quick Start
```python
from ethiopian_date_converter import (
EthiopicDate,
GregorianDate,
ethiopic_to_gregorian,
gregorian_to_ethiopic
)
# Using conversion functions
gregorian = ethiopic_to_gregorian(2017, 1, 1)
print(gregorian) # {'year': 2024, 'month': 9, 'day': 11}
ethiopic = gregorian_to_ethiopic(2024, 9, 11)
print(ethiopic) # {'year': 2017, 'month': 1, 'day': 1}
# Using date classes
ethiopic_date = EthiopicDate(2017, 1, 1)
gregorian_date = ethiopic_date.to_gregorian()
print(gregorian_date) # 2024-09-11
# Date arithmetic and formatting
new_year = EthiopicDate(2017, 1, 1)
print(new_year.get_month_name()) # "Meskerem"
print(new_year.get_day_of_week()) # "Wednesday"
print(new_year.format("DD MMMM YYYY")) # "01 Meskerem 2017"
next_month = new_year.add_months(1)
print(next_month) # 2017-02-01
```
## Main Functionalities
### Date Conversion
Convert dates between Ethiopian and Gregorian calendars with high accuracy:
```python
# Ethiopian New Year 2017 to Gregorian
result = ethiopic_to_gregorian(2017, 1, 1)
print(result) # {'year': 2024, 'month': 9, 'day': 11}
# Ethiopian Christmas 2017 to Gregorian
result = ethiopic_to_gregorian(2017, 4, 29)
print(result) # {'year': 2025, 'month': 1, 'day': 7}
# Reverse conversions
result = gregorian_to_ethiopic(2025, 1, 7)
print(result) # {'year': 2017, 'month': 4, 'day': 29}
```
### Date Classes with Rich Functionality
Work with powerful date objects that support arithmetic and formatting:
```python
# Create Ethiopian date
date = EthiopicDate(2017, 1, 1)
# Date arithmetic
tomorrow = date.add_days(1)
next_month = date.add_months(1)
next_year = date.add_years(1)
# Calculate differences
christmas = EthiopicDate(2017, 4, 29)
days_until = christmas.diff_days(date)
print(f"Days until Christmas: {days_until}")
# Cross-calendar operations
gregorian_equivalent = date.to_gregorian()
print(f"Gregorian date: {gregorian_equivalent}")
```
### Holiday Detection and Calendar Information
Automatically detect Ethiopian holidays and get calendar metadata:
```python
new_year = EthiopicDate(2017, 1, 1)
print(new_year.is_holiday()) # True
print(new_year.get_holiday_name()) # "Ethiopian New Year"
christmas = EthiopicDate(2017, 4, 29)
print(christmas.is_holiday()) # True
print(christmas.get_holiday_name()) # "Ethiopian Christmas"
# Get calendar information
print(date.get_days_in_month()) # 30
print(date.is_leap_year()) # False (2017 % 4 != 3)
```
### Formatting and Localization
Format dates with support for multiple languages:
```python
date = EthiopicDate(2017, 1, 1)
# English formatting
print(date.format("YYYY-MM-DD")) # "2017-01-01"
print(date.format("DD MMMM YYYY")) # "01 Meskerem 2017"
print(date.format("DDDD, DD MMMM YYYY")) # "Wednesday, 01 Meskerem 2017"
# Amharic formatting
print(date.get_month_name("am")) # "መስከረም"
print(date.get_day_of_week("am")) # "ረቡዕ"
```
## All Available Functions
### Core Conversion Functions
- `ethiopic_to_gregorian(year, month, day, era=None)` - Convert Ethiopian to Gregorian
- `gregorian_to_ethiopic(year, month, day)` - Convert Gregorian to Ethiopian
### Validation Functions
- `is_valid_ethiopic_date(year, month, day)` - Validate Ethiopian date
- `is_valid_gregorian_date(year, month, day)` - Validate Gregorian date
- `is_gregorian_leap(year)` - Check if Gregorian year is leap year
### Date Classes
- `EthiopicDate(year, month, day)` - Ethiopian calendar date with full functionality
- `GregorianDate(year, month, day)` - Gregorian calendar date with conversion
### Date Arithmetic Methods
- `add_days(days)` - Add/subtract days
- `add_months(months)` - Add/subtract months
- `add_years(years)` - Add/subtract years
- `diff_days(other_date)` - Calculate difference in days
### Formatting and Display
- `format(pattern, locale="en")` - Format date with custom pattern
- `get_month_name(locale="en")` - Get month name in specified language
- `get_day_of_week(locale="en")` - Get weekday name in specified language
### Calendar Information
- `get_days_in_month()` - Get number of days in current month
- `is_leap_year()` - Check if current year is leap year
- `is_holiday()` - Check if date is a holiday
- `get_holiday_name()` - Get holiday name if applicable
### Julian Day Number Functions
- `ethiopic_to_jdn(year, month, day, era=None)` - Convert Ethiopian to JDN
- `gregorian_to_jdn(year, month, day)` - Convert Gregorian to JDN
- `jdn_to_ethiopic(jdn, era=None)` - Convert JDN to Ethiopian
- `jdn_to_gregorian(jdn)` - Convert JDN to Gregorian
- `get_day_of_week(jdn)` - Get weekday from JDN
### Utility Functions
- `get_current_ethiopic_date()` - Get current Ethiopian date
- `get_current_gregorian_date()` - Get current Gregorian date
- `generate_calendar(year, month, calendar_type)` - Generate calendar grid
- `get_business_days(start, end, exclude_holidays=True)` - Calculate business days
- `get_holidays(year, calendar_type="ethiopic")` - Get all holidays for year
- `calculate_age(birth_date, reference_date=None)` - Calculate age
- `find_next_holiday(start_date, max_days=365)` - Find next holiday
### Class Methods
- `EthiopicDate.from_gregorian(gregorian_date)` - Create from Gregorian
- `EthiopicDate.from_jdn(jdn, era=None)` - Create from JDN
- `EthiopicDate.today()` - Get current Ethiopian date
- `GregorianDate.from_ethiopic(ethiopic_date)` - Create from Ethiopian
- `GregorianDate.today()` - Get current Gregorian date
### Constants
- `ETHIOPIC_MONTHS` - Month names in English and Amharic
- `GREGORIAN_MONTHS` - Gregorian month names
- `WEEKDAYS` - Weekday names in multiple languages
- `ETHIOPIAN_HOLIDAYS` - Built-in holiday definitions
- `JD_EPOCH_OFFSET_*` - Julian Day epoch constants
## Date Object Properties
All date objects have these properties:
```python
date = EthiopicDate(2017, 1, 1)
print(date.year) # 2017
print(date.month) # 1
print(date.day) # 1
```
## Calendar Systems
### Ethiopian Calendar
- 13 months (12 months of 30 days + Pagume)
- Pagume: 5 days (normal year), 6 days (leap year)
- Leap year: `year % 4 == 3`
- Supported range: 1000-3000 EC (recommended)
### Gregorian Calendar
- Standard Gregorian calendar rules
- Full leap year support including century exceptions
- Compatible with Python's datetime module
## Error Handling
The package provides clear error messages for invalid operations:
```python
from ethiopian_date_converter.date_classes import InvalidDateError
try:
invalid_date = EthiopicDate(2017, 13, 7) # Invalid Pagume day
except InvalidDateError as e:
print(f"Error: {e}") # Error: Invalid Ethiopian date: 2017-13-7
try:
result = ethiopic_to_gregorian(2017, 0, 1) # Invalid month
except ValueError as e:
print(f"Error: {e}") # Error: Invalid Ethiopian date: 2017-0-1
```
## Performance
- Native C implementation for core calculations
- Optimized for high-frequency conversions
- Zero external dependencies beyond Python standard library
- Thread-safe operations
- Memory efficient date objects
## Supported Date Ranges
- **Ethiopian Years**: 1000 - 3000 EC (optimal range)
- **Gregorian Years**: 1007 - 4007 AD
- **Modern Era**: 1900 - 2100 AD (recommended for applications)
## Examples
### Age Calculation
```python
from ethiopian_date_converter.utils import calculate_age
birth_date = EthiopicDate(2000, 1, 1)
age = calculate_age(birth_date)
print(f"Age: {age['years']} years, {age['months']} months, {age['days']} days")
```
### Calendar Generation
```python
from ethiopian_date_converter.utils import generate_calendar
# Generate Ethiopian calendar for Meskerem 2017
calendar = generate_calendar(2017, 1, "ethiopic")
print(f"Month: {calendar['month_name']}")
print(f"Days in month: {calendar['days_in_month']}")
for week in calendar['calendar_grid']:
print(week)
```
### Business Days Calculation
```python
from ethiopian_date_converter.utils import get_business_days
start = EthiopicDate(2017, 1, 1)
end = EthiopicDate(2017, 1, 30)
business_days = get_business_days(start, end, exclude_holidays=True)
print(f"Business days: {business_days}")
```
## Documentation
For comprehensive documentation, advanced usage examples, and API reference, visit:
https://github.com/abiywondimu5758/ethiopian-date-converter/tree/main/docs/python
## Requirements
- Python 3.7 or higher
- C compiler (for building the native extension)
- Windows: Visual Studio Build Tools or MinGW
- macOS: Xcode Command Line Tools
- Linux: GCC
## License
MIT License - see LICENSE file for details.
Raw data
{
"_id": null,
"home_page": "https://github.com/abiywondimu5758/ethiopian-date-converter",
"name": "ethiopian-date-converter-py",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "ethiopian, calendar, date, conversion, gregorian, geez, python, datetime, ethiopia, amharic",
"author": "Abiy",
"author_email": "Abiy <abiywondimu1@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/10/b2/5f89a35ed31698cb43f80758662da800731367ff37aaf7794b9bdb89e403/ethiopian_date_converter_py-1.0.0.tar.gz",
"platform": null,
"description": "# Ethiopian Date Converter for Python\r\n\r\nHigh-performance Ethiopian calendar date conversion for Python applications with native C implementation.\r\n\r\n## Installation\r\n\r\n```bash\r\n# pip\r\npip install ethiopian-date-converter\r\n\r\n# conda (if available)\r\nconda install ethiopian-date-converter\r\n```\r\n\r\n## Quick Start\r\n\r\n```python\r\nfrom ethiopian_date_converter import (\r\n EthiopicDate, \r\n GregorianDate, \r\n ethiopic_to_gregorian, \r\n gregorian_to_ethiopic\r\n)\r\n\r\n# Using conversion functions\r\ngregorian = ethiopic_to_gregorian(2017, 1, 1)\r\nprint(gregorian) # {'year': 2024, 'month': 9, 'day': 11}\r\n\r\nethiopic = gregorian_to_ethiopic(2024, 9, 11)\r\nprint(ethiopic) # {'year': 2017, 'month': 1, 'day': 1}\r\n\r\n# Using date classes\r\nethiopic_date = EthiopicDate(2017, 1, 1)\r\ngregorian_date = ethiopic_date.to_gregorian()\r\nprint(gregorian_date) # 2024-09-11\r\n\r\n# Date arithmetic and formatting\r\nnew_year = EthiopicDate(2017, 1, 1)\r\nprint(new_year.get_month_name()) # \"Meskerem\"\r\nprint(new_year.get_day_of_week()) # \"Wednesday\"\r\nprint(new_year.format(\"DD MMMM YYYY\")) # \"01 Meskerem 2017\"\r\n\r\nnext_month = new_year.add_months(1)\r\nprint(next_month) # 2017-02-01\r\n```\r\n\r\n## Main Functionalities\r\n\r\n### Date Conversion\r\nConvert dates between Ethiopian and Gregorian calendars with high accuracy:\r\n\r\n```python\r\n# Ethiopian New Year 2017 to Gregorian\r\nresult = ethiopic_to_gregorian(2017, 1, 1)\r\nprint(result) # {'year': 2024, 'month': 9, 'day': 11}\r\n\r\n# Ethiopian Christmas 2017 to Gregorian\r\nresult = ethiopic_to_gregorian(2017, 4, 29)\r\nprint(result) # {'year': 2025, 'month': 1, 'day': 7}\r\n\r\n# Reverse conversions\r\nresult = gregorian_to_ethiopic(2025, 1, 7)\r\nprint(result) # {'year': 2017, 'month': 4, 'day': 29}\r\n```\r\n\r\n### Date Classes with Rich Functionality\r\nWork with powerful date objects that support arithmetic and formatting:\r\n\r\n```python\r\n# Create Ethiopian date\r\ndate = EthiopicDate(2017, 1, 1)\r\n\r\n# Date arithmetic\r\ntomorrow = date.add_days(1)\r\nnext_month = date.add_months(1)\r\nnext_year = date.add_years(1)\r\n\r\n# Calculate differences\r\nchristmas = EthiopicDate(2017, 4, 29)\r\ndays_until = christmas.diff_days(date)\r\nprint(f\"Days until Christmas: {days_until}\")\r\n\r\n# Cross-calendar operations\r\ngregorian_equivalent = date.to_gregorian()\r\nprint(f\"Gregorian date: {gregorian_equivalent}\")\r\n```\r\n\r\n### Holiday Detection and Calendar Information\r\nAutomatically detect Ethiopian holidays and get calendar metadata:\r\n\r\n```python\r\nnew_year = EthiopicDate(2017, 1, 1)\r\nprint(new_year.is_holiday()) # True\r\nprint(new_year.get_holiday_name()) # \"Ethiopian New Year\"\r\n\r\nchristmas = EthiopicDate(2017, 4, 29)\r\nprint(christmas.is_holiday()) # True\r\nprint(christmas.get_holiday_name()) # \"Ethiopian Christmas\"\r\n\r\n# Get calendar information\r\nprint(date.get_days_in_month()) # 30\r\nprint(date.is_leap_year()) # False (2017 % 4 != 3)\r\n```\r\n\r\n### Formatting and Localization\r\nFormat dates with support for multiple languages:\r\n\r\n```python\r\ndate = EthiopicDate(2017, 1, 1)\r\n\r\n# English formatting\r\nprint(date.format(\"YYYY-MM-DD\")) # \"2017-01-01\"\r\nprint(date.format(\"DD MMMM YYYY\")) # \"01 Meskerem 2017\"\r\nprint(date.format(\"DDDD, DD MMMM YYYY\")) # \"Wednesday, 01 Meskerem 2017\"\r\n\r\n# Amharic formatting\r\nprint(date.get_month_name(\"am\")) # \"\u1218\u1235\u12a8\u1228\u121d\"\r\nprint(date.get_day_of_week(\"am\")) # \"\u1228\u1261\u12d5\"\r\n```\r\n\r\n## All Available Functions\r\n\r\n### Core Conversion Functions\r\n- `ethiopic_to_gregorian(year, month, day, era=None)` - Convert Ethiopian to Gregorian\r\n- `gregorian_to_ethiopic(year, month, day)` - Convert Gregorian to Ethiopian\r\n\r\n### Validation Functions\r\n- `is_valid_ethiopic_date(year, month, day)` - Validate Ethiopian date\r\n- `is_valid_gregorian_date(year, month, day)` - Validate Gregorian date\r\n- `is_gregorian_leap(year)` - Check if Gregorian year is leap year\r\n\r\n### Date Classes\r\n- `EthiopicDate(year, month, day)` - Ethiopian calendar date with full functionality\r\n- `GregorianDate(year, month, day)` - Gregorian calendar date with conversion\r\n\r\n### Date Arithmetic Methods\r\n- `add_days(days)` - Add/subtract days\r\n- `add_months(months)` - Add/subtract months\r\n- `add_years(years)` - Add/subtract years\r\n- `diff_days(other_date)` - Calculate difference in days\r\n\r\n### Formatting and Display\r\n- `format(pattern, locale=\"en\")` - Format date with custom pattern\r\n- `get_month_name(locale=\"en\")` - Get month name in specified language\r\n- `get_day_of_week(locale=\"en\")` - Get weekday name in specified language\r\n\r\n### Calendar Information\r\n- `get_days_in_month()` - Get number of days in current month\r\n- `is_leap_year()` - Check if current year is leap year\r\n- `is_holiday()` - Check if date is a holiday\r\n- `get_holiday_name()` - Get holiday name if applicable\r\n\r\n### Julian Day Number Functions\r\n- `ethiopic_to_jdn(year, month, day, era=None)` - Convert Ethiopian to JDN\r\n- `gregorian_to_jdn(year, month, day)` - Convert Gregorian to JDN\r\n- `jdn_to_ethiopic(jdn, era=None)` - Convert JDN to Ethiopian\r\n- `jdn_to_gregorian(jdn)` - Convert JDN to Gregorian\r\n- `get_day_of_week(jdn)` - Get weekday from JDN\r\n\r\n### Utility Functions\r\n- `get_current_ethiopic_date()` - Get current Ethiopian date\r\n- `get_current_gregorian_date()` - Get current Gregorian date\r\n- `generate_calendar(year, month, calendar_type)` - Generate calendar grid\r\n- `get_business_days(start, end, exclude_holidays=True)` - Calculate business days\r\n- `get_holidays(year, calendar_type=\"ethiopic\")` - Get all holidays for year\r\n- `calculate_age(birth_date, reference_date=None)` - Calculate age\r\n- `find_next_holiday(start_date, max_days=365)` - Find next holiday\r\n\r\n### Class Methods\r\n- `EthiopicDate.from_gregorian(gregorian_date)` - Create from Gregorian\r\n- `EthiopicDate.from_jdn(jdn, era=None)` - Create from JDN\r\n- `EthiopicDate.today()` - Get current Ethiopian date\r\n- `GregorianDate.from_ethiopic(ethiopic_date)` - Create from Ethiopian\r\n- `GregorianDate.today()` - Get current Gregorian date\r\n\r\n### Constants\r\n- `ETHIOPIC_MONTHS` - Month names in English and Amharic\r\n- `GREGORIAN_MONTHS` - Gregorian month names\r\n- `WEEKDAYS` - Weekday names in multiple languages\r\n- `ETHIOPIAN_HOLIDAYS` - Built-in holiday definitions\r\n- `JD_EPOCH_OFFSET_*` - Julian Day epoch constants\r\n\r\n## Date Object Properties\r\n\r\nAll date objects have these properties:\r\n```python\r\ndate = EthiopicDate(2017, 1, 1)\r\nprint(date.year) # 2017\r\nprint(date.month) # 1\r\nprint(date.day) # 1\r\n```\r\n\r\n## Calendar Systems\r\n\r\n### Ethiopian Calendar\r\n- 13 months (12 months of 30 days + Pagume)\r\n- Pagume: 5 days (normal year), 6 days (leap year)\r\n- Leap year: `year % 4 == 3`\r\n- Supported range: 1000-3000 EC (recommended)\r\n\r\n### Gregorian Calendar\r\n- Standard Gregorian calendar rules\r\n- Full leap year support including century exceptions\r\n- Compatible with Python's datetime module\r\n\r\n## Error Handling\r\n\r\nThe package provides clear error messages for invalid operations:\r\n\r\n```python\r\nfrom ethiopian_date_converter.date_classes import InvalidDateError\r\n\r\ntry:\r\n invalid_date = EthiopicDate(2017, 13, 7) # Invalid Pagume day\r\nexcept InvalidDateError as e:\r\n print(f\"Error: {e}\") # Error: Invalid Ethiopian date: 2017-13-7\r\n\r\ntry:\r\n result = ethiopic_to_gregorian(2017, 0, 1) # Invalid month\r\nexcept ValueError as e:\r\n print(f\"Error: {e}\") # Error: Invalid Ethiopian date: 2017-0-1\r\n```\r\n\r\n## Performance\r\n\r\n- Native C implementation for core calculations\r\n- Optimized for high-frequency conversions\r\n- Zero external dependencies beyond Python standard library\r\n- Thread-safe operations\r\n- Memory efficient date objects\r\n\r\n## Supported Date Ranges\r\n\r\n- **Ethiopian Years**: 1000 - 3000 EC (optimal range)\r\n- **Gregorian Years**: 1007 - 4007 AD\r\n- **Modern Era**: 1900 - 2100 AD (recommended for applications)\r\n\r\n## Examples\r\n\r\n### Age Calculation\r\n```python\r\nfrom ethiopian_date_converter.utils import calculate_age\r\n\r\nbirth_date = EthiopicDate(2000, 1, 1)\r\nage = calculate_age(birth_date)\r\nprint(f\"Age: {age['years']} years, {age['months']} months, {age['days']} days\")\r\n```\r\n\r\n### Calendar Generation\r\n```python\r\nfrom ethiopian_date_converter.utils import generate_calendar\r\n\r\n# Generate Ethiopian calendar for Meskerem 2017\r\ncalendar = generate_calendar(2017, 1, \"ethiopic\")\r\nprint(f\"Month: {calendar['month_name']}\")\r\nprint(f\"Days in month: {calendar['days_in_month']}\")\r\nfor week in calendar['calendar_grid']:\r\n print(week)\r\n```\r\n\r\n### Business Days Calculation\r\n```python\r\nfrom ethiopian_date_converter.utils import get_business_days\r\n\r\nstart = EthiopicDate(2017, 1, 1)\r\nend = EthiopicDate(2017, 1, 30)\r\nbusiness_days = get_business_days(start, end, exclude_holidays=True)\r\nprint(f\"Business days: {business_days}\")\r\n```\r\n\r\n## Documentation\r\n\r\nFor comprehensive documentation, advanced usage examples, and API reference, visit:\r\nhttps://github.com/abiywondimu5758/ethiopian-date-converter/tree/main/docs/python\r\n\r\n## Requirements\r\n\r\n- Python 3.7 or higher\r\n- C compiler (for building the native extension)\r\n - Windows: Visual Studio Build Tools or MinGW\r\n - macOS: Xcode Command Line Tools\r\n - Linux: GCC\r\n\r\n## License\r\n\r\nMIT License - see LICENSE file for details.\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Ethiopian calendar date conversion for Python",
"version": "1.0.0",
"project_urls": {
"Bug Reports": "https://github.com/abiywondimu5758/ethiopian-date-converter/issues",
"Documentation": "https://github.com/abiywondimu5758/ethiopian-date-converter/tree/main/docs/python",
"Homepage": "https://github.com/abiywondimu5758/ethiopian-date-converter",
"Repository": "https://github.com/abiywondimu5758/ethiopian-date-converter"
},
"split_keywords": [
"ethiopian",
" calendar",
" date",
" conversion",
" gregorian",
" geez",
" python",
" datetime",
" ethiopia",
" amharic"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "4363a9cce384020c720b3653714998ddad7d19c56b4ec6f7e5ad56126b16dfef",
"md5": "7b733f53c43e1d1fd6607b7fb76d4a3d",
"sha256": "0709e6fb5666986f7e36de3033650dda90d0e4c5566da3fb204c24a8b058e935"
},
"downloads": -1,
"filename": "ethiopian_date_converter_py-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7b733f53c43e1d1fd6607b7fb76d4a3d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 19651,
"upload_time": "2025-09-03T14:49:02",
"upload_time_iso_8601": "2025-09-03T14:49:02.094505Z",
"url": "https://files.pythonhosted.org/packages/43/63/a9cce384020c720b3653714998ddad7d19c56b4ec6f7e5ad56126b16dfef/ethiopian_date_converter_py-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "10b25f89a35ed31698cb43f80758662da800731367ff37aaf7794b9bdb89e403",
"md5": "04bf97a0577ec085bd8e7fd0b6bb8e66",
"sha256": "df135c99da3877300117d2e75cad6ff1055d4dd517e7a2b9c5ce8936d58a9879"
},
"downloads": -1,
"filename": "ethiopian_date_converter_py-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "04bf97a0577ec085bd8e7fd0b6bb8e66",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 21766,
"upload_time": "2025-09-03T14:49:03",
"upload_time_iso_8601": "2025-09-03T14:49:03.263253Z",
"url": "https://files.pythonhosted.org/packages/10/b2/5f89a35ed31698cb43f80758662da800731367ff37aaf7794b9bdb89e403/ethiopian_date_converter_py-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-03 14:49:03",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "abiywondimu5758",
"github_project": "ethiopian-date-converter",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "ethiopian-date-converter-py"
}