qi: Added new (implicit) special variable 'opt_skiprecipe' to ignore a recipe
[dragora.git] / qi / NEWS
blob555488967c7a5f1023ec9413c0b1aa1a16960cd2
1 2022-06-22  Matias Fonzo  <selk@dragora.org>
3     * Version 2.9 released.
5     * Allow passing or changing options to tarlz(1) via configuration file
6       (qirc) or just setting the special variable 'tarlz_compression_options'
7       from a particular recipe.
9     * Adjusted the simple detection of the package directory when trying
10       to remove a package, this avoids a possible collision if it finds
11       the package name as a regular file.
13     * recipes: Added support for zstd(1) extensions.
15     * recipes: Sample recipes have been updated.
17 2022-05-02  Matias Fonzo  <selk@dragora.org>
19     * Version 2.8 released.
21     * Use full remove mode when upgrading a package.  The purpose of this
22       change is to clean up the removal of a previous package when the
23       upgrade mode is invoked.  Previously the package documentation
24       directory (and other possible files) were left on the filesystem.
26     * Minor enhancements.
28 2021-12-14  Matias Fonzo  <selk@dragora.org>
30     * Version 2.7 released.
32     * Now Qi is more precise with exit status number 4 and 6, by hitting
33       "exit" instead of just returning from the functions.
35     * Small corrections for the description of Qi and also for the manual
36       have been sent by Antonio Diaz Diaz.  Thanks!
38 2021-11-01  Matias Fonzo  <selk@dragora.org>
40     * Version 2.6 released.
42     * build: Make a checksum file for the copy of the recipe (the one
43       included in the package, from which the recipe was built).
45     * Do not read the configuration file on create, extract, and order
46       modes.  It is not necessary to read the config file in these modes.
48     * Minor changes.
50 2021-09-28  Matias Fonzo  <selk@dragora.org>
52     * Version 2.5 released.
54     * Searching for previously installed packages in an upgrade has been
55       simplified, which will speed up and save resources in upgrade mode.
57     * The network downloader has been changed to make use of GNU Wget2.
59     * Minor enhancements.
61 2021-04-12  Matias Fonzo  <selk@dragora.org>
63     * Version 2.4 released.
65     * recipes: Added the variable "QICPPFLAGS" to pass the C/C++
66       preprocessor flags to the environment variable "CPPFLAGS".
68     * recipes: Added the "docs" and "docsdir" variables to be unset
69       after processing a recipe.
71     * recipes: Added support for executing other defined functions
72       besides the main build() function.
74     * recipes: Include build flags only if it is a real architecture
75       when creating a package meta.
77     * Change default values for QICFLAGS, QICXXFLAGS from "-g0 -O2" to
78       just "-O2".  Including default value for LDFLAGS from "-s" to
79       just "" (none).  This is to provide more generic values in the
80       package manager distribution.
82     * The documentation is in line with the changes made, plus the
83       sample recipes have been updated.
85     * Minor changes.
87 2020-12-25  Matias Fonzo  <selk@dragora.org>
89     * Version 2.3 released.
91     * doc: The general documentation of Qi has been divided to allow its
92       inclusion from other .texi files.  This does not affect the internal
93       functioning of Qi or the reading of the documentation for the user,
94       but rather it prepares for the incoming Dragora Handbook (Dragora is
95       the project from which Qi is currently developed).
97     * Minor changes.
99 2020-11-09  Matias Fonzo  <selk@dragora.org>
101     * Version 2.2 released.
103     * Get the absolute path name to compose the current working directory
104       when build.  A bug introduced in qi-2.0.
106     * The readconfig() function has been simplified.
108 2020-09-07  Matias Fonzo  <selk@dragora.org>
110     * Version 2.1 released.
112     * Make the code for searching previous packages in an upgrade work again
113       (bug introduced in previous version).
115     * Minor changes.
117 2020-08-22  Matias Fonzo  <selk@dragora.org>
119     * Version 2.0 released.
121     * The user interface has been revised to better differenciate commands
122       and options, for example: `qi install` instead of `qi -i`, `qi remove`
123       instead of `qi -d`, `qi upgrade` instead of `qi -u`, `qi build`
124       instead of `qi -b`, and so on.
126     * The layout of the produced package names has been changed to better
127       differenciate the software name and its version.
129       Before: name-version-architecture-release[@pkgcategory].tlz
130       Now:    name_version_architecture-release[@pkgcategory].tlz
132     * The verbosity level has been changed to a minimal but essential result,
133       while it can now be adjusted from the configuration file.
135     * configure: The --arch= option has been added to define the default
136       package architecture.
138     * install: Fix assignation of 'rootdir' when it is empty and it
139       relies on the value of 'targetdir' when runs a post-install script
140       from subshell.
142     * doc: Fix examples for 'rootdir' since the package directory and
143       the target directory are relative to the specified root directory.
145     * recipes: Add the special variable 'keep_destdir' to complement
146       'keep_srcdir' in order to preserve 'destdir' when using build command.
148     * Be quieter by default in relation to the graft(1) output, if the
149       -v option is given it returns to the previous qi output behavior.
151     * Set the --missing-crc option to tarlz(1) by default to make the
152       package integrity check more reliable.
154     * Use the power of awk(1) to display package descriptions.
156     * Check and report if qi is connected to a terminal when reading from
157       standard input.
159     * Qi's messages have been improved to differentiate themselves from
160       the output of other programs.
162     * Added "coreutils", "bash", and "mksh" to the blacklist filter when
163       upgrading packages.
165     * Support for the SOURCE_DATE_EPOCH specification has been added.
166       See: https://reproducible-builds.org/specs/source-date-epoch/
168     * Default Qi C flags to be passed to the compiler (QICFLAGS, QICXXFLAGS)
169       has been changed from "-g0 -Os" to "-g0 -O2".
171     * The DESCRIPTION, OPTIONS, and ENVIRONMENT sections for the man page
172       (generated by help2man) have been reorganized.
174     * The main Info manual has been refreshed to reflect all these changes.
176     * The examples in the doc directory have been updated.
178     * The CREDITS file has been updated.
180     * Code clean up and minor (but important) enhancements.
182 2020-04-20  Matias Fonzo  <selk@dragora.org>
184     * Version 1.4 released.
186     * build: Added support for optional "package category".  If the
187       variable 'pkgcategory' is declared in a recipe, Qi will produce
188       packages ala "<name>-<version>-<architecture>+release@category".
190     * general: The configuration file is now included instead of being
191       analyzed.  This is to have more room to declare things in general.
193     * build: The 'arch' value is used as suffix for produced packages
194       in order to have a well-organized (per-arch) output directory,
195       e.g:
196        /var/cache/qi/packages/noarch/
197        /var/cache/qi/packages/i586/
198        /var/cache/qi/packages/x86_64/
199        ...
201     * The code of blacklisted packages in the updates has been simplified.
203     * doc: The "Variables from the environment" section has been improved.
205     * build: The 'full_pkgname' variable is now added on the meta tag file.
207     * doc: The manual has been updated to conform to this version.
209     * Minor changes.
211 2019-09-10  Matias Fonzo  <selk@dragora.org>
213     * Version 1.3 released.
215     * Check the exit status when a recipe is imported or included.
216       This will help to catch possible errors when using shell code,
217       rather than proceeding with the recipe.
219     * Minor changes.
221 2019-07-30  Matias Fonzo  <selk@dragora.org>
223     * Version 1.2 released.
225     * The variable 'arch' has been added to the package meta file,
226       additionally, the variables 'program' and 'version' has been
227       replaced with 'pkgname' and 'pkgversion' which take the value
228       of those if they have not been previously established.
230     * Minor changes.
232 2019-05-19  Matias Fonzo  <selk@dragora.org>
234     * Version 1.1 released.
236     * Default external tool for uncompressing files based on .tar.lz
237       archives has been changed in the unpack() function from tarlz(1) to
238       lzip(1) in combination with tar(1).  This is because some files
239       could have been produced using a header format that differs from the
240       default format used by tarlz(1), e.g. the GNU format (by GNU tar).
242     * Some phrases have been improved in the manual, under the section
243       "5.3 Writing recipes".  Thanks to kelsoo.
245 2019-04-15  Matias Fonzo  <selk@dragora.org>
247     * Version 1.0 (stable) released.
249     * The manual (user guide) has been updated.