+

+ The Featureless Linux Library stable version 0.6.2 is released. +

+

+ This release contains several security and bug fixes. + There are also several improvements to the building and packaging scripts. +

+

+ Added the following stand_alone programs: +

+
    +
  • byte_dump
  • +
  • firewall
  • +
+

+ The bootstrap.sh and package.sh scripts have received some needed improvements. + The bootstrap.sh script now processes more of the build settings and then also more appropriately processes the additional modes. + The bootstrap.sh now more properly processes the -s/--settings parameter option. + The package.sh script is now more versatile, allowing for additional dependencies files and optionally prepending a string to each generated package directory. +

+

+ Adding the referenced stand_alone programs revealed quite a bit of minor mistakes in the macros, defines, and some dependencies. + Many of these might be considered breaking API changes but fixing these is deemed necessary. +

+

+ The flagship program is Featureless Make. + All projects and programs now have a fakefile for building as they should have had. +

+

+ Problems with the Unicode handling have been identified and fixed. + The FLL and implementing programs like byte_dump and utf8 should now have more accurate handling of Unicode characters. +

+

+ The project now contains a generated list of all disable defines for each project under the build/disable directory. + Use these to construct all the needed disable defines to reduce the amount of unneeded code. + These are now used when building the stand_alone programs. +

+

+ The documents and specifications have seen some major clean up. + All of the documents and specifications should now utilize IKI. + The Time and EpochTime standard written a while back now have formal documents and specifications. + The Time and EpochTime documents and specifications are now at the top-level directory of the source code. +

+

+ Documentation explicitly describing the lossy allocation strategy used by this project is now provided. +

+ +

+ The following are changes since the 0.6.1 stable release. +

+

+ Security Fixes: +

+
    +
  • FLL: Invalid access when calling fake without make or build.
  • +
  • FLL: Invalid write in FSS functions and ensure a reset used length on error.
  • +
+

+ Features: +

+
    +
  • FLL: Add support for additional dependencies and settings files in level_3 (in the package.sh script).
  • +
  • FLL: Add support for a prepending a prefix to build directory names (in the package.sh script).
  • +
  • Featureless Make: Add import Object to fakefile and settings specifications (Support is not implemented in 0.6.x).
  • +
+

+ Bug Fixes: +

+
    +
  • FLL: Incomplete UTF-8 zero-width detection, particularly for combining characters.
  • +
  • FLL: Add missing f_type_array dependency.
  • +
  • FLL: The level_0 console should use private functions.
  • +
  • FLL: The fss_payload_write should not allow payload to be something other than last when specified.
  • +
  • FLL: Incorrect ifndef defines for some functions and structures.
  • +
  • FLL: Add missing ifdefs for f_file_stat() and f_file_stat_at().
  • +
  • FLL: The private is_zero_width function is also needed by the is_graph functions.
  • +
  • FLL: The f_environment_max_length should be f_environment_max_length_d.
  • +
  • FLL: Some of the level checking defines have an s that should not be there.
  • +
  • FLL: _di_string_ascii_s_ is missing the _f.
  • +
  • FLL: The bootstrap script needs to treat -s/--settings as a possible path.
  • +
  • FLL: The bootstrap script needs to support settings-specific built files.
  • +
  • FLL: FSS write functions should use quote when passed rather than f_fss_delimit_quote_single_s.
  • +
  • FLL: _GNU_SOURCE should be wrapped in an ifndef.
  • +
  • FLL: The -mode functionality is incomplete and incorrect in the bootstrap.sh script.
  • +
  • Byte Dump: Incorrect spacing when combining --unicode with other digit displays.
  • +
  • Byte Dump: Invalid print of character when a placeholder should be printed in byte_dump.
  • +
  • Featureless Make: The IKI variables that expand reserved words should expand into multiple parameters.
  • +
  • Firewall: Add missing dependencies and remove incorrect library from firewall program.
  • +
  • FSS Payload Write: The first character never gets printed for payload Content.
  • +
  • Multiple Programs: The type_array is probably a dependency for most of these.
  • +
  • Multiple Programs: Imprecise desciption for --partial.
  • +
+

+ Refactors: +

+
    +
  • None.
  • +
+

+ Updates: +

+
    +
  • FLL: All projects should have a fakefile.
  • +
  • FLL: Fix and improve FSS unit test regarding zero-width.
  • +
  • FLL: FSS and IKI specifications now support backticks for quoting similar to single and double quotes (Support is not implemented in 0.6.x).
  • +
  • FLL: Add pre-built define files for stand alone use.
  • +
  • FLL: Wrap the conversion digits defines in _di_f_conversion_digits_d_.
  • +
  • FLL: The ifndef wrappers should end in _t_ to represent it wrapping a type.
  • +
  • FLL: The fake stand_alone build defines.
  • +
  • FLL: The disable defines files need to be updated when defines change.
  • +
  • FLL: Remove unused test mode and add clang mode to stand_alone builds.
  • +
  • FLL: Style guide documentation.
  • +
  • FLL: The status code wrapping defines should end in _e.
  • +
  • FLL: The _di_compiler_attributes_ should be _di_compiler_attributes_d_.
  • +
  • FLL: The status code wrapping global constant string wrapping defines should end in _s.
  • +
  • FLL: The define _di_f_array_t_ should be _di_f_array_length_t_.
  • +
  • FLL: Add mising _d in wrapping defines.
  • +
  • FLL: Add more notes to disable about.txt documentation.
  • +
  • FLL: Add not implemented clarifications for 0.6.x versions.
  • +
  • FLL: Add fakefile for the FLL monolithic and level builds.
  • +
  • FLL: Out of date build documentation.
  • +
  • FLL: Add lossy allocation documentation.
  • +
  • FLL: Build and other documentation, fixing or adding IKI support.
  • +
  • FLL: Add formal specification for Time and EpochTime and use IKI in the files.
  • +
  • FLL: Documentation and specifications (All of the documentation and specifications should now be IKI based).
  • +
  • Featureless Make: The stand_alone fake config.h file.
  • +
  • Featureless Make: Improve some of the Featureless Make documentation and specifications.
  • +
  • Featureless Make: Slight changes to design around the build settings arguments.
  • +
  • Firewall: Add stand_alone firewall build.
  • +
+

+ Check out the project on the FLL 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 monolithic sources. + These programs, by default, are designed to build against a library built using the monolithic source tree. +

+

+ The stand alone sources for the Featureless Make and UTF8 programs can be found pre-packaged at Sourceforge. +

+

+ Kevin Day +

+