Skip to content

Commit a4446d3

Browse files
authored
Add support for minimumConnectVersion specification (#73)
* Add support for manifest minimumConnectVersion * Add linting for minimumConnectVersion * Add contributing section for minimumConnectVersion * Update extensions list with minimumConnectVersion * Update all manifest extension sections
1 parent 64db026 commit a4446d3

File tree

16 files changed

+69
-17
lines changed

16 files changed

+69
-17
lines changed

.github/actions/lint-extension/action.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ runs:
3030
elif (.extension.title | type) != "string" then error("Missing extension.title")
3131
elif (.extension.description | type) != "string" then error("Missing extension.description")
3232
elif (.extension.homepage | type) != "string" then error("Missing extension.homepage")
33+
elif (.extension.minimumConnectVersion | type) != "string" then error("Missing extension.minimumConnectVersion")
3334
elif (.extension.version | type) != "string" then error("Missing extension.version")
3435
else . end
3536
' ./extensions/${{ inputs.extension-name }}/manifest.json

CONTRIBUTING.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ to the `manifest.json`:
4141
"description": "A lovely, detailed description of the content.",
4242
"homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/my-content-name",
4343
"tags": [],
44+
"minimumConnectVersion": "2025.04.0",
4445
"version": "0.0.0"
4546
}
4647
}
@@ -80,6 +81,18 @@ Pull requests can add new tags, but ensure that the tag follows the patterns
8081
of other tags and is not a duplicate. New tags should be added sparingly and
8182
reviewed carefully.
8283

84+
#### Minimum Connect Version
85+
86+
The `minimumConnectVersion` field in the `extension` section of the
87+
`manifest.json` is required to specify the minimum version of Posit Connect
88+
that the content can be installed and used on.
89+
90+
Each time you release a version of your content the `minimumConnectVersion`
91+
is recorded for that specific release.
92+
93+
A good Connect Version to start with is `"2025.04.0"` since it is the
94+
release that introduced the Connect Gallery.
95+
8396
### README.md
8497

