New post

検索

Question
· Dec 4, 2024

Embedded Python からの venv環境の利用は出来ますか?

Pythonでは、拡張モジュールのバージョン違いが混同されないように、venv を使って仮想環境に拡張モジュールをインストールする事を推奨されてたりしますが、IRISから使用する場合に、このvenvで作られた仮想環境を利用する事は可能でしょうか?

PythonPathに仮想環境のパスを指定してはみましたが、プロジェクトから、あるいはimportで、その場所を指定する等出来るでしょうか?

何方か御存知の方がおられましたら、その方法などを教えて下さい。

4 Comments
Discussion (4)1
Log in or sign up to continue
Article
· Dec 4, 2024 5m read

第四十章 终端输入 输出 - 用于OPEN和USE的字母代码协议

第四十章 终端输入 输出 - 用于OPEN和USE的字母代码协议

用于OPEN和USE的字母代码协议

特殊情况或终端可能需要不同的协议。使用协议字母代码参数(或相应的关键字参数),可以更改 IRIS 与终端通信的规则。协议对正常读取和单字符读取的影响是一样的。

禁用所有特殊协议的正常模式足以满足大多数终端 I/O 的需要。在正常模式下,IRIS 会回显每个传入的 ASCII 字符,并将其发送回以显示在终端上。 Return或有效的转义序列结束READ命令。

对终端发出OPEN会关闭所有先前的协议,除非您使用 +- 选项。

下表描述了有效的协议字符及其效果。

Discussion (0)1
Log in or sign up to continue
Discussion (0)1
Log in or sign up to continue
Question
· Dec 4, 2024

Is there a way to compile all of the *.int routines from a command line and get an output of any compile errors?

Is there a way to compile all of the *.int routines from a command line and get an output of any compile errors?

7 Comments
Discussion (7)2
Log in or sign up to continue
InterSystems Official
· Dec 4, 2024

New and Upcoming Embedded Git features

It's been a while since I've posted about Embedded Git on the Developer Community, and I'd like to provide an update on the massive amount of work we've done this year and where we're going next.

Context

If you're building solutions on IRIS and want to use Git, that's great! Just use VSCode with a local git repo and push your changes out to the server - it's that easy.

But what if:

  • You're collaborating with other developers on a shared, remote development environment and want to avoid stepping on each others' toes by editing the same file at the same time
  • You're using editors based in the management portal for interoperability or business intelligence and want straightforward source control for your work - even in a local container
  • You're still using Studio for some things and/or occasionally jump back there from VSCode; or your team has not yet fully embraced VSCode, and some team members still want to use Studio while others use VSCode
  • You're working on a bunch of separate projects at the same time in the same namespace - say, several packages defined using the InterSystems Package Manager - and want to just work with all of them from one isfs editing view (rather than a bunch of distinct projects) with changes tracked in the proper local git repo automatically

In any of these cases, you really need embedded source control. You might have heard this called "server-side source control" or "source control hooks" - it's all the same thing, and means that there is consistent source control behavior across all editors, both IDE and graphical editors, on an IRIS instance. All of this works against a source control repository colocated with your IRIS instance, which might be on a remote server, your own machine, or even in a container.

If you want to get started with embedded source control using Git, Embedded Git (https://github.com/intersystems/git-source-control) is the place to start. This is not an InterSystems-supported product, but it has significant backing from my team (Application Services) within InterSystems and a broad user community. PRs and GitHub issues are always welcome, and we monitor Developer Community activity (especially using the relatively new "Embedded Git" tag).

Embedded Git in 2024

At the beginning of the year, I would have recommended Embedded Git for more-technical users already comfortable with Git and willing to get into the weeds when needed. Now I'd wholeheartedly recommend it for anyone. As some representation of the effort we've put into the tool, and the crazy advancement we've see in 2024, here's a graph of our commit volume over the past few years:

If you want to see what we've been up to, you can check out Releases or our Changelog, but here's a summary of the high points:

  • In July, we added a "Basic Mode" described here with a "Sync" operation that simplifies a pull/commit/rebase/push workflow that we recommend in general, but especially for people less familiar with Git.
  • Across multiple releases, we made it seamless to have git pull and checkout operations - really, anything that modifies the state of the Git repo - seamlessly sync back into IRIS so that everything is kept up to date without needing to forcibly reload the whole codebase.
  • Our September release made it super easy to set up an isfs connection by downloading a VSCode workspace file from the management portal.
  • Our November release made it possible to configure much more through the extension's settings page rather than needing to run commands in Terminal and added intelligent merge conflict resolution for the two most common (near-guaranteed) use cases in an interoperability setting.
  • Along with all of these, we've resolved dozens of minor bugs and usability issues, streamlined navigation through the Management Portal, and added many smaller features to streamline interoperability use cases and collaboration across multiple developer-specific namespaces on a shared, remote instance (which we see and recommend as a common approach).

Coming Soon

Our next release (2.8.0), expected within the next two weeks, will include a feature we've been working on for months - "Production Decomposition". The interoperability production is typically source controlled as a single file, which leads to concurrency issues because only one person can edit the production at a time. There are also near-guaranteed merge conflicts in shared development environments, and while we can resolve these intelligently, they're likely to continue to come up in certain branch workflows. With Production Decomposition, each business host (service, process, or operation) is represented in source control as a single file. If you're interested in trying this out, let us know!

We'll be keeping the momentum up on Embedded Git going into 2025, with a focus on additional authentication methods and support for other common deployment patterns. You can see the rough plan in our 2025 H1 Milestone (which will encompass a few releases; we generally release minor versions monthly and patch versions as needed for key bugfixes).

If you're interested in learning more / keeping pace with development as it happens, we have a weekly stakeholder meeting on Fridays that you would be welcome to join. This also ends up serving as a sort of "office hours" for Embedded Git in general. Feel free to drop me a message with your email address and I'll invite you.

6 Comments