
Welcome to the JMP Development Update for December 17, 2021!
Important announcement: The jmprunners and Jenkins CI will remain turned on during the holiday week. However, daily JMP build, installer and unit test processes will be turned off, and JMP Live auto-deployment will also be disabled. The last set of nightly executable builds and installers for 2021 will be dated Thursday, December 23.
JMP Approvers made the decision on Monday to rebuild JMP 16.2 for a final time to address a few issues:
- A fix for a disappearing axis issue with Graph Builder and Control Chart Builder. This was an unintended regression of a performance fix made for scatterplot matrix in 16.2 several weeks ago.
- An update to the libcurl library included in JMP desktop. This newly available update was detected by the new security scans we were required to do when we unfroze the 16.2 track. This libcurl update also fixed another regression with http request that was noted post-approval.
- Removal of the log4j file included in JMP’s SAS Integration files. Fortunately, JMP is not vulnerable to the log4j exploit that has set the internet on fire this week. This zero day security problem does affect SAS products, the SAS included with JMP G and JMP C, and the libraries are found on many servers across the world. Since the presence of the offending file would have caused concerns for customers that run their own security scans, Brian Corcoran, Paul Nelson and Bryan Boone investigated the issue, Bryan worked on fixes, and we were able to replace the offending file.
In other JMP release news, QA teams in Cary and Beijing were able to sign off on JMP 17 EA5 installers this week. Thanks to Jim Borek and Bob Hickey for helping with branching, builds, installers and publishing the files to the web. The lull in 16.2 installer testing (due to the need to incorporate the fixes above) provided teams just enough time to get this important task completed. I know that many of our customers are as excited to unwrap a new version of JMP as they are to open any other holiday present, so it’s wonderful that we were able to provide them a new iteration to play with over the break!
Out with the old and in with the new! This week, a team of people worked to move JMP’s activation server from its old home on internal SAS servers to AWS. Paul Nelson, Daniel Powell, Peter Jeong, Mike Shaddock, Adam Guida, Mike Hess, and Rebecca Drozd all collaborated in the migration process. This involved migrating the activation processes and database, as well as updating connections to JMP subscription processes. Activation and support tools are now running live from AWS as of Thursday afternoon. Thanks very much to everyone who worked on this important transition!
And speaking of big transitions, JMP development is officially out of the Defects system! We will be starting the new year working only in Jira. Big thanks to everyone who helped triage defects and worked with me through the conversion process, in particular Michael Crotty and Nicole Jones who made a big push to get the stat team defects reviewed so we could reach this milestone in 2021. Big thanks also go to Audrey Shull and Justin Chilton for helping write the scripts that made the data transfer and cleanup possible. Lastly, thanks very much to the many JMP team members who participated in our Jira discussion group earlier in the year to help make decisions about how we will use Jira going forward.

Finally, thanks to Tonya Mauldin for sharing this week’s details on Beta/Crash/Telemetry tracks with crashes selected.
Company

Platform

JIRA Tickets

Topic

Subtopic

Crash/Telemetry/Beta Feedback for the week of 12/17/2021 | JMP Live (sas.com)
General Announcements
- Big congratulations go out this week to HTML5 developer and new dad Mayowa Sogbein! His family welcomed their adorable baby boy Donovan (8 lbs, 3 oz) on December 14. Enjoy the holidays with your new addition!

