19.2: Final Installer Candidates 9/6/26 • 20.0: open in main; EA7 Code Freeze 10/1/26; Code Freeze 1/7/27
Welcome to the JMP Development Update for September 4, 2026!
We have now passed 19.2 Security Freeze with successful completion of security reviews for all products. Final installer candidates for 19.2 are planned to be created on Sunday night. Once installers are fully vetted, we expect them to be released in MyJMP on 9/22.
If you have encountered a bug present in 19.X that did not make 19.2 but needs to be considered for a fix prior to the launch of JMP 2027, please bring it to your manager’s attention immediately. If you both agree that it meets the qualifications for inclusion in our 19.2.3 emergency bug fix release, including being fixed and tested in 20 (see Emergency Bug Fix Code Approval process for X.X.3 here), please mark it as Critical and add 19.2.3 to the Planned Versions field so that it can be reviewed by development management in advance of the 19.2.3 track opening later in the year.
For JMP 2027, EA6 has been signed off by QA and will be released in MyJMP next week. FYI that EA customers will begin to see the JMP 2027 branding appear in EA6. JMP Live 2027 will also have a JMP Live 2027 EA6 for select customers.
As I mentioned at the start of the dev meeting on Thursday, the deadline for developers to request to add new JMP sample data tables for JMP 2027 is 9/17. Please see the reminder that Qiana Perry added to your calendar on 9/3 for more details about how to request new sample data.
Finally, thanks very much to Mandy Chambers, Nick Holmes, David White, and Brad Norris for presenting on various new data table features for JMP 2027 at this week’s JMP Dev meeting! If you missed the meeting, you can find the recording here.
General Announcements
Important Upcoming Dates
- 20 EA7 Code Freeze – 10/1/2026
- Final Portable UI String Handoff for 20 – 11/12/2026
- 20 Code Review Mode - 11/26/2026
- 20 Code Freeze – 1/7/27
- Please visit Confluence for a full list JMP 19 dates and JMP 20 dates.
JMP Development Updates
System/Host Testing
- Audrey: Participated in interviews for an Enterprise Technology Lead for JMP. Created and posted a new position for a Test Manager in my group. Getting ready for 19.2 Final Installer validation starting next week. Working through the decommission tickets with CIS for some older machines we no longer use.
- Mandy: Worked on the Demo for the Dev talk and contributed my part about Auto Tagging. Assigned some Components to new testers and used the Jirabot tool with Melanie Drake’s assistance. :smiling_face_with_smiling_eyes: Worked on a few TS tracks from customers - one for Projects with Summary dialog inside. Verified Transform column Split issue with Dynamic tables and uncovered another crash or two as well. Discovered that the JSL framework dialog looked a bit closer with the buttons, along with Nick and Brad and tracked that to a push Michael H made for JMP-28052 - you may notice this is some platforms too:
shannon_conners_0-1788957619394.png
- Eric H:
- Worked on testRESTOpenDatabricksTable tests for nightly test runs.
- Testing JMP-27403 Login to Snowflake V2 endpoints with public/private key. Created private keys (and the associated public keys) on both Windows and Mac. Initial testing uncovered encoding issues with the encrypted keys that caused JMP to crash. Fix pushed for the crash and I was finally able to successfully connect to Snowflake on Windows. Still working on Snowflake registration issues for the keys on Mac.
- Nick H: Continued work on 20.0 feature and bug verifications. Files a half dozen bugs or so for data table metadata, both interactive and JSL related. Finished and pushed some initial metadata unit tests. I also tried to continue cleanup of nightly failing unit tests.
- Hunter: Installed, authorized, and ran tests with all configurations for the JMP 2027 v20 Early Adopter 6 release. Opened JIRA items related to the JMP 2027 product name change. JIRA verifications.
Web Testing
- Hui:
- Identified and documented 5 defects across Constellation Plot and localization workflows, increasing visibility into release risks; verified 2 fixes to support quality readiness.
- Completed Round 1 validation of JMP Live 20 client-side warning localization scenarios and expanded coverage into Admin workflows, reducing I18N release risk for international deployments.
- Continued targeted testing in I18N and Constellation Plot areas to identify remaining quality risks before release readiness decisions.
- Verified JMP-31819 as fixed on JMP 20; the issue remains in Developing for JMP 19.2.3 and requires re-verification when that fix is available.
- No critical blockers were identified this week; remaining focus is reducing I18N and visualization-related release risks.
- Natalie: HTML Automation report: 19.6 – 2 expected diffs, 20.0 – ALL PASSING! (For the first time in a while) Completed the updates for our process screening testcases to use new step definitions that make the feature file more targeted. Began working on new test coverage for 3D platforms including Scatterplot 3D and Surface Plot. Completed prep work for 19.6.0 JMP Live Installer testing next week.
Core
- Dan S: Continued work on Accessibility, starting more testing with JAWS screen reader. Added .tightMargin() on ComboBox for compact layout in tables. JSL <
- Evan: Reworked fix for drawing contrasting icons to avoid unnecessary events. Investigated quirks using JMP with JAWS. Recording demos and preparing for accessibility dev talk next week.
- Dave B: Fixed a journaling bug with ellipse correlation. Fixed a missing value bug with Numeric Conditional Formats. Recreated an anonymous crash with CCB.
Hosting and Interfaces
- John Schroedl:
- Accessibility: Radioboxes now read their position (1 of n, 2 of n) in the set. Checkboxes will as well if there are multiples defined. Fixed the line and marker style menu item appearance when selected in high contrast. Improving telemetry detail about screen reader usage. Helping with presentation prep.
- Host: Fixed mouse cursor over tree controls. Update crosshair cursor to match tools. Icon updates. Improved grouping of items in default JSL edit toolbar. Finished some older code to accept dropping files from VS Code Explorer onto JMP; shelved until 21 since it adds a new file type (.url) format which is a new feature.
Interactive HTML
- John Powell:
- Replied to a JMP User Community post about controlling label fonts.
- Added two new Components to JMPHTML Jira & JiraBot(Axis3D, Surface) to help separate 3D work that Paul Spychala and I are doing.
- With help from Dave White, I investigated exporting to Interactive HTML and publishing to JMP Live graphs using Decorated Table Views.
- Completed Q3 Check-in course and reviewed Q3 surveys.
- Committed depth-sorted triangle rendering to improve rendering of Scatterplot 3D’s semi-transparent Normal Contour Ellipsoids and Nonpar Density Contours (JMPHTML-15727) . Working on doing the same for semi-transparent points/spheres.
shannon_conners_1-1788957619400.png
- Paul Spychala:
- Added partial support for ColBox which re-enabled Contour Profiler categorical controls on HTML/JMPLive (JMPHTML-15801)
- Added support for the surface plot continuous gradient fill type (JMPHTML-15797)
- Modified nice scale/axis calculations for HTML/JMPLive for zooming/panning axis (JMPHTML-14998)
- Mike Stickles: Continuing work on JMPHTML-15788 (Support multiple response bar charts). I have the bars drawing correctly; currently working on getting sorting of the X-axis to work properly.
JMP Live
- Aurora:
- Process Screening Triage performance improvements and bug fixes
- Propose a change to control chart warning notification email
- Plan Discovery Americas lightning talk
Statistics
- Laura C-S: Finished adjusting the standard errors of the SEM Categorical MIIV-2SLS estimator and made changes to the processing of summarized data in SEM so we can handle multiple-group analysis with this new estimator. This was the last of a series of complicated steps to enable proper handling of ordered categorical data in SEM—specifically with the MIIV-2SLS estimator. Started edits to the MultiCorrelationFitter class to handle frequency columns. Met with the D&I Advisory Team to finalize the team’s charter, prepping for Discovery presentation, attended the C++ dev discussion, and finished the Q3 assessment.
Stat Documentation
- Michael C: Reviewed stat UI strings in 20.0. Continuing to work on XML cleanup in the converted documentation source files. Preparing for Q3 conversations next week. Planning for Fall Technical Conference and other SPES chair responsibilities.
Stat Testing
- Mark: I am scripting a simulation platform for Bayesian Optimization to benchmark performance while making changes. I am evaluating ways to group data columns after selecting Make Table in Custom Design. I attended another Introductory Developer Discussion by Dan and Chris. I evaluated a new learning model about DOE for Ryan DeWitt. I attended the planning meeting for the DOE and Reliability Roadmap. I started making my lightning talk for this roadmap session. I started making a usability study with Jacob for the JMP Lab about the recent changes to Custom Design prompted by John. I will present our invention idea with Jacob, Ryan, and Joseph to the SAS Patent Committee today.
- Jacob: Testing Space Filling Design, adding tests for designs with covariates and new tests for the design diagnostics. Testing prototype of ‘Coverage Analysis’ script for Covering Array. Preparing usability studies for Discovery, with Mark.
- Tonya: Testing NF in Process Screening to rescale axes to include spec limits. Continuing to test CUSUM after the rewrite, multivariate capability analysis, and save alarms table. Bug verification.
Life Sciences Updates
- Jake:
- Opened, worked on (in collaboration with Luciano), and closed several Jiras related to the Torch Add-In bugs
- JMP-32056
- JMP-32070
- JMP-32083
- JMP-32091
- JMP-32098
- JMP-32114
- Otherwise performed testing last week to ensure that the Torch add-in was sufficiently useful before EA6
- Wrote a nice python script that allows Torch add-in users to run the Torch deep learning models in a pure-python environment for production purposes. This would be after training a model with JMP.
- Drew: Ready to present the new JMP Clinical unit testing benching tool to the JMPC testing team. This tool will facilitate more rapidly creating and updating the unit tests. The tool also sets the foundation for potentially using the ImageDiff testing framework - effectively automating the benchmarking process altogether. Work on various JMP Clinical Jira bugs and helping others with JSL questions and designs.
Product Management and Product Marketing
- Sara: This week as part of the global Sales Enablement Training Series, @Stuart Little shared how to position JMP for the Chemical Industry. In this session, Stuart shared a high-level overview of the chemical industry, where JMP plays, and where we win. You can watch the recording and learn more about what was shared here.
- Bryan Fricke:
- Accessibility
- Discussed screen-reader behavior and expectations for desktop applications, and scheduled a meeting with Greg Kraus and his team for next week.
- Coordinated follow-up testing with JAWS, Narrator, and NVDA.
- UX
- Continued icon-refresh efforts.
- Explored an approach to JMP Search that would use semantic matching.
- Discovery Summit Lab: Published U-Study authoring guidance and a reusable walkthrough template, and asked product teams to submit draft walkthroughs by September 11.
- Table Views: Provided feedback on the relationship between filtering, grouping, and sorting in JMP 2027 Table Views.
Technical Support and Engagement
- Gary:
- This week, Technical Support kicked off a project to enhance JMP Live support. Stay tuned for updates in 2027 as we work to streamline and strengthen the customer experience.
- Below are the usual graphs for case topics for both Tech Support and Engagement. Here are the TS JMP Live reports and the link to the Jira filter showing the tickets reported by Support for the last 14 days.
Case Topics for Technical Support Americas/Japan, last week:
shannon_conners_2-1788957619401.png
Case Topics for Engagement queue, last week (excluding automated cases related to Restricted Party Screening):
shannon_conners_3-1788957619402.png
Development Operations
- Jim:
- Perforce support
- Applied operating system updates to multiple mac OS machines to bring them into compliance; worked with CIS to resolve an issue preventing a WinOS desktop machine from being compliant
- Created mac OS dual binary bundle and installers, WinOS x64 and ARM64 executables for JMP 2027 EA#6 for JMP, JMP Pro, JMP Student Edition and JMP Clinical, and WinOS x64 executable for JMP Pro Live EA#6
- JIRAs
- Fixed JMPTOOL-2391 JMP 2027 creates the ~\Library\Application Support\JMP folder, sometime as root user
- JMPTOOL-2355 Request for a JMP Live 20 EA for EA6
- JMPTOOL-2396 JMP Student Edition 2027 from silent install is creating "~/Library/Application Support/JMP" owned by root instead of the user causing authorization to fail
- Reported JMP-32273 JSL UT Assertion Failure in displayPartition.cpp:6726 DisplayBoxConstOwner HeadPartition::getEditFocusDisplay() const
- JMP-32275 JSL UT Assertion Failure in doeFactor.cpp:253 double DFactor::getNumLevel(int) const
- JMP-32276 heap-buffer-overflow(READ:8) at invoke.h:87, std::__1::__invoke_result_impl
- JMP-32277 container-overflow(READ:8) at numVec.cpp:37, NumVecSpan::operator[]()
- JMP-32278 heap-use-after-free(READ:8) at dataGridColumnHeader.cpp:1420, ColumnHeaderSummary::compute()
- JMP-32279 heap-use-after-free(READ:8) at term.cpp:3451, Term::findLevels()
- JMP-32280 heap-buffer-overflow(READ:2) at exactTests.cpp:547, freqnet()
- JMP-32281 Use newTopString() Lognormal (6); Normal (4)
- Verified
- JMP-1015 JSL UT Assertion Failure in topEvalSAS.cpp:6424, virtual JString CCodeGenerator::argMetadataType(CodeGenType)
- JMP-6208 heap-use-after-free(READ:8) at __threading_support:330, std::__1::__libcpp_thread_isnull()
- JMP-32120 JSL UT Assertion Failure in shwBuilder.cpp:14817 void CCBuilderModel::setupSaveLimitsTable(EvalContext *, DataTable *)
- JMP-31814 ASAN crash using Random Linearly Constrained Uniform function
- JMP-31809 ASAN crash using Set Subgroup Size(1)
- JMP-31807 JSL UT Assertion Failure in dtColProperties.cpp:4006 bool CachedPropertyListMap::putList(TopPtrArg, EvalContext *)
- JMP-29954 JSL UT Assertion Failure in shwBuilder.cpp:21976 stdx::isize(levelSelection) > level
- JMP-29731 heap-use-after-free(READ:8) at JMPDtTable.cpp:3910, JMPDtTable::~JMPDtTable()
- JMPTOOL-2418 JMP_20.0.0_Mac seems to be stuck offline
- Melanie: Started the project for migrating Stringbot for Builtins from jmptool to AWS JMPTOOL-2401 • Preparing to create the Jira tasks for 19.2.1 • Began to look at Sample Data to find any mentions of JMP that would need to be changed to JMP/JMP Pro 2027 • General troubleshooting/QA for DevOps processes • Beginning to look at the product folder in Perforce for files that we no longer need or should be somewhere else JMPTOOL-2400 • Prepping for the Q3 check-in
- Bob:
- Worked with Drew on final edits for revised Installer Validation scripts to use beginning with 19.2
- Worked with Daniel Powell on changes to InstallChecker to begin with version 20
- Created first EA to use with JMP Live 2027
- Myron:
- server maintenance (delete old files, reconfigure postgres logging, etc.)
- JMPTOOL-2108 and others – continue crash system migration (and updates in the process)
- Shannon C: Investigated several mystery crashes and reviewed open Jira issues and did some clean-up of older issues. Held regularly scheduled meetings and did prep work for upcoming Q3 catch-ups.
Localization
- Krzysztof: Supporting translators with memoQweb and questions about the new online workflow. Updating memoQ resources for Oxygen and online projects, including filter updates for non-LaTeX equations and user assignments. Migrated all L10N assets (jobs, scripts, and data) from jmptool and jmpsrv01 to the jmptrans server. Testing new L10N automation features.
- Allison: Researched and responded to queries related to 20.0 Portable UI strings from our translation teams; made corrections to typos in Portable UI source strings in our translation kits; delivered updated 19.5 JMP Live Public files to Doc team; communicated with vendors on invoices.
- Howard:
- Worked on edge cases and exceptions of Dita populate and pre-process
- Worked on multiple file type for project handling
- Worked on product depot API for the new Oxygen file type
Documentation
- Susan C:
- 19.2 release notes - did consistency checks & sent for review. Keeping up with feedback from review & incorporating. Extended review to Sept 4.
- Adding link to JMP Clinical doc/release notes in our RN doc (JMPDOC-3407).
- JMP Live 20 (2027) - reviewing the new features/fixes and planning documentation impacts.
- Assisting Chris with JA 19.2 JMP help issues.
- Making fixes to 18.1 & 18.2 PDFs per customer issue (JMPDOC-3405).
- Qiana:
- Worked on the UG RNs for 19.2.
- Verified JA, KO, and ZH JMP Doc Library books.
- Verified JMPDOC-3405.
- Verified callout image updates.
- Devon: Built and handed off 19.2 localized JMP Doc Library PDFs, back to work converting JMP Live docs to XML.
- Chris: Working on non-English 19.2 help builds, and the Oxygen styles and framework.
Note from Shannon
Thanks very much to Mike Stickles for sharing this one! Hopefully you too will get some bug-solving ideas over the long weekend!
shannon_conners_4-1788957619408.png