SHA256
1
0
forked from pool/coq
Commit Graph

33 Commits

Author SHA256 Message Date
Aaron Puchert
4fddaa2fa7 - Update to version 8.19.2.
* Fixed a regression from Coq 8.18 in the presence of a defined
    field in a primitive `Record`.
  * Fixed an issue where the printer was sometimes failing to use a
    prefix or infix custom notation whose right-hand side refers to
    a different custom entry.
  * Fixed `abstract` failure in the presence of admitted goals in
    the surrounding proof.
  * Fixed issues when using Ltac2 in VsCoq due to incorrect state
    handling of Ltac2 notations.
  * Fixed `Include` on a module containing a record declared with
    `Primitive Projections`.
  * Fixed an issue in `Fixpoint` with no arguments.
  * Position error/warning tooltips correctly when multibyte UTF-8
    characters are present.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=65
2024-06-30 17:29:40 +00:00
Aaron Puchert
8870b507b6 - Update to version 8.19.1.
* Fixed incorrect abstraction of sort variables for opaque
    constants leading to an inconsistency.
  * Fixed memory corruption with `vm_compute` (rare but more
    likely with OCaml 5.1).
  * "Found no matching notation to enable or disable" is now a
    warning instead of an error.
  * Fixed undeclared universe with multiple uses of `abstract`.
  * Fixed incorrect printing of constructor values with multiple
    arguments, and over-parenthesizing of constructor printing.
  * Fixed incorrect declared type for Ltac2.FMap.fold.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=63
2024-03-07 23:33:38 +00:00
Aaron Puchert
042203acb7 - Update to version 8.19.0. The most impactful changes:
* Sort polymorphism makes it possible to share common constructs
    over `Type`, `Prop` and `SProp`.
  * The notation `term%_scope` to set a scope only temporarily (in
    addition to `term%scope` for opening a scope applying to all
    subterms).
  * Tactics `lazy`, `simpl`, `cbn` and `cbv` and the associated
    `Eval` and `eval` reductions learned to do head reduction when
    given flag head.
  * New Ltac2 APIs, improved Ltac2 `exact` and dynamic building of
    Ltac2 term patterns.
  * New performance evaluation facilities: `Instructions` to count
    CPU instructions used by a command (Linux only) and Profiling
    system to produce trace files.
  * New command `Attributes` to assign attributes such as
    `deprecated` to a library file.
- Notable breaking changes:
  * `replace` with `by tac` does not automatically attempt to solve
    the generated equality subgoal using the hypotheses. Use `by
    first [assumption | symmetry;assumption | tac]` if you need the
    previous behaviour.
  * Removed old deprecated files from the standard library. 
- Use %fdupes in the documentation package.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=60
2024-01-28 20:41:21 +00:00
Aaron Puchert
669ef86008 - Increase stack size limit in QEMU user space builds. Here ulimit
has no effect, so we add a wrapper around ocamlopt.opt to PATH
  that adds "-s ..." to the qemu-<arch> command line.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=57
2023-11-12 22:55:08 +00:00
Aaron Puchert
d5b741161a - Revert last change: this is now set in ocaml-rpm-macros.
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=56
2023-11-11 00:35:56 +00:00
Aaron Puchert
ad9d18ea83 - Increase stack size limit to fix build on riscv64.
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=54
2023-10-30 22:28:37 +00:00
Aaron Puchert
111d6555f8 - Update to version 8.18.0.
* The default locality of `Hint` and `Instance` commands was
    switched to `export`.
  * The universe unification algorithm can now delay the commitment
    to a sort (the algorithm used to pick `Type`). Thanks to this
    feature many `Prop` and `SProp` annotations can be now omitted.
  * Ltac2 supports array literals, maps and sets of primitive
    datatypes such as names (of constants, inductive types, etc)
    and fine-grained control over profiling.
  * The warning system offers new categories, enabling finer
    (de)activation of specific warnings. This should be
    particularly useful to handle deprecations.
  * Many new lemmas useful for teaching analysis with Coq are now
    part of the standard library about real numbers.
  * The `#[deprecated]` attribute can now be applied to definitions.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=52
