All information is SAS company confidential. Do not disclose.
Welcome to the JMP Development Update for June 11, 2021!
We are now in the late phases of finalizing translated content for JMP 16.1 final installer candidates. At the same time, testing teams are evaluating JMP 17 EA1 installers and product management is preparing details about features that are ready for testing.
Thanks very much to everyone for working on JMP 17 Feature pages in Confluence! Mia is taking advantage of the Confluence “excerpting” feature to reference the Motivation and Summary section on these pages to compile the Single Source Document that forms the basis of details shared with EAs, and later with sales teams. Using exerpts will allow edits to this part of the feature page to update the SSD immediately. So, as you work on your features throughout our upcoming EA cycles, please keep the Motivation and Summary details up to date.
Thanks to Ryan Gilmore for passing along this information:
“The JMP User Community submitted an entry for the Khoros All-Ways Connected Award this year (Khoros is the platform vendor). Online voting is the first step in the process. Would you please consider including a section in the weekly JMP Development Update asking individuals to vote for the submission. Registration will be required (but I’m told you should not be spammed by marketing materials, etc.).
An article will run on InsideJMP later this week or next. The deadline for voting is June 18th.”
Crash/telemetry tracks:
https://jmplivedaily.na.sas.com:3501/packages/Crash-Telemetry-tracks-for-the-week-of-6/js-p/J_4w8QHJtkDLSskY_lt12