8598
In the above extension section there is a `homepage` link that we provide in the
@@ -214,6 +227,9 @@ a pull request with the changes.
214227
}
215228
```
216229
230+
If the new version of content requires a new minimum Connect version, then
231+
update the `minimumConnectVersion` as well.
232+
217233
When that pull request is merged, GitHub Workflows will automatically create a
218234
new GitHub Release for the content changed, update the content list, and update
219235
Connect Gallery.

extensions.json

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,15 @@
99
"latestVersion": {
1010
"version": "0.0.1",
1111
"released": "2025-04-11T21:32:23Z",
12-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/portfolio-dashboard%40v0.0.1/portfolio-dashboard.tar.gz"
12+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/portfolio-dashboard%40v0.0.1/portfolio-dashboard.tar.gz",
13+
"minimumConnectVersion": "2025.04.0"
1314
},
1415
"versions": [
1516
{
1617
"version": "0.0.1",
1718
"released": "2025-04-11T21:32:23Z",
18-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/portfolio-dashboard%40v0.0.1/portfolio-dashboard.tar.gz"
19+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/portfolio-dashboard%40v0.0.1/portfolio-dashboard.tar.gz",
20+
"minimumConnectVersion": "2025.04.0"
1921
}
2022
]
2123
},
@@ -27,13 +29,15 @@
2729
"latestVersion": {
2830
"version": "0.0.1",
2931
"released": "2025-03-19T23:00:09Z",
30-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/publisher-command-center%40v0.0.1/publisher-command-center.tar.gz"
32+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/publisher-command-center%40v0.0.1/publisher-command-center.tar.gz",
33+
"minimumConnectVersion": "2025.04.0"
3134
},
3235
"versions": [
3336
{
3437
"version": "0.0.1",
3538
"released": "2025-03-19T23:00:09Z",
36-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/publisher-command-center%40v0.0.1/publisher-command-center.tar.gz"
39+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/publisher-command-center%40v0.0.1/publisher-command-center.tar.gz",
40+
"minimumConnectVersion": "2025.04.0"
3741
}
3842
]
3943
},
@@ -45,13 +49,15 @@
4549
"latestVersion": {
4650
"version": "1.0.0",
4751
"released": "2025-04-14T20:05:36Z",
48-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/quarto-document%40v1.0.0/quarto-document.tar.gz"
52+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/quarto-document%40v1.0.0/quarto-document.tar.gz",
53+
"minimumConnectVersion": "2025.04.0"
4954
},
5055
"versions": [
5156
{
5257
"version": "1.0.0",
5358
"released": "2025-04-14T20:05:36Z",
54-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/quarto-document%40v1.0.0/quarto-document.tar.gz"
59+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/quarto-document%40v1.0.0/quarto-document.tar.gz",
60+
"minimumConnectVersion": "2025.04.0"
5561
}
5662
]
5763
},
@@ -63,13 +69,15 @@
6369
"latestVersion": {
6470
"version": "1.0.0",
6571
"released": "2025-04-14T18:38:38Z",
66-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/quarto-stock-report-python%40v1.0.0/quarto-stock-report-python.tar.gz"
72+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/quarto-stock-report-python%40v1.0.0/quarto-stock-report-python.tar.gz",
73+
"minimumConnectVersion": "2025.04.0"
6774
},
6875
"versions": [
6976
{
7077
"version": "1.0.0",
7178
"released": "2025-04-14T18:38:38Z",
72-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/quarto-stock-report-python%40v1.0.0/quarto-stock-report-python.tar.gz"
79+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/quarto-stock-report-python%40v1.0.0/quarto-stock-report-python.tar.gz",
80+
"minimumConnectVersion": "2025.04.0"
7381
}
7482
]
7583
},
@@ -81,18 +89,21 @@
8189
"latestVersion": {
8290
"version": "0.0.2",
8391
"released": "2025-04-16T22:32:48Z",
84-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/reaper%40v0.0.2/reaper.tar.gz"
92+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/reaper%40v0.0.2/reaper.tar.gz",
93+
"minimumConnectVersion": "2025.04.0"
8594
},
8695
"versions": [
8796
{
8897
"version": "0.0.2",
8998
"released": "2025-04-16T22:32:48Z",
90-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/reaper%40v0.0.2/reaper.tar.gz"
99+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/reaper%40v0.0.2/reaper.tar.gz",
100+
"minimumConnectVersion": "2025.04.0"
91101
},
92102
{
93103
"version": "0.0.1",
94104
"released": "2025-03-19T22:59:58Z",
95-
"url": "https://github.com/posit-dev/connect-extensions/releases/download/reaper%40v0.0.1/reaper.tar.gz"
105+
"url": "https://github.com/posit-dev/connect-extensions/releases/download/reaper%40v0.0.1/reaper.tar.gz",
106+
"minimumConnectVersion": "2025.04.0"
96107
}
97108
]
98109
}

extensions/audit-api/manifest.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1440,6 +1440,7 @@
14401440
"title": "Audit Log API",
14411441
"description": "An API Publisher can call for audit logs.",
14421442
"homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/audit-api",
1443+
"minimumConnectVersion": "2025.04.0",
14431444
"version": "0.0.0"
14441445
}
14451446
}

extensions/audit-reports/manifest.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
"title": "Audit Reports",
4646
"description": "A quarto site of audit reports.",
4747
"homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/audit-reports",
48+
"minimumConnectVersion": "2025.04.0",
4849
"version": "0.0.0"
4950
}
5051
}

extensions/datadog-prometheus-metrics/manifest.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
"title": "Plotting Connect Prometheus Metrics from Datadog",
3333
"description": "Allows users to query Datadog for a selected Connect Prometheus metric over a given timeframe and view a plot of the results.",
3434
"homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/datadog-prometheus-metrics",
35+
"minimumConnectVersion": "2025.04.0",
3536
"version": "0.0.0"
3637
}
3738
}

extensions/integration-session-manager/manifest.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
}
1515
},
1616
"environment": {
17-
"python": {
18-
"requires": ">=3.8, <4"
19-
}
20-
},
17+
"python": {
18+
"requires": ">=3.8, <4"
19+
}
20+
},
2121
"files": {
2222
"requirements.txt": {
2323
"checksum": "ad96c76e9e6206cb681729471b4498cd"
@@ -40,6 +40,7 @@
4040
"title": "Connect OAuth Integration Session Manager",
4141
"description": "Allows Connect admins to view and manage OAuth integration sessions.",
4242
"homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/integration-session-manager",
43+
"minimumConnectVersion": "2025.04.0",
4344
"version": "0.0.0"
4445
}
4546
}

extensions/oauth-integration-debug/manifest.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
"title": "Connect OAuth Integration Debugger",
3333
"description": "Allows Connect content viewers to debug user session tokens and credential exchange.",
3434
"homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/oauth-integration-debug",
35+
"minimumConnectVersion": "2025.04.0",
3536
"version": "0.0.0"
3637
}
3738
}

extensions/oauth-integration-validator/manifest.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1397,6 +1397,7 @@
13971397
"title": "Connect OAuth Integration Validator",
13981398
"description": "Test an OAuth integration by performing a GET request to a specified endpoint using the access token obtained by Connect.",
13991399
"homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/oauth-integration-validator",
1400+
"minimumConnectVersion": "2025.04.0",
14001401
"version": "0.0.0"
14011402
}
14021403
}

extensions/portfolio-dashboard/manifest.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
"title": "Portfolio Dashboard",
88
"description": "A shiny application makes it easy to transform your analysis into an interactive dashboard using R so users can ask and answer questions in real-time, without having to touch any code.",
99
"homepage": "https://github.com/posit-dev/connect-extensions/tree/main/extensions/portfolio-dashboard",
10+
"minimumConnectVersion": "2025.04.0",
1011
"version": "0.0.1"
1112
},
1213
"environment": {

0 commit comments

Comments
 (0)