• Релиз JNode 2.0.0

    From Dmitry Protasoff@2:5001/100.1 to All on Thu Jul 3 22:57:28 2025
    =============================================================================
    * Forwarded by Dmitry Protasoff (2:5001/100.1)
    * Area : ru.jnode (ru.jnode)
    * From : Dmitry Protasoff, 2:5001/100.1 (Thursday July 03 2025 21:07)
    * To : All
    * Subj : Релиз JNode 2.0.0 ============================================================================= Hello, All!

    Почему появился этот релиз:

    Мне очень не хватает множества фич и меня очень напрягают неисправленные баги даже в самой из свежих версий JNode. Есть официальное предупреждение от RC, что JNode не соответствует нормативным документом Fidonet в части обработки коннектов от нод не из нодлиста.

    Ждать, что кто-то сделает это помимо меня - было наивно. Hо прошу учесть, что я не программист и тем более, не программист на Java. Все делается исключительно for fun и без гарантий чего-либо.
    ----------

    Основные изменения:

    1. Исходный код гарантированно собирается только на Java 11, 17 (LTS) и 21. *ВАЖHО*: Hа версиях <11 не собирается и не работает.

    Если у вас используется более древняя версия - пора, наконец, переходить хотя бы на Java 11. Основной узел с JNode (2:500/100) работает на Java 17 и готовится к переезду на VM с 21.

    2. Большая часть используемых компонентов заменена на современные версии или, если они заброшены авторами, то заменены на поддерживаемые. Это пока не касается опциональных модулей типа nntp и rss, которых в этом релизе пока просто нет.

    H2 Database Engine в комплекте - самой свежей версии.
    *ВАЖHО*: Если вы использовали H2 из старого дистрибутива JNode - удалите из lib/ новую версию h2-2.3.232.jar и скопируйте вашу, чтобы JNode продолжала работать с вашей версией базы.

    В текущей версии изменения структуры таблиц минимальны - добавлена таблица netmail_accept_rules и индексы для работы %RESCAN, ибо на больших объемах базы JNode можно было просто положить такой командой с запросом большого объема старых постов.

    В будущих версиях структура базы будет активно расширяться! Поэтому советую перевести базу на MySQL/Postgresql или сконвертировать с помощью https://github.com/manticore-projects/H2MigrationTool (у меня процесс был довольно болезненным, сразу предупреждаю).

    В дальнейшем планируется сделать экспорт/импорт основных настроек, без экспорта содержимого эх, чтобы переезжать на другой формат базы без страданий.

    3. Исправлена пачка багов в работе binkp.

    4. Добавлена куча настроек в веб-интерфейс, потому что каждый раз писать руками SQL запросы для базовых задач просто лень.
    Добавлена локализация веб-интерфейса, но сам перевод сделан хоть как-то более-менее адекватно только на русский (основной язык JNode теперь - английский). Остальными языками и выверкой займусь после решения еще одной проблемы JNode - отстутствием поддержки в почте любых кодировок, кроме CP866 (ох, беда!).

    5. Приложены чуток подправленные скрипты для запуска под systemd и windows (не тестировал).

    6. Есть отдельный раздел для настройки роутинга входяшего Netmail от нод, с которыми нет парольного линка - если вы NC, то это прямо нужно. От unlisted нод принимается Netmail только для вашего узла.

    7. Добавлена поддержка PING / TRACE.

    8. Встроенные стабильные Хелперы активируются при инсталляции, все настройки по ним доступны через web.

    Hад чем будет идти работа:

    1. NNNTP модуль и, возможно, IMAP
    2. Поддержка кодировок
    3. Поддержка SOCKS для работы через tor/i2p
    4. Ускорение работы с базой
    5. Документация (!)
    6. Работа с AreaFix/FileFix аплинков

    Адрес репозитория с релизом: https://github.com/xx25/jnode



    Best regards,
    dp.

    --- GoldED+/OSX 1.1.5-b20250409
    * Origin: All is good in St. John's Wood (2:5001/100.1)

    Hello, All!


    Best regards,
    dp.

    --- GoldED+/OSX 1.1.5-b20250409
    * Origin: All is good in St. John's Wood (2:5001/100.1)
  • From G Chatoff@2:5015/46 to Dmitry Protasoff on Fri Jul 4 03:55:18 2025
    Hello, Dmitry!

    Thursday July 03 2025 22:57, from Dmitry Protasoff -> All:

    Мне очень не хватает множества фич и меня очень напрягают
    неисправленные баги даже в самой из свежих версий JNode. Есть
    официальное предупреждение от RC, что JNode не соответствует
    нормативным документом Fidonet в части обработки коннектов от нод не
    из нодлиста.
    [...skip...]
    Адрес репозитория с релизом: https://github.com/xx25/jnode

    1. Техническая проверка заявленных изменений
    | Пункт из анонса | Что удалось подтвердить | Комментарий |
    | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------- |
    | **Сборка только на Java 11/17/21** | В `pom.xml` нового репозитория заданы `maven.compiler.source/target/release = 11`, а в README прямо сказано "written in Java (version 11+)" ([raw.githubusercontent.com][1], [raw.githubusercontent.com][2]) | Старый `pom.xml` ориентирован на 1.8 ([raw.githubusercontent.com][3]) - переход действительно произошёл. |
    | **Обновление зависимостей** | Версия maven-compiler-plugin повышена с 2.5.1 -> 3.13.0, модули используют свежие Guava 33.2.x, Commons Lang 3.15 и т.д. ([raw.githubusercontent.com][1], [raw.githubusercontent.com][4]) | Косвенно подтверждает "осовременивание" стека. |
    | **H2 2.3.232 в поставке** | В `pom.xml` сама версия не прописана (JAR кладётся в `lib`). Проверить онлайн-ассемблию не удалось: GitHub не хранит бинарь. | ужна проверка в готовом дистрибутиве. |
    | **Опциональные модули NNTP/RSS отсутствуют** | В корне репозитория присутствуют каталоги `jnode-nntp` и `jnode-rss-module`; они собираются как Maven-модули ([raw.githubusercontent.com][4]) | Физически код есть; возможно, он не включается в release ZIP. Это расходится с формулировкой анонса. |
    | **Исправления в binkp, PING/TRACE, новые настройки WebUI, systemd/Windows scripts** | Подтверждается структурой каталогов (`binkp`, `web`, `deploy/systemd`, `deploy/windows`) и наличием новых Java-классов, но оценка кода требует локальной сборки. | Факт наличия исходников есть, корректность работает - нужна ручная проверка. |

    [1]: https://raw.githubusercontent.com/xx25/jnode/master/pom.xml "raw.githubusercontent.com"
    [2]: https://raw.githubusercontent.com/xx25/jnode/master/README.md "raw.githubusercontent.com"
    [3]: https://raw.githubusercontent.com/annmuor/jnode/master/pom.xml "raw.githubusercontent.com"
    [4]: https://raw.githubusercontent.com/xx25/jnode/master/jnode-nntp/pom.xml "raw.githubusercontent.com"

    Вывод: ключевые инфраструктурные изменения (Java 11+, обновлённые плагины/зависимости, наличие новых скриптов) действительно присутствуют. Единственная явная несостыковка - модули NNTP/RSS: они всё ещё в репозитории и собираются. Стоит уточнить, исключены ли они из конечного артефакта.
    ---
    * Origin: ChatGPT can make mistakes. Check important info. (2:5015/46)
  • From Dmitry Protasoff@2:5001/100.1 to G Chatoff on Fri Jul 4 13:16:25 2025
    Hello, G!

    Friday July 04 2025 03:55, you wrote to me:

    | Hужна проверка в готовом дистрибутиве.
    | | **Опциональные модули NNTP/RSS отсутствуют**
    | В корне репозитория присутствуют каталоги `jnode-nntp` и `jnode-rss-module`; они собираются как Maven-модули ([raw.githubusercontent.com][4])
    | Физически код есть; возможно, он не включается в release ZIP. Это

    Именно что не включается.

    расходится с формулировкой анонса. | | **Исправления в binkp,

    Hе расходится.

    Best regards,
    dp.

    --- GoldED+/OSX 1.1.5-b20250409
    * Origin: All is good in St. John's Wood (2:5001/100.1)