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