I’m an Outreachy applicant currently contributing to the release-schedule-planner project and have been working on improving areas like task dependencies, metadata support, and datetime precision.
While working on task dependencies, I noticed that MS Project XML supports richer dependency semantics (e.g., FS, SS, lag offsets), which raises some interesting design considerations for how we model and expose these relationships in the API.
I was curious:
Would using an Enum for dependency_type be preferable over raw integers for clarity and validation?
Are there plans to extend dependency handling further (e.g., validation rules or visualization support)?
I’d really appreciate any insights from others who’ve worked on similar scheduling or planning systems.
MS Project XML isn’t an open standard in the strict sense—it’s a proprietary format defined by Microsoft. However, it’s fairly well-documented and widely used so many tools can parse and interoperate with it.
In this case, Fedora release schedules are already distributed in this format, so the goal is to accurately ingest and represent that data rather than rely on MS Project itself
The intention here isn’t to use MS Project for planning software workflows directly, but to model and visualize the existing Fedora release schedule data. These schedules tend to follow more structured, milestone-driven timelines (like freezes, branching, releases), which are a bit different from typical flexible software task execution.
So the focus is more on compatibility and accurate representation of the existing data rather than prescribing a specific development workflow.