gpjax 0.8.2__tar.gz → 0.9.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- gpjax-0.9.1/.github/CODE_OF_CONDUCT.md +23 -0
- gpjax-0.9.1/.github/ISSUE_TEMPLATE/01_BUG_REPORT.md +37 -0
- gpjax-0.9.1/.github/ISSUE_TEMPLATE/02_FEATURE_REQUEST.md +32 -0
- gpjax-0.9.1/.github/ISSUE_TEMPLATE/03_CODEBASE_IMPROVEMENT.md +7 -0
- gpjax-0.9.1/.github/ISSUE_TEMPLATE/04_DOCS_IMPROVEMENT.md +7 -0
- gpjax-0.9.1/.github/ISSUE_TEMPLATE/config.yml +6 -0
- gpjax-0.9.1/.github/codecov.yml +18 -0
- gpjax-0.9.1/.github/labels.yml +66 -0
- gpjax-0.9.1/.github/pull_request_template.md +11 -0
- gpjax-0.9.1/.github/release-drafter.yml +28 -0
- gpjax-0.9.1/.github/workflows/build_docs.yml +63 -0
- gpjax-0.9.1/.github/workflows/integration.yml +34 -0
- gpjax-0.9.1/.github/workflows/labeler.yml +18 -0
- gpjax-0.9.1/.github/workflows/pr_greeting.yml +39 -0
- gpjax-0.9.1/.github/workflows/ruff.yml +12 -0
- gpjax-0.9.1/.github/workflows/stale_prs.yml +45 -0
- gpjax-0.9.1/.github/workflows/test_docs.yml +43 -0
- gpjax-0.9.1/.github/workflows/tests.yml +48 -0
- gpjax-0.9.1/.gitignore +155 -0
- gpjax-0.9.1/CITATION.bib +29 -0
- gpjax-0.9.1/Makefile +34 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/PKG-INFO +31 -32
- {gpjax-0.8.2 → gpjax-0.9.1}/README.md +6 -9
- gpjax-0.9.1/docs/CODE_OF_CONDUCT.md +25 -0
- gpjax-0.9.1/docs/GOVERNANCE.md +96 -0
- gpjax-0.9.1/docs/contributing.md +152 -0
- gpjax-0.9.1/docs/design.md +38 -0
- gpjax-0.9.1/docs/index.md +75 -0
- gpjax-0.9.1/docs/index.rst +5 -0
- gpjax-0.9.1/docs/installation.md +49 -0
- gpjax-0.9.1/docs/javascripts/katex.js +26 -0
- gpjax-0.9.1/docs/refs.bib +126 -0
- gpjax-0.9.1/docs/scripts/gen_examples.py +102 -0
- gpjax-0.9.1/docs/scripts/gen_pages.py +82 -0
- gpjax-0.9.1/docs/scripts/notebook_converter.py +30 -0
- gpjax-0.9.1/docs/scripts/sharp_bits_figure.py +108 -0
- gpjax-0.9.1/docs/sharp_bits.md +177 -0
- gpjax-0.9.1/docs/static/GP.pdf +0 -0
- gpjax-0.9.1/docs/static/GP.svg +434 -0
- gpjax-0.9.1/docs/static/bijector_figure.svg +813 -0
- gpjax-0.9.1/docs/static/css/gpjax_theme.css +3 -0
- gpjax-0.9.1/docs/static/favicon.ico +0 -0
- gpjax-0.9.1/docs/static/gpjax.mplstyle +54 -0
- gpjax-0.9.1/docs/static/gpjax_logo.pdf +0 -0
- gpjax-0.9.1/docs/static/gpjax_logo.svg +27 -0
- gpjax-0.9.1/docs/static/jaxkern/lato.ttf +0 -0
- gpjax-0.9.1/docs/static/jaxkern/logo.png +0 -0
- gpjax-0.9.1/docs/static/jaxkern/logo.svg +3712 -0
- gpjax-0.9.1/docs/static/jaxkern/main.py +59 -0
- gpjax-0.9.1/docs/static/step_size_figure.png +0 -0
- gpjax-0.9.1/docs/static/step_size_figure.svg +559 -0
- gpjax-0.9.1/docs/stylesheets/extra.css +103 -0
- gpjax-0.9.1/docs/stylesheets/permalinks.css +38 -0
- gpjax-0.9.1/examples/backend.py +371 -0
- gpjax-0.9.1/examples/barycentres/barycentre_gp.gif +0 -0
- gpjax-0.9.1/examples/barycentres.py +308 -0
- gpjax-0.9.1/examples/bayesian_optimisation.py +790 -0
- gpjax-0.9.1/examples/classification.py +324 -0
- gpjax-0.9.1/examples/collapsed_vi.py +248 -0
- gpjax-0.9.1/examples/constructing_new_kernels.py +338 -0
- gpjax-0.9.1/examples/data/max_tempeature_switzerland.csv +153 -0
- gpjax-0.9.1/examples/data/yacht_hydrodynamics.data +308 -0
- gpjax-0.9.1/examples/decision_making.py +411 -0
- gpjax-0.9.1/examples/deep_kernels.py +276 -0
- gpjax-0.9.1/examples/gpjax.mplstyle +51 -0
- gpjax-0.9.1/examples/graph_kernels.py +233 -0
- gpjax-0.9.1/examples/intro_to_gps/decomposed_mll.png +0 -0
- gpjax-0.9.1/examples/intro_to_gps/generating_process.png +0 -0
- gpjax-0.9.1/examples/intro_to_gps.py +547 -0
- gpjax-0.9.1/examples/intro_to_kernels.py +673 -0
- gpjax-0.9.1/examples/likelihoods_guide.py +294 -0
- gpjax-0.9.1/examples/oceanmodelling.py +554 -0
- gpjax-0.9.1/examples/poisson.py +266 -0
- gpjax-0.9.1/examples/regression.py +264 -0
- gpjax-0.9.1/examples/uncollapsed_vi.py +369 -0
- gpjax-0.9.1/examples/utils.py +80 -0
- gpjax-0.9.1/examples/yacht.py +293 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/__init__.py +9 -6
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/citation.py +0 -47
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/dataset.py +19 -13
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/decision_maker.py +16 -19
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/posterior_handler.py +20 -23
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/search_space.py +1 -1
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/test_functions/continuous_functions.py +23 -16
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/test_functions/non_conjugate_functions.py +8 -8
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/utility_functions/__init__.py +8 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/utility_functions/base.py +9 -13
- gpjax-0.9.1/gpjax/decision_making/utility_functions/expected_improvement.py +112 -0
- gpjax-0.9.1/gpjax/decision_making/utility_functions/probability_of_improvement.py +125 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/utility_functions/thompson_sampling.py +4 -4
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/utility_maximizer.py +7 -10
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/utils.py +16 -2
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/distributions.py +54 -63
- gpjax-0.9.1/gpjax/fit.py +351 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/gps.py +205 -213
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/integrators.py +39 -41
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/__init__.py +3 -0
- gpjax-0.9.1/gpjax/kernels/approximations/rff.py +102 -0
- gpjax-0.9.1/gpjax/kernels/base.py +339 -0
- gpjax-0.9.1/gpjax/kernels/computations/base.py +109 -0
- gpjax-0.9.1/gpjax/kernels/computations/basis_functions.py +74 -0
- gpjax-0.9.1/gpjax/kernels/computations/constant_diagonal.py +55 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/computations/dense.py +4 -17
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/computations/diagonal.py +6 -31
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/computations/eigen.py +13 -22
- gpjax-0.9.1/gpjax/kernels/non_euclidean/graph.py +113 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/non_euclidean/utils.py +4 -5
- gpjax-0.9.1/gpjax/kernels/nonstationary/arccosine.py +160 -0
- gpjax-0.9.1/gpjax/kernels/nonstationary/linear.py +79 -0
- gpjax-0.9.1/gpjax/kernels/nonstationary/polynomial.py +91 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/stationary/__init__.py +2 -0
- gpjax-0.9.1/gpjax/kernels/stationary/base.py +194 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/stationary/matern12.py +14 -30
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/stationary/matern32.py +20 -38
- gpjax-0.9.1/gpjax/kernels/stationary/matern52.py +57 -0
- gpjax-0.9.1/gpjax/kernels/stationary/periodic.py +91 -0
- gpjax-0.9.1/gpjax/kernels/stationary/powered_exponential.py +94 -0
- gpjax-0.9.1/gpjax/kernels/stationary/rational_quadratic.py +86 -0
- gpjax-0.9.1/gpjax/kernels/stationary/rbf.py +48 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/stationary/utils.py +0 -1
- gpjax-0.9.1/gpjax/kernels/stationary/white.py +64 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/likelihoods.py +69 -50
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/lower_cholesky.py +23 -14
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/mean_functions.py +44 -47
- gpjax-0.9.1/gpjax/objectives.py +417 -0
- gpjax-0.9.1/gpjax/parameters.py +167 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/scan.py +3 -7
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/typing.py +5 -3
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/variational_families.py +207 -172
- gpjax-0.9.1/mkdocs.yml +135 -0
- gpjax-0.9.1/pyproject.toml +232 -0
- gpjax-0.9.1/static/CONTRIBUTING.md +152 -0
- gpjax-0.9.1/static/paper.bib +285 -0
- gpjax-0.9.1/static/paper.md +59 -0
- gpjax-0.9.1/static/paper.pdf +0 -0
- gpjax-0.9.1/tests/__init__.py +0 -0
- gpjax-0.9.1/tests/conftest.py +8 -0
- gpjax-0.9.1/tests/integration_tests.py +105 -0
- gpjax-0.9.1/tests/test_citations.py +160 -0
- gpjax-0.9.1/tests/test_dataset.py +182 -0
- gpjax-0.9.1/tests/test_decision_making/__init__.py +0 -0
- gpjax-0.9.1/tests/test_decision_making/test_decision_maker.py +474 -0
- gpjax-0.9.1/tests/test_decision_making/test_posterior_handler.py +315 -0
- gpjax-0.9.1/tests/test_decision_making/test_search_space.py +206 -0
- gpjax-0.9.1/tests/test_decision_making/test_test_functions/__init__.py +0 -0
- gpjax-0.9.1/tests/test_decision_making/test_test_functions/test_continuous_functions.py +185 -0
- gpjax-0.9.1/tests/test_decision_making/test_test_functions/test_non_conjugate_functions.py +112 -0
- gpjax-0.9.1/tests/test_decision_making/test_utility_functions/__init__.py +0 -0
- gpjax-0.9.1/tests/test_decision_making/test_utility_functions/test_base.py +26 -0
- gpjax-0.9.1/tests/test_decision_making/test_utility_functions/test_expected_improvement.py +67 -0
- gpjax-0.9.1/tests/test_decision_making/test_utility_functions/test_probability_of_improvement.py +64 -0
- gpjax-0.9.1/tests/test_decision_making/test_utility_functions/test_thompson_sampling.py +120 -0
- gpjax-0.9.1/tests/test_decision_making/test_utility_functions/test_utility_functions.py +167 -0
- gpjax-0.9.1/tests/test_decision_making/test_utility_maximizer.py +165 -0
- gpjax-0.9.1/tests/test_decision_making/test_utils.py +84 -0
- gpjax-0.9.1/tests/test_decision_making/utils.py +90 -0
- gpjax-0.9.1/tests/test_fit.py +326 -0
- gpjax-0.9.1/tests/test_gaussian_distribution.py +163 -0
- gpjax-0.9.1/tests/test_gps.py +346 -0
- gpjax-0.9.1/tests/test_integrators.py +92 -0
- {gpjax-0.8.2/gpjax/base → gpjax-0.9.1/tests/test_kernels}/__init__.py +1 -23
- gpjax-0.9.1/tests/test_kernels/test_approximations.py +167 -0
- gpjax-0.9.1/tests/test_kernels/test_base.py +211 -0
- gpjax-0.9.1/tests/test_kernels/test_computation.py +81 -0
- gpjax-0.9.1/tests/test_kernels/test_non_euclidean.py +50 -0
- gpjax-0.9.1/tests/test_kernels/test_nonstationary.py +206 -0
- gpjax-0.9.1/tests/test_kernels/test_stationary.py +224 -0
- gpjax-0.9.1/tests/test_kernels/test_utils.py +50 -0
- gpjax-0.9.1/tests/test_likelihoods.py +113 -0
- gpjax-0.9.1/tests/test_lower_cholesky.py +110 -0
- gpjax-0.9.1/tests/test_markdown.py +20 -0
- gpjax-0.9.1/tests/test_mean_functions.py +88 -0
- gpjax-0.9.1/tests/test_objectives.py +247 -0
- gpjax-0.9.1/tests/test_parameters.py +56 -0
- gpjax-0.9.1/tests/test_variational_families.py +227 -0
- gpjax-0.8.2/gpjax/base/module.py +0 -416
- gpjax-0.8.2/gpjax/base/param.py +0 -73
- gpjax-0.8.2/gpjax/fit.py +0 -321
- gpjax-0.8.2/gpjax/flax_base/bijectors.py +0 -8
- gpjax-0.8.2/gpjax/flax_base/param.py +0 -16
- gpjax-0.8.2/gpjax/flax_base/types.py +0 -15
- gpjax-0.8.2/gpjax/kernels/approximations/rff.py +0 -92
- gpjax-0.8.2/gpjax/kernels/base.py +0 -208
- gpjax-0.8.2/gpjax/kernels/computations/base.py +0 -89
- gpjax-0.8.2/gpjax/kernels/computations/basis_functions.py +0 -90
- gpjax-0.8.2/gpjax/kernels/computations/constant_diagonal.py +0 -92
- gpjax-0.8.2/gpjax/kernels/non_euclidean/graph.py +0 -107
- gpjax-0.8.2/gpjax/kernels/nonstationary/arccosine.py +0 -122
- gpjax-0.8.2/gpjax/kernels/nonstationary/linear.py +0 -59
- gpjax-0.8.2/gpjax/kernels/nonstationary/polynomial.py +0 -66
- gpjax-0.8.2/gpjax/kernels/stationary/matern52.py +0 -75
- gpjax-0.8.2/gpjax/kernels/stationary/periodic.py +0 -64
- gpjax-0.8.2/gpjax/kernels/stationary/powered_exponential.py +0 -69
- gpjax-0.8.2/gpjax/kernels/stationary/rational_quadratic.py +0 -62
- gpjax-0.8.2/gpjax/kernels/stationary/rbf.py +0 -66
- gpjax-0.8.2/gpjax/kernels/stationary/white.py +0 -62
- gpjax-0.8.2/gpjax/objectives.py +0 -498
- gpjax-0.8.2/gpjax/progress_bar.py +0 -131
- gpjax-0.8.2/pyproject.toml +0 -220
- {gpjax-0.8.2 → gpjax-0.9.1}/LICENSE +0 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/__init__.py +0 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/decision_making/test_functions/__init__.py +0 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/approximations/__init__.py +0 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/computations/__init__.py +0 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/non_euclidean/__init__.py +0 -0
- {gpjax-0.8.2 → gpjax-0.9.1}/gpjax/kernels/nonstationary/__init__.py +0 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
Like the technical community as a whole, the GPJax team and community is made up of a mixture of professionals and volunteers from all over the world, working on every aspect of the mission - including mentorship, teaching and connecting people.
|
|
2
|
+
|
|
3
|
+
Diversity is one of our huge strengths, but it can also lead to communication issues and unhappiness. To that end, we have a few ground rules that we ask people to adhere to when they're participating within this community and project. These rules apply equally to founders, mentors and those seeking help and guidance.
|
|
4
|
+
|
|
5
|
+
This isn't an exhaustive list of things that you can't do. Rather, take it in the spirit in which it's intended - a guide to make it easier to enrich all of us, the technical community and the conferences and usergroups we hope to guide new speakers to.
|
|
6
|
+
|
|
7
|
+
This code of conduct applies to all communication: this includes IRC, the mailing list, and other forums such as Skype, Google+ Hangouts, etc.
|
|
8
|
+
|
|
9
|
+
- Be welcoming, friendly, and patient.
|
|
10
|
+
- Be considerate. Your work will be used by other people, and you in turn will depend on the work of others. Any decision you make will affect users and colleagues, and you should take those consequences into account when making decisions.
|
|
11
|
+
- Be respectful. __Not all of us will agree all the time, but disagreement is no excuse for poor behaviour and poor manners.__ We might all experience some frustration now and then, but we cannot allow that frustration to turn into a personal attack. It's important to remember that a community where people feel uncomfortable or threatened is not a productive one. Members of the GPJax community should be respectful when dealing with other members as well as with people outside the GPJax community and with user groups/conferences, usergroup/conference organizers.
|
|
12
|
+
- Be careful in the words that you choose. Remember that sexist, racist, and other exclusionary jokes can be offensive to those around you. __Be kind and welcoming to others.__ Do not insult or put down other participants. Behave professionally. The harassment and exclusionary behaviour towards others is unacceptable. This includes, but is not limited to:
|
|
13
|
+
- Violent threats or language directed against another person.
|
|
14
|
+
- Discriminatory jokes and language.
|
|
15
|
+
- Posting sexually explicit or violent material.
|
|
16
|
+
- Posting (or threatening to post) other people's personally identifying information ("doxing").
|
|
17
|
+
- Personal insults, especially those using racist or sexist terms.
|
|
18
|
+
- Unwelcome sexual attention.
|
|
19
|
+
- Advocating for, or encouraging, any of the above behaviour.
|
|
20
|
+
- Repeated harassment of others. In general, if someone asks you to stop, then stop.
|
|
21
|
+
- When we disagree, we try to understand why. Disagreements, both social and technical, happen all the time and GPJax is no exception. It is important that we resolve disagreements and differing views constructively. Remember that we're different. The strength of GPJax comes from its varied community, people from a wide range of backgrounds. Different people have different perspectives on issues. Being unable to understand why someone holds a viewpoint doesn't mean that they're wrong. Don't forget that it is human to err and blaming each other doesn't get us anywhere, rather offer to help resolving issues and to help learn from mistakes.
|
|
22
|
+
|
|
23
|
+
Text adapted from the [Speak Up! project](http://web.archive.org/web/20141109123859/http://speakup.io/coc.html) and [Django](https://www.djangoproject.com/conduct/)
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug Report
|
|
3
|
+
about: Create a report to help GPJax to improve
|
|
4
|
+
title: "bug: "
|
|
5
|
+
labels: "bug"
|
|
6
|
+
assignees: ""
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Bug Report
|
|
10
|
+
|
|
11
|
+
**GPJax version:**
|
|
12
|
+
|
|
13
|
+
<!-- Please specify commit or tag version. -->
|
|
14
|
+
|
|
15
|
+
**Current behavior:**
|
|
16
|
+
|
|
17
|
+
<!-- Describe how the bug manifests. -->
|
|
18
|
+
|
|
19
|
+
**Expected behavior:**
|
|
20
|
+
|
|
21
|
+
<!-- Describe what the behavior would be without the bug. -->
|
|
22
|
+
|
|
23
|
+
**Steps to reproduce:**
|
|
24
|
+
|
|
25
|
+
<!-- Please explain the steps required to duplicate the issue, especially if you are able to provide a sample application. -->
|
|
26
|
+
|
|
27
|
+
**Related code:**
|
|
28
|
+
|
|
29
|
+
<!-- If you are able to illustrate the bug or feature request with an example, please provide it here. -->
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
insert short code snippets here
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**Other information:**
|
|
36
|
+
|
|
37
|
+
<!-- List any other information that is relevant to your issue. Related issues, suggestions on how to fix, Stack Overflow links, forum links, etc. -->
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature Request
|
|
3
|
+
about: Suggest an idea for this project
|
|
4
|
+
title: "feat: "
|
|
5
|
+
labels: "enhancement"
|
|
6
|
+
assignees: ""
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Feature Request
|
|
10
|
+
|
|
11
|
+
**Describe the Feature Request**
|
|
12
|
+
|
|
13
|
+
<!-- A clear and concise description of what the feature request is. Please include if your feature request is related to a problem. -->
|
|
14
|
+
|
|
15
|
+
**Describe Preferred Solution**
|
|
16
|
+
|
|
17
|
+
<!-- A clear and concise description of what you want to happen. -->
|
|
18
|
+
|
|
19
|
+
**Describe Alternatives**
|
|
20
|
+
|
|
21
|
+
<!-- A clear and concise description of any alternative solutions or features you've considered. -->
|
|
22
|
+
|
|
23
|
+
**Related Code**
|
|
24
|
+
|
|
25
|
+
<!-- If you are able to illustrate the bug or feature request with an example, please provide it here. -->
|
|
26
|
+
|
|
27
|
+
**Additional Context**
|
|
28
|
+
|
|
29
|
+
<!-- List any other information that is relevant to your issue. Stack traces, related issues, suggestions on how to add, use case, Stack Overflow links, forum links, screenshots, OS if applicable, etc. -->
|
|
30
|
+
|
|
31
|
+
**If the feature request is approved, would you be willing to submit a PR?**
|
|
32
|
+
Yes / No _(Help can be provided if you need assistance submitting a PR)_
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# codecov used to be able to find this anywhere, now we have to manually
|
|
2
|
+
# tell it where to look
|
|
3
|
+
comment: false
|
|
4
|
+
|
|
5
|
+
codecov:
|
|
6
|
+
notify:
|
|
7
|
+
require_ci_to_pass: no
|
|
8
|
+
|
|
9
|
+
coverage:
|
|
10
|
+
status:
|
|
11
|
+
patch:
|
|
12
|
+
default:
|
|
13
|
+
target: 50%
|
|
14
|
+
if_no_uploads: error
|
|
15
|
+
if_not_found: success
|
|
16
|
+
if_ci_failed: failure
|
|
17
|
+
project:
|
|
18
|
+
default: false
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
---
|
|
2
|
+
# Labels names are important as they are used by Release Drafter to decide
|
|
3
|
+
# regarding where to record them in changelog or if to skip them.
|
|
4
|
+
#
|
|
5
|
+
# The repository labels will be automatically configured using this file and
|
|
6
|
+
# the GitHub Action https://github.com/marketplace/actions/github-labeler.
|
|
7
|
+
- name: breaking
|
|
8
|
+
description: Breaking Changes
|
|
9
|
+
color: bfd4f2
|
|
10
|
+
- name: bug
|
|
11
|
+
description: Something isn't working
|
|
12
|
+
color: d73a4a
|
|
13
|
+
- name: build
|
|
14
|
+
description: Build System and Dependencies
|
|
15
|
+
color: bfdadc
|
|
16
|
+
- name: ci
|
|
17
|
+
description: Continuous Integration
|
|
18
|
+
color: 4a97d6
|
|
19
|
+
- name: dependencies
|
|
20
|
+
description: Pull requests that update a dependency file
|
|
21
|
+
color: 0366d6
|
|
22
|
+
- name: documentation
|
|
23
|
+
description: Improvements or additions to documentation
|
|
24
|
+
color: 0075ca
|
|
25
|
+
- name: duplicate
|
|
26
|
+
description: This issue or pull request already exists
|
|
27
|
+
color: cfd3d7
|
|
28
|
+
- name: enhancement
|
|
29
|
+
description: New feature or request
|
|
30
|
+
color: a2eeef
|
|
31
|
+
- name: github_actions
|
|
32
|
+
description: Pull requests that update Github_actions code
|
|
33
|
+
color: "000000"
|
|
34
|
+
- name: good first issue
|
|
35
|
+
description: Good for newcomers
|
|
36
|
+
color: 7057ff
|
|
37
|
+
- name: help wanted
|
|
38
|
+
description: Extra attention is needed
|
|
39
|
+
color: 008672
|
|
40
|
+
- name: invalid
|
|
41
|
+
description: This doesn't seem right
|
|
42
|
+
color: e4e669
|
|
43
|
+
- name: performance
|
|
44
|
+
description: Performance
|
|
45
|
+
color: "016175"
|
|
46
|
+
- name: python
|
|
47
|
+
description: Pull requests that update Python code
|
|
48
|
+
color: 2b67c6
|
|
49
|
+
- name: question
|
|
50
|
+
description: Further information is requested
|
|
51
|
+
color: d876e3
|
|
52
|
+
- name: refactoring
|
|
53
|
+
description: Refactoring
|
|
54
|
+
color: ef67c4
|
|
55
|
+
- name: removal
|
|
56
|
+
description: Removals and Deprecations
|
|
57
|
+
color: 9ae7ea
|
|
58
|
+
- name: style
|
|
59
|
+
description: Style
|
|
60
|
+
color: c120e5
|
|
61
|
+
- name: testing
|
|
62
|
+
description: Testing
|
|
63
|
+
color: b1fc6f
|
|
64
|
+
- name: wontfix
|
|
65
|
+
description: This will not be worked on
|
|
66
|
+
color: ffffff
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
## Checklist
|
|
2
|
+
|
|
3
|
+
- [ ] I've formatted the new code by running `hatch run dev:format` before committing.
|
|
4
|
+
- [ ] I've added tests for new code.
|
|
5
|
+
- [ ] I've added docstrings for the new code.
|
|
6
|
+
|
|
7
|
+
## Description
|
|
8
|
+
|
|
9
|
+
Please describe your changes here. If this fixes a bug, please link to the issue, if possible.
|
|
10
|
+
|
|
11
|
+
Issue Number: N/A
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
categories:
|
|
2
|
+
- title: ":boom: Breaking Changes"
|
|
3
|
+
label: "breaking"
|
|
4
|
+
- title: ":rocket: Features"
|
|
5
|
+
label: "enhancement"
|
|
6
|
+
- title: ":fire: Removals and Deprecations"
|
|
7
|
+
label: "removal"
|
|
8
|
+
- title: ":beetle: Fixes"
|
|
9
|
+
label: "bug"
|
|
10
|
+
- title: ":racehorse: Performance"
|
|
11
|
+
label: "performance"
|
|
12
|
+
- title: ":rotating_light: Testing"
|
|
13
|
+
label: "testing"
|
|
14
|
+
- title: ":construction_worker: Continuous Integration"
|
|
15
|
+
label: "ci"
|
|
16
|
+
- title: ":books: Documentation"
|
|
17
|
+
label: "documentation"
|
|
18
|
+
- title: ":hammer: Refactoring"
|
|
19
|
+
label: "refactoring"
|
|
20
|
+
- title: ":lipstick: Style"
|
|
21
|
+
label: "style"
|
|
22
|
+
- title: ":package: Dependencies"
|
|
23
|
+
labels:
|
|
24
|
+
- "dependencies"
|
|
25
|
+
- "build"
|
|
26
|
+
template: |
|
|
27
|
+
## Changes
|
|
28
|
+
$CHANGES
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
name: Build the documentation
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
tags:
|
|
8
|
+
- "**"
|
|
9
|
+
workflow_dispatch:
|
|
10
|
+
|
|
11
|
+
permissions:
|
|
12
|
+
contents: write
|
|
13
|
+
|
|
14
|
+
jobs:
|
|
15
|
+
build-docs:
|
|
16
|
+
concurrency: ci-${{ github.ref }}
|
|
17
|
+
name: Build docs (${{ matrix.python-version }}, ${{ matrix.os }})
|
|
18
|
+
runs-on: ${{ matrix.os }}
|
|
19
|
+
defaults:
|
|
20
|
+
run:
|
|
21
|
+
shell: bash -l {0}
|
|
22
|
+
strategy:
|
|
23
|
+
matrix:
|
|
24
|
+
os: ["ubuntu-latest"]
|
|
25
|
+
python-version: ["3.10"]
|
|
26
|
+
|
|
27
|
+
steps:
|
|
28
|
+
# Grap the latest commit from the branch
|
|
29
|
+
- name: Checkout the branch
|
|
30
|
+
uses: actions/checkout@v3.5.2
|
|
31
|
+
with:
|
|
32
|
+
persist-credentials: false
|
|
33
|
+
|
|
34
|
+
# Create a virtual environment
|
|
35
|
+
- name: create Conda environment
|
|
36
|
+
uses: conda-incubator/setup-miniconda@v2
|
|
37
|
+
with:
|
|
38
|
+
auto-update-conda: true
|
|
39
|
+
python-version: ${{ matrix.python-version }}
|
|
40
|
+
|
|
41
|
+
# Install katex for math support
|
|
42
|
+
- name: Install NPM
|
|
43
|
+
uses: actions/setup-node@v3
|
|
44
|
+
with:
|
|
45
|
+
node-version: 16
|
|
46
|
+
- name: Install KaTeX
|
|
47
|
+
run: |
|
|
48
|
+
npm install katex
|
|
49
|
+
|
|
50
|
+
# Install Hatch
|
|
51
|
+
- name: Install Hatch
|
|
52
|
+
uses: pypa/hatch@install
|
|
53
|
+
|
|
54
|
+
- name: Build the documentation with MKDocs
|
|
55
|
+
run: |
|
|
56
|
+
conda install pandoc
|
|
57
|
+
hatch run docs:build
|
|
58
|
+
|
|
59
|
+
- name: Deploy Page 🚀
|
|
60
|
+
uses: JamesIves/github-pages-deploy-action@v4.4.1
|
|
61
|
+
with:
|
|
62
|
+
branch: gh-pages
|
|
63
|
+
folder: site
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
name: Integration Tests
|
|
2
|
+
on:
|
|
3
|
+
pull_request:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
integration-tests:
|
|
10
|
+
name: Run Integration Tests
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
strategy:
|
|
13
|
+
matrix:
|
|
14
|
+
# Select the Python versions to test against
|
|
15
|
+
os: ["ubuntu-latest", "macos-latest"]
|
|
16
|
+
python-version: ["3.10", "3.11"]
|
|
17
|
+
fail-fast: true
|
|
18
|
+
steps:
|
|
19
|
+
- name: Check out the code
|
|
20
|
+
uses: actions/checkout@v3.5.2
|
|
21
|
+
with:
|
|
22
|
+
fetch-depth: 1
|
|
23
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
24
|
+
uses: actions/setup-python@v4
|
|
25
|
+
with:
|
|
26
|
+
python-version: ${{ matrix.python-version }}
|
|
27
|
+
|
|
28
|
+
# Install Hatch
|
|
29
|
+
- name: Install Hatch
|
|
30
|
+
uses: pypa/hatch@install
|
|
31
|
+
|
|
32
|
+
# Run the unit tests and build the coverage report
|
|
33
|
+
- name: Run Integration Tests
|
|
34
|
+
run: hatch run docs:integration
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
name: Labeler
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
labeler:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- name: Check out the repository
|
|
13
|
+
uses: actions/checkout@v3.5.2
|
|
14
|
+
|
|
15
|
+
- name: Run Labeler
|
|
16
|
+
uses: crazy-max/ghaction-github-labeler@v4.1.0
|
|
17
|
+
with:
|
|
18
|
+
skip-delete: true
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: PR Greetings
|
|
3
|
+
|
|
4
|
+
on: [pull_request_target]
|
|
5
|
+
|
|
6
|
+
permissions:
|
|
7
|
+
pull-requests: write
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
greeting:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/first-interaction@v1
|
|
15
|
+
with:
|
|
16
|
+
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
17
|
+
pr-message: >+
|
|
18
|
+
Thank you for opening your first PR into GPJax!
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
If you have not heard from us in a while, please feel free to ping
|
|
22
|
+
`@gpjax/developers` or anyone who has commented on the PR.
|
|
23
|
+
Most of our reviewers are volunteers and sometimes things fall
|
|
24
|
+
through the cracks.
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
You can also join us [on
|
|
28
|
+
Slack](https://join.slack.com/t/gpjax/shared_invite/zt-1da57pmjn-rdBCVg9kApirEEn2E5Q2Zw) for real-time
|
|
29
|
+
discussion.
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
For details on testing, writing docs, and our review process,
|
|
33
|
+
please see [the developer
|
|
34
|
+
guide](https://docs.jaxgaussianprocesses.com/contributing/)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
We strive to be a welcoming and open project. Please follow our
|
|
38
|
+
[Code of
|
|
39
|
+
Conduct](https://github.com/JaxGaussianProcesses/GPJax/blob/main/.github/CODE_OF_CONDUCT.md).
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
name: Close stale issues
|
|
2
|
+
on:
|
|
3
|
+
schedule:
|
|
4
|
+
- cron: "30 8 * * *"
|
|
5
|
+
|
|
6
|
+
jobs:
|
|
7
|
+
close-issues:
|
|
8
|
+
runs-on: ubuntu-latest
|
|
9
|
+
permissions:
|
|
10
|
+
issues: write
|
|
11
|
+
pull-requests: write
|
|
12
|
+
steps:
|
|
13
|
+
- uses: actions/stale@v9.0.0
|
|
14
|
+
with:
|
|
15
|
+
stale-issue-label: "stale"
|
|
16
|
+
stale-pr-label: "stale"
|
|
17
|
+
exempt-issue-label: "no-stale,help-wanted"
|
|
18
|
+
exempt-pr-label: "no-stale,feedback-wanted"
|
|
19
|
+
remove-stale-when-updated: true
|
|
20
|
+
# Days before issue/PR is marked stale
|
|
21
|
+
days-before-stale: 70
|
|
22
|
+
# Days before an issue/PR is closed after marking
|
|
23
|
+
days-before-close: 7
|
|
24
|
+
stale-issue-message: >
|
|
25
|
+
There has been no recent activity on this issue. To keep our issues log
|
|
26
|
+
clean, we remove old and inactive issues.
|
|
27
|
+
|
|
28
|
+
Please update to the latest version of GPJax and
|
|
29
|
+
check if that resolves the issue. Let us know if that works for you
|
|
30
|
+
by leaving a comment.
|
|
31
|
+
|
|
32
|
+
This issue is now marked as stale and will be closed if no
|
|
33
|
+
further activity occurs. If you believe that this is incorrect,
|
|
34
|
+
please comment. Thank you!
|
|
35
|
+
close-issue-message: >
|
|
36
|
+
There has been no activity on this PR for some time. Therefore, we will
|
|
37
|
+
be automatically closing the PR if no new activity occurs within the next
|
|
38
|
+
seven days.
|
|
39
|
+
|
|
40
|
+
Thank you for your contributions.
|
|
41
|
+
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
42
|
+
# Always start with the oldest issues
|
|
43
|
+
ascending: true
|
|
44
|
+
# Ensure that we do not encounter rate limits
|
|
45
|
+
operations-per-run: 60
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
name: Test documentation
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
|
|
6
|
+
jobs:
|
|
7
|
+
test-docs:
|
|
8
|
+
# Functionality for testing documentation builds on multiple OSes and Python versions
|
|
9
|
+
name: Build docs (${{ matrix.python-version }}, ${{ matrix.os }})
|
|
10
|
+
runs-on: ${{ matrix.os }}
|
|
11
|
+
concurrency:
|
|
12
|
+
group: ${{ github.head_ref }}
|
|
13
|
+
cancel-in-progress: true
|
|
14
|
+
defaults:
|
|
15
|
+
run:
|
|
16
|
+
shell: bash -l {0}
|
|
17
|
+
strategy:
|
|
18
|
+
matrix:
|
|
19
|
+
os: ["ubuntu-latest"]
|
|
20
|
+
python-version: ["3.10"]
|
|
21
|
+
|
|
22
|
+
steps:
|
|
23
|
+
# Grap the latest commit from the branch
|
|
24
|
+
- name: Checkout the branch
|
|
25
|
+
uses: actions/checkout@v3.5.2
|
|
26
|
+
with:
|
|
27
|
+
persist-credentials: false
|
|
28
|
+
|
|
29
|
+
# Create a virtual environment
|
|
30
|
+
- name: create Conda environment
|
|
31
|
+
uses: conda-incubator/setup-miniconda@v2
|
|
32
|
+
with:
|
|
33
|
+
auto-update-conda: true
|
|
34
|
+
python-version: ${{ matrix.python-version }}
|
|
35
|
+
|
|
36
|
+
# Install Hatch
|
|
37
|
+
- name: Install Hatch
|
|
38
|
+
uses: pypa/hatch@install
|
|
39
|
+
|
|
40
|
+
- name: Build the documentation with MKDocs
|
|
41
|
+
run: |
|
|
42
|
+
conda install pandoc
|
|
43
|
+
hatch run docs:build
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
name: Run Tests
|
|
2
|
+
on:
|
|
3
|
+
pull_request:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
unit-tests:
|
|
10
|
+
name: Run Tests
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
strategy:
|
|
13
|
+
matrix:
|
|
14
|
+
# Select the Python versions to test against
|
|
15
|
+
os: ["ubuntu-latest", "macos-latest"]
|
|
16
|
+
python-version: ["3.10", "3.11"]
|
|
17
|
+
fail-fast: true
|
|
18
|
+
steps:
|
|
19
|
+
- name: Check out the code
|
|
20
|
+
uses: actions/checkout@v3.5.2
|
|
21
|
+
with:
|
|
22
|
+
fetch-depth: 1
|
|
23
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
24
|
+
uses: actions/setup-python@v4
|
|
25
|
+
with:
|
|
26
|
+
python-version: ${{ matrix.python-version }}
|
|
27
|
+
|
|
28
|
+
# Install Hatch
|
|
29
|
+
- name: Install Hatch
|
|
30
|
+
uses: pypa/hatch@install
|
|
31
|
+
|
|
32
|
+
# Install the dependencies
|
|
33
|
+
- name: Check docstrings
|
|
34
|
+
run: |
|
|
35
|
+
hatch run dev:docstrings
|
|
36
|
+
|
|
37
|
+
# Run the unit tests and build the coverage report
|
|
38
|
+
- name: Run Tests
|
|
39
|
+
run: hatch run dev:coverage
|
|
40
|
+
|
|
41
|
+
- name: Upload code coverage
|
|
42
|
+
uses: codecov/codecov-action@v3
|
|
43
|
+
with:
|
|
44
|
+
token: ${{ secrets.CODECOV_TOKEN }}
|
|
45
|
+
file: ./coverage.xml
|
|
46
|
+
name: gpjax
|
|
47
|
+
flags: unittests
|
|
48
|
+
env_vars: OS,PYTHON
|