NotQuiteRSS — rozwój QuiteRSS z obsługą Qt 6 i bez wbudowanej przeglądarki

Projekt NotQuiteRSS rozwija gałąź agregatora RSS/Atom QuiteRSS, stworzoną do modernizacji aplikacji z zachowaniem znanego interfejsu. Projekt skierowany jest do użytkowników, którzy potrzebują samodzielnego narzędzia desktopowego do czytania kanałów informacyjnych i lokalnego przechowywania wiadomości. Kod napisany jest w C++ z wykorzystaniem Qt Widgets i rozpowszechniany na licencji GPLv3. W trakcie rozwoju stosowane są narzędzia AI. Pakiety budowane są dla systemów Linux (AppImage), Windows i macOS.

Główna różnica architektoniczna w porównaniu do QuiteRSS to całkowity brak wbudowanego silnika przeglądarki QtWebKit bez jego zastępowania przez QtWebEngine.
Artykuły wyświetlane są za pomocą QTextBrowser i QTextDocument. Zamiast Qt Multimedia do odtwarzania dźwiękowych powiadomień wykorzystywana jest biblioteka miniaudio z wbudowaną obsługą WAV, MP3 i FLAC, nie wymagająca instalacji wtyczek GStreamer.

Przed wyświetleniem HTML jest przetwarzany według listy dozwolonych elementów i atrybutów: usuwane są skrypty, ramki, formularze i inne nieobsługiwane konstrukcje. JavaScript nie jest wykonywany, a linki do stron otwierane są w zewnętrznej przeglądarce. Dla HTTPS wymagane jest TLS 1.2 lub nowszy oraz weryfikacja certyfikatów. Ograniczone są rozmiary odpowiedzi i przekierowania, a przekierowanie z HTTPS na HTTP jest zabronione. Obrazy artykułów są ładowane oddzielnie od kanałów, bez przesyłania ich danych uwierzytelniających i ciasteczek. Animacja obrazów w ukrytych częściach strony jest wstrzymywana.

Aplikacja nie została przekształcona w listę linków. Zachowane zostało czytanie artykułów z formatowaniem i obrazami, tryb gazetowy, zakładki kanałów i kategorii, wyszukiwanie w artykule, powiększanie, drukowanie i eksport. Ograniczeniem jest brak pełnoprawnej wbudowanej układki HTML/CSS (do przeglądania strony źródłowej może być używana zewnętrzna przeglądarka).

Wśród możliwości i usprawnień NotQuiteRSS:

  • Obsługuje pracę z bazą SQLite w pamięci operacyjnej z zapisywaniem na dysk co zadany interwał oraz przy normalnym zakończeniu. Naprawiono niepożądane zapisy przy minimalizacji do zasobnika oraz obróbkę błędów zapisu.
  • Kopie zapasowe można tworzyć ręcznie, według harmonogramu, przy zmianie subskrypcji i wyjściu z aplikacji. Można ustawić liczbę przechowywanych zestawów. Przewidziano skrócone kopie, zawierające tylko wybrane lub oznaczone artykuły, a także pełne kopie zapasowe przed aktualizacją struktury bazy.
  • Naprawiono nieograniczone gromadzenie rekordów służbowych o usuniętych publikacjach przy użyciu oczyszczania według daty publikacji.
    Udoskonalono usuwanie starych artykułów, wykrywanie duplikatów oraz obsługę błędów bazy.
  • Dla wybranych feedów można jednocześnie zmieniać harmonogram aktualizacji, ładowanie obrazów, kierunek tekstu i parametry kolumn. Filtry artykułów mogą być stosowane do wszystkich feedów, w tym dodanych później.
  • Dostępna jest konfiguracja User-Agent i osobne zasady dla domenów, w tym parametry GET/POST. Dla stron z weryfikacją przeglądarkową przewidziano selektywny import Cookies w formacie Netscape. Cloudflare i Anubis są rozpoznawane z wydaniem zrozumiałej diagnostyki, ale pomyślne przejście weryfikacji przez import Cookies nie jest gwarantowane.
  • Motywy, tłumaczenia i usługi wysyłania linków zostały przeniesione do zewnętrznych zasobów. Istnieje motyw OLED, ulepszone ikony dla HiDPI oraz możliwość przywrócenia skupienia agregatorowi po otwarciu artykułu w zewnętrznej przeglądarce.

Źródło: opennet.ru

Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS - ProHoster