2023-09-17 00:40:53 +00:00
Aaron Puchert
edfae7dd86 - Update to version 8.17.1.
* Fixed incorrect paths emitted by coqdep in some cases for META
    files which prevented dune builds for plugins from working
    correctly.
  * Fixed shadowing of record fields in extraction to OCaml.
  * Fixed an impossible-to-turn-off debug message "backtracking and
    redoing byextend on ...".
  * Fixed a major memory regression affecting MathComp 2.
- Classify desktop entry under Science instead of Education.
- Add screenshot URL to AppStream metadata.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=50
2023-06-28 23:04:37 +00:00
Aaron Puchert
312f3c055e - Update to version 8.17.0.
* Fixed a logical inconsistency due to `vm_compute` in presence
    of side-effects in the enviroment (e.g. using Back or Fail).
  * It is now possible to dynamically enable or disable notations.
  * Support multiple scopes in `Arguments` and `Bind Scope`.
  * The tactics chapter of the manual has many improvements in
    presentation and wording. The documented grammar is semi-
    automatically checked for consistency with the implementation.
  * Fixes to the `auto` and `eauto` tactics, to respect hint
    priorities and the documented use of simple apply. This is a
    potentially breaking change.
  * New Ltac2 APIs, deep pattern-matching with `as` clauses and
    handling of literals, support for record types and preterms.
  * Move from :> to :: syntax for declaring typeclass fields as
    instances, fixing a confusion with declaration of coercions.
  * Standard library improvements.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=48
2023-03-29 01:36:33 +00:00
Aaron Puchert
02f83d6668 - Build with ocaml-rpm-macros to get proper Requires and Provides
for coq-devel. This should prevent incompatibilities with other
  Ocaml libraries when building native objects against coq-devel.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=46
2023-01-26 23:03:52 +00:00
Aaron Puchert
44fe8f3492 - Update to version 8.16.1.
* Fixed the conversion of `Prod` values in the native compiler.
  * Added `SProp` check for opaque names in conversion.
  * Pass the correct environment to compute η-expansion of
    cofixpoints in VM and native compilation.
  * Fixed an inconsistency with conversion of primitive arrays, and
    associated incomplete strong normalization of primitive arrays
    with `lazy`.
  * `Print Assumptions` treats opaque definitions with missing
    proofs (as found in .vos files, produced using -vos) as axioms
    instead of ignoring them.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=44
2022-11-26 22:51:51 +00:00
Aaron Puchert
6dee5e36dc - Update to version 8.16.0.
* The guard checker (see `Guarded`) now ensures strong
    normalization under any reduction strategy.
  * Irrelevant terms (in the `SProp` sort) are now squashed to a
    dummy value during conversion, fixing a subject reduction 
    issue and making proof conversion faster.
  * Introduction of reversible coercions, which allow coercions 
    relying on meta-level resolution such as type-classes or 
    canonical structures. Also allow coercions that do not fullfill
    the uniform inheritance condition.
  * Generalized rewriting support for rewriting with `Type`-valued 
    relations and in `Type` contexts, using the
    `Classes.CMorphisms` library.
  * Added the boolean equality scheme command for decidable 
    inductive types.
  * Added a `Print Notation` command.
  * Incompatibilities in name generation for Program obligations,
    `eauto` treatment of tactic failure levels, use of `ident` in
    notations, parsing of module expressions.
  * Standard library reorganization and deprecations.
  * Improve the treatment of standard library numbers by
    `Extraction`.
