2016-02-02 22:30:39
DailyHCM wznowione - HCM 0.9

Dementuję ploty po raz kolejny - projekt nie umarł i dzisiaj wrzuciłem nową wersję swojego programu pocztowego :)

Rzeczywiście, ciężko mi znaleźć czas na rozwijanie programu tym bardziej, że pakowanie na siłowni oraz optymalizowanie Cepha jest bardziej cool, jazzy i w ogóle C++ ;) Ale sam dalej z niego (HCMa) korzystam, więc bugi i irytatory trzeba poprawiać. Co się pozmieniało? Od ostatniego wydania (z sierpnia 2013) najważniejsze dwie zmiany to usunięcie biblioteki hcm_extra.dll (teraz jest częścią hcm.exe - stąd paczka z obecnym Daily spakowana 7-zipem jest większa niż poprzednia ZIPem), oraz przejście z szyfrowania folderów Blowfishem na AES (sprzętowo wspierany gdzie to dostępne, tj. na nowszych procesorach Intela i AMD oraz VIA). Zmiana jest drastyczna, zresztą: popatrzmy na wykres.

Tak, szyfrowanie na procesorze Core i3-4130T jest 4x szybsze, deszyfrowanie 7x szybsze (nie wiem skąd taka różnica), zaś zmiana hasła folderu wyszła poza skalę (2 sekundy vs ponad 100). Był to efekt starego błędu projektowego (jeden, globalny kontekst szyfratora), który poza powyższym przypadkiem nie miał większego znaczenia - a skoro robię już takie rewolucje, to do końca. Przy okazji zoptymalizowałem też hashery MD5 i SHA1- SHA1 obsługuje rozszerzenia VIA ACE (Advanced Cryptography Engine) i na ich procesorach (Eden i Nano) liczenie sum kontrolnych jest realizowane sprzętowo. Niestety Intel zawiódł swoimi Skylake'ami i ichnie wsparcie dla sprzętowego SHA1 i SHA256 planowane jest dopiero z Broxtonami, czyli sto lat za murzynami, więc na razie się posiłkuje instrukcjami SSE.

Uwaga: program nie dokonuje automatycznej konwersji, więc przed uruchomieniem nowej wersji należy odszyfrować stare zaszyfrowane foldery (zmieniając ich hasło na puste). Inaczej nowy HCM ich nie odczyta, a że w międzyczasie pozmienia wersje plików konfiguracyjnych, to zostanie utracony dostęp do nich.

Innych optymalizacji jest tłum: zmniejszone użycie pamięci w różnych miejscach, sporo poprawek w dekoderze JPEG (w tym o 30% szybsze dekodowanie CMYKów), lepsza obsługa nowszych procesorów - w tym o 50% szybsze produkowanie drzew wątków i wczytywanie folderów na komputerach z obsługą instrukcji SSSE3 (Core 2 Duo i nowsze), i do 75% szybsze na komputerach z obsługą instrukcji SSE 4.2 (Core i7 w architekturze Nehalem i nowsze) oraz nawet 3x szybsze odbicie obrazka w poziomie i pionie oraz negatyw. Kompresor jest do 50% szybszy (teraz przy tworzeniu kopii przydadzą się SSDki), no i dla równowagi usunięty błąd, który sprawiał, że jeśli w folderze było 100 tysięcy maili (lub więcej), to wyświetlanie go nie udawało się, jeśli było włączone sortowanie po czymś innym niż temat i nadawca. A skoro już o poprawionych błędach mowa, to m. in. zlikwidowałem błąd Access Violation wyskakujący czasem podczas zamykania okienka pobierania wiadomości, poprawiłem ucięte dymki podpowiedzi, poprawiłem wykrywanie niebezpiecznych załączników (już nie bije na alarm widząc załącznik o nazwie "cokolwiek.jpg.jpg"), zlikwidowałem też problem z uszkadzaniem indeksów i folderów skompresowanych, jak i problem z przypisywaniem wiadomości do złych kont. Poprawiona została też wyszukiwarka wiadomości, a kliknięcie "nie" w okienku z pytaniem, czy uruchomić podejrzany załącznik nie powoduje wyświetlenia go tak czy inaczej. Ale i tak najważniejsza z tych wszystkich to poprawa zgodności z upośledzonymi serwerami POP3 Interii i O2, które krztusiły się, jeśli włączony był potok (teraz nazwany szumnie "optymalizacją połączenia", bo lepiej opisuje mniej technicznym osobom co to za opcja i do czego służy). Przy okazji też zostało dodane ostrzeżenie jeśli potok może powodować problemy z połączeniem POP3. No i systemy Windows 8.1 i 10 są poprawnie wykrywane.

Pojawiły się też dwie nowe funkcje - obrazki JPEG z zapisaną informacją o orientacji aparatu są automatycznie obracane przed wyświetleniem (stąd te optymalizacje operacji graficznych ;-)) i obecnie program ostrzega przy próbie odpowiadaniu na wiadomości ewidentnie automatycznie wygenerowane.

Co dalej? Testy, testy, testy... Powrót do prac nad IMAPem, dodanie obsługi OAuth (gugiel zaczyna tego wymagać), optymalizacje!, a z przydatnych funkcjonalności to na pewno obsługa folderów samokompresujących się (no, prawie; po prostu chodzi o wykorzystywanie plików rzadkich, którym system sam zwalnia i przydziela fizyczne miejsce na dysku w zależności od logicznego wykorzystania obszarów) oraz - nareszcie... - pełna obsługa przeciągania i upuszczania z HCMa do innych programów. W obu przypadkach mam prototypowy kod, więc to na pewno kiedyś dodam.

Na samej witrynie pozmieniało się tyle, że nie stosuję już MD5 do sum kontrolnych (jest przestarzałe). No i http://www.program-pocztowy.pl jest prawdziwą stroną programu (w zasadzie aliasem na http://www.hellcore-mailer.pl), a nie framesetem z http://www.hellcore-mailer.pl jako frame URL ;-) Wyrzuciłem też bugtracker, bo nikt z niego nie korzystał (łącznie ze mną...).

Wszystkie szczegóły i pliki dostępne w pobieralni. Miłej zabawy!


Może Cię zainteresować...

Link | Komentarzy: 1 | HCM, Tech
Pokazuj komentarze.
Powered by:
Hellcore Mailer - polski program pocztowyOpera Web BrowserFreeBSD - The Power to Serve!Slackware
RSSy:
Sidekick:
Projekty:
O autorze:
Zobacz:
Kategorie:
Archiwum:
Szukaj: