go to post Dmitry Maslennikov · Feb 1, 2021 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.
go to post Dmitry Maslennikov · Feb 1, 2021 Why would you even need root in the container in runtime? Usually, it means, that you doing something wrong.
go to post Dmitry Maslennikov · Jan 31, 2021 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.
go to post Dmitry Maslennikov · Jan 28, 2021 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>
go to post Dmitry Maslennikov · Jan 27, 2021 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.
go to post Dmitry Maslennikov · Jan 26, 2021 BTW, RPi 4, 8Gb, with a prepared image of Ubuntu+Docker+IRIS CE, now available for pre-order on GlobalMasters
go to post Dmitry Maslennikov · Jan 26, 2021 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.
go to post Dmitry Maslennikov · Jan 26, 2021 <STORE> error happens due to the memory limit exceeded in the process. Since 2012.2 memory limit is set as 256MB per process by default, you can increase it in System Management Portal on page Memory and Startup
go to post Dmitry Maslennikov · Jan 24, 2021 I do now what is nactive. what do you expect from this tool? Did you look at DBeaver or DataGrip?
go to post Dmitry Maslennikov · Jan 23, 2021 You may face the access issue, check the docker settings that you correctly provided a list of resources that can be shared.
go to post Dmitry Maslennikov · Jan 20, 2021 VSCode/Atelier debugger for instance stops execution when faces break in the running code as well as any error. And should show the place where it stops.
go to post Dmitry Maslennikov · Jan 19, 2021 So, you tried to debug INT code, and it did not work properly? Is it reproducible, and what will happen if you recompile it? And, still interesting how it will be in VSCode at the same time. Just curious, did you miss anything in VSCode, or you faced some issues there, so, you decided to stay with Studio? You may answer me in direct messages, to keep this topic clear.
go to post Dmitry Maslennikov · Jan 19, 2021 First guess, just lost int code, during some compile forgot about k flag. If you debugging classes or mac routines you need int code to be able to debug it. I would also suggest trying VSCode, where the behavior can be a bit different.
go to post Dmitry Maslennikov · Jan 19, 2021 For a few versions already Caché and IRIS already support OAuth2 out of the box. Look at the documentation. Depends on your architecture you can use this way, or use any external Identity provider like keycloack. And I think IAM also can help with it as well.
go to post Dmitry Maslennikov · Jan 15, 2021 After a brief look at the tif format, it found to be quite tricky to get ImageSize. tif(folder, filename) { #define READWORD $sconvert(fs.Read(2),"U2",endian) #define READLONG $sconvert(fs.Read(4),"U4",endian) #define WORD(%val) $sconvert(%val,"U2",endian) #define LONG(%val) $sconvert(%val,"U4",endian) Set fs = ##class(%Stream.FileBinary).%New() Set fs.Filename = ##class(%File).NormalizeFilename(filename, folder) Set FileSize = fs.Size Set Width = 0, Height = 0 Set Identifier = fs.Read(2) If Identifier=$Char(73,73) { Set endian = 0 } ElseIf Identifier=$Char(77,77) { Set endian = 1 } Else { Throw "Bad Format" } Set Version = fs.Read(2) Set IFDOffset = $$$READLONG Do { Do fs.MoveTo(IFDOffset+1) Set NumDirEntries = $$$READWORD For i=1:1:NumDirEntries { Set tag = fs.Read(12) Set TagID = $$$WORD($Extract(tag,1,2)) Set DataType = $$$WORD($Extract(tag,3,4)) If (TagID=256)||(TagID=257) { Set Value = -1 If DataType=3 Set Value = $$$WORD($Extract(tag,9,12)) If DataType=4 Set Value = $$$LONG($Extract(tag,9,12)) Set:TagID=256 Width = Value Set:TagID=257 Height = Value } } Set NextIFDOffset = $$$READLONG Set IFDOffset = NextIFDOffset Quit:(Height>0)&&(Width>0) } While NextIFDOffset>0 ZWrite Height,Width }
go to post Dmitry Maslennikov · Jan 15, 2021 with landslide situations. I don't understand what you mean. You should understand that ObjectScript is not a good way, to deal with such data as pictures, it's not a task for databases to deal with pictures on a low-level. If you need it on ObjectScript level, I would recommend using imagemagick tool, which is external for sure, and available for any platform. But you will get a lot of functionality. and getting image info as well, and you will not be limited by tiff format only. And in addition you will get the ability to do some other stuff with images, scaling, drawing conversion, and so on, it's very powerful.
go to post Dmitry Maslennikov · Jan 15, 2021 There are many different types of applications. And Caché or nowadays IRIS is just a part of it. For any new applications, I would not recommend using ObjectScript as much as possible and use it as a Database if you need it to just store the data. Any simple application may become bigger in the future, so, having already something that will help with is a good idea. InterSystems some time already offers Community Editon version of IRIS, which is for free, without some of the features, and limited by the size of the Database. And for a simple application, 10GB looks enough. But depends on what do you mean by simple application. It may do some simple task but which will be heavy in the size of data.
go to post Dmitry Maslennikov · Jan 14, 2021 TIF is an image format, what do you mean by reading this kind of files using ObjectScript? What do you want to get from reading it? Something like OCR tools does?