Changelog
Changelog for Composer Pro

Runtime release 3.2.13 (2021-11-29)

BUG FIXES

Android

  • Fixed issue where buttons that have Disabled property set to true, would not look disabled

iOS

  • Fixed issue where some custom fonts that had numbers in the font name wouldn’t work

Web

  • Fixed issue where all scroll views would always have scroll indicator placeholders visible

Web standalone

  • Fixed issue where alerts wouldn’t work in built standalone apps

Runtime release 3.1.8 (2021-11-12)

BUG FIXES

Android
  • Fixed an issue where some custom fonts wouldn’t work
  • Fixed an issue where scroll view component wouldn’t work in some cases
  • Fixed an issue where sensorVariables.compass.latestValue.heading would resolve to undefined value
  • Fixed an issue where Open contact form flow function wouldn’t work in some cases
Web
  • Fixed an issue where systemVariables.window.dimensions.viewport.height would not take the navigation header into account, resulting in larger than expected value
  • Fixed an issue where Disable scroll page property wouldn't work
iOS
  • Fixed an issue where Draw signature flow function’s draw area was relatively small on iPads
  • Fixed an issue where Prompt flow function with num-pad input, would in some cases produce non-integer values

All platforms

  • Fixed an issue where you were able to set non-existing page and app variables by accident
  • Fixed an issue where image components wouldn’t be visible in horizontal scroll view

Features

  • Support for Android TV
  • Pincode login to mobile preview apps

Platform release – new style and theme features (2021-11-15)

This release brings with it major changes around managing UI component styles and the overarching app theming. Also, SAP Fiori design system is supported.
Read more in the blog post and check out the Academy article on the new features and changes, which also has videos that showcase most common use cases.
Please note you must upgrade components to their latest versions from the Marketplace to use the new features, and be sure to use Preview app / runtime version 3.1.8 or newer.

FEATURES AND CHANGES

  • Introduced semantic style classes as a way to create consistent, manageable and reusable UI styles for your components
  • Style properties that affect how the component looks remain under the Style tab in the right hand panel, but properties that affect the component size and position are now available under the Layout tab
  • Old Isolation Mode is now called Template Editor, with a new Style Editor used to make styling changes only to composite components
  • New easy-to-use controls for component width/height behavior
  • Instead of margins, a new concept called gap is used to determine the spacing between two components
  • Smart colors will make your content adapt the right desired color automatically, based on the background of the page/container it is placed on.

MINOR FEATURES

  • Core components and flow functions now also show up on the Installed tab in the component library, allowing you to e.g. uninstall unused core flow functions that bring with them Build Service dependencies like extra required permissions

Runtime release 3.0.5 (2021-10-06)

SAP AppGyver release

Preview apps with versions less than 3.x.x will not be receiving any further updates. To get the latest updates, please download the SAP AppGyver Preview from the stores!

BUG FIXES

Android

  • Fixed an issue on Android where Read all contacts flow function wouldn’t work
  • Fixed an issue on Android where Add contact flow function wouldn’t add the contact despite the success output triggering
  • Fixed an issue on Android where Delete contact flow function would always throw an error
  • Fixed an issue on Android where Find contact by name flow function didn’t work
  • Fixed an issue on Android where Update contact flow function didn’t work correctly
  • Fixed an issue on Android where Get Contacts flow function returns empty list
  • Fixed an issue on Android where GPS location and Start GPS poller flow functions wouldn’t check if the device has location enabled, and now prompts the user to enable location if it’s not enabled

iOS

  • Fixed an issue on iOS where Delete contact flow function would output success even if invalid input was given
  • Fixed undefined Buffer reference error in Firestore data resource when handling certain data types

Android & iOS

  • Fixed an issue where Pick date/time/datetime flow function’s cancel (second) output didn’t get triggered
  • Fixed an issue standalone builds where set or get clipboard content would trigger the error output every time
  • Fixed an issue where setting app variable in modal page didn’t propagate to the previous page properly
  • Fixed an issue on standalone builds where Get single compass value wouldn’t get the value properly

Web

  • Fixed an issue where dropdown text align property didn’t do anything
  • Fixed an issue where dropdown Show value as label property didn’t do anything
  • Fixed an issue where you wouldn’t be able to select date from Web date picker calendar when min date and max date properties were left empty

All platforms

  • Fixed an issue where toast would not be visible after audio playback had started
  • Fixed an issue where accessing repeatedInfo inside composite with dot notation wouldn’t work (repeatInfo.current)
  • Fixed an issue where checking checkbox bound to repeated.current.value in form creates new object property to the original repeated object
  • Fixed an issue where formula binding in component border style, would always result in no border
  • Fixed an issue where component’s internal property bound with mapping to a data variable is not populated at component mount
  • Fixed an issue where input field value that was repeated with nested repeating, couldn’t be edited
  • Fixed an issue where audio playback loops wouldn’t working
  • Fixed an issue where component transforms didn’t work properly
  • Fixed an issue where Stop audio playback flow function didn’t stop the audio when playback ID was given
  • Fixed Firestore data resource bugs with date-time parsing and formatting

Runtime release 3.0.0 (2021-09-27)

SAP AppGyver Preview release

Preview apps with versions less than 3.x.x will not be receiving any further updates. To get the latest updates, please download the SAP AppGyver Preview from the stores!

Runtime release 2.12.2 (2021-09-08)

Fixes

Preview

  • Fixed issue where variable changed event wouldn't work on the data variable logic canvas
  • Fixed issue where components Component mounted event wouldn't trigger properly in some cases
  • Fixed issue where components output value bindings didn't work in some cases
  • Fixed issue where bindings to a component property that is type object didn't work properly
  • Fixed issue where bindings variables to dropdown value or label properties would result in the variable name being displayed, instead of the variable value
  • Multiple other bindings related issues

Debugger

  • Minor text changes
  • State tab is now properly cleared after the app disconnects
  • Fixed issue where event and flow function names were not visible
  • Fixed issue where Flows tab would not update if it was open when flow function was triggered
  • Fixed issue where connected app would always say it was edited few seconds ago

Features

Runtime release 2.10.0 (2021-08-12)

Fixes

  • Fixed multiple issues with inversible formula bindings
  • Fixed binding issues with composite component variable setter flow functions
  • Fixed a crash issue when a bottom sheet was opened with a non-existing page
  • Fixed issue where navigating back from draw signature flow function page on iOS would navigate back two pages instead of one
  • Fixed issue where toasting again didn’t work after dismissing it via tapping the toast
  • Fixed majority of previously known issues with debugger

Features

  • Built android apps have now Android API Level 30 and they are outputted as ZIP file that includes APK and AAB (Android App Bundle) files

Runtime release 2.8.33, platform release #159 (2021-07-09)

Support for the new Google Firebase connector, which gives access to Cloud Firestore based data resources, Firebase Authentication and Firebase Storage.

Runtime release 2.8.31 (2021-06-23)

Build service / web only release, no new Preview app version required for iOS and Android.

Fixes

  • Web Preview app now correctly shows console.log in web inspector console
  • Invertible formulas bound to one-way properties no longer potentially cause source variables to accidentally change
  • Fixed certain crash issues with built apps
  • Fixed custom app URL scheme not being correctly included in standalone iOS and Android apps
  • Fixed viewport being too high in standalone Android apps
  • Fixed action sheet issues in standalone web apps
  • Fixed map component issues in standalone Android apps
  • Fixed rich text editor issues in standalone apps
  • Fixed asset loading issues in standalone web apps
  • Fixed issue where standalone Android apps could not be opened with their custom URL scheme

Platform release #158 (2021-06-16)

Features

  • Support for invertible formulas - Now officially released! You are now able to bind certain formula functions to 2-way bound value fields! E.g "Input field" where you automatically format the text to be in phone number format and only allow certain amount of characters

Runtime release 2.8.28 (2021-06-16)

Features

  • All apps: Support for invertible formulas - You are now able to bind certain formula functions to 2-way bound value fields! e.g input field where you automatically format the text to be in phone number format and only allow certain amount of characters

Fixes

  • Mobile preview app: Logging in with wrong credentials would show login error toast on the first try
  • Mobile preview app: Fixed issue where the preview app would sometimes crash after saving the app in composer
  • Mobile apps: Fixed issue where repeated magnetometer or gyroscope values would not update when the sensor values list updated
  • Mobile apps: When navigation is disabled, there is now additional padding on the top of pages where padding is not defined - Previously components were partially hidden under the status bar on notchless phones
  • Mobile apps: Fixed rich text editor flow function
  • Mobile apps: Fixed issue where form components wouldn't work in pages opened from bottom sheet
  • Mobile apps: Fixed issue where date picker flow functions would not trigger the second output when user cancelled
  • Mobile apps: Fixed issue where opening a regular page from initial view would look like modal
  • Mobile apps: Fixed issue where picking undefined value in dropdown would make the dropdown to select the nearest defined value
  • iOS apps: Fixed date picker flow function to be compatible with iOS 14.4
  • iOS apps: Fixed issue where tapping spot marker component would make it flicker
  • Android apps: Fixed issue where pick files flow function wouldn't let you pick just text or PDF files
  • Android apps: Fixed issue where picking files would return the local filesystem path in wrong format
  • Android apps: Fixed major crash issues with rapid visibility changes
  • Android apps: Deprecated systemVars.fileSystem.directories.android.ringtones
  • Android apps: Fixed issue where playing recorded audio would not work
  • Android apps: Fixed issue where having formula expression with value 'none' in border style would crash the app
  • Web apps: Fixed issue where having special characters in the app names would make the app crash
  • Web apps: Fixed issue where having background image on containers would hide some text components behind the image
  • Web apps: Fixed issue where spot marker component would return null when the component was clicked
  • Web apps: Fixed issue where recycler view would add additional padding to the right hand side for native scroll bar
  • Web apps: Fixed issue where pick files flow function wouldn't let you pick multiple files
  • Web apps: Fixed issue where systemVars.dimensions.viewport would become undefined if the window was resized
  • Web apps: Fixed issue where alert text would be invisible if your apps primary text color was withe
  • Web apps: Completely reworked web toasts
  • Built web app: Fixed issue where custom fonts wouldn't work

Known issues

  • Android apps: In some cases, setting page variable before hiding spinner makes the app crash

Runtime release 2.8.27 (BETA) (2021-06-11)

Features

  • All apps: Support for invertible formulas - You are now able to bind certain formula functions to 2-way bound value fields! e.g input field where you automatically format the text to be in phone number format and only allow certain amount of characters

Fixes

  • Mobile preview app: Logging in with wrong credentials would show login error toast on the first try
  • Mobile preview app: Fixed issue where the preview app would sometimes crash after saving the app in composer
  • Mobile apps: Fixed issue where repeated magnetometer or gyroscope values would not update when the sensor values list updated
  • Mobile apps: When navigation is disabled, there is now additional padding on the top of pages where padding is not defined - Previously components were partially hidden under the status bar on notchless phones
  • Mobile apps: Fixed rich text editor flow function
  • Mobile apps: Fixed issue where form components wouldn't work in pages opened from bottom sheet
  • Mobile apps: Fixed issue where date picker flow functions would not trigger the second output when user cancelled
  • Mobile apps: Fixed issue where opening a regular page from initial view would look like modal
  • Mobile apps: Fixed issue where picking undefined value in dropdown would make the dropdown to select the nearest defined value
  • iOS apps: Fixed date picker flow function to be compatible with iOS 14.4
  • iOS apps: Fixed issue where tapping spot marker component would make it flicker
  • Android apps: Fixed issue where pick files flow function wouldn't let you pick just text or PDF files
  • Android apps: Fixed issue where picking files would return the local filesystem path in wrong format
  • Android apps: Fixed major crash issues with rapid visibility changes
  • Android apps: Deprecated systemVars.fileSystem.directories.android.ringtones
  • Android apps: Fixed issue where playing recorded audio would not work
  • Android apps: Fixed issue where having formula expression with value 'none' in border style would crash the app
  • Web apps: Fixed issue where having special characters in the app names would make the app crash
  • Web apps: Fixed issue where having background image on containers would hide some text components behind the image
  • Web apps: Fixed issue where spot marker component would return null when the component was clicked
  • Web apps: Fixed issue where recycler view would add additional padding to the right hand side for native scroll bar
  • Web apps: Fixed issue where pick files flow function wouldn't let you pick multiple files
  • Web apps: Fixed issue where systemVars.dimensions.viewport would become undefined if the window was resized
  • Web apps: Fixed issue where alert text would be invisible if your apps primary text color was withe
  • Web apps: Completely reworked web toasts
  • Built web app: Fixed issue where custom fonts wouldn't work

Known issues

  • Android apps: In some cases, setting page variable before hiding spinner makes the app crash

Platform release #157 (2021-06-09)

Features

  • You can now use "change" events for component properties and output values in your logic! This was previously available only when working inside an isolation mode, but you can now use these events in "Receive event" logic node also when using any component.
  • When repeating a component, you can now bind to the whole repeated data object, even without a formula. Related to this new feature, we have also made under-the-hood improvements how repeated components are configured. Therefore, you may encounter the following warnings:
    • "This repeat is saved in deprecated format" text when editing "Repeat with". Nothing to worry here, just click the link below to get rid of this warning!
    • "Property of data item in repeat (deprecated)" text when binding to repeated data. Nothing to worry here either, but you can switch to the new option "Date item in repeat", to get rid of the deprecation notice. This new option allows binding to the repeated item itself, not just to its properties.

Runtime release 2.6.5 (2021-04-28)

Fixes

  • Fixed an issue where spinner would not be visible in build web apps
  • Fixed an issue where replacing a page right after dismissing initial view, would crash the preview app
  • Fixed an issue where some formula functions in the visible field of components would crash the app
  • Fixed an issue where opening a page with Card with large image component would crash the app

Platform release #155 (2021-04-26)

Features

  • AppGyver Authentication and Cloud Storage has been sunset and will be taken offline on 1st August 2021. There will be an alternative built-in solution available soon, along with with migration instructions. Stay tuned!

Fixes

  • Build service is now building with iOS 14 SDK - Builds that were built before 2021-04-26 will need to be rebuilt in order to submit them to the App Store

Platform release #154 (2021-04-23)

Features

  • Added new onChange event for composite component's private variables, internal properties and output values

Fixes

  • Formula editor now breaks lines properly when the output is too long to display on one line, or if the outputs type is list or object

Runtime release 2.6.3 (2021-04-06)

Features

  • App loading times in the Preview apps improved drastically
  • New onChange events for composite component variables internal property, private variable and output value

Fixes

Platform release #152 (2021-03-31)

Fixes

  • Prevent accidentally deleting the global canvas from your app from the page listing. If you have accidentally deleted it and want it restored, you can copy and paste this token to the Marketplace search field and re-install the canvas to your app: EOOC_chYO2wMtUaFFDqyDg

Changes

  • Remove the following system variable that is deprecated on Android systems and should not be used any more: fileSystem.directories.android.ringtones

Experimental 🔒

  • 🔒 If beta features are enabled for the app, you can now bind certain kind of formulas to two-way-bindable component properties, such as input field values. The runtime support for this is not yet publicly available. This is therefore market as experimental.

Platform release #151 (2021-03-19)

Fixes

  • Fixed an issue where if you had navigation disabled, and then setting the initial page from authentication tab, that would also set the page after login to be the same

Experimental 🔒

This release includes new features to an early preview version of a new product that is only available to a limited group of users.

Platform hotfix #149D (2021-03-08)

Fixes

  • Fixed an issue where the logic canvas would sometimes misalign the visual connections between logic nodes and/or they would be completely invisible
  • Fixed an issue in the build service where the error logs of failing builds would not be included in the emails you receive after the builds have finished
  • Fixed an issue where AppGyver Cloud Storage would return status code 401 (unauthorized) in built web apps (Note that this fix does not required a new build)

Runtime release 2.5.12 (2021-03-03)

Fixes

  • Fixed an issue where saving an app that is open in preview, would make all of the system variables undefined
  • Fixed an issue where systemVars. bound via formula into a text field, would resolve to be undefined
  • Fixed an issue where Open page flow function would not work from bottom sheet
  • Fixed an issue where if navigated with the bottom tabs and a page was opened with Open page flow function on the second page, it would open to the previous tab; after that navigation would stop working

Runtime release 2.5.10 (2021-02-26)

Fixes

  • Fixed an issue where Open page flow function would not work on initial view if you tried to navigate to page which had Allow page to be opened without authentication
  • Fixed an issue where navigating back from modal would bring you back to the app selection screen on iOS
  • Fixed an issue where certain sequence of navigation actions would make any further navigation not work
  • Fixed an issue where if you had Hide spinner followed by Return to initial view flow functions; It would crash the app on Android
  • Fixed an issue where nully values in dropdown menus would not show the labels
  • Fixed an issue where flow functions that opened a modal (camera, video player, PDF preview etc) would not work
  • Fixed an issue where on built standalone Android apps, opening page with dropdown would freeze/crash the app (requires component update from the marketplace!)

Runtime release 2.5.5 (2021-02-24)

Features

  • Recycler View performance greatly improved
  • Further performance improvements to page rendering speed

Fixes

  • Fixed an issue where the Image component's onLoaded and onError -events would crashed the preview app
  • Fixed an issue where system variables would not work in the formula editor
  • Fixed an issue where pages opened in modals were opening with an animation from the side instead of the bottom towards top
  • Fixed an issue where a standalone Android app would get stuck in infinite splash screen after closing the app via native back button and then reopening it
  • Fixed an issue where preview apps run on Android 11 would give EACCESS error if you tried to access certain directories (https://appgyver.canny.io/bug-reports/p/eaccess-permission-denied-when-using-pick-images-from-library-flow-with-certain)
  • Fixed an issue where app variable set on another page would not propagate to other pages before another app variable was set on said said other page
  • Fixed and issue where Open page flow function would not work if current.prop was set as a page parameter
  • Fixed an issue where tapping an inner container/component without Component tap -event would not trigger the parent containers Component tap event
  • Fixed an issue where tapping a stack of containers that have Component tap events, would trigger all of the Component tap events instead of only the one that was tapped
  • Fixed an issue where nested repeat values did not work correctly with direct or formula bindings
  • Fixed an issue where the app would get stuck on infinite spinner when trying to authenticate with navigation disabled
  • Fixed an issue where primitive input onChange -event would not trigger on the input value change
  • Fixed an issue where input field would not display placeholder if the value property was empty
  • Fixed an issue with web preview, where alerts would not open in initial view
  • Fixed an issue where formula binding repeatedInfo would not work in flow functions
  • Fixed an issue where if an array of objects was repeated via formula and simultaneously it was filtered with the SELECT formula function, some 2-way bound properties would not change, e.g. toggle would be stuck to its initial repeat value
  • Fixed instability issues all around the board
  • Fixed multiple issues preventing custom fonts from working properly

Runtime BETA release 2.5.3 (2021-02-16)

The beta program

The beta program lets you use the most recent version of the runtime.
This also means that things might not be as polished as in the stable version; This being said, if you see anything weird happening or clear bugs whilst using the beta runtime, we would like you to report them either on our forums or more preferably via our bug tracker!
If you do find bugs, please include the version of the runtime in the ticket! You should also include some relevant info, for example screenshot of logic canvas. If you are not sure where the bug is happening, you can describe what is broken and include your app ID and page number to the ticket so that we can take a look! https://platform.appgyver.com/builder/applications/<APP ID>/pages/4

Join the beta program!

To join the beta program you can follow the links below, they will have instructions how to join!
To test the beta in web preview you do not need to join any program. You can just use the link below as if you were using the usual web preview.
The beta version is also buildable via the build service, you know that it is beta build from the (beta) tag in the name!

Fixes

  • Fixed an issue where image component's onLoaded and onError -events would crashed the preview app
  • Fixed an issue where system variables would not work if bound via the formula editor
  • Fixed an issue where pages opened in modals were opening from the side instead of the bottom
  • Fixed an issue where built Android app would get stuck in infinite splash screen after closing the app via native back button
  • Fixed an issue where preview apps run on Android 11 would give EACCESS error if you tried to access certain directories
  • Fixed an issue where app variable set on another page would not propagate to other pages before another app variable was set on said said other page
  • Fixed and issue where Open page -flow function would not work if current.prop was set as a page parameter
  • Fixed an issue where tapping an inner container/component without Component tap -event would not trigger the parent containers Component tap -event
  • Fixed an issue where tapping a stack of containers that have component tap -events, would trigger all of the component tap -events instead of only the one that was tapped
  • Fixed an issue where nested repeat values did not work correctly with direct or formula bindings
  • Fixed an issue where the app would get stuck on infinite spinner when trying to authenticate with navigation disabled
  • Fixed an issue where primitive input onChange -event would not trigger on the input value change
  • Fixed an issue where input field would not display placeholder if the value property was empty
  • Fixed an issue with web preview, where alerts would not open in initial view
  • Fixed an issue where formula binding repeatedInfo would not work in flow functions
  • Fixed an issue where if an array of objects was repeated via formula and simultaneously it was filtered with the SELECT formula function, some 2-way bound properties would not change, e.g. toggle would be stuck to its initial repeat value
  • Fixed random crash issues all around the board

Features

  • Recycler view out of beta!

Platform hotfix #149C (2021-02-16)

Features

  • When "Stretch to the viewport height" is enabled for a page, indicate this on the component canvas with a dashed line around the canvas area.

Fixes

  • Changing "Advanced properties" of a page now correctly make the "Save" button visible.
  • Fixed an issue with newly created REST API data resources where requests did not work correctly until "Base URL" has been edited.

Platform hotfix #149B (2021-02-12)

Fixes

  • Fixed a bug when repeating data inside another repeat. If the inner repeat was configured to repeat from "current" (or any custom name), this might not work correctly in the app. If you are facing this issue, please open the inner repeat in the Binding editor dialog and click "Save" once. This should fix the app for you.

Runtime release 2.4.35 (2021-02-08)

Build service release only. Fixes iOS build errors incurred by 2.4.33.

Platform hotfix #149A (2021-02-08)

Fixes

  • Fixed the schema of a data variable that uses the "new" option with a REST API data resource
  • Fixed the Composer freezing for a while when testing and auto-setting the schema of REST API data resources when the response data is very large in size.

Runtime release 2.4.33 (2021-02-05)

Features

  • Significant performance improvements
  • Added a list of OSS licenses; It can be found under the Preview app's settings page

Fixes

  • Fixed an issue where SVG images did not render on mobile devices
  • Fixed an issue introduced in 2.4.28 where standalone builds were not rendering images uploaded via the Composer Pro asset manager
  • Fixed an issue where dynamic visibility based on a page variable binding was not behaving as expected
  • Fixed an issue where repeated current was not behaving as expected when used for dynamic visibility
  • Fixed issue where an infinite spinner was shown when the Preview app failed to load the app descriptor; now a timeout message is shown and the download is retried

Platform release #149 (2021-02-04)

Fixes

  • Fixed a bug when duplicating cells inside a Row component where after saving the duplicated cell sometimes disappeared.
  • Fixed the flag images on the Sign up form dropdown selector.

Platform release #148 (2021-02-02)

Features

  • Added an Update all button to the Marketplace to install all available updates
  • Added a modal that checks if there are components or flow functions that might require an upgrade before working with the v2 runtime

Changes

  • When enabling AppGyver Auth for an app, a demo user is no longer auto-generated

Fixes

  • Fixed issue where the REST API direct integration test bench did not correctly show the return value of a PUT request
  • Fixed issue where composite component properties' initial values were not always displayed correctly on the interface builder canvas
  • Fixed issue where the global toolbar did not work correctly on Safari browsers
  • Removed deprecated events from the Receive event node's Event source dropdown

Legacy runtime release 1.9.26 (2021-01-29)

Build Service release only. Only relevant if you are still building your app using the old v1.9 runtime, which is the one used by the AppGyver Legend preview apps.

Changes

  • Build Service now only caches assets uploaded from the Composer Pro asset manager into the standalone binary/packages, replacing the previous functionality of caching all URLs defined in the application descriptor

Fixes

  • Fixed issues where web app deployments after the initial one were cached incorrectly, resulting in the newly deployed version not being immediately available

Platform hotfix #147A (2021-01-27)

Fixes

  • Fixed missing function suggestions in the Formula editor

Platform release #147 (2021-01-25)

Added

  • Formula editor provides suggestions inside list structures as well

Fixes

  • Small visual fixes on the password reset view

Experimental 🔒

This release includes an early preview version of a new product that is only available to a limited group of users.

Runtime release 2.4.28 (2021-01-22)

Fixes

  • Fixed issue where App launched event sometimes triggered more than once per app launch
  • Fixed issue where Animate component flow function did not work on some devices
  • Fixed issue where a repeated Toggle or Checkbox component's onChange event didn't return the correct value / the value was an empty object
  • Fixed issue where image rendering in repeated lists could break when switching to another tab and back
  • Fixed issue where a dynamic binding for a Button component's Disabled property functioned correctly but made the button always look disabled

Runtime release 2.4.27 (2021-01-12)

Fixes

  • Fixed issue where some of the default fonts were not showing correctly in the AppGyver Preview app
  • Fixed issue where the Dropdown component onChange event did not function correctly when used inside a nested repeat
  • Fixed issue where data variable direct bindings, or object.value type bindings when used inside a repeated data variable did not work in flow functions
  • Fixed issue where the List divider component was not visible
  • Fixed issue where a Dropdown component's Label did not update to undefined when its Value was programmmatically switched to null
  • Fixed issue where logout in a standalone web app with navigation menu enabled left the menu structure visible

Runtime release 2.4.26 (2021-01-03)

Build Service only release; fixes issue where web builds sometimes failed. No changes on other platforms.

Runtime release 2.4.25 (2020-12-22)

Build Service only release; fixes issue where Apple App Store rejected a new iOS binary with an error message complaining about deprecated UIWebView usage. No changes on other platforms.

Runtime release 2.4.24 (2020-12-21)

Fixes

Platform hotfix #146A (2020-12-14)

Fixes

  • Two-way bindable component properties, e.g. Value property of an Input field component, can be reverted back to "No value" option
  • Fixed the preview for certain components in the Marketplace, e.g. the Thumbnail carousel component.
  • Fixed a crash in the Marketplace dialog when navigating in a certain way, e.g. when moving to a Updates tab and then to Data tab

Runtime release 2.4.21 (2020-12-12)

Fixes

  • Fixed issue where upgrading from a 1.x version of the Preview app would cause app listing to not load.
  • Fixed issue where Rich text component did not apply Typography styles.
  • Fixed issue where using formulas in Dropdown component Option list property items (when using Custom list binding type) did not work.
  • Fixed issues with direct two-way property bindings in nested repeated items.
  • Fixed issues with some components inside Recycler view being unresponsive to user interaction.
  • Fixed issue where web backgrounds were being cut off before the end of the page.

Platform release #146 and runtime release 2.4.17 (2020-12-10)

This major release comes with an upgraded version of the mobile/web runtime, so be sure to update your AppGyver Preview app from Apple App Store/Google Play!

Breaking changes

We've strived to keep everything working seamlessly, so opening your app after upgrading the Preview app should not result in any changed behaviour by default – please let us know of any regressions on https://tracker.appgyver.com!
That said, there are a few breaking changes to take note of.

Update flow functions

All flow functions should be updated to their latest versions to ensure compatibility.
Specifically, older versions of Show spinner and Hide spinner will not work with the new v2 runtime.

Web navigation

Web navigation has been improved, and now there are proper modern routes that can be refreshed (an upcoming feature is to enable you to customize the routes too).
With this update, we no longer try to emulate mobile-style stack navigation on web. The only active contexts are the current page and the global canvas. This means that e.g. events on pages not active are not triggered – such event handling should be moved to the global canvas.
Also, you can no longer open the same page twice in a row, unless the new page has different parameters. Thus, you can open your "Movie Details" page with id parameter 1, then open "Movie Details" again with id parameter 2 – but not with id 1 again.
Finally, we've disabled the soft back button on web navigation header, as it's an anti-pattern and browser native back should be used instead. The plan is that you'll be able to enable it back manually in an upcoming release!

Non-authenticated pages

If your app has auth enabled, and you want to open a page (e.g. "Create account") from the login view, you need to enable the new Allow page to be opened without authentication property for those pages.
The plus side is that now opening regular and modal pages from the login view works the same on all platforms!

Access to the old runtime

If you find yourself needing access to the old runtime, it is available via Preview app versions under the AppGyver Legend codename:
Furthermore, you can now still build 1.9.22 runtime version standalone apps via the Build Service.

Known issues

The below issues are known regressions from 1.9.22 present in 2.4.17 runtime, that will be fixed soon in an upcoming release.
  • Component drop shadows are not working on Android
  • Composite component internal properties, output values and private variables bindings do not work if the binding is to an object sub-property directly, i.e. internalProps.obj.a doesn't work but formula internalProps.obj.b + "!" does.
  • Rich text component doesn't apply Typography styles
  • Using formulas in Dropdown component Option list property items (when using Custom list binding type) doesn't work

New features

Composite components v2

A major change is how composite component properties are treated. The move is towards a much more isolated design, where the idea is that a composite component will never utilize page/app/data variables or other app-specific functionalities directly, but rather expose events and properties that can then be hooked up to your actual app logic.
This paves the way for true reusability across apps, and we already have the first new components published.
The UI in isolation mode has been overhauled, with properties now available via a switch at the top.
See sample components in the gallery!

Component property types

To clarify how the different component properties behave, they have been split into three types, indicated by a little arrow icon next to the property name.
The biggest difference is that the new two-way property type limits what can be bound to them to ensure correct functionality.
  • Configuration properties are "one-way" into the component, i.e. they are set from the "outside" and the component never changes them. For example, text content or input keyboard type. You can bind anything to them.
  • Two-way properties are "two-way" in the sense that changes in the bound value (e.g. page variable) affect the component, but the component itself can also affect the bound value (e.g. bound page variable changes when the user inputs something). You can only bind page/data/app variables to two-way properties.
  • Output values are "read-only" from the app perspective, and meant to reflect an internal state of the component, such as "Loading" for a data list component. This will be used more in Composite components v2 – read more below!

Conditional renderer

The new Conditional renderer component is now available to simplify situations where you want to render different things based on your app state.

Set repeated item value flow function

This new flow function acts as a shorthand to change the value of current in a repeated item’s logic context. This will only work if repeating data directly from an app/page/data variable, but not otherwise.
For example, you could be repeating a list where the items have a Timestamp property. To update that to the current time, you would simply use Set repeated item value, setting Timestamp to formula NOW().

Two-way bound repeated inputs

When repeating an input field (or any component with a value/two-way type property), you can now directly bind e.g. current.price or any other formula to the repeated component’s property, with changes propagating back to the variable bound as the repeat source.
Note that this only works for direct app/page/data variable bindings, not through formulas yet.

Custom fonts in Preview apps

Custom fonts now work in Preview apps on all platforms.

New formula functions

The following new formula functions are now available for use:
  • UNION
  • SYMMETRIC_DIFFERENCE
  • SPLICE
  • SOME
  • SET_ITEM
  • SET_ITEM_AT
  • REMOVE_ITEMS_AT
  • REMOVE_ITEM
  • LAST_ITEM
  • INTERSECTION
  • INSERT_ITEMS_AT
  • INSERT_ITEM_AT
  • FLATTEN
  • FIRST_ITEM
  • EXACTLY_ONE
  • EVERY
  • DIFFERENCE

Improvements to repeats with formulas

Previously, if you set a list to repeat based on a formula like
1
SELECT(appVars.sourceData, CONTAINS(item.title, pageVars.searchString))
Copied!
changes to pageVars.searchString caused issues with "ghost" components appearing.

Recycler view (beta)

The new Recycler view (beta) component allows you to load and display almost arbitrarily large (thousands of items) lists fast. It works by only rendering a certain number of items on the screen at once, and when the user scrolls, rendering them just-in-time to give the appearance of a never-ending list.
A recycler view must have a single child component that is set to repeat itself. It also must have a height like Scroll view, either via flex rules or by setting a specific height property.
You cannot repeat the recycler view component itself.

Camera supports selfie mode

The Take photo flow function has new Camera type property – set it to front for selfie camera!

Fixes

Release #145 (2020-11-20)

Added

Fixed

  • Fixed the UI issue when editing JavaScript logic functions where inputs with long labels could not be removed, as the remove icon disappeared.

Beta features 🔒

These features are only available for the users accepted to the Beta program and they do require the latest beta version of the AppGyver app in order to work. These features might still change before becoming available to everyone.
  • 🔒 When editing a component in isolation mode, you can add the following new events by using the "Receive event" in logic:
    • Component mounted
    • Component became visible
    • Component became hidden