- Coq requires ocamlfind at runtime now.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=42
2022-09-08 21:21:24 +00:00
Aaron Puchert
9b2016e937 - Update to version 8.15.2.
* Tactics `intuition` and `dintuition` use
    `Tauto.intuition_solver` (defined as `auto with *`) instead of
    hardcoding `auto with *`. This makes it possible to change the
    default solver with `Ltac Tauto.intuition_solver ::= ...`.
  * Fixed an uncaught exception `UnableToUnify` with
    bidirectionality hints.
  * Fixed multiple CoqIDE bugs.
  * Fixed an incorrect implementation of `SFClassify`, allowing for
    a proof of `False` since 8.11.0, due to Axioms present in
    `Float.Axioms`.
- Rename coq.desktop to fr.inria.coq.coqide.desktop as the
  documentation suggests, add an accompanying metainfo file.
- Declare documentation as noarch.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=40
2022-06-01 21:48:29 +00:00
Aaron Puchert
660b7caabf - Update to version 8.15.1.
* Fixes an inconsistency when using module subtyping with
    inductive types.
  * Speeds up CoqIDE on large files.
  * Fixes a bug where `coqc -vok` was not creating a .vok file.
  * Fixes a regression in `cbn`.
  * Improves usability of schemes with `elim foo using scheme with
    (P0 := ...)` (the `P0` name was not accessible in 8.15.0).

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=38
2022-03-24 22:47:19 +00:00
Aaron Puchert
da8ddfc177 - Update to version 8.15.0.
* The `apply with` tactic no longer renames arguments unless
    the compatibility flag `Apply With Renaming` is set.
  * Improvements to the `auto` tactic family, fixing `Hint Unfold`
    behavior, and generalizing the use of discrimination nets.
  * The `typeclasses eauto` tactic has a new `best_effort` option
    allowing it to return partial solutions to a proof search
    problem, depending on the mode declarations associated to each
    constraint. This mode is used by typeclass resolution during
    type inference to provide more precise error messages.
  * Many commands and options were deprecated or removed after
    deprecation and more consistently support locality attributes.
  * The `Import` command is extended with `import_categories` to
    select the components of a module to import or not, including
    features such as hints, coercions, and notations.
  * A visual Ltac debugger is now available in CoqIDE.
  * For more details, see refman/changes.html in coq-doc.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=37
2022-01-15 19:42:50 +00:00
Aaron Puchert
4e1d685c4c - Update to version 8.14.1.
* Fixed the implementation of persistent arrays used by the VM
    and native compute so that it uses a uniform representation.
    Previously, storing primitive floats inside primitive arrays
    could cause memory corruption.
  * Fixed missing registration of universe constraints in Module
    Type elaboration.
  * Made `abstract` more robust with respect to Ltac `constr`
    bindings containing existential variables.
  * Correct support of trailing `let` by tactic `specialize`.
  * Fixed an anomaly with `Extraction Conservative Types` when
    extracting pattern-matching on singleton types.
  * Regular error instead of an anomaly when calling `Separate
    Extraction` in a module.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=36
2021-12-12 21:22:34 +00:00
Aaron Puchert
f595c547f2 OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=34 2021-10-20 23:30:38 +00:00
Aaron Puchert
eed432c976 - Add documentation package based on github.com/coq/doc until we
can build the documentation directly in OBS.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=32
2021-09-04 12:54:51 +00:00
Aaron Puchert
d0636cc204 Accepting request 889763 from home:aaronpuchert
- Update to version 8.13.2.
  * Fix crash when using vm_compute on an irreducible PArray.set.
  * Fix crash when loading .vo files containing a vm_compute
    normalized primitive array.
  * Fix Ltac2.Array.init computational complexity.

OBS-URL: https://build.opensuse.org/request/show/889763
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=30
2021-05-01 21:33:33 +00:00
Aaron Puchert
7777299bac - Update to version 8.13.1.
* Fix arities of VM opcodes for some floating-point operations
    that could cause memory corruption.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=28
