GitHub > Linking Issues to a Release - github

I'm currently using GitHub Milestones, to track Issues that I want included in a Release...
Now, that I want to push a new Release, I can't see anyway of linking Issues to a Release (or for that matter, Milestones to a Release).
I was expecting that I could use the GitHub's Releases as a Changelog, so that users could easily see what Issues/Enhancements were fixed/included in a release.
e.g. Version-1.123 contained fixes for Issues #111, #222 and #333.
Does this functionality exist?
N.B.
I couldn't find anything under the GitHub Developer API
Also, this is the first Release.

You can have markdown in the body field of the request.
POST /repos/:owner/:repo/releases
{
"tag_name": "v1.0.0",
"target_commitish": "master",
"name": "v1.0.0",
"body": "* Fixed #1 \r\n * Fixed #2 ",
"draft": false,
"prerelease": false
}
Will look like:
I guess that's what you want.

Related

How to link to an issue on GitHub, including the issue status

I'm looking for the markdown syntax to do this:
I'd like to create a nice link that includes the issue status (here, it's the green symbol). I could not find this documented anywhere and my Google skills are failing me. It seems to be a highly guarded secret for the high priests to use.
The doc says:
If you reference an issue, pull request, or discussion in a list, the reference will unfurl to show the title and state instead. For more information about task lists, see "About task lists."
For example:
- #1
or
- [ ] #2
are both OK.

GitHub Releases Download URL Redirect Doesn't Seem to Work

I've checked out this here on Stack Overflow, but following what's outlined there, I'm still getting "not found" on pages that I know have releases.
For example, if I want to download the latest URL for something like https://github.com/storybookjs/storybook/releases, for a number of repositories dynamically, why do I get a 404 when I use https://github.com/storybookjs/storybook/releases/latest/download/package.zip
What am I missing here?
Thanks in advance!
It might be easier to use GitHub's API for that, as documented for releases. The URL format is
https://api.github.com/repos/{owner}/{repo}/releases
For example, https://api.github.com/repos/symfony/symfony/releases lists all releases for a PHP package. The JSON node zipball_url contains a link to a ZIP package for each release.

AzureDevOps API CodeSearch is returning old file (that has been renamed)

I have a service that request all our repositories then for each repository, i'm getting all the csproj and vbproj in the repository.
My problem is that it return 2 versions of the same file!
Ex:
A project has been created that way => MYPROJECT.csproj and commited,
then renamed to MyProject.csproj and commited.
But the CodeSearch Api is returning both file!
How can i know which one is the right one ?
Documentation doesn't seems to mention it or I'm not understanding which properties I need to send or which properties is telling me that it's an old file.
Documentation
https://learn.microsoft.com/en-us/rest/api/azure/devops/search/code%20search%20results/fetch%20code%20search%20results?view=azure-devops-rest-5.1
URL
https://almsearch.dev.azure.com/MyOrganisation/MyProject/_apis/search/codesearchresults?api-version=5.1-preview.1
BODY
{
'searchText': 'ext:csproj',
'includeFacets': false,
'$skip': 0,
'$top': 1000,
'filters': {
'Project': ['MyProject']
},
'$orderBy': [{
'field': 'filename',
'sortOrder': 'ASC'
}]
}
When I do the same research directly on DevOps, I see this flag over the old file
So there must be a way to tell if it's an old file!
How can I get it ?
I could reproduce this issue on my side. In Tfvc Repo, the code search result will return all versions of the file.
Based on my test, the difference between them is versions -> changeid.
Generally changeid is incremental, so you could judge the old and new versions according to the value of changeid. This is a workaround.
On the other hand, I will help you to report this issue on our Developer Community forum, and after confirmation by our engineer, this issue will be reported to the product team. The product team would provide the updates if they view it.
I got the same message (I renamed file using git mv command):
I got this message after committing renamed file and when I clicked on search button. However, when I refreshed page, warning goes away:
For me it looks like search on web based on some kind of locally cached indexes, but it is aware that some file was changed. Thus you won't be able to achieve this via REST API call.

