Releases: realworldocaml/mdx
Releases · realworldocaml/mdx
1.11.0
CHANGES:
Changed
Deprecated
- Add a deprecation warning for toplevel blocks that are not terminated with
;;
(#342, @Leonidas-from-XIV)
Fixed
- Fix accidental redirect of stderr to stdout (#343, @Leonidas-from-XIV)
- Remove trailing whitespaces that were added to indent empty lines (#341, @gpetiot)
1.10.1
1.10.0
1.9.0
1.8.1
1.8.0
CHANGES:
Added
- Allow to explicitly set the kind of blocks in labels:
ocaml
,cram
,toplevel
orinclude
. (#237, @gpetiot) - Include blocks do not require an empty block anymore (#286, @gpetiot)
- Support for OCaml 4.12 (#298, @kit-ty-kate)
Changed
Fixed
- Report
#require
directive errors (#276, @gpetiot) - Handle no such file exception: the input file and the values of options
--root
and--prelude
are checked (#292, @gpetiot) - Keep locations from parsing instead of recomputing the lines, providing better error messages (#241, @gpetiot)
- Use
create_process
instead ofexecvp
to callmdx-test
frommdx
. This fixes running mdx from dune on Windows (#299, @emillon)
1.7.0
CHANGES:
Added
- HTML comments can carry block labels (#234, @gpetiot)
The syntax is:<!-- $MDX labels -->
, wherelabels
is a list of valid
labels separated by a comma. This line has to immediately precede the block
it is attached to. The legacy syntax is preserved and will be deprecated in a
later release. - Add support for toplevel blocks in
.mli
files' doc comments (#206, @jsomers) - Add support for OCaml 4.11 (#261, @kit-ty-kate)
Changed
- Apply unnamed preludes to all environments (#271, @gpetiot)
New behavior:env_and_file "a:f"
associatesf
to the environment nameda
env_and_file " :f"
associatesf
to the default environmentenv_and_file "f"
associatesf
to all environments.
- Errors in non toplevel OCaml blocks are now printed to a seperate
mdx-error
code block
following the ocaml block instead of crashing the mdx process. Thosemdx-error
blocks
are recognized and checked by mdx and can be intentionally used to show case specific
compile errors. (#238, @gpetiot) - Improve error reporting for invalid
(* $MDX part-... *)
delimiters (#250, @gpetiot)
Deprecated
Fixed
- Fix the environment selection for preludes and slightly improve quality
of type names in evaluations of toplevel phrases in certain cases. (#225, @gpetiot) - Fix toplevel parsing when phrases contain tabs (#240, @gpetiot)
- Avoid adding newlines to empty blocks (#253, @gpetiot)
- Preserve the indentation of included files (#259, @gpetiot)
- Preserve the header in shell blocks (#249, @craigfe)
- Support underscores in environment variables in
set-
andunset-
labels (#257, @shonfeder) - Fix mdx on Windows which was looking for the ocaml-mdx-test binary at the wrong place
(#263, @hcarty) - Properly report mdx parsing errors instead of crashing with an uncaught exception (#267, @gpetiot)
1.6.0
CHANGES:
Added
- Add a
--duniverse-mode
toocaml-mdx rule
so that the generated rules work
within a duniverse - Allow to import arbitrary files (not only .ml/.mli ones) into code blocks using
thefile
label. (#203, #207, @voodoos) - Allow to set the
--non-deterministic
option through theMDX_RUN_NON_DETERMINISTIC
env variables (#208, @NathanReb) - Add support for OCaml 4.10 (#204, @kit-ty-kate)
- Infer syntax kind when
--syntax
is not set, and add 'markdown' as an alias to 'normal' (#222, @gpetiot) - Add
ocaml-mdx deps
command to be used by dune to compute file and dir dependencies of an
mdx file. (#217, @voodoos) - Add new delimiters syntax using comments for partial OCaml files include (#212, @voodoos).
Changed
- Do not unset
INSIDE_DUNE
when executing shell commands by default (#224, @NathanReb)
Fixed
- Fix a bug that could cause
ocaml-mdx test
to crash on someinclude
in toplevel code blocks
(#202, @trefis)
Removed
1.5.0
CHANGES:
Added
- Add a
--output
/-o
option to thetest
subcommand to allow specifying a different
output file to write the corrected to, or to write it to the standard output (#194, @NathanReb) - Migrate to OCaml 4.08 AST to add support for
let*
bindings (#190, @gpetiot) - Add
--syntax
option torule
subcommand to allow generating rules for cram
tests (#177, @craigfe) - Add a
require-package
label to explicitly declare dunepackage
dependencies of a code block
(#149, @Julow) - Add an
unset-
label to unset env variables in shell blocks (#132, @clecat)
Changed
- Format rules generated by
ocaml-mdx rule
usingdune format-dune-file
(#184, @NathanReb) - Run promotion of markdown files before
.ml
files in generated dune rules (#140, @clecat)
Fixed
- Use module_presence information on Env.summary to prevent fetching absent modules from the
toplevel env (#186, @clecat) - Remove trailing whitespaces at the end of toplevel or bash evaluation lines
(#166, @clecat) - Improve error reporting of ocaml-mdx test (#172, @Julow)
- Rule: Pass the --section option to
test
(#176, @Julow) - Remove trailing whitespaces from shell outputs and toplevel evals (#166, @clecat)
- Remove inappropriate empty lines in generated dune rules (#163, @Julow)
- Fix ignored
skip
label inocaml-mdx pp
(#1561, @craigfe) - Fix synchronization of new parts from markdown to
.ml
(#156, @Julow) - Fix ignored
[@@@parts ...]
markers within module definitions (#155, @Julow) - Fix a bug in internal OCaml version comparison that lead to crashes in some cases (#145, @gpetiot)
- Promote to empty
.ml
file when usingto-ml
direction (#139, @clecat) - Apply
--force-output
to.ml
file as well (#137, @clecat) - Fix a bug preventing
.corrected
files to be written in some cases (#136, @clecat) - Add compatibility with
4.09.0
(#133, @xclerc)
Removed
- Remove the
output
subcommand as it was very specific to RealWorldOCaml needs (#195, @NathanReb) - Remove the
infer-timestamp
direction (#171 @Julow)