WARNING: This documentation is for an old version of mithril! Please see the current docs for more accurate info.

Change Log

v0.1.15 - maintenance

Bug Fixes:

  • m.sync now correctly passes arguments to resolver in same order as input arguments #96
  • fixed diff deletion bug #99
  • updating textarea attributes updates its value correctly #100

v0.1.14 - maintenance

News:

  • The signature of m now accepts virtual elements as the second parameter of the function.
  • m.route(path, params) now accepts an argument that gets parsed as a querystring.
  • routes now ignore trailing slashes #88

Bug Fixes:

  • Resolving promises early without a value now works #85
  • Throwing exceptions within m.request now follow the same resolution procedure as m.deferred #86
  • Promises now always update their m.prop on success (and leave the m.prop alone on error)
  • Nested arrays no longer cause double removal of elements #87
  • HTTP error codes now correctly reject promises

v0.1.13 - maintenance

News:

  • m.module now runs clean-up code in root module controllers that implement an onunload instance method #82

Bug Fixes:

  • Removing CSS rules now diffs correctly #79

v0.1.12 - maintenance

News:

Bug Fixes:

  • Fix link location in links using config: m.route after redraws #74
  • Fixed support for list attribute in inputs #69
  • Fixed URL decoding in route params #75

v0.1.11 - maintenance

News:

  • Added m.route() overload to allow reading of current route #61
  • Added background option to m.request to allow requests that don't affect rendering #62

Bug Fixes:

  • Links using config: m.route can now be opened in new tab correctly #64
  • Fixed diff within contenteditable areas #65

v0.1.10 - maintenance

News:

  • Added social buttons to homepage

Bug Fixes:

  • Bi-directional bindings no longer wipe out cursor position in Chrome #58

v0.1.9 - maintenance

News:

  • Added comparison with React to homepage
  • Added support for multi-island apps #34
  • m.prop is now JSON-serializable #54
  • Added extract option to m.request to allow access to response metadata #53

Bug Fixes:

  • Fixed node index displacement by null/undefined nodes #56
  • Fixed mock's insertBefore and appendChild when dealing w/ reattachments

Breaking changes:

  • changing an id in a virtual element now recreates the element, instead of recycling it #55

v0.1.8 - maintenance

News:

  • Mock now contains a basic insertAdjacentHTML implementation to enable better testing of m.trust / m.render interactions

Bug Fixes:

  • Fixed ordering bug in deep subchildren #51
  • Fixed ordering bug with trusted strings #51

v0.1.7 - maintenance

News:

  • Mithril will be on a accelerated release cycle for the rest of the v0.1.x series. This means CDNs may lag behind in versions, so it's recommended that you either use one of the supported NodeJS package managers or fork from the Github repo directly. More information can be found here

Bug Fixes:

  • Fixed ordering bug when virtual element is preceded by array #50

v0.1.6 - maintenance

Bug Fixes:

  • Fixed serious bug when mixing cached text nodes with new virtual elements #49

v0.1.5 - maintenance

News:

Bug Fixes:

  • Fixed serious ordering problem when mixing arrays with virtual elements #48

v0.1.4 - maintenance

News:

  • added regression tests for reported bugs
  • added support for SVG

Bug Fixes:

  • URLs with port numbers are now handled correctly #40
  • NPM package now contains unminified version for map files #39
  • fixed ordering issue when mixing newly created virtual elements with elements from cache #44
  • fixed caching bug in links w/ config option attached #43
  • fixed attribute update bug when an element has both oninput and onkeydown handlers #36

v0.1.3 - maintenance

News:

  • Mithril is now available via Component
  • There's now an extra low-level optimization hook called a SubtreeDirective, which allows implementing plugins that only create virtual trees if necessary.

Bug Fixes:

  • diff no longer touch the DOM when processing style attributes and event handlers
  • returning a thennable to a resolution callback in m.deferred().promise now causes the promise to adopt its state
  • diff now correctly clears subtree if null or undefined is passed as a node

v0.1.2 - maintenance

News:

Bug Fixes:

  • m.render now correctly reattaches reused DOM elements to replaced parent nodes #31
  • UI actions that can potentially de-synchronize the DOM from cache now force synchronization #29

v0.1.1 - maintenance

News:

Bug Fixes:

  • m.route.param now resets on route change correctly #15
  • m.render now correctly ignores undefined values in the virtual tree#16
  • errors thrown in promises now cause downstreams to be rejected #1

Breaking changes:

  • changed default value for xhr.withCredentials from true to false for m.request, since public APIs are more common than auth-walled ones. #14

    In order to configure this flag, the following configuration should be used:

    var privateAPI = function(xhr) {xhr.withCredentials = true};
    
    m.request({method: "GET", url: "http://foo.com/api", config: privateAPI});

v0.1 - Initial release