Welcome to the JMP Development Update for April 21, 2023!
It was great to see so many of you last week at the JMP Reunion! I very much appreciated all the out-of-town JMPers for traveling to Cary. And I know my local colleagues dedicated many waking hours of their week to all the meetings, activities and dinners. I was happy to reconnect with colleagues and I met many new people in the process. I was also especially glad to see some of our JMP alums make an appearance at Thursday’s event! Thanks to Robin Betters and the whole team of JMP event organizers who made reunion such a special time for us all!
JMP 18 EA2 has been uploaded to My JMP and is now available to customers! Thanks for all the hard work on this latest iteration of new features. With JMP 17.1 updaters now also available for download on support.sas.com, we are receiving bug reports and crash reports from customers for both new releases. I especially appreciate the help of Dave Barbour, John Schroedl, Ernest Pasour and Jacob Rhyne in reviewing CRP crashes this week!
Thanks very much also to Paul Nelson for sharing his ongoing work aimed at improving JMP’s Python integration for future releases. If you missed the meeting, you can find the recording here: Optional JMP Dev Demo_ Python Integration_ The Next Step…-20230420_100031-Meeting Recording.mp4.
As Paul noted in the meeting, JMP’s existing Python integration has been challenging for Python programmers to set up and use, so it’s exciting to see improvements on the horizon! We seem to have a healthy group of Python fans within JMP so I’m sure he’ll have no shortage of alpha testers. (Please contact Paul if you’d like to check out a test build, since these features are not yet active in the JMP 18 project pending legal approval.)
Thanks very much to Tonya Mauldin for sharing this week’s beta/crash tracks for March 31-April 21! Crashes are selected.

JMP Beta Report42123 - Distribution 2 | JMP Live (sas.com)
And finally, thanks to Audrey Shull for sharing this Jira Tip of the Week!
If you’re a project administrator, you have the ability to experiment with Jira Automation for your project. Automation means “given a set of criteria, always take this action for my Jira issues that meet the criteria.” Here are a few examples where this has been used effectively:
- When the JMP Note field is changed to “Requested”, email Duane Hayes and the TS contact.
- When all subtasks are complete, close the parent issue (only some projects)
- Testers are automatically assigned as Watchers. (New! The Watcher status is added when Jirabot assigns roles, or if you change the tester manually.)
- When an item is moved to Test-Ready, the Tester automatically becomes the Assignee. (New! Thanks Aurora for creating this rule for WEBJMP, which we then expanded to all the product projects)
- When an item is reopened, increase the priority. (Finance team only)
Project administrators: feel free to experiment with rules that affect your project or ask for help in testing out a rule. This is a pretty powerful addition when you start realizing what kinds of things it can do.
General Announcements
- When was the last time you paused and reflected on your own cultural awareness, how your communications and behaviors are perceived by others, or how you collaborate with co-workers, business partners, and customers around the world? Well, now is your chance! In March, SAS hosted an interactive workshop with keynote speaker and experienced multicultural consultant, Simone-Eva Redrupp, on “Developing Cultural Awareness: Thriving in a Multicultural Work Environment.” Read the recap and watch the recorded workshop
Important Upcoming Dates
- JMP 18 EA3 Freeze – 5/12/23
- JMP 17.2 Code Approval – 6/13/23
- JMP 18 EA4 Freeze – 6/23/23
- JMP 17.2 Code Freeze – 6/30/23
- Please visit Confluence for a full list of JMP 17 and JMP 18 dates.
JMP Development Updates
Statistics
- John Sall: Investigate performance problem Jacob discovered in Model Comparison and isolate it to a slowness in the JSL Match function for strings (JMP-16400). In Response Screening, finished the Benjamini-Yekutieli confidence intervals after Dave Barbour enhanced PlotCol for secondary limits (JMP-14909).

In Model Screening, extended folded prediction formulas to work for categorical probabilities (JMP-16252). In Profiler, added prediction interval for current value in axis text box (JMP-5649). In Process Screening, mostly finished the process potential graph, available when measurement sigma is provided (JMP-7704). The graph shows for each process whether to work on reducing process variance or improving the measurement system.

