pkgconf/NEWS

257 lines
6.8 KiB
Plaintext

Changes from previous version of pkgconf
========================================
Changes from 1.3.0 to 1.3.1:
----------------------------
* Features:
- implement --short-errors
* Bug fixes:
- only consider a single package at a time with --print-requires, --print-requires-private,
--print-provides, --modversion, --print-variable and --print-variables
* Enhancements:
- synchronized latest freedesktop.org changes to pkg.m4
- improve error reporting with legacy --atleast-version and similar flags.
Changes from 1.2.0 to 1.3.0:
----------------------------
* Features:
- pkgconf --debug now provides a facility for tracing most relevant libpkgconf operations
- libpkgconf: add warn and trace handlers for warnings
- replace realpath() with faster, lighter weight path normalization function (#112)
- pkgconf CLI now emulates pkg-config quoting rules precisely, while allowing direct access
to the actual fragments via libpkgconf
* Bug fixes:
- pkg: properly separate static and virtual packages so they are not inappropriately
optimized out of the dependency graph (#108)
- argvsplit: do not consider ' and " to have similar rules to escape sequences (#111)
- pkg: strip trailing whitespace when parsing .pc files
* Enhancements:
- argvsplit basically rewritten from scratch
- many code fixes spotted by coverity
- add PKG_CONFIG_DONT_RELOCATE_PATHS and --dont-relocate-paths environment variables to
disable path relocation feature if needed
- remove extra whitespace that was present for compatibility with older pkg-config releases (#113)
Changes from 1.1.0 to 1.2.0:
----------------------------
* Features:
- new --path option lists the .pc files which provided the requested dependencies
- new path relocation API: pkgconf_path_relocate(), which wraps functions such as
realpath() and cygwin_conv_path().
- new --with-path option adds a path to the search list
- new --define-prefix and --dont-define-prefix features enable automatic prefix
detection for relocatable SDKs. this is mostly useful on windows.
* Bug fixes:
- fragments: fix even more edge cases involving token concatenation
- path lists: don't attempt to collect path inodes if the filter is disabled
- path lists: explicitly avoid uninitialised data for the path inode cache
- client: properly handle --keep-system-cflags and --keep-system-libs
* Enhancements:
- windows: build libpkgconf as a DLL
- fragments: only munge fragments if sysroot_dir is actually set
- overall API: resolver flags have been moved to being a client-object setting
instead of used for every function invocation
Changes from 1.0.1 to 1.1.0:
----------------------------
* Features:
- new Provides system allows alternate .pc files to provide a dependency
- stable library API (with documentation): http://pkgconf.readthedocs.io/
* Enhancements:
- make it possible to programmatically declare dependencies instead of just using the parser
- testsuite migrated to run under kyua
- provide a libpkgconf.pc file for consumers to use
- pkgconf client: new --pure flag to enable dependency graph optimization in --static mode
- significant .pc parser speedups using bsearch(3).
- handle -idirafter in the same way as -isystem CFLAGS
- learn toolchain "system" paths from GCC environment variables, if present
- filter duplicate PKG_CONFIG_PATH (and other) entries by inode
* Bug fixes:
- fragments: fix another edge case involving empty tokens being concatenated onto previous tokens (#99)
- libpkgconf: remove dependencies on config.h in public headers
Changes from 1.0.0 to 1.0.1:
----------------------------
* Enhancements:
- new stub implementation of --print-provides (#95)
* Bug fixes:
- fragments: fix an edge case involving path-only fragments and PKG_CONFIG_SYSROOT_DIR (#94)
Changes from 0.9.12 to 1.0.0:
-----------------------------
* Features:
- new library: libpkgconf
* Enhancements:
- testsuite: use an explicit prefix on all tests
- build: switch to automake
* Bug fixes:
- cast all usage of ctype(3) functions
- do not expand variables passed via --define-variable for compatibility with pkg-config 0.29
- let the CFLAGS being user settable
Changes from 0.9.11 to 0.9.12:
------------------------------
* Features:
- add --list-package-names
* Enhancements:
- ensure -I and -L are never pushed back
* Bug fixes:
- fix implicit conversion warnings with variables over 31bits
Changes from 0.9.10 to 0.9.11:
------------------------------
* Features:
- add --validate
* Enhancements:
- add large file support checks in autoconf
* Bug fixes:
- fix private lib deduplication
- handle --static correctly in some more esoteric scenarios
Changes from 0.9.9 to 0.9.10:
-----------------------------
* Features:
* Enhancements:
* Bug fixes:
- Fix parser when dealing with commented lines
Changes from 0.9.8 to 0.9.9:
----------------------------
* Features:
- add a sub out --print-provides
* Enhancements:
* Bug fixes:
- Fix parser when dealing with comments in fields
Changes from 0.9.7 to 0.9.8:
----------------------------
* Features:
* Enhancements:
- Convert manpages to mdoc(7)
* Bug fixes:
- Fix parsing multiline fields
Changes from 0.9.6 to 0.9.7:
----------------------------
* Features:
* Enhancements:
- Convert manpages to mdoc(7)
* Bug fixes:
- Fix parsing multiline fields
Changes from 0.9.5 to 0.9.6:
----------------------------
* Features:
- add a sub --debug
* Enhancements:
- Do not hardcode non-posix install(1)
* Bug fixes:
- fix --with-system-includedir and --with-system-libdir behaviour
Changes from 0.9.4 to 0.9.5:
----------------------------
* Features:
* Enhancements:
- Make all variables but CFLAGS and LIBS case sensitive
* Bug fixes:
Changes from 0.9.3 to 0.9.4:
----------------------------
* Features:
- Add a pkgconf(1) manpage
* Enhancements:
- Improve support for MacOS -framework
* Bug fixes:
Changes from 0.9.2 to 0.9.3:
----------------------------
* Features:
- Add support for CFLAGS.private
* Enhancements:
- Support out of source build
- Improved private libs deduplication
* Bug fixes:
Changes from 0.9.1 to 0.9.2:
----------------------------
* Features:
* Enhancements:
* Bug fixes:
- Fix PKG_CONFIG_PATH being ignored when a .pc is directly supplied from
command line
Changes from 0.9.0 to 0.9.1:
----------------------------
* Features:
* Enhancements:
- --simulate: print depgraph operations
- --simulate: print bytecode program as a human-readable AST
* Bug fixes:
- reset parser state on new package atom
Changes from 0.8.12 to 0.9.0:
----------------------------
* Features:
* Enhancements:
- Rework the internal cache API
- Rework the internal code to use the new pkg_list_t framework
- Rework PKG_CONFIG_PATH handling code
* Bug fixes:
- fix multi-recursion with -framework