https://jmplivedaily.na.sas.com:3501/packages/Crash-Telemetry-tracks-for-the-week-of-6/js-p/J_4w8QHJtkDLSskY_lt12
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 16.1 Final Installer Candidate – 6/30/21
- JMP 17.0 EA2 – 8/3/21
- Please visit Confluence for a full list of JMP 16 and JMP 17 dates.
JMP Development Updates
Interns
- Katherine Li: Working on getting the JMP Live and JMP Pool running locally on my machine and beginning to try to fix the bug with the JMP Pool no longer reporting an expired License.
- Sara Earl: Continuing to work on debugging the Update Changelog DT script, and discovering some aspects of it that need to be modernized along the way. I’ve also been helping with the Mediawiki to Confluence link tracker.
Host
- Paul T: Fixed performance issues with reading SAS datasets by switching to using a block cursor (S1303859). Fixed performance issues with writing SAS datasets by switching from parameterized inserts to using tkts bulk operations (S0734376). Fixed issue with writing SAS datasets to case-sensitive filesystems on the Mac. Demoed prototype of JMP/OSIPI integration.
- John Schroedl: ‘Blocked file’ call and wrote follow-up troubleshooting document for Intel. Diagnose CallDll crash in 16 & 17 due to Viya updates (JMP-2364). Language switching work and fixes (JMP-2359). Enabled a few more SA warnings.
- Paul N: Apple’s WWDC. Setting up 2 machines to run the new macOS Monterey. Testing out builds and analyze with XCode 13 beta on Big Sur, and Monterey. Updates to Python locating code on Mac to ensure things work as expected when Python goes from 3.9 to 3.10.
- Bryan B: Paul Tomas and I got JMP to read sas7bdat files on a Mac using a mixed case file system. Threading HTTP Request. Running HTTP Requests in parallel (still ongoing).
- Michael H: New testbot-mac now in production. Thanks Jim Borek. Working on speed-up to leaks-summary tool. Adding support for .ezdoe.
HTML5
- Bryan F: Attempted to set up metrics automation on a VM that Nick Ruva created for me; however, JMP Live moved away from the idea of a ‘Public’ publishing option in favor of Spaces, which, for the moment, put a hole in my automation plans. Removed hidden proportional highlighting from Histogram segments. Worked on setting a preference in JMP Live that will put Vuetify in dark mode and open HTML5 reports in the dark mode as well. Worked with Mayowa on a task to set tick label colors. Had a brief discussion with Tommy about using a getLuminance function to modify table cell colors exported from JMP. Recommended PlantUML to Aaron for creating flowcharts (activity diagrams). Others may find it useful since it focuses on the logic of the diagram rather than the geometry: https://plantuml.com/activity-diagram-beta. You can try it online here: https://www.planttext.com/.
- John Powell: Participated in JMP Live’s Iteration Retrospective. Removed support for proportional highlighting from markers (JMPHTML-903). Reviewed a resume for our JavaScript Developer Position. Worked on improving the Local Data Filter’s support for inversion on JMP Live.
- Mayowa: Fixed font size bug with axis labels for non graphbuilder diagrams in interactive html (JMPHTML-892). Working on supporting customized Axis tick font color in in interactive html (JMPHTML-926).
- Tommy: Added support for exporting colors to matrix displays for HTML5. Working on exporting sentiment analysis score coloring.
JMP Live
- Eric H: The JMP Live team had an iteration demo this week. We continue the work to incorporate the Spaces concept into JMP Live. Updated the settings on the JMP Swarm project to automatically set a review to Approved when all required reviewers have upvoted it. Thanks for your feedback!
- Aurora: Weaving our new access control mechanism into existing logic (allow_create). Helping prepare for major migration to JMP Live spaces (some code, lots of discussion). Helping Katherine occasionally with JMP license expiration warning feature.
- Tommy: JMP Live security updates.
Statistics
- Jianfeng: As I prepare the presentation of the equivalence tests comparing two samples means, I realize that JMP doesn’t cover another important feature which is equivalence test for proportions (including risk difference, risk ratio and odds ratio). Currently I am doing a research on this. I have talked to Chris and hopefully this will be implemented soon.
- Laura C-S: Investigated data and model conditions in which new starting values will be better and worse than what we currently have. Went back to multiple-group analysis to make more changes needed for new functionality. Reviewed 16.1 doc release notes. Triaged SEM defects in FUTURE track and requested a batch move (thanks Shannon and Justin!). Worked with James to prepare JIRA presentation for Stat Dev meeting.
- John Sall: Decision Threshold has moved Metrics from a tab into a separate outline. Decision Threshold now has confidence intervals (initially hidden) are produced for Sensitivity and Specificity. Fit Response Screening is being revised to not output data tables by default (like was done for Response Screening earlier) and to add effect size.
- Peng: Writing the presentation for JMP Discovery in China.
Stat Testing
- Tonya: Answered several user community questions: using Process Screening for spec limits that change based on a grouping column, using nonnormal distributions in Process Capability, and creating phase control charts with historical limits for each phase. My blog post on new features in CUSUM control charts was published. Presented to the QA group about how to handle beta feedback. Beginning to look at the new Laney charts in CCB.
- Mark B: Continue to cover for Jacob (attend DOE Team meeting, attend Easy DOE meetings and evaluate prototypes). Helped Chris with projects involving Ron Kennett and using simulation in training.
- Jeremy: Bill and I posted our next blog post on spectral analysis with helpful feedback from Mark and Chris. I fixed a number of low hanging fruit defects for MDS. Now I moved on to making some MDS performance improvements and putting in a progress bar. The performance improvements I made include using Chris’s Lanczos SVD for initialization and tweaks to the optimizer defaults. I am now seeing speed ups like going from 25 minutes to .5 minutes on a 1,300 data set (a hard problem from my PhD). Projection solutions have also improved in some cases.
Life Sciences Updates
- John C: In JMP Clinical 17.0, unlinked report dialog XML requirement, removed report Options pane and Run/Cancel/Clear buttons (now that reports are auto-run and have widgets built within the report JSL code), and made the Review Builder study switch automatically rerun reports. Working on adding convenience functions to return commonly requested study metadata, for report widgets, as well as those to more compactly define the most common widgets. Also working on factoring out common report requirement syntax and automatically closing data tables in the requirements return, upon closing the report tab.
Product Management
- Dieter: Helped Intel and LafargeHolcim with Keycloak installation issues and switched the Red Triangle JMP Live site to local Keycloak authentication.
Technical Support
- Duane: TS continues to hear from customers having display difficulties, most are handled by turning on/off the accelerated hardware graphics preference. I believe development is investigating further. Earlier this week, Dave gave a presentation to Apple on installation and licensing (similar to the training Bobby and Dahlia provided to our SE’s a couple weeks back). It was well received.
- Here are the TS JMP Live reports. (JMP Live 16). Here is information regarding Customer Reported Defects filed by TS.

