Releases: JD557/minart
v0.6.2
This release adds a new experimental geometry
package and rasterization logic, that allows one to efficiently render vector shapes and strokes.
It also adds a new Kernel
abstraction to speed up convolutions when using coflatMap
.
New Features
- Add
geometry
package and rasterizer (#520, #521, #522, #523, #530, #538) - Add
Kernel
abstraction for convolutions (#537)
Bug fixes/Improvements
- Avoid boxing (#539)
Changes/Refactorings
- Move
Matrix
toeu.joaocosta.minart.geometry
(#520) (Breaking change)
Full Changelog: https://github.com/JD557/minart/compare/v0.6.01..v0.6.2
v0.6.1
This release is just a small update with some improvements on image/audio format support and interop between other ecosystems.
New Features
- Add support for PDI (#498)
- Add support for PBM (#499)
- Add helpers to load raw SDL surfaces into an
SdlSurface
(#506, #508) - Add conversion methods between
ImageDataSurface
andImage
/ImageBitmap
/OffscreenCanvas
(#511)
Bug fixes/Improvements
- Simplify the codec logic (#500)
Full Changelog: v0.6.0...v0.6.1
v0.6.0
This is the first release of the 0.6 series of Minart.
As of 0.6.0, support for Scala 2.11, 2.12 and 2.13 was removed, along with the Minart Pure library (blog post with rationale).
This version also drops support for Scala Native 0.4, adding support for Scala Native 0.5. While the both single threaded modes and multi threaded modes are supported, it is recommended to use Scala Native's automatic detection.
New Features
- Add realtime sound mixing operations (#431)
- Add new
WrapAround
helper (#450, #452, #465) - Add
MutableSurface#modify
(#455) - Add
MutableSurface#blitPlane
(#483) - Add
HtmlCanvas#getCanvasElement
(#461) - Support Scala Native 0.5 (#467)
Removals
Changes/Refactorings
- Use munit instead of verify (#409)
- Make
Color
an opaque type (#410) - Generate new SDL bindings (#417)
- Simplify Subsystems (#424, #425)
- Monomorphize ByteReader/ByteWriter (#427)
- Convert code to Scala 3 (#428, #429, #430)
- Add a default value for
terminateWhen
(#461) - Refactor LoopRunner logic to support sync and async runners (#467)
Bug fixes/Improvements
- Disable blending on Canvas surfaces (#416)
- Fix
MutableSurface#fillRegion
for out of bounds areas (#435) - Handle offscreen mouse events (#438)
- Add more keyboard keys (#446)
- Specialize clipped RAM Surface views (#451, #454)
- Fix resource termination (#467)
- Fix edge cases when loading resources (#474)
- Fix canvas clear when changing settings (#477)
Other
v0.6.0-M3
This is the third (hopefully final) milestone release of the 0.6.0 version of Minart.
As of 0.6.0, support for Scala 2.11, 2.12 and 2.13 was removed, along with the Minart Pure library (blog post with rationale).
It also includes support for Scala Native 0.5.
Notice: Due to how recent Scala Native 0.5.0 is, this version might have some issues (also, the unit tests have been temporarily disabled, as munit wasn't released yet). One of the reasons to release this now was to catch errors before the final 0.6.0 release.
New Features
- Add realtime sound mixing operations (#431) [0.6.0-M1]
- Add new
WrapAround
helper (#450, #452, #465) [0.6.0-M2 / M3] - Add
MutableSurface#modify
(#455) [0.6.0-M2] - Add
MutableSurface#blitPlane
(#483) [0.6.0-M3] - Add
HtmlCanvas#getCanvasElement
(#461) [0.6.0-M2] - Support Scala Native 0.5 (#467) [0.6.0-M3]
Removals
Changes/Refactorings
- Use munit instead of verify (#409) [0.6.0-M1]
- Make
Color
an opaque type (#410) [0.6.0-M1] - Generate new SDL bindings (#417) [0.6.0-M1]
- Simplify Subsystems (#424, #425) [0.6.0-M1]
- Monomorphize ByteReader/ByteWriter (#427) [0.6.0-M1]
- Convert code to Scala 3 (#428, #429, #430) [0.6.0-M1]
- Add a default value for
terminateWhen
(#461) [0.6.0-M2] - Refactor LoopRunner logic to support sync and async runners (#467) [0.6.0-M3]
Bug fixes/Improvements
- Disable blending on Canvas surfaces (#416) [0.6.0-M1]
- Fix MutableSurface#fillRegion for out of bounds areas (#435) [0.6.0-M1]
- Handle offscreen mouse events (#438) [0.6.0-M1]
- Add more keyboard keys (#446) [0.6.0-M2]
- Specialize clipped RAM Surface views (#451, #454) [0.6.0-M2]
- Fix resource termination (#467) [0.6.0-M3]
- Fix edge cases when loading resources (#474) [0.6.0-M3]
- Fix canvas clear when changing settings (#477) [0.6.0-M3]
Other
v0.6.0-M2
This is the second Milestone release of the 0.6.0 version of Minart.
As of 0.6.0, support for Scala 2.11, 2.12 and 2.13 was removed, along with the Minart Pure library (blog post with rationale).
New Features
- Add realtime sound mixing operations (#431) [0.6.0-M1]
- Add new
WrapAround
helper (#450, #452) - Add
MutableSurface#modify
(#455) - Add
HtmlCanvas#getCanvasElement
(#461)
Removals
Changes/Refactorings
- Use munit instead of verify (#409) [0.6.0-M1]
- Make
Color
an opaque type (#410) [0.6.0-M1] - Generate new SDL bindings (#417) [0.6.0-M1]
- Simplify Subsystems (#424, #425) [0.6.0-M1]
- Monomorphize ByteReader/ByteWriter (#427) [0.6.0-M1]
- Convert code to Scala 3 (#428, #429, #430) [0.6.0-M1]
- Add a default value for
terminateWhen
(#461)
Bug fixes/Improvements
- Disable blending on Canvas surfaces (#416) [0.6.0-M1]
- Fix MutableSurface#fillRegion for out of bounds areas (#435) [0.6.0-M1]
- Handle offscreen mouse events (#438) [0.6.0-M1]
- Add more keyboard keys (#446)
- Specialize clipped RAM Surface views (#451, #454)
Other
v0.6.0-M1
This is the first Milestone release of the 0.6.0 version of Minart.
As of this version, support for Scala 2.11, 2.12 and 2.13 was removed, along with the Minart Pure library (blog post with rationale).
New Features
- Add realtime sound mixing operations (#431)
Removals
Changes/Refactorings
- Use munit instead of verify (#409)
- Make
Color
an opaque type (#410) - Generate new SDL bindings (#417)
- Simplify Subsystems (#424, #425)
- Monomorphize ByteReader/ByteWriter (#427)
- Convert code to Scala 3 (#428, #429, #430)
Bug fixes/Improvements
- Disable blending on Canvas surfaces (#416)
- Fix MutableSurface#fillRegion for out of bounds areas (#435)
- Handle offscreen mouse events (#438)
Other
- Add more strict scalac warnings (#426)
v0.5.3
v0.5.2
This release includes multiple bug fixes to audio problems in 0.5.1. While the audio API is not yet stable (this release includes a breaking change), it's getting there.
It also adds support for QOA audio playback.
New Features:
Changes/Refactorings:
- Add a new
Sampler
object and move audio sampling related methods there (#365) Breaking
Bugfixes/Improvements
- Fix
AudioPlayer#play(wave, channel)
(#366)
Other
- Set sbt version scheme to semver-spec (#366).
v0.5.1
This release includes multiple bug fixes to problems in 0.5.0.
Unfortunately, it also includes some small breaking changes that couldn't be done in a backwards compatible way.
New Features:
- New
AudioClip#repeating(times)
operation (#345) - New
coflatMap
operations (#346, #348, #349) - New
SurfaceView#clamped
operation (#350) - New
get*OrElse
operations (#350) - New
AudioPlayer#isPlaying(channel)
operation (#359)
Changes/Refactorings:
- Made
AudioClip
/SurfaceView
andAudioWave
/Plane
APIs more consistent (#347) Breaking - Make canvas scale optional, with support for filling the screen on full screen mode (#351) Breaking
Bug fixes/Improvements
v0.5.0
This is the first release in the 0.5. series.
The great new feature of this release is audio support.
Support for Scala 2.11 was dropped, as it was also dropped from the most recent versions of Scala.js and Scala Native.
New Features:
- Audio support (#273, #281, #282 #302, #306, #310, #324, #332, #342)
- New
minart-sound
project with support for loading and storing RTTTL, WAV and AIFF files (#273, #289, #299, #300, #314, #322) - New
fillRegion
method to efficiently fill a region with a constant color (#308, #334) - New optimized affine transformations (#312, #313)
- Historical input events are now captured (#307, #309)
- Add missing methods to
SpriteSheet
(#340)
Removals:
Changes/Refactorings:
- Runtime completely refactored (#279, #306, #311)
- Render loops now return
Future
s - No more Managers
ImpureRenderLoop
/PureRenderLoop
were removed in favor of a singleAppLoop
Loop
class was removedMinartApp
was moved fromminart-pure
tominart-core
- Render loops now return