@@ -20,9 +20,6 @@ add your contributions to the **development** branch.
2020
2121### Get the source code and set up your branch
2222
23- 1 . Make sure you have
24- [ signed the CLA] ( https://tableau.github.io/contributing.html ) .
25-
26231 . Fork the repository. We follow the "Fork and Pull" model as described
2724 [ here] ( https://help.github.com/articles/about-collaborative-development-models/ ) .
2825
@@ -170,15 +167,20 @@ section below for details.
170167 [ here] ( https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request-from-a-fork )
171168 against the ** development** branch for code changes.
172169
170+ 1 . In your first pull request, the Salesforce Contributor License Agreement bot
171+ (` salesforce-cla ` ) will add a comment with instructions to follow.
172+
1731731 . Wait for a review and address any feedback. While we try and stay on top of
174- all issues and PRs it might take a few days for someone to respond. Politely
175- pinging the PR after a few days with no response is OK, we'll try and respond
174+ all issues and PRs it might take a while for someone to respond. Politely
175+ pinging the PR after a few days with no response is OK; we'll try and respond
176176 with a timeline as soon as we are able.
177177
1781781 . That's it! When the PR has received
179179 ![ ] ( https://github.githubassets.com/images/icons/emoji/unicode/1f680.png ) {: height ="5%"
180180 width="5%"} (:rocket : 's) from members of the core team they will merge the
181- PR.
181+ PR. ** Maintainers:** Make sure to choose a Squash Merge when merging a PR into
182+ the ` development ` branch; that will keep the timeline clean with just the
183+ final result from each PR.
182184
183185## Updating documentation
184186
@@ -190,14 +192,10 @@ All of the documentation source files can be found in `/docs` folder in the
190192** gh-pages** branch. The docs are hosted on the following URL:
191193< https://tableau.github.io/server-client-python > .
192194
193- If you are just making documentation updates (adding new docs, fixing typos,
194- improving wording) the easiest method is to use the built-in ` Edit this file `
195- feature (the pencil icon) or the ` Edit this page ` link.
196-
197- To make more significant changes or additions, please create a pull request
198- against the ** gh-pages** branch. When submitted along with a code pull request
199- (as described above), you can include a link in the PR text so it's clear they
200- go together.
195+ To make changes or additions to the documentation, please create a pull request
196+ against the ** gh-pages** branch. Because the docs are in a separate branch, you
197+ would need to create a separate PR for your code versus docs changes. It's helpful
198+ to link them to each other in comments so it's clear they go together.
201199
202200### Running docs locally
203201
@@ -215,3 +213,37 @@ To preview and run the documentation locally, these are the steps:
215213
216214For more details, see the GitHub Pages topic on
217215[ testing locally] ( https://docs.github.com/en/github/working-with-github-pages/testing-your-github-pages-site-locally-with-jekyll ) .
216+
217+ ## Release process (maintainers)
218+
219+ To do a release and publish a new version to [ PyPI] ( https://pypi.org/project/tableauserverclient/ ) ,
220+ follow these steps:
221+
222+ 1 . Do a ` development ` to ` master ` branch merge. This should be a regular merge
223+ (not a squash) to ensure all individual commits are visible.
224+
225+ 1 . (Optional) Do a test publish to PyPI without creating the next version tag.
226+ This will create a pre-release package with a version like ` 0.30.post0.dev ` .
227+
228+ 1 . On a local clone of the repo, create and push the tag for the * next* version
229+ (in this example it's "v0.31"):
230+
231+ ``` shell
232+ git fetch
233+ git fetch --tags
234+ git checkout master
235+ git pull
236+ git log # confirm most recent commit on master is the new release commit
237+ git tag -a v0.31 -m ' Release v0.31'
238+ git push origin tag v0.31
239+ ```
240+
241+ 1 . Publish the updated release to PyPI by running the [ Publish] ( https://github.com/tableau/server-client-python/actions/workflows/publish-pypi.yml )
242+ job and choosing the ` master ` branch.
243+
244+ 1 . The job should just take a few minutes to complete, then check the updated
245+ package exists on [ PyPI] ( https://pypi.org/project/tableauserverclient/ ) .
246+
247+ 1 . Create a release in GitHub with the title like "v0.31" and release notes
248+ with changes from the last release. You can try the automatic generation
249+ of notes, or just create a list of merged PR titles with reference PR numbers.
0 commit comments