xmartlabs / Eureka

Elegant iOS form builder in Swift
https://eurekacommunity.github.io
MIT License
11.78k stars 1.33k forks source link

Fix removeAll method in sections #2141

Closed mats-claassen closed 3 years ago

mats-claassen commented 3 years ago

Override the removeAll(where:) method as it causes Duplicate Tag errors

Fixes #2048

mtnbarreto commented 3 years ago

😎

jserrafindster commented 3 years ago

this is causing me some trouble, any idea when we will see a new release?

jserrafindster commented 3 years ago

Just installed 5.3.3 and im stilll having this issue

0 0x0000000182c8186c in __exceptionPreprocess ()

1 0x0000000197c9cc50 in objc_exception_throw ()

2 0x0000000182b87000 in +[NSException raise:format:arguments:] ()

3 0x0000000183f1b91c in -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] ()

4 0x000000018582cb20 in -[UITableView _endCellAnimationsWithContext:] ()

5 0x0000000185846164 in -[UITableView endUpdatesWithContext:] ()

6 0x0000000101aab760 in FormViewController.rowsHaveBeenRemoved(_:at:) at /Users/my-user/my-app/Pods/Eureka/Source/Core/Core.swift:732

7 0x0000000101aac72c in protocol witness for FormDelegate.rowsHaveBeenRemoved(_:at:) in conformance FormViewController ()

8 0x0000000101b4fee0 in Section.KVOWrapper.observeValue(forKeyPath:of:change:context:) at /Users/my-user/my-app/Pods/Eureka/Source/Core/Section.swift:94

9 0x0000000101b516fc in @objc Section.KVOWrapper.observeValue(forKeyPath:of:change:context:) ()

10 0x0000000183fa98e0 in NSKeyValueNotifyObserver ()

11 0x0000000183fabe70 in NSKeyValueDidChange ()

12 0x0000000183fab8dc in -[NSObject(NSKeyValueObservingPrivate) _changeValueForKeys:count:maybeOldValuesDict:maybeNewValuesDict:usingBlock:] ()

13 0x0000000183ee43a0 in -[NSObject(NSKeyValueObservingPrivate) _changeValueForKey:key:key:usingBlock:] ()

14 0x0000000183fa597c in _NSSetObjectValueAndNotify ()

15 0x0000000101b4f150 in Section.KVOWrapper.removeAllRows() at /Users/my-user/my-app/Pods/Eureka/Source/Core/Section.swift:78

16 0x0000000101b58920 in Section.removeAll(keepingCapacity:) at /Users/my-user/my-app/Pods/Eureka/Source/Core/Section.swift:320

17 0x0000000100696114 in closure #1 in SettingsVC.reloadDevicesSection() at /Users/my-user/my-app/app/UI/Settings/SettingsVC.swift:369

18 0x00000001005e07d8 in thunk for @callee_guaranteed () -> () ()

19 0x00000001005e0830 in thunk for @escaping @callee_guaranteed () -> () ()

20 0x0000000185b76638 in +[UIView(Animation) performWithoutAnimation:] ()

21 0x0000000100695e08 in SettingsVC.reloadDevicesSection() at /Users/my-user/my-app/app/UI/Settings/SettingsVC.swift:368

mats-claassen commented 3 years ago

Please open a new issue and add details for the exception you are seeing. What is the error message? It seems you are calling removeAll(keepingCapacity) and not removeAll(where:). So please also add some code context info