todo.txt 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. - update docs
  2. - fix year of changes
  3. сборка:
  4. - linux/ubuntu https://www.simplified.guide/ubuntu/build-chroot-environment
  5. - windows
  6. - conflict handling is not available
  7. ===========
  8. 5. разобраться с лог-левелами?
  9. 1. ^ если в block iterator'е были проскипанные блоки (из-за того, что были залочены), то файл(!) надо добавить на рескан через некоторое время
  10. 3. скан-актор не детектит скаченные файлы
  11. 4. надо как-то понимать, что folder is up-to-date?
  12. - syncspirit-daemon: /home/b/development/cpp/syncspirit/src/net/dialer_actor.cpp:88: void syncspirit::net::dialer_actor_t::on_timer(rotor::request_id_t, bool): Assertion `it != redial_map.end()' failed.
  13. - [2023-10-31 13:56:49.488] [D/23191] init/active:KUEQE66, resolving tcp://93.31.21.95:443 (transport = 0x5585be9747e0)
  14. - 2022-03-28 20:47:54.664] [E/25546] fs::scan_actor, on_hash, file: my_label/Camera/VID_20210122_121411.mp4, error: fs::scan_actor request timeout
  15. =====================
  16. - идёт много file_clone, но нету скачки файла
  17. - check 4 symlinks test (scaner) ?
  18. - simulate file failure on win32 (open file before it will be opened in fs_actor)
  19. - app-image : ./linuxdeploy-x86_64.AppImage --appdir AppDir -e bin/eratosthenes -d my.desktop -i /usr/share/icons/hicolor/48x48/apps/claws-mail.png --output appimage
  20. - image icon:
  21. https://www.stockio.com/free-icons/?q=sync,
  22. https://www.freepik.com/free-vector/settings-icons-flat_1530486.htm#query=sync%20icon&position=1&from_view=search
  23. ===================
  24. - восстанавливаться при креше (из-за MDBX_SAFE_NOSYNC) : держать заммапленый файлик
  25. file-uuid | (source) device_id | seq_no
  26. ----------+--------------------+-------
  27. ...
  28. к-во записей N задаётся в конфиге. Когда файл флушится, пишем запись.
  29. Как только произошло N записей, флушим БД на диск.
  30. - controller: не падать, если пришла ошибка на запрос блока
  31. - https://docs.syncthing.net/users/faq.html#what-things-are-synced
  32. - когда нам прислали update, но нету sequence/устаревшая инфа, нужно апдейтить бд, но не запрашивать файлы
  33. - test: validation happens before opening file?
  34. - send indices deltas (after restart detects changes)
  35. - test: fs_actor, deleted file from index
  36. - test: controller, share folder -> index is sent
  37. - test: file is not available
  38. - test: device file
  39. - start syncing folder when new folder has been added, нужно слать cancel{}
  40. - backpressue on controller by file-actor?
  41. - Canonicalize, TempNameWithPrefix, TempName
  42. - локальные таймстемпы?
  43. - metadata (timestamp, etc.)
  44. - cluster is update by 3rd party: регать итераторы в cluster'е и инвалидировать, если надо.
  45. - https://github.com/syncthing/syncthing/pull/7876
  46. - https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
  47. - https://en.wikipedia.org/wiki/Filename#Reserved_characters_and_words
  48. - https://github.com/wheybags/glibc_version_header
  49. ./src/ui-daemon/syncspirit-daemon --log_level trace --config_dir=../ --command add_peer:zzz:KUEQE66-JJ7P6AD-BEHD4ZW-GPBNW6Q-Y4C3K4Y-X44WJWZ-DVPIDXS-UDRJMA7 --command add_folder:label=my_label:id=nagkw-srrjz:path=/tmp/syncspirit --command share:folder=my_label:device=KUEQE66
  50. - https://docs.0install.net/about/faq/
  51. 3. use wxWidgets
  52. - config & tui
  53. - игнорированные девайсы: показать, удалить
  54. - добавить/удалить/изменить директорию
  55. - удалить/добавить/изменить девайс
  56. - config versioning
  57. - next activity
  58. https://en.wikipedia.org/wiki/ANSI_escape_code#CSI_sequences
  59. https://stackoverflow.com/questions/64035952/how-to-key-press-detection-on-a-linux-terminal-low-level-style-in-python
  60. - local-discovery
  61. iptables -t nat -A OUTPUT -p udp --dport 21027 -j DNAT --to-destination 127.0.0.1:21026
  62. -relay
  63. syncthing-relay(7)
  64. relay://78.46.89.67:22067/?id=WAVJNLF-AVVZAPT-V6JEQA5-B3EPEW6-6SAR3C4-NFZBOW2-CWR3QM4-QJT2OA6&pingInterval=1m0s&networkTimeout=2m0s&sessionLimitBps=0&globalLimitBps=0&statusAddr=:22070&providedBy=frogeye.fr
  65. - discovery_support, upnp_support-> proto ?
  66. - вообще не отвечает upnp
  67. - restart all on config change
  68. openssl x509 -inform PEM -outform DER -in ~/.config/syncthing/cert.pem -out /tmp/cert.der
  69. - статически собирать бинарь под линь ( https://www.youtube.com/watch?v=Z7WuUhPJ-cU&list=PLZN9ZGiWZoZruMY-MlkAd-nHzdP9TfLRC&index=25 )
  70. - case: когда коннектимся к пиру, но он ранее приконнектился к нам
  71. - dialer-actor
  72. - protobuf light?
  73. - DB
  74. https://github.com/erthink/libmdbx
  75. https://iowow.io/
  76. https://symas.com/lmdb/
  77. https://en.wikipedia.org/wiki/LevelDB
  78. https://wiki.lyrasis.org/display/FEDORA471/How+to+inspect+LevelDB
  79. https://softwarerecs.stackexchange.com/questions/14409/leveldb-database-client
  80. [RF7ZH] 2020/12/10 10:25:13.662765 logfs.go:61: DEBUG: casefs.go:152 basic /home/b/Desktop/finances Lstat invoices/samples/Rechnung_Nr._B2020128.pdf {0xc000a14f70} <nil>
  81. https://forum.syncthing.net/t/a-few-questions-about-quic-hole-punching-and-stun/16490
  82. =========
  83. 1. Есть глобальй регистратор
  84. message_type -> ack_count
  85. 2. Акторы при старте регаются что они выслают ack. При выключении - дерегаются.
  86. 3. Интерфес visitor'а (Effector)
  87. OnBegin(diff&) -> outcome::result;
  88. OnCommit(diff&) -> void;
  89. OnRevert(diff&) -> void;
  90. 4. Diff
  91. Apply()
  92. Revert()
  93. Commit() -> true/false. true если к-во ack'ов == то, что в регистраторе
  94. Diff::Ack
  95. 5. По-умолчанию 1 подтверждение высылает сам источник, Commit ничего не делает