
Welcome to the JMP Development Update for August 5, 2022!
A few important fixes were approved and integrated into JMP 17.0 this week. One set of fixes resolved security issues where passwords showed up unintentionally in database access table script, while the other resolved a regression affecting some of the ways you can submit JSL from the JMP log. Paul Nelson has verified that Blackduck security scans did not reveal any new issues and static analysis scans have been re-run for Mac and Win. We have passed doc content freeze and are approaching help and L10N freeze dates for JMP 17.0.
As you move on to work on JMP 18 and JMP 17.1, please note that there are still many items tagged with Fix Version/s = 17.0:OPEN in Jira. Please review and triage your lists and move any items still tagged 17.0:OPEN over to 18.0:OPEN, 17.1:OPEN, or both as appropriate. If you have finished triaging and are ready to move multiple items without email notification, you can consult this page in Confluence. If you have questions, Audrey and I would be glad to help answer them or help with bulk updates.
As I mentioned in my email this morning, you should strive to clear out your active list of feature related items to remove ideas that are definitely not planned for 18. Please do not put Stories in the current track if you definitely will not work on them this release. You can demote Story items to Feature Requests if you want to keep the idea around but are not sure when and if you might work on them. Also, when you begin work on code to support a feature request item, it should be updated to a Story item type and assigned to the version where you are working on it.
Thanks to our second set of summer students for presenting at this week’s JMP Dev meeting! I appreciate all the work our Intern Ambassador Audrey Shull did to help coordinate the intern presentations the past two weeks. This week, interns Krishna Patel, Kerry Steen, Melanie Stevens, Kaylee Warren and Matthew Warren presented.
If you missed the presentation, you can find a downloaded copy of the recording in my public folder here: \\d73817\public\Dev Meetings\ or you can access the recording in Sharepoint here. And if you missed the on-campus intern expo where several JMP interns presented posters, you can read this recap article from Inside SAS.
And finally, thanks to Julian Parris this week for sharing an add-in that he created to let you filter your view of a data table with a data filter! The preview feature that Ernest introduced in JMP 17 for Tables menu operations revealed how useful it can be to view a planned change before making a new data table. Julian’s filtered view allows you to quickly find and show only the important rows from your table without committing to creating a subset. It’s a helpful tool if you want to be able to quickly create and throw away subsets without the overhead of creating new tables that you don’t need to save. You can download Julian’s add-in here and drag it into JMP to install it if you’d like to try it out!

