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

Add Settings Sync to the Azure Data Studio "gallery" #926

Closed
tillig opened this issue Jun 25, 2019 · 14 comments
Closed

Add Settings Sync to the Azure Data Studio "gallery" #926

tillig opened this issue Jun 25, 2019 · 14 comments

Comments

@tillig
Copy link

tillig commented Jun 25, 2019

💡 Is your feature request related to a problem? Please describe.

Re: #892, #668 - in order to show up as an extension for Azure Data Studio, the publishing documentation mentions it needs to be added to this JSON file.

It appears this requires the VSIX and other artifacts for the plugin to be hosted, which can be done on GitHub, however, that sort of implies there's a release posted for it. I don't see that available for the 3.3.x releases so far.

💡 Describe the solution you'd like

  • Releases in GitHub for the extension so the artifacts can be referenced (e.g., can't be a zip file)
  • PR (or the info so someone else can create a PR) for the Azure Data Studio JSON file "gallery."

💡 Additional context

It's unclear if this indicates some level of ongoing maintenance, like every time a release of the extension is published the JSON needs to be updated, however, if there is a release with the appropriate files in this GitHub repo, it'd be easy enough for the community to submit pull requests to the Azure Data Studio JSON file and help deal with that.

@shanalikhan
Copy link
Owner

Latest release tag has been added.

PR is welcome for it.

@tillig
Copy link
Author

tillig commented Jun 26, 2019

Totally happy to do that, no problem. However, I'm not sure I have all the data, so let me verify before I do.

Here's an existing plugin in their JSON:

{
  "extensionId": "10",
  "extensionName": "agent",
  "displayName": "SQL Server Agent",
  "shortDescription": "Manage and troubleshoot SQL Agent jobs",
  "publisher": {
    "displayName": "Microsoft",
    "publisherId": "Microsoft",
    "publisherName": "Microsoft"
  },
  "versions": [{
    "version": "0.40.0",
    "lastUpdated": "5/31/2019",
    "assetUri": "",
    "fallbackAssetUri": "fallbackAssetUri",
    "files": [{
        "assetType": "Microsoft.VisualStudio.Services.VSIXPackage",
        "source": "https://sqlopsextensions.blob.core.windows.net/extensions/agent/agent-0.40.0.vsix"
      },
      {
        "assetType": "Microsoft.VisualStudio.Services.Icons.Default",
        "source": "https://raw.githubusercontent.com/Microsoft/vscode-mssql/master/images/sqlserver.png"
      },
      {
        "assetType": "Microsoft.VisualStudio.Services.Content.Details",
        "source": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/master/extensions/agent/README.md"
      },
      {
        "assetType": "Microsoft.VisualStudio.Code.Manifest",
        "source": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/master/extensions/agent/package.json"
      },
      {
        "assetType": "Microsoft.VisualStudio.Services.Content.License",
        "source": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/master/LICENSE.txt"
      }
    ],
    "properties": [{
        "key": "Microsoft.VisualStudio.Code.ExtensionDependencies",
        "value": ""
      },
      {
        "key": "Microsoft.VisualStudio.Code.Engine",
        "value": ">=0.32.1"
      },
      {
        "key": "Microsoft.AzDataEngine",
        "value": ">=1.8.0"
      },
      {
        "key": "Microsoft.VisualStudio.Services.Links.Source",
        "value": "https://github.com/Microsoft/azuredatastudio"
      }
    ]
  }],
  "statistics": [],
  "flags": "preview"
}

For settings sync, here are my guesses. In particular...

  • Double-check the publisher items and the VS Code engine dependency.
  • Do you want the 'preview' flag on the extension? It's an optional flag (at the bottom of the JSON).
  • The extension ID at the top (42) is just a manually auto-incremented integer. The last one in their JSON right now is 41, so this would be 42.
{
  "extensionId": "42",
  "extensionName": "code-settings-sync",
  "displayName": "Settings Sync",
  "shortDescription": "Synchronize Settings, Snippets, Themes, File Icons, Launch, Keybindings, Workspaces and Extensions Across Multiple Machines Using GitHub Gist.",
  "publisher": {
    "displayName": "Shan Khan",
    "publisherId": "Shan",
    "publisherName": "Shan"
  },
  "versions": [{
    "version": "3.3.1",
    "lastUpdated": "6/26/2019",
    "assetUri": "",
    "fallbackAssetUri": "fallbackAssetUri",
    "files": [{
        "assetType": "Microsoft.VisualStudio.Services.VSIXPackage",
        "source": "https://github.com/shanalikhan/code-settings-sync/releases/download/v3.3.1/code-settings-sync-3.3.1.vsix"
      },
      {
        "assetType": "Microsoft.SQLOps.DownloadPage",
        "source": "https://github.com/shanalikhan/code-settings-sync/releases/tag/v3.3.1"
      },
      {
        "assetType": "Microsoft.VisualStudio.Services.Icons.Default",
        "source": "https://raw.githubusercontent.com/shanalikhan/code-settings-sync/master/images/cloud.png"
      },
      {
        "assetType": "Microsoft.VisualStudio.Services.Content.Details",
        "source": "https://raw.githubusercontent.com/shanalikhan/code-settings-sync/master/README.md"
      },
      {
        "assetType": "Microsoft.VisualStudio.Code.Manifest",
        "source": "https://raw.githubusercontent.com/shanalikhan/code-settings-sync/master/package.json"
      },
      {
        "assetType": "Microsoft.VisualStudio.Services.Content.License",
        "source": "https://raw.githubusercontent.com/shanalikhan/code-settings-sync/master/LICENSE"
      }
    ],
    "properties": [{
        "key": "Microsoft.VisualStudio.Code.ExtensionDependencies",
        "value": ""
      },
      {
        "key": "Microsoft.VisualStudio.Code.Engine",
        "value": ">=1.35.1"
      },
      {
        "key": "Microsoft.VisualStudio.Services.Links.Source",
        "value": "https://github.com/shanalikhan/code-settings-sync"
      }
    ]
  }],
  "statistics": [],
  "flags": "preview"
}

If these appear correct, I'll create a PR for their site and move forward. Thanks!

@shanalikhan
Copy link
Owner

shanalikhan commented Jun 26, 2019

Double-check the publisher items and the VS Code engine dependency.

Yes, thats looks good.

Do you want the 'preview' flag on the extension? It's an optional flag (at the bottom of the JSON).

Yes, let make as preview for this version, If it goes well, we will remove this from next builds.

If these appear correct, I'll create a PR for their site and move forward

Once you create the PR, let me know or provide some steps so I can create more PR for upcoming versions for Settings Sync.

@tillig
Copy link
Author

tillig commented Jun 26, 2019

Here is the PR for the Azure Data Studio gallery JSON file.

The instructions for how to publish new extensions and updates are pretty simple and shown in the docs here. In the JSON I see there's a "versions" node with the info for getting a particular version of the extension; it appears you'd just add another version to that array of versions. Copy/paste the existing one, update the version and download location, that's it.

I don't see any extensions in there with multiple versions, though... so I guess we'll see. :)

