Skip to content

Commit b20a713

Browse files
committed
chore: code cleanup, ci fixes
1 parent 67bab94 commit b20a713

File tree

21 files changed

+1518
-1472
lines changed

21 files changed

+1518
-1472
lines changed

.github/workflows/python-publish.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,11 +78,17 @@ jobs:
7878
mkdir -p /tmp/check-sdist
7979
tar -xf dist/*.tar.gz -C /tmp/check-sdist
8080
MODEL_COUNT=$(find /tmp/check-sdist -name "*.py" | grep models | wc -l)
81+
ENUM_COUNT=$(find /tmp/check-sdist -name "*.py" | grep enums | wc -l)
8182
echo "Source distribution contains $MODEL_COUNT model files"
83+
echo "Source distribution contains $ENUM_COUNT enum files"
8284
if [ "$MODEL_COUNT" -lt 900 ]; then
8385
echo "ERROR: Not enough model files in source distribution"
8486
exit 1
8587
fi
88+
if [ "$ENUM_COUNT" -lt 75 ]; then
89+
echo "ERROR: Not enough enum files in source distribution"
90+
exit 1
91+
fi
8692
8793
# Install and verify the wheel
8894
pip install dist/*.whl

msgspec_schemaorg/base.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
"""
22
Base classes for Schema.org models with JSON-LD compatibility.
33
"""
4+
45
from __future__ import annotations
56
from typing import Any, Dict, List, Optional, Union
67
import msgspec
@@ -10,16 +11,17 @@
1011
class SchemaOrgBase(msgspec.Struct, frozen=True, omit_defaults=True):
1112
"""
1213
Base class for all Schema.org models with JSON-LD fields.
13-
14+
1415
This class provides the standard JSON-LD fields (@id, @type, @context, etc.)
1516
that are used to represent linked data. All Schema.org model classes
1617
inherit from this base.
17-
18+
1819
JSON-LD fields are aliased using msgspec's field renaming to ensure
1920
that the serialized output uses the @ prefix.
2021
"""
22+
2123
id: Optional[str] = field(default=None, name="@id")
2224
context: Optional[Union[str, Dict[str, Any]]] = field(default=None, name="@context")
2325
# Note: type field is intentionally omitted since it will be provided by each class
2426
graph: Optional[List[Dict[str, Any]]] = field(default=None, name="@graph")
25-
reverse: Optional[Dict[str, Any]] = field(default=None, name="@reverse")
27+
reverse: Optional[Dict[str, Any]] = field(default=None, name="@reverse")

msgspec_schemaorg/cli.py

Lines changed: 0 additions & 76 deletions
This file was deleted.

msgspec_schemaorg/enums/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@
6666
'PaymentMethodType',
6767
'PaymentStatusType',
6868
'PhysicalActivityCategory',
69+
'PhysicalExam',
6970
'PriceComponentTypeEnumeration',
7071
'PriceTypeEnumeration',
7172
'PurchaseType',
Lines changed: 63 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,79 +1,80 @@
11
"""Schema.org intangible enumeration types."""
22

3-
from .EUEnergyEfficiencyEnumeration import EUEnergyEfficiencyEnumeration
4-
from .MusicReleaseFormatType import MusicReleaseFormatType
5-
from .WearableMeasurementTypeEnumeration import WearableMeasurementTypeEnumeration
6-
from .ActionStatusType import ActionStatusType
7-
from .BoardingPolicyType import BoardingPolicyType
3+
from .PriceTypeEnumeration import PriceTypeEnumeration
4+
from .MedicalSpecialty import MedicalSpecialty
85
from .BodyMeasurementTypeEnumeration import BodyMeasurementTypeEnumeration
9-
from .FulfillmentTypeEnumeration import FulfillmentTypeEnumeration
10-
from .WearableSizeSystemEnumeration import WearableSizeSystemEnumeration
116
from .USNonprofitType import USNonprofitType
12-
from .MedicalEvidenceLevel import MedicalEvidenceLevel
13-
from .GovernmentBenefitsType import GovernmentBenefitsType
7+
from .PaymentMethodType import PaymentMethodType
8+
from .WearableSizeSystemEnumeration import WearableSizeSystemEnumeration
9+
from .MedicalTrialDesign import MedicalTrialDesign
10+
from .IncentiveQualifiedExpenseType import IncentiveQualifiedExpenseType
11+
from .PurchaseType import PurchaseType
12+
from .TierBenefitEnumeration import TierBenefitEnumeration
13+
from .GenderType import GenderType
14+
from .GameServerStatus import GameServerStatus
15+
from .BookFormatType import BookFormatType
16+
from .PhysicalExam import PhysicalExam
17+
from .IPTCDigitalSourceEnumeration import IPTCDigitalSourceEnumeration
18+
from .LegalForceStatus import LegalForceStatus
19+
from .DriveWheelConfigurationValue import DriveWheelConfigurationValue
1420
from .HealthAspectEnumeration import HealthAspectEnumeration
15-
from .IncentiveType import IncentiveType
16-
from .OrderStatus import OrderStatus
21+
from .RestrictedDiet import RestrictedDiet
1722
from .SteeringPositionValue import SteeringPositionValue
18-
from .DigitalPlatformEnumeration import DigitalPlatformEnumeration
19-
from .EnergyStarEnergyEfficiencyEnumeration import EnergyStarEnergyEfficiencyEnumeration
20-
from .ItemAvailability import ItemAvailability
21-
from .MedicalImagingTechnique import MedicalImagingTechnique
23+
from .DeliveryMethod import DeliveryMethod
2224
from .InfectiousAgentClass import InfectiousAgentClass
23-
from .IncentiveStatus import IncentiveStatus
24-
from .WearableSizeGroupEnumeration import WearableSizeGroupEnumeration
25+
from .GovernmentBenefitsType import GovernmentBenefitsType
26+
from .AdultOrientedEnumeration import AdultOrientedEnumeration
2527
from .MediaManipulationRatingEnumeration import MediaManipulationRatingEnumeration
26-
from .GameAvailabilityEnumeration import GameAvailabilityEnumeration
27-
from .PaymentMethodType import PaymentMethodType
28-
from .RsvpResponseType import RsvpResponseType
29-
from .LegalForceStatus import LegalForceStatus
30-
from .IPTCDigitalSourceEnumeration import IPTCDigitalSourceEnumeration
31-
from .MedicalStudyStatus import MedicalStudyStatus
28+
from .ItemAvailability import ItemAvailability
3229
from .CertificationStatusEnumeration import CertificationStatusEnumeration
33-
from .UKNonprofitType import UKNonprofitType
34-
from .MedicalSpecialty import MedicalSpecialty
35-
from .TierBenefitEnumeration import TierBenefitEnumeration
36-
from .LegalValueLevel import LegalValueLevel
37-
from .PriceTypeEnumeration import PriceTypeEnumeration
38-
from .DayOfWeek import DayOfWeek
39-
from .ReturnFeesEnumeration import ReturnFeesEnumeration
40-
from .GamePlayMode import GamePlayMode
41-
from .RestrictedDiet import RestrictedDiet
4230
from .MusicAlbumProductionType import MusicAlbumProductionType
43-
from .ReturnLabelSourceEnumeration import ReturnLabelSourceEnumeration
44-
from .DriveWheelConfigurationValue import DriveWheelConfigurationValue
45-
from .OfferItemCondition import OfferItemCondition
46-
from .PriceComponentTypeEnumeration import PriceComponentTypeEnumeration
47-
from .MedicalTrialDesign import MedicalTrialDesign
48-
from .IncentiveQualifiedExpenseType import IncentiveQualifiedExpenseType
49-
from .AdultOrientedEnumeration import AdultOrientedEnumeration
50-
from .MedicalDevicePurpose import MedicalDevicePurpose
51-
from .NLNonprofitType import NLNonprofitType
52-
from .CarUsageType import CarUsageType
53-
from .DrugPregnancyCategory import DrugPregnancyCategory
54-
from .MerchantReturnEnumeration import MerchantReturnEnumeration
55-
from .PaymentStatusType import PaymentStatusType
56-
from .EventStatusType import EventStatusType
5731
from .MedicineSystem import MedicineSystem
58-
from .ReservationStatusType import ReservationStatusType
59-
from .PhysicalActivityCategory import PhysicalActivityCategory
60-
from .MedicalObservationalStudyDesign import MedicalObservationalStudyDesign
61-
from .PurchaseType import PurchaseType
62-
from .EventAttendanceModeEnumeration import EventAttendanceModeEnumeration
63-
from .MapCategoryType import MapCategoryType
64-
from .DrugCostCategory import DrugCostCategory
65-
from .GenderType import GenderType
66-
from .MeasurementMethodEnum import MeasurementMethodEnum
32+
from .WearableMeasurementTypeEnumeration import WearableMeasurementTypeEnumeration
33+
from .DrugPregnancyCategory import DrugPregnancyCategory
34+
from .WearableSizeGroupEnumeration import WearableSizeGroupEnumeration
35+
from .PriceComponentTypeEnumeration import PriceComponentTypeEnumeration
36+
from .MusicReleaseFormatType import MusicReleaseFormatType
37+
from .LegalValueLevel import LegalValueLevel
38+
from .DigitalPlatformEnumeration import DigitalPlatformEnumeration
39+
from .ReturnMethodEnumeration import ReturnMethodEnumeration
6740
from .DigitalDocumentPermissionType import DigitalDocumentPermissionType
68-
from .DeliveryMethod import DeliveryMethod
69-
from .BookFormatType import BookFormatType
41+
from .ReturnFeesEnumeration import ReturnFeesEnumeration
42+
from .EventAttendanceModeEnumeration import EventAttendanceModeEnumeration
43+
from .FulfillmentTypeEnumeration import FulfillmentTypeEnumeration
44+
from .DrugPrescriptionStatus import DrugPrescriptionStatus
7045
from .RefundTypeEnumeration import RefundTypeEnumeration
46+
from .EventStatusType import EventStatusType
47+
from .ReservationStatusType import ReservationStatusType
48+
from .DayOfWeek import DayOfWeek
7149
from .ItemListOrderType import ItemListOrderType
72-
from .MedicalAudienceType import MedicalAudienceType
50+
from .EUEnergyEfficiencyEnumeration import EUEnergyEfficiencyEnumeration
51+
from .UKNonprofitType import UKNonprofitType
52+
from .OrderStatus import OrderStatus
53+
from .IncentiveType import IncentiveType
54+
from .MedicalStudyStatus import MedicalStudyStatus
55+
from .GameAvailabilityEnumeration import GameAvailabilityEnumeration
7356
from .ContactPointOption import ContactPointOption
57+
from .MerchantReturnEnumeration import MerchantReturnEnumeration
58+
from .ReturnLabelSourceEnumeration import ReturnLabelSourceEnumeration
59+
from .MedicalObservationalStudyDesign import MedicalObservationalStudyDesign
60+
from .MedicalImagingTechnique import MedicalImagingTechnique
61+
from .OfferItemCondition import OfferItemCondition
62+
from .PaymentStatusType import PaymentStatusType
63+
from .NLNonprofitType import NLNonprofitType
64+
from .MapCategoryType import MapCategoryType
65+
from .IncentiveStatus import IncentiveStatus
66+
from .RsvpResponseType import RsvpResponseType
67+
from .SizeSystemEnumeration import SizeSystemEnumeration
68+
from .ActionStatusType import ActionStatusType
69+
from .EnergyStarEnergyEfficiencyEnumeration import EnergyStarEnergyEfficiencyEnumeration
70+
from .MedicalDevicePurpose import MedicalDevicePurpose
7471
from .MedicalProcedureType import MedicalProcedureType
72+
from .CarUsageType import CarUsageType
7573
from .MusicAlbumReleaseType import MusicAlbumReleaseType
76-
from .ReturnMethodEnumeration import ReturnMethodEnumeration
77-
from .SizeSystemEnumeration import SizeSystemEnumeration
78-
from .GameServerStatus import GameServerStatus
79-
from .DrugPrescriptionStatus import DrugPrescriptionStatus
74+
from .GamePlayMode import GamePlayMode
75+
from .BoardingPolicyType import BoardingPolicyType
76+
from .PhysicalActivityCategory import PhysicalActivityCategory
77+
from .MedicalAudienceType import MedicalAudienceType
78+
from .MeasurementMethodEnum import MeasurementMethodEnum
79+
from .MedicalEvidenceLevel import MedicalEvidenceLevel
80+
from .DrugCostCategory import DrugCostCategory

0 commit comments

Comments
 (0)