mirror of
https://codeberg.org/Toasterson/ips.git
synced 2026-04-10 21:30:41 +00:00
253 lines
8.3 KiB
Text
253 lines
8.3 KiB
Text
|
|
Version 12:
|
||
|
|
Incompatible with clients using versions 0-11.
|
||
|
|
|
||
|
|
pkg.server.api changed as follows:
|
||
|
|
* New constants 'PKG_STATE_RENAMED' and 'PKG_STATE_OBSOLETE' were
|
||
|
|
added to assist in determining package state information returned
|
||
|
|
from functions to the CatalogInterface class.
|
||
|
|
|
||
|
|
* The fmris() function of CatalogInterface now has an 'ordered'
|
||
|
|
parameter to control whether FMRIs are returned in ascending name,
|
||
|
|
descending version order.
|
||
|
|
|
||
|
|
* A new function named 'gen_allowed_packages' was added to
|
||
|
|
CatalogInterface to determine a list of packages allowed based on
|
||
|
|
the FMRI of a package that incorporates other packages.
|
||
|
|
|
||
|
|
* A new function named 'gen_packages' was added to
|
||
|
|
CatalogInterface as a replacement for the removed functions
|
||
|
|
get_matching_version_fmris() and get_matching_pattern_fmris(). It
|
||
|
|
provides superior filtering capabilities and includes package state
|
||
|
|
and attribute information.
|
||
|
|
|
||
|
|
Version 11:
|
||
|
|
Incompatible with clients using versions 0-10.
|
||
|
|
|
||
|
|
pkg.server.api changed as follows:
|
||
|
|
* A new property named 'version' was added to the CatalogInterface
|
||
|
|
class to expose the version format of the catalog.
|
||
|
|
|
||
|
|
* The 'rename_requests' property was removed from the ConfigInterface
|
||
|
|
class as the stat it represented was for functionality that was
|
||
|
|
never implemented.
|
||
|
|
|
||
|
|
* A new property named 'publisher' that returns the Publisher
|
||
|
|
object for the publisher related to the request was added to the
|
||
|
|
RequestInterface class.
|
||
|
|
|
||
|
|
Version 10:
|
||
|
|
Incompatible with clients using versions 0-9.
|
||
|
|
|
||
|
|
pkg.server.api changed as follows:
|
||
|
|
* The PackageInfo.PREF_PUBLISHER property and data was removed.
|
||
|
|
|
||
|
|
* The CatalogInterface.INFO_MULTI_MATCH property was removed and
|
||
|
|
the info() method no longer detects and considers multiple
|
||
|
|
matches for a single pattern an error.
|
||
|
|
|
||
|
|
Version 9:
|
||
|
|
Incompatible with clients using versions 0-8.
|
||
|
|
|
||
|
|
pkg.server.api changed as follows:
|
||
|
|
* All feed related properties retrieved or set using the
|
||
|
|
(get|set)_repo_* methods are no longer valid. Instead,
|
||
|
|
all feed-related configuration information must be
|
||
|
|
retrieved using the new depot configuration methods
|
||
|
|
found in the ConfigInterface class.
|
||
|
|
|
||
|
|
Version 8:
|
||
|
|
Incompatible with clients using versions 0-7.
|
||
|
|
|
||
|
|
pkg.server.api changed as follows:
|
||
|
|
* The return type of CatalogInterface.search changed so that instead
|
||
|
|
of returning the fmri string in the result, it returns a PkgFmri
|
||
|
|
object.
|
||
|
|
|
||
|
|
Version 7:
|
||
|
|
Compatible with clients using version 6.
|
||
|
|
|
||
|
|
CatalogInterface has changed as follows:
|
||
|
|
* A new function named 'info' was added to provide a way to
|
||
|
|
retrieved package information. It returns a PackageInfo
|
||
|
|
object representing the set of available package information.
|
||
|
|
See pydoc 'pkg.client.api.PackageInfo' for more information.
|
||
|
|
|
||
|
|
* A new function named 'get_entry_all_variants' was added to
|
||
|
|
provide access to the list of variants for a given package.
|
||
|
|
|
||
|
|
pkg.server.api changed as follows:
|
||
|
|
* New classes representing package metadata and license
|
||
|
|
information were added to pkg.api_common.
|
||
|
|
|
||
|
|
pkg.server.api_errors changed as follows:
|
||
|
|
* A new exception named 'UnrecognizedOptionsToInfo' was added.
|
||
|
|
|
||
|
|
Version 6:
|
||
|
|
Incompatible with clients using versions 0-5.
|
||
|
|
CatalogInterface:
|
||
|
|
* get_matching_pattern_fmris() and get_matching_version_fmris()
|
||
|
|
now return a tuple of (fmris, unmatched). Where 'fmris' is
|
||
|
|
a list of matching FMRIs, and 'unmatched' is a dict of
|
||
|
|
unmatched patterns or versions indexed by match criteria.
|
||
|
|
|
||
|
|
* package_count now returns the number of unique packages in the
|
||
|
|
catalog instead of the unique number of package versions.
|
||
|
|
|
||
|
|
* package_version_count, a new property, was added that contains
|
||
|
|
the number of unique package versions in the catalog.
|
||
|
|
|
||
|
|
ConfigInterface:
|
||
|
|
* get_repo_attrs was renamed to get_repo_properties
|
||
|
|
|
||
|
|
* get_repo_attr_value was renamed to get_repo_property_value
|
||
|
|
|
||
|
|
Version 5:
|
||
|
|
Compatible with clients using Versions 3-4.
|
||
|
|
ConfigInterface.get_repo_attr_value() has changed as follows:
|
||
|
|
* Section 'feed' attribute 'authority' has been removed. It has been
|
||
|
|
replaced by section 'publisher' attribute 'prefix'.
|
||
|
|
|
||
|
|
* Section 'publisher' with attributes 'alias' and 'prefix' was added.
|
||
|
|
|
||
|
|
* New attributes were added for section 'repository': 'collection_type',
|
||
|
|
'legal_uris', 'mirrors', 'origins', 'refresh_seconds',
|
||
|
|
'registration_uri', and 'related_uris'. See the pydoc for
|
||
|
|
pkg.server.api.ConfigInterface for details.
|
||
|
|
|
||
|
|
Version 4:
|
||
|
|
Compatible with clients using Version 3.
|
||
|
|
|
||
|
|
Changes:
|
||
|
|
CatalogInterface.search() has changed as follows:
|
||
|
|
* A docstring has been added; see pydoc pkg.server.api for details.
|
||
|
|
|
||
|
|
* Added optional keyword 'matching_version' that allows consumers to
|
||
|
|
filter search results based on version.
|
||
|
|
|
||
|
|
* Added optional, boolean keyword 'return_latest' that causes only the
|
||
|
|
the newest versions of packages to be returned when 'return_type'
|
||
|
|
is Query.RETURN_PACKAGES.
|
||
|
|
|
||
|
|
Version 3:
|
||
|
|
Incompatible with clients using Versions 0-2.
|
||
|
|
|
||
|
|
Changes:
|
||
|
|
CatalogInterface.search() has changed as follows:
|
||
|
|
* Added optional, boolean keyword 'case_sensitive'. This indicates
|
||
|
|
whether a case-sensitive search should be performed.
|
||
|
|
|
||
|
|
* Added optional keyword argument 'return_type'. This determines
|
||
|
|
whether results should be returned as Query.RETURN_ACTIONS or
|
||
|
|
Query.RETURN_PACKAGES.
|
||
|
|
|
||
|
|
* Added optional, integer keyword argument 'start_point'. This
|
||
|
|
specifies how many matching results should be skipped before
|
||
|
|
returning anything.
|
||
|
|
|
||
|
|
* Added optional, integer keyword argument 'num_to_return'. This
|
||
|
|
indicates how many results should be returned before the search
|
||
|
|
is aborted.
|
||
|
|
|
||
|
|
* search_done() was removed. Previously, after calling search(), api
|
||
|
|
consumers would have to call search_done(). This is no longer
|
||
|
|
necessary.
|
||
|
|
|
||
|
|
Version 2:
|
||
|
|
Incompatible with clients using Versions 0-1.
|
||
|
|
Changes:
|
||
|
|
CatalogInterface.get_matching_version_fmris() no longer accepts the constraint
|
||
|
|
parameter. However, as before, it expects a list of version strings for the
|
||
|
|
'versions' parameter. These version strings may now contain the wildcard
|
||
|
|
characters '*' and '?'.
|
||
|
|
|
||
|
|
Version 1:
|
||
|
|
Incompatible with clients using Version 0.
|
||
|
|
Changes:
|
||
|
|
CatalogInterface.search_done() was added to perform cleanup after all results
|
||
|
|
have been retrieved from search().
|
||
|
|
|
||
|
|
CatalogInterface.search() now returns a generator object, instead of a list
|
||
|
|
object, that requires that CatalogInterface.search_done() is called after all
|
||
|
|
of the desired results have been retrieved for proper cleanup.
|
||
|
|
|
||
|
|
Version 0:
|
||
|
|
Initial api version, containing the following:
|
||
|
|
class BaseInterface
|
||
|
|
-- used to instantiate other interface objects
|
||
|
|
|
||
|
|
class CatalogInterface
|
||
|
|
def __init__(self, version_id, base):
|
||
|
|
def fmris(self):
|
||
|
|
def get_matching_pattern_fmris(self, patterns):
|
||
|
|
def get_matching_version_fmris(self, versions,
|
||
|
|
constraint=pkg.version.CONSTRAINT_AUTO):
|
||
|
|
|
||
|
|
@property
|
||
|
|
last_modified
|
||
|
|
|
||
|
|
@property
|
||
|
|
package_count
|
||
|
|
|
||
|
|
def search(self, token):
|
||
|
|
|
||
|
|
@property
|
||
|
|
search_available
|
||
|
|
|
||
|
|
class ConfigInterface
|
||
|
|
def __init__(self, version_id, base):
|
||
|
|
|
||
|
|
@property
|
||
|
|
catalog_requests
|
||
|
|
|
||
|
|
@property
|
||
|
|
content_root
|
||
|
|
|
||
|
|
@property
|
||
|
|
file_requests
|
||
|
|
|
||
|
|
@property
|
||
|
|
filelist_requests
|
||
|
|
|
||
|
|
@property
|
||
|
|
filelist_file_requests
|
||
|
|
|
||
|
|
@property
|
||
|
|
in_flight_transactions
|
||
|
|
|
||
|
|
@property
|
||
|
|
manifest_requests
|
||
|
|
|
||
|
|
@property
|
||
|
|
mirror
|
||
|
|
|
||
|
|
@property
|
||
|
|
readonly
|
||
|
|
|
||
|
|
@property
|
||
|
|
rename_requests
|
||
|
|
|
||
|
|
@property
|
||
|
|
web_root
|
||
|
|
|
||
|
|
def get_repo_attrs(self):
|
||
|
|
|
||
|
|
def get_repo_attr_value(self, section, attr):
|
||
|
|
|
||
|
|
class RequestInterface
|
||
|
|
def __init__(self, version_id, base):
|
||
|
|
|
||
|
|
def get_accepted_languages(self):
|
||
|
|
|
||
|
|
def get_rel_path(self, uri):
|
||
|
|
|
||
|
|
def log(self, msg):
|
||
|
|
|
||
|
|
@property
|
||
|
|
params
|
||
|
|
|
||
|
|
@property
|
||
|
|
path_info
|
||
|
|
|
||
|
|
def url(self, path='', qs='', script_name=None, relative=None):
|
||
|
|
|