Skip to content

Create comprehensive dependency and timezone documentation #903

@SashankBhamidi

Description

@SashankBhamidi

The problem

Dependencies like python-dateutil and tzdata aren't explained anywhere. Users see them in requirements and don't understand why they exist, leading to "unused dependency" reports like #900.

What needs documenting

  • python-dateutil: Used extensively in timezone modules (rrule, tzical, timezone handling)
  • tzdata: IANA timezone data (already commented in Document tzdata dependency purpose #902 but needs broader context)
  • backports.zoneinfo: Python <3.9 compatibility
  • pytz: Supported timezone library, available via icalendar.use_pytz()

Nicco's specific requests from #900

From @niccokunzmann in this comment:

  • Document mandatory dependencies
  • Explain tzdata rationale
  • Clarify pytz role and migration path
  • Remove pytz/zoneinfo notice from README once properly documented
  • Link from pyproject.toml to comprehensive docs
  • Reference [BUG] looks like unused dependency: tzdata #900 discussion for historical context

Implementation tasks

After #822 documentation restructure:

  1. Create dependency rationale page explaining each dependency's purpose
  2. Remove pytz/zoneinfo notice from README (move to proper docs)
  3. Link from pyproject.toml to the new documentation section
  4. Reference [BUG] looks like unused dependency: tzdata #900 discussion for historical context

Related issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    dependenciesPull requests that update a dependency filedoc

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions