Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1181 commits
Select commit Hold shift + click to select a range
d0e6573
Adding vectorised tests for _search_1d_array
erikvansebille Aug 13, 2025
f375db0
vectorized version of _search_indices_curvilinear_2d
erikvansebille Aug 13, 2025
add8158
Merge pull request #2132 from OceanParcels/2119-spatial-hashing
fluidnumerics-joe Aug 13, 2025
af9aee0
Fixing RK45 for vectorized kernels
erikvansebille Aug 13, 2025
4c51124
Fixing breaking test now that _search_inidces_curvilinear_2d expects …
erikvansebille Aug 13, 2025
9335ddb
Using particle.time in the advection kernels
erikvansebille Aug 13, 2025
04946b7
Fix unit test
erikvansebille Aug 13, 2025
bee5464
Cleaning up kernel loop
erikvansebille Aug 14, 2025
7c6b21d
Adding KernelParticle getitem
erikvansebille Aug 14, 2025
a2feb9e
Fixing advection unit tests
erikvansebille Aug 14, 2025
654ae1a
Fixing xgrid unit test
erikvansebille Aug 14, 2025
316f15e
Fixing particleset_execution unit tests
erikvansebille Aug 14, 2025
9652bf7
Adding and extending unit tests on particle errors
erikvansebille Aug 14, 2025
081753d
merge commit
erikvansebille Aug 14, 2025
4c90bbc
Cleaning up Kernel for RK45
erikvansebille Aug 14, 2025
161ad9c
updating advection tests for faster runtime
erikvansebille Aug 15, 2025
8d025da
Start of implementing C-Grid interpolation
erikvansebille Aug 15, 2025
2d20319
Cleaning up the index-search file
erikvansebille Aug 15, 2025
50d9d52
Moving C-grid velocity code from v3 to v4
erikvansebille Aug 15, 2025
3226306
use time_interval type to set default time
erikvansebille Aug 15, 2025
1bd7e0c
Adding nemo curvilinear test for C-grid
erikvansebille Aug 15, 2025
0e08a88
use time_interval type to set default time
erikvansebille Aug 15, 2025
2da436a
Speeding up curvilinear search by dask loading lon and lat
erikvansebille Aug 15, 2025
0e1a221
Updating c-grid velocity test and algorithm
erikvansebille Aug 15, 2025
1ecab22
Fixing vector interpolation
erikvansebille Aug 18, 2025
8b1b830
Fixing CGrid_Velocity interpolation for multiple particles
erikvansebille Aug 18, 2025
cad34e0
Adding better error message handling for CGrid_velocity interpolation
erikvansebille Aug 18, 2025
26cffcc
Adding warning suppression for index_search
erikvansebille Aug 18, 2025
e2376e2
Fixing error when Grid does not have lon or lat
erikvansebille Aug 18, 2025
6529e13
Fixing to keep the maximum Error code in field
erikvansebille Aug 18, 2025
85f025b
Adding unit test for spatial hash on 1/4 degree NEMO curvilinear grid
erikvansebille Aug 19, 2025
558b466
Update parcels/_core/utils/time.py
erikvansebille Aug 19, 2025
d4fdc01
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 19, 2025
5d2bf9a
Reverting that key in eval can be a ParticleSet
erikvansebille Aug 19, 2025
62a596c
Merge pull request #2122 from OceanParcels/vectorized-kernel
erikvansebille Aug 19, 2025
bbc2c30
Merge branch 'v4-dev' into c-grid-interpolation
erikvansebille Aug 19, 2025
fadca90
Merge branch 'v4-dev' into testing_nemo_spatialhash
erikvansebille Aug 19, 2025
01cfef6
Moving the mesh_type to the Grid class
erikvansebille Aug 20, 2025
dda469d
Adding NEMO3D test
erikvansebille Aug 21, 2025
d568fda
First draft of morton-spatial-hashing
fluidnumerics-joe Aug 21, 2025
76d015b
Updating CGrid interpolation to not interpolate over depth for U and V
erikvansebille Aug 22, 2025
196c6e7
Fixing W interpolation for CGrid
erikvansebille Aug 22, 2025
1c948dd
Fixing stommel gyre CGrid interpolation test
erikvansebille Aug 22, 2025
df78b62
Updating failing unit test
erikvansebille Aug 22, 2025
cd69147
Further fixing unit test by dropping unused dimensions
erikvansebille Aug 22, 2025
1a64033
Temporary fix to spatialhash
erikvansebille Aug 22, 2025
7c1a87a
Adding TODO statement about spherical meshes
erikvansebille Aug 22, 2025
f14fab8
Porting interpolation unit test from v3 to v4
erikvansebille Aug 22, 2025
e46ccf2
Update parcels/_index_search.py
erikvansebille Aug 22, 2025
00fe2ef
Renaming mesh_type to mesh
erikvansebille Aug 22, 2025
6a6ca96
Updating tutorial_stommel_uxarray
erikvansebille Aug 22, 2025
807d2ee
Merge pull request #2155 from OceanParcels/move_mesh_type_to_grid
erikvansebille Aug 22, 2025
07a8238
Updating spherical mash hashmap creation
erikvansebille Aug 22, 2025
689061d
Adding XNearest for nearest neighbour interpolation
erikvansebille Aug 22, 2025
a1934a0
Merge branch 'v4-dev' into nearest_interpolation
erikvansebille Aug 22, 2025
e0d3c36
Add search for minimum centroid distance for j,i search
fluidnumerics-joe Aug 22, 2025
59df08a
Relax exact match on morton code
fluidnumerics-joe Aug 23, 2025
6838ae9
Fix bug in vectorized spatialhash search
fluidnumerics-joe Aug 23, 2025
ca426cd
Merge remote-tracking branch 'origin/v4-dev' into feature/morton-hashing
fluidnumerics-joe Aug 23, 2025
f53003a
Fix reference to _source_grid._mesh attribute
fluidnumerics-joe Aug 23, 2025
f77f5f4
merge
erikvansebille Aug 25, 2025
2924ee0
Fixing grid._mesh in interpolator
erikvansebille Aug 25, 2025
9264d8a
Merge branch 'feature/morton-hashing' into c-grid-interpolation
erikvansebille Aug 25, 2025
1a17911
Using is_dask_collection to check for dask in interpolation
erikvansebille Aug 25, 2025
e604f6f
Update parcels/spatialhash.py
fluidnumerics-joe Aug 25, 2025
190c5e1
Update parcels/spatialhash.py
fluidnumerics-joe Aug 25, 2025
06211ab
Add comment for zmin/zmax setting for flat mesh
fluidnumerics-joe Aug 25, 2025
9b3acb8
Fixing a small vectorizaton bug in xgrid search
erikvansebille Aug 25, 2025
46ce99e
Fix docstrings for morton code and dilate_bits
fluidnumerics-joe Aug 25, 2025
1c638c8
Merge pull request #2158 from OceanParcels/feature/morton-hashing
fluidnumerics-joe Aug 25, 2025
6753e81
Merge branch 'v4-dev' into c-grid-interpolation
erikvansebille Aug 27, 2025
ba14fa5
Adding code for setting ErrorInterpolation state
erikvansebille Aug 27, 2025
b7eaf60
Renaming field_sampling_error to grid_searching_error
erikvansebille Aug 27, 2025
822b470
Adding test for FieldInterpolationError
erikvansebille Aug 27, 2025
4903936
First implementation of XFreeslip interpolator
erikvansebille Aug 28, 2025
46c3d92
Fixing vector_interp_method
erikvansebille Aug 28, 2025
5bdc874
Fixing vector_interp_method
erikvansebille Aug 28, 2025
b834520
Separating _get_corner_data function from interpolators
erikvansebille Aug 28, 2025
530cf2b
Vectorising XFreeslip interpolator
erikvansebille Aug 28, 2025
cc704ce
Adding W to spatialslip interpolator
erikvansebille Aug 28, 2025
c56b7ef
Generalising XFreeslip to _Spatialslip
erikvansebille Aug 28, 2025
0ed524d
FIxing type of position input in ZeroInterpolator
erikvansebille Aug 28, 2025
3fb4473
[#2162] Add proper handling for invalid queries in morton coding
fluidnumerics-joe Aug 28, 2025
62a13d8
Merge pull request #2166 from OceanParcels/bugfix/2162-morton-code
fluidnumerics-joe Aug 28, 2025
0ca39bd
Merge branch 'v4-dev' into cleaning_index_search
erikvansebille Sep 1, 2025
44928f6
Merge pull request #2150 from OceanParcels/cleaning_index_search
erikvansebille Sep 1, 2025
1b612a7
Merge branch 'v4-dev' into fixing_default_particle_time
erikvansebille Sep 1, 2025
e30adbe
Merge pull request #2151 from OceanParcels/fixing_default_particle_time
erikvansebille Sep 1, 2025
4f8de4e
Merge branch 'v4-dev' into minor_bug_xgrid_search
erikvansebille Sep 1, 2025
8ee9b08
Merge pull request #2159 from OceanParcels/minor_bug_xgrid_search
erikvansebille Sep 1, 2025
a0962dc
Merge branch 'v4-dev' into c-grid-interpolation
erikvansebille Sep 1, 2025
3e481b0
Merge branch 'v4-dev' into nearest_interpolation
erikvansebille Sep 1, 2025
25fb9d0
Merge pull request #2157 from OceanParcels/nearest_interpolation
erikvansebille Sep 1, 2025
85bbeff
Merge branch 'v4-dev' into spatial_slip_interpolation
erikvansebille Sep 1, 2025
6659a1d
fixing merging bugs
erikvansebille Sep 1, 2025
f14e8cb
Merge branch 'v4-dev' into c-grid-interpolation
erikvansebille Sep 1, 2025
2df1f9a
merge commit
erikvansebille Sep 1, 2025
6da3dc0
Merge branch 'v4-dev' into deal_with_search_interpolation_errors
erikvansebille Sep 1, 2025
e476ebe
Merge branch 'v4-dev' into testing_nemo_spatialhash
erikvansebille Sep 1, 2025
3eb2803
Vectorizing _reconnect_bnd_indices
erikvansebille Sep 1, 2025
2568feb
Using is_dask_collection for c-grid interpolator
erikvansebille Sep 1, 2025
9b196ea
Updating the list of breaking changes in v3 to v4 API
erikvansebille Sep 2, 2025
0566cf4
Merge pull request #2170 from OceanParcels/updating_3to4-breaking-cha…
erikvansebille Sep 2, 2025
b16fcc8
Refactor param handling of `pset.execute` (#2171)
VeckoTheGecko Sep 2, 2025
9e91ee0
Merge branch 'v4-dev' into testing_nemo_spatialhash
erikvansebille Sep 3, 2025
b185396
Merge pull request #2153 from OceanParcels/testing_nemo_spatialhash
erikvansebille Sep 3, 2025
12efd87
Update tests/v4/test_particleset_execute.py
erikvansebille Sep 3, 2025
31a6a37
Moving ErrorsToThrow to module level constant
erikvansebille Sep 3, 2025
c6aa8f4
Merge remote-tracking branch 'refs/remotes/origin/deal_with_search_in…
erikvansebille Sep 3, 2025
1b6fe29
Adding placeholders for tests raising general_error
erikvansebille Sep 3, 2025
bbc8e28
Merge branch 'v4-dev' into deal_with_search_interpolation_errors
erikvansebille Sep 3, 2025
089b8f9
Merge pull request #2164 from OceanParcels/deal_with_search_interpola…
erikvansebille Sep 3, 2025
17ec41b
Fixing XPartialslip
erikvansebille Sep 3, 2025
af8cff8
Merge branch 'v4-dev' into spatial_slip_interpolation
erikvansebille Sep 3, 2025
525ec71
Merge branch 'v4-dev' into c-grid-interpolation
erikvansebille Sep 3, 2025
3cfa92c
Enable Ruff T100
VeckoTheGecko Sep 3, 2025
b428cd2
Further cleaning the handling of grid searching errors
erikvansebille Sep 4, 2025
0bce72e
Removing while-loop in _search_indices_curvilinear_2d
erikvansebille Sep 4, 2025
370151a
Update `runtime` and `dt` in `pset.execute` to accept timedelta (#2178)
VeckoTheGecko Sep 4, 2025
9035be9
Switch hash table build to use source grid overlaps; add point-in-cel…
fluidnumerics-joe Sep 7, 2025
f9e044b
Set nemo mesh type to spherical
fluidnumerics-joe Sep 7, 2025
910fe2a
ParticleFile refactor and re-integration into v4-dev (#2142)
VeckoTheGecko Sep 8, 2025
cebda92
Merge branch 'v4-dev' into c-grid-interpolation
erikvansebille Sep 8, 2025
0cbbbc9
Vectorize hash table initialization
fluidnumerics-joe Sep 9, 2025
59eecf7
Add point_in_cell method to query call
fluidnumerics-joe Sep 9, 2025
4c9661c
Vectorize final query loop in j,i array construction
fluidnumerics-joe Sep 9, 2025
0ac7ae0
Removing mesh types check for VectorField
erikvansebille Sep 9, 2025
872b75c
Setting lon and lat as coordinates
erikvansebille Sep 9, 2025
5b603b1
DOC: Add page for v4-migration guide (#2189)
VeckoTheGecko Sep 9, 2025
81439dc
Add Xarray badge to README (#2194)
VeckoTheGecko Sep 9, 2025
0be3404
Merge branch 'v4-dev' into c-grid-interpolation
erikvansebille Sep 9, 2025
4218098
Update `pyproject.toml` and enable minor Ruff rules (#2196)
VeckoTheGecko Sep 9, 2025
38622fc
Merge branch 'v4-dev' into c-grid-interpolation
VeckoTheGecko Sep 9, 2025
1c8d5e5
Merge pull request #2152 from OceanParcels/c-grid-interpolation
erikvansebille Sep 9, 2025
1d44cdb
merge commit
erikvansebille Sep 9, 2025
92a3b75
Merge pull request #2165 from OceanParcels/spatial_slip_interpolation
erikvansebille Sep 9, 2025
d8238d2
Updating migration guide
erikvansebille Sep 9, 2025
f1536ef
Give information on the ParticleFile path rather than object
erikvansebille Sep 9, 2025
9a3707f
Move _barycentric_coordinates function to uxgrid
fluidnumerics-joe Sep 9, 2025
3c7507c
Drop uint64 to uint32 to save memory (and dilated bits don't need uin…
fluidnumerics-joe Sep 9, 2025
0be54db
Drop temp variables to int32
fluidnumerics-joe Sep 9, 2025
7a31873
Updating Argo tutorial to v4
erikvansebille Sep 10, 2025
0362100
Also using _assert_same_function_signature for Kernels
erikvansebille Sep 10, 2025
dfbb991
Return coordinates from PIC search and remove redundant coordinate ca…
fluidnumerics-joe Sep 10, 2025
017d9cc
Changing Kernel API throughout tests
erikvansebille Sep 10, 2025
95cb593
Add logic for using provided guess
fluidnumerics-joe Sep 10, 2025
46c988e
Set failed query indices to GRID_SEARCH_ERROR
fluidnumerics-joe Sep 10, 2025
8d62e20
Remove "reconstruct"
fluidnumerics-joe Sep 10, 2025
dc06f63
Add _point_in_cell private method to spatialhash
fluidnumerics-joe Sep 10, 2025
9645ea3
Merge remote-tracking branch 'origin/v4-dev' into curvilinear_index_s…
fluidnumerics-joe Sep 10, 2025
29e5fe0
Merge remote-tracking branch 'origin/v4-dev' into curvilinear_index_s…
fluidnumerics-joe Sep 10, 2025
129540e
Add alpha releases of Parcels to prefix.dev (#2202)
VeckoTheGecko Sep 11, 2025
f411b45
Add test test_kernel_signature
VeckoTheGecko Sep 12, 2025
fe00581
Merge branch 'v4-dev' into v4-new-kernel-api
erikvansebille Sep 12, 2025
0d82a2b
Merge pull request #2201 from OceanParcels/v4-new-kernel-api
erikvansebille Sep 12, 2025
22b4a66
Merge branch 'v4-dev' into v4-argo-float-tutorial
erikvansebille Sep 12, 2025
a60bc9b
Updating Argo kernel to new Kernel API
erikvansebille Sep 12, 2025
50f0e85
Remove initial None set for spatial hash
fluidnumerics-joe Sep 12, 2025
dcdd2d1
Adding unit test to text multiple boolean masks in Kernels
erikvansebille Sep 12, 2025
9a6abf5
Separating each Argo phase into its own Kernel
erikvansebille Sep 12, 2025
e861f43
Add v4 disclaimer to README
VeckoTheGecko Sep 12, 2025
abcfb91
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 12, 2025
6df7035
Merge branch 'v4-dev' into curvilinear_index_search_without_while_loop
fluidnumerics-joe Sep 12, 2025
8c4aaed
Add Parcels v4 warning at import (#2209)
VeckoTheGecko Sep 12, 2025
031eb46
Merge branch 'v4-dev' into curvilinear_index_search_without_while_loop
fluidnumerics-joe Sep 13, 2025
bacd187
Merge pull request #2177 from OceanParcels/curvilinear_index_search_w…
fluidnumerics-joe Sep 13, 2025
ed657e1
Vectorize _unravel method
erikvansebille Sep 13, 2025
7e3e842
Implementing use of particle.ei in curvilinear search
erikvansebille Sep 13, 2025
79a2d8d
Some renaming of particle to particles
erikvansebille Sep 13, 2025
069ae59
Simplifying particleset.populate_indices
erikvansebille Sep 13, 2025
ac79ad5
Removin lon_nextloop, lat_nextloop and depth_nextloop
erikvansebille Sep 13, 2025
99ff096
Fixing basegrid unit tests
erikvansebille Sep 14, 2025
29a4309
Merge pull request #2210 from OceanParcels/some_renaming_of_particle_…
erikvansebille Sep 15, 2025
bc6394c
Merge branch 'v4-dev' into removing_nextloop_variables
erikvansebille Sep 15, 2025
2ce77c1
Merge pull request #2212 from OceanParcels/removing_nextloop_variables
erikvansebille Sep 15, 2025
dcc1699
Merge branch 'v4-dev' into v4-argo-float-tutorial
erikvansebille Sep 15, 2025
d1cb597
Support for zarr stores that don't have a path
erikvansebille Sep 15, 2025
5237ccc
Refactoring _format_output_location
erikvansebille Sep 15, 2025
7c5789b
Using AdvectionRK4 for reference of Kernel signature check
erikvansebille Sep 15, 2025
c46d038
Merge pull request #2215 from OceanParcels/using_AdvectionRK4_for_ref…
erikvansebille Sep 15, 2025
b42794c
Adding xfail on failing test
erikvansebille Sep 15, 2025
47fbb58
Fix indexing of ei/fi/zi in uxgrid search
fluidnumerics-joe Sep 15, 2025
9b0e3ec
Fix ravel_index call for uxgrid grids
fluidnumerics-joe Sep 15, 2025
3bb5bcf
Merge branch 'v4-dev' into implement_ei_in_search
erikvansebille Sep 15, 2025
a78d589
Draft vectorized uxgrid point-in-cell check
fluidnumerics-joe Sep 15, 2025
1a7c585
Merge remote-tracking branch 'origin/implement_ei_in_search' into fea…
fluidnumerics-joe Sep 16, 2025
9826c9a
Review feedback: Simplify test_basegrid_ravel_unravel_index
VeckoTheGecko Sep 16, 2025
6b267ed
Make xgcm a dependency and remove vendored code (#2220)
VeckoTheGecko Sep 16, 2025
fa5a352
Vectorize particle-in-cell check; resolve runtime bugs
fluidnumerics-joe Sep 16, 2025
7589bde
Add fix for spherical uxgrid mesh type
fluidnumerics-joe Sep 16, 2025
8ea3c4a
Adding docstring for _search_indices_curvilinear_2d()
erikvansebille Sep 17, 2025
29a56f0
Merge branch 'implement_ei_in_search' of https://github.com/OceanParc…
erikvansebille Sep 17, 2025
7eedf45
Merge branch 'v4-dev' into implement_ei_in_search
VeckoTheGecko Sep 17, 2025
5079236
Merge pull request #2211 from OceanParcels/implement_ei_in_search
erikvansebille Sep 17, 2025
9df2804
Merge remote-tracking branch 'origin/v4-dev' into feature/uxgrid-mort…
fluidnumerics-joe Sep 17, 2025
25c5e7e
Map query point to cartesian x,y,z when mesh type is spherical
fluidnumerics-joe Sep 17, 2025
4dc0deb
Clean up face vertices construction and min/max setting for uxgrid sp…
fluidnumerics-joe Sep 17, 2025
3592b64
Add _datasets.utils.from_xarray_dataset_dict()
VeckoTheGecko Sep 18, 2025
34c28c2
Merge branch 'v4-dev' into feature/uxgrid-morton-hashing
fluidnumerics-joe Sep 18, 2025
0809675
Fix boundary mask for antimeridian generic dataset
fluidnumerics-joe Sep 20, 2025
ace5c4f
Change uxgrid spherical min/max bounds to unit cube
fluidnumerics-joe Sep 20, 2025
0944797
Merge branch 'feature/uxgrid-morton-hashing' of github.com:OceanParce…
fluidnumerics-joe Sep 20, 2025
a9eaa88
Merge pull request #2218 from OceanParcels/feature/uxgrid-morton-hashing
fluidnumerics-joe Sep 21, 2025
5855e85
Adding LinkedIn badge to README
erikvansebille Sep 24, 2025
fb62f43
Merge pull request #2232 from OceanParcels/adding-linkedin-badge
erikvansebille Sep 24, 2025
97cd0c3
Add `FieldSet.from_copernicusmarine` (#2230)
VeckoTheGecko Sep 24, 2025
2ec0e55
Merge branch 'v4-dev' into v4-argo-float-tutorial
erikvansebille Sep 25, 2025
8819aa2
Using copernicusmarine data for the Argo tutorial
erikvansebille Sep 25, 2025
bec6188
Clip searchsorted result to valid range
fluidnumerics-joe Sep 25, 2025
a4cb13d
Merge pull request #2199 from OceanParcels/v4-argo-float-tutorial
erikvansebille Sep 25, 2025
65be282
Fix some deprecation warnings (#2240)
VeckoTheGecko Sep 25, 2025
ffddc51
Adding unit test for subsecond dt
erikvansebille Sep 25, 2025
9c2e2d2
Logic for checking dtype of particledata.dt against input dt
erikvansebille Sep 26, 2025
061f996
Fixing docstring to use ParticleSet.set_dt_dtype()
erikvansebille Sep 26, 2025
1002bd0
Merge pull request #2242 from OceanParcels/subsecond_dt_support
erikvansebille Sep 26, 2025
cd52d14
Update from_copernicusmarine ingestion (#2238)
VeckoTheGecko Sep 26, 2025
9fddf9f
Remove pymbolic dependency
VeckoTheGecko Sep 26, 2025
557c612
Move Pixi items to pixi.toml
VeckoTheGecko Sep 25, 2025
d57dfc8
Section pixi.toml into features
VeckoTheGecko Sep 26, 2025
b09aaed
Remove ffmpeg and psutil dependencies
VeckoTheGecko Sep 26, 2025
fca9bdc
Add pooch to pixi deps
VeckoTheGecko Sep 26, 2025
8cb19a7
Move task definitions to features
VeckoTheGecko Sep 26, 2025
2ad9e76
Add toml formatter
VeckoTheGecko Sep 26, 2025
b8c86ff
Add pixi py311 and py312 features
VeckoTheGecko Sep 26, 2025
c2039ce
Add environment definitions
VeckoTheGecko Sep 26, 2025
b69e5a9
Add pixi badge
VeckoTheGecko Sep 26, 2025
deae4cf
Update RTD to use pixi
VeckoTheGecko Sep 26, 2025
c71e141
Migrate CI to use Pixi
VeckoTheGecko Sep 26, 2025
a2cf514
Migrate coverage to use pytest-cov
VeckoTheGecko Sep 26, 2025
6d3c60c
Migrate integration tests to use pixi
VeckoTheGecko Sep 26, 2025
93d69b1
Refactor Coverage report to job level constant
VeckoTheGecko Sep 26, 2025
5e9d135
Update typechecking to use Pixi
VeckoTheGecko Sep 26, 2025
337fbdb
Migrate parcels install to use pixi-build
VeckoTheGecko Sep 26, 2025
d988718
Update command in CI to pixi run
VeckoTheGecko Sep 26, 2025
59d741f
Update linkcheck workflow to be pixi
VeckoTheGecko Sep 26, 2025
2d77dfc
Remove comments
VeckoTheGecko Sep 26, 2025
123333d
Update RTD config
VeckoTheGecko Sep 26, 2025
52df519
Update integration CI workflow
VeckoTheGecko Sep 26, 2025
17b5c4d
Fix RTD
VeckoTheGecko Sep 26, 2025
65defae
Delete environment.yml
VeckoTheGecko Sep 26, 2025
7926db8
Update pyproject.toml
VeckoTheGecko Sep 26, 2025
92b6b49
Ensure last exis stack in points construction for barycentric coordin…
fluidnumerics-joe Sep 27, 2025
cfc84ac
Set the number of computational coordinates during init
fluidnumerics-joe Sep 27, 2025
7708aac
Update RTD config to fix Pixi (#2253)
VeckoTheGecko Sep 28, 2025
51b33c7
Merge branch 'v4-dev' into bugfix/2239-oob-spatialhash
fluidnumerics-joe Sep 29, 2025
685a582
Update contributing guidelines for Pixi (#2252)
VeckoTheGecko Sep 29, 2025
5ccc0bc
Package restructure (#2247)
VeckoTheGecko Sep 29, 2025
751bc5a
Merge remote-tracking branch 'origin/v4-dev' into bugfix/2239-oob-spa…
fluidnumerics-joe Sep 29, 2025
9b4312a
Merge pull request #2249 from OceanParcels/bugfix/2239-oob-spatialhash
fluidnumerics-joe Sep 29, 2025
03acffb
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Sep 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .binder/environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@ channels:
- conda-forge
dependencies:
- parcels
- pooch
- trajan
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
.git_archival.txt export-subst
# SCM syntax highlighting & preventing 3-way merges
pixi.lock merge=binary linguist-language=YAML linguist-generated=true
33 changes: 0 additions & 33 deletions .github/actions/install-parcels/action.yml

This file was deleted.

6 changes: 1 addition & 5 deletions .github/ci/min-core-deps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,14 @@ dependencies:
# MINIMUM VERSIONS POLICY: keep track of minimum versions
# for core packages. Dev and conda release builds should use this as reference.
# Run ci/min_deps_check.py to verify that this file respects the policy.
- python=3.10
- python=3.11
- cftime=1.6
- cgen=2020.1
- dask=2022.8
- matplotlib-base=3.5
# netcdf follows a 1.major.minor[.patch] convention
# (see https://github.com/Unidata/netcdf4-python/issues/1090)
- netcdf4=1.6
- numpy=1.23
- platformdirs=2.5
- psutil=5.9
- pymbolic=2022.1
- pytest=7.1
- scipy=1.9
- tqdm=4.64
Expand Down
6 changes: 3 additions & 3 deletions .github/ci/min_deps_check.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,8 @@ def parse_requirements(fname) -> Iterator[tuple[str, int, int, int | None]]:

try:
version_tup = tuple(int(x) for x in version.split("."))
except ValueError:
raise ValueError("non-numerical version: " + row)
except ValueError as e:
raise ValueError("non-numerical version: " + row) from e

if len(version_tup) == 2:
yield (pkg, *version_tup, None) # type: ignore[misc]
Expand Down Expand Up @@ -193,7 +193,7 @@ def main() -> None:
print("\nErrors:")
print("-------")
for i, e in enumerate(errors):
print(f"{i+1}. {e}")
print(f"{i + 1}. {e}")
sys.exit(1)


Expand Down
69 changes: 69 additions & 0 deletions .github/ci/recipe.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
# Recipe for https://github.com/prefix-dev/rattler-build used for nightly releases of Parcels
# during version 4 alpha development
#
# Adapted from the conda forge recipe
context:
name: parcels
version: 4.0.0alpha0 # The last number here needs to be bumped for each new alpha release

package:
name: ${{ name|lower }}
version: ${{ version }}

source:
path: ../..

build:
number: 0
noarch: python
script:
- python -m pip install . -vv --no-deps --no-build-isolation

requirements:
host:
- python 3.11.*
- pip
- setuptools
- setuptools_scm
- setuptools_scm_git_archive
- wheel
run:
- python >=3.11
- cftime
- dask
- matplotlib-base >=2.0.2
- netcdf4 >=1.1.9
- numpy >=1.11
- platformdirs
- pytest
- scipy >=0.16.0
- trajan
- tqdm
- xarray >=0.10.8
- zarr >=2.11.0,!=2.18.0,<3
- uxarray>=2025.3.0
- pyogrio # needed for geopandas (uxarray -> geoviews -> geopandas -> pyogrio, but for some reason conda doesn't pick it up automatically)
- pooch

tests:
- python:
imports:
- parcels

about:
homepage: https://github.com/OceanParcels/parcels
license: MIT
license_file: LICENSE.md
summary: Probably A Really Computationally Efficient Lagrangian Simulator
description: |
Parcels (Probably A Really Computationally Efficient Lagrangian Simulator)
is a set of Python classes and methods to create customisable particle
tracking simulations using output from Ocean Circulation models.
Parcels can be used to track passive and active particulates such as
water, nutrients, plankton, plastic and fish.
documentation: https://oceanparcels.org/
repository: https://github.com/OceanParcels/parcels

extra:
recipe-maintainers:
- VeckoTheGecko
10 changes: 4 additions & 6 deletions .github/workflows/additional.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,16 +29,14 @@ jobs:
python .github/ci/min_deps_check.py .github/ci/min-core-deps.yml

linkcheck:
name: Sphinx linkcheck
name: pixi run docs-linkcheck
runs-on: "ubuntu-latest"
defaults:
run:
shell: bash -l {0}

steps:
- uses: actions/checkout@v4
- name: Setup parcels
uses: ./.github/actions/install-parcels
with:
environment-file: environment.yml
- run: sphinx-build -b linkcheck docs/ _build/linkcheck
- uses: actions/checkout@v4
- uses: prefix-dev/[email protected]
- run: pixi run docs-linkcheck
49 changes: 49 additions & 0 deletions .github/workflows/cache-pixi-lock.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Generate and cache Pixi lockfile

on:
workflow_call:
outputs:
cache-id:
description: "The lock file contents"
value: ${{ jobs.cache-pixi-lock.outputs.cache-id }}

jobs:
cache-pixi-lock:
name: Generate output
runs-on: ubuntu-latest
outputs:
cache-id: ${{ steps.restore.outputs.cache-primary-key }}
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
sparse-checkout: pixi.toml
- name: Get current date
id: date
run: echo "date=$(date +'%Y-%m-%d')" >> "$GITHUB_OUTPUT"
- uses: actions/cache/restore@v4
id: restore
with:
path: |
pixi.lock
key: ${{ steps.date.outputs.date }}_${{hashFiles('pixi.toml')}}
- uses: prefix-dev/[email protected]
if: ${{ !steps.restore.outputs.cache-hit }}
with:
pixi-version: v0.49.0
run-install: false
- name: Run pixi lock
if: ${{ !steps.restore.outputs.cache-hit }}
run: pixi lock
- uses: actions/cache/save@v4
if: ${{ !steps.restore.outputs.cache-hit }}
id: cache
with:
path: |
pixi.lock
key: ${{ steps.restore.outputs.cache-primary-key }}
- name: Upload pixi.lock
uses: actions/upload-artifact@v4
with:
name: pixi-lock
path: pixi.lock
Loading