Skip to content

Release Procedure

dmcclimans edited this page Jun 6, 2021 · 4 revisions

2021-06-06

  1. Update to the latest tools

    • Python

    • Upgrade pip (in the global environment)

          python -m pip install --upgrade pip
      
    • Upgrade python packages in the global environment

          pip install --upgrade <package-name>
      
      • wheel
      • sphinx
    • Upgrade python packages in the virtual environment

          venv\Scripts\activate.bat
          pip install --upgrade <package-name>
      
      • gpxpy
      • lxml
      • mypy
      • pyinstaller
      • PySimpleGUI
      • pytz
      • tzlocal
      • seaborn
        • this installs:
        • python-dateutil
        • pillow
        • numpy
        • kiwisolver
        • cycler
        • scipy
        • pandas
        • matplotlib
  2. Edit GPXAnalyzer.py to update the version string.

  3. Edit GPXAnalyzerVersion.txt with a Unicode aware editor (such as Notepad++):

    • Change the Copyright year if needed.
    • Change the filevers and prodvers tuples.
    • Change the FileVersion, ProductVersion, and Assembly Version strings.
  4. Edit the license file

    • Make any changes needed
    • Update the date if changed.
  5. Edit Readme.md.

    • If needed, update the screenshot.
    • If needed, update the text.
    • Update the version and date
  6. Update the wiki documentation as needed.

  7. Build an exe file, from the command line, first make sure you have activated the virtual environment, and then run MakeExe

        venv\Scripts\activate.bat
        MakeExe.bat
    

    This takes 2 to 3 minutes to run. It will build an application for the version of the OS you are running (for example, Windows 10 64-bit). To build for 32-bit or for a different OS, you must run that OS and build it there.

  8. Run Inno setup Script compiler and compile GPXAnalyzer.iss. This will create dist\GPXAnalyzer_setup_x_y_z.exe This will take 1-2 minutes.

  9. Use fsum to create a .sha256 file with same name as the binary file.

        fsum -sha256 GPXAnalyzer_setup_x_y_z.exe >GPXAnalyzer_setup_x_y_z.sha256
    
  10. Edit the sha256 file to remove extraneous comments.

  11. Copy the setup file and sha256 file to ReleasedVersions.

  12. Commit changes to both app and wiki.

  13. Tag the head of both the app repo and the wiki repo with the version number such as "v1.2.3".

  14. Push changes including tags to github, for both the app and the wiki.

  15. Check that the documentation on github is rendered correctly.

  16. Create a release at github

    • If using noscript, disable no-script for your browser tab to get the uploads to work.
    • On Releases page, draft a new release.
    • Enter the version number (the tag name), such as "v1.1"
    • Enter the title such as "GPXAnalyzer v1.1".
    • Leave description blank.
    • Add the setup exe file and the checksum file
    • Wait for the upload to complete.
    • Click Publish release
  17. Check that download link in the readme on GitHub works correctly.

Clone this wiki locally