Skip to content

2024-04-09, Version 3.2.0-beta(LTS)

Compare
Choose a tag to compare
@zealotchen0 zealotchen0 released this 14 Jun 04:10
· 82 commits to main since this release

Bug Fixes

  • android: add bridge destroy state (8776d38)

  • android: add onScroll event for list over pull (b0dec7b)

  • android: add shouldNotifyNonBatchingChange for render node (2e48ffe)

  • android: add thread check before argumentToBytes (b3f3de0)

  • android: compatible HashMap and ArrayList for ArgumentUtils (496020c)

  • android: compatible HippyArray for dispatchFunction (e03270d)

  • android: compatible with the HippyModulePromise type (60c4215)

  • android: component may not update with lazy node (3d5b2fd)

  • android: concat log msg only in debug mode (f6bfa4c)

  • android: crash when rotating screen in dev mode (611fd58)

  • android: delete virtual node exception (3a9e211)

  • android: dimensions api compatibility with lower version (f4fcc99)

  • android: fix bounce can't cancel the system effect (63c75d7)

  • android: fix ListView may throw ClassCastException (f54c035)

  • android: fix compile issue in AS release mode (f2ba451)

  • android: fix nested list issues (795aff4)

  • android: fix premature text truncation (#3609) (89ce3d7)

  • android: fix serialization hash function (a82a4c3)

  • android: fix transform order and convert perspective same as iOS (#3562) (d48ebcc)

  • android: isScraped not check image type (15b16a8)

  • android: move node incorrect in ViewPager (2cf6dd4)

  • android: optimize fetch promise callback impl (#3674) (b93618e)

  • android: reduce duplicate textchange event (44475c4)

  • android: remove debugBundleName final constraint (#3647) (ce582b4)

  • android: remove extra logs (f197876)

  • android: remove ImageDataHolder recycle (3a4fe64)

  • android: remove override getOverScrollMode (a6b0e04)

  • android: revert sInForeground impl (ce62a52)

  • android: send onSizeChanged message to js (0f51c5d)

  • android: sendComponentEvent with view==null crash (d73dc28)

  • android: setItemPrefetchEnabled to false for recycler view (658c893)

  • android: should create view if has custom props (b93d175)

  • android: should hide soft input even input not focus (c9a7f0b)

  • android: support host override notifyInitialListReady (b6b22bb)

  • android: support webp (615f229)

  • android: text node add gesture span with gesture events (e24cc61)

  • android: update drawing order in add child (1bec309)

  • android: update layout for first child of DialogRootView (0f6a9a9)

  • android: update proguard-rules (770702c)

  • android: update props reuse null view object (a45eda0)

  • android: use promise.reject when fetch res failed (9d006bc)

  • core: crash protect for worker on ios (5ead86c)

  • core: fix GetInternalField animation 0x241d000023a1 crash (79ed489)

  • core: fix performance for dom node (7da2c69)

  • core: fix performance for node eliminated (208ba93)

  • core: fix std hash for xcode15 (28a0e36)

  • core: JSCCtx CreateObject crash protect (d4026a2)

  • core: JSCCtx CreateObject crash protect (73abae9)

  • core: support onerror for js (#3471) (9399e28)

  • devtools: fix dom box size return (0,0,0,0) (9f5e50b)

  • doc: remove unused animated property definition from docs (00f54e8)

  • dom: add deserializer log (418afed)

  • dom: add log for deserializer crash (37f8721)

  • dom: convert layout result nan to 0 (5b94924)

  • dom: fix docallback multi thread conflict (e383127)

  • dom: fix dom diff algorithm (637d5e9)

  • dom: fix dom memory leak (#3628) (117e087)

  • dom: fix layout event trigger condition (a2d7214)

  • dom: fix multi-thread access event_options conflict (abf6f1d)

  • dom: fix skip style diff update style map null (f672a44)

  • dom: fix thread conflict on measure function (18409bb)

  • dom: get scope return nullptr (54753a2)

  • dom: handle event by platform (3523c95)

  • dom: layout width and height result great than 0 (9a41ae9)

  • dom: remove some redunant log (e799c47)

  • driver: fix destroy driver before scope initialization (9c64bb7)

  • driver: fix multi thead conflict when destroy engine (0658dc3)

  • ios: add a simple reusable cache for list and waterfall (316ba74)

  • ios: add caretColor property support (46b4e77)

  • ios: add default sandbox directory for compatibility (a2a2a05)

  • ios: add local html, request body support to WebView (dac1069)

  • ios: add missing alwaysBounceVertical for ListView (e121aed)

  • ios: add missing error log and suppress some warning (e3b2171)

  • ios: add missing notification and remove unused variables (9c5d0fc)

  • ios: add protection to prevent crashes caused by negative sizes (dd2320d)

  • ios: add type exist check and fix bugs (f989e1c)

  • ios: add user agent and method support (6c7e5fa)

  • ios: backgroundImage may not update in time when reusing hippyView (#3736) (db99542)

  • ios: cellView detach bug of listview and waterfall (4753e3b)

  • ios: change sdkVersion variable name , keep compatible with hippy2 (54e9a86)

  • ios: crash of NSError out param inside autorelease pool (0bc3f09)

  • ios: dead loops generated by nested text layouts (14da8fe)

  • ios: delete the old useless cache logic for list and waterfall (e831f31)

  • ios: determines if node is null (8560a25)

  • ios: dirty text need to propagand to super (638ed17)

  • ios: disable view animation only when batch actions exists (1e1af4c)

  • ios: ensure insertHippySubview is called sequentially (6ce3776)

  • ios: final onScroll may be dropped for listview, scrollview and waterfall (#3624) (8e420c4)

  • ios: Fine-tune callback timing to stay compatible with hippy2 (538aa1c)

  • ios: fix an endless loop when updating rootView's frame (1855da6)

  • ios: fix component reference issue on old system versions (4d904b0)

  • ios: fix conversion crash from oc object to CtxValue (11ebce7)

  • ios: fix create node crash in main thread when releasing vc (fb3bb12)

  • ios: fix device orientation change event (bf0548a)

  • ios: fix HippyDisplayLink leak (0807923)

  • ios: fix image animation stop issue after setting tintColor (a84c3e0)

  • ios: fix lazy views may not get rendered due to timing issue (40e884f)

  • ios: fix memory issue when calling JSTurboObjectWithName (e2e79ac)

  • ios: fix missing updateLayout operation (d7aef60)

  • ios: fix modal view display issue in landscape mode (2edbab2)

  • ios: fix modal view layout issue (7b088a7)

  • ios: fix module provider not working and code refactor (af5dcb1)

  • ios: fix text rendering issue (a968697)

  • ios: fix timing issue of backgroundImage prop (e841936)

  • ios: fix UICollectionView exception caused by incremental diff (d073aa9)

  • ios: fix uimanager and bundle operation queue's crash (61c41d8)

  • ios: fix view background image frame bug (ca3807a)

  • ios: fix view creation bug on release mode (ee057dc)

  • ios: fix weak ref issue in closure (182ce4e)

  • ios: fixed an error when getBoundingClientRect's options was null (d03bef0)

  • ios: fixed an issue where some part of devtools were not available (276d26e)

  • ios: Fixed an issue where the redbox cannot be used (f285fc7)

  • ios: implementation issue with defaultSource prop of Image (94e27be)

  • ios: improve image rendering performance in main thread (dc78bf9)

  • ios: increase code robustness and compatibility for HippyRootView (ace5988)

  • ios: listview performance optimization and bug fix (#3572) (d8653ca)

  • ios: make use of darkStatusBarText property in modal controller (7aedc7c)

  • ios: NativeRenderView leak (6ba3474)

  • ios: nested list may not get reload (80d68c9)

  • ios: onChange event not triggered when typing Chinese Pinyin (f37d667)

  • ios: optimize cell creation time of listview and waterfall (2a4533c)

  • ios: optimize creation time of lazy-load list items (f7b019f)

  • ios: optimize perf of ComponentMap and support multi-rootView (61c52e9)

  • ios: optimize performance of getting components from viewRegistry (5863fe7)

  • ios: podspec use_framework support bug (#3558) (848ef40)

  • ios: prevent crash even logger cbset multiple times (7ba9be3)

  • ios: prevent crashes due to nan values when doing hippySetFrame (e98897b)

  • ios: reaload textfield after changing keyboardType (5b203a4)

  • ios: refactor & fix listview and waterfall's data loading procedure (38662ab)

  • ios: refactor iOS gesture system to fix bugs (941eec7)

  • ios: relayout dom when rootView frame change (e7820f9)

  • ios: reload textfield to take effect after altering returnKeyType (35587da)

  • ios: remove highly frequent logs (3963f68)

  • ios: remove the diff-update code of waterfall and listview (944e737)

  • ios: return weight of zero for invalid font (5328610)

  • ios: revert rename hippy prefix for compatibility (a1cba87)

  • ios: revert rename hippy prefix for compatibility part2 (e377647)

  • ios: revert rename in hippy3 and fix modal view gesture bug (bad8e37)

  • ios: revert rename symbol Prefix and fix compatibility issues (4a3952d)

  • ios: scrollToIndex not working for horizontal list (94b4c54)

  • ios: set logging delegate (85b7853)

  • ios: showScrollIndicator not working on horizontal list (6893636)

  • ios: showsXXXScrollIndicator property of scrollview not working (8ad0c88)

  • ios: solve some problems of podspec (#3789) (caa5393)

  • ios: sticky list cell not showing after reloading (d520921)

  • ios: text will be clipped when exceeds lineHeight (750e88a)

  • ios: thread race of componentDataByName in UIManager (#3801) (88152db)

  • jsc: fix gc finalize bug and performance (9a78a1b)

  • js: skip css preudo class check (e88b67f)

  • layout: fix layout border default css direction (c035630)

  • perf: enable perflog output in debug mode only (57628bf)

  • perf: fix performance api dom time bug (3206035)

  • perf: fix resource entry nullptr crash (be822e3)

  • renderer: update tdfcore d47969ec25d4f403595f06219ea43b202de9af74 (3a2e85d)

  • v8: fix v8 code cache for hippy3.0 (6091dc1)

  • vfs: fix VFSUriLoader crash (f6a3f7d)

  • vfs: OnJniDelegateInvokeSync call after OnDestroyVfs (03148e0)

  • voltron: resolve remoteServerUrl parse version id failed (#3720) (57face5)

  • vue-next: compatible vue patchProp parameter type change (9a48613)

  • vue-next: fix js release bundle size too big issue (#3779) (70fd38b)

  • vue-next: remove vue prod devtools global sign for ios&android (a4262e4)

  • vue3: delete source prop for img (20f3e66)

  • vue3: skip patch style for same props (ba5635b)

  • vue3: update patch style isStyleExisted function comment (1102c02)

  • vue: fix not update style diff crash (ecf6c8a)

  • fix(android)!: change Image getSize failure parameter type (4dbb0fe)

Features

  • android,doc: returnKeyType,keyboardType not change singleLine (#3601) (fc6976c)
  • android: add BaseEngineContext interface (cc2e02b)
  • android: add bugly app id register (c518dd1)
  • android: add disallowInterceptTouchEvent for hippy view group (7bf7ac7)
  • android: add ENABLE_BUGLY_REPORT config (ed7c8df)
  • android: add enableScrollDirectionFix for recycler view (6889560)
  • android: add modal features (#3680) (98df553)
  • android: capInsets and tintColor support for each image types (#3461) (95ebc78)
  • android: complex border styles support (5440642)
  • android: deprecate underlineColorAndroid prop (acce0e6)
  • android: fontWeight support number value (#3570) (bb9b7db)
  • android: Image load events (#3621) (be23474)
  • android: make TextInput default color same as iOS (#3613) (24d11f9)
  • android: onKeyboardWillShow only triggers on focused component (49d8a58)
  • android: optimize addUpdateNodeIfNeeded time cost (b0a48ce)
  • android: reduce layout event when size not change (a28fb76)
  • android: refactoring WaterfallView (#3809) (8dad9f2)
  • android: support appear events for ListView (2726c93)
  • android: support fakeBold for text node (e7b8241)
  • android: support fcp monitor (#3796) (b38e990)
  • android: support get custom type face (c609991)
  • android: support opacity for rich text (#3615) (fe9feda)
  • android: support output render log to host (8c13d04)
  • android: support padding for TextInput (1d82566)
  • android: support text decoration features (c379fc3)
  • doc: 3.0 performance api doc update (fc24bfd)
  • doc: fix docs markdown lint (8f33db7)
  • doc: update main branch homepage url (252fb51)
  • dom: add copyright header (d2efeda)
  • dom: add statistic info for dom size (219e4a4)
  • dom: fix trigger error on layout event (3624aa4)
  • dom: remove dom value (59fb750)
  • dom: set dom thread priority (2fbb558)
  • ios: add description for componentmap (cb186d8)
  • ios: add fcp monitor support (#3803) (7d29a3c)
  • ios: add param for image onLoadEnd on iOS (5ae7d67)
  • ios: add rootViewRunApplicationFinished delegate method (2400602)
  • ios: improve text layout performance (051da17)
  • ios: optimize cell reuse processes (57ff9f9)
  • ios: optimize cell reuse processes 2 (ebbb3f7)
  • ios: print hippy core module logs (#3783) (9a76f96)
  • ios: reload list on changed index, not all indices (22e1f8f)
  • js: open js profiler (#3489) (890400a)
  • js: remove demo clipboard (f141cc0)
  • perf: add logs to pinpoint performance issues (ed206ed)
  • voltron: add voltron_screen_info to make flutter_module faster (#3541) (5abd5ad)
  • voltron: update voltron to 0.0.34 (4d640a6)
  • vue-loader: css scoped compile to class selector (#3679) (e9198be)
  • vue-next: compatible vue2 component tag name format (b550202)
  • vue-next: fix hippytext setText (#3790) (5a7434d)
  • vue-next: fix image url style parse (#3791) (e82fe27)
  • vue: add style diff perf (#3553) (4e61294)
  • vue: hippy vue css style refactor (#3671) (38ff0dd)
  • vue: not update node when add/remove listener (#3520) (19b99ac)
  • vue: remove updateEvent params (86a1aff)
  • vue: revert css match (#3528) (c797576)
  • vue: update postcss dependencies (#3723) (9e150d6)
  • vue: vue component support beforeLoadStyle disabled (1bb582b)

Performance Improvements

  • ios: add dirty property to indicate if list needs to reload (1303783)
  • ios: check whether the dirtyText behavior requires layout (114d0d7)
  • ios: no need to cancel gesture if gesture exists (6f2893f)
  • ios: reduce reload block for list view (36aaa91)

BREAKING CHANGES

  • failure parameter on Android used to be a String, now is an object