Edinburgh

_images/release-notes-hero.png

Welcome to the documentation for the Edinburgh release!

Don’t hesitate to send your feedback on these new features as we improve the product:

Major features

  • Client-side validation additions:

    • Validate based on length as defined in the field’s metadata: Now, you can display a specific runtime error when users exceed the maximum number of allowed characters. This is determined by the data source or field metadata overrides.

    • Set custom error messages for required fields. Whether or not a field is required is defined by metadata (the data source itself requires the field) or by Skuid’s own Required model field property.

      Previously, these required fields were not as configurable, displaying a standard error message when fields were left blank. With this new feature, you can set custom messages that better guide your users.

  • Calendar component enhancements

    • Improved handling of Unassigned groups: The grouping feature on Skuid’s Calendar component allows for views to be divided based on a field value from an event source. If that field did not have a value, the event would display in the Unassigned category.

      Previously this category was always visible and not configurable. But in Edinburgh it’s possible to both relabel this category and to select how (always, never, if values exist) where it should be shown (top, bottom, or alphabetically)

    • Runtime improvements: We also made a variety of improvements to the component in Dubai Update 2 and Dubai Update 3. In case you missed them:

      • Improved time zone handling:

        • Clicking “+n more events” on a day previously would sometimes display the previous day’s events

        • Expanding single date events (like tasks) which should not be able to expand/contract

        • Event creation showing an error in the modal even though it was successful before closing the modal

        • Save button disabled state when creating/editing an event in the modal

        • Single date event sources should now always render on the same date no matter the timezone/locale

        • Start/end date should now always render on the same date no matter the timezone/locale

        • Start/end datetime should adapt to the org locale setting as expected

        • Start/end datetime should render based on timezone properly for users at runtime.

          As an example: In America/New_York an event is created for 11am. In Australia/Sydney it should be represented at 3am the next day.

      • {{startDate}} and {{endDate}} now provide date values instead of datetime (which are available through startDateTime and endDateTime)

      • “View more events” buttons now work in Salesforce Lightning

      • Calendar day view now better scales to the page and properly displays hourly divisions

  • Use Apex to provide authentication values in data sources: (SFX only) Apex, Salesforce’s server-side programming language, can now be used to return values used in authentication requests from Skuid’s proxy.

    For instance, some authentication tokens may be longer than 256 characters or saved in a different secret store than Skuid. With this feature, you can write an Apex class that retrieves and returns these values as a string and use it with the $Apex merge variable.

  • Sanitize fields values for CSV export on Table component: When exporting data it’s often best to sanitize field values of characters that, when imported to another program, can cause unintended consequences. These are often characters that activate logic or formula functions. Some instances are accidental, some are malicious, and this feature helps better protect users when it occurs.

    While this feature has previously been available on Skuid Database, with Edinburgh we’ve added the ability to sanitize field values to all Table components on both Skuid NLX and Skuid SFX.

Released in beta

Beta features represent valuable Skuid additions that we offer to cutting-edge builders for feedback before we mark them as generally available.

  • SSO user provisioning enhancements: (NLX only) Single sign-on (SSO) has been possible through the SAML protocol on Skuid NLX, but Edinburgh brings feature enhancements to Skuid NLX’s single sign-on (SSO) user provisioning features:

    • It’s now possible to have a user’s Skuid attributes (like email or locale) update based on the user’s SAML attributes from your identity provider.
    • Automatically reactivate previously deactivated Skuid users if they login from an IdP. This is useful particularly for subscription management, ensuring you can safely deactivate users without accidentally locking out your active Skuid users.
  • Skuid Database schema import/export with skuid CLI: (NLX only) It’s now possible to retrieve and deploy Skuid Database schema, or metadata structure, from one Skuid site to another— or redeploy it the current environment if needed.

    This is used to move the structure of a Skuid Database from one environment (like a sandbox site) to another (like a production site).

    While it’s not very common to have the same data within a sandbox and production site, it’s possible to use this feature in tandem with the CSV Export/Import feature of Skuid Database to move both the schema and data from one Skuid site to another.

Released in pilot

Pilot features are not yet intended for prime time production use, but they are available to select customers to gather feedback as we prepare them for a broader audience.

To request access to features listed below, contact product@skuid.com.

  • Custom domains: (NLX only) This long-requested branding feature is being released in pilot for Edinburgh. With this it’s possible to have your Skuid NLX site listed entirely under your own web domain. If your goal is to provide a public portal for your Skuid implementation or private label your Skuid apps, try using custom domains to reinforce your brand.

  • Session variables: (NLX only) In single sign-on use cases, it’s not uncommon to store more detailed user information in the identity provider and then pass that information along to service providers as SAML Attributes. These attributes can now be mapped to session variables to be used in Skuid applications, primarily for data source object conditions on SQL data sources.

    Note

    Session variables are only accessible during a user session to avoid any security concerns surrounding storing SAML attributes.

Other updates

  • Apply margin to all sides of a component: Previously builders had to set margins for components for each side individually. With this update, it’s now possible to set a consistent margin value for all sides at once.
  • On the Table component, global actions now have enable conditions and style variant conditions.
  • Continued improvements to our backend technologies on Skuid NLX for scaling, management, and performance
  • On Skuid SFX, we’ve updated property labels and default values related to Salesforce Classic header and sidebar:
    • “Show salesforce header” is now “Show Salesforce Classic header”
    • “Show salesforce sidebar” is now “Show Salesforce Classic sidebar”
    • Both properties are now unchecked by default
  • In Skuid NLX, we now display a count of both active and inactive users for app permission sets and indicate which users are inactive from a permission set’s detail screen. We’ve also improved dependency checks related to permission sets and users.

Breaking changes

As of 16.0.3, <script> tags are no longer executed from within Text components containing HTML. This was never a supported behavior, and it will now no longer occur.

For proper snippet execution, all JavaScript must be stored in a supported resource type. Snippets can be triggered using Skuid’s event subscription framework or by using the Action Framework.

Included tickets