Changelog for PyF-0.9.0.2
Revision history for PyF
0.9.0.2 -- 2020-09-11
- Version bump for megaparsec 9.0
0.9.0.1 -- 2020-03-25
0.9.0.0 -- 2019-12-29
- Any type with
Show
instance can be formatted using :s
formatter. For example, [fmt|hello {(True, 10):s}|]
. This breaks compatibility because previous version of PyF was generating an error when try to format to string anything which was not a string, now it accepts roughly anything (with a Show
instance).
0.8.1.2 -- 2019-11-08
0.8.1.1 -- 2019-10-13
- Compatibility with GHC 8.8
0.8.1.0 -- 2019-09-03
- Precision can now be any arbitrary haskell expression, such as
[fmt|hello pi = {pi:.{1 + 3}}|]
.
0.8.0.2 -- 2019-08-27
- (minor bugfix in tests): Use python3 instead of "python" to help build on environment with both python2 and python3
0.8.0.1 -- 2019-08-27
0.8.0.0 -- 2019-08-06
f
(and fWithDelimiters
) were renamed fmt
(fmtWithDelimiters
). f
was causing too much shadowing in any codebase.
- PyF now exposes the typeclass
PyFToString
and PyFClassify
which can be extended to support any type as input for the formatters.
- PyF now uses
Data.String.IsString t
as its output type if OverloadedString
is enabled. It means that it behaves as a real haskell string literal.
- A caveat of the previous change is that PyF does not have instances for
IO
anymore.
bugfixes and general improvements
- An important amount of bugfixs
- Error reporting for generic formatting (i.e. formatting without a specified type) is now more robust
- Template haskell splices are simpler. This leads to more efficient / small generated code and in the event of this code appears in a GHC error message, it is more readable.
- PyF now longer emit unnecessary default typing.
0.7.3.0 -- 2019-02-28
- Tests: fix non reproducible tests
0.7.2.0 -- 2019-02-27
- Fixed: PyF now uses the same haskell extensions as the one used by the current haskell file to parse sub expressions.
0.7.1.0 -- 2019-02-11
- Fixed: PyF was wrongly ignoring everything located after a non-doubled closing delimiter.
- New Feature: line break can be escaped with , thus allowing string to start on a new line ignoring the initial backspace
0.7.0.0 -- 2019-02-04
- Bump dependencies to megaparsec 7
- Error message are now tested
- Name in template haskell splices are stable. This increases readability of error messages
- Better error message for badly formated expression
- All monomorphic quasiquoters (
f
, fString
, fText
, fIO
, fLazyText
) are removed
- Polymophic quasiquoter
f'
is renamed f
and is the only entry point. Monomorphic users are encouraged to use the polymorphic quasiquoter with type annotation.
Formatting
dependency is removed.
- Previously named
f
quasiquoters which was exporting to Formatting.Format
is removed. User of this behavior should use Formatting.now
instead.
0.6.1.0 -- 2018-08-03
- Custom delimiters, you can use whatever delimiters you want in place of
{
and }
.
0.6.0.0 -- 2018-08-02
- Fix the espace parsing of
{{
and }}
as {
and }
0.5.0.0 -- 2018-04-16
- Support for negative zero
- Support for 0 modifier
- Exponential formatter now behaves as python
- Support for alternate floatting point represenation
- Lot of documentation
- Test are auto verified with the python reference implementation
0.4.0.0 -- 2018-04-13
- Support for grouping option
- Support for inner allignment
- Correct display of NaN and Infinity
- Fix a few cosmetic with python implementation
- Introduce
PyF.Formatters
, type safe generic number formatter solution
- Remove dependency to
scientific
0.3.0.0 -- 2018-04-01
- Support for haskell subexpression
0.1.1.0 -- 2018-01-07
- Add support for the
sign
field.
0.1.0.0 -- 2018-01-03
- First version. Released on an unsuspecting world.