@@ -38,7 +38,7 @@ declare function versions:find-compatible-packages(
38
38
else if ($semver-min and $semver-max) then
39
39
versions:find-version ($packages, $semver-min, $semver-max)
40
40
else if (exists ($exist-version-semver)) then
41
- versions:find-packages-satisfying-exist-version-requirements ($packages, $exist-version-semver, $semver-min, $semver-max )
41
+ versions:find-packages-satisfying-exist-version-requirements ($packages, $exist-version-semver)
42
42
else
43
43
()
44
44
};
@@ -105,25 +105,43 @@ function versions:find-version($packages as element(package)*, $minVersion as xs
105
105
(:~
106
106
: Find packages whose eXist version requirements meet the client's eXist version
107
107
:
108
- : For example, via app.xqm or list.xq, a client may request the subset of a package's
109
- : releases that are compatible with eXist 5.3.0. The function examines each release's
110
- : eXist dependency declarations (if present) and returns all matching packages.
108
+ : @deprecated As of 2.1.3, use the private function versions:find-packages-satisfying-exist-version-requirements#2
111
109
:)
112
110
declare function versions:find-packages-satisfying-exist-version-requirements (
113
111
$packages as element (package)*,
114
- $exist-version-semver as xs:string,
112
+ $exist-version-semver as xs:string,
115
113
$min-version as xs:string?,
116
114
$max-version as xs:string?
115
+ ) as element (package)* {
116
+ versions:find-packages-satisfying-exist-version-requirements ($packages, $exist-version-semver)
117
+ };
118
+
119
+ (:~
120
+ : Find packages whose eXist version requirements meet the client's eXist version
121
+ :
122
+ : For example, via app.xqm or list.xq, a client may request the subset of a package's
123
+ : releases that are compatible with eXist 5.3.0. The function examines each release's
124
+ : eXist dependency declarations (if present) and returns all matching packages.
125
+ :)
126
+ declare %private function versions:find-packages-satisfying-exist-version-requirements (
127
+ $packages as element (package)*,
128
+ $exist-version-semver as xs:string
117
129
) as element (package)* {
118
130
for $package in $packages
119
131
let $satisfies-semver-min-requirement :=
120
132
if (exists ($package/requires/@semver-min)) then
121
- semver:ge ($exist-version-semver, $package/requires/@semver-min, true ())
133
+ semver:ge-parsed (
134
+ semver:parse ($exist-version-semver, true ()),
135
+ semver:resolve-if-expath-package-server-template-else-parse ($package/requires/@semver-min, "min" , true ())
136
+ )
122
137
else
123
138
true ()
124
139
let $satisfies-semver-max-requirement :=
125
140
if (exists ($package/requires/@semver-max)) then
126
- semver:lt ($exist-version-semver, $package/requires/@semver-max, true ())
141
+ semver:lt-parsed (
142
+ semver:parse ($exist-version-semver, true ()),
143
+ semver:resolve-if-expath-package-server-template-else-parse ($package/requires/@semver-max, "max" , true ())
144
+ )
127
145
else
128
146
true ()
129
147
return
0 commit comments