Article John Murray · Aug 9 1m read VS Code ObjectScript extension 2.12.6 and later can optionally display server documents read-only if source control class reports them as such A nice feature that we recently added to version 2.12.6 of the VS Code ObjectScript extension is controlled by this new setting: objectscript.serverSourceControl.respectEditableStatus When set true in JSON, or checked in the Settings Editor, a server-side file will be read-only if the source control class for the namespace reports that it is not editable. #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 4 0 1 63
Article John Murray · Aug 9 2m read WebTerminal is broken on IRIS 2024.2 I'm posting this for the benefit of WebTerminal users who have upgraded to the recently-released IRIS 2024.2 -- (Build 247U) Tue Jul 16 2024 09:52:30 EDT -- or are considering doing so. That version of 2024.2 contains a change (DP-432503) which requires that the user under which the Web Gateway initially connects to IRIS (usually CSPSystem) must have READ permission on the database hosting the dispatch class of the REST web application. #InterSystems IRIS Open Exchange app 6 2 1 229
Article John Murray · Jul 24 2m read XML export of Studio project unexpectedly omits webapp (CSP) files when webapp name doesn't contain any slashes I encountered this quirk when investigating an unrelated issue affecting how Studio projects are handled in VS Code. When you add the top level of the webapp to a %Studio.Project this inserts a %Studio.ProjectItem with a .DIR suffix. For example, if Studio or VS Code is connected to the USER namespace and you add the /csp/user webapp to a project the new ProjectItem name is "csp/user.DIR". #Caché #InterSystems IRIS 2 2 0 63
Article John Murray · Oct 13, 2023 2m read How to provide VS Code settings, snippets and debug configurations to everyone working server-side in a shared namespace When you use VS Code to edit source code, the settings model allows you to specify folder-specific values for some settings by using a settings.json file located in a .vscode sub-folder of the workspace root folder. A value set here takes precedence over one from your personal settings when you are working within that workspace root folder. #Development Environment #VSCode Open Exchange app 5 1 1 413
Article John Murray · Sep 21, 2023 1m read Getting started with the Jupyter Server Proxy extension for VS Code Earlier this year I announced availability of a VS Code extension for coding in ObjectScript, Embedded Python or SQL using the notebook paradigm popularized by Jupyter. Today I published a maintenance release to correct a "getting started" problem. Here's a video of the installation steps from the extension's README: Why not try it for yourself? #Embedded Python #ObjectScript #SQL #VSCode 6 3 0 301
Article John Murray · Sep 7, 2023 1m read One reason for VS Code being unable to connect to your server This scenario showed up yesterday at a client site when I was delivering bespoke consultation on migration from Studio to VS Code. #Authentication #VSCode 7 1 0 338
Article John Murray · Feb 6, 2023 2m read Introducing DX Jetpack for VS Code Strap on this jetpack to boost your developer experience in Visual Studio Code. DX Jetpack for VS Code was my entry for the 2023 Developer Tools Contest, where it achieved 2nd place in the Experts vote and 5th place in the Community vote. It is an extension pack for VS Code, bundling three entirely new extensions created by me, plus a couple that we at George James Software published previously. The new extensions are: gj :: codeSpex ObjectScript Class View ServerDiff If you're reluctant to install DX Jetpack right away, why not try it using a dev container? In the dev container is an InterSystems IRIS Community environment augmented with InterSystems Package Manager (IPM) and the isc-codetidy package. #Contest #George James Software #Open Source #Tools #VSCode Open Exchange app 3 2 1 466
Article John Murray · Apr 1, 2022 2m read Docker Containers on Windows sometimes unable to get ports during startup I have recently started making more use of Docker Desktop on my Windows 11 workstation, particularly in conjunction with VS Code's Remote - Containers extension and the iris-python-template repo from @Guillaume Rongier #Docker #Microsoft Windows #Other 4 0 3 1.9K
Article John Murray · Dec 2, 2021 1m read Server Manager now showcasing VS Code's new support for pre-release extensions Server Manager 3.0 Preview, my entry for the InterSystems Security Contest, is now making use of a cool new feature of Visual Studio Code version 1.63 - support for pre-release extensions. #VSCode Open Exchange app 4 1 0 412
Article John Murray · Nov 29, 2021 3m read Previewing Server Manager 3.0 for VS Code The InterSystems Server Manager extension for Visual Studio Code lets you define connections to your servers, list their namespaces and edit or view code there. You can also launch Portal for a server. Server Manager 3.0 improves security by becoming a VS Code Authentication Provider. It is my entry for the November 2021 InterSystems Security Contest. Click here to visit the contest page where you may decide to vote for this entry. Please ignore the clickable "Contestant" label on this article header above, as it relates to a different contest for new DC articles. If you want to support me in that contest, simply "like" this post. #Development Environment #Security #VSCode Open Exchange app 7 0 1 576
Article John Murray · Apr 10, 2021 2m read Tweaking the Web Applications page of Management Portal Ever noticed that the Type column of the Web Applications page in the Security section of Management Portal is showing you redundant information? #Management Portal #Caché #Ensemble #InterSystems IRIS 7 1 0 323
Article John Murray · Jan 29, 2021 1m read How to make new VS Code files default to the language you want On a default VS Code installation, when you create a new file its language mode is 'Plain Text' You have to click there to set another mode. Luckily, there's a setting you can tweak to change this. It is called files.defaultLanguage Set it to the ID of the language you want. Those IDs display in parentheses after each entry on the language mode selector. #VSCode #Other 3 1 1 2.2K
Article John Murray · Oct 27, 2020 2m read Using InterSystems ObjectScript for VS Code - How to report issues Now that 1.0 has shipped and is featuring in various sessions at Virtual Summit 2020 it seems like a good time to offer some guidance on how to report problems. #Development Environment #VSCode #InterSystems IRIS 4 0 0 639
Article John Murray · Oct 25, 2019 1m read Gotcha when roundtripping Zen classes in UDL format using %Compiler.UDL.TextServices on Unix-type platforms before 2018.1 When dealing with a support issue of one of our Deltanji source control sites this week I learned that if you're using InterSystems versions earlier than 2018.1 on Unix-type platforms it's possible that a class you export in UDL format will subsequently fail to import. So I'm posting this information here in case it helps other folk. #Compiler #Tools #ZEN #Caché 0 0 0 270
Article John Murray · May 3, 2018 4m read The (somewhat limited) value of 'ccontrol default' If you have ever issued the command ccontrol help to discover what ccontrol is capable of, perhaps you noticed this section:Syntax: ccontrol defaultDescription: Display the name of the default Cache instance, if one has been designated. #Caché #Ensemble #System Administration 0 2 1 669
Article John Murray · Feb 8, 2018 1m read Atelier security quirk When defining a server connection in Atelier we are required to enter a username and password because these are mandatory fields in the dialog. However, if the /api/atelier web application definition on that server has only the "Unauthenticated" checkbox set in the section titled "Allowed Authentication Methods", then our Atelier connection will succeed even if we supply an invalid username and/or password. #Caché #Ensemble #Security 2 6 0 663
Article John Murray · Jan 17, 2018 1m read Observations about DC homepage views On the homepage that we get when we go to https://community.intersystems.com/ there are three views, controlled by a set of buttons in the upper right:Above is with the default view (the "house", i.e. the "home"). #DC Feedback 2 1 0 244
Article John Murray · Oct 9, 2017 1m read Preventing a production from running in the wrong environment When implementing our Deltanji source control product on Ensemble or HealthShare sites I sometimes encounter places that implement multiple production classes, e.g. one for their DEV environment and another for their LIVE one. #Ensemble 5 1 0 297
Article John Murray · Sep 25, 2017 1m read Minor gripe: "Youtube" should be "YouTube" On the Links area:"Youtube" should read "YouTube". #DC Feedback 1 1 0 249
Article John Murray · Aug 17, 2017 1m read How to determine if a class is mapped (e.g. from CACHELIB) Here's one way to determine if a class is mapped (i.e. it is in a package whose definitions come from a database other than the default code database for the current namespace): SAMPLES>w ##class(%Library.RoutineMgr).IsMapped("Cinema.Film.cls") 0 SAMPLES>w ##class(%Library.RoutineMgr).IsMapped("%iKnow.Objects.Source.cls") 1 SAMPLES> If you pass a by-ref second argument to IsMapped you can also discover what database the class definition is stored in: #Object Data Model #Caché 7 0 0 622