8000 Tags · ocaml-ppx/ppxlib · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Tags: ocaml-ppx/ppxlib

Tags

0.36.0

Toggle 0.36.0's commit message
Release 0.36.0

CHANGES:

- Change `Location.none` to match the compiler's `Location.none` as of OCaml
  4.08. This fixes a bug in `loc_of_attribute` (#540, @ncik-roberts, @patricoferris)

- Bump ppxlib's AST to 5.2.0 (#514, @patricoferris)

- Add the `[@@@expand_inline]` transformation and support for floating attribute context
  free transformations. (#560, @jaymody)

- Add a `-raise-embedded-errors` flag to the driver. Setting this flag raises the first
  `ocaml.error` embedded in the final AST.

- Export `Ast_pattern.fail`. (#563, @ceastlund)

- Make `Ast_traverse.sexp_of` more concise, and add a test. (#561, @ceastlund)

0.35.0

Toggle 0.35.0's commit message
Release 0.35.0

CHANGES:

- Allow use of effect syntax in preprocessed files without causing migration
  failures. (#552, @hhugo, @NathanReb)

- Remove support for compilers older than 4.08 (#556, @NathanReb)

- Add a `--use-compiler-pp` flag to the standalone driver. This flag
 can be set when the driver outputs source code to make it use the compiler's
 `Pprintast` instead of ppxlib's.
 (#555, @NathanReb)

0.34.0

Toggle 0.34.0's commit message
Release 0.34.0

CHANGES:

5.3 support is being added gradually over the course of its development.
This section should be updated with each relevant PR.

Note to maintainers: until 5.3 support is officially released, this section
should be excluded from the release, see [RELEASING.md](RELEASING.md) for
details.

- Add initial OCaml 5.3 support (#487, @NathanReb, @hhugo, @nojb)

- Initialise OCaml 5.3's lexer with the `keywords` setting from `OCAMLPARAM` or
  the new `-keywords` driver's CLI option to allow the standalone ppx driver to
  process old packages using `effect` as an identifier
  (#535, @dra27, @NathanReb)

- Add `Pprintast.binding`, `longident` and `payload` (#542, @mattiasdrp)

- Fix `deriving_inline` round-trip check so that it works with 5.01 <-> 5.02
  migrations (#519, @NathanReb)

- Add ppxlib's AST pretty-printing utilities in `Ppxlib.Pp_ast` and
  a `ppxlib-pp-ast` executable in a new separate `ppxlib-tools` package
  (#517, #525, #537, @NathanReb)

- Change `-dparsetree` from a sexp output to a pretty printed AST, closer
  to what the compiler's `-dparsetree` is.
  (#530, @NathanReb)

- Add Parsetree documentation comments to `Ast_builder` functions (#518, @patricoferris)

- Support class type declarations in derivers with the new, optional arguments
  `{str,sig}_class_type_decl` in `Deriving.add` (#538, @patricoferris)

0.33.0

Toggle 0.33.0's commit message
Release 0.33.0

CHANGES:

- Fix a bug where `Code_path.main_module_name` would not properly remove
  extensions from the filename and therefore return an invalid module name.
  (#512, @NathanReb)

- Add `-unused-type-warnings` flag to the driver to allow users to disable
  only the generation of warning 34 silencing structure items when using
  `[@@deriving ...]` on type declarations. (#511, @mbarbin, @NathanReb)

- Make `-unused-code-warnings` flag to the driver also controls the generation
  of warning 34 silencing structure items when using `[@@deriving ...]` on type
  declarations. (#510, @mbarbin, @NathanReb)

- Driver: Add `-unused-code-warnings=force` command-line flag argument. (#490, @mbarbin)

- new functions `Ast_builder.{e,p}list_tail` that take an extra tail
  expression/pattern argument parameter compared to `Ast_builder.{e,p}list`, so
  they can build ASTs like `a :: b :: c` instead of only `[ a; b ]`.
  (#498, #502, @v-gb, @NathanReb)

- Fix `Longident.parse` so it also handles indexing operators such as
  `.!()`, `.%(;..)<-`, or `Vec.(.%())` (#494, @Octachron)

- Add a `special_function'` variant which directly takes a `Longident.t`
  argument to avoid the issue that `Longident.t` cover distinct syntaxic classes
  which cannot be easily parsed by a common parser (#496, @Octachron).

- Keep location ranges consistent when migrating `Pexp_function` nodes from 5.2+
  to older versions (#504, @jchavarri)

- Fix `-locations-check` behaviour so it is no longer required to pass `-check`
  as well to enable location checks. (#506, @NathanReb)

0.32.1

Toggle 0.32.1's commit message
Release 0.32.1

CHANGES:

- Add support for OCaml 5.2

- Insert errors from caught located exceptions in place of the code that
  should have been generated by context-free rules. (#472, @NathanReb)

0.32.0

Toggle 0.32.0's commit message
Release 0.32.0

CHANGES:

- Add an optional `embed_errors` argument to `Context_free.map_top_down` that
  controls how to deal with exceptions thrown by context-free rules.
  (#468, @NathanReb)

- Fix `Longident.parse` so it properly handles unparenthesized dotted operators
  such as `+.` or `*.`. (#111, @rgrinberg, @NathanReb)

- raising an exception does no longer cancel the whole context free phase(#453, @Burnleydev1)

- Sort embedded errors that are appended to the AST by location so the compiler
  reports the one closer to the beginning of the file first. (#463, @NathanReb)

- Update `Attribute.get` to ignore `loc_ghost`. (#460, @ceastlund)

- Add API to manipulate attributes that are used as flags (#408, @dianaoigo)

- Update changelog to use ISO 8061 date format: YYYY-MM-DD. (#445, @ceastlund)

- Replace `Caml` with `Stdlib`. (#427, @ceastlund)

- When a transformation raises, the last valid AST is used as input to the upcoming
  transformations. All such errors are collected and appended as
  extension nodes to the final AST (#447, @Burnleydev1)

- Fix a small mistake in the man pages: Embededding errors is done by default with
  `-as-pp`, not with `-dump-ast` (#464, @pitag-ha)

- Set appropriate binary mode when writing to `stdout` especially for Windows
  compatibility. (#466, @jonahbeckford)

0.31.0

Toggle 0.31.0's commit message
Release 0.31.0

CHANGES:

- Fix support for OCaml 5.1: migrated code preserves generative
  functor warnings, without creating more. Locations are better
  preserved. (#432, @pitag-ha, @panglesd)

- Driver: Add `-unused-code-warnings` command-line flag. (#444, @ceastlund)

- Add `?warning` flag to `Deriving.Generator.make`. (#440, @jacksonzou123 via @ceastlund)

- Restore the "path_arg" functionality in the V3 API (#431, @ELLIOTTCABLE)

- Expose migration/copying/etc. functions for all AST types needed by `Pprintast` (#454, @antalsz)

- Preserve quoted attributes on antiquotes in metaquot (#441, @ncik-roberts)

- Attribute namespaces: Fix semantics of reserving multi-component namespaces (#443, @ncik-roberts)

0.30.0

Toggle 0.30.0's commit message
Release 0.30.0

CHANGES:

- Adopt the OCaml Code of Conduct on the repo (#426, @pitag-ha)

- Clean up misleading attribute hints when declared for proper context. (#425, @ceastlund)

- Ast_pattern now has ebool, pbool helper, and a new map.(#402, @Burnleydev1)

- multiple errors are now reported in `metaquot`. (#397, @Burnleydev1)

- Add `Attribute.declare_with_attr_loc` (#396, @dvulakh)

- Add "ns" and "res" as reserved namespaces(#388, @davesnx)

- Make quoter `let` binding non-recursive (#401, @sim642)

- Fix failure of 'lift_map_with_context' in traverse by compile-time
  evaluation of 'fst' and 'snd' (#390, @smuenzel)

- Driver: Bias the mapping from magic to version towards the current version,
  as it is usually the common case and it helps when magic numbers are
  ambiguous (such as on development versions) (#409, @shym)

- Remove unnecessary test dependencies towards base and stdio (#421, @kit-ty-kate)

- Update description to reflect that `ppxlib` contains more than a library
  (#422, @pitag-ha)

- Add support for OCaml 5.1, excluding OCaml `5.1.0~alpha1` (#428, @shym, @Octachron , @pitag-ha, @panglesd)
- Driver: Fix `-locations-check` option for coercions with ground  (#428, @Octachron)

0.29.1

Toggle 0.29.1's commit message
Release 0.29.1

CHANGES:

- Allow users to vendor `ppxlib` as-is, as well as `ppx_sexp_conv` in the same project (#386, @kit-ty-kate)

0.29.0

Toggle 0.29.0's commit message
Release 0.29.0

CHANGES:

- Remove `File_path` exports. (#381, @ceastlund)

- Add `Ppxlib.Expansion_helpers` with name mangling utilities from ppx_deriving (#370, @sim642)
0