Download Latest Version NeReO_1.3.7.apk (14.0 MB) Google Add to Preferred Sources
Home / 1.3.1
Name Modified Size InfoDownloads / Week
Parent folder
NeReO_1.3.1.apk 2026-09-08 12.3 MB
README_EN.txt 2026-09-08 38.4 kB
README.txt 2026-09-08 41.3 kB
NeReO_1.3.1_src.zip 2026-09-08 608.1 kB
Totals: 4 Items   13.0 MB 20
======================================================================
 NeReO 1.3.1 - Ne(ws) Re(ader) O(pen-source)
 Text-only Usenet (NNTP) newsreader for Android
 By MCSM - 2026/09/08
======================================================================

 ***  VERSION 1.3.1  ***

 What's new in this version:
  * In the multi-pane layout, tapping a thread now expands it AND goes
    there: with "Tap the first post to expand" enabled, the tap opens
    the first UNREAD message of that thread in the reading pane (or
    the first post, if you have read them all). Collapsing the thread
    puts the selection back on the first post, the only row still
    visible.
  * Why this was serious rather than merely annoying: before, the tap
    only expanded, and the first post of any thread with replies could
    not be opened at all. In 1.2.9 we pointed at the long-press menu
    as the way out - but on a TV box with a remote that gesture DOES
    NOT EXIST, so for anyone reading there the message was
    unreachable. Reported by Roxy, who had asked for that option
    himself back in 1.2.9.
  * Every row in the thread list now carries a "..." (vertical
    ellipsis) button that opens its context menu - open, plonk,
    supersede, withdraw, retention, multiple selection - with a SINGLE
    CLICK. The long press keeps working exactly as before: this adds a
    way in, it does not replace one. It comes from the same report: on
    a device driven by a pointer (a mini keyboard with a trackpad)
    holding a button down is technically possible, but so slow that -
    in Roxy's words - "it would put you off using it".
  * The reading pane bar in the multi-pane layout is now customizable
    too, like the phone one (Appearance -> Customize reading bar),
    with one deliberate difference: here "off" does not mean HIDDEN
    but MOVED INTO THE three-dots MENU - nothing becomes unreachable.
    It ships with ROT13 and Headers already in the menu, because on a
    tablet held upright the pane is narrow and five buttons left
    almost no room for the subject line. Suggested by Dave Royal, and
    asked before by Roxy.
  * Multi-pane only, deliberately: on a phone the tap NAVIGATES AWAY,
    so "expand and go" would be a contradiction - and there the long
    press is a natural gesture, not an obstacle.

 ---

 ***  VERSION 1.3  ***

 What's new in this version:
  * Fixed a gap in 1.2.17: "Send the password only when the server
    asks" was NOT applied when publishing a message or downloading the
    group list - those two paths still authenticated immediately. The
    cause: the same block of code existed in four copies and only two
    had been updated. The four places that opened a connection are now
    merged into one, so the rule holds everywhere by construction.
  * Otherwise 1.3 is 1.2.17 as tested in the field: it is the stable
    release gathering the whole 1.2.12-1.2.17 line - the hardening
    pass that came out of the security audit, TLS hostname
    verification, withdraw and supersede with per-server outcome, and
    everything learned from two days of real testing on three
    providers.
  * 1.3 is the FIRST PUBLIC RELEASE since 1.2.11: anyone updating
    from there also gets, in one go, everything from versions
    1.2.12-1.2.17, which were never distributed (see the note just
    below).

 ---

 ======================================================================
  PLEASE NOTE - VERSIONS 1.2.12 THROUGH 1.2.17 WERE NEVER RELEASED
 ======================================================================

 The last version published on SourceForge was 1.2.11.

 Everything listed below, from 1.2.12 to 1.2.17, was built and tested
 INSIDE the project only: against three real servers (Astraweb,
 usenet.ovh, eternal-september) and on a single device. None of those
 versions ever reached users, and no public APK contains them.

 They are listed because their content is ALL inside 1.3: they are
 here to explain what changed and why, not to point at an update that
 never existed. Anyone coming from 1.2.11 goes straight to 1.3 and
 gets everything at once.

 ---

 ***  VERSION 1.2.17  ***

 What's new in this version:
  * New "Send the password only when the server asks" option
    (Maintenance -> Security), OFF by default. Normally NeReO
    authenticates as soon as it connects, on every connection; with
    this on it waits for the server to ask, authenticates then, and
    repeats the command. On a server that cannot encrypt the
    connection this matters a great deal: INN servers let you read
    without credentials and only require them to publish, so the
    password crosses the network a few times a month instead of
    dozens of times a day. Off by default because it changes how
    EVERY server is contacted: if one stops working, turn it back off
    and everything is exactly as before.
  * The server list now shows "last connection was NOT encrypted"
    under any server that is talking in clear. It is based on what
    actually happened, not on the settings: a server can be
    configured to encrypt, announce it, and still fail to do so. It
    is a permanent mark rather than a recurring warning, because that
    state does not change by itself and a warning that keeps coming
    back is one you learn to ignore.
  * The diagnostic log no longer counts expected replies as errors: a
    successful withdrawal used to end its session with "1 error",
    because the 430 "no such article" - which is precisely the answer
    being looked for - was counted as a failure.

 ---

 ***  VERSION 1.2.16  ***

 What's new in this version:
  * Withdrawing a message (cancel) now tells you how it went on EVERY
    configured server, not just the one you posted to. A list appears
    at the end - withdrawn, still there, could not check - with the
    server the request was actually sent to marked as such. It is the
    answer you could previously only get by checking by hand, one
    server at a time, from another program.
  * The confirmation dialog now says up front what you used to find
    out afterwards. Four field tests on September 6th and 7th
    established that a withdrawal acts, in practice, only on the
    server you posted to: other servers keep the message, and many
    providers ignore withdrawal requests entirely. Hence the advice
    now written into the confirmation: if a correction has to be seen
    by everyone, the right tool is "Supersede", not "Withdraw" - a
    supersede is an ordinary article and always propagates, while a
    cancel is a control message that almost nobody forwards.
  * No background work: the servers are queried only at that moment,
    one connection each, and an unreachable one becomes "could not
    check" without failing the rest.

 ---

 ***  VERSION 1.2.15  ***

 What's new in this version:
  * "Withdraw from server (cancel)" now tells you WHETHER IT WORKED.
    Until now the app only said "request sent, the server may ignore
    it", so anyone withdrawing a message on a server that ignores
    control messages stayed convinced it was gone. Right after
    sending, NeReO now asks the server whether that article is still
    there and reports the answer: withdrawn, still present, or not
    verifiable. Three outcomes rather than two, because we have seen
    all three in the field.
  * A message that no longer exists on the server (expired, or
    withdrawn by its author) is now reported as such instead of as a
    generic network error, with a "Remove the local copy" button next
    to the explanation to clear the leftover summary row. Both in the
    page view and in the reading pane.
  * Supersedes handled on read: when a message replaces another, the
    replaced one is HIDDEN (not deleted: "Show hidden" brings it
    back), and only if both come from the same address. Without that
    check anyone could make someone else's message disappear from a
    reader's view.
  * Invisible technical fixes: a plain "article not found" reply is no
    longer mistaken for a dropped connection (a 1.2.13 defect that
    cost a needless reconnection); a server given as an IP address no
    longer produces an incomprehensible error; and changing the
    security switches now immediately closes any connection opened
    under the previous settings.

 ---

 ***  VERSION 1.2.14  ***

 What's new in this version:
  * TLS HOSTNAME VERIFICATION. Up to 1.2.13 the traffic to the server
    was encrypted, but nobody checked that the certificate presented
    really belonged to the address requested: a hostile network could
    interpose itself and read everything, credentials included,
    without the app noticing. The check is now in place on both paths
    (implicit TLS and STARTTLS), the way a browser does it.
  * If a server has a misconfigured certificate the connection now
    fails with an explicit message saying what happened and where to
    act, instead of a generic network error.
  * New "Allow unverifiable certificates" switch (Maintenance ->
    Security), OFF by default and flagged in red: if you know your
    provider's certificate is set up badly, you can still connect. It
    is global, not per-server, following the same model already used
    since 1.2.6 for cleartext authentication.
  * This version ships ON ITS OWN, deliberately: it is the one
    security-audit fix that can stop a currently working setup from
    working. If a server no longer connects after the update, the
    cause is unambiguously this one, and the cure is the switch above.

 ---

 ***  VERSION 1.2.13  ***

 What's new in this version:
  * No more network error shown in place of a message body when
    moving quickly from one message to the next. The connection kept
    open for reading was being dropped by the server while you read,
    and the first command after the pause fell into the void: now, if
    an I/O error happens on a REUSED connection, that connection is
    discarded and the message is fetched once more over a fresh one,
    silently. Diagnosed from the NNTP diagnostic log.
  * User-Agent pre-filled on NEW identities (requested by
    Merovingio): the field started out empty on a fresh install, so
    anyone who didn't fill it in posted anonymously without choosing
    to. It now contains %nereo%, which becomes the app name and its
    current version when you post (and stays up to date on its own).
    Empty it if you prefer to declare nothing: EXISTING identities
    are left exactly as they are.
  * Hostname verification for encrypted connections moves to 1.2.14
    accordingly: it remains the one fix that ships on its own.

 ---

 ***  VERSION 1.2.12  ***

 What's new in this version:
  * General hardening pass, following a security audit of the whole
    codebase. NeReO now copes safely with malformed or deliberately
    hostile articles and server replies: oversized messages, headers
    with line breaks smuggled inside them, abnormal References
    chains, unusual Face images, tampered backup files on restore.
    Nothing changes in normal use - these are defenses you only
    notice when something tries to take advantage.
  * "Supersede..." now appears only on YOUR OWN messages, and next to
    it there is a new "Withdraw from server (cancel)...": it sends a
    control message asking the server to withdraw an article you
    posted. Many servers ignore such requests, and propagation to
    other servers is never guaranteed: the confirmation dialog says
    so plainly rather than letting you find out afterwards.
  * NOT included here: hostname verification for encrypted
    connections. It is the one fix that can stop a setup that works
    today from working (some providers present a certificate whose
    name doesn't match), so it ships on its own in the next version -
    that way, if something stops connecting, there is no doubt about
    what caused it.

 ---

 ***  VERSION 1.2.11  ***

 What's new in this version:
  * Updated the internal database library (Room) from 2.6.1 to 2.8.4:
    an attempt to fix the rare CursorWindow crash (see version 1.2.10
    below) further upstream. 2.8.4 includes two official fixes for
    races between read Flows and concurrent writes, the same category
    as that crash - this is not a confirmation of the exact cause, it
    remains a partly-verified hypothesis, and the defenses already
    added in 1.2.10 stay active regardless, as an extra safety net. No
    visible change for the user.
  * Extended the same defense (show the last known good list instead
    of crashing) to text search as well, which shared the same risk
    but wasn't protected yet.

 ---

 ***  VERSION 1.2.10  ***

 What's new in this version:
  * More resilient article list: a rare database read error (a Room
    CursorWindow IllegalStateException) that could happen while
    leaving a group as a sync was still writing new messages no
    longer crashes the app - if it happens, it now shows the last
    known good list instead of closing. First real version to ship
    this defense: it had been ready since September 5th, waiting for
    a delivery round.
  * New "Auto-sync on opening a group" switch (Maintenance, reported
    by a tester via Marco): entering a group - even just coming back
    from an article you'd just read - always synced it, with no way
    to turn that off, so getting distracted while reading meant
    threads you'd left unread got mixed in with new ones. You can now
    turn it off, keeping everything still until you trigger a manual
    sync (button/pull-to-refresh, always available either way).
    Default on: no change for anyone who doesn't need it.

 ---

 ***  VERSION 1.2.9.c  ***

 What's new in this version:
  * More robust syncing: removed a possible race condition between the
    automatic new-message check and other syncs in progress (manual or
    timer-driven), which could have contributed to an occasional
    crash - a report from public testing still under investigation
    (see 1.2.9.b below for the diagnostic log). This is not a
    CONFIRMED fix for that specific crash (no direct proof yet), but a
    real concurrency defect, demonstrated in the code.

 ---

 ***  VERSION 1.2.9.b  ***

 Three fixes from 1.2.9's public testing, plus a new diagnostic tool:
 the first real new version to compile and distribute to users (the
 earlier fixes had stayed "version unchanged" because 1.2.9 had not
 been published yet).

 What's new in this version:
  * Search: the results list no longer resets when reopening a result
    (reported by Marco): coming back from a message opened from
    search, the query and results stay as they were instead of
    starting empty - before, you had to redo the same search every
    time to reach the next result.
  * "Show filtered" is now a complete audit (reported by Marco: "if
    they're filtered, why would we ever see them?" -> "to me this is
    a broken audit"): applying filters to already-downloaded
    messages, ones matching an "Ignore" rule (not just "Delete
    completely") are now marked and shown grayed out too - before,
    only the latter were actually removed, the former stayed
    invisible to the audit.
  * Blank User-Agent = a truly anonymous post (reported by Marco):
    leaving the User-Agent field blank in an identity now means the
    posted message carries no User-Agent header at all, exactly as
    the help text always promised - before, it was silently replaced
    with the app's default value.
  * New: last-crash report (Maintenance): if the app ever closes
    unexpectedly, the last crash is now saved on the device on its
    own - nothing is sent anywhere automatically. If it happens to
    you, please copy or export it from the new "Last crash" section
    and send it over: without this, a crash report with no other
    details can't actually be diagnosed.

 ---

 ***  VERSION 1.2.9  ***

 Real multi-identity (requested by Marco: "a real multi-user setup,
 like MesNews and/or Piao Hong's NR MOD17") plus the rest of the NNTP
 roadmap (item E), in the same release - the full plan, chosen
 explicitly by Marco instead of a staged one. This closes the gate
 towards the definitive 1.3, pending only on-device testing.

 What's new in this version:
  * Real multi-identity: create as many identities as you like (name,
    email, signature, User-Agent, X-No-Archive, custom headers, quote
    intro, Face) and assign each one to a specific server - post as
    "MCSM" on one server and as "TAF" on another, each with its own
    address and Face. New Identities screens (list + editor); a
    server's identity is assigned by editing that server. If you
    already had a general identity or a per-server override in an
    earlier version, it's migrated automatically, nothing to redo.
  * STARTTLS (RFC 4642): servers that stay on a plaintext port
    (usually 119) can now upgrade to an encrypted connection right
    after connecting, as an alternative to implicit TLS.
  * CAPABILITIES: read and logged in diagnostics at connection time.
  * Faster reading: while reading through a thread, article bodies
    now reuse the same connection instead of reconnecting for every
    single article.
  * Per-server override of plaintext authentication: force it always
    allowed or always blocked for a single server, regardless of the
    global setting (Maintenance -> Security).
  * Backup and restore now carry identities and the new per-server
    options too; older backups still open exactly as before.
  * Very nested quotes - numeric threshold (Appearance, requested by
    Marco): beyond a certain depth (default 8, configurable to
    6/8/10/12) the repeated ">" marks turn into the level number
    ("9", "10", "11"...) instead of growing forever - display only,
    with the "chevron"/"both" quote style: the text sent and received
    always keeps the standard ">" marks, so quote depth still reads
    correctly everywhere, including in other clients. On by default.
  * Tap the message to expand the thread (Appearance, optional,
    requested by Roxy): as an alternative to the +/- button (enlarged
    to a 48dp minimum for anyone aiming from a distance, e.g. a TV
    box with a remote), tapping the text of a thread's first message
    can expand or collapse it instead of opening it; the message
    stays reachable from the menu (long press) -> "Open". Off by
    default.
  * Drafts moved inside the group (requested by Marco): "Drafts" is
    no longer in the main menu - it opens from the menu of the group
    you're writing to, already filtered to that group's drafts (every
    draft already knows which group it belongs to). A "This group" /
    "All groups" toggle inside the screen still lets you see every
    draft together when you need to.
  * Vertical swipe: now also moves across threads (reported by
    Marco): in reading view, with "unread only" off, swiping past the
    last/first message used to stop silently at the end/start of the
    current thread instead of continuing - different from "unread
    only" on, which already jumped to the next thread. The vertical
    swipe now behaves the same way in both cases (the single < >
    arrows still stay bounded to the current thread, as always - the
    double arrows are for that).

 ---

 ***  VERSION 1.2.8  ***

 An intermediate step between 1.2.7 and the future "complete" 1.3:
 gathers everything that had been prepared as 1.3/1.3.1/1.3.2 during
 solo testing, renumbered before any wider release - none of those
 versions ever shipped officially. The real 1.3 will land only once
 the rest of the NNTP roadmap (CAPABILITIES, STARTTLS, connection
 pooling, per-server unencrypted-auth override) is done or dropped.

 What's new in this version:
  * Customizable reading bar: under Appearance -> "Customize reading
    bar" choose which icons the bottom reading bar shows and in what
    order (show/hide switch + up/down arrows, which also work well
    with a TV box remote).
  * Selective refresh: the refresh icon now opens a menu - "Refresh
    everything" (as before) or "Choose which servers to refresh". A
    similar menu on each server's header lets you refresh just that
    server or just some of its groups, instead of always downloading
    everything. The server-level menu is also available in
    tablet/panel mode.
  * Full-screen reading in panel mode (tablet): while reading, a new
    icon temporarily hides the groups and threads columns so you can
    focus on the text; it closes itself again when you leave the
    article.
  * Search/Share on selected text: selecting text in an article now
    also offers Search (web search) and Share, next to Copy and
    Select all. "Translate" has been dropped FOR GOOD (it would
    depend on a handler not guaranteed on every device).
  * Update check, four modes: under Maintenance -> Updates, choose
    Never / Once a day / Every 4 hours / On every launch. A "Last
    check: ..." line always shows below the picker, so you can see
    it's working even when it finds nothing new (no popup in that
    case, just that line).
  * Fixed a bug: the old "once a day" limit was per calendar day, not
    elapsed time - opening the app even once before a new release
    went out could leave you "stuck" until the next day, no matter
    how many more times you reopened the app.
  * Beefed-up NNTP diagnostics (Bingo3331 + HAL): with the NNTP log
    switch on (Maintenance -> Diagnostics), the log now also records
    a summary of every OVER/XOVER response (rows received, missing
    numbers, duplicates), per-command timing, and a header/footer for
    every NNTP session - built to track down gaps in a provider's
    backfill (e.g. Astraweb).
  * New manual diagnostic "LISTGROUP diagnostic...": asks the server
    for the real list of articles in a group and compares it with the
    last overview summary; for numbers missing from the overview, it
    checks with STAT whether they truly exist - telling apart a gap
    in the server's overview database from an article that's really
    gone.

 ---

 ***  VERSION 1.2.7  ***

 What's new in this version:
  * Insecure connection: if a server refuses your password over an
    unencrypted connection, a clear dialog now offers two choices -
    "Switch to SSL" (recommended) or "Allow unencrypted" (not
    recommended). No more silent failure for newcomers. The dialog does
    not appear during the periodic automatic check, only when you
    refresh yourself.
  * Reply to crossposts: a new option in Maintenance to reply to ALL the
    original groups by default instead of just the current one (off by
    default; you can still choose case by case).
  * Continuous view: a thicker separator now marks where each new
    sub-thread begins, so they stand out at a glance.

 ---

 ***  VERSION 1.2.6  ***

 What's new in this version:
  * Security: your password is no longer sent over an unencrypted
    connection (it would travel in clear - RFC 4643 forbids it). If you
    really have an old server that needs it, you can knowingly allow it
    under Maintenance -> Security. Prefer the SSL port (usually 563).
  * "Check for updates" is now also in the main menu, next to About and
    What's new - no more digging into Maintenance for it.
  * Panel view: a three-dot menu on every post, with author plonk. Before
    you had to switch to full-screen view to plonk.
  * Panel view: you can reorder groups here too (a "reorder" icon at the
    top of the groups column), not only in full-screen view.
  * Backup now saves the group order: restoring no longer puts everything
    back in alphabetical order.
  * Cleaner Headers view: the long Face/X-Face base64 code is no longer
    shown (the little face still appears next to the author).
  * Mute quotes: a new button hides quoted text with one tap, so only the
    new message stands out (tap the placeholder to show it again). A
    "quote" icon in the reading bar and in the panel headers.
  * Panel view: in the reading pane, swipe up/down to jump to the next or
    previous unread post in the thread (if there are none, to the next or
    previous post) - just like on the phone.

 ---

 ***  VERSION 1.2.5 (fixes)  ***

 What's new and fixed in this version:
  * Continuous view: opening a long thread no longer marks the messages
    after the selected one as read in bulk. Now only what you actually
    see is marked read - the chosen message on opening, then each message
    as you bring it to the top by scrolling.
  * Continuous view: crosspost groups are now shown (in red) on every
    post, not only in the single-article view.
  * With the "unread only" filter on, the empty list now says "No unread
    messages in this group" instead of "No articles...".
  * Update check: NeReO can tell you when a newer version is on
    SourceForge (automatic once a day, can be turned off in Maintenance,
    plus a manual button). Notification and link only: the app never
    downloads or installs anything itself.

 ---

 ***  VERSION 1.2.4 (fixes)  ***

 What's new and fixed in this version:
  * Reflow text: now also joins the "orphan" one- or two-word lines
    left in the middle of a paragraph. Before, even with reflow on, a
    few short lines (like a lone "is" or "and") stayed isolated because
    the previous heuristic mistook them for deliberate breaks. Only
    labels, greetings and short lines that end with punctuation
    (. , : ; ! ? ...) now keep their own line. Off by default; reading
    only.

 ---

 ***  VERSION 1.2.3 (fixes)  ***

 What's new and fixed in this version:
  * Tree view: messages that open a discussion are no longer shown as
    "already read" when they aren't. The colour now follows the post's
    real state, matching "jump to next unread".
  * Continuous view: replying to a crossposted message now shows the
    prompt to choose which groups to reply to, like the single-article
    view. Before, the reply silently went only to the first group.
  * Continuous view: opening several unread messages no longer shows
    "Error: connection reset" instead of the text. Bodies are fetched
    one request at a time rather than opening many connections at once.
  * Panel view: refresh now uses the icon at the top of the column by
    default; the pull-to-refresh swipe no longer steals the first upward
    scroll. The swipe can be turned back on in Appearance. The phone is
    unaffected.
  * Reflow text: now also acts on posts wrapped narrow (around 38-40
    columns), which were skipped entirely before and kept their orphan
    words. Still off by default; reading only.
  * Continuous view: opening a thread on a message in the middle no
    longer marks the messages above it - merely skipped past - as read.
    Marking now applies from the chosen message downwards, not to what
    flashes by on opening.

 ---

 ***  VERSION 1.2.2 (fixes)  ***

 What's new and fixed in this version:
  * New "Reflow text" option (Appearance): rejoins paragraphs broken by
    the classic 72-column wrap, so posts read tidily on narrow screens
    instead of showing one- or two-word orphan lines. Off by default;
    reading only.
  * Refreshing is much faster: one connection per server instead of one
    per group (with many groups the difference is noticeable). The
    new-messages count now also appears when you tap the refresh icon,
    not only with pull-to-refresh.
  * Panel view (tablet): in continuous view the third column now
    follows the same thread order as the tree (not date order). Writing
    a post opens the editor full-screen, so the keyboard no longer
    covers the text area in landscape.
  * Panel view (tablet/landscape): picking a message from the tree
    again positions it correctly at the top and keeps it there (in 1.2
    it could land in a random spot).
  * The "refresh" spinner no longer sticks at the top of the tree pane:
    scrolling stays immediate.
  * SSL/TLS connections: added the missing read timeout, so a stalled
    encrypted connection no longer leaves the app waiting forever.

 ---

 ***  VERSION 1.2  ***

 What's new in this version:
  * Server compatibility: some providers (Astraweb among them) reject
    the OVER command used to fetch headers, and syncing would stop.
    NeReO now falls back to XOVER automatically, so those servers
    work again.
  * Plonk extended to replies: a rule on "from" can now also hide the
    replies to the filtered post and the whole branch below it, whoever
    wrote them (reversible: remove the rule and they come back).
  * Parity on tablets: the panel (three-column) view now has the full
    headers and ROT13 buttons, and the Drafts button is reachable too.
    Continuous view opens already positioned on the chosen message.
  * Groups: long-press a group to download, in one go, the missing
    bodies of the last 300 messages. "Follow the thread" now applies to
    the whole thread; your own posts are recognised even with per-server
    identities.
  * After posting: a "Message sent" confirmation and an automatic group
    refresh, so your own message shows up without a manual reload (as
    soon as the server makes it available).
  * Complete backup (per-server identities, all settings and followed
    threads; restoring stays compatible with older backups).
  * NNTP diagnostics under Maintenance: records the dialogue with the
    server (password always masked) to solve odd cases faster. Off by
    default.
  * Fixes: bottom icon bar wraps to two rows on narrow screens; a
    spurious error while scrolling fast is gone.

 Everything else keeps the full feature set of 1.1. The interface is
 available in Italian and English.

======================================================================


=============
 WHAT NeReO IS
=============

NeReO is a Usenet newsgroup reader for Android, dedicated to text
discussions.

No binary groups, no attachments, no ads, no telemetry: just messages
and conversations, the way Usenet has always been.

It is free software, released under the GNU GPL v3 or later.


===================
 INTERFACE LANGUAGE
===================

NeReO follows the phone language automatically:

  * phone in Italian     -> Italian interface
  * any other language   -> English interface

If you prefer a language different from the phone's, you can set it for
NeReO only, without touching the rest of the system, in two ways:

  * inside the app:  Appearance -> Language
  * from the system: Settings -> Apps -> NeReO -> Language
                     (Android 13 and later only)

On Android 13 and later the two paths control the same choice. On
Android 12 and earlier the system option does not exist: in that case
you change the language from the switch inside the app.

Only these two languages are provided.


==============
 WHAT IT DOES
==============

READING
  * Three ways to view discussions: threaded, sequential, or grouped
    by thread.
  * Continuous view: all messages of a discussion one below the other,
    with a direct jump to the message chosen in the tree.
  * Colour-graded quotes by level, which you can shorten.
  * Face (Usenet's historic avatar) shown next to the author.
  * ROT13, full headers, conversation tree.
  * Gesture navigation: scroll to move to the next message or thread.
  * Indication of replies to your own posts, with a direct jump to the
    first unread one.

WRITING
  * Replies with quoting in four modes, including reduced quoting and
    line-by-line trimming.
  * Crosspost: replies and new threads across several groups.
  * Signature with rotating variants and automatic placeholders.
  * A different identity per server, if needed.
  * Drafts saved locally.

ORGANISING
  * Filters with clear actions (Ignore, Delete, Highlight, Watch the
    thread) or score-based for those who want fine control. They apply
    to already-downloaded messages too.
  * One-tap author plonk.
  * Search by message or by discussion.
  * Automatic retention: by age or by number of discussions, set per
    group.
  * Backup and restore of the configuration, with optional encryption.

APPEARANCE
  * Light, dark or automatic theme; Material You dynamic colours.
  * Ten interface tints, six text sizes.
  * Panel layout for tablets and wide screens, with adjustable ratios.

CONNECTION
  * NNTP with authentication, SSL/TLS on a dedicated port.
  * Automatic IPv6/IPv4 fallback.


======================
 FIRST-TIME SETUP
======================

1. Open the menu (three dots, top right) and choose "Servers",
   then the "+" at the bottom.
   You can start from a known server or enter one by hand.
   Free example: news.eternal-september.org, port 563, SSL
   (requires a free registration on their site).

2. From the menu, open "Identity and signature" and enter the name and
   e-mail you want to appear with in the groups.

3. Go back to the list and tap the "+" at the bottom to browse the
   groups available on the server and subscribe to the ones you like.

4. Tap a group to download its messages.


======================
 INSTALLATION NOTES
======================

* If you are updating from a previous version, install the APK over
  the existing one: do NOT uninstall first, or you will lose groups,
  read state and settings.
* If the phone blocks the installation, allow unknown sources for the
  app you open the file from.
* Requirements: Android 8.0 or later.


==============
 REPORTS
==============

For a useful report, three things are enough:
  * what you were doing when it happened;
  * a screenshot, if the problem is visible;
  * the block from About -> Technical data (there is a Copy button).


================
 VERSION HISTORY
================

1.2.7      "Insecure connection" dialog with two choices (switch to SSL /
           allow unencrypted) when a server refuses cleartext auth.
           Option: reply to crossposts on all groups by default.
           Continuous view: thicker separators at each sub-thread start.
1.2.6      Security: no password over an unencrypted connection (opt-in
           override under Maintenance). "Check for updates" in the main
           menu. Panel view: per-post plonk menu and group reordering.
           Backup keeps the group order. Face/X-Face code hidden in the
           Headers view. Mute quotes with one tap. Panel view: swipe
           up/down to the next/previous unread post.
1.2.5      Continuous view: "read" marking follows what you actually see
           (only the message at the top, as you scroll), not the whole
           screenful of placeholders. Crosspost groups shown on every
           post in continuous view. "No unread messages" empty state.
           Update check against SourceForge (opt-out, notify + link only).
1.2.4      Reflow text: also joins the "orphan" one- or two-word lines
           left in the middle of a paragraph (only labels, greetings and
           short lines ending with punctuation keep their own line).
1.2.3      Tree view: discussion-opening messages no longer always shown
           as read (colour now follows the real state). Continuous view:
           crosspost reply prompt restored; no more "connection reset" on
           bodies (one request at a time). Panel view: refresh icon is the
           default, pull-to-refresh swipe opt-in (Appearance). Reflow text
           now also acts on narrow-wrap authors (~38-40 columns).
           Continuous view: "read" marking applies only from the chosen
           message downwards (no more thread heads marked read just for
           being skipped past on opening).
1.2.2      New "Reflow text" option (rejoins 72-column-wrapped
           paragraphs). Faster refresh (one connection per server
           instead of per group); new-messages count on the icon too. Message
           positioning in the panel view (landscape regression);
           "refresh" spinner no longer stuck at the top of the tree;
           read timeout on SSL/TLS connections.
1.2        Server compatibility (OVER->XOVER fallback: fixes Astraweb
           and the like). Plonk extended to replies. Tablet parity:
           full headers, ROT13 and Drafts in the panel view; continuous
           view positioned. "Download bodies (last 300)" by long-pressing
           a group. "Follow the thread" over the whole thread; per-server
           identities recognised. Complete backup. NNTP diagnostics under
           Maintenance. Two-row bottom icon bar. "Sent" confirmation and
           automatic refresh after posting.
1.1        In-app language switch (Appearance -> Language). Database
           safety net: automatic copy and warning before any reset for
           an incompatible schema.
1.0        First stable version. Interface in Italian and English.
1.0-RC01   Release candidate: full interface translation.
beta20     Fixed three crashes (very large groups, empty screen on the
           back button, confirmation dialogs). Filters applicable to
           already-downloaded messages; delete discussion; jump to
           replies to your own posts; quit application; fixes to
           continuous view, keyboard and reduced quoting.
beta19     Reduced quoting fixed; auto-capitalisation; full group list
           download; retention by number of discussions.
beta18     Replies to your own posts highlighted; continuous thread
           view; filters with actions instead of scores; crosspost on a
           new thread.
beta17     Reply to crossposts choosing the groups; IPv6/IPv4 fallback.
beta16     Fixes to the landscape layout and the interface.
beta14-15  Full headers; reliable Face; trim quote.
beta11-13  Search; group reordering; crosspost; splash screen.
beta7-10   From MyNewsReader to NeReO; drafts; multiple identities.
beta1      First release.


===============
 THANKS
===============

NeReO got this far thanks to those who tried it patiently version
after version, reporting flaws, proposing features and pushing back
when something wasn't right.

Special thanks to Roxy, Bingo3331, Big Umberto, rpoggi, Paul, Dave
Royal, Alessandro, John (n2n), Macchia, Allen and il Merovingio: many
of the things that work well today exist because someone took the
trouble to explain precisely what was wrong.

The project started from Piao Hong's MOD 17 of Newsreader, whose
interface approach it follows.

Usenet Still Lives!
===================
MCSM (aka Marco)
Source: README_EN.txt, updated 2026-09-08