- Laura C-S: Met with a professor in the UK to advise him on his SEM analyses. Finished doing a number of UI/UX improvements (based on a usability study with Chris G) to the Define Time Values and Cross-Lagged Panel Model shortcuts in SEM. Working on a Discovery presentation submission with James.
Stat Documentation
- Michael C: Reviewed some SI updates for Colleen; answered some questions from our doc translation reviewers; started preparing projects for our summer intern.
- Karen: Working on edits to the DOE chapters to fix errors/typos/screenshots found by the translators.
Stat Testing
- Jacob: Performance testing, investigating potential issues and transitioning to the new “Windows Lite” performance machine. Verifying Jira tickets and investigating an Easy DOE crash. Adding more tests for Load Design in Easy DOE.
- Mark: Identified and closed Jira tickets for Easy DOE with Jacob. Designing Easy DOE features for JMP 17.2 and 18.0 with Brad, Ryan, and Joseph. Answered questions in JMP Community.
- Tonya: Testing short run control charts and working on bug verification.
Product Management
- Bryan F: Reviewed and provided feedback on various designs, created icons, and worked on logistics related to usability labs.
Technical Support
- Duane: Wendy and I met with our colleagues in the SAS Customer Engagement Center, and due to some restructuring on their side, we will need to start handling all of their JMP responsibilities by the end of June. With that and the JMP Store 2.0 coming online, there’s no doubt her team will be hitting the floor running. Several of us met with Regeneron to get more details on their issues (as you know) and it’s a good thing because even though they would be able to publish their reports with JMP 17.1.1, the reports as they are now are not functioning as they expect. 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.