Important Upcoming Dates
- JMP 17.0 EA6 – 1/14/22 ** Last EA before feature freeze**
- JMP 17 Feature Freeze – 2/28/23
- JMP 17.0 EA7 – 3/4/22
- Please visit Confluence for a full list of JMP 16 and JMP 17 dates.
JMP Development Updates
- Please visit these pages to view bug verification lists for JMP 16.2 and JMP 17.0.
DOE
- Brad: With Chris Nachtsheim and Ryan Lekivetz wrote a paper entitled “A Family of Orthogonal Main Effects Screening Designs for Mixed Level Factors”.
- Caleb: Work on the new nesting feature in MSA is nearly complete. I hope to have it pushed before the end of the year. I also participated in the Meet the Developers session for Discovery Japan yesterday and got some good feedback on the Sample Size Explorers!
- Joseph: Worked on Easy DOE Analyze and Predict tab, adding interactive controls and plots for guided users.
Host
- Paul N:
- Work relating to assessing log4j carried with the SAS jar’s bundled with JMP. Fortunately, JMP uses an older version that predates the vulnerability, but JMP 16.2 and 17 now include the newest versions that fix the vulnerability. Thanks very much to Bryan Boone for getting the new versions in place this week! We believe based on all available information that older JMP versions are not vulnerable. JMP Live never carried the SAS jars or log4j. Now, 16.2 and 17 will have the newest up to date versions, repackaged into the SAS jars.
- Fixing latent bug in windows handling of activation message in JMP 17, discovered in transition to AWS. Also created and updated localhost certificates for JMP Live 17.
- Brian C: JMP Trial and Subscription activation, with some important help from Mike Shaddock in IT, is now live on AWS. Thanks to Daniel Powell and Paul Nelson for their great work on this.
HTML5
- Bryan F: attended two more C++ training sessions. I also did some background research for the paper I need to write for JMP Discovery Summit Europe. I also worked on fixing a couple of icons to display better in dark mode (JMPHTML-1190) and fixing a visual artifact (JMPHTML-1451) on outline nodes that don’t have a kebab menu.
- Josh M: Recorded EA5 categorical profilers video. Triage and investigation of profiler bugs.
JMP Live
- Josh M: Resolved an “Unknown” error publishing a distribution without a histogram (WEBJMP-4387). After getting the EA4 email from Tonya mentioning she couldn’t publish results to JMP Live due to this bug, I did some initial investigation which led to Aaron and Dan resolving this bug. Also created a UI for column paging/filtering in the JMP Live data table viewer (WEBJMP-3747). Pushed the first part of this feature that displays a sidebar showing the user a list of columns. Additional work is needed to make the columns list load more with paging (right now capped at 100), and to allow for horizontal scrolling in the data table viewer to load more columns in the data table grid (in progress).
- Aurora: Continuing work on "publish on client". Improved validation of NULL values. Added support for static reports. Moved some Jest tests over to use publish-on-client (more to come). We held a proof-of-concept demo for the JMP Live team and made the "go/no-go" decision (we are a "go").
- Justin: Added a data consumers tab to data table landing page. Fixed deleting a data post from the client.
Statistics
- Peng: Continued making changes to repeated measures degradation early this week, according to Bill Meeker’s recommendations, followed by updating my existing testing scripts due to those changes, and continuing my testing work.
- Jianfeng: The equivalence test in Fit Model is hidden inside the All Pairwise Comparisons – Student’s. It is hard for users to find it. Chris has asked me to move the equivalence test to an upper level. Currently I am working on this.
- Laura C-S: Attended the C++ course Monday and Wednesday. Continued multiple-group analysis work for SEM –happy to report the entire control panel and main red triangle menu is now fully functional with multiple groups!! Met with Sara Doubt to discuss workflow assessment. Attended Meet the Experts for Discovery Japan.
- Annie: Fixed some control chart defects and added a Row Legend to Control Chart Builder (JMP-5777).
Stat Documentation
- Michael C: Finished triage of remaining stat issues in Defects with Nicole and Fang. It will be great to start the new year in Jira-only mode! Also did some reviewing of doc rewrites for Karen.
Stat Testing
- Tonya: Tested the axis border fix that went into 16.2. Attended meetings about the JMP Clinical EA release. Worked on beta and telemetry reports.
- Jacob: Testing the Model tab in Easy DOE and adding unit tests. Adding performance tests for Control Chart Builder and Random SVD. Attending the c++ training course by Leor Zolman.
Life Sciences Updates
- John C: Completed study notes infrastructure redesign for JMP Clinical 17, and activated subject/report-level notes and Snapshot History. Added study preference widgets for study day (derivation, imputation method, and anchor date). Fixed a Create Static Report issue in Demographics Distribution.
Technical Support
- Duane: Tech Support has heard from numerous customers concerned with the log4j vulnerability. Though JMP, JMP Pro and JMP Live aren’t affected, JMP Clinical and JMP Genomics include versions of SAS that are affected. TS is pointing customers to the SAS statement on the issue. This security bulletin is being updated as more information is available, and JMP Clinical and JMP Genomics customers should be directed to this page when they ask about the vulnerability. On a different note, the purchase of Service Cloud for JMP TS has gone through all the required approvals and implementation work will get started in January. JMP TS is aware of the transition of the JMP activation to AWS and TS hasn’t seen any issues with the move at this point.
- Here are the TS JMP Live reports. (JMP Live 16) Here is information regarding Jira tickets opened by Tech Support.

