Edinburgh series

_images/release-notes-hero.png

Welcome to the documentation for the Edinburgh series of releases!

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

Early access participation

To participate in early access on Skuid NLX, you must provision an early access site. Contact earlyaccess@skuid.com to coordinate provisioning your site.

Edinburgh Update 4

Included tickets [[]]

16.5.1.0

PLIN-5441

Internal NLX administration improvements

PLIN-5372

Internal feature improvements related to app URLs on NLX

PLIN-5373

Internal feature improvements related to app URLs on NLX

CORE-5256

Internal deployment script updates

PLIN-5149

Internal config adjustments to support future microservices

CORE-5306

Fix menu selection issue where end users could not select certain elements, like search inputs, when a select menu was open

PLIN-5397

Fix issue with NLX new user registration where Create button would enable even if the user email were blank

CORE-5136

Fix inconsistent action sequence label issue for sequences created before EU3 that were event-triggered

CORE-5195

Fix Design System Studio issue where the color selection dropdown would not display typeahead options

CORE-5245

Fix Design System Studio issue where the color selection dropdown options would show color ID values instead of their labels

CORE-5234

Fix Design System Studio issue where spacing variables would display incorrect names/values and display JavaScript errors in the console

CORE-5236

Fix dependent page issue where action sequences could not be reordered in the Composer

CORE-5285

Fix Calendar issue where event source actions were broken in the Composer

CORE-5270

Fix autocomplete/combobox issue where user dropdown selections were not captured when a component was in read with inline edit mode

CORE-5294

Fix authentication provider issue where additional token request body parameters were not being sent properly at runtime, which notably affected Sharepoint data sources

CORE-5232

Fix aggregate model issue where client-side conditions would not properly update the model

CORE-5254

Fix “Run component action” issue where Form component actions would not appear if the component was in a modal that had not yet been opened in the Composer browser window

CORE-5227

Adjust combobox field input behaviors for existing field values so that all menu options appear on focus and when clicked. Previously, combobox inputs would filter based the existing field value—meaning users would first have to delete that value to see the full list of options.

New REST data source development

The following tickets represent code changes made while developing the new REST data source:

PLIN-5043 PLIN-5055 PLIN-5265 PLIN-5315 PLIN-5369 PLIN-5377 PLIN-5385 PLIN-5402 PLIN-5406

New Composer development

The following tickets represent code changes made while developing the new Composer experience:

CORE-5114 CORE-5159

v16.5.0.0

CORE-4946

On Skuid SFX, implement the JsonAccess annotation to correct unexpected behaviors arising from serialization logic—notably Skuid model saves—that would cause “Apex object cannot be serialized” errors.

CORE-4967

Added HTML support in the following component properties through use of related “Allow HTML” toggle properties:

  • Button: Button label
  • Button Group: Label, when displayed as a menu
  • Wizard: Step labels
  • Header: Title and subtitle
  • Message Area: Title, as well as description
  • Search: In each return object’s header display name and display template
  • Toast (from the Show toast action): Message to display
  • Deck: Title
  • Table: Title, as well as column headers
  • List: Title
CORE-5044

Fix Header component issue where its buttons were not respecting record context after their first use, resulting in experiences where editing one record would unexpectedly update all records

CORE-5052

Update labeling to reflect pilot status of new Composer

CORE-5061

Hyphenate “Vertical top-level navigation” in the Design System Studio

CORE-5076

Add “Beta” tag to Chat component and OpenAI data source type

CORE-5078

On SFX, adjust styles of components within Lightning Experience to account for Salesforce CSS updates

CORE-5090

Fix sub-navigation item issue where merge variables were not being processed properly for URLs within the item’s Go to URL action

CORE-5094

Codebase and internal process enhancements to better avoid APIs noted as distorted by Salesforce

CORE-5095

Fix issue with nested properties not properly updating the selected area

CORE-5096

Resolve design system file inconsistencies that appear when downloading the file from Skuid’s admin interface versus retrieving it via the CLI, which began after recent updates to streamline that file’s format

CORE-5097

OpenAI data source (for use with Chat component) development

CORE-5098

Fix model regression where the child relationships sub-tab would not appear within the model fields tab

CORE-5100

Fix issue where “Warn users if page has unsaved changes” page property would unexpectedly revert to “Yes” even when set to “No,” which affected by standard page edits and v1-v2 page migrations

CORE-5102

Fix Pages list issue where the Preview option would cause errors when pages required parameters—not opening the modal for setting those parameters and ultimately not previewing the page

CORE-5103

Ensure OpenAI data source functions with the API Keys authentication option

CORE-5105

Adjust streamlined action sequence triggering behavior to account for issues surrounding what were previously event-triggered sequences

CORE-5106

CDN deployment config updates

CORE-5107

Security-related dependency upgrades

CORE-5108

Add proper permissions for new Composer experience to Skuid Page Builder permission set

CORE-5115

Fix Composer issue where model fields and conditions were being unexpectedly removed when the builder selected the model within the model list

CORE-5117

Fix Chart component regression where series interactions were unavailable—instead appearing as an unusable text field within the Properties pane

CORE-5119

Ensure consistency between SFX and NLX API calls for the OpenAI data source type

CORE-5120

Migrate to a newer, non-deprecated third-party library for some UI elements

CORE-5125

Upgrade timezone-related dependencies

CORE-5126

Internal file size logging improvements

CORE-5127

Fix Salesforce mobile issue where, in addition to the native mobile date picker, Skuid’s date picker would sometimes unexpectedly appear and sometimes remain even after picking a date

CORE-5128

Code base modularization

CORE-5131

JS API additions to better test pages when loaded as included pages

CORE-5132

Ensure Chat components configured for model rows display new rows as expected when their models are requeried

CORE-5134

Fix issue where Skuid’s mass update modal would not function properly with number and currency fields—causing a call stack error

CORE-5135

Security-related dependency upgrades

CORE-5138

Ensure that UI-only picklist fields marked as required auto-select the first picklist entry, which is the current behavior for non-UI-only fields

CORE-5145

Fix Form issue where the component would attempt to render fields that were not in the component’s model. Notably this issue could occur when, due to user permissions, fields were removed from the model to prevent unauthorized access, but the component would still attempt to render those removed fields.

CORE-5149

Fix issue where “Hide label” property (A Form-exclusive property) appeared on Table component fields

CORE-5150

Fix issue with UI-only filters where the inability to retrieve condition logic caused “getField is not a function” errors—particularly for date fields

CORE-5155

Remove unused SFX labels from source control files

CORE-5158

Fix Composer issue where the “Custom field renderer” property rendered as a text input instead of a combobox

CORE-5159

Adjust process for renaming page revisions to utilize a modal for improved UX

CORE-5161

Fix new row creation regression where fields on the new row that were displayed as comboboxes would have their values cleared out when the row was saved

CORE-5167

Fix issue with “Last/Next n <unit>” related date property values, where number values were reset to 1 in the page XML instead of the entered number value whenever the date range value was changed. For example, if a user had selected “Next n weeks” and set N to 5, then changed to “Last n weeks”, the 5 would remain in the Composer but would be saved in XML as 1.

CORE-5169

Internal code refactoring to address linting issues

CORE-5174

Remove unnecessary content from exported design system JSON files

CORE-5175

Refactoring of chat data source actions for future development

CORE-5176

Fix issue where setting a field’s label position to “Right of Input” on checkbox fields broke HTML rendering in labels

CORE-5182

For Navigation and Vertical Navigation components in the DSS, add the ability to set font family—and improve the display and grouping of various text properties

CORE-5191

Upgrade Mustache and Moment libraries in API v1 to address security concerns

CORE-5201

Fix Vertical Navigation issue where navigation items with the default “Go to URL” action would not respect design system styles, and instead always appeared as blue

CORE-5202

Fix Calendar component style issue where the changing the “Default color” value for an event on a Calendar in the Design System Studio would not properly update the color

CORE-5223

Add “col” scope to Table column headers to improve accessibility for screen reader tools like JAWS

CORE-5239

Fix issue where the “Allow HTML” property would cause console errors in the Composer

CORE-5248

Non-customer facing metadata API changes to facilitate build deployments

PLIN-5354

Fix issue in Skuid Database where the CSV import view would not scroll, preventing users from seeing all fields that may be imported for CSV files with many columns

New REST data source development

The following tickets represent code changes made while developing the new REST data source:

PLIN-4923 PLIN-4928 PLIN-4994 PLIN-4996 PLIN-5043 PLIN-5170 PLIN-5173 PLIN-5186 PLIN-5194 PLIN-5197 PLIN-5211 PLIN-5225 PLIN-5255 PLIN-5268 PLIN-5270 PLIN-5285 PLIN-5288 PLIN-5292 PLIN-5301 PLIN-5310 PLIN-5314 PLIN-5350 PLIN-5360 PLIN-5362 PLIN-5363 PLIN-5370 PLIN-5375

New Composer development

The following tickets represent code changes made while developing the new Composer experience:

CORE-5081 CORE-5083 CORE-5084 CORE-5089 CORE-5058 CORE-5060 CORE-5062 CORE-5074 CORE-5099 CORE-5104 CORE-5109 CORE-5110 CORE-5111 CORE-5113 CORE-5114 CORE-5123 CORE-5124 CORE-5137 CORE-5143 CORE-5147 CORE-5152 CORE-5153 CORE-5165 CORE-5168 CORE-5170 CORE-5171 CORE-5172 CORE-5173 CORE-5179 CORE-5181 CORE-4355 CORE-4377 CORE-4475 CORE-4541 CORE-4621 CORE-4660 CORE-4803 CORE-4807 CORE-4826 CORE-4844 CORE-4884 CORE-4885 CORE-4923 CORE-4930 CORE-4943 CORE-4965 CORE-5036 CORE-5207 CORE-5211 CORE-5212 CORE-5213 CORE-5214 CORE-5215 CORE-5217 CORE-5221 CORE-5231 CORE-5240 CORE-5241

Future feature development

The following tickets represent internal code changes made for future features.

CORE-3499 PLIN-4683 PLIN-4748 PLIN-5062 PLIN-5126

AWS authentication proxy updates

The following tickets represent code changes made to the AWS authentication proxy service:

  • PLIN-5229: Internal documentation updates
  • PLIN-5300: Dependency upgrades related to AWS authentication features
  • PLIN-5304: Dependency upgrades related to AWS authentication features
  • PLIN-5312: Deployment configuration updates related to AWS authentication features
  • PLIN-5313: Update method for session management related to AWS authentication features

Edinburgh Update 3

Feature updates

Action sequences: Streamlined and enhanced

Action sequences provide a centralized place to create lists of actions in your Skuid page. Previously, there were three separate types: reusable, event-triggered, and hotkey-triggered. But what if you’ve drafted the perfect event-triggered sequence—only to realize you need it activated by a hotkey as well? Have you ever needed to duplicate your reusable sequence used on multiple buttons in order to also make it responsive to events? And what’s with all these types to keep up with?

No longer! With EU3, all action sequences can be triggered however you want. Each sequence is now reusable, as well as event and hotkey triggerable by adjusting settings within the newly added Event and Hotkey tabs.

“But what about my old action sequences?” Don’t worry! Everything has migrated to this new format. Your event-triggered sequences appear as normal sequences with the Events tab populated appropriately, with hotkey-triggered sequences receiving the same treatment.

This is just a hint of the kind of enhancements coming in our new Composer, but more on that in our Pilot features section…

Simpler design system files, better for source control

Source control helps organizations facilitate change management, while keeping a record of how assets and metadata have changed over time. While much of Skuid’s metadata (which can be retrieved via our CLI tools) is in plain text and source control-friendly, design systems haven’t been.

With EU3, we’re changing the way design system assets are formed when retrieved via the CLI—allowing them to more easily be stored and diffed in your source control system of choice. Previously design systems were returned as ZIP files, with additional boilerplate and metadata that made source control for these files difficult.

Now, design systems are returned as JSON files with only the necessary information stored within it in a consistent order. You can expect much smaller files (around 5k lines shorter in some test cases) and easier diffing because of the deterministic nature.

HTML support for more labels and titles

Note

This feature is coming soon to early access.

Skuid components are the building blocks of your Skuid pages, but HTML elements are the building blocks of the web—and they offer a lot of customization options you may need for more advanced styling needs. We’ve steadily increased the component areas where HTML can be used in Skuid, and with this release we’re opening up even more.

Note

Some properties previously allowed HTML to render by default. To better safeguard unintended HTML use, we’ll be adding Allow HTML properties in these areas. To prevent breaking behaviors for existing components, we’ll assume any components with that property unset will have it checked with this update. But any new components added to the page will default Allow HTML to off.

API key authentication method

Many products handle authentication through API keys, which they expect to be passed along in each request to service endpoints. While it’s been possible to access these services in Skuid through its Common request headers or Common request body data, doing so meant potentially exposing your API key to end users who were savvy enough to look at their network traffic.

Worry no longer about those network request sleuths, our new API key authentication method allows you to store encrypted API keys and securely inject them into requests server-side—meaning end users never see those credentials.

Pilot features

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 earlyaccess@skuid.com.

Chat component

There haven’t been any transformational technological advancements related to artificial intelligence in the last year, right? No large, language-related models to make Skuid models of? New ways to use natural speech to produce new workflows and content?

Well just in case there have been, we’re working on a Chat component that enables you to connect to your chosen AI language model of choice. Additionally you can use it for old-fashioned, human-to-human communication as well, like Salesforce’s Chatter functionality.

REST Data Source Console and actions

We’ve been overhauling how builders can build and test their REST data sources. With EU3, we’re ready to launch a closed pilot for this new experience.

With these REST data source enhancements, you can look forward to:

  • REST Data Source Console: A centralized workspace to manage requests and objects in the data source—no more replicating endpoints on each and every page
  • REST data source actions: The addition of data source actions allows you to trigger server logic with Skuid actions in mind. This feature replaces the need for one-off GET or POST actions on your Skuid models, and incorporates your work into Skuid’s Action Framework

This experience is under heavy development, and we look forward to your feedback.

New Composer

Drum roll please: There’s a new Composer coming! But this is no mere visual refresh—though we think it looks fresher too. Some major ideas we’re developing in this experience include:

  • More visual development with enhanced canvas rendering: Skuid’s a powerful tool for the citizen developer and the code-wrangling pro, but we want the new Composer to more closely reflect what you’re building without constantly refreshing page previews. Look forward to live style updates and other canvas rendering options
  • Vertical layout: We’ll be moving the Elements and Properties pane to the sides of the Composer, allowing for more vertical canvas space—alongside other sizing changes so the most important elements are highlighted while non-essential elements stay out of the way.
  • Redesigned index: The index is the wayfinder of your Skuid page, and we’ve adjusted its capabilities to allow for faster drag-and-drop page creation and navigation.
  • Consolidation, centralization, and bi-directionality: Skuid pages have a lot of moving parts, and they all depend on each other. Models connected to components, which trigger actions, but only when they render because all their display logic rules are true… It can be a lot to handle—and a lot to navigate.

With the new Composer experience, we’re offering more wayfinding tools and more links between common areas. Go from a component to its model’s properties instantly, see everywhere an action is used, and more.

We’ve also got a lot of modularity and reusability improvements to come for your page logic. What exactly, you may ask? Join the pilot to find out!

This new Composer experience represents a major paradigm shift in Skuid development, and we want your help in making it the best it can be. Contact us to join the closed pilot phase!

Heads up!

Vertical top-level navigation works now, but you may see differences

Previously, Vertical top-level navigation styling properties were not properly applied to the uppermost navigation items. With this change, these properties are now properly applied.

You may see a difference in how your Navigation components render. If so, verify the proper settings are applied in the Vertical top-level navigation properties as well as the Top level navigation item section of the Vertical Navigation component’s style variants.

Included tickets [[]]

v16.4.4.0

CORE-5191

Upgrade Mustache and Moment libraries in API v1 to address security concerns

CORE-5052

Update labeling to reflect pilot status of new Composer

PLIN-5254

Skuid NLX registration page internal improvements

PLIN-5290

Skuid NLX registration page API upgrades

CORE-4946

On Skuid SFX, implement the JsonAccess annotation to correct unexpected behaviors arising from serialization logic—notably Skuid model saves—that would cause “Apex object cannot be serialized” errors.

CORE-5085

On Skuid SFX, fix issue that caused Skuid Page (LWC) Lightning component to have load failures

PLIN-4001

On Skuid NLX, update branding and options available at Help > Resources

PLIN-5222

On Skuid NLX, fix issue where deleting all files and then uploading a new file still displaying the Files screen empty state

PLIN-4295

On Skuid NLX, fix admin UI issue where the Settings navigation item could no longer be opened as a new tab

PLIN-5181

On Skuid NLX, ensure file requests to inactivate sites receive a proper 402 response

PLIN-5358

On Skuid NLX, adjust generated site domain name logic

PLIN-5232

On Skuid NLX, adjust backend save location for style-related files

PLIN-5114

On Skuid NLX user import, fail imports that contain invalid “Type” user record values

PLIN-5293

Necessary empty space changes for internal development

PLIN-5289

Internal tooling improvements

PLIN-5272

Internal support tool improvements related to customer domain searches

PLIN-4588

Improvements to internal tooling related to internal/external site management

PLIN-4911

Improve authentication used for Skuid NLX registration page

CORE-5061

Hyphenate “Vertical top-level navigation” in the Design System Studio

PLIN-5269

For Skuid Database, automatically clean up any CSV files uploaded during an abandoned data import process

PLIN-5243

For Skuid Database, adjust backend save location for uploaded CSV files

CORE-5182

For Navigation and Vertical Navigation components in the DSS, add the ability to set font family—and improve the display and grouping of various text properties

CORE-5090

Fix sub-navigation item issue where merge variables were not being processed properly for URLs within the item’s Go to URL action

CORE-5127

Fix Salesforce mobile issue where, in addition to the native mobile date picker, Skuid’s date picker would sometimes unexpectedly appear and sometimes remain even after picking a date

CORE-5161

Fix new row creation regression where fields on the new row that were displayed as comboboxes would have their values cleared out when the row was saved

CORE-5150

Fix issue with UI-only filters where the inability to retrieve condition logic caused “getField is not a function” errors—particularly for date fields

CORE-5167

Fix issue with “Last/Next n <unit>” related date property values, where number values were reset to 1 in the page XML instead of the entered number value whenever the date range value was changed. For example, if a user had selected “Next n weeks” and set N to 5, then changed to “Last n weeks”, the 5 would remain in the Composer but would be saved in XML as 1.

CORE-5100

Fix issue where “Warn users if page has unsaved changes” page property would unexpectedly revert to “Yes” even when set to “No,” which affected by standard page edits and v1-v2 page migrations

CORE-5134

Fix issue where Skuid’s mass update modal would not function properly with number and currency fields—causing a call stack error

CORE-5176

Fix issue where setting a field’s label position to “Right of Input” on checkbox fields broke HTML rendering in labels

CORE-5149

Fix issue where “Hide label” property (A Form-exclusive property) appeared on Table component fields

PLIN-5001

Fix issue for data sources utilizing the “Separate authentication URL” authentication method, where the header and request body properties were not rendering properly—cuasing 500 errors after creation

CORE-5044

Fix Header component issue where its buttons were not respecting record context after their first use, resulting in experiences where editing one record would unexpectedly update all records

CORE-5145

Fix Form issue where the component would attempt to render fields that were not in the component’s model. Notably this issue could occur when, due to user permissions, fields were removed from the model to prevent unauthorized access, but the component would still attempt to render those removed fields.

CORE-5158

Fix Composer issue where the “Custom field renderer” property rendered as a text input instead of a combobox

CORE-5202

Fix Calendar component style issue where the changing the “Default color” value for an event on a Calendar in the Design System Studio would not properly update the color

CORE-5138

Ensure that UI-only picklist fields marked as required auto-select the first picklist entry, which is the current behavior for non-UI-only fields

PLIN-4283

Enhancements to Skuid NLX app URL options

PLIN-5187

Dependency upgrades

CORE-5128

Code base modularization

CORE-5223

Add “col” scope to Table column headers to improve accessibility for screen reader tools like JAWS

PLIN-4910

Enable use of API key authentication in v1 pages

Template service updates

The following tickets represent code changes made to the NLX service enabling template installation:

  • PLIN-5309: Dependency upgrades
  • DEVOPS-1677: Deployment tooling configuration changes
  • APPS-1691: Remove outdated templates
New REST data source development

The following tickets represent code changes made while developing the new REST data source:

PLIN-4923, PLIN-5127, PLIN-5175, PLIN-5177, PLIN-5179, PLIN-5194, PLIN-5197, PLIN-5211, PLIN-5216, PLIN-5235, PLIN-5267, PLIN-5303, PLIN-5225

New Composer development

The following tickets represent code changes made while developing the new Composer experience:

CORE-4475, CORE-4803, CORE-4923, CORE-5036, CORE-5062, CORE-5084, CORE-5099, CORE-5104, CORE-5109, CORE-5110, CORE-5111

Future feature development

The following tickets represent internal code changes made for future features.

PLIN-4927, PLIN-5146, PLIN-4885

v16.4.2

Tickets for prior early access releases are also represented below.

New Composer development

The following tickets represent code changes made while developing the new Composer experience:

CORE-4929, CORE-4539, CORE-4994, CORE-5012, CORE-5083, CORE-5009, CORE-4911, CORE-4854, CORE-5022, CORE-4860, CORE-4961, CORE-4853, CORE-5066, CORE-4863, CORE-5018, CORE-4913, CORE-4927, CORE-4864, CORE-4896, CORE-4935, CORE-4962, CORE-4975, CORE-4960, CORE-4963, CORE-4895, CORE-4897, CORE-4924, CORE-4997, CORE-4996, CORE-3622, CORE-4889, CORE-4891, CORE-4887, CORE-4865, CORE-4822, CORE-4819, CORE-4958, CORE-4783, CORE-4888, CORE-4892, CORE-4823, CORE-4824, CORE-4959, CORE-4806, CORE-4873, CORE-4807, CORE-4884, CORE-4808, CORE-4787, CORE-4907, CORE-4977, CORE-4558, CORE-4541, CORE-4768, CORE-5081, CORE-4857, CORE-4850, CORE-4879, CORE-4995, CORE-4914, CORE-4903, CORE-4954, CORE-4904, CORE-4902, CORE-5089, CORE-4559, CORE-4475, CORE-4386, CORE-4622, CORE-5032

New REST data source development

The following tickets represent code changes made while developing the new REST data source:

PLIN-4794, PLIN-4733, PLIN-5051, APPS-2348, PLIN-5115, PLIN-4956, PLIN-4873, PLIN-4967, PLIN-4789, PLIN-5042, PLIN-5082, PLIN-4924, PLIN-4415, PLIN-4414, PLIN-5049, PLIN-4996, PLIN-4825, PLIN-4783, PLIN-4905, PLIN-4799, PLIN-4788, PLIN-4854, PLIN-5048

CORE-4871

When Skuid LWC is activated, enable Aura-related features to be used within the Skuid Page (Aura) component

CORE-4899

Upgrade build dependencies

CORE-4883

Updates to allow the Skuid Page (LWC) component to run properly in Lightning communities on Skuid SFX

CORE-5052

Update labeling to reflect pilot status of new Composer

CORE-4874

Update analytics tooling

CORE-5096

Resolve design system file inconsistencies that appear when downloading the file from Skuid’s admin interface versus retrieving it via the CLI, which began after recent updates to streamline that file’s format

PLIN-4804

Remove SSL options that erroneously display for Microsoft SQL Server during data source configuration

CORE-5088

Packaging tasks for Skuid NLX

CORE-5069

OpenAI data source (for use with Chat component) development

CORE-5097

OpenAI data source (for use with Chat component) development

APPS-2340

On SQL data sources, ensure the permission summary at the top of the access control page displays proper access summary

Previously, some permission changes would not trigger an update, instead displaying “No access” even when access was granted. Now the summary properly updates to reflect granted permissions, particularly for “Full access” scenarios

CORE-4950

On Skuid SFX, ensure LWC feature labels can be found when Skuid is installed as managed package

CORE-5082

On Skuid SFX, enable Skuid LWC to run with the “Relaxed CSP” Salesforce setting

CORE-4941

On Skuid SFX, cache the chosen Lightning render mode (Aura or LWC) for improved load times

CORE-4869

On Skuid SFX, add Skuid LWC section in Org Preferences

APPS-2352

On Skuid SFX, add necessary backend support for API key authentication method

APPS-2350

On Skuid NLX, add necessary backend support for API key authentication method

CORE-5078

On SFX, adjust styles of components within Lightning Experience to account for Salesforce CSS updates

CORE-4727

Move component merge variables (like {{searchValue}}) out of beta

CORE-5059

Internal-only XML additions

CORE-5014

Internal refactoring

PLIN-4907

Internal codebase adjustments for feature flags

CORE-4678

In the Design System Studio, utilize enhanced color picker for brand colors

PLIN-4959

In the Database Console, fix issue where the field searchbar and the mass actions for deleting and editing rows were not appearing

CORE-5027

In the Chat component, support rich text

PLIN-4692

Improve UI indicators for an internal beta feature

CORE-5013

Improve loading message indicators for Chat component

CORE-4909

Improve Composer performance for large pages, particularly by adjusting page index logic

PLIN-4300

Generate code coverage reports on NLX

APPS-2356

For SQL data sources, ensure selected SSL options persist across page refreshes, and that certificate information is properly erased when options are changed on-screen

CORE-5023

Fix v1->v2 migration issue where <span> HTML elements, particularly in v1 Queues, would cause “There was an error running the migration” errors—failing the migration itself. Now migrations complete as expected.

CORE-5051

Fix Table issue where drawers wouldn’t display if end users hid the Table’s leftmost column

PLIN-4903

Fix Skuid NLX permission set issue where adding a condition to a site permission set with the “Configure site” permission would not register as a change—preventing the Save button from enabling as expected

CORE-5091

Fix SFX issue where some data source types were not appearing

CORE-4947

Fix regression where fields displayed as buttons groups collapsed to minimum width instead of expanding to fill their given space

CORE-4948

Fix regression where button groups—particularly for picklist fields displayed as button groups—failed to respect width specified for button variants in a given design system

CORE-5077

Fix record type ID lookups for reference fields that display as picklists—which previously had an issue where those picklists would appear as blank even after choosing a value

CORE-4991

Fix Properties pane issue where, after setting its properties in the Advanced tab, focus would unexpectedly shift from the Text component’s canvas input back to the Advanced tab properties after a short delay in typing

CORE-5102

Fix Pages list issue where the Preview option would cause errors when pages required parameters—not opening the modal for setting those parameters and ultimately not previewing the page

PLIN-5090

Fix NLX issue where search bars would collapse into the page’s filters on data source, app, page, and design system admin pages

CORE-5040

Fix navigation item issue where “Sub-navigation item” carets would appear even though there were no sub-navigation items

Previously, deleting sub-navigation items in the Composer would not appropriately update the page XML. This resulted in “Sub-navigation item” carets appearing on these navigation items even though there were no longer sub-navigation items. This affected both top-level and sub-level navigation items.

Now, page XML is updated appropriately and navigation items do not show a caret unless there truly is a sub-item.

CORE-5015

Fix multipicklist issue where displayed values were not updated properly when picklist entries were changed

CORE-5098

Fix model regression where the child relationships sub-tab would not appear within the model fields tab

CORE-5095

Fix issue with nested properties not properly updating the selected area

CORE-4916

Fix issue where the Tab Container component would switch between tab and accordion views at unexpected breakpoints when the browser window was resized

CORE-4984

Fix issue where the some hover state style settings (border radius and background color) for Vertical Navigation items were not being applied correctly at runtime—despite previewing correctly in the Design System Studio

CORE-4918

Fix issue where the “Merge field” field picker, used for setting context conditions, would incorrectly point to the current component’s model instead of the “parent” component’s model—producing incorrect context conditions

CORE-4870

Fix issue where Responsive Grids with a main axis of “Column” would display at unexpected heights at runtime due to incorrect CSS

CORE-5049

Fix issue where newly added actions appear to remain as “Save model” actions, even when set to other action types. While only a label issue, and navigating away and back to an action list would resolve the issue, this misleading action list rendering behavior has been corrected.

PLIN-4955

Fix issue where illustrations used in Skuid Database would incorrectly render with a black background

CORE-5034

Fix issue where icon selectors were not displaying icons

CORE-4901

Fix issue where Geochart components would appear not to reflect model changes, sometimes rendering before model load operations completed

CORE-4900

Fix issue where display logic rules (particularly render conditions) were not enforced as expected on Geochart components

CORE-4890

Fix issue where Chatter components do not properly render input areas within Skuid Page (Aura) components when Skuid LWC is enabled

CORE-4969

Fix issue where Carousel components with slides containing nested Carousels would display incorrect slide count numbering + reimplement ability to remove slides in manually sourced Carousels

CORE-4915

Fix issue where buttons couldn’t be deleted in the Composer once more than one existed in a button group unless the Composer was refreshed

CORE-4992

Fix Form field issue where the “Horizontal alignment” property was not respected for boolean fields in edit mode—defaulting to “Left” alignment instead

CORE-5050

Fix Form component issue with date/time fields where browser focus would unexpectedly shift from edit mode before end users could complete time entry—requiring users to double click the field to re-enter edit mode

CORE-5047

Fix Form column issue where “Align self” properties were not respected—resulting in columns that were always set to flex-start

CORE-4931

Fix EU2 regression where the implied context condition of Id = Id was no longer applied and had to be manually specified, causing unexpected results in context-driven components like Decks

CORE-4978

Fix Edinburgh Update 2 on SFX runtime issue where sometimes icons would not render or would disappear when navigating back and forth between Lightning tabs

CORE-4880

Fix Edinburgh Update 1 issue where metadata overrides that changed Number fields into Picklist fields were not respected in Edit Mode, notably when metadata caching was not enabled for the data source

CORE-5029

Fix Design System Studio issue where the Chat component’s avatar element would not disappear when previewing the element without the avatar

CORE-4942

Fix design system issue where Spacing variables had a blank unit of measurement (instead of ‘px’ or ‘rem’ options)

CORE-4952

Fix date/time field validation behavior on mobile devices, which previously caused incorrect “Must match required format: [date]” errors

CORE-5115

Fix Composer issue where model fields and conditions were being unexpectedly removed when the builder selected the model within the model list

CORE-4940

Fix Composer issue where horizontal scrolling was not possible in Tab Set components in the canvas

CORE-5117

Fix Chart component regression where series interactions were unavailable—instead appearing as an unusable text field within the Properties pane

CORE-4682

Fix Calendar component issue where the view option picklist wasn’t rebuilding after a Month or List view was deleted, preventing the creation of a new view. Also improve disabled entries logic to accurately display the selectable Month/List entries. Additionally, some future feature work.

CORE-4919

Fix “problem initializing component” error that appeared when attempting to create an event in the Calendar component on mobile devices

CORE-4938

Ensure v2 components properly listen for user time zone changes

Previously custom time zone handling through snippets would not propagate as expected in v2 components—particularly the Calendar. For users migrating from v1, this meant snippets were no longer working on otherwise-identical v2 pages.

Now we’ve improved how the user’s current time zone is retrieved and the event subscription logic used by components to ensure these changes are accounted for at runtime

CORE-5005

Ensure the “lang” HTML attribute applied to Skuid pages uses hyphens instead of underscores to specify the language subtag.

Previously these attributes would with underscores: “lang=en_US” Now they appear with hyphens: “lang=en-US”

CORE-4937

Ensure that internal methods used to reparent nested components properly clean up and remove the reparented component from the previous parent

CORE-5024

Ensure switch toggles can be toggled on/off using the keyboard (Selecting them with Tab and toggling them with Spacebar)

CORE-4933

Ensure style variant conditions update the visual appearance of components

Previously style variant conditions would sometimes not properly update the styling of components, particularly when changing values in edit mode. This fix adjusts conditional class assignment, ensuring variants are better applied when expected

CORE-5103

Ensure OpenAI data source functions with the API Keys authentication option

CORE-4917

Ensure initial sections on Accordion components are assigned a unique Id

CORE-4973

Ensure exported design system files only contain updatable properties within the file

CORE-4932

Ensure existing Lightning preview methods continue to function with LWC enabled

CORE-5004

Ensure aria-label values for pagination buttons (page number, previous, next) contain properly updated alternative text and are available to accessibility tools

CORE-4949

Ensure “# of decimal places” property for Table summaries properly respects field metadata when “Use field metadata” is checked

PLIN-5101

Enable API key authentication for v1 runtime

CORE-5087

Disable Skuid Page (LWC) component usage in LWR sites to avoid errors until functionality is completed

CORE-4893

Core adjustments necessary to support improved sidebar and canvas rendering for Skuid Database

CORE-5094

Codebase and internal process enhancements to better avoid APIs noted as distorted by Salesforce

CORE-5053

Chat component development

CORE-5031

Chat component development

CORE-5080

Chat component development

CORE-4985

Chat component development

PLIN-4830

Adjusting behavior of site instance banner on early access sites to better indicate environment

CORE-5105

Adjust streamlined action sequence triggering behavior to account for issues surrounding what were previously event-triggered sequences

CORE-4926

Adjust Drawer chevron icon rendering so that it doesn’t appear extra wide if the drawer contains a Table component

CORE-5017

Adjust design system file format to fix issue where Skuid pages appeared blank in the Composer—which affected builders with large design system files

CORE-4970

Adjust Composer component rendering logic for internal testing

PLIN-4925

Address some spacing issues on Skuid NLX’s admin screens

CORE-5086

Additional work to disable Skuid LWC in LWR while generating passing builds

CORE-5028

Additional design system style properties for the Chat component

CORE-4967

Added HTML support in the following component properties through use of related “Allow HTML” toggle properties:

  • Button: Button label
  • Button Group: Label, when displayed as a menu
  • Wizard: Step labels
  • Header: Title and subtitle
  • Message Area: Title, as well as description
  • Search: In each return object’s header display name and display template
  • Toast (from the Show toast action): Message to display
  • Deck: Title
  • Table: Title, as well as column headers
  • List: Title
CORE-5076

Add “Beta” tag to Chat component and OpenAI data source type

CORE-5108

Add proper permissions for new Composer experience to Skuid Page Builder permission set

CORE-4701

Add interaction functionality to all field types

CORE-5079

Add appropriate implements so the Skuid Aura component can be used when Lightning Locker is disabled

CORE-4951

Add “Copy to clipboard” and “Evaluate formula fields on model” actions

Edinburgh Update 2

Feature updates

Several Skuid NLX beta features are now generally available!

Custom domains

Custom domains, previously released as a beta feature, allow your Skuid site to be accessible from any domain name you own. We’ve been hard at work incorporating user feedback, and this feature has graduated to generally available 🎓🎉

Contact your Skuid representative to use this feature.

Single sign-on (SSO) enhancements

SSO has been possible through the SAML protocol on Skuid NLX, and several feature enhancements to Skuid NLX’s SSO user provisioning features are now GA:

  • Update a user’s Skuid attributes (like email or locale) 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.
Session variables

In SSO 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. But we’ve also implemented improvements to use these variables in:

Interactions support for all field types

Interactions allow certain lists of actions to run based on how the end user interacts with an element.

Previously, interactions could be set on various components—like Decks and Images—but only on template fields in Form and Table components. Now, this Action Framework feature can be applied to all field types.

Note

With this update, click interactions can only be be configured for template fields within components set to read-only mode. This reserves click interactions for field editing. Existing interactions not matching this criteria will be retained, but new ones cannot be made.

New Action Framework actions

Expand/collapse drawers and sections with actions

Several Skuid components feature expandable/collapsible portions that respond to end user clicks. Drawers appear in Table and List components as context containers for rows—allowing additional details to be described in components within those drawers. Similarly, Accordion components allow for segmenting a page’s elements into easily discoverable sections, which users can freely open and close. These drawers and sections appear in other components as well—including Lists and Filter Sets.

Previously, it was not possible to expand and collapse these UI elements without hacky workarounds. It’s not uncommon to require one part of the page to expand in reaction to a user’s actions elsewhere—or to collapse a section of the page when the user’s completed all necessary actions within it.

With Edinburgh Update 2, we’ve incorporated more builder control over these expandable/collapsible drawers and sections through the Run component action.

For more information on individual component actions:

Copy to clipboard

It’s a common UI paradigm to allow users to copy text with the click of a button—perhaps a link, email address, or a templated piece of text. Skuid builders have built clever JavaScript solutions, but code no more!

With the Copy text to clipboard action, you can send specific strings or field data (using merge syntax) to the user’s clipboard.

Evaluate formula fields on model

Formulas are a powerful part of Skuid’s toolkit, and many UIs use formula fields alongside data fields. To have more tailored control and ensure formula fields remain in sync with actions elsewhere on the page, the Evaluate formula fields on model action can be used to reevaluate formulas on a specific row, any rows in context, or all rows in the model.

Skuid NLX now available through the AWS Marketplace

Skuid NLX, our complete app development web platform, can now be acquired through the AWS Marketplace. This integration expands our free trial capabilities and allows your company to use the NLX Site Manager to organize and create sites for your organizations.

If you’re commonly building with AWS products and haven’t tried Skuid yet, check out our AWS Marketplace listing!

CLI and deployment improvements

We’ve fixed various issues and made several general improvements to our CLI experience for Skuid NLX—both in our backend services and the CLI’s code. Larger sites can be deployed, deployments happen faster, and they function more seamlessly even when custom domains are enabled.

Ensure you are using the latest version of the skuid CLI by following our installation instructions.

NLX performance improvements

We’ve continued to make improvements to our backend technologies on Skuid NLX for scaling, management, and efficiency. As this update rolls out to early access and production environments, you may notice improved performance in your sites.

Banners for early access environments

Skuid NLX early access environments now have a banner indicating that they are, indeed, early access!

We encourage all users to try out new features as soon as they can, as well as testing that their deployed applications work well with forthcoming features. These banners are intended to make it easier to spot the difference between early access and production environments—while also displaying pertinent information for support screenshots.

Beta features

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

Pilot features

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.

NLX Site Manager

AWS Marketplace customers can leverage the NLX Site Manager to organize their NLX sites, creating sites for development, testing, and production purposes.

Heads up!

skuid CLI versions older than 0.6 no longer supported

With the GA release of skuid CLI 0.6 during Edinburgh Update 1 last quarter, we published notice that older versions of the CLI would not be supported after Edinburgh Update 2’s release.

That time has come. We encourage all CLI users to upgrade to a 0.6 release. Issues from older CLI versions will no longer be addressed.

In case you missed it

These useful features made their way into Skuid in recent releases before this update.

Improved image properties

As part of CORE-4470, we made improvements the Image component’s properties, as well as related Image background properties of various container components (Page, Wrapper, Grid, etc)

  • Improved help text for Model and Merge model properties

  • The Alternative text property is always visible and supports merge syntax

  • Default Image source is now “URL”

  • Image source property:

    • Always shows the “URL” and “Attachment” options
    • NLX – Shows the “File” option
    • SFX – Shows the “Static Resource” option
  • When “Attachment” is the Image source:

    • The “Model” property is shown and is required
    • The “Image field” property is shown
  • Other streamlined properties:

    • Removed unnecessary Data source type, and Data source properties
    • Image URL supports merge syntax, and is only visible when the Image source is “URL”
    • Resource name is only visible when Image source is “Static resource”
    • File Path (within ZIP Static Resources) is only visible when Image source is “Static resource” and Resource name is a ZIP file
    • File name is only visible when Image source is “File”

Removed unneeded “Insert fields” button

In CORE-4732, we removed the extra “Insert fields” button since one now exists within the code editor when a related model is available

Set a custom amount of visible rows in multi-row components

Previously, you could only choose certain amounts of visible rows for Table, List, and Deck components. In CORE-4553 we added the ability to set a custom amount of visible row amounts.

This is particularly useful for Deck components, which could display a lot of empty space depending on the amount of rows shown.

Included tickets [[]]

v16.2.8.0

CORE-5023

Fix v1->v2 migration issue where <span> HTML elements, particularly in v1 Queues, would cause “There was an error running the migration” errors—failing the migration itself. Now migrations complete as expected.

CORE-5024

Ensure switch toggles can be toggled on/off using the keyboard (Selecting them with Tab and toggling them with Spacebar)

CORE-5034

Fix issue where icon selectors were not displaying icons

CORE-5040

Fix navigation item issue where “Sub-navigation item” carets would appear even though there were no sub-navigation items

Previously, deleting sub-navigation items in the Composer would not appropriately update the page XML. This resulted in “Sub-navigation item” carets appearing on these navigation items even though there were no longer sub-navigation items. This affected both top-level and sub-level navigation items.

Now, page XML is updated appropriately and navigation items do not show a caret unless there truly is a sub-item.

CORE-5047

Fix Form column issue where “Align self” properties were not respected—resulting in columns that were always set to flex-start

PLIN-5053

Dependency upgrades

PLIN-5092

On Skuid NLX, adjust new “Site deactivated” screens to ensure consistent behavior across all environments when redeployed

Future feature development

The following tickets represent internal code changes made for future features.

APPS-2348 APPS-2350 CORE-4386 PLIN-4783 PLIN-5002

v16.2.7.0

CORE-4978

Fix Edinburgh Update 2 on SFX runtime issue where sometimes icons would not render or would disappear when navigating back and forth between Lightning tabs

CORE-4984

Fix issue where the some hover state style settings (border radius and background color) for Vertical Navigation items were not being applied correctly at runtime—despite previewing correctly in the Design System Studio

CORE-4991

Fix Properties pane issue where, after setting its properties in the Advanced tab, focus would unexpectedly shift from the Text component’s canvas input back to the Advanced tab properties after a short delay in typing

CORE-4992

Fix Form field issue where the “Horizontal alignment” property was not respected for boolean fields in edit mode—defaulting to “Left” alignment instead

CORE-5004

Ensure aria-label values for pagination buttons (page number, previous, next) contain properly updated alternative text and are available to accessibility tools

CORE-5005

Ensure the “lang” HTML attribute applied to Skuid pages uses hyphens instead of underscores to specify the language subtag.

Previously these attributes would with underscores: “lang=en_US” Now they appear with hyphens: “lang=en-US”

CORE-5015

Fix multipicklist issue where displayed values were not updated properly when picklist entries were changed

CORE-5017

Adjust design system file format to fix issue where Skuid pages appeared blank in the Composer—which affected builders with large design system files

CORE-5024

Ensure switch toggles can be toggled on/off using the keyboard (Selecting them with Tab and toggling them with Spacebar)

PLIN-4393

Dependency upgrades

Future feature development

The following tickets represent internal code changes made for future features.

APPS-2348, APPS-2349, APPS-2352, PLIN-5040

v16.2.6.0

APPS-2356

For SQL data sources, ensure selected SSL options persist across page refreshes, and that certificate information is properly erased when options are changed on-screen

CORE-4682

Fix Calendar component issue where the view option picklist wasn’t rebuilding after a Month or List view was deleted, preventing the creation of a new view. Also improve disabled entries logic to accurately display the selectable Month/List entries. Additionally, some future feature work.

CORE-4918

Fix issue where the “Merge field” field picker, used for setting context conditions, would incorrectly point to the current component’s model instead of the “parent” component’s model—producing incorrect context conditions

CORE-4926

Adjust Drawer chevron icon rendering so that it doesn’t appear extra wide if the drawer contains a Table component

CORE-4940

Fix Composer issue where horizontal scrolling was not possible in Tab Set components in the canvas

CORE-4942

Fix design system issue where Spacing variables had a blank unit of measurement (instead of ‘px’ or ‘rem’ options)

CORE-4947

Fix regression where fields displayed as buttons groups collapsed to minimum width instead of expanding to fill their given space

CORE-4948

Fix regression where button groups—particularly for picklist fields displayed as button groups—failed to respect width specified for button variants in a given design system

CORE-4949

Ensure “# of decimal places” property for Table summaries properly respects field metadata when “Use field metadata” is checked

CORE-4951

Add “Copy to clipboard” and “Evaluate formula fields on model” actions

CORE-4952

Fix date/time field validation behavior on mobile devices, which previously caused incorrect “Must match required format: [date]” errors

CORE-4969

Fix issue where Carousel components with slides containing nested Carousels would display incorrect slide count numbering + reimplement ability to remove slides in manually sourced Carousels

CORE-4970

Adjust Composer component rendering logic for internal testing

PLIN-3790

Fix Skuid NLX CLI issue where environment variables and site permission sets were unexpectedly retrieved when retrieved app-specific metadata.

Now this metadata is not retrieved when retrieving a specific app. Environment variables will be retrieved only if the specified app contains a data source utilizing an environment variable.

PLIN-4404

On Skuid NLX, fix issue where data source object permissions on app permission sets would not update based on deployed CLI metadata

PLIN-4595

On Skuid NLX, update maximum file size limit to account for larger deployments

PLIN-4814

For Skuid’s backend services, ensure header and parameter values can be updated without re-specifying the value source

PLIN-4880

On Skuid NLX, update backend service responses to not display masked values (*) when a property has no value on the backend

This release also includes the following tickets:

PLIN-4900 PLIN-4903 PLIN-4925 PLIN-4959

The following tickets represent future feature work: CORE-4787, PLIN-4769, PLIN-4776, PLIN-4792, PLIN-4819, PLIN-4820, PLIN-4854, PLIN-4873

v16.2.5.0 - Edinburgh U2 GA release

APPS-2333

On Skuid NLX when working with custom domains, provide UI feedback if DNS entry is removed after initial setup

APPS-2340

On SQL data sources, ensure the permission summary at the top of the access control page displays proper access summary

Previously, some permission changes would not trigger an update, instead displaying “No access” even when access was granted. Now the summary properly updates to reflect granted permissions, particularly for “Full access” scenarios

CORE-3641

Reserve Click interactions on Template-type fields for editing field values

CORE-3736

Fix issue where using the Undo button in the Design System Studio would not update the previews of any affected components

CORE-3737

Fix issue in Design System Studio where datepicker style variant previews do not show correct color for weekend days

CORE-3771

Fix field picker issue where clicking the picker on child relationship template fields displayed fields from the parent model instead of the child relationship

CORE-3794

Add actions for expanding/collapsing drawers in Tables and Lists and sections in Accordions and Filter Sets

CORE-4470

Improvements to user experience of properties in the Image Component and in Image background properties of various container components (Page, Wrapper, Grid, etc)

  • Improved help text for Model and Merge model properties
  • The Alternative text property is always visible and supports merge syntax
  • Default Image source is now “URL”
  • Image source property:
    • Always shows the “URL” and “Attachment” options
    • NLX – Shows the “File” option
    • SFX – Shows the “Static Resource” option
  • When “Attachment” is the Image source:
    • The “Model” property is shown and is required
    • The “Image field” property is shown
  • Other streamlined properties:
    • Removed unnecessary Data source type, and Data source properties
    • Image URL supports merge syntax, and is only visible when the Image source is “URL”
    • Resource name is only visible when Image source is “Static resource”
    • File Path (within ZIP Static Resources) is only visible when Image source is “Static resource” and Resource name is a ZIP file
    • File name is only visible when Image source is “File”
CORE-4553

Changed the “Visible rows” property for Deck, Table, and List components to be a “type ahead control” to allow for custom numbers of items to display (e.g. show 12 Deck Cards in 3 rows of 4)

CORE-4608

With Salesforce’s beta release of Lightning Web Security (LWS) for Aura components, we found some errors would surface for our own Aura components (the Skuid Page and Skuid Page Assignment Lightning components). We’ve proactively updated our components so they will function as expected when LWS for Aura components reaches general availability on Salesforce.

CORE-4614

Fix Composer preview issue where using certain URL parameters would not display queried results appropriately—particularly for RecordTypeId parameters on the Case object in Salesforce

CORE-4655

Fix Composer issue where rearranging fields within Form and Table components would sometimes duplicate the fields instead of changing their location

CORE-4657

Update {{startDate}}, {{endDate}}, and {{allDay}} merge variables to provide more consistent values in on-click and update event actions

CORE-4674

For data sources using the “Client credentials” OAuth grant type, support sending specified scopes within network request headers

CORE-4685

Ensure custom headers with “Sticky” property enabled are sticky in Aura contexts (Salesforce Lightning)

Previously the “Sticky” property for Skuid page headers would have no effect in Aura contexts, and the header would scroll out of view as the user navigated the page.

Now, an enabled “Sticky” property on a page header will cause it to remain affixed to the top of page area allowed by Lightning Experience.

CORE-4699

Add “Copy to clipboard” and “Evaluate formula fields on model” actions

CORE-4701

Add interaction functionality to all field types

CORE-4711

For REST models, utilize the custom template request when making sample requests

CORE-4714

Fix read with inline-edit mode picklist rendering issue in Safari

Previously when editing picklist fields set to “read with inline-edit” mode at runtime in Safari, clicking the dropdown to display picklist values would return the field to Read mode instead of displaying available picklist items. Now the picklist items appear as expected.

CORE-4716

Internal build process improvements

CORE-4719

Internal code improvements

CORE-4725

Improvements for Skuid LWC functionality, particularly around URL handling and rendering certain UI elements

CORE-4726

On Skuid SFX, create scaffolding and user-facing option for toggling Skuid LWC functionality, as well as internal refactoring of some Salesforce data source type code

CORE-4727

Move component merge variables (like {{searchValue}}) out of beta

CORE-4728

Fix issue where Skuid builders without “Customize application” could not update timestamps used for caching—requiring users manually clear their cache to see updates

Previously, Skuid stored certain timestamps in custom settings that could only be updated by those with the “Customize application” Salesforce permission.

While this is permission is commonly granted to Skuid builders, those without that permission would attempt to preview their changes and—since the timestamp had not been updated because they didn’t have the proper permissions—their cache would not clear, and an older version of the page would appear. This resulted in some users being able to see the updated page, and other users needing to manually clear their cache to see the updated page.

Now, timestamps are handled so that even those without the “Customize application” permission can update them, properly clearing the cache for other users.

CORE-4729

Fix regression where button groups could not be deleted—only buttons within them or the entire Button Set component

CORE-4731

Fix regression where navigation item labels were not properly updated in the XML and did not render at runtime

CORE-4732

In the Composer, remove extra “Insert fields” button since one now exists within the code editor when a related model is available

CORE-4733

Visual defect in the Composer: The number of the condition is missing is condition type is “Viewport width” or “Snippet returns true.”

CORE-4734

Ensure “false” boolean values appear properly when displayed checkbox-returning picklists outside of Edit mode

CORE-4735

Fix Design System Studio issue where style variant preview of sliding panel would block the properties pane—preventing the user from making edits

CORE-4736

Fix action sequences issue where model conditions were not used to populate field values for rows created later in a sequence

CORE-4737

Fix issue where “Button Icon position” values were not appearing in the dropdown menu within the Properties pane

CORE-4738

Fix inability to override Vertical Navigation item styles via JSS in the Design System Studio

CORE-4739

Fix Wizard issue where step indicators would only appear when using buttons within the Wizard’s attached button group

Previously step indicators would only render if at least one button within the Wizard’s attached button group was configured. This prevented Wizard component utilizing custom step navigation buttons from displaying step indicators.

Now, step indicators appear as expected based on the number of available steps and whether or not the “Show step indicators” property is enabled.

CORE-4741

On Skuid NLX, address issues with template properties within Text component’s not properly saving empty-space content

CORE-4742

Template fields in Forms missing the “Hide label” property

CORE-4743

Fix bug where action sequence input values were not properly passed to “Show/hide menu” actions within the action sequence

CORE-4744

Fix v1-v2 migration utility issue where “Run snippet” actions were erroneously turned into “Multi” type actions after conversion

CORE-4750

Address a memory leak that can occur when editing large pages

CORE-4752

Fix v1 to v2 migration utility issue where Wrapper components would break migration in newer releases

CORE-4755

Internal code improvements

CORE-4761

Fix Table Settings modal issue where setting pagination would break when end users navigated to a previous page

CORE-4762

Internal refactors to improve loading of v2 resources

CORE-4763

Ensure that display logic condition numbering updates gracefully when conditions are removed

CORE-4765

Text inside the Horizontal Alignment property for Forms was invisible

CORE-4766

Fix Table issue where fields marked as read-only on the component would become editable after saving the Table’s model

CORE-4767

Reference Field Filter Conditions are no longer filtering related records in Field components

CORE-4771

Fix Form reference field issue, where the Form’s field would remain blank even after selecting a value in certain scenarios.

This issue occurred in scenarios where the Form was dealing with a newly created record, typically in a previous Wizard step, and the Form was displayed in Edit mode. After selecting a new value, the Form would not update properly to display the selected field—even though the data had been updated.

Now, the Form field displays updates as expected.

CORE-4772

Unnecessary horizontal scrollbar in the middle section of the Design System Studio

CORE-4774

X Axis on Bubble charts is ignoring the minimum range value

CORE-4778

In design systems based on the Lightning design system, prevent unwanted scrollbars on Table fields in edit mode

CORE-4781

Unnecessary required value error for From fields Unique ID properties in the Composer

CORE-4782

Addressed internal builder defect

CORE-4786

Fix aggregate model regression where date field values returned from Salesforce were evaluated as the incorrect data type

CORE-4788

“No fields are marked as filterable for search” error sometimes encountered on SQL models

CORE-4797

Adjust metadata retrieval for Salesforce content document features to address “Access to entity denied” errors

CORE-4798

Show/Hide component action breaks the page when it references a component that does not exist

CORE-4800

V2 Table Filter based on a Salesforce Dependent Picklist shows no values

CORE-4802

Incorporate additional aggregate model logic to better ensure date field values returned from Salesforce are evaluated as the correct data type, even when metadata caching is disabled

CORE-4811

Wrapper with height strategy “Fit to content” shows scrollbar if it contains a Deck component with a hidden footer

CORE-4812

Error loading the Vertical Navigation component when source is “Salesforce tabs for current app”

CORE-4813

Fix Composer issue that prevented more than 1 model from being added to a page

CORE-4816

Adjust Accordion icon display behavior

CORE-4817

Fix pagination label issue that caused “Infinity rows” to display instead of “All rows”

CORE-4827

Fix bug where errors occurring inside modals were displayed behind those modals when they were part of an included page—even when the modal’s “Display errors” property indicated errors should appear in the modal. Now errors appear where expected.

CORE-4832

Ensure certain container components that have nested items have two of those items by default (Carousel, Tab Container, Tab Set)

CORE-4838

Internal refactoring of component code

CORE-4841

Fix Composer bug where components could not be added to page regions within dependent pages

CORE-4842

Improve performance by adjusting “global” event subscriptions to use a new page-level API (instead of window or document scope) that intelligently unsubscribes unneeded event subscriptions

CORE-4847

Within Forms in read with inline-edit mode, activate the field’s Edit icon hover state not only when users hover directly over that icon, but when they hover over any part of the field

CORE-4849

Fix “Create new page” modal rendering issue discovered by automated testing

CORE-4856

Fix v1 Table issue where headers would not align with columns while scrolling

CORE-4869

On Skuid SFX, add Skuid LWC section in Org Preferences

CORE-4870

Fix issue where Responsive Grids with a main axis of “Column” would display at unexpected heights at runtime due to incorrect CSS

CORE-4871

When Skuid LWC is activated, enable Aura-related features to be used within the Skuid Page (Aura) component

CORE-4874

Update analytics tooling

CORE-4876

Fix feature parameter deployment for Salesforce-related features

CORE-4880

Fix Edinburgh Update 1 issue where metadata overrides that changed Number fields into Picklist fields were not respected in Edit Mode, notably when metadata caching was not enabled for the data source

CORE-4883

Updates to allow the Skuid Page (LWC) component to run properly in Lightning communities on Skuid SFX

CORE-4886

Deployment script preparations for Edinburgh Update 2 release

CORE-4890

Fix issue where Chatter components do not properly render input areas within Skuid Page (Aura) components when Skuid LWC is enabled

CORE-4893

Core adjustments necessary to support improved sidebar and canvas rendering for Skuid Database

CORE-4900

Fix issue where display logic rules (particularly render conditions) were not enforced as expected on Geochart components

CORE-4901

Fix issue where Geochart components would appear not to reflect model changes, sometimes rendering before model load operations completed

CORE-4909

Improve Composer performance for large pages, particularly by adjusting page index logic

CORE-4915

Fix issue where buttons couldn’t be deleted in the Composer once more than one existed in a button group unless the Composer was refreshed

CORE-4916

Fix issue where the Tab Container component would switch between tab and accordion views at unexpected breakpoints when the browser window was resized

CORE-4917

Ensure initial sections on Accordion components are assigned a unique Id

CORE-4919

Fix “problem initializing component” error that appeared when attempting to create an event in the Calendar component on mobile devices

CORE-4931

Fix EU2 regression where the implied context condition of Id = Id was no longer applied and had to be manually specified, causing unexpected results in context-driven components like Decks

CORE-4932

Ensure existing Lightning preview methods continue to function with LWC enabled

CORE-4933

Ensure style variant conditions update the visual appearance of components

Previously style variant conditions would sometimes not properly update the styling of components, particularly when changing values in edit mode. This fix adjusts conditional class assignment, ensuring variants are better applied when expected

CORE-4937

Ensure that internal methods used to reparent nested components properly clean up and remove the reparented component from the previous parent

CORE-4938

Ensure v2 components properly listen for user time zone changes

Previously custom time zone handling through snippets would not propagate as expected in v2 components—particularly the Calendar. For users migrating from v1, this meant snippets were no longer working on otherwise-identical v2 pages.

Now we’ve improved how the user’s current time zone is retrieved and the event subscription logic used by components to ensure these changes are accounted for at runtime

CORE-4941

On Skuid SFX, cache the chosen Lightning render mode (Aura or LWC) for improved load times

CORE-4950

On Skuid SFX, ensure LWC feature labels can be found when Skuid is installed as managed package

CORE-4955

Remove internal files related to Skuid LWC functionality that prevented successful deployments

CORE-4957

Revert future feature code

CORE-4976

Adjust Accordion icon display behavior

PLIN-4410

Remove unused third-party plugin

PLIN-4477

Move NLX session variables out of beta

PLIN-4504

Add banner indicating NLX environment type to admin and builder workspaces

PLIN-4511

Fix Skuid Database issue where marking fields “read-only” from the Fields tab would result in fields still being editable in the Data tab

PLIN-4525

In Skuid Database, fix regression in CSV import process where data type mismatch checks were not properly interrupting the import process

PLIN-4576

On Skuid NLX, fix a content type issue during the certificate uploading experience that caused an “Invalid request payload input” error

PLIN-4601

Backend adjustments for proxy features

PLIN-4639

In the Database Console, ensure the Permissions UI correctly switches as you navigate from object to object

PLIN-4692

Improve UI indicators for an internal beta feature

PLIN-4722

On Skuid NLX, remove unexpected scrollbars from admin UI

PLIN-4726

Adjusting runtime behavior of site instance banner

PLIN-4804

Remove SSL options that erroneously display for Microsoft SQL Server during data source configuration

PLIN-4830

Adjusting behavior of site instance banner on early access sites to better indicate environment

Future feature development

The following tickets represent internal code changes made for future features.

CORE-3608, CORE-3725, CORE-3726, CORE-4438, CORE-4467, CORE-4483, CORE-4493, CORE-4531, CORE-4543, CORE-4561, CORE-4620, CORE-4628, CORE-4652, CORE-4662, CORE-4677, CORE-4703, CORE-4709, CORE-4721, CORE-4722, CORE-4723, CORE-4724, CORE-4751, CORE-4753, CORE-4760, CORE-4769, CORE-4780, CORE-4784, CORE-4785, CORE-4787, CORE-4790, CORE-4791, CORE-4806, CORE-4809, CORE-4810, CORE-4815, CORE-4820, CORE-4822, CORE-4825, CORE-4829, CORE-4830, CORE-4831, CORE-4833, CORE-4834, CORE-4846, CORE-4850, CORE-4851, CORE-4852, CORE-4857, CORE-4859, CORE-4861, CORE-4867, CORE-4872, CORE-4879, PLIN-4411, PLIN-4412, PLIN-4413, PLIN-4414, PLIN-4417, PLIN-4422, PLIN-4627, PLIN-4740, PLIN-4766, PLIN-4788, PLIN-4789, PLIN-4799, PLIN-4854

v16.2.5.0 - Edinburgh U2 GA release (Backend services)

CORE-4893

Core adjustments necessary to support improved sidebar and canvas rendering for Skuid Database

PLIN-2758

On Skuid NLX, fix issue where environment variables settings would appear to have unsaved changes when they did not

PLIN-4111

Frontend experience work for utilizing session variables in global merge syntax

PLIN-4183

On SQL data sources, fix error where Advanced permissioning would sometimes incorrectly display as Basic—even when field-level permissions had been set

PLIN-4300

Generate code coverage reports on NLX

PLIN-4395

Upgrade dependencies

PLIN-4397

Upgrade dependencies

PLIN-4477

Move NLX session variables out of beta

PLIN-4536

Move NLX SAML provisioning improvements out of beta

PLIN-4561

Remove custom domains beta tag

PLIN-4652

Improve Skuid NLX email address validation to support additional valid characters, like apostrophes (‘) and plus signs (+)

PLIN-4653

On Skuid NLX, adjust validation behavior for email fields in the user detail screen

PLIN-4692

Improve UI indicators for an internal beta feature

PLIN-4712

Resolve issues with the NLX proxy and Salesforce data source authentication handling

PLIN-4722

On Skuid NLX, remove unexpected scrollbars from admin UI

PLIN-4767

Internal documentation update

PLIN-4814

For Skuid’s backend services, ensure header and parameter values can be updated without re-specifying the value source

PLIN-4869

Backend adjustments for feature flags

Future feature development

The following tickets represent internal code changes made for future features.

CORE-4846, PLIN-4411, PLIN-4412, PLIN-4413, PLIN-4414, PLIN-4415, PLIN-4416, PLIN-4417, PLIN-4547, PLIN-4624, PLIN-4732, PLIN-4740, PLIN-4741, PLIN-4745, PLIN-4755, PLIN-4760, PLIN-4762, PLIN-4766, PLIN-4780, PLIN-4785, PLIN-4788, PLIN-4791, PLIN-4796, PLIN-4799, PLIN-4809, PLIN-4812, PLIN-4817, PLIN-4841, PLIN-4899

Edinburgh Update 1

Feature updates

Streamlined single sign-on setup

(NLX only)

As part of this alliterative update, we’ve taken a look at how to make setting up single sign-on (SSO) on an NLX site faster so you can spend more time building apps and less time worrying how to authenticate your users.

  • We now display Skuid’s Assertion Consumer Service (ACS) URL and Service Provider Entity ID values when you begin setup. No more placeholder values in one place or the other, just copy, paste, go.
  • We’ve updated our identity provider connection detail screens, better grouping related information and streamlining the page for easier maintenance.

New label properties for Forms

  • Label position: Previously field labels could appear on top of fields or to the left through a Form component property, but checkbox inputs commonly need their labels on the right side—like when adjusting preferences or checking the ever-present “I have read and agree to the terms and conditions.”

With this new property, you can incorporate this common UI practice into your apps. Label position can be set to above the field or to the right of it. Available on Checkbox and Switch field types.

  • Hide label: This property allows field labels to be totally hidden from the user interface while still being available to screen reader technologies.

skuid CLI 0.6 is GA!

(NLX feature with SFX impact)

skuid CLI—the command line interface for retrieving and deploying Skuid NLX metadata—is seeing some notable changes in its 0.6 release, which is now generally available.

You can use these features using the latest 0.6 release of skuid CLI:

  • --since flag: This flag allows you to retrieve only the metadata that’s been modified since a certain timestamp. That means you retrieve only what you’ve recently updated for sandbox-to-production deployments, which means your apps get deployed faster.

    # Retrieve metadata updated since May 22nd, 2023
    skuid retrieve --since "2023-05-22"
    
  • --ignore-skuid-db flag: There are special constraints for working with Skuid Database in skuid CLI: skuid CLI won’t redeploy existing databases to avoid overwriting schema, and it won’t deploy more databases than a site’s allotted limit.

    While these safeguards can stop problematic deployments, most deployments do not rely on Skuid Database metadata. Using --ignore-skuid-db allows deployments to proceed, acknowledging that skuid CLI can ignore Skuid Database for the current deployment.

    skuid deploy --ignore-skuid-db
    
  • Improved logging and error handling, with options for more details and outputting logs to files

  • No longer compatible with SFX: The skuid CLI now focuses on Skuid NLX environments, and previous Salesforce-related commands are no longer supported.

    For Skuid SFX, use our skuid-sfdx plugin for Salesforce’s command line interface.

  • Increased stability

Heads up! skuid CLI versions prior to 0.6.x will not be supported after Edinburgh Update 2 later this year. This will allow us to focus on further enhancements and optimizations both for the CLI and NLX’s backend.

Beta features

Custom domains improvements

(NLX only)

Adding a custom domain reinforces your branding and makes your Skuid site easier to navigate to. We’ve been making refinements during its beta period and are releasing several user experience enhancements in Edinburgh Update 1.

To utilize our custom domain features while they are in beta, contact product@skuid.com

Other updates

Heads Up! Internet Explorer 11 is no longer supported

We’re officially concluding support for Internet Explorer 11 (IE11) in Edinburgh Update 1, even at runtime. This allows us to continue to improve Skuid’s UI toolkit with modern web platform enhancements, but we can no longer guarantee Skuid will work as expected during build time or runtime for IE11.

With the conclusion of official support for IE11, we encourage all builders—and their users—to upgrade to a modern browser for continued Skuid functionality.

Included tickets [[]]

v16.1.8.0

CORE-4766

Fix Table issue where fields marked as read-only on the component would become editable after saving the Table’s model

CORE-4767

Reference Field Filter Conditions are no longer filtering related records in Field components

CORE-4771

Fix Form reference field issue, where the Form’s field would remain blank even after selecting a value in certain scenarios.

This issue occurred in scenarios where the Form was dealing with a newly created record, typically in a previous Wizard step, and the Form was displayed in Edit mode. After selecting a new value, the Form would not update properly to display the selected field—even though the data had been updated.

Now, the Form field displays updates as expected.

CORE-4802

Incorporate additional aggregate model logic to better ensure date field values returned from Salesforce are evaluated as the correct data type, even when metadata caching is disabled

CORE-4827

Fix bug where errors occurring inside modals were displayed behind those modals when they were part of an included page—even when the modal’s “Display errors” property indicated errors should appear in the modal. Now errors appear where expected.

CORE-4849

Fix “Create new page” modal rendering issue discovered by automated testing

CORE-4856

Fix v1 Table issue where headers would not align with columns while scrolling

PLIN-4345

Improve Skuid NLX app deployment for skuid CLI, particularly when attempting to retrieve/deploy using the name of an app that does not exist in the target site

PLIN-4398

Backend dependency upgrades

PLIN-4528

In Skuid NLX’s custom domains UI, update “Domain base” to “Base domain”

PLIN-4568

Fix Skuid NLX custom domains issue where “Remove” button briefly appeared when viewing custom domain settings

PLIN-4570

Update internal endpoint documentation

PLIN-4629

On Skuid NLX, ensure manually created users are assigned the site’s time zone and locale by default

PLIN-4669

For Skuid NLX, alphabetize contents of app metadata files

PLIN-4685

Backend service updates related to proxy handling

Future feature development

The following tickets represent internal code changes made for future features.

CORE-4791, CORE-4820

v16.1.7.0

CORE-4772

Unnecessary horizontal scrollbar in the middle section of the Design System Studio

CORE-4774

X Axis on Bubble charts is ignoring the minimum range value

CORE-4781

Unnecessary required value error for From fields Unique ID properties in the Composer

CORE-4797

Adjust metadata retrieval for Salesforce content document features to address “Access to entity denied” errors

CORE-4800

V2 Table Filter based on a Salesforce Dependent Picklist shows no values

CORE-4811

Wrapper with height strategy “Fit to content” shows scrollbar if it contains a Deck component with a hidden footer

CORE-4813

Fix Composer issue that prevented more than 1 model from being added to a page

CORE-4817

Fix pagination label issue that caused “Infinity rows” to display instead of “All rows”

CORE-4841

Fix Composer bug where components could not be added to page regions within dependent pages

PLIN-4396

Upgrade dependencies

PLIN-4574

To better support SSO setup and configuration on Skuid NLX, allow Skuid service provider metadata to be accessed while not authenticated

PLIN-4600

Backend process improvements

PLIN-4601

Backend adjustments for proxy features

PLIN-4716

Backend process improvements

Future feature development

The following tickets represent internal code changes made for future features.

CORE-3608, CORE-4467

v16.1.6.1 - Backend services update

PLIN-4737

For Skuid NLX, fix 400 error that can occur during free trial registration from the AWS Marketplace

v16.1.6.1

CORE-4813

Fix Composer issue that prevented more than 1 model from being added to a page

CORE-4817

Fix pagination label issue that caused “Infinity rows” to display instead of “All rows”

CORE-4841

Fix Composer bug where components could not be added to page regions within dependent pages

v16.1.6.0

APPS-2342

For Skuid NLX custom domains, improve handling of cached SSL records

CORE-4470

Improvements to user experience of properties in the Image Component and in Image background properties of various container components (Page, Wrapper, Grid, etc)

  • Improved help text for Model and Merge model properties
  • The Alternative text property is always visible and supports merge syntax
  • Default Image source is now “URL”
  • Image source property:
    • Always shows the “URL” and “Attachment” options
    • NLX – Shows the “File” option
    • SFX – Shows the “Static Resource” option
  • When “Attachment” is the Image source:
    • The “Model” property is shown and is required
    • The “Image field” property is shown
  • Other streamlined properties:
    • Removed unnecessary Data source type, and Data source properties
    • Image URL supports merge syntax, and is only visible when the Image source is “URL”
    • Resource name is only visible when Image source is “Static resource”
    • File Path (within ZIP Static Resources) is only visible when Image source is “Static resource” and **Resource name* is a ZIP file
    • File name is only visible when Image source is “File”
CORE-4553

Changed the “Visible rows” property for Deck, Table, and List components to be a “type ahead control” to allow for custom numbers of items to display (e.g. show 12 Deck Cards in 3 rows of 4)

CORE-4685

Ensure custom headers with “Sticky” property enabled are sticky in Aura contexts (Salesforce Lightning)

Previously the “Sticky” property for Skuid page headers would have no effect in Aura contexts, and the header would scroll out of view as the user navigated the page.

Now, an enabled “Sticky” property on a page header will cause it to remain affixed to the top of page area allowed by Lightning Experience.

CORE-4719

Internal code improvements

CORE-4733

Visual defect in the Composer: The number of the condition is missing is condition type is “Viewport width” or “Snippet returns true.”

CORE-4742

Template fields in Forms missing the “Hide label” property

CORE-4765

Text inside the Horizontal Alignment property for Forms was invisible

CORE-4782

Addressed internal builder defect

CORE-4786

Fix aggregate model regression where date field values returned from Salesforce were evaluated as the incorrect data type

CORE-4788

“No fields are marked as filterable for search” error sometimes encountered on SQL models

CORE-4798

Show/Hide component action breaks the page when it references a component that does not exist

PLIN-4316

For Skuid NLX and skuid cli, fix issues relating to duplicate key errors in some deployments

PLIN-4543

On Skuid NLX, add “None” option to SSO certificate options to make it more clear when certificates are not being used

PLIN-4599

For Skuid NLX, implement backend adjustments to handle deleted custom domains

PLIN-4639

In the Database Console, ensure the Permissions UI correctly switches as you navigate from object to object

PLIN-4664

Fix Database Console where where Access control tab was blank after switching objects

Future feature development

The following tickets represent internal code changes made for future features.

CORE-3608, CORE-3725, CORE-4483, CORE-4493, CORE-4531, CORE-4628, CORE-4652, CORE-4677, CORE-4703, CORE-4723, CORE-4769

v16.1.5.1

CORE-4655

Fix Composer issue where rearranging fields within Form and Table components would sometimes duplicate the fields instead of changing their location

CORE-4674

For data sources using the “Client credentials” OAuth grant type, support sending specified scopes within network request headers

CORE-4736

Fix action sequences issue where model conditions were not used to populate field values for rows created later in a sequence

CORE-4744

Fix v1-v2 migration utility issue where “Run snippet” actions were erroneously turned into “Multi” type actions after conversion

CORE-4761

Fix Table Settings modal issue where setting pagination would break when end users navigated to a previous page

PLIN-4410

Remove unused third-party plugin

PLIN-4511

Fix Skuid Database issue where marking fields “read-only” from the Fields tab would result in fields still being editable in the Data tab

PLIN-4616

On Skuid NLX for site permission set custom registration pages, adjust Save/Cancel buttons to improve consistency and ease of saving changes

PLIN-4617

Fix issue on Skuid NLX site permission set custom registration page settings where, after using custom Skuid pages, the Save button would not enable after reselecting “default pages” for registration

v16.1.4.1

CORE-4786

Fix aggregate model regression where date field values returned from Salesforce were evaluated as the incorrect data type

v16.1.4.0

APPS-2134

Fix page crash when creating page packs containing 300+ pages through the Add All button

APPS-2302

Make skuid CLI compatible with custom domain NLX sites

APPS-2304

Adjust page API version selector when creating new Skuid page to account for future feature development

APPS-2310

Add ability to unpack page packs when no other pages exist in the Skuid environment

APPS-2311

UI updates for Skuid NLX custom domains

APPS-2328

On Skuid NLX, update custom user registration template pages to use the v2 page API

APPS-2333

On Skuid NLX when working with custom domains, provide UI feedback if DNS entry is removed after initial setup

APPS-2334

Backend logic for checking DNS records for custom domains on Skuid NLX

APPS-2335

Enable page dependency features for all Skuid NLX sites

APPS-2341

In Skuid NLX, ensure that user registration emails sent from sites using a custom domain have their verification URLs point to that custom domain

CORE-3433

Upgrade Salesforce API from version 48 to version 57

CORE-3545

Prevent invalid values in reference fields

CORE-3611

Internal code structure improvements

CORE-3736

Fix issue where using the Undo button in the Design System Studio would not update the previews of any affected components

CORE-3737

Fix issue in Design System Studio where datepicker style variant previews do not show correct color for weekend days

CORE-3744

Responsive Grid vertical alignment improvements for “fit to content” + minimum heights

Previously, Responsive Grids set to have vertical alignment, with a minimum height, and the “Fit to content” height strategy would only consider the contents of the divisions—instead of the full minimum height of the component—when determining vertical alignment.

Now, Responsive Grids properly consider the minimum height when applying vertical alignment to their divisions.

CORE-3876

Improve rendering speed for Deck components, particularly for high record counts

In v16.0.3 this ticket also represents work to adjust how Skuid handles HTML encoding, which has effects particularly in Text components.

CORE-4419

Fix issue where Go to URL actions in a Chart series would not accept some Chart context-related merge variables

CORE-4472

Fix issue where mass actions displayed as menus or comboboxes were always deactivated

CORE-4486

Fix issue where reference fields were not properly to showing updates in edit mode—even when models were refreshed and contained accurate data

CORE-4548

Fix Chart bug where context was not properly set after drilling down, returning to the main chart, and then drilling down into a new value

Clicking into a Chart component segment sets the context, which can be used to display filtered drilldown information. Before this fix, returning to the main chart and then drilling down into another value would not properly set the context—instead using the previous drilldown’s values. With this fix, drilldowns work as expected.

CORE-4549

On Skuid SFX, fix issue where users without Skuid licenses were not being redirected to standard Salesforce

CORE-4577

Fix issue where having one denied data source would prevent any permitted data sources from querying. Now permitted data sources can query, even if an unpermitted one is used within a page.

CORE-4582

Internal codebase improvements

CORE-4584

Fix CKEditor rendering in Form and Table components set to Edit mode within Tab Sets

CORE-4586

Re-add missing runtime export options for Chart components

CORE-4588

Deployment-related internal config updates

CORE-4590

Allow enable conditions and style variant conditions on global actions for Table components

CORE-4592

Fix Edinburgh early access issue where “Required” validations were incorrectly enforced

CORE-4593

Fix Edinburgh early access issue where “Required” validations would sometimes run incorrectly if users pressed the Tab key to proceed to the next field

CORE-4594

Add Calendar component merge variable functionality to event on-click actions and event update actions

CORE-4596

Adjust Calendar component behavior to query for additional events within the selected time frame

Previously, model record query limits could unexpectedly cause a Calendar sourcing its events from that model to not display all the event records for a given time frame.

To continue allowing for record limits while also not leaving end users confused about why certain events would not appear, the Calendar component now intelligently queries for records until all events within selected time frame are displayed.

CORE-4597

Fix bug where the Calendar component’s “+n more” view modal displayed the previous date

CORE-4599

Fix issue where Calendar components were not providing actions for “Run component action” picklist

CORE-4600

On Skuid SFX, fix issue where tooltip text wouldn’t fade on pages deployed in Lightning with the Skuid Page Lightning component

CORE-4601

Fix issue where the Composer would not recognize setting a previously-configured margin property back to “None” as a change, meaning it was not possible to save the page unless another change was made. Now the Composer recognizes the change, and enables the Save button, as expected.

CORE-4604

Add “Label placement” property to fields displayed as switches or checkboxes, allowing for labels to display to the right of these inputs

CORE-4605

Add “Hide label” property for Form fields

CORE-4606

Fix Table field issue where “Required” checkbox was not a visible property in the Composer

CORE-4607

On Skuid SFX in Lightning experience, fix lookup filters for polymorphic fields (e.g. OwnerId on the Case object)

Previously when selecting a value for a polymorphic reference field, an error stating a field doesn’t exist would appear—even with properly configured lookup filters. This fix ensures that reference field works as expected.

CORE-4608

With Salesforce’s beta release of Lightning Web Security (LWS) for Aura components, we found some errors would surface for our own Aura components (the Skuid Page and Skuid Page Assignment Lightning components). We’ve proactively updated our components so they will function as expected when LWS for Aura components reaches general availability on Salesforce.

CORE-4609

Internal improvements for future features

CORE-4610

Fix issue where mass action buttons would unexpectedly remain enabled after running—even when no rows were selected

CORE-4611

Fix issue where reference field searches would not return expected records on some objects (such as the Case object in Salesforce) due to search value and record value/label discrepancies

CORE-4612

Fix rendering issue with picklist fields within sliding panels that are activated within Page Include components

CORE-4613

Fix issue where “required” validations were incorrectly running on optional picklist fields

CORE-4614

Fix Composer preview issue where using certain URL parameters would not display queried results appropriately—particularly for RecordTypeId parameters on the Case object in Salesforce

CORE-4616

Internal build process improvements

CORE-4617

Adjust internal sharing rules for Skuid custom objects for dev/QA purposes

CORE-4618

Internal codebase improvements

CORE-4619

Fix issue where included page model conditions would ignore Page Include query parameters for identically named parameters in the container page

With an included page and a container page, if the container page has a URL parameter that shares the same name as a Page Include query string parameter, the Page Include’s query string would win out—since it more specifically applied to the included page’s use.

However a bug appeared where model conditions would ignore the identically named Page Include query parameter and use the value of the container page’s parameter instead.

This fix returns the model condition behavior to the previous expected process—where Page Include query strings win out even when identically named.

CORE-4623

On the Search component, fix issue where the field picker for setting Return Objects would not function

CORE-4624

Fix where builders previously could not disable the “Skip entry criteria” property for existing “Submit for Approval” Salesforce data source actions. Now builders can enable/disable this property as expected.

CORE-4627

Adjust appearance of Search component in the Composer canvas to more accurately reflect its runtime appearance

CORE-4630

Set “Sanitize field values” property to default off for Table components

CORE-4633

Fix issue where Responsive Grid components would not reflect layout property changes within the canvas

CORE-4635

Fix Design System Studio display issue when using JSS to extend variants with code

CORE-4637

Fix bug where iterating over an empty REST data array using merge syntax displays “[object][Object]” instead of nothing

CORE-4638

Fix rendering issue for updated reference fields for PostgreSQL.

Previously, selecting a reference field value in a component attached to a PostgreSQL model would “blank out” the field, even though the value was updated. Now, reference fields update and render as expected.

CORE-4640

Internal test fixes

CORE-4641

Allow “Export Table data” component action to run even if the Table component is hidden

CORE-4642

Fix “Unpack pages from page pack” issue where setting the filter to “Last modified by me” would not not allow the filter to be set to “Last modified by any” afterwards

CORE-4643

Update component pack editor UI styles

CORE-4644

Fix bug where pencil icons would appear on button fields within a Form when changed into read/edit mode via a component action

CORE-4646

Improve row creation logic to prevent looping errors, which were apparent when working with models on data source objects that contained an “Id” field

CORE-4649

Fix issue where new font families could not be added to design systems

CORE-4650

In the Wizard component, fix issue where enable messages for step buttons would not display in the expected area if the Wizard was below other components

CORE-4651

Allow hotkeys to be set without a selected modifier key

CORE-4653

When working within Sliding Panels and Table drawers in the Composer, fix issue where Responsive Grid divisions would disappear from view (though remain in the XML) when components were dragged into them

CORE-4654

In Table components, add interaction functionality to child relationship fields

CORE-4657

Update {{startDate}}, {{endDate}}, and {{allDay}} merge variables to provide more consistent values in on-click and update event actions

CORE-4658

In v2 Page Include components, allow the use of merge syntax within the “Skuid page” property

CORE-4659

Pass context into conditional rendering snippets

CORE-4661

On Firefox, fix issue where multiple authentication popups would appear for pages using Salesforce data sources

CORE-4666

Fix large gap that temporarily appeared between properties in Properties pane and add height properties to Tab Set component

CORE-4667

Backend code structure improvements

CORE-4668

On Skuid NLX, fix data source object regression where it was not possible to mass edit more than 25 field permissions at a time

CORE-4669

In the Design System Studio, ensure changes to Sliding Panel style variants are properly reflected in their preview

CORE-4670

On the Deck component, fix issue where “Required field” error message would only appear on the first card in the Deck component. Now, these error messages appear on the appropriate card.

CORE-4673

Fix issue where clicking outside of sliding panels triggered by Table row actions would not close them

CORE-4675

In the v2 Page API Migration Utility, fix component targeting behavior

CORE-4676

Fix Carousel issue where nested components were not properly displaying UI-only model data

CORE-4684

Fix issue for donut-style Chart components where merge variables were not displaying properly without other content

Previously, when merge variables were the only value for a donut-style Chart component’s content template, no value would be displayed. The workaround was to use some empty space character, which would then cause the value to display as expected. Now, workarounds are not needed and merge variables display as expected, even if they are the only value in the template.

CORE-4686

In Page Include components, improve merge variable handling for URL parameters—ensuring that using the “Load new page” action will properly update the Page Include even if the only change is a URL parameter value from a merge variable

CORE-4687

Internal code utility method improvements

CORE-4695

Internal code improvements

CORE-4696

Fix issue where running the “Navigate to Step” component action would display all Wizard steps on the page instead of the steps for the chosen Wizard. Now, only the expected steps appear.

CORE-4697

Fix issue where Autocomplete filters using model rows as options would not properly filter results based on user input

CORE-4698

Ensure context is properly handled when updating a Page Include with the “Load new page” component action

Before this ticket, some areas of Skuid NLX’s admin interface experience display errors, particularly around data source permissions. These errors are now resolved with no change or loss to saved data.

CORE-4702

Fix OAuth authentication request errors, which particularly affected ServiceNow connections

CORE-4705

Internal code improvements

CORE-4707

Update error message for Author Apex permission requirement to remove reference to “profile,” since that permission can also be assigned through permission sets

CORE-4711

For REST models, utilize the custom template request when making sample requests

CORE-4714

Fix read with inline-edit mode picklist rendering issue in Safari

Previously when editing picklist fields set to “read with inline-edit” mode at runtime in Safari, clicking the dropdown to display picklist values would return the field to Read mode instead of displaying available picklist items. Now the picklist items appear as expected.

CORE-4715

Internal code improvements

CORE-4716

Internal build process improvements

CORE-4717

Internal config adjustments to support deployment of newer SFX releases

CORE-4719

Internal code improvements

CORE-4729

Fix regression where button groups could not be deleted—only buttons within them or the entire Button Set component

CORE-4731

Fix regression where navigation item labels were not properly updated in the XML and did not render at runtime

CORE-4732

In the Composer, remove extra “Insert fields” button since one now exists within the code editor when a related model is available

CORE-4734

Ensure “false” boolean values appear properly when displayed checkbox-returning picklists outside of Edit mode

CORE-4735

Fix Design System Studio issue where style variant preview of sliding panel would block the properties pane—preventing the user from making edits

CORE-4737

Fix issue where “Button Icon position” values were not appearing in the dropdown menu within the Properties pane

CORE-4738

Fix inability to override Vertical Navigation item styles via JSS in the Design System Studio

CORE-4739

Fix Wizard issue where step indicators would only appear when using buttons within the Wizard’s attached button group

Previously step indicators would only render if at least one button within the Wizard’s attached button group was configured. This prevented Wizard component utilizing custom step navigation buttons from displaying step indicators.

Now, step indicators appear as expected based on the number of available steps and whether or not the “Show step indicators” property is enabled.

CORE-4741

On Skuid NLX, address issues with template properties within Text component’s not properly saving empty-space content

CORE-4743

Fix bug where action sequence input values were not properly passed to “Show/hide menu” actions within the action sequence

CORE-4750

Address a memory leak that can occur when editing large pages

CORE-4752

Fix v1 to v2 migration utility issue where Wrapper components would break migration in newer releases

CORE-4755

Internal code improvements

PLIN-2146

On Skuid NLX, add support for colons (:), forward slashes(/), and spaces within SAML attribute names

PLIN-3723

Internal improvements to CSV import within Skuid Database

PLIN-3780

On Skuid SFX, update OData data source detail screen to match updated NLX UI

PLIN-3796

Microservice upgrades

PLIN-4036

In Skuid Database data import, support additional date formats

PLIN-4050

For Skuid Database, add option to import CSV files without column headers—using the first row as data

PLIN-4110

Frontend experience work for utilizing session variables in render conditions

PLIN-4158

Improve error handling for Skuid Database when site permission access is not granted in the Database Console as well as the Composer

PLIN-4187

Fix error in Skuid Database where creating a “required” reference field would cause the Database Console to freeze

PLIN-4218

On Skuid NLX, implement frontend experience for using session variables in model conditions

PLIN-4222

For Skuid Database CSV import, disable the Import Records button until all necessary field mapping settings are configured

PLIN-4248

On Skuid NLX, fix issue where Database Console would not load if data source object conditions could result in an error

In instances where the Skuid builder was working in a database that had a data source object condition that could result in an error—like checking a session variable when the builder had logged in via username/password—the Database Console would not load.

Now, a proper error is displayed and the builder can continue working within the Database Console.

PLIN-4252

On Skuid SFX, fix issue where adding the first picklist entry value for a picklist field on a data source object would not properly populate the “Position” property

PLIN-4260

Internal administrative tooling bug fixes

PLIN-4267

On Skuid NLX in Database Console, fix bug in Currency field creation where “Decimal places” toggle does not properly enable—and only displays as read-only after creation

PLIN-4277

Adjust page API version query to account for future feature development

PLIN-4323

Fix issue where cancelling the creation of a new condition in Database Console doesn’t update the UI to remove the condition

PLIN-4325

In Skuid Database data import, support additional date formats

PLIN-4348

CI/CD Improvements

PLIN-4381

In Skuid NLX, add backend logic for “Case-sensitive” identity mapping in SSO

PLIN-4383

In Skuid Database, fix error that appeared when configuring default values for picklist fields at the same time as other field configurations

PLIN-4403

Fix Skuid Database issue where creating new picklist/multipicklist fields seemed to erase default value settings on previously creating picklist/multipicklist fields

PLIN-4410

Remove unused third-party plugin

PLIN-4448

On NLX sites with session variables enabled for an IdP, fix issue where session variable options would not populate when configuring conditions in Skuid Database

PLIN-4451

Experience improvements to Skuid NLX’s single sign-on experiences, including identity provider connection creation and detail screens

PLIN-4452

Adjust streaming behavior for Microsoft SQL data sources

PLIN-4453

Frontend experience work for utilizing session variables in render/enable/style conditions

PLIN-4469

Microservice improvements to support applying customer subscription updates

PLIN-4476

Enable session variables for all Skuid NLX sites, and create feature flag scaffolding for a future feature

PLIN-4502

Fix regression where AWS data source authentication provider setup screens show an incorrect example trust policy

PLIN-4505

UI text improvements to support early access environments

PLIN-4510

In Skuid Database CSV import, fix import properties sidebar not reappearing after creating a new field for imported CSV columns

PLIN-4519

On Skuid NLX when working with custom domains, fix issue where builders could not remove or update an invalid custom domain within the UI

PLIN-4525

In Skuid Database, fix regression in CSV import process where data type mismatch checks were not properly interrupting the import process

PLIN-4527

Backend adjustments for custom domains on Skuid NLX

PLIN-4559

On Skuid NLX, fix error in early access environments that prevented data source objects from being deleted

PLIN-4563

On Skuid NLX when working with custom domains, don’t validate DNS records when a custom domain hasn’t been set

PLIN-4566

On Skuid NLX when working with custom domains, address issues with timestamps and duplicate text

PLIN-4576

On Skuid NLX, fix a content type issue during the certificate uploading experience that caused an “Invalid request payload input” error

PLIN-4614

Improvements to Skuid NLX custom user registration pages: Allow user creation with capital letters

PLIN-4615

Improvements to Skuid NLX custom user registration pages: Fix ability to disable custom registration pages after they are enabled

Future feature development

The following tickets represent internal code changes made for future features.

APPS-2162, CORE-3496, CORE-3583, CORE-3588, CORE-3594, CORE-3630, CORE-3633, CORE-3682, CORE-3702, CORE-3724, CORE-3849, CORE-3856, CORE-4373, CORE-4411, CORE-4413, CORE-4468, CORE-4483, CORE-4492, CORE-4497, CORE-4499, CORE-4501, CORE-4516, CORE-4518, CORE-4520, CORE-4522, CORE-4524, CORE-4530, CORE-4531, CORE-4540, CORE-4589, CORE-4625, CORE-4629, CORE-4647, CORE-4662, CORE-4665, CORE-4671, CORE-4672, CORE-4709, CORE-4710, CORE-4712, CORE-4721, CORE-4722, CORE-4751, CORE-4753, PLIN-4420

Edinburgh

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 [[]]

16.0.7.0 (Hotfix)

PLIN-4522

For PostgreSQL data sources, fix error where searching fails for related field values

16.0.7.0

APPS-2134

Fix page crash when creating page packs containing 300+ pages through the Add All button

APPS-2322

Fix two errors regarding custom user signup pages in Skuid NLX:

  • Using a blank value for allowed email domains disabled all email domains
  • If a custom sign up page URL used an underscore or dash, it was inaccessible
CORE-4670

On the Deck component, fix issue where “Required field” error message would only appear on the first card in the Deck component. Now, these error messages appear on the appropriate card.

CORE-4684

Fix issue for donut-style Chart components where merge variables were not displaying properly without other content

Previously, when merge variables were the only value for a donut-style Chart component’s content template, no value would be displayed. The workaround was to use some empty space character, which would then cause the value to display as expected. Now, workarounds are not needed and merge variables display as expected, even if they are the only value in the template.

CORE-4686

In Page Include components, improve merge variable handling for URL parameters—ensuring that using the “Load new page” action will properly update the Page Include even if the only change is a URL parameter value from a merge variable

CORE-4698

Ensure context is properly handled when updating a Page Include with the “Load new page” component action

Before this ticket, some areas of Skuid NLX’s admin interface experience display errors, particularly around data source permissions. These errors are now resolved with no change or loss to saved data.

PLIN-3643

Microservice security improvements

PLIN-4110

Frontend experience work for utilizing session variables in render conditions

PLIN-4111

Frontend experience work for utilizing session variables in global merge syntax

PLIN-4136

Implement API for session variable usage at runtime on Skuid NLX

PLIN-4140

For skuid CLI retrievals, retrieve component packs as ZIP files since Skuid requires component packs be uploaded as ZIP files

PLIN-4218

On Skuid NLX, implement frontend experience for using session variables in model conditions

PLIN-4219

On Skuid NLX, implement runtime experience for evaluating the use of session variables in model conditions

PLIN-4220

Resolve CLI error when deploying certain types of Skuid pages

PLIN-4246

Frontend experience work for utilizing session variables in render/enable/style conditions

PLIN-4247

Frontend experience work for utilizing session variables in render conditions

PLIN-4248

On Skuid NLX, fix issue where Database Console would not load if data source object conditions could result in an error

In instances where the Skuid builder was working in a database that had a data source object condition that could result in an error—like checking a session variable when the builder had logged in via username/password—the Database Console would not load.

Now, a proper error is displayed and the builder can continue working within the Database Console.

PLIN-4293

Internal logging improvements

PLIN-4312

On Skuid NLX, allow CLI deployments to run when Skuid Database exists with user acknowledgement

PLIN-4384

Internal documentation updates

PLIN-4453

Frontend experience work for utilizing session variables in render/enable/style conditions

PLIN-4461

On Skuid NLX, fix error where users were unable to update their personal settings when a custom domain was enabled

PLIN-4467

On Skuid NLX, fix issue caught in early access where attempting to configure data source object permissions on app permission sets would result in a frozen page after configuring the first object

PLIN-4498

Skuid can now perform searches on case-sensitive columns names on PostgreSQL data sources

Previously, Skuid would search on Postgres columns passing in unquoted columns—which meant column names were always assumed by Postgres to be lower case. In practice, this meant searches on columns that used uppercase letters would not work, since they were being seen as lowercase by PostgreSQL:

Quoting an identifier also makes it case-sensitive, whereas unquoted names are always folded to lower case. For example, the identifiers FOO, foo, and “foo” are considered the same by PostgreSQL, but “Foo” and “FOO” are different from these three and each other.

— PostgreSQL docs, 4.1.1. Identifiers and Key Words

Now, Skuid wraps column names in double quotes (“) to ensure case-sensitivity is respected.

16.0.6.2

CORE-4686

In Page Include components, improve merge variable handling for URL parameters—ensuring that using the “Load new page” action will properly update the Page Include even if the only change is a URL parameter value from a merge variable

CORE-4698

Ensure context is properly handled when updating a Page Include with the “Load new page” component action

Before this ticket, some areas of Skuid NLX’s admin interface experience display errors, particularly around data source permissions. These errors are now resolved with no change or loss to saved data.

16.0.6.0

PLIN-4448

On NLX sites with session variables enabled for an IdP, fix issue where session variable options would not populate when configuring conditions in Skuid Database

PLIN-4372

Adjust error logging for Skuid NLX

PLIN-4371

To prevent unintended SSO access on Skuid NLX, disallow logins based on email when multiple users share the same email

PLIN-4350

Build tooling improvements

PLIN-4339

Backend code cleanup related to single sign-on enhancements

PLIN-4267

On Skuid NLX in Database Console, fix bug in Currency field creation where “Decimal places” toggle does not properly enable—and only displays as read-only after creation

PLIN-4222

For Skuid Database CSV import, disable the Import Records button until all necessary field mapping settings are configured

PLIN-4202

For SSO in Skuid NLX, set the IdP name identifier format default value to “Unspecified” instead of blank

PLIN-4177

For upcoming skuid CLI updates, fix metadata deployment server errors

PLIN-4050

For Skuid Database, add option to import CSV files without column headers—using the first row as data

PLIN-4033

On Skuid NLX, fix documentation link in the user signup area of the site permission set detail screen

PLIN-3522

During Skuid NLX CLI retrievals, adjust metadata returned for app permission sets

CORE-4668

On Skuid NLX, fix data source object regression where it was not possible to mass edit more than 25 field permissions at a time

CORE-4661

On Firefox, fix issue where multiple authentication popups would appear for pages using Salesforce data sources

CORE-4658

In v2 Page Include components, allow the use of merge syntax within the “Skuid page” property

CORE-4654

In Table components, add interaction functionality to child relationship fields

CORE-4653

When working within Sliding Panels and Table drawers in the Composer, fix issue where Responsive Grid divisions would disappear from view (though remain in the XML) when components were dragged into them

CORE-4650

In the Wizard component, fix issue where enable messages for step buttons would not display in the expected area if the Wizard was below other components

CORE-4648

Internal developer tooling improvements

CORE-4644

Fix bug where pencil icons would appear on button fields within a Form when changed into read/edit mode via a component action

CORE-4641

Allow “Export Table data” component action to run even if the Table component is hidden

CORE-4627

Adjust appearance of Search component in the Composer canvas to more accurately reflect its runtime appearance

APPS-2291

For custom domains in Skuid NLX, ensure verification codes sent to new users redirect them to the proper domain

APPS-2143

On Skuid NLX within the app detail screen, improve querying of pages that are not yet assigned URLs

APPS-2066

In Skuid NLX, improve page-related endpoints for enhanced performance in app detail pages

16.0.5.0

APPS-2305

On Skuid NLX, update segments of SSO code to account for custom domains

APPS-2313

When editing picklist field options on a data source object, ensure proper error appears when attempting to constrain field values to picklist entries when the field already contains values outside the listed entries

APPS-2320

In Skuid NLX, fix “Could not perform this query because no value could be found for merge variable ‘id’” error that would briefly appear when canceling the creation of a new data source

CORE-4577

Fix issue where having one denied data source would prevent any permitted data sources from querying. Now permitted data sources can query, even if an unpermitted one is used within a page.

CORE-4635

Fix Design System Studio display issue when using JSS to extend variants with code

CORE-4637

Fix bug where iterating over an empty REST data array using merge syntax displays “[object][Object]” instead of nothing

CORE-4642

Fix “Unpack pages from page pack” issue where setting the filter to “Last modified by me” would not not allow the filter to be set to “Last modified by any” afterwards

CORE-4649

Fix issue where new font families could not be added to design systems

CORE-4651

Allow hotkeys to be set without a selected modifier key

DEVOPS-1677

Backend pipeline improvements

PLIN-3844

When skuid CLI retrieves a data source object, ensure that object’s picklist entries are retrieved as well

PLIN-4027

Ensure that picklist entry order for data source objects is respected at runtime

PLIN-4036

In Skuid Database data import, support additional date formats

PLIN-4182

On Skuid NLX, improve dependency deployment logic for site deployments using skuid CLI

PLIN-4207

For Skuid Database, ensure picklist entries are included in metadata retrieval using skuid CLI

PLIN-4211

On Skuid Database, handle differing date and datetime formats at the field level to better support CSV imports

PLIN-4232

On Skuid NLX login history, streamline SAML details for logins preformed through SSO

PLIN-4253

Improve backend sorting code for objects in Skuid NLX’s admin UI

PLIN-4296

For SSO user properties, ensure Portal subscription type only appears as an option when properly activated

PLIN-4298

Session variable copy improvements

PLIN-4308

Improve handling of escaped characters within URIs in data source proxy

PLIN-4314

In Skuid NLX, fix issue where builders cannot save changes made in the Authentication tab of a data source’s detail page

PLIN-4318

When deploying a site definition with skuid CLI to NLX, ensure that a Skuid Database data source is created if it’s included in the definition—even if it is not associated with an app

PLIN-4331

Ensure deactivated picklist entries on data source objects do not appear in runtime

PLIN-4348

CI/CD Improvements

PLIN-4349

CI/CD Improvements

16.0.4.0

CORE-4640

Internal test fixes

CORE-4646

Improve row creation logic to prevent looping errors, which were apparent when working with models on data source objects that contained an “Id” field

PLIN-4323

Fix issue where cancelling the creation of a new condition in Database Console doesn’t update the UI to remove the condition

16.0.3.0

APPS-2306

Internal administration tool improvements

APPS-2307

Internal administration tool improvements

APPS-2310

Add ability to unpack page packs when no other pages exist in the Skuid environment

CORE-3545

Prevent invalid values in reference fields

CORE-3744

Responsive Grid vertical alignment improvements for “fit to content” + minimum heights

Previously, Responsive Grids set to have vertical alignment, with a minimum height, and the “Fit to content” height strategy would only consider the contents of the divisions—instead of the full minimum height of the component—when determining vertical alignment.

Now, Responsive Grids properly consider the minimum height when applying vertical alignment to their divisions.

CORE-3876

Improve rendering speed for Deck components, particularly for high record counts

CORE-4601

Fix issue where the Composer would not recognize setting a previously-configured margin property back to “None” as a change, meaning it was not possible to save the page unless another change was made. Now the Composer recognizes the change, and enables the Save button, as expected.

CORE-4610

Fix issue where mass action buttons would unexpectedly remain enabled after running—even when no rows were selected

CORE-4623

On the Search component, fix issue where the field picker for setting Return Objects would not function

CORE-4624

Fix where builders previously could not disable the “Skip entry criteria” property for existing “Submit for Approval” Salesforce data source actions. Now builders can enable/disable this property as expected.

CORE-4630

Set “Sanitize field values” property to default off for Table components

CORE-4638

Fix rendering issue for updated reference fields for PostgreSQL.

Previously, selecting a reference field value in a component attached to a PostgreSQL model would “blank out” the field, even though the value was updated. Now, reference fields update and render as expected.

PLIN-3780

On Skuid SFX, update OData data source detail screen to match updated NLX UI

PLIN-4086

Dependency upgrade to better support user creation

PLIN-4121

Improve login screen logic to better secure existing usernames against unauthorized detection

PLIN-4258

Internal administration tool improvements

PLIN-4265

Internal administration tool improvements

PLIN-4294

On Skuid NLX, implement unique authenticated user tracking for use on subscriptions page

PLIN-4299

On Skuid NLX, add a case insensitive duplicate check for the page search API endpoint

PLIN-4327

On Skuid NLX, fix rendering issue for app detail screens which showed [object][Object] beside pages without URLs

Edinburgh GA release (16.0.2.0)

APPS-1626

Performance-related improvements to app detail page structure and its “Create page” experience on Skuid NLX

APPS-1981

Improve page name validation experience when creating a new Skuid page

APPS-2236

APPS-2236 In Skuid NLX on the Pages screen, fix issue where the “Clear filter” button would seemingly clear filters, but those filters would be reapplied on page refresh

