-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Loading status checks…
initial commit
Showing
165 changed files
with
30,045 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
# This is a config file for flake-8, a python tool to detect linting issues. | ||
# Basically a grammar checker for code, below E203 is turned off since it conflicts with | ||
# Black formatting. | ||
[flake8] | ||
ignore = E203, W503 | ||
max-line-length = 88 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# This workflow will install Python dependencies, run tests, lint, and build docs | ||
# This run for every pull request | ||
|
||
name: Build Docs | ||
|
||
on: | ||
push: | ||
branches: [ "main" ] | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | ||
cancel-in-progress: true | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 10 | ||
strategy: | ||
fail-fast: false | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.9" | ||
- name: Install dependencies | ||
run: | | ||
python3 -m pip install --upgrade pip setuptools | ||
- name: Build neospy | ||
run: | | ||
python3 -m pip install '.[dev]' -v | ||
- name: Build Docs | ||
run: | | ||
(cd doc && make clean && make html && make doctest) | ||
- name: Archive Docs | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: "docs" | ||
path: | ||
doc/html/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
# This workflow will create wheels files for all major distros for several versions of python. | ||
# This only triggers on release tags. | ||
|
||
name: Release-Wheels | ||
|
||
on: | ||
push: | ||
tags: 'v[0-9]+.[0-9]+.[0-9]+' | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | ||
cancel-in-progress: true | ||
jobs: | ||
build_wheels: | ||
name: Build wheel for cp${{ matrix.python }}-${{ matrix.platform_id }}-${{ matrix.manylinux_image }} | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 30 | ||
strategy: | ||
# Ensure that a wheel builder finishes even if another fails | ||
fail-fast: false | ||
matrix: | ||
include: | ||
# Window 64 bit | ||
- os: windows-2019 | ||
python: 310 | ||
platform_id: win_amd64 | ||
- os: windows-2019 | ||
python: 311 | ||
platform_id: win_amd64 | ||
|
||
# Linux 64 bit manylinux2014 | ||
- os: ubuntu-latest | ||
python: 310 | ||
platform_id: manylinux_x86_64 | ||
manylinux_image: manylinux2014 | ||
- os: ubuntu-latest | ||
python: 311 | ||
platform_id: manylinux_x86_64 | ||
manylinux_image: manylinux2014 | ||
|
||
# MacOS x86_64 | ||
- os: macos-latest | ||
python: 310 | ||
platform_id: macosx_x86_64 | ||
- os: macos-latest | ||
python: 311 | ||
platform_id: macosx_x86_64 | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Rust | ||
uses: dtolnay/rust-toolchain@stable | ||
- run: cargo test --all-features | ||
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.9" | ||
- name: Install dependencies | ||
run: | | ||
python3 -m pip install --upgrade pip setuptools | ||
python3 -m pip install cibuildwheel | ||
- name: Build wheels | ||
env: | ||
CIBW_BUILD: cp${{ matrix.python }}-${{ matrix.platform_id }} | ||
CIBW_ARCHS: all | ||
CIBW_MANYLINUX_X86_64_IMAGE: ${{ matrix.manylinux_image }} | ||
CIBW_MANYLINUX_I686_IMAGE: ${{ matrix.manylinux_image }} | ||
CIBW_TEST_SKIP: "*-macosx_arm64" | ||
CIBW_ENVIRONMENT: 'PATH="$HOME/.cargo/bin:$PATH" CARGO_TERM_COLOR="always"' | ||
CIBW_ENVIRONMENT_WINDOWS: 'PATH="$UserProfile\.cargo\bin;$PATH"' | ||
CIBW_BEFORE_BUILD: rustup show | ||
CIBW_BEFORE_BUILD_LINUX: > | ||
curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain=stable --profile=minimal -y && | ||
rustup show | ||
CIBW_TEST_REQUIRES: pytest | ||
CIBW_BUILD_VERBOSITY: 1 | ||
CONDA_HOME: /usr/local/miniconda | ||
run: python3 -m cibuildwheel --output-dir wheelhouse | ||
- uses: actions/upload-artifact@v3 | ||
with: | ||
path: ./wheelhouse/*.whl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# This workflow will install Python dependencies, run tests, lint, and build docs | ||
# This run for every pull request | ||
|
||
name: Tests and Lint | ||
|
||
on: | ||
push: | ||
branches: [ "main" ] | ||
pull_request: | ||
branches: [ "main" ] | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | ||
cancel-in-progress: true | ||
jobs: | ||
build: | ||
timeout-minutes: 10 | ||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.9" | ||
- name: Install dependencies | ||
run: | | ||
python3 -m pip install --upgrade pip setuptools black mypy types-requests numpy | ||
- name: Black Formatting | ||
run: | | ||
python3 -m black . --check | ||
- name: Lint with mypy | ||
run: | | ||
python3 -m mypy src/neospy/ | ||
- name: Build neospy | ||
run: | | ||
python3 -m pip install '.[dev]' -v | ||
- name: Test with pytest | ||
run: | | ||
python3 -m pytest --cov-report term-missing --cov=neospy | ||
- name: Test with cargo | ||
run: | | ||
cargo test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
# Visual Studio Proj Files | ||
.venv* | ||
.env | ||
.vscode | ||
|
||
# hide intellij files | ||
.idea | ||
|
||
# Cache | ||
.mypy_cache | ||
*__pycache__ | ||
*.pyc | ||
*.coverage | ||
.coverage* | ||
*.pytest_cache | ||
|
||
# database files | ||
*.db* | ||
|
||
# dis pkg | ||
*egg-info | ||
*.eggs | ||
dist | ||
_skbuild | ||
build | ||
_skbuild | ||
|
||
# Mac files | ||
.DS_Store | ||
|
||
# Ignore built library | ||
*.so | ||
*.mod | ||
*.lock | ||
|
||
target/* | ||
*.lock | ||
|
||
# Ignore built documents | ||
doc/html | ||
doc/doctrees | ||
doc/auto_examples | ||
doc/plot_directive | ||
doc/doctest | ||
doc/latex | ||
doc/sg_execution_times.rst | ||
*.mod | ||
|
||
# Ignored downloaded cached files | ||
**/data/*.json.gz | ||
**/data/neowise_diameters_albedos* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# Changelog | ||
|
||
All notable changes to this project will be documented in this file. | ||
|
||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | ||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | ||
|
||
## [Unreleased] | ||
|
||
|
||
## [0.2.0] - 2024-3-16 | ||
|
||
Initial Release | ||
|
||
|
||
- Initial version release of NEOSpy! | ||
- NEOSpy's primary goal is to enable simulations of NEOs, however it also supports any | ||
asteroid or comet. Included are n-body orbit propagation tools, thermal and optical | ||
modeling, tools for computing what minor planets can be seen by an observer. | ||
Along with many helpful interfaces to web tools such as JPL Horizons or IPAC's IRSA. | ||
|
||
### Added | ||
[Unreleased]: https://github.com/IPAC-SW/neospy/tree/main | ||
[0.2.0]: https://github.com/IPAC-SW/neospy/releases/tag/v0.2.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
|
||
[package] | ||
name = "_rust" | ||
version = "0.2.0" | ||
edition = "2021" | ||
|
||
|
||
[dependencies] | ||
neospy_core = { version = "*", path = "src/neospy_core", features=["pyo3"]} | ||
pyo3 = { version = "0.21", features = ["extension-module"] } | ||
serde = { version = "*", features = ["derive"] } | ||
bincode = {version = "2.0.0-rc.3", features=["derive", "serde"]} | ||
ndarray = "*" | ||
nalgebra = "*" | ||
itertools = "*" | ||
rayon = "*" | ||
|
||
[lib] | ||
name = "_rust" | ||
path = "src/neospy/rust/lib.rs" | ||
crate-type = ["cdylib"] | ||
|
||
[workspace] | ||
members = ["src/neospy_core"] | ||
default-members = ["src/neospy_core"] | ||
|
||
[profile.release] | ||
opt-level = 3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
include src/neospy/data/* | ||
include src/neospy/_rust* | ||
exclude src/neospy/data/*.gz |
Oops, something went wrong.