John Murray · Jul 23, 2021 go to post

That setting affects how the ObjectScript Explorer behaves. That's the tree you get if there's an InterSystems logo on your Activity Bar and you click on it. It's the tree whose primary purpose is to let you export server code into files on your workstation that you then edit locally, probably add to a Git repo, and import to your server to run and debug it.

When you select a class or routine in that tree, and it only exists on the server (i.e. it isn't one that you have already exported locally), then the above setting dictates whether the code is opened read-only or editable.

John Murray · Jul 6, 2021 go to post

IMO storing a password in plaintext like this should only be used as a last resort, or when the password is the default one for a built-in username. In all other cases I recommend using Server Manager's ability to store the password in your workstation's keychain.

John Murray · Jun 22, 2021 go to post

If you set up a server-side-editing workspace accessing a namespace for which your class is the source control class, you should see these buttons at the top of an open class or routine:

Also these entries on the document's context menu:

Each will open a quickpick top-centre of your window. The "Server Source Control..." one will show menuitems from the %SourceMenu and %SourceContext menus in your XData block. The "Server Command Menu..." will show menuitems from all other menus in that block.

John Murray · Jun 9, 2021 go to post

No, nothing changed. When the "Choose Server and Namespace" button appears in the Explorer view (the VS Code Explorer, not to be confused with the ObjectScript Explorer) it's because you don't have a workspace open.

After clicking that and working through the input prompts you now have an untitled (i.e. unsaved) workspace consisting of a single isfs-type root folder.

John Murray · Jun 4, 2021 go to post

When you created the new file in the Explorer tree and named it (for example) foo.mac you should see a new file tab open with a first line like this:

I'm guessing you deleted or replaced that first line. Don't do that. Rather, start coding your routine at line 2. The first line is essential and should not normally be touched.

John Murray · Apr 28, 2021 go to post

Please confirm your exact $ZVERSION string. From a Terminal session this will show it:

write $ZVERSION
John Murray · Apr 26, 2021 go to post

I feel honoured that Server Manager 2.0 achieved first place in both categories. Building good tools for developers has been a major part of my professional life for nearly thirty years, so I am pleased this one is proving popular.

Thank you to everyone who voted for me, and to my employer George James Software for allowing me to work on this during office hours. Congratulations to Lorenzo, Henrique and José for their successes. There were some really great entries in the contest, so take a look at them if you haven’t already.

John Murray · Apr 22, 2021 go to post

Maintenance release 2.0.2 is now on Marketplace, so your VS Code can easily update to it. Here's what it contains:

  • Support Alt / Option modifier on Edit and View buttons to add workspace folder for server-side web application files.
  • Add newly defined server to the 'Recent' list.
  • Handle repeated use of the same Edit or View button better.
  • Notify user if ObjectScript extension is missing.
  • Add more information to README.

Thanks for all the votes this entry has received so far.

John Murray · Apr 16, 2021 go to post

Sounds like you are using the client-side editing paradigm. As Dmitry says, unless you haven't installed Language Server it will be LS that initially handles your "Go to Definition" request. But I think LS then calls an API entrypoint named serverDocumentUriForUri in the main ObjectScript extension (OS) to find out where the target document should be fetched from. As the API name indicates, this returns a uri (a document reference) that always fetches code from the server. And since you are using the client-side editing paradigm the fetched code cannot be edited.

Please open an issue on the repo at https://github.com/intersystems-community/vscode-objectscript/issues where it can be tracked and managed better than in this DC post.

John Murray · Feb 24, 2021 go to post

Are some classes in a package that is mapped to a different database that you don't have WRITE permission on?

John Murray · Feb 4, 2021 go to post

If the BE guys are currently all working on the same copy of the codebase in a shared namespace on the production server, I think it will be an easier transition if they adopt server-centric source control such as Deltanji from my employer George James Software. They could start off by putting the production namespace under source control, then evolve to an architecture where development happens in a different shared namespace (could be on the same server, or on a different server), or separate namespaces for each developer, feeding an integration namespace where testing happens. Deltanji is very flexible and configurable, plus the configuration can be changed as the team's needs change. It integrates with Studio and VS Code editing tools.

Evaluation copies of Deltanji are available, and we're happy to set up PoCs for development organizations who are interested in trying it out for themselves. We can put people in touch with existing users, and some of those users might post a response on this thread too.

John Murray
Senior Product Engineer
George James Software
https://georgejames.com

John Murray · Jan 27, 2021 go to post

@Marcel den Ouden please make sure the things you miss have already been reported. And if they haven't, open a new issue for them. One item per issue please, unless items are very closely related. "Maintain social distancing" wink
 

John Murray · Jan 27, 2021 go to post

Please give us more details of your question. If it is hard to explain, maybe paste a screenshot that you have drawn on.

John Murray · Jan 27, 2021 go to post

AFAIK the InterSystems ObjectScript extension for VS Code doesn't yet implement a convenient way of overriding an inherited method or property. I suggest you use VS Code's 'Report Issue' option from the Help menu to file a Feature Request on the extension. That dialog is a convenient way to route your request to the correct repo.

John Murray · Jan 4, 2021 go to post

Is Git a mandatory requirement for you? If not, did you consider our Deltanji product? Your source code gets managed within the environments it executes in, with no need for export/import to files nor for a separate build/deploy toolchain. Deltanji is fully supported on Cache 2018 and Studio, as well as on InterSystems IRIS. It's also well integrated with VS Code.

John Murray
Senior Product Engineer
George James Software
https://georgejames.com