@@ -15,20 +15,27 @@ import module namespace semver="http://exist-db.org/xquery/semver";
15
15
:)
16
16
declare function versions:get-packages-satisfying-version-attributes (
17
17
$packages as element (package)*,
18
- $versions as xs:string? ,
18
+ $versions as xs:string* ,
19
19
$semver as xs:string?,
20
20
$semver-min as xs:string?,
21
21
$semver-max as xs:string?
22
22
) as element (package)* {
23
- $packages[
24
- semver:satisfies-expath-package-dependency-versioning-attributes (
25
- ./version ,
26
- $versions,
27
- $semver,
28
- $semver-min,
29
- $semver-max
30
- )
31
- ]
23
+ if (exists ($versions)) then (
24
+ for-each ($versions, function ($v as xs:string) {
25
+ $packages[
26
+ semver:satisfies-expath-package-dependency-versioning-attributes (./version , $v, (), (), ())]
27
+ })
28
+ ) else (
29
+ $packages[
30
+ semver:satisfies-expath-package-dependency-versioning-attributes (
31
+ ./version ,
32
+ $versions,
33
+ $semver,
34
+ $semver-min,
35
+ $semver-max
36
+ )
37
+ ]
38
+ )
32
39
=> versions:sort-packages ()
33
40
};
34
41
@@ -37,7 +44,7 @@ declare function versions:get-packages-satisfying-version-attributes(
37
44
:)
38
45
declare function versions:get-newest-package-satisfying-version-attributes (
39
46
$packages as element (package)*,
40
- $versions as xs:string? ,
47
+ $versions as xs:string* ,
41
48
$semver as xs:string?,
42
49
$semver-min as xs:string?,
43
50
$semver-max as xs:string?
0 commit comments