Welcome to the JMP Development Update for May 24, 2024!
JMP 18.0.1 is now available to customers in MyJMP. I very much appreciate the quick turn around on the 18.0.1 installers by testers in Beijing and Cary! Thanks to Bob Hickey for working with the MyJMP team to get installers posted and tested so customers will have access to these high priority fixes. Also thanks to Susan Conaghan for working with the web team to get release notes for JMP 18.0.1 posted on jmp.com/documentation here. With the 18.0.2 branch now created, security champions can update third party libraries as needed, and if any showstopper level bugs surface that cannot wait till 18.1, we can consider them for inclusion.
A reminder that we have delayed the start of JMP 18.1 Approval Mode until 6/4/24 and JMP 18.1 Code Freeze until 6/28/24. Qiana has also moved documentation freeze dates to accommodate these new dates. Hopefully this extra time will allow more customers to adopt JMP 18.0 and report their bugs to us in time to resolve them for 18.1.
Thanks to everyone who participated in the World Day for Cultural Diversity trivia contest on Wednesday morning! I was seriously impressed with the knowledge of our winners and their high scores. Thanks to Beth Evans for organizing the yummy breakfast food! I noticed in The Weekly Wrap that SAS Global Inclusion Week is coming up the week of June 3 including a trivia contest, in case you’re looking to continue to further your DEI knowledge!
Immediately following the trivia contest, we celebrated Michael Hecht’s 40th SAS anniversary. Thanks to Michael’s manager Brian Corcoran and JMP founder John Sall for highlighting Michael’s many contributions to JMP’s code base over the years! You can read many more details in John’s Inside JMP article.
Michael asked me to pass along this message:
Thanks to everyone who helped me celebrate 40 years at SAS on Wednesday. And thanks to SAS who gave me this Labradorite crystal to commemorate the occasion. (It is appropriately sitting in front of a Mac that is also 40 years old.)
We didn’t meet as a group this week for a dev talk, but I have plenty of open dates in June on the JMP Dev Meeting Volunteer Schedule if you’d like to share your JMP 19 work, a talk you’ve given at a conference, or some coding tricks!
General Announcements
Important Upcoming Dates
- JMP 19 EA1 Freeze – 5/31/24
- JMP 18.1 Approval Mode Begins – 6/4/24
- JMP 18.1 Code Freeze – 6/28/24
- Please visit Confluence for a full list of JMP 18 and JMP 19 dates.
JMP Development Updates
Hosting and Interfaces
- Will Morgan: I am working on the Data Connectors team with Bryan Boone, Neal Siekierski and Brian Corcoran. The goal of my project is to create a new data connector to interface with AWS S3 buckets. I have begun to create a Python module for the purposes of interacting with S3 through the Boto3 API. This module will eventually be interacting with JSL code in order to create the user input interfaces. So far, I have been able to add functionality for a user to login with custom credentials at program startup, or the program can find credentials on the user's system. I am working on getting the correct functionality for uploading and downloading files from the AWS S3 buckets and ensuring that the files are compatible with JMP. I would love to have a chat and give you more details if you are interested in hearing more!
Interactive HTML
- John Powell:
- Improved loading speed of numerical data (JMPHTML-13751). Improved drawing speed of Parallel Plot curves (JMPHTML-13750). Working on improving load time performance of Wafer Maps (JMPHTML-13752). Discussed behavior of local data filters in Interactive HTML on the JMP User community.
- Learned some more Jira board tips and tricks from Shannon Leslie. Demoed Interactive HTML to Sam Blashill and Shannon Leslie. Showed Sam Blashill ways to examine JMP’s display tree structures and our XML versions of them.
- Triaged our backlog and incoming bugs. Added new components and assignments to Jira and JiraBot for features we’ll be adding in JMP 19.
- Sam Blashill: Getting familiar with all the systems here at JMP and my fellow interns. I also have been learning JavaScript as my job will be using it a lot and looking into JMP pie charts as I will be creating an interactive version of them in HTML5 for JMP Live.
- Paul Spychala: This week was spent improving performance of Mosaic graphs (JMPHTML-13775), Line graphs (JMPHTML-13780), and Summarized Point graphs (JMPHTML-13792). Continued work on developing WebGL rendering pipeline for 2D charts.
- Michael Senoyuit: Worked on performance for shape segment and text segment.
JMP Live
- Aurora: 19.0: Control chart warning improvements (fixed pre-existing bug in notification email translation, fixed new bug in database migration, wrapped up phase 1 with demo to managers and merge to main, planned phase 2, continuing development of Invention Disclosure Form).
Statistics
- Laura C-S: Revised all methods for the MIIV-2SLS class so the estimator can be extended to models without latent variables (it was originally only for starting values in models with LVs). Tracked down and fixed a bug with MIIV-2SLS intercepts of endogenous latent variables. Started copying MIIV-2SLS results to the SEM_ModelFitResults class, which handles numerous jobs. Made lots of edits to the causal inference paper with Meichen and Russ.
- John Sall: Categorical - continue adding more FDR versions of p-values (JMP-2012), improved formatting-including using .setTitleFont(JHeadingFont) for small outline titles in nested reports (thanks Dan), move a few commands to submenus (JMP-21300), fixes for Save Stacked Table.
Stat Documentation
- Michael C: Continued work on organizing the program for Fall Technical Conference; reviewed Scripting Index and doc updates for Colleen; reorganized some Control Chart Builder entries in the Scripting Index; tested some Scripting Index search updates from Ernest; investigated some questions from translators related to Fit Model documentation and some Multivariate Embedding screenshots.
Stat Testing
- Jacob: Testing Categorical, adding tests for the new ‘Save Stacked Table’ option. Updating Categorical unit tests (JMP-2012). Updating OC Curve tests (JMP-21453) and reworking legacy control chart scripts included in tests to use Control Chart Builder. Working with Yeng on a script to test Torch, using Custom Design to create test cases.
- Tonya: Bug verification. Unit test cleanup. Beginning to take a look at short run control chart updates.
Life Sciences Updates
- Richard: Working on a manuscript entitled “Aggregation of Adverse Event Terms to Identify Clinically Meaningful Safety Signals” to discuss work around FDA medical queries and related topics that have been implemented in JMP Clinical.
Technical Support and Engagement
- Duane: Nothing spectacular to report this week. Several of us are beginning to work on re-establishing customer satisfaction surveys on our cases. We can hopefully get this feedback in the near future. And, as normal, 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:
Development Operations
- Nick:
- Updated all Windows 19.0 and 18.1 DailyUT machines - we were experiencing some odd behavior with the Unit Test machines that looked like Windows Updates may be applying during our nightly runs. We've set a monthly update schedule of the third Monday of each month to coincide with Microsoft's patch Tuesday that happens every second Tuesday. So far we've seen a nice improvement in the stability of job runs.
- Updated Windows 18.0.1 DailyUT machine with anticipation this machine will be reused for the upcoming 18.0.2 projects. The new AMI has been created in AWS, and all updates applied as of 5/21/24. One thing to note, this and the JMP19 DailyUT Windows 10 machine required a manual update to Windows 10 22H2. Windows Update had issues updating these images, but the standalone installer worked (albeit very slowly). If you are having trouble with stubborn Windows Updates, especially the 22H2 update, the standalone installer should fix it.
- Wrote a new script, dailyUTWatcher.ps1 [//depot/main/tools/devops/ci/dailyUTWatcher/dailyUTWatcher.ps1], to watch DailyUT builds and terminate machines that are no longer running tests. This script was deployed Thursday and is successfully checking for and removing AWS machines we no longer need after their jobs finish.
- Refactored the awsNodeWatcher script [//depot/main/tools/devops/ci/awsNodeWatcher/awsNodeWatcher.ps1], in a similar fashion as work done for the dailyUTWatcher script to allow for key-pairs of jobs and machines.
- Melanie: Sample Data Processes: Finished ensuring that sample data processes are running properly again; handed off final 18.1 sample data files from those processes to localization. Help Processes: Reviewed some code and questions from Chris Barrett regarding help for 19.0 EA 1; worked on updating HelpMap scripts/jobs for 19.0 EA1. DevOps Processes: General investigation, testing, troubleshooting for Unit Test streams and analysis runs. Stringbot Migration: Met with Shannon C, Shannon L, and Myron to plan out work for migrating stringbot for source code to AWS using Jira sprints. Thanks to Shannon L for helping to plan, prioritize, and set up Jiras for us!
- Shannon L: Met with development teams to review Jira best practices and tips; met with Localization and JMP Clinical to begin discussions of rolling Clinical into Localization team support; assist with Crash reporting, and met with Tech Support to review our process; created Jira process for assisting Product Management with tracking updates made in EA releases -- rolling out to production next week, more information coming!
- Myron: Fixed sample data processing (JMPTOOL-1156v). Updated Windows symbolize script to ignore non-destructive character mapping issues (JMPTOOL-1221). Updated telemetry processing errors (JMPTOOL-1177).
- Bob: Pushed 18.0.1 installers into SalesForce and worked with that team to fix and test the download process. Worked with ISD to edit and push changes to KB0012784 that describes the process for SAS employees to go to My JMP for software. Removed JMP Pro 17.2 from Company Portal.
- Jim: mac OS system and software updates on numerous build and testing machines. Branching files for JMP 18.0.2 from 18.0.1. Thanks to Nick Ruva for creating and running the Daily_UT_Watcher Jenkins project.
- Shannon C: Investigated telemetry process errors and various JMP 18 crashes and UT failures. Reviewed verifications dashboard and updated some issues with missing Origin values that have been resolved for recent releases. Met with Bobby Riggs and Shannon L to talk about crash triage. Met with various team members to discuss ongoing projects. EA discussions.
Localization
- Allison: Finalized and validated KO translations of 18.0 JMP Documentation; responded to queries from translators related to 18.1 Portable UI and 18.0 JMP Documentation localization projects; sent out GPO template files for localization; tested out the JMP Translation Search interface and provided feedback; had a meeting with JMP Clinical team to learn about what they’ve been localizing and their process.
- Sandy: Worked on file comparison validation to run after populate job. Tested jira interface apis. Finished testing populate job with label changes. Finished testing image diff job label enhancement for Keyboard Shortcuts.
- Krzysztof: Processing version 18.0 Book translation deliveries from vendors and reviews. Writing up additional documentation for memoqweb.
- Sohail: Working on mirroring TM Search tool on our external server for the vendors. Fixing bugs and implementing additional functionality in TM Search tool.
- Trish: Project planning and scheduling. Triage localization schedules. Met with Life Sciences to moving support of JMP Clinical to the Localization Team.
- Howard: Bug fixes. Worked on Dashboard Syncing and workflow implementation.
Documentation
- Khawar: UG edits (JMP-21471
Discussed some edits with Chris and started editing the chapters. Sample index (JMPDOC-2184
Discussed with Chris and reviewed the style guides. Oxygen migration: Talked to Devon about the ways I can help; will look into the ways we can reproduce pdfs (JMPDOC-2165). Installed FrameScript and ran production scripts with Qiana.
- ChrisB: Got the 19.0 help building. It'll be ready to publish next week. Answered a few Localization queries. Got a helpmap comparison tool working.
- Qiana: Continued triaging UG Jiras for 18.1. Came up withnew doc dates for JMP 18.1. Did test run of the production scripts with Khawar.
System/Host Testing-Cary
- Adnane El Hachami: I am a new JMP Test Engineering intern. I am very excited to work here and be part of JMP. This week I have been engaged in JMP and JSL training as well as some other tools such as P4V and Jira. Additionally, I have been working on a data visualization project, and I am almost finished with a URL references collection project, which aims to facilitate and automate checking if URLs are still accessible and valid in the sample data folder's tables.
- Nick H: Helping Adnane get adjusted to life as a JMP test intern. The testing team is excited to see what he will contribute this summer! In my own work, I learned that my API data project centered around importing and analyzing fantasy football data in JMP was accepted as a JMP Paper for SimuLive presentation at this year’s virtual Early User Edition of Discovery Summit – so I have resumed work on this! I have also worked on verifications and unit tests for enhancements to ScriptBox and the script editor along with other smaller 19.0 feature/bug verifications.
- Hunter: Reported authorization issues with nightly installers to Jim and confirmed his changes corrected the problem, verified sas.com email accounts can authorize JMP, JMP Pro, and JMP Clinical installations, verification of JMP-17858 on Windows for local group policy settings and documentation review, and ran tests for Daniel on 10 different JMP product and version configurations for a cloud-side change affecting expiration and termination dates.
- Audrey: Intern trainings and check-ins, a little Jira admin work. I’ve been taking off afternoons this week to play bridge at the Raleigh Regional Tournament. (Psst: I’ve seen another JMP staffer there in the evenings.)
- Mike M: Sikuli test found a regression with a local data filter thumbnail use case. Working on new tests for data table formats between 18.x and 19.x. New Jira to suggest local data filter layout enhancements for readability.
-
Mandy: Worked on Column groups and Column scripts – writing new JSL tests and reporting UI and JSL issues which are mostly resolved now. Working on UI testing for the Column Tagging property Ernest added too. Several issues surfaced early with the Column properties – including a crash that has been resolved – so trying to stay on top of these things before the EA cutoff next Friday. Working on Confluence pages too – and will be making an EA video for these features; worked with Lisa too on Xcode install and build, and also trying to track down one of those weird nightly test diffs that don’t happen when you run the test interactively.
Web Testing – Cary
- Josh: Answering JMP Live server deployment questions. Stress testing the JMP Live Pool. Working with SAS security to get the exception back so we can authorize JMP Pro from AWS again. This appears to be a 6-month exception. Regression testing JMP Live with personal spaces disabled.
- Anna: Testing Group platform with Local Data filter, Column Switcher, Transform columns. Testing Inverse in LDF in JMP Live. Beginning testing of Marketplace add-ins.
|
Web Test Team Beijing / Cary Jira Status
|
|
Testing
|
1
|
|
Test Ready
|
38
|
|
Created Last 7 Days
|
16
|
|
Closed Last 7 Days
|
81
|
System/Host Testing-Beijing
Core
- Dan S: Fixed an issue with Fit Model By groups not scripting out correctly when one or more platforms have gone "empty" from a filter. Fixed icon overlap in selection filter dashboard titles. Worked with Annie to fix a CCB crash when a column is deleted. Fixed SpacerBox resizing issue, and worked with John Schroedl and Michael Hecht to fix a text focus issue that would cause text to be committed when a cancel was expected.
- Dave B: Updated multiple clickstate handlers to have box and seg refs instead of raw pointers. Fixed row alignment in table boxes with colstackboxes. Worked with Jasean on a surface plot bug that he identified.
- Parker: Pushed new background map image tests. Created Jira Epic JMP-21520 to organize “Better Maps in JMP 19” summer project.
DOE and Reliability
- Caleb: Made some updates to the converted sample size explorers to improve the target/reverse search capability. Also, they’re not hidden by an activation script anymore; they’re officially live so feel free to check them out (currently limited to One Sample Mean, Proportion, and Variance). Also, finalizing the invited sessions for the special VT Dept of Statistics anniversary conference at the end of the year. Finally, if you’re interested in my notes from the DAE conference last week, here’s the link to the Confluence page.
Note from Shannon
We celebrate Memorial Day in honor of all the people who have died while serving in the US military. Interested in learning more about the history of the day? Here are 9 things you may not know about this holiday. Hope you all enjoy the long weekend!