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

chore: bump version to v0.8.6 #600

Merged
merged 7 commits into from
Sep 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,8 @@ jobs:
run: npm run test:e2e

- name: Package the extension
env:
SOLIDITY_GA_SECRET: "dummy-value"
SOLIDITY_GOOGLE_TRACKING_ID: "dummy-value"
SOLIDITY_SENTRY_DSN: "dummy-value"
run: npm run package
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ VSCode extensions are distributed through a file format called `vsix` (really a
npm run package
```

This will clean the `/out` directories, then create bundled, minified versions of the client, and server files (index.js and helper.js) using [esbuild](https://esbuild.github.io/), and pull them together in the vsix file using `vsce`. The output vsix file will be in the project root.
This will clean the `/out` directories, then create bundled, minified versions of the client, and server files (index.js and helper.js) using [esbuild](https://esbuild.github.io/), and pull them together in the vsix file using `vsce`. The output vsix file will be in the `client` directory.

The `vsix` will contain all files in the repo at the time of packaging, but this is reduced down to only the key files via our [.vscodeignore](./.vscodeignore) file.

Expand Down
6 changes: 6 additions & 0 deletions client/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## 0.8.6 - 2024-09-16

### Added

- Turn on Slang features unconditionally ([598](https://github.com/NomicFoundation/hardhat-vscode/pull/598))

## 0.8.5 - 2024-08-15

### Added
Expand Down
2 changes: 1 addition & 1 deletion client/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"displayName": "Solidity",
"description": "Solidity and Hardhat support by the Hardhat team",
"license": "MIT",
"version": "0.8.5",
"version": "0.8.6",
"private": true,
"main": "./out/extension.js",
"module": "./out/extension.js",
Expand Down
47 changes: 15 additions & 32 deletions client/scripts/bundle.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,41 +38,24 @@ function ensureDirExists(dir) {
}

async function main() {
if (!process.env.SOLIDITY_GA_SECRET) {
console.warn(
"\n\n SOLIDITY_GA_SECRET not set, have you added a .env file based on the example?\n\n"
);
} else {
console.log(`Read SOLIDITY_GA_SECRET from .env file`);
}

if (!process.env.SOLIDITY_GOOGLE_TRACKING_ID) {
console.warn(
"\n\n SOLIDITY_GOOGLE_TRACKING_ID not set, have you added a .env file based on the example?\n\n"
);
} else {
console.log(`Read SOLIDITY_GOOGLE_TRACKING_ID from .env file`);
}
const definedConstants = {};

for (const key of [
"SOLIDITY_GA_SECRET",
"SOLIDITY_GOOGLE_TRACKING_ID",
"SOLIDITY_SENTRY_DSN",
]) {
const value = process.env[key];
if (!value || value === "") {
throw new Error(
`\n\n'${key}' not set, have you added an '.env' file based on 'env.example'?\n\n`
);
}

if (!process.env.SOLIDITY_SENTRY_DSN) {
console.warn(
"\n\n SOLIDITY_SENTRY_DSN not set, have you added a .env file based on the example?\n\n"
);
} else {
console.log(`Read SOLIDITY_SENTRY_DSN from .env file`);
definedConstants[`process.env.${key}`] = `"${value}"`;
console.log(`Read 'process.env.${key}' from '.env' file.`);
}

const definedConstants =
!process.env.SOLIDITY_GA_SECRET |
!process.env.SOLIDITY_GOOGLE_TRACKING_ID ||
!process.env.SOLIDITY_SENTRY_DSN
? {}
: {
"process.env.SOLIDITY_GA_SECRET": `"${process.env.SOLIDITY_GA_SECRET}"`,
"process.env.SOLIDITY_GOOGLE_TRACKING_ID": `"${process.env.SOLIDITY_GOOGLE_TRACKING_ID}"`,
"process.env.SOLIDITY_SENTRY_DSN": `"${process.env.SOLIDITY_SENTRY_DSN}"`,
};

// Ensure output directories exist
ensureDirExists(tmpDir);

Expand Down
4 changes: 2 additions & 2 deletions coc/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "@nomicfoundation/coc-solidity",
"description": "Solidity and Hardhat support for coc.nvim",
"license": "MIT",
"version": "0.8.5",
"version": "0.8.6",
"author": "Nomic Foundation",
"repository": {
"type": "git",
Expand All @@ -29,7 +29,7 @@
"clean": "rimraf out .nyc_output coverage *.tsbuildinfo *.log"
},
"dependencies": {
"@nomicfoundation/solidity-language-server": "0.8.5"
"@nomicfoundation/solidity-language-server": "0.8.6"
},
"devDependencies": {
"coc.nvim": "^0.0.80",
Expand Down
38 changes: 22 additions & 16 deletions docs/publish-extension.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,18 @@ To publish `hardhat-solidity` you need to do next steps:
5. Branch into a release branch named for the current date: `git checkout -b release/yyyy-mm-dd`
6. Update the version based on semver, ensure it is updated in:

- the client `./client/package.json`
- the language server package.json `./server/package.json`
- the coc extension package.json, both its version and its dep on the language server, at `./coc/package.json`
- The client package version in `./client/package.json`
- The language server package version in `./server/package.json`
- The coc extension package version in `./coc/package.json`
- Its `@nomicfoundation/solidity-language-server` dependency version.

7. Update the changelog in `./client/CHANGELOG.md` by adding a new entry for the new version based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
8. Commit the package version and changelog change as a version bump commit:

```git
chore: bump version to v0.x.x

Update the package version and changelog for the `0.x.x - yyyy-mm-dd`
release.
Update the package version and changelog for the `0.x.x - yyyy-mm-dd` release.
```

9. Push the release branch and open a pull request against `main` using the new changelog entry as the PR description
Expand All @@ -42,15 +42,16 @@ To publish `hardhat-solidity` you need to do next steps:
- windows
- linux (vscode running against docker)

13. Ensure that metrics are reported correctly in both Google Analytics and Sentry for the new version.
14. On a successful check, `rebase merge` the PR into `main` branch.
15. Switch to main branch and pull the latest changes
16. Git tag the version, `git tag -a v0.x.x -m "v0.x.x"` and push the tag `git push --follow-tags`
17. Publish the language server npm package, `cd ./server && npm publish`
18. Publish the coc extension, `cd ./coc && npm publish --non-interactive`
19. Upload the vsix file to the microsoft marketplace: `npx vsce publish -p $VSCE_TOKEN --packagePath client/hardhat-solidity-0.X.X.vsix`
20. Upload the vsix file to openvsx, `npx ovsx publish client/hardhat-solidity-0.X.X.vsix -p $OVSX_TOKEN`
21. Create a release on github off of the pushed tag
13. On a successful check, `rebase merge` the PR into `main` branch.
14. Switch to main branch and pull the latest changes
15. Git tag the version, `git tag -a v0.x.x -m "v0.x.x"` and push the tag `git push --follow-tags`
16. Publish the language server npm package, `cd ./server && npm publish`
17. Publish the coc extension, `cd ./coc && npm publish --non-interactive`
18. Upload the vsix file to the microsoft marketplace: `npx vsce publish -p $VSCE_TOKEN --packagePath client/hardhat-solidity-0.X.X.vsix`
- <https://marketplace.visualstudio.com/manage/publishers/nomicfoundation>
19. Upload the vsix file to openvsx, `npx ovsx publish client/hardhat-solidity-0.X.X.vsix -p $OVSX_TOKEN`
- <https://open-vsx.org/user-settings/extensions>
20. Create a release on github off of the pushed tag:

- use the added changelog section as the body of the release
- upload the vsix file as an asset.
Expand All @@ -62,8 +63,13 @@ To publish `hardhat-solidity` you need to do next steps:
---
```

22. Rebase `development` onto `main`, and force push back to github
23. Update the discord announcements channel
21. Rebase `development` onto `main`, and force push back to github
22. Update the discord announcements channel

- link to the release entry on github (i.e. `https://github.com/NomicFoundation/hardhat-vscode/releases/tag/v0.x.x`)
- give a few sentences of description of why users should be excited about this release

23. After 24 hours, to make sure users had time to update to the new release, ensure that metrics are reported correctly to:

- Google Analytics
- Sentry
2 changes: 1 addition & 1 deletion env.example
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
SOLIDITY_GA_SECRET=""
SOLIDITY_GOOGLE_TRACKING_ID=""
SOLIDITY_SENTRY_DSN="https://xxx.ingest.sentry.io/yyy"
SOLIDITY_SENTRY_DSN=""
4 changes: 2 additions & 2 deletions flags.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"documentSymbol": {
"percent": 0.2
"percent": 1
},

"semanticHighlighting": {
"percent": 0.2
"percent": 1
}
}
10 changes: 5 additions & 5 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion server/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "@nomicfoundation/solidity-language-server",
"description": "Solidity language server by Nomic Foundation",
"license": "MIT",
"version": "0.8.5",
"version": "0.8.6",
"author": "Nomic Foundation",
"repository": {
"type": "git",
Expand Down
45 changes: 14 additions & 31 deletions server/scripts/bundle.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,41 +22,24 @@ function ensureDirExists(dir) {
}

async function main() {
if (!process.env.SOLIDITY_GA_SECRET) {
console.warn(
"\n\n SOLIDITY_GA_SECRET not set, have you added a .env file based on the example?\n\n"
);
} else {
console.log(`Read SOLIDITY_GA_SECRET from .env file`);
}
const definedConstants = {};

if (!process.env.SOLIDITY_GOOGLE_TRACKING_ID) {
console.warn(
"\n\n SOLIDITY_GOOGLE_TRACKING_ID not set, have you added a .env file based on the example?\n\n"
);
} else {
console.log(`Read SOLIDITY_GOOGLE_TRACKING_ID from .env file`);
}
for (const key of [
"SOLIDITY_GA_SECRET",
"SOLIDITY_GOOGLE_TRACKING_ID",
"SOLIDITY_SENTRY_DSN",
]) {
const value = process.env[key];
if (!value || value === "") {
throw new Error(
`\n\n'${key}' not set, have you added an '.env' file based on 'env.example'?\n\n`
);
}

if (!process.env.SOLIDITY_SENTRY_DSN) {
console.warn(
"\n\n SOLIDITY_SENTRY_DSN not set, have you added a .env file based on the example?\n\n"
);
} else {
console.log(`Read SOLIDITY_SENTRY_DSN from .env file`);
definedConstants[`process.env.${key}`] = `"${value}"`;
console.log(`Read 'process.env.${key}' from '.env' file.`);
}

const definedConstants =
!process.env.SOLIDITY_GA_SECRET |
!process.env.SOLIDITY_GOOGLE_TRACKING_ID ||
!process.env.SOLIDITY_SENTRY_DSN
? {}
: {
"process.env.SOLIDITY_GA_SECRET": `"${process.env.SOLIDITY_GA_SECRET}"`,
"process.env.SOLIDITY_GOOGLE_TRACKING_ID": `"${process.env.SOLIDITY_GOOGLE_TRACKING_ID}"`,
"process.env.SOLIDITY_SENTRY_DSN": `"${process.env.SOLIDITY_SENTRY_DSN}"`,
};

// Ensure output directories exist
ensureDirExists(serverOutDir);
ensureDirExists(serverAntlrDir);
Expand Down
76 changes: 0 additions & 76 deletions server/src/services/initialization/featureFlags.ts

This file was deleted.

Loading
Loading