What are Visual Studio Code experiments?

Today I was surprised to find an "Enable Experiments" option under VSCode's Workbench settings, turned on by default.
The setting's description is "Fetches experiments to run from a Microsoft online service" which seems rather vague to me. I tried googling this but didn't find any clear answers.
So, does anybody know what those "experiments" are and if it would probably be better to turn this off?
This is one of the case where using open-source software is a good idea. Because the source code of visual studio code is published in https://github.com/Microsoft/vscode. We could try to search in where the code would be used.
First, we could try to search the string Enable Experiments. And see, to which action the option is tied to. From there, I see that, the file src/vs/workbench/contrib/experiments/node/experimentService.ts is using it. Specifically, when trying to load an experiment in line 173
if (!product.experimentsUrl || this.configurationService.getValue('workbench.enableExperiments') === false) {
We see that, the code would check for "experiment URL". this could be seen in product.json which #Joey mentioned in the comment. In my case, the text looks like this.
"experimentsUrl": "https://az764295.vo.msecnd.net/experiments/vscode-experiments.json",
From there, we could see the content of the JSON file by making a GET request to that URL. And, it returns this (at least, at the time I make the request)
{
"experiments": [
{
"id": "cdias.searchForAzure",
"enabled": true,
"action": {
"type": "ExtensionSearchResults",
"properties": {
"searchText": "azure",
"preferredResults": [
"ms-vscode.vscode-node-azure-pack",
"ms-azuretools.vscode-azureappservice",
"ms-azuretools.vscode-azurestorage",
"ms-azuretools.vscode-cosmosdb"
]
}
}
}
]
}
Based on the response, I could see that, it try to alter my search result if I search using "azure" key word. Which I tried, and the search result shows the 4 items there on top of the result search.
As to whether to disable it or not. On safe side (if you don't want for it to alter your experience using vscode) I think you would want to disable it. But, I don't think microsoft would do something crazy.
I just noticed this one and was curious about it as well. A search through the VS Code release notes finds one reference to it in July 2018. workbench.enableExperiments is listed as one of the settings for VS Code's "Offline mode": https://code.visualstudio.com/updates/v1_26#_offline-mode
The description of offline mode suggests that this settings is for "A/B experiments":
To support this offline mode, we have added new settings to turn off features such as automatic extension update checking, querying settings for A/B experiments, and fetching of online data for auto-completions.
As mentioned by others, the source code for VS Code shows this setting being used in experimentService.ts: https://github.com/microsoft/vscode/blob/93bb67d7efb669b4d1a7e40cd299bfefe5e85574/src/vs/workbench/contrib/experiments/common/experimentService.ts
If you look at the code of experimentService.ts, the stuff it's fetching seems to be related to extension recommendations, notifications about new features, and similar things. So it looks like the experiment service is for fetching data to do A/B testing of feature and extension recommendations to users.

Get number of github downloads

I'm trying to figure out how to use the Github API to get the number of downloads of a release. I have a test repo called polymer-reptation under my username benlindsay with one tag, 1.0. A Github Developer page here says that to get the information on a single release I can use the command GET /repos/:owner/:repo/releases/:id. I can't figure out how to use that command though. I tried things like curl --user "benlindsay" https://api.github.com/repos/:benlindsay/:polymer-reptation/releases/:1.0 on the command line, the same thing without the colons, and typing similar things into hurl.it. They all just give me
{
"message": "Not Found",
"documentation_url": "https://developer.github.com/v3"
}
at best. Can someone show me to how to use this feature of the API? (an easier way to track downloads would be helpful as well if one exists)
You should use it without the colons, they are there to indicate stuff you should replace.
However, Listing all releases at https://api.github.com/repos/benlindsay/polymer-reptation/releases Returns an empty array... No releases My guess is the API hasn't caught up yet. If this doesn't resolve itself shortly, contact GitHub.