go to post Raj Singh · Jul 6 Hi @Justin Millette. It isn't possible to support multiple in-process Python virtual environments simultaneously. This is because a Python virtual environment is defined at the operating system level, not the application level. A virtual environment consists of a specific Python executable and a set of associated libraries running within an OS-level process. Since IRIS itself is an OS-level process, it can only host a single Python interpreter when running Python code in-process. Supporting multiple virtual environments in this context would require multiple OS processes, which would negate the benefits of embedded execution. If you really need virtual environments, use normal client-side Python.
go to post Raj Singh · Jul 3 Sounds like it's more accurate to say you want to exclude web applications that ship with IRIS, not only those that are of type "System." Using the security.applications table @David Hockenbroch mentioned, I'd exclude those from namespaces InterSystems uses for product, e.g.: SELECT name,namespace,resource,type FROM security.applications WHERE NameSpace not in ('%SYS','HSSYS','HSLIB','HSCUSTOM')
go to post Raj Singh · Jun 9 Hi Nezla. It sounds like you want to do Python-only development. In that case, you'll want to write a Flask app or similar. Search this site for Flask and you'll find many articles, such as this one: https://community.intersystems.com/post/simplest-template-rest-crud-inte....
go to post Raj Singh · May 22 Let me comment separately on the venv question. Remember, you could choose to run your flask app in a separate container and use Docker compose to orchestrate the containers. That will give you all the normal venv options. If, however, you choose to run your flask app embedded in IRIS (running using embedded Python), you are running in-process with IRIS, and that process can't load and unload Python virtual environments while maintaining the benefits of running in embedded mode, so therefore the implication for containerization is that yes you do have to create a new base image when you want to add a package, but that's the tradeoff.
go to post Raj Singh · May 21 Have you seen https://github.com/grongierisc/iris-flask-template? This agrees with a lot of what you found out, but might be a little simpler. The only thing I changed for my work is my pip3 install command in Dockerfile adds a --target as recommended by @Dmitry Maslennikov: RUN pip3 install -r requirements.txt --target /usr/irissys/mgr/python
go to post Raj Singh · Mar 13 pip install sqlalchemy-iris[intersystems] returns: zsh: no matches found: sqlalchemy-iris[intersystems] Could this be because I'm on an M2 Mac?
go to post Raj Singh · Jan 13 Hi @John McBride. We don't currently support formal debugging for embedded Python, so you won't be able to set breakpoints, etc. We're working on this high priority functionality.
go to post Raj Singh · Dec 19, 2024 Thanks @John Murray for all your expert contributions to the InterSystems/VS Code ecosystem!
go to post Raj Singh · Oct 27, 2024 For Chrome, if you know how to modify HTTP headers directly, this one seems reliable and popular (but I haven't tried it): https://chromewebstore.google.com/detail/requestly-intercept-modif/mdnle...
go to post Raj Singh · Sep 9, 2024 Hi @Alan Nguyen . Starting with IRIS 2404.2, Studio is a separate install. Get all the details in this article
go to post Raj Singh · Aug 28, 2024 So now the problem isn't installing the Python library, but connecting to IRIS, correct? If you're using the above code on both servers, is the connection info the same on both servers?
go to post Raj Singh · Aug 2, 2024 For those who find this post later, my "sources" tell me https://wrc.intersystems.com/wrc/coDistGen.csp should have worked -- definitely if you are a registered customer.
go to post Raj Singh · Jul 12, 2024 Great suggestions here. This reminds me the folks at myCTS once again showed off webHERALD at Global Summit this year. Another option in this space. @Armin Forstner could say more.
go to post Raj Singh · Jul 10, 2024 As @Brett Saviano says, if you simply need to work with JSON data, use dynamic objects. If your question is really about the future of data-centric web development with InterSystems, let me step back and offer a higher level viewpoint. %ZEN has been deprecated because it requires some browser features that have been deprecated and may go away at any time. Therefore, we cannot continue to recommend usage to our developers when browsers could break Zen applications and any moment. The DeepSee v3 REST API uses %ZEN classes because it has not been rewritten since the deprecation. Zen was developed a long time ago, and many great application development frameworks have gained popularity since then. There are examples of Angular, React, Django and more recently, Streamlit being used in conjunction with IRIS. There doesn't seem to be a strong desire for offering a proprietary web development framework that could never achieve feature parity with those mass market offerings, and could only beat them in providing faster, more efficient access to the data layer. But I'd love to hear more voices from the community on this topic.