@shanalikhan
Copy link
Owner

Okay, Thanks.
I think we can close this issue.

@johndpalm
Copy link

I don't see this extension in the gallery and I get an error when I try to install from VSIX.

Unable to install version '3.4.1' of extension 'shan.code-settings-sync' as it is not compatible with Azure Data Studio '1.9.0'.

Should I open a new issue?

@tillig
Copy link
Author

tillig commented Aug 8, 2019

The PR to put it in the gallery keeps getting ignored. They add other extensions and then it causes a conflict with the PR, so I've had to update it. Looks like it's in conflict again. The folks over in the ADS project haven't commented or anything on it.

I can't vouch for the compatibility message.

@shanalikhan
Copy link
Owner

Looks like it's in conflict again.

@tillig can you update the PR and resolve the conflict over there, i have mentioned the reviewer over there. If they find time to review PR, i don't want to let them leave due to conflicts.

@tillig
Copy link
Author

tillig commented Aug 8, 2019

Already fixed.

@bernardoadc
Copy link

Not showing for me

https://imgur.com/a/FuWqLnw
Extension not found

@tillig
Copy link
Author

tillig commented Feb 27, 2020

@bernardoadc you need to complain to the Azure Data Studio folks who still haven't accepted the pull request. There's nothing to be done about it from this repo/project.

@tillig
Copy link
Author

tillig commented Jun 24, 2020

They've finally acknowledged the PR and I've updated it (again). I've heard they're actually going to merge it this time, so... 🤞

@tillig
Copy link
Author

tillig commented Jun 24, 2020

They just accepted and merged the PR. Apparently there's a thing with Azure Data Studio where they won't let you just "install the extension directly" like you can in VS Code. You have to search the extension gallery, find the extension, go download the VSIX yourself, then use the extension panel to install from VSIX. I'm unclear on the details of why, just that's what they said in the PR.

BUT! It's been accepted. Unclear how long it takes to propagate through and show up in the list of extensions.

@bernardoadc
Copy link

Showed up in the list for me. Altough is like you said, you have to click in install, download the release file and install from VSIX. Don't think thats a problem, but it is weird that asked for confirmation 'cause its a third party extension (some folks maybe not like that).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants