#
4acd2335 |
|
26-Oct-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
Package Kit: Scale compression levels to the method's levels. Zlib has (for now?) 1-9 as its compression levels, but Zstd has 1-22, so we need to scale and round based on *_COMPRESSION_LEVEL_BEST.
|
#
0cf34918 |
|
26-Oct-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
Remove ZSTD_ENABLED checks from the Package Kit. BZstdCompressionAlgorithm already has these #ifdefs and will return error codes appropriately if built without libzstd, so we do not need to check again inside the Package Kit. This should not break the no-zstd build (well, it is broken somewhat right now anyway, but this will not break it further), and it simplifies logic somewhat.
|
#
a22fa0c9 |
|
04-Jun-2019 |
Alexander G. M. Smith <agmsmith@ncf.ca> |
package kit: Add pre-uninstall scripts feature. Just like post-install scripts which run shortly after a package is installed, pre-uninstall scripts are run just before a package is removed. Implements enhancement #13427 * Fix script exit code handling vs script launch errors. * Bump package and repo file version numbers due to new attribute, unfortunately makes new .hpkg files not backwards compatible. * Add pre-uninstall functionality, mostly cloning the post-install except in a few places. * Discover that _RunQueuedScripts() is never called, a future TODO:? * Update package documentation for pre-uninstall scripts, and use of the boot/post-install directory. Change-Id: I45596255ce74bc102f6e5b606cbf83e4e4347a17 Reviewed-on: https://review.haiku-os.org/c/haiku/+/1504 Reviewed-by: Alexander G. M. Smith <agmsmith@ncf.ca> Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
81375d4f |
|
11-Jul-2018 |
Jérôme Duval <jerome.duval@gmail.com> |
Package Kit: add Zstd compression. Change-Id: Idbdb7cf1bde659046a88ea69a76e3b5fc4cd7013 Reviewed-on: https://review.haiku-os.org/323 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
44c47711 |
|
12-Jul-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageWriter: Add BPositionIO support
|
#
8f5130ed |
|
12-Jul-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
package kit: Actually add support for B_HPKG_COMPRESSION_NONE Until now we always declared in the HPKG header that the package file is zlib compressed. For uncompressed files we would just store all individual chunks uncompressed. Now we handle completely uncompressed files slightly differently: We don't write the redundant chunk size table anymore. The size savings are minor, but it makes the uncompressed format read-streamable which may be handy.
|
#
e527b796 |
|
12-Jul-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Switch package file accessor classes to use BPositionIO * PackageFileHeap{Reader,Writer} as well as Package{Reader,Writer} and their implementation and super classes do now internally use a BPositionIO instead of a FD to access the package file. This provides more flexibility needed for features to come. * BPackageReader has already grown a new Init() version with a BPositionIO* parameter.
|
#
b3263ad3 |
|
30-Jun-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Switch package kit to BZlibCompressionAlgorithm ... and remove the Zlib{Compressor,Decompressor} API.
|
#
6a89a36a |
|
24-Jun-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move package kit Zlib* classes to support kit Also move to B* namespace and no longer expose the zlib dependency in the headers.
|
#
84297881 |
|
23-Jun-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove BPackageKit::[...]::AbstractDataWriter and friends * FDDataWriter and ZlibDataWriter weren't used anymore. * AbstractDataWriter was implemented only by PackageFileHeapWriter, which was only used by WriterImplBase. * Add a PackageFileHeapWriter::AddDataThrows() which has semantics equivalent to the previously inherited WriteDataThrows().
|
#
e8533402 |
|
04-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Repository file format: group attributes of a package * Introduce new package attribute B_HPKG_ATTRIBUTE_ID_PACKAGE (valid only in a repository file) to group the attributes belonging to a package. * BRepositoryContentHandler: - No longer derive from BPackageContentHandler. - Add hooks HandlePackage() and HandlePackageDone() that bracket the attributes for a package. This is more explicit and robust than handlers having to guess when one package ended and the next began. * BRepositoryCache: Make use of BPackageInfoContentHandler. No need to duplicate the code for reading a package info from package info attributes.
|
#
695a1b24 |
|
04-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
repository writer: fix use of incorrect header size The header size of the package file header was used, which resulted in broken repository files.
|
#
4489c88b |
|
05-Jun-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Generalize user/global settings file attributes * For all identifiers: Rename global settings file to global writable file. We want to use the respective attribute also for other writable files, not only settings files. * User settings file/global writable file info/attribute: Add isDirectory property/child attribute. This allows declaring global/ user settings directories associated with the package.
|
#
a3e070a7 |
|
24-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
WriterImplBase: Add _AddStringAttributeList() ... and simplify some code by using it.
|
#
c0ab1409 |
|
24-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attribute for declaring post install scripts
|
#
927e0708 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
WriterImplBase: Some simplifications ... using the recently introduced _AddStringAttribute[IfNotEmpty]().
|
#
0f4e11e7 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attributes for declaring users and groups
|
#
fe707a23 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attributes for declaring settings files Global and user settings files can be declared. For global ones an update policy can be specified. If not specified, the settings file is not included in the package, but created by the program (or user) later. If an update type is specified, it defines what to do with the settings file when updating the package to a newer version. User settings files are never included in the package; they are always created by the program or the user. If the package contains a template/ default settings file, it can be declared, but for informative purposes only.
|
#
796343ed |
|
18-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Allow specifying the compression level for package creation * Introduce BPackageWriterParameters which comprises all parameters for package creation, currently flags and compression level. Such an object can be passed to BPackageWriter::Init() and is passed on to PackageWriterImpl and WriterImplBase. * PackageFileHeapWriter: Add compressionLevel property and pass the value on to ZlibCompressor. * package add/create: Add options -0 ... -9 to specify the compression level to be used.
|
#
1f633814 |
|
17-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: compress the whole heap Instead of handling compression for individual file/attribute data we do now compress the whole heap where they are stored. This significantly improves compression ratios. We still divide the uncompressed data into 64 KiB chunks and use a chunk offset array for the compressed chunks to allow for quick random access without too much overhead. The tradeoff is a limited possible compression ratio -- i.e. we won't be as good as tar.gz (though surprisingly with my test archives we did better than zip). The other package file sections (package attributes and TOC) are no longer compressed individually. Their uncompressed data are simply pushed onto the heap where the usual compression strategy applies. To simplify things the repository format has been changed in the same manner although it doesn't otherwise use the heap, since it only stores meta data. Due to the data compression having been exposed in public and private API, this change touches a lot of package kit using code, including packagefs and the boot loader packagefs support. The latter two haven't been tested yet. Moreover packagefs needs a new kind of cache so we avoid re-reading the same heap chunk for two different data items it contains.
|
#
21ee6d5c |
|
14-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Some comment updates
|
#
7adfd76b |
|
13-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add "base package" package attribute
|
#
df295396 |
|
13-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove resolvable provides type * Remove BPackageResolvableType and respective property from BPackageResolvable. * Remove package attribute B_HPKG_ATTRIBUTE_ID_PACKAGE_PROVIDES_TYPE.
|
#
171fd58c |
|
12-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
package kit: some fixes for multi-version support * Use enums/constants/functions instead of preprocessor macros. * Missing include in PackageInfoAttributeValue.h. * PackageReaderImpl::Init(): Check version before header size and return B_MISMATCHED_VALUES instead of B_BAD_DATA, if the version doesn't match. This allows callers to determine the condition and try a reader for a different version. A more flexible interface for that case would be nice, but since we want to support the old package version only temporarily, the current solution should be good enough.
|
#
202c1daa |
|
15-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageVersion: Rename property release to revision * ... to avoid confusion with the preRelease property. It's also called "revision" in the HaikuPorts recipes. * Update libsolv package. Was necessary due to the BPackageVersion change, but also includes a few more changes.
|
#
9968845d |
|
16-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use BStringList in package kit Replace all instances of BObjectList<BString> by BStringList.
|
#
6ae0ecd4 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add a package info "install-path" attribute The attribute is intended for simplifying package building. The package's install path will be used for the package's .self package symlink, allowing installation to a temporary directory when building the package.
|
#
00bc8e9c |
|
02-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add support for adding/updating package entries Add flags parameter to BPackageWriter::Init() (and the private implementation classes) to indicate that an existing package file shall be updated instead of created. Currently that always happens in-place.
|
#
4ebd3de8 |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Support package info [source] URL attributes
|
#
9e93bb4b |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Write resolvable compatible version to the package To avoid a clash with the regular version or an extra attribute level we use the "package:provides.compatible" package attribute instead of "package:version.major".
|
#
8f314372 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Introduce a pre-release version component * The version string pattern is now: <major>[.<minor>[.<micro>]][-<pre>][-<release>] * Introduce B_HPKG_ATTRIBUTE_ID_PACKAGE_VERSION_PRE_RELEASE package attribute. * Add "preRelease" field to BPackageVersionData. * Add "preRelease" property to BPackageVersion and packagefs's Version. * Adjust package reader and writer code accordingly.
|
#
2021c984 |
|
16-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use BStringList in package kit Replace all instances of BObjectList<BString> by BStringList.
|
#
f19957b8 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add a package info "install-path" attribute The attribute is intended for simplifying package building. The package's install path will be used for the package's .self package symlink, allowing installation to a temporary directory when building the package.
|
#
327b38d6 |
|
02-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add support for adding/updating package entries Add flags parameter to BPackageWriter::Init() (and the private implementation classes) to indicate that an existing package file shall be updated instead of created. Currently that always happens in-place.
|
#
116852fe |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Support package info [source] URL attributes
|
#
b2709d8a |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Write resolvable compatible version to the package To avoid a clash with the regular version or an extra attribute level we use the "package:provides.compatible" package attribute instead of "package:version.major".
|
#
ed6d59a9 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Introduce a pre-release version component * The version string pattern is now: <major>[.<minor>[.<micro>]][-<pre>][-<release>] * Introduce B_HPKG_ATTRIBUTE_ID_PACKAGE_VERSION_PRE_RELEASE package attribute. * Add "preRelease" field to BPackageVersionData. * Add "preRelease" property to BPackageVersion and packagefs's Version. * Adjust package reader and writer code accordingly.
|
#
33bc4425 |
|
12-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Largish adjustments to PackagerReaderImpl and package attribute handling: * package attributes are now compatible with the low level attribute handling of other HPKG attributes (such that 'package dump' now shows package attributes, too) * dropped type names from hpkg format, the attributes were identified by IDs already and this simplifies the code considerably. Type names are now handled in BLowLevelPackageHandler only. * instead of rolling their own mechanism, high-level package attributes handling is now implemented via a corresonding set of AttributeHandler-subclasses * adjusted package writer to only write package attributes that are needed (empty ones are left out) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40466 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4dcc5232 |
|
10-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Fix problems in repository writer * actually write the checksum * compress the repository info archive, too (handle it as separate section) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40426 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d77c6cd2 |
|
08-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* implemented checking of licenses, such that it is no longer possible to create a package that refers to a license that is not a system license or contained in the package * added package-info flags (currently only approve_license and system_package) * adjusted package-reader/writer and pkgman accordingly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40393 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4ee7d007 |
|
08-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Cleanup: * PackageWriterImpl no longer accesses members of WriterImplBase directly, but uses getters/setters instead * package attribute registration has been moved from PackageWriterImpl to WriterImplBase, as it will be used in the same manner by the RepositoryWriter git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40388 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f2022173 |
|
07-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Refactoring step towards implementation of RepositoryWriter: * pulled commonly useful parts out of PackageWriterImpl into WriterImplBase * moved CachedStringTable and related methods into a separate class, StringCache, in order to support having more than one string cache per package file * made package attribute section use a string cache, too, as that's going to be very useful for repositories * instead of writing package attributes directly, we now collect corresponding PackageAttributes and write those later * adjusted package reader accordingly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40376 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
44c4771163b9166dc042f69cb5373c9de9e37006 |
|
12-Jul-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageWriter: Add BPositionIO support
|
#
8f5130edfa454cc7ee21e4c3aef2a151f7c3c567 |
|
12-Jul-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
package kit: Actually add support for B_HPKG_COMPRESSION_NONE Until now we always declared in the HPKG header that the package file is zlib compressed. For uncompressed files we would just store all individual chunks uncompressed. Now we handle completely uncompressed files slightly differently: We don't write the redundant chunk size table anymore. The size savings are minor, but it makes the uncompressed format read-streamable which may be handy.
|
#
e527b796319f21ca025f68e1964df140daa6de35 |
|
12-Jul-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Switch package file accessor classes to use BPositionIO * PackageFileHeap{Reader,Writer} as well as Package{Reader,Writer} and their implementation and super classes do now internally use a BPositionIO instead of a FD to access the package file. This provides more flexibility needed for features to come. * BPackageReader has already grown a new Init() version with a BPositionIO* parameter.
|
#
b3263ad3e1662cc419849a2d2cf539f9636613dc |
|
30-Jun-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Switch package kit to BZlibCompressionAlgorithm ... and remove the Zlib{Compressor,Decompressor} API.
|
#
6a89a36aa0ce6a53f9758ba767863ac6b4c6156c |
|
24-Jun-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move package kit Zlib* classes to support kit Also move to B* namespace and no longer expose the zlib dependency in the headers.
|
#
84297881bbcc26aa41292a57130d61ac1247577c |
|
23-Jun-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove BPackageKit::[...]::AbstractDataWriter and friends * FDDataWriter and ZlibDataWriter weren't used anymore. * AbstractDataWriter was implemented only by PackageFileHeapWriter, which was only used by WriterImplBase. * Add a PackageFileHeapWriter::AddDataThrows() which has semantics equivalent to the previously inherited WriteDataThrows().
|
#
e85334022eac93e41fc48b61784336b25ea2bbc3 |
|
04-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Repository file format: group attributes of a package * Introduce new package attribute B_HPKG_ATTRIBUTE_ID_PACKAGE (valid only in a repository file) to group the attributes belonging to a package. * BRepositoryContentHandler: - No longer derive from BPackageContentHandler. - Add hooks HandlePackage() and HandlePackageDone() that bracket the attributes for a package. This is more explicit and robust than handlers having to guess when one package ended and the next began. * BRepositoryCache: Make use of BPackageInfoContentHandler. No need to duplicate the code for reading a package info from package info attributes.
|
#
695a1b248a193f9a403d76d3b32666240ee76fcc |
|
04-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
repository writer: fix use of incorrect header size The header size of the package file header was used, which resulted in broken repository files.
|
#
4489c88b61bd4b70ff3a91d24ef5a0088e9c4691 |
|
05-Jun-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Generalize user/global settings file attributes * For all identifiers: Rename global settings file to global writable file. We want to use the respective attribute also for other writable files, not only settings files. * User settings file/global writable file info/attribute: Add isDirectory property/child attribute. This allows declaring global/ user settings directories associated with the package.
|
#
a3e070a7ff2a735abf31947289f8e73b7c388c8f |
|
24-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
WriterImplBase: Add _AddStringAttributeList() ... and simplify some code by using it.
|
#
c0ab14096139c4e72a501bc6e82ab92d0e9e48f3 |
|
24-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attribute for declaring post install scripts
|
#
927e0708696896ff1f96f7113ebbad57a32e3300 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
WriterImplBase: Some simplifications ... using the recently introduced _AddStringAttribute[IfNotEmpty]().
|
#
0f4e11e75c244fd61da150011f1eae5fe79fc2a9 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attributes for declaring users and groups
|
#
fe707a23fc6dc0bccb3e80201bf3e4146dcde74e |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attributes for declaring settings files Global and user settings files can be declared. For global ones an update policy can be specified. If not specified, the settings file is not included in the package, but created by the program (or user) later. If an update type is specified, it defines what to do with the settings file when updating the package to a newer version. User settings files are never included in the package; they are always created by the program or the user. If the package contains a template/ default settings file, it can be declared, but for informative purposes only.
|
#
796343ed73b1707ed97e91e22b72b8ca81bcdbad |
|
18-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Allow specifying the compression level for package creation * Introduce BPackageWriterParameters which comprises all parameters for package creation, currently flags and compression level. Such an object can be passed to BPackageWriter::Init() and is passed on to PackageWriterImpl and WriterImplBase. * PackageFileHeapWriter: Add compressionLevel property and pass the value on to ZlibCompressor. * package add/create: Add options -0 ... -9 to specify the compression level to be used.
|
#
1f633814fa347b0bd822f683af731615df600347 |
|
17-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: compress the whole heap Instead of handling compression for individual file/attribute data we do now compress the whole heap where they are stored. This significantly improves compression ratios. We still divide the uncompressed data into 64 KiB chunks and use a chunk offset array for the compressed chunks to allow for quick random access without too much overhead. The tradeoff is a limited possible compression ratio -- i.e. we won't be as good as tar.gz (though surprisingly with my test archives we did better than zip). The other package file sections (package attributes and TOC) are no longer compressed individually. Their uncompressed data are simply pushed onto the heap where the usual compression strategy applies. To simplify things the repository format has been changed in the same manner although it doesn't otherwise use the heap, since it only stores meta data. Due to the data compression having been exposed in public and private API, this change touches a lot of package kit using code, including packagefs and the boot loader packagefs support. The latter two haven't been tested yet. Moreover packagefs needs a new kind of cache so we avoid re-reading the same heap chunk for two different data items it contains.
|
#
21ee6d5cdce51e891eebc0b28efe8aad631bfc1c |
|
14-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Some comment updates
|
#
7adfd76b17adc78b0646a835711d3cd935bfb02b |
|
13-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add "base package" package attribute
|
#
df29539688df25133e4f9decc5da7b1045dc1850 |
|
13-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove resolvable provides type * Remove BPackageResolvableType and respective property from BPackageResolvable. * Remove package attribute B_HPKG_ATTRIBUTE_ID_PACKAGE_PROVIDES_TYPE.
|
#
171fd58c4b47c2da9cf13b7e501d3661d4a98e42 |
|
12-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
package kit: some fixes for multi-version support * Use enums/constants/functions instead of preprocessor macros. * Missing include in PackageInfoAttributeValue.h. * PackageReaderImpl::Init(): Check version before header size and return B_MISMATCHED_VALUES instead of B_BAD_DATA, if the version doesn't match. This allows callers to determine the condition and try a reader for a different version. A more flexible interface for that case would be nice, but since we want to support the old package version only temporarily, the current solution should be good enough.
|
#
202c1daaed2556eaccea80643e58d498594f2506 |
|
15-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageVersion: Rename property release to revision * ... to avoid confusion with the preRelease property. It's also called "revision" in the HaikuPorts recipes. * Update libsolv package. Was necessary due to the BPackageVersion change, but also includes a few more changes.
|
#
9968845d6988000a9235d7eb09031e80d997f31d |
|
16-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use BStringList in package kit Replace all instances of BObjectList<BString> by BStringList.
|
#
6ae0ecd49a584abd81f3fa0fb0c0dd5b7a3ddb71 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add a package info "install-path" attribute The attribute is intended for simplifying package building. The package's install path will be used for the package's .self package symlink, allowing installation to a temporary directory when building the package.
|
#
00bc8e9cbd92f6a812d75ad75ca91c34beb67e72 |
|
02-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add support for adding/updating package entries Add flags parameter to BPackageWriter::Init() (and the private implementation classes) to indicate that an existing package file shall be updated instead of created. Currently that always happens in-place.
|
#
4ebd3de828f45e238715e72621dce5df97c1cf56 |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Support package info [source] URL attributes
|
#
9e93bb4bfcf0719be2cd809b5354f0a137bfebd0 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Write resolvable compatible version to the package To avoid a clash with the regular version or an extra attribute level we use the "package:provides.compatible" package attribute instead of "package:version.major".
|
#
8f314372a8b317a4d9e2ebeccc0d5bf6e237fec7 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Introduce a pre-release version component * The version string pattern is now: <major>[.<minor>[.<micro>]][-<pre>][-<release>] * Introduce B_HPKG_ATTRIBUTE_ID_PACKAGE_VERSION_PRE_RELEASE package attribute. * Add "preRelease" field to BPackageVersionData. * Add "preRelease" property to BPackageVersion and packagefs's Version. * Adjust package reader and writer code accordingly.
|
#
2021c9842e1e61a3bf0f6550725ec3baf53d44b1 |
|
16-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use BStringList in package kit Replace all instances of BObjectList<BString> by BStringList.
|
#
f19957b8e5311ffc5b802032e4f24cdda81f9b50 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add a package info "install-path" attribute The attribute is intended for simplifying package building. The package's install path will be used for the package's .self package symlink, allowing installation to a temporary directory when building the package.
|
#
327b38d69c8d9a128c64d0535f15b0274b51c51b |
|
02-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add support for adding/updating package entries Add flags parameter to BPackageWriter::Init() (and the private implementation classes) to indicate that an existing package file shall be updated instead of created. Currently that always happens in-place.
|
#
116852fecb4dc982b2f3581a9f65ff290ae79e3f |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Support package info [source] URL attributes
|
#
b2709d8a0abeca4e08ed63d2f421ffac320e1a29 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Write resolvable compatible version to the package To avoid a clash with the regular version or an extra attribute level we use the "package:provides.compatible" package attribute instead of "package:version.major".
|
#
ed6d59a9a983cb031077b6d541576fc8efec1cfd |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Introduce a pre-release version component * The version string pattern is now: <major>[.<minor>[.<micro>]][-<pre>][-<release>] * Introduce B_HPKG_ATTRIBUTE_ID_PACKAGE_VERSION_PRE_RELEASE package attribute. * Add "preRelease" field to BPackageVersionData. * Add "preRelease" property to BPackageVersion and packagefs's Version. * Adjust package reader and writer code accordingly.
|
#
33bc4425be0b545ed3d0b7e7a9a873d31e5a0330 |
|
12-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Largish adjustments to PackagerReaderImpl and package attribute handling: * package attributes are now compatible with the low level attribute handling of other HPKG attributes (such that 'package dump' now shows package attributes, too) * dropped type names from hpkg format, the attributes were identified by IDs already and this simplifies the code considerably. Type names are now handled in BLowLevelPackageHandler only. * instead of rolling their own mechanism, high-level package attributes handling is now implemented via a corresonding set of AttributeHandler-subclasses * adjusted package writer to only write package attributes that are needed (empty ones are left out) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40466 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4dcc52327b52d043011c084e4ae8894b1f2d1481 |
|
10-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Fix problems in repository writer * actually write the checksum * compress the repository info archive, too (handle it as separate section) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40426 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
d77c6cd26a5cf3863ba4258a063d7d8645abf1e3 |
|
08-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* implemented checking of licenses, such that it is no longer possible to create a package that refers to a license that is not a system license or contained in the package * added package-info flags (currently only approve_license and system_package) * adjusted package-reader/writer and pkgman accordingly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40393 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4ee7d007d6aa14cd7d9286e52dbb57580fd8f8f7 |
|
08-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Cleanup: * PackageWriterImpl no longer accesses members of WriterImplBase directly, but uses getters/setters instead * package attribute registration has been moved from PackageWriterImpl to WriterImplBase, as it will be used in the same manner by the RepositoryWriter git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40388 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f202217364f40d170b7bf07b60a75457b275b0c1 |
|
07-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Refactoring step towards implementation of RepositoryWriter: * pulled commonly useful parts out of PackageWriterImpl into WriterImplBase * moved CachedStringTable and related methods into a separate class, StringCache, in order to support having more than one string cache per package file * made package attribute section use a string cache, too, as that's going to be very useful for repositories * instead of writing package attributes directly, we now collect corresponding PackageAttributes and write those later * adjusted package reader accordingly git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40376 a95241bf-73f2-0310-859d-f6bbb57e9c96
|