Clear filter
Announcement
Anastasia Dyubaylo · Mar 31
Hi Community,
It's voting time! Cast your votes for the best applications in our AI Programming Contest:
🔥 VOTE FOR THE BEST APPS 🔥
How to vote? Details below.
Experts nomination:
An experienced jury from InterSystems will choose the best apps to nominate for the prizes in the Experts Nomination.
Community nomination:
All active members of the Developer Community with a “trusted” status in their profile are eligible to vote in the Community nomination.
Blind vote!
The number of votes for each app will be hidden from everyone. We will publish the leaderboard in the comments to this post once a day.
The order of projects on the contest page will be as follows: the earlier an application was submitted to the competition, the higher it will be on the list.
P.S. Don't forget to subscribe to this post (click on the bell icon) to be notified of new comments.
To take part in the voting, you need:
Sign in to Open Exchange – DC credentials will work.
Make any valid contribution to the Developer Community – answer or ask questions, write an article, contribute applications on Open Exchange – and you'll be able to vote. Check this post on the options to make helpful contributions to the Developer Community.
If you change your mind, cancel the choice and give your vote to another application!
Support the application you like!
Note: contest participants are allowed to fix the bugs and make improvements to their applications during the voting week, so don't miss and subscribe to application releases!
Announcement
Anastasia Dyubaylo · Apr 2
Hi Community,
Check out the new video that shows how to easily create solutions using InterSystems IRIS:
📺 Building Smarter Applications with InterSystems IRIS
Watch how InterSystems IRIS simplifies data management for application developers. Traditional architectures require multiple services — databases, analytics engines, and caches — leading to complexity, cost, and fragility. IRIS offers a streamlined, multi-model approach, allowing developers to store and process diverse data types efficiently within a single, high-performance system. With built-in interoperability, high availability, and in-memory caching, developers can focus on application logic while IRIS handles the data. Better performance, lower costs, and faster time to value — all in one platform.
🗣 Presenter: Scott Gnau, Vice President, Head of Data Platforms, InterSystems
Subscribe to InterSystems Developers YouTube to stay up to date!
Article
Developer Community Admin · Apr 8
Migrating InterSystems IRIS and InterSystems IRIS for Health from on-premises to the cloud offers many advantages for Application Providers and Solution Providers. These advantages include simplified operations, access to flexible resources, and enhanced resilience. Companies no longer need to worry about the physical constraints and expenses associated with maintaining on-prem infrastructure, such as power and space requirements and expensive computer hardware.
One of the most compelling benefits is the ability to accelerate speed to market. By removing the burden of infrastructure maintenance, cloud environments enable faster development and deployment cycles, allowing businesses to respond quickly to market demands and opportunities. Operational costs are also lowered, because companies can scale resources up or down based on actual needs, leading to more efficient use of capital. Moreover, migrating to the cloud can contribute to a reduced carbon footprint by optimizing energy usage through shared cloud infrastructure.
Transitioning to the cloud may involve significant changes. Companies may benefit from a more operational focus, managing and optimizing cloud resources continuously. This shift may require changes to business models, reconsideration of margins, and strategies for scaling operations up or out. While requiring more investment, embracing these changes can lead to improved agility and competitive advantage in the marketplace.
Architectural Choices in Cloud Migration
When considering the simplest cloud migration, lifting an existing on-premises application to one of the public clouds requires companies to choose one or more services (AWS, Azure, Google, or another). Companies then face an important architectural choice: migrate entirely to the cloud or create a prem-to-cloud hybrid cluster. Both InterSystems IRIS and InterSystems IRIS for Health fully support either option. A hybrid cluster mirrors the on-prem instance to the cloud asynchronously. This alternative can be helpful in situations such as when the OLTP continues to run on-prem, but the cloud instance provides support for analytics, reporting, and other read-only operations.
Migration Options
Each architectural choice for cloud migration has advantages and limitations, making it essential for companies to evaluate their specific needs and goals when planning a cloud strategy. The first step is to choose between a full move to the cloud or a hybrid setup.
Migration choice
Number of InterSystems IRIS deployments after migration
Characteristics
Lift & Shift: full move to cloud
1
Local on-premises setup moved to a cloud-based architecture
Hybrid Cluster: on-prem plus cloud mirror copy (“stretch cluster”)
2
On-premises cluster mirrored to an asynchronously updated, read-only cloud copy
The Lift & Shift choice allows leveraging of cloud benefits while maintaining ownership of a single copy of InterSystems IRIS.
The Hybrid choice combines the stability and familiarity of on-premises systems with the flexibility and scalability of the cloud.
See our online documentation for more information on Mirroring.
Multi-Tenant vs. Single Tenant Architecture with InterSystems IRIS
Although migration does not require changes to your tenancy method, the cloud offers powerful options for scaling and billing. For this reason, you may want to re-evaluate your tenancy model. For any of our offerings, when deploying InterSystems IRIS applications in the cloud, companies can choose between the following architectures for multiple customers:
Single Tenant: Multiple deployments; one for each of your customers.
Multi-Tenant: Multiple customers on a single deployment.
Each architecture offers distinct advantages and drawbacks. This is especially important for application and solution providers with solutions built with InterSystems IRIS technology that have large numbers of customers, are destined for major expansion, or that house sensitive or regulated data.
Scaling of Resources and Operations
Multi-Tenant: Scaling a multi-tenant environment involves adding resources to a single shared instance for each customer (tenant), which can be more cost-effective and simpler to manage. However, the performance of one tenant can affect others if adequate resources are not allocated, leading to resource contention.
Single Tenant: Scaling a single tenant environment means provisioning more resources for each customer individually. While this offers more predictable performance, the need for additional infrastructure and management overhead can make this choice more complex to scale.
Isolation of Data
Multi-Tenant: In a multi-tenant configuration, multiple tenants share the same instance of the application and database. Data isolation is achieved through softwarelevel partitioning, ensuring that each tenant’s data remains secure and separate from others. This approach can be efficient in its use of resources but can require robust security measures to prevent data breaches.
Single Tenant: With a single tenant architecture, each customer has a separate instance of the application and database. This setup provides a higher level of data isolation, as each tenant’s data resides in a separate environment. This choice can be more secure and easier to manage, facilitating compliance with data protection regulations.
Migration Methods
Multiple approaches are available to migrate your InterSystems IRIS solution from on-premises to the cloud service of your choice.
The two most common methods are described next. They both start with the same step of mirroring an existing deployment to the cloud, but then diverge.
Choosing Mirror or Lift-and-Shift
Both the mirror method and the lift-and-shift method start by copying your existing InterSystems IRIS from on-prem to a cloud platform. Once the cloud copy is synchronized with the on-prem instance, you make a final choice of where the migration path ends:
Mirror: Continue to use the on-prem instance as primary and the cloud instance for backup and read-only operations, like analytics and machine learning. The cloud instance is asynchronous but periodically updated.
Lift-and-Shift: With the on-prem primary instance and the cloud-based secondary instances now in sync, “fail over” operations from the on-prem instance to the cloud copy, which now becomes the primary subsequently for all operations (not just readonly). At that point, the on-prem deployment can be archived as a snapshot backup.
Mirroring your existing local InterSystems IRIS instance to the cloud is the most common, resilient, and straightforward way to migrate your on-prem deployment. For more information, see the Server Migration Guide in our online documentation.
More articles on the subject:
How to set up a mirror programmatically
IRIS Mirror in the cloud (AWS)
VIP in GCP
Orchestrating Secure Management Access in InterSystems IRIS with AWS EKS and ALB
Source: Lifting InterSystems IRIS to the Cloud
Announcement
Anastasia Dyubaylo · Apr 16
Hi Community!
We know that every developer has small side projects — apps where you experiment with new technologies, test ideas before implementing them in bigger solutions, or just build something fun for the sake of curiosity. But what if one of those projects could take you all the way to the InterSystems READY 2025?
We’re launching a unique opportunity: show us your passion, creativity, and love for IRIS, and win a free pass to the InterSystems READY + hotel accommodation!
The rules are simple: upload your fun IRIS-based side project to Open Exchange, and record a short inspirational video about why you should be the one to get the pass to THE event of the year and win!
Duration: April 21 - May 04, 2025
Prizes: hotel accommodation and free passes to the InterSystems READY 2025!
🛠 What do you need to do?
Upload a fun IRIS-based side project to Open Exchange (How to publish an application on Open Exchange). Be creative - it can be useful, quirky, fun, or just something you’ve always wanted to try.
Record a short inspirational video (up to 5 minutes):
Tell us how InterSystems technologies or the Developer Community impacted your project or career.
Explain why YOU should get a ticket to the InterSystems READY 2025.
Submit your video and link to your app via this form.
🧠 General Requirements for Applications
An application or library must be fully functional. It should not be an import or a direct interface for an already existing library in another language (except for C++). It should not be a copy-paste of an existing application or library.
Accepted applications: new to Open Exchange. Our team will review all applications before approving them.
The application should work on either IRIS, IRIS for Health or IRIS Cloud SQL. The first two could be downloaded as host (Mac, Windows) versions from Evaluation site, or can be used in the form of containers pulled from InterSystems Container Registry or Community Containers: intersystemsdc/iris-community:latest or intersystemsdc/irishealth-community:latest .
The application should be Open Source and published on GitHub or GitLab.
The README file to the application should be in English, contain the installation steps, and either the video demo or/and a description of how the application works.
An application can have only one author.
NB. Our experts will have the final say in whether the application is approved for this initiative based on the criteria of creativity and originality of approach. Their decision is final and not subject to appeal.
👨💻 Who Can Participate
Any Developer Community member, except InterSystems employees or contractors. Create an account!
🏆 Prizes
🥇 1st place: free pass to InterSystems READY 2025 + hotel accommodation
🥈 2nd & 3rd places: free pass to InterSystems READY 2025
❗️The prize is not exchangeable for cash or any other alternative.
✨ Bonus Points
You can boost your chances of winning by submitting additional activities:
Publish a tech article about your project
Create an extra video demo of your project
Share your inspirational video on your social media using hashtag #Ready2025 and mention @InterSystems and @InterSystemsDev
Get inspired. Build something fun. Share your story.
It’s your time to shine - CODE your way to InterSystems READY 2025!
Discussion
Harshitha Balakrishna · Mar 23
What features and benefits do we get from an InterSystems training course? Does it include certification?
Article
Kristina Lauer · Jan 23
Updated 02/27/25
Hi Community,
Looking for a way to onboard your team with InterSystems IRIS® for Health? Unlock the full potential of this platform by using these InterSystems learning resources. With a mix of online and in-person training, you can support various roles in your organization and equip your team for success.
Onboarding Resources for Every Role
Developers
Online Learning Program: Getting Started with InterSystems IRIS for Health for Coders (21h)
Classroom Training: Developing with InterSystems Objects and SQL and Building and Managing HL7 Integrations (5 days each)
System Administrators
Learning Path: InterSystems IRIS Management Basics (10h)
Classroom Training: Managing InterSystems Servers (5 days)
Data Analysts
Video: Introduction to Analytics with InterSystems (6m)
Learning Paths for every tool:
Analyzing Data with InterSystems IRIS BI
Delivering Data Visually with InterSystems Reports (1h 15m)
Build Data Models Using Adaptive Analytics (2h 15m)
Classroom Training: Using InterSystems Embedded Analytics (5 days)
System Integrators
Learning Program: Getting Started with InterSystems IRIS for Health for Integrators (14h)
Classroom Training: Developing System Integrations and Building and Managing HL7 Integrations (5 days each)
Learning Paths for integrators working with HL7® FHIR®: Building Basic FHIR Integrations with InterSystems (4h) and FHIR-Enabling Your Applications with InterSystems (3h 30m)
Project managers
Watch product overview videos.
Read success stories to get inspired—see how others are using InterSystems products!
Other Resources from Learning Services
💻 Online Learning: Register for free at learning.intersystems.com to access self-paced courses, videos, exercises, task-based learning paths, role-based programs, and more.
👩🏫 Classroom Training: Sign up for live, in-person or virtual training, or request a private course for your team. Find details at classroom.intersystems.com.
📘 InterSystems IRIS documentation: Comprehensive reference materials, guides, and how-to articles. Explore the documentation.
📧 Support: For technical support, email support@intersystems.com.
Certification Opportunities
Once you and your team members have gained enough training and experience, get certified according to your role!
Learn from the Community
💬Engage in learning on the Developer Community: Chat with other developers, post questions, read articles, and stay updated with the latest announcements. See this post for tips on how to learn on the Developer Community.
Announcement
Anastasia Dyubaylo · Apr 22
Hey Community,
Great news for all those of you who have missed the Super Early Bird discount for the InterSystems READY 2025! You still have a chance to get an Early bird discount up until 26th of May! So don't miss you chance to participate in the event of the year.
➡️ InterSystems Ready 2025
🗓 Dates: June 22-25, 2025
📍 Location: Signia Hilton Bonnet Creek, Orlando, FL, USA
Also, there are several ways you can get your passes without paying a dime!
Check out our newest competition Code Your Way to InterSystems READY 2025. The rules are simple: upload your IRIS-based side project to Open Exchange, and record a short inspirational video about why you should be the one to get the pass to THE event of the year!
Redeem the reward in your Global Masters My Rewards section if you have enough points. It comprises a ticket and a three-night hotel accommodation (Sunday, Monday, Tuesday). Please note that flights/transportation costs are not included.
We hope to see you there! Awesome! I'll be there!
Announcement
Anastasia Dyubaylo · Mar 10
Hi Community!
It's time to celebrate our 25 fellow members who took part in the latest InterSystems Technical Article Contest and wrote
🌟 38 AMAZING ARTICLES 🌟
The competition was filled with outstanding articles, each showcasing innovation and expertise. With so many high-quality submissions, selecting the best was no easy task for the judges.
Let's meet the winners and look at their articles:
⭐️ Expert Awards – winners selected by InterSystems experts:
🥇 1st place: Creating FHIR responses with IRIS Interoperability production by @Laura.BlázquezGarcía
🥈 2nd place: Monitoring InterSystems IRIS with Prometheus and Grafana by @Stav
🥉 3rd place: SQLAchemy-iris with the latest version Python driver by @Dmitry.Maslennikov
⭐️ Community Award – winner selected by Community members:
🏆 Generation of OpenAPI Specifications by @Alessandra.Carena
And...
⭐️ We'd like to highlight the author who submitted 8 articles for the contest: @Julio.Esquerdo
Let's congratulate all our heroes who took part in the Tech Article contest #6:
@Robert.Cemper1003
@Stav
@Aleksandr.Kolesov
@Alessandra.Carena
@Dmitry.Maslennikov
@André.DienesFriedrich
@Ashok.Kumar
@Julio.Esquerdo
@Andre.LarsenBarbosa
@Yuri.Marx
@sween
@Eric.Fortenberry
@Jinyao
@Laura.BlázquezGarcía
@Corentin.Blondeau
@Rob.Tweed
@Timothy.Scott
@Muhammad.Waseem
@Robert.Barbiaux
@rahulsinghal
@Alice.Heiman
@Roy.Leonov
@Parani.K
@Suze.vanAdrichem
@Sanjib.Pandey9191
THANK YOU ALL! You have made an incredible contribution to our Dev Community!
The prizes are in production now. We will contact all the participants when they are ready to ship. Congratulations to all the winners and participants Honored to receive second place and grateful to be part of such a talented community. Congratulations to all winners and participants! Congratulations to all the winners 🎉 Congratulations to the participants and winners.Special BIG THANKS to the organizers and administrators of this contest. 💐🏵🌷🌻🌹I'm really proud to see how this community has grown and raised in quality. Congratulations to all the winners and participants! Congratulations everyone, and thank you so much for making such an excellent community of developers possible !💐 Congratulations to all the winners and participants. Your articles were truly inspiring and showcased exceptional creativity and insight.
Congratulations to all the winners and participants. All the articles are excellent!!! Congratulations to everyone! Great articles all around! Congratulations to all the participants! Thanks a lot for all your support! It's been a pleasure to participate 😊 And congratulations to everyone! I think it was a tough competition, all articles were so great! good turn out here, congrats all. Congratulations to all the participants! Congratulations to the winners... the best community ever !!! Amazing contributions! Thanks to all the participants! Kudos to all participants and winners🎉! Congratulations all! Congratulations to all the winners 🎉 Congratulations all winners and participants!!!! Congratulations to everyone👏 Congulations all!
Announcement
Bob Kuszewski · May 21
We have a big update this quarter.
RHEL 10 was released yesterday, read on for what that means for you
2025.3 will use OpenSSL 3 across all operating systems SUSE 15 sp6 will be the minimum OS for orgs using SUSE
The minimum CPU standards are going up in 2025.3
Older Windows Server operating systems will no longer be supported in 2025.3
If you’re new to these updates, welcome! This update aims to share recent changes as well as our best current knowledge on upcoming changes, but predicting the future is tricky business and this shouldn’t be considered a committed roadmap.
InterSystems IRIS Production Operating Systems and CPU Architectures
Minimum Supported CPU Architecture
In 2024, InterSystems introduced a minimum supported CPU architecture for all Intel- & AMD-based servers that allows us to take advantage of new CPU instructions to create faster versions of InterSystems IRIS. InterSystems IRIS 2025.3 will update that list to require the x86-64-v3 microarchitecture level, which requires the AVX, AVX2, BMI, and BMI2 instructions.
For users with Intel-based systems, this means that Skylake and up will be required while Hasell/Broadwell will not be supported.
For users with AMD-based systems, this means that Excavator and up will be required while Piledriver & Steamroller will not be supported.
Are you wondering if your CPU will still be supported? We published a handy article on how to look up your CPU’s microarchitecture in 2023.
Red Hat Enterprise Linux
Upcoming Changes
RHEL 10 - Red Hat released RHEL 10 on May 20th. We’ve been testing on the latest beta of RHEL 10 on InterSystems IRIS 2025.1.
InterSystems IRIS 2025.1 support – We anticipate officially adding support for RHEL 10 in about a month. That’s assuming the GA version of RHEL 10 doesn’t introduce any significant problems, of course.
Moving forward – once we have support for RHEL 10 in InterSystems IRIS, we will stop supporting RHEL 8 on moving forward versions of InterSystems IRIS. This likely means that InterSystems IRIS 2025.2 will just support RHEL 9 & 10.
Previous Updates
RHEL 9.5 has undergone minor OS certification without incident.
Further reading: RHEL Release Page
Ubuntu
Current Update
Ubuntu 24.04.2 has just been released and minor OS certification has begun.
Further Reading: Ubuntu Releases Page
SUSE Linux
Upcoming Changes
InterSystems IRIS 2025.3+ will require SUSE Linux Enterprise Server 15 SP6 or greater – SLES 15 sp6 has given us the option to use OpenSSL 3 and, to provide you with the most secure platform possible, we’re going to change InterSystems IRIS to start taking advantage of it.
In preparation for moving to OpenSSL 3 in IRIS 2025.3, there will be no IRIS 2025.2 for SUSE.
Further Reading: SUSE lifecycle
Oracle Linux
Upcoming Changes
We’re expecting Oracle Linux 10 to be released around the same time as RHEL 10. Since we support Oracle Linux via the IRIS RHEL kit, we’re expecting Oracle Linux 10 support at the same time as RHEL 10 support is released.
Further Reading: Oracle Linux Support Policy
Microsoft Windows
Recent Changes
Windows Server 2025 is now supported in InterSystems IRIS 2025.1 and up.
Upcoming Changes
InterSystems IRIS 2025.3+ will no longer support Windows Server 2016 & 2019.
Microsoft has pushed back the anticipated release date for Windows 12 to the fall of 2025. We’ll start the process of supporting the new OS after it’s been released.
Further Reading: Microsoft Lifecycle
AIX
Upcoming Changes
IBM is rolling out new Power 11 hardware this summer. We anticipate running the new hardware through the paces over the course of the late summer and early fall. Look for a full update on our findings in the Q4 newsletter.
Previous Changes
IRIS 2024.3 and up only support OpenSSL 3. NOTE: This means that 2024.2 is the last version of IRIS that has both OpenSSL 1 and OpenSSL 3 kits. In IRIS 2023.3, 2024.1, & 2024.2, we provided two separate IRIS kits – one that supports OpenSSL 1 and one that supports OpenSSL 3. Given the importance of OpenSSL 3 for overall system security, we’ve heard from many of you that you’ve already moved to OpenSSL 3.
Further Reading: AIX Lifecycle
Containers
Previous Updates
We changed the container base image from Ubuntu 22.04 to Ubuntu 24.04 with IRIS 2024.2
We’re considering changes to the default IRIS container to, by default, have internal traffic (ECP, Mirroring, etc) on a different port from potentially externally facing traffic (ODBC, JDBC, etc). If you have needs in this area, please reach out and let me know.
InterSystems IRIS Development Operating Systems and CPU Architectures
MacOS
Recent Changes
IRIS 2025.1 adds support for MacOS 15 on both ARM- and Intel-based systems.
InterSystems Components
Upcoming Releases
InterSystems API Manager 3.10 will be released soon.
InterSystems Kubernetes Operator 3.8 will be released in the coming weeks as well.
Caché & Ensemble Production Operating Systems and CPU Architectures
Previous Updates
A reminder that the final Caché & Ensemble maintenance releases are scheduled for Q1-2027, which is coming up sooner than you think. See Jeff’s excellent community article for more info.
InterSystems Supported Platforms Documentation
The InterSystems Supported Platforms documentation is the definitive source information on supported technologies.
IRIS 2025.1 Supported Server Platforms
IRIS 2024.1 Supported Server Platforms
IRIS 2023.1 Supported Server Platforms
Caché & Ensemble 2018.1 Supported Server Platforms
… and that’s all folks. Again, if there’s something more that you’d like to know about, please let us know. IBM POWER supported processors continues the same as POWER 8 or later? My mistake - please ignore this.. That's right. There's no planned change in supported POWER processors. IBM does a good job of phasing out older processors with new versions of the OS.
Question
Ashok Kumar T · Jun 10
Hello Community,
I encountered the following errors while installing the ZPM module on version 2025.1. The ZPM install command failed on the Community Edition of IRIS for Health.
Skipping installation of python wheel 'attrs-25.1.0-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.
Full error message
Skipping installation of python wheel 'attrs-25.1.0-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'certifi-2025.1.31-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'charset_normalizer-2.1.1-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'idna-3.10-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'jsonschema-4.23.0-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'jsonschema_specifications-2024.10.1-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'oras-0.1.30-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'referencing-0.36.2-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'requests-2.32.3-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'typing_extensions-4.12.2-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.Skipping installation of python wheel 'urllib3-2.3.0-py3-none-any.whl' due to error: '0 ;«WCould not find a suitable pip caller. Consider setting UseStandalonePip and PipCallerÓUSERÇ'e^OnAsStatus+1^%Exception.General.1^1/e^AsStatus+1^%Exception.AbstractException.1^15e^OnPhase+28^%IPM.ResourceProcessor.PythonWheel.1^1)e^%Initialize+8^%IPM.Lifecycle.Base.1^1-e^ExecutePhases+163^%IPM.Storage.Module.1^1+e^LoadNewModule+118^%IPM.Utils.Module.1^1e^Load+44^%IPM.Main.1^1"d^ShellInternal+48^%IPM.Main.1^1d^Shell+2^%IPM.Main.1^1e^ZPMLoad+3^IPM.Installer.1^1e^setup+63^IPM.Installer.1^1"e^AsyncSetup+2^IPM.Installer.1^1d^^^0'. You may need to install this wheel manually or from PyPI to use certain features of IPM.
The ZPM installation failed with a 'not found in any repository' error for the applications I attempted to install on the 2024 and 2025 versions.
USER>zpm "install System-Task-REST"
ERROR! 'System-Task-REST' not found in any repository.
USER>zpm
=============================================================================
|| Welcome to the Package Manager Shell (ZPM). Version: 0.10.2 ||
|| Enter q/quit to exit the shell. Enter ?/help to view available commands ||
|| No registry configured ||
|| System Mode: <unset> ||
|| Mirror Status: NOTINIT ||
=============================================================================
IRIS for Windows (x86-64) 2025.1 (Build 223U) Tue Mar 11 2025 18:18:59 EDT [Health:8.2.2]
zpm:USER>install "System-Task-REST"
ERROR! 'System-Task-REST' not found in any repository.
zpm:USER>install swagger-ui
ERROR! 'swagger-ui' not found in any repository.
zpm:USER>install "swagger-ui"
ERROR! 'swagger-ui' not found in any repository.
zpm:USER>
@Ashok.Kumar - could you please raise it here too? As for community images - the latest releases do not have community registry enabled by default.
Use this command to make them work:
USER>zpm repo -r -n registry -url https://pm.community.intersystems.com/ -user "" -pass "" I've raised the issue. Thanks! The issue is caused by the PythonRuntimeLibrary not being configured. Starting from version 2024.2, Python is no longer bundled with IRIS due to the introduction of the Flexible Python Runtime feature. As a result, the Python directory is missing, preventing the installation of the Wheel file.
Check this post about this configuration.
Announcement
Anastasia Dyubaylo · May 20
Hi Community,
We’ve got something exciting for you — it’s time for a new demo video contest, and this time, you’re in the judge’s seat!
📺 Demo Games for InterSystems Sales Engineers 📺
For this contest, InterSystems Sales Engineers from around the world submitted short demo videos showcasing unique use cases, smart solutions, and powerful capabilities of InterSystems technologies.
Now it’s your turn! We’re opening up voting to the entire Developer Community. Your insight and perspective as developers make you the perfect experts.
👉 How to participate
Watch the demos on the Demo Games Contest Page
Vote for your favourite entries (Developer Community login required)
🗓 Contest period
Voting is open from May 26 until September 14, 2025, and winners will be announced shortly after.
New videos will be added throughout the contest — so keep checking back. You might find a favourite right at the end!
✅ How to vote:
All active members who have made a valid contribution to the Developer Community or Open Exchange — such as asking or answering questions, writing articles, or publishing applications — are eligible to vote. This includes customers, partners, and employees who registered using their corporate email addresses.
To vote:
Log in (or create an account) on the Developer Community
Visit the Contest Page
Select your top 3 favourite videos and click the “Vote” button for each
🏆 Scoring system:
1st place vote = 9 points
2nd place = 6 points
3rd place = 3 points
🔁 Votes from the Official Community Moderators* count double, so your top picks really matter!
* Moderators are indicated by a green circle around their avatar.
Let the Demo Games begin – and may the best demo win!
Article
Luis Angel Pérez Ramos · 21 hr ago
You've probably encountered the terms Data Lake, Data Warehouse, and Data Fabric everywhere over the last 10-15 years. Everything can be solved with one of these three things, or a combination of them ( here and here are a couple of articles from our official website in case you have any doubts about what each of these terms means). If we had to summarize the purpose of all these terms visually, we could say that they all try to solve situations like this:
Our organizations are like that room, a multitude of drawers filled with data everywhere, in which we are unable to find anything we need, and we are completely unaware of what we have.
Well, at InterSystems we could not be less and taking advantage of the capabilities of InterSystems IRIS we have created a Data Fabric solution called InterSystems Data Fabric Studio (are we or are we not original?).
Data Fabric
First of all, let's take a closer look at the features that characterize a Data Fabric, and what better way to do so than by asking our beloved ChatGPT directly:
A Data Fabric is a modern architecture that seeks to simplify and optimize data access, management, and use across multiple environments, facilitating a unified and consistent view of data. Its most distinctive features include:
Unified and transparent access
Seamless integration of structured, semi-structured, and unstructured data.
Seamless access regardless of physical or technological location.
Centralized metadata management
Advanced data catalogs that provide information on origin, quality, and use.
Automatic data search and discovery capabilities.
Virtualization and data abstraction
Eliminating the need to constantly move or replicate data.
Dynamic creation of virtual views that enable real-time distributed queries.
Integrated government and security
Consistent application of security, privacy, and compliance policies across all environments.
Integrated protection of sensitive data through encryption, masking, and granular controls.
AI-powered automation
Automating data discovery, preparation, integration, and optimization using artificial intelligence.
Automatic application of advanced techniques to improve quality and performance.
Advanced analytical capabilities
Integrated support for predictive analytics, machine learning, and real-time data processing.
InterSystems Data Fabric Studio
InterSystems Data Fabric Studio, or IDFS from now on, is a cloud-based SaaS solution (for now) whose objective is to meet the functionalities demanded of a Data Fabric.
Those of you with more experience developing with InterSystems IRIS will have clearly seen that many of the Data Fabric features are easily implemented on IRIS, which is exactly what we thought at InterSystems. Why not leverage our technology by providing our customers with a solution?
Modern and user-friendly interface.
This is a true first for InterSystems: a simple, modern, and functional web interface based on the latest versions of technologies like Angular.
With transparent access to your source data.
The first step to efficiently exploiting your data begins with connecting to it. Different data sources require different types of connections, such as JDBC, REST APIs, or CSV files.
IDFS provides connectors for a wide variety of data sources, including connections to different databases via JDBC using pre-installed connection libraries.
Analyze your data sources and define your own catalog.
Every Data Fabric must allow users to analyze the information available in their data sources by displaying all associated metadata that allows them to decide whether or not it is relevant for further exploitation.
With IDFS, once you've defined the connections to your different databases, you can begin the discovery and cataloging tasks using features such as importing schemas defined in the database.
In the following image, you can see an example of this discovery phase. From an established connection to an Oracle database, we can access all the schemas present in it, as well as all the tables defined within each schema.
This functionality is not limited to the rigid structures defined by external databases; IDFS, using SQL queries between multiple tables in the data source, allows you to generate catalogs with only the information that is most relevant to the user.
Below you can see an example of a query against multiple tables in the same database and a visualization of the retrieved data.
Once our catalog is defined, IDFS will be responsible for storing the configuration metadata. There is no need to import the actual data at any time, thus providing virtualization of the data.
Consult and manage your data catalog.
The data set present in any organization can be considerable, so managing the catalogs we create based on it is essential to be agile and simple.
IDFS allows us to consult our entire data catalog at any time, allowing us to recognize at a glance what data we have access to.
As you can see, with the functionalities already explained, we perfectly cover the first two points that ChatGPT indicated as necessary for a Data Fabric tool. Let's now see how IDFS covers the remaining points.
One of the advantages of IDFS is that, since it is built on InterSystems IRIS, it leverages its vector search capabilities, which allow semantic searches across the data catalog, allowing you to retrieve all catalogs related to a given search.
Prepare your data for later use.
It's pointless to identify and catalog our data if we can't make it available to third parties in the way they need it. This step is key, as providing data in the required formats will facilitate its use, simplifying the analysis and development processes of new solutions.
IDFS makes this process easier by creating "Recipes," a name that fits perfectly since what we're going to do is "cook" our data.
As with any good recipe, our ingredients (the data) will go through several steps that will allow us to finally prepare the dish to our liking.
Prepare your data (Staging)
The first step in any recipe is to gather all the necessary ingredients. This is the preparation or staging step. This step allows you to choose from your entire catalog the one that contains the required information.
Transform your data (Transformation)
Any Data Fabric worth its salt must be able to transform data sources and must have the capacity to do so quickly and effectively.
IDFS allows data to be conditioned through the necessary transformations so that the client can understand the data.
These transformations can be of various types: string replacement, rounding of values, SQL expressions that transform data, etc. All of these data transformations will be persisted directly to the IRIS database without affecting the data source at any time.
After this step, our data would be adapted to the requirements of the client system that will use it.
Data Validation
In a Data Fabric, it's not enough to simply transform the data; it's necessary to ensure that the data being provided to third parties is accurate.
IDFS has a data validation step that allows us to filter the data we provide to our clients. Data that doesn't meet validation will generate warnings or alerts to be managed by the responsible person.
An important point of this validation phase in IDFS is that it can also be applied to the fields we transformed in the previous step.
Data Reconciliation
It is very common to need to validate our data with an external source to ensure that the data in our Data Fabric is consistent with the information available in other tables in our data source.
IDFS has a reconciliation process that allows us to compare our validated data with this external data source, thereby ensuring its validity.
Data Promotion
Every Data Fabric must be able to forward all the information that has passed through it to third-party systems. To do this, it must have processes that export this transformed and validated data.
IDFS allows you to promote data that has gone through all the previous steps to a previously defined data source. This promotion is done through a simple process in which we define the following:
The data source to which we will send the information.
The target schema (related to a table in the data source).
The mapping between our transformed and validated data and the destination table.
Once the previous configuration is complete, our recipe is ready to go into action whenever we want. To do so, we only need to take one last step: schedule the execution of our recipe.
Business scheduler
Let's do a quick review before continuing what we've done:
Define our data sources.
Import the relevant catalogs.
Create a recipe to cook our data.
Configure the import, transformation, validation, and promotion of our data to an external database.
As you can see, all that's left is to define when we want our recipe to run. Let's get to it!
In a very simple way, we can indicate when we want the steps defined in our recipe to be executed, either on a scheduled basis, at the end of a previous execution, manually, etc.
These execution scheduling capabilities will allow us to seamlessly chain recipe executions, thereby streamlining their execution and giving us more detailed control over what's happening with our data.
Each execution of our recipes will leave a record that we will be able to consult later to know the status of said execution:
The executions will generate a series of reports that are easily searchable and downloadable. Each report will show the results of each of the steps defined in our recipe:
Conclusions
We've reached the end of the article. I hope it helped you better understand the concept of Data Fabric and that you found our new InterSystems Data Fabric Studio solution interesting.
Thank you for your time!
Announcement
Anastasia Dyubaylo · May 21, 2022
Hey Community,
Check out the latest video on InterSystems Developers YouTube channel:
⏯ Drinking Our Own Champagne: InterSystems AppServices' Move from Zen Reports to InterSystems Reports
The InterSystems internal applications team, which manages the Change Control Record System for both internal and for customer use, moved all reporting capabilities from Zen Reports to InterSystems Reports last year. Join us for a look at the before and after, hear about lessons learned, and learn about the move's unexpected benefits.
🗣 Presenter: @Jean.Millette, Developer AppServices, InterSystems
Support this video with your 👍
Announcement
Bob Kuszewski · Jun 2, 2022
InterSystems is pleased to announce the 2022.1 releases of InterSystems IRIS Data Platform, InterSystems IRIS for Health, and HealthShare Health Connect are now Generally Available (GA).
2022.1 is an extended maintenance release, which means that maintenance builds will be available for two years, followed by an additional two years of security-specific builds.
Release Highlights
Platform Updates
InterSystems IRIS Data Platform 2022.1 expands support to include the following new & updated operating systems for production workloads:
Windows Server 2022
Windows 11
AIX 7.3
Oracle Linux 8
We’re also happy to announce that both Apple’s M1 & Intel chipsets are supported with MacOS 12 (Monterey) for development environments.
Better Development
Embedded Python – use Python & ObjectScript inside IRIS
Interoperability Adapters for Kafka, AWS S3, AWS SNS, & CloudWatch
Redesigned user experience for Production Extensions (PEX)
Speed, Scale, & Security
Online Shard Rebalancing
Adaptive SQL
Journal & Stream Compression
TLS 1.3, OAuth 2 Support for email
Analytics & AI
SQL Loader
InterSystems Reports deployment improvements
More details on all of these features can be found in the product documentation:
InterSystems IRIS 2022.1 documentation and release notes
InterSystems IRIS for Health 2022.1 documentation and release notes
HealthShare Health Connect 2022.1 documentation and release note
How to get the software
The software is available as both classic installation packages and container images. For the complete list of available installers and container images, please refer to the Supported Platforms document.
Full installation packages for each product are available from the WRC's Software Distribution page. Using the Custom installation option, you to pick the options you need, such as InterSystems Studio and IntegratedML, to right-size your installation footprint.
Container images for the Enterprise Editions of InterSystems IRIS and IRIS for Health and all corresponding components are available from the InterSystems Container Registry using the following commands:
docker pull containers.intersystems.com/intersystems/iris:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/irishealth:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/iris-arm64:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/irishealth-arm64:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/iris-ml:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/iris-ml-arm64:2022.1.0.209.0
For a full list of the available images, please refer to the ICR documentation.
Container images for the Community Edition can also be pulled from the InterSystems Container Registry using the following commands:
docker pull containers.intersystems.com/intersystems/iris-community:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/irishealth-community:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/iris-community-arm64:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/irishealth-community-arm64:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/iris-ml-community:2022.1.0.209.0
docker pull containers.intersystems.com/intersystems/iris-ml-community-arm64:2022.1.0.209.0
InterSystems IRIS Studio 2022.1 is a standalone IDE for use with Microsoft Windows and can be downloaded via the WRC's components download page. It works with InterSystems IRIS and IRIS for Health version 2022.1 and below. InterSystems also supports the VSCode-ObjectScript plugin for developing applications for InterSystems IRIS with Visual Studio Code, which is available for Microsoft Windows, Linux and MacOS.
Our corresponding listings on the main cloud marketplaces will be updated in the next few days.
The build number for this release release is 2022.1.0.209.0.
Is this issue first added with 2022.1, solved in this latest build? Unfortunately, we do not have a workaround for Docker's breaking change included in 2022.1. The instructions in my Docker post should still be followed. What about previous images in containers.intersystems.com? It seems they are gone? What about InterSystems images on the DockerHub? Will they be published there too? Previously we had irishealth-ml images too, e.g.
containers.intersystems.com/intersystems/irishealth-ml:2021.2.0.651.0
What about this brunch of images? And images with ZPM package manager 0.3.2 are available accordingly:
intersystemsdc/iris-community:2022.1.0.209.0-zpm
intersystemsdc/irishealth-community:2022.1.0.209.0-zpm
intersystemsdc/irishealth-ml-community:2022.1.0.209.0-zpm
intersystemsdc/irishealth-community:2022.1.0.209.0-zpm
intersystemsdc/iris-community:2021.2.0.651.0-zpm
intersystemsdc/iris-ml-community:2021.2.0.651.0-zpm
intersystemsdc/irishealth-community:2021.2.0.651.0-zpm
intersystemsdc/irishealth-ml-community:2021.2.0.651.0-zpm
And to launch IRIS do:
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community:2022.1.0.209.0-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-ml-community:2022.1.0.209.0-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community:2022.1.0.209.0-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-community:2022.1.0.209.0-zpm
And for terminal do:
docker exec -it my-iris iris session IRIS
and to start the control panel:
http://localhost:9092/csp/sys/UtilHome.csp
To stop and destroy container do:
docker stop my-iris
And the FROM clause in dockerfile can look like this:
FROM intersystemsdc/iris-community:2022.1.0.209.0-zpm
Or to take the latest image:
FROM intersystemsdc/iris-community
So if you are on the latest image already just rebuild the repository to get the latest IRIS production image with ZPM onboard. Also to stay up-to-date with InterSystems containers repository images I recommend taking a look at this remarkable free extension to Docker Desktop by @Dmitry.Maslennikov he contributed to the community:
As is our long standing practice, preview releases are taken down once a GA release is available. We currently have the following versions available on IRC: 2019.1.3.722.0, 2020.1.3.521.0, 2021.1.2.338.0, 2021.2.0.651.0, 2022.1.0.209.0 Thanks, Bob! Community images are published to DockerHub, as is the longstanding practice. Docker is currently semi-retiring their old "store" portion of DockerHub leaving a confusing interface to find our containers. We expect that Docker will clear this up in the next few months.
In the meanwhile, you can easily find InterSystems community containers via the InterSystems Organization on DockerHub:
https://hub.docker.com/u/intersystems containers.intersystems.com/intersystems/irishealth-ml:2022.1.0.209.0 is available on ICR, if that's what you're asking. We didn't list every single container in the announcement because, well, there are a lot of them Got it! It was listed in the previous GA announcement, that's why I'm asking. This is very helpful, thanks!
Announcement
Benjamin De Boe · Jun 14, 2021
InterSystems is very pleased to announce the 2021.1 release of InterSystems IRIS Data Platform, InterSystems IRIS for Health and HealthShare Health Connect, which are now Generally Available to our customers and partners.
The enhancements in this release offer developers more freedom to build fast and robust applications in their language of choice, both server-side and client-side. This release also enables users to consume large amounts of information more effectively through new and faster analytics capabilities.
We expect many customers and partners to upgrade their Caché and Ensemble deployments to this InterSystems IRIS release and have made every effort to make that a smooth and worthwhile transition. Most applications will see immediate performance benefits just from running on InterSystems IRIS, even before they explore the many powerful capabilities IRIS brings to the table.
We kindly invite you to join our webinar presenting the highlights of the new release, at 11AM EDT on June 17. The webinar will be recorded and made available for replay afterwards. Or listen to our Data Points podcast episode on what's new in 2021.1.
Release Highlights
With InterSystems IRIS 2021.1, customers can deploy InterSystems IRIS Adaptive Analytics, an add-on product that extends InterSystems IRIS to provide business users with superior ease of use and self-service analytics capabilities to visualize, analyze, and interrogate vast amounts of data to get the information they need to make timely and accurate business decisions, without being experts in data design or data management. Adaptive Analytics transparently accelerates analytic query workloads that run against InterSystems IRIS by autonomously building and maintaining interim data structures in the background.
Other spotlight features new in this release include:
Improved manageability for our External Language Servers, which now also cover R and Python. This gateway technology enables robust and scalable leveraging of server-side code in your language of choice
The InterSystems Kubernetes Operator (IKO) offers declarative configuration and automation for your environments, and now also supports deploying InterSystems System Alerting & Monitoring (SAM).
InterSystems API Manager v2.3, including an improved user experience, Kafka support and hybrid mode.
Mainstream availability of IntegratedML, enabling SQL developers to build and deploy Machine Learning models directly in a purely SQL-based environment.
Support for stream fields on sharded tables, giving you full SQL schema flexibility on InterSystems IRIS horizontally scalable architecture
An iris-lockeddown container image, implementing many security best practices such as disabling web access to the management portal and appropriate OS-level permissions.
Support for Proof Key for Code Exchange (PKCE) for Oauth 2.0
InterSystems IRIS for Health 2021.1 includes all of the enhancements of InterSystems IRIS. In addition, this release further extends the platform's comprehensive support for the FHIR® standard through APIs for parsing & evaluating FHIRPath expressions against FHIR data. This is in addition to the significant FHIR-related capabilities released since 2020.1, including support for FHIR Profiles, FHIR R4 Transforms and the FHIR client API.
This release also includes HealthShare Health Connect, our InterSystems IRIS for Health based integration engine that delivers high-volume transaction support, process management, and monitoring to support mission critical applications. For a detailed overview of how its feature set compares to InterSystems IRIS for Health, please see here.
More details on all of these capabilities can be found in the product documentation, which has recently been made even easier to navigate through a convenient Table of Contents sidebar.
InterSystems IRIS 2021.1 documentation and release notes
InterSystems IRIS for Health 2021.1 documentation and release notes
HealthShare Health Connect 2021.1 documentation and release notes
If you are upgrading from an earlier version and use TLS 1.3, please see these upgrade considerations.
How to get the software
InterSystems IRIS 2021.1 is an Extended Maintenance (EM) release and comes with classic installation packages for all supported platforms, as well as container images in OCI (Open Container Initiative) a.k.a. Docker format.
Full installation packages for each product are available from the WRC's product download site. Using the "Custom" installation option enables users to pick the options they need, such as InterSystems Studio and IntegratedML, to right-size their installation footprint.
Container images for the Enterprise Editions of InterSystems IRIS and InterSystems IRIS for Health and all corresponding components are available from the InterSystems Container Registry using the following commands:
docker pull containers.intersystems.com/intersystems/iris:2021.1.0.215.0
docker pull containers.intersystems.com/intersystems/iris-ml:2021.1.0.215.0
docker pull containers.intersystems.com/intersystems/irishealth:2021.1.0.215.0
docker pull containers.intersystems.com/intersystems/irishealth-ml:2021.1.0.215.0
For a full list of the available images, please refer to the ICR documentation.
Container images for the Community Edition can also be pulled from the Docker store using the following commands:
docker pull store/intersystems/iris-community:2021.1.0.215.0
docker pull store/intersystems/iris-ml-community:2021.1.0.215.0
docker pull store/intersystems/irishealth-community:2021.1.0.215.0
docker pull store/intersystems/irishealth-ml-community:2021.1.0.215.0
Alternatively, tarball versions of all container images are available via the WRC's product download site.
InterSystems IRIS Studio 2021.1 is a standalone IDE for use with Microsoft Windows and can be downloaded via the WRC's product download site. It works with InterSystems IRIS and InterSystems IRIS for Health version 2021.1 and below. InterSystems also supports the VSCode ObjectScript plugin for developing applications for InterSystems IRIS with Visual Studio Code, which is available for Microsoft Windows, Linux and MacOS.
Other standalone InterSystems IRIS 2021.1 components, such as the ODBC driver and web gateway, are available from the same page.
Sharing your experiences
We only get to announce one EM release per year, so we are excited to see this version now hitting the GA milestone and eager to hear your experiences with the new software. Please don't hesitate to get in touch through your account team or here on the Developer Community with any comments on the technology or the use cases you're addressing with it.
For selected new capabilities and products, we've set up Early Access Programs to allow our users to evaluate software before it gets released. Through these focused initiatives, we can learn from our target audience and ensure the new product fulfills their needs when it gets released. Please reach out through your account team or watch the Developer Community if you're interested in participating in any of these. Thanks for the new release, @Benjamin.DeBoe !
Is there any publicly available list of publicly available images on the InterSystems registry? Are there any ARM images available? Yes to both questions: For a full list of the available images, please refer to the ICR documentation.
Our doc team is updating that page today, but generally anything for which there was a 2021.1.0.205.0 tag, there should also be a 2021.1.0.215.0. There were a few open questions on the new permutations that we were looking through this morning.
Improved manageability for our External Language Servers, which now also cover R and Python.
Are there any docs for that, especially R and Python? I think you're looking for this. The doc is not separate for each language, but the quick reference in the last section points you at the respective class references. Thank you Benjamin!
But I see it does not mention R at all and there's no corresponding R method in $system.external:
set javaGate = $system.external.getJavaGateway()
set netGate = $system.external.getDotNetGateway()
set pyGate = $system.external.getPythonGateway() Can't wait for Python, I checked out R on Wiki. It looks interested for graph plotting and statistical analysis. The Wiki page also mentioned APL which is defined as:
APL (named after the book A Programming Language)[3] is a programming language developed in the 1960s by Kenneth E. Iverson. Its central datatype is the multidimensional array. It uses a large range of special graphic symbols[4] to represent most functions and operators, leading to very concise code. It has been an important influence on the development of concept modeling, spreadsheets, functional programming,[5] and computer math packages.[6] It has also inspired several other programming languages.[7][8]
in Wiki
I learned this language while I was studying to become an actuary and during the university holidays I worked at Legal & General who were the Insurance company who were sponsoring my University Tuition and during or of these work experience holidays, instead of putting me in the room where the actuaries worked, they put me ina room with an IBM computer with a special keyboard and told me that this computer was specifically designed to run APL programs. Here are some examples of the language:
Simple statistics[edit]
Suppose that X is an array of numbers. Then (+/X)÷⍴X gives its average. Reading right-to-left, ⍴X gives the number of elements in X, and since ÷ is a dyadic operator, the term to its left is required as well. It is in parenthesis since otherwise X would be taken (so that the summation would be of X÷⍴X, of each element of X divided by the number of elements in X), and +/X adds all the elements of X. Building on this, ((+/((X - (+/X)÷⍴X)*2))÷⍴X)*0.5 calculates the standard deviation. Further, since assignment is an operator, it can appear within an expression, so
SD←((+/((X - AV←(T←+/X)÷⍴X)*2))÷⍴X)*0.5
Prime numbers[edit]
The following expression finds all prime numbers from 1 to R. In both time and space, the calculation complexity is {\displaystyle O(R^{2})\,\!} (in Big O notation).
(~R∊R∘.×R)/R←1↓ιR
Executed from right to left, this means:
Iota ι creates a vector containing integers from 1 to R (if R= 6 at the start of the program, ιR is 1 2 3 4 5 6)
Drop first element of this vector (↓ function), i.e., 1. So 1↓ιR is 2 3 4 5 6
Set R to the new vector (←, assignment primitive), i.e., 2 3 4 5 6
The / replicate operator is dyadic (binary) and the interpreter first evaluates its left argument (fully in parentheses):
Generate outer product of R multiplied by R, i.e., a matrix that is the multiplication table of R by R (°.× operator), i.e.,
4
6
8
10
12
6
9
12
15
18
8
12
16
20
24
10
15
20
25
30
12
18
24
30
36
Build a vector the same length as R with 1 in each place where the corresponding number in R is in the outer product matrix (∈, set inclusion or element of or Epsilon operator), i.e., 0 0 1 0 1
Logically negate (not) values in the vector (change zeros to ones and ones to zeros) (∼, logical not or Tilde operator), i.e., 1 1 0 1 0
Select the items in R for which the corresponding element is 1 (/ replicate operator), i.e., 2 3 5
And I wrote a number of programs which had the IT department asking "How on earth did you do that and what does it mean?" to which I replied "I asked the computer to do this for me and it said 'Yes Nigel' and the programs worked. It was then that I knew I was destind to become a developer . When, a few years later in London I was introduced to Multidimedsional structures I already knew what they were because of my exposure to APL.
Dear InterSystems, how about introducing APL into our library of analytical programming languages?
Nigel I believe the R one goes through the Java gateway, but not sure why it's not described (yet) in the docs. Pinging @Robert.Kuszewski for more detail Hi Nigel,
glad you like the Python Gateway work. Perhaps you're also interested in participating in the embedded python EAP?
As for APL, we're typically looking for some critical mass of customer demand before embarking on such a development project and only recall it being mentioned once before. But thanks for bringing it up, as each critical mass starts somewhere :-).
This said, we've had some really great work pioneered in the community here. The Python Gateway project is one example that originated here and its popularity (thanks @Eduard.Lebedyuk and @Sergey.Lukyanchikov !) inspired the one now released as part of the core InterSystems IRIS platform. Similar concepts, such as the Julia Gateway are still "incubating" as a community-driven project. Maybe APL could fit that same path? And we updated the images with ZPM 0.2.14 too:
intersystemsdc/iris-community:2021.1.0.215.0-zpm
intersystemsdc/iris-ml-community:2021.1.0.215.0-zpm
intersystemsdc/iris-community:2020.4.0.547.0-zpm
intersystemsdc/irishealth-community:2021.1.0.215.0-zpm
intersystemsdc/irishealth-ml-community:2021.1.0.215.0-zpm
intersystemsdc/irishealth-community:2020.4.0.547.0-zpm
And to launch IRIS do:
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community:2021.1.0.215.0-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-ml-community:2021.1.0.215.0-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community:2020.4.0.547.0-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-community:2021.1.0.215.0-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-ml-community:2021.1.0.215.0-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-community:2020.4.0.547.0-zpm
And for terminal do:
docker exec -it my-iris iris session IRIS
and to start the control panel:
http://localhost:9092/csp/sys/UtilHome.csp
To stop and destroy container do:
docker stop my-iris Hi Ben
Yeah, I added the comments about APL because I just happened to notice it in Wiki while looking at R and it reminded me of my Actuarial days. It was a curious language being almost entirely symbolic in nature. The standard "Hello World" program that every language tutorial teaches was something more like
I learned it in 1981 and I see that there have been releases of APL2 and so I guess that somewhere someone is using it (probably in Mathematical Modelling which is what many Actuaries do instead of designing Insurance Policies and staring at Life Expectancy Tables which was what Actuaries did in those day) and I think that a language like Julia (which I have also downloaded and played with a few months ago is much more suited to Pure Math). Can I ask a question, I notice that Python is an Interpreted language like ObjectScript. Was that part of the decision to include it into InterSystems IRIS (and also that it is one of the most popular languages on the Top 10 language list) based on the fact that it could ultimately be compiled down to .obj code? You're spot on. The similarity between Python and ObjectScript plus its popularity (Python's, that is ;-) ) are exactly what drove us to build Embedded Python. We're not compiling it to .obj code though, but running it "as Python" in the kernel. @Robert.Kuszewski and @David.McCaldon are much better at explaining that nuance (and actually do in the intro webinar to our early access program for this upcoming feature. Thank you Benjamin!
Is community edition download is available to run directly from windows other then docker image? Yes. If you navigate to the WRC software distribution site or even just https://download.intersystems.com/, you can select community edition kits for a variety of platforms, including Windows. You are right Benjamin, the R gateway go through the Java gateway with two helper classes :
- com.intersystems.rgateway.Helper
- org.rosuda.REngine.Rserve
An example can be found here :
- https://github.com/grongierisc/iris-r-gateway-template
If I may, I prefer the approach of Eduard for the R gateway : https://github.com/intersystems-community/RGateway who by pass the java gateway and directly use socket connection to the R Server.
@Eduard.Lebedyuk : you are right no documentation a this time for the R Gateway. Thank you for the info Guillaume!
I would like to clarify that I'm not an author of Community R Gateway (although I do publish it).
Shiao-Bin Soong is the author of both Community R Gateway and R Gateway. Hi Ben
I certainly would like to join the Python EAP. I was actually sent an invite but it slipped through the gap and I had communicated with Eduard to issue another Invite. I have already installed the InterSystems IRIS 2021.1 PYTHON kit and I just need a license. At Anastasia's recommendation, I sent a request to Bob to get a license. I don't know if it's too late to join the current EAP as gather there will be another one but if I can join in the current one then that would be great When i run the following:
set srv = $system.external.getServers()
write srv.%ToJSON()["%DotNet Server","%IntegratedML Server","%JDBC Server","%Java Server","%Python Server","%R Server","%XSLT Server"]
R does appear
Nigel I'm running:
store/intersystems/iris-ml-community:2021.1.0.215.0
And $zv is:
IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2021.1 (Build 215U) Wed Jun 9 2021 12:37:06 EDT
Are $zv for ml and non ml builds the same? How can I distinguish if my app is running on ml or non ml build? Use docker-ls:
PS D:\Cache\distr> .\docker-ls tags --registry https://containers.intersystems.com intersystems/iris-community
requesting list . done
repository: intersystems/iris-community
tags:
- 2020.1.1.408.0
- 2020.3.0.221.0
- 2020.4.0.547.0
- 2021.1.0.215.0 Any new speed testing doing or planing on InterSystems IRIS 2021? @Amir.Samary ? eh, it's the sixth item in the list? yes, they are the same. Like Studio and ODBC, it's an install-time option to right-size your footprint (and therefore highly relevant for container images). I'm not sure if there's a handy utility method to check if it's been installed or not, but @Thomas.Dyar would know. What happened to intersystems/arbiter? I can't find it in containers.intersystems.com registry:
>docker-ls.exe repositories --registry https://containers.intersystems.com
requesting list . done
repositories:
- intersystems/iris-community
- intersystems/iris-community-arm64
- intersystems/iris-ml-community
- intersystems/irishealth-aa-community
- intersystems/irishealth-community
- intersystems/irishealth-community-arm64
- intersystems/irishealth-ml-community
- intersystems/sam
However, a direct pull succeeds:
docker pull containers.intersystems.com/intersystems/arbiter:2021.1.0.215.0
2021.1.0.215.0: Pulling from intersystems/arbiter
f22ccc0b8772: Already exists
3cf8fb62ba5f: Already exists
e80c964ece6a: Already exists
cc40d98799c0: Pull complete
4179ff34652c: Pull complete
70ed38c703cc: Pull complete
ab1c2108b984: Pull complete
758289e88757: Pull complete
Digest: sha256:51c31749251bea1ab8019a669873fd33efa6020898dd4b1749a247c264448592
Status: Downloaded newer image for containers.intersystems.com/intersystems/arbiter:2021.1.0.215.0
containers.intersystems.com/intersystems/arbiter:2021.1.0.215.0
@Luca.Ravazzolo? It's still there, docker-ls just needs the auth.
docker-ls repositories --registry https://containers.intersystems.com --user "********" --password "****************"
requesting list . done
repositories:
- intersystems/arbiter
- intersystems/arbiter-arm64
....... I'm authorized in containers.intersystems.com in docker. Is that not enough? Interesting. I see both of them
{ "RepositoryName": "intersystems/arbiter", "Tags": [ "2019.1.1.615.1", "2020.1.0.215.0", "2020.1.1.408.0", "2020.2.0.211.0", "2020.3.0.221.0", "2020.4.0.547.0", "2021.1.0.215.0" ] }, { "RepositoryName": "intersystems/arbiter-arm64", "Tags": [ "2020.4.0.547.0" ] },
--
Command used
docker run --rm carinadigital/docker-ls \ docker-ls \ -u luxabc \ -p abcdefghijklmnopqrstuvxyz0987654321 \ --registry https://containers.intersystems.com \ repositories \ --level 2 \ --json
-- Here are the updated images with ZPM and license prolonged:
intersystemsdc/iris-community:2021.1.0.215.3-zpm
intersystemsdc/iris-ml-community:2021.1.0.215.3-zpm
intersystemsdc/irishealth-community:2021.1.0.215.3-zpm
intersystemsdc/irishealth-ml-community:2021.1.0.215.3-zpm
And to launch IRIS do:
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-community:2021.1.0.215.3-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/iris-ml-community:2021.1.0.215.3-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-community:2021.1.0.215.3-zpm
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-ml-community:2021.1.0.215.3-zpm
And for terminal do:
docker exec -it my-iris iris session IRIS
and to start the control panel:
http://localhost:9092/csp/sys/UtilHome.csp
To stop and destroy container do:
docker stop my-iris