[new release] atd (10 packages) (2.16.0)#27308
Conversation
CHANGES: * atdgen: Breaking change, migrate from Bucklescript to Melange (ahrefs/atd#375) * atdd: Workaround d compiler bug regarding declaration order when using aliases (ahrefs/atd#393) Algebraic data types (SumType) now uses `alias this` syntax. * atdgen: Add support for `<json open_enum>` in Melange (ahrefs/atd#401) * atdcpp: Initial Release (ahrefs/atd#404) * atdcpp: Use `double` c++ type as default floating point type (ahrefs/atd#411) * atdgen: Fix JSON I/O for inline records (ahrefs/atd#419) * atdgen: The deprecated `atdgen` library is no longer available. Use `atdgen-runtime` instead (ahrefs/atd#421) * atddiff: To ensure that all the intended types are checked when new type definitions are added to an ATD file, an `--ignore` option is now available. It makes atddiff fail if some types are neither selected via `--types` nor ignored via `--ignore`.
|
The errors in the reverse dependencies such as "azure-cosmos-db.0.1.2 (failed: Library "atdgen" not found.)" are due to the deprecated library Here are things we can do:
Update: solution (1) won't work because it's not an issue with the Adding the constraint atdgen-runtime < 2.16.0 to the opam files of the affected packages would fix opam installs. I'll do this unless someone thinks we should go with (2), a reversion. |
I'd go with this |
|
|
Fantastic. Let's see if what I did works. I left detailed upgrade instructions in the git commit and I'll copy them to atd's release page for more visibility. |
|
Of course, I messed up the upgrade instructions left in the git commit. I'm going to amend the commit once and hope it will be good enough. |
The 'atdgen' package no longer provides an 'atdgen' library
which was providing an 'Atdgen' module (it's been deprecated since
2018). The equivalent module is 'Atdgen_runtime'. Upgrade instructions:
- module level: if your source code references 'Atdgen', change it to
'Atdgen_runtime'.
- library level: in dune files and other build files, change references
to the 'atdgen' library to 'atdgen-runtime'.
- package level: [optional] in opam files or dune-project files used to
derive opam files, we recommend that you depend only on the 'atdgen'
package at build time and add a dependency on the 'atdgen-runtime'
package as follows. Here's the syntax for an opam file:
depends: [
...
"atdgen" {build}
"atdgen-runtime"
...
]
or with a version constraint:
depends: [
...
"atdgen" {build & = "123.456.789"}
"atdgen-runtime" {= "123.456.789"}
...
]
If the opam file is derived from a dune-project file, the syntax is:
(package
...
(depends
...
(atdgen :build)
atdgen-runtime
...
)
...
)
or with a version constraint:
(package
...
(depends
...
(atdgen (and :build (= 123.456.789)))
(atdgen-runtime (= 123.456.789))
...
)
...
)
ff51f96 to
5fbe2b4
Compare
> Error in sanddb.0.2: warning 61: `with-test` variable in `run-test` is > out of scope, it will be ignored
> Error in azure-cosmos-db.0.1.2: warning 37: Missing field 'dev-repo'
|
I think I fixed all the opam lint errors in the reverse dependencies. I didn't try to fix the warnings. |
|
I made edits to suppress the "warnings" that cause the lint job to fail. |
|
Thanks, I am going to send a separate PR to fix the remaining issues on monday and then merge this. Sorry for the wait |
|
thank you! |
|
Merging this to avoid conflicts in the separate PR |
|
Please ignore - see below Please note that apparently this PR broke the CI of Coq Platform for legacy Coq (8.16 ad 8.17). This CI did run daily for 2 years and broke yesterday. See @gares : FYI |
|
We can probably just put an upper bound |
|
Sorry for the confusion: this PR introduces an upper bound, so it fixes the problem. The issue with Coq Platform CI is that it has a patched opam package for elpi 1.6.9 to improve build reliability and I need to update the local patch. I checked if I have a local patch. but somehow looked in the wrong repo. |
|
So my fault - all is well. |
Parser for the ATD data format description language
CHANGES:
Algebraic data types (SumType) now uses
alias thissyntax.<json open_enum>in Melange (atdgen: add support for open_enum in melange ahrefs/atd#401)doublec++ type as default floating point type (atdcpp: use double by default instead of float ahrefs/atd#411)atdgenlibrary is no longer available.Use
atdgen-runtimeinstead (Remove the library 'atdgen' which has been deprecated since 2018 ahrefs/atd#421)type definitions are added to an ATD file, an
--ignoreoption is now available. It makes atddiff fail if some types
are neither selected via
--typesnor ignored via--ignore.