svelte v3.13.0 Release Notes

Release Date: 2019-11-10 // over 4 years ago
    • ๐Ÿ†• New structured code generation, which eliminates a number of edge cases and obscure bugs (#3539)

    Also:

    • ๐Ÿ›  Fix {#each} context not shadowing outer scope when using bind: (#1565)
    • ๐Ÿ›  Fix edge cases in matching selectors against elements (#1710)
    • ๐Ÿ›  Fix several bugs related to interaction of {...spread} attributes with other features (#2721, #2916, #3421, #3681, #3764, #3790)
    • ๐Ÿ‘ Allow exiting a reactive block early with break $ (#2828)
    • ๐Ÿ›  Fix binding to props that have been renamed with export { ... as ... } (#3508)
    • ๐Ÿ›  Fix application of style scoping class in cases of ambiguity (#3544)
    • Check attributes have changed before setting them to avoid image flicker (#3579)
    • ๐Ÿ›  Fix generating malformed code for {@debug} tags with no dependencies (#3588)
    • ๐Ÿ›  Fix generated code in specific case involving compound ifs and child components (#3595)
    • ๐Ÿ›  Fix bind:this binding to a store (#3591)
    • ๐Ÿ‘‰ Use safer HTMLElement check before extending class (#3608)
    • โž• Add location as a known global (#3619)
    • ๐Ÿ‘Œ Support {#await} with {:catch} but no {:then} (#3623)
    • Clean up dead code emitted for <slot/>s (#3631)
    • ๐Ÿ›  Fix tracking of dependencies of compound assignments in reactive statements (#3634)
    • Flush changes in newly attached block when using {#await} (#3660)
    • ๐Ÿ‘ป Throw exception immediately when calling createEventDispatcher() after component instantiation (#3667)
    • ๐Ÿ›  Fix globals shadowing contextual template scope (#3674)
    • ๐Ÿ›  Fix <svelte:window> bindings to stores (#3832)
    • Deconflict generated var names with builtins (#3724)
    • ๐Ÿ‘ Allow spring/tweened values to be initially undefined (#3761)
    • Warn if using <svelte:options tag="..."> without customElement: true option (#3782)
    • โž• Add Event to list of known globals (#3810)
    • Throw helpful error on empty CSS declaration (#3801)
    • ๐Ÿ‘Œ Support easing param on fade transition (#3823)
    • Generate valid names from filenames with unicode characters (#3845)
    • Don't generate any code for markup-less components (#2200)
    • Deconflict with internal name block (#3854)
    • Set attributes before bindings, to prevent erroneous assignments to input.files (#3828)
    • Smarter unused CSS detection (#3825)
    • ๐Ÿ‘ Allow dynamic event handlers (#3040)
    • Prevent erroneous "undefined" class name (#3876)
    • Prevent resetting of src attribute unless changed (#3579)
    • Prevent hydration of void element 'children' (#3882)
    • Hoist globals even if mentioned in <script> block (#3745)