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: _posts/2023-09-26-release.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,7 @@ FieldTrip version [20230926](http://github.com/fieldtrip/fieldtrip/releases/tag/
13
13
- Major changes to fieldtrip2fiff to facilitate exchangeability between FieldTrip and MNE-python through the fif-file format.
14
14
- Improvements for the support for BIDS derivatives.
15
15
- Major improvements of the [testing framework](https://www.fieldtriptoolbox.org/development/testing/), facilitating tests to be run by people external to the DCCN.
16
-
- Implementation of Github actions to suggest tests to run to evaluate the integrity of their Pull Requests.
16
+
- Implementation of GitHub actions to suggest tests to run to evaluate the integrity of their Pull Requests.
17
17
- Support for files created by the SimNIBS software.
18
18
- Improved handling of surface/volume meshes for advanced volume conduction modelling.
Copy file name to clipboardExpand all lines: development.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,16 +11,16 @@ For keeping track of new ideas, feature requests and bugs, we use an [issue trac
11
11
12
12
The source code in the FieldTrip toolbox is split over multiple directories reflecting its [modular organization](/development/architecture/#modular-organization). This facilitates a separation between high-level functions that do data bookkeeping, and low-level functions that focus on the algorithms.
13
13
14
-
We use a combination of tools (GitHub, Mastodon, website, mailman) that are loosely linked to each other; for example, every news item on the website is automatically tweeted. An overview is presented on the [integration](/development/integration) page.
14
+
We use a combination of tools (GitHub, BlueSky, website, mailman) that are loosely linked to each other; for example, every news item on the website is automatically tweeted. An overview is presented on the [integration](/development/integration) page.
15
15
16
-
-[Contribute to the development](/development/contribute)
Copy file name to clipboardExpand all lines: development/architecture.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,11 @@
1
1
---
2
-
title: Toolbox architecture and organization of the source code
2
+
title: Software architecture
3
3
tags: [development]
4
4
redirect_from:
5
5
- /development/module/
6
6
---
7
7
8
-
# Toolbox architecture and organization of the source code
8
+
# Software architecture
9
9
10
10
{% include markup/skyblue %}
11
11
The **[ft_examplefunction](/reference/ft_examplefunction)** provides a documented walkthrough of a typical high-level FieldTrip function that demonstrates a lot of the features presented below.
Copy file name to clipboardExpand all lines: development/datastructure.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,11 @@
1
1
---
2
-
title: Data structures used by FieldTrip
2
+
title: Data structures
3
3
tags: [development]
4
4
---
5
5
6
-
# Data structures used by FieldTrip
6
+
# Data structures
7
7
8
-
High-level FieldTrip functions usually expect input data as a MATLAB structure in a specific format, and produce output data. The data is represented as MATLAB structures which are documented in the following helper functions:
8
+
High-level FieldTrip functions expect input data as a MATLAB structure, and produce output data as a MATLAB structure. The input and output data structures are documented in the following helper functions:
Copy file name to clipboardExpand all lines: development/guideline/communication.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,13 +10,13 @@ To communicate with and reach a wide audience, we use the following channels
10
10
- this website, for documentation
11
11
- the email [discussion list](/discussion_list), for interactions among users to help each other out
12
12
-[GitHub](https://github.com/fieldtrip), for interaction between developpers
13
-
-[Mastodon](https://fosstodon.org/@fieldtriptoolbox), for release announcements and news items
13
+
-[Mastodon](https://fosstodon.org/@fieldtriptoolbox) and [BlueSky](https://bsky.app/profile/fieldtriptoolbox.bsky.social), for release announcements and news items
14
14
15
15
With each of these we reach out to a specific group FieldTrip stakeholders but - although they are partially overlapping - there is none through which we reach everyone.
16
16
17
17
## News items and releases
18
18
19
-
These are to be announced on the websiteand on Mastodon.
19
+
These are to be announced on the website, Mastodon and BlueSky.
20
20
21
21
To add a news item to the website, please file a pull request adding a new file to the [\_posts folder on the website](https://github.com/fieldtrip/website/tree/master/_posts). See example files there for how these (markdown) files should be structured. The latest files flagged as `category: news` will, when merged, appear on the homepage.
Copy file name to clipboardExpand all lines: development/integration.md
+14-10Lines changed: 14 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,15 +12,19 @@ We use <https://jekyllrb.com> for our website. The markdown documents are hosted
12
12
13
13
## Mailman
14
14
15
-
We use this for a number of email discussion lists. It is hosted by C&CZ at <http://mailman.science.ru.nl>.
15
+
We use this for the email discussion list. It is hosted by C&CZ at <http://mailman.science.ru.nl>.
16
16
17
17
## Mastodon
18
18
19
19
We use <https://fosstodon.org/@fieldtriptoolbox> to notify people about new releases and other updates.
20
20
21
+
## BlueSky
22
+
23
+
We use <https://bsky.app/profile/fieldtriptoolbox.bsky.social> to notify people about new releases and other updates.
24
+
21
25
## Bitly
22
26
23
-
We use <https://bitly.com> to automatically create short URLs that are included in the tweets.
27
+
We use <https://bitly.com> to automatically create short URLs that are included in social media posts.
24
28
25
29
## Shields
26
30
@@ -32,15 +36,15 @@ We use a YouTube [video channel](https://www.youtube.com/fieldtriptoolbox) that
32
36
33
37
## GitHub
34
38
35
-
We use git and GitHub for version control of the software and of the website, and for managing external contributions. More details can be found [here](/development/git). We also maintain a copy of the repository on [BitBucket](#bitbucket) and on [Gitlab](#gitlab).
39
+
We use git and GitHub for version control of the software and of the website, and for managing external contributions. More details can be found [here](/development/git). We also maintain a copy of the repository on [BitBucket](#bitbucket) and on [GitLab](#gitlab).
36
40
37
41
If changes are pushed to GitHub, a webhook is triggered. The code for that is maintained at <https://github.com/fieldtrip/automation>.
38
42
39
43
## Bitbucket
40
44
41
45
A copy of the git repository of the FieldTrip software is maintained on <https://bitbucket.org/fieldtriptoolbox/fieldtrip>, although the primary site is on [GitHub](#GitHub).
42
46
43
-
## Gitlab
47
+
## GitLab
44
48
45
49
A copy of the git repository of the FieldTrip software is stored on <https://gitlab.com/fieldtrip/fieldtrip>, although the primary site is on [GitHub](#GitHub).
46
50
@@ -58,7 +62,7 @@ At the DCCN we have a central storage system (i.e. a large shared network drive)
58
62
59
63
## Dashboard
60
64
61
-
We have a set of MATLAB and Bash scripts for regression testing. This allows to do semi-automatic runs of all the test scripts on the DCCN compute cluster. We refer to this as the [test dashboard](/development/testing). The code is hosted on [GitHub](https://github.com/fieldtrip/dashboard) and the MATLAB interface is implemented in **[ft_test](/reference/utilities/ft_test)**, which you can find in the utilities folder.
65
+
We have a set of MATLAB and Bash scripts for regression testing that are hosted on [GitHub](https://github.com/fieldtrip/dashboard). This allows to do semi-automatic runs of all the test scripts on the DCCN compute cluster. We refer to this as the [test dashboard](/development/testing).
62
66
63
67
## Mixpanel
64
68
@@ -72,25 +76,25 @@ We are experimenting with [Slack](https://fieldtriptoolbox.slack.com) as a messa
72
76
73
77
We use a [webdav server](https://download.fieldtriptoolbox.org) to distribute the software releases and tutorial data.
74
78
75
-
## Ftp - obsolete
79
+
## FTP - obsolete
76
80
77
-
We used the DCCN [download server](https://download.fieldtriptoolbox.org/) to distribute the software releases and tutorial data.
81
+
In the past we used an FTP server to distribute the software releases and tutorial data.
78
82
79
83
## Bugzilla - obsolete
80
84
81
85
In the past we used [Bugzilla](https://www.bugzilla.org) as an "issue tracker" to maintain to-do lists, distribute work, and to support follow-up communication with users. Our bugzilla server has been discontinued in 2024. The archived bug reports and discussions are still available on <http://bugzilla.fieldtriptoolbox.org>.
82
86
83
87
## Dokuwiki - obsolete
84
88
85
-
In the past we used [dokuwiki](http://dokuwiki.org/) as the CMS system for our website. In 2018 we switched to Jekyll and GitHub.
89
+
In the past we used [dokuwiki](http://dokuwiki.org/) as the content management system (CMS) for our website. In 2018 we switched to Jekyll and GitHub.
86
90
87
91
## SVN - obsolete
88
92
89
93
We used to do the development with Subversion (also known as SVN). As of February 2016 we have moved all development over to git and GitHub.
90
94
91
95
## CVS - obsolete
92
96
93
-
We initially used Concurrent Versions System (CVS) as the version control system. At a certain point we followed the example from the SPM developers and switched to SVN to facilitate collaboration between more contributors.
97
+
We initially used the Concurrent Versions System (CVS) for software version control. At a certain point we followed the example from the SPM developers and switched to SVN to facilitate collaboration with contributors.
94
98
95
99
## Google Code - obsolete
96
100
@@ -110,4 +114,4 @@ We used <http://facebook.com/fieldtriptoolbox> to announce events and to post ph
110
114
111
115
## Twitter - obsolete
112
116
113
-
We used <http://twitter.com/fieldtriptoolbx> to notify people about new releases and other updates. For some time we also tweeted an automatic update for every commit. We are now using Mastodon instead of Twitter.
117
+
We used <http://twitter.com/fieldtriptoolbx> to notify people about new releases and other updates. For some time we also tweeted an automatic update for every commit. We are now using Mastodon and BlueSky instead of Twitter.
Copy file name to clipboardExpand all lines: development/project/code_review.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -208,7 +208,7 @@ However, this goal is at odds with the architecture decision to give the utiliti
208
208
209
209
- For modules that are provided as separate repositories, since the modules will need more than just their own directory from the main FieldTrip repository, the module repository should be set up such that it is easy to synchronize all the needed parts from the FieldTrip repository to the module repository.
210
210
211
-
**Additional recommendation** : For modules that are provided as separate repositories, create a script in the module repository that largely automates the synchronization of the various parts (submodule, utilities, tests) from FieldTrip towards the module repositories. Then use it in a Github action that automates even more steps of the synchronization. The Github action can be set to automatically run whenever a new FieldTrip release is created, or triggered manually. And can add the changes directly to the main branch of the module repository, or only create a branch-and-pull- request that is first tested independently (for instance by a github action in the module repository) before the changes are added to the main branch of the module repository. Since the source is here the main FieldTrip repository, letting this workflow run fully through automated triggers is more feasible than for the externals in FieldTrip, where the source of the changed code is outside of FieldTrip.
211
+
**Additional recommendation** : For modules that are provided as separate repositories, create a script in the module repository that largely automates the synchronization of the various parts (submodule, utilities, tests) from FieldTrip towards the module repositories. Then use it in a GitHub action that automates even more steps of the synchronization. The GitHub action can be set to automatically run whenever a new FieldTrip release is created, or triggered manually. And can add the changes directly to the main branch of the module repository, or only create a branch-and-pull- request that is first tested independently (for instance by a github action in the module repository) before the changes are added to the main branch of the module repository. Since the source is here the main FieldTrip repository, letting this workflow run fully through automated triggers is more feasible than for the externals in FieldTrip, where the source of the changed code is outside of FieldTrip.
0 commit comments