2021-02-25 23:36:41 +00:00
Aaron Puchert
2b13e5c237 Accepting request 870151 from home:aaronpuchert
- Update to version 8.13.0.
  * Introduction of primitive persistent arrays in the core
    language, implemented using imperative persistent arrays.
  * Introduction of definitional proof irrelevance for the equality
    type defined in the SProp sort.
  * Cumulative record and inductive type declarations can now
    specify the variance of their universes.
  * Various bugfixes and uniformization of behavior with respect to
    the use of implicit arguments and the handling of existential
    variables in declarations, unification and tactics.
  * New warning for unused variables in catch-all match branches
    that match multiple distinct patterns.
  * New warning for Hint commands outside sections without a
    locality attribute, whose goal is to eventually remove the
    fragile default behavior of importing hints only when using
    Require. The recommended fix is to declare hints as export,
    instead of the current default global, meaning that they are
    imported through Require Import only, not Require.
  * General support for boolean attributes.
  * Many improvements to the handling of notations, including
    number notations, recursive notations and notations with
    bindings. A new algorithm chooses the most precise notation
    available to print an expression, which might introduce changes
    in printing behavior.
  * Tactic improvements in lia and its zify preprocessing step,
    now supporting reasoning on boolean operators such as Z.leb and
    supporting primitive integers Int63.
  * Typing flags can now be specified per-constant / inductive.
  * Improvements to the reference manual including updated syntax
    descriptions that match Coq's grammar in several chapters, and
    splitting parts of the tactics chapter to independent sections.
- Add build flag to turn off building of the IDE.

OBS-URL: https://build.opensuse.org/request/show/870151
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=26
2021-02-07 23:06:30 +00:00
Aaron Puchert
e78df31e71 - Update to version 8.12.2. Fixes two impacting 8.12 regressions:
* Fixed a regression causing notations mentioning a coercion to
    be ignored.
  * Fixed a regression causing incomplete inference of implicit
    arguments in exists.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=24
2020-12-13 17:13:48 +00:00
Aaron Puchert
c3225375ef - Update to version 8.12.1. This contains mostly bug fixes:
* Polymorphic side-effects inside monomorphic definitions were
    incorrectly handled as not inlined. This allowed deriving an
    inconsistency.
  * Regression in error reporting after SSReflect's case tactic.
    A generic error message "Could not fill dependent hole in
    apply" was reported for any error following case or elim.
  * Several bugs with Search.
  * The details environment introduced in coqdoc in Coq 8.12 can
    now be used as advertised in the reference manual.
  * View menu "Display parentheses" introduced in CoqIDE in
    Coq 8.12 now works correctly.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=22
2020-11-17 22:12:19 +00:00
Aaron Puchert
2cfc0855cf Accepting request 828043 from home:marxin:memory-constraint
Use memoryperjob constraint instead of %limit_build macro.

OBS-URL: https://build.opensuse.org/request/show/828043
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=21
2020-08-20 12:25:06 +00:00
Aaron Puchert
226481272d - Update to version 8.12.0.
* New binder notation for non-maximal implicit arguments using []
    allowing to set and see the implicit status of arguments
    immediately.
  * New notation Inductive "I A | x : s := ..." to distinguish the
    uniform from the non-uniform parameters in inductive
    definitions.
  * More robust and expressive treatment of implicit inductive
    parameters in inductive declarations.
  * Improvements in the treatment of implicit arguments and
    partially applied constants in notations, parsing of
    hexadecimal number notation and better handling of scopes and
    coercions for printing.
  * A correct and efficient coercion coherence checking algorithm,
    avoiding spurious or duplicate warnings.
  * An improved Search command which accepts complex queries. This
    takes precedence over the now deprecated ssreflect search.
  * Many additions and improvements of the standard library.
  * Improvements to the reference manual include a more logical
    organization of chapters along with updated syntax descriptions
    that match Coq's grammar in most but not all chapters.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=19
2020-08-05 21:55:19 +00:00
Aaron Puchert
de34c223a6 - Update to version 8.11.2.
* Fixed a kernel issue where using Require inside a section
    caused an anomaly when closing the section.
  * Fixed normalization in conclusion of custom induction scheme.
  * Fixed a loss of location of some tactic errors.
  * Ignore -native-compiler option when built without native
    compute support.
  * Fixed a segfault issue with CoqIDE completion.
  * Highlighting style is now consistently applied to all three
    buffers of CoqIDE.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=17
