-
-
Notifications
You must be signed in to change notification settings - Fork 189
Remove draft notation for map constructor entries #2887
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@joewiz Seems like a good idea to me |
As @duncdrum mentioned during the Community Call, this PR would require a new release of shared-resources, since the HTML templating module contains one use of the old syntax: https://github.com/eXist-db/shared-resources/blob/master/content/templates.xql#L94-L97. Also, many HTML templating apps' |
exide's app-generator uses the proper syntax since 2016, generator apps always used the correct syntax in |
@joewiz oh wow, this beauty is hiding in a lot more places than I thought. |
@line-o Sure is! The most common culprit is view.xql of HTML Templating apps. I wonder if @craigberry could figure out a way to extend his code audit script to find these. I used the regex |
@line-o I've completed reviewing the 18 eXist-db organization repositories with a I have not reviewed:
Unfortunately, GitLab doesn't support searching by filename, but I've already submitted a PR for tei-publisher: https://gitlab.existsolutions.com/tei-publisher/tei-publisher-app/merge_requests/73. |
FYI, the previous behavior has been in place since this PR, which was released in eXist 2.2: #320. |
New releases of the following stock apps have been published to the public repo:
The following apps have PRs that need to be merged before a release can be cut:
No changes to packageservice, functx, or markdown were needed. I published new releases of the following non-core apps:
My PRs updating one other non-core app still needs review - and should be included in the next release of the app: |
I've submitted PRs for the TEI Publisher showcase apps: |
Other repositories with the same PR that will need new releases:
I started a PR for AtomicWiki but then discovered it needed quite a bit more work to account for the removed functions. I pasted in the full audit, in case anyone is willing to complete the work: |
Thanks to help from @dizzzz, I've just released:
This leaves only:
|
What is the problem
The draft syntax for map entries is still supported in eXist, which allows users to write bad code.
A major version such as 5.0 would be a good opportunity to remove this syntax—just as we removed other draft-era functions like
map:new
.What did you expect
Map constructor entry syntax is as follows: https://www.w3.org/TR/xquery-31/#prod-xquery31-MapConstructorEntry
However, according to http://exist-db.org/exist/apps/doc/xquery#legacy-features:
Describe how to reproduce or add a test
Code such as
map { "name" := "joe" }
should raise an error.Context information
The text was updated successfully, but these errors were encountered: