History log of /haiku/src/kits/package/PackageVersion.cpp
Revision Date Author Comments
# 9d81dc76 18-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPackage{Info,Version}: Switch to '~' as pre-release separator

Also allow '.' in the pre-release string (as in "alpha4.1") and in
package and resolvable names.


# 5e6adff9 18-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPackageVersion::ToString(): Return empty string, if invalid


# defc1f77 18-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPackage{Version,Info}: Switch to new pre-release rule

Also add several checks in the package-info parser to enforce the
<alphanum_underscore> requirement of package/resolvable names and
version components.


# 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.


# a3dd6caf 02-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add public package version parsing API

* BPackageVersion: Add respective constructor and SetTo().
* BPackageInfo: Add static ParseVersionString() utility method. It's
only there because the parser lives in the BPackageInfo
implementation.


# 0a9478a7 11-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Force package names and versions to lower case


# 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.


# 437651ff 11-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Force package names and versions to lower case


# 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


# 0d68f6af 09-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

Implemented repository writing:
* fleshed out RepositoryWriterImpl
* renamed BRepositoryHeader to BRepositoryInfo (in accordance with
BPackageInfo)
* adjusted BRepositoryInfo to be able to parse itself from a
driver_settings file
* added package_repo binary (only 'create' works as of yet)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40405 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ceb993ab 04-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

* rename AsString() methods to ToString() as suggested by Ingo
(following the naming used by other classes)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40356 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2f7778f3 01-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

* added some missing method implementations in BPackageResolvable
and BPackageResolvableExpression
* switched GetAsString() to a AsString() as that's much more convenient
and nothing can go wrong anyway


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40347 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3aeae97f 29-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

* added type-support to BPackageResolvable
* split BPackageResolvable, BPackageResolvableExpression
and BPackageVersion into separate files


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40316 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9d81dc7655a984ce6dd0d79878215fe4d5748da6 18-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPackage{Info,Version}: Switch to '~' as pre-release separator

Also allow '.' in the pre-release string (as in "alpha4.1") and in
package and resolvable names.


# 5e6adff9893e2566c886da1f46159967a93b15c5 18-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPackageVersion::ToString(): Return empty string, if invalid


# defc1f774aceb747e6d6b7e3a63b5258cfd345ed 18-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPackage{Version,Info}: Switch to new pre-release rule

Also add several checks in the package-info parser to enforce the
<alphanum_underscore> requirement of package/resolvable names and
version components.


# 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.


# a3dd6caf55b8862747542069f3bf116e92723eab 02-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add public package version parsing API

* BPackageVersion: Add respective constructor and SetTo().
* BPackageInfo: Add static ParseVersionString() utility method. It's
only there because the parser lives in the BPackageInfo
implementation.


# 0a9478a70707cb326b41907ea099076772fc57c9 11-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Force package names and versions to lower case


# 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.


# 437651ffccae7aea235b5d9bb34d63071609e625 11-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Force package names and versions to lower case


# 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


# 0d68f6afb34d8e01421123b216e34771d1c7fbfe 09-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

Implemented repository writing:
* fleshed out RepositoryWriterImpl
* renamed BRepositoryHeader to BRepositoryInfo (in accordance with
BPackageInfo)
* adjusted BRepositoryInfo to be able to parse itself from a
driver_settings file
* added package_repo binary (only 'create' works as of yet)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40405 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ceb993ab40e1256610cd115496768417e95702aa 04-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

* rename AsString() methods to ToString() as suggested by Ingo
(following the naming used by other classes)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40356 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2f7778f375742a09c571c52115af804766414877 01-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

* added some missing method implementations in BPackageResolvable
and BPackageResolvableExpression
* switched GetAsString() to a AsString() as that's much more convenient
and nothing can go wrong anyway


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40347 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3aeae97f65ba61b4d012c6489514eb47ef9a3825 29-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

* added type-support to BPackageResolvable
* split BPackageResolvable, BPackageResolvableExpression
and BPackageVersion into separate files


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40316 a95241bf-73f2-0310-859d-f6bbb57e9c96