Crash at assert(unsortedConflicts.count > 0)
Thank you for the framework, it's amazing!! I am getting crash when trying to change event's date to the next week. Looks like commenting out the assert statement helps to fix it. //assert(unsortedConflicts.count > 0)
assertion failed: file …Frameworks/ScheduleKit/ScheduleKit/SCKViewController.swift, line 373 Current stack trace: 0 libswiftCore.dylib 0x0000000100bdccc0 swift_reportError + 132 1 libswiftCore.dylib 0x0000000100bf9f50 _swift_stdlib_reportFatalErrorInFile + 112 2 libswiftCore.dylib 0x0000000100ba8370 partial apply for (_assertionFailed(StaticString, String, StaticString, UInt, flags : UInt32) -> Never).(closure #1).(closure #1).(closure #1) + 99 3 libswiftCore.dylib 0x00000001009f00a0 specialized specialized StaticString.withUTF8Buffer<A> ((UnsafeBufferPointer<UInt8>) -> A) -> A + 355 4 libswiftCore.dylib 0x0000000100ba82b0 partial apply for (_assertionFailed(StaticString, StaticString, StaticString, UInt, flags : UInt32) -> Never).(closure #1).(closure #1) + 144 5 libswiftCore.dylib 0x00000001009f05b0 specialized specialized String._withUnsafeBufferPointerToUTF8<A> ((UnsafeBufferPointer<UInt8>) throws -> A) throws -> A + 124 6 libswiftCore.dylib 0x0000000100b4caf0 partial apply for (_assertionFailed(StaticString, String, StaticString, UInt, flags : UInt32) -> Never).(closure #1) + 185 7 libswiftCore.dylib 0x00000001009f00a0 specialized specialized StaticString.withUTF8Buffer<A> ((UnsafeBufferPointer<UInt8>) -> A) -> A + 355 8 libswiftCore.dylib 0x00000001009efe80 _assertionFailed(StaticString, String, StaticString, UInt, flags : UInt32) -> Never + 144 9 ScheduleKit 0x000000010054f3f0 SCKViewController.resolvedConflicts(for : SCKEventHolder) -> [SCKEventHolder] + 833 10 ScheduleKit 0x000000010051f890 SCKGridView.invalidateLayout(for : SCKEventView) -> () + 383 11 ScheduleKit 0x0000000100539880 SCKView.invalidateLayout(for : [SCKEventView], animated : Bool) -> () + 2391 12 ScheduleKit 0x000000010053ada0 SCKView.invalidateLayoutForAllEventViews(animated : Bool) -> () + 71 13 ScheduleKit 0x000000010054d1e0 SCKViewController.parseEvents([SCKEvent]) -> () + 8546 14 ScheduleKit 0x000000010054bb60 SCKViewController.parseData(in : [SCKEvent], from : SCKEventRequest) -> () + 1040 15 ScheduleKit 0x0000000100552800 protocol witness for AsynchronousRequestParsing.parseData(in : [SCKEvent], from : SCKEventRequest) -> () in conformance SCKViewController + 57 16 ScheduleKit 0x0000000100545870 SCKEventRequest.complete(with : [SCKEvent]) -> () + 498 17 ScheduleKit 0x0000000100546590 SCKConcreteEventRequest.complete<A where ...> (with : [A1]) -> () + 122 18 MyApp 0x00000001001652f0 WeekViewController.(scheduleController(SCKViewController, didMakeConcreteEventRequest : SCKConcreteEventRequest<ScheduleEvent>) -> ()).(closure #1).(closure #1) + 125 19 MyApp 0x0000000100004ac0 thunk + 39 20 libdispatch.dylib 0x000000010127c6d9 _dispatch_call_block_and_release + 12 21 libdispatch.dylib 0x0000000101272f54 _dispatch_client_callout + 8 22 libdispatch.dylib 0x0000000101281a09 _dispatch_main_queue_callback_4CF + 362 23 CoreFoundation 0x00007fff9c0f0520 CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 9 24 CoreFoundation 0x00007fff9c0b0bd0 __CFRunLoopRun + 2205 25 CoreFoundation 0x00007fff9c0b07d0 CFRunLoopRunSpecific + 420 26 HIToolbox 0x00007fff9b63ca3c RunCurrentEventLoopInMode + 240 27 HIToolbox 0x00007fff9b63c7b1 ReceiveNextEventCommon + 432 28 HIToolbox 0x00007fff9b63c74f _BlockUntilNextEventMatchingListInModeWithFilter + 71 29 AppKit 0x00007fff99be2718 _DPSNextEvent + 1120 30 AppKit 0x00007fff9a35c77a -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2789 31 AppKit 0x00007fff99bd715b -[NSApplication run] + 926 32 AppKit 0x00007fff99ba193f NSApplicationMain + 1237 33 MyApp 0x000000010001ca60 main + 84 34 libdyld.dylib 0x00007fffb1613254 start + 1
Thank you @vladlo ! Maybe you're calling complete: on the event request inside the didMakeEventRequest: method. The event request system is intended to be used asynchronously. If you want to work synchronously you can use the events(in:for:) or concreteEvents(in:for:) delegate methods. Tell me if that works for you.
Anyway, i'll investigate the scenario you are describing, too! :)