General Announcements
- I’ll be out of the office on vacation next Tuesday-Friday so Audrey Shullwill be doing the Friday update for me. We don’t currently have a dev meeting scheduled next week, but please let Audrey know if you are interested in presenting!
Important Upcoming Dates
- JMP 17 Help Freeze – 8/9/22
- JMP 17 L10N Freeze – 8/12/22
- JMP 17 Localized PDF Freeze 8/16/22
- First JMP 17 Final Installer Candidate – 8/23/22
- Please visit Confluence for a full list of JMP 17 dates.
JMP Development Updates
- Please visit this page to view bug verification lists for JMP 17.0.
Data Discovery
- Evan: Refactored pushCallback and pushBackground to have clearer return values. Removing used members from EvalContext. Added generic property bag (AnyBag) and moving infrequently used members from EvalContext to a property bag on the EvalContext. Made JMP Search work better in Projects.
- Dave B: Fixed a couple of different annotation bugs, fixed a problem saving an alignment grid as html, fixed a tablebox editing problem that would cause jmp to freeze, created a test case for a fit model crash, fixed an MFI import bug if importing a spreadsheet with a “ in its name.
- Sibusiso: Working on fixes to the Mosaic plots when axis are reversed. Going through the tabulate code, making some general code improvements, cleanup and modernization. Also working on a line wrap feature in JMP table cells.
- Dan S: Bug fixes in focus handling, Bubble Plot, copy/paste of the filter, Contour Plot with specify grid, session files referencing SAS/R/Python script files, and exporting empty windows. Working on NF to allow creation of SAS/R/Python files with New Window().
- Xan: DisplaySeg work: markerSeg performance, lineSeg clipping, polySeg curve fill; wishlist triage.
DOE
- Peng: Finished Discovery talk recording with Bill Meeker and making changes related to necessary updates in 17.1.
- Brad: This Tuesday I was on the Ph.D. committee for a student of Jon Stallrich. His dissertation passed.
Host
- John Schroedl: Helped investigate a JMP Live server pool failure due to an OS resource table filling up. A fix will require changes to our clipboard code. Was able to repro a crash exporting Excel data if the destination file is on OneDrive and locked by Excel. Updated Confluence pages for Setting up a development PC and Telemetry work. Looking into some VS code analyzer issues.
- Paul N: Rerunning the blackduck scans on JMP 17.0 to make sure no new issues after the recent fixes. Worked with Dave Matthews, checking AWS databases and support pages to see if there was an issue with a student subscription renewal on the activation side of the process. Does not appear to have been an issue. Completed a variety of Python fixes:
- JMP-6759 in 17.1 – consistency in handling graphic formats
- JMP-13609 – JMP 17.1 & 18. Fix broken scripting index script for Python Execute. The example did not declare enough variables for return values and was trying to invert a singular matrix.
- JMP -6513 – NOBUG – handling of Python Name(“::y”) and Python Name(::y)
- JMP-7062 – Python Init issues with JMP 16 on Mac with Python 3.6.x. No longer an issue since we now require 3.7 or higher.
HTML5
- John Powell: Completed Security Training. Installed VS 2022 and prepared for JMP 17.1 development. Held a retrospective meeting for our last sprint. Held a planning meeting for JMP 17.1 including Jira component reassignments and assigning secondary developers for all components. Deferred 17.0 items. Submitted a fix for Oneway markers incorrectly placed when new Jittering feature is enabled(JMPHTML-638). Investigated an issue with graph and axis titles shifting when switching to Dark Theme (JMPHTML-1531).
- Paul Spychala: Pushed a profiler html export performance change which may reduce export times by up to 90% and more profiler rendering issues that may make 17.1. Spent time working with Jim on my perforce integration issues and did research on 18.0 items in Jira.
- Praveena: Implemented support for border box sides (JMPHTML-1717). Working on re-architecting the line segments being drawn in HTML5, this will fix large number of bugs in Line and Area segment (JMPHTML-1663).
- Mayowa: Fixed box plot bugs with outliers and 5 number summary in 17.1 and 18.0 branches ( (JMPHTML-1436, JMPHTML-1685), triaged tickets assigned to me open in 17.0 and assigned tasks to 18.0 or 17.1 as appropriate, participated in HTLM5 team sprint planning, scrum and retrospective meetings, working on improving branch coverage for tests.
JMP Live
- Aurora: 17.0: My relative ignorance around pulling info from a database into JMP came in handy. I played around with this, in concert with the JMP Live 17.0 "refreshable data" feature, and tripped over a security bugwhich Eric Hill and Bryan Boone are addressing. 17.1: Investigated some performance concerns, with the most common outcome being to defer them. Investigated an audit logging concern, found it to be valid, now in process of fixing it. 18.0: Put together a personal wish list of work to do here. Miscellaneous: Completed required security training.
- Michael G: Integrated Jest runtime patch to 17.1 to fix the test run in the build. Added an alarming control charts filter on the home page and an alarming control charts section to the space page. Both control charts features are integrated into 17.1. Various bug fixing and environment updates.
Statistics
- Elizabeth: Disabled save simulation formula in Mixed and GLMM when a By variable is used because the rows aren’t simulated independently; user workaround is to subset the data table and fit/simulate separately (JMP-13596). This is a 17.1 candidate, so getting a 17.1 workspace set up and building. Jira cleanup. Mixed model question answering.
- Laura C-S: Wrapped up work with our intern, Haley. Continued working on model-implied instrumental variables in SEM, attended the intern expo, fit some SEMs to real data as part of a collaboration with a UNC-Greensboro and McGill professors, and submitted a presentation to CSP.
- John Sall: Fit Response Screening now allows categorical switch columns (JMP-13637).
- Annie: Started integrating fixes into 17.1 for control charts.
Stat Documentation
- Michael C: Finished last updates for 17.0 doc freeze. Thanks to reviewers for getting feedback in prior to doc freeze!
- Karen: Finished last minute edits prior to doc freeze and took the security training.
Stat Testing
- Mark: Discuss design of Easy DOE for JMP 18 with Brad and Joseph. Concluding the testing of Easy DOE to close tickets for JMP 17.0 with Jacob. Conducted a usability test of Easy DOE in JMP 17.0 with Andrea Coombs for JMP UI/UX workstream and scheduling next test in two weeks. Attend first session of Product Security training. Answer questions in JMP Community.
- Jacob: Verified Jira tickets and added unit tests. Participated in the UI/UX workstream, observed and processed results of an Easy DOE usability study completed by Nick Shelton. Answered a Categorical question from JMP Technical Support.
- Tonya: Answered a user community question about scripting manage spec limits. Working on new feature blog posts for 17: EWMA, distribution, Type 1 Gauge. Bug verification.
Product Management
- Bryan F:
- Design Space Profiler
- Completed presentation within Confluence based off of 5 usability tests.
- Presented findings to John Sall and Sam Gardner
- Developed a prototype of an idea to simplify the workflow
- Easy DOE usability study
- Performed a usability test with Byron Wingerd
- Contacted potential participants
- Coordinated with Jacob Rhyne and Mark Bailey as they volunteered to help test
- JMP Live
- Worked with Michael Goff on UI for alarming control reports
- Discovery Summit
- Provided some feedback to Katie Stone on the setup for the usability lab.
- JMP Clinical Overview
- Reviewed and provided feedback on the Main Window, Study Management, and Configuration Management
Technical Support
- Bobby and Wendy received access and training for Magento from Falco Kronmüller. Big thanks to Falco!
- Bobby, Dahlia, Dave, and Wendy reviewed Subscription web pages and confirmation emails for inconsistent language which has been confusing customers recently.
- Jasean and Patrick are continuing with preparations for their Discovery presentations.

Development Operations
- Myron:
- JMPTOOL-538 - Update certificates for JiraBot server
- Worked on various doc, help and crash-related projects this week.
- JMPTOOL-544 - Help projects run successfully but latest source is not included
- JMPTOOL-501 - Update Help key projects for new help server location as needed
- JMPDOC-1522 - Docs Generic ImageChecker emails seem to be out of sync
- JMPDOC-1523 - Tracked edits email is out-of-date
- JMPTOOL-491 - Static Help Check and JMP.com HelpKeys Check Jenkins projects are currently disabled
- Completed fixes and updates for JMP crash system
- JMPTOOL-543 - When Jira issues appear in blocks popup, the link is constructed like a defects link
- JMPTOOL-541 - Please update the W_KnownSignatures table in JMPTRACK
- Jim: Multiple system updates to accommodate various unit test configuration runs. Perforce support and 17.0/17.1 integrations.
- Shannon: Tested crash system updates. Investigated several mystery crash issues and entered Jira issues.
Documentation
- Qiana: Finished updates and implementing review comments in the UG. Made updates to Installation Quality white paper. Ran FrameScripts on source files for Help. Assisted with troubleshooting of Help issues. Planned and scheduled for upcoming documentation deliveries.
- Susan C: Finalized JMP Live scripting content in UG Save/Share chapter. Verified and updated all JMP Live screenshot scripts in UG Save/Share chapter. Documented some NFs for the UG book that were assigned to me. Built help and assisting with troubleshooting issues. Working on some required training.
Started work on student subscription documentation.
- Chris B: This week was largely spent running through doc processes, trying to see if I can get them to work. For example, I looked at the PDF creation scripts and ran through the manual PDF creation process. Tried to add our new styles to FrameMaker and WebWorks, but no success. Reviewed some of our intern’s code and sent him off, back to school! Attended some good StringBot training from Stat writers Michael and Colleen.
System/Host Testing-Cary
- Nick: Helped to verify Ernest’s fix to a regression that prevented JSL from being submitted from the JSL Log. It has been approved and pushed to 17. JMP Search Performance tests should be added by next week. Working on a project to see if we can make the JSL strings for JMP Preferences more consistent with the strings in the GUI. It seems that currently some factory default settings show up in the pref file while others do not, and some preference strings are different and do not match the string in the GUI. I am trying to generate a table that will illustrate the current inconsistencies and work in 18 to make these more consistent.
- Mandy: Took all 3 Product security modules and started back on the STIPS class, Decision Making with Data . Responded to 4-5 TS tracks and verified a couple items in 18.0 for 17.1 consideration. Helped Trish and localization with verifying strings for Easy DOE and JMP Workflow in all languages on Mac for 18.0, 17.1 and 17.0.
- Hunter: Installed Ventura Beta 4 on MDA692 in the lab and found a report refresh bug (JMP-13655) specific to Ventura, completed 2 of 3 security training courses, updated testware for 17.1 and 18.0 on several systems, and investigated and updated JIRA items.
- Lisa: Removed a related data pull which reduced the run time by about 4 minutes, helped test running JSL in the log, and continued work on defects dashboard report.
- Audrey: Updating some automated monitoring jobs after branching and new processes are coming online, updating VMs and preparing for end-of-release for 17.0.
System/Host Testing-Beijing
- JMP 17 help/doc content review, details can be found in JMPTESTBJ-1674.
- Eric Wang: (1) Updated JMP Live Unit tests and End-to-End tests for 17.1 and 18.0. (2) nd-to-End tests common functions refactor, JMPTESTBJ-1309, JMPTESTBJ-1678. (3) Reviewing help/doc for JMP 17, focusing on JMP Live parts, JMPTESTBJ-1674
- Da Li: (1) Review help/doc for JMP 17. (2) Technical support investigation for OSIPI import, Case Number 00010236. (3) Get JMP Live migration automation path from Josh. (4) Review the Import Data From an OSIsoft PI Server Information and provide comments to Qiana. (5) Prepare env for 17.0/17.1->18.0 migration automation trial environment.
- Mike Wu: (1) JMP/JMPLive 17 bugs regression testing. (2) JMP 17.0 regression testing completed. (3) Review help/doc for JMP 17.
- Kimi: (1) JMP 17 Help/Doc Testing. (2) Verify Jira tickets. (3) Working on support 17.1 and 18.0 branches for Beijing team's Jenkins environment.
- Nala: (1) JMP 17 regression testing. (2) Verify Jira tickets. (3) Review help/doc for JMP 17. (4) Check-in meetings with Beijing team members.
Note from Shannon
However you do it, I hope you can stay cool this weekend!
