Releases: mint-lang/mint
Releases · mint-lang/mint
0.3.0
Breaking changes
do
has been removed- Variable shadowing are not allowed and will result in a type error
Language features
- Added
sequence
andparallel
for better asynchronous task handling - Enums now can have parameters and can now be destructured in case statements (essentially they become type ADTs) #71
else if
can be written now #72- Added empty
catch
to catch all errors #69 - Added version command to the CLI #80
- Added type checks for case branches
- Added support for encoding and decoding
Map
- Added initial support for progressive web apps (PWA) by caching all files for offline use
encode
can now encode records which have no associated type
Smaller features / bug fixes
- Fixed typo in build command
- Block comment improvements #89
- Fix error on project initialization #87
- Allow specifing dependencies without the
.git
extension #77 - Generate icons in more sizes
- Correctly format empty fragments
<></>
- Break function arguments into separate lines if they would result in long lines
- Don't raise initial parsing error when running the development server
- Fix incorrect resolving of function type
- Removed
Void
type restriction fromroute
Misc
- Crystal 0.26 support
- Use underscores to avoid style name conflicts
- Added contributing guide
0.2.1
0.2.0
Breaking changes
- Anonymous functions now have a new syntax #62
- In record definitions the
from
keyword has been renamed tousing
and
thedecode
keyword now honors it #51 - The
state
keyword has been changed to be more in line withproperty
#59 - Stores are now using the
state
keyword instead ofproperty
Language features
- Implemented array access #52
- Implemented html fragments #63
- Computed functions (
get
) now can have a where clause just like functions #49
Smaller features / fixes
0.1.0
Bigger features:
- Added comments with the following syntax
/* This is a comment */
🎉 - Added
mint docs
command to start a documentation server where you can browse the documentation of the current application / package and all of it's installed packages. 📖 - Changed the implementation of the type checker to use the Hindley Milner algorithm. This results in a more stable type checking phase.
- In the
mint.json
file external JavaScripts can now be specified usingexternal-javascripts
field.
These files are compiled in the head of the bundle. encode
keyword is now implemented to convert values to anObject
, this is the counterpart of thedecode
keyword
Small features / fixes:
- Fixed a bug during the build process related to sub directories in the
public
folder #38 mint init
now works on existing directories #39 (thanks to @manveru)- There is a nice error message when dependencies are not installed #40 (thanks to @manveru)
- Added default tests cases to the scaffolded project #41 (thanks to @manveru)
- Make the test runner work in osx.
- Fix a bug in where module calls are not scoped to the module / store.
0.0.4
- Added naive implementation for recursive call checking
- Added type caching in type checking phase in order to avoid visiting nodes multiple times
- Added
format
command to the CLI to format files with
is now parsed with whitespace to be more consistent with other constructs #32- Arrays can now be passed to attributes without brackets #33
- Updated to Crystal 0.25
0.0.3
0.0.2
- Removed
--no-debug
flag from release builds #16 thanks to @faustinoaq - Allow Mint to be used a shard
- Added negated expression
!
#17 thanks to @manveru - Fix infinite reloading in Firefox #13 thanks to @Flaque
- Added
--auto-format
--host
and--port
flags to start command #12 #15 thanks to @Dohxis - Allow whitespace in between type parameters #22 thanks to @Dohxis
- Typo fixes in readme and error messages
- Added shard target #9 thanks to @TeddyDD
0.0.1
This is to have a more updated pre 0.1 version out there
Testing Release
0.0.0 Add semicolons to build script.