1
1
mirror of https://github.com/anoma/juvix.git synced 2024-12-14 08:27:03 +03:00
juvix/tests/positive
Paul Cadman 9bfe20e323
Version the PackageDescription module (#2478)
This PR adds a version number to the module name of the
`PackageDescription` module. This allows us to change the Package file
format in a backwards compatible way in the future.

Now the simplest Package.juvix file looks like:

```
module Package;

import PackageDescription.V1 open;

package : Package := defaultPackage;
```

## Adding new versions

The idea is that new versions of the PackageDescription format will be
added as files of the form:
include/package/PackageDescription/Vx.juvix

The correspondence between a version of the PackageDescription file and
the package type name is recorded in
[`packageDescriptionTypes`](9ba869d836/src/Juvix/Compiler/Pipeline/Package/Loader.hs (L15)).

The `package` identifier type must come from **one** of the versions
of the PackageDescription module.

* Closes https://github.com/anoma/juvix/issues/2452
2023-10-30 11:33:36 +00:00
..
265 Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
272 Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
BuiltinsMultiImport Fix: format juvix files in test/positive (#1978) 2023-04-12 10:07:01 +02:00
BuiltinsMultiOpenImport Fix Makefile target bugs for formatting and type Checking Juvix files (#2057) 2023-05-19 17:33:56 +02:00
Dependencies Fix Makefile target bugs for formatting and type Checking Juvix files (#2057) 2023-05-19 17:33:56 +02:00
FancyPaths Remove open import syntax (#2307) 2023-08-25 16:43:34 +02:00
ImportAsOpen Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
Imports New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
ImportShadow Add new case syntax (#2353) 2023-09-13 11:58:08 +01:00
InstanceImport Fix instance import (#2350) 2023-09-13 13:46:30 +02:00
Internal Fix case formatting (#2387) 2023-09-26 10:11:46 +02:00
issue1333 Fix: format juvix files in test/positive (#1978) 2023-04-12 10:07:01 +02:00
issue1466 New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
issue1693 Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
issue1731 Numeric, ordering and equality traits (#2433) 2023-10-09 18:25:01 +02:00
issue1879 Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
issue2163 Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
issue2248 Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
issue2296 Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
issue2373 Add nodes with no edges to the dependency graph (#2390) 2023-09-26 13:17:50 +02:00
NoDependencies Support module imports in Juvix REPL (#2029) 2023-05-08 12:23:15 +02:00
package Version the PackageDescription module (#2478) 2023-10-30 11:33:36 +00:00
PackageLoader Version the PackageDescription module (#2478) 2023-10-30 11:33:36 +00:00
QualifiedConstructor Improve formatting of single-constructor types and records (#2342) 2023-09-07 16:20:14 +02:00
QualifiedImports Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
QualifiedSymbol Improve formatting of comments (#2022) 2023-04-24 16:46:05 +02:00
QualifiedSymbol2 Make format command's filepath optional (#2028) 2023-04-27 17:33:08 +02:00
Reachability New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
StdlibImport Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
StdlibList New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
Termination Ignore instance arguments in the termination checker (#2435) 2023-10-06 12:09:15 +02:00
UsingHiding Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
Adt.juvix Improve formatting of single-constructor types and records (#2342) 2023-09-07 16:20:14 +02:00
Alias.juvix Add fixity none and make aliases inherit fixity (#2391) 2023-09-26 11:28:50 +02:00
Ape.juvix New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
Axiom.juvix Fix: format juvix files in test/positive (#1978) 2023-04-12 10:07:01 +02:00
Builtins.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
BuiltinsBool.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
DefaultValues.juvix Add default arguments (#2408) 2023-10-10 23:28:06 +02:00
Format.juvix Format long list literals by splitting using pre-comma multiline (#2477) 2023-10-30 10:09:48 +01:00
FormatPragma.juvix Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
HoleTypeParameter.juvix Fix for crash with wildcard used in type definition (#2405) 2023-10-02 18:58:21 +02:00
IdInType.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
Inductive.juvix Improve formatting of single-constructor types and records (#2342) 2023-09-07 16:20:14 +02:00
InductivePipes.juvix Improve formatting of single-constructor types and records (#2342) 2023-09-07 16:20:14 +02:00
InstanceAxiom.juvix Fix instance axiom bug (#2439) 2023-10-10 15:55:17 +02:00
Iterators.juvix New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
Judoc.juvix Improve formatting of single-constructor types and records (#2342) 2023-09-07 16:20:14 +02:00
juvix.yaml Rename MiniJuvix to Juvix (#259) 2022-07-08 13:59:45 +02:00
LambdaCalculus.juvix Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
LetOpen.juvix Allow open statements in let expressions (#2395) 2023-10-02 23:13:45 +02:00
LetShadow.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
Literals.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
LocalSynonym.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
MultiParams.juvix Improve formatting of single-constructor types and records (#2342) 2023-09-07 16:20:14 +02:00
MutualLet.juvix Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
MutualType.juvix New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
NamedArguments.juvix Improve iterator and named arguments parsing (#2278) 2023-08-15 15:28:10 +02:00
Namespaces.juvix Separate modules namespace (#2257) 2023-07-26 09:59:50 +02:00
NestedPatterns.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
OmitType.juvix Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
Operators.juvix New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
Parsing.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
Polymorphism.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
PolymorphismHoles.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
Pragmas.juvix Format juvix files using new function syntax (#2245) 2023-07-11 17:22:07 +02:00
Projections.juvix Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
RecordPattern.juvix Record patterns (#2271) 2023-08-08 16:01:20 +02:00
Records2.juvix Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
Records.juvix Improve formatting of single-constructor types and records (#2342) 2023-09-07 16:20:14 +02:00
ShadowPublicOpen.juvix Fix: format juvix files in test/positive (#1978) 2023-04-12 10:07:01 +02:00
SignatureWithBody.juvix Remove old function syntax (#2305) 2023-08-24 16:24:47 +02:00
Symbols.juvix User-friendly operator declaration syntax (#2270) 2023-08-09 18:15:51 +02:00
Syntax.juvix New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
Traits.juvix Traits (#2320) 2023-09-08 12:16:43 +02:00
TypeAlias.juvix New fixity/iterator syntax (#2332) 2023-09-14 10:57:38 +02:00
WildcardArguments.juvix Allow wildcard arguments in new function definition syntax (#2295) 2023-08-16 17:51:09 +02:00