19.0: release planned 9/16 • 19.0.1: security fixes only until 10/2 • 19.1: all changes require code review – approval mode begins 12/11 • 20.0: open in main • 20 EA1: Jan. 2026
Welcome to the JMP Development Update for September 12, 2025!
We are in the final stages of preparation for the JMP 19 launch next Tuesday 9/16! Teams have signed off on all roles, the New in JMP page has been updated with 19 content, and final required tasks are expected to be complete by Monday afternoon, 9/15. Once complete, Bob will upload installers to My JMP, likely by late afternoon Cary time on 9/15, allowing Trial pages to be available worldwide on the morning of 9/16. In the meantime, please share this link to Dan V’s Linked In post about the JMP 19 preview webcast with your network! There are 500 registrations at present and they hope to get to 600.
We will soon be celebrating the JMP 19 launch in person in Cary on October 1! As Robin Betters noted in the invite for the Cary event, there will be drinks and heavy appetizers (plus cake) to celebrate our work on JMP 19! Remote employees should plan to have a drink and appetizers on JMP at the same time and gather with nearby colleagues if possible.
Please be aware that soon after production JMP 19.0 becomes available in MyJMP, users will no longer be able to download installers for JMP 19 EA9. Existing JMP 19 EA9 installs will continue to function until 12/31/2025, however. We certainly encourage all users to get production 19.0 rather than continue using pre-production EA9. We anticipate JMP 20 EA1 will be available for customer beta testing in January 2026.
Even as we celebrate JMP 19, development continues to work on future releases. Security reviews for JMP 19.0.1 are scheduled for later in September 22 and we will release 19.0.1 with third party library updates for all products in mid-October. The JMP 19.0.2 security release is scheduled to follow in mid-November. You can see the full list of planned 19 releases on the JMP 19 dates page.
Special request for R&D All Things Open attendees - the conference is coming up soon - Oct 13-14! Please add your name to this Confluence list so we can coordinate carpools, wearing JMP logoed items, and perhaps a group picture at the conference.
Thanks to Shannon Leslie for sharing that on September 9, Atlassian rolled out changes to our Jira and Confluence Cloud sites. A list of relevant changes along with highlighted details and documentation can be found here.
The changes include:
- Due date notifications are now available
- Reparent Issues in the List view
- View work items grouped by Status, Assignee, and more, in the All Work view
- And more!
Contact Shannon Leslie or any of the other JMP Atlassian admins with questions. Also check out our JMP Atlassian Q&A Teams channel, where this and other Atlassian information will continue to be shared.
General Announcements
Important Upcoming Dates
- JMP 19 QA Signoff – 9/11/25
- JMP 19 posted to MyJMP – ~9/16/25
- JMP 19.0.1 Final Image Candidates – 10/05/25
- JMP 19.0.1 posted to MyJMP – 10/14/25
- Please visit Confluence for a full list of JMP 18 and JMP 19 dates.
JMP Development Updates
Statistics
- John Sall:
- In the Process Screening platform, added the command "Save Limits Table", creating a trimmed down version of the summary table for use in Phase 2 control charting.
- In the Profiler for "Expand Intermediate Formulas" the new default method is to keep the intermediates separately evaluated and stored into temporary storage, rather than expanding them in place. This greatly reduces the duplication of evaluating the intermediate expressions. To enable this, it has to create a directed acyclic graph of the expressions and do a topological sort to put them in the right order. The temporary storage for intermediates is mapped to the EvalContext so that it still supports multithreading in Profiler features. There are still challenges ahead, for example, in supporting these formulas in the html5 version of the Profiler. So far, this mechanism is not used if it has to take derivatives, which are needed if there are Noise columns specified, or if the formula system is used in Nonlinear; for these cases, the expressions are still expanded in place.
- For example, a Profiler of a small Neural model looks like this in JMP19 when you do the Show Formulas command, repeating many of the same expressions in each formula.

- The new mechanism avoids repeating the intermediate expressions.

- Here is a NodeGraph of the prediction formulas from Ordinal Logistic Regression.

- Also, Ernest Pasour implemented a shortcut for specifying enumerated properties in a ScriptItem .prototype. You just use $enum$ where the enumerated choices would be. For example, in Model Dialog the .prototype for GLM Distribution is
.prototype("obj = Fit Model(...Personality( \"Generalized Linear Model\" ), GLM Distribution($enum$)...)")
...it automatically expands to this in the Scripting Index.

- Elizabeth: Work on tolerance intervals for mixed models. We’re trying something similar but slightly different from the paper reference I’ve been using. So after obtaining similar results to their application examples, I’m running simulations following their simulation study to compare performance to nominal levels and the paper’s method.
Stat Documentation
- Michael C: Finished reviewing (with Colleen) the analytics word list for adaptation into the JMP documentation style guidelines. Meetings and planning for 19.1 and 20 cycles.
Stat Testing
- Mark: Continued my analysis of the images of parts made by additive manufacturing in our ALT study with Caleb. I started work on making a covering array that is blocked by day to specify the cases for the unit tests of the data entry tab in Easy DOE.
Life Sciences Updates
- Richard: Figured out how to summarize exposure over multiple drugs and independent periods of assessment for general clinical trial designs. Digging into the graphics, which will involve some standards as well as some swimmer plots to show patient treatment paths over time. This will eventually lead to the ability to annotate the treatment pathways with safety information and other related details.
- Drew: Adding support for snapshot filtering in patient profiler. Investigate study add/update performance improvement potentials. Cleaning up IQ PDF generator. Meeting with Illumina to get feedback on add-in for formatting table/tabulate output.
Product Management and Product Marketing
- Bryan F: Added warnings to U-Study (user study creation tool) about session expiration and automatic renewal in the case of acknowledged expiration. Coordinated with Greg Kraus of SAS about an e-mail from a college where a blind student could not access JMP with a screen reader. Participated in a JMP Live string review and answered design questions. Working with telemetry data to gain familiarity with using and processing the data. Met with developers about goals for future JMP 20 theming work. Met regarding JMP Discovery Summit preparation and provided input about using AWS AppStream instances for educational training purposes.
- Kaylee: We published our sales enablement update this week for the month of August. This update includes information on new resources in the sales enablement library to help sales sell our products, JMP Marketplace updates, and new resources that are available to help with the launch of JMP 19.
- Dan V: We are at 500 registered for the JMP 19 launch webcast! We are very close to our goal of 600 registrants. If everyone could please repost this to their networks on LinkedIn I think we can get to our 600 goal before JMP 19 is out next week!
Technical Support and Engagement
- Gary:
- We continue to see a large volume of cases for JMP Student Edition and Restricted Party Screening (RPS) - as Wendy mentioned last week, school is back in session. The team is getting ready for the launch of JMP 19 next week with updating knowledge base articles, templates, installation guides, etc. to be ready for September 16th.
- There was an issue with some of the reports, so there are a couple missing, but I was able to run the report by topic and cases by support team. 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.
Cases by Support Team:

Case Topics for Technical Support queue, last week:

Case Topics for Engagement queue, last week:

Development Operations
- Melanie: Stringbot: Stringbot ran on 19.1 successfully Monday night – Thanks to Myron for a lot of work on improving Stringbot’s runtime; main is the current focus – Please note that Stringbot will run on 19.1 this weekend but not on main • Process Management: Planning End of Release tasks tracking, like we do for branching task but smaller • Discovery 2025: Polishing slides and transcript for Discovery Japan and Korea translations.
- Myron: Debugging image runner diffs not showing up in PostGres database (JMPTOOL-1737). Setting up stringbot to run on main/20.0 and trying to reduce runtime (specifically p4 annotate, JMPTOOL-1693). Move SQL Server backups off SAS resources (\\sashq, JMPTOOL-1734). Logged into Perforce on several servers to restore jobs’ access to source control (JMPTOOL-1758).
- Shannon L: Curated a list of interesting Jira and Confluence updates from our last monthly rolling update from Atlassian on Tuesday. JMP Marketplace Monetization platform stakeholder meetings continue. Weekly technical meetings, including monthly Atlassian admin meeting. More JMP 19.0 Bug clean-up and other EOC activities for 19.0.
- Shannon C: Investigated several mystery crashes and reported Jira issues. Worked with Lisa G on paring down the crash scores table for the crash system. Prepared for and began Q3 catch ups with DevOps team. Weekly technical meetings. Discussions on JMP 20 EA installer for JMP Student Edition customers.
- Bob: Final work to get 19.0.0 ready for release. Update Confluence pages as needed to reflect new release.
Localization
- Allison: Worked on pre-processing the memoQ kits to get final word counts of V19 Big Books; sent out quote requests to vendors for Big Books localization. Worked with Hunter to fix issue found in localized Keyboard Shortcuts pdfs; finalized localized 19.0 GPO pdfs and handed off to QA for validation.
- Sandy: Finished testing commit process to handle dot releases properly. Started testing new return jobs for Sample Data, Builtins, and PortableUI for dot releases. Setting up parallel testing for current return job and new return jobs.
- Sohail: Resolved bug with TM Dashboard file download, added test cases for backend and front end, explored integrating tests for bitbucket CI/CD.
- Ying: Finished building the localized JMP Live Help for 19.0. Capturing localized DJ screenshots for JMP19.0.
Documentation
- Susan C: Sent English JMP Live help to test to verify fixes made after the initial handoff. Test has verified. Published the localized JMP Live help and sent to test. Test has verified. Working on cloning 19.0 Jiras for 19.1 and planning any possible improvements. Working on environmental monitoring example for SPC guide.
- Qiana: Work items: JMP-27435, JMP-24421. Triaged Jira work items for 19.1. Reviewed the updates Chris made to the MATLAB doc in 19.0 help and PDF. Verified localized JMP Live help. Checked the 19.1 tasks for Jira cloning. Discussion with Nala and Audrey about Test reviewing the doc. Project planning and coordination.
- Chris: Pushed 19.0 help. Still working on Notebook doc. Helpmap fixes. Got a noinfo file working across JMP help.
System/Host Testing-Cary
- Mandy: Worked on helping interview candidates for a new tester for our group. Verified JIRA’s fixed for 20 – and had to push a few back for more work; writing some tests and updating those. Planning to test some new features with Tables > Stack, Summary, and Transpose for 20 as well as work on filter views with sorting.
- Hunter: Participated in interviews with candidates for testing positions, JIRA verifications and trying to recreate some issues reported in old JIRAs, checked localized PDF files for Allison, and applied the Mac Tahoe 26.0 release candidate on our host testing Macs in lab which is scheduled to be released on Monday (15Sep2025).
- Lisa: Investigating EA tracks, participated in interviews for test engineer role, adjusting query for crash data table, and testing semiconductor toolkit add-in for the marketplace.
- Audrey: JMP 19.0 is signed off!
Continuing the interview process. Looking at JMP 20 timelines and planning. Jira verifications.
System/Host Testing-Beijing
Core
- Ernest:
- Added support for $enum$ to expand Enumerated values in JSL prototypes in the Scripting Index, for cases where a custom prototype is needed. Call .prototype with “$enum$” inserted where the values string should be inserted. This is part of the effort to improve doc for LLM scraping. Ex. .prototype(“Method Arg($enum$)”)
- Dave B: Reworked pie seg journal format to fix a unit test. Integrating changes back to 19.1. Crash investigation.
- For linked Stack, pushed code to prevent copying of Formula to derived column. That could result in a later crash.
- Xan: Switched some segs to use shared_ptr; round and round with IT on spontaneous reboots; laxer about non-geographic background maps.
- Evan: Refactoring to clarify where opcodes are coming from and where they are being handled.
DOE and Reliability
- Caleb: Participated in a few more interview rounds of candidates for the reliability developer role. I also worked on a few sample size explorer bugs and finished the resubmission of a manuscript with Brad Jones and Chris Nachtsheim.
Hosting and Interfaces
- Will: Created a new MATLAB JSL (MATLAB Load) command to load .mat binary files and store them as JSL variables. Various bug fixes for MATLAB integration and documentation updates.
Interactive HTML
- Mike Stickles: Completed 19.1 integration for JMPHTML-14898 (GB: Calculation of Std Dev | Std Error summary statistics for color role values incorrect), assigned to testing. Finished basic fix for JMPHTML-14483 (GB: Line: Stacked chart yields different result w/Ordering=Summarized), but while the graph is now correct the tooltips are showing incorrect information; trying to find a fix for that. Also did some investigation into closely related bug JMPHTML-14484 (GB: Line: Stacked chart yields different result w/Ordering=Within Row) in hopes of fixing both issues together, but the latter appears to be an export issue rather than a JS processing issue and so will require a completely different fix.
- John Powell:
- Integrated, tested, and committed several bug fixes into 19.1(JMPHTML-14567, JMPHTML-13727, JMPHTML-13801, JMPHTML-14463, JMPHTML-13889).
- Added support for the “Use for unlabeled values” option in the Value Labels column property (JMPHTML-13726).
- Discussions on Process Screening warnings and alarms triage on JMP Live.
- Worked with Paul S. and Nick R. on getting around new network access limitations after an O/S update on our Windows 11 build machine.
- Attended info session for managers of year round interns.
- Attended “Advancing Inclusion Across Difference: Growing productive workforce engagement in times of challenge”.
- Updating my Windows 10 desktop to a Windows 11 laptop.
- Praveena:
- JMPHTML-14918 GB: Contour: Boundary lines that clip view not persisted
- JMPHTML-14918 CP - Not drawn correctly.
- JMPHTML-14193 HTML5 Table: Cmd+Click deselecting previous selected row
- JMPHTML-14177 On Mac, in HTML5 reports, the Cmd key does not perform "add to selection"
- JMPHTML-13815 CCB Run Chart: HTML5 does not honor the product marker shapes well
- JMPHTML-14814 By Group: Bogus markers appear on Control Chart when using local data filter
JMP Live
- Aurora: 19.1 - Minor control chart triage improvements. 19.5 - Changing the ownership of a post (audit logging and notifications). 20.0 - Discussing and documenting triage in Process Screening, checking JSON formatting from JMP. Other - Looking into issues at First Solar, Confluence article maintenance.
Note from Shannon
Thanks to Shannon Leslie for sharing this SAS memory from 20 years ago! If you were here in 2000, you too may recall this incident. :smiling_face_with_smiling_eyes: Hope you have a great weekend – and beware trees bearing fruit!!!
