Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to save CSP XSL files via docker #886

Closed
mvhenderson opened this issue Mar 1, 2022 · 9 comments · Fixed by #887
Closed

Unable to save CSP XSL files via docker #886

mvhenderson opened this issue Mar 1, 2022 · 9 comments · Fixed by #887
Assignees
Labels
bug Something isn't working

Comments

@mvhenderson
Copy link
Contributor

All of my projects that use the /csp/xslt application can no longer make changes to the XSL files, instead returning the following error ERROR #16006: Document 'test.xsl' name is invalid. This was working a few weeks ago - did something change recently?

VSCode: Version: 1.64.2
Docker: 20.10.12
ObjectScript extension: v1.4.3
LanguageServer extension: v1.2.9
ServerManager extension: v2.0.7

Steps to reproduce:

  1. Save the attached docker-compose into a clean directory
  2. Create subdirectory named durable then start it up with docker-compose up -d
  3. reset super users and point /csp/xslt to HSCUSTOM
docker-compose exec iris iris session iris

zn "%SYS"
Do ##class(Security.Users).UnExpireUserPasswords("*")
zn "HSCUSTOM"
write ##class(HS.Util.SystemAPI).Invoke("AddCSPXSLTapplication", "%")
write ##class(HS.Util.SystemAPI).Invoke("UpdateCSPApp", "HSCUSTOM", "/csp/xslt", $LB($LB("NameSpace","HSCUSTOM")))
  1. Open VSCode to your folder and connect to the docker instance (sample folder settings.json attached)
  2. Use the ObjectScript explorer to export an existing /csp/xslt XSL file then try to edit it from the src folder; it fails
  3. Create a new XSL file (eg ./src/csp/xslt/text.xsl) then try to edit it; it fails

docker-compose.yml

version: "2.2"
services:
  iris:
    container_name: test-iris-xsl
    init: true
    image: store/intersystems/irishealth-community:2021.2.0.649.0
    volumes:
      - .:/iris
    environment:
     - ISC_DATA_DIRECTORY=/iris/durable
    ports:
     - 9092:52773

.vscode/settions.json

{
    "objectscript.conn": {
      "active": true,
      "host": "localhost",
      "port": 9092,
      "username": "_SYSTEM",
      "password": "SYS",
      "ns": "HSCUSTOM",
      "docker-compose": {
        "service": "iris",
        "internalPort": 52773,
        "file": "docker-compose.yml"
      }
    },
    "objectscript.overwriteServerChanges": true
  }
@isc-bsaviano
Copy link
Contributor

@mvhenderson What was the last extension and IRIS version that this worked with? That error is coming from the server

@mvhenderson
Copy link
Contributor Author

@isc-bsaviano by server I assume you mean language-server? I'll try downgrading to earlier versions and test it out.

@isc-bsaviano
Copy link
Contributor

Sorry, I meant it's coming from IRIS

@mvhenderson
Copy link
Contributor Author

Confirmed this was working in 1.4.1 and broken in 1.4.2.

Note: I had to chmod -R a+rw /usr/irissys/csp/xslt to fix permissions - I need to research, this might be due to recent lockdown changes to IRIS containers.

@isc-bsaviano
Copy link
Contributor

@mvhenderson Thanks for confirming. Does this happen with any local CSP file or just xsl files?

@mvhenderson
Copy link
Contributor Author

Any local CSP file. For example, just tried on v1.4.2 to add a file for a fresh vanilla namespace (no interoperability) and get this error: ERROR #16006: Document 'index.js' name is invalid

@isc-bsaviano isc-bsaviano self-assigned this Mar 1, 2022
@isc-bsaviano isc-bsaviano added the bug Something isn't working label Mar 1, 2022
@isc-bsaviano
Copy link
Contributor

@mvhenderson I think I know where the regression is, I will look at this now.

@isc-bsaviano
Copy link
Contributor

isc-bsaviano commented Mar 1, 2022

@mvhenderson Can you download the dev vsix found here and let me know if it fixes your issue?

@mvhenderson
Copy link
Contributor Author

yes that works

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants