Skip to content

Releases: TextureGroup/Texture

2.5

26 Sep 19:21
Compare
Choose a tag to compare
2.5

This release fixes a ton of issues, improves iOS 11 support, improves accessibility support, and removes old deprecated APIs.

  • [ASCollectionNode] Add -isProcessingUpdates and -onDidFinishProcessingUpdates: APIs. #522 Scott Goodson
  • [Accessibility] Add .isAccessibilityContainer property, allowing automatic aggregation of children's a11y labels. [#468]Scott Goodson
  • [ASImageNode] Enabled .clipsToBounds by default, fixing the use of .cornerRadius and clipping of GIFs. Scott Goodson #466
  • Fix an issue in layout transition that causes it to unexpectedly use the old layout Huy Nguyen #464
  • Add -[ASDisplayNode detailedLayoutDescription] property to aid debugging. Adlai Holler #476
  • Fix an issue that causes calculatedLayoutDidChange being called needlessly. Huy Nguyen #490
  • Negate iOS 11 automatic estimated table row heights. Christian Selig #485
  • Add content inset and offset bridging properties to ASTableNode and ASCollectionNode. Deprecate related properties and methods in ASTableView and ASCollectionView Huy Nguyen #460 #560
  • Remove re-entrant access to self.view when applying initial pending state. Adlai Holler #510
  • Small improvements in ASCollectionLayout Huy Nguyen #509 #513 [#562]((#562)
  • Fix retain cycle between ASImageNode and PINAnimatedImage Phil Larson #520
  • Change the API for disabling logging from a compiler flag to a runtime C function ASDisableLogging(). Adlai Holler #528
  • Table and collection views to consider content inset when calculating (default) element size range Huy Nguyen #525
  • [ASEditableTextNode] added -editableTextNodeShouldBeginEditing to ASEditableTextNodeDelegate to mirror the corresponding method from UITextViewDelegate. Yan S. #535
  • [Breaking] Remove APIs that have been deprecated since 2.0 and/or for at least 6 months Huy Nguyen #529
  • [ASDisplayNode] Ensure -displayWillStartAsynchronously: and -displayDidFinish are invoked on rasterized subnodes. Eric Scheers #532
  • Fixed a memory corruption issue in the ASImageNode display system. Adlai Holler #555
  • [Breaking] Rename ASCollectionGalleryLayoutSizeProviding to ASCollectionGalleryLayoutPropertiesProviding. Besides a fixed item size, it now can provide interitem and line spacings, as well as section inset Huy Nguyen #496 #533
  • Deprecate -[ASDisplayNode displayWillStart] in favor of -displayWillStartAsynchronously: Huy Nguyen [#536](https:/
    /github.com//pull/536)
  • Add support for URLs on ASNetworkImageNode. Garrett Moon
  • [ASImageNode] Always dealloc images in a background queue Huy Nguyen #561
  • Mark ASRunLoopQueue as drained if it contains only NULLs Cesar Estebanez #558

2.4

15 Aug 18:50
Compare
Choose a tag to compare
2.4
  • Rename ASCellNode.viewModel to ASCellNode.nodeModel to reduce collisions with subclass properties implemented by clients. Adlai Holler #504
  • Fix an issue where inserting/deleting sections could lead to inconsistent supplementary element behavior. Adlai Holler
  • Overhaul logging and add activity tracing support. Adlai Holler
  • Fix a crash where scrolling a table view after entering editing mode could lead to bad internal states in the table. Huy Nguyen #416
  • Fix a crash in collection view that occurs if batch updates are performed while scrolling Huy Nguyen #378
  • Some improvements in ASCollectionView Huy Nguyen #407
  • Small refactors in ASDataController Huy Nguyen #443
  • [ASCollectionView] Add delegate bridging and index space translation for missing UICollectionViewLayout properties. Scott Goodson
  • [ASTextNode2] Add initial implementation for link handling. Scott Goodson #396
  • [ASTextNode2] Provide compile flag to globally enable new implementation of ASTextNode: ASTEXTNODE_EXPERIMENT_GLOBAL_ENABLE. Scott Goodson #396
  • Add ASCollectionGalleryLayoutDelegate - an async collection layout that makes same-size collections (e.g photo galleries, pagers, etc) fast and lightweight! Huy Nguyen #76 #451
  • Fix an issue that causes infinite layout loop in ASDisplayNode after #428 Huy Nguyen #455

2.3.4

30 Jun 21:38
Compare
Choose a tag to compare

A new release with lots of important fixes!

  • [Yoga] Rewrite YOGA_TREE_CONTIGUOUS mode with improved behavior and cleaner integration Scott Goodson
  • [ASTraitCollection] Convert ASPrimitiveTraitCollection from lock to atomic. Scott Goodson
  • Add a synchronous mode to ASCollectionNode, for colletion view data source debugging. Hannah Troisi
  • [ASDisplayNode+Layout] Add check for orphaned nodes after layout transition to clean up. #336. Scott Goodson
  • Fixed an issue where GIFs with placeholders never had their placeholders uncover the GIF. Garrett Moon
  • [Yoga] Implement ASYogaLayoutSpec, a simplified integration strategy for Yoga-powered layout calculation. Scott Goodson
  • Fixed an issue where calls to setNeedsDisplay and setNeedsLayout would stop working on loaded nodes. Garrett Moon
  • Migrated unit tests to OCMock 3.4 (from 2.2) and improved the multiplex image node tests. Adlai Holler
  • Overhaul layout flattening algorithm Huy Nguyen #395.
  • Fix CollectionNode double-load issue. This should significantly improve performance in cases where a collection node has content immediately available on first layout i.e. not fetched from the network. Adlai Holler

Bug Fixes Galore!

06 Jun 21:31
Compare
Choose a tag to compare

Big release with a bunch of fixes by the community!

  • [ASTextKitFontSizeAdjuster] Replace use of NSAttributedString's boundingRectWithSize:options:context: with NSLayoutManager's boundingRectForGlyphRange:inTextContainer: Ricky Cancro
  • Add support for IGListKit post-removal-of-IGListSectionType, in preparation for IGListKit 3.0.0 release. Adlai Holler #49
  • Fix __has_include check in ASLog.h Philipp Smorygo
  • Fix potential deadlock in ASControlNode Garrett Moon
  • [Yoga Beta] Improvements to the experimental support for Yoga layout Scott Goodson
  • Make cell node indexPath and supplementaryElementKind atomic so you can read from any thread. Adlai-Holler #49
  • Update the rasterization API and un-deprecate it. Adlai Holler#82
  • Simplified & optimized hashing code. Adlai Holler #86
  • Improve the performance & safety of ASDisplayNode subnodes. Adlai Holler #223
  • Move more properties from ASTableView, ASCollectionView to their respective node classes. Adlai Holler
  • Remove finalLayoutElement Michael Schneider#96
  • Add ASPageTable - A map table for fast retrieval of objects within a certain page Huy Nguyen
  • Add new public -supernodes, -supernodesIncludingSelf, and -supernodeOfClass:includingSelf: methods. Adlai Holler#246
  • Improve our handling supernode traversal to avoid loading layers and fix assertion failures you might hit in debug. Adlai Holler#246
  • [ASDisplayNode] Pass drawParameter in rendering context callbacks Michael Schneider#248
  • [ASTextNode] Move to class method of drawRect:withParameters:isCancelled:isRasterizing: for drawing Michael Schneider#232
  • [ASDisplayNode] Remove instance:-drawRect:withParameters:isCancelled:isRasterizing: (https://github.com/maicki)[#232](https://github.com/TextureGroup/Texture/pull/232)
  • [ASTextNode] Add an experimental new implementation. See +[ASTextNode setExperimentOptions:]. Adlai Holler#259
  • [ASVideoNode] Added error reporing to ASVideoNode and it's delegate #260
  • [ASCollectionNode] Fixed conversion of item index paths between node & view. Adlai Holler #262
  • [Layout] Extract layout implementation code into it's own subcategories Michael Schneider#272
  • [Fix] Fix a potential crash when cell nodes that need layout are deleted during the same runloop. Adlai Holler #279
  • [Batch fetching] Add ASBatchFetchingDelegate that takes scroll velocity and remaining time into account Huy Nguyen #281
  • [Fix] Fix a major regression in our image node contents caching. Adlai Holler #287
  • [Fix] Fixed a bug where ASVideoNodeDelegate error reporting callback would crash an app because of not responding to selector. Sergey Petrachkov #291
  • [IGListKit] Add IGListKit headers to public section of Xcode project Michael Schneider#286
  • [Layout] Ensure -layout and -layoutDidFinish are called only if a node is loaded. Huy Nguyen #285

Refactors, clean up and Tips!

09 May 22:51
Compare
Choose a tag to compare

2.3.2 is another big release with a bunch of fixes and improvements

All changes can be found here: 2.3.1...2.3.2

A few highlights:

  • A new Tips system with one tip provider which indicates views which are good candidates to become layer backed. #19
  • A new way to asynchronously layout collection views! #3130
  • Cleanup in ASThread. #3269

Lots of other minor improvements!

Hotfix for ASNetworkImageNode deadlock

27 Apr 21:34
Compare
Choose a tag to compare

This release is the same as 2.3 with the addition of this deadlock fix: #17

2.3: Announcing Texture

14 Apr 17:32
Compare
Choose a tag to compare

2.3 is a big release!
Changes can be found here: 2.2...2.3

Some highlights:

  • Added support for resuming downloads that were half way finished when they exited the preload range: #3246
  • Added support for IGListKit > 2.1 #3239
  • Significant improvements to locking #3187, #3217, #3218, #3179, #3172, #3159
  • Added support for flexWrap #2914
  • Fixed GIF rendering #3057
  • Fixed issues with text rendering of CJK languages #3026

2.2: Farewell, iOS 7!

15 Mar 22:36
Compare
Choose a tag to compare

This is primarily a bug fix release. Changes can be found here: 2.1...2.2

Some highlights:

  • Removed support for iOS 7
  • Upgraded to latest PINRemoteImage (CocoaPods), fixing GIFs: #3057
  • Added an assert to prevent dealloc while visible bugs: #3062
  • Added callback for non-fatal error reporting: #2993
  • Added scrollDirection property on ASScrollNode: #3001
  • Fixed some ASPagerNode issues: #3028