Skip to content

Conversation

@rfc2822
Copy link
Member

@rfc2822 rfc2822 commented Oct 28, 2025

This PR changes the builders and the tests so that they direclty use the ical4j VEvent class instead of the deprecated Event data class.

Also closes #100.

@rfc2822 rfc2822 self-assigned this Oct 28, 2025
@rfc2822 rfc2822 linked an issue Oct 28, 2025 that may be closed by this pull request
@rfc2822 rfc2822 added the refactoring Quality improvement of existing functions label Oct 28, 2025
- Add unknownProperties() method to filter known properties
- Update test for unknown properties handling
- Refactor KNOWN_PROPERTY_NAMES to include processed properties
@rfc2822 rfc2822 changed the title 69-event-builders-change-input-class-from-event-to-vevent Event builders: use VEvent instead of deprecated Event as input Oct 28, 2025
@rfc2822 rfc2822 marked this pull request as ready for review October 28, 2025 17:00
@rfc2822 rfc2822 requested a review from a team as a code owner October 28, 2025 17:00
@rfc2822 rfc2822 requested a review from Copilot October 28, 2025 19:07
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This pull request refactors the calendar mapping code to work directly with VEvent (ical4j native components) instead of the deprecated Event data class. This is a significant architectural change that modernizes the codebase by removing an abstraction layer and working more directly with the iCalendar library's native types.

Key changes:

  • Replace all Event usages with VEvent in builder classes and tests
  • Update property access from direct field access to ical4j's property-based API
  • Migrate from Event.exceptions to AssociatedEvents structure
  • Remove deprecated Event test file and move tests to appropriate builder test files

Reviewed Changes

Copilot reviewed 62 out of 62 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
AndroidEventBuilder.kt Renamed from LegacyAndroidEventBuilder2, now accepts AssociatedEvents instead of Event
Builder classes (20+ files) Updated build() signatures from Event to VEvent, changed property access patterns
Test files (25+ files) Migrated test data from Event constructor to VEvent with propertyListOf() helper
ICalendar.kt Refactored vAlarmToMin() to accept individual date properties instead of Event/Task objects
Event.kt Removed organizerEmail property, increased deprecation level to WARNING
EventTest.kt Deleted - tests moved to AttendeesBuilderTest.kt

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@rfc2822 rfc2822 merged commit 2383958 into main Oct 29, 2025
13 checks passed
@rfc2822 rfc2822 deleted the 69-event-builders-change-input-class-from-event-to-vevent branch October 29, 2025 07:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

refactoring Quality improvement of existing functions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

OriginalInstanceTimeBuilder: date when main doesn't have DTSTART Event builders: change input class from Event to VEvent

1 participant