Development Operations
- Jim: Worked with John Schroedl regarding a change that prevented JMP 18 from running on Windows Server 2016. Continuing to migrate daily unit test VMs to AWS. Collaborating with Nick Ruva on getting Jenkins to run the daily UT suite using AWS instances. Multiple unit test machine OS updates. Perforce integrations for JMP 17.1 and 17.1.1; support.
- Myron: Performance testing, investigating potential issues and transitioning to the new “Windows Lite” performance machine. Verifying Jira tickets and investigating an Easy DOE crash. Adding more tests for Load Design in Easy DOE.
Documentation
- Chris B: Mix of housecleaning and maintenance this week. Cleaned out 24gig of /drafts. Created backups of every version of the EN help and worked on a script/Jenkins job to automate it, and another to automate and log the copy from /exp to /test. Checked and posted the 17 Korean doc add-in. Good talk with Myron about how to maintain the help builds/Jenkins… and then the next day was payoff as Qiana and I had to manually update the 17.0 and 17.1 help. The issue was that the build scripts all build from /docsource/BookMaster/, but on non-main versions we build from /docsource/WebHelp/. I'm fixing those scripts. Mocked up a possible Teaching Resources panel for when we dismantle the Sample Index.
- Susan C: My status this week is not a very happy one, as my laptop died on Monday and I had to get a new one on Tuesday. So I’ve spent this week getting the new laptop up and running with all my apps. I’m still having trouble getting FrameMaker to work and I have a ticket open for it (Ticket Form - Employee Support Center (service-now.com)). Unfortunately there hasn’t been much action on it over the last few days. It’s pretty frustrating. I think Microsoft had some tools down yesterday, and that impacted people’s ability to work on it.
System/Host Testing-Cary
- Nick H: It was great to see everyone last week! This week I worked to remove references to Defects from the JSL Unit Test GUI and update references of jiraIssuesStatus to point to the updated location in tests/JSL/Framework/Resources/IssueStatus. Additionally, I worked on a number of verifications for both 17.2 and 18.0, adding a number of display box related unit tests. Filed a Jira bug for an issue where item messages are incorrectly highlighted in red once that item is deleted, as well as a bug for tab box behavior when a tab page is selected and then collapsed.
- Mandy: Finalized EA2 testing for JMP 18 early this week. Reviewing new workflow builder pop up to help the workflow window stay on top (JMP-14434). Worked on a few TS tracks suggestions and solution to workflow issue from Chul-Hee. Had a phone call with 2 JMP folks about their workflows - sharing insights and things to work around. Tested and verified JIRA, added test where needed; working on an abstract for October Discovery. Attended the Bejing meeting Wed. night.
- Hunter: Completed JMP 18 EA 2 testing, opened JIRA for an EA 1 user’s suggestion for a change in display tab behavior in project window, opened JIRA for application hang found when editing text in the search window on Mac, installed applications needed for updated office testing Mac and applied OS updates to three other testing Macs.
- Audrey: Evaluating some 17.1.1 issues. Meeting one-on-one with Beijing team. Tested then added some Jira automation rules for automatically adding testers as Watchers to a Jira issue, and automatically assigning an item to the Tester when you move it to Test-Ready. AWS work.
- Anna: Adding reports to JMP 18 HTML5 Readiness list for new features. Verifying Paul’s axis and font fixes. Watched Julian’s Delta demo showing new template feature. Watched Dan’s Group demo showing new functionality.
- Lisa: Worked on testing EA2, reviewed EA feedback tracks about hover labels, investigated some image diffs with Mike and entered a ticket for an issue we found, and verified 18.0 bug fixes.
System/Host Testing-Beijing
- Beijing team:
- JMP 18 EA2 Installer testing and sanity testing for the components that Beijing team hosts (JMPTESTBJ-2244) - Done
- JMP 17.1.1 testing:
- JMP Clinical 17.2 I18N testing:
- Eric (Nai) Wang: (1) Added a new JSL automation test category ‘publish various reports’ (//depot/main/test/JSL/tests/WebJMP/VariousReports/), currently has 2 test files: Publish all sample data reports. Regression test for JMP-16221. (2) Developing JSL script for JMP Live Compatibility Testing (JMPTESTBJ-2237). (3) Completed JMP Live 18.0 EA2 testing. (4) Regression testing for JMP 17.1.1, found a bug JMPHTML-2082
- Da Li: (1) Verify bug for SAS import performance issue (JMP-16287 - SAS data import performance is worse than before) (2) testing JMP-16089 - Add a worksheet names filter to the Import Settings dialog for MFI. (3) Verify JMP Live bugs. (4) Prep Fun Topic slides for April 2023. (5) JMP 18.0 EA2 testing.
- Mike Wu: (1) JMP 18.0 EA2 testing done. (2) Migration from jmpdev2 to AWS temporary server rehearsal investigation done for SQL Server and ongoing with SAS 9.4, detailed status can be found in JMPTOOL-740 - hopefully will get this migration done on the real AWS server that Audrey provided and tests passed within this week.
- Kimi (Yu) Wang: (1) JMP 18.0 EA2 Testing. (2) Debug the failure of python and Formula Depot: Python: there are lots of redundancy message, create two bugs JMP-16334 and JMP-16335, Formula Depot : self.dest.save should be changed to self.dest.close in C:\Perforce\scnyua_windows_main\depot\main\test\Scoring\Python\source\ModelTester.py (3) JMPC Bug Verification (Nicardipine I18N bugs). (4) JMP C 17.2 I18N Testing. (5) Jenkins: Dealing with creating a VM to run JMP E2E and Combability testing, for details refer to JMPTESTBJ-2243
- Da Zhang: (1) JMP C 17.2 I18N Testing. (2) Translating JMPC 17.2 and test data with pseudo translation. (3) JMP 18.0 EA2 testing.
- Nala: (1) JMP 18.0 EA2 testing. (2) Continue to test the new changes of CAS Integration. Updating unit tests for the new changes and adding tests for the new Viya4 server. Regression test for both Viya 3.5 and Viya 4. Details can be found in JMPTESTBJ-2228 - Feature Testing: CAS Integration - Support of the latest version of Viya4. (3) Continue to test publishing CCB with LDF for 17.1.1, details in JMP-16221 - Fix publishing control charts with local data filters in 17.1.1.
Data Discovery
- Dan S: Group Platform fixes for scripting and broadcast, other fixes for data filter, scrolling, boxToPicture. Property panel update to improve sizing and add ability to collapse. Discussions on platform template feature.
- Dave B: Added second set of upper/lower values to PlotCol, fixing a table scrolling problem, testing and moving image tests to a second AWS machine, fixed problems with worksheet name filtering in MFI.
- Ernest: Discussions about Platform Templates. Fixes to CV/Header stats for date columns. Added controller window for workflow builder. Discussions about transforming columns in one step using a formula.
- Evan: Discussions and prototypes around Sample Data Index, Group Platform, and Templates.
- Xan: Histogram and line drawing bugs.
DOE
- Peng: Spent most of my time preparing a tutorial on JMP’s reliability platforms. Other than that, I am all over the place on maintenance work and small improvements. One significant item added profile likelihood and profile likelihood contour to Nonlinear. It is still a work in progress, but mostly done.
- Caleb: Continued work on the new ALT Platform and the paper with Brad. I’ve also been preparing for the DATAWorks conference next week in DC.
- Brad: Continued work with Caleb King on an alternative to Lenth’s method for analysis of unreplicated factorial designs.
Host
- Paul: Worked on Python Presentation, cleanup of code to push into perforce at the demo baseline. (still controlled by the PORTABLE_PYTHON_SUPPORT in jmpConfig.h and project files that are not yet checked in, but in as P4 shelf). Helped tech support trouble shoot a Python sample program Craige had posted to Community, but wasn’t working for the customer. It was an issue with image depth that Craige had called out as a limitation of the Pillow Python module (PIL’s successor).
- Michael H: Progress on OSIsoft PI Importer: stacked element columns and improved JSON parsing performance. Progress on allowing JMP Pro and JMP Clinical to coexist on Mac: implemented the “extended attribute” method for setting the app’s product code.
- John Schroedl: Backed out ICU usage on Windows due to Server 2016 not supporting the library; will use that for JMP 19. Added filetype and UI for export of SAS Transport V8 files. Crash investigations. DOE icons.
- Brian C: Added an Update Table script to data tables imported from Excel, based on feedback from Sitges.
Interactive HTML
- Paul Spychala: We have added HTML support for axis Lower Frames (JMPHTML-1942) and tick style support for Interval Tray and Long Divider (JMPHTML-1943). HTML also added support for exporting Link Functions (for GenReg and GLMM) so that we can support Confidence Intervals for non-identity distribution types (JMPHTML-2034). Since we can export linking functions, we added support for many more distributions for GenReg (JMPHTML-2086). Lastly we added better cross platform support for fontsizes in HTML (JMPHTML-1411).
- Praveena: Continued work on Make table highlights respond to selections in graphs . Checked in the code for supporting the row State change in reports when table rows are clicked. Working on implementing the table row highlighting when row states in the segments are changed. Reviewed an issue send in by Bobby Riggs. Discussed adding support for line styles with John Powell. Worked on GB: Line: Need to suppress display of Hidden | Excluded rows.
- John Powell: Implemented support for line styles in Parallel Axis Segment (JMPHTML-1770). Working on support for using column values as markers (JMPHTML-1036). Worked with Dieter to triage Interactive HTML Feature requests. Created a bug to fix colors for missing data in markers and treemaps (JMPHTML-2090). Reviewed candidates for our open C++ developer position. Coached Mike S. on Interactive HTML Legend support.
JMP Live
- Aurora: 17.2: Updated the sequelize library for a security vulnerability. 18.0: Finished @ mentioning feature. Removed system comments feature. Removed regen_count tracking. Updated many third party libraries. Miscellaneous: More interviewing for an open JMP Live position.
- Michael G: Demoed @ mentioning in JMP Live comments. Made some tweaks from UI meeting suggestions & bug reports. Fixed npm lockfile issues. Worked on report new report view layout.
Note from Shannon
This one’s for my son Hunter. He’s very into Pokemon TCG (“the card game”, for those of you not in the know).:smiling_face_with_smiling_eyes: Have a great weekend, all!