Development Operations
- Shannon: Moved defects to Jira for Dave B, Laura C-S and Aaron (>650 items). Triaged crashes for 16.X and 17.0, associated with known Defects or Jira issues and opened crash investigations. Reviewed pages from mediawiki to identify items that still need migration and reviewed defects left over in older tracks.
- Jim: Created EA branch from 17.0 sources and performed integrations; still investigating Mac EA 1 installation failure. Testing recent changes to testbot-mac and run-unit-tests from Michael – Thank you, Sir! Perforce support.
- Bob: WebView added to REPAIR and MODIFY of Windows installers to cover possibility of user removal which would cause errors in JMP. Modify install of subscription products to be in single exe form for testing improvement and delivery improvement. Remove need for "Extra" folder in subscription installers. Researched changes to installer EXE for possible conversion to single file exe.
Documentation
- Karen: Getting up to speed on Jira. Met with Martin D (DACH team) to review some customer data that he had posted for help with in the SE community.
- Michael C: Integrated Jira information into the reports that doc team members use to see our upcoming work; demoed some Jira functionality to the doc team.
System/Host Testing-Cary
- Mandy: Completed 2 EA videos and updated the corresponding feature pages per Mia requests. Verifying fixes for Tables > Summary (Exclude rows in summary output) and crash fixes. Found a Mac issue in EA1 installer testing that is under investigation.
- Hunter: Defect verification, installed macOS Monterey Beta 1 on Intel Mac mini in the lab and completed some JMP 16.x and 17.0 testing, doc review for JMP 16.1 release notes, tested latest builds of the SAS Download Manager 2.64 on Monterey Beta 1.
- Mike M: Lots of image diff work: cleaned up noise from CCB errors, web cert issue w/ hoverlabels. Opened JIRA for Spec Limits axis issue. Debugged Jenkins script running for Sikuli results.
- Audrey: Experimenting with ut localize(), fixing UT failures and verifying bugs/stories, QA Demo about recent tooling updates, small Jira demos here and there, working with Sara on Perforce Dashboard scripts.
- Hui: Finished testing HTML5 support on stat platforms with local data filter and reported issues found. Communicated with John and Dan on property setting issue on display object. Reported 5 new defects (JMPHTML-931, JMPHTML-930, JMPHTML-928, JMPHTML-927, JMP-3108).
- Josh L: JMP EA testing, JMP Live regression testing and updater verification, JIRA Story testing. Worked with network operations to try and resolve connection issues to our Azure instances. I have a possible solution and waiting for the change to be done in the firewall so I can verify.
- Cary / Beijing JMP Live Testing Jira Status
- 06 Stories in Testing
- 21 Stories in Test Ready
- 11 Bug Created in the last 7 days
- 08 Stories / Bugs Closed in the last 7 days
System/Host Testing- Beijing
- Eric Wang
- Did a knowledge sharing "JMP Live Introduction", see KnowledgeSharing-Eric-20210609.
- Updating JMPLiveJSL unit tests. JMP Live 17 has a big change about SPACE. Now JMP report must be published to a space, so our unit tests have many failures. Updating the tests, but there are still some issues need to be resolved:
- Currently no JSL functions or RESTAPI to create/delete a space, only GraphQL. It is hard to call GraphQL API via JSL.
- Many test scenarios need to be refactored. For example, previous tests publish report to one or more groups, now using space instead.
- New checkpoints, such as space permissions, data tables in a folder etc.
- Da Li: (1) Investigated UT failure, found one bug about SAS file import (2) JMP 17.0 EA1 testing (BRDSTG-3141). JMP 17.0 EA 1 testing (3) JMP Live GUI free testing
- Mike Wu: (1) Tested HTML5 new feature JMPHTML-767: Refactor profiler export and data structures to allow multiple curves per profiler for categorical responses (2) Worked with Audrey to create a template for Beijing team's installer testing daily summary (3) Found an issue JMP-2029 where there is an extra letter "c" added to the content of script each time if you drag the script window. After deeper investigation, it turned out to be a compatibility conflict caused from the installed Microsoft Bing Dictionary app. (4) Reviewed the 16.1 release notes for the ODBC related areas (5) Defects and JIRA bugs verification.
- Kimi: (1) Attend Ethics and Compliance Training (2) Attend training about the company background and organizational structure (Beijing Team Introduction - 2020/12/06). (3) Studied the Documentation under “New Tester” in Confluence (4) Learning JMP and JMP team's workflow and standards.
- Nala: (1) Python tests in Formula Depot have been enabled for all machines. Now the tests failed on most of Mac Machines. I'm working with Jim to resolve the issues. (2) Tested JMP Preference change for Text Explorer (BRDSTG-3130). (3) Tested JMP new changes in Text Explorer. Now Intensifiers will honor the locale format setting (BRDSTG-3140). (4) Testing Space permission table for JMP Live (5) Continue to update Beijing team's Confluence page for Workflow and Standards (6) Helped Kimi to become familiar with the company background, organizational structure, JMP products and workflow and standards.
Data Discovery
- Evan: Simplified EvalContext ownership by removing non-self-owned (automatic/stack storage) EvalContexts. All EvalContext lifetimes are now managed via RefTo. This was the most common lifetime before but now it is guaranteed. Investigating more With Window Handler crashes. Write up and discussions on JSL compatibility and JSLCOMPAT label after customer reports of issues upgrading their scripts to v16. EvalContext not_null changes to allow Platform, DataTable, JWindow, DisplayBox and more to reach a guaranteed EvalContext without a lot of testing and failover code. I’ve tried to remove unnecessary tests and asserts as I go to keep the static analyzer happy but some issues are likely still going to slip through. Working with Dan Schikore on allowing symbols to be stored on any box and accessed via scoping like myboxref:symname. Preparing for dev talk next week.
- Dave B: Created test case to reproduce axis right click crash, created test case for mac save pdf crash, fixed surface plot bug with missing triangle, finished first pass at DataTableColPlotBox, performance fix for prepending segs, fixed html export problem with div tag.
- Dan S: Working with Evan on using box/seg JSL references as namespaces. Fixed crash when messages are sent to a Data Filter object that is pending close. Working on Patient Profile graph for Clinical. Investigating other tech support reports.
- Xan: Integrated new SAS/Mapbox streetmap code into 16.2, in case we need to retire JMP server while 16 is still in wide usage.
DOE
- Caleb: Making progress on the ALT design workflow, fixed a few more Sample Size Explorer bugs, and recorded a video on MSA designs for EA1. I’m also trying my hand at predicting the 30k community members mark.
- Brad: Working with Joseph and Mark Bailey on UI functionality for the EZDOE tool coming in JMP17. Note that EZDOE may not end up being the name we use.
- Joseph: Design work on the Easy DOE UI plus Easy DOE infrastructure work and further refinement of the Easy DOE prototype.
Note from Shannon
Thanks to Bob H for sharing a link to this page that explains how Jira got its name. If you’re interested in how it relates to a very big monster, read on! Hope you all have a great weekend!

Graphic from https://www.slideshare.net/FayeBusinessSystemsGroup/jira-vs-godzilla