Skip to content

Releases: JustJournal/justjournal-client-unix

2.2.0

Choose a tag to compare

@laffer1 laffer1 released this 26 Oct 13:05

JustJournal 2.2.0 adds CMake builds, safer CLI password input, and configurable entry dates, visibility, and body formats.

Changes

  • Switch to CMake 3.16 or newer while retaining BSD make and GNU make compatibility wrappers. Build the CLI by default, with optional GTK and integration-test targets.
  • Add a hidden password prompt on the controlling terminal and --password-fd for automation. Keep -p compatibility; passwords supplied through arguments can still appear in process listings and shell history.
  • Restore terminal settings after interrupted password prompts, discard interrupted input, and wipe password buffers on failure.
  • Erase login credential encoding buffers and escape terminal control characters in recent-entry output.
  • Add --date for ISO 8601 timestamps with an explicit timezone, --security public|friends|private, and --format text|markdown|html.
  • Keep public visibility, text formatting, and server-current-time defaults. Send HTML and Markdown bodies unchanged; preserve legacy title/music extraction in text mode.
  • Update the CLI manual, README, and regression coverage. Both clients report version 2.2.0.

Build and compatibility

Dependencies remain libcurl, Jansson, and pkg-config, plus GTK 3 for the graphical client. See the build instructions.

The clients target MidnightBSD, FreeBSD, and Linux. This release was built and tested locally on MidnightBSD; native FreeBSD and Linux execution remains unverified locally.

Validation

The CLI and GTK CMake build, credential-buffer regression test, and all 29 local HTTPS integration tests passed. The integration suite also passed with AddressSanitizer and UndefinedBehaviorSanitizer; cppcheck and diff checks passed. New posting-option tests use a local HTTPS test server rather than creating live posts.

Full changelog: 2.1.0...2.2.0

2.1.0

Choose a tag to compare

@laffer1 laffer1 released this 26 Oct 02:32

Both the command-line and GTK clients are now version 2.1.0 and use JustJournal's JSON REST API over HTTPS.

Changes

  • Replace XML-RPC with shared libcurl/Jansson support for session login, entry creation, and the CLI's recent-entry listing.
  • Send explicit music, trackback, and tag defaults required by the server, including the fix for failed inserts when music was omitted.
  • Add optional Title, Music, and Tags fields to the GTK editor. Tags accept spaces or commas, normalize to lowercase, and ignore empty values.
  • Keep the GTK username and password filled in between submissions. Successful posts clear entry-specific fields; failed requests preserve the form.
  • Preserve legacy title/music tags and the existing public-posting defaults.
  • Check HTTP status and JSON responses, verify TLS certificates, keep session cookies in memory, and avoid automatic post retries.
  • Update BSD/GNU make builds, CI dependency lists, documentation, and HTTPS integration coverage.

Build dependencies and compatibility

XML-RPC libraries are no longer required. Install libcurl, Jansson, and pkg-config; the graphical client also requires GTK 3. See the build instructions.

The clients target MidnightBSD, FreeBSD, and Linux. Servers must provide /api/login and /api/entry; XML-RPC-only servers require an older client.

Validation and known limitation

Both clients build on MidnightBSD with BSD make and GNU make. All 14 local HTTPS integration tests and cppcheck pass. REST posting was also verified interactively against JustJournal.com. Native Linux and FreeBSD execution has not been verified locally.

The deployed paged-entry endpoint used by CLI -r returned HTTP 500 during testing; server logs identify a separate HATEOAS JSON serialization error. The client reports that failure.

Full changelog: 2.0.3...2.1.0

2.0.3

Choose a tag to compare

@laffer1 laffer1 released this 06 Aug 22:07
15f8f9c

What's Changed

  • fix some issues with builds on ubuntu. by @laffer1 in #2
  • Fix memory safety issues in jj.c by @laffer1 in #3
  • Fix insecure memory zeroing with portable secure_bzero by @laffer1 in #4

Full Changelog: 2.0.2...2.0.3

2.0.2

Choose a tag to compare

@laffer1 laffer1 released this 12 Apr 19:57

jjclient and gtkjj:
Fixes breaking change with justjournal.com which now redirects to https. Prior clients will fail with a 301 http status code.

jjclient:
Support longer username and password options as well as a fixed-length subject (up to 255 characters)

2.0.0 Gtk 3 release.

Choose a tag to compare

@laffer1 laffer1 released this 14 Feb 19:05

The new version of the just journal client for unix supports Gtk3.

You can still build the command line version without a gui.