Skip to content

Commit 2d514b2

Browse files
feat: openkal 0.2.0 and openkal-linux 0.2.0 (#221)
The specification now owns the interface. Version 0.1 placed the module a consumer imports under the control of the implementation: the specification package provided openkal.decl.<name> and the implementation re-exported it as openkal.<name>. That contradicts what a specification is for, and it made the name a consumer relies upon the property of a party the specification does not govern. consumer --imports--> openkal <--imports-- implementation | | +------------ links against ---------------+ An implementation now contributes definitions and exports no module. It imports the same interface a consumer imports, because it needs the declarations it is defining. The earlier arrangement existed to support detection of optional operations through argument-dependent lookup, which requires an implementation's declarations to be visible to the consumer. Version 0.1 defined no optional operation, so the mechanism served nothing that existed, and clause 6.3 now records the alternatives and the measurements that constrain them. 0.1.0 is replaced rather than retained. Two incompatible specifications under one name would be worse than the absence of the earlier one, which no project uses. Co-authored-by: speak-agent <x.d2learn.org@gmail.com>
1 parent 88258e9 commit 2d514b2

2 files changed

Lines changed: 29 additions & 24 deletions

File tree

pkgs/o/openkal-linux.lua

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,30 +19,30 @@ package = {
1919

2020
xpm = {
2121
linux = {
22-
["0.1.0"] = {
22+
["0.2.0"] = {
2323
url = {
24-
GLOBAL = "https://github.com/mcpplibs/openkal-linux/archive/refs/tags/0.1.0.tar.gz",
25-
CN = "https://gitcode.com/mcpp-res/openkal-linux/releases/download/0.1.0/openkal-linux-0.1.0.tar.gz",
24+
GLOBAL = "https://github.com/mcpplibs/openkal-linux/archive/refs/tags/0.2.0.tar.gz",
25+
CN = "https://gitcode.com/mcpp-res/openkal-linux/releases/download/0.2.0/openkal-linux-0.2.0.tar.gz",
2626
},
27-
sha256 = "ea00efa54c5bb3f62b29a9cfd5c8f8f3f32d8ddc6a1da75477893e2c7aca7223",
27+
sha256 = "0007231fa59852f13ac3a0048033c9efbe6772c39545bbfb36f230c6ffd8a654",
2828
},
2929
},
3030
macosx = {
31-
["0.1.0"] = {
31+
["0.2.0"] = {
3232
url = {
33-
GLOBAL = "https://github.com/mcpplibs/openkal-linux/archive/refs/tags/0.1.0.tar.gz",
34-
CN = "https://gitcode.com/mcpp-res/openkal-linux/releases/download/0.1.0/openkal-linux-0.1.0.tar.gz",
33+
GLOBAL = "https://github.com/mcpplibs/openkal-linux/archive/refs/tags/0.2.0.tar.gz",
34+
CN = "https://gitcode.com/mcpp-res/openkal-linux/releases/download/0.2.0/openkal-linux-0.2.0.tar.gz",
3535
},
36-
sha256 = "ea00efa54c5bb3f62b29a9cfd5c8f8f3f32d8ddc6a1da75477893e2c7aca7223",
36+
sha256 = "0007231fa59852f13ac3a0048033c9efbe6772c39545bbfb36f230c6ffd8a654",
3737
},
3838
},
3939
windows = {
40-
["0.1.0"] = {
40+
["0.2.0"] = {
4141
url = {
42-
GLOBAL = "https://github.com/mcpplibs/openkal-linux/archive/refs/tags/0.1.0.tar.gz",
43-
CN = "https://gitcode.com/mcpp-res/openkal-linux/releases/download/0.1.0/openkal-linux-0.1.0.tar.gz",
42+
GLOBAL = "https://github.com/mcpplibs/openkal-linux/archive/refs/tags/0.2.0.tar.gz",
43+
CN = "https://gitcode.com/mcpp-res/openkal-linux/releases/download/0.2.0/openkal-linux-0.2.0.tar.gz",
4444
},
45-
sha256 = "ea00efa54c5bb3f62b29a9cfd5c8f8f3f32d8ddc6a1da75477893e2c7aca7223",
45+
sha256 = "0007231fa59852f13ac3a0048033c9efbe6772c39545bbfb36f230c6ffd8a654",
4646
},
4747
},
4848
},

pkgs/o/openkal.lua

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
--
33
-- Form A because the package is described by its own mcpp.toml.
44
--
5+
-- 0.1.0 is replaced rather than retained. It placed the module a consumer
6+
-- imports under the control of the implementation, which contradicts what
7+
-- the specification is for; two incompatible specifications under one name
8+
-- would be worse than the absence of the earlier one, which no project uses.
9+
--
510
-- No `deps`. This package declares and does not define; it needs neither a
611
-- toolchain payload nor a target sysroot, and the implementation that supplies
712
-- the definitions is selected by the consuming project as a conditional
@@ -17,30 +22,30 @@ package = {
1722

1823
xpm = {
1924
linux = {
20-
["0.1.0"] = {
25+
["0.2.0"] = {
2126
url = {
22-
GLOBAL = "https://github.com/mcpplibs/openkal/archive/refs/tags/0.1.0.tar.gz",
23-
CN = "https://gitcode.com/mcpp-res/openkal/releases/download/0.1.0/openkal-0.1.0.tar.gz",
27+
GLOBAL = "https://github.com/mcpplibs/openkal/archive/refs/tags/0.2.0.tar.gz",
28+
CN = "https://gitcode.com/mcpp-res/openkal/releases/download/0.2.0/openkal-0.2.0.tar.gz",
2429
},
25-
sha256 = "81952cf4c608cb7ffe4f01c01b0d28a6c606f28ea30b2840de33834917c54f36",
30+
sha256 = "461865b784dbb2eb70f757e11889428e1551e297878877c424d429ff3a55281b",
2631
},
2732
},
2833
macosx = {
29-
["0.1.0"] = {
34+
["0.2.0"] = {
3035
url = {
31-
GLOBAL = "https://github.com/mcpplibs/openkal/archive/refs/tags/0.1.0.tar.gz",
32-
CN = "https://gitcode.com/mcpp-res/openkal/releases/download/0.1.0/openkal-0.1.0.tar.gz",
36+
GLOBAL = "https://github.com/mcpplibs/openkal/archive/refs/tags/0.2.0.tar.gz",
37+
CN = "https://gitcode.com/mcpp-res/openkal/releases/download/0.2.0/openkal-0.2.0.tar.gz",
3338
},
34-
sha256 = "81952cf4c608cb7ffe4f01c01b0d28a6c606f28ea30b2840de33834917c54f36",
39+
sha256 = "461865b784dbb2eb70f757e11889428e1551e297878877c424d429ff3a55281b",
3540
},
3641
},
3742
windows = {
38-
["0.1.0"] = {
43+
["0.2.0"] = {
3944
url = {
40-
GLOBAL = "https://github.com/mcpplibs/openkal/archive/refs/tags/0.1.0.tar.gz",
41-
CN = "https://gitcode.com/mcpp-res/openkal/releases/download/0.1.0/openkal-0.1.0.tar.gz",
45+
GLOBAL = "https://github.com/mcpplibs/openkal/archive/refs/tags/0.2.0.tar.gz",
46+
CN = "https://gitcode.com/mcpp-res/openkal/releases/download/0.2.0/openkal-0.2.0.tar.gz",
4247
},
43-
sha256 = "81952cf4c608cb7ffe4f01c01b0d28a6c606f28ea30b2840de33834917c54f36",
48+
sha256 = "461865b784dbb2eb70f757e11889428e1551e297878877c424d429ff3a55281b",
4449
},
4550
},
4651
},

0 commit comments

Comments
 (0)