* Fix the ability to copy the state, now copying the state will return the same state.
* reformat
* full implement deepcopy with memo dict, add typehints
* Update aiogram/dispatcher/fsm/state.py
Co-authored-by: Oleg A. <t0rr@mail.ru>
* update tests
Co-authored-by: Oleg A. <t0rr@mail.ru>
* remove deepcopy in tests
Co-authored-by: Oleg A. <t0rr@mail.ru>
* remove deepcopy method
Co-authored-by: Oleg A. <t0rr@mail.ru>
* update changes description
Co-authored-by: Oleg A. <t0rr@mail.ru>
* update __eq__ method
Co-authored-by: Oleg A. <t0rr@mail.ru>
* add typehints, tests
* return False for not equal objects
creating FilterObject use getfullargspec that check State equality with `type` and `object` builtins, raising Error in `__eq__` method of State break this behavior
* return NotImplemented for other types
* use `!=` instead of 'not x == y' in tests
Co-authored-by: Oleg A. <t0rr@mail.ru>