Skip to content

Commit 3865514

Browse files
authored
Merge pull request #166 from Ackee-Blockchain/ver/1.19.3
v1.19.3
2 parents 7d87667 + 7a27e36 commit 3865514

File tree

15 files changed

+601
-100
lines changed

15 files changed

+601
-100
lines changed

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,17 @@
11
# Changelog
22

3+
## [1.19.3]
4+
### Features
5+
- Implemented a new status bar hover window displaying current Wake and Anvil versions with compatibility status indicators
6+
7+
### Improvements
8+
- Show autosave toggle only when chain persistance is enabled
9+
- Added Anvil version tracking
10+
- Updated analytics with dependency version tracking information
11+
12+
### Fixes
13+
- Resolved race condition during chain initialization that prevented reliable creation of the default initial chain
14+
315
## [1.19.2]
416
### Fixes
517
- Fixed compilation issues caused by unreliable `remappings.txt` files in Foundry projects

external-dependencies.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"dependencies": {
3+
"wake": {
4+
"name": "eth-wake",
5+
"description": "Static analysis framework for Solidity smart contracts",
6+
"versions": {
7+
"minimum": "4.0.0",
8+
"recommended": "4.20.1",
9+
"maximum": "5.0.0"
10+
},
11+
"links": {
12+
"releases": "https://github.com/Ackee-Blockchain/wake/releases",
13+
"documentation": "https://ackee.xyz/wake/docs/latest/",
14+
"pypi": "https://pypi.org/project/eth-wake/"
15+
}
16+
},
17+
"anvil": {
18+
"name": "anvil",
19+
"description": "Local Ethereum node from Foundry toolkit",
20+
"versions": {
21+
"minimum": "1.4.0",
22+
"recommended": "1.4.0"
23+
}
24+
}
25+
}
26+
}

package-lock.json

Lines changed: 15 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "tools-for-solidity",
33
"displayName": "Solidity (Wake)",
4-
"version": "1.19.0",
4+
"version": "1.19.3",
55
"publisher": "AckeeBlockchain",
66
"description": "Remix-like development in VS Code with real-time security analysis, advanced testing, and local node deployment. Compile, debug, and audit fast with Wake's vulnerability detection even in your Hardhat & Foundry workflows.",
77
"keywords": [
@@ -1104,6 +1104,7 @@
11041104
"@types/node": "^16.18.97",
11051105
"@types/polka": "^0.5.7",
11061106
"@types/prettier": "^3.0.0",
1107+
"@types/semver": "^7.7.1",
11071108
"@types/tmp": "^0.2.6",
11081109
"@types/uuid": "^10.0.0",
11091110
"@types/vscode": "^1.75.0",
@@ -1146,6 +1147,7 @@
11461147
"pidtree": "^0.6.0",
11471148
"polka": "^0.5.2",
11481149
"prettier-plugin-solidity": "^1.4.2",
1150+
"semver": "^7.7.3",
11491151
"sirv": "^2.0.4",
11501152
"tar": "^7.4.0",
11511153
"tmp": "^0.2.3",

src/Analytics.ts

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import * as vscode from 'vscode';
22
import * as env from './env';
33
import appState from './sake/state/shared/AppState';
44
import { extensionState } from './sake/state/shared/ExtensionState';
5+
import { VersionStatus } from './installers/installerInterface';
56

67
let appInsights = require('applicationinsights');
78

@@ -25,6 +26,9 @@ export class Analytics {
2526
context: vscode.ExtensionContext | undefined;
2627
telemetryLogger: vscode.TelemetryLogger | undefined;
2728
wakeVersion: string | undefined;
29+
wakeVersionStatus: VersionStatus | undefined;
30+
anvilVersion: string | undefined;
31+
anvilVersionStatus: VersionStatus | undefined;
2832
correctPythonPath: boolean | undefined;
2933
correctSysPath: boolean | undefined;
3034
installation: string | undefined;
@@ -47,6 +51,9 @@ export class Analytics {
4751
this.context = context;
4852
this.telemetryLogger = vscode.env.createTelemetryLogger(new TelemetrySender());
4953
this.wakeVersion = undefined;
54+
this.wakeVersionStatus = undefined;
55+
this.anvilVersion = undefined;
56+
this.anvilVersionStatus = undefined;
5057
this.correctPythonPath = undefined;
5158
this.correctSysPath = undefined;
5259

@@ -59,6 +66,18 @@ export class Analytics {
5966
this.wakeVersion = version;
6067
}
6168

69+
public setWakeVersionStatus(status: VersionStatus) {
70+
this.wakeVersionStatus = status;
71+
}
72+
73+
public setAnvilVersion(version: string) {
74+
this.anvilVersion = version;
75+
}
76+
77+
public setAnvilVersionStatus(status: VersionStatus) {
78+
this.anvilVersionStatus = status;
79+
}
80+
6281
public setCorrectPythonPath(correct: boolean) {
6382
this.correctPythonPath = correct;
6483
}
@@ -90,7 +109,10 @@ export class Analytics {
90109
'common.os': process.platform.toString(),
91110
'common.nodeArch': process.arch,
92111
installation: this.installation,
93-
'wake.version': this.wakeVersion || 'unknown'
112+
'wake.version': this.wakeVersion || 'unknown',
113+
'wake.versionStatus': this.wakeVersionStatus || 'unknown',
114+
'anvil.version': this.anvilVersion || 'unknown',
115+
'anvil.versionStatus': this.anvilVersionStatus || 'unknown'
94116
});
95117
}
96118

@@ -110,6 +132,9 @@ export class Analytics {
110132
'common.nodeArch': process.arch,
111133
installation: this.installation,
112134
'wake.version': this.wakeVersion || 'unknown',
135+
'wake.versionStatus': this.wakeVersionStatus || 'unknown',
136+
'anvil.version': this.anvilVersion || 'unknown',
137+
'anvil.versionStatus': this.anvilVersionStatus || 'unknown',
113138
error: error.toString().slice(-8100),
114139
correctPythonPath: this.correctPythonPath,
115140
correctSysPath: this.correctSysPath

src/extension.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -711,12 +711,6 @@ function registerFormatter(context: vscode.ExtensionContext) {
711711
);
712712
}
713713

714-
function registerFormatter(context: vscode.ExtensionContext) {
715-
context.subscriptions.push(
716-
vscode.languages.registerDocumentFormattingEditProvider('solidity', new PrettierFormatter())
717-
);
718-
}
719-
720714
function watchFoundryRemappings() {
721715
const workspaces = vscode.workspace.workspaceFolders;
722716
if (workspaces === undefined || workspaces.length > 1) {

0 commit comments

Comments
 (0)