19.1.1: Security Freeze 4/2/26 • 19.2: Code Approval Mode begins 6/18/26 • 20.0: open in main • 20 EA3 Freeze 4/30/26; Feature Freeze 7/23/26
Welcome to the JMP Development Update for April 3, 2026!
Early Adopters for JMP and JMP Clinical were notified of the availability of JMP 20 EA2 on Tuesday. Mia shares a special thanks to all for updating feature pages and recording videos to highlight important new features, making it easier to share updates with our EA members for testing and feedback! We’re now looking ahead to EA3, planned to freeze on April 30.
As noted in the EA3 reminder in Outlook, if you have a feature you’d like to highlight in EA3, please make sure to update the feature page. You can create new feature pages using this Template for JMP 20 Feature Pages. The most critical information is within the Motivation and Summary section of the template. If this is your first time creating a feature page, see this How-to for more information or work with your product manager.
The deadline for creating or updating feature pages for EA3 is 9 am on Monday, May 4, and you should have EA videos to Mia by COB Tuesday, May 5. Please see EA Video Guidelines or reach out to Mia Stephens with any questions. JMP 20 feature work wraps up at the Marketing Feature Freeze on July 23. You can find the full list of JMP 20 Dates here in Confluence.
Speaking of the EA, Product Management has taken over EA data and Reporting. Here is their report on Early Adopter 1. Please feel free to email Sarah Sylvestre if you have feedback on the report or have ideas on what you would like to see reported in the future. Sarah is interested in your feedback and ideas!
We have now passed our security freeze for JMP 19.1.1. Final installer candidates are planned to be created April 5. DevOps will begin work on 19.1.2 tasks once 19.1.1 is finalized. As a reminder, if you have identified a severe bug in JMP 19 that cannot wait for the 19.2 release, please review the information on the Emergency bug fix approval process page in Confluence to request consideration for inclusion in JMP 19.1.3. Any candidate for 19.1.3 needs to first have a sponsor from customer care or product management (Dan V, Jeff P or Wendy) and also needs to be fixed and verified in 20 and 19.2 as soon as possible. The time window for 19.1.3 is short and so we need to be very selective about the fixes that we include.
Thanks to Russ Wolfinger for volunteering to talk about recent AI assisted coding projects at Thursday’s dev meeting! If you missed the meeting and the lively chat about Russ’ recent projects and AI coding tools in general, you can find a recording here.
General Announcements
Important Upcoming Dates
- JMP 20 EA3 Code Freeze - 4/30/26
- JMP 20 EA4 Code Freeze – 6/11/26
- JMP 19.2 Code Approval - 6/18/26
- JMP 19.2 Code Freeze – 7/9/26
- JMP 20 EA5 Code Freeze – 7/23/26
- JMP 20 Feature Freeze – 7/23/26
- Please visit Confluence for a full list JMP 19 dates and JMP 20 dates.
JMP Development Updates
Core
- Xan: Axis size remembering; legend customization broadcasting; starting to get multiple overlay variables to work.

- Dan S: Refactoring platform launch to help with by-group setup, fixing an issue with Diagram by-group scripting. ccessibility changes for ColBox, providing limited screen-reader support for column titles only. Working on changes for Unstructured Text filter items to improve stretching.
- Ernest: Added wrapper for SpecLimits; thanks to Stat team for reviewing changes in platforms. New feature to color values in data table based on SpecLimits property.
Hosting and Interfaces
- Michael H:
- Modernized JException to use std::exception_ptr. Also removed its legacy cloning and debugging machinery, simplifying its usage. Documented in Confluence here. (CL @919849)
- Fixed an issue where context (right) clicks in a modal window (in this case, the Excel importer) were not recognized correctly. Candidate for 19.2. (CL @920088)
- Added const correctness to Managed. Updated the Confluence documentation here. (CL @920089)
- Refactored NumberColDisplay and NumberColEditDisplay (the C++ classes for JSL Number Col Box() and Number Col Edit Box()) to use a common base class, NumberColDisplayBase, which contains the shared logic. This enables use of the new const correctness support in Managed. I attempted to preserve all existing behavior; if you notice anything unusual in these display classes, please let me know. (CL @920814)
Interactive HTML
- John Powell:
- Improved the performance of many (250) wafer heatmaps by updating the Moments calculation to support caching results and using this capability in RectSegment (JMPHTML-14832, JMPHTML-14052 ).
- Completed the SAS Change Management course.
- Completed the SAS GitHub Copilot Product and Legal Overviews course.
- Started investigating performance of an interactive HTML graph with many (3000+) marker segments due to overlays (JMPHTML-13546).
- Mike Stickles: Found another issue (JMPHTML-15338: Mosaic is cutoff) fixed as a byproduct of other work, passed on to testing for verification. Fixed linked issues JMPHTML-14211 (Creating a treemap in HTML5 can consume all of memory) and JMPHTML-14627 (Analyze C++ memory performance and make improvements) where the test case required 23.5GB RAM to complete export; was able to get that down to 700MB. Switching to doing performance testing. Will only be working three half-days next week.
- Paul Spychala: Have been working on performance improvements last few weeks for JMP HTML. Started applying the new Calculation to more Graph segments. This includes Treemaps, Lines, Areas, Pie, and Bars. Was pleasantly surprised that the new calculations not only improved performance, but also fixed outstanding bugs. Also fixed Profiler Remembered setting bugs in HTML.
JMP Live
- Aurora: 20.0 - Updating warning JSON examples used in automated tests. Process Screening triage discussions. Improving control over GraphQL schema and using it more broadly. Other - Met (along with others) with patent attorneys for Control Chart Builder triage. Trying out GitHub CoPilot (along with Michael Goff and Justin Chilton).
Statistics
- John Sall:
- In Process Screening,
- Add "Time Span" columns to summary (JMP-29598),
- Add opton "Show Last N" (JMP-30045),
- Support Spec Limits for Proportion Charts (JMP-29928),
- Change Limits lines to step functions for p charts (JMP-29979),
- Add "Prob of Action" and "Prob Out of Spec" for proportion charts, with daggar note (JMP-29917),
- Add distribution options for Proportional charts: "Binomial", "Beta Binomial", "ZI Binomial", and "ZI Beta Binomial". The Beta Binomial is the preferred way to handle overdispersion rather than Laney P Prime (JMP-30167).
- Implement customer request to allow "Show Spec Limits" option for XBar charts (JMP-30158).
- In the Contour Profiler, extend the axes to enclose clipping ellipse (JMP-26453).
- In Fit Proportional Hazards, loosen the singularity criterion and add warning (JMP-30161).
Stat Testing
- Tonya: Testing Process Screening new features: Beta Binomial, ZI Binomial, and ZI Beta Binomial distributions, proportion charts with unequal lot sizes, align proportion charts with distributional and traditional charts, Show spec limits for non-individuals charts. Bug verification.
- Jacob:
- Testing the update to the latest version of OpenBLAS in JMP 20 (JMP-28488)
- Testing Easy DOE, working on new unit tests using Mimic
- Working on material to complement the IDF for DOE Simulate Responses new features, with Mark Bailey and Joseph Morgan
Life Sciences Updates
- Drew: Built a customer-ready/facing reference implementation for managing JMP Clinical studies in batch - scripts that take text-based input file and can be scheduled to add, refresh, and delete studies within a JMP Clinical installation. This was created and sent in support of a recent new sale at PTCBio, but will be useful for other JMP Clinical customers as well. Working on JMP Clinical 19.2 and 20.0 Jiras and tracking set of 19.1.3 Jiras for eventual integration upon approval process to be initiated by Geoff.
Technical Support and Engagement
Technical Support Case Volume by week:

Case Topics for Technical Support queue, last week:

Engagement Support Case Volume by week:

Case Topics for Engagement queue, last week (excluding cases related to Restricted Party Screening):

Product Management and Product Marketing
- Bryan F:
- Continued working on the JMP 20 icon refresh.
- Updated JMP UX documentation with clearer guidance for theming work related to spacing, controls, containers, and elevation, as well as practical JSS/CSS guidance.
- Developed JMP Live report workflow prototypes to help support customer communication on requirement and to verify expectations.
- Updated documentation and source control for the U-Study tool.
- Sarah S: Product Management has taken over the EA data and Reporting. Here is their report on Early Adopter 1. Please email Sarah Sylvestre if you have feedback on the report or any ideas on what you would like reported in the future. Sarah is very interested to hear your feedback!
Development Operations
- Jim:
- Working on a mac test build machine
- Working with Nick Ruva and Shannon Conners on addressing a Jenkins communications issue with a Windows Server 2025 unit test machine
- Working on automating the launch of JMP 20 on the Windows 11 ARM64 unit test machine
- Updated the JMP 19.1.1 .dll file signing.
- Nick:
- Updated the regex for the Jira/Swarm integration to better handle parsing the Jira ticket ID from a Perforce commit message. More use cases and special characters are supported, as well as the full Jira URL to the ticket.
- Worked on debugging and resolving issues with the JMP 20 Windows 2025 Daily UT nightly process.
- Further research into Mac virtualization and some preliminary testing.
- Bob: Updated installer code and process in preparation for V20 EA3. Investigated (with assistance from John Schroedl) a new method for installation of WebView in V20.
- Shannon C: Thanks to Nick, Jim and Audrey for helping investigate JMP UT project failures this week! We made a lot of progress and resolved a few crossed wires. Reviewed several recent crashes and met with team members in group and 1:1 sessions. Glad to see various team members at this week’s collaboration lunch and JMP spring social!
Localization
- Trish: Worked with Christine to repost Localization Engineer position. Work continues to find new translation vendor for Simplified Chinese. Finished validation and build of Asian language term banks, added tests for batch processing, and updated testing pipeline to ignore marked tests.
Documentation
- Susan C: Revising goals in Workday. Working on JMP Live 19.5 fixed bugs. Sandbox testing of Jira mapping process. Suggestion to categorize the Online help links on the Support page of jmp.com.
- Qiana: Created descriptions for the release notes, new features, and security bulletins. Shared the descriptions with Wendy. Spent time working with sample data, which included emailing Development and evaluating Jiras. Project planning and coordination.
- Devon: Continued work converting our FrameMaker files to DITA XML.
- Chris: Continued learning about and customizing the Oxygen framework.
- Jill: 3/30 UI string report, JMP-27314, reviewing other V20 Jiras.
System/Host Testing-Cary
- Mandy: Catching up with JIRA’s for new things in 20, added some test cases in JSL and Image tests, and verifications for 19.2. Pounded some more today on Auto Tagging and different ways to bring in files (.csv, .xlxs, .pdf, etc) and found a few that only prompt for the first table open - opened Jiras for that. Tested the Spec Limits column property changes, adding colors in the table for the lower and higher limits - and wrote a test for those. Need to pass this along to a Stat Tester for the spec Limit checks there. Put together a quick WFB demo and shared with the testers some ideas/thoughts and recorded it - told them to ask if they had questions down the road but hope they don’t fear JSL as much anymore! :smiling_face_with_smiling_eyes:
- Eric:
- Finished installing required ODBC drivers on the dedicated Windows environment for Suffix test runs
- Working to finish the same ODBC driver installs on the dedicated Mac environment, but slowed by issues with the Teradata driver.
- Verified Oracle connection performance improvement from JMP 20 EA1 to EA2 (responded to customer EA1 feedback) documented in [JMP-27488] Oracle ODBC Connection Lag - Jira
- Granted Databricks access; working to create new Personal Access Token and OAuth2 data connectors for Databricks.
- Hunter: Verification of JMP 19.1.1 items in preparation for final installer testing next week. Tested a grid of authorization cases when upgrading JMP 19.0.x -19.1 releases to JMP 19.1.1 to verify expected hard check-ins occurred and could be completed. Worked with Daniel Powell to isolate a case and verify his fix where JMP 19.2 on Mac was failing to authorize while offline. Met with Bryan Fricke to share input from a JMP 20 EA user.
- Justin: This week I got the license renewed for our testing CAS Server with Audrey. I've worked through testing and automation for the get and set pixel functionalities of the Python integration of Image objects. Finally, I've prepared test cases to be added to the suffix test runs and closed several defects.
- Audrey: Updated our Viya4 server license with the help of Tony Gianni from SAS, summer intern preparations, I18N testing, intern interviews.
Web Testing – Cary
- Hui:
- Reduced export regression risk in JMP20 HTML5 by identifying missing LOG messages introduced during refactoring; filed related Jira(s) and partnered with John Powell to clarify UI vs Add In behavior.
- Strengthened Process Screening coverage across JMP 20 and JMP Live; logged defects to improve reliability ahead of release.
- Improved UX consistency by filing tooltip issues impacting both HTML5 and Desktop.
- Unblocked cross team publishing by coordinating with Josh LoPresti to help James successfully publish to JMP Live using the “As Live Report” add in.
- Anna:
- Doing regression testing for Mike Stickles line seg work.
- Verified JMP Live graphlet issue w/s.replace error Michael Senyoit and saw other errors:
- Attempting to access empty hover label list
- JMP Server does not have an active package.
- Cannot locate data table
- Entered issues for these and am testing graphlets in JMP Live.
- Verified user reported issue that was recently fixed for errant line segment in dashboard and tracked down CL (pushed by Paul S) so that corrected the problem so that it can be fixed in 19.2.
- Verified slow bar chart issue Mike S corrected
- Seema:
- qc_ids error when trying to publish Control Charts with Warnings
- ID role not communicated to JMP Live accurately
- ID role communicated as qc_id (qc_ids is better)
- Two pkg-ccw-triage-update audit log records for single report republish
- Support new qc_ids marker attribute
- JMP Live needs to be reauthorized whenever webjmp is restarted (localauth)
- Different default options in JMP when publishing report using data that already exists in JMP Live
- Circular reference error for groups does not display properly onscreen
- Created Jiras:
- Report selection does not work in Publish window if you have accessed the window via Previous button
- Some error messages contain extra period at end
- In Progress:
- Warnings panel link to specific row in data table is dangerous when warning is invalidated
Note from Shannon
Glad to see NASA finally righting a historic naming wrong…Trying to understand why the initial moon landing program was named Apollo is a rabbit hole of theories and speculation that you probably don’t want to go down late on a Friday afternoon. Hope you all have a wonderful weekend!