APPS-2244

In Skuid NLX, fix bug where clicking Help > About would not refresh the screen if the builder was already in a Settings screen tab

APPS-2301

Internal administrative tooling updates

APPS-2304

Adjust page API version selector when creating new Skuid page to account for future feature development

CORE-3713

Add navigation items as a stylable element in the Design System Studio

CORE-3752

Internal codebase configuration file adjustments

CORE-3823

In the Composer, add the ability to sync any design system changes without having to refresh the browser window

CORE-3847

Fix Calendar component height issues, where bottoms rows unexpectedly expanded to fill the whole page

CORE-3874

Hide character length properties for Salesforce rich text fields—which do not support max character/length properties

CORE-3891

Update {{startDate}} and {{endDate}} Calendar merge variables to properly return date values instead of datetime values—which are still available via {{startDateTime}} and {{endDateTime}}

CORE-3895

Update “Spacing” label to “Margins,” and allow margin spacing values to be applied to all sides—or set individually

CORE-3899

On Skuid SFX, update property labels and default values related to Salesforce header and sidebar:

  • “Show salesforce header” is now “Show Salesforce Classic header”
  • “Show salesforce sidebar” “Show Salesforce Classic sidebar”
  • Both properties are now unchecked by default
CORE-3919

Fix issue where dragging a button from a Button Set component into a Wizard component would result in the button appearing in both components—even though it was removed from the original Button Set component

CORE-3924

Fix Composer issue where interacting with a filter in the canvas—but not making changes to that filter—would sometimes cause the Save button to enable as if there were changes to the page

CORE-3925

Improve condition detection on models used as inputs within action sequences

Previously, when using a model as input for an action sequence, invoking that action sequence and trying to select a model condition to update would display inaccurate condition options. While this was not universal, this change ensures more accurate condition options appear when invoking an action sequence that updates an input model’s conditions.

CORE-3926

Improve scrolling behaviors for the Page Index when there are deeply nested components

CORE-3927

Fix issue in Calendar component’s Week view where setting the end time to 12AM causes the component to freeze with JavaScript errors

CORE-4344

Add feature for sanitizing field values on export for Table components

CORE-4346

Prevent editing of a principal page’s Masthead component from within its dependent pages

CORE-4351

Adjust custom formula function boilerplate template

DSC-3386

Add link to page’s design system in the Composer

CORE-4362

Allow the deletion of a step that was previously the first step in a Wizard component without having to refresh the Composer

CORE-4372

CORE-4372 Internal optimizations for deployment sizes

CORE-4378

Implement the ability to set style variant conditions for navigation items

CORE-4379

Internal developer tool improvements

CORE-4382

In Skuid NLX, fix issue where changing data source access would sometimes not enable the Save button

CORE-4384

In the Design System Studio, fix issue where “More Options” menu for style variants appears offset incorrectly

CORE-4387

In the Design System Studio, ensure “Background Color” property applies to navigation item style variants

CORE-4388

Adjust Wizard component action copy to use “layout” instead of “direction”

CORE-4392

Fix “cannot access Symbol(PageContext)” console error in Composer

CORE-4393

Fix issue where top-level items in the Horizontal Navigation component would not display the proper style variant for those items

CORE-4394

Fix early access issue where Calendar views were temporarily not configurable

CORE-4395

Fix positioning of dropdown caret in Table component’s Visible Rows property

CORE-4399

Fix issue in Table components set to read with inline-edit where an edited row outside of the browser’s viewport would cause the Save button to shift focus to that out-of-sight row instead of saving

CORE-4406

Update navigation item icon

CORE-4414

Fix issue where sliding panels restrict the size of modals, making them too small

CORE-4415

Remove unneeded field selector from Channel property in “Publish event” actions and event-triggered action sequences

CORE-4416

Make the hover behavior for v1 disabled buttons consistent, ensuring tooltips display and cursor changes display as expected

CORE-4417

Allows open/close drawer action to work regardless of visibility of drawer icons, as it previously would fail if “Show drawer icon” was disabled

CORE-4419

Fix issue where Go to URL actions in a Chart series would not accept some Chart context-related merge variables

CORE-4420

Add visibility options for Calendar component’s “Unassigned” grouping

CORE-4421

Add ability to refresh style variants from the Style variants conditions tab

CORE-4422

Fix issue where URL parameters for boolean values would cause page previews from the Composer to fail

CORE-4423

Fix bug where dragging components from the canvas into a later Wizard step sends the canvas back to step 1

CORE-4426

For reference fields on UI-only models in v1 and v2, fix issue where the field picker modal only displayed the selected field instead of the expected fields available on the referenced object

CORE-4431

Fix issue where “Update all” button for design systems does not complete updates in Dubai Update 3

CORE-4432

Fix runtime errors for Tables with Sort Builder enabled

CORE-4434

In Skuid SFX on the Calendar component, fix issue where “View more events” in Month view does not work in Lightning

CORE-4437

Internal improvements to Composer initialization

CORE-4440

Fix slow Composer performance for deeply nested components in Dubai Update 3 releases

CORE-4441

Fix Geochart issue where changing a map group would not properly update available values for the map type property, which also caused rendering issues

CORE-4446

Ensure that models initialized with existing data (like data from another model) properly set the recordId attribute

CORE-4447

On Skuid SFX, remove unnecessary permissioning syntax from Skuid permissions sets

CORE-4450

Better timezone handling in the Calendar component, addressing experience issues around the following:

  • 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.

CORE-4453

Internal improvements to Page Index functionality

CORE-4456

Ensure Filter Set data range label has appropriate spacing in comparison to other labels within the component

CORE-4463

Internal tooling updates

CORE-4472

Fix issue where mass actions displayed as menus or comboboxes were always deactivated

CORE-4476

Fix issue where “Select navigation item” action would not properly load available items to target

CORE-4489

Internal codebase enhancements

CORE-4491

Fix web font loading in v1 pages, which caused loading failures for Page Include components and their pages at runtime

CORE-4495

Fix issue for Salesforce data sources where SOSL queries were being run as SOQL queries when initiated from within a modal

CORE-4502

Fix regression where skuid CLI deployments were not causing design system recompilation

CORE-4514

Fix issue where the modal to specify URL parameter values when previewing pages would no longer appear—causing errors

CORE-4527

CORE-4527 On NLX in Skuid Database, fix regression where object ID was no longer autofilling based on object label

CORE-4529

Internal codebase enhancements

CORE-4538

Internal codebase improvements

CORE-4546

Fix issue where, when trying to upload a file larger than the size limit, the File Upload component would incorrectly say the file had successfully uploaded

CORE-4547

Fix issue in Design Systems screen where Update All button would fail with a “Visualforce Remoting Exception” error when updating batches of design systems that are larger in file size

CORE-4548

Fix Chart bug where context was not properly set after drilling down, returning to the main chart, and then drilling down into a new value

Clicking into a Chart component segment sets the context, which can be used to display filtered drilldown information. Before this fix, returning to the main chart and then drilling down into another value would not properly set the context—instead using the previous drilldown’s values. With this fix, drilldowns work as expected.

CORE-4549

On Skuid SFX, fix issue where users without Skuid licenses were not being redirected to standard Salesforce

CORE-4550

Internal codebase improvements

CORE-4555

Internal codebase improvements

CORE-4562

Fix mobile device rendering for reference fields on SQL data sources displayed as picklists

CORE-4563

Internal codebase improvements

CORE-4565

Fix issue where Properties pane tabs for Button Group propertie were not displaying correctly

CORE-4566

Fix issue where the time zone conversions for datetime field pickers and the Calendar component conflicted with each other, causing datetimes to render incorrectly for non-all day events

CORE-4568

Remove style variant options from filters, because they cannot have style variants

CORE-4569

In Skuid SFX, fix issue where interacting with a Rich Text Field in a Salesforce form and then leaving that field would cause the following error: Uncaught Action failed: skuid:teleporter$controller$eventHandler [Unable to get value from Rich Text component.]

CORE-4571

Fix issue where buttons could not be dragged from one Button Group component to another

CORE-4572

Internal codebase improvements

CORE-4574

On Skuid SFX, provide method of retrieving data source authentication values from Apex when using proxy

CORE-4576

Fix issue where reference fields set to “Option source: Automatic” would result in modals with no options and browser console errors

CORE-4579

Internal developer tooling improvements

CORE-4580

Fix issues for reference field lookup modals:

  • Raw SOQL queries appeared in the modal instead of the expected user-facing search terms
  • Deleting and re-entering a valid search string in the modal hid valid results

Both issues are resolved by this ticket.

CORE-4584

Fix CKEditor rendering in Form and Table components set to Edit mode within Tab Sets

CORE-4586

Re-add missing runtime export options for Chart components

CORE-4587

Fix issue where validations were not applied to Salesforce string fields as expected

CORE-4588

Deployment-related internal config updates

CORE-4590

Allow enable conditions and style variant conditions on global actions for Table components

CORE-4591

Deployment-related internal config updates

CORE-4592

Fix Edinburgh early access issue where “Required” validations were incorrectly enforced

CORE-4593

Fix Edinburgh early access issue where “Required” validations would sometimes run incorrectly if users pressed the Tab key to proceed to the next field

CORE-4594

Add Calendar component merge variable functionality to event on-click actions and event update actions

CORE-4597

Fix bug where the Calendar component’s “+n more” view modal displayed the previous date

CORE-4599

Fix issue where Calendar components were not providing actions for “Run component action” picklist

CORE-4600

On Skuid SFX, fix issue where tooltip text wouldn’t fade on pages deployed in Lightning with the Skuid Page Lightning component

CORE-4603

Rollback of future feature code

CORE-4606

Fix Table field issue where “Required” checkbox was not a visible property in the Composer

CORE-4607

On Skuid SFX in Lightning experience, fix lookup filters for polymorphic fields (e.g. OwnerId on the Case object)

Previously when selecting a value for a polymorphic reference field, an error stating a field doesn’t exist would appear—even with properly configured lookup filters. This fix ensures that reference field works as expected.

CORE-4611

Fix issue where reference field searches would not return expected records on some objects (such as the Case object in Salesforce) due to search value and record value/label discrepancies

CORE-4612

Fix rendering issue with picklist fields within sliding panels that are activated within Page Include components

CORE-4613

Fix issue where “required” validations were incorrectly running on optional picklist fields

PLIN-3672

Internal dependency upgrades

PLIN-3850

In Skuid Database CSV import, add empty state for field dropdown menus

PLIN-3851

Development for Skuid Database data import

PLIN-3852

Development for Skuid Database data import

PLIN-3854

Development for Skuid Database data import

PLIN-3856

Add functionality to save mappings during Skuid Database CSV Import/Export process

PLIN-3891

Allow picklist entry order to be set in data source objects

PLIN-3902

Remove internal formula function from Composer function list

PLIN-3926

In Skuid Database on Skuid NLX, ensure that required fields retain their “required” status after refreshing Database Console

PLIN-3933

In Database Console, fix bug preventing the creation of new picklist item son previously created fields

PLIN-3937

In Skuid Database data import, add “Create missing picklist options” toggle

PLIN-3945

General design adjustments to Skuid Database CSV import experience

PLIN-3946

In Skuid Database CSV import, autoassign fields created when mapping an imported column

PLIN-3961

In Skuid Database data export, change the “Remove special characters” option to “Sanitize field values” and update description

PLIN-3969

In Skuid Database CSV import, add notice and adjust behavior to account for file upload limits

PLIN-3972

On Skuid NLX in Database console, add in-progress state when uploading a CSV for import

PLIN-4002

In Database Console, fix “Request Body Unparaseable” error when reuploading a CSV after already mapping some fields

PLIN-4008

In Skuid Database data import, adjust import UI behavior to ensure errors are properly displayed (and the success message does not appear for imports with errors)

PLIN-4013

On Skuid NLX in Database Console, adjust export behavior to allow the “Sanitize field values” option to be enabled even exporting a single object

PLIN-4014

In Skuid Database data import, adjust styles for CSV preview

PLIN-4015

Fix copy error in Skuid Database

PLIN-4018

In Skuid NLX, fix issue where 0 (zero) would erroneously appear in bottom left of the Database Console screen when there are no objects configured

PLIN-4036

In Skuid Database data import, support additional date formats

PLIN-4076

Fix alignment of “Position” column label when editing picklist entry values for a data source object

PLIN-4099

On Skuid NLX, implement SSO user provisioning enhancements for updating mapped user attributes on login

PLIN-4118

Security improvements when returning site metadata

PLIN-4142

For Skuid Database data import, validate required field mappings client-side to surface potential errors sooner

PLIN-4143

Fix regression in Database Console where refreshing the browser window does not reroute the user back to their previous place in the Console

PLIN-4209

On Skuid NLX, fix issue where data source object field property values were not being properly retrieved or deployed with skuid CLI

PLIN-4221

On Skuid NLX after an error in CSV import for Skuid Database, properly dismiss error messages when leaving the CSV view

PLIN-4242

On Skuid NLX, ensure the duplicate name checking for session variables treats letter case appropriately

PLIN-4252

On Skuid SFX, fix issue where adding the first picklist entry value for a picklist field on a data source object would not properly populate the “Position” property

PLIN-4256

On Skuid NLX, update list of available environment types to reflect all types

PLIN-4260

Internal administrative tooling bug fixes

PLIN-4277

Adjust page API version query to account for future feature development

PLIN-4311

Fix issue where configuring data source objection permissions on app permission sets displayed the incorrect data source

PLIN-4322

On Skuid NLX, adjust how site metadata is delivered to fix retrieval issues for skuid CLI

PLIN-4325

In Skuid Database data import, support additional date formats

PLIN-4326

In Skuid Database data import, support additional date formats

APPS-2162

Custom domains development

Session variable development

The following tickets represent work implementing session variable functionality, allowing SAML attributes to be mapped to reusable variables whose values are available for the duration of a user’s session:

PLIN-4068, PLIN-4159, PLIN-4229

Future feature development

The following tickets represent internal code changes made for future features:

CORE-4357, CORE-3587, CORE-3598, CORE-3700, CORE-3749, CORE-3845, CORE-4339, CORE-4340, CORE-4352, CORE-4364, CORE-4365, CORE-4366, CORE-4374, CORE-4375, CORE-4376, CORE-4380, CORE-4385, CORE-4391, CORE-4400, CORE-4401, CORE-4402, CORE-4405, CORE-4408, CORE-4409, CORE-4412, CORE-4427, CORE-4428, CORE-4430, CORE-4433, CORE-4439, CORE-4442, CORE-4445, CORE-4454, CORE-4487, CORE-4488, CORE-4490, CORE-4496, CORE-4498, CORE-4500, CORE-4552, CORE-4554, CORE-4567, PLIN-3862, PLIN-4134