News - 2025/04/30 - FLL 0.6.13 and 0.7.1 Releases
Author: Kevin Day
Description: News post on 2025/04/30.
Keywords: Kevin Day, Kevux, FLL, Featureless, Linux, Library, Distribution, Open-Source, News, 2025

# 2025 / 04 / 30 - FLL 0.6.13 and FLL 0.7.1 Releases

The Featureless Linux Library stable version `0.6.13` and development version `0.7.1` are released.

The stable version `0.6.13` has primarily seen improvements in the IKI Read program. Several program parameters have had their behavior changed due to consistency problems with other programs.

The `--total` parameter now prints the total number of IKI Variables. The `--whole` parameter now prints the total number of lines rather than the total number of IKI Variables. The `--whole` parameter may now be specified along with the `--at` parameter. The `--total` parameter has had several of its restrictions removed. The `--substitute` parameter short syntax is changed to now be `-S` to make the program more consistent with other programs where the `-s` is the short syntax for the `--select` parameter. The IKI Read program does not have a `--select` parameter. The order in which `--name`, `--at`, and `--line` parameters has been clarified.

The IKI related and Time related specifications have been updated to address concerns and points of confusion. Additional documentation regarding the backslashes similar to how the FSS backslashes are handled. The Time specification has had incorrect examples that are now fixed. The language in the Time specification has been changed to better allow for more flexibility in its application.

I have found some notable bugs where the `f_signal_close`, `uid_t`, and `gid_t` are assigning the wrong number when representing closed or unused. These need to be `-1` rather than `0`.

I completely neglected the `disable` build configurations in most of my previous releases. These have now been rebuilt to accurately reflect the current `disable` define listings per project.

A new specification called EKI, which stands for Extended IKI, has been added to the project as a whole. This EKI allows for multiple tags to be grouped together. I decided to do this once I started using IKI more regularly and I realized that I really did need to simplify and allow grouping multiple tags together. I should now be able to more appropriately mimic HTML behavior. This also allows for multiple contexts to be added such as might be the case when it comes to accessibility needs.

An example EKI is `bold:italic:"My Example"`. The order is not required but is preserved and so the following is also valid and potentially different due to the order: `italic:bold:"My Example"`.

The `0.6.13` does not implement an EKI program and instead the newer `0.7.1` should be used. The `eki_read` and an `eki_write` programs both exist in `0.7.1`.

The development version `0.7.1` has several new features.

Added new functions:

- `f_string_dynamic_seek_to_back()`
- `f_string_dynamic_seek_line_to_back()`
- `f_string_dynamic_seek_to_back()`
- `f_string_seek_line_back()`
- `f_string_seek_line_to_back()`
- `f_string_seek_to_back()`
- `f_utf_string_dynamic_seek_line_back()`
- `f_utf_string_dynamic_seek_line_to_back()`
- `f_utf_string_dynamic_seek_to_back()`
- `f_utf_string_seek_line_back()`
- `f_utf_string_seek_line_to_back()`
- `f_utf_string_seek_to_back()`
- `fl_directory_empty()`
- `fl_path_clean()`
- `fll_program_standard_signal_received_wait()`

Added new structures and status codes:

- `F_maximum`
- `F_minimum`
- `f_gid_t`
- `f_id_t`
- `f_uid_t`
- `f_void_call_t`
- `f_void_pointer_call_t`
- `fl_print_call_t`

Additional programs based on the `0.7.1` development release are: Control, Controller, and Kevux-Tools.

The Control and Controller are only migrated from the `0.6` releases and have yet to see any significant changes to make them fully ready for use.

The Kevux-Tools provides multiple programs. The `tacocat` program is far from complete but might experimentally work (mileage will vary). The `remove` program and its related programs `rm`, `rmdir`, and `unlink` have been tested and should be ready to use. These `remove` programs, however, are not well tested. Other Kevux-Tools programs that might exist in the future are `about`, `change`, `create`, and `during`.

The following are changes in the `0.6.13` stable release since the `0.6.12` stable release.

Exploit Fixes:

- None.

Security Fixes:

- None.

Features:

- FLL: Add EKI specification for EKI standard, a slightly updated IKI standard.

Bug Fixes:

- FLL: Mistakes in the IKI specification.
- FLL: The IKI and EKI specifications have mistakes and needs clarifications.
- FLL: IKI and EKI specifications, clarifying backslash escaping.
- FLL: Specification files need proper escaping for example code.
- FLL: The IKI and EKI specifications do not require escaping inside of Content.
- FLL: The `f_signal_close()` should be setting signal id to -1 and not 0.
- FLL: The `uid_t` and `gid_t` should be initialized to -1 and not 0.
- FLL: Incorrect clear macro on `f_account_t()`.
- FLL: Incorrect example in time specification regarding `EpochTime`.
- FSS Read: Empty Objects are preserving leading white space when in original mode and update runtime tests.
- IKI Read: Perform range check before access array and fix typos in comments.
- IKI Read: The `-t`/`--total` in `iki_read` is confusing and allow for `--total` with `--whole`.
- IKI Read: Is not handling parameter errors properly.
- IKI Read: May now have `--whole` with `--at`.
- IKI Read: Only print final new line on interrupt.
- IKI Read: Improve error reporting in runtime tests during generation.
- IKI Read: The IKI Read `--total` restrictions are not needed anymore.
- IKI Read: Fix handling of `--line` when not using `--whole`.
- IKI Read: Fix bug in `generate.sh` script parameters and fix spacing style.
- IKI Read: The `f_string_dynamic_partial_append_nulless()` and `f_string_dynamic_seek_line()` are required.

Refactors:

- None.

Regressions:

- None.

Updates:

- FLL: IKI and EKI specifications.
- FLL: Backport `f_iki` unit tests changes.
- FLL: The time specification, making it more flexible.
- FLL: Copyright year to 2025.
- FLL: Rebuild the disable build configs.
- FLL: Add verbose printing of the install command when in debug for `test.sh`.
- FLL: Improve example bootstrap script, exiting properly on error.
- FSS Read: Add FSS Embedded List read depth tests and fix test script files.
- IKI Read: Help message.
- IKI Read: Implement the `iki_read` runtime tests.
- IKI Read: Change `--substitute` short parameter from `-s` to `-S` for `iki_read`.
- IKI Read: Design and logic to be consistency with `0.7` logic.
- IKI Read: Clarify precedence of the `--name`, `--at`, and `--line` for IKI Read.

Check out the project on the FLL stable release page or on the FLL development release page.

The project is built like a tool chest. Individuals who are unfamiliar with the project should have an easier time trying out the pre-packaged 0.6.13 monolithic sources and 0.7.1 monolithic sources. These 0.6.13 programs and 0.7.1 programs, by default, are designed to build against a library built using the monolithic source tree.

The stand alone sources for the several programs can be found pre-packaged 0.6.13 at Sourceforge and pre-packaged 0.7.1 at Sourceforge.

Kevin Day