Welcome to the JMP Development Update for January 5, 2024!
Congratulations to several JMP team members who celebrate SAS anniversaries this month! Hope you all saw Allison Hines’ nice article on InsideSAS about John Sall’s 50th SAS anniversary here. Also celebrating SAS anniversaries this month are Jim Borek (35 years!) and Krzysztof Josefowicz (25 years!). Congratulations to all on your many years of dedication to JMP and SAS.
With the JMP 19 branch created just before the holidays, automatic integration of code from main to 18.0 has stopped. Code pushed to main is now being build-checked on Mac and Win and auto-integrated into the JMP 19.0 feature branch. JMP 18 continuous integration build projects and jmprunner builds for 18 are now running on the 18.0 branch. These projects will continue to run until JMP 18.0 source code changes are complete.
This week, Jim and Bob have been working to create and test JMP 19.0 installers for Mac and Win. Jim asked me to mention that when installers for 19.0 are made available to all, he will send out a JMP 19 installer status email similar to the one currently being sent for 18.0. Once JMP 19 installers are ready, JMP 19 JSL unit test runs will begin for selected configurations based on input from QA managers.
As a reminder, JMP 18.1 and 18.0.1 branch creation is planned for 1/16/24.
- Once the JMP 18.1 branch is open, all source code changes are required to be reviewed prior to being manually integrated into the branch. Approval will not be required until JMP 18.1 Code Approval mode starts, currently planned for 5/21/24.
- The JMP 18.0.1 branch will be locked by default (with the exception of security champions).
- The 18.0.1 “dot-dot” release is intended to be delivered two months after 18.0 ships and as such will likely need to be limited to important security fixes only due to the short timeframe.
- If a non-security related showstopper-level issue arose between regular maintenance releases, development and product managers would meet to evaluate its possible inclusion in a future dot-dot release.
Next week is JMP kickoff week with sessions planned for Tuesday and Wednesday morning from 9-10:30 am. If you are on campus, you can join in these sessions in EBC 250 in building C. Please see Robin’s invites for more details!
Thanks to Tonya Mauldin for sharing the beta/crash report for 12/15/2023-1/5/2024. Crashes are selected.

Beta/Crash report for 12/15/2023 - 1/5/2024 | JMP Live (sas.com)
Combined EA reports EA1-EA6 – A tree map of subtopic is below. Please view the JMP Live report to see many other graphs.

Tonya Mauldin | JMP Live (sas.com)
General Announcements
- If you’re willing to be a featured employee on Inside JMP, please download a copy of the Get to Know form. Simply fill out the questions and when you’re done, upload it, along with 3 photos of you to the folder. Thank you for helping to make our JMP family a little more familiar!
Important Upcoming Dates
- JMP 18 Code Freeze – 1/16/24
- JMP 18.1 and 18.0.1 Branching – 1/16/24
- JMP 18.0 Localization Freeze – 1/16/24
- JMP 18.0 Documentation Freeze – 1/18/24
- JMP 18.0 Final Installer Candidate – 1/23/24
- Please visit Confluence for a full list of JMP 18 dates.
JMP Development Updates
Data Discovery
- Dan S: Fixed a few low-exposure crashes that might be candidates for 18.1. Added DataTable icon for Dashboards. Made filter << Close() work for local data filters - it was originally for global filters but left platforms in a bad state if used on a local filter. Fixed scrolling in filters when ordered by count. Made < work better for toggle-style buttons and buttons with menus. Frame Box now supports setting of min/max values like most boxes. ClickState handlers will now auto-destruct after they are canceled or released. Previously the HeadPartition could keep them around indefinitely, which could lead to object lifetime issues.
- Dave B: Updated jmprunner with new 19.0/18.0 changes, started building and testing the jmp 18.0 branch since it no longer matches main, fixed an xml import bug and provided a possible work around for customer reported issue.
- Xan: Bug fixes for marker jitter, fill patterns, axis formatting. Working with Tonya and Annie on CCB issues caused by a GB exclude row state change.
DOE
- Caleb: Catching up on paper reviews and exploring alternative techniques for track classification based on current and previous WildTrack projects. I’ve also started planning my projects for JMP 19.
Host
- John Schroedl: Investigated compiler issue with Evan and reported the optimizer bug to Microsoft. Any response or code changes will be tracked in JMP-19948 and a big thank you to everyone who has up-voted the issue. Also investigating problem where opening JMP files from Explorer runs a second instance instead of opening in an already-running JMP. Thanks to Evan and Bob Hickey to their efforts there! Project fixes for JMP 19 builds.
- Daniel Powell: Authorization is live in EA7 and we are working to polish the UX for air-gapped machines.
Interactive HTML
- Paul Spychala: Fixed a handful of minor graphical tweaks and inconsistencies that missed the holiday break. This includes unnecessary warnings in the log [JMPHTML-13381]. Inconsistencies with “Missing” vs “” wording in the tooltips of our segments [JMPHTML-2163, JMPHTML-2429, JMPHTML-2431, JMPHTML-2469, JMPHTML-13390]. Sometimes quotes went missing when encoding the HTML report for specific GStream [JMPHTML-13412]. Our MathML engine for Concat could only add 1 matrix at a time but users could concat many matrices in one operation, so now we should support them as well [JMPHTML-2472]. Distribution platform’s ability to have multiple linked axes (Prob, Count, Density) would cause problems panning them on JMPLive so we have disabled those cases from causing problems. [JMPHTML-13377, JMPHTML-13376]. And lastly we had instances where the FrameBox for Cell Plots was getting shrunk by a few pixels and therefore cutting off the bottom of the chart [JMPHTML-13372].
- John Powell: Fixed an issue with drawing Variable Clustering’s Color Map on Correlations with hidden rows (JMPHTML-13442). Adjusted the rendering of Graph Builder Contour element’s degenerate HDR ranges to match JMP better (JMPHTML-13440). Investigated a crash with Control Charts with a Where clause applied (JMPHTML-13447). Year-end discussions.
JMP Live
- Aurora: 18.0: Reviewed publish help documentation. 18.1: Improved audit log downloading (stream immediately, unlimited number of records, report progress via pub-sub, allow certain non-admin users to get space-specific records). Support filtering package access records by space. 19.0: Wrote up notes from project kickoff for control chart warning improvements.
Statistics
- Elizabeth: Enabled extrapolation control in the profilers for all mixed modeling platforms in JMP 19 (SLS-REML, Mixed, GLMM) (JMP-11942). Continued work on enabling weights and freqs for Mixed (JMP-9812) in anticipation of implementing the multinomial distribution in GLMM the data for which often comes in summarized form.
- John Sall: Fixed a by-group issue with saving folded prediction formulas in Model Screening for JMP 19. This involved adding a Suffix clause feature to a number of save commands in various fitting platforms so that it would be able to distinguish formula columns for different folds. (JMP-19708).
- Laura C-S: Added weights to the launch dialog in SEM and included information in the report to clarify that they’re being used with robust inference. Added JSL for the Define Time Values model shortcut. Added an indication of existing Time Values in the From/To lists of the report. Added a note of which model is being set as the independence model under the Model Comparison table.
Stat Documentation
- Karen: Working on the last bits of 18.0 documentation ahead of doc freeze including incorporating review comments, reviewing material for Michael and Colleen, and working on the standard least squares example chapter with Michael to give it a more current vibe.
- Michael C: Working on draft of Fatigue Model platform documentation for 18.0 and cleaning up other parts of the doc prior to doc freeze later this month.
Stat Testing
- Mark: Closing urgent Jira tickets for Easy DOE. Reviewed Easy DOE chapter for Karen. Writing abstract for 2024 HCI International conference with Jacob, Ryan, and Joseph. Testing Torch Deep Learning add-in. Answered questions in JMP Community.
- Jacob: Reviewing DOE documentation. Investigating a 17.1 crash in Easy DOE. Planning a follow-up usability study to the Easy DOE Discovery Americas study, using choice designs. Preparing abstract with Mark, Ryan, and Joseph.
- Tonya: Working on Jira cleanup, documentation review, and bug verification.
Technical Support
- Duane: Happy New Year! TS maintained a small skeleton crew over the Winter Break, but no critical customer emergencies were reported. Thanks to everyone who were available to Support over this time, and especially to Candice for assistance with a case looping issue on Christmas Eve. Our customers must be easing back into their 2024 JMP projects as case numbers are down this week (and these reports only include Tuesday-Thursday numbers). Our expectation is we will be back up to ‘normal’ numbers soon, and probably higher as customers transition from existing SAS contracts to new JMP contracts at their renewal time this year.
- Here are the TS JMP Live reports and the link to the Jira filter showing the tickets reported by TS for the last 14 days.
Case Volume by week:

Case Topics for Engagement queue, total:

Case Topics for Engagement queue, last week:

Product Management
- Bryan F: Had conversations about a voluntary UX assessment program for features and major feature updates that follow the UX Assessment Process. Providing an assessment would generate reference work and classify the level to which the process was followed. This would make it clearer how to follow the process and how to progress in UX maturity. I had conversations about the logistics of the European Discovery Summit Usability Lab (both the space and the computer setup). I created new icons for the JMP Home Window for the Mac and began the process of updating the JMP splash screen. I’m in the process of creating an AWS Appstream Instance for performing user tests of the AI Assistant that was developed last year.
Development Operations
- Jim: Built the JMP Clinical 18 Early Adopter for mac. Branched //depot/main/… into //depot/rel/r19.0/… Still working on issues for the builds and mac installers. Trying to configure unit test machines for JMP 18.0 and 19.0 runs (JMPTOOL-959). Trying to automate the authorization of JMP in batch unit test runs on WinOS (thanks, Bob!). Working with LifeSciences on integrations to //depot/rel/r18.0/… (thanks, Anisa!)
- Melanie: Worked with localization on 18.0 JSL conflicts for Chinese and Korean. Investigated a job that failed consistently and mysteriously over the holiday break and just as mysteriously fixed itself afterwards. Reviewed a few auto-integration jobs for 19.0 and 18.0.
- Bob: Working on version 19 installers for Windows. Updated many Confluence pages to have them stay current. Attended meetings with Legal on third-party/disclaimer needs.
Localization
- Trish: Working on 18.1 localization schedules; project setup for localization of JMP Documentation; answering localization queries; drafting vendor communications for upcoming projects; JSL conflict investigation; getting translations for authorization strings.
- Allison: Worked on implementing Japanese string change requests for V18.0 Portable UI; training session with Trish to prepare for localizing V18.0 Big books. Updated V18.0 Big books Jiras by adding workflow subtasks and tags and labels.
- Krzysztof: Preparing our localization workflow for version 18.0 Doc localization. Finishing off 18.0 JMP and JMPLive localizations (handling returns and validations). Fixing L10N bugs and answering queries.
- Sohail: Working on enhancements to TM Search and MT Translation interfaces: allowing embedded tags and placeholders in search strings for TM Search and logging of usage for both interfaces.
Documentation
- Susan C: Updated the JMP Live publishing procedures in the UG book Save/Share chapter). Sent the updates for review, which finishes Jan 8. Working on the JSL updates for JMP Live in the JSG book (Extending chapter). Updated the final build Jiras to reflect the changes in dates. Prepared for my Q4 wrap up conversation.
- Devon: Finalizing documentation for Configurable Data Connectors, added documentation for Platform Presets JSL messages to JMP Scripting Guide, sent review copy of Columns Manager documentation to Ernest Pasour and Mike Muhlada.
- Chris B: Started a script to create the new add-ins. Looked over argument definitions for JMP-13557. Cleaned unneeded images from Perforce. Had my 2023 Q4 review with Qiana. Helped Susan fix some broken links. Found a tracked edit issue for Michael.
- Qiana: For the JMP project, I’ve completed project management for the handoff of the remaining doc deliverables to L10N. Completed planning tasks for the doc add-in. Met with Legal and others to discuss the third-party disclosures in the doc. Sent changes for JMP 17.2 to the SAS support site coordinator.
System/Host Testing-Cary
- Mandy: Spent time making sure things were running correctly at 18. One workflow using TSA counts started failing because a web page changed for the new year. Had started taking the STIPS course Design of Experiments before Christmas, and finished it the day we came back, took the test and passed. Took and passed the final STIPS course, Predictive modeling and text mining – have now completed the STIPS course totally! Next: hoping we get 19.0 installers soon so I can catch up to my developers that are pushing new stuff to 19; and of course, we will be getting ready to do 18.0 installer testing soon.
- Hunter: Tested authorization scenarios with expiring licenses and missing network connections, responded to JMP 18 EA 6 case about an authorization issue, JIRA verifications, and updated the host testing Macs in the lab with R 4.3.2 and applied Sonoma 14.3 Beta 2 and ran some tests.
- Mike M: Working through early JMP 19.0 image diffs but still prioritizing 18.0. Doc review for Devon on Columns Manager. Cleaning up my iMac for upgrade to new Mac.
- Audrey: Investigating issues in the process to update our telemetry reports, verifications, updating processes that must be changed when we branch.
- Lisa: Looked into a few EA tracks, entered a Jira bug and added the dashboard scripts to the Telemetry data tables.
System/Host Testing-Beijing
- Beijing Team: JMPTESTBJ-1806 JMP 18.0: Regression - In Progress
- Da Li: (1) Verify and close 12 bugs. (2) DONE: JMP 18.0 regression testing. (3) Support Kimi for JMP Live migration automation Jenkins job failure investigation. (4) DONE: 2023 self evaluation.
- Nan Wu: (1) Citrix testing for JMP 18.0 met blocking issue (JMPTESTBJ-1701) and sent Service Now ticket, no response yet. (2) Investigation on the Query Builder unit test failures and re-benched some benchmark files due to the recent Query SQL and data table script syntax change. (3) Started the regression testing for JMP 18.0, no issues found yet, still in progress (JMPTESTBJ-1806). (4) Technical support issues investigation and feedback on case 00075569.
- Kimi(Yu) Wang: (1) Bug Verification. (2) Python JMP-19854 Input validation on jmputils.jpip() and Python Install Packages() - In Progress. (2) Jenkins: Check results for Beijing Daily UT. JMPTESTBJ-2934: Bug - Time limit exceeded for Unit Test 79, WebJMP/VariousReports/test_RegenAllSamples.jsl – Done. JMPTESTBJ-2941 Optimization: Update AWS access key - 2024 Q1 - Done. JMPTESTBJ-2938 Bug: powershell : Missing required switch.– Done. JMPTESTBJ-2939 Debug: Agent Race-PublishToJMPLive is offlineDone. (3) Summary for 2023 – Done. (4) JMP 18.0 regression testing.
- Da Zhang: (1) Bug verification. (2) Looking at E2E/Compatibility failures. (3) JMP 18.0 regression testing.
- Nala: (1) Bug Verification. (2) JMP 18.0 regression testing. (3) Investigated JMPC intermittent issue: JMPCLINICAL-2618 Risk Reports: Study gives could not find column error.
Note from Shannon
I hope everyone enjoys the weekend despite the weather. Looking forward to seeing some of you in Cary next week for the kickoff meetings!