ahh, you have a just a wrong JSON, I would recommend to find a way how to fix it from the side where it comes from.

Key names in the JSON also have to be wrapped by quotes

You can pass a stream to JSON parser. So, this code should work

SET obj = {}.%FromJSON(%httprequest.HttpResponse.Data)

Deployed classes still have to be delivered but without code, for sure, with just compiled OBJ code.

Right, I did not said that it’s open, and available at the moment, I think how to make it the best way.

Why you are using JDBC from Python, if there is pyodbc?

Are you doing it in the docker container, and is it separate to IRIS container?

Could you share all the components you use?

Dmitry Maslennikov · Feb 24, 2021 go to post

Should not be any problem if you use the same user both in Studio and VSCode. PROTECT error means you have security issue and your user not granted for write permission, or that database is just in read only mode

Dmitry Maslennikov · Feb 20, 2021 go to post

Look at this page, it may help you in understanding how to configure it.

If you need to store classes and mac routines separately, you can use

{
  "objectscript.export": {
    "addCategory": true
  }
}

In the case of different behavior for different types, and place only mac routines to the specific folder, use this.

{ 
  "obejctscript.export": {
    "addCategory": false,
    "folder": {
      "mac": "mac"
    }
  }
}

Check the security settings, which you can find in notes in the extension description.

  • Add %Developer role to /api/atelier aplication
  • GRANT EXECUTE ON %Library.RoutineMgr_StudioOpenDialog TO %Developer

Yeah, It's a bit tricky. All the code in Caché really stored directly in the database. But with VSCode, code can be stored locally as files, for easy access and the ability to use source control such as git. After any save of the file related to Caché, e.g. Classes or routines, it will be sent to the server and compiled there.

Having a separate development server, and a production server are for sure is best practice, for sure. With no permission to edit code directly on production. And with having DevOps, will be possible to build a production version and easily deploy it, by some actions or events.

I'm just guessing, I'm not a Windows user for many years. And did not install IRIS there at all. I use only Docker for now.

While you are a front-end developer, you may be familiar with VSCode. And I would like to recommend you to use it for Cache as well. The minimal supported version is 2016.2, so with 2017.1 you should be able to use it.

Are you sure, that you have enough space on the disc?

Google says that error 112 on windows happens due to the inability to decompress the installer and copy files to the destination.

The community edition version is limited to 5 license units. So, when you connected from DBeaver, and a few terminals, may use all the licenses available.

Hi Marcel, yes, something was implemented, which may help you with it. There is a new item map in objectscript.export. For instance this

   "objectscript.export": {
    "folder": "",
    "addCategory": false,
    "map": {
      "%(.*)\\.([^.]*)": "src/$2/_$1.$2",
      "(Test\\.PM\\.Integration\\..*)": "tests/integration_tests/$1",
      "(Test\\.PM\\.Unit\\..*)": "tests/unit_tests/$1",
    },
  }

I have on the same level src and tests folders, so, I set folder to an empty string, to operate on a root level. My Unit Test classes, just placed in the desired folder without adding the folder by type (e.g. cls, inc). But, any other sources have to be stored by type in a separate folder, and my classes are a percent classes, and I have to replace % to _.

On the left side, I have the regular expression to match any main classes %(.*)\\.([^.]*) it should match the filename completely, and on the right side replacement. Same you can see for two different types of UnitTests.

As I know there is no jar with the latest Hibernate dialect for IRIS, yet. I think we can prepare it and publish it the same way.

 Very interesting question, could you please raise the issue in GitHub repository for the project.

We would need a bit more details about it, what you have in your SourceControl Class, and what do you expect.

But, be aware, that this feature was not completely implemented at the moment. It may not implement all the features available in Studio, due to some differences in architecture.

Why would you even need root in the container in runtime?

Usually, it means, that you doing something wrong.

Dmitry Maslennikov · Jan 31, 2021 go to post

Permission denied issues come from a non-root environment configured for the latest few versions of IRIS. And, so, you don't have access to folders, out of access of user irisowner, which runs IRIS inside. This user has access to his home folder - /home/irisowner, and /usr/irissys, where IRIS installed. But you should know that anything created on a filesystem inside the container will disappear after its recreation. And it's how it supposed to work. If you need access from outside the container to created folder, or keep it save even when the container re-created, you have to bind some folder on your local filesystem inside the container, with --volume|-v option (do not forget to give permission to do it in docker settings).

I suppose, there is no way how to run Community Edition directly if you have so many cores, at least, yet. And at the moment, you can use Docker or virtualization, and Docker I would say preferable way.

Dmitry Maslennikov · Jan 28, 2021 go to post

Try this

<repository>
   <id>github</id>
   <name>GitHub Apache Maven Packages</name>
   <url>https://maven.pkg.github.com/caretdev/iris-driver-distribution</url>
</repository>
<dependency>
  <groupId>intersystems</groupId>
  <artifactId>intersystems-jdbc</artifactId>
  <version>3.2.0</version>
</dependency>
Dmitry Maslennikov · Jan 27, 2021 go to post

As far as I know, Studio does not have dark mode, I not even sure that it will be available in any future. Instead of still working in Studio I would recommend to switch to VSCode, it’s support ObjectScript and it has many themes, including various dark.

Dmitry Maslennikov · Jan 26, 2021 go to post

First of all, it is not recommended to using an integrated backup system. Much better would be if you would you any external way, snapshots, or any third-party tools. 

Having multiple backups of different parts of an application at a different time will make those backups inconsistent.