You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: contributing.md
+3-11Lines changed: 3 additions & 11 deletions
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,6 @@
1
1
# Contributing to the sits R package
2
2
3
-
- We welcome all contributors to sits package!
4
-
5
-
Please submit questions, bug reports, and requests in the [issues tracker](https://github.com/e-sensing/sits/issues).
6
-
7
-
If you plan to contribute code, go ahead! Fork the repo and submit a pull request. A few notes:
3
+
We welcome all contributors to sits package! Please submit questions, bug reports, and requests in the [issues tracker](https://github.com/e-sensing/sits/issues). If you plan to contribute code, go ahead! Fork the repo and submit a pull request. A few notes:
8
4
9
5
- This package is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.
10
6
- If you have large changes, please open an issue first to discuss.
@@ -13,14 +9,13 @@ their permission) for contributions that go beyond small typos in code or docume
13
9
- This package generally uses the [rOpenSci packaging guidelines](https://github.com/ropensci/onboarding/blob/master/packaging_guide.md) for style and structure.
14
10
- Documentation is generated by **roxygen2**. Please write documentation in code files and let it auto-generate documentation files.
15
11
- For more substantial contributions, consider adding a new section to one of the chapters of the SITS book (https://e-sensing.github.io/sitsbook/), which has been written in R markdown and whose source is available in the [sitsbook repository](https://github.com/e-sensing/sitsbook).
16
-
- We aim for testing that has high coverage and is robust. Include tests with
17
-
any major contribution to code.
12
+
- We aim for testing that has high coverage and is robust. Include tests with any major contribution to code.
18
13
- We particularly welcome additions in two areas: new STAC-based image repositories and new raster machine learning/deep learning algorithms. Please see more details below.
19
14
20
15
21
16
## General structure of sits code.
22
17
23
-
-New functions that build on the `sits` API should follow the general principles below.
18
+
New functions that build on the `sits` API should follow the general principles below.
24
19
25
20
### API design
26
21
@@ -42,7 +37,6 @@ their permission) for contributions that go beyond small typos in code or docume
42
37
43
38
The sits `code` relies on the packages of the `tidyverse` to work with tables and list. We use `dplyr` and `tidyr` for data selection and wrangling, `purrr` and `slider` for loops on lists and table, `lubridate` to handle dates and times.
44
39
45
-
46
40
### Adherence to the `sits` data types
47
41
48
42
- The `sits` package in built on top of three data types: time series tibble, data cubes and models. Most `sits` functions have one or more of these types as inputs and one of them as return values.
@@ -73,8 +67,6 @@ The sits `code` relies on the packages of the `tidyverse` to work with tables an
73
67
74
68
- Each STAC catalogue is different. The STAC specification allows providers to implement their data descriptions with specific information. For this reason, the generic API described in `api_source.R` needs to be specialized for each provider. Whenever a provider needs specific implementations of parts of the STAC protocol, we include them in separate files. For example, `api_source_mpc.R` implements specific quirks of the MPC platform. Similarly, specific support for CDSE (Copernicus Data Space Environment) is available in `api_source_cdse.R`.
75
69
76
-
- In summary, before including a new data provider, study the code that has been implemented.
77
-
78
70
### Supporting new Machine Learning and Deep Learning algorithms
79
71
80
72
- In general terms, ML/DL algorithms in `sits` are encapsulated as closures which are the output of the `sits_train()` function. In line with the established practices in **R**, each closure contains a function that classifies input values, as well as information on the samples used to train the model.
0 commit comments