Skip to content

v0.10.0

Compare
Choose a tag to compare
@sospartan sospartan released this 17 Feb 06:29
  • New Feature
    • Support Vue.js
      The Vue.js 2.1.8 (runtime-only build) is in WeexSDK now. You can use Vue.js to build native app by WeexSDK 0.10.0.
      We reused the original native render engine and developed a new renderer (weex-vue-render) for the web platform, which is based on Vue 2.0.
      The former front-end framework (commonly known as .we), which is inspired by Vue 1.0, is deprecated. Although it still works well in this release, we suggest to migrate it to Vue 2.0.
    • SDK
      • Drop support for iOS 7.X

      • New CSS support

        • text font-weight
          font-weight can set to [normal|bold] or 100-900.

        • gradient
          like CSS3, now you can use gradient in Weex. For example:

          background-image: linear-gradient(to right, blue, white);

          img_1695

          Read more about gradient.

        • Pseudo class
          Currently, Weex supports 4 pseudo classes:active, focus, disabled, enabled.

      • New BroadcastChannel API
        Developers can use BroadcastChannel API to implement inter-instance communication.

        const Stack = new BroadcastChannel('Avengers')
        Stack.onmessage = function (event) {
          console.log(event.data) // in this case, it's "Hulk Smash !!!"
        }
        
        // in another instance
        const Hulk = new BroadcastChannel('Avengers')
        Hulk.postMessage("Hulk Smash !!!")
      • Image's onload event add naturalHeight and naturalWidthimage to get the original size of image file.

      • Websocket Support
        WebSockets is an advanced technology that makes it possible to open an interactive communication session between the user's h5/iOS/android and a server. With this API, you can send messages to a server and receive event-driven responses without having to poll the server for a reply.
        Read more about Weex's websocket.

      • Support synchronous method call
        Both module and component method can defined synchronous method exposed to JS runtime now. Means native will invoke these method in JS thread directly.

      • Support viewport configuration
        Similar to W3C specification, Weex support set define viewport in script tag:

        <script type="config">
          {
            "viewport": {
                "width": "device-width"
            }
          }
        </script>
    • Tools
      • Devtools
        • Support Vue 2.0 debugging.
        • Add network switch for network inspector.
        • Make application capable to decide which bundle is 'un-debuggable', which means page's source code is unreadable in debug mode.
      • Weexpack
        • Has full set of commands for developers to setup android/ios application with his .we/.vue files.
        • Developers could easily pack/install his application with simple command.
        • Has full set of commands for developers to manage weex plugins, including create plugin template, add plugin to his project etc.
        • Plugin market was formally used for developers to publish/download weex plugins.
  • Bugfix
    • * [android] add fixed size property 5191241
    • * [android] bug fix NPE && cache ScreenWidth and ScreenHeight 950e843
    • * [android] bugfix duplicate destroy 25412e0
    • * [android] bugfix keyboard force hide (#106) 0ad2f95
    • * [android] bugfix scroller offset transform twice cd7ad66
    • * [android] change gradle to fix build 1feaadf
    • * [android] ClipPath doesn't work when the following conditions met 1. rotation or scale is used 2. API level is 24 As border-radius uses clipPath, this will cause views with border-radius using rotation or scale on API level 24 doesn't. So far, this is a bug of Android N,https://code.google.com/p/android/issues/detail?id=225556&sort=-id&colspec=ID f69e918
    • * [android] Fix bug of border width due to viewport. Refer sospartan/weex@7cfe975#diff-42908d45812780fec8606537dffab67dL1054 9cd6800
    • * [android] fix cast exception 3136fcf
    • * [android] fix DCL thread safely (#48) 62e9b71
    • * [android] fix duplicate add component child to list 3fd73d7
    • * [android] fix find component 45643ab
    • * [android] fix getScreenWidth with context parameter (#80) 16377f2
    • * [android] fix inefficient use of keySet iterator instead of entrySet iterator (#47) dac80e2
    • * [android] fix intrinsicSize when img.resize=contain b6272a2
    • * [android] fix npe in onScrollerListener (#138) 8141de7
    • * [android] fix npe in stream callback 24aa2c2
    • * [android] fix PageActivity duplicate add view to container 06f77b8
    • * [android] fix refresh crash after destoryed (#144) 51ea00b
    • * [android] fix refresh/loading a726d3c
    • * [android] fix slider auto scroll behavior 28926ba
    • * [android] fix slider layout, ignore position offset. a0381e4
    • * [android] fix some weak code that may cause file leak or useless (#49) 8d0f049
    • * [android] fix stackoverflow 6a01059
    • * [android] fix stream response status type (#63) 8580c66
    • * [android] fix switch case (#127) c301b92
    • * [android] fix textarea vertical gravity 9730948
    • * [android] fix the IllegalArgumentException on empty arguments f799d67
    • * [android] fix the wrong header location (#135) d58fce9
    • * [android] fix typo: WebSocket -> webSocket c162d54
    • * [android] fix wrong initial direction value on appear event (#107) 593c799
    • * [android] modify default real position (+1 squashed commit) Squashed commits: [9470835] * [android] fix unittest b915584
    • * [android] move indicator layout logic to subclass;seperate fixed layout logic fc2a009
    • * [android] rename debug activity 95ab73a
    • * [android] update fix do not remove loading and fresh ddf74ff
    • * [html5] fix border & border-width for less than 1px. (#2059) 3eb34b9
    • * [html5] fix bugs of neighbor 34fafb2
    • * [html5] fix compatibility problem & support deps arguments. 00e7079
    • * [html5] fix content-type error 5b06140
    • * [html5] fix h5 build 56e9c03
    • * [html5] fix shrink & grow for flex. (#2082) b5b600d
    • * [html5] fix slider container's style. (#2157) a79bd9c
    • * [html5] fix uncaught dom exception for video.play. (#1877) 7a0bd03
    • * [html5] fixbug:change name from WebSocket to webSocket] (#2146) b72bbb9
    • * [ios] bug fix: websocket module name is changed , playground should change 3f35b82
    • * [ios] bug fix: onload success value type is not same as android, change it for unify 531633c
    • * [ios] bugfix call renderFinish 1fb2e0a
    • * [ios] bugfix module default method not called 0be9f87
    • * [ios] bugfix moduleEvent compatible dbea448
    • * [ios] bugfix multi input or textarea maybe wrongly change root view frame a2e97db
    • * [ios] bugfix navigation pop animated value convert cfe98a8
    • * [ios] bugfix navigator open and close. beef00b
    • * [ios] bugfix rootView information coordinate 7313703
    • * [ios] bugfix slider-neighbor may beyond item count index cbfa9df
    • * [ios] bugfix view event 83d3e6a
    • * [ios] bugfix: playground cannot open c949463
    • * [ios] bugfix:delete configpicker not delete the method in header cc3afc2
    • * [ios] fix : Change the lastoffsetXRatio to lastOffsetXRatio de8f246
    • * [ios] fix : Change the parameter wording to make it more in line with development habits. 869da54
    • * [ios] fix : if _fontFamily is nil set _fontFamily value with the correct system font. In the case of Chinese characters, this logic help system select the right system default font name. 6e202b6
    • * [ios] fix : improve slider-neighbor demo code .remove useless label and label. 2c236c8
    • * [ios] fix bug : you can't slide to the right when the slider has only two pages. d224bfb
    • * [ios] fix bug that border-x-radius not work 96ba5b5
    • * [ios] fix bug that horizontalpan and verticalpan can not trigger simultaneously eb03cb0
    • * [ios] fix bug: text input padding is not right f4accba
    • * [ios] fix crash after returning id type, need to copy here. 4f5276b
    • * [ios] fix issue that cells pushed down by inserted cells will not trigger disappear event. 9dcc4dd
    • * [ios] fix issue that rotate 90->180->270 not work. 5b3c13d
    • * [ios] fix issue that rotate(0) not work after rotate(>180degree) 0f6989d
    • * [ios] fix issue that there will be 1px space remaining between list's top and navigator when UITableView is pulled down and finger releases. d286e3c
    • * [ios] fix typo in [WXSDKEngine initSDKEnvironment] 17a093f
    • * [ios] fix variable name spelling error becd631
    • * [ios] Fixed :Merge remote-tracking branch 'alibaba/ios-feature-20170118' into ios-feature-20170118-new-slider-neighbor-fix move "sliderview init" code to loadview method. 141fd9d
    • * [ios] fixed component's view should be removed separately since its view is a subview of rootview. f9b2378
    • * [ios] fixed issues that horizontal/vertical pan not respond while recyling views. c7b4bec
    • * [ios] js service bug fixed c068bd7
    • * [ios] removed debug code and fixed bug 548984f
    • * [ios] update navigator module, add open and close interface. f65c42f
    • * [ios] upgrade JSFM to 0.19.3 to fix callback problem 9ab9b92
    • * [jsfm] fix mismatch of weex.require and weex.document ad63f2a
    • * [jsfm] fix support native method bug ce26a6f
    • * [jsfm] fixed Promies bug in android 17282c2