Development Operations
- Jim B: Worked with developers on the three late integrations for JMP 16.2, and their subsequent builds, installers and unit test runs. Attended two meetings to address the building of an EA for JMP Clinical; have been working on changing the Mac installer to accommodate their TOTD, Documentation and EA addin. As a result of the latest Debug JMP Pro 17 unit test suite run on WinOS, reported LEAKS and ASSERT Jira tickets, and verified fixes for others.
- Bob H: Worked to get EA 5 released. Met with JMP Clinical about how to revise Windows installer in preparation for an EA installer release. Reviewed order processing for 16.2 annual license to fix a system problem that SAS R&D is having. Modified 16.2 and 17.0 installers to remove log4j.jar file. Pushed 16.2 Trial installers to the download page (with video fix); another update will be made soon to get the remaining 16.2 fixes. Rebuilt 16.2 installers to use new jar files (to replace log4j.jar). Modified C-pages and JIRA issues to better organize signoffs for installers.
Documentation
- Qiana: Continued reviewing resumes and watching HireVue videos for Senior Tech Writer position. Worked with SAS IT to resolve permissions issues on Doc servers. Made updates to JMP Live 16.1 Help banners and pushed to production. Pushed localized JMP Help 16.2 files to production.
System/Host Testing-Cary
- All: JMP 17 EA5 Testing, JMP 16.2 Final Installer Testing.
- Lisa G: This week, I worked on 16.2 installer testing, JMP 17 EA5 testing, tested & verified the fix for the axis redraw issue in 16.2, and investigated 4 EA feedback tracks.
- Hunter: Completed round 2 of JMP 16.2 final installer testing, JMP 17 EA 5 validation on several configurations, and responded to one JMP 17 EA 4 track.
System/Host Testing-Beijing
- Beijing team:
- JMP 17 EA5 testing, details in BRDSTG-3255
- Completed 16.2 installers testing for JMP AL, JMP Pro and JMP Subscription, details in JMPTEST-163 (Cary team + Beijing team) and BRDSTG-3251(Beijing team updates)
- Working on 16.2 installers testing for JMP Trial and JMP Pro Trial, details in JMPTEST-417 (Cary team + Beijing team) and BRDSTG-3252 (Beijing team updates).
- Eric Wang: (1) Completed JMP 17 EA5 sanity check for Publishing. (2) Completed 16.2 installers testing for JMP AL, JMP Pro and JMP Subscription. (3) Working on 16.2 installers for JMP Trial and JMP Pro Trial. (4) Tested new log4j jar files for JMP16.2/17.
- Da Li: (1) Completed JMP 17 EA5 sanity check for Import/Export, OSI import. (2) Completed 16.2 installers testing for JMP AL, JMP Pro and JMP Subscription. (3) Working on 16.2 installers for JMP Trial and JMP Pro Trial. (4) Investigated TS reports: 7613481015, 7613481018, 7613481028. (5) Found an OSIPI bug, JMP-9684 . (6) Test JMP Live stories/bugs.
- Mike Wu: (1) Completed JMP 17 EA5 installer testing and the sanity check for ODBC/Query Builder, HTML5 Profiler, JMP Add-ins. (2) Completed 16.2 installers testing for JMP AL, JMP Pro and JMP Subscription. (3) Working on 16.2 installers for JMP Trial and JMP Pro Trial. (4) HTML5 Profiler testing for JMPHTML-766 . (5) Investigated TS reports: 7613478673 and 7613479096. (6) Tested the rebuild of JMP Trial 16.2.
- Kimi: (1) Completed JMP 17 EA5 sanity check for Python Integration, Formula Depot, SAS Integration. (2) Completed 16.2 installers testing for JMP AL, JMP Pro and JMP Subscription. (3) Completed 16.2 installers for JMP Trial and JMP Pro Trial. (4) Tested the rebuild of JMP Trial 16.2. (5) Tested new log4j jar files for JMP16.2/17. (6) Worked with Audrey and Paul about the "module installation for Python" issue, and entered bug JMP-9419 (7) Test JMP Live stories/bugs. (8) Learn how to install and setup a Jenkins server.
- Nala: (1) Completed JMP 17 EA5 sanity check for Text Explorer, standalone regex and CAS Integration. (2) Completed 16.2 installers testing for JMP AL, JMP Pro and JMP Subscription. (3) Completed 16.2 installers for JMP Trial and JMP Pro Trial. (4) Tested the rebuild of JMP Trial 16.2. (5) Test JMP Live stories/bugs
Data Discovery
- Dan S: Fixed crash in column switcher, additional work on Property Panel menu/toolbar items to make it active in windows where it is needed (Projects) and not in others (popup windows, launchers), Journal focus fix for Projects, fix thumbnail bug in JMP Live publishing, additional work on scripts saved to JRP/Session/Log snapshot.
- Dave B: Fixed a problem importing pdf files that use ActualText entry, fixed hover label frame color getting lost when saving a journal, fixed hover label position changes when journaling or rerunning, updated image testing with Mike M’s suggestion to re-run tests to try to filter out tests that have images that change and then change back.
- Xan: Making another pass at default axis settings, mainly padding and avoiding negative labels on prob and count axes.
- Evan: Trying out different search results relevance algorithms for GUI search.
Note from Shannon
Thanks to Aaron Andersen for sharing this item of random Christmas silliness!
We all really like eggnog in my family, me especially. But because it’s only available around the holidays (and because I try not to buy more than one or two cartons a year, it being not exactly a health food), I seem to start every December by thinking “now what was that eggnog brand that we all really liked, and what was the one we decided not to buy anymore?” and I can never remember because it’s been 11 months since I last had any.
So this year I decided to finally settle the matter once and for all. I went to every supermarket I could think of and bought every brand of eggnog I could find. I ended up with 14 different kinds of commercial eggnog, plus 2 variations of homemade that I want to try.

(this isn’t even all of them..)
Wow…that’s dedication! Maybe check in with Ryan about some kind of DOE? I’m eggshausted just looking at all that. That’s just taking it to the eggnog eggstreme.
In all seriousness, happy holidays to all, and see you in the New Year! I am out of the office next week, so there will be no Friday update on Christmas Eve, but please send me a Teams message if something urgent comes up that needs immediate attention. Not something eggnog related, though. I’m not responding to that….