• v1.7.0 a16510aba8

    Homer released this 2026-09-26 14:46:34 +00:00 | 0 commits to main since this release

    LLeMbas 1.7.0 - the interface speaks Slovak

    Pick a language under Appearance in your own settings, or set what everybody else
    gets under Admin -> General. Your own choice wins over the instance's, it is saved
    to your account rather than to one browser, and <html lang> finally says what the
    page is actually in.

    All 969 translatable strings are translated, including the long explanatory
    paragraphs on the admin pages. There is no half-done corner where a Slovak
    instance falls back to English.

    Dates follow too. A month name is a month name in the language you are reading,
    which strftime cannot do without setting a process locale - which this application
    must not do, because a locale is global and two people's pages render at once. So
    the date format is translatable as well as the words: Slovak wants
    "26. septembra 2026", which is a different pattern rather than the same one with
    different words in it.

    WHAT IS DELIBERATELY STILL IN ENGLISH

    Everything a model reads. The prompt fragments under Admin -> Prompts are
    instructions written for models, and translating them would change what the models
    are told rather than what you see - so that page stays mostly English on a Slovak
    instance, and that is the feature working rather than a gap in it. The same goes
    for the dates put in front of a model by a schedule or by the harness.

    Models answer in whatever language you write to them in. They already did: the
    line saying so has been in the "How to answer" fragment since long before this
    release, and it is editable where all the others are.

    AN ENGLISH INSTANCE IS UNCHANGED

    Byte for byte what shipped in 1.6.0, and that is a property of the design rather
    than a claim. The catalogue is keyed by the English sentence itself, so a string
    with no translation renders the English it was written in - which means a language
    added later cannot leave holes in a page, and a half-finished catalogue is a
    half-translated page rather than a page of dotted key names.

    ALSO FIXED

    Every page was rendered in the instance's language whatever anybody had chosen.
    Found while building the above and worth naming because it would otherwise have
    been invisible: the language was resolved in a dependency that FastAPI runs in a
    threadpool, and the context it was set in is discarded on the way out. It is now
    resolved in the request's own task.

    FOR ANYBODY ADDING A THIRD LANGUAGE

    It is a data file, not a code change: one module under web/i18n/ keyed by the same
    English sentences, and python scripts/i18n_extract.py lists what is missing. The
    suite asserts the catalogues match the strings in both directions, so an edited
    English sentence fails a test rather than quietly reverting one line to English.

    Downloads