2020-06-06 12:12:35 +00:00
Aaron Puchert
402a945db4 - Update to version 8.11.1, with upstream support for OCaml 4.10.
* Allow more inductive types in Unset Positivity Checking mode.
  * Fixed bugs in dealing with precedence of notations in custom
    entries.
  * In primitive floats, print a warning when parsing a decimal
    value that is not exactly a binary64 floating-point number.
    For instance, parsing 0.1 will print a warning whereas parsing
    0.5 won't.
  * Fixed an issue in CoqIDE about compiling file paths containing
    spaces.
  * Fixed an issue where Extraction Implicit on the constructor of
    a record was leading to an anomaly.
- Remove now obsolete ocaml-410-build.patch.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=15
2020-04-08 23:19:34 +00:00
Aaron Puchert
504ea95368 - The num library is required for OCaml 4.06 or later.
- Add ocaml-410-build.patch: fix build with OCaml 4.10.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=11
2020-03-29 22:08:07 +00:00
Aaron Puchert
fcdc0a168f Accepting request 774600 from home:aaronpuchert
- Update to version 8.11.0.
  * Ltac2, a new tactic language for writing more robust larger
    scale tactics, with built-in support for datatypes and the
    multi-goal tactic monad.
  * Primitive floats are integrated in terms and follow the binary64
    format of the IEEE 754 standard, as specified in the
    Coq.Float.Floats library.
  * Many other cleanups and improvements have been performed and
    are further described in the changelog.
  * Special note on compatibility: Fixed bugs of Export and Import
    that can have a significant impact on user developments.
- Drop unneeded empty *.vos files.
- Update to version 8.10.2.
  * Fixed a critical bug of template polymorphism and nonlinear
    universes;
  * Fixed a few anomalies;
  * Fixed an 8.10 regression related to the printing of coercions
    associated to notations;
  * Fixed uneven dimensions of CoqIDE panels when window has been
    resized;
  * Fixed queries in CoqIDE.
- Update to version 8.10.0.
  * some quality-of-life bug fixes;
  * a critical bug fix related to template polymorphism;
  * native 63-bit machine integers;
  * a new sort of definitionally proof-irrelevant propositions: SProp;
  * private universes for opaque polymorphic constants;
  * string notations and numeral notations;
  * a new simplex-based proof engine for the tactics lia, nia, lra
    and nra;
  * new introduction patterns for SSReflect;
  * a tactic to rewrite under binders: under;
  * easy input of non-ASCII symbols in CoqIDE, which now uses GTK3.
- Update to version 8.10.1.
  * Fix proof of False when using SProp
  * Fix an anomaly when unsolved evar in Add Ring
  * Fix Ltac regression in binding free names in uconstr
  * Fix handling of unicode input before space
  * Fix custom extraction of inductives to JSON
- Update version requirements.

OBS-URL: https://build.opensuse.org/request/show/774600
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=9
2020-02-15 19:32:26 +00:00
Aaron Puchert
f2a34ee4a1 - Fix findlib build dependency.
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=7
2019-11-13 01:44:06 +00:00
Aaron Puchert
bc5f5c08e6 - Use memory-constraints package to limit number of threads.
- Add dependencies to fix installation issues.

OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=6
2019-11-03 18:30:53 +00:00
Aaron Puchert
057e1be183 - Prevent OOM by limiting the number of threads.
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=2
2019-09-25 20:17:00 +00:00
928f86c4f8 Accepting request 733035 from home:aaronpuchert
- Initial release based on version 8.9.1.

OBS-URL: https://build.opensuse.org/request/show/733035
OBS-URL: https://build.opensuse.org/package/show/science/coq?expand=0&rev=1
2019-09-25 09:10:33 +00:00