Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge dev and do new release #386

Merged
merged 124 commits into from
Aug 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
124 commits
Select commit Hold shift + click to select a range
20f0e20
First addition of FastShermanMorrison for testing
vhaasteren Apr 21, 2023
312093b
Added numpy and cython extensions to setup.py
vhaasteren Apr 21, 2023
1b536bc
Updated docstrings and method selector for fast-sherman-morrison
vhaasteren Apr 24, 2023
dff897e
Merge remote-tracking branch 'github-vhaasteren/fastshermanmorrison' …
vhaasteren Apr 24, 2023
db81f64
Added numpy and cython to requirements_dev.txt
vhaasteren Apr 24, 2023
d8e1a35
Moved FastShermanMorrison to external package
vhaasteren Apr 24, 2023
fb7f533
Removed fastshermanmorrison from setup.py
vhaasteren Apr 24, 2023
50cc052
Conform to black linter
vhaasteren Apr 24, 2023
39b6b0e
Added test for fast-sherman-morrison
vhaasteren Apr 26, 2023
0e3435c
Added requirements_tests.txt, so that the extensions can be loaded fo…
vhaasteren Apr 26, 2023
60a117e
Added decorator to show fastshermanmorrison-pulsar warning only once
vhaasteren Apr 26, 2023
851b13e
Proper linting corrections
vhaasteren Apr 26, 2023
bf1705e
Changed the EcorrKernelWarning machanism
vhaasteren Apr 26, 2023
f8d71f5
Blacking
vhaasteren Apr 26, 2023
8c4bfa8
Lint update
vhaasteren Apr 26, 2023
fb01136
Removed the have_shown stuff for now
vhaasteren Apr 26, 2023
3ff9921
Placed fastshermanmorrison into requirements_dev.txt
vhaasteren May 4, 2023
ef663fa
Added Percentage Point Function for all parameters
vhaasteren Sep 21, 2023
1fa8dd9
Added PPF tests
vhaasteren Sep 21, 2023
61599a8
Done linting on parameter.py and test_parameter.py
vhaasteren Sep 21, 2023
f78af6b
Allow for index arrays in ShermanMorrison, so we do not need sorted T…
vhaasteren Sep 22, 2023
4d678ae
Updated all the white signals and block matrix code for index array i…
vhaasteren Sep 24, 2023
37b4c9c
Provided mechanism for showing warning message about fastshermanmorri…
vhaasteren Sep 25, 2023
1df974a
Added pragmas for no coverage of exception results
vhaasteren Sep 26, 2023
3698716
Linting: forgot a space in a pragma
vhaasteren Sep 26, 2023
ca9a5a9
Modified pulsar.py to allow for additional pulsar types from external…
vhaasteren Sep 27, 2023
6703327
Moved drop t2pulsar code
vhaasteren Sep 27, 2023
d959b7a
Bugfix for bug #358
vhaasteren Sep 28, 2023
860e2b6
Linting
vhaasteren Sep 28, 2023
96af0ba
Added tests for scrambled/unsorted IPTA datasets for EcorrKernelNoise
vhaasteren Sep 28, 2023
e1f0990
Changed logdet=True in one call in MarginalizingNmat, so we don't nee…
vhaasteren Sep 29, 2023
baf1f8d
Add Python 3.11, Remove Python 3.7
AaronDJohnson Oct 1, 2023
82de1e4
Merge branch 'master' into python311
vallis Oct 5, 2023
1aaf980
Merge branch 'nanograv:master' into bugfix_358
vhaasteren Oct 6, 2023
da6540c
Merge branch 'nanograv:master' into quant2ind_returns_indices
vhaasteren Oct 6, 2023
ee4d175
Merge branch 'nanograv:master' into ppf_parameters
vhaasteren Oct 6, 2023
cbe1262
Merge branch 'nanograv:master' into fastshermanmorrison
vhaasteren Oct 6, 2023
618fcec
Merge branch 'master' into ppf_parameters
vhaasteren Nov 6, 2023
79a0b8e
Merge remote-tracking branch 'github-vhaasteren/ppf_parameters' into …
vhaasteren Nov 6, 2023
2ba631e
Merge branch 'master' into bugfix_358
vhaasteren Nov 6, 2023
699f9e9
Merge remote-tracking branch 'github-vhaasteren/bugfix_358' into bugf…
vhaasteren Nov 6, 2023
f3ee434
Merge branch 'master' into quant2ind_returns_indices
vhaasteren Nov 6, 2023
dd63ab4
Merge remote-tracking branch 'github-vhaasteren/quant2ind_returns_ind…
vhaasteren Nov 6, 2023
294dd75
Merge branch 'master' into python311
AaronDJohnson Nov 6, 2023
69ac2eb
Merge branch 'master' into bugfix_358
vhaasteren Nov 6, 2023
c6a586c
Merge branch 'master' into ppf_parameters
vhaasteren Nov 6, 2023
924f089
Merge branch 'master' into quant2ind_returns_indices
vhaasteren Nov 6, 2023
3c4c3b9
Merge branch 'master' into fastshermanmorrison
vhaasteren Nov 6, 2023
e6b92c2
Merge remote-tracking branch 'github-vhaasteren/fastshermanmorrison' …
vhaasteren Nov 6, 2023
783de99
Merge branch 'master' into pulsar_mods
vhaasteren Nov 6, 2023
b852ee7
Linting of test_white_signals.py
vhaasteren Nov 6, 2023
15ec4e0
Provided extra unit tests for the PPF functionality and parameters in…
vhaasteren Nov 7, 2023
11ffcc0
Linting: extra line of whitespace
vhaasteren Nov 7, 2023
dd2628d
Updated the ci_tests.yml to include the dev branch
vhaasteren Nov 7, 2023
c43b503
Merge pull request #362 from AaronDJohnson/python311
vhaasteren Nov 7, 2023
c25f0a2
Added more unit tests for the parameter module
vhaasteren Nov 7, 2023
7f6795a
Updated version of fastshermanmorrison-pulsar to 0.4.0, which has bin…
vhaasteren Nov 8, 2023
a4dd7b6
Merge pull request #359 from vhaasteren/bugfix_358
AaronDJohnson Nov 9, 2023
863a388
Fixed typo
vhaasteren Nov 9, 2023
74ec30f
Added the necessary unit tests
vhaasteren Nov 9, 2023
8b75650
Linting
vhaasteren Nov 9, 2023
4b94571
Added extra unit test
vhaasteren Nov 9, 2023
87813ee
Updated the test_pulsar.py
vhaasteren Nov 9, 2023
33fc82b
add conda stuff to docs (#336)
paulthebaker Nov 15, 2023
2415762
Merge pull request #343 from vhaasteren/fastshermanmorrison
AaronDJohnson Nov 17, 2023
988b0dd
Merge branch 'dev' into quant2ind_returns_indices
vhaasteren Nov 17, 2023
8496cef
Added tests for indices_from_slice and quant2ind
vhaasteren Nov 17, 2023
b9a3bcc
Added error message
vhaasteren Nov 17, 2023
d782c29
Merge pull request #356 from vhaasteren/quant2ind_returns_indices
AaronDJohnson Nov 17, 2023
5b08965
Make astropy optional in pulsar.py
vhaasteren Nov 29, 2023
8c82ecb
Added space for black
vhaasteren Nov 29, 2023
c4fe43e
Changed the location of the pragma: no cover
vhaasteren Nov 29, 2023
29ebfe6
Merge pull request #368 from vhaasteren/astropy_optional
AaronDJohnson Nov 29, 2023
e9b452b
Properly address units in PintPulsar position
vhaasteren Nov 30, 2023
c58f840
Fix typo
vhaasteren Nov 30, 2023
b4b255e
add new EPTA and general selection functions
Dec 23, 2023
b0d492d
Update gp_bases.py
siyuan-chen Dec 23, 2023
34737cf
Update gp_signals.py
siyuan-chen Dec 23, 2023
6b6912d
Update signal_base.py
siyuan-chen Dec 23, 2023
9b69705
Update utils.py
siyuan-chen Dec 23, 2023
1b897e3
added doc string and explanation
Feb 6, 2024
219df07
Only do numerical Cholesky update once the likelihood has been calcul…
vhaasteren Feb 14, 2024
6eceb84
Linting of course
vhaasteren Feb 14, 2024
c1abead
Merge pull request #381 from nanograv/master
AaronDJohnson Mar 5, 2024
5c1e455
Merge branch 'dev' into faster_sparse
vhaasteren Mar 5, 2024
c47b04a
liniting
Apr 7, 2024
d105ddd
more linting
Apr 7, 2024
7905de2
linting
Apr 7, 2024
c2b97ab
Merge pull request #373 from siyuan-chen/selections
vhaasteren Apr 9, 2024
bfe4b44
Merge branch 'dev' into gp_bases
vhaasteren Apr 9, 2024
b1b25bb
Merge pull request #374 from siyuan-chen/gp_bases
vhaasteren Apr 9, 2024
6fac7f9
Merge branch 'dev' into faster_sparse
vhaasteren Apr 18, 2024
7ea2bfd
Added test for the sparse matrix in-place solve
vhaasteren Apr 19, 2024
1a5d2e4
Oopsie, timing model addition was not committed enough
vhaasteren Apr 19, 2024
e54c3d2
Added test for PINT pulsar with RAJ/DECJ
vhaasteren Apr 19, 2024
8b1f24c
Merge pull request #376 from vhaasteren/faster_sparse
AaronDJohnson Apr 20, 2024
4ab4594
Merge branch 'dev' into ppf_parameters
vhaasteren Apr 21, 2024
9f2b6c9
Changed dimensionality constraint for normal ppf
vhaasteren Apr 21, 2024
fbff5be
Merge branch 'dev' into ppf_parameters
vhaasteren Apr 21, 2024
daede07
Merge pull request #383 from nanograv/master
vhaasteren Apr 21, 2024
cfe7c53
Merge branch 'dev' into fix_posunits
vhaasteren Apr 21, 2024
61ba269
Fix merge errors
vhaasteren Apr 21, 2024
7b7eb22
Fixed extra pulsar test
vhaasteren Apr 21, 2024
a4876a9
Merge pull request #353 from vhaasteren/ppf_parameters
AaronDJohnson Apr 21, 2024
37e24d2
Merge pull request #365 from vhaasteren/pulsar_mods
vhaasteren May 9, 2024
0f85dcc
Merge pull request #370 from vhaasteren/fix_posunits
vhaasteren May 9, 2024
0c65521
Extra comment to make tests re-run
vhaasteren Aug 12, 2024
9b41516
move to macos-13
AaronDJohnson Aug 13, 2024
20acc8d
Merge branch 'dev' into fix_ci
AaronDJohnson Aug 13, 2024
9863f8c
add 3.12, update codecov
AaronDJohnson Aug 13, 2024
958670c
Merge branch 'fix_ci' of https://github.com/AaronDJohnson/enterprise …
AaronDJohnson Aug 13, 2024
bad8a1a
Add Python 3.12
AaronDJohnson Aug 13, 2024
894b441
undo codecov upgrade
AaronDJohnson Aug 13, 2024
0a5fea8
redo upgrade codecov, lower max healpy version
AaronDJohnson Aug 13, 2024
ac45bba
spacing is important...
AaronDJohnson Aug 13, 2024
e75c28d
missed one...
AaronDJohnson Aug 13, 2024
ef756ad
undo upper limit on healpy
AaronDJohnson Aug 13, 2024
2096868
Update selections.py for "CHIME"
alyssacassity Aug 15, 2024
25d4747
Update selections.py
alyssacassity Aug 22, 2024
0cee27c
try to get verbose output
AaronDJohnson Aug 24, 2024
70df5ec
attempt 7896868
AaronDJohnson Aug 25, 2024
4f6154a
try to skip the problematic test
AaronDJohnson Aug 25, 2024
a24ed09
Merge pull request #391 from AaronDJohnson/fix_ci
vhaasteren Aug 26, 2024
508e0d9
Merge pull request #393 from alyssacassity/patch-1
AaronDJohnson Aug 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions .github/workflows/ci_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: enterprise CI targets

on:
push:
branches: [ master ]
branches: [ master, dev ]
pull_request:
branches: [ master ]
branches: [ master, dev ]
release:
types:
- published
Expand All @@ -16,8 +16,8 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
python-version: ['3.7', '3.8', '3.9', '3.10']
os: [ubuntu-latest, macos-13]
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']

steps:
- name: Checkout repository
Expand Down Expand Up @@ -56,7 +56,7 @@ jobs:
- name: Test with pytest
run: make test
- name: Codecov
uses: codecov/codecov-action@v3
uses: codecov/codecov-action@v4
#with:
# fail_ci_if_error: true

Expand All @@ -72,7 +72,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.7"
python-version: "3.8"
- name: Install non-python dependencies on linux
run: |
sudo apt-get install libsuitesparse-dev
Expand Down Expand Up @@ -118,7 +118,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: '3.8'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
Expand All @@ -133,4 +133,4 @@ jobs:
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
run: |
twine upload dist/*
twine upload dist/*
55 changes: 44 additions & 11 deletions CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,38 @@ If you are proposing a feature:
Get Started!
------------

Ready to contribute? Here's how to set up `enterprise` for local development.
Ready to contribute? Here's how to set up ``enterprise`` for local development.

1. Fork the `enterprise` repo on GitHub.
Install the dependencies
~~~~~~~~~~~~~~~~~~~~~~~~

``enterprise`` relies on a lot of other software to function.
If you use the Anaconda distribution of Python, you can get all of this software using ``conda``.
First, you install the latest stable version of ``enterprise``, which will come with all of the dependencies.
Then you remove ``enterprise`` leaving everything else intact.
This way you can use your development version of ``enterprise`` instead of the stable version.
We will also need some additional software that is required to run the tests.

Start with a virtual environment with the extra dependencies required for running tests. In this case it is called ``ent_dev``::

$ conda create -n ent_dev -y -c conda-forge python=3.9 black=22.3.0 flake8 sphinx_rtd_theme pytest-cov
$ conda activate ent_dev

Now install everything else by running the commands::

$ conda install -c conda-forge enterprise-pulsar
$ conda remove enterprise-pulsar --force
$ pip install coverage-conditional-plugin


Get the enterprise source code and get to work!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1. Fork the ``enterprise`` repo on GitHub.
2. Clone your fork locally::

$ git clone [email protected]:your_name_here/enterprise.git
$ cd enterprise/

3. Set `enterprise/master` as upstream remote::

Expand All @@ -73,17 +99,25 @@ Ready to contribute? Here's how to set up `enterprise` for local development.
$ git pull upstream master

4. This is how you set up your fork for local development:

.. note::
You will need to have ``tempo`` and ``suitesparse`` installed before
running the commands below.
You will need to have ``tempo2`` and ``suitesparse`` installed before
running these commands.

::
If you installed the dependencies via conda, you are good to go!

$ cd enterprise/
If you set up a ``conda`` virtual environment with the dependencies already,
you can add your local fork of ``enterprise`` to it by running::

$ pip install -e .

If you manually installed the dependencies, this will make and activate a
Python3 virtual env with your local fork of ``enterprise``::

$ make init
$ source .enterprise/bin/activate


5. Create a branch for local development::

$ git checkout -b name-of-your-bugfix-or-feature
Expand All @@ -93,7 +127,6 @@ Ready to contribute? Here's how to set up `enterprise` for local development.
6. When you're done making changes, check that your changes pass flake8 and the tests, including testing other Python versions with tox (tox not implemented yet). Also check that any new docs are formatted correctly::

$ make test
$ make lint
$ make docs

To get flake8 and tox, just pip install them into your virtualenv.
Expand All @@ -114,9 +147,8 @@ Before you submit a pull request, check that it meets these guidelines:
1. The pull request should include tests.
2. If the pull request adds functionality, the docs should be updated. Put
your new functionality into a function with a docstring.
3. The pull request should work for Python 2.6, 2.7, 3.3, 3.4 and 3.5, and for PyPy. Check
https://travis-ci.org/nanograv/enterprise/pull_requests
and make sure that the tests pass for all supported Python versions.
3. The pull request should work for all supported versions of Python: 3.8, 3.9, 3.10, 3.11, and 3.12. You
can see the progress of the tests in the `Checks` tab of your GitHub pull request.

Tips
----
Expand All @@ -130,3 +162,4 @@ To track and checkout another user's branch::
$ git remote add other-user-username https://github.com/other-user-username/enterprise.git
$ git fetch other-user-username
$ git checkout --track -b branch-name other-user-username/branch-name

4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[![Build Status](https://github.com/nanograv/enterprise/workflows/CI-Tests/badge.svg)](https://github.com/nanograv/enterprise/actions)
[![Documentation Status](https://readthedocs.org/projects/enterprise/badge/?version=latest)](https://enterprise.readthedocs.io/en/latest/?badge=latest)
[![Test Coverage](https://codecov.io/gh/nanograv/enterprise/branch/master/graph/badge.svg?token=YXSX3293VF)](https://codecov.io/gh/nanograv/enterprise)
![Python Versions](https://img.shields.io/badge/python-3.7%2C%203.8%2C%203.9%2C%203.10-blue.svg)
![Python Versions](https://img.shields.io/badge/python-3.8%2C%203.9%2C%203.10%2C%203.11%2C%203.12-blue.svg)

[![Zenodo DOI 4059815](https://zenodo.org/badge/DOI/10.5281/zenodo.4059815.svg)](https://doi.org/10.5281/zenodo.4059815)

Expand All @@ -14,7 +14,7 @@ Inference SuitE) is a pulsar timing analysis code, aimed at noise
analysis, gravitational-wave searches, and timing model analysis.

- Note: `enterprise>=3.0` does not support Python2.7. You must use
Python \>= 3.7.
Python \>= 3.8.
- Free software: MIT license
- Documentation: <https://enterprise.readthedocs.io>.

Expand Down
2 changes: 1 addition & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Welcome to enterprise's documentation!
.. image:: https://codecov.io/gh/nanograv/enterprise/branch/master/graph/badge.svg?token=YXSX3293VF
:target: https://codecov.io/gh/nanograv/enterprise
:alt: Test Coverage
.. image:: https://img.shields.io/badge/python-3.6%2C%203.7%2C%203.8-blue.svg
.. image:: https://img.shields.io/badge/python-3.8%2C%203.9%2C%203.10%2C%203.11%2C%203.12-blue.svg
:alt: Python Versions

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.4059815.svg
Expand Down
19 changes: 19 additions & 0 deletions docs/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,17 @@ Installation
.. .. _Python installation guide: http://docs.python-guide.org/en/latest/starting/installation/


Using conda
-----------

``enterprise`` is available via conda-forge as `enterprise-pulsar <https://anaconda.org/conda-forge/enterprise-pulsar>`_.
If you use the Anaconda distribution of Python, we strongly recommend installing via the ``conda`` command:

.. code-block:: console

$ conda install -c conda-forge enterprise-pulsar


From sources
------------

Expand Down Expand Up @@ -57,3 +68,11 @@ If you want to run tests or do any other development then also run:

.. _Github repo: https://github.com/nanograv/enterprise
.. _tarball: https://github.com/nanograv/enterprise/tarball/master


Tips
----

If you have a computer with an Apple Silicon chip, see `these instructions`_ on how to install Apple Intel packages using Rosetta.

.. _these instructions: https://conda-forge.org/docs/user/tipsandtricks.html#installing-apple-intel-packages-on-apple-silicon
Loading
Loading