Difference between revisions of "Repository Module"

From BaseX Documentation
Jump to navigation Jump to search
(3 intermediate revisions by the same user not shown)
Line 10: Line 10:
  
 
{| width='100%'
 
{| width='100%'
|-
+
|- valign="top"
 
| width='120' | '''Signatures'''
 
| width='120' | '''Signatures'''
|{{Func|repo:install|$path as xs:string|empty-sequence()}}<br />
+
|{{Func|repo:install|$uri as xs:string|empty-sequence()}}<br />
|-
+
|- valign="top"
 
| '''Summary'''
 
| '''Summary'''
|Installs a package or replaces an existing package. The parameter {{Code|$path}} indicates the path to the package.<br />
+
|Retrieves and installs a package from the given {{Code|$uri}}. Existing packages are replaced.
|-
+
|- valign="top"
 
| '''Errors'''
 
| '''Errors'''
 
|{{Error|not-found|#Errors}} a package does not exist.<br />{{Error|descriptor|#Errors}} the package descriptor is invalid.<br />{{Error|installed|#Errors}} the module contained in the package to be installed is already installed as part of another package.<br />{{Error|parse|#Errors}} an error occurred while parsing the package.<br />{{Error|version|#Errors}} the package version is not supported.
 
|{{Error|not-found|#Errors}} a package does not exist.<br />{{Error|descriptor|#Errors}} the package descriptor is invalid.<br />{{Error|installed|#Errors}} the module contained in the package to be installed is already installed as part of another package.<br />{{Error|parse|#Errors}} an error occurred while parsing the package.<br />{{Error|version|#Errors}} the package version is not supported.
Line 24: Line 24:
  
 
{| width='100%'
 
{| width='100%'
|-
+
|- valign="top"
 
| width='120' | '''Signatures'''
 
| width='120' | '''Signatures'''
|{{Func|repo:delete|$pkg as xs:string|empty-sequence()}}<br />
+
|{{Func|repo:delete|$package as xs:string|empty-sequence()}}<br />
|-
+
|- valign="top"
 
| '''Summary'''
 
| '''Summary'''
|Deletes a package. The parameter {{Code|$pkg}} indicates the package name, optionally suffixed with a dash and the package version.<br />
+
|Deletes a {{Code|$package}}. The argument contains the package name, optionally suffixed with a dash and the package version.<br />
|-
+
|- valign="top"
 
| '''Errors'''
 
| '''Errors'''
 
|{{Error|not-found|#Errors}} a package does not exist.<br />{{Error|delete|#Errors}} the package cannot be deleted.
 
|{{Error|not-found|#Errors}} a package does not exist.<br />{{Error|delete|#Errors}} the package cannot be deleted.
Line 38: Line 38:
  
 
{| width='100%'
 
{| width='100%'
|-
+
|- valign="top"
 
| width='120' | '''Signatures'''
 
| width='120' | '''Signatures'''
 
|{{Func|repo:list||element(package)*}}<br />
 
|{{Func|repo:list||element(package)*}}<br />
|-
+
|- valign="top"
 
| '''Summary'''
 
| '''Summary'''
 
|Lists the names and versions of all currently installed packages.<br />
 
|Lists the names and versions of all currently installed packages.<br />
Line 51: Line 51:
 
! width="110"|Code
 
! width="110"|Code
 
|Description
 
|Description
|-
+
|- valign="top"
 
|{{Code|delete}}
 
|{{Code|delete}}
 
|The package cannot be deleted because of dependencies, or because files are missing.
 
|The package cannot be deleted because of dependencies, or because files are missing.
|-
+
|- valign="top"
 
|{{Code|descriptor}}
 
|{{Code|descriptor}}
 
|The package descriptor is invalid.
 
|The package descriptor is invalid.
|-
+
|- valign="top"
 
|{{Code|installed}}
 
|{{Code|installed}}
 
|The module contained in the package to be installed is already installed as part of another package.
 
|The module contained in the package to be installed is already installed as part of another package.
|-
+
|- valign="top"
 
|{{Code|not-found}}
 
|{{Code|not-found}}
 
|A package does not exist.
 
|A package does not exist.
|-
+
|- valign="top"
 
|{{Code|parse}}
 
|{{Code|parse}}
 
|An error occurred while parsing the package.
 
|An error occurred while parsing the package.
|-
+
|- valign="top"
 
|{{Code|version}}
 
|{{Code|version}}
 
|The package version is not supported.
 
|The package version is not supported.
Line 79: Line 79:
 
;Version 7.2.1
 
;Version 7.2.1
  
* Updated: [[#repo:install|repo:install]]: existing packages will be replaced
+
* Updated: {{Function||repo:install}}: existing packages will be replaced
* Updated: [[#repo:delete|repo:delete]]: remove specific version of a package
+
* Updated: {{Function||repo:delete}}: remove specific version of a package
  
 
;Version 7.2
 
;Version 7.2
  
* Updated: [[#repo:list|repo:list]] now returns nodes
+
* Updated: {{Function||repo:list}} now returns nodes
  
 
The module was introduced with Version 7.1.
 
The module was introduced with Version 7.1.

Revision as of 13:19, 20 July 2022

This XQuery Module contains functions for installing, listing and deleting modules contained in the Repository.

Conventions

All functions and errors in this module are assigned to the http://basex.org/modules/repo namespace, which is statically bound to the repo prefix.

Functions

repo:install

Signatures repo:install($uri as xs:string) as empty-sequence()
Summary Retrieves and installs a package from the given $uri. Existing packages are replaced.
Errors not-found: a package does not exist.
descriptor: the package descriptor is invalid.
installed: the module contained in the package to be installed is already installed as part of another package.
parse: an error occurred while parsing the package.
version: the package version is not supported.

repo:delete

Signatures repo:delete($package as xs:string) as empty-sequence()
Summary Deletes a $package. The argument contains the package name, optionally suffixed with a dash and the package version.
Errors not-found: a package does not exist.
delete: the package cannot be deleted.

repo:list

Signatures repo:list() as element(package)*
Summary Lists the names and versions of all currently installed packages.

Errors

Code Description
delete The package cannot be deleted because of dependencies, or because files are missing.
descriptor The package descriptor is invalid.
installed The module contained in the package to be installed is already installed as part of another package.
not-found A package does not exist.
parse An error occurred while parsing the package.
version The package version is not supported.

Changelog

Version 9.0
  • Updated: error codes updated; errors now use the module namespace
Version 7.2.1
  • Updated: repo:install: existing packages will be replaced
  • Updated: repo:delete: remove specific version of a package
Version 7.2

The module was introduced with Version 7.1.