Skip to content

Fix automatic refresh of server-side documents after save and compile#1678

Merged
isc-bsaviano merged 2 commits intointersystems-community:masterfrom
isc-bsaviano:fix-1675
Dec 2, 2025
Merged

Fix automatic refresh of server-side documents after save and compile#1678
isc-bsaviano merged 2 commits intointersystems-community:masterfrom
isc-bsaviano:fix-1675

Conversation

@isc-bsaviano
Copy link
Copy Markdown
Contributor

This PR fixes #1675 by moving the UI refresh code to an onDidSaveTextDocument event handler. This resolves the timing issue because the handler is always called after the save and compile is complete.

*/
public needsUpdate(uriString: string): boolean {
if (this._needsUpdate.has(uriString)) {
this._needsUpdate.delete(uriString);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if deletion from the _needsUpdate private Set should be done by a different method, As things stand we can't discover if a document needs to be updated without also implying we've updated it.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did this intentionally because I wanted the flag to always be cleared after it was checked the first time. It should only be checked once immediately after the write, and should be cleared even if the update failed somehow. I should harden this to always clear the _needsUpdate entry for the URI before any writeFile call so old values that are never checked can't survive between saves.

@isc-bsaviano isc-bsaviano merged commit 55edbdb into intersystems-community:master Dec 2, 2025
5 checks passed
@isc-bsaviano isc-bsaviano deleted the fix-1675 branch December 2, 2025 14:51
ricxJr added a commit to consistem/vscode-objectscript that referenced this pull request Jan 12, 2026
* Prevent users from accidentally opening multiple copies of the same class or routine (intersystems-community#1666)

* Fix opening server-side generated INT routines (intersystems-community#1668)

* Fix running unit tests from a root test item (intersystems-community#1669)

* Bump js-yaml from 4.1.0 to 4.1.1 (intersystems-community#1670)

Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](nodeca/js-yaml@4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump glob from 11.0.1 to 11.1.0 (intersystems-community#1673)

Bumps [glob](https://github.com/isaacs/node-glob) from 11.0.1 to 11.1.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](isaacs/node-glob@v11.0.1...v11.1.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 11.1.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix automatic refresh of server-side documents after save and compile (intersystems-community#1678)

* Fix `Show Plan` for IRIS 2026.1+ (intersystems-community#1679)

* Insert file stub snippet when creating a new class or routine using client-side editing (intersystems-community#1681)

* chore: `npm audit fix` (intersystems-community#1682)

* Trigger server-side source control `OpenedDocument` UserAction after a project is modified (intersystems-community#1685)

* Remove barely used configuration settings (intersystems-community#1683)

* Prepare 3.4.0 release (intersystems-community#1692)

* auto bump version with release

* Add `Func` suffix to `Copy Invocation` result for Queries (intersystems-community#1695)

* Fix extension activation when clicking on InterSystems view container in an empty workspace folder (intersystems-community#1694)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Brett Saviano <bsaviano@intersystems.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Murray <johnm@georgejames.com>
Co-authored-by: ProjectBot <bot@users.noreply.github.com>
LeoAnders pushed a commit to consistem/vscode-objectscript that referenced this pull request Feb 17, 2026
* Prevent users from accidentally opening multiple copies of the same class or routine (intersystems-community#1666)

* Fix opening server-side generated INT routines (intersystems-community#1668)

* Fix running unit tests from a root test item (intersystems-community#1669)

* Bump js-yaml from 4.1.0 to 4.1.1 (intersystems-community#1670)

Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](nodeca/js-yaml@4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump glob from 11.0.1 to 11.1.0 (intersystems-community#1673)

Bumps [glob](https://github.com/isaacs/node-glob) from 11.0.1 to 11.1.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](isaacs/node-glob@v11.0.1...v11.1.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 11.1.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix automatic refresh of server-side documents after save and compile (intersystems-community#1678)

* Fix `Show Plan` for IRIS 2026.1+ (intersystems-community#1679)

* Insert file stub snippet when creating a new class or routine using client-side editing (intersystems-community#1681)

* chore: `npm audit fix` (intersystems-community#1682)

* Trigger server-side source control `OpenedDocument` UserAction after a project is modified (intersystems-community#1685)

* Remove barely used configuration settings (intersystems-community#1683)

* Prepare 3.4.0 release (intersystems-community#1692)

* auto bump version with release

* Add `Func` suffix to `Copy Invocation` result for Queries (intersystems-community#1695)

* Fix extension activation when clicking on InterSystems view container in an empty workspace folder (intersystems-community#1694)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Brett Saviano <bsaviano@intersystems.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Murray <johnm@georgejames.com>
Co-authored-by: ProjectBot <bot@users.noreply.github.com>
LeoAnders added a commit to consistem/vscode-objectscript that referenced this pull request Feb 17, 2026
…am (#94)

* Prevent users from accidentally opening multiple copies of the same class or routine (intersystems-community#1666)

* Fix opening server-side generated INT routines (intersystems-community#1668)

* Fix running unit tests from a root test item (intersystems-community#1669)

* Bump js-yaml from 4.1.0 to 4.1.1 (intersystems-community#1670)

Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](nodeca/js-yaml@4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump glob from 11.0.1 to 11.1.0 (intersystems-community#1673)

Bumps [glob](https://github.com/isaacs/node-glob) from 11.0.1 to 11.1.0.
- [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md)
- [Commits](isaacs/node-glob@v11.0.1...v11.1.0)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 11.1.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix automatic refresh of server-side documents after save and compile (intersystems-community#1678)

* Fix `Show Plan` for IRIS 2026.1+ (intersystems-community#1679)

* Insert file stub snippet when creating a new class or routine using client-side editing (intersystems-community#1681)

* chore: `npm audit fix` (intersystems-community#1682)

* Trigger server-side source control `OpenedDocument` UserAction after a project is modified (intersystems-community#1685)

* Remove barely used configuration settings (intersystems-community#1683)

* Prepare 3.4.0 release (intersystems-community#1692)

* auto bump version with release

* Add `Func` suffix to `Copy Invocation` result for Queries (intersystems-community#1695)

* Fix extension activation when clicking on InterSystems view container in an empty workspace folder (intersystems-community#1694)

* Update contributing guidelines (intersystems-community#1700)

* Remove UI component dependency from REST debugging Webview (intersystems-community#1702)

* Bump @isaacs/brace-expansion from 5.0.0 to 5.0.1 (intersystems-community#1708)

Bumps @isaacs/brace-expansion from 5.0.0 to 5.0.1.

---
updated-dependencies:
- dependency-name: "@isaacs/brace-expansion"
  dependency-version: 5.0.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Integrate new BPL Editor (intersystems-community#1699)

* Adopt new VS Code APIs to improve QuickPicks (intersystems-community#1709)

* Support deleting folders (intersystems-community#1705)

Fix intersystems-community#1638 and improve maintainability

---------

Co-authored-by: klu <kc.lu@intersystems.com>

* Fix mapping of client-side DFI file to its document name (intersystems-community#1711)

* Move command to export Project contents to Command Palette (intersystems-community#1707)

* Bump webpack from 5.98.0 to 5.105.0 (intersystems-community#1712)

Bumps [webpack](https://github.com/webpack/webpack) from 5.98.0 to 5.105.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Changelog](https://github.com/webpack/webpack/blob/main/CHANGELOG.md)
- [Commits](webpack/webpack@v5.98.0...v5.105.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.105.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Remove barely used commands (intersystems-community#1710)

* Bump axios from 1.13.2 to 1.13.5 (intersystems-community#1714)

Bumps [axios](https://github.com/axios/axios) from 1.13.2 to 1.13.5.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](axios/axios@v1.13.2...v1.13.5)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.13.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Open all web links in Integrated Browser (intersystems-community#1713)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Brett Saviano <bsaviano@intersystems.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Murray <johnm@georgejames.com>
Co-authored-by: ProjectBot <bot@users.noreply.github.com>
Co-authored-by: Kuang-Chen (KC) Lu <klu@intersystems.com>
Co-authored-by: klu <kc.lu@intersystems.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Saving & Compiling is not refreshing the class in the editor

2 participants