PackageTrack
Sign in Get early access

sgp4

The C++ SGP4 routine that, given an Earth satellite TLE, computes its position.

2.27 1.0M downloads/mo #4457 most downloaded on PyPI brandon-rhodes/python-sgp4

What this package is like to depend on

Last release 1 months ago

03 Jul 2026

Release timing varies

gaps range from 3 weeks to 1.3 years

This project publishes no release notes

the list below is its commits, not an announcement

Nothing withdrawn

no release was ever pulled

14 years old

32 releases · first in 2012

2 releases in the last 12 months

see the full history below

Release timeline

32 releases · Aug 2012 to Jul 2026
2013 2015 2017 2019 2021 2023 2025
Release Pre-release

Releases

latest 32
  1. 2.27 03 Jul 2026
    Commits, not release notes

    This project publishes no release notes. Between 2.26 and 2.27 there were 5 commits, 5 of them substantive:

    • Move README material out of init.py for #165
    • Pivot check_satrec(), check_satrec() off of docs
    • Reinstate doctests (they now live in README.rst)
    • Declare version 2.27
    • Actual 2.27: forgot to update changelog
  2. 2.26 26 Jun 2026
    Commits, not release notes

    This project publishes no release notes. Between 2.25 and 2.26 there were 13 commits, 13 of them substantive:

    • CI: First step toward Python 3.14 support (#147)
    • Update CI and add python 3.14 support (#150)
    • Add missing release date for 2.25; finish notes
    • WHL: ensure wheels get compiled C++ (#153)
    • Rewrite PyTypeObject structs as heap types (#154)
    • Treat PyTypeObject as an opaque struct (#157)
    • Use Limited API PyUnicode_*() functions (#156)
    • Avoid deprecation warnings from setuptools (#155)
    • Declare Python 3 wheels abi3-compliant (#151)
    • Move cibuildwheel's configuration to TOML (#159)
    • CI: upgrade out-of-date Github Actions (#162)
    • CI: add musllinux to the build matrix (#161)
    • Declare version 2.26
  3. 2.25 04 Aug 2025
    Commits, not release notes

    This project publishes no release notes. Between 2.24 and 2.25 there were 14 commits, 14 of them substantive:

    • CI: fix artifact downloads of wheels for PyPI
    • An experiment: building a pure-Python distribution
    • setup.py: add provides; simplify; re-indent
    • Try giving sgp4_pure_python its own setup.py
    • Add 3.13 to list of supported Python versions
    • Add Python 3.13 wheels to CI build (#138)
    • CI: consolidate, simplify; ensure aarch64 wheels
    • Fix artifact download for PyPI publishing (#142)
    • CI: try upgrading 'gh-action-pypi-publish' action
    • Replace tox with a dozen-line shell script
    • Have test.sh test both compiled and pure Python
    • Fix missing revnum in sats built with sgp4init()
    • Add gravconst parameter to omm.initialize()
    • Version 2.25
  4. 2.24 15 Feb 2025
    Commits, not release notes

    This project publishes no release notes. Between 2.23 and 2.24 there were 14 commits, 14 of them substantive:

    • Specify exact version in GitHub Action step (#126)
    • Fix #121: Python should not require checksum char
    • Remove words ‘Partway through’ to clarify text
    • Add ‘OMM’ acronym to omm.py docstring
    • Make try-except more explicit: check ImportError
    • Document that ‘SGP4’ uses SDP4 for deep space sats
    • Add a missing verb to a sentence in the docs
    • Add check_satrec() and document parameter ranges
    • Three fixes for errors with GitHub Actions
    • Tweak tox.ini to get it working well again
    • Document how to load satellites from JSON OMM file
    • Rename GitHub Action to ci.yml so I can find it`
    • Also change internal name of GitHub Action
    • Version 2.24
  5. 2.23 11 Nov 2023
    Commits, not release notes

    This project publishes no release notes. Between 2.22 and 2.23 there were 5 commits, 5 of them substantive:

    • Update C++ code to Vallado revision of 2023 May 09
    • Fix date used in the first example in the docs
    • Version 2.23, because Python 3.12 broke the tests
    • Switch to only doing local testing for Python 2.7
    • GitHub Actions: add 3.12, pin NumPy, cleanup (#125)
  6. 2.22 27 Apr 2023
    Commits, not release notes

    This project publishes no release notes. Between 2.21 and 2.22 there were 29 commits, 29 of them substantive:

    • Add Python 3.10 to CI
    • Update CI support for M1, aarch64 wheels (#103)
    • Expose C++ string used to store satellite number
    • Refuse to init a satellite with satnum >339999
    • Add quick test for new satnum_str attribute
    • Rename test strings to make test easier to read
    • Give satnum string to fallback Python class too
    • Fix #109: sgp4init() should set "classification"
    • To help fix CI, make test assert more informative
    • Fix Python code for alpha5 satellite number
    • Remove old TODO that’s now been implemented
    • Repent making satnum_str a Python 3 bytes object
    • Fix documented units for ndot and nddot (#115)
    • Remove trailing whitespace
    • Add Python 3.11 to CI
    • Fix “accel” script to return proper error code
    • Move new changelog item into proper place
    • Fix #116 by adding check for non-ASCII TLE lines
    • Fix #112 with link to SGP4 Report at top of docs
    • Fix #111: document the "accelerated" boolean

    …and 9 more.

  7. 2.21 06 Apr 2022
    Commits, not release notes

    This project publishes no release notes. Between 2.20 and 2.21 there were 7 commits, 7 of them substantive:

    • Add dump_satrec() convenience function
    • Copyedits; switch sgp4init() example call to ISS
    • Remove “whichconst” attribute from Python “Satrec”
    • Add two missing names to sgp4.api.all
    • Fix #102: Satrec.error attribute had wrong address
    • Reduce test accuracy to match GitHub Actions
    • Declare version 2.21
  8. 2.20 01 Jul 2021
    Commits, not release notes

    This project publishes no release notes. Between 2.19 and 2.20 there were 10 commits, 10 of them substantive:

    • Use python 3.7 when running cibuildwheel (#91)
    • Remove trailing blank lines
    • Replace overly precise test float with equivalent
    • Fix sgp4init() to always produce a 2-digit epochyr
    • Add “-b” to tox command, so stdin/err get buffered
    • sgp4init(): round epochdays/jdsatepochF to 8 places
    • Fix #94 by improving export of positive exponents
    • Declare 2.20, and move version into package
    • Fix setup.py on Windows (encoding is not UTF-8)
    • Quick setup.py fix for Python 2.7
  9. 2.19 22 Apr 2021
    Commits, not release notes

    This project publishes no release notes. Between 2.18 and 2.19 there were 5 commits, 5 of them substantive:

    • Document the complete list of supported attributes
    • Further copyediting of the module documentation
    • Start a changelog entry for the next version
    • Response to a question—clarify elements stay fixed
    • Declare version 2.19
  10. 2.18 08 Mar 2021

    Nothing published for this version

  11. 2.17 17 Feb 2021

    Nothing published for this version

  12. 2.16 12 Feb 2021

    Nothing published for this version

  13. 2.15 08 Jan 2021

    Nothing published for this version

  14. 2.14 16 Dec 2020

    Nothing published for this version

  15. 2.13 14 Oct 2020

    Nothing published for this version

  16. 2.12 28 May 2020

    Nothing published for this version

  17. 2.11 25 May 2020

    Nothing published for this version

  18. 2.10 22 May 2020

    Nothing published for this version

  19. 2.9 21 May 2020

    Nothing published for this version

  20. 2.8 07 May 2020

    Nothing published for this version

  21. 2.7 24 Apr 2020

    Nothing published for this version

  22. 2.6 20 Apr 2020

    Nothing published for this version

  23. 2.5 22 Mar 2020

    Nothing published for this version

  24. 2.4 25 Feb 2020

    Nothing published for this version

  25. 2.3 04 Feb 2020

    Nothing published for this version

  26. 2.2 02 Feb 2020

    Nothing published for this version

  27. 2.1 02 Feb 2020

    Nothing published for this version

  28. 2.0 30 Jan 2020

    Nothing published for this version

  29. 1.4 16 Jan 2015

    Nothing published for this version

  30. 1.3 27 Jun 2014

    Nothing published for this version

  31. 1.1 23 Nov 2012

    Nothing published for this version

  32. 1.0 26 Aug 2012

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive