Skip to content

Commit 4f7b7ab

Browse files
committed
Merge with master@00a53b97 [ci fast]
2 parents 5f463e6 + 00a53b9 commit 4f7b7ab

File tree

440 files changed

+59576
-1476
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

440 files changed

+59576
-1476
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -52,22 +52,7 @@ jobs:
5252
echo "commit_message=$COMMIT_MESSAGE" | head -n 1 >> $GITHUB_OUTPUT
5353
fi
5454
55-
- name: Get changed files
56-
id: changed-files
57-
uses: tj-actions/changed-files@v43
58-
with:
59-
files_ignore: docs/**
60-
61-
- name: List all changed files
62-
env:
63-
ALL_CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
64-
run: |
65-
for file in ${ALL_CHANGED_FILES}; do
66-
echo "$file was changed"
67-
done
68-
6955
- name: Setup env
70-
if: steps.changed-files.outputs.any_changed == 'true'
7156
run: |
7257
rm -f $HOME/.gitconfig;
7358
mkdir -p "$HOME/.nextflow";
@@ -76,7 +61,6 @@ jobs:
7661
NXF_GITHUB_ACCESS_TOKEN: ${{ secrets.NXF_GITHUB_ACCESS_TOKEN }}
7762

7863
- name: Setup Java ${{ matrix.java_version }}
79-
if: steps.changed-files.outputs.any_changed == 'true'
8064
uses: actions/setup-java@v4
8165
with:
8266
java-version: ${{matrix.java_version}}
@@ -85,11 +69,9 @@ jobs:
8569
cache: gradle
8670

8771
- name: Compile
88-
if: steps.changed-files.outputs.any_changed == 'true'
8972
run: make assemble
9073

9174
- name: Test
92-
if: steps.changed-files.outputs.any_changed == 'true'
9375
run: |
9476
env | sort
9577
# configure test env
@@ -114,18 +96,16 @@ jobs:
11496

11597
- name: Publish tests report
11698
uses: actions/upload-artifact@v4
117-
if: steps.changed-files.outputs.any_changed == 'true' && always()
11899
with:
119100
name: report-unit-tests-jdk-${{ matrix.java_version }}
120101
path: |
121102
**/build/reports/tests/test
122103
123104
outputs:
124-
any_changed: ${{ steps.changed-files.outputs.any_changed }}
125105
commit_message: ${{ steps.get_commit_message.outputs.commit_message }}
126106

127107
test:
128-
if: ${{ !contains(needs.build.outputs.commit_message, '[ci fast]') && needs.build.outputs.any_changed == 'true' }}
108+
if: ${{ !contains(needs.build.outputs.commit_message, '[ci fast]') }}
129109
needs: build
130110
runs-on: ubuntu-latest
131111
timeout-minutes: 90

changelog.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
NEXTFLOW CHANGE-LOG
22
===================
3+
4+
24.10.5 - 4 Mar 2025
5+
- Improve Google Batch executor stability and error handling (#5690) [1a9e8bf5]
6+
- Fix Mount input file buckets in task arrays for Google Batch (#5739) [0d98442d]
7+
- Fix Google Batch task array causes process to fail (#5780) [d4c1ba12]
8+
- Fixing bug when execution with stub and no stub defined (#5473) [ba5ab069]
9+
- Fix Conda directive is not honoured by task array (#5704) [63124eb8]
10+
- Fix Use unbound queue for transfer thread pool (#5700) [d57a85d0]
11+
- Bump [email protected] [ee9c1fd4]
12+
313
25.01.0-edge - 12 Feb 2025
414
- Add DeadlineExceededException to Google Batch retryable exceptions [944f48f9]
515
- Add Fusion token validation (#5614) [1dcb18d6]
@@ -35,6 +45,11 @@ NEXTFLOW CHANGE-LOG
3545
- Bump net.minidev:json-smart:2.5.2 [b5c4faf4]
3646
- Bump netty-common:4.1.118.Final [8574e243]
3747

48+
24.10.4 - 20 Jan 2025
49+
- Fix CLI params normalization (#5661) [42a9d8a0]
50+
- Fix azure repos when clone URL is used (#5667) [eb092c9f]
51+
- Fix Prevent the use existing work dir (#5682) [7ed233ea]
52+
3853
24.12.0-edge - 20 Jan 2025
3954
- Add Warning when Cloudinfo fails in Google Batch machine type selection (#5649) [5aef532f]
4055
- Add rate limiter to wave requests (#5608) [ecf68294]

docs/_static/.DS_Store

8 KB
Binary file not shown.
171 KB
Loading
152 KB
Loading
152 KB
Loading
244 KB
Loading

docs/_static/report-tasks-min.png

247 KB
Loading

docs/channel.md

Lines changed: 13 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -80,33 +80,27 @@ See {ref}`channel-factory` for the full list of channel factories.
8080

8181
## Operators
8282

83-
Operators are methods that consume and produce channels. Because channels are asynchronous, operators are necessary to manipulate the values in a channel, without using a process. As a result, operators are useful for implementing the "glue logic" between processes.
83+
Channel operators, or _operators_ for short, are functions that consume and produce channels. Because channels are asynchronous, operators are necessary to manipulate the values in a channel, aside from using a process. As a result, operators are useful for implementing the _glue logic_ between processes.
8484

85-
See {ref}`operator-page` for the full list of operators. If you are new to Nextflow, here are some commonly-used operators to learn first:
85+
Commonly used operators include:
8686

87-
Filtering:
87+
- {ref}`operator-combine`: emit the combinations of two channels
8888

89-
- {ref}`operator-filter`: select all values in a channel that satisfy a condition
90-
- {ref}`operator-first`: select the first value in a channel
91-
- {ref}`operator-take`: select the first *n* values in a channel
92-
- {ref}`operator-unique`: select the unique values in a channel (i.e. remove duplicates)
89+
- {ref}`operator-collect`: collect the values from a channel into a list
9390

94-
Transforming:
91+
- {ref}`operator-filter`: select the values in a channel that satisfy a condition
9592

96-
- {ref}`operator-collect`: collect the values from a channel into a list
97-
- {ref}`operator-grouptuple`: group the values from a channel based on a grouping key
98-
- {ref}`operator-map`: transform each value from a channel with a mapping function
99-
- {ref}`operator-reduce`: accumulate each value from a channel into a single value
93+
- {ref}`operator-flatMap`: transform each value from a channel into a list and emit each list
94+
element separately
10095

101-
Combining multiple channels:
96+
- {ref}`operator-grouptuple`: group the values from a channel based on a grouping key
10297

103-
- {ref}`operator-combine`: emit the combinations of two channels
104-
- {ref}`operator-concat`: emit the values from multiple channels (in the order in which the channels were given)
10598
- {ref}`operator-join`: join the values from two channels based on a matching key
106-
- {ref}`operator-mix`: emit the values from multiple channels (in the order in which items arrive)
10799

108-
Miscellaneous:
100+
- {ref}`operator-map`: transform each value from a channel with a mapping function
101+
102+
- {ref}`operator-mix`: emit the values from multiple channels
109103

110-
- {ref}`operator-ifempty`: emit a channel, or a default value if the channel is empty
111-
- {ref}`operator-set`: assign a channel to a variable
112104
- {ref}`operator-view`: print each value in a channel to standard output
105+
106+
See {ref}`operator-page` for the full list of operators.

docs/developer/plugins.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,38 @@ process foo {
151151
Refer to the source code of Nextflow's built-in executors to see how to implement the various components of an executor. You might be able to implement most of your executor by simply reusing existing code.
152152
:::
153153

154+
### Filesystems
155+
156+
Plugins can define custom filesystems that can be used by Nextflow to interact with external storage systems using a single interface. For more information about accessing remote files, see {ref}`remote-files`.
157+
158+
To implement a custom filesystem, create a class in your plugin that extends [`FileSystemProvider`](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/nio/file/spi/FileSystemProvider.html). Implement the `getScheme()` method to define the URI scheme for your filesystem:
159+
160+
```groovy
161+
import java.nio.file.spi.FileSystemProvider
162+
163+
class MyFileSystemProvider extends FileSystemProvider {
164+
165+
@Override
166+
String getScheme() {
167+
return 'myfs'
168+
}
169+
170+
// ...
171+
}
172+
```
173+
174+
You can then use this filesystem in your pipeline:
175+
176+
```nextflow
177+
input = file('myfs://path/to/input/file.txt')
178+
```
179+
180+
See [Developing a Custom File System Provider](https://docs.oracle.com/javase/8/docs/technotes/guides/io/fsp/filesystemprovider.html) for more information. Refer to the `nf-https` module (`XFileSystemProvider`) or `nf-amazon` plugin (`S3FileSystemProvider`) in the Nextflow source code for examples of custom filesystems.
181+
182+
:::{tip}
183+
Custom filesystems are an advanced type of plugin extension. Before creating a new filesystem, make sure that your use case can't already be supported through an existing filesystem such as HTTP or S3.
184+
:::
185+
154186
### Functions
155187

156188
:::{versionadded} 22.09.0-edge
@@ -357,6 +389,10 @@ Here is an example meta file for a plugin release:
357389
}
358390
```
359391

392+
:::{note}
393+
The plugin version should be a valid [semantic version](https://semver.org/).
394+
:::
395+
360396
(testing-plugins)=
361397

362398
## Testing plugins

0 commit comments

Comments
 (0)