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
From Inside SAS: Third Week Maintenance March 2026 will be taking place on 21-22 March. The Stop tasks begin on Saturday ~ 6:45 AM ET on 21st March and the activity will continue through to 22nd March Sunday ~ 23:59 PM ET.
Welcome to the JMP Development Update for March 20, 2026!
Big congratulations go out to developer Annie Dudley this week! The U.S. Patent and Trademark Office issued her patent, entitled Systems, Methods, and Graphical User Interfaces for Generating Short Run Control Charts as U.S. Patent No. 12,578,851. A copy of the patent has been uploaded to the Sharepoint site: Issued Patents.
Annie attended JMP Discovery Summit in Italy along with other JMP team members last week and I see she has already added her notes to the Collected Notes page in Confluence. Thank you, Annie! If you also attended the conference, please contribute your notes and Jira links to the page. If you enter any Jira issues based on feedback received at the conference, please use the label DISCOVERY_EUROPE_2026.
Whether you traveled to Europe or not, I hope you all enjoyed the Global Rest and Recharge Day on Monday! When we returned on Tuesday, JMP 19.1 was released in MyJMP. You can find the Release Notes for JMP and JMP Pro here, and the Security bulletins for all products here in the JMP Trust Center. We’re glad to get the latest round of fixes out to customers and hope that many of them will adopt 19.1 and report any remaining bugs that they find. Development is already working on integrating important bug fixes into the 19.2 track and we’d like to fix as many issues as possible before we wrap up work on that maintenance release in June.
We reached our JMP 20 EA2 Freeze milestone at the end of the day yesterday. As noted in the EA2 Outlook reminder, please make sure to update your feature pages so that our EA customers know what is ready to test. Please add an ea2 label to indicate you have items to highlight in this EA, update details on the page (most importantly the motivation and summary section), and remove any obsolete content.
If you haven’t created a page yet for a feature that you wish to highlight, please use the 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 is 9 am on Monday, 3/23/26, and you should have EA videos to Mia by COB Tuesday, 3/24/26. Please see EA Video Guidelines or reach out to Mia Stephens with any questions.
Finally, throughout March, JMP is collecting donations for InterAct, an organization that is dedicated to ending the cycle of domestic and sexual violence in Wake County. You can bring donations to Pany Allen’s office in A5224 or ship contributions to the SAS warehouse from this Amazon Wishlist. Pany will pick up items from the warehouse and deliver them on March 25th.
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
Life Sciences Updates
- Richard: Worked on a new report Subgroup Forest to produce individual and double forest plots of an endpoint across subgroups.

Product Management and Product Marketing
- Bryan F:
- JMP Lab usability results & follow-through: Developed reports and began discussing results from recent JMP Lab studies, with strong improvements seen in Assistant and other areas. Worked with PMs to ensure findings are rolled out appropriately and inform next steps.
- Design & iconography: Continued exploration and development of updated icons for several platforms, emphasizing Fluent alignment, clarity at small sizes, and consistency with modern UI conventions.
Technical Support and Engagement
- Gary: Next week, we will celebrate Arn Cota’s retirement and wish him well. He will be missed!
Case Topics for Technical Support queue, last week:

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

