Skip to content

Maintenance and release housekeeping#63

Open
lippserd wants to merge 8 commits intomainfrom
docs-and-repo-housekeeping
Open

Maintenance and release housekeeping#63
lippserd wants to merge 8 commits intomainfrom
docs-and-repo-housekeeping

Conversation

@lippserd
Copy link
Copy Markdown
Member

@lippserd lippserd commented Mar 18, 2026

This PR consolidates several maintenance tasks to bring the repository in
line with shared conventions across our projects.

Repository

  • Convert the license file to LICENSE.md to align with the repository’s
    Markdown‑based documentation and establish a consistent convention
    across all repositories.

Documentation

  • Add CHANGELOG.md to summarize notable changes per release.
  • Expand README.md with a package overview, installation requirements,
    and focused examples for scheduling tasks with cron expressions,
    one‑off datetimes, and iCalendar recurrence rules, including event
    listener setup.
  • Normalize and complete PHPDoc across all source files.
  • Clean up inline comments and tighten wording.

@cla-bot cla-bot Bot added the cla/signed CLA is signed by all contributors of a PR label Mar 18, 2026
@lippserd lippserd requested a review from jrauh01 March 18, 2026 22:03
Copy link
Copy Markdown
Contributor

@jrauh01 jrauh01 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You could take the opportunity and realign the functions in the Frequency implementations so they are all in the same order.

Comment thread src/Cron.php
Comment thread src/Cron.php Outdated
Comment thread src/Cron.php Outdated
Comment thread src/OneOff.php
Comment thread src/RRule.php Outdated
Comment thread src/RRule.php Outdated
Comment thread CHANGELOG.md
@lippserd
Copy link
Copy Markdown
Member Author

You could take the opportunity and realign the functions in the Frequency implementations so they are all in the same order.

Did you think of something like 903eebf?

@jrauh01
Copy link
Copy Markdown
Contributor

jrauh01 commented Mar 20, 2026

Did you think of something like 903eebf?

Yes, the order looks very reasonable to me.

Comment thread src/RRule.php Outdated
Comment thread src/RRule.php
Comment thread README.md Outdated
@lippserd lippserd force-pushed the docs-and-repo-housekeeping branch from 90732d7 to 3b4fb4c Compare March 20, 2026 11:13
@lippserd lippserd requested a review from jrauh01 March 20, 2026 11:13
@lippserd
Copy link
Copy Markdown
Member Author

@jrauh01 I also introduced two new changes.

@jrauh01
Copy link
Copy Markdown
Contributor

jrauh01 commented Mar 20, 2026

Afaik we want to keep the @var annotations even if they only repeat the type. Did this guideline change? I seem to remember speaking with @nilmerg and @sukhwinder33445 about that. Personally I would love removing them.

Example: Icinga/icinga-notifications-web#403 (comment)

@lippserd
Copy link
Copy Markdown
Member Author

Afaik we want to keep the @var annotations even if they only repeat the type. Did this guideline change? I seem to remember speaking with @nilmerg and @sukhwinder33445 about that. Personally I would love removing them.

Example: Icinga/icinga-notifications-web#403 (comment)

These guidelines are from a time before strict typing. Today, I would consider such annotations boilerplate and would omit or remove them. I would only keep them if they tighten types or add valuable explanations.

@jrauh01
Copy link
Copy Markdown
Contributor

jrauh01 commented Mar 20, 2026

These guidelines are from a time before strict typing. Today, I would consider such annotations boilerplate and would omit or remove them. I would only keep them if they tighten types or add valuable explanations.

Then shouldn't we create a new fix guideline for such cases? Because I don't get the impression that this is done consistently in our projects.

jrauh01
jrauh01 previously approved these changes Mar 20, 2026
Copy link
Copy Markdown
Contributor

@jrauh01 jrauh01 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assuming we remove @var annotations for typed properties that don't provide additional content from now on, this looks good to me now.

@lippserd lippserd force-pushed the docs-and-repo-housekeeping branch 3 times, most recently from 3528735 to 2d3f7bc Compare March 24, 2026 19:50
@lippserd lippserd added this to the v1.0.0 milestone Mar 24, 2026
Rename the license file to `LICENSE.md`, switch to a Markdown heading,
and normalize the Icinga URL.

This aligns the license file with the repository's Markdown-based
documentation and establishes `LICENSE.md` as a consistent convention
across all Icinga repositories.
@lippserd lippserd force-pushed the docs-and-repo-housekeeping branch from 2d3f7bc to 9d2ead6 Compare March 25, 2026 23:11
Comment thread CHANGELOG.md
Copy link
Copy Markdown
Contributor

@jrauh01 jrauh01 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Introduced changelog covers all releases and unreleased changes,
derived from tags, release notes, commits, and related pull requests.
Add a package overview, installation requirements, and focused examples
for scheduling tasks with cron expressions, one-off datetimes, and
iCalendar recurrence rules, including event listener setup.

This gives users practical guidance without turning the README into a
class-by-class API reference.
Add missing docblocks and replace fenced code examples with indented blocks for
better IDE rendering.
Recurr requires all dates (`start`, `until`) to share the rrule's
configured timezone; passing a datetime in a different timezone causes
recurrences to be calculated against the wrong UTC offset. The three
affected sites (`startAt()`, `endAt()`, `setTimezone()`) all carried the
same inline call and their own comment explaining this requirement. A
shared protected method documents the reasoning once and makes the intent
clear at each call site.
Inline comments should read as complete sentences and be easy to scan. Ending
each comment with a full stop signals that the thought is complete and keeps
the style consistent across the codebase. Where comments were verbose or
imprecise, take the opportunity to tighten the wording without changing
meaning.
Establish a consistent method order across all frequency implementations:
constructor → static factories → interface methods → class-specific
mutators/accessors → serialization → magic methods → protected helpers.
Maintain type safety by explicitly converting `DateTimeInterface` to mutable
`DateTime`. Original input remains unmodified.
@lippserd lippserd force-pushed the docs-and-repo-housekeeping branch from 9d2ead6 to a731903 Compare March 26, 2026 08:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla/signed CLA is signed by all contributors of a PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants