Skip to content

Performance, Custom Renderes, Isolation, Bugfixes

Compare
Choose a tag to compare
@JPVenson JPVenson released this 02 May 14:04
· 212 commits to master since this release

This Update contains a number of smaller improvements, Performance fixes, QOL features and a the addition of renderes.

  • Added an Index property to CharacterLocation
  • Fixed the NullCoalescing Operator
  • Added global Formatter "ParseBool" that will parse a string containing ether "true","yes","valid" or "1" to true otherwise to false.
  • Added Isolation keyword. See: https://github.com/JPVenson/morestachio/wiki/Keywords#isolation---block
  • Fixed an StackOverflow in Tokenizer
  • Added IDocumentCompiler and IRenderer see: https://github.com/JPVenson/morestachio/wiki/IRenderer-and-IDocumentCompiler
  • Performance improvement for Path handing in CompiledRenderer
  • Performance improvement for Expression execution in CompiledRenderer
  • Performance improvement for EachDocument loop
  • Breaking Change: Removed the AbortGeneration property
  • Breaking Change: Expressions no longer overwrites the ToString method but uses the DebuggerProxys ToString method
  • Huge Performance Improvement with the usage of ReadOnlySpan<char> in the ByteCounterStream for compatible .Net versions
  • TextInstructions are now added to the Content as a Child instead of being an distinct DocumentItem
  • Breaking Change: Moved the ParserOptions property from ContextObject to ScopeData
  • Bugfix: AsyncPartialStore now uses ValueTask where applicable
  • EachDocument now reuses its Context object
  • NumberExpression and StringExpression now evaluates its ContextObject in CompileTime instead of RenderTime
  • Feature: It is now possible to overwrite the TargetStream directly when calling IRenderer.RenderAsync()
  • Feature: Added ByteCounterTextWriter and ByteCounterStringBuilder for pure In-Memory generation. (both are way faster than the ByteCounterStream)
  • Feature: All build-in ByteCounters overwrite the ToString method to to allow easy result-to-string generation
  • Added .Net-Configuration transformation with Morestachio (WIP)