Development Operations
- Nick R:
- Jenkins security update completed (JMPTOOL-2115), this addressed three vulnerabilities:
- Wrapped up the jmpshare1 server migration to AWS Glacier: JMPTOOL-1597
- DailyUT Windows Updates applied across the fleet: JMPTOOL-2112
- Worked on Windows 11 image in AWS using a new Linux QEMU base. This has progressed nicely and we're almost ready with the new image: JMPTOOL-2061
- Melanie: Worked through a plethora of Jira updates. Working with Susan Conaghan to schedule MIFs for JMP Live 19.5 help translation in April. Experimenting with a couple of new graphs for the unit test log dashboard. Was inspired by Dr. Ty’s talk on Women in Leadership on Tuesday and Nicole Jones’ interview for BIG on Friday. Enjoying the wild swings of weather that comprise a North Carolina spring.
- Jim:
- Altered JMP 20 build scripts to account for changes to redistributables on WinOS (JMP-29434)
- Applied system and application updates to multiple JMP build and testing mac OS machines
- Met with the Documentation Team (thank you Qiana) to discuss unnecessary file propagation
- Branching JMP 20 files for EA #2.
- Myron:
- JMPTOOL-2049,JMPTEST-2087 – testing dashboard access to files, etc on jmptoolprod
- JMPTOOL-1612,JMPTOOL-2103 – stringbot dictionary updates
- miscellaneous unit test data fixes, s/w upgrades on jmptool
- Shannon: Q1 goals conversations. Investigated mystery crashes reported in 19.0.5 and 19.1.
Localization
- Allison: Prepared translation packages for 19.5 JMP Live UI and handed off the project to vendors; I worked on MTPE of ZH JMP Live UI translations; validated localized JA FLM and KO DOE pdfs and handed off to QA for testing; processed vendor invoices; QAed and processed KO Big Books translations and handed off the localized mif files to vendor for DTP and engineering work.
- Krzysztof: Continued discovering XML Author tool for Oxygen. Working on a process for combining Oxygen topic files into chapter files based on the DITA map and validation of the translated files. Tuning up the l10n workflow for 19.5 JMP Live. Discussing and testing new automatation features in our workflow.
- Sandy:
- Worked on restructure of dashboard validation classes
- Worked on adding new feature to Korean report we provide vendor
- Worked on moving all files in commit/return process into same json file
- Sohail: Completed aligned translations for edu captions, resolved batched translation job errors, added terminology based translation and validation.
Documentation
- Chris: Continued work on understanding and customizing an Oxygen framework. Collapsed the BA files into H1 headers so that the Stat writers could get a feel for it (vs writing with files at the topic-level). Met with Jim about how to shrink our Perforce footprint. Gathered potential work for our coming intern.
- Susan C: Finished up the new JMP Live Config help for 19.5 and sent for review. Worked on 2026 goals and met with Qiana to discuss. Working on JMP Live 19.5 fixed bugs.
- Qiana: Went through the features categories to identify the non-stat NFs for JMP 20 and began looking at Jira work items. Project planning and coordination.
- Devon: Continued work converting FrameMaker to XML, JMPLOC-6993: Labelled and handed off template files for 19.1 web help to L10N.
- Jill: 3/16 UI string review, editing JMPLive Public Config doc, working on 2026 goals, and reviewing UG Jiras.
System/Host Testing-Cary
- Eric:
- JMP-27704: The REST Snowflake data connector creates threads/resources to fetch and process data. Verified that those threads are now destroyed after completion of the table imports freeing up memory and avoiding possible slowness.
- JMP-28931: Verified that we now support pre-opened table passthrough for Python-based data connector types where results of opening files are returned directly to the user rather than the file's contents being routed through Query Builder (which strips metadata such as table scripts from JMP tables).
- Updated the ODBC Drivers and Database Connection confluence page with new driver download links. Then linked this page, along with the Mac ODBC DSNs configuration for nightly unit test runs, to the new Dedicated Suffix Runs confluence page.
- Began work to install the needed ODBC drivers on both the Windows and Mac Suffix Run machines.
- Researched documentation on importing data from Excel to assist tech support with customer (Seagate) issue importing dates from Excel.
- Audrey: Working with Justin Kusch and Tony Gianni (from SAS) to get a handle on how to maintain an orphaned Viya 4 server used for JMP testing. Reported an axis bug (thanks Lisa Grossman for helping with the investigation). Ordered a MacBook Neo so we can test on this new device and chip. I18N testing. Summer intern program planning. Re-starting the intern interview process for my group’s intern position - please feel free to forward to young people you know who may still be looking for an opportunity.
- Hunter: Most of the week involved verifications and providing updates on JIRA items affecting projects, missing files from crashes with x64 JMP on Arm64 Windows, and other host related JIRAs. Started testing with new authorization changes added in JMP 19.1.1 and 19.2 and reported a case where offline authorization failed.
- Nick H: Added banners to the legacy and dev dashboards, and we have effectively shifted users toward jmptoolprod. I worked with Myron to fix issues with the nightly emails not sending after a pandas update introduced an error. I also worked on unit tests for some data table scripting enhancements in JMP 20.
- Justin: Primarily worked on preparing the environments and creating Jenkins jobs for testing’s new dedicated suffix runs. In addition, I’ve continued validations on JMP’s Image object integration with Python.
- Mandy: Working mostly on testing the EA2, JMP 20 and working 3 journals for Dynamic Tables, and Auto Tagging - making EA2 videos; Tested and verified some JIRA’s that were fixed for both 20 and 19.2.
- Melisa: Working my way through the 1st round of I18N testing for JMP20 and have reported quite a few problems with hardcoded strings or options not working correctly in other languages.
Web Testing – Cary
- Hui
- Expanded JMP Live 19.5 i18n (internationalization testing) and interaction coverage, reducing JMP Live localization and HTML5 regression risk in high‑use visualizations.
- Verified critical HTML5 fixes (Pie, Heatmap); identified and filed remaining interaction risks (JMPHTML‑15348/15351), with Heatmap already resolved by John.
- Identified JMP Live functional and i18n gaps impacting core workflows (Undo/Redo, language switch: WEBJMP‑12047, ‑12034).
- Next: complete JMP Live 19.5 i18n coverage testing, then resume JMP Live 20 Process Screening with focus on interaction correctness and regression prevention.
- Taylor: Issues now Accepted and Closed:
- Remove parsePackageEditForm and doParsePackageEditForm from ...\app_shared\publish.js
- Hover label on x days per week pops up black area with no text (Could not reproduce)
- TypeError: this.sortDaysOfWeek is not a function (Duplicate)
- Next Run is wrongly displaying pool.eventQueue.status.IN_PROCESS_label after schedule run is finished (Duplicate)
- Browser console error when "Unused Data" is visited
- Surface Last Accessed Time on a package
- Installation performance is slow for 20.0
- Seeing navigation issues when returning to previous page
- Owner of duplicated post is the owner of the original post
- Anna:
- Verified fixes for Graph Builder, axis, Mosaic chart, Web JMP data viewer and bar chart.
- Worked w/Hunter to investigate Windows Installer crash issue w/Beyond Trust w/Hunter that Dave Barbour fixed.
- Researched Transform column scoping issue.
- Beginning regression testing of Mike S's bar chart refactoring.
- Reported issues:
- GB: Bar: Interval style bar labels need to be offset from line
- GB: Mosaic: Variable width axis labels used by different Y groups affects layout
- Natalie: HTML Automation report: 19.1.1 – Daily automation for this branch began last Friday – All Clean, 19.5 All Clean, 20.0 – 10 diffs but all expected and/or documented with an open Jira. Met with Steve to explore new Process Screening libraries and step definitions pushed to the repository this week. I am now actively creating new test features using Steve’s amazing new code!
Core
- Dave B:
- Recreated a crash Mandy found on the Mac but had trouble reproducing
- Fixed a regression in the mosaic seg that caused selection and tooltip problems
- Investigated problems related to a recent change to exception handling and have temporarily reverted the change
- Xan: Log scale work; EA2 feature pages and videos.
DOE and Reliability
- Caleb: This week, I continued work on improving the sample size explorer infrastructure. I also created a new feature page for the new acceptance sampling explorer. Finally, I gave a talk at Doug Montgomery's Fireside Chat on covering arrays and their use in software testing. Hope you have a great weekend!
Hosting and Interfaces
- Michael H:
- Worked with Apple to demonstrate that the Tahoe doesn’t close windows when the display sleeps issue is on their side (JMP-28343). Spoiler: They’re not convinced yet.
- Completed PI Importer enhancements to support Tags, including getting the automatically added utility table scripts (Update and Change Attributes) working correctly.
- Fixed resize-click handling issues in the Mac TreeDisplay host control to better conform with JSS.
Interactive HTML
- Paul Spychala: Have been working on performance improvements last few weeks for JMP HTML.
- Created a new levels calculation to compliment the calculations we already have. This calculation is to improve the performance of reports that have many X-(categorical) Columns with many unique values. In the worst case scenario this calculation has been up to 99% faster, and best case scenario will be equivalent. See Mosaic Segment Perf20 info here.
- John Powell:
- Fixed a crash when zooming in on a heatmap with labeling by row enabled (JMPHTML-15351).
- Worked on improving heatmap resize performance by skipping binning calculations and other setup operations(JMPHTML-15361).
- Intern interviews.
- Q1 goal discussions.
JMP Live
- Aurora: 19.5: Bug fixing. 20.0: Improve handling of Process Screening Time role, start adding support for ID role, tweak grouping string formatting, convert some code to TypeScript.
Statistics
- Annie:
- Attended Discovery EU and received great feedback at the workshop, meet the experts and at the SPC Focus group. And, as a bonus, both the workshop and the JMP Live lunch attracted several prospective JMP Live customers.
- This week, after adding trip notes and expense reports, I completed the ACT-Now Ethics course and have been working on fixing some Asserts Jim & John found.
- Lastly, on Tuesday, I learned that the U.S. Patent and Trademark Office issued my patent, entitled Systems, Methods, and Graphical User Interfaces for Generating Short Run Control Charts as U.S. Patent No. 12,578,851. A copy of the patent has been uploaded to the Sharepoint site: Issued Patents.
- Elizabeth: Working on speed improvements for the eigen decomposition required for the Biplot in KMeans to better handle wide problems (JMP-29895). It has to be done carefully, though, since the same decomposition is used to calculate the CCC statistic.
Stat Testing
- Mark: I explored the Mimic test framework and the available JSL methods. I met with Jacob to discuss how we can use JSL and interactive testing together. I refactored two old scripts for popular outlier tests with review and testing help from Addison before submitting the add-ins to the Marketplace. I updated the 401 data tables with the test cases used by unit test script for fitting the Gaussian Process model in the Bayesian Optimization platform after a recent change caused a dialog to appear for every table.
- Jacob:
- Testing Easy DOE, attempting to reproduce anonymous crashes in JMPTEST-2339
- Testing Design Explorer, investigating intermittent crashes on Windows ARM machines
- Exploring testing Easy DOE using Mimic(), with Mark Bailey
- Performance Testing, updating scripts and troubleshooting issues with the script that re-runs failing tests automatically
Note from Shannon
Hope you all have a great weekend! :smiling_face_with_smiling_eyes:
