From 040afee0b2bfb3851790a0608371f733fb3a9ac4 Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 21 Mar 2024 11:48:02 +0100 Subject: [PATCH 001/158] Treat `UserDemand` return flow as a source (#1226) Fixes https://github.com/Deltares/Ribasim/issues/1212. --- core/src/allocation_init.jl | 89 ++++++------------- core/src/allocation_optim.jl | 46 ++++++++++ core/src/util.jl | 24 ----- core/test/allocation_test.jl | 28 ++++-- docs/core/allocation.qmd | 56 +++--------- docs/core/usage.qmd | 2 +- .../ribasim_testmodels/allocation.py | 4 +- 7 files changed, 107 insertions(+), 142 deletions(-) diff --git a/core/src/allocation_init.jl b/core/src/allocation_init.jl index 6ef809bd8..6fd3ddbd5 100644 --- a/core/src/allocation_init.jl +++ b/core/src/allocation_init.jl @@ -295,30 +295,6 @@ end const allocation_source_nodetypes = Set{NodeType.T}([NodeType.LevelBoundary, NodeType.FlowBoundary]) -""" -Remove allocation UserDemand return flow edges that are upstream of the UserDemand itself. -""" -function avoid_using_own_returnflow!(p::Parameters, allocation_network_id::Int32)::Nothing - (; graph) = p - node_ids = graph[].node_ids[allocation_network_id] - edge_ids = graph[].edge_ids[allocation_network_id] - node_ids_user_demand = - [node_id for node_id in node_ids if node_id.type == NodeType.UserDemand] - - for node_id_user_demand in node_ids_user_demand - node_id_return_flow = only(outflow_ids_allocation(graph, node_id_user_demand)) - if allocation_path_exists_in_graph(graph, node_id_return_flow, node_id_user_demand) - edge_metadata = graph[node_id_user_demand, node_id_return_flow] - graph[node_id_user_demand, node_id_return_flow] = - @set edge_metadata.allocation_flow = false - empty!(edge_metadata.node_ids) - delete!(edge_ids, (node_id_user_demand, node_id_return_flow)) - @debug "The outflow of $node_id_user_demand is upstream of the UserDemand itself and thus ignored in allocation solves." - end - end - return nothing -end - """ Add the edges connecting the main network work to a subnetwork to both the main network and subnetwork allocation network. @@ -359,9 +335,6 @@ function allocation_graph( error("Errors in sources in allocation network.") end - # Discard UserDemand return flow in allocation if this leads to a closed loop of flow - avoid_using_own_returnflow!(p, allocation_network_id) - return capacity end @@ -512,6 +485,31 @@ function add_constraints_capacity!( return nothing end +""" +Add capacity constraints to the outflow edge of UserDemand nodes. +The constraint indices are the UserDemand node IDs. + +Constraint: +flow over UserDemand edge outflow edge <= cumulative return flow from previous priorities +""" +function add_constraints_user_source!( + problem::JuMP.Model, + p::Parameters, + allocation_network_id::Int32, +)::Nothing + (; graph) = p + F = problem[:F] + node_ids = graph[].node_ids[allocation_network_id] + node_ids_user = [node_id for node_id in node_ids if node_id.type == NodeType.UserDemand] + + problem[:source_user] = JuMP.@constraint( + problem, + [node_id = node_ids_user], + F[(node_id, outflow_id(graph, node_id))] <= 0.0 + ) + return nothing +end + """ Add the source constraints to the allocation problem. The actual threshold values will be set before each allocation solve. @@ -693,41 +691,6 @@ function add_constraints_conservation_basin!( return nothing end -""" -Add the UserDemand returnflow constraints to the allocation problem. -The constraint indices are UserDemand node IDs. -Constraint: -outflow from user_demand <= return factor * inflow to user_demand -""" -function add_constraints_user_demand_returnflow!( - problem::JuMP.Model, - p::Parameters, - allocation_network_id::Int32, -)::Nothing - (; graph, user_demand) = p - F = problem[:F] - - node_ids = graph[].node_ids[allocation_network_id] - node_ids_user_demand_with_returnflow = [ - node_id for node_id in node_ids if node_id.type == NodeType.UserDemand && - !isempty(outflow_ids_allocation(graph, node_id)) - ] - problem[:return_flow] = JuMP.@constraint( - problem, - [node_id_user_demand = node_ids_user_demand_with_returnflow], - F[( - node_id_user_demand, - only(outflow_ids_allocation(graph, node_id_user_demand)), - )] <= - user_demand.return_factor[findsorted(user_demand.node_id, node_id_user_demand)] * F[( - only(inflow_ids_allocation(graph, node_id_user_demand)), - node_id_user_demand, - )], - base_name = "return_flow", - ) - return nothing -end - """ Minimizing |expr| can be achieved by introducing a new variable expr_abs and posing the following constraints: @@ -971,7 +934,7 @@ function allocation_problem( add_constraints_capacity!(problem, capacity, p, allocation_network_id) add_constraints_source!(problem, p, allocation_network_id) - add_constraints_user_demand_returnflow!(problem, p, allocation_network_id) + add_constraints_user_source!(problem, p, allocation_network_id) add_constraints_fractional_flow!(problem, p, allocation_network_id) add_constraints_basin_flow!(problem) add_constraints_flow_demand_outflow!(problem, p, allocation_network_id) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index 09fad5d3d..17e9eab37 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -424,6 +424,48 @@ function adjust_capacities_basin!( return nothing end +""" +Set the initial capacities of the UserDemand return flow sources to 0. +""" +function set_initial_capacities_returnflow!(allocation_model::AllocationModel)::Nothing + (; problem) = allocation_model + constraints_outflow = problem[:source_user] + + for node_id in only(constraints_outflow.axes) + constraint = constraints_outflow[node_id] + capacity = 0.0 + JuMP.set_normalized_rhs(constraint, capacity) + end + return nothing +end + +""" +Add the return flow fraction of the inflow to the UserDemand nodes +to the capacity of the outflow source. +""" +function adjust_capacities_returnflow!( + allocation_model::AllocationModel, + p::Parameters, +)::Nothing + (; graph, user_demand) = p + (; problem) = allocation_model + constraints_outflow = problem[:source_user] + F = problem[:F] + + for node_id in only(constraints_outflow.axes) + constraint = constraints_outflow[node_id] + user_idx = findsorted(user_demand.node_id, node_id) + capacity = + JuMP.normalized_rhs(constraint) + + user_demand.return_factor[user_idx] * + JuMP.value(F[(inflow_id(graph, node_id), node_id)]) + + JuMP.set_normalized_rhs(constraint, capacity) + end + + return nothing +end + """ Set the demand of the flow demand nodes. 2 cases: - Before the first allocation solve, set the demands to their full value; @@ -728,6 +770,8 @@ function allocate_priority!( priorities[priority_idx], collect_demands, ) + + adjust_capacities_returnflow!(allocation_model, p) return nothing end @@ -756,6 +800,8 @@ function allocate!( end end + set_initial_capacities_returnflow!(allocation_model) + for priority_idx in eachindex(priorities) allocate_priority!(allocation_model, u, p, t, priority_idx; collect_demands) end diff --git a/core/src/util.jl b/core/src/util.jl index 25dfbdee1..3b2131d1e 100644 --- a/core/src/util.jl +++ b/core/src/util.jl @@ -588,30 +588,6 @@ is_flow_constraining(node::AbstractParameterNode) = hasfield(typeof(node), :max_ is_flow_direction_constraining(node::AbstractParameterNode) = (nameof(typeof(node)) ∈ [:Pump, :Outlet, :TabulatedRatingCurve, :FractionalFlow]) -"""Find out whether a path exists between a start node and end node in the given allocation network.""" -function allocation_path_exists_in_graph( - graph::MetaGraph, - start_node_id::NodeID, - end_node_id::NodeID, -)::Bool - node_ids_visited = Set{NodeID}() - stack = [start_node_id] - - while !isempty(stack) - current_node_id = pop!(stack) - if current_node_id == end_node_id - return true - end - if !(current_node_id in node_ids_visited) - push!(node_ids_visited, current_node_id) - for outneighbor_node_id in outflow_ids_allocation(graph, current_node_id) - push!(stack, outneighbor_node_id) - end - end - end - return false -end - function has_main_network(allocation::Allocation)::Bool if !is_active(allocation) false diff --git a/core/test/allocation_test.jl b/core/test/allocation_test.jl index 4d503e92e..996e4ed83 100644 --- a/core/test/allocation_test.jl +++ b/core/test/allocation_test.jl @@ -29,18 +29,19 @@ u = ComponentVector(; storage = zeros(length(p.basin.node_id))) Ribasim.allocate!(p, allocation_model, 0.0, u) + # Last priority (= 2) flows F = allocation_model.problem[:F] @test JuMP.value(F[(NodeID(:Basin, 2), NodeID(:Basin, 6))]) ≈ 0.0 @test JuMP.value(F[(NodeID(:Basin, 2), NodeID(:UserDemand, 10))]) ≈ 0.5 - @test JuMP.value(F[(NodeID(:Basin, 8), NodeID(:UserDemand, 12))]) ≈ 0.0 - @test JuMP.value(F[(NodeID(:Basin, 6), NodeID(:Basin, 8))]) ≈ 0.0 + @test JuMP.value(F[(NodeID(:Basin, 8), NodeID(:UserDemand, 12))]) ≈ 2.0 + @test JuMP.value(F[(NodeID(:Basin, 6), NodeID(:Basin, 8))]) ≈ 2.0 @test JuMP.value(F[(NodeID(:FlowBoundary, 1), NodeID(:Basin, 2))]) ≈ 0.5 @test JuMP.value(F[(NodeID(:Basin, 6), NodeID(:UserDemand, 11))]) ≈ 0.0 allocated = p.user_demand.allocated @test allocated[1] ≈ [0.0, 0.5] @test allocated[2] ≈ [4.0, 0.0] - @test allocated[3] ≈ [0.0, 0.0] + @test allocated[3] ≈ [0.0, 2.0] # Test getting and setting UserDemand demands (; user_demand) = p @@ -226,7 +227,7 @@ end @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [4.0, 4.0, 0.0] @test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0] @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))] ≈ - [0.001, 0.002, 0.002] + [0.001, 0.002, 0.0011] # Solving for the main network, containing subnetworks as UserDemands allocation_model = allocation_models[1] @@ -331,7 +332,7 @@ end @test ispath(toml_path) model = Ribasim.Model(toml_path) (; p) = model.integrator - (; graph, allocation, flow_demand) = p + (; graph, allocation, flow_demand, user_demand, level_boundary) = p # Test has_external_demand @test !any( @@ -373,14 +374,14 @@ end t = 0.0 - # Priority 1 + ## Priority 1 Ribasim.allocate_priority!(allocation_model, model.integrator.u, p, t, 1) objective = JuMP.objective_function(problem) @test F_abs_flow_demand[node_id_with_flow_demand] in keys(objective.terms) @test flow_demand.demand[1] == flow_demand.demand_itp[1](t) @test JuMP.normalized_rhs(constraint_flow_out) == Inf - # Priority 2 + ## Priority 2 Ribasim.allocate_priority!(allocation_model, model.integrator.u, p, t, 2) # The flow at priority 1 through the node with a flow demand at priority 2 # is subtracted from this flow demand @@ -389,7 +390,7 @@ end Ribasim.get_user_demand(p, NodeID(NodeType.UserDemand, 6), 1) @test JuMP.normalized_rhs(constraint_flow_out) == 0.0 - # Priority 3 + ## Priority 3 Ribasim.allocate_priority!(allocation_model, model.integrator.u, p, t, 3) @test JuMP.normalized_rhs(constraint_flow_out) == Inf # The flow from the source is used up in previous priorities @@ -397,6 +398,17 @@ end # So flow from the flow buffer is used for UserDemand #4 @test JuMP.value(F_flow_buffer_out[node_id_with_flow_demand]) == Ribasim.get_user_demand(p, NodeID(NodeType.UserDemand, 4), 3) + # Flow taken from buffer + @test JuMP.value(only(F_flow_buffer_out)) == user_demand.demand_itp[1][3](t) + # No flow coming from level boundary + @test JuMP.value(F[(only(level_boundary.node_id), node_id_with_flow_demand)]) == 0 + + ## Priority 4 + Ribasim.allocate_priority!(allocation_model, model.integrator.u, p, t, 4) + # Get demand from buffers + d = user_demand.demand_itp[3][4](t) + @assert JuMP.value(F[(NodeID(NodeType.UserDemand, 4), NodeID(NodeType.Basin, 7))]) + + JuMP.value(F[(NodeID(NodeType.UserDemand, 6), NodeID(NodeType.Basin, 7))]) == d end @testitem "flow_demand_with_max_flow_rate" begin diff --git a/docs/core/allocation.qmd b/docs/core/allocation.qmd index 92fa67ca1..dabf834f4 100644 --- a/docs/core/allocation.qmd +++ b/docs/core/allocation.qmd @@ -122,8 +122,9 @@ The capacities are determined in different ways: There are also capacities for special edges: -- $C^B_S \in \mathbb{R}^b_{\ge 0}$ where $b = \# B_S$ is the number of basins, for the flow supplied by basins. +- $C^{LD}_S \in \mathbb{R}^b_{\ge 0}$ where $b = \# B_S$ is the number of basins, for the flow supplied by basins based on level demand (this capacity is 0 for basins that have no level demand). - $C^{FD}_S \in \mathbb{R}^c_{\ge 0}$ where $c = \# FD_S$ is the number of nodes with a flow demand, for the flow supplied by flow buffers at these nodes with a flow demand. +- $C^{UD}_S \in \mathbb{R}^f_{\ge 0}$ where $f = \# U_S$, for the flow supplied by the user demand outflow source whose capacity is given by return flows. # The optimization problem @@ -198,25 +199,23 @@ $$ When performing subnetwork demand collection, these capacities are set to $\infty$ for edges which connect the main network to a subnetwork. ::: -Similar constraints hold for the flow out of basins and flow demand buffers: +Similar constraints hold for the flow out of basins, flow demand buffers and user demand outflow sources: $$ -F^\text{basin out}_{i} \le (C^B_S)_i, \quad \forall i \in B_S, +F^\text{basin out}_{i} \le (C^{FD}_S)_i, \quad \forall i \in B_S, $$ $$ -F^\text{buffer out}_{i} \le (C^FD_S)_i, \quad \forall i \in FD_S. +F^\text{buffer out}_{i} \le (C^{FD}_S)_i, \quad \forall i \in FD_S, $$ - -- `UserDemand` outflow: The outflow of the UserDemand is dictated by the inflow and the return factor: $$ - F_{ik} = r_k \cdot F_{kj} \quad - \quad \forall k \in U_S, \quad - V^{\text{in}}_S(k) = \{i\},\; - V^{\text{out}}_S(k) = \{j\}. -$$ {#eq-returnflowconstraint} -Here we use that each UserDemand node in the allocation network has a unique in-edge and out-edge. -- User demand: UserDemand demand constraints are discussed in [the next section](allocation.qmd#sec-solving-allocation). +F_{ij} \le (C^{UD}_S)_i, \quad \forall i \in U_S, \quad V_S^{\text{out}}(i) = \{j\}. +$$ +Here we use that each UserDemand node in the allocation network has a unique outflow edge. The user outflow source capacities are increased after each optimization solve by the return fraction: +$$ + r_i \cdot F_{ki}, \quad V_S^{\text{in}}(i) = \{k\}. +$$ + - Fractional flow: Let $L_S \subset V_S$ be the set of nodes in the max flow graph with fractional flow outneighbors, and $f_j$ the flow fraction associated with fractional flow node $j \in V_S$. Then $$ F_{ij} \le f_j \sum_{k\in V^\text{in}_S(i)} F_{ki} \qquad @@ -226,37 +225,6 @@ $$ {#eq-fractionalflowconstraint} - Flow sign: Furthermore there are the non-negativity constraints for the flows and allocations, see [The optimization variables](allocation.qmd#the-optimization-variables). -## Final notes on the allocation problem - -### UserDemands using their own return flow - -If not explicitly avoided, UserDemands can use their own return flow in this allocation problem formulation. -Therefore, return flow of UserDemand is only taken into account by allocation if that return flow is downstream of the UserDemand where it comes from. That is, if there is no path in the directed allocation network from the UserDemand outflow node back to the UserDemand. - -# Solving the allocation problem {#sec-solving-allocation} - -The allocation problem for an allocation network at time $t$ is solved per priority, as follows: - -1. Define a capacity matrix with capacities as described above, that will be updated for each priority: -$$ - C_S^p \leftarrow C_S; -$$ -2. Set the capacities of the edges that end in a UserDemand to their priority 1 demands: -$$ - (C_S^p)_{i,j} \leftarrow d_j^1(t) \quad\text{ for all } (i,j) \in U_S; -$$ -3. Maximize the objective function given the constraints; -4. Subtract the used flows from the edge capacities: -$$ - C_S^p \leftarrow C_S^p - F; -$$ -5. Repeat steps 2-4 for the remaining priorities up to $p_{\max}$. - -:::{.callout-note} -In the future there will be 2 more optimization solves: -- One before optimizing for demands, taking the demand/supply from basins into account; -- One after optimizing for demands, taking preferences over sources into account. -::: ## Example diff --git a/docs/core/usage.qmd b/docs/core/usage.qmd index 243e0d9f2..e3da5d330 100644 --- a/docs/core/usage.qmd +++ b/docs/core/usage.qmd @@ -501,7 +501,7 @@ min_level | Float64 | $m$ | - max_level | Float64 | $m$ | - priority | Int32 | - | positive -# FlowDemand {#sec-level_demand} +# FlowDemand {#sec-flow_demand} A `FlowDemand` node associates a non-consuming flow demand to a connector node (e.g. `Pump`, `TabulatedRatingCurve`) for one single priority. FlowDemand nodes can set a flow demand only for a single connector node. diff --git a/python/ribasim_testmodels/ribasim_testmodels/allocation.py b/python/ribasim_testmodels/ribasim_testmodels/allocation.py index 3509ead1f..2ff7bac8b 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/allocation.py +++ b/python/ribasim_testmodels/ribasim_testmodels/allocation.py @@ -121,7 +121,7 @@ def subnetwork_model() -> Model: Node(11, Point(3, 3), subnetwork_id=2), [ user_demand.Static( - demand=[5.0], return_factor=0.9, min_level=0.9, priority=1 + demand=[5.0], return_factor=0.5, min_level=0.9, priority=1 ) ], ) @@ -939,7 +939,7 @@ def flow_demand_model() -> Model: Node(8, Point(3, -2), subnetwork_id=2), [ user_demand.Static( - priority=[4], demand=1e-3, return_factor=1.0, min_level=0.2 + priority=[4], demand=2e-3, return_factor=1.0, min_level=0.2 ) ], ) From 21600cf70a8dc8625afcf49c104f4b2c753dea70 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Fri, 22 Mar 2024 09:44:32 +0100 Subject: [PATCH 002/158] Unpin OteraEngine, switch to latest 0.5.1 (#1301) Fixes #1240 It was not a breaking change but a regression, which I reported and then swiftly got fixed. --- Manifest.toml | 6 +++--- Project.toml | 3 --- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/Manifest.toml b/Manifest.toml index d596926b1..1fac1ddbd 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -2,7 +2,7 @@ julia_version = "1.10.0" manifest_format = "2.0" -project_hash = "a66ce8b152bba81b582cbf6d8a2e07a88d016add" +project_hash = "22708fb864a341d70b001d75765852e92f1f5399" [[deps.ADTypes]] git-tree-sha1 = "41c37aa88889c171f1300ceac1313c06e891d245" @@ -1075,9 +1075,9 @@ version = "6.74.0" [[deps.OteraEngine]] deps = ["Markdown", "Pkg", "TOML"] -git-tree-sha1 = "0d57df750e20a4534a117398dc04eb237d86ea70" +git-tree-sha1 = "69e36fecf524a1da7d76a8ae3e70a221d86d2867" uuid = "b2d7f28f-acd6-4007-8b26-bc27716e5513" -version = "0.4.1" +version = "0.5.1" [[deps.PackageCompiler]] deps = ["Artifacts", "Glob", "LazyArtifacts", "Libdl", "Pkg", "Printf", "RelocatableFolders", "TOML", "UUIDs", "p7zip_jll"] diff --git a/Project.toml b/Project.toml index 3919b75a2..c6c2b70ef 100644 --- a/Project.toml +++ b/Project.toml @@ -56,6 +56,3 @@ TestEnv = "1e6cf692-eddd-4d53-88a5-2d735e33781b" TimeZones = "f269a46b-ccf7-5d73-abea-4c690281aa53" TimerOutputs = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f" TranscodingStreams = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" - -[compat] -OteraEngine = "0.4" From 1fe87c26c0512b9ffd56cd1b991ff71b0af4d080 Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Fri, 22 Mar 2024 10:37:02 +0100 Subject: [PATCH 003/158] Update version numbers (#1303) In order to prepare for release --- Manifest.toml | 2 +- core/Project.toml | 2 +- core/test/data/config_test.toml | 2 +- core/test/data/logging_test_loglevel_debug.toml | 2 +- core/test/data/logging_test_no_loglevel.toml | 2 +- core/test/docs.toml | 2 +- pixi.toml | 2 +- python/ribasim/ribasim/__init__.py | 2 +- python/ribasim_api/ribasim_api/__init__.py | 2 +- ribasim_qgis/metadata.txt | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Manifest.toml b/Manifest.toml index 1fac1ddbd..42d87b52e 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -1247,7 +1247,7 @@ version = "3.5.14" deps = ["Accessors", "Arrow", "BasicModelInterface", "CodecZstd", "ComponentArrays", "Configurations", "DBInterface", "DataInterpolations", "DataStructures", "Dates", "Dictionaries", "DiffEqCallbacks", "EnumX", "FiniteDiff", "ForwardDiff", "Graphs", "HiGHS", "IterTools", "JuMP", "Legolas", "LinearSolve", "Logging", "LoggingExtras", "MetaGraphsNext", "OrdinaryDiffEq", "PreallocationTools", "SQLite", "SciMLBase", "SparseArrays", "StructArrays", "Tables", "TerminalLoggers", "TimeZones", "TimerOutputs", "TranscodingStreams"] path = "core" uuid = "aac5e3d9-0b8f-4d4f-8241-b1a7a9632635" -version = "2024.4.0" +version = "2024.5.0" [[deps.RuntimeGeneratedFunctions]] deps = ["ExprTools", "SHA", "Serialization"] diff --git a/core/Project.toml b/core/Project.toml index b8c4ff255..2ea2db8cd 100644 --- a/core/Project.toml +++ b/core/Project.toml @@ -2,7 +2,7 @@ name = "Ribasim" uuid = "aac5e3d9-0b8f-4d4f-8241-b1a7a9632635" authors = ["Deltares and contributors "] manifest = "../Manifest.toml" -version = "2024.4.0" +version = "2024.5.0" [deps] Accessors = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697" diff --git a/core/test/data/config_test.toml b/core/test/data/config_test.toml index 9c7390dd3..dbf0469ac 100644 --- a/core/test/data/config_test.toml +++ b/core/test/data/config_test.toml @@ -2,7 +2,7 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "../../generated_testmodels/lhm" results_dir = "../../generated_testmodels/lhm" -ribasim_version = "2024.4.0" +ribasim_version = "2024.5.0" [basin] time = "basin/time.arrow" diff --git a/core/test/data/logging_test_loglevel_debug.toml b/core/test/data/logging_test_loglevel_debug.toml index a8c077906..e25e35415 100644 --- a/core/test/data/logging_test_loglevel_debug.toml +++ b/core/test/data/logging_test_loglevel_debug.toml @@ -2,7 +2,7 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "." results_dir = "results" -ribasim_version = "2024.4.0" +ribasim_version = "2024.5.0" [logging] verbosity = "debug" diff --git a/core/test/data/logging_test_no_loglevel.toml b/core/test/data/logging_test_no_loglevel.toml index 7e0c9514b..560b8742e 100644 --- a/core/test/data/logging_test_no_loglevel.toml +++ b/core/test/data/logging_test_no_loglevel.toml @@ -2,4 +2,4 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "." results_dir = "results" -ribasim_version = "2024.4.0" +ribasim_version = "2024.5.0" diff --git a/core/test/docs.toml b/core/test/docs.toml index a7f35121a..9bc838934 100644 --- a/core/test/docs.toml +++ b/core/test/docs.toml @@ -7,7 +7,7 @@ endtime = 2021-01-01 # required input_dir = "." # required results_dir = "results" # required -ribasim_version = "2024.4.0" # required +ribasim_version = "2024.5.0" # required # Specific tables can also go into Arrow files rather than the database. # For large tables this can benefit from better compressed file sizes. diff --git a/pixi.toml b/pixi.toml index 220657e16..d538096ab 100644 --- a/pixi.toml +++ b/pixi.toml @@ -1,6 +1,6 @@ [project] name = "Ribasim" -version = "2024.4.0" +version = "2024.5.0" description = "Water resources modeling" authors = ["Deltares and contributors "] channels = ["conda-forge"] diff --git a/python/ribasim/ribasim/__init__.py b/python/ribasim/ribasim/__init__.py index 799569fe8..e388d3398 100644 --- a/python/ribasim/ribasim/__init__.py +++ b/python/ribasim/ribasim/__init__.py @@ -1,4 +1,4 @@ -__version__ = "2024.4.0" +__version__ = "2024.5.0" from ribasim.config import Allocation, Logging, Node, Solver diff --git a/python/ribasim_api/ribasim_api/__init__.py b/python/ribasim_api/ribasim_api/__init__.py index a8d68a239..bbabe0560 100644 --- a/python/ribasim_api/ribasim_api/__init__.py +++ b/python/ribasim_api/ribasim_api/__init__.py @@ -1,4 +1,4 @@ -__version__ = "2024.4.0" +__version__ = "2024.5.0" from ribasim_api.ribasim_api import RibasimApi diff --git a/ribasim_qgis/metadata.txt b/ribasim_qgis/metadata.txt index f35eeeada..65dc4da3e 100644 --- a/ribasim_qgis/metadata.txt +++ b/ribasim_qgis/metadata.txt @@ -7,7 +7,7 @@ name=Ribasim-QGIS qgisMinimumVersion=3.0 description=QGIS plugin to setup Ribasim models -version=2024.4.0 +version=2024.5.0 author=Deltares and contributors email=ribasim.info@deltares.nl From f43010bb1b0521a27fcda9d93f60ac4d364bfb45 Mon Sep 17 00:00:00 2001 From: Huite Date: Fri, 22 Mar 2024 12:07:26 +0100 Subject: [PATCH 004/158] Add support for indexing into TableModel, except Edge (#1304) --- python/ribasim/ribasim/config.py | 15 +++++++++--- python/ribasim/ribasim/geometry/edge.py | 3 +++ python/ribasim/ribasim/input_base.py | 15 ++++++++++++ python/ribasim/tests/test_edge.py | 5 ++++ python/ribasim/tests/test_model.py | 32 +++++++++++++++++++++++++ 5 files changed, 67 insertions(+), 3 deletions(-) diff --git a/python/ribasim/ribasim/config.py b/python/ribasim/ribasim/config.py index d68d3f710..4f4d45fa4 100644 --- a/python/ribasim/ribasim/config.py +++ b/python/ribasim/ribasim/config.py @@ -1,3 +1,4 @@ +import numbers from collections.abc import Sequence from enum import Enum from typing import Any @@ -144,10 +145,18 @@ def add(self, node: Node, tables: Sequence[TableModel[Any]] | None = None) -> No else pd.concat([self.node.df, node_table]) ) - def __getitem__(self, index): - row = self.node.df[self.node.df["node_id"] == index].iloc[0] + def __getitem__(self, index: int) -> NodeData: + # Unlike TableModel, support only indexing single rows. + if not isinstance(index, numbers.Integral): + node_model_name = type(self).__name__ + indextype = type(index).__name__ + raise TypeError( + f"{node_model_name} index must be an integer, not {indextype}" + ) + + row = self.node[index].iloc[0] return NodeData( - node_id=index, node_type=row["node_type"], geometry=row["geometry"] + node_id=int(index), node_type=row["node_type"], geometry=row["geometry"] ) diff --git a/python/ribasim/ribasim/geometry/edge.py b/python/ribasim/ribasim/geometry/edge.py index c71f47aa5..ba92a824a 100644 --- a/python/ribasim/ribasim/geometry/edge.py +++ b/python/ribasim/ribasim/geometry/edge.py @@ -159,3 +159,6 @@ def plot(self, **kwargs) -> Axes: ) return ax + + def __getitem__(self, _): + raise NotImplementedError diff --git a/python/ribasim/ribasim/input_base.py b/python/ribasim/ribasim/input_base.py index cf5373fc9..3b6ec99b6 100644 --- a/python/ribasim/ribasim/input_base.py +++ b/python/ribasim/ribasim/input_base.py @@ -14,6 +14,7 @@ ) import geopandas as gpd +import numpy as np import pandas as pd import pandera as pa from pandera.typing import DataFrame @@ -337,6 +338,20 @@ def _repr_html_(self): else: return f"
{self.tablename()}
" + self.df._repr_html_() + def __getitem__(self, index) -> pd.DataFrame | gpd.GeoDataFrame: + tablename = self.tablename() + if self.df is None: + raise ValueError(f"Cannot index into {tablename}: it contains no data.") + + # Allow for indexing with multiple values. + np_index = np.atleast_1d(index) + missing = np.setdiff1d(np_index, self.df["node_id"].unique()) + if missing.size > 0: + raise IndexError(f"{tablename} does not contain node_id: {missing}") + + # Index with .loc[..., :] to always return a DataFrame. + return self.df.loc[self.df["node_id"].isin(np_index), :] + class SpatialTableModel(TableModel[TableT], Generic[TableT]): df: GeoDataFrame[TableT] | None = Field(default=None, exclude=True, repr=False) diff --git a/python/ribasim/tests/test_edge.py b/python/ribasim/tests/test_edge.py index 045f11645..ce1acd501 100644 --- a/python/ribasim/tests/test_edge.py +++ b/python/ribasim/tests/test_edge.py @@ -32,3 +32,8 @@ def test_validation(edge): def test_edge_plot(edge): edge.plot() + + +def test_edge_indexing(edge): + with pytest.raises(NotImplementedError): + edge[1] diff --git a/python/ribasim/tests/test_model.py b/python/ribasim/tests/test_model.py index eefc87e9c..d5f3b4207 100644 --- a/python/ribasim/tests/test_model.py +++ b/python/ribasim/tests/test_model.py @@ -6,6 +6,7 @@ import pytest from pydantic import ValidationError from ribasim.config import Solver +from ribasim.geometry.edge import NodeData from ribasim.input_base import esc_id from ribasim.model import Model from shapely import Point @@ -182,3 +183,34 @@ def test_node_table(basic): assert df.geometry.is_unique assert df.node_type.iloc[0] == "Basin" assert df.node_type.iloc[-1] == "Terminal" + + +def test_indexing(basic): + model = basic + + result = model.basin[1] + assert isinstance(result, NodeData) + + # Also test with a numpy type + result = model.basin[np.int32(1)] + assert isinstance(result, NodeData) + + with pytest.raises(TypeError, match="Basin index must be an integer, not list"): + model.basin[[1, 3, 6]] + + result = model.basin.static[1] + assert isinstance(result, pd.DataFrame) + + result = model.basin.static[[1, 3, 6]] + assert isinstance(result, pd.DataFrame) + + with pytest.raises( + IndexError, match=re.escape("Basin / static does not contain node_id: [2]") + ): + model.basin.static[2] + + with pytest.raises( + ValueError, + match=re.escape("Cannot index into Basin / time: it contains no data."), + ): + model.basin.time[1] From 0acbbedfeab7973ca52b1c83da19229f6b2326e4 Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Mon, 25 Mar 2024 13:38:37 +0100 Subject: [PATCH 005/158] Parallelize generate testmodels (#1309) Fixes #1302 On my machine, that reduces the runtime of `pixi run generate-testmodels` from 1m50s to 42s --- utils/generate-testmodels.py | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/utils/generate-testmodels.py b/utils/generate-testmodels.py index 2394efe30..516ef2281 100644 --- a/utils/generate-testmodels.py +++ b/utils/generate-testmodels.py @@ -1,8 +1,18 @@ +import multiprocessing import shutil +from functools import partial from pathlib import Path import ribasim_testmodels + +def generate_model(args, datadir): + model_name, model_constructor = args + model = model_constructor() + model.write(datadir / model_name / "ribasim.toml") + return model_name + + if __name__ == "__main__": datadir = Path("generated_testmodels") if datadir.is_dir(): @@ -18,7 +28,10 @@ Don't put important stuff in here, it will be emptied for every run.""" ) - for model_name, model_constructor in ribasim_testmodels.constructors.items(): - print(f"Generating {model_name}") - model = model_constructor() - model.write(datadir / model_name / "ribasim.toml") + generate_model_partial = partial(generate_model, datadir=datadir) + + with multiprocessing.Pool(processes=4) as p: + for model_name in p.imap_unordered( + generate_model_partial, ribasim_testmodels.constructors.items() + ): + print(f"Generated {model_name}") From bee3d395666169339ec20d61e44f068a014c4aa7 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Mon, 25 Mar 2024 14:42:22 +0100 Subject: [PATCH 006/158] Error early on non globally unique node IDs (#1311) Alleviates https://github.com/Deltares/Ribasim/issues/1262 This code will need to be removed again when that is fixed. --- core/src/model.jl | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/core/src/model.jl b/core/src/model.jl index 009cd80c2..afa24347e 100644 --- a/core/src/model.jl +++ b/core/src/model.jl @@ -85,6 +85,13 @@ function Model(config::Config)::Model state = load_structvector(db, config, BasinStateV1) n = length(get_ids(db, "Basin")) + sql = "SELECT node_id FROM Node ORDER BY node_id" + node_id = only(execute(columntable, db, sql)) + if !allunique(node_id) + error( + "Node IDs need to be globally unique until https://github.com/Deltares/Ribasim/issues/1262 is fixed.", + ) + end finally # always close the database, also in case of an error close(db) From fe57d38b8ea878e3efcdcb4ae531242a08692750 Mon Sep 17 00:00:00 2001 From: hofer_jn Date: Mon, 25 Mar 2024 15:32:23 +0100 Subject: [PATCH 007/158] TeamCity change in 'Ribasim' project: commit current project settings --- .../buildTypes/Ribasim_GenerateTestmodels.xml | 7 ++--- .../Ribasim_GitHubIntegrationTemplate.xml | 4 +-- .../Ribasim_Ribasim_MakeGitHubRelease.xml | 6 ++-- .../Ribasim_Ribasim_MakeQgisPlugin.xml | 10 ------- .teamcity/Ribasim/project-config.xml | 28 +++++++++---------- .../Ribasim/vcsRoots/Ribasim_Ribasim.xml | 6 ++-- .../Ribasim_Linux_BuildLibribasim.xml | 2 +- .../Ribasim_Linux_BuildRibasimCli.xml | 2 +- .../Ribasim_Linux_TestRibasimApi.xml | 2 +- .../Ribasim_Linux_TestRibasimCli.xml | 2 +- .teamcity/Ribasim_Linux/project-config.xml | 4 +-- .../Ribasim_Windows_BuildLibribasim.xml | 2 +- .../Ribasim_Windows_BuildRibasimCli.xml | 2 +- .../Ribasim_Windows_TestRibasimApi.xml | 2 +- .../Ribasim_Windows_TestRibasimCli.xml | 2 +- .teamcity/Ribasim_Windows/project-config.xml | 2 -- 16 files changed, 33 insertions(+), 50 deletions(-) diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml b/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml index 6ec728832..f385960e6 100644 --- a/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml +++ b/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml @@ -39,13 +39,10 @@ pixi run generate-testmodels]]> - - - - - + + diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_GitHubIntegrationTemplate.xml b/.teamcity/Ribasim/buildTypes/Ribasim_GitHubIntegrationTemplate.xml index 4b62b639d..53d47f3cd 100644 --- a/.teamcity/Ribasim/buildTypes/Ribasim_GitHubIntegrationTemplate.xml +++ b/.teamcity/Ribasim/buildTypes/Ribasim_GitHubIntegrationTemplate.xml @@ -6,7 +6,7 @@ - + @@ -17,7 +17,7 @@ - + diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeGitHubRelease.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeGitHubRelease.xml index 341866805..68ecd2777 100644 --- a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeGitHubRelease.xml +++ b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeGitHubRelease.xml @@ -4,7 +4,7 @@ - + @@ -14,8 +14,7 @@ set -euxo pipefail . /usr/share/Modules/init/bash module load pixi -pixi run github-release -]]> +pixi run github-release]]> @@ -112,3 +111,4 @@ pixi run github-release + diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeQgisPlugin.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeQgisPlugin.xml index 61df7b30f..a436879c0 100644 --- a/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeQgisPlugin.xml +++ b/.teamcity/Ribasim/buildTypes/Ribasim_Ribasim_MakeQgisPlugin.xml @@ -34,16 +34,6 @@ zip -r ribasim_qgis.zip ribasim_qgis]]> - - - - - - diff --git a/.teamcity/Ribasim/project-config.xml b/.teamcity/Ribasim/project-config.xml index 48a3307fa..731bb803b 100644 --- a/.teamcity/Ribasim/project-config.xml +++ b/.teamcity/Ribasim/project-config.xml @@ -3,6 +3,20 @@ Ribasim + + + + + + + + + + + + + + @@ -46,20 +60,6 @@ - - - - - - - - - - - - - - diff --git a/.teamcity/Ribasim/vcsRoots/Ribasim_Ribasim.xml b/.teamcity/Ribasim/vcsRoots/Ribasim_Ribasim.xml index 6d2362381..754676e5a 100644 --- a/.teamcity/Ribasim/vcsRoots/Ribasim_Ribasim.xml +++ b/.teamcity/Ribasim/vcsRoots/Ribasim_Ribasim.xml @@ -3,18 +3,18 @@ Ribasim - + + - - + diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml index 646583b20..6b59a4f78 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml @@ -56,7 +56,7 @@ pixi run build-libribasim]]> - + diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml index b5f19d98f..cd465d479 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml @@ -63,7 +63,7 @@ pixi run build-ribasim-cli]]> - + diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml index 9a3c252da..dd059e9da 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml @@ -79,7 +79,7 @@ pixi run test-ribasim-api]]> - + diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml index c376f147d..8859f967b 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml @@ -79,7 +79,7 @@ pixi run test-ribasim-cli]]> - + diff --git a/.teamcity/Ribasim_Linux/project-config.xml b/.teamcity/Ribasim_Linux/project-config.xml index 562047376..9a893e1ae 100644 --- a/.teamcity/Ribasim_Linux/project-config.xml +++ b/.teamcity/Ribasim_Linux/project-config.xml @@ -1,9 +1,7 @@ Linux - - - + diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml index 06a31dcbe..142e850f2 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml @@ -45,7 +45,7 @@ pixi run build-libribasim]]> - + diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml index a731216c4..f1807c28d 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml @@ -51,7 +51,7 @@ pixi run build-ribasim-cli]]> - + diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml index 820192d09..0d444dd2f 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml @@ -67,7 +67,7 @@ - + diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml index 9c9484b66..0038e1143 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml @@ -67,7 +67,7 @@ - + diff --git a/.teamcity/Ribasim_Windows/project-config.xml b/.teamcity/Ribasim_Windows/project-config.xml index 79e9fcbe0..ea879c65f 100644 --- a/.teamcity/Ribasim_Windows/project-config.xml +++ b/.teamcity/Ribasim_Windows/project-config.xml @@ -2,8 +2,6 @@ Windows - - From 4b32b7dd3085c14484edd5aa0e3ffab92245ae26 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Tue, 26 Mar 2024 09:07:56 +0100 Subject: [PATCH 008/158] Set the Node fid back to the node_id (#1316) The idea was that the Node table `fid` would not be used anymore, but #1306 showed that is unfortunately not yet the case. So this changes the `fid` after it is initially written to be equal to the `node_id`. Any users should still not rely on the `fid`, because this is only temporary. This is like #1311 but now also catching non unique node IDs on `model.write`. It also provides a temporary fix to #1306. It's not great, but I feel that especially #1306 is bad enough to warrant a quick fix. This would've been a bit cleaner to implement using #1312 to avoid having to read and re-write the Node table, but that PR still has issues we don't understand, so best not to wait on that. ![image](https://github.com/Deltares/Ribasim/assets/4471859/3efc2f8c-6be5-459d-929a-7ce8568fca3d) --- python/ribasim/ribasim/model.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index d0faaeb12..30c39270a 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -3,6 +3,7 @@ from pathlib import Path from typing import Any +import geopandas as gpd import pandas as pd import tomli import tomli_w @@ -138,6 +139,16 @@ def _save(self, directory: DirectoryPath, input_dir: DirectoryPath): for sub in self._nodes(): sub._save(directory, input_dir) + # Temporarily require unique node_id for #1262 + # and copy them to the fid for #1306. + df = gpd.read_file(db_path, layer="Node") + if not df["node_id"].is_unique: + raise ValueError("node_id must be unique") + df.set_index("node_id", drop=False, inplace=True) + df.sort_index(inplace=True) + df.index.name = "fid" + df.to_file(db_path, layer="Node", driver="GPKG", index=True) + def node_table(self) -> NodeTable: """Compute the full NodeTable from all node types.""" df_chunks = [node.node.df for node in self._nodes()] From 1be891b6498f8ed688a5e4330a33074ae9965e20 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Tue, 26 Mar 2024 10:04:01 +0100 Subject: [PATCH 009/158] Use 32 bit signed integer on the Python side as well (#1315) Follow up of #1252 --- python/ribasim/ribasim/config.py | 5 +- python/ribasim/ribasim/geometry/area.py | 3 +- python/ribasim/ribasim/geometry/edge.py | 13 ++-- python/ribasim/ribasim/geometry/node.py | 5 +- python/ribasim/ribasim/model.py | 9 ++- python/ribasim/ribasim/schemas.py | 76 +++++++++---------- python/ribasim/tests/test_io.py | 4 +- python/ribasim/tests/test_model.py | 2 + .../ribasim_testmodels/backwater.py | 2 +- utils/gen_python.jl | 2 +- utils/templates/schemas.py.jinja | 4 +- 11 files changed, 67 insertions(+), 58 deletions(-) diff --git a/python/ribasim/ribasim/config.py b/python/ribasim/ribasim/config.py index 4f4d45fa4..f9605111d 100644 --- a/python/ribasim/ribasim/config.py +++ b/python/ribasim/ribasim/config.py @@ -3,6 +3,7 @@ from enum import Enum from typing import Any +import numpy as np import pandas as pd import pydantic from geopandas import GeoDataFrame @@ -98,10 +99,10 @@ def __init__(self, node_id: int, geometry: Point, **kwargs) -> None: def into_geodataframe(self, node_type: str) -> GeoDataFrame: return GeoDataFrame( data={ - "node_id": pd.Series([self.node_id], dtype=int), + "node_id": pd.Series([self.node_id], dtype=np.int32), "node_type": pd.Series([node_type], dtype=str), "name": pd.Series([self.name], dtype=str), - "subnetwork_id": pd.Series([self.subnetwork_id], dtype=pd.Int64Dtype()), + "subnetwork_id": pd.Series([self.subnetwork_id], dtype=pd.Int32Dtype()), }, geometry=[self.geometry], ) diff --git a/python/ribasim/ribasim/geometry/area.py b/python/ribasim/ribasim/geometry/area.py index 950165eed..d6aa448c1 100644 --- a/python/ribasim/ribasim/geometry/area.py +++ b/python/ribasim/ribasim/geometry/area.py @@ -1,6 +1,7 @@ from typing import Any import pandera as pa +from pandera.dtypes import Int32 from pandera.typing import Series from pandera.typing.geopandas import GeoSeries @@ -8,5 +9,5 @@ class BasinAreaSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) geometry: GeoSeries[Any] = pa.Field(default=None, nullable=True) diff --git a/python/ribasim/ribasim/geometry/edge.py b/python/ribasim/ribasim/geometry/edge.py index ba92a824a..c6199dbaf 100644 --- a/python/ribasim/ribasim/geometry/edge.py +++ b/python/ribasim/ribasim/geometry/edge.py @@ -7,6 +7,7 @@ import shapely from matplotlib.axes import Axes from numpy.typing import NDArray +from pandera.dtypes import Int32 from pandera.typing import Series from pandera.typing.geopandas import GeoDataFrame, GeoSeries from pydantic import model_validator @@ -28,11 +29,11 @@ class NodeData(NamedTuple): class EdgeSchema(pa.SchemaModel): name: Series[str] = pa.Field(default="") from_node_type: Series[str] = pa.Field(nullable=True) - from_node_id: Series[int] = pa.Field(default=0, coerce=True) + from_node_id: Series[Int32] = pa.Field(default=0, coerce=True) to_node_type: Series[str] = pa.Field(nullable=True) - to_node_id: Series[int] = pa.Field(default=0, coerce=True) + to_node_id: Series[Int32] = pa.Field(default=0, coerce=True) edge_type: Series[str] = pa.Field(default="flow", coerce=True) - subnetwork_id: Series[pd.Int64Dtype] = pa.Field( + subnetwork_id: Series[pd.Int32Dtype] = pa.Field( default=pd.NA, nullable=True, coerce=True ) geometry: GeoSeries[Any] = pa.Field(default=None, nullable=True) @@ -70,12 +71,12 @@ def add( table_to_append = GeoDataFrame[EdgeSchema]( data={ "from_node_type": pd.Series([from_node.node_type], dtype=str), - "from_node_id": pd.Series([from_node.node_id], dtype=int), + "from_node_id": pd.Series([from_node.node_id], dtype=np.int32), "to_node_type": pd.Series([to_node.node_type], dtype=str), - "to_node_id": pd.Series([to_node.node_id], dtype=int), + "to_node_id": pd.Series([to_node.node_id], dtype=np.int32), "edge_type": pd.Series([edge_type], dtype=str), "name": pd.Series([name], dtype=str), - "subnetwork_id": pd.Series([subnetwork_id], dtype=pd.Int64Dtype()), + "subnetwork_id": pd.Series([subnetwork_id], dtype=pd.Int32Dtype()), }, geometry=geometry_to_append, ) diff --git a/python/ribasim/ribasim/geometry/node.py b/python/ribasim/ribasim/geometry/node.py index d5916a56f..d77a40f99 100644 --- a/python/ribasim/ribasim/geometry/node.py +++ b/python/ribasim/ribasim/geometry/node.py @@ -6,6 +6,7 @@ import pandas as pd import pandera as pa from matplotlib.patches import Patch +from pandera.dtypes import Int32 from pandera.typing import Series from pandera.typing.geopandas import GeoSeries @@ -15,10 +16,10 @@ class NodeSchema(pa.SchemaModel): - node_id: Series[int] + node_id: Series[Int32] name: Series[str] = pa.Field(default="") node_type: Series[str] = pa.Field(default="") - subnetwork_id: Series[pd.Int64Dtype] = pa.Field( + subnetwork_id: Series[pd.Int32Dtype] = pa.Field( default=pd.NA, nullable=True, coerce=True ) geometry: GeoSeries[Any] = pa.Field(default=None, nullable=True) diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index 30c39270a..20064689d 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -4,6 +4,7 @@ from typing import Any import geopandas as gpd +import numpy as np import pandas as pd import tomli import tomli_w @@ -248,10 +249,10 @@ def reset_contextvar(self) -> "Model": def plot_control_listen(self, ax): df_listen_edge = pd.DataFrame( data={ - "control_node_id": pd.Series([], dtype="int"), - "control_node_type": pd.Series([], dtype="str"), - "listen_node_id": pd.Series([], dtype="int"), - "listen_node_type": pd.Series([], dtype="str"), + "control_node_id": pd.Series([], dtype=np.int32), + "control_node_type": pd.Series([], dtype=str), + "listen_node_id": pd.Series([], dtype=np.int32), + "listen_node_type": pd.Series([], dtype=str), } ) diff --git a/python/ribasim/ribasim/schemas.py b/python/ribasim/ribasim/schemas.py index 34dc9dba1..0cf033671 100644 --- a/python/ribasim/ribasim/schemas.py +++ b/python/ribasim/ribasim/schemas.py @@ -1,7 +1,7 @@ # Automatically generated file. Do not modify. import pandera as pa -from pandera.dtypes import Timestamp +from pandera.dtypes import Int32, Timestamp from pandera.typing import Series @@ -12,18 +12,18 @@ class Config: class BasinProfileSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) area: Series[float] = pa.Field(nullable=False) level: Series[float] = pa.Field(nullable=False) class BasinStateSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) level: Series[float] = pa.Field(nullable=False) class BasinStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) drainage: Series[float] = pa.Field(nullable=True) potential_evaporation: Series[float] = pa.Field(nullable=True) infiltration: Series[float] = pa.Field(nullable=True) @@ -32,14 +32,14 @@ class BasinStaticSchema(_BaseSchema): class BasinSubgridSchema(_BaseSchema): - subgrid_id: Series[int] = pa.Field(nullable=False, default=0) - node_id: Series[int] = pa.Field(nullable=False, default=0) + subgrid_id: Series[Int32] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) basin_level: Series[float] = pa.Field(nullable=False) subgrid_level: Series[float] = pa.Field(nullable=False) class BasinTimeSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) time: Series[Timestamp] = pa.Field(nullable=False) drainage: Series[float] = pa.Field(nullable=True) potential_evaporation: Series[float] = pa.Field(nullable=True) @@ -49,80 +49,80 @@ class BasinTimeSchema(_BaseSchema): class DiscreteControlConditionSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) listen_node_type: Series[str] = pa.Field(nullable=False) - listen_node_id: Series[int] = pa.Field(nullable=False, default=0) + listen_node_id: Series[Int32] = pa.Field(nullable=False, default=0) variable: Series[str] = pa.Field(nullable=False) greater_than: Series[float] = pa.Field(nullable=False) look_ahead: Series[float] = pa.Field(nullable=True) class DiscreteControlLogicSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) truth_state: Series[str] = pa.Field(nullable=False) control_state: Series[str] = pa.Field(nullable=False) class FlowBoundaryStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) flow_rate: Series[float] = pa.Field(nullable=False) class FlowBoundaryTimeSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) time: Series[Timestamp] = pa.Field(nullable=False) flow_rate: Series[float] = pa.Field(nullable=False) class FlowDemandStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) demand: Series[float] = pa.Field(nullable=False) - priority: Series[int] = pa.Field(nullable=False, default=0) + priority: Series[Int32] = pa.Field(nullable=False, default=0) class FlowDemandTimeSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) time: Series[Timestamp] = pa.Field(nullable=False) demand: Series[float] = pa.Field(nullable=False) - priority: Series[int] = pa.Field(nullable=False, default=0) + priority: Series[Int32] = pa.Field(nullable=False, default=0) class FractionalFlowStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) fraction: Series[float] = pa.Field(nullable=False) control_state: Series[str] = pa.Field(nullable=True) class LevelBoundaryStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) level: Series[float] = pa.Field(nullable=False) class LevelBoundaryTimeSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) time: Series[Timestamp] = pa.Field(nullable=False) level: Series[float] = pa.Field(nullable=False) class LevelDemandStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) min_level: Series[float] = pa.Field(nullable=False) max_level: Series[float] = pa.Field(nullable=False) - priority: Series[int] = pa.Field(nullable=False, default=0) + priority: Series[Int32] = pa.Field(nullable=False, default=0) class LevelDemandTimeSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) time: Series[Timestamp] = pa.Field(nullable=False) min_level: Series[float] = pa.Field(nullable=False) max_level: Series[float] = pa.Field(nullable=False) - priority: Series[int] = pa.Field(nullable=False, default=0) + priority: Series[Int32] = pa.Field(nullable=False, default=0) class LinearResistanceStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) resistance: Series[float] = pa.Field(nullable=False) max_flow_rate: Series[float] = pa.Field(nullable=True) @@ -130,7 +130,7 @@ class LinearResistanceStaticSchema(_BaseSchema): class ManningResistanceStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) length: Series[float] = pa.Field(nullable=False) manning_n: Series[float] = pa.Field(nullable=False) @@ -140,7 +140,7 @@ class ManningResistanceStaticSchema(_BaseSchema): class OutletStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) flow_rate: Series[float] = pa.Field(nullable=False) min_flow_rate: Series[float] = pa.Field(nullable=True) @@ -150,10 +150,10 @@ class OutletStaticSchema(_BaseSchema): class PidControlStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) listen_node_type: Series[str] = pa.Field(nullable=False) - listen_node_id: Series[int] = pa.Field(nullable=False, default=0) + listen_node_id: Series[Int32] = pa.Field(nullable=False, default=0) target: Series[float] = pa.Field(nullable=False) proportional: Series[float] = pa.Field(nullable=False) integral: Series[float] = pa.Field(nullable=False) @@ -162,9 +162,9 @@ class PidControlStaticSchema(_BaseSchema): class PidControlTimeSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) listen_node_type: Series[str] = pa.Field(nullable=False) - listen_node_id: Series[int] = pa.Field(nullable=False, default=0) + listen_node_id: Series[Int32] = pa.Field(nullable=False, default=0) time: Series[Timestamp] = pa.Field(nullable=False) target: Series[float] = pa.Field(nullable=False) proportional: Series[float] = pa.Field(nullable=False) @@ -174,7 +174,7 @@ class PidControlTimeSchema(_BaseSchema): class PumpStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) flow_rate: Series[float] = pa.Field(nullable=False) min_flow_rate: Series[float] = pa.Field(nullable=True) @@ -183,7 +183,7 @@ class PumpStaticSchema(_BaseSchema): class TabulatedRatingCurveStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) level: Series[float] = pa.Field(nullable=False) flow_rate: Series[float] = pa.Field(nullable=False) @@ -191,29 +191,29 @@ class TabulatedRatingCurveStaticSchema(_BaseSchema): class TabulatedRatingCurveTimeSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) time: Series[Timestamp] = pa.Field(nullable=False) level: Series[float] = pa.Field(nullable=False) flow_rate: Series[float] = pa.Field(nullable=False) class TerminalStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) class UserDemandStaticSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) active: Series[pa.BOOL] = pa.Field(nullable=True) demand: Series[float] = pa.Field(nullable=False) return_factor: Series[float] = pa.Field(nullable=False) min_level: Series[float] = pa.Field(nullable=False) - priority: Series[int] = pa.Field(nullable=False, default=0) + priority: Series[Int32] = pa.Field(nullable=False, default=0) class UserDemandTimeSchema(_BaseSchema): - node_id: Series[int] = pa.Field(nullable=False, default=0) + node_id: Series[Int32] = pa.Field(nullable=False, default=0) time: Series[Timestamp] = pa.Field(nullable=False) demand: Series[float] = pa.Field(nullable=False) return_factor: Series[float] = pa.Field(nullable=False) min_level: Series[float] = pa.Field(nullable=False) - priority: Series[int] = pa.Field(nullable=False, default=0) + priority: Series[Int32] = pa.Field(nullable=False, default=0) diff --git a/python/ribasim/tests/test_io.py b/python/ribasim/tests/test_io.py index 1a86f1b10..e0b316106 100644 --- a/python/ribasim/tests/test_io.py +++ b/python/ribasim/tests/test_io.py @@ -1,5 +1,6 @@ from datetime import datetime +import numpy as np import pytest import ribasim import tomli @@ -57,7 +58,8 @@ def test_basic_transient(basic_transient, tmp_path): __assert_equal(model_orig.edge.df, model_loaded.edge.df) time = model_loaded.basin.time - assert model_orig.basin.time.df.time[0] == time.df.time[0] + assert model_orig.basin.time.df.time.iloc[0] == time.df.time.iloc[0] + assert time.df.node_id.dtype == np.int32 __assert_equal(model_orig.basin.time.df, time.df) assert time.df.shape == (1468, 7) diff --git a/python/ribasim/tests/test_model.py b/python/ribasim/tests/test_model.py index d5f3b4207..3c4ded6bb 100644 --- a/python/ribasim/tests/test_model.py +++ b/python/ribasim/tests/test_model.py @@ -181,6 +181,8 @@ def test_node_table(basic): node = model.node_table() df = node.df assert df.geometry.is_unique + assert df.node_id.dtype == np.int32 + assert df.subnetwork_id.dtype == pd.Int32Dtype() assert df.node_type.iloc[0] == "Basin" assert df.node_type.iloc[-1] == "Terminal" diff --git a/python/ribasim_testmodels/ribasim_testmodels/backwater.py b/python/ribasim_testmodels/ribasim_testmodels/backwater.py index 3d60f5f08..a01d563e0 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/backwater.py +++ b/python/ribasim_testmodels/ribasim_testmodels/backwater.py @@ -18,7 +18,7 @@ def backwater_model(): node_type[0] = "FlowBoundary" node_type[-1] = "LevelBoundary" - ids = np.arange(1, node_type.size + 1, dtype=int) + ids = np.arange(1, node_type.size + 1, dtype=np.int32) model = ribasim.Model( starttime="2020-01-01", diff --git a/utils/gen_python.jl b/utils/gen_python.jl index 52b689716..2fd5db115 100644 --- a/utils/gen_python.jl +++ b/utils/gen_python.jl @@ -6,7 +6,7 @@ using OteraEngine using Ribasim pythontype(::Type{<:AbstractString}) = "Series[str]" -pythontype(::Type{<:Integer}) = "Series[int]" +pythontype(::Type{<:Integer}) = "Series[Int32]" pythontype(::Type{<:AbstractFloat}) = "Series[float]" pythontype(::Type{<:Number}) = "Series[float]" pythontype(::Type{<:Bool}) = "Series[pa.BOOL]" # pa.BOOL is a nullable boolean type, bool is not nullable diff --git a/utils/templates/schemas.py.jinja b/utils/templates/schemas.py.jinja index db2a8df50..1ff1a6a23 100644 --- a/utils/templates/schemas.py.jinja +++ b/utils/templates/schemas.py.jinja @@ -1,7 +1,7 @@ # Automatically generated file. Do not modify. import pandera as pa -from pandera.dtypes import Timestamp +from pandera.dtypes import Int32, Timestamp from pandera.typing import Series @@ -14,7 +14,7 @@ class _BaseSchema(pa.DataFrameModel): {% for m in models %} class {{m[:name]}}Schema(_BaseSchema): {% for f in m[:fields] %} - {% if (f[2] == "Series[int]") %} + {% if (f[2] == "Series[Int32]") %} {{ f[1] }}: {{ f[2] }} = pa.Field(nullable={{ f[3] }}, default=0) {% else %} {{ f[1] }}: {{ f[2] }} = pa.Field(nullable={{ f[3] }}) From 5b25cb01e4cc8c8c3419cae126f47e19c14c6c05 Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Tue, 26 Mar 2024 11:47:39 +0100 Subject: [PATCH 010/158] Minimal pixi default environment (#1322) Only add dependencies to the default environment that are necessary to test Ribasim Python or Ribasim API. This should make it easier to keep track of which dependencies are necessary for what, and also reduce solve times. --- .github/workflows/core_testmodels.yml | 2 +- .github/workflows/core_tests.yml | 2 +- .github/workflows/docs.yml | 2 +- .github/workflows/python_codegen.yml | 2 +- .github/workflows/python_lint.yml | 2 +- .github/workflows/python_tests.yml | 2 +- .github/workflows/qgis.yml | 2 +- .../buildTypes/Ribasim_GenerateTestmodels.xml | 3 +- .../Ribasim_Linux_BuildLibribasim.xml | 3 +- .../Ribasim_Linux_BuildRibasimCli.xml | 3 +- .../Ribasim_Linux_TestRibasimApi.xml | 3 +- .../Ribasim_Linux_TestRibasimCli.xml | 3 +- .../Ribasim_Windows_BuildLibribasim.xml | 3 +- .../Ribasim_Windows_BuildRibasimCli.xml | 3 +- .../Ribasim_Windows_TestRibasimApi.xml | 3 +- .../Ribasim_Windows_TestRibasimCli.xml | 3 +- docs/contribute/index.qmd | 2 +- docs/contribute/qgis.qmd | 4 +- open-vscode.bat | 2 +- pixi.lock | 8426 ++++------------- pixi.toml | 76 +- 21 files changed, 1821 insertions(+), 6730 deletions(-) diff --git a/.github/workflows/core_testmodels.yml b/.github/workflows/core_testmodels.yml index 993a9dc4e..8833f6fe7 100644 --- a/.github/workflows/core_testmodels.yml +++ b/.github/workflows/core_testmodels.yml @@ -37,7 +37,7 @@ jobs: with: pixi-version: "latest" - name: Prepare pixi - run: pixi run install-ci + run: pixi run --environment=dev install-ci - name: Run testmodels with Ribasim Core run: | pixi run ribasim-core-testmodels diff --git a/.github/workflows/core_tests.yml b/.github/workflows/core_tests.yml index 0a765a530..d85f5ab2e 100644 --- a/.github/workflows/core_tests.yml +++ b/.github/workflows/core_tests.yml @@ -37,7 +37,7 @@ jobs: with: pixi-version: "latest" - name: Prepare pixi - run: pixi run install-ci + run: pixi run --environment=dev install-ci - name: Test Ribasim Core run: | pixi run test-ribasim-core-cov diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 3dbb49563..c0a59462e 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -28,7 +28,7 @@ jobs: with: pixi-version: "latest" - name: Prepare pixi - run: pixi run install-ci + run: pixi run --environment=dev install-ci - name: Check Quarto installation and all engines run: pixi run quarto-check diff --git a/.github/workflows/python_codegen.yml b/.github/workflows/python_codegen.yml index 3d6cac018..6f027ca04 100644 --- a/.github/workflows/python_codegen.yml +++ b/.github/workflows/python_codegen.yml @@ -20,7 +20,7 @@ jobs: with: pixi-version: "latest" - name: Prepare pixi - run: pixi run install-ci + run: pixi run --environment=dev install-ci - name: Test if codegen runs without errors run: pixi run codegen - name: Ensure that no code has been generated diff --git a/.github/workflows/python_lint.yml b/.github/workflows/python_lint.yml index 15bcb778e..3c4e1e57d 100644 --- a/.github/workflows/python_lint.yml +++ b/.github/workflows/python_lint.yml @@ -20,7 +20,7 @@ jobs: with: pixi-version: "latest" - name: Prepare pixi - run: pixi run install-ci + run: pixi run --environment=dev install-ci - name: Run mypy on python/ribasim run: | pixi run mypy-ribasim-python diff --git a/.github/workflows/python_tests.yml b/.github/workflows/python_tests.yml index 46743116f..9770ccc46 100644 --- a/.github/workflows/python_tests.yml +++ b/.github/workflows/python_tests.yml @@ -30,7 +30,7 @@ jobs: with: pixi-version: "latest" - name: Prepare pixi - run: pixi run --environment ${{ matrix.pixi-environment }} install-ci + run: pixi run --environment ${{ matrix.pixi-environment }} install-python - name: Test Ribasim Python run: pixi run --environment ${{ matrix.pixi-environment }} test-ribasim-python-cov - name: Upload coverage to Codecov diff --git a/.github/workflows/qgis.yml b/.github/workflows/qgis.yml index e8f46b333..6bc4d97fb 100644 --- a/.github/workflows/qgis.yml +++ b/.github/workflows/qgis.yml @@ -27,7 +27,7 @@ jobs: pixi-version: "latest" - name: Prepare pixi run: | - pixi run install-ci + pixi run --environment=dev install-ci - name: Run tests run: pixi run test-ribasim-qgis-cov - name: Upload coverage to Codecov diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml b/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml index f385960e6..c2945c1aa 100644 --- a/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml +++ b/.teamcity/Ribasim/buildTypes/Ribasim_GenerateTestmodels.xml @@ -19,7 +19,7 @@ source /usr/share/Modules/init/bash module load pixi pixi --version -pixi run install-ci]]> +pixi run --environment=dev install-ci]]> @@ -56,4 +56,3 @@ pixi run generate-testmodels]]> - diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml index 6b59a4f78..411c2ddcf 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml @@ -19,7 +19,7 @@ source /usr/share/Modules/init/bash module load pixi pixi --version -pixi run install-ci]]> +pixi run --environment=dev install-ci]]> @@ -63,4 +63,3 @@ pixi run build-libribasim]]> - diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml index cd465d479..dc2bffb65 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml @@ -18,7 +18,7 @@ source /usr/share/Modules/init/bash module load pixi pixi --version -pixi run install-ci]]> +pixi run --environment=dev install-ci]]> @@ -70,4 +70,3 @@ pixi run build-ribasim-cli]]> - diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml index dd059e9da..7174a847a 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml @@ -19,7 +19,7 @@ source /usr/share/Modules/init/bash module load pixi pixi --version -pixi run install-ci]]> +pixi run --environment=dev install-ci]]> @@ -108,4 +108,3 @@ pixi run test-ribasim-api]]> - diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml index 8859f967b..8f64b9a8c 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml @@ -19,7 +19,7 @@ source /usr/share/Modules/init/bash module load pixi pixi --version -pixi run install-ci]]> +pixi run --environment=dev install-ci]]> @@ -108,4 +108,3 @@ pixi run test-ribasim-cli]]> - diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml index 142e850f2..4983b1a20 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml @@ -14,7 +14,7 @@ +pixi run --environment=dev install-ci]]> @@ -52,4 +52,3 @@ pixi run build-libribasim]]> - diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml index f1807c28d..f9c3f4f6a 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml @@ -12,7 +12,7 @@ - + @@ -58,4 +58,3 @@ pixi run build-ribasim-cli]]> - diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml index 0d444dd2f..5ed6dca71 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml @@ -13,7 +13,7 @@ - + @@ -97,4 +97,3 @@ - diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml index 0038e1143..7edcc1961 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml @@ -13,7 +13,7 @@ - + @@ -97,4 +97,3 @@ - diff --git a/docs/contribute/index.qmd b/docs/contribute/index.qmd index 2f787dee9..c35736711 100644 --- a/docs/contribute/index.qmd +++ b/docs/contribute/index.qmd @@ -35,7 +35,7 @@ First, set up pixi as described on their getting started [page](https://prefix.d Then set up the environment by running the following commands: ```sh -pixi run install +pixi run --environment=dev install ``` This will automatically install all required packages for development. diff --git a/docs/contribute/qgis.qmd b/docs/contribute/qgis.qmd index 062214d42..afaae6eef 100644 --- a/docs/contribute/qgis.qmd +++ b/docs/contribute/qgis.qmd @@ -5,7 +5,7 @@ title: "QGIS plugin development" # Set up the developer environment After you have installed the environment as described [here](index.qmd) you must still activate the QGIS plugins. -The simplest way to do this is by running `pixi run install-qgis-plugins`. +The simplest way to do this is by running `pixi run --environment=dev install-qgis-plugins`. It grabs the latest version of the iMOD QGIS plugin and it makes a symlink to the ribasim_qgis folder so that QGIS can find it. It also installs plugins that make it possible to reload and debug your plugin while QGIS is open. @@ -36,7 +36,7 @@ Then simply call `pixi run test-ribasim-qgis`. # Debugging -After installing the plugins via `pixi run install-qgis-plugins`. +After installing the plugins via `pixi run --environment=dev install-qgis-plugins`. Extra debugging tools are also installed in QGIS that is installed within your pixi environment. After you have started `pixi run qgis`, you can make alterations to the Python code and use the [Plugin Reloader](https://github.com/borysiasty/plugin_reloader) to reload the plugin without restarting QGIS. diff --git a/open-vscode.bat b/open-vscode.bat index 078d226d0..ae86837bf 100644 --- a/open-vscode.bat +++ b/open-vscode.bat @@ -1 +1 @@ -pixi run code . | exit +pixi run --environment=dev code . | exit diff --git a/pixi.lock b/pixi.lock index 782036e67..48ee66a1f 100644 --- a/pixi.lock +++ b/pixi.lock @@ -9,13 +9,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py312h98912ed_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.16-haed3651_8.conda @@ -34,11 +27,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -46,17 +35,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ceres-solver-2.2.0-h30ec75d_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py312hf06ca03_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py312hc7c0aa3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda @@ -64,40 +47,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py312h98912ed_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py312h8572e83_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py312h241aef2_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/curl-8.6.0-hca28451_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/dart-sass-1.58.3-ha770c72_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py312h30efb56_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-1.37.2-h335b0a9_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-dom-0.1.35-hd9586b0_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py312h7900ff3_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/draco-1.5.7-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/eigen-3.4.0-h00ab1b0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/esbuild-0.19.2-ha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/exiv2-0.28.2-h3cdc00d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda @@ -109,11 +72,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda @@ -121,67 +82,30 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6b2125f_15.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/gh-2.45.0-ha8f183a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gsl-2.7-he838d99_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyhd33586a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jeepney-0.8.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py312h7900ff3_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.13.0-he8a937b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py312h7900ff3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/laz-perf-3.4.0-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 @@ -217,7 +141,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-h0be55b3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda @@ -226,7 +149,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.48-h71f35ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.1-h15f2491_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.9.3-default_h554bfaf_1009.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda @@ -247,9 +169,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsecret-0.18.8-h329b89f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.18-h36c2ea0_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h7bd4643_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.2-h2797004_0.conda @@ -261,211 +181,119 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.3.2-h658648e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.39-h76b75d6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py312h37b5203_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py312h03f37cb_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py312he5832f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/metis-5.1.0-h59595ed_1007.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h9458935_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.4-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py312h8572e83_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.9.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py312h4b3b743_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/nitro-2.7.dev8-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py312hacefee8_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py312hfb8ada1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pandoc-3.1.11.1-ha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.6.3-h312035a_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py312hf3581a9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py312h08590aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py312h176e3d2_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py312h4b3b743_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py312h66d9856_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py312h38f1c37_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py312h949fe66_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py312hc23280e_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.2-hab00c5b_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py312h886d080_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qca-2.3.8-h4a6f7a0_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py312h05c534b_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h4bd325d_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/qjson-0.9.0-h0c700ba_1009.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py312hc23280e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qtkeychain-0.14.2-hbc31b07_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qtwebkit-5.212-h60108c6_16.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/quarto-1.4.550-ha770c72_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qwt-6.2.0-h1a478b3_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py312h4b3b743_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py312h9118e91_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py312h394d371_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py312heda63a1_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py312h7900ff3_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh41d4057_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py312h9e6bd2c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py312h30efb56_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.1.10-h9fff704_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.2-h2c6b66d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/suitesparse-5.10.1-h5a4f163_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.11.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh0d859eb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py312h8572e83_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py312h7900ff3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda @@ -493,21 +321,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda osx-64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py312h104f124_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.16-h9d28af5_8.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.10-hf9de6f9_2.conda @@ -525,11 +344,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -537,17 +352,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ceres-solver-2.2.0-haa0d064_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py312h38bf5a0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py312h3f2338b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda @@ -555,38 +364,19 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py312h104f124_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py312hbf0bb39_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/curl-8.6.0-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/dart-sass-1.58.3-h694c41f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py312hede676d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-1.37.2-h51b076b_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-dom-0.1.35-h08cba0f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py312hb401068_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/draco-1.5.7-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/eigen-3.4.0-h1c7c39f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/esbuild-0.19.2-h694c41f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/exiv2-0.28.2-h239cba9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda @@ -598,11 +388,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda @@ -610,63 +398,22 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h509af15_15.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/gettext-0.21.1-h8a4c099_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/gh-2.45.0-h990441c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gmp-6.3.0-h73e2aa4_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gsl-2.7-h93259b0_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py312hb401068_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.13.0-hf4330d5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py312hb401068_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py312hb401068_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/khronos-opencl-icd-loader-2023.04.17-hb7f2c08_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/laz-perf-3.4.0-h1c7c39f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda @@ -685,8 +432,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-15.0.7-default_h6b1ee41_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-15.0.7-default_h89cd682_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda @@ -697,88 +442,57 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-he462391_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.9.3-default_h24e0189_1009.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-21_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm15-15.0.7-hbedff68_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libogg-1.3.4-h35c211d_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libopus-1.3.1-hc929b4f_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libsodium-1.0.18-hbcb3906_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-hebe6af1_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.2-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtasn1-4.19.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libvorbis-1.3.7-h046ec9c_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-1.3.2-h44782d1_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libxslt-1.1.39-h03b04e6_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py312h799ce31_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-haf1e3a3_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py312hb401068_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py312h1fe5000_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/metis-5.1.0-he965462_1007.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mpfr-4.2.1-h0c69b56_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py312hbf0bb39_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.9.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.0.33-h1d20c9b_6.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.0.33-hed35180_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py312h6e28e45_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/nitro-2.7.dev8-he965462_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py312h04e34b5_1.conda @@ -787,151 +501,75 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py312haf8ecfc_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pandoc-3.1.11.1-h694c41f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.6.3-hd2646b2_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py312h0c70c2f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py312hca9e88b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py312hc4c33ac_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py312h1b0e595_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py312h74abf1d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py312h74abf1d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py312h3aaa50d_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h14d93e9_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py312hd74d816_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py312he36337a_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py312h5ae8335_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.2-h9f0c242_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py312hc789acb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qca-2.3.8-h3036dd7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py312h3bc2ef5_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qhull-2020.2-h940c156_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/qjson-0.9.0-hed3eaa1_1009.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py312h12cbc42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h4385fff_19.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qtkeychain-0.14.2-had6348c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qtwebkit-5.212-h3b777d0_16.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/quarto-1.4.550-h694c41f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qwt-6.2.0-hed3eaa1_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py312h1b0e595_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py312h1bc86af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py312h7167a34_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py312h8adb940_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py312h8fb43f9_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py312h444b7ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.1.10-h225ccf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.2-h7461747_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/suitesparse-5.10.1-h4bf45ed_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.11.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py312h49ebfd2_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py312hc2c2f20_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda @@ -943,21 +581,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/zeromq-4.3.5-h93d8f39_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py312h02f2b3b_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.16-h0d2f7a6_8.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.10-h677d54c_2.conda @@ -975,11 +604,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -987,17 +612,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ceres-solver-2.2.0-h036b7f2_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py312h8e38eb3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py312hf635c46_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda @@ -1005,38 +624,19 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py312h02f2b3b_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py312h76e736e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.6.0-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/dart-sass-1.58.3-hce30654_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py312h20a0b95_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-1.37.2-hce30654_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-dom-0.1.35-hb9e0d3b_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py312h81bd7bf_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/draco-1.5.7-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/eigen-3.4.0-h1995070_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/esbuild-0.19.2-hce30654_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/exiv2-0.28.2-h193c0af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda @@ -1048,11 +648,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda @@ -1060,63 +658,22 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h7bcba05_15.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-0.21.1-h0186832_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gh-2.45.0-h75b854d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-hebf3989_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gsl-2.7-h6e638da_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py312h81bd7bf_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.13.0-h67a62a2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py312h81bd7bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py312h81bd7bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/khronos-opencl-icd-loader-2023.04.17-h1a8c8d9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py312h389731b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/laz-perf-3.4.0-h1995070_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda @@ -1135,8 +692,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-15.0.7-default_hd209bcb_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-15.0.7-default_ha49e599_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda @@ -1147,88 +702,57 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-hc81809c_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.9.3-default_h4394839_1009.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-21_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm15-15.0.7-h2621b3d_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libogg-1.3.4-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopus-1.3.1-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsodium-1.0.18-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h69abc6b_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.2-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtasn1-4.19.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libvorbis-1.3.7-h9f76cd9_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-1.3.2-hf30222e_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxslt-1.1.39-h223e5b9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py312h9bf3b9e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h642e427_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py312h1f38498_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py312ha6faf65_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/metis-5.1.0-h13dd4ca_1007.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-h9546428_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py312h76e736e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.9.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.0.33-hf9e6398_6.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.0.33-he3dca8b_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py312h5280bc4_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nitro-2.7.dev8-h13dd4ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda @@ -1237,151 +761,75 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandoc-3.1.11.1-hce30654_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.6.3-h3c564ca_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py312hac22aec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py312h84485f8_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py312h1251918_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py312h9d22092_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py312h9d22092_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py312hfe67d44_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h4d912e0_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py312h550cae4_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py312h9f69965_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py312h14105d7_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py312h02f2b3b_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py312h1edf716_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qca-2.3.8-hbd3fef1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py312he6ce98a_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qhull-2020.2-hc021e02_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qjson-0.9.0-haa19703_1009.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py312h14105d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h6bf1bb6_19.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtkeychain-0.14.2-h50bd4b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtwebkit-5.212-ha51050e_16.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/quarto-1.4.550-hce30654_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qwt-6.2.0-haa19703_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py312h77200ec_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py312h22f7183_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py312h1ae9fbf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py312hd4306f4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py312h9d7df2b_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py312h04e4829_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py312h650e478_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.1.10-h17c5cce_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.2-hf2abe2d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/suitesparse-5.10.1-h79486c6_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.11.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py312h389731b_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda @@ -1393,20 +841,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zeromq-4.3.5-hebf3989_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py312he70551f_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.16-h7613915_8.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.10-hf6fcf4e_2.conda @@ -1424,13 +864,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/blas-2.121-openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -1438,17 +872,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ceres-solver-2.2.0-h459d6aa_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py312ha90f08f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda @@ -1456,38 +884,19 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py312he70551f_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py312h0d7def4_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/curl-8.6.0-hd5e4a3a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/dart-sass-1.58.3-h57928b3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py312h53d5487_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/deno-1.37.2-hc8b987e_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/deno-dom-0.1.35-h8b8d39b_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py312h2e8e312_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/draco-1.5.7-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/eigen-3.4.0-h91493d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/esbuild-0.19.2-h57928b3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/exiv2-0.28.2-hadc2d18_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda @@ -1499,73 +908,32 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/gflags-2.2.2-ha925a31_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/gh-2.45.0-hd02998f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glog-0.7.0-h9cd36e5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gsl-2.7-hdfb1a43_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.0.0-h57928b3_49841.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyha63f2e9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh7428d3b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py312h2e8e312_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.13.0-h975169c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/khronos-opencl-icd-loader-2023.04.17-h64bf75a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/laz-perf-3.4.0-h91493d7_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda @@ -1594,17 +962,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-he430b0a_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.9.3-default_haede6df_1009.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.9.0-21_win64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda @@ -1614,7 +979,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libsodium-1.0.18-h8d14728_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf2f0abc_4.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda @@ -1623,17 +987,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-1.3.2-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.39-h3df6e99_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py312h7894644_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py312hd086842_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py312h594ca44_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-he774522_1000.tar.bz2 @@ -1643,192 +1004,102 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py312h26ecaf7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49658.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py312h0d7def4_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/mypy-1.9.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py312h426fad5_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/nitro-2.7.dev8-h1537add_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py312h115d327_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.26-pthreads_h3721920_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py312h2ab9e98_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pandoc-3.1.11.1-h57928b3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pdal-2.6.3-h572f625_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py312he768995_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py312hf50bb3c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py312h85e32bb_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py312hfccd98a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py312he3b4e22_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py312hc725b1e_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py312he09f080_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py312hca0710b_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.2-h2628c8c_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py312h53d5487_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py312h2e8e312_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py312h53d5487_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py312h1ac6f91_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qca-2.3.8-h2624d1c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py312h566b452_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-h70d2c02_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/qjson-0.9.0-h04a78d6_1009.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py312hca0710b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qtkeychain-0.14.2-h04a78d6_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qtwebkit-5.212-h4d8ddc9_16.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/quarto-1.4.550-h57928b3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qwt-6.2.0-h07be427_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py312hfccd98a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py312h60fbdae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py312hcacafb1_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py312h8753938_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh08f2357_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py312h7d70906_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py312h53d5487_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.1.10-hfb803bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.2-hcfcfb64_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/suitesparse-5.4.0-h5d0cbe0_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.11.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh5737063_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py312h0d7def4_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/winpty-0.4.3-4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda @@ -1839,12 +1110,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-h63175ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda - py310: + dev: channels: - url: https://conda.anaconda.org/conda-forge/ packages: @@ -1855,7 +1125,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py310h2372a71_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py312h98912ed_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 @@ -1881,7 +1151,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py310hff52083_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda @@ -1889,7 +1159,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py310hc6cd4ac_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda @@ -1899,38 +1169,38 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ceres-solver-2.2.0-h30ec75d_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py310h2fee648_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py312hf06ca03_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py310h1f7b6fc_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py312hc7c0aa3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py310h2372a71_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py312h98912ed_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py310hd41b1e2_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py310h2372a71_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py310h75e40e8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py312h8572e83_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py312h241aef2_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/curl-8.6.0-hca28451_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py310h2372a71_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dart-sass-1.58.3-ha770c72_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py310hc6cd4ac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py312h30efb56_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-1.37.2-h335b0a9_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-dom-0.1.35-hd9586b0_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py310hff52083_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py312h7900ff3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/draco-1.5.7-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/eigen-3.4.0-h00ab1b0_0.conda @@ -1942,7 +1212,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/exiv2-0.28.2-h3cdc00d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py310h0a1e91f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -1952,13 +1222,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py310h2372a71_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py310he073c5f_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda @@ -2005,14 +1275,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py310hff52083_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py312h7900ff3_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.13.0-he8a937b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py310hff52083_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda @@ -2020,9 +1290,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py310hff52083_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py310hd41b1e2_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/laz-perf-3.4.0-h00ab1b0_0.conda @@ -2114,17 +1384,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.39-h76b75d6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py310h1b8f574_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py310hcfd0673_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py310h350c4a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py312h37b5203_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py312h03f37cb_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py310h2372a71_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py310hff52083_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py310h62c0568_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py312he5832f3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/metis-5.1.0-h59595ed_1007.conda @@ -2134,10 +1404,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h9458935_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.4-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py310hd41b1e2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py312h8572e83_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.9.0-py310h2372a71_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.9.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda @@ -2146,18 +1416,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py310hba70d50_100.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py310hcb5633a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py312h4b3b743_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nitro-2.7.dev8-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py310h7dc5dd1_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py312hacefee8_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py310hb13e2d6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda @@ -2165,7 +1435,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py310hcc13569_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py312hfb8ada1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda @@ -2179,7 +1449,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py310h01dd4db_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py312hf3581a9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda @@ -2197,44 +1467,44 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py310h2372a71_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py310h275853b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py312h08590aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py310hf9e7431_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py312h176e3d2_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py310hcb5633a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py312h4b3b743_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py310h0a1e91f_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py312h66d9856_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py310hd5c30f3_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py310h04931ad_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py312h38f1c37_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py312h949fe66_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py310hc6cd4ac_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py310h37eb29e_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py312hc23280e_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.13-hd12c33a_1_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.2-hab00c5b_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.10-4_cp310.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py310h2372a71_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py310h795f18f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py312h886d080_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qca-2.3.8-h4a6f7a0_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py310h5ca54a3_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py312h05c534b_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h4bd325d_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/qjson-0.9.0-h0c700ba_1009.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py310h37eb29e_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py312hc23280e_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qtkeychain-0.14.2-hbc31b07_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qtwebkit-5.212-h60108c6_16.conda @@ -2252,17 +1522,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py310hcb5633a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py310hbdcdc62_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py310h3d77a66_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py312h4b3b743_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py312h9118e91_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py310h1fdf081_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py310hb13e2d6_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py310hff52083_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py312h394d371_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py312heda63a1_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py312h7900ff3_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh41d4057_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py310hc3e127f_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py310hc6cd4ac_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py312h9e6bd2c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py312h30efb56_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.1.10-h9fff704_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda @@ -2286,7 +1556,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py310h2372a71_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda @@ -2300,19 +1570,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py310hd41b1e2_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-15.1.0-py310h2372a71_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py312h8572e83_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py310hff52083_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py310h2372a71_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda @@ -2348,7 +1617,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py310h6729b98_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py312h104f124_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 @@ -2373,7 +1642,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py310h2ec42d9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda @@ -2381,7 +1650,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py310h9e9d8ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda @@ -2391,36 +1660,36 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ceres-solver-2.2.0-haa0d064_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py310hdca579f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py312h38bf5a0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py310h91862f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py312h3f2338b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py310h6729b98_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py312h104f124_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py310ha697434_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py310hb372a2b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py312hbf0bb39_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/curl-8.6.0-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py310hb372a2b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/dart-sass-1.58.3-h694c41f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py310h5daac23_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py312hede676d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-1.37.2-h51b076b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-dom-0.1.35-h08cba0f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py310h2ec42d9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py312hb401068_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/draco-1.5.7-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/eigen-3.4.0-h1c7c39f_0.conda @@ -2432,7 +1701,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/exiv2-0.28.2-h239cba9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py310haadd054_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -2442,13 +1711,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py310hb372a2b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py310h66a83bd_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda @@ -2492,14 +1761,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py310h2ec42d9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py312hb401068_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.13.0-hf4330d5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py310h2ec42d9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py312hb401068_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda @@ -2507,9 +1776,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py310h2ec42d9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py312hb401068_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/khronos-opencl-icd-loader-2023.04.17-hb7f2c08_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py310h88cfcbd_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/laz-perf-3.4.0-h1c7c39f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda @@ -2586,17 +1855,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py310h7d48a1f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py310h843f749_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py310hf99a7a4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py312h799ce31_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-haf1e3a3_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py310hb372a2b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py310h2ec42d9_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py310hec49e92_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py312hb401068_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py312h1fe5000_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/metis-5.1.0-he965462_1007.conda @@ -2605,10 +1874,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/mpfr-4.2.1-h0c69b56_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py310ha697434_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py312hbf0bb39_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.9.0-py310hb372a2b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.9.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.0.33-h1d20c9b_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.0.33-hed35180_6.conda @@ -2617,25 +1886,25 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py310h30a4ba5_100.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py310h0e083fb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py312h6e28e45_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nitro-2.7.dev8-he965462_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py310h1d5af72_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py312h04e34b5_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py310h4bfa8fc_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py310hdba192b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py312haf8ecfc_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda @@ -2649,7 +1918,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py310he65384d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py312h0c70c2f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda @@ -2667,45 +1936,45 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py310hb372a2b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py310h59c96c0_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py312hca9e88b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py310hce9b33c_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py312hc4c33ac_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py310h54baaa9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py312h1b0e595_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py310h3674b6a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py310h3674b6a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py310h28a5548_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py312h74abf1d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py312h74abf1d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py312h3aaa50d_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py310hd30efd9_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py310hecc045f_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h14d93e9_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py312hd74d816_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py310h018f80b_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py310he672dd7_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py312he36337a_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py312h5ae8335_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.10.13-h00d2728_1_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.2-h9f0c242_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.10-4_cp310.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py310h6729b98_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py310h6b67f7f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py312hc789acb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qca-2.3.8-h3036dd7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py310h087f9aa_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py312h3bc2ef5_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qhull-2020.2-h940c156_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/qjson-0.9.0-hed3eaa1_1009.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py310hd473f0f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py312h12cbc42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h4385fff_19.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qtkeychain-0.14.2-had6348c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qtwebkit-5.212-h3b777d0_16.conda @@ -2722,15 +1991,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py310h54baaa9_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py310had9ce37_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py310hdac29b7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py310h38ce860_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py310hdfaad59_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py312h1b0e595_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py312h1bc86af_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py312h7167a34_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py312h8adb940_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py310h82bc67a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py310had63691_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py312h8fb43f9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py312h444b7ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.1.10-h225ccf5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda @@ -2754,7 +2023,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py310hb372a2b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda @@ -2767,19 +2036,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py310h88cfcbd_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/unicodedata2-15.1.0-py310h6729b98_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py312h49ebfd2_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py310h8c1346e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py312hc2c2f20_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py310hb372a2b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -2799,7 +2067,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py310h2aa6e3c_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py312h02f2b3b_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 @@ -2824,7 +2092,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py310hbe9552e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda @@ -2832,7 +2100,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py310h1253130_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda @@ -2842,36 +2110,36 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ceres-solver-2.2.0-h036b7f2_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py310hdcd7c05_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py312h8e38eb3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py310h50ce23c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py312hf635c46_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py310h2aa6e3c_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py312h02f2b3b_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py310hd137fd4_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py312h76e736e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.6.0-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/dart-sass-1.58.3-hce30654_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py310h692a8b6_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py312h20a0b95_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-1.37.2-hce30654_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-dom-0.1.35-hb9e0d3b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py310hbe9552e_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py312h81bd7bf_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/draco-1.5.7-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/eigen-3.4.0-h1995070_0.conda @@ -2883,7 +2151,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/exiv2-0.28.2-h193c0af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py310ha8a040d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -2893,13 +2161,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py310h4e7a73e_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda @@ -2943,14 +2211,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py310hbe9552e_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py312h81bd7bf_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.13.0-h67a62a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py310hbe9552e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py312h81bd7bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda @@ -2958,9 +2226,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py310hbe9552e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py312h81bd7bf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/khronos-opencl-icd-loader-2023.04.17-h1a8c8d9_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py310h38f39d4_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py312h389731b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/laz-perf-3.4.0-h1995070_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda @@ -3037,17 +2305,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py310hf7687f1_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py310hd9ecdb4_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py310haecba8d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py312h9bf3b9e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h642e427_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py310hd125d64_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py310hb6292c7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py310h2439c42_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py312h1f38498_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py312ha6faf65_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/metis-5.1.0-h13dd4ca_1007.conda @@ -3056,10 +2324,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-h9546428_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py310hd137fd4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py312h76e736e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.9.0-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.9.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.0.33-hf9e6398_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.0.33-he3dca8b_6.conda @@ -3068,25 +2336,25 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py310h3aafd6c_100.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py310hd442715_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py312h5280bc4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nitro-2.7.dev8-h13dd4ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py310hdf1f89a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py310hd45542a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py310h6e3cc31_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda @@ -3100,7 +2368,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py310hfae7ebd_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py312hac22aec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda @@ -3118,45 +2386,45 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py310hd125d64_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py310h1ce8fe0_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py312h84485f8_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py310h5e314f5_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py312h1251918_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py310hd442715_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py310hb3aa912_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py310hb3aa912_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py310h2be8462_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py312h9d22092_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py312h9d22092_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py312hfe67d44_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py310h486faf3_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py310h2924129_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h4d912e0_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py312h550cae4_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py310h1253130_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py310hcf420b7_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py312h9f69965_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py312h14105d7_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.10.13-h2469fbe_1_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.10-4_cp310.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py310h2aa6e3c_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py310hbb13138_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py312h02f2b3b_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py312h1edf716_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qca-2.3.8-hbd3fef1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py310h9c043aa_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py312he6ce98a_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qhull-2020.2-hc021e02_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qjson-0.9.0-haa19703_1009.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py310hcf420b7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py312h14105d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h6bf1bb6_19.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtkeychain-0.14.2-h50bd4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtwebkit-5.212-ha51050e_16.conda @@ -3173,15 +2441,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py310hf632f72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py310ha3239f5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py310h81561d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py310h7ef31dd_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py310hf4b343e_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py312h77200ec_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py312h22f7183_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py312h1ae9fbf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py312hd4306f4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py312h9d7df2b_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py310hee2b506_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py310hd5a4765_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py312h04e4829_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py312h650e478_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.1.10-h17c5cce_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda @@ -3205,7 +2473,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda @@ -3218,19 +2486,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py310h38f39d4_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/unicodedata2-15.1.0-py310h2aa6e3c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py312h389731b_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -3249,7 +2516,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py310h8d17308_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py312he70551f_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 @@ -3274,7 +2541,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py310h5588dad_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blas-2.121-openblas.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-21_win64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda @@ -3284,7 +2551,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py310h00ffb61_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda @@ -3294,36 +2561,36 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ceres-solver-2.2.0-h459d6aa_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py310h3e78b6c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py312ha90f08f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py310h8d17308_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py312he70551f_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py310h232114e_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py312h0d7def4_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/curl-8.6.0-hd5e4a3a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/dart-sass-1.58.3-h57928b3_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py310h00ffb61_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py312h53d5487_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/deno-1.37.2-hc8b987e_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/deno-dom-0.1.35-h8b8d39b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py310h5588dad_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py312h2e8e312_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/draco-1.5.7-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/eigen-3.4.0-h91493d7_0.conda @@ -3335,7 +2602,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/exiv2-0.28.2-hadc2d18_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py310h618e506_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -3345,13 +2612,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py310h7028bf2_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda @@ -3393,14 +2660,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py310h5588dad_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py312h2e8e312_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.13.0-h975169c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py310h5588dad_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda @@ -3408,9 +2675,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py310h5588dad_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/khronos-opencl-icd-loader-2023.04.17-h64bf75a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py310h232114e_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/laz-perf-3.4.0-h91493d7_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda @@ -3478,10 +2745,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py310hb84602e_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py312h7894644_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py310hba208d0_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py310hbbb2075_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py312hd086842_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py312h594ca44_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-he774522_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2 @@ -3491,9 +2758,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py310h8d17308_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py310h5588dad_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py310hc9baf74_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py312h2e8e312_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py312h26ecaf7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda @@ -3501,26 +2768,26 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49658.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py310h232114e_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py312h0d7def4_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/mypy-1.9.0-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/mypy-1.9.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py310h6477780_100.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py310h32a15e0_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py312h426fad5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/nitro-2.7.dev8-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py310h9ccaf4f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py312h115d327_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py310hf667824_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.26-pthreads_h3721920_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 @@ -3529,7 +2796,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py310hecd3228_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py312h2ab9e98_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda @@ -3542,7 +2809,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pdal-2.6.3-h572f625_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py310h1e6a543_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py312he768995_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda @@ -3560,46 +2827,46 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py310h8d17308_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py310h20e1e1d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py312hf50bb3c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py310hd0bb7c2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py312h85e32bb_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py310h87d50f1_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py312hfccd98a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py310h122fb02_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py312he3b4e22_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py310h05d47c7_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py310h1fd54f2_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py312hc725b1e_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py312he09f080_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py310h00ffb61_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py310he49db7d_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py312hca0710b_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.10.13-h4de0772_1_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.2-h2628c8c_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.10-4_cp310.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py310h00ffb61_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py310h5588dad_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py310h00ffb61_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py310h8d17308_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py310h2849c00_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py312h53d5487_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py312h2e8e312_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py312h53d5487_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py312h1ac6f91_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qca-2.3.8-h2624d1c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py310hcafc9b4_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py312h566b452_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-h70d2c02_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/qjson-0.9.0-h04a78d6_1009.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py310he49db7d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py312hca0710b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qtkeychain-0.14.2-h04a78d6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qtwebkit-5.212-h4d8ddc9_16.conda @@ -3615,15 +2882,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py310h87d50f1_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py310h1cbd46b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py310h298983d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py310hfd2573f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py310hf667824_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py312hfccd98a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py312h60fbdae_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py312hcacafb1_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py312h8753938_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh08f2357_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py310hacc03b5_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py310h00ffb61_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py312h7d70906_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py312h53d5487_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.1.10-hfb803bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda @@ -3647,7 +2914,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda @@ -3660,8 +2927,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py310h232114e_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/unicodedata2-15.1.0-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py312h0d7def4_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda @@ -3669,7 +2935,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py310h5588dad_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda @@ -3677,7 +2943,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/winpty-0.4.3-4.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -3692,7 +2958,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda - py311: + py310: channels: - url: https://conda.anaconda.org/conda-forge/ packages: @@ -3701,13 +2967,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py311h459d7ec_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.16-haed3651_8.conda @@ -3726,71 +2985,41 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py311h38be061_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py310hff52083_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py311hb755f60_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py310hc6cd4ac_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ceres-solver-2.2.0-h30ec75d_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py311hb3a22ac_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py311h1f0f07a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py310h1f7b6fc_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py311h459d7ec_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py311h9547e67_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py311h63ff55d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/curl-8.6.0-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py310hd41b1e2_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/dart-sass-1.58.3-ha770c72_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py311hb755f60_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-1.37.2-h335b0a9_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-dom-0.1.35-hd9586b0_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py311h38be061_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/draco-1.5.7-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/eigen-3.4.0-h00ab1b0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/esbuild-0.19.2-ha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/exiv2-0.28.2-h3cdc00d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py311hf8e0aa6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py310h0a1e91f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -3800,80 +3029,41 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py311h8be719e_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py310he073c5f_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6b2125f_15.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/gh-2.45.0-ha8f183a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gsl-2.7-he838d99_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyhd33586a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jeepney-0.8.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py311h38be061_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.13.0-he8a937b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py311h38be061_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py311h38be061_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py311h9547e67_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py310hd41b1e2_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/laz-perf-3.4.0-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 @@ -3909,7 +3099,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-h0be55b3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda @@ -3918,7 +3107,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.48-h71f35ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.1-h15f2491_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.9.3-default_h554bfaf_1009.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda @@ -3939,9 +3127,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsecret-0.18.8-h329b89f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.18-h36c2ea0_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h7bd4643_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.2-h2797004_0.conda @@ -3953,213 +3139,122 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.3.2-h658648e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.39-h76b75d6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py311ha6695c7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py310h1b8f574_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py311h9691dec_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py311h38e4bf4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py310h350c4a5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py311h38be061_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py311h54ef318_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/metis-5.1.0-h59595ed_1007.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py310h2372a71_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py310hff52083_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py310h62c0568_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h9458935_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.4-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py311h9547e67_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py310hd41b1e2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.9.0-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py311he8ad708_100.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py310hba70d50_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py311h46250e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/nitro-2.7.dev8-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py311h96b013e_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py310h7dc5dd1_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py311h64a7726_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py310hb13e2d6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py311h320fe9a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py310hcc13569_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pandoc-3.1.11.1-ha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.6.3-h312035a_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py311ha6c5da5_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py310h01dd4db_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py311h03dec38_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py311h39c9aba_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py310hf9e7431_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py311h46250e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py311hf8e0aa6_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py310hcb5633a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py310h0a1e91f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py311hca0b8b9_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py311hf0fb5b6_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py311hb755f60_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py311h4c6dc46_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py310hd5c30f3_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py310h04931ad_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py310hc6cd4ac_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.8-hab00c5b_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.13-hd12c33a_1_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-4_cp311.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.10-4_cp310.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py311h459d7ec_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py311h34ded2d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qca-2.3.8-h4a6f7a0_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py311h6b0c79d_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h4bd325d_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/qjson-0.9.0-h0c700ba_1009.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py311h4c6dc46_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py310h2372a71_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qtkeychain-0.14.2-hbc31b07_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qtwebkit-5.212-h60108c6_16.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/quarto-1.4.550-ha770c72_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qwt-6.2.0-h1a478b3_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py311h46250e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py311h3bb2b0f_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py311h7145743_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py310hbdcdc62_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py311hc009520_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py311h64a7726_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py311h38be061_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh41d4057_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py310h1fdf081_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py310hb13e2d6_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py311h2032efe_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py311hb755f60_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py310hc3e127f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py310hc6cd4ac_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.1.10-h9fff704_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.2-h2c6b66d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/suitesparse-5.10.1-h5a4f163_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.11.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh0d859eb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py311h9547e67_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-15.1.0-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py311h38be061_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py311h459d7ec_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda @@ -4185,21 +3280,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda osx-64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py311h2725bcf_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.16-h9d28af5_8.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.10-hf9de6f9_2.conda @@ -4217,69 +3303,40 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py311h6eed73b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py310h2ec42d9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py311hdf8f085_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py310h9e9d8ca_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ceres-solver-2.2.0-haa0d064_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py311hc0b63fd_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py311hc9a392d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py310h91862f5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py311h2725bcf_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py311h7bea37d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/curl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py310ha697434_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/dart-sass-1.58.3-h694c41f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py311hdd0406b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-1.37.2-h51b076b_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-dom-0.1.35-h08cba0f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py311h6eed73b_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/draco-1.5.7-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/eigen-3.4.0-h1c7c39f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/esbuild-0.19.2-h694c41f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/exiv2-0.28.2-h239cba9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py311hd2ff552_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py310haadd054_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -4289,76 +3346,33 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py311haaa0e4f_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py310h66a83bd_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h509af15_15.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/gettext-0.21.1-h8a4c099_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/gh-2.45.0-h990441c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gmp-6.3.0-h73e2aa4_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gsl-2.7-h93259b0_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py311h6eed73b_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.13.0-hf4330d5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py311h6eed73b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py311h6eed73b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/khronos-opencl-icd-loader-2023.04.17-hb7f2c08_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py311h5fe6e05_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py310h88cfcbd_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/laz-perf-3.4.0-h1c7c39f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda @@ -4377,8 +3391,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-15.0.7-default_h6b1ee41_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-15.0.7-default_h89cd682_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda @@ -4389,243 +3401,137 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-he462391_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.9.3-default_h24e0189_1009.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-21_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm15-15.0.7-hbedff68_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libogg-1.3.4-h35c211d_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libopus-1.3.1-hc929b4f_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libsodium-1.0.18-hbcb3906_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-hebe6af1_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.2-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtasn1-4.19.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libvorbis-1.3.7-h046ec9c_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-1.3.2-h44782d1_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libxslt-1.1.39-h03b04e6_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py311hb5c2e0a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py310h7d48a1f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py311h033124e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py311hdfabcfc_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py310hf99a7a4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-haf1e3a3_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py311h6eed73b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py311h6ff1f5f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/metis-5.1.0-he965462_1007.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py310hb372a2b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py310h2ec42d9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py310hec49e92_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mpfr-4.2.1-h0c69b56_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py311h7bea37d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py310ha697434_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.9.0-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.0.33-h1d20c9b_6.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.0.33-hed35180_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py311hd2be13f_100.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py310h30a4ba5_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py311h5e0f0e4_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/nitro-2.7.dev8-he965462_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py311h97119f7_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py310h1d5af72_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py311hc43a94b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py310h4bfa8fc_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py311h1eadf79_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py310hdba192b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pandoc-3.1.11.1-h694c41f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.6.3-hd2646b2_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py311hea5c87a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py310he65384d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py311h187f0af_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py311h9425ff2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py310hce9b33c_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py311hd64b9fd_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py311h9b70068_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py311h9b70068_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py311h809632c_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py310h54baaa9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py310h28a5548_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py311hb91e5a3_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py311h5b1a2bc_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py311h46b81f0_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py311hdffe31b_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py310hd30efd9_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.11.8-h9f0c242_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.10.13-h00d2728_1_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.11-4_cp311.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.10-4_cp310.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py311h2725bcf_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py311h889d6d6_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qca-2.3.8-h3036dd7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py311hf0b2d31_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qhull-2020.2-h940c156_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/qjson-0.9.0-hed3eaa1_1009.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py311hf9676c4_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h4385fff_19.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qtkeychain-0.14.2-had6348c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qtwebkit-5.212-h3b777d0_16.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/quarto-1.4.550-h694c41f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qwt-6.2.0-hed3eaa1_6.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py310h6729b98_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py311hd64b9fd_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py311hbc1f44b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py311hfff7943_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py311he2b4599_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py311h86d0cd9_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py310had9ce37_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py310h38ce860_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py310hdfaad59_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py311h4c12f3d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py311hd39e593_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py310h82bc67a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.1.10-h225ccf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.2-h7461747_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/suitesparse-5.10.1-h4bf45ed_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.11.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py311h5fe6e05_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/unicodedata2-15.1.0-py310h6729b98_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py311he4e59c2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py311he705e18_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -4635,21 +3541,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/zeromq-4.3.5-h93d8f39_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py311heffc1b2_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.16-h0d2f7a6_8.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.10-h677d54c_2.conda @@ -4667,69 +3564,40 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py311h267d04e_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py310hbe9552e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py311ha891d26_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py310h1253130_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ceres-solver-2.2.0-h036b7f2_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py311h4a08483_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py311h9ea6feb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py310h50ce23c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py311heffc1b2_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py311hd03642b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py310hd137fd4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/dart-sass-1.58.3-hce30654_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py311h92babd0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-1.37.2-hce30654_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-dom-0.1.35-hb9e0d3b_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py311h267d04e_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/draco-1.5.7-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/eigen-3.4.0-h1995070_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/esbuild-0.19.2-hce30654_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/exiv2-0.28.2-h193c0af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py311h1c26527_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py310ha8a040d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -4739,76 +3607,33 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.48.1-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py311h43f0207_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py310h4e7a73e_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h7bcba05_15.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-0.21.1-h0186832_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gh-2.45.0-h75b854d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-hebf3989_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gsl-2.7-h6e638da_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py311h267d04e_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.13.0-h67a62a2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py311h267d04e_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py311h267d04e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/khronos-opencl-icd-loader-2023.04.17-h1a8c8d9_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py311he4fd1f5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py310h38f39d4_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/laz-perf-3.4.0-h1995070_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda @@ -4827,8 +3652,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-15.0.7-default_hd209bcb_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-15.0.7-default_ha49e599_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda @@ -4839,243 +3662,137 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-hc81809c_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.9.3-default_h4394839_1009.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-21_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm15-15.0.7-h2621b3d_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libogg-1.3.4-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopus-1.3.1-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsodium-1.0.18-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h69abc6b_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.2-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtasn1-4.19.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libvorbis-1.3.7-h9f76cd9_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-1.3.2-hf30222e_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxslt-1.1.39-h223e5b9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py311hf5d242d_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py310hf7687f1_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py311h85df328_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py311hd44b8e9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py310haecba8d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h642e427_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py311ha1ab1f8_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py311hb58f1d1_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/metis-5.1.0-h13dd4ca_1007.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py310hb6292c7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py310h2439c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-h9546428_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py311hd03642b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py310hd137fd4_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.9.0-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.0.33-hf9e6398_6.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.0.33-he3dca8b_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py311ha6bebe6_100.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py310h3aafd6c_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py311h94f323b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nitro-2.7.dev8-h13dd4ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py311h00351ea_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py310hdf1f89a_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py311h7125741_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py310hd45542a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py311h6e08293_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py310h6e3cc31_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandoc-3.1.11.1-hce30654_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.6.3-h3c564ca_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py311hb9c5795_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py310hfae7ebd_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py311h589e011_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py311hce53c6f_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py310h5e314f5_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py311h94f323b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py311h665608e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py311h665608e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py311h4760b73_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py310hd442715_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py310h2be8462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py311h9a031f7_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py311hc49b008_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py311ha891d26_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py311h14ede98_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py310h486faf3_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.11.8-hdf0ec26_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.10.13-h2469fbe_1_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.11-4_cp311.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.10-4_cp310.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py311heffc1b2_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py311h6727e71_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qca-2.3.8-hbd3fef1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py311h8bda84b_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qhull-2020.2-hc021e02_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qjson-0.9.0-haa19703_1009.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py311h14ede98_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h6bf1bb6_19.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtkeychain-0.14.2-h50bd4b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtwebkit-5.212-ha51050e_16.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/quarto-1.4.550-hce30654_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qwt-6.2.0-haa19703_6.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py310h2aa6e3c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py311ha958965_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py311hd698ff7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py311h8c97afb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py311h696fe38_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py311h4f9446f_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py310ha3239f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py310h7ef31dd_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py310hf4b343e_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py311h0815064_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py311hbaf5611_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py310hee2b506_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.1.10-h17c5cce_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.2-hf2abe2d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/suitesparse-5.10.1-h79486c6_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.11.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py311he4fd1f5_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/unicodedata2-15.1.0-py310h2aa6e3c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py311h05b510d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -5085,20 +3802,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zeromq-4.3.5-hebf3989_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py311ha68e1ae_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.16-h7613915_8.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.10-hf6fcf4e_2.conda @@ -5116,71 +3825,40 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py311h1ea47a8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/blas-2.121-openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py310h5588dad_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py311h12c1d0e_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py310h00ffb61_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ceres-solver-2.2.0-h459d6aa_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py311h59ca53f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py310h3e78b6c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py311ha68e1ae_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py311h005e61a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/curl-8.6.0-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py310h232114e_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/dart-sass-1.58.3-h57928b3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py311h12c1d0e_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/deno-1.37.2-hc8b987e_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/deno-dom-0.1.35-h8b8d39b_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py311h1ea47a8_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/draco-1.5.7-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/eigen-3.4.0-h91493d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/esbuild-0.19.2-h57928b3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/exiv2-0.28.2-hadc2d18_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py311hbcf8545_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py310h618e506_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -5190,74 +3868,33 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py311h21a6730_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py310h7028bf2_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/gflags-2.2.2-ha925a31_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/gh-2.45.0-hd02998f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glog-0.7.0-h9cd36e5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gsl-2.7-hdfb1a43_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.0.0-h57928b3_49841.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyha63f2e9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh7428d3b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py311h1ea47a8_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.13.0-h975169c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py311h1ea47a8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py311h1ea47a8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/khronos-opencl-icd-loader-2023.04.17-h64bf75a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py311h005e61a_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py310h232114e_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/laz-perf-3.4.0-h91493d7_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda @@ -5286,17 +3923,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-he430b0a_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.9.3-default_haede6df_1009.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.9.0-21_win64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda @@ -5306,7 +3940,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libsodium-1.0.18-h8d14728_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf2f0abc_4.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda @@ -5315,18 +3948,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-1.3.2-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.39-h3df6e99_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py311h5bc0dda_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py310hb84602e_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py311h064e5ff_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py311haddf500_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py310hbbb2075_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-he774522_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2 @@ -5335,193 +3965,104 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py311h1ea47a8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py311h6e989c2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py310h5588dad_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py310hc9baf74_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49658.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py311h005e61a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py310h232114e_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/mypy-1.9.0-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py311he019f65_100.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py310h6477780_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py311h633b200_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/nitro-2.7.dev8-h1537add_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py311h2c0921f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py310h9ccaf4f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py311h0b4df5a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.26-pthreads_h3721920_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py310hf667824_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py311hf63dbb6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py310hecd3228_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pandoc-3.1.11.1-h57928b3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pdal-2.6.3-h572f625_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py311h4dd8a23_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py310h1e6a543_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py311h2abc067_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py311h6a6099b_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py310hd0bb7c2_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py311hc37eb10_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py311h759bd4f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py310h87d50f1_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py310h122fb02_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py311h82130bc_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py311h125bc19_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py311h12c1d0e_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py311h5a77453_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py310h05d47c7_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py310h1fd54f2_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py310h00ffb61_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.11.8-h2628c8c_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.10.13-h4de0772_1_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-4_cp311.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.10-4_cp310.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py311h12c1d0e_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py311h1ea47a8_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py311h12c1d0e_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py311ha68e1ae_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py311h9250fbb_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qca-2.3.8-h2624d1c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py311h64324c1_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-h70d2c02_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/qjson-0.9.0-h04a78d6_1009.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py311h5a77453_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py310h8d17308_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qtkeychain-0.14.2-h04a78d6_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qtwebkit-5.212-h4d8ddc9_16.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/quarto-1.4.550-h57928b3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qwt-6.2.0-h07be427_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py311hc37eb10_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py311hcacb13a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py311hc14472d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py311h142b183_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py311h0b4df5a_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh08f2357_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py310h1cbd46b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py310hfd2573f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py310hf667824_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py311h16bee0b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py311h12c1d0e_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py310hacc03b5_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py310h00ffb61_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.1.10-hfb803bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.2-hcfcfb64_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/suitesparse-5.4.0-h5d0cbe0_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.11.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh5737063_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py311h005e61a_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/unicodedata2-15.1.0-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py311h1ea47a8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/winpty-0.4.3-4.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py311ha68e1ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -5531,12 +4072,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-h63175ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda - py312: + py311: channels: - url: https://conda.anaconda.org/conda-forge/ packages: @@ -5545,13 +4085,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py312h98912ed_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.16-haed3651_8.conda @@ -5570,71 +4103,41 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py311h38be061_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py311hb755f60_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ceres-solver-2.2.0-h30ec75d_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py312hf06ca03_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py312hc7c0aa3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py311h1f0f07a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py312h98912ed_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py312h8572e83_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py312h241aef2_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/curl-8.6.0-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py311h9547e67_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/dart-sass-1.58.3-ha770c72_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py312h30efb56_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-1.37.2-h335b0a9_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-dom-0.1.35-hd9586b0_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py312h7900ff3_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/draco-1.5.7-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/eigen-3.4.0-h00ab1b0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/esbuild-0.19.2-ha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/exiv2-0.28.2-h3cdc00d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py311hf8e0aa6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -5644,80 +4147,41 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py311h8be719e_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6b2125f_15.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/gh-2.45.0-ha8f183a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gsl-2.7-he838d99_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyhd33586a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jeepney-0.8.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py312h7900ff3_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.13.0-he8a937b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py312h7900ff3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py311h9547e67_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/laz-perf-3.4.0-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 @@ -5753,7 +4217,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-h0be55b3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda @@ -5762,7 +4225,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.48-h71f35ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.1-h15f2491_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libhwloc-2.9.3-default_h554bfaf_1009.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda @@ -5783,9 +4245,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsecret-0.18.8-h329b89f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.18-h36c2ea0_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h7bd4643_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.2-h2797004_0.conda @@ -5797,213 +4257,121 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-1.3.2-h658648e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.39-h76b75d6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py311ha6695c7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py312h37b5203_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py312h03f37cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py311h38e4bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py312h7900ff3_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py312he5832f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/metis-5.1.0-h59595ed_1007.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py311h459d7ec_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py311h38be061_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py311h54ef318_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mpfr-4.2.1-h9458935_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.4-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py312h8572e83_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py311h9547e67_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.9.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py311he8ad708_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py312h4b3b743_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/nitro-2.7.dev8-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py312hacefee8_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py311h96b013e_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py311h64a7726_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py312hfb8ada1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py311h320fe9a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pandoc-3.1.11.1-ha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.6.3-h312035a_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py312hf3581a9_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py311ha6c5da5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py312h08590aa_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py312h176e3d2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py311h39c9aba_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py312h4b3b743_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py312h66d9856_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py311h46250e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py311hf8e0aa6_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py312h38f1c37_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py312h949fe66_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py312hc23280e_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py311hca0b8b9_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py311hf0fb5b6_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py311hb755f60_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.2-hab00c5b_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.8-hab00c5b_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-4_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py312h886d080_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qca-2.3.8-h4a6f7a0_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py312h05c534b_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h4bd325d_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/qjson-0.9.0-h0c700ba_1009.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py312hc23280e_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py311h459d7ec_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qtkeychain-0.14.2-hbc31b07_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qtwebkit-5.212-h60108c6_16.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/quarto-1.4.550-ha770c72_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qwt-6.2.0-h1a478b3_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py312h4b3b743_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py312h9118e91_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py311h3bb2b0f_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py312h394d371_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py312heda63a1_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py312h7900ff3_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh41d4057_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py311hc009520_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py311h64a7726_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py312h9e6bd2c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py312h30efb56_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py311h2032efe_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py311hb755f60_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.1.10-h9fff704_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.2-h2c6b66d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/suitesparse-5.10.1-h5a4f163_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/tbb-2021.11.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh0d859eb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py312h8572e83_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py312h7900ff3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda @@ -6029,21 +4397,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda osx-64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py312h104f124_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.16-h9d28af5_8.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.10-hf9de6f9_2.conda @@ -6061,69 +4420,40 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py311h6eed73b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py311hdf8f085_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ceres-solver-2.2.0-haa0d064_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py312h38bf5a0_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py312h3f2338b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py311hc9a392d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py312h104f124_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py312hbf0bb39_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/curl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py311h7bea37d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/dart-sass-1.58.3-h694c41f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py312hede676d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-1.37.2-h51b076b_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-dom-0.1.35-h08cba0f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py312hb401068_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/draco-1.5.7-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/eigen-3.4.0-h1c7c39f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/esbuild-0.19.2-h694c41f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/exiv2-0.28.2-h239cba9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py311hd2ff552_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -6133,76 +4463,33 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py311haaa0e4f_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h509af15_15.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/gettext-0.21.1-h8a4c099_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/gh-2.45.0-h990441c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gmp-6.3.0-h73e2aa4_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gsl-2.7-h93259b0_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py312hb401068_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.13.0-hf4330d5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py312hb401068_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py312hb401068_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/khronos-opencl-icd-loader-2023.04.17-hb7f2c08_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py311h5fe6e05_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/laz-perf-3.4.0-h1c7c39f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda @@ -6221,8 +4508,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-15.0.7-default_h6b1ee41_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-15.0.7-default_h89cd682_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda @@ -6233,243 +4518,136 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-he462391_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libhwloc-2.9.3-default_h24e0189_1009.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-21_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm15-15.0.7-hbedff68_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libogg-1.3.4-h35c211d_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libopus-1.3.1-hc929b4f_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libsodium-1.0.18-hbcb3906_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-hebe6af1_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.2-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtasn1-4.19.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libvorbis-1.3.7-h046ec9c_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-1.3.2-h44782d1_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libxslt-1.1.39-h03b04e6_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py311hb5c2e0a_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py312h799ce31_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py311hdfabcfc_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-haf1e3a3_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py312hb401068_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py312h1fe5000_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/metis-5.1.0-he965462_1007.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py311he705e18_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py311h6eed73b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py311h6ff1f5f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mpfr-4.2.1-h0c69b56_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py312hbf0bb39_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py311h7bea37d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.9.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.0.33-h1d20c9b_6.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.0.33-hed35180_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py311hd2be13f_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py312h6e28e45_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/nitro-2.7.dev8-he965462_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py312h04e34b5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py311h97119f7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py311hc43a94b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py312haf8ecfc_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py311h1eadf79_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pandoc-3.1.11.1-h694c41f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.6.3-hd2646b2_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py312h0c70c2f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py311hea5c87a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py312hca9e88b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py312hc4c33ac_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py311h9425ff2_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py312h1b0e595_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py312h74abf1d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py312h74abf1d_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py312h3aaa50d_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py311hd64b9fd_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py311h809632c_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h14d93e9_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py312hd74d816_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py312he36337a_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py312h5ae8335_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py311hb91e5a3_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.2-h9f0c242_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.11.8-h9f0c242_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.11-4_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py312hc789acb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qca-2.3.8-h3036dd7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py312h3bc2ef5_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qhull-2020.2-h940c156_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/qjson-0.9.0-hed3eaa1_1009.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py312h12cbc42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h4385fff_19.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qtkeychain-0.14.2-had6348c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qtwebkit-5.212-h3b777d0_16.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/quarto-1.4.550-h694c41f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qwt-6.2.0-hed3eaa1_6.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py311h2725bcf_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py312h1b0e595_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py312h1bc86af_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py312h7167a34_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py312h8adb940_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py311hbc1f44b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py311he2b4599_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py311h86d0cd9_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py312h8fb43f9_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py312h444b7ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py311h4c12f3d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.1.10-h225ccf5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.2-h7461747_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/suitesparse-5.10.1-h4bf45ed_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/tbb-2021.11.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py312h49ebfd2_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py312hc2c2f20_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -6479,21 +4657,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/zeromq-4.3.5-h93d8f39_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/appnope-0.1.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py312h02f2b3b_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.16-h0d2f7a6_8.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.10-h677d54c_2.conda @@ -6511,69 +4680,40 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py311h267d04e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py311ha891d26_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ceres-solver-2.2.0-h036b7f2_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py312h8e38eb3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py312hf635c46_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py311h9ea6feb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py312h02f2b3b_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py312h76e736e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py311hd03642b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/dart-sass-1.58.3-hce30654_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py312h20a0b95_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-1.37.2-hce30654_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-dom-0.1.35-hb9e0d3b_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py312h81bd7bf_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/draco-1.5.7-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/eigen-3.4.0-h1995070_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/esbuild-0.19.2-hce30654_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/exiv2-0.28.2-h193c0af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py311h1c26527_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -6583,76 +4723,33 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.48.1-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py311h43f0207_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h7bcba05_15.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-0.21.1-h0186832_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gh-2.45.0-h75b854d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-hebf3989_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gsl-2.7-h6e638da_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py312h81bd7bf_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.13.0-h67a62a2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py312h81bd7bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py312h81bd7bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/khronos-opencl-icd-loader-2023.04.17-h1a8c8d9_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py312h389731b_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py311he4fd1f5_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/laz-perf-3.4.0-h1995070_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda @@ -6671,8 +4768,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-15.0.7-default_hd209bcb_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-15.0.7-default_ha49e599_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda @@ -6683,243 +4778,136 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-hc81809c_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libhwloc-2.9.3-default_h4394839_1009.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-21_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm15-15.0.7-h2621b3d_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libogg-1.3.4-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopus-1.3.1-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsodium-1.0.18-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h69abc6b_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.2-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtasn1-4.19.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libvorbis-1.3.7-h9f76cd9_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-1.3.2-hf30222e_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxslt-1.1.39-h223e5b9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py311hf5d242d_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py312h9bf3b9e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py311hd44b8e9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h642e427_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py312h1f38498_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py312ha6faf65_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/metis-5.1.0-h13dd4ca_1007.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py311h05b510d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py311ha1ab1f8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py311hb58f1d1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mpfr-4.2.1-h9546428_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py312h76e736e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py311hd03642b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.9.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.0.33-hf9e6398_6.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.0.33-he3dca8b_6.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py311ha6bebe6_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py312h5280bc4_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nitro-2.7.dev8-h13dd4ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py311h00351ea_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py311h7125741_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py311h6e08293_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandoc-3.1.11.1-hce30654_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.6.3-h3c564ca_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py312hac22aec_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py311hb9c5795_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py312h84485f8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py312h1251918_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py311hce53c6f_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py312h9d22092_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py312h9d22092_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py312hfe67d44_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py311h94f323b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py311h4760b73_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h4d912e0_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py312h550cae4_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py312h9f69965_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py312h14105d7_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py311h9a031f7_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.11.8-hdf0ec26_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.11-4_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py312h02f2b3b_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py312h1edf716_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qca-2.3.8-hbd3fef1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py312he6ce98a_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qhull-2020.2-hc021e02_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qjson-0.9.0-haa19703_1009.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py312h14105d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h6bf1bb6_19.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtkeychain-0.14.2-h50bd4b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtwebkit-5.212-ha51050e_16.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/quarto-1.4.550-hce30654_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qwt-6.2.0-haa19703_6.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py311heffc1b2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py312h77200ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py312h22f7183_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py312h1ae9fbf_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py312hd4306f4_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py312h9d7df2b_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py311hd698ff7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py311h696fe38_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py311h4f9446f_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py312h04e4829_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py312h650e478_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py311h0815064_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.1.10-h17c5cce_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.2-hf2abe2d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/suitesparse-5.10.1-h79486c6_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tbb-2021.11.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py312h389731b_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -6929,20 +4917,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zeromq-4.3.5-hebf3989_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/argon2-cffi-23.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py312he70551f_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/arrow-1.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/astunparse-1.6.3-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/async-lru-2.0.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.16-h7613915_8.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.10-hf6fcf4e_2.conda @@ -6960,71 +4940,40 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/blas-2.121-openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py311h1ea47a8_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py311h12c1d0e_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ceres-solver-2.2.0-h459d6aa_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py312ha90f08f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py311h59ca53f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py312he70551f_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py312h0d7def4_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/curl-8.6.0-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py311h005e61a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/dart-sass-1.58.3-h57928b3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py312h53d5487_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/defusedxml-0.7.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/deno-1.37.2-hc8b987e_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/deno-dom-0.1.35-h8b8d39b_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py312h2e8e312_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/draco-1.5.7-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/eigen-3.4.0-h91493d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/entrypoints-0.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/esbuild-0.19.2-h57928b3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/exiv2-0.28.2-hadc2d18_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py311hbcf8545_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 @@ -7034,74 +4983,33 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py311h21a6730_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/gflags-2.2.2-ha925a31_1004.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/gh-2.45.0-hd02998f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glog-0.7.0-h9cd36e5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gsl-2.7-hdfb1a43_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.0.0-h57928b3_49841.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyha63f2e9_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh7428d3b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/json5-0.9.24-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py312h2e8e312_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.13.0-h975169c_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/khronos-opencl-icd-loader-2023.04.17-h64bf75a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py311h005e61a_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/laz-perf-3.4.0-h91493d7_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda @@ -7130,17 +5038,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-he430b0a_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.9.3-default_haede6df_1009.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblapacke-3.9.0-21_win64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda @@ -7150,7 +5055,6 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libsodium-1.0.18-h8d14728_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf2f0abc_4.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda @@ -7159,18 +5063,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-1.3.2-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.39-h3df6e99_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py312h7894644_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py311h5bc0dda_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py312hd086842_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py312h594ca44_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py311haddf500_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-he774522_1000.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2 @@ -7179,193 +5080,103 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py312h26ecaf7_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/matplotlib-inline-0.1.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py311ha68e1ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py311h1ea47a8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py311h6e989c2_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mistune-3.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49658.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/mock-5.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/more-itertools-10.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py312h0d7def4_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py311h005e61a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/mypy-1.9.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py311he019f65_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py312h426fad5_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/nitro-2.7.dev8-h1537add_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py312h115d327_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py311h2c0921f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.26-pthreads_h3721920_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py311h0b4df5a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py312h2ab9e98_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py311hf63dbb6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pandoc-3.1.11.1-h57928b3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandocfilters-1.5.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/parso-0.8.3-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pdal-2.6.3-h572f625_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py312he768995_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py311h4dd8a23_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkginfo-1.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py312hf50bb3c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py312h85e32bb_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py311h6a6099b_2_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py312hfccd98a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py312he3b4e22_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py311hc37eb10_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py311h759bd4f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py312hc725b1e_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py312he09f080_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyqt-stubs-5.15.6.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py312hca0710b_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py311h82130bc_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py311h125bc19_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py311h12c1d0e_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.2-h2628c8c_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.11.8-h2628c8c_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.19.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-json-logger-2.0.7-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-4_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py312h53d5487_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py312h2e8e312_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py312h53d5487_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py312h1ac6f91_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qca-2.3.8-h2624d1c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py312h566b452_3.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-h70d2c02_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/qjson-0.9.0-h04a78d6_1009.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py312hca0710b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py311ha68e1ae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qtkeychain-0.14.2-h04a78d6_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qtwebkit-5.212-h4d8ddc9_16.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/quarto-1.4.550-h57928b3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qwt-6.2.0-h07be427_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-2.0.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3986-validator-0.1.1-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py312hfccd98a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py312h60fbdae_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py312hcacafb1_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py312h8753938_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh08f2357_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py311hcacb13a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py311h142b183_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py311h0b4df5a_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py312h7d70906_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py312h53d5487_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py311h16bee0b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py311h12c1d0e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.1.10-hfb803bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/sphobjinv-2.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.2-hcfcfb64_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/suitesparse-5.4.0-h5d0cbe0_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.11.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh5737063_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py312h0d7def4_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/virtualenv-20.25.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/winpty-0.4.3-4.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda @@ -7375,95 +5186,1208 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-h63175ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda -packages: -- kind: conda - name: _libgcc_mutex - version: '0.1' - build: conda_forge - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 - sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 - md5: d7c89558ba9fa0495403155b64376d81 - license: None - size: 2562 - timestamp: 1578324546067 -- kind: conda - name: _openmp_mutex - version: '4.5' - build: 2_gnu - build_number: 16 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22 - md5: 73aaf86a425cc6e73fcf236a5a46396d - depends: - - _libgcc_mutex 0.1 conda_forge - - libgomp >=7.5.0 - constrains: - - openmp_impl 9999 - license: BSD-3-Clause - license_family: BSD - size: 23621 - timestamp: 1650670423406 -- kind: conda - name: alsa-lib - version: 1.2.11 - build: hd590300_1 - build_number: 1 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda - sha256: 0e2b75b9834a6e520b13db516f7cf5c9cea8f0bbc9157c978444173dacb98fec - md5: 0bb492cca54017ea314b809b1ee3a176 - depends: - - libgcc-ng >=12 - license: LGPL-2.1-or-later - license_family: GPL - size: 554699 - timestamp: 1709396557528 -- kind: conda - name: annotated-types - version: 0.6.0 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda - sha256: 3a2c98154d95cfd54daba6b7d507d31f5ba07ac2ad955c44eb041b66563193cd - md5: 997c29372bdbe2afee073dff71f35923 - depends: - - python >=3.7 - - typing-extensions >=4.0.0 - license: MIT - license_family: MIT - size: 17026 - timestamp: 1696634393637 -- kind: conda - name: anyio - version: 4.3.0 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda - sha256: 86aca4a31c09f9b4dbdb332cd9a6a7dbab62ca734d3f832651c0ab59c6a7f52e - md5: ac95aa8ed65adfdde51132595c79aade - depends: - - exceptiongroup >=1.0.2 - - idna >=2.8 - - python >=3.8 - - sniffio >=1.1 - - typing_extensions >=4.1 - constrains: - - trio >=0.23 - - uvloop >=0.17 - license: MIT - license_family: MIT - size: 102331 - timestamp: 1708355504396 -- kind: conda + py312: + channels: + - url: https://conda.anaconda.org/conda-forge/ + packages: + linux-64: + - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-auth-0.7.16-haed3651_8.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-cal-0.6.10-ha9bf9b1_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-common-0.9.14-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-h4466546_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-he635cd5_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hbfc29b2_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h6b388c4_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.3-hffff1cc_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4893938_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-h4466546_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-h4466546_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.3-h137ae52_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-he0cb598_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cfitsio-4.4.0-hbdc6101_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cftime-1.6.3-py312hc7c0aa3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py312h8572e83_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/geotiff-1.7.1-h6b2125f_15.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/json-c-0.17-h7ab15ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.1-cxx17_h59595ed_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.1-h6bfc85a_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.1-h59595ed_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.1-h59595ed_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.1-hc6145d9_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.1-h757c851_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.1-hb016d2e_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.1-h757c851_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-21_linux64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-21_linux64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.6.0-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.22.0-h9be4e54_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.48-h71f35ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgrpc-1.62.1-h15f2491_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libkml-1.3.0-h01aab08_1018.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-21_linux64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.26-pthreads_h413a1c8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.1-h352af49_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.2-hc60ed4a_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialindex-1.9.3-h9c3ff4c_4.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libspatialite-5.1.0-h7bd4643_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.2-h2797004_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h7e041cc_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-4.3.3-py312h03f37cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/lzo-2.10-h516909a_1000.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/markupsafe-2.1.5-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-3.8.3-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/matplotlib-base-3.8.3-py312he5832f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/minizip-4.0.5-h0ab5242_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.32.4-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/msgpack-python-1.0.7-py312h8572e83_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py312hacefee8_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py312hfb8ada1_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-10.2.0-py312hf3581a9_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py312h176e3d2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py312h4b3b743_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyogrio-0.7.2-py312h66d9856_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyproj-3.6.1-py312h38f1c37_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py312h949fe66_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.2-hab00c5b_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py312h394d371_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py312heda63a1_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/shapely-2.0.3-py312h9e6bd2c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.12-py312h30efb56_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/snappy-1.1.10-h9fff704_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.2-h2c6b66d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.9-hd590300_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.1-h8ee46fc_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xerces-c-3.2.5-hac6953d_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.41-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.7-h8ee46fc_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h0b41bf4_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.11-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h0b41bf4_1003.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xf86vidmodeproto-2.3.1-h7f98852_1002.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.5-hfc55251_0.conda + osx-64: + - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-auth-0.7.16-h9d28af5_8.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-cal-0.6.10-hf9de6f9_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-common-0.9.14-h10d778d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h905ab21_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-h30f2259_6.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-hce3b3da_7.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.3-ha335edc_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-h6f42f56_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h905ab21_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h905ab21_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.3-hf5b2fc6_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h232afc9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-1.1.0-h0dc2134_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cfitsio-4.4.0-h60fb419_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cftime-1.6.3-py312h3f2338b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py312hbf0bb39_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/geotiff-1.7.1-h509af15_15.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gettext-0.21.1-h8a4c099_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/json-c-0.17-h8e11ae5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.1-h49b82c4_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.1-hd427752_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.1-hd427752_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.1-h39e3226_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.1-h1a3ed6a_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.1-h43798cf_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.1-h1a3ed6a_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-21_osx64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libiconv-1.17-hd75f5a5_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libjpeg-turbo-3.0.0-h0dc2134_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libkml-1.3.0-hab3ca0e_1018.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/liblapack-3.9.0-21_osx64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialindex-1.9.3-he49afe7_4.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/libspatialite-5.1.0-hebe6af1_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.2-h92b6c6a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-c-1.9.4-hf0c8a7f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/lzo-2.10-haf1e3a3_1000.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/markupsafe-2.1.5-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-3.8.3-py312hb401068_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/matplotlib-base-3.8.3-py312h1fe5000_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/minizip-4.0.5-h37d7099_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/msgpack-python-1.0.7-py312hbf0bb39_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py312h04e34b5_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py312haf8ecfc_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pillow-10.2.0-py312h0c70c2f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pixman-0.43.4-h73e2aa4_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py312hc4c33ac_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py312h1b0e595_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyogrio-0.7.2-py312h3aaa50d_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h14d93e9_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.2-h9f0c242_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py312h7167a34_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py312h8adb940_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/shapely-2.0.3-py312h8fb43f9_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/snappy-1.1.10-h225ccf5_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.2-h7461747_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tzcode-2024a-h10d778d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxdmcp-1.1.3-h35c211d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/xz-5.2.6-h775f41a_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-64/yaml-0.2.5-h0d85af4_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zlib-1.2.13-h8a1eda9_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/zstd-1.5.5-h829000d_0.conda + osx-arm64: + - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-auth-0.7.16-h0d2f7a6_8.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-cal-0.6.10-h677d54c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-common-0.9.14-h93a5062_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-h677d54c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h59ac3ca_6.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hfe5d766_7.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.3-hb8a1441_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h4398043_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-h677d54c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-h677d54c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.3-h0de420c_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h2fb64bc_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-1.1.0-hb547adb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cfitsio-4.4.0-h808cd33_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cftime-1.6.3-py312hf635c46_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py312h76e736e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geotiff-1.7.1-h7bcba05_15.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gettext-0.21.1-h0186832_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/json-c-0.17-h40ed0f5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py312h389731b_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.1-h8eee870_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.1-hebf3989_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.1-hebf3989_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.1-h1f98dca_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.1-hb095944_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.1-h2c81988_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.1-h50959cf_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-21_osxarm64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libiconv-1.17-h0d3ecfb_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libjpeg-turbo-3.0.0-hb547adb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libkml-1.3.0-h1eb4d9f_1018.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblapack-3.9.0-21_osxarm64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialindex-1.9.3-hbdafb3b_4.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libspatialite-5.1.0-h69abc6b_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.2-h091b4b1_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-c-1.9.4-hb7217d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lzo-2.10-h642e427_1000.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/markupsafe-2.1.5-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-3.8.3-py312h1f38498_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/matplotlib-base-3.8.3-py312ha6faf65_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/minizip-4.0.5-hc35e051_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/msgpack-python-1.0.7-py312h76e736e_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pillow-10.2.0-py312hac22aec_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pixman-0.43.4-hebf3989_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py312h1251918_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyogrio-0.7.2-py312hfe67d44_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h4d912e0_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py312h02f2b3b_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py312h22f7183_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py312hd4306f4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py312h9d7df2b_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/shapely-2.0.3-py312h04e4829_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/snappy-1.1.10-h17c5cce_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.2-hf2abe2d_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tzcode-2024a-h93a5062_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxdmcp-1.1.3-h27ca646_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zlib-1.2.13-h53f4e23_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.5-h4f39d0f_0.conda + win-64: + - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-23.2.0-pyh71513ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-auth-0.7.16-h7613915_8.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-cal-0.6.10-hf6fcf4e_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-common-0.9.14-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-hf6fcf4e_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-h3df98b0_6.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-h4e3df0f_7.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.3-h96fac68_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h08df315_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-hf6fcf4e_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-hf6fcf4e_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.3-h6047f0a_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h558341a_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/branca-0.7.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-hcfcfb64_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cfitsio-4.4.0-h9b0cee5_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cftime-1.6.3-py312ha90f08f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/click-plugins-1.1.1-py_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cligj-0.7.2-pyhd8ed1ab_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cloudpickle-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py312h0d7def4_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-h77eed37_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.1-h2a83f13_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.1-h63175ca_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.1-h63175ca_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.1-h02312f3_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.1-h55b4db4_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.1-h3f2ff47_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.1-h89268de_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.6.0-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.1-h7ec3a38_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialindex-1.9.3-h39d44d4_4.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libspatialite-5.1.0-hf2f0abc_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py312h7894644_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py312h594ca44_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-c-1.9.4-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/lzo-2.10-he774522_1000.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libgfortran-5.3.0-6.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-5.3.0-7.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gcc-libs-core-5.3.0-7.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-gmp-6.1.0-2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/m2w64-libwinpthread-git-5.0.0.4634.697f757-2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/mapclassify-2.6.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/markupsafe-2.1.5-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py312h2e8e312_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py312h26ecaf7_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py312h0d7def4_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py312h115d327_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py312h2ab9e98_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py312he768995_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py312h85e32bb_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py312hfccd98a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyogrio-0.7.2-py312he3b4e22_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.1.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyproj-3.6.1-py312hc725b1e_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt-5.15.9-py312he09f080_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.2-h2628c8c_0_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py312hcacafb1_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py312h8753938_2.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/shapely-2.0.3-py312h7d70906_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sip-6.7.12-py312h53d5487_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/snappy-1.1.10-hfb803bf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.2-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/uriparser-0.9.7-h1537add_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.3-hcd874cb_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/xugrid-0.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xyzservices-2023.10.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/zict-3.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.2.13-hcfcfb64_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.5-h12be248_0.conda +packages: +- kind: conda + name: _libgcc_mutex + version: '0.1' + build: conda_forge + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 + sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 + md5: d7c89558ba9fa0495403155b64376d81 + license: None + size: 2562 + timestamp: 1578324546067 +- kind: conda + name: _openmp_mutex + version: '4.5' + build: 2_gnu + build_number: 16 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 + sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22 + md5: 73aaf86a425cc6e73fcf236a5a46396d + depends: + - _libgcc_mutex 0.1 conda_forge + - libgomp >=7.5.0 + constrains: + - openmp_impl 9999 + license: BSD-3-Clause + license_family: BSD + size: 23621 + timestamp: 1650670423406 +- kind: conda + name: alsa-lib + version: 1.2.11 + build: hd590300_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.11-hd590300_1.conda + sha256: 0e2b75b9834a6e520b13db516f7cf5c9cea8f0bbc9157c978444173dacb98fec + md5: 0bb492cca54017ea314b809b1ee3a176 + depends: + - libgcc-ng >=12 + license: LGPL-2.1-or-later + license_family: GPL + size: 554699 + timestamp: 1709396557528 +- kind: conda + name: annotated-types + version: 0.6.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.6.0-pyhd8ed1ab_0.conda + sha256: 3a2c98154d95cfd54daba6b7d507d31f5ba07ac2ad955c44eb041b66563193cd + md5: 997c29372bdbe2afee073dff71f35923 + depends: + - python >=3.7 + - typing-extensions >=4.0.0 + license: MIT + license_family: MIT + size: 17026 + timestamp: 1696634393637 +- kind: conda + name: anyio + version: 4.3.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/anyio-4.3.0-pyhd8ed1ab_0.conda + sha256: 86aca4a31c09f9b4dbdb332cd9a6a7dbab62ca734d3f832651c0ab59c6a7f52e + md5: ac95aa8ed65adfdde51132595c79aade + depends: + - exceptiongroup >=1.0.2 + - idna >=2.8 + - python >=3.8 + - sniffio >=1.1 + - typing_extensions >=4.1 + constrains: + - trio >=0.23 + - uvloop >=0.17 + license: MIT + license_family: MIT + size: 102331 + timestamp: 1708355504396 +- kind: conda name: appnope version: 0.1.4 build: pyhd8ed1ab_0 @@ -7497,152 +6421,6 @@ packages: license_family: MIT size: 18602 timestamp: 1692818472638 -- kind: conda - name: argon2-cffi-bindings - version: 21.2.0 - build: py310h2372a71_4 - build_number: 4 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py310h2372a71_4.conda - sha256: af94cc9b4dcaa164e1cc7e7fa0b9eb56b87ea3dc6e093c8ef6c31cfa02d9ffdf - md5: 68ee85860502d53c8cbfa0e4cef0f6cb - depends: - - cffi >=1.0.1 - - libgcc-ng >=12 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 34384 - timestamp: 1695386695142 -- kind: conda - name: argon2-cffi-bindings - version: 21.2.0 - build: py310h2aa6e3c_4 - build_number: 4 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py310h2aa6e3c_4.conda - sha256: 975ecb0ff5fe8b4d1b804ad5bd956c6f2baa2b8b346c1874444ab91e748207ba - md5: f3fb802f86dfd594219f0ebef6dbf2b2 - depends: - - cffi >=1.0.1 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 33298 - timestamp: 1695387264900 -- kind: conda - name: argon2-cffi-bindings - version: 21.2.0 - build: py310h6729b98_4 - build_number: 4 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py310h6729b98_4.conda - sha256: c413de1658b9f34978e1a5c8dc1e93b75fdef8e453f0983a4d2fa4b6a669e2b2 - md5: fea2a01f85aee10b268e0474a03eb148 - depends: - - cffi >=1.0.1 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 31851 - timestamp: 1695387111978 -- kind: conda - name: argon2-cffi-bindings - version: 21.2.0 - build: py310h8d17308_4 - build_number: 4 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py310h8d17308_4.conda - sha256: ae143aec777823b2291caabc3fd89078a3ff12f41945e0f9abd168997ad35d39 - md5: ece29c9dd68f962fd416a3ddcce24080 - depends: - - cffi >=1.0.1 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 33906 - timestamp: 1695387195123 -- kind: conda - name: argon2-cffi-bindings - version: 21.2.0 - build: py311h2725bcf_4 - build_number: 4 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/argon2-cffi-bindings-21.2.0-py311h2725bcf_4.conda - sha256: be27659496bcb660fc9c3f5f74128a7bb090336897e9c7cfbcc55ae66f13b8d8 - md5: e2aba0ad0f533ee73f9d4330d2e32549 - depends: - - cffi >=1.0.1 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 32542 - timestamp: 1695386887016 -- kind: conda - name: argon2-cffi-bindings - version: 21.2.0 - build: py311h459d7ec_4 - build_number: 4 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/argon2-cffi-bindings-21.2.0-py311h459d7ec_4.conda - sha256: 104194af519b4e667aa5341068b94b521a791aaaa05ec0091f8f0bdba43a60ac - md5: de5b16869a430949b02161b04b844a30 - depends: - - cffi >=1.0.1 - - libgcc-ng >=12 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 34955 - timestamp: 1695386703660 -- kind: conda - name: argon2-cffi-bindings - version: 21.2.0 - build: py311ha68e1ae_4 - build_number: 4 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/argon2-cffi-bindings-21.2.0-py311ha68e1ae_4.conda - sha256: 0b8eb99e7ac6b409abbb5f3b9733f883865ff4314e85146380f072f6f6234929 - md5: e95c947541bf1cb821ea4a6bf7d5794c - depends: - - cffi >=1.0.1 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 34687 - timestamp: 1695387285415 -- kind: conda - name: argon2-cffi-bindings - version: 21.2.0 - build: py311heffc1b2_4 - build_number: 4 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/argon2-cffi-bindings-21.2.0-py311heffc1b2_4.conda - sha256: b9ab23e4f0d615432949d4b93723bd04b3c4aef725aa03b1e993903265c1b975 - md5: e9a56c22ca1215ed3a7b6a9e8c4e6f07 - depends: - - cffi >=1.0.1 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 34126 - timestamp: 1695386994453 - kind: conda name: argon2-cffi-bindings version: 21.2.0 @@ -10267,150 +9045,6 @@ packages: license: ISC size: 160559 timestamp: 1707022289175 -- kind: conda - name: cffi - version: 1.16.0 - build: py310h2fee648_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py310h2fee648_0.conda - sha256: 007e7f69ab45553b7bf11f2c1b8d3f3a13fd42997266a0d57795f41c7d38df36 - md5: 45846a970e71ac98fd327da5d40a0a2c - depends: - - libffi >=3.4,<4.0a0 - - libgcc-ng >=12 - - pycparser - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 241339 - timestamp: 1696001848492 -- kind: conda - name: cffi - version: 1.16.0 - build: py310h8d17308_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py310h8d17308_0.conda - sha256: 1aeebb88518ab48c927d7360648a2799def172d8fcb0d7e20cb7208a3570ef9e - md5: b4bcce1a7ea1164e6dcea6c4f00d962b - depends: - - pycparser - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 237888 - timestamp: 1696002116250 -- kind: conda - name: cffi - version: 1.16.0 - build: py310hdca579f_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py310hdca579f_0.conda - sha256: 37802485964f1a3137ed6ab21ebc08fe9d35e7dc4da39f2b72a814644dd1ac15 - md5: b9e6213f0eb91f40c009ce69139c1869 - depends: - - libffi >=3.4,<4.0a0 - - pycparser - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 229407 - timestamp: 1696002017767 -- kind: conda - name: cffi - version: 1.16.0 - build: py310hdcd7c05_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py310hdcd7c05_0.conda - sha256: 4edab3f1f855554e10950efe064b75138943812af829a764f9b570d1a7189d15 - md5: 8855823d908004e4d3b4fd4218795ad2 - depends: - - libffi >=3.4,<4.0a0 - - pycparser - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 232227 - timestamp: 1696002085787 -- kind: conda - name: cffi - version: 1.16.0 - build: py311h4a08483_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/cffi-1.16.0-py311h4a08483_0.conda - sha256: 9430416328fe2a28e206e703de771817064c8613a79a6a21fe7107f6a783104c - md5: cbdde0484a47b40e6ce2a4e5aaeb48d7 - depends: - - libffi >=3.4,<4.0a0 - - pycparser - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 292511 - timestamp: 1696002194472 -- kind: conda - name: cffi - version: 1.16.0 - build: py311ha68e1ae_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/cffi-1.16.0-py311ha68e1ae_0.conda - sha256: eb7463fe3785dd9ac0b3b1e5fea3b721d20eb082e194cab0af8d9ff28c28934f - md5: d109d6e767c4890ea32880b8bfa4a3b6 - depends: - - pycparser - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 297043 - timestamp: 1696002186279 -- kind: conda - name: cffi - version: 1.16.0 - build: py311hb3a22ac_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.16.0-py311hb3a22ac_0.conda - sha256: b71c94528ca0c35133da4b7ef69b51a0b55eeee570376057f3d2ad60c3ab1444 - md5: b3469563ac5e808b0cd92810d0697043 - depends: - - libffi >=3.4,<4.0a0 - - libgcc-ng >=12 - - pycparser - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 300207 - timestamp: 1696001873452 -- kind: conda - name: cffi - version: 1.16.0 - build: py311hc0b63fd_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/cffi-1.16.0-py311hc0b63fd_0.conda - sha256: 1f13a5fa7f310fdbd27f5eddceb9e62cfb10012c58a58c923dd6f51fa979748a - md5: 15d07b82223cac96af629e5e747ba27a - depends: - - libffi >=3.4,<4.0a0 - - pycparser - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 289932 - timestamp: 1696002096156 - kind: conda name: cffi version: 1.16.0 @@ -10872,152 +9506,6 @@ packages: license_family: BSD size: 24746 timestamp: 1697464875382 -- kind: conda - name: cmarkgfm - version: 0.8.0 - build: py310h2372a71_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py310h2372a71_3.conda - sha256: 8ac6e526998cf707a25dfb0395b777b3aa40d1501bc321b34da445ec625159e6 - md5: ae2c1d072ebce41ce4ee91667e9954e5 - depends: - - cffi >=1.0.0 - - libgcc-ng >=12 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 136512 - timestamp: 1695669881333 -- kind: conda - name: cmarkgfm - version: 0.8.0 - build: py310h2aa6e3c_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py310h2aa6e3c_3.conda - sha256: 520613b4bc257d8113791e6c1036231c561eb69fa567b48d5fed8bf0f9c9661d - md5: 5cdc1abfef977f4c7b642d5007b54e1d - depends: - - cffi >=1.0.0 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 111525 - timestamp: 1695670246277 -- kind: conda - name: cmarkgfm - version: 0.8.0 - build: py310h6729b98_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py310h6729b98_3.conda - sha256: d72ec0c7afadf87c1e9157de0018f9cc2db1b1c36d788dfaae8e19f8dd07b365 - md5: 3eff29e67783bb1ab3bb75e68b05a6a3 - depends: - - cffi >=1.0.0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 111259 - timestamp: 1695670126662 -- kind: conda - name: cmarkgfm - version: 0.8.0 - build: py310h8d17308_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py310h8d17308_3.conda - sha256: 92e8e713cce9f86b3cb4cc507ea55512af0154291a7691fa4d684b65a5d5b420 - md5: d378f34f82178b34f388fabd74cd3511 - depends: - - cffi >=1.0.0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 118179 - timestamp: 1695670479124 -- kind: conda - name: cmarkgfm - version: 0.8.0 - build: py311h2725bcf_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/cmarkgfm-0.8.0-py311h2725bcf_3.conda - sha256: a8036546261cc57f5383f9fcacaedd3c8aed76ca03c05fa5955fcd0a0707ff45 - md5: 3a4ef0858a3fae7e61ae9cdf72adefd1 - depends: - - cffi >=1.0.0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 113116 - timestamp: 1695670250339 -- kind: conda - name: cmarkgfm - version: 0.8.0 - build: py311h459d7ec_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/cmarkgfm-0.8.0-py311h459d7ec_3.conda - sha256: 01316757b817f21ec8c901ecdd1cf60141a80ea5bfddf352846ba85f4c7a3e9d - md5: 5090d5a3ab2580cabb17a3ae965e257f - depends: - - cffi >=1.0.0 - - libgcc-ng >=12 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 136524 - timestamp: 1695669889658 -- kind: conda - name: cmarkgfm - version: 0.8.0 - build: py311ha68e1ae_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/cmarkgfm-0.8.0-py311ha68e1ae_3.conda - sha256: 8fe56f677ec4b47043170d2437ce020c204c88a56895c58490e89277af93a2ca - md5: 489e7c645da48b8c19f8232d70b45ec8 - depends: - - cffi >=1.0.0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 120405 - timestamp: 1695670523318 -- kind: conda - name: cmarkgfm - version: 0.8.0 - build: py311heffc1b2_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/cmarkgfm-0.8.0-py311heffc1b2_3.conda - sha256: d27c4d0cf73cd86551a403fa8363f61bdd270418a348aebbd51f5ca26be0661e - md5: 5cb88950ae060fe9220ed27c2d06987d - depends: - - cffi >=1.0.0 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 114180 - timestamp: 1695670152127 - kind: conda name: cmarkgfm version: 0.8.0 @@ -11551,42 +10039,6 @@ packages: license_family: APACHE size: 372896 timestamp: 1710463417388 -- kind: conda - name: cryptography - version: 42.0.5 - build: py310h75e40e8_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py310h75e40e8_0.conda - sha256: eb514beb1c96969ebd299bb1979d6ccbf78087eb2a3772c364b94f778b8326ec - md5: 47e6ea7109182e9e48f8c5839f1bded7 - depends: - - cffi >=1.12 - - libgcc-ng >=12 - - openssl >=3.2.1,<4.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: Apache-2.0 AND BSD-3-Clause AND PSF-2.0 AND MIT - license_family: BSD - size: 1942507 - timestamp: 1708780633068 -- kind: conda - name: cryptography - version: 42.0.5 - build: py311h63ff55d_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py311h63ff55d_0.conda - sha256: d3531a63f2bf9e234a8ebbbcef3dffc0721c8320166e3b86c05e05aef8c02480 - md5: 76909c8c7b915f0af4f35e80da5f9a87 - depends: - - cffi >=1.12 - - libgcc-ng >=12 - - openssl >=3.2.1,<4.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: Apache-2.0 AND BSD-3-Clause AND PSF-2.0 AND MIT - license_family: BSD - size: 1992171 - timestamp: 1708780569743 - kind: conda name: cryptography version: 42.0.5 @@ -12060,142 +10512,6 @@ packages: license_family: GPL size: 618596 timestamp: 1640112124844 -- kind: conda - name: debugpy - version: 1.8.1 - build: py310h00ffb61_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py310h00ffb61_0.conda - sha256: 070a4d308dace7903e749ed09177315265e6b2dab5d6bb6a0e853fa1fd2e3502 - md5: 0496f1dc805c8a53a7be7fc2f5ca61cc - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 2812534 - timestamp: 1707445209927 -- kind: conda - name: debugpy - version: 1.8.1 - build: py310h5daac23_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py310h5daac23_0.conda - sha256: 4d8e2f3019ed8f6141745d027d8a4f778dd71008848ee4bfaa81842da2e0b42f - md5: 3364c88f90fc0a8354a165f44dd9dd5c - depends: - - libcxx >=16 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 1866627 - timestamp: 1707444787702 -- kind: conda - name: debugpy - version: 1.8.1 - build: py310h692a8b6_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py310h692a8b6_0.conda - sha256: 1da521b369006188c4a4326352664e7fff1cebf3ba6bfa3228a33e1f2cd64f59 - md5: 18b44acb58f6d0b13d694067112545bf - depends: - - libcxx >=16 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 1852663 - timestamp: 1707444865528 -- kind: conda - name: debugpy - version: 1.8.1 - build: py310hc6cd4ac_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py310hc6cd4ac_0.conda - sha256: 69d3970a9bb62d4e1e187f82248cc1cc924589c06100a6f1a065e063f4155978 - md5: 1ea80564b80390fa25da16e4211eb801 - depends: - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 1917514 - timestamp: 1707444642761 -- kind: conda - name: debugpy - version: 1.8.1 - build: py311h12c1d0e_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py311h12c1d0e_0.conda - sha256: 22f390668ab9edc90132dba7a20e58949c12eb5d6f9cc6c0d3766bebdc0ec009 - md5: 61fae6d8dae07c4384ea7672913be528 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 3243396 - timestamp: 1707445208626 -- kind: conda - name: debugpy - version: 1.8.1 - build: py311h92babd0_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py311h92babd0_0.conda - sha256: bb6e0aa6b7ee46a1dc1145db94a30ccc6cb5db2bc59948a2baa8982a708dbb70 - md5: a3d772ae41c1ef4ea1fa01daf307832c - depends: - - libcxx >=16 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 2272457 - timestamp: 1707444947065 -- kind: conda - name: debugpy - version: 1.8.1 - build: py311hb755f60_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py311hb755f60_0.conda - sha256: e69fe7d453389d54fa68fb6fb75ac85f882b2ab4bc745b02c7ff8cd83aee2a5b - md5: 17b98238cbbfbebacd46b79b7fc629a9 - depends: - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 2302395 - timestamp: 1707444677899 -- kind: conda - name: debugpy - version: 1.8.1 - build: py311hdd0406b_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py311hdd0406b_0.conda - sha256: 0df1ca336d468accadb2a1d617aac7c5a5c4c7d63d0d847ab237772f8ff1e93b - md5: 19779dab342c45f8acb28caa00b07637 - depends: - - libcxx >=16 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 2241280 - timestamp: 1707444917914 - kind: conda name: debugpy version: 1.8.1 @@ -12462,128 +10778,6 @@ packages: license_family: BSD size: 794380 timestamp: 1710266308952 -- kind: conda - name: docutils - version: 0.20.1 - build: py310h2ec42d9_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py310h2ec42d9_3.conda - sha256: cc75c6c6062e6f25c1b87acfc5b6715adfd3f84431286ebed0cafc76465a663d - md5: 5ef4ec43ec60fedcb19b56a914c17ac3 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 726058 - timestamp: 1701883025895 -- kind: conda - name: docutils - version: 0.20.1 - build: py310h5588dad_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py310h5588dad_3.conda - sha256: 4b4a2415fe80480b2f66246e0ce32299f138242c89042da35f9cec59665e983d - md5: aec8655b092c52e3c7b060f917b372e5 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 772718 - timestamp: 1701883307898 -- kind: conda - name: docutils - version: 0.20.1 - build: py310hbe9552e_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py310hbe9552e_3.conda - sha256: b9a491fb31b280bc8a69b2d00606a688bd77bfabae9c3b69b7d17d217595d9e4 - md5: 940f85e18d9ba83a4b2519b6772d1098 - depends: - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 724382 - timestamp: 1701883129364 -- kind: conda - name: docutils - version: 0.20.1 - build: py310hff52083_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py310hff52083_3.conda - sha256: 85669183fc376d4f7f8293474bc41bf9def0a9761282d6cc79ae98011e997ae2 - md5: c159dcd29bbd80b187b1c5d5f73cc971 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 721381 - timestamp: 1701882768459 -- kind: conda - name: docutils - version: 0.20.1 - build: py311h1ea47a8_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py311h1ea47a8_3.conda - sha256: fcce275ca03558a4feab18964ee1368f529fe095304a3a99b22e34459a4c0090 - md5: 53e577542ed0df5a3af146e4a746dbd9 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 973107 - timestamp: 1701883312560 -- kind: conda - name: docutils - version: 0.20.1 - build: py311h267d04e_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py311h267d04e_3.conda - sha256: 21af625c067faa77cd3aa2bfd8ca2449cdacdb1b531da8b4cbb476f4a928fdd9 - md5: 29944e93a6f38b2e0fd4f6b743558959 - depends: - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 919194 - timestamp: 1701883260630 -- kind: conda - name: docutils - version: 0.20.1 - build: py311h38be061_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py311h38be061_3.conda - sha256: 0011a2193a5995a6706936156ea5d1021153ec11eb8869b6abfe15a8f6f22ea8 - md5: 1c33f55e5cdcc2a2b973c432b5225bfe - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 918352 - timestamp: 1701882791483 -- kind: conda - name: docutils - version: 0.20.1 - build: py311h6eed73b_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py311h6eed73b_3.conda - sha256: 0fae62e203900a8a013ba2ede852645b87b1568980ddd8e11390c11dc24c3e3c - md5: 2919376c4957faadc7b96f8894759bfb - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: CC-PDDC AND BSD-3-Clause AND BSD-2-Clause AND ZPL-2.1 - size: 919457 - timestamp: 1701883162608 - kind: conda name: docutils version: 0.20.1 @@ -15944,136 +14138,6 @@ packages: license: Apache-2.0 size: 27927 timestamp: 1710632397456 -- kind: conda - name: jsonpointer - version: '2.4' - build: py310h2ec42d9_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py310h2ec42d9_3.conda - sha256: 3d1196f7c81ea64398c01e2285ae59f83e9366dda21c7427f11dde8d0da38609 - md5: ca02450dbc1c346a06fc454b36ddab32 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause - license_family: BSD - size: 16313 - timestamp: 1695397584568 -- kind: conda - name: jsonpointer - version: '2.4' - build: py310h5588dad_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py310h5588dad_3.conda - sha256: 50b86f741719065c235dd00c706bc00fd5cc59cb48bf31505d8ff620a0eb7a02 - md5: 55a7275d703b4c73bae42dcf54cc1441 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause - license_family: BSD - size: 32969 - timestamp: 1695398011639 -- kind: conda - name: jsonpointer - version: '2.4' - build: py310hbe9552e_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py310hbe9552e_3.conda - sha256: ac07094026e47cd74ae431343d17fb2cff34a41de88ad8532308086d73d01d1a - md5: 7e521c322debe4fb1ac5fea63307a724 - depends: - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause - license_family: BSD - size: 16651 - timestamp: 1695397700350 -- kind: conda - name: jsonpointer - version: '2.4' - build: py310hff52083_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py310hff52083_3.conda - sha256: 316db08863469a56cdbfd030de5a2cc11ec7649ed7c50eff507e9caa0070ccaa - md5: 08ec1463dbc5c806a32fc431874032ca - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause - license_family: BSD - size: 16170 - timestamp: 1695397381208 -- kind: conda - name: jsonpointer - version: '2.4' - build: py311h1ea47a8_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/jsonpointer-2.4-py311h1ea47a8_3.conda - sha256: 13042586b08e8caa60615e7c42d05601f9421e8bda5df932e3ef9d2401bf2435 - md5: db8fc59f9215e668e602f769d0bf67bb - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause - license_family: BSD - size: 34654 - timestamp: 1695397742357 -- kind: conda - name: jsonpointer - version: '2.4' - build: py311h267d04e_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/jsonpointer-2.4-py311h267d04e_3.conda - sha256: 807d6c44f3e34139bfd25db4409381a6ce37fad2902c58f10fa7e1c30a64333d - md5: b6008a5b9180e58a235f5e45432dfe2e - depends: - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause - license_family: BSD - size: 18841 - timestamp: 1695397944650 -- kind: conda - name: jsonpointer - version: '2.4' - build: py311h38be061_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/jsonpointer-2.4-py311h38be061_3.conda - sha256: 976f7bf3c3a49c3066f36b67c12ae06b31542e53b843bb4362f31c9e449c6c46 - md5: 41d52d822edf991bf0e6b08c1921a8ec - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause - license_family: BSD - size: 18389 - timestamp: 1695397377176 -- kind: conda - name: jsonpointer - version: '2.4' - build: py311h6eed73b_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/jsonpointer-2.4-py311h6eed73b_3.conda - sha256: b0ba738e1dbf3b69558557cd1e63310364e045b8c8e7f73fdce7e71928b5f22a - md5: ed1c23d0e55abd27d8b9e31c58105140 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause - license_family: BSD - size: 18557 - timestamp: 1695397765266 - kind: conda name: jsonpointer version: '2.4' @@ -16301,146 +14365,6 @@ packages: license_family: BSD size: 106042 timestamp: 1710255955150 -- kind: conda - name: jupyter_core - version: 5.7.2 - build: py310h2ec42d9_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py310h2ec42d9_0.conda - sha256: ab2f20f7532322b2393220846cad453ee47848491971ec306755e7c1010b4e0a - md5: cc37456f73db17d159de1b07a26e91cc - depends: - - platformdirs >=2.5 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - traitlets >=5.3 - license: BSD-3-Clause - license_family: BSD - size: 80504 - timestamp: 1710257739574 -- kind: conda - name: jupyter_core - version: 5.7.2 - build: py310h5588dad_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py310h5588dad_0.conda - sha256: 220a6fe571d3e9a5b5f4467d7f2fb22080b96f7143c9b2703528032528338d50 - md5: 6646c59c6c096e0b99c53dc9d3deaada - depends: - - platformdirs >=2.5 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - pywin32 >=300 - - traitlets >=5.3 - license: BSD-3-Clause - license_family: BSD - size: 97082 - timestamp: 1710257770270 -- kind: conda - name: jupyter_core - version: 5.7.2 - build: py310hbe9552e_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py310hbe9552e_0.conda - sha256: 9e351b25482c50c49fdf0e2203e238c5f04fed0cf192e227915fec955c5d890f - md5: bd7737fbd26eecd0f39cafb52a956f9e - depends: - - platformdirs >=2.5 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - traitlets >=5.3 - license: BSD-3-Clause - license_family: BSD - size: 80605 - timestamp: 1710257888050 -- kind: conda - name: jupyter_core - version: 5.7.2 - build: py310hff52083_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py310hff52083_0.conda - sha256: 837039256d39a249b5bec850f87948e1967c47c9e747056df8155d80c4d3b094 - md5: cb92c27600d5716fd526a206aa43342c - depends: - - platformdirs >=2.5 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - traitlets >=5.3 - license: BSD-3-Clause - license_family: BSD - size: 79565 - timestamp: 1710257392136 -- kind: conda - name: jupyter_core - version: 5.7.2 - build: py311h1ea47a8_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py311h1ea47a8_0.conda - sha256: 59a353a47826a4bf136dec1100c90604a6a9fd06f3c203da73d4ea8bbe359aab - md5: 191bcd5e85d4f305510e46893de9ae08 - depends: - - platformdirs >=2.5 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - pywin32 >=300 - - traitlets >=5.3 - license: BSD-3-Clause - license_family: BSD - size: 111749 - timestamp: 1710257755792 -- kind: conda - name: jupyter_core - version: 5.7.2 - build: py311h267d04e_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py311h267d04e_0.conda - sha256: 0606c9f5a0a9de1e3d8348df4639b7f9dc493a7cf641fd4e9c956af5a33d2b7a - md5: f9e296ff8724469af7117f453824a6de - depends: - - platformdirs >=2.5 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - traitlets >=5.3 - license: BSD-3-Clause - license_family: BSD - size: 96069 - timestamp: 1710257757802 -- kind: conda - name: jupyter_core - version: 5.7.2 - build: py311h38be061_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py311h38be061_0.conda - sha256: 49834d76e70d6461e19c265296b0f492578f63360d0e4799b06bbe2c0d018a7a - md5: f85e78497dfed6f6a4b865191f42de2e - depends: - - platformdirs >=2.5 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - traitlets >=5.3 - license: BSD-3-Clause - license_family: BSD - size: 95226 - timestamp: 1710257482063 -- kind: conda - name: jupyter_core - version: 5.7.2 - build: py311h6eed73b_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py311h6eed73b_0.conda - sha256: 3078f27009ce1f3cdd46dc97bd4f3f51277aa5957f6a90e300c613bd848767b7 - md5: 582fe977a5a6b9f37a72ff34a753381e - depends: - - platformdirs >=2.5 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - traitlets >=5.3 - license: BSD-3-Clause - license_family: BSD - size: 95661 - timestamp: 1710257750738 - kind: conda name: jupyter_core version: 5.7.2 @@ -16719,150 +14643,6 @@ packages: license_family: MIT size: 133421 timestamp: 1703116732437 -- kind: conda - name: keyring - version: 24.3.1 - build: py310h2ec42d9_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py310h2ec42d9_0.conda - sha256: b1e4602a83523cae2614c9c56ff11c72a1568fcd86e76f4ccfc6579f3d52d9b9 - md5: a4e12c772500e3a8f123ae8399b88e80 - depends: - - importlib_metadata >=4.11.4 - - jaraco.classes - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 63373 - timestamp: 1709130151375 -- kind: conda - name: keyring - version: 24.3.1 - build: py310h5588dad_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py310h5588dad_0.conda - sha256: 5fead6fcf899129784ca9eb7eee6a82bd8ad94b23b7c8ae3f8774ec65ef2ed4c - md5: 8c19a03c8e7b0528b23bcf2214095c73 - depends: - - importlib_metadata >=4.11.4 - - jaraco.classes - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - pywin32-ctypes >=0.2.0 - license: MIT - license_family: MIT - size: 80011 - timestamp: 1709130323611 -- kind: conda - name: keyring - version: 24.3.1 - build: py310hbe9552e_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py310hbe9552e_0.conda - sha256: 537b6731673fca79e7381d1ec745fccaf44fc89177ab045e8a55538c6e32d2b2 - md5: 446b7628fe7ce38a5df2ceaaf62727a2 - depends: - - importlib_metadata >=4.11.4 - - jaraco.classes - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 63565 - timestamp: 1709130036250 -- kind: conda - name: keyring - version: 24.3.1 - build: py310hff52083_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py310hff52083_0.conda - sha256: 8187362ec306c92e3d8ebb51677fffb2e44cd0a6e013ed1c4ef439f1d2e5e06b - md5: 441009e6f4fa93552a32d2ed40d332b4 - depends: - - importlib_metadata >=4.11.4 - - jaraco.classes - - jeepney >=0.4.2 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - secretstorage >=3.2 - license: MIT - license_family: MIT - size: 62846 - timestamp: 1709129756792 -- kind: conda - name: keyring - version: 24.3.1 - build: py311h1ea47a8_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py311h1ea47a8_0.conda - sha256: 485ceda4355ce1a46a447cf5204b1abd7e0e658960d22d9e0be73813bbbb8195 - md5: db08d7c7dcc18062bf25c65d72db14ee - depends: - - importlib_metadata >=4.11.4 - - jaraco.classes - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - pywin32-ctypes >=0.2.0 - license: MIT - license_family: MIT - size: 94766 - timestamp: 1709130246198 -- kind: conda - name: keyring - version: 24.3.1 - build: py311h267d04e_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py311h267d04e_0.conda - sha256: cf97079ed5368676bde28cb749f7d4a63118dbab6a85176c0ddaa7445474951d - md5: 308324745fa3e76cb420586bf359494d - depends: - - importlib_metadata >=4.11.4 - - jaraco.classes - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 78688 - timestamp: 1709130183541 -- kind: conda - name: keyring - version: 24.3.1 - build: py311h38be061_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py311h38be061_0.conda - sha256: 9a818c8e26df6e5a6efce101c1836baa4141cd6e09c8913157727cc8e5c073a9 - md5: 0cd643c771fd81eec082cca79e52e08f - depends: - - importlib_metadata >=4.11.4 - - jaraco.classes - - jeepney >=0.4.2 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - secretstorage >=3.2 - license: MIT - license_family: MIT - size: 77788 - timestamp: 1709129798386 -- kind: conda - name: keyring - version: 24.3.1 - build: py311h6eed73b_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py311h6eed73b_0.conda - sha256: e5c23981021f38b4673a24d8ff7867467d2001f4829f39c48eb7d0c12adac282 - md5: 3fde81a6b98eecf036431a6976037c5d - depends: - - importlib_metadata >=4.11.4 - - jaraco.classes - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 78199 - timestamp: 1709130181735 - kind: conda name: keyring version: 24.3.1 @@ -23236,152 +21016,6 @@ packages: license_family: BSD size: 8250 timestamp: 1650660473123 -- kind: conda - name: lxml - version: 5.1.0 - build: py310h843f749_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py310h843f749_0.conda - sha256: f1457290225576d1437b610fe6fbb153a05180bd2e8342f05d4824af8b08c653 - md5: 1fce8d54922036d40073fbd13af8ce74 - depends: - - libxml2 >=2.12.3,<3.0.0a0 - - libxslt >=1.1.39,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause and MIT-CMU - size: 1226932 - timestamp: 1704725138178 -- kind: conda - name: lxml - version: 5.1.0 - build: py310hba208d0_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py310hba208d0_0.conda - sha256: fbdfca8ff3f8a9d4891d857f80de71c4620b7c8c72f45d8485ab6d8afcdb7171 - md5: 62d141e2c9b9da316215e625b335ae33 - depends: - - libxml2 >=2.12.3,<3.0.0a0 - - libxslt >=1.1.39,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-3-Clause and MIT-CMU - size: 1080543 - timestamp: 1704724993496 -- kind: conda - name: lxml - version: 5.1.0 - build: py310hcfd0673_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py310hcfd0673_0.conda - sha256: 6fa12950ed48723438700959577ffa24e623a3f84041e79cc473fcd2b5be578d - md5: 61c4fb5749e6fadbb818816b7bbcd3e4 - depends: - - libgcc-ng >=12 - - libxml2 >=2.12.3,<3.0.0a0 - - libxslt >=1.1.39,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause and MIT-CMU - size: 1442555 - timestamp: 1704724517533 -- kind: conda - name: lxml - version: 5.1.0 - build: py310hd9ecdb4_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py310hd9ecdb4_0.conda - sha256: 01351babbdf5b5ced16e415407fcc2c5d362f123e71839b4ea2fc856427c782d - md5: 3efd35a5c66665e6d07acfecff3d10d4 - depends: - - libxml2 >=2.12.3,<3.0.0a0 - - libxslt >=1.1.39,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause and MIT-CMU - size: 1184020 - timestamp: 1704724904731 -- kind: conda - name: lxml - version: 5.1.0 - build: py311h033124e_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py311h033124e_0.conda - sha256: 58a9e27be1661e1ed882ef4674af46e1bf3850d4925a6541b23c4020f3f30e7a - md5: a51536739fd59cc6d2b29be4441a2699 - depends: - - libxml2 >=2.12.3,<3.0.0a0 - - libxslt >=1.1.39,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause and MIT-CMU - size: 1271974 - timestamp: 1704725131718 -- kind: conda - name: lxml - version: 5.1.0 - build: py311h064e5ff_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/lxml-5.1.0-py311h064e5ff_0.conda - sha256: 7b7ca15be89bd56708bb6504168dbb4b7e7c3a5f9b5d08288388ffbb815d3512 - md5: a467e9bc8399a76a705352ab7c6f24ae - depends: - - libxml2 >=2.12.3,<3.0.0a0 - - libxslt >=1.1.39,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-3-Clause and MIT-CMU - size: 1111835 - timestamp: 1704724965701 -- kind: conda - name: lxml - version: 5.1.0 - build: py311h85df328_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py311h85df328_0.conda - sha256: 495fb2de603c9616de6e1f7667af3256c214bd730420affd6f89bffc0b2b6f11 - md5: b1d7d7f115acc5401060aa200dbf554d - depends: - - libxml2 >=2.12.3,<3.0.0a0 - - libxslt >=1.1.39,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause and MIT-CMU - size: 1231511 - timestamp: 1704724865849 -- kind: conda - name: lxml - version: 5.1.0 - build: py311h9691dec_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/lxml-5.1.0-py311h9691dec_0.conda - sha256: 0a2564e7c742a47703dbee47b68a2a940aa24d45520bf112df7e9e261668b9fc - md5: cee803b62c62e5f3326be31e57161ff5 - depends: - - libgcc-ng >=12 - - libxml2 >=2.12.3,<3.0.0a0 - - libxslt >=1.1.39,<2.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause and MIT-CMU - size: 1481646 - timestamp: 1704724500444 - kind: conda name: lxml version: 5.1.0 @@ -25197,164 +22831,6 @@ packages: license_family: Apache size: 12452 timestamp: 1600387789153 -- kind: conda - name: mypy - version: 1.9.0 - build: py310h2372a71_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.9.0-py310h2372a71_0.conda - sha256: a1231c84dda10bb8f1b07c08aaa5447025c01306cd0779c3e1d45f534b0f6313 - md5: 6211fce58a1622f4e001bcb02da870e2 - depends: - - libgcc-ng >=12 - - mypy_extensions >=1.0.0 - - psutil >=4.0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - tomli >=1.1.0 - - typing_extensions >=4.1.0 - license: MIT - license_family: MIT - size: 17149939 - timestamp: 1709935106693 -- kind: conda - name: mypy - version: 1.9.0 - build: py310h8d17308_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/mypy-1.9.0-py310h8d17308_0.conda - sha256: dcebf59d6fe3edbcb7ab11ea31eb050f9a412717f1c35e5696993fce29004019 - md5: f85b8fc8b3bc02840f45e433f71b44b9 - depends: - - mypy_extensions >=1.0.0 - - psutil >=4.0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - tomli >=1.1.0 - - typing_extensions >=4.1.0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 9348841 - timestamp: 1709935126593 -- kind: conda - name: mypy - version: 1.9.0 - build: py310hb372a2b_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.9.0-py310hb372a2b_0.conda - sha256: c258a63b41b1dffb489ec4302556a4a1e1341acdf98ff59daca5ad1eaa3ad88a - md5: 8f550d00ab79068671ac5947c344ab8d - depends: - - mypy_extensions >=1.0.0 - - psutil >=4.0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - tomli >=1.1.0 - - typing_extensions >=4.1.0 - license: MIT - license_family: MIT - size: 11375489 - timestamp: 1710165921566 -- kind: conda - name: mypy - version: 1.9.0 - build: py310hd125d64_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.9.0-py310hd125d64_0.conda - sha256: 86009e3e0340ce768370683f2ae915584e8fc5a7c6a433080758997eccf79a0a - md5: 442406f038a5c379d1ac5aec39199c41 - depends: - - mypy_extensions >=1.0.0 - - psutil >=4.0 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - tomli >=1.1.0 - - typing_extensions >=4.1.0 - license: MIT - license_family: MIT - size: 8961868 - timestamp: 1709935562257 -- kind: conda - name: mypy - version: 1.9.0 - build: py311h05b510d_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.9.0-py311h05b510d_0.conda - sha256: 806cb28e96f7052749a9520334ea5a913fdac2d146528be563b553d87aea328f - md5: 916a985352b171e3e4a2311f4328b9b5 - depends: - - mypy_extensions >=1.0.0 - - psutil >=4.0 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - typing_extensions >=4.1.0 - license: MIT - license_family: MIT - size: 9664785 - timestamp: 1709935381720 -- kind: conda - name: mypy - version: 1.9.0 - build: py311h459d7ec_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.9.0-py311h459d7ec_0.conda - sha256: 07cfe0e0aa77d5647558638d9a954feab116e5d75f4e15877ac9286f241b1a9e - md5: e58bef0cd6e90e074db57962be787e13 - depends: - - libgcc-ng >=12 - - mypy_extensions >=1.0.0 - - psutil >=4.0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - typing_extensions >=4.1.0 - license: MIT - license_family: MIT - size: 17607547 - timestamp: 1709934958191 -- kind: conda - name: mypy - version: 1.9.0 - build: py311ha68e1ae_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/mypy-1.9.0-py311ha68e1ae_0.conda - sha256: 190c567606c3835fc291da30dd218f4d1161093994f88e454095611307a9a8b7 - md5: b5ebb463bd73d8f21b65c6b459b78c7e - depends: - - mypy_extensions >=1.0.0 - - psutil >=4.0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - typing_extensions >=4.1.0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 9944326 - timestamp: 1709935016909 -- kind: conda - name: mypy - version: 1.9.0 - build: py311he705e18_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.9.0-py311he705e18_0.conda - sha256: 7d8dd69a223f318a777e13714ea520df5d1dffef796a9343b3f1e73e58183d4a - md5: 4bbedb0c0275b51abf9c034090c44813 - depends: - - mypy_extensions >=1.0.0 - - psutil >=4.0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - typing_extensions >=4.1.0 - license: MIT - license_family: MIT - size: 11967718 - timestamp: 1709935277904 - kind: conda name: mypy version: 1.9.0 @@ -25986,130 +23462,6 @@ packages: license_family: BSD size: 1149552 timestamp: 1698504905258 -- kind: conda - name: nh3 - version: 0.2.15 - build: py310h0e083fb_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py310h0e083fb_0.conda - sha256: 18a36e658fc153cbd4517752b67ff1e6687026cf14f9a297e98a899cb103e731 - md5: cedd00b90791d3f0ddbe30b5f47e8523 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 547878 - timestamp: 1701975012180 -- kind: conda - name: nh3 - version: 0.2.15 - build: py310h32a15e0_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py310h32a15e0_0.conda - sha256: 65a6f74807a4125a5656e46e7a3b34f3080a4d93c7e225e8c35aa8b1828b2972 - md5: 26d72f0a38894f0a88aaa0918f5bc5f2 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 493123 - timestamp: 1701975619954 -- kind: conda - name: nh3 - version: 0.2.15 - build: py310hcb5633a_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py310hcb5633a_0.conda - sha256: 76ca5d5ccd47f3fed17583338a81fb99310c169db6c260b266b6da73e80a620a - md5: 0b026526aecbb06d8e563450618d0d7b - depends: - - libgcc-ng >=12 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 615324 - timestamp: 1701974588309 -- kind: conda - name: nh3 - version: 0.2.15 - build: py310hd442715_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py310hd442715_0.conda - sha256: 7c54b80bcb91c487b3c4e38a6e63870db6d894bbb94bb39df4b6eaab4cb178b1 - md5: 9c6b7c8cbf0576376dd60268ff405b8d - depends: - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 603492 - timestamp: 1701975260496 -- kind: conda - name: nh3 - version: 0.2.15 - build: py311h46250e7_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py311h46250e7_0.conda - sha256: 925338483177e45796cce67b202fb04bfb475f69640e38adea84944ca9018c97 - md5: 03e43969efe3c71962fea046c00cc40f - depends: - - libgcc-ng >=12 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 621909 - timestamp: 1701974756466 -- kind: conda - name: nh3 - version: 0.2.15 - build: py311h5e0f0e4_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py311h5e0f0e4_0.conda - sha256: 8d050fedd9cd3ed287ac7fd4c28976f0d8990260f25df12376942f9548181384 - md5: 1558bb8f97aa8d361bc59470ac4b26cf - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 547589 - timestamp: 1701974970422 -- kind: conda - name: nh3 - version: 0.2.15 - build: py311h633b200_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py311h633b200_0.conda - sha256: d0b5ed5621d01adc223971f83b00e2d3cdab870b5913322cec3d5ed4ada0aef2 - md5: c3f2f171c4a730eec6c0534f0227cafe - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 493281 - timestamp: 1701975459413 -- kind: conda - name: nh3 - version: 0.2.15 - build: py311h94f323b_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py311h94f323b_0.conda - sha256: 2da7ef9cdd56243ef0fe8627064c52763fac2205d43e5af7f10939200e4e026f - md5: 21c870df3567f6cdfceee7360e6591eb - depends: - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 603372 - timestamp: 1701975309271 - kind: conda name: nh3 version: 0.2.15 @@ -29031,150 +26383,6 @@ packages: license_family: BSD size: 503677 timestamp: 1705722843679 -- kind: conda - name: psycopg2 - version: 2.9.9 - build: py310h1ce8fe0_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py310h1ce8fe0_0.conda - sha256: 5f525bc67fc7e4b9cd4407eee6bb4067267f97441c4cfffdba907ad6ca31298c - md5: 60340f114d212304182d672c44c9c53a - depends: - - libpq >=16.1,<17.0a0 - - openssl >=3.2.0,<4.0a0 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: LGPL-3.0-or-later - license_family: LGPL - size: 148778 - timestamp: 1701738064271 -- kind: conda - name: psycopg2 - version: 2.9.9 - build: py310h20e1e1d_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py310h20e1e1d_0.conda - sha256: 9e8941995ae5b462fa6638bc8efc90a70fdaf714e521c2b5279044d19c626061 - md5: 475dafe09f9d79d5218fdaa3ca246756 - depends: - - libpq >=16.1,<17.0a0 - - openssl >=3.2.0,<4.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: LGPL-3.0-or-later - license_family: LGPL - size: 156393 - timestamp: 1701738238065 -- kind: conda - name: psycopg2 - version: 2.9.9 - build: py310h275853b_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py310h275853b_0.conda - sha256: 583aa8fef12988a26e24a94f7a3b3045412dce3860884b47e28318196cccab70 - md5: ab5ef89b98dad51f23d49a44f114905f - depends: - - libgcc-ng >=12 - - libpq >=16.1,<17.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: LGPL-3.0-or-later - license_family: LGPL - size: 173407 - timestamp: 1701737645253 -- kind: conda - name: psycopg2 - version: 2.9.9 - build: py310h59c96c0_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py310h59c96c0_0.conda - sha256: 064e2a5b7d6e53345e7c36659e057c96b6d96f0adff46408b82655c04b039b87 - md5: 7522f87254843b2ef73d84e53f5ee740 - depends: - - libpq >=16.1,<17.0a0 - - openssl >=3.2.0,<4.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: LGPL-3.0-or-later - license_family: LGPL - size: 149455 - timestamp: 1701737753307 -- kind: conda - name: psycopg2 - version: 2.9.9 - build: py311h03dec38_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py311h03dec38_0.conda - sha256: 4e78d9fe1799d028d9a2da3636a3a68a531aeca5d2c679d4fc78627a426b11cb - md5: 3cc2decd316838bce14d73818e0bf7a4 - depends: - - libgcc-ng >=12 - - libpq >=16.1,<17.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: LGPL-3.0-or-later - license_family: LGPL - size: 189730 - timestamp: 1701737752381 -- kind: conda - name: psycopg2 - version: 2.9.9 - build: py311h187f0af_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/psycopg2-2.9.9-py311h187f0af_0.conda - sha256: 73c0cf543b0ddd41993956969f665999f5801e027e3d3524604892baedbd2626 - md5: 2177c8943bbf9bfc45421ecaebd5be11 - depends: - - libpq >=16.1,<17.0a0 - - openssl >=3.2.0,<4.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: LGPL-3.0-or-later - license_family: LGPL - size: 165990 - timestamp: 1701738110364 -- kind: conda - name: psycopg2 - version: 2.9.9 - build: py311h2abc067_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/psycopg2-2.9.9-py311h2abc067_0.conda - sha256: 9ed78256705d1673f591fc2914990008f7e7560b02acf2d9b7ed8c4d637d7180 - md5: c61c5dc3e20b994f52277c2b75496386 - depends: - - libpq >=16.1,<17.0a0 - - openssl >=3.2.0,<4.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: LGPL-3.0-or-later - license_family: LGPL - size: 171755 - timestamp: 1701738131212 -- kind: conda - name: psycopg2 - version: 2.9.9 - build: py311h589e011_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/psycopg2-2.9.9-py311h589e011_0.conda - sha256: a6340fa9458824b9681ba6cc1de0a618ffd6b19272c4eedcf787a6e627025aa5 - md5: cf560a3c0e56cf6a168f885958ec31ff - depends: - - libpq >=16.1,<17.0a0 - - openssl >=3.2.0,<4.0a0 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: LGPL-3.0-or-later - license_family: LGPL - size: 166239 - timestamp: 1701738183853 - kind: conda name: psycopg2 version: 2.9.9 @@ -29998,76 +27206,6 @@ packages: license_family: BSD size: 860425 timestamp: 1700608076927 -- kind: conda - name: pyobjc-core - version: '10.2' - build: py310h3674b6a_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py310h3674b6a_0.conda - sha256: 7f7702c401ef5dc17de6514c18c2b5ae419225878513e8d4cf924aecca3157d2 - md5: 273e63c9fb19d911bcc7edd37b11b9a7 - depends: - - libffi >=3.4,<4.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - setuptools - license: MIT - license_family: MIT - size: 422450 - timestamp: 1710591218419 -- kind: conda - name: pyobjc-core - version: '10.2' - build: py310hb3aa912_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py310hb3aa912_0.conda - sha256: be9dfdf5f0e29d7983bbc8139b0f26e866703c7bfb53c27175ac6927eb19b77f - md5: 72aa092ddb05a3634de0cf65a697c5e3 - depends: - - libffi >=3.4,<4.0a0 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - setuptools - license: MIT - license_family: MIT - size: 412985 - timestamp: 1710591332620 -- kind: conda - name: pyobjc-core - version: '10.2' - build: py311h665608e_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-core-10.2-py311h665608e_0.conda - sha256: d9dca029a92dff4ce4e97463033d7eb1528d03adebd6e39dfc5f8c4c988a2e7d - md5: 756d3967f52eb7a5c8a4595836f0cba7 - depends: - - libffi >=3.4,<4.0a0 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - setuptools - license: MIT - license_family: MIT - size: 460197 - timestamp: 1710591353438 -- kind: conda - name: pyobjc-core - version: '10.2' - build: py311h9b70068_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-core-10.2-py311h9b70068_0.conda - sha256: ee087e894c54d4f803564e7f3eca8c3874df1cafc4393cb90bd42ea9b84b44ee - md5: df310a6ec985adaa0f1a3cba4190e1ed - depends: - - libffi >=3.4,<4.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - setuptools - license: MIT - license_family: MIT - size: 470129 - timestamp: 1710591219864 - kind: conda name: pyobjc-core version: '10.2' @@ -30103,76 +27241,6 @@ packages: license_family: MIT size: 458802 timestamp: 1710591355614 -- kind: conda - name: pyobjc-framework-cocoa - version: '10.2' - build: py310h3674b6a_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py310h3674b6a_0.conda - sha256: 70e23bb5fb4123fb9652d0cfe951bc914e36299454e2faadf3274ad14070ef7e - md5: e264c955900b7b2ef577ab572c83339a - depends: - - libffi >=3.4,<4.0a0 - - pyobjc-core 10.2.* - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 328959 - timestamp: 1710597476409 -- kind: conda - name: pyobjc-framework-cocoa - version: '10.2' - build: py310hb3aa912_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py310hb3aa912_0.conda - sha256: f73551c32b08eae0b332b4b6df6ff830f8eca3e81cee850b1fe4416c3e990e8b - md5: b61d146df1052bf457f565d2e9b0a2c7 - depends: - - libffi >=3.4,<4.0a0 - - pyobjc-core 10.2.* - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 330790 - timestamp: 1710597504043 -- kind: conda - name: pyobjc-framework-cocoa - version: '10.2' - build: py311h665608e_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyobjc-framework-cocoa-10.2-py311h665608e_0.conda - sha256: 02c663bb7e9e7557ebe6361123704fb202cea726ae90530cea3f8069678a25fa - md5: cccc71d68a0c7c91bbb40aaa9704e8e8 - depends: - - libffi >=3.4,<4.0a0 - - pyobjc-core 10.2.* - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 372727 - timestamp: 1710597522066 -- kind: conda - name: pyobjc-framework-cocoa - version: '10.2' - build: py311h9b70068_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyobjc-framework-cocoa-10.2-py311h9b70068_0.conda - sha256: 336f8920c4f42da580491ca4298f04bd74db3cbea9aaa83abd9679085ce93c52 - md5: ccdf574dc51507ce83a1fd56207e3757 - depends: - - libffi >=3.4,<4.0a0 - - pyobjc-core 10.2.* - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 372679 - timestamp: 1710597487565 - kind: conda name: pyobjc-framework-cocoa version: '10.2' @@ -30767,48 +27835,6 @@ packages: license_family: GPL size: 3881331 timestamp: 1695421370903 -- kind: conda - name: pyqt - version: 5.15.9 - build: py310h2924129_5 - build_number: 5 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py310h2924129_5.conda - sha256: 6c0cee4b155fc94a9c1710413de19f120676bee2bf810193599dffff72e50983 - md5: 0156cad315c914ef43fdcf5a10e744d1 - depends: - - libcxx >=15.0.7 - - pyqt5-sip 12.12.2 py310h1253130_5 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - license: GPL-3.0-only - license_family: GPL - size: 3914598 - timestamp: 1695422132089 -- kind: conda - name: pyqt - version: 5.15.9 - build: py310hecc045f_5 - build_number: 5 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py310hecc045f_5.conda - sha256: 5fd2f88f54361cda6e7c3560fd65181f47b7a2ed1235aec1afc469897dd536d7 - md5: 65be0f53ea1e58510d4efc62acb1278e - depends: - - libcxx >=15.0.7 - - pyqt5-sip 12.12.2 py310h018f80b_5 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - constrains: - - __osx >=10.13 - license: GPL-3.0-only - license_family: GPL - size: 4079030 - timestamp: 1695421949350 - kind: conda name: pyqt version: 5.15.9 @@ -30831,48 +27857,6 @@ packages: license_family: GPL size: 3906427 timestamp: 1695422270104 -- kind: conda - name: pyqt - version: 5.15.9 - build: py311h5b1a2bc_5 - build_number: 5 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyqt-5.15.9-py311h5b1a2bc_5.conda - sha256: 995ccdbe3784968e138e086799b3d4a94ba23df32662937475d53bf47676e8d6 - md5: 8cc18fe7d8016c47021c2629f8882785 - depends: - - libcxx >=15.0.7 - - pyqt5-sip 12.12.2 py311h46b81f0_5 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - constrains: - - __osx >=10.13 - license: GPL-3.0-only - license_family: GPL - size: 4096527 - timestamp: 1695422132108 -- kind: conda - name: pyqt - version: 5.15.9 - build: py311hc49b008_5 - build_number: 5 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt-5.15.9-py311hc49b008_5.conda - sha256: 6521f2dd88c9ede7faf7ae41f234e97280b62e76c0c4d88373d81f73230d745f - md5: 11be30376524bb858197d6ef0ca95959 - depends: - - libcxx >=15.0.7 - - pyqt5-sip 12.12.2 py311ha891d26_5 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - license: GPL-3.0-only - license_family: GPL - size: 3919652 - timestamp: 1695421881652 - kind: conda name: pyqt version: 5.15.9 @@ -31017,47 +28001,6 @@ packages: license_family: GPL size: 79787 timestamp: 1695418575552 -- kind: conda - name: pyqt5-sip - version: 12.12.2 - build: py310h018f80b_5 - build_number: 5 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py310h018f80b_5.conda - sha256: 2c49ca6fc2700826e8ca7d7f530512daa777ff321298f4ae1b33b05b4c60dd02 - md5: 3a27b0c4dbce2fc393322ecec538b78d - depends: - - libcxx >=15.0.7 - - packaging - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - sip - - toml - license: GPL-3.0-only - license_family: GPL - size: 74734 - timestamp: 1695418119173 -- kind: conda - name: pyqt5-sip - version: 12.12.2 - build: py310h1253130_5 - build_number: 5 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py310h1253130_5.conda - sha256: c295fb6f40e1c66a386d0850628e33a58e759e09e0d115a893d38af7af4afe8a - md5: cdf5fa7a77660c885dfc91dfcdec75a7 - depends: - - libcxx >=15.0.7 - - packaging - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - sip - - toml - license: GPL-3.0-only - license_family: GPL - size: 74891 - timestamp: 1695418246358 - kind: conda name: pyqt5-sip version: 12.12.2 @@ -31101,47 +28044,6 @@ packages: license_family: GPL size: 79724 timestamp: 1695418442619 -- kind: conda - name: pyqt5-sip - version: 12.12.2 - build: py311h46b81f0_5 - build_number: 5 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyqt5-sip-12.12.2-py311h46b81f0_5.conda - sha256: de388bc1c6dcbccc04250b1a085e306905df02b4112296e1e7bc33b01467b541 - md5: 922f2e1968737a9323507bc7eb21fe6c - depends: - - libcxx >=15.0.7 - - packaging - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - sip - - toml - license: GPL-3.0-only - license_family: GPL - size: 74911 - timestamp: 1695418163407 -- kind: conda - name: pyqt5-sip - version: 12.12.2 - build: py311ha891d26_5 - build_number: 5 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyqt5-sip-12.12.2-py311ha891d26_5.conda - sha256: 6a376dee486c040d90c3658a2f7ad3a98c35a34cdc27f5f417dc4b1f98855e30 - md5: 0561a45bfdf8843c56f3b931ebd6b631 - depends: - - libcxx >=15.0.7 - - packaging - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - sip - - toml - license: GPL-3.0-only - license_family: GPL - size: 75332 - timestamp: 1695418376150 - kind: conda name: pyqt5-sip version: 12.12.2 @@ -31247,184 +28149,6 @@ packages: license_family: GPL size: 75901 timestamp: 1695418352795 -- kind: conda - name: pyqtwebkit - version: 5.15.9 - build: py310h37eb29e_2 - build_number: 2 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py310h37eb29e_2.conda - sha256: 520b66230f20074347bc0bb1c314538c13e7568568ba716042e93dcc369ca7ff - md5: 752b818cd7fd30676425682cd32ba513 - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - qtwebkit - - sip >=6.7.11,<6.8.0a0 - license: LicenseRef-Commercial or GPL-3.0-only - license_family: GPL - size: 155836 - timestamp: 1695649691521 -- kind: conda - name: pyqtwebkit - version: 5.15.9 - build: py310hcf420b7_2 - build_number: 2 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py310hcf420b7_2.conda - sha256: 70ad8bd30050b45365db6a6c78a09ee2ba453979615a3b4b970e19443cc93145 - md5: e382964e93bcbe1c4e4da62a9e667fd2 - depends: - - libcxx >=15.0.7 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - qtwebkit - license: LicenseRef-Commercial or GPL-3.0-only - license_family: GPL - size: 126945 - timestamp: 1695650048488 -- kind: conda - name: pyqtwebkit - version: 5.15.9 - build: py310he49db7d_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py310he49db7d_2.conda - sha256: ba4d7ac2e6961f96c8a1c44eacd00765c2688264138caa289d463d6170c57b76 - md5: d2b6e8e292a12c36d6b4c3cb6d296a8e - depends: - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - qtwebkit - - sip >=6.7.11,<6.8.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: LicenseRef-Commercial or GPL-3.0-only - license_family: GPL - size: 125008 - timestamp: 1695652407840 -- kind: conda - name: pyqtwebkit - version: 5.15.9 - build: py310he672dd7_2 - build_number: 2 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py310he672dd7_2.conda - sha256: f50f32210436fea2b87151e37c317b99d3256accc1abad761b6280e1c3d7d099 - md5: c1c588a372c4707c48ef6ba8ea4d64a8 - depends: - - __osx >=10.13 - - libcxx >=15.0.7 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - qtwebkit - - sip >=6.7.11,<6.8.0a0 - license: LicenseRef-Commercial or GPL-3.0-only - license_family: GPL - size: 125036 - timestamp: 1695649679999 -- kind: conda - name: pyqtwebkit - version: 5.15.9 - build: py311h14ede98_2 - build_number: 2 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py311h14ede98_2.conda - sha256: e3c500072c959a0f4c6ab1a3df7bff063ca438b0ae286dfcbe325204364fe383 - md5: e9fe0fd5733eebec91a832145923f1a9 - depends: - - libcxx >=15.0.7 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - qtwebkit - license: LicenseRef-Commercial or GPL-3.0-only - license_family: GPL - size: 127848 - timestamp: 1695649649609 -- kind: conda - name: pyqtwebkit - version: 5.15.9 - build: py311h4c6dc46_2 - build_number: 2 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py311h4c6dc46_2.conda - sha256: 4f92cb54dd303eb4e940647b42eefc5ab00e0cb9d1873814b95fef78f1edd97d - md5: c991f90dff9816159fefac95be32741e - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - qtwebkit - - sip >=6.7.11,<6.8.0a0 - license: LicenseRef-Commercial or GPL-3.0-only - license_family: GPL - size: 155701 - timestamp: 1695649097615 -- kind: conda - name: pyqtwebkit - version: 5.15.9 - build: py311h5a77453_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py311h5a77453_2.conda - sha256: 7e98e8cb281131da97af0c1f8081fa877bfbdc5917c54897928ed9bd4a651c68 - md5: 2d3591431ba7d9d1790b10093ff5dcf1 - depends: - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - qtwebkit - - sip >=6.7.11,<6.8.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: LicenseRef-Commercial or GPL-3.0-only - license_family: GPL - size: 124670 - timestamp: 1695652112782 -- kind: conda - name: pyqtwebkit - version: 5.15.9 - build: py311hdffe31b_2 - build_number: 2 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py311hdffe31b_2.conda - sha256: 2026b9d0aedd9d3574a927f482d5601c72259e8d094c7a41a45f4552d9886b41 - md5: c88ba37692b34dc947b0c46cefe32bbd - depends: - - __osx >=10.13 - - libcxx >=15.0.7 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - qtwebkit - - sip >=6.7.11,<6.8.0a0 - license: LicenseRef-Commercial or GPL-3.0-only - license_family: GPL - size: 124908 - timestamp: 1695649622398 - kind: conda name: pyqtwebkit version: 5.15.9 @@ -32182,44 +28906,6 @@ packages: license_family: MIT size: 188538 timestamp: 1706886944988 -- kind: conda - name: pywin32 - version: '306' - build: py310h00ffb61_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py310h00ffb61_2.conda - sha256: 24fd15c118974da18c38870380195e633d2452a7fb7dbc0ecb96b44416989b33 - md5: a65056c5f52aa83455577958872e4776 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: PSF-2.0 - license_family: PSF - size: 5689476 - timestamp: 1695974437046 -- kind: conda - name: pywin32 - version: '306' - build: py311h12c1d0e_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pywin32-306-py311h12c1d0e_2.conda - sha256: 79d942817bdaf384602113e5fcb9158dc45cae4044bed308918a5db97f141fdb - md5: 25df0fc55722ea1a94494f41302e2d1c - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: PSF-2.0 - license_family: PSF - size: 6124285 - timestamp: 1695974706892 - kind: conda name: pywin32 version: '306' @@ -32239,38 +28925,6 @@ packages: license_family: PSF size: 6127499 timestamp: 1695974557413 -- kind: conda - name: pywin32-ctypes - version: 0.2.2 - build: py310h5588dad_1 - build_number: 1 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py310h5588dad_1.conda - sha256: a284228ba87d0c02a6359c1ee6ad1fcdb5ef3cf135a4ccd6ea3c19efc152fd7e - md5: b9b7535acf5ec3e4b8f1c43e5465bebf - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause - license_family: BSD - size: 46140 - timestamp: 1695395374679 -- kind: conda - name: pywin32-ctypes - version: 0.2.2 - build: py311h1ea47a8_1 - build_number: 1 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pywin32-ctypes-0.2.2-py311h1ea47a8_1.conda - sha256: 75a80bda3a87ae9387e8860be7a5271a67846d8929fe8c99799ed40eb085130a - md5: e1270294a55b716f9b76900340e8fc82 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause - license_family: BSD - size: 57331 - timestamp: 1695395348158 - kind: conda name: pywin32-ctypes version: 0.2.2 @@ -32287,44 +28941,6 @@ packages: license_family: BSD size: 55871 timestamp: 1695395307212 -- kind: conda - name: pywinpty - version: 2.0.13 - build: py310h00ffb61_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py310h00ffb61_0.conda - sha256: be943bcecf57be5e6856390ef0b160988bca6c4f16742804f3ab9f9423a5e80f - md5: 8f81af709ee7a920f101037dd97bdea9 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - winpty - license: MIT - license_family: MIT - size: 201383 - timestamp: 1708995643701 -- kind: conda - name: pywinpty - version: 2.0.13 - build: py311h12c1d0e_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pywinpty-2.0.13-py311h12c1d0e_0.conda - sha256: 07ee90dfcc15982f282ddf82cf4bbbcf0c9ecfabb51daad9341022a7405fb4c8 - md5: 8cec3af6f3eed98cc6edf8f7fb26a7d4 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - winpty - license: MIT - license_family: MIT - size: 212234 - timestamp: 1708995766138 - kind: conda name: pywinpty version: 2.0.13 @@ -32538,179 +29154,31 @@ packages: - libgcc-ng >=12 - python >=3.12.0rc3,<3.13.0a0 - python_abi 3.12.* *_cp312 - - yaml >=0.2.5,<0.3.0a0 - license: MIT - license_family: MIT - size: 196583 - timestamp: 1695373632212 -- kind: conda - name: pyyaml - version: 6.0.1 - build: py312he70551f_1 - build_number: 1 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda - sha256: a72fa8152791b4738432f270e70b3a9a4d583ef059a78aa1c62f4b4ab7b15494 - md5: f91e0baa89ba21166916624ba7bfb422 - depends: - - python >=3.12.0rc3,<3.13.0a0 - - python_abi 3.12.* *_cp312 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - yaml >=0.2.5,<0.3.0a0 - license: MIT - license_family: MIT - size: 167932 - timestamp: 1695374097139 -- kind: conda - name: pyzmq - version: 25.1.2 - build: py310h2849c00_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py310h2849c00_0.conda - sha256: 3f3df8bbc345dc5bb5f99221939442b98a96eec9a2e70ae9229e8ffad4d582b0 - md5: 50c7fc00e1655acb86d47ca4639970ea - depends: - - libsodium >=1.0.18,<1.0.19.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - zeromq >=4.3.5,<4.3.6.0a0 - license: BSD-3-Clause AND LGPL-3.0-or-later - size: 409605 - timestamp: 1701783997962 -- kind: conda - name: pyzmq - version: 25.1.2 - build: py310h6b67f7f_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py310h6b67f7f_0.conda - sha256: c15167ae0bd0f06c29306b327398d0401d858f6253dfb173888f407191c5d340 - md5: 8864483b9dced3e5bda60ddff9ba704d - depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - libsodium >=1.0.18,<1.0.19.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - zeromq >=4.3.5,<4.4.0a0 - license: BSD-3-Clause AND LGPL-3.0-or-later - size: 417462 - timestamp: 1701783695403 -- kind: conda - name: pyzmq - version: 25.1.2 - build: py310h795f18f_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py310h795f18f_0.conda - sha256: 6ce93fd1e847ce02c2bbfa6022b639b21d4229d61b21ce0ecacb22c380e5680e - md5: fa09f98f3acfd3f5de30bd2d27d5cb7f - depends: - - libgcc-ng >=12 - - libsodium >=1.0.18,<1.0.19.0a0 - - libstdcxx-ng >=12 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - zeromq >=4.3.5,<4.4.0a0 - license: BSD-3-Clause AND LGPL-3.0-or-later - size: 456994 - timestamp: 1701783375385 -- kind: conda - name: pyzmq - version: 25.1.2 - build: py310hbb13138_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py310hbb13138_0.conda - sha256: 544c5b48f4c2b26905601316291b63851604ba7ebe76931f28dfe8513047bf63 - md5: 5adb1f6a3a2bb6d9a0bcab208b36402b - depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - libsodium >=1.0.18,<1.0.19.0a0 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - zeromq >=4.3.5,<4.4.0a0 - license: BSD-3-Clause AND LGPL-3.0-or-later - size: 421246 - timestamp: 1701783718186 -- kind: conda - name: pyzmq - version: 25.1.2 - build: py311h34ded2d_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py311h34ded2d_0.conda - sha256: 54ccdde1370d8a373e516b84bd7fe4af394f8c6f3778eb050de82f04ffb86160 - md5: 819aa640a0493d4b52faf938e94d129e - depends: - - libgcc-ng >=12 - - libsodium >=1.0.18,<1.0.19.0a0 - - libstdcxx-ng >=12 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - zeromq >=4.3.5,<4.4.0a0 - license: BSD-3-Clause AND LGPL-3.0-or-later - size: 536511 - timestamp: 1701783341090 -- kind: conda - name: pyzmq - version: 25.1.2 - build: py311h6727e71_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py311h6727e71_0.conda - sha256: 684dc254a778600fb4ce31d6e3a82f18bf3a2779d71b06d237e76357dda8be9e - md5: c0ab7687c09ec2c12d4110c2d5ba7050 - depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - libsodium >=1.0.18,<1.0.19.0a0 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - zeromq >=4.3.5,<4.4.0a0 - license: BSD-3-Clause AND LGPL-3.0-or-later - size: 501598 - timestamp: 1701783698571 -- kind: conda - name: pyzmq - version: 25.1.2 - build: py311h889d6d6_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py311h889d6d6_0.conda - sha256: a8cb598edd68b3d2ca88cd2cdbc60c9180a392c393dd58aaf25e9897697d28d3 - md5: 241fde77a74bd223562662af26f4828b - depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - libsodium >=1.0.18,<1.0.19.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - zeromq >=4.3.5,<4.4.0a0 - license: BSD-3-Clause AND LGPL-3.0-or-later - size: 495677 - timestamp: 1701783560340 + - yaml >=0.2.5,<0.3.0a0 + license: MIT + license_family: MIT + size: 196583 + timestamp: 1695373632212 - kind: conda - name: pyzmq - version: 25.1.2 - build: py311h9250fbb_0 + name: pyyaml + version: 6.0.1 + build: py312he70551f_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py311h9250fbb_0.conda - sha256: f33f21226e4b0146727419a4bcf5ddcc06ea8544ea3895fcfd036069bec5e610 - md5: 9a0376e721950ec687fc53f7e8a9582f + url: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda + sha256: a72fa8152791b4738432f270e70b3a9a4d583ef059a78aa1c62f4b4ab7b15494 + md5: f91e0baa89ba21166916624ba7bfb422 depends: - - libsodium >=1.0.18,<1.0.19.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 + - python >=3.12.0rc3,<3.13.0a0 + - python_abi 3.12.* *_cp312 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 - - zeromq >=4.3.5,<4.3.6.0a0 - license: BSD-3-Clause AND LGPL-3.0-or-later - size: 490973 - timestamp: 1701783719678 + - yaml >=0.2.5,<0.3.0a0 + license: MIT + license_family: MIT + size: 167932 + timestamp: 1695374097139 - kind: conda name: pyzmq version: 25.1.2 @@ -32848,540 +29316,6 @@ packages: license: LGPL-2.1-only size: 789712 timestamp: 1704858714486 -- kind: conda - name: qgis - version: 3.36.0 - build: py310h087f9aa_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py310h087f9aa_3.conda - sha256: f0c52bea30ee67cb582365aae3dd912471d520a1ad28f619ad201581a8dcd512 - md5: f0e1e11b1b1194c2a33f6db1ccddb8b6 - depends: - - __osx >=10.13 - - exiv2 >=0.28.2,<0.29.0a0 - - future - - gdal - - geos >=3.12.1,<3.12.2.0a0 - - gsl >=2.7,<2.8.0a0 - - httplib2 - - icu >=73.2,<74.0a0 - - jinja2 - - khronos-opencl-icd-loader >=2023.4.17 - - laz-perf - - libcxx >=16 - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 - - libpq >=16.2,<17.0a0 - - libprotobuf >=4.25.3,<4.25.4.0a0 - - libspatialindex >=1.9.3,<1.9.4.0a0 - - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 - - libtasn1 >=4.19.0,<5.0a0 - - libzip >=1.10.1,<2.0a0 - - markupsafe - - mock - - nose2 - - owslib - - pdal >=2.6.2,<2.7.0a0 - - plotly - - postgresql - - proj >=9.3.1,<9.3.2.0a0 - - psycopg2 - - pygments - - pyproj - - pyqt >=5.15.9,<5.16.0a0 - - pyqt5-sip - - pyqtwebkit - - python >=3.10,<3.11.0a0 - - python-dateutil - - python_abi 3.10.* *_cp310 - - pytz - - pyyaml - - qca - - qjson - - qscintilla2 - - qt-main >=5.15.8,<5.16.0a0 - - qtkeychain >=0.14.2,<0.15.0a0 - - qtwebkit - - qwt >=6.2.0,<6.3.0a0 - - requests - - sip >=6.7.12,<6.8.0a0 - - six - - sqlite - - yaml - constrains: - - __osx >=10.15 - license: GPL-2.0-only - license_family: GPL - size: 73964136 - timestamp: 1709867069868 -- kind: conda - name: qgis - version: 3.36.0 - build: py310h5ca54a3_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py310h5ca54a3_3.conda - sha256: ab8d600cef4926a07ed2e6382f2c05c8f600d1e9b3dd335350dab9d76aad1119 - md5: 18f79b9b0a12c9f13e955e4c9e00efff - depends: - - exiv2 >=0.28.2,<0.29.0a0 - - future - - gdal - - geos >=3.12.1,<3.12.2.0a0 - - gsl >=2.7,<2.8.0a0 - - httplib2 - - icu >=73.2,<74.0a0 - - jinja2 - - laz-perf - - libexpat >=2.6.1,<3.0a0 - - libgcc-ng >=12 - - libgdal >=3.8.1,<3.9.0a0 - - libpq >=16.2,<17.0a0 - - libprotobuf >=4.25.3,<4.25.4.0a0 - - libspatialindex >=1.9.3,<1.9.4.0a0 - - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 - - libstdcxx-ng >=12 - - libzip >=1.10.1,<2.0a0 - - markupsafe - - mock - - nose2 - - ocl-icd >=2.3.2,<3.0a0 - - owslib - - pdal >=2.6.2,<2.7.0a0 - - plotly - - postgresql - - proj >=9.3.1,<9.3.2.0a0 - - psycopg2 - - pygments - - pyproj - - pyqt >=5.15.9,<5.16.0a0 - - pyqt5-sip - - pyqtwebkit - - python >=3.10,<3.11.0a0 - - python-dateutil - - python_abi 3.10.* *_cp310 - - pytz - - pyyaml - - qca - - qjson - - qscintilla2 - - qt-main >=5.15.8,<5.16.0a0 - - qtkeychain >=0.14.2,<0.15.0a0 - - qtwebkit - - qwt >=6.2.0,<6.3.0a0 - - requests - - sip >=6.7.12,<6.8.0a0 - - six - - sqlite - - yaml - license: GPL-2.0-only - license_family: GPL - size: 93284517 - timestamp: 1709860676822 -- kind: conda - name: qgis - version: 3.36.0 - build: py310h9c043aa_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py310h9c043aa_3.conda - sha256: 6dca644487a32a0f5486d22b951da8206735c6f7d7a1c14d5516d910df9ea1d7 - md5: 851c731b9477c68dad18ecec65badb88 - depends: - - exiv2 >=0.28.2,<0.29.0a0 - - future - - gdal - - geos >=3.12.1,<3.12.2.0a0 - - gsl >=2.7,<2.8.0a0 - - httplib2 - - icu >=73.2,<74.0a0 - - jinja2 - - khronos-opencl-icd-loader >=2023.4.17 - - laz-perf - - libcxx >=16 - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 - - libpq >=16.2,<17.0a0 - - libprotobuf >=4.25.3,<4.25.4.0a0 - - libspatialindex >=1.9.3,<1.9.4.0a0 - - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 - - libtasn1 >=4.19.0,<5.0a0 - - libzip >=1.10.1,<2.0a0 - - markupsafe - - mock - - nose2 - - owslib - - pdal >=2.6.2,<2.7.0a0 - - plotly - - postgresql - - proj >=9.3.1,<9.3.2.0a0 - - psycopg2 - - pygments - - pyproj - - pyqt >=5.15.9,<5.16.0a0 - - pyqt5-sip - - pyqtwebkit - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python-dateutil - - python_abi 3.10.* *_cp310 - - pytz - - pyyaml - - qca - - qjson - - qscintilla2 - - qt-main >=5.15.8,<5.16.0a0 - - qtkeychain >=0.14.2,<0.15.0a0 - - qtwebkit - - qwt >=6.2.0,<6.3.0a0 - - requests - - sip >=6.7.12,<6.8.0a0 - - six - - sqlite - - yaml - constrains: - - __osx >=11.0 - license: GPL-2.0-only - license_family: GPL - size: 72475892 - timestamp: 1709869009031 -- kind: conda - name: qgis - version: 3.36.0 - build: py310hcafc9b4_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py310hcafc9b4_3.conda - sha256: 2dbcbbcd14f6864f2632489b4111d3e88933ccc5d54f7e7cc60fc4c1bd1e3e7c - md5: bd0bf42addb99b979900ac4190d8fe76 - depends: - - exiv2 >=0.28.2,<0.29.0a0 - - future - - gdal - - geos >=3.12.1,<3.12.2.0a0 - - gsl >=2.7,<2.8.0a0 - - httplib2 - - icu >=73.2,<74.0a0 - - jinja2 - - khronos-opencl-icd-loader >=2023.4.17 - - laz-perf - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 - - libpq >=16.2,<17.0a0 - - libprotobuf >=4.25.3,<4.25.4.0a0 - - libspatialindex >=1.9.3,<1.9.4.0a0 - - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 - - libzip >=1.10.1,<2.0a0 - - markupsafe - - mock - - nose2 - - owslib - - pdal >=2.6.2,<2.7.0a0 - - plotly - - postgresql - - proj >=9.3.1,<9.3.2.0a0 - - psycopg2 - - pygments - - pyproj - - pyqt >=5.15.9,<5.16.0a0 - - pyqt5-sip - - pyqtwebkit - - python >=3.10,<3.11.0a0 - - python-dateutil - - python_abi 3.10.* *_cp310 - - pytz - - pyyaml - - qca - - qjson - - qscintilla2 - - qt-main >=5.15.8,<5.16.0a0 - - qtkeychain >=0.14.2,<0.15.0a0 - - qtwebkit - - qwt >=6.2.0,<6.3.0a0 - - requests - - sip >=6.7.12,<6.8.0a0 - - six - - sqlite - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - yaml - license: GPL-2.0-only - license_family: GPL - size: 70860677 - timestamp: 1709866399896 -- kind: conda - name: qgis - version: 3.36.0 - build: py311h64324c1_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py311h64324c1_3.conda - sha256: d03a4d2cb3cbe7dca3085d2197a08bb9daf813ac0db3bdcba6ca767717d8ed43 - md5: adf21f2e08e848a8ee6764fb33b75033 - depends: - - exiv2 >=0.28.2,<0.29.0a0 - - future - - gdal - - geos >=3.12.1,<3.12.2.0a0 - - gsl >=2.7,<2.8.0a0 - - httplib2 - - icu >=73.2,<74.0a0 - - jinja2 - - khronos-opencl-icd-loader >=2023.4.17 - - laz-perf - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 - - libpq >=16.2,<17.0a0 - - libprotobuf >=4.25.3,<4.25.4.0a0 - - libspatialindex >=1.9.3,<1.9.4.0a0 - - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 - - libzip >=1.10.1,<2.0a0 - - markupsafe - - mock - - nose2 - - owslib - - pdal >=2.6.2,<2.7.0a0 - - plotly - - postgresql - - proj >=9.3.1,<9.3.2.0a0 - - psycopg2 - - pygments - - pyproj - - pyqt >=5.15.9,<5.16.0a0 - - pyqt5-sip - - pyqtwebkit - - python >=3.11,<3.12.0a0 - - python-dateutil - - python_abi 3.11.* *_cp311 - - pytz - - pyyaml - - qca - - qjson - - qscintilla2 - - qt-main >=5.15.8,<5.16.0a0 - - qtkeychain >=0.14.2,<0.15.0a0 - - qtwebkit - - qwt >=6.2.0,<6.3.0a0 - - requests - - sip >=6.7.12,<6.8.0a0 - - six - - sqlite - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - yaml - license: GPL-2.0-only - license_family: GPL - size: 72686189 - timestamp: 1709864670825 -- kind: conda - name: qgis - version: 3.36.0 - build: py311h6b0c79d_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py311h6b0c79d_3.conda - sha256: d032201b1b9afd17ac3b6b1107515fb532e080ea17b99b2d42e3fd1c7313c46b - md5: 7664fb1c9637877b92b3a6d07189d212 - depends: - - exiv2 >=0.28.2,<0.29.0a0 - - future - - gdal - - geos >=3.12.1,<3.12.2.0a0 - - gsl >=2.7,<2.8.0a0 - - httplib2 - - icu >=73.2,<74.0a0 - - jinja2 - - laz-perf - - libexpat >=2.6.1,<3.0a0 - - libgcc-ng >=12 - - libgdal >=3.8.1,<3.9.0a0 - - libpq >=16.2,<17.0a0 - - libprotobuf >=4.25.3,<4.25.4.0a0 - - libspatialindex >=1.9.3,<1.9.4.0a0 - - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 - - libstdcxx-ng >=12 - - libzip >=1.10.1,<2.0a0 - - markupsafe - - mock - - nose2 - - ocl-icd >=2.3.2,<3.0a0 - - owslib - - pdal >=2.6.2,<2.7.0a0 - - plotly - - postgresql - - proj >=9.3.1,<9.3.2.0a0 - - psycopg2 - - pygments - - pyproj - - pyqt >=5.15.9,<5.16.0a0 - - pyqt5-sip - - pyqtwebkit - - python >=3.11,<3.12.0a0 - - python-dateutil - - python_abi 3.11.* *_cp311 - - pytz - - pyyaml - - qca - - qjson - - qscintilla2 - - qt-main >=5.15.8,<5.16.0a0 - - qtkeychain >=0.14.2,<0.15.0a0 - - qtwebkit - - qwt >=6.2.0,<6.3.0a0 - - requests - - sip >=6.7.12,<6.8.0a0 - - six - - sqlite - - yaml - license: GPL-2.0-only - license_family: GPL - size: 93233296 - timestamp: 1709861643808 -- kind: conda - name: qgis - version: 3.36.0 - build: py311h8bda84b_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py311h8bda84b_3.conda - sha256: c71eea996293bd5c9e4480cb75a228a8fefdc1c9f275aecadd23474fc5da5544 - md5: aeea0fe397970d28894e9b3c63de72fb - depends: - - exiv2 >=0.28.2,<0.29.0a0 - - future - - gdal - - geos >=3.12.1,<3.12.2.0a0 - - gsl >=2.7,<2.8.0a0 - - httplib2 - - icu >=73.2,<74.0a0 - - jinja2 - - khronos-opencl-icd-loader >=2023.4.17 - - laz-perf - - libcxx >=16 - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 - - libpq >=16.2,<17.0a0 - - libprotobuf >=4.25.3,<4.25.4.0a0 - - libspatialindex >=1.9.3,<1.9.4.0a0 - - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 - - libtasn1 >=4.19.0,<5.0a0 - - libzip >=1.10.1,<2.0a0 - - markupsafe - - mock - - nose2 - - owslib - - pdal >=2.6.2,<2.7.0a0 - - plotly - - postgresql - - proj >=9.3.1,<9.3.2.0a0 - - psycopg2 - - pygments - - pyproj - - pyqt >=5.15.9,<5.16.0a0 - - pyqt5-sip - - pyqtwebkit - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python-dateutil - - python_abi 3.11.* *_cp311 - - pytz - - pyyaml - - qca - - qjson - - qscintilla2 - - qt-main >=5.15.8,<5.16.0a0 - - qtkeychain >=0.14.2,<0.15.0a0 - - qtwebkit - - qwt >=6.2.0,<6.3.0a0 - - requests - - sip >=6.7.12,<6.8.0a0 - - six - - sqlite - - yaml - constrains: - - __osx >=11.0 - license: GPL-2.0-only - license_family: GPL - size: 72214706 - timestamp: 1709867818416 -- kind: conda - name: qgis - version: 3.36.0 - build: py311hf0b2d31_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py311hf0b2d31_3.conda - sha256: 46d5b9b93642479692c4f3c7a05b11b205b2990453ebc9142120d001b7ede89d - md5: 0f51d6589b8c1fb8f0aebd9e58c4044d - depends: - - __osx >=10.13 - - exiv2 >=0.28.2,<0.29.0a0 - - future - - gdal - - geos >=3.12.1,<3.12.2.0a0 - - gsl >=2.7,<2.8.0a0 - - httplib2 - - icu >=73.2,<74.0a0 - - jinja2 - - khronos-opencl-icd-loader >=2023.4.17 - - laz-perf - - libcxx >=16 - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 - - libpq >=16.2,<17.0a0 - - libprotobuf >=4.25.3,<4.25.4.0a0 - - libspatialindex >=1.9.3,<1.9.4.0a0 - - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 - - libtasn1 >=4.19.0,<5.0a0 - - libzip >=1.10.1,<2.0a0 - - markupsafe - - mock - - nose2 - - owslib - - pdal >=2.6.2,<2.7.0a0 - - plotly - - postgresql - - proj >=9.3.1,<9.3.2.0a0 - - psycopg2 - - pygments - - pyproj - - pyqt >=5.15.9,<5.16.0a0 - - pyqt5-sip - - pyqtwebkit - - python >=3.11,<3.12.0a0 - - python-dateutil - - python_abi 3.11.* *_cp311 - - pytz - - pyyaml - - qca - - qjson - - qscintilla2 - - qt-main >=5.15.8,<5.16.0a0 - - qtkeychain >=0.14.2,<0.15.0a0 - - qtwebkit - - qwt >=6.2.0,<6.3.0a0 - - requests - - sip >=6.7.12,<6.8.0a0 - - six - - sqlite - - yaml - constrains: - - __osx >=10.15 - license: GPL-2.0-only - license_family: GPL - size: 75365891 - timestamp: 1709868626806 - kind: conda name: qgis version: 3.36.0 @@ -33785,168 +29719,6 @@ packages: license: LGPL-2.1-only size: 59486 timestamp: 1686558142396 -- kind: conda - name: qscintilla2 - version: 2.14.1 - build: py310h37eb29e_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py310h37eb29e_0.conda - sha256: f02b69bf579a70ae8f5e202bbf0b32ca80b645bc08ed3d2b455e1f11b096be3e - md5: a46094e78a8c5b8d27563cd4d6048bee - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - license: GPL-3.0-or-later - license_family: GPL - size: 1707302 - timestamp: 1695486405332 -- kind: conda - name: qscintilla2 - version: 2.14.1 - build: py310hcf420b7_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py310hcf420b7_0.conda - sha256: 1cf7031b2d14abd52d6c43923e0db4e16149ab7cde2ff5c95345134f1de1433b - md5: 3eed8076cd42d57877158cbb6907f10f - depends: - - libcxx >=15.0.7 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - license: GPL-3.0-or-later - license_family: GPL - size: 1259964 - timestamp: 1695486775231 -- kind: conda - name: qscintilla2 - version: 2.14.1 - build: py310hd473f0f_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py310hd473f0f_0.conda - sha256: 02bedc2f8ed5a88db114e4fe12fcec2cf4f8159054d5e29bafc92ff44691f779 - md5: ba1fe3bfbfcfff06848ecabba2df9195 - depends: - - libcxx >=15.0.7 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - license: GPL-3.0-or-later - license_family: GPL - size: 1327018 - timestamp: 1695486627210 -- kind: conda - name: qscintilla2 - version: 2.14.1 - build: py310he49db7d_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py310he49db7d_0.conda - sha256: 3e86a2b8c11d1284d12a61595148e8081c220821f4362d05fa4a013455ee6c4c - md5: 52310582b2202e1e139a410972a86b59 - depends: - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: GPL-3.0-or-later - license_family: GPL - size: 1273653 - timestamp: 1695486768771 -- kind: conda - name: qscintilla2 - version: 2.14.1 - build: py311h14ede98_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py311h14ede98_0.conda - sha256: 0d76b2d46fc08d04e999a8281325b17c172022fafdb5dac39fc8aa715233a89b - md5: a04602fc5f7bd3646199db03245b2e5c - depends: - - libcxx >=15.0.7 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - license: GPL-3.0-or-later - license_family: GPL - size: 1257709 - timestamp: 1695486575127 -- kind: conda - name: qscintilla2 - version: 2.14.1 - build: py311h4c6dc46_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py311h4c6dc46_0.conda - sha256: 0ed3a91fcd25a49a59c7b9dd9edcaf75a293028355e48cb9a8a796973d3b3117 - md5: b79f1ea8ba7db0f42714110e91856d70 - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - license: GPL-3.0-or-later - license_family: GPL - size: 1710660 - timestamp: 1695486377934 -- kind: conda - name: qscintilla2 - version: 2.14.1 - build: py311h5a77453_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py311h5a77453_0.conda - sha256: 8b823806bfe0cd1e60f19ccda0aa9d8f37fdd1faa23e7c12a89986a97518c464 - md5: e7ce3f0a344f3a4177e52f52e884d77b - depends: - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: GPL-3.0-or-later - license_family: GPL - size: 1282124 - timestamp: 1695486843852 -- kind: conda - name: qscintilla2 - version: 2.14.1 - build: py311hf9676c4_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py311hf9676c4_0.conda - sha256: ec4d27e36d8270fb3d73cf9c7bc796737aa425dcb305f5cc49435fbaee638a88 - md5: 79ac9e83cbbc84987a25d7d25a0b4ee2 - depends: - - libcxx >=15.0.7 - - pyqt >=5.15.9,<5.16.0a0 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - qt-main >=5.15.8,<5.16.0a0 - - sip >=6.7.11,<6.8.0a0 - license: GPL-3.0-or-later - license_family: GPL - size: 1322046 - timestamp: 1695486615881 - kind: conda name: qscintilla2 version: 2.14.1 @@ -34794,144 +30566,6 @@ packages: license_family: MIT size: 184347 timestamp: 1709150578093 -- kind: conda - name: rpds-py - version: 0.18.0 - build: py310h54baaa9_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py310h54baaa9_0.conda - sha256: 06a0f78a6e01c2b1e317fc8e9090c342b592bb377c6ee0ebe048aafe0e186755 - md5: f8dfcbe1b680ecd6789f5b811df2559c - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - constrains: - - __osx >=10.12 - license: MIT - license_family: MIT - size: 299696 - timestamp: 1707923332485 -- kind: conda - name: rpds-py - version: 0.18.0 - build: py310h87d50f1_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py310h87d50f1_0.conda - sha256: 0227043dc8a9d5f737c36f7653f9b4476e47e0c60c7e67012dd72fe5a7842fb4 - md5: 271cf897747ab1b8ec17ee9659c073ea - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 202632 - timestamp: 1707923848209 -- kind: conda - name: rpds-py - version: 0.18.0 - build: py310hcb5633a_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py310hcb5633a_0.conda - sha256: 180f734f14402a3605cc0d0a70dd52539c87ba76337da6eb73ebf603c8405c6b - md5: eca3962963d1de0a4d13572ba943b61d - depends: - - libgcc-ng >=12 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 915667 - timestamp: 1707922907509 -- kind: conda - name: rpds-py - version: 0.18.0 - build: py310hf632f72_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py310hf632f72_0.conda - sha256: ba2404149c4ec942f6f81493f7154ab9d267335c73ae65bfc795808e5bb4917d - md5: cd1b172bce3f30ef2d3b2d01a8cc296a - depends: - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - constrains: - - __osx >=11.0 - license: MIT - license_family: MIT - size: 292751 - timestamp: 1707925657411 -- kind: conda - name: rpds-py - version: 0.18.0 - build: py311h46250e7_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py311h46250e7_0.conda - sha256: 37d8f344b080ddceb5f1c6224049c2123e65c5d10eddd5b6e6284c8ac6044bb1 - md5: 688a1190531dc4e8c00e25d0d1de4135 - depends: - - libgcc-ng >=12 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 915849 - timestamp: 1707923007711 -- kind: conda - name: rpds-py - version: 0.18.0 - build: py311ha958965_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py311ha958965_0.conda - sha256: 6734fd0acdd0aecd2031203cd0c1a14daceeae1f7d7e0ddfc480eaa4d652a26d - md5: a09d4882adda9bf36446f5c571738fef - depends: - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - constrains: - - __osx >=11.0 - license: MIT - license_family: MIT - size: 292610 - timestamp: 1707923327146 -- kind: conda - name: rpds-py - version: 0.18.0 - build: py311hc37eb10_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py311hc37eb10_0.conda - sha256: 46766bb9b8df78ef7c8125f5a51f2cd77ddfbdc622a7db1a5c19c41b8d034965 - md5: 9851ab425910f099cc2d512996fc01ce - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 203072 - timestamp: 1707923793999 -- kind: conda - name: rpds-py - version: 0.18.0 - build: py311hd64b9fd_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py311hd64b9fd_0.conda - sha256: 4183fe5ebf84a707efe71abcb6e6f78646483dcb1a6958bf182eca771196a7d2 - md5: 18f9280b452bd1557e98147d53cd4276 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - constrains: - - __osx >=10.12 - license: MIT - license_family: MIT - size: 299213 - timestamp: 1707923391834 - kind: conda name: rpds-py version: 0.18.0 @@ -35196,150 +30830,6 @@ packages: license_family: MIT size: 62265 timestamp: 1705698063894 -- kind: conda - name: ruff - version: 0.3.3 - build: py310h298983d_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py310h298983d_0.conda - sha256: 9dc5a727de41b206e4bcefbe545116742bed4a5e2ce928adb4a4a04d01c29efb - md5: df443c728383958c100b9a1690a48e25 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 6138481 - timestamp: 1710601512957 -- kind: conda - name: ruff - version: 0.3.3 - build: py310h3d77a66_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py310h3d77a66_0.conda - sha256: a897e4e3c2f770202e2c30dbe807d25893b66b5208dff8179b0ea2e42b951962 - md5: bc5840fe21ebf5f27505852b7d748337 - depends: - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 6192888 - timestamp: 1710600341860 -- kind: conda - name: ruff - version: 0.3.3 - build: py310h81561d7_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py310h81561d7_0.conda - sha256: 8097f6fbb580c3b2546f92e7d6d9f07e9054b52bd04e68190e774532cca365b7 - md5: 0a2265c30d419ed20312febd19affa4a - depends: - - libcxx >=16 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - constrains: - - __osx >=11.0 - license: MIT - license_family: MIT - size: 5717383 - timestamp: 1710601304765 -- kind: conda - name: ruff - version: 0.3.3 - build: py310hdac29b7_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py310hdac29b7_0.conda - sha256: 22e5f17e45ed47e08ea5d51b6c940a198eb884a8776058100af5afb7e4192af9 - md5: 62fd105192edec42ed433af42cc1e906 - depends: - - libcxx >=16 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - constrains: - - __osx >=10.12 - license: MIT - license_family: MIT - size: 6000685 - timestamp: 1710601019345 -- kind: conda - name: ruff - version: 0.3.3 - build: py311h7145743_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py311h7145743_0.conda - sha256: eb2b4150e0881d1a703aca15ca7e57b30982ddf1619fcc4d0986c19e6ddf78e4 - md5: caae0a8b9fcd75f375a4ff11c810f6f0 - depends: - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 6193783 - timestamp: 1710600325706 -- kind: conda - name: ruff - version: 0.3.3 - build: py311h8c97afb_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py311h8c97afb_0.conda - sha256: a77375846b9cebad58cd63dfbd90129853982c83bb5a1e69f2bd33b9690ba83d - md5: 60e4d63be83009511ae20427d4864e79 - depends: - - libcxx >=16 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - constrains: - - __osx >=11.0 - license: MIT - license_family: MIT - size: 5706493 - timestamp: 1710601112769 -- kind: conda - name: ruff - version: 0.3.3 - build: py311hc14472d_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py311hc14472d_0.conda - sha256: 6d59e3d4df96982e06bf536b26bbd7ddeead7e04e2330cd195fac374d6b468e8 - md5: 8cc9168037203691aa9a698f49a15974 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 6131197 - timestamp: 1710601447534 -- kind: conda - name: ruff - version: 0.3.3 - build: py311hfff7943_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py311hfff7943_0.conda - sha256: 7e23e150b9bf4cb65040bbb9ec786d1a67257d5e21ddb1380ee2974430f20980 - md5: aa27ca9ed16bbadfa8ae7d6b2df7c827 - depends: - - libcxx >=16 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - constrains: - - __osx >=10.12 - license: MIT - license_family: MIT - size: 5996055 - timestamp: 1710601448645 - kind: conda name: ruff version: 0.3.3 @@ -35994,44 +31484,6 @@ packages: license_family: BSD size: 17083471 timestamp: 1706042601027 -- kind: conda - name: secretstorage - version: 3.3.3 - build: py310hff52083_2 - build_number: 2 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py310hff52083_2.conda - sha256: a2b7f56b07b6e95bd05fd47ebe5b2cfc8af70ccd04994623f6508e90d3b5f857 - md5: 4ccc40bc490af727cfbf3e7f0289d9bd - depends: - - cryptography - - dbus - - jeepney >=0.6 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: BSD-3-Clause - license_family: BSD - size: 27313 - timestamp: 1695551879536 -- kind: conda - name: secretstorage - version: 3.3.3 - build: py311h38be061_2 - build_number: 2 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py311h38be061_2.conda - sha256: 45e7d85a3663993e8bffdb7c6040561923c848e3262228b163042663caa4485e - md5: 30a57eaa8e72cb0c2c84d6d7db32010c - depends: - - cryptography - - dbus - - jeepney >=0.6 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: BSD-3-Clause - license_family: BSD - size: 32421 - timestamp: 1695551942931 - kind: conda name: secretstorage version: 3.3.3 @@ -36356,26 +31808,6 @@ packages: license_family: GPL size: 504474 timestamp: 1697300911843 -- kind: conda - name: sip - version: 6.7.12 - build: py310had63691_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py310had63691_0.conda - sha256: a8d0f356f553f5f8582a039c089dd4bbe66cefc959b91c15bae475e9c9ea4dd2 - md5: eaeef8f131a49dc1dba755c7a71b3878 - depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - packaging - - ply - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - tomli - license: GPL-3.0-only - license_family: GPL - size: 484574 - timestamp: 1697300765748 - kind: conda name: sip version: 6.7.12 @@ -36396,27 +31828,6 @@ packages: license_family: GPL size: 494293 timestamp: 1697300616950 -- kind: conda - name: sip - version: 6.7.12 - build: py310hd5a4765_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py310hd5a4765_0.conda - sha256: a7cd9527162aa4dc78ccfaac69f8c46afafb5d79d97d4e2cae5aaa8bc81fa112 - md5: f30b7fe495b5144db1a74179cee86f94 - depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - packaging - - ply - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - tomli - license: GPL-3.0-only - license_family: GPL - size: 480126 - timestamp: 1697300811014 - kind: conda name: sip version: 6.7.12 @@ -36458,47 +31869,6 @@ packages: license_family: GPL size: 585197 timestamp: 1697300605264 -- kind: conda - name: sip - version: 6.7.12 - build: py311hbaf5611_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/sip-6.7.12-py311hbaf5611_0.conda - sha256: de207b35783f439e8796bc5cd3421007b79e1a0f8395d5e864bcb1479a2b422f - md5: a7c9cb9dbbb0f5d2052ccf5f52d793b7 - depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - packaging - - ply - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - tomli - license: GPL-3.0-only - license_family: GPL - size: 570552 - timestamp: 1697300795499 -- kind: conda - name: sip - version: 6.7.12 - build: py311hd39e593_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/sip-6.7.12-py311hd39e593_0.conda - sha256: b08412ca84bb219a5cec2b12040a42e764a185f784c9e631aa64ff8adf19973f - md5: 1ece78d403bd99aa434d899c287412ef - depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - packaging - - ply - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - tomli - license: GPL-3.0-only - license_family: GPL - size: 573640 - timestamp: 1697300780749 - kind: conda name: sip version: 6.7.12 @@ -37848,158 +33218,6 @@ packages: license_family: BSD size: 6847943 timestamp: 1710357262334 -- kind: conda - name: ukkonen - version: 1.0.1 - build: py310h232114e_4 - build_number: 4 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py310h232114e_4.conda - sha256: e2a988a21eee908c731f9767fa77fb95063cb43f124b4a92bb36c93f0f461ae4 - md5: e20a6c916b53274a2af59810b23d1f4c - depends: - - cffi - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 17149 - timestamp: 1695549987319 -- kind: conda - name: ukkonen - version: 1.0.1 - build: py310h38f39d4_4 - build_number: 4 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py310h38f39d4_4.conda - sha256: 3d668d21ba00d5e8c90c64cfaffc5bccd8b3349f584f1e96c7423f372289227a - md5: d44fc7ee5098e2cf4db125eda63878c6 - depends: - - cffi - - libcxx >=15.0.7 - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 13807 - timestamp: 1695549789224 -- kind: conda - name: ukkonen - version: 1.0.1 - build: py310h88cfcbd_4 - build_number: 4 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py310h88cfcbd_4.conda - sha256: 662d357d36210e7cad2072e5e071b98fc18985ec36293f43139812efc29c6b4b - md5: 9b1aa3d9f02b72f2544ee531bb7ccea9 - depends: - - cffi - - libcxx >=15.0.7 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 13071 - timestamp: 1695549876888 -- kind: conda - name: ukkonen - version: 1.0.1 - build: py310hd41b1e2_4 - build_number: 4 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py310hd41b1e2_4.conda - sha256: 7bcb662f8d8181d77d77605c6e176a5bc6a421025a8969c6d793fe47134285bd - md5: 35e87277fba9944b8a975113538bb5df - depends: - - cffi - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - license: MIT - license_family: MIT - size: 13811 - timestamp: 1695549503728 -- kind: conda - name: ukkonen - version: 1.0.1 - build: py311h005e61a_4 - build_number: 4 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ukkonen-1.0.1-py311h005e61a_4.conda - sha256: ef774047df25201a6425fe1ec194505a3cac9ba02e96953360442f59364d12b3 - md5: d9988836cc20c90e05901ab05962f496 - depends: - - cffi - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 17225 - timestamp: 1695549858085 -- kind: conda - name: ukkonen - version: 1.0.1 - build: py311h5fe6e05_4 - build_number: 4 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ukkonen-1.0.1-py311h5fe6e05_4.conda - sha256: b273782a1277042a54e12411beebd378d2a2a69e503bcf147766e98628e91c91 - md5: 8f750b84128d48dc8376572c5eace61e - depends: - - cffi - - libcxx >=15.0.7 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 13193 - timestamp: 1695549883822 -- kind: conda - name: ukkonen - version: 1.0.1 - build: py311h9547e67_4 - build_number: 4 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py311h9547e67_4.conda - sha256: c2d33e998f637b594632eba3727529171a06eb09896e36aa42f1ebcb03779472 - md5: 586da7df03b68640de14dc3e8bcbf76f - depends: - - cffi - - libgcc-ng >=12 - - libstdcxx-ng >=12 - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 13961 - timestamp: 1695549513130 -- kind: conda - name: ukkonen - version: 1.0.1 - build: py311he4fd1f5_4 - build_number: 4 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ukkonen-1.0.1-py311he4fd1f5_4.conda - sha256: 384fc81a34e248019d43a115386f77859ab63e0e6f12dade486d76359703743f - md5: 5d5ab5c5af32931e03608034f4a5fd75 - depends: - - cffi - - libcxx >=15.0.7 - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 13958 - timestamp: 1695549884615 - kind: conda name: ukkonen version: 1.0.1 @@ -38303,136 +33521,6 @@ packages: license_family: BSD size: 16988 timestamp: 1702511261442 -- kind: conda - name: watchdog - version: 4.0.0 - build: py310h5588dad_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py310h5588dad_0.conda - sha256: 69497e142f91d40a09cfe8480ff67ebea08188c7e6f676e94fad0981694acbe7 - md5: 12c6577d9491ec03f4804ea0bbdb3cb7 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - pyyaml >=3.10 - license: Apache-2.0 - license_family: APACHE - size: 128267 - timestamp: 1707295710584 -- kind: conda - name: watchdog - version: 4.0.0 - build: py310h8c1346e_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py310h8c1346e_0.conda - sha256: 8f095ff7015773fa768fc91d693c1225c969dd788d93d36eede4f6c89654c37c - md5: f4c97ff197585a7cab0b705fd2b89cdb - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - pyyaml >=3.10 - license: Apache-2.0 - license_family: APACHE - size: 119476 - timestamp: 1707295554005 -- kind: conda - name: watchdog - version: 4.0.0 - build: py310hd125d64_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py310hd125d64_0.conda - sha256: 35f32cdcd98f590fc3f684abcc7f9b1666a9c013eb28bd28ff6b57bc5dd6c78f - md5: 07353540467d6318097f13740b260bcf - depends: - - python >=3.10,<3.11.0a0 - - python >=3.10,<3.11.0a0 *_cpython - - python_abi 3.10.* *_cp310 - - pyyaml >=3.10 - license: Apache-2.0 - license_family: APACHE - size: 119902 - timestamp: 1707295659292 -- kind: conda - name: watchdog - version: 4.0.0 - build: py310hff52083_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py310hff52083_0.conda - sha256: 0f6504bdec11fe1cfb0335746a528cbafa94bf47ad0f44b81e48310b36c2ba28 - md5: a29afdf329e36a95c85ae098b9dbb5d9 - depends: - - python >=3.10,<3.11.0a0 - - python_abi 3.10.* *_cp310 - - pyyaml >=3.10 - license: Apache-2.0 - license_family: APACHE - size: 111687 - timestamp: 1707295320785 -- kind: conda - name: watchdog - version: 4.0.0 - build: py311h05b510d_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/watchdog-4.0.0-py311h05b510d_0.conda - sha256: 982e59317c1fe33b5742e189e5b94fa651ddf30356fd6ca2dabe03bd6416a50e - md5: 6db5d6230f3ec3d2dbe6484b2d07379f - depends: - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - - pyyaml >=3.10 - license: Apache-2.0 - license_family: APACHE - size: 147771 - timestamp: 1707295599775 -- kind: conda - name: watchdog - version: 4.0.0 - build: py311h1ea47a8_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/watchdog-4.0.0-py311h1ea47a8_0.conda - sha256: 75cecf1aff137e617d158f792379f6279a6f2fbe43fab94db0ef65eaae849ff8 - md5: 1616721fd923a2b6b550efb6f06b6e62 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - pyyaml >=3.10 - license: Apache-2.0 - license_family: APACHE - size: 157138 - timestamp: 1707295836373 -- kind: conda - name: watchdog - version: 4.0.0 - build: py311h38be061_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/watchdog-4.0.0-py311h38be061_0.conda - sha256: 790bd28b3c970a5887593e9fbb9c6a1895fd0147beb78dfd22d4703855d66f79 - md5: f95ea5c27188e3095b7f12e588151f48 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - pyyaml >=3.10 - license: Apache-2.0 - license_family: APACHE - size: 140182 - timestamp: 1707295343437 -- kind: conda - name: watchdog - version: 4.0.0 - build: py311he4e59c2_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/watchdog-4.0.0-py311he4e59c2_0.conda - sha256: 7899be4a743bdd919c4d1a0b9e8c269871de48635a52facf42d7b9eac08c9aa0 - md5: bb33f5397b8970c29da4d967959ddcb8 - depends: - - python >=3.11,<3.12.0a0 - - python_abi 3.11.* *_cp311 - - pyyaml >=3.10 - license: Apache-2.0 - license_family: APACHE - size: 148769 - timestamp: 1707295444247 - kind: conda name: watchdog version: 4.0.0 diff --git a/pixi.toml b/pixi.toml index d538096ab..7e8ff7331 100644 --- a/pixi.toml +++ b/pixi.toml @@ -14,24 +14,35 @@ repository = "https://github.com/Deltares/Ribasim" [tasks] # Installation -install-julia = "juliaup add 1.10.0 && juliaup default 1.10.0" install-ribasim-python = "pip install --no-build-isolation --no-deps --disable-pip-version-check --editable python/ribasim" install-ribasim-api = "pip install --no-build-isolation --no-deps --disable-pip-version-check --editable python/ribasim_api" install-ribasim-testmodels = "pip install --no-build-isolation --no-deps --disable-pip-version-check --editable python/ribasim_testmodels" +install-python = { depends_on = [ + "install-ribasim-python", + "install-ribasim-api", + "install-ribasim-testmodels", +] } +# Tests +test-ribasim-python = "pytest --numprocesses=4 python/ribasim/tests" +test-ribasim-python-cov = "pytest --numprocesses=4 --cov=ribasim --cov-report=xml python/ribasim/tests" +test-ribasim-api = "pytest --basetemp=python/ribasim_api/tests/temp --junitxml=report.xml python/ribasim_api/tests" + +[feature.dev.tasks] +# Installation +install-julia = "juliaup add 1.10.0 && juliaup default 1.10.0" install-pre-commit = "pre-commit install" install-ci = { depends_on = [ + "install-python", "install-julia", "update-registry-julia", - "install-ribasim-python", - "install-ribasim-api", - "install-ribasim-testmodels", + ] } install = { depends_on = [ "install-ci", "install-qgis-plugins", "install-pre-commit", ] } -# Instantiate +# Julia update-registry-julia = "julia --eval='using Pkg; Registry.update()'" update-manifest-julia = "julia --project --eval='using Pkg; Pkg.update()'" instantiate-julia = "julia --project --eval='using Pkg; Pkg.instantiate()'" @@ -80,11 +91,7 @@ build = { "cmd" = "julia --project build.jl --app --lib", cwd = "build", depends "initialize-julia", ] } remove-artifacts = "julia --eval 'rm(joinpath(Base.DEPOT_PATH[1], \"artifacts\"), force=true, recursive=true)'" - -# Test -test-ribasim-python = "pytest --numprocesses=4 python/ribasim/tests" -test-ribasim-python-cov = "pytest --numprocesses=4 --cov=ribasim --cov-report=xml python/ribasim/tests" -test-ribasim-api = "pytest --basetemp=python/ribasim_api/tests/temp --junitxml=report.xml python/ribasim_api/tests" +# Tests test-ribasim-cli = "pytest --numprocesses=4 --basetemp=build/tests/temp --junitxml=report.xml build/tests" test-ribasim-core = { cmd = "julia --project=core --eval 'using Pkg; Pkg.test()'", depends_on = [ "generate-testmodels", @@ -95,8 +102,9 @@ test-ribasim-core-cov = { cmd = "julia --project=core --eval 'using Pkg; Pkg.tes generate-testmodels = "python utils/generate-testmodels.py" tests = { depends_on = ["lint", "test-ribasim-python", "test-ribasim-core"] } # Codegen -generate-python = { cmd = "julia --project utils/gen_python.jl && ruff format python/ribasim/ribasim/schemas.py" } -codegen = { depends_on = ["initialize-julia", "generate-python"] } +codegen = { cmd = "julia --project utils/gen_python.jl && ruff format python/ribasim/ribasim/schemas.py", depends_on = [ + "initialize-julia", +] } # Publish build-ribasim-python-wheel = { cmd = "rm --recursive --force dist && python -m build && twine check dist/*", cwd = "python/ribasim" } build-ribasim-api-wheel = { cmd = "rm --recursive --force dist && python -m build && twine check dist/*", cwd = "python/ribasim_api" } @@ -142,43 +150,45 @@ ribasim-core-testmodels = { cmd = "julia --project utils/testmodelrun.jl", depen github-release = "python utils/github-release.py" [dependencies] -build = "*" geopandas = "*" -gh = "*" hatchling = "*" -juliaup = "*" -jupyterlab = "*" -libgdal-arrow-parquet = "*" matplotlib = "*" -mypy = "*" netCDF4 = "*" -pandas = "==2.1.4" # Avoid excessive deprecation warnings from pandera (#984) +numpy = "*" +pandas = "==2.1.4" # Avoid excessive deprecation warnings from pandera (#984) pandas-stubs = "*" pandera = "*" pip = "*" -platformdirs = "*" -pre-commit = "*" pyarrow = "*" pydantic = ">=2" pyogrio = "*" -pyqt-stubs = "*" pytest = "*" pytest-cov = "*" pytest-xdist = "*" python = ">=3.10" +shapely = ">=2.0" +tomli = "*" +tomli-w = "*" +xmipy = "*" +xugrid = "*" +xarray = "*" + + +[feature.dev.dependencies] +build = "*" +gh = "*" +juliaup = "*" +jupyterlab = "*" +libgdal-arrow-parquet = "*" +mypy = "*" +pre-commit = "*" +pyqt-stubs = "*" qgis = "*" qgis-plugin-manager = "*" quarto = "*" quartodoc = "*" ruff = "*" -shapely = ">=2.0" -tomli = "*" -tomli-w = "*" twine = "*" -typing-extensions = ">=4.6" -xarray = "*" -xmipy = "*" -xugrid = "*" [feature.py312.dependencies] python = "3.12.*" @@ -190,9 +200,11 @@ python = "3.11.*" python = "3.10.*" [environments] -py312=["py312"] -py311=["py311"] -py310=["py310"] +default = { features = ["py312"], solve-group = "py312" } +dev = { features = ["py312", "dev"], solve-group = "py312" } +py312 = { features = ["py312"], solve-group = "py312" } +py311 = ["py311"] +py310 = ["py310"] [activation] scripts = ["utils/env_setup.sh"] From 0c02f9a356fd7e9db3bec53b598c37d5337ee270 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Tue, 26 Mar 2024 12:08:56 +0100 Subject: [PATCH 011/158] Add `model.to_xugrid()` (#1314) This adds an optional dependency on `xugrid`, to facilitate creating UGRID netCDFs, to support #969. For now I did not yet add any results to the dataset, but this could be done as a follow-up. This is just the network. --------- Co-authored-by: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> --- python/ribasim/ribasim/model.py | 62 ++++++++++++++++++++++++++++++ python/ribasim/ribasim/utils.py | 10 +++++ python/ribasim/tests/test_model.py | 13 +++++++ 3 files changed, 85 insertions(+) diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index 20064689d..ef6d0f315 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -47,6 +47,12 @@ FileModel, context_file_loading, ) +from ribasim.utils import MissingOptionalModule + +try: + import xugrid +except ImportError: + xugrid = MissingOptionalModule("xugrid") class Model(FileModel): @@ -342,3 +348,59 @@ def plot(self, ax=None, indicate_subnetworks: bool = True) -> Any: ax.legend(handles, labels, loc="lower left", bbox_to_anchor=(1, 0.5)) return ax + + def to_xugrid(self) -> xugrid.UgridDataset: + """Convert the network to a xugrid.UgridDataset.""" + node_df = self.node_table().df + + # This will need to be adopted for locally unique node IDs, + # otherwise the `node_lookup` with `argsort` is not correct. + if not node_df.node_id.is_unique: + raise ValueError("node_id must be unique") + node_df.sort_values("node_id", inplace=True) + + edge_df = self.edge.df.copy() + # We assume only the flow network is of interest. + edge_df = edge_df[edge_df.edge_type == "flow"] + + node_id = node_df.node_id.to_numpy() + from_node_id = edge_df.from_node_id.to_numpy() + to_node_id = edge_df.to_node_id.to_numpy() + + # from node_id to the node_dim index + node_lookup = pd.Series( + index=node_id, + data=node_id.argsort().astype(np.int32), + name="node_index", + ) + + if node_df.crs is None: + # TODO: can be removed when CRS is required, #1254 + projected = False + else: + projected = node_df.crs.is_projected + + grid = xugrid.Ugrid1d( + node_x=node_df.geometry.x, + node_y=node_df.geometry.y, + fill_value=-1, + edge_node_connectivity=np.column_stack( + ( + node_lookup[from_node_id], + node_lookup[to_node_id], + ) + ), + name="ribasim", + projected=projected, + crs=node_df.crs, + ) + + edge_dim = grid.edge_dimension + node_dim = grid.node_dimension + + uds = xugrid.UgridDataset(None, grid) + uds = uds.assign_coords(node_id=(node_dim, node_id)) + uds = uds.assign_coords(from_node_id=(edge_dim, from_node_id)) + uds = uds.assign_coords(to_node_id=(edge_dim, to_node_id)) + + return uds diff --git a/python/ribasim/ribasim/utils.py b/python/ribasim/ribasim/utils.py index 001b47862..93f368c10 100644 --- a/python/ribasim/ribasim/utils.py +++ b/python/ribasim/ribasim/utils.py @@ -5,3 +5,13 @@ def _pascal_to_snake(pascal_str): # Insert a '_' before all uppercase letters that are not at the start of the string # and convert the string to lowercase return re.sub(r"(? Date: Tue, 26 Mar 2024 13:12:18 +0100 Subject: [PATCH 012/158] Bump version number for release (#1323) I think https://github.com/Deltares/Ribasim/issues/1306 is important enough to warrant a quick release. --- Manifest.toml | 2 +- core/Project.toml | 2 +- core/test/data/config_test.toml | 2 +- core/test/data/logging_test_loglevel_debug.toml | 2 +- core/test/data/logging_test_no_loglevel.toml | 2 +- core/test/docs.toml | 2 +- pixi.toml | 2 +- python/ribasim/ribasim/__init__.py | 2 +- python/ribasim_api/ribasim_api/__init__.py | 2 +- ribasim_qgis/metadata.txt | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Manifest.toml b/Manifest.toml index 42d87b52e..7018b5719 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -1247,7 +1247,7 @@ version = "3.5.14" deps = ["Accessors", "Arrow", "BasicModelInterface", "CodecZstd", "ComponentArrays", "Configurations", "DBInterface", "DataInterpolations", "DataStructures", "Dates", "Dictionaries", "DiffEqCallbacks", "EnumX", "FiniteDiff", "ForwardDiff", "Graphs", "HiGHS", "IterTools", "JuMP", "Legolas", "LinearSolve", "Logging", "LoggingExtras", "MetaGraphsNext", "OrdinaryDiffEq", "PreallocationTools", "SQLite", "SciMLBase", "SparseArrays", "StructArrays", "Tables", "TerminalLoggers", "TimeZones", "TimerOutputs", "TranscodingStreams"] path = "core" uuid = "aac5e3d9-0b8f-4d4f-8241-b1a7a9632635" -version = "2024.5.0" +version = "2024.6.0" [[deps.RuntimeGeneratedFunctions]] deps = ["ExprTools", "SHA", "Serialization"] diff --git a/core/Project.toml b/core/Project.toml index 2ea2db8cd..68ea483a1 100644 --- a/core/Project.toml +++ b/core/Project.toml @@ -2,7 +2,7 @@ name = "Ribasim" uuid = "aac5e3d9-0b8f-4d4f-8241-b1a7a9632635" authors = ["Deltares and contributors "] manifest = "../Manifest.toml" -version = "2024.5.0" +version = "2024.6.0" [deps] Accessors = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697" diff --git a/core/test/data/config_test.toml b/core/test/data/config_test.toml index dbf0469ac..ec7c4b2d7 100644 --- a/core/test/data/config_test.toml +++ b/core/test/data/config_test.toml @@ -2,7 +2,7 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "../../generated_testmodels/lhm" results_dir = "../../generated_testmodels/lhm" -ribasim_version = "2024.5.0" +ribasim_version = "2024.6.0" [basin] time = "basin/time.arrow" diff --git a/core/test/data/logging_test_loglevel_debug.toml b/core/test/data/logging_test_loglevel_debug.toml index e25e35415..fd2aa60e4 100644 --- a/core/test/data/logging_test_loglevel_debug.toml +++ b/core/test/data/logging_test_loglevel_debug.toml @@ -2,7 +2,7 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "." results_dir = "results" -ribasim_version = "2024.5.0" +ribasim_version = "2024.6.0" [logging] verbosity = "debug" diff --git a/core/test/data/logging_test_no_loglevel.toml b/core/test/data/logging_test_no_loglevel.toml index 560b8742e..b02a3e9d9 100644 --- a/core/test/data/logging_test_no_loglevel.toml +++ b/core/test/data/logging_test_no_loglevel.toml @@ -2,4 +2,4 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "." results_dir = "results" -ribasim_version = "2024.5.0" +ribasim_version = "2024.6.0" diff --git a/core/test/docs.toml b/core/test/docs.toml index 9bc838934..238b03db5 100644 --- a/core/test/docs.toml +++ b/core/test/docs.toml @@ -7,7 +7,7 @@ endtime = 2021-01-01 # required input_dir = "." # required results_dir = "results" # required -ribasim_version = "2024.5.0" # required +ribasim_version = "2024.6.0" # required # Specific tables can also go into Arrow files rather than the database. # For large tables this can benefit from better compressed file sizes. diff --git a/pixi.toml b/pixi.toml index 7e8ff7331..4b0cd0b6c 100644 --- a/pixi.toml +++ b/pixi.toml @@ -1,6 +1,6 @@ [project] name = "Ribasim" -version = "2024.5.0" +version = "2024.6.0" description = "Water resources modeling" authors = ["Deltares and contributors "] channels = ["conda-forge"] diff --git a/python/ribasim/ribasim/__init__.py b/python/ribasim/ribasim/__init__.py index e388d3398..a1d88f979 100644 --- a/python/ribasim/ribasim/__init__.py +++ b/python/ribasim/ribasim/__init__.py @@ -1,4 +1,4 @@ -__version__ = "2024.5.0" +__version__ = "2024.6.0" from ribasim.config import Allocation, Logging, Node, Solver diff --git a/python/ribasim_api/ribasim_api/__init__.py b/python/ribasim_api/ribasim_api/__init__.py index bbabe0560..fe3c6888f 100644 --- a/python/ribasim_api/ribasim_api/__init__.py +++ b/python/ribasim_api/ribasim_api/__init__.py @@ -1,4 +1,4 @@ -__version__ = "2024.5.0" +__version__ = "2024.6.0" from ribasim_api.ribasim_api import RibasimApi diff --git a/ribasim_qgis/metadata.txt b/ribasim_qgis/metadata.txt index 65dc4da3e..efedfa688 100644 --- a/ribasim_qgis/metadata.txt +++ b/ribasim_qgis/metadata.txt @@ -7,7 +7,7 @@ name=Ribasim-QGIS qgisMinimumVersion=3.0 description=QGIS plugin to setup Ribasim models -version=2024.5.0 +version=2024.6.0 author=Deltares and contributors email=ribasim.info@deltares.nl From f0d6487ef358b1439d1dcbb590e20f9811708725 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Tue, 26 Mar 2024 15:46:58 +0100 Subject: [PATCH 013/158] Remove xugrid return type annotation, bump patch version (#1326) ``` def to_xugrid(self) -> xugrid.UgridDataset: ``` This return type annotation is removed, since it only works for required dependencies. --- Manifest.toml | 2 +- core/Project.toml | 2 +- core/test/data/config_test.toml | 2 +- core/test/data/logging_test_loglevel_debug.toml | 2 +- core/test/data/logging_test_no_loglevel.toml | 2 +- core/test/docs.toml | 2 +- pixi.toml | 2 +- python/ribasim/ribasim/__init__.py | 2 +- python/ribasim/ribasim/model.py | 2 +- python/ribasim_api/ribasim_api/__init__.py | 2 +- ribasim_qgis/metadata.txt | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Manifest.toml b/Manifest.toml index 7018b5719..09316d88f 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -1247,7 +1247,7 @@ version = "3.5.14" deps = ["Accessors", "Arrow", "BasicModelInterface", "CodecZstd", "ComponentArrays", "Configurations", "DBInterface", "DataInterpolations", "DataStructures", "Dates", "Dictionaries", "DiffEqCallbacks", "EnumX", "FiniteDiff", "ForwardDiff", "Graphs", "HiGHS", "IterTools", "JuMP", "Legolas", "LinearSolve", "Logging", "LoggingExtras", "MetaGraphsNext", "OrdinaryDiffEq", "PreallocationTools", "SQLite", "SciMLBase", "SparseArrays", "StructArrays", "Tables", "TerminalLoggers", "TimeZones", "TimerOutputs", "TranscodingStreams"] path = "core" uuid = "aac5e3d9-0b8f-4d4f-8241-b1a7a9632635" -version = "2024.6.0" +version = "2024.6.1" [[deps.RuntimeGeneratedFunctions]] deps = ["ExprTools", "SHA", "Serialization"] diff --git a/core/Project.toml b/core/Project.toml index 68ea483a1..edfb9b7ed 100644 --- a/core/Project.toml +++ b/core/Project.toml @@ -2,7 +2,7 @@ name = "Ribasim" uuid = "aac5e3d9-0b8f-4d4f-8241-b1a7a9632635" authors = ["Deltares and contributors "] manifest = "../Manifest.toml" -version = "2024.6.0" +version = "2024.6.1" [deps] Accessors = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697" diff --git a/core/test/data/config_test.toml b/core/test/data/config_test.toml index ec7c4b2d7..10a24d614 100644 --- a/core/test/data/config_test.toml +++ b/core/test/data/config_test.toml @@ -2,7 +2,7 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "../../generated_testmodels/lhm" results_dir = "../../generated_testmodels/lhm" -ribasim_version = "2024.6.0" +ribasim_version = "2024.6.1" [basin] time = "basin/time.arrow" diff --git a/core/test/data/logging_test_loglevel_debug.toml b/core/test/data/logging_test_loglevel_debug.toml index fd2aa60e4..d3af856f6 100644 --- a/core/test/data/logging_test_loglevel_debug.toml +++ b/core/test/data/logging_test_loglevel_debug.toml @@ -2,7 +2,7 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "." results_dir = "results" -ribasim_version = "2024.6.0" +ribasim_version = "2024.6.1" [logging] verbosity = "debug" diff --git a/core/test/data/logging_test_no_loglevel.toml b/core/test/data/logging_test_no_loglevel.toml index b02a3e9d9..c854a8cb6 100644 --- a/core/test/data/logging_test_no_loglevel.toml +++ b/core/test/data/logging_test_no_loglevel.toml @@ -2,4 +2,4 @@ starttime = 2019-01-01 endtime = 2019-12-31 input_dir = "." results_dir = "results" -ribasim_version = "2024.6.0" +ribasim_version = "2024.6.1" diff --git a/core/test/docs.toml b/core/test/docs.toml index 238b03db5..b8bb8b066 100644 --- a/core/test/docs.toml +++ b/core/test/docs.toml @@ -7,7 +7,7 @@ endtime = 2021-01-01 # required input_dir = "." # required results_dir = "results" # required -ribasim_version = "2024.6.0" # required +ribasim_version = "2024.6.1" # required # Specific tables can also go into Arrow files rather than the database. # For large tables this can benefit from better compressed file sizes. diff --git a/pixi.toml b/pixi.toml index 4b0cd0b6c..2624ff1ec 100644 --- a/pixi.toml +++ b/pixi.toml @@ -1,6 +1,6 @@ [project] name = "Ribasim" -version = "2024.6.0" +version = "2024.6.1" description = "Water resources modeling" authors = ["Deltares and contributors "] channels = ["conda-forge"] diff --git a/python/ribasim/ribasim/__init__.py b/python/ribasim/ribasim/__init__.py index a1d88f979..3864983f2 100644 --- a/python/ribasim/ribasim/__init__.py +++ b/python/ribasim/ribasim/__init__.py @@ -1,4 +1,4 @@ -__version__ = "2024.6.0" +__version__ = "2024.6.1" from ribasim.config import Allocation, Logging, Node, Solver diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index ef6d0f315..00c6b9f91 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -349,7 +349,7 @@ def plot(self, ax=None, indicate_subnetworks: bool = True) -> Any: return ax - def to_xugrid(self) -> xugrid.UgridDataset: + def to_xugrid(self): """Convert the network to a xugrid.UgridDataset.""" node_df = self.node_table().df diff --git a/python/ribasim_api/ribasim_api/__init__.py b/python/ribasim_api/ribasim_api/__init__.py index fe3c6888f..4ccd9e57f 100644 --- a/python/ribasim_api/ribasim_api/__init__.py +++ b/python/ribasim_api/ribasim_api/__init__.py @@ -1,4 +1,4 @@ -__version__ = "2024.6.0" +__version__ = "2024.6.1" from ribasim_api.ribasim_api import RibasimApi diff --git a/ribasim_qgis/metadata.txt b/ribasim_qgis/metadata.txt index efedfa688..b436ff141 100644 --- a/ribasim_qgis/metadata.txt +++ b/ribasim_qgis/metadata.txt @@ -7,7 +7,7 @@ name=Ribasim-QGIS qgisMinimumVersion=3.0 description=QGIS plugin to setup Ribasim models -version=2024.6.0 +version=2024.6.1 author=Deltares and contributors email=ribasim.info@deltares.nl From 108101d8b13746d5942500206f5f32524006fac8 Mon Sep 17 00:00:00 2001 From: hofer_jn Date: Wed, 27 Mar 2024 09:18:58 +0100 Subject: [PATCH 014/158] TeamCity change in 'Ribasim / Windows' project: runners of 'Test ribasim_api' build configuration were updated --- .../buildTypes/Ribasim_Windows_TestRibasimApi.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml index 5ed6dca71..bb6b05130 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml @@ -13,7 +13,7 @@ - + @@ -97,3 +97,4 @@ + From e0dd9cf7e689b252d0c98e64b1ecaeb6c84aaf8c Mon Sep 17 00:00:00 2001 From: hofer_jn Date: Wed, 27 Mar 2024 09:19:26 +0100 Subject: [PATCH 015/158] TeamCity change in 'Ribasim / Linux' project: runners of 'Test ribasim_api' build configuration were updated --- .../Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml index 7174a847a..0743918f0 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml @@ -19,7 +19,7 @@ source /usr/share/Modules/init/bash module load pixi pixi --version -pixi run --environment=dev install-ci]]> +pixi run install-python]]> @@ -108,3 +108,4 @@ pixi run test-ribasim-api]]> + From 1b784c3074ea2761fad24bdc706ce3a306d37fb3 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Wed, 27 Mar 2024 13:53:01 +0100 Subject: [PATCH 016/158] Run testmodels in parallel (#1325) Fixes #1302, by spreading out the running of test models over four threads. Before: ``` 364.921784 seconds (562.47 M allocations: 40.793 GiB, 3.96% gc time, 61.46% compilation time: <1% of which was recompilation) ``` After: ``` 264.766728 seconds (584.52 M allocations: 41.778 GiB, 3.79% gc time, 222.78% compilation time: <1% of which was recompilation) ``` I assume on CI the relative speed increase will be a bit better though. --- pixi.toml | 2 +- utils/testmodelrun.jl | 22 ++++++++++++---------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/pixi.toml b/pixi.toml index 2624ff1ec..c47bc8273 100644 --- a/pixi.toml +++ b/pixi.toml @@ -142,7 +142,7 @@ mypy-ribasim-qgis = "mypy ribasim_qgis" ribasim-core = { cmd = "julia --project=core -e 'using Ribasim; Ribasim.main(ARGS)'", depends_on = [ "initialize-julia", ] } -ribasim-core-testmodels = { cmd = "julia --project utils/testmodelrun.jl", depends_on = [ +ribasim-core-testmodels = { cmd = "julia --project --threads=4 utils/testmodelrun.jl", depends_on = [ "generate-testmodels", "initialize-julia", ] } diff --git a/utils/testmodelrun.jl b/utils/testmodelrun.jl index fd8c26cfc..9862829f8 100644 --- a/utils/testmodelrun.jl +++ b/utils/testmodelrun.jl @@ -1,4 +1,4 @@ -using Ribasim +import Ribasim include("utils.jl") @@ -7,21 +7,23 @@ function main(ARGS) n_model = length(toml_paths) n_pass = 0 n_fail = 0 + lk = ReentrantLock() failed = String[] - for toml_path in toml_paths + Threads.@threads for toml_path in toml_paths modelname = basename(dirname(toml_path)) - @info "Running model $modelname" - if Ribasim.main(toml_path) != 0 - @error "Simulation failed" modelname - push!(failed, modelname) - n_fail += 1 - else - n_pass += 1 + ret_code = Ribasim.main(toml_path) + lock(lk) do + if ret_code != 0 + push!(failed, modelname) + n_fail += 1 + else + n_pass += 1 + end end end - @info "Ran $n_model models, $n_pass passed, $n_fail failed." + println("Ran $n_model models, $n_pass passed, $n_fail failed.\n") if n_fail > 0 println("Failed models:") foreach(println, failed) From af6b1adb92b58f44edccb7ea3a7256c57ffcf399 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Thu, 28 Mar 2024 13:22:36 +0100 Subject: [PATCH 017/158] Write full Node table once (#1312) Co-authored-by: Hofer-Julian Co-authored-by: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> --- python/ribasim/ribasim/input_base.py | 7 ++++++- python/ribasim/ribasim/model.py | 18 +++++++++--------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/python/ribasim/ribasim/input_base.py b/python/ribasim/ribasim/input_base.py index 3b6ec99b6..98a26ffc1 100644 --- a/python/ribasim/ribasim/input_base.py +++ b/python/ribasim/ribasim/input_base.py @@ -32,6 +32,7 @@ validate_call, ) +import ribasim from ribasim.types import FilePath __all__ = ("TableModel",) @@ -424,7 +425,11 @@ def _layername(cls, field: str) -> str: def _tables(self) -> Generator[TableModel[Any], Any, None]: for key in self.fields(): attr = getattr(self, key) - if isinstance(attr, TableModel) and attr.df is not None: + if ( + isinstance(attr, TableModel) + and (attr.df is not None) + and not (isinstance(attr, ribasim.geometry.node.NodeTable)) + ): yield attr def node_ids(self) -> set[int]: diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index 00c6b9f91..f6d208890 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -3,7 +3,6 @@ from pathlib import Path from typing import Any -import geopandas as gpd import numpy as np import pandas as pd import tomli @@ -143,18 +142,19 @@ def _save(self, directory: DirectoryPath, input_dir: DirectoryPath): db_path.unlink(missing_ok=True) context_file_loading.get()["database"] = db_path self.edge._save(directory, input_dir) - for sub in self._nodes(): - sub._save(directory, input_dir) + node = self.node_table() # Temporarily require unique node_id for #1262 # and copy them to the fid for #1306. - df = gpd.read_file(db_path, layer="Node") - if not df["node_id"].is_unique: + if not node.df["node_id"].is_unique: raise ValueError("node_id must be unique") - df.set_index("node_id", drop=False, inplace=True) - df.sort_index(inplace=True) - df.index.name = "fid" - df.to_file(db_path, layer="Node", driver="GPKG", index=True) + node.df.set_index("node_id", drop=False, inplace=True) + node.df.sort_index(inplace=True) + node.df.index.name = "fid" + node._save(directory, input_dir) + + for sub in self._nodes(): + sub._save(directory, input_dir) def node_table(self) -> NodeTable: """Compute the full NodeTable from all node types.""" From c56a89a84c54c963d1096ab1e335a0f3f457cbc4 Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Thu, 28 Mar 2024 16:06:39 +0100 Subject: [PATCH 018/158] Stop printing warnings when you can't read from database file (#1332) --- python/ribasim/ribasim/input_base.py | 1 - 1 file changed, 1 deletion(-) diff --git a/python/ribasim/ribasim/input_base.py b/python/ribasim/ribasim/input_base.py index 98a26ffc1..d728b7462 100644 --- a/python/ribasim/ribasim/input_base.py +++ b/python/ribasim/ribasim/input_base.py @@ -363,7 +363,6 @@ def _from_db(cls, path: FilePath, table: str): if exists(connection, table): df = gpd.read_file(path, layer=table, fid_as_index=True) else: - print(f"Can't read from {path}:{table}") df = None return df From db46d1e45aca519fa772ba8438579a968ab60744 Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 28 Mar 2024 16:18:26 +0100 Subject: [PATCH 019/158] Split vertical fluxes on basin (#1300) Fixes https://github.com/Deltares/Ribasim/issues/661. --------- Co-authored-by: Martijn Visser --- core/src/allocation_optim.jl | 6 +- core/src/bmi.jl | 8 ++- core/src/callback.jl | 126 +++++++++++++++++------------------ core/src/graph.jl | 42 ------------ core/src/model.jl | 3 +- core/src/parameter.jl | 42 ++++++------ core/src/read.jl | 41 ++++++++---- core/src/solve.jl | 80 +++++++++------------- core/src/util.jl | 38 +++++++++++ core/src/write.jl | 56 +++++++++++----- core/test/bmi_test.jl | 2 + core/test/run_models_test.jl | 53 ++++++++++----- core/test/time_test.jl | 75 ++++++++++++++++++--- core/test/utils_test.jl | 2 + docs/core/usage.qmd | 32 +++++---- 15 files changed, 360 insertions(+), 246 deletions(-) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index 17e9eab37..6f3606d4b 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -321,9 +321,13 @@ function get_basin_data( node_id::NodeID, ) (; graph, basin, level_demand) = p + (; vertical_flux) = basin (; Δt_allocation) = allocation_model @assert node_id.type == NodeType.Basin - influx = get_flow(graph, node_id, 0.0) + vertical_flux = get_tmp(vertical_flux, 0) + _, basin_idx = id_index(basin.node_id, node_id) + # NOTE: Instantaneous + influx = get_influx(basin, node_id) _, basin_idx = id_index(basin.node_id, node_id) storage_basin = u.storage[basin_idx] control_inneighbors = inneighbor_labels_type(graph, node_id, EdgeType.control) diff --git a/core/src/bmi.jl b/core/src/bmi.jl index 39a77afb7..7414d3dfe 100644 --- a/core/src/bmi.jl +++ b/core/src/bmi.jl @@ -37,9 +37,13 @@ function BMI.get_value_ptr(model::Model, name::AbstractString) elseif name == "basin.level" get_tmp(model.integrator.p.basin.current_level, 0) elseif name == "basin.infiltration" - model.integrator.p.basin.infiltration + get_tmp(model.integrator.p.basin.vertical_flux, 0).infiltration elseif name == "basin.drainage" - model.integrator.p.basin.drainage + get_tmp(model.integrator.p.basin.vertical_flux, 0).drainage + elseif name == "basin.infiltration_integrated" + model.integrator.p.basin.vertical_flux_bmi.infiltration + elseif name == "basin.drainage_integrated" + model.integrator.p.basin.vertical_flux_bmi.drainage elseif name == "basin.subgrid_level" model.integrator.p.subgrid.level elseif name == "user_demand.demand" diff --git a/core/src/callback.jl b/core/src/callback.jl index 9f3db5c1a..8aa34f519 100644 --- a/core/src/callback.jl +++ b/core/src/callback.jl @@ -36,13 +36,13 @@ function create_callbacks( (; starttime, basin, tabulated_rating_curve, discrete_control) = parameters callbacks = SciMLBase.DECallback[] + integrating_flows_cb = FunctionCallingCallback(integrate_flows!; func_start = false) + push!(callbacks, integrating_flows_cb) + tstops = get_tstops(basin.time.time, starttime) basin_cb = PresetTimeCallback(tstops, update_basin; save_positions = (false, false)) push!(callbacks, basin_cb) - integrating_flows_cb = FunctionCallingCallback(integrate_flows!; func_start = false) - push!(callbacks, integrating_flows_cb) - tstops = get_tstops(tabulated_rating_curve.time.time, starttime) tabulated_rating_curve_cb = PresetTimeCallback( tstops, @@ -61,16 +61,17 @@ function create_callbacks( push!(callbacks, allocation_cb) end + # If saveat is a vector which contains 0.0 this callback will still be called + # at t = 0.0 despite save_start = false + saveat = saveat isa Vector ? filter(x -> x != 0.0, saveat) : saveat + saved_vertical_flux = SavedValues(Float64, typeof(basin.vertical_flux_integrated)) + save_vertical_flux_cb = + SavingCallback(save_vertical_flux, saved_vertical_flux; saveat, save_start = false) + push!(callbacks, save_vertical_flux_cb) + # save the flows over time, as a Vector of the nonzeros(flow) saved_flow = SavedValues(Float64, Vector{Float64}) - save_flow_cb = SavingCallback( - save_flow, - saved_flow; - # If saveat is a vector which contains 0.0 this callback will still be called - # at t = 0.0 despite save_start = false - saveat = saveat isa Vector ? filter(x -> x != 0.0, saveat) : saveat, - save_start = false, - ) + save_flow_cb = SavingCallback(save_flow, saved_flow; saveat, save_start = false) push!(callbacks, save_flow_cb) # interpolate the levels @@ -85,7 +86,7 @@ function create_callbacks( push!(callbacks, export_cb) end - saved = SavedResults(saved_flow, saved_subgrid_level) + saved = SavedResults(saved_flow, saved_vertical_flux, saved_subgrid_level) n_conditions = length(discrete_control.node_id) if n_conditions > 0 @@ -108,27 +109,20 @@ Integrate flows over the last timestep """ function integrate_flows!(u, t, integrator)::Nothing (; p, dt) = integrator - (; graph, user_demand) = p - (; - flow, - flow_dict, - flow_vertical, - flow_prev, - flow_vertical_prev, - flow_integrated, - flow_vertical_integrated, - ) = graph[] + (; graph, user_demand, basin) = p + (; flow, flow_dict, flow_prev, flow_integrated) = graph[] + (; vertical_flux, vertical_flux_prev, vertical_flux_integrated, vertical_flux_bmi) = + basin flow = get_tmp(flow, 0) - flow_vertical = get_tmp(flow_vertical, 0) - + vertical_flux = get_tmp(vertical_flux, 0) if !isempty(flow_prev) && isnan(flow_prev[1]) # If flow_prev is not populated yet copyto!(flow_prev, flow) - copyto!(flow_vertical_prev, flow_vertical) end @. flow_integrated += 0.5 * (flow + flow_prev) * dt - @. flow_vertical_integrated += 0.5 * (flow_vertical + flow_vertical_prev) * dt + @. vertical_flux_integrated += 0.5 * (vertical_flux + vertical_flux_prev) * dt + @. vertical_flux_bmi += 0.5 * (vertical_flux + vertical_flux_prev) * dt for (i, id) in enumerate(user_demand.node_id) src_id = inflow_id(graph, id) @@ -137,10 +131,37 @@ function integrate_flows!(u, t, integrator)::Nothing end copyto!(flow_prev, flow) - copyto!(flow_vertical_prev, flow_vertical) + copyto!(vertical_flux_prev, vertical_flux) return nothing end +"Compute the average flows over the last saveat interval and write +them to SavedValues" +function save_flow(u, t, integrator) + (; flow_integrated) = integrator.p.graph[] + + Δt = get_Δt(integrator) + flow_mean = copy(flow_integrated) + flow_mean ./= Δt + fill!(flow_integrated, 0.0) + + return flow_mean +end + +"Compute the average vertical fluxes over the last saveat interval and write +them to SavedValues" +function save_vertical_flux(u, t, integrator) + (; basin) = integrator.p + (; vertical_flux_integrated) = basin + + Δt = get_Δt(integrator) + vertical_flux_mean = copy(vertical_flux_integrated) + vertical_flux_mean ./= Δt + fill!(vertical_flux_integrated, 0.0) + + return vertical_flux_mean +end + """ Listens for changes in condition truths. """ @@ -430,36 +451,6 @@ function set_control_params!(p::Parameters, node_id::NodeID, control_state::Stri end end -"Compute the average flows over the last saveat interval and write -them to SavedValues" -function save_flow(u, t, integrator) - (; dt, p) = integrator - (; graph) = p - (; flow_integrated, flow_vertical_integrated, saveat) = graph[] - - Δt = if iszero(saveat) - dt - elseif isinf(saveat) - t - else - t_end = integrator.sol.prob.tspan[2] - if t_end - t > saveat - saveat - else - # The last interval might be shorter than saveat - rem = t % saveat - iszero(rem) ? saveat : rem - end - end - - mean_flow_all = vcat(flow_vertical_integrated, flow_integrated) - mean_flow_all ./= Δt - fill!(flow_vertical_integrated, 0.0) - fill!(flow_integrated, 0.0) - - return mean_flow_all -end - function update_subgrid_level!(integrator)::Nothing basin_level = get_tmp(integrator.p.basin.current_level, 0) subgrid = integrator.p.subgrid @@ -476,18 +467,21 @@ end "Load updates from 'Basin / time' into the parameters" function update_basin(integrator)::Nothing - (; basin) = integrator.p - (; node_id, time) = basin + (; p, u) = integrator + (; basin) = p + (; storage) = u + (; node_id, time, vertical_flux_from_input, vertical_flux, vertical_flux_prev) = basin t = datetime_since(integrator.t, integrator.p.starttime) + vertical_flux = get_tmp(vertical_flux, integrator.u) rows = searchsorted(time.time, t) timeblock = view(time, rows) table = (; - basin.precipitation, - basin.potential_evaporation, - basin.drainage, - basin.infiltration, + vertical_flux_from_input.precipitation, + vertical_flux_from_input.potential_evaporation, + vertical_flux_from_input.drainage, + vertical_flux_from_input.infiltration, ) for row in timeblock @@ -496,6 +490,12 @@ function update_basin(integrator)::Nothing set_table_row!(table, row, i) end + for (i, id) in enumerate(basin.node_id) + update_vertical_flux!(basin, storage, i) + end + + # Forget about vertical fluxes to handle discontinuous forcing from basin_update + copyto!(vertical_flux_prev, vertical_flux) return nothing end diff --git a/core/src/graph.jl b/core/src/graph.jl index 2d19c717d..cb453e88d 100644 --- a/core/src/graph.jl +++ b/core/src/graph.jl @@ -24,10 +24,6 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra flow_counter = 0 # Dictionary from flow edge to index in flow vector flow_dict = Dict{Tuple{NodeID, NodeID}, Int}() - # The number of nodes with vertical flow (interaction with outside of model) - flow_vertical_counter = 0 - # Dictionary from node ID to index in vertical flow vector - flow_vertical_dict = Dict{NodeID, Int}() graph = MetaGraph( DiGraph(); label_type = NodeID, @@ -49,10 +45,6 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra end graph[node_id] = NodeMetadata(Symbol(snake_case(row.node_type)), allocation_network_id) - if row.node_type in nonconservative_nodetypes - flow_vertical_counter += 1 - flow_vertical_dict[node_id] = flow_vertical_counter - end end errors = false @@ -105,12 +97,8 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra flow = zeros(flow_counter) flow_prev = fill(NaN, flow_counter) flow_integrated = zeros(flow_counter) - flow_vertical = zeros(flow_vertical_counter) - flow_vertical_prev = fill(NaN, flow_vertical_counter) - flow_vertical_integrated = zeros(flow_vertical_counter) if config.solver.autodiff flow = DiffCache(flow, chunk_sizes) - flow_vertical = DiffCache(flow_vertical, chunk_sizes) end graph_data = (; node_ids, @@ -120,10 +108,6 @@ function create_graph(db::DB, config::Config, chunk_sizes::Vector{Int})::MetaGra flow, flow_prev, flow_integrated, - flow_vertical_dict, - flow_vertical, - flow_vertical_prev, - flow_vertical_integrated, config.solver.saveat, ) graph = @set graph.graph_data = graph_data @@ -195,15 +179,6 @@ function set_flow!(graph::MetaGraph, id_src::NodeID, id_dst::NodeID, q::Number): return nothing end -""" -Set the given flow q on the horizontal (self-loop) edge from id to id. -""" -function set_flow!(graph::MetaGraph, id::NodeID, q::Number)::Nothing - (; flow_vertical_dict, flow_vertical) = graph[] - get_tmp(flow_vertical, q)[flow_vertical_dict[id]] = q - return nothing -end - """ Add the given flow q to the existing flow over the edge between the given nodes. """ @@ -213,15 +188,6 @@ function add_flow!(graph::MetaGraph, id_src::NodeID, id_dst::NodeID, q::Number): return nothing end -""" -Add the given flow q to the flow over the edge on the horizontal (self-loop) edge from id to id. -""" -function add_flow!(graph::MetaGraph, id::NodeID, q::Number)::Nothing - (; flow_vertical_dict, flow_vertical) = graph[] - get_tmp(flow_vertical, q)[flow_vertical_dict[id]] += q - return nothing -end - """ Get the flow over the given edge (val is needed for get_tmp from ForwardDiff.jl). """ @@ -230,14 +196,6 @@ function get_flow(graph::MetaGraph, id_src::NodeID, id_dst::NodeID, val)::Number return get_tmp(flow, val)[flow_dict[id_src, id_dst]] end -""" -Get the flow over the given horizontal (selfloop) edge (val is needed for get_tmp from ForwardDiff.jl). -""" -function get_flow(graph::MetaGraph, id::NodeID, val)::Number - (; flow_vertical_dict, flow_vertical) = graph[] - return get_tmp(flow_vertical, val)[flow_vertical_dict[id]] -end - """ Get the inneighbor node IDs of the given node ID (label) over the given edge type in the graph. diff --git a/core/src/model.jl b/core/src/model.jl index afa24347e..111407a34 100644 --- a/core/src/model.jl +++ b/core/src/model.jl @@ -1,5 +1,6 @@ -struct SavedResults +struct SavedResults{V1 <: ComponentVector{Float64}} flow::SavedValues{Float64, Vector{Float64}} + vertical_flux::SavedValues{Float64, V1} subgrid_level::SavedValues{Float64, Vector{Float64}} end diff --git a/core/src/parameter.jl b/core/src/parameter.jl index e1d150ce1..214d056a4 100644 --- a/core/src/parameter.jl +++ b/core/src/parameter.jl @@ -151,12 +151,14 @@ else T = Vector{Float64} end """ -struct Basin{T, C} <: AbstractParameterNode +struct Basin{T, C, V1, V2, V3} <: AbstractParameterNode node_id::Indices{NodeID} - precipitation::Vector{Float64} - potential_evaporation::Vector{Float64} - drainage::Vector{Float64} - infiltration::Vector{Float64} + # Vertical fluxes + vertical_flux_from_input::V1 + vertical_flux::V2 + vertical_flux_prev::V3 + vertical_flux_integrated::V3 + vertical_flux_bmi::V3 # Cache this to avoid recomputation current_level::T current_area::T @@ -171,10 +173,11 @@ struct Basin{T, C} <: AbstractParameterNode function Basin( node_id, - precipitation, - potential_evaporation, - drainage, - infiltration, + vertical_flux_from_input::V1, + vertical_flux::V2, + vertical_flux_prev::V3, + vertical_flux_integrated::V3, + vertical_flux_bmi::V3, current_level::T, current_area::T, area, @@ -182,15 +185,16 @@ struct Basin{T, C} <: AbstractParameterNode storage, demand, time::StructVector{BasinTimeV1, C, Int}, - ) where {T, C} + ) where {T, C, V1, V2, V3} is_valid = valid_profiles(node_id, level, area) is_valid || error("Invalid Basin / profile table.") - return new{T, C}( + return new{T, C, V1, V2, V3}( node_id, - precipitation, - potential_evaporation, - drainage, - infiltration, + vertical_flux_from_input, + vertical_flux, + vertical_flux_prev, + vertical_flux_integrated, + vertical_flux_bmi, current_level, current_area, area, @@ -553,7 +557,7 @@ struct Subgrid end # TODO Automatically add all nodetypes here -struct Parameters{T, C1, C2} +struct Parameters{T, C1, C2, V1, V2, V3} starttime::DateTime graph::MetaGraph{ Int64, @@ -569,17 +573,13 @@ struct Parameters{T, C1, C2} flow::T, flow_prev::Vector{Float64}, flow_integrated::Vector{Float64}, - flow_vertical_dict::Dict{NodeID, Int}, - flow_vertical::T, - flow_vertical_prev::Vector{Float64}, - flow_vertical_integrated::Vector{Float64}, saveat::Float64, }, MetaGraphsNext.var"#11#13", Float64, } allocation::Allocation - basin::Basin{T, C1} + basin::Basin{T, C1, V1, V2, V3} linear_resistance::LinearResistance manning_resistance::ManningResistance tabulated_rating_curve::TabulatedRatingCurve{C2} diff --git a/core/src/read.jl b/core/src/read.jl index ccf7e9704..0ae86147d 100644 --- a/core/src/read.jl +++ b/core/src/read.jl @@ -488,15 +488,11 @@ function Basin(db::DB, config::Config, chunk_sizes::Vector{Int})::Basin current_level = zeros(n) current_area = zeros(n) - if config.solver.autodiff - current_level = DiffCache(current_level, chunk_sizes) - current_area = DiffCache(current_area, chunk_sizes) - end - - precipitation = zeros(length(node_id)) - potential_evaporation = zeros(length(node_id)) - drainage = zeros(length(node_id)) - infiltration = zeros(length(node_id)) + precipitation = zeros(n) + potential_evaporation = zeros(n) + evaporation = zeros(n) + drainage = zeros(n) + infiltration = zeros(n) table = (; precipitation, potential_evaporation, drainage, infiltration) area, level, storage = create_storage_tables(db, config) @@ -509,14 +505,33 @@ function Basin(db::DB, config::Config, chunk_sizes::Vector{Int})::Basin set_current_value!(table, node_id, time, config.starttime) check_no_nans(table, "Basin") + vertical_flux_from_input = + ComponentVector(; precipitation, potential_evaporation, drainage, infiltration) + vertical_flux = ComponentVector(; + precipitation = copy(precipitation), + evaporation, + drainage = copy(drainage), + infiltration = copy(infiltration), + ) + vertical_flux_prev = zero(vertical_flux) + vertical_flux_integrated = zero(vertical_flux) + vertical_flux_bmi = zero(vertical_flux) + + if config.solver.autodiff + current_level = DiffCache(current_level, chunk_sizes) + current_area = DiffCache(current_area, chunk_sizes) + vertical_flux = DiffCache(vertical_flux, chunk_sizes) + end + demand = zeros(length(node_id)) return Basin( Indices(NodeID.(NodeType.Basin, node_id)), - precipitation, - potential_evaporation, - drainage, - infiltration, + vertical_flux_from_input, + vertical_flux, + vertical_flux_prev, + vertical_flux_integrated, + vertical_flux_bmi, current_level, current_area, area, diff --git a/core/src/solve.jl b/core/src/solve.jl index df9f09d4d..f581fc591 100644 --- a/core/src/solve.jl +++ b/core/src/solve.jl @@ -14,13 +14,12 @@ function water_balance!( du .= 0.0 get_tmp(graph[].flow, storage) .= 0.0 - get_tmp(graph[].flow_vertical, storage) .= 0.0 # Ensures current_* vectors are current set_current_basin_properties!(basin, storage) # Basin forcings - formulate_basins!(du, basin, graph, storage) + formulate_basins!(du, basin, storage) # First formulate intermediate flows formulate_flows!(p, storage, t) @@ -52,34 +51,42 @@ end Smoothly let the evaporation flux go to 0 when at small water depths Currently at less than 0.1 m. """ +function update_vertical_flux!(basin::Basin, storage::AbstractVector, i::Int)::Nothing + (; current_level, current_area, vertical_flux_from_input, vertical_flux) = basin + current_level = get_tmp(current_level, storage) + current_area = get_tmp(current_area, storage) + vertical_flux = get_tmp(vertical_flux, storage) + + level = current_level[i] + area = current_area[i] + + bottom = basin.level[i][1] + fixed_area = basin.area[i][end] + depth = max(level - bottom, 0.0) + factor = reduction_factor(depth, 0.1) + + precipitation = fixed_area * vertical_flux_from_input.precipitation[i] + evaporation = area * factor * vertical_flux_from_input.potential_evaporation[i] + drainage = vertical_flux_from_input.drainage[i] + infiltration = factor * vertical_flux_from_input.infiltration[i] + + vertical_flux.precipitation[i] = precipitation + vertical_flux.evaporation[i] = evaporation + vertical_flux.drainage[i] = drainage + vertical_flux.infiltration[i] = infiltration + + return nothing +end + function formulate_basins!( du::AbstractVector, basin::Basin, - graph::MetaGraph, storage::AbstractVector, )::Nothing - (; node_id, current_level, current_area) = basin - current_level = get_tmp(current_level, storage) - current_area = get_tmp(current_area, storage) - - for (i, id) in enumerate(node_id) + for (i, id) in enumerate(basin.node_id) # add all precipitation that falls within the profile - level = current_level[i] - area = current_area[i] - - bottom = basin.level[i][1] - fixed_area = basin.area[i][end] - depth = max(level - bottom, 0.0) - factor = reduction_factor(depth, 0.1) - - precipitation = fixed_area * basin.precipitation[i] - evaporation = area * factor * basin.potential_evaporation[i] - drainage = basin.drainage[i] - infiltration = factor * basin.infiltration[i] - - influx = precipitation - evaporation + drainage - infiltration - du.storage[i] += influx - set_flow!(graph, id, influx) + update_vertical_flux!(basin, storage, i) + du.storage[i] += get_influx(basin, i) end return nothing end @@ -303,7 +310,6 @@ function formulate_flow!( # Return flow is immediate set_flow!(graph, id, dst_id, q * return_factor[i]) - set_flow!(graph, id, -q * (1 - return_factor[i])) end return nothing end @@ -505,28 +511,6 @@ function formulate_flow!( return nothing end -function formulate_flow!( - level_boundary::LevelBoundary, - p::Parameters, - storage::AbstractVector, - t::Number, -)::Nothing - (; graph) = p - (; node_id) = level_boundary - - for id in node_id - for in_id in inflow_ids(graph, id) - q = get_flow(graph, in_id, id, storage) - add_flow!(graph, id, -q) - end - for out_id in outflow_ids(graph, id) - q = get_flow(graph, id, out_id, storage) - add_flow!(graph, id, q) - end - end - return nothing -end - function formulate_flow!( flow_boundary::FlowBoundary, p::Parameters, @@ -547,7 +531,6 @@ function formulate_flow!( # Adding water is always possible set_flow!(graph, id, dst_id, rate) - set_flow!(graph, id, rate) end end end @@ -663,6 +646,5 @@ function formulate_flows!(p::Parameters, storage::AbstractVector, t::Number)::No # do these last since they rely on formulated input flows formulate_flow!(fractional_flow, p, storage, t) - formulate_flow!(level_boundary, p, storage, t) formulate_flow!(terminal, p, storage, t) end diff --git a/core/src/util.jl b/core/src/util.jl index 3b2131d1e..879f89726 100644 --- a/core/src/util.jl +++ b/core/src/util.jl @@ -707,3 +707,41 @@ function Base.get( nothing end end + +""" +Get the time interval between (flow) saves +""" +function get_Δt(integrator)::Float64 + (; p, t, dt) = integrator + (; saveat) = p.graph[] + if iszero(saveat) + dt + elseif isinf(saveat) + t + else + t_end = integrator.sol.prob.tspan[2] + if t_end - t > saveat + saveat + else + # The last interval might be shorter than saveat + rem = t % saveat + iszero(rem) ? saveat : rem + end + end +end + +function get_influx(basin::Basin, node_id::NodeID)::Float64 + has_index, basin_idx = id_index(basin.node_id, node_id) + if !has_index + error("Sum of vertical fluxes requested for non-basin $id.") + end + return get_influx(basin, basin_idx) +end + +function get_influx(basin::Basin, basin_idx::Int)::Float64 + (; vertical_flux) = basin + vertical_flux = get_tmp(vertical_flux, 0) + (; precipitation, evaporation, drainage, infiltration) = vertical_flux + return precipitation[basin_idx] - evaporation[basin_idx] + drainage[basin_idx] - + infiltration[basin_idx] +end diff --git a/core/src/write.jl b/core/src/write.jl index 9f855e324..4964f1754 100644 --- a/core/src/write.jl +++ b/core/src/write.jl @@ -84,15 +84,53 @@ function basin_table( node_id::Vector{Int32}, storage::Vector{Float64}, level::Vector{Float64}, + precipitation::Vector{Union{Missing, Float64}}, + evaporation::Vector{Union{Missing, Float64}}, + drainage::Vector{Union{Missing, Float64}}, + infiltration::Vector{Union{Missing, Float64}}, } + (; saved) = model + (; vertical_flux) = saved + data = get_storages_and_levels(model) + storage = vec(data.storage) + level = vec(data.level) + nbasin = length(data.node_id) ntsteps = length(data.time) + nrows = nbasin * ntsteps + + precipitation = Vector{Union{Missing, Float64}}(missing, nrows) + evaporation = Vector{Union{Missing, Float64}}(missing, nrows) + drainage = Vector{Union{Missing, Float64}}(missing, nrows) + infiltration = Vector{Union{Missing, Float64}}(missing, nrows) + + idx_row = 0 + + for vec in vertical_flux.saveval + for (precipitation_, evaporation_, drainage_, infiltration_) in + zip(vec.precipitation, vec.evaporation, vec.drainage, vec.infiltration) + idx_row += 1 + precipitation[idx_row] = precipitation_ + evaporation[idx_row] = evaporation_ + drainage[idx_row] = drainage_ + infiltration[idx_row] = infiltration_ + end + end time = repeat(data.time; inner = nbasin) node_id = repeat(Int32.(data.node_id); outer = ntsteps) - return (; time, node_id, storage = vec(data.storage), level = vec(data.level)) + return (; + time, + node_id, + storage, + level, + precipitation, + evaporation, + drainage, + infiltration, + ) end "Create a flow result table from the saved data" @@ -110,28 +148,14 @@ function flow_table( (; config, saved, integrator) = model (; t, saveval) = saved.flow (; graph) = integrator.p - (; flow_dict, flow_vertical_dict) = graph[] + (; flow_dict) = graph[] - # self-loops have no edge ID from_node_type = String[] from_node_id = Int32[] to_node_type = String[] to_node_id = Int32[] unique_edge_ids_flow = Union{Int32, Missing}[] - vertical_flow_node_ids = Vector{NodeID}(undef, length(flow_vertical_dict)) - for (node_id, index) in flow_vertical_dict - vertical_flow_node_ids[index] = node_id - end - - for id in vertical_flow_node_ids - push!(from_node_type, string(id.type)) - push!(from_node_id, id.value) - push!(to_node_type, string(id.type)) - push!(to_node_id, id.value) - push!(unique_edge_ids_flow, missing) - end - flow_edge_ids = Vector{Tuple{NodeID, NodeID}}(undef, length(flow_dict)) for (edge_id, index) in flow_dict flow_edge_ids[index] = edge_id diff --git a/core/test/bmi_test.jl b/core/test/bmi_test.jl index fd33ed312..7b37b2017 100644 --- a/core/test/bmi_test.jl +++ b/core/test/bmi_test.jl @@ -63,6 +63,8 @@ end "basin.level", "basin.infiltration", "basin.drainage", + "basin.infiltration_integrated", + "basin.drainage_integrated", "basin.subgrid_level", "user_demand.demand", "user_demand.realized", diff --git a/core/test/run_models_test.jl b/core/test/run_models_test.jl index 8f285c810..1a41b33b6 100644 --- a/core/test/run_models_test.jl +++ b/core/test/run_models_test.jl @@ -44,8 +44,26 @@ (DateTime, Union{Int32, Missing}, String, Int32, String, Int32, Float64), ) @test Tables.schema(basin) == Tables.Schema( - (:time, :node_id, :storage, :level), - (DateTime, Int32, Float64, Float64), + ( + :time, + :node_id, + :storage, + :level, + :precipitation, + :evaporation, + :drainage, + :infiltration, + ), + ( + DateTime, + Int32, + Float64, + Float64, + Union{Missing, Float64}, + Union{Missing, Float64}, + Union{Missing, Float64}, + Union{Missing, Float64}, + ), ) @test Tables.schema(control) == Tables.Schema( (:time, :control_node_id, :truth_state, :control_state), @@ -88,8 +106,8 @@ @testset "Results size" begin nsaved = length(tsaves(model)) @test nsaved > 10 - # t0 has no flow, 2 flow edges and 2 boundary condition flows - @test nrow(flow) == (nsaved - 1) * 4 + # t0 has no flow, 2 flow edges + @test nrow(flow) == (nsaved - 1) * 2 @test nrow(basin) == nsaved @test nrow(control) == 0 @test nrow(allocation) == 0 @@ -98,9 +116,9 @@ @testset "Results values" begin @test flow.time[1] == DateTime(2020) - @test coalesce.(flow.edge_id[1:4], -1) == [-1, -1, 1, 2] - @test flow.from_node_id[1:4] == [6, 922, 6, 0] - @test flow.to_node_id[1:4] == [6, 922, 0, 922] + @test coalesce.(flow.edge_id[1:2], -1) == [1, 2] + @test flow.from_node_id[1:2] == [6, 0] + @test flow.to_node_id[1:2] == [0, 922] @test basin.storage[1] ≈ 1.0 @test basin.level[1] ≈ 0.044711584 @@ -125,10 +143,11 @@ end model = Ribasim.run(toml_path) @test model isa Ribasim.Model @test model.integrator.u.storage ≈ [1000] - @test model.integrator.p.basin.precipitation == [0.0] - @test model.integrator.p.basin.potential_evaporation == [0.0] - @test model.integrator.p.basin.drainage == [0.0] - @test model.integrator.p.basin.infiltration == [0.0] + vertical_flux = Ribasim.get_tmp(model.integrator.p.basin.vertical_flux, 0) + @test vertical_flux.precipitation == [0.0] + @test vertical_flux.evaporation == [0.0] + @test vertical_flux.drainage == [0.0] + @test vertical_flux.infiltration == [0.0] @test successful_retcode(model) end @@ -142,10 +161,11 @@ end @test model isa Ribasim.Model stor = model.integrator.u.storage - prec = model.integrator.p.basin.precipitation - evap = model.integrator.p.basin.potential_evaporation - drng = model.integrator.p.basin.drainage - infl = model.integrator.p.basin.infiltration + vertical_flux = Ribasim.get_tmp(model.integrator.p.basin.vertical_flux, 0) + prec = vertical_flux.precipitation + evap = vertical_flux.evaporation + drng = vertical_flux.drainage + infl = vertical_flux.infiltration # The dynamic data has missings, but these are not set. @test prec == [0.0] @test evap == [0.0] @@ -235,7 +255,8 @@ end @test model isa Ribasim.Model @test successful_retcode(model) @test allunique(Ribasim.tsaves(model)) - @test length(model.integrator.p.basin.precipitation) == 4 + precipitation = Ribasim.get_tmp(model.integrator.p.basin.vertical_flux, 0).precipitation + @test length(precipitation) == 4 @test model.integrator.sol.u[end] ≈ Float32[472.02444, 472.02252, 367.6387, 1427.981] skip = Sys.isapple() end diff --git a/core/test/time_test.jl b/core/test/time_test.jl index 2410f1933..7977ad705 100644 --- a/core/test/time_test.jl +++ b/core/test/time_test.jl @@ -12,22 +12,77 @@ flow = DataFrame(Ribasim.flow_table(model)) # only from March to September the FlowBoundary varies is_summer(t::DateTime) = 3 <= month(t) < 10 - - flow_added_1 = - filter( - [:time, :from_node_id, :to_node_id] => - (t, from, to) -> is_summer(t) && from == 1 && to == 1, - flow, - ).flow_rate flow_1_to_2 = filter( [:time, :from_node_id, :to_node_id] => (t, from, to) -> is_summer(t) && from == 1 && to == 2, flow, ) - @test flow_added_1 == flow_1_to_2.flow_rate - t = Ribasim.seconds_since.(flow_1_to_2.time, model.config.starttime) flow_expected = @. 1 + sin(0.5 * π * (t - t[1]) / (t[end] - t[1]))^2 # some difference is expected since the modeled flow is for the period up to t - @test isapprox(flow_added_1, flow_expected, rtol = 0.005) + @test isapprox(flow_1_to_2.flow_rate, flow_expected, rtol = 0.005) +end + +@testitem "vertical_flux_means" begin + using DataFrames: DataFrame, transform!, ByRow + + toml_path = + normpath(@__DIR__, "../../generated_testmodels/basic_transient/ribasim.toml") + @test ispath(toml_path) + model = Ribasim.run(toml_path) + basin = model.integrator.p.basin + n_basin = length(basin.node_id) + basin_table = DataFrame(Ribasim.basin_table(model)) + + # No vertical flux data for last saveat + t_end = last(basin_table).time + data_end = filter(:time => t -> t == t_end, basin_table) + @test all(ismissing.(data_end.precipitation)) + @test all(ismissing.(data_end.evaporation)) + @test all(ismissing.(data_end.drainage)) + @test all(ismissing.(data_end.infiltration)) + + time_table = DataFrame(basin.time) + time_table[!, "basin_idx"] = [ + Ribasim.id_index(basin.node_id, node_id)[2] for + node_id in Ribasim.NodeID.(:Basin, time_table.node_id) + ] + time_table[!, "area"] = [ + Ribasim.get_area_and_level(basin, idx, storage)[1] for + (idx, storage) in zip(time_table.basin_idx, basin_table.storage) + ] + # Mean areas are sufficient to compute the mean flows + # (assuming the saveats coincide with the solver timepoints), + # as the potential evaporation is constant over the saveat intervals + time_table[!, "mean_area"] .= 0.0 + n_basins = length(basin.node_id) + n_times = length(unique(time_table.time)) - 1 + for basin_idx in 1:n_basins + for time_idx in 1:n_times + idx_1 = n_basins * (time_idx - 1) + basin_idx + idx_2 = n_basins * time_idx + basin_idx + mean_area = (time_table.area[idx_1] + time_table.area[idx_2]) / 2 + time_table.mean_area[idx_1] = mean_area + end + end + + filter!(:time => t -> t !== t_end, basin_table) + filter!(:time => t -> t !== t_end, time_table) + + @test all( + isapprox( + basin_table.evaporation, + time_table.mean_area .* time_table.potential_evaporation; + rtol = 1e-4, + ), + ) + + fixed_area = Dict( + id.value => basin.area[Ribasim.id_index(basin.node_id, id)[2]][end] for + id in basin.node_id + ) + transform!(time_table, :node_id => ByRow(id -> fixed_area[id]) => :fixed_area) + @test all( + basin_table.precipitation .≈ time_table.fixed_area .* time_table.precipitation, + ) end diff --git a/core/test/utils_test.jl b/core/test/utils_test.jl index b5a9ee0e3..c5e4d7af3 100644 --- a/core/test/utils_test.jl +++ b/core/test/utils_test.jl @@ -43,6 +43,7 @@ end [2.0, 3.0], [2.0, 3.0], [2.0, 3.0], + [2.0, 3.0], darea, area, level, @@ -121,6 +122,7 @@ end zeros(1), zeros(1), zeros(1), + zeros(1), [area], [level], [storage], diff --git a/docs/core/usage.qmd b/docs/core/usage.qmd index e3da5d330..f8fec8b9c 100644 --- a/docs/core/usage.qmd +++ b/docs/core/usage.qmd @@ -705,27 +705,36 @@ derivative | Float64 | - | - ## Basin - `basin.arrow` -The basin table contains results of the storage and level of each basin at every solver -timestep. The initial condition is also written to the file. +The basin table contains: + +- results of the storage and level of each basin, which are instantaneous values; +- results of the vertical fluxes on each basin, which are mean values over the `saveat` intervals. In the time column the start of the period is indicated. This means that for the final time in the table the mean vertical fluxes are not computed, and thus are `missing`. + +The initial condition is also written to the file. + +column | type | unit +------------- | ------------------------ | ---- +time | DateTime | - +node_id | Int32 | - +storage | Float64 | $m^3$ +level | Float64 | $m$ +precipitation | Union{Float64, Missing} | $m^3 s^{-1}$ +evaporation | Union{Float64, Missing} | $m^3 s^{-1}$ +drainage | Union{Float64, Missing} | $m^3 s^{-1}$ +infiltration | Union{Float64, Missing} | $m^3 s^{-1}$ -column | type | unit --------- | -------- | ---- -time | DateTime | - -node_id | Int32 | - -storage | Float64 | $m^3$ -level | Float64 | $m$ The table is sorted by time, and per time it is sorted by `node_id`. ## Flow - `flow.arrow` -The flow table contains calculated mean flows for every flow edge in the model. +The flow table contains calculated mean flows over the `saveat` intervals for every flow edge in the model. In the time column the start of the period is indicated. column | type | unit -------------- | --------------------- | ---- time | DateTime | - -edge_id | Union{Int32, Missing} | - +edge_id | Int32 | - from_node_type | String | - from_node_id | Int32 | - to_node_type | String | - @@ -734,8 +743,7 @@ flow_rate | Float64 | $m^3 s^{-1}$ The table is sorted by time, and per time the same `edge_id` order is used, though not sorted. The `edge_id` value is the same as the `fid` written to the Edge table, and can be used to directly look up the Edge geometry. -Flows that are added to the model at a node, have a missing `edge_id`, and identical `from_node_id` and `to_node_id`. -Flows out of the model always have a negative sign, and additions a positive sign. +Flows from the "from" to the "to" node have a positive sign, and if the flow is reversed it will be negative. ## DiscreteControl - `control.arrow` From 116069f692aa0b5a0f81426c7acc0d01a5dfa008 Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Thu, 28 Mar 2024 17:34:15 +0100 Subject: [PATCH 020/158] Stop specifying own `FilePath` type (#1335) --- python/ribasim/ribasim/input_base.py | 11 +++++------ python/ribasim/ribasim/model.py | 12 +++++------- python/ribasim/ribasim/types.py | 5 ----- 3 files changed, 10 insertions(+), 18 deletions(-) delete mode 100644 python/ribasim/ribasim/types.py diff --git a/python/ribasim/ribasim/input_base.py b/python/ribasim/ribasim/input_base.py index d728b7462..99a5ec1b3 100644 --- a/python/ribasim/ribasim/input_base.py +++ b/python/ribasim/ribasim/input_base.py @@ -33,7 +33,6 @@ ) import ribasim -from ribasim.types import FilePath __all__ = ("TableModel",) @@ -286,7 +285,7 @@ def _write_arrow(self, filepath: Path, directory: Path, input_dir: Path) -> None ) @classmethod - def _from_db(cls, path: FilePath, table: str) -> pd.DataFrame | None: + def _from_db(cls, path: Path, table: str) -> pd.DataFrame | None: with connect(path) as connection: if exists(connection, table): query = f"select * from {esc_id(table)}" @@ -299,7 +298,7 @@ def _from_db(cls, path: FilePath, table: str) -> pd.DataFrame | None: return df @classmethod - def _from_arrow(cls, path: FilePath) -> pd.DataFrame: + def _from_arrow(cls, path: Path) -> pd.DataFrame: directory = context_file_loading.get().get("directory", Path(".")) return pd.read_feather(directory / path) @@ -358,7 +357,7 @@ class SpatialTableModel(TableModel[TableT], Generic[TableT]): df: GeoDataFrame[TableT] | None = Field(default=None, exclude=True, repr=False) @classmethod - def _from_db(cls, path: FilePath, table: str): + def _from_db(cls, path: Path, table: str): with connect(path) as connection: if exists(connection, table): df = gpd.read_file(path, layer=table, fid_as_index=True) @@ -367,13 +366,13 @@ def _from_db(cls, path: FilePath, table: str): return df - def _write_table(self, path: FilePath) -> None: + def _write_table(self, path: Path) -> None: """ Write the contents of the input to a database. Parameters ---------- - path : FilePath + path : Path """ assert self.df is not None self.df.to_file(path, layer=self.tablename(), driver="GPKG", mode="a") diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index f6d208890..ce19d7b24 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -1,5 +1,6 @@ import datetime from collections.abc import Generator +from os import PathLike from pathlib import Path from typing import Any @@ -11,7 +12,6 @@ from pydantic import ( DirectoryPath, Field, - FilePath, field_serializer, model_validator, ) @@ -125,9 +125,7 @@ def __repr__(self) -> str: content.append(")") return "\n".join(content) - def _write_toml(self, fn: FilePath): - fn = Path(fn) - + def _write_toml(self, fn: Path): content = self.model_dump(exclude_unset=True, exclude_none=True, by_alias=True) # Filter empty dicts (default Nodes) content = dict(filter(lambda x: x[1], content.items())) @@ -201,11 +199,11 @@ def validate_model(self): self.validate_model_node_ids() @classmethod - def read(cls, filepath: FilePath) -> "Model": + def read(cls, filepath: str | PathLike[str]) -> "Model": """Read model from TOML file.""" return cls(filepath=filepath) # type: ignore - def write(self, filepath: Path | str) -> Path: + def write(self, filepath: str | PathLike[str]) -> Path: """ Write the contents of the model to disk and save it as a TOML configuration file. @@ -213,7 +211,7 @@ def write(self, filepath: Path | str) -> Path: Parameters ---------- - filepath: FilePath ending in .toml + filepath: str | PathLike[str] A file path with .toml extension """ # TODO # self.validate_model() diff --git a/python/ribasim/ribasim/types.py b/python/ribasim/ribasim/types.py deleted file mode 100644 index 407e07f53..000000000 --- a/python/ribasim/ribasim/types.py +++ /dev/null @@ -1,5 +0,0 @@ -from os import PathLike - -FilePath = str | PathLike[str] - -__all__ = () From ae2fdf9af57735041088d3824ee2c943cdbb6a83 Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 28 Mar 2024 17:39:43 +0100 Subject: [PATCH 021/158] Expose proper vertical flux data (#1337) Fixes https://github.com/Deltares/Ribasim/issues/1334. --- core/src/bmi.jl | 4 ++-- core/test/bmi_test.jl | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/core/src/bmi.jl b/core/src/bmi.jl index 7414d3dfe..bb4ee55f1 100644 --- a/core/src/bmi.jl +++ b/core/src/bmi.jl @@ -37,9 +37,9 @@ function BMI.get_value_ptr(model::Model, name::AbstractString) elseif name == "basin.level" get_tmp(model.integrator.p.basin.current_level, 0) elseif name == "basin.infiltration" - get_tmp(model.integrator.p.basin.vertical_flux, 0).infiltration + model.integrator.p.basin.vertical_flux_from_input.infiltration elseif name == "basin.drainage" - get_tmp(model.integrator.p.basin.vertical_flux, 0).drainage + model.integrator.p.basin.vertical_flux_from_input.drainage elseif name == "basin.infiltration_integrated" model.integrator.p.basin.vertical_flux_bmi.infiltration elseif name == "basin.drainage_integrated" diff --git a/core/test/bmi_test.jl b/core/test/bmi_test.jl index 7b37b2017..8db5258fd 100644 --- a/core/test/bmi_test.jl +++ b/core/test/bmi_test.jl @@ -93,3 +93,20 @@ end BMI.update_until(model, 0.6day) @test all(isapprox.(realized, demand * 0.6day; rtol = 1e-3)) end + +@testitem "vertical basin flux" begin + import BasicModelInterface as BMI + + toml_path = normpath(@__DIR__, "../../generated_testmodels/basic/ribasim.toml") + @test ispath(toml_path) + model = BMI.initialize(Ribasim.Model, toml_path) + drainage = BMI.get_value_ptr(model, "basin.drainage") + drainage_flux = [1.0, 2.0, 3.0, 4.0] + drainage .= drainage_flux + + Δt = 5 * 86400.0 + BMI.update_until(model, Δt) + + drainage_integrated = BMI.get_value_ptr(model, "basin.drainage_integrated") + @test drainage_integrated ≈ Δt * drainage_flux +end From 261643f9c89166a07e270a88f3936de578bdd595 Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Thu, 28 Mar 2024 18:03:55 +0100 Subject: [PATCH 022/158] Cleanup model.py (#1336) Co-authored-by: Martijn Visser --- python/ribasim/ribasim/model.py | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index ce19d7b24..523eb9316 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -58,8 +58,8 @@ class Model(FileModel): starttime: datetime.datetime endtime: datetime.datetime - input_dir: Path = Field(default_factory=lambda: Path(".")) - results_dir: Path = Field(default_factory=lambda: Path("results")) + input_dir: Path = Field(default=Path(".")) + results_dir: Path = Field(default=Path("results")) logging: Logging = Field(default_factory=Logging) solver: Solver = Field(default_factory=Solver) @@ -102,7 +102,10 @@ def serialize_path(self, path: Path) -> str: return str(path) def model_post_init(self, __context: Any) -> None: - # Always write dir fields + # When serializing we exclude fields that are set to their default values + # However, we always want to write `input_dir` and `results_dir` + # By overriding `BaseModel.model_post_init` we can set them explicitly, + # and enforce that they are always written. self.model_fields_set.update({"input_dir", "results_dir"}) def __repr__(self) -> str: @@ -125,7 +128,20 @@ def __repr__(self) -> str: content.append(")") return "\n".join(content) - def _write_toml(self, fn: Path): + def _write_toml(self, fn: Path) -> Path: + """ + Write the model data to a TOML file. + + Parameters + ---------- + fn : FilePath + The file path where the TOML file will be written. + + Returns + ------- + Path + The file path of the written TOML file. + """ content = self.model_dump(exclude_unset=True, exclude_none=True, by_alias=True) # Filter empty dicts (default Nodes) content = dict(filter(lambda x: x[1], content.items())) @@ -169,7 +185,7 @@ def _nodes(self) -> Generator[MultiNodeModel, Any, None]: if ( isinstance(attr, MultiNodeModel) and attr.node.df is not None - # Model.read creates empty node tables (#1278) + # TODO: Model.read creates empty node tables (#1278) and not attr.node.df.empty ): yield attr @@ -348,7 +364,11 @@ def plot(self, ax=None, indicate_subnetworks: bool = True) -> Any: return ax def to_xugrid(self): - """Convert the network to a xugrid.UgridDataset.""" + """ + Convert the network to a `xugrid.UgridDataset`. + This method will throw `ImportError`, + if the optional dependency `xugrid` isn't installed. + """ node_df = self.node_table().df # This will need to be adopted for locally unique node IDs, From ab7aa518ca390eafff51491eb5172128b5d626ea Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Thu, 28 Mar 2024 18:04:12 +0100 Subject: [PATCH 023/158] Add example for running from Python (#1338) --- build/tests/test_models.py | 7 +------ docs/python/examples.ipynb | 22 ++++++++++++++++++---- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/build/tests/test_models.py b/build/tests/test_models.py index f4d23bb41..61a1aa804 100644 --- a/build/tests/test_models.py +++ b/build/tests/test_models.py @@ -1,4 +1,3 @@ -import platform import subprocess from pathlib import Path @@ -16,11 +15,7 @@ def test_ribasim_cli(model_constructor, tmp_path): assert isinstance(model, ribasim.Model) model.write(tmp_path / "ribasim.toml") - extension = ".exe" if platform.system() == "Windows" else "" - - executable = ( - Path(__file__).parents[1] / "ribasim_cli" / "bin" / f"ribasim{extension}" - ) + executable = Path(__file__).parents[1] / "ribasim_cli" / "bin" / "ribasim" result = subprocess.run([executable, tmp_path / "ribasim.toml"]) if model_constructor.__name__.startswith("invalid_"): diff --git a/docs/python/examples.ipynb b/docs/python/examples.ipynb index d2583c8db..4908afb22 100644 --- a/docs/python/examples.ipynb +++ b/docs/python/examples.ipynb @@ -361,7 +361,8 @@ "metadata": {}, "outputs": [], "source": [ - "model.write(datadir / \"basic/ribasim.toml\")" + "toml_path = datadir / \"basic/ribasim.toml\"\n", + "model.write(toml_path)" ] }, { @@ -378,7 +379,7 @@ " \"julia\",\n", " \"--project=../../core\",\n", " \"--eval\",\n", - " f'using Ribasim; Ribasim.main(\"{datadir.as_posix()}/basic/ribasim.toml\")',\n", + " f'using Ribasim; Ribasim.main(\"{toml_path.as_posix()}\")',\n", " ],\n", " check=True,\n", ")" @@ -389,8 +390,21 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Now run the model with `ribasim basic/ribasim.toml`.\n", - "After running the model, read back the results:\n" + "Now run the model. From Python you can run it with:\n", + "\n", + "```python\n", + "import subprocess\n", + "subprocess.call([cli_path, toml_path], check=True)\n", + "```\n", + "\n", + "Windows users should note that if you put the `ribasim_cli` folder in your Path, `cli_path` needs to have the cmd suffix; `ribasim.cmd`.\n", + "\n", + "Or similarly you can from the terminal with:\n", + "```bash\n", + "ribasim basic/ribasim.toml\n", + "```\n", + "\n", + "After running the model, read back the results:" ] }, { From 5974e08c0b2c97e4aa79db741b7bfc5795e5027d Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Tue, 2 Apr 2024 13:39:22 +0200 Subject: [PATCH 024/158] Split collecting subnetwork demand into internal sources and main network phases (#1235) Fixes https://github.com/Deltares/Ribasim/issues/1207. --------- Co-authored-by: Martijn Visser --- core/src/allocation_init.jl | 6 +- core/src/allocation_optim.jl | 477 ++++++++++++------ core/src/callback.jl | 5 +- core/src/parameter.jl | 17 +- core/src/read.jl | 4 +- core/src/solve.jl | 73 +-- core/src/util.jl | 34 +- core/src/write.jl | 4 +- core/test/allocation_test.jl | 120 ++++- core/test/run_models_test.jl | 4 +- core/test/validation_test.jl | 1 + docs/core/allocation.qmd | 28 +- .../ribasim_testmodels/__init__.py | 2 + .../ribasim_testmodels/allocation.py | 20 + 14 files changed, 564 insertions(+), 231 deletions(-) diff --git a/core/src/allocation_init.jl b/core/src/allocation_init.jl index 6fd3ddbd5..f32a6855d 100644 --- a/core/src/allocation_init.jl +++ b/core/src/allocation_init.jl @@ -366,8 +366,7 @@ function add_variables_basin!( (; graph) = p node_ids_basin = [ node_id for node_id in graph[].node_ids[allocation_network_id] if - graph[node_id].type == :basin && - has_external_demand(graph, node_id, :level_demand)[1] + graph[node_id].type == :basin ] problem[:F_basin_in] = JuMP.@variable(problem, F_basin_in[node_id = node_ids_basin,] >= 0.0) @@ -425,8 +424,7 @@ function add_variables_absolute_value!( type = node_id.type if type == NodeType.UserDemand push!(node_ids_user_demand, node_id) - elseif type == NodeType.Basin && - has_external_demand(graph, node_id, :level_demand)[1] + elseif type == NodeType.Basin push!(node_ids_level_demand, node_id) elseif has_external_demand(graph, node_id, :flow_demand)[1] push!(node_ids_flow_demand, node_id) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index 6f3606d4b..2d6cf45b1 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -1,3 +1,5 @@ +@enumx OptimizationType internal_sources collect_demands allocate + """ Add a term to the objective function given by the objective type, depending in the provided flow variable and the associated demand. @@ -75,8 +77,8 @@ function set_objective_priority!( priority_idx::Int, )::Nothing (; problem, allocation_network_id) = allocation_model - (; graph, allocation, user_demand, flow_demand, basin) = p - (; demand_itp, demand_from_timeseries, node_id) = user_demand + (; graph, user_demand, flow_demand, allocation, basin) = p + (; node_id) = user_demand (; main_network_connections, subnetwork_demands) = allocation edge_ids = graph[].edge_ids[allocation_network_id] @@ -112,13 +114,7 @@ function set_objective_priority!( if to_node_id.type == NodeType.UserDemand # UserDemand - user_demand_idx = findsorted(node_id, to_node_id) - if demand_from_timeseries[user_demand_idx] - d = demand_itp[user_demand_idx][priority_idx](t) - set_user_demand!(p, to_node_id, priority_idx, d) - else - d = get_user_demand(p, to_node_id, priority_idx) - end + d = get_user_demand(p, to_node_id, priority_idx) add_user_demand_term!(edge_id, d, problem) else has_demand, demand_node_id = @@ -159,8 +155,8 @@ Assign the allocations to the UserDemand as determined by the solution of the al function assign_allocations!( allocation_model::AllocationModel, p::Parameters, - priority_idx::Int; - collect_demands::Bool = false, + priority_idx::Int, + optimization_type::OptimizationType.T, )::Nothing (; problem, allocation_network_id) = allocation_model (; graph, user_demand, allocation) = p @@ -176,19 +172,19 @@ function assign_allocations!( for edge_id in edge_ids # If this edge is a source edge from the main network to a subnetwork, # and demands are being collected, add its flow to the demand of this edge - if collect_demands && - graph[edge_id...].allocation_network_id_source == allocation_network_id && - edge_id ∈ main_network_source_edges - allocated = JuMP.value(F[edge_id]) - subnetwork_demands[edge_id][priority_idx] += allocated - end - - user_demand_node_id = edge_id[2] - - if user_demand_node_id.type == NodeType.UserDemand - allocated = JuMP.value(F[edge_id]) - user_demand_idx = findsorted(user_demand.node_id, user_demand_node_id) - user_demand.allocated[user_demand_idx][priority_idx] = allocated + if optimization_type == OptimizationType.collect_demands + if graph[edge_id...].allocation_network_id_source == allocation_network_id && + edge_id ∈ main_network_source_edges + allocated = JuMP.value(F[edge_id]) + subnetwork_demands[edge_id][priority_idx] += allocated + end + elseif optimization_type == OptimizationType.allocate + user_demand_node_id = edge_id[2] + if user_demand_node_id.type == NodeType.UserDemand + allocated = JuMP.value(F[edge_id]) + user_demand_idx = findsorted(user_demand.node_id, user_demand_node_id) + user_demand.allocated[user_demand_idx][priority_idx] = allocated + end end end @@ -209,53 +205,67 @@ function assign_allocations!( end """ -Adjust the source flows. +Set the capacities of the main network to subnetwork inlets. +Per optimization type: +internal_sources: 0.0 +collect_demands: Inf +allocate: the total flow allocated to this inlet from the main network """ -function adjust_capacities_source!( +function set_initial_capacities_inlet!( allocation_model::AllocationModel, p::Parameters, - priority_idx::Int; - collect_demands::Bool = false, + optimization_type::OptimizationType.T, )::Nothing (; problem) = allocation_model - (; graph, allocation) = p + (; allocation) = p (; allocation_network_id) = allocation_model (; subnetwork_allocateds) = allocation - edge_ids = graph[].edge_ids[allocation_network_id] source_constraints = problem[:source] - F = problem[:F] main_network_source_edges = get_main_network_connections(p, allocation_network_id) + for edge_id in main_network_source_edges + source_capacity = if optimization_type == OptimizationType.internal_sources + # Set the source capacity to 0 if optimization is being done for the internal subnetwork sources + 0.0 + elseif optimization_type == OptimizationType.collect_demands + # Set the source capacity to effectively unlimited if subnetwork demands are being collected + Inf + elseif optimization_type == OptimizationType.allocate + # Set the source capacity to the sum over priorities of the values allocated to the subnetwork over this edge + sum(subnetwork_allocateds[edge_id]) + end + JuMP.set_normalized_rhs(source_constraints[edge_id], source_capacity) + end + return nothing +end + +""" +Set the capacities of the sources in the subnetwork +as the latest instantaneous flow out of the source in the physical layer +""" +function set_initial_capacities_source!( + allocation_model::AllocationModel, + p::Parameters, +)::Nothing + (; problem) = allocation_model + (; graph) = p + (; allocation_network_id) = allocation_model + edge_ids = graph[].edge_ids[allocation_network_id] + source_constraints = problem[:source] + main_network_source_edges = get_main_network_connections(p, allocation_network_id) + for edge_id in edge_ids if graph[edge_id...].allocation_network_id_source == allocation_network_id # If it is a source edge for this allocation problem - if priority_idx == 1 - # If the optimization was just started, i.e. sources have to be reset - if edge_id in main_network_source_edges - if collect_demands - # Set the source capacity to effectively unlimited if subnetwork demands are being collected - source_capacity = Inf - else - # Set the source capacity to the value allocated to the subnetwork over this edge - source_capacity = subnetwork_allocateds[edge_id][priority_idx] - end - else - # Reset the source to the current flow from the physical layer. - source_capacity = get_flow(graph, edge_id..., 0) - end + if edge_id ∉ main_network_source_edges + # Reset the source to the current flow from the physical layer. + source_capacity = get_flow(graph, edge_id..., 0) JuMP.set_normalized_rhs( source_constraints[edge_id], # It is assumed that the allocation procedure does not have to be differentiated. source_capacity, ) - else - # Subtract the allocated flow from the source. - JuMP.set_normalized_rhs( - source_constraints[edge_id], - JuMP.normalized_rhs(source_constraints[edge_id]) - - JuMP.value(F[edge_id]), - ) end end end @@ -263,22 +273,35 @@ function adjust_capacities_source!( end """ -Set the values of the edge capacities. 2 cases: -- Before the first allocation solve, set the edge capacities to their full capacity; -- Before an allocation solve, subtract the flow used by allocation for the previous priority - from the edge capacities. +Adjust the source capacities by the flow used from the sources. """ -function adjust_capacities_edge!( +function adjust_capacities_source!(allocation_model::AllocationModel)::Nothing + (; problem) = allocation_model + source_constraints = problem[:source] + F = problem[:F] + + for edge_id in only(source_constraints.axes) + # Subtract the allocated flow from the source + JuMP.set_normalized_rhs( + source_constraints[edge_id], + JuMP.normalized_rhs(source_constraints[edge_id]) - JuMP.value(F[edge_id]), + ) + end + return nothing +end + +""" +Set the capacities of the allocation flow edges as determined by +the smallest max_flow_rate of a node on this edge +""" +function set_initial_capacities_edge!( allocation_model::AllocationModel, p::Parameters, - priority_idx::Int, )::Nothing (; graph) = p (; problem, capacity, allocation_network_id) = allocation_model edge_ids = graph[].edge_ids[allocation_network_id] constraints_capacity = problem[:capacity] - F = problem[:F] - main_network_source_edges = get_main_network_connections(p, allocation_network_id) for edge_id in edge_ids @@ -290,18 +313,30 @@ function adjust_capacities_edge!( if isinf(c) || edge_id ∈ main_network_source_edges continue end + JuMP.set_normalized_rhs(constraints_capacity[edge_id], c) + end - if priority_idx == 1 - # Before the first allocation solve, set the edge capacities to their full capacity - JuMP.set_normalized_rhs(constraints_capacity[edge_id], c) - else - # Before an allocation solve, subtract the flow used by allocation for the previous priority - # from the edge capacities - JuMP.set_normalized_rhs( - constraints_capacity[edge_id], - JuMP.normalized_rhs(constraints_capacity[edge_id]) - JuMP.value(F[edge_id]), - ) - end + return nothing +end + +""" +Set the values of the edge capacities. 2 cases: +- Before the first allocation solve, set the edge capacities to their full capacity; +- Before an allocation solve, subtract the flow used by allocation for the previous priority + from the edge capacities. +""" +function adjust_capacities_edge!(allocation_model::AllocationModel)::Nothing + (; problem) = allocation_model + constraints_capacity = problem[:capacity] + F = problem[:F] + + for edge_id in only(constraints_capacity.axes) + # Before an allocation solve, subtract the flow used by allocation for the previous priority + # from the edge capacities + JuMP.set_normalized_rhs( + constraints_capacity[edge_id], + JuMP.normalized_rhs(constraints_capacity[edge_id]) - JuMP.value(F[edge_id]), + ) end end @@ -394,34 +429,95 @@ function get_basin_demand( end """ -Set the capacities of the basin outflows. 2 cases: -- Before the first allocation solve, set the capacities to their full capacity if there is surplus storage; -- Before an allocation solve, subtract the flow used by allocation for the previous priority - from the capacities. +Set the initial capacity of each basin in the subnetwork as +vertical fluxes + the disk of storage above the maximum level / Δt_allocation """ -function adjust_capacities_basin!( +function set_initial_capacities_basin!( allocation_model::AllocationModel, - u::ComponentVector, p::Parameters, + u::ComponentVector, t::Float64, - priority_idx::Int, )::Nothing (; problem) = allocation_model constraints_outflow = problem[:basin_outflow] + + for node_id in only(constraints_outflow.axes) + constraint = constraints_outflow[node_id] + JuMP.set_normalized_rhs( + constraint, + get_basin_capacity(allocation_model, u, p, t, node_id), + ) + end + return nothing +end + +""" +Set the values of the basin outflows. 2 cases: +- Before the first allocation solve, set the capacities to their full capacity if there is surplus storage; +- Before an allocation solve, subtract the flow used by allocation for the previous priority + from the capacities. +""" +function adjust_capacities_basin!(allocation_model::AllocationModel)::Nothing + (; problem) = allocation_model + constraints_outflow = problem[:basin_outflow] F_basin_out = problem[:F_basin_out] for node_id in only(constraints_outflow.axes) constraint = constraints_outflow[node_id] - if priority_idx == 1 - JuMP.set_normalized_rhs( - constraint, - get_basin_capacity(allocation_model, u, p, t, node_id), - ) - else - JuMP.set_normalized_rhs( - constraint, - JuMP.normalized_rhs(constraint) - JuMP.value(F_basin_out[node_id]), - ) + JuMP.set_normalized_rhs( + constraint, + JuMP.normalized_rhs(constraint) - JuMP.value(F_basin_out[node_id]), + ) + end + + return nothing +end + +""" +Set the demands of the user demand nodes as given +by either a coupled model or a timeseries +""" +function set_initial_demands_user!( + allocation_model::AllocationModel, + p::Parameters, + t::Float64, +)::Nothing + (; allocation_network_id) = allocation_model + (; graph, user_demand, allocation) = p + (; node_id, demand_from_timeseries, demand_itp) = user_demand + + # Read the demand from the interpolated timeseries + # for users for which the demand comes from there + for (i, id) in enumerate(node_id) + if demand_from_timeseries[i] && + graph[id].allocation_network_id == allocation_network_id + for priority_idx in eachindex(allocation.priorities) + d = demand_itp[i][priority_idx](t) + set_user_demand!(p, id, priority_idx, d; reduced = false) + end + end + end + copy!(user_demand.demand_reduced, user_demand.demand) + return nothing +end + +""" +Set the initial demand of each basin in the subnetwork as +- vertical fluxes + the disk of missing storage below the minimum level / Δt_allocation +""" +function set_initial_demands_level!( + allocation_model::AllocationModel, + u::ComponentVector, + p::Parameters, + t::Float64, +)::Nothing + (; allocation_network_id) = allocation_model + (; graph, basin) = p + (; node_id, demand) = basin + + for (i, id) in enumerate(node_id) + if graph[id].allocation_network_id == allocation_network_id + demand[i] = get_basin_demand(allocation_model, u, p, t, id) end end @@ -476,48 +572,116 @@ Set the demand of the flow demand nodes. 2 cases: - Before an allocation solve, subtract the flow trough the node with a flow demand from the total flow demand (which will be used at the priority of the flow demand only). """ -function adjust_demands_flow!( +function adjust_demands_user!( allocation_model::AllocationModel, p::Parameters, - t::Float64, priority_idx::Int, )::Nothing - (; flow_demand, graph) = p (; problem, allocation_network_id) = allocation_model + (; graph, user_demand) = p F = problem[:F] + # Reduce the demand by what was allocated + for id in user_demand.node_id + if graph[id].allocation_network_id == allocation_network_id + d = max( + 0.0, + get_user_demand(p, id, priority_idx) - + JuMP.value(F[(inflow_id(graph, id), id)]), + ) + set_user_demand!(p, id, priority_idx, d) + end + end + return nothing +end + +""" +Subtract the allocated flow to the basin from its demand, +to obtain the reduced demand used for goal programming +""" +function adjust_demands_level!(allocation_model::AllocationModel, p::Parameters)::Nothing + (; graph, basin) = p + (; node_id, demand) = basin + (; allocation_network_id, problem) = allocation_model + F_basin_in = problem[:F_basin_in] + + # Reduce the demand by what was allocated + for (i, id) in enumerate(node_id) + if graph[id].allocation_network_id == allocation_network_id + demand[i] -= JuMP.value(F_basin_in[id]) + end + end + + return nothing +end + +""" +Set the initial demands of the nodes with a flow demand to the +interpolated value from the given timeseries. +""" +function set_initial_demands_flow!( + allocation_model::AllocationModel, + p::Parameters, + t::Float64, +)::Nothing + (; flow_demand, graph) = p + (; allocation_network_id) = allocation_model + for (i, node_id) in enumerate(flow_demand.node_id) if graph[node_id].allocation_network_id != allocation_network_id continue end + flow_demand.demand[i] = flow_demand.demand_itp[i](t) + end + return nothing +end - if priority_idx == 1 - flow_demand.demand[i] = flow_demand.demand_itp[i](t) - else - node_with_demand_id = - only(outneighbor_labels_type(graph, node_id, EdgeType.control)) +""" +Reduce the flow demand based on flow trough the node with the demand. +Flow from any priority counts. +""" +function adjust_demands_flow!(allocation_model::AllocationModel, p::Parameters)::Nothing + (; flow_demand, graph) = p + (; problem, allocation_network_id) = allocation_model + F = problem[:F] - flow_demand.demand[i] = max( - 0.0, - flow_demand.demand[i] - JuMP.value( - F[(inflow_id(graph, node_with_demand_id), node_with_demand_id)], - ), - ) + for (i, node_id) in enumerate(flow_demand.node_id) + if graph[node_id].allocation_network_id != allocation_network_id + continue end + + node_with_demand_id = + only(outneighbor_labels_type(graph, node_id, EdgeType.control)) + + flow_demand.demand[i] = max( + 0.0, + flow_demand.demand[i] - + JuMP.value(F[(inflow_id(graph, node_with_demand_id), node_with_demand_id)]), + ) end return nothing end """ -Adjust the capacities of the flow buffers of nodes with a flow demand. 2 cases: -- Before the first allocation solve, set the capacities to 0.0; -- Before an allocation solve, add the flow into the buffer and remove the flow out - of the buffer from the buffer capacity. +Set the flow buffer of nodes with a flow demand to 0.0 """ -function adjust_capacities_buffers!( - allocation_model::AllocationModel, - priority_idx::Int, -)::Nothing +function set_initial_capacities_buffer!(allocation_model::AllocationModel)::Nothing + (; problem) = allocation_model + constraints_flow_buffer = problem[:flow_buffer_outflow] + + for node_id in only(constraints_flow_buffer.axes) + constraint = constraints_flow_buffer[node_id] + buffer_capacity = 0.0 + JuMP.set_normalized_rhs(constraint, buffer_capacity) + end + return nothing +end + +""" +Increase the capacities of the flow buffers of nodes with a flow demand +by the inflow to the respective buffers. +""" +function adjust_capacities_buffer!(allocation_model::AllocationModel)::Nothing (; problem) = allocation_model constraints_flow_buffer = problem[:flow_buffer_outflow] @@ -527,17 +691,11 @@ function adjust_capacities_buffers!( for node_id in only(constraints_flow_buffer.axes) constraint = constraints_flow_buffer[node_id] - - buffer_capacity = if priority_idx == 1 - 0.0 - else - max( - 0.0, - JuMP.normalized_rhs(constraint) + JuMP.value(F_flow_buffer_in[node_id]) - - JuMP.value(F_flow_buffer_out[node_id]), - ) - end - + buffer_capacity = max( + 0.0, + JuMP.normalized_rhs(constraint) + JuMP.value(F_flow_buffer_in[node_id]) - + JuMP.value(F_flow_buffer_out[node_id]), + ) JuMP.set_normalized_rhs(constraint, buffer_capacity) end return nothing @@ -548,7 +706,7 @@ Set the capacity of the outflow edge from a node with a flow demand: - To Inf if the current priority is other than the priority of the flow demand - To 0.0 if the current priority is equal to the priority of the flow demand """ -function adjust_capacities_flow_demand_outflow!( +function set_capacities_flow_demand_outflow!( allocation_model::AllocationModel, p::Parameters, priority_idx::Int, @@ -672,7 +830,7 @@ function save_allocation_flows!( t::Float64, allocation_model::AllocationModel, priority::Int32, - collect_demands::Bool, + optimization_type::OptimizationType.T, )::Nothing (; problem, allocation_network_id) = allocation_model (; allocation, graph) = p @@ -697,7 +855,7 @@ function save_allocation_flows!( push!(record_flow.subnetwork_id, allocation_network_id) push!(record_flow.priority, priority) push!(record_flow.flow_rate, flow_rate) - push!(record_flow.collect_demands, collect_demands) + push!(record_flow.optimization_type, string(optimization_type)) end end @@ -715,7 +873,7 @@ function save_allocation_flows!( push!(record_flow.subnetwork_id, allocation_network_id) push!(record_flow.priority, priority) push!(record_flow.flow_rate, flow_rate) - push!(record_flow.collect_demands, collect_demands) + push!(record_flow.optimization_type, string(optimization_type)) end end @@ -727,18 +885,14 @@ function allocate_priority!( u::ComponentVector, p::Parameters, t::Float64, - priority_idx::Int; - collect_demands::Bool = false, + priority_idx::Int, + optimization_type::OptimizationType.T, )::Nothing (; problem) = allocation_model (; allocation) = p (; priorities) = allocation - adjust_capacities_source!(allocation_model, p, priority_idx; collect_demands) - adjust_capacities_edge!(allocation_model, p, priority_idx) - adjust_capacities_basin!(allocation_model, u, p, t, priority_idx) - adjust_capacities_buffers!(allocation_model, priority_idx) - adjust_demands_flow!(allocation_model, p, t, priority_idx) + set_capacities_flow_demand_outflow!(allocation_model, p, priority_idx) # Set the objective depending on the demands # A new objective function is set instead of modifying the coefficients @@ -747,8 +901,6 @@ function allocate_priority!( # https://jump.dev/JuMP.jl/v1.16/manual/objective/#Modify-an-objective-coefficient set_objective_priority!(allocation_model, p, u, t, priority_idx) - adjust_capacities_flow_demand_outflow!(allocation_model, p, priority_idx) - # Solve the allocation problem for this priority JuMP.optimize!(problem) @debug JuMP.solution_summary(problem) @@ -761,7 +913,7 @@ function allocate_priority!( end # Assign the allocations to the UserDemand for this priority - assign_allocations!(allocation_model, p, priority_idx; collect_demands) + assign_allocations!(allocation_model, p, priority_idx, optimization_type) # Save the demands and allocated flows for all nodes that have these save_demands_and_allocations!(p, allocation_model, t, priority_idx) @@ -772,10 +924,42 @@ function allocate_priority!( t, allocation_model, priorities[priority_idx], - collect_demands, + optimization_type, ) + # Adjust capacities for the optimization for the next priority + adjust_capacities_source!(allocation_model) + adjust_capacities_edge!(allocation_model) + adjust_capacities_basin!(allocation_model) + adjust_capacities_buffer!(allocation_model) adjust_capacities_returnflow!(allocation_model, p) + + # Adjust demands for next optimization (in case of internal_sources -> collect_demands) + adjust_demands_user!(allocation_model, p, priority_idx) + adjust_demands_level!(allocation_model, p) + adjust_demands_flow!(allocation_model, p) + return nothing +end + +""" +Set the initial capacities and demands which are recudes by usage in the +adjust_capacities_*! and adjust_demands_*! functions respectively. +""" +function set_initial_values!( + allocation_model::AllocationModel, + p::Parameters, + u::ComponentVector, + t::Float64, +)::Nothing + set_initial_capacities_source!(allocation_model, p) + set_initial_capacities_edge!(allocation_model, p) + set_initial_capacities_basin!(allocation_model, p, u, t) + set_initial_capacities_buffer!(allocation_model) + set_initial_capacities_returnflow!(allocation_model) + + set_initial_demands_user!(allocation_model, p, t) + set_initial_demands_level!(allocation_model, u, p, t) + set_initial_demands_flow!(allocation_model, p, t) return nothing end @@ -787,16 +971,20 @@ function allocate!( p::Parameters, allocation_model::AllocationModel, t::Float64, - u::ComponentVector; - collect_demands::Bool = false, + u::ComponentVector, + optimization_type::OptimizationType.T, )::Nothing (; allocation) = p (; allocation_network_id) = allocation_model (; priorities, subnetwork_demands) = allocation - main_network_source_edges = get_main_network_connections(p, allocation_network_id) - if collect_demands + if allocation_network_id == 1 + @assert optimization_type == OptimizationType.allocate "For the main network no demands have to be collected" + end + + # Reset the subnetwork demands to 0.0 + if optimization_type == OptimizationType.collect_demands for main_network_connection in keys(subnetwork_demands) if main_network_connection in main_network_source_edges subnetwork_demands[main_network_connection] .= 0.0 @@ -804,9 +992,14 @@ function allocate!( end end - set_initial_capacities_returnflow!(allocation_model) + set_initial_capacities_inlet!(allocation_model, p, optimization_type) + + if optimization_type != OptimizationType.collect_demands + set_initial_values!(allocation_model, p, u, t) + end + # Loop over the priorities for priority_idx in eachindex(priorities) - allocate_priority!(allocation_model, u, p, t, priority_idx; collect_demands) + allocate_priority!(allocation_model, u, p, t, priority_idx, optimization_type) end end diff --git a/core/src/callback.jl b/core/src/callback.jl index 8aa34f519..77fd2e896 100644 --- a/core/src/callback.jl +++ b/core/src/callback.jl @@ -508,7 +508,8 @@ function update_allocation!(integrator)::Nothing # If a main network is present, collect demands of subnetworks if has_main_network(allocation) for allocation_model in Iterators.drop(allocation_models, 1) - allocate!(p, allocation_model, t, u; collect_demands = true) + allocate!(p, allocation_model, t, u, OptimizationType.internal_sources) + allocate!(p, allocation_model, t, u, OptimizationType.collect_demands) end end @@ -516,7 +517,7 @@ function update_allocation!(integrator)::Nothing # If a main network is present this is solved first, # which provides allocation to the subnetworks for allocation_model in allocation_models - allocate!(p, allocation_model, t, u) + allocate!(p, allocation_model, t, u, OptimizationType.allocate) end end diff --git a/core/src/parameter.jl b/core/src/parameter.jl index 214d056a4..c5a8995e8 100644 --- a/core/src/parameter.jl +++ b/core/src/parameter.jl @@ -94,7 +94,7 @@ struct Allocation subnetwork_id::Vector{Int32}, priority::Vector{Int32}, flow_rate::Vector{Float64}, - collect_demands::BitVector, + optimization_type::Vector{String}, } end @@ -166,7 +166,7 @@ struct Basin{T, C, V1, V2, V3} <: AbstractParameterNode area::Vector{Vector{Float64}} level::Vector{Vector{Float64}} storage::Vector{Vector{Float64}} - # Demands and allocated flows for allocation if applicable + # Demands for allocation if applicable demand::Vector{Float64} # Data source for parameter updates time::StructVector{BasinTimeV1, C, Int} @@ -479,11 +479,15 @@ struct PidControl{T} <: AbstractParameterNode end """ -demand: water flux demand of UserDemand per priority over time. +active: whether this node is active and thus demands water +realized_bmi: Cumulative inflow volume, for read or reset by BMI only +demand: water flux demand of UserDemand per priority over time Each UserDemand has a demand for all priorities, which is 0.0 if it is not provided explicitly. -realized_bmi: Cumulative inflow volume, for read or reset by BMI only. -active: whether this node is active and thus demands water +demand_reduced: the total demand reduced by allocated flows. This is used for goal programming, + and requires separate memory from `demand` since demands can come from the BMI +demand_itp: Timeseries interpolation objects for demands +demand_from_timeseries: If false the demand comes from the BMI or is fixed allocated: water flux currently allocated to UserDemand per priority return_factor: the factor in [0,1] of how much of the abstracted water is given back to the system min_level: The level of the source basin below which the UserDemand does not abstract @@ -493,6 +497,7 @@ struct UserDemand <: AbstractParameterNode active::BitVector realized_bmi::Vector{Float64} demand::Vector{Float64} + demand_reduced::Vector{Float64} demand_itp::Vector{Vector{ScalarInterpolation}} demand_from_timeseries::BitVector allocated::Vector{Vector{Float64}} @@ -504,6 +509,7 @@ struct UserDemand <: AbstractParameterNode active, realized_bmi, demand, + demand_reduced, demand_itp, demand_from_timeseries, allocated, @@ -517,6 +523,7 @@ struct UserDemand <: AbstractParameterNode active, realized_bmi, demand, + demand_reduced, demand_itp, demand_from_timeseries, allocated, diff --git a/core/src/read.jl b/core/src/read.jl index 0ae86147d..dcda5a69b 100644 --- a/core/src/read.jl +++ b/core/src/read.jl @@ -742,6 +742,7 @@ function UserDemand(db::DB, config::Config)::UserDemand active = BitVector(ones(Bool, n_user)) realized_bmi = zeros(n_user) demand = zeros(n_user * n_priority) + demand_reduced = zeros(n_user * n_priority) trivial_timespan = [nextfloat(-Inf), prevfloat(Inf)] demand_itp = [ [LinearInterpolation(zeros(2), trivial_timespan) for i in eachindex(priorities)] for j in eachindex(node_ids) @@ -786,6 +787,7 @@ function UserDemand(db::DB, config::Config)::UserDemand active, realized_bmi, demand, + demand_reduced, demand_itp, demand_from_timeseries, allocated, @@ -902,7 +904,7 @@ function Allocation(db::DB, config::Config)::Allocation subnetwork_id = Int32[], priority = Int32[], flow_rate = Float64[], - collect_demands = BitVector(), + optimization_type = String[], ) allocation = Allocation( diff --git a/core/src/solve.jl b/core/src/solve.jl index f581fc591..214e4660e 100644 --- a/core/src/solve.jl +++ b/core/src/solve.jl @@ -123,8 +123,6 @@ function continuous_control!( current_area = get_tmp(current_area, u) storage = u.storage - outlet_flow_rate = get_tmp(outlet.flow_rate, u) - pump_flow_rate = get_tmp(pump.flow_rate, u) error = get_tmp(error, u) set_error!(pid_control, p, u, t) @@ -143,8 +141,10 @@ function continuous_control!( controlled_node_id = only(outneighbor_labels_type(graph, id, EdgeType.control)) controls_pump = (controlled_node_id in pump.node_id) + controlled_node_idx = + controls_pump ? findsorted(pump.node_id, controlled_node_id) : + findsorted(outlet.node_id, controlled_node_id) - # No flow of outlet if source level is lower than target level if !controls_pump src_id = inflow_id(graph, controlled_node_id) dst_id = outflow_id(graph, controlled_node_id) @@ -152,28 +152,27 @@ function continuous_control!( src_level = get_level(p, src_id, t; storage) dst_level = get_level(p, dst_id, t; storage) - if src_level === nothing || dst_level === nothing - factor_outlet = 1.0 - else + factor_outlet = 1.0 + + # No flow of outlet if source level is lower than target level + if !(src_level === nothing || dst_level === nothing) Δlevel = src_level - dst_level - factor_outlet = reduction_factor(Δlevel, 0.1) + factor_outlet *= reduction_factor(Δlevel, 0.1) + end + + # No flow out outlet if source level is lower than minimum crest level + if src_level !== nothing + factor_outlet *= reduction_factor( + src_level - outlet.min_crest_level[controlled_node_idx], + 0.1, + ) end else factor_outlet = 1.0 end - if controls_pump - controlled_node_idx = findsorted(pump.node_id, controlled_node_id) - factor_basin = - low_storage_factor(storage, basin.node_id, listened_node_id, 10.0) - else - controlled_node_idx = findsorted(outlet.node_id, controlled_node_id) - - # Upstream node of outlet does not have to be a basin - upstream_node_id = inflow_id(graph, controlled_node_id) - factor_basin = - low_storage_factor(storage, basin.node_id, upstream_node_id, 10.0) - end + id_inflow = inflow_id(graph, controlled_node_id) + factor_basin = low_storage_factor(storage, basin.node_id, id_inflow, 10.0) factor = factor_basin * factor_outlet flow_rate = 0.0 @@ -220,17 +219,6 @@ function continuous_control!( max_flow_rate[controlled_node_idx], ) - # Below du.storage is updated. This is normally only done - # in formulate!(du, connectivity, basin), but in this function - # flows are set so du has to be updated too. - if controls_pump - pump_flow_rate[controlled_node_idx] = flow_rate - du.storage[listened_node_idx] -= flow_rate - else - outlet_flow_rate[controlled_node_idx] = flow_rate - du.storage[listened_node_idx] += flow_rate - end - # Set flow for connected edges src_id = inflow_id(graph, controlled_node_id) dst_id = outflow_id(graph, controlled_node_id) @@ -238,11 +226,19 @@ function continuous_control!( set_flow!(graph, src_id, controlled_node_id, flow_rate) set_flow!(graph, controlled_node_id, dst_id, flow_rate) + # Below du.storage is updated. This is normally only done + # in formulate!(du, connectivity, basin), but in this function + # flows are set so du has to be updated too. has_index, dst_idx = id_index(basin.node_id, dst_id) if has_index du.storage[dst_idx] += flow_rate end + has_index, src_idx = id_index(basin.node_id, src_id) + if has_index + du.storage[src_idx] -= flow_rate + end + # When the controlled pump flows out into fractional flow nodes if controls_pump for id in outflow_ids(graph, controlled_node_id) @@ -271,8 +267,15 @@ function formulate_flow!( t::Number, )::Nothing (; graph, basin) = p - (; node_id, allocated, active, demand, demand_itp, return_factor, min_level) = - user_demand + (; + node_id, + allocated, + active, + demand_itp, + return_factor, + min_level, + demand_from_timeseries, + ) = user_demand for (i, id) in enumerate(node_id) src_id = inflow_id(graph, id) @@ -290,7 +293,11 @@ function formulate_flow!( # effectively allocated = demand. for priority_idx in eachindex(allocated[i]) alloc_prio = allocated[i][priority_idx] - demand_prio = demand_itp[i][priority_idx](t) + demand_prio = if demand_from_timeseries[i] + demand_itp[i][priority_idx](t) + else + get_user_demand(p, id, priority_idx; reduced = false) + end alloc = min(alloc_prio, demand_prio) q += alloc end diff --git a/core/src/util.jl b/core/src/util.jl index 879f89726..b7d5b8e5c 100644 --- a/core/src/util.jl +++ b/core/src/util.jl @@ -600,25 +600,47 @@ function is_main_network(allocation_network_id::Int32)::Bool return allocation_network_id == 1 end -function get_user_demand(p::Parameters, node_id::NodeID, priority_idx::Int)::Float64 +function get_user_demand( + p::Parameters, + node_id::NodeID, + priority_idx::Int; + reduced::Bool = true, +)::Float64 (; user_demand, allocation) = p - (; demand) = user_demand + (; demand, demand_reduced) = user_demand user_demand_idx = findsorted(user_demand.node_id, node_id) n_priorities = length(allocation.priorities) - return demand[(user_demand_idx - 1) * n_priorities + priority_idx] + idx = (user_demand_idx - 1) * n_priorities + priority_idx + + if reduced + @assert is_active(allocation) "reduced demand accessed in non-allocation run" + return demand_reduced[idx] + else + return demand[idx] + end end function set_user_demand!( p::Parameters, node_id::NodeID, priority_idx::Int, - value::Float64, + value::Float64; + reduced::Bool = true, )::Nothing (; user_demand, allocation) = p - (; demand) = user_demand + (; demand, demand_reduced) = user_demand + user_demand_idx = findsorted(user_demand.node_id, node_id) n_priorities = length(allocation.priorities) - demand[(user_demand_idx - 1) * n_priorities + priority_idx] = value + idx = (user_demand_idx - 1) * n_priorities + priority_idx + + if reduced + @assert is_active(allocation) "reduced demand accessed in non-allocation run" + demand_reduced[idx] = value + else + demand[idx] = value + end + return nothing end diff --git a/core/src/write.jl b/core/src/write.jl index 4964f1754..d54adfc18 100644 --- a/core/src/write.jl +++ b/core/src/write.jl @@ -253,7 +253,7 @@ function allocation_flow_table( subnetwork_id::Vector{Int32}, priority::Vector{Int32}, flow_rate::Vector{Float64}, - collect_demands::BitVector, + optimization_type::Vector{String}, } (; config) = model (; record_flow) = model.integrator.p.allocation @@ -270,7 +270,7 @@ function allocation_flow_table( record_flow.subnetwork_id, record_flow.priority, record_flow.flow_rate, - record_flow.collect_demands, + record_flow.optimization_type, ) end diff --git a/core/test/allocation_test.jl b/core/test/allocation_test.jl index 996e4ed83..80253447b 100644 --- a/core/test/allocation_test.jl +++ b/core/test/allocation_test.jl @@ -1,5 +1,5 @@ @testitem "Allocation solve" begin - using Ribasim: NodeID + using Ribasim: NodeID, OptimizationType using ComponentArrays: ComponentVector import SQLite import JuMP @@ -27,7 +27,7 @@ Ribasim.set_flow!(graph, NodeID(:FlowBoundary, 1), NodeID(:Basin, 2), 4.5) # Source flow allocation_model = p.allocation.allocation_models[1] u = ComponentVector(; storage = zeros(length(p.basin.node_id))) - Ribasim.allocate!(p, allocation_model, 0.0, u) + Ribasim.allocate!(p, allocation_model, 0.0, u, OptimizationType.allocate) # Last priority (= 2) flows F = allocation_model.problem[:F] @@ -45,9 +45,9 @@ # Test getting and setting UserDemand demands (; user_demand) = p - Ribasim.set_user_demand!(p, NodeID(:UserDemand, 11), 2, Float64(π)) + Ribasim.set_user_demand!(p, NodeID(:UserDemand, 11), 2, Float64(π); reduced = false) @test user_demand.demand[4] ≈ π - @test Ribasim.get_user_demand(p, NodeID(:UserDemand, 11), 2) ≈ π + @test Ribasim.get_user_demand(p, NodeID(:UserDemand, 11), 2; reduced = false) ≈ π end @testitem "Allocation objective: linear absolute" begin @@ -199,7 +199,7 @@ end @testitem "allocation with main network optimization problem" begin using SQLite - using Ribasim: NodeID + using Ribasim: NodeID, OptimizationType using ComponentArrays: ComponentVector using JuMP @@ -221,18 +221,20 @@ end # Collecting demands u = ComponentVector(; storage = zeros(length(basin.node_id))) for allocation_model in allocation_models[2:end] - Ribasim.allocate!(p, allocation_model, t, u; collect_demands = true) + Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.internal_sources) + Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.collect_demands) end + # See the difference between these values here and in + # "subnetworks_with_sources" @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [4.0, 4.0, 0.0] @test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0] - @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))] ≈ - [0.001, 0.002, 0.0011] + @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.002] # Solving for the main network, containing subnetworks as UserDemands allocation_model = allocation_models[1] (; problem) = allocation_model - Ribasim.allocate!(p, allocation_model, t, u) + Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.allocate) # Main network objective function objective = JuMP.objective_function(problem) @@ -257,6 +259,46 @@ end @test user_demand.allocated[7] ≈ [0.001, 0.0, 0.0] end +@testitem "subnetworks with sources" begin + using SQLite + using Ribasim: NodeID, OptimizationType + using ComponentArrays: ComponentVector + using JuMP + + toml_path = normpath( + @__DIR__, + "../../generated_testmodels/subnetworks_with_sources/ribasim.toml", + ) + @test ispath(toml_path) + cfg = Ribasim.Config(toml_path) + db_path = Ribasim.input_path(cfg, cfg.database) + db = SQLite.DB(db_path) + p = Ribasim.Parameters(db, cfg) + close(db) + + (; allocation, user_demand, graph, basin) = p + (; allocation_models, subnetwork_demands, subnetwork_allocateds) = allocation + t = 0.0 + + # Set flows of sources in subnetworks + Ribasim.set_flow!(graph, NodeID(:FlowBoundary, 58), NodeID(:Basin, 16), 1.0) + Ribasim.set_flow!(graph, NodeID(:FlowBoundary, 59), NodeID(:Basin, 44), 1e-3) + + # Collecting demands + u = ComponentVector(; storage = zeros(length(basin.node_id))) + for allocation_model in allocation_models[2:end] + Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.internal_sources) + Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.collect_demands) + end + + # See the difference between these values here and in + # "allocation with main network optimization problem", internal sources + # lower the subnetwork demands + @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [3.1, 4.0, 0.0] + @test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0] + @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.001] +end + @testitem "Allocation level control" begin toml_path = normpath(@__DIR__, "../../generated_testmodels/level_demand/ribasim.toml") @test ispath(toml_path) @@ -326,7 +368,7 @@ end @testitem "flow_demand" begin using JuMP - using Ribasim: NodeID, NodeType + using Ribasim: NodeID, NodeType, OptimizationType toml_path = normpath(@__DIR__, "../../generated_testmodels/flow_demand/ribasim.toml") @test ispath(toml_path) @@ -373,38 +415,68 @@ end @test constraint_flow_demand_outflow.set.upper == 0.0 t = 0.0 - - ## Priority 1 - Ribasim.allocate_priority!(allocation_model, model.integrator.u, p, t, 1) + (; u) = model.integrator + optimization_type = OptimizationType.internal_sources + Ribasim.set_initial_values!(allocation_model, p, u, t) + + # Priority 1 + Ribasim.allocate_priority!( + allocation_model, + model.integrator.u, + p, + t, + 1, + optimization_type, + ) objective = JuMP.objective_function(problem) @test F_abs_flow_demand[node_id_with_flow_demand] in keys(objective.terms) - @test flow_demand.demand[1] == flow_demand.demand_itp[1](t) + # Reduced demand + @test flow_demand.demand[1] == flow_demand.demand_itp[1](t) - 0.001 @test JuMP.normalized_rhs(constraint_flow_out) == Inf ## Priority 2 - Ribasim.allocate_priority!(allocation_model, model.integrator.u, p, t, 2) - # The flow at priority 1 through the node with a flow demand at priority 2 - # is subtracted from this flow demand - @test flow_demand.demand[1] ≈ - flow_demand.demand_itp[1](t) - - Ribasim.get_user_demand(p, NodeID(NodeType.UserDemand, 6), 1) + Ribasim.allocate_priority!( + allocation_model, + model.integrator.u, + p, + t, + 2, + optimization_type, + ) + # No demand left + @test flow_demand.demand[1] ≈ 0.0 + # Allocated + @test JuMP.value(only(F_flow_buffer_in)) == 0.001 @test JuMP.normalized_rhs(constraint_flow_out) == 0.0 ## Priority 3 - Ribasim.allocate_priority!(allocation_model, model.integrator.u, p, t, 3) + Ribasim.allocate_priority!( + allocation_model, + model.integrator.u, + p, + t, + 3, + optimization_type, + ) @test JuMP.normalized_rhs(constraint_flow_out) == Inf # The flow from the source is used up in previous priorities @test JuMP.value(F[(NodeID(NodeType.LevelBoundary, 1), node_id_with_flow_demand)]) == 0 # So flow from the flow buffer is used for UserDemand #4 - @test JuMP.value(F_flow_buffer_out[node_id_with_flow_demand]) == - Ribasim.get_user_demand(p, NodeID(NodeType.UserDemand, 4), 3) + @test JuMP.value(F_flow_buffer_out[node_id_with_flow_demand]) == 0.001 # Flow taken from buffer @test JuMP.value(only(F_flow_buffer_out)) == user_demand.demand_itp[1][3](t) # No flow coming from level boundary @test JuMP.value(F[(only(level_boundary.node_id), node_id_with_flow_demand)]) == 0 ## Priority 4 - Ribasim.allocate_priority!(allocation_model, model.integrator.u, p, t, 4) + Ribasim.allocate_priority!( + allocation_model, + model.integrator.u, + p, + t, + 4, + optimization_type, + ) # Get demand from buffers d = user_demand.demand_itp[3][4](t) @assert JuMP.value(F[(NodeID(NodeType.UserDemand, 4), NodeID(NodeType.Basin, 7))]) + diff --git a/core/test/run_models_test.jl b/core/test/run_models_test.jl index 1a41b33b6..8a24a0a6f 100644 --- a/core/test/run_models_test.jl +++ b/core/test/run_models_test.jl @@ -93,9 +93,9 @@ :subnetwork_id, :priority, :flow_rate, - :collect_demands, + :optimization_type, ), - (DateTime, Int32, String, Int32, String, Int32, Int32, Int32, Float64, Bool), + (DateTime, Int32, String, Int32, String, Int32, Int32, Int32, Float64, String), ) @test Tables.schema(subgrid) == Tables.Schema( (:time, :subgrid_id, :subgrid_level), diff --git a/core/test/validation_test.jl b/core/test/validation_test.jl index 25ddeae06..d9eaa68d9 100644 --- a/core/test/validation_test.jl +++ b/core/test/validation_test.jl @@ -423,6 +423,7 @@ end [true], [0.0], [0.0], + [0.0], [[LinearInterpolation([-5.0, -5.0], [-1.8, 1.8])]], [true], [0.0, -0.0], diff --git a/docs/core/allocation.qmd b/docs/core/allocation.qmd index dabf834f4..e3669da7d 100644 --- a/docs/core/allocation.qmd +++ b/docs/core/allocation.qmd @@ -5,16 +5,26 @@ title: "Allocation" # Introduction Allocation is the process of assigning an allocated flow rate to demand nodes in the physical layer of the model based on information about sources, the different demand nodes over various priorities, constraints introduced by nodes, local water availability and graph topology. The allocation procedure implemented in Ribasim is heavily inspired by the [maximum flow problem](https://en.wikipedia.org/wiki/Maximum_flow_problem). -The allocation problem is solved per subnetwork of the Ribasim model. The subnetwork is used to formulate an optimization problem with the [JuMP](https://jump.dev/JuMP.jl/stable/) package, which is solved using the [HiGHS solver](https://highs.dev/). For more in-depth information see also the example of solving the maximum flow problem with `JuMP.jl` [here](https://jump.dev/JuMP.jl/stable/tutorials/linear/network_flows/#The-max-flow-problem). +The allocation problem is solved per subnetwork (and main network) of the Ribasim model. Each subnetwork is used to formulate an optimization problem with the [JuMP](https://jump.dev/JuMP.jl/stable/) package, which is solved using the [HiGHS solver](https://highs.dev/). For more in-depth information see also the example of solving the maximum flow problem with `JuMP.jl` [here](https://jump.dev/JuMP.jl/stable/tutorials/linear/network_flows/#The-max-flow-problem). + +:::{.callout-note} +within this *Allocation* section the main network is also considered to be a subnetwork. +::: # The high level algorithm -The allocation algorithm consists of 3 types of optimization problems: +The allocation algorithm contains 3 types of optimization: -1. **Subnetwork demand collection**: Collect the demands of a subnetwork from the main network by optimizing with unlimited capacity from the main network; -2. **Main network allocation**: Allocate to subnetworks with the above collected demand, and demands in the main network; -3. **Subnetwork allocation**: Allocate to demands in the subnetworks with the flows allocated to the subnetwork in the main network allocation. +- `internal_sources`, where flows are allocated within a subnetwork by only using sources inside the subnetwork; +- `collect_demands`, where flows are allocated within a subnetwork by only using the main network inlet(s) as a source, with demands reduced by allocations in `internal_sources`. The allocated flows in this optimization type are not used. The goal is to see the flow through the main network inlet(s), which is interpreted as the subnetwork demand; +- `allocate`, where all available sources are used and the final allocated flows for the users are determined. -The total allocation algorithm consists of performing 1 for all subnetworks, then performing 2, then performing 3 for all subnetworks. Not having a main network is also supported, then 1 and 2 are skipped. +The full algorithm goes through the following steps: + +1. Perform `internal_sources` followed by `collect_demands` for all subnetworks apart from the main network; +2. Perform `allocate` for the main network; +3. Perform `allocate` for the other subnetworks. + +If no main network is present, then 1 and 2 are skipped. # Elements of allocation @@ -228,7 +238,7 @@ $$ {#eq-fractionalflowconstraint} ## Example -The following is an example of an optimization problem for the example shown [here](../python/examples.ipynb#model-with-allocation): +The following is an example of an optimization problem for the example shown [here](../python/examples.ipynb#model-with-allocation-user-demand): ```{julia} @@ -247,10 +257,8 @@ t = 0.0 priority_idx = 1 Ribasim.set_flow!(p.graph, NodeID(:FlowBoundary, 1), NodeID(:Basin, 2), 1.0) - -Ribasim.adjust_capacities_edge!(allocation_model, p, priority_idx) -Ribasim.adjust_capacities_source!(allocation_model, p, priority_idx) Ribasim.set_objective_priority!(allocation_model, p, u, t, priority_idx) +Ribasim.set_initial_values!(allocation_model, p, u, t) println(p.allocation.allocation_models[1].problem) ``` diff --git a/python/ribasim_testmodels/ribasim_testmodels/__init__.py b/python/ribasim_testmodels/ribasim_testmodels/__init__.py index b45077c42..e4dd9dbad 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/__init__.py +++ b/python/ribasim_testmodels/ribasim_testmodels/__init__.py @@ -15,6 +15,7 @@ main_network_with_subnetworks_model, minimal_subnetwork_model, subnetwork_model, + subnetworks_with_sources_model, user_demand_model, ) from ribasim_testmodels.backwater import backwater_model @@ -89,6 +90,7 @@ "pump_discrete_control_model", "rating_curve_model", "subnetwork_model", + "subnetworks_with_sources_model", "tabulated_rating_curve_control_model", "tabulated_rating_curve_model", "trivial_model", diff --git a/python/ribasim_testmodels/ribasim_testmodels/allocation.py b/python/ribasim_testmodels/ribasim_testmodels/allocation.py index 2ff7bac8b..592a93ec7 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/allocation.py +++ b/python/ribasim_testmodels/ribasim_testmodels/allocation.py @@ -843,6 +843,26 @@ def main_network_with_subnetworks_model() -> Model: return model +def subnetworks_with_sources_model() -> Model: + """Generate a model with subnetworks which contain sources.""" + + model = main_network_with_subnetworks_model() + + model.flow_boundary.add( + Node(58, Point(3, 5), subnetwork_id=3), + [flow_boundary.Static(flow_rate=[0.003])], + ) + model.flow_boundary.add( + Node(59, Point(28, 5), subnetwork_id=7), + [flow_boundary.Static(flow_rate=[0.003])], + ) + + model.edge.add(model.flow_boundary[58], model.basin[16], subnetwork_id=3) + model.edge.add(model.flow_boundary[59], model.basin[44], subnetwork_id=7) + + return model + + def level_demand_model() -> Model: """Small model with a LevelDemand.""" From 07d60779a94b8879b006c184d37edc17badbc44c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 2 Apr 2024 18:36:23 +0200 Subject: [PATCH 025/158] Update Julia manifest (#1341) Update Julia dependencies to the latest version. --------- Co-authored-by: GitHub Co-authored-by: Martijn Visser --- Manifest.toml | 187 ++++++++++++++++++++++++++-------------------- core/Project.toml | 2 +- 2 files changed, 108 insertions(+), 81 deletions(-) diff --git a/Manifest.toml b/Manifest.toml index 09316d88f..e5e063cf4 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -5,9 +5,9 @@ manifest_format = "2.0" project_hash = "22708fb864a341d70b001d75765852e92f1f5399" [[deps.ADTypes]] -git-tree-sha1 = "41c37aa88889c171f1300ceac1313c06e891d245" +git-tree-sha1 = "016833eb52ba2d6bea9fcb50ca295980e728ee24" uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" -version = "0.2.6" +version = "0.2.7" [[deps.ANSIColoredPrinters]] git-tree-sha1 = "574baf8110975760d391c710b6341da1afa48d8c" @@ -42,9 +42,9 @@ version = "0.1.36" [[deps.Adapt]] deps = ["LinearAlgebra", "Requires"] -git-tree-sha1 = "e2a9873379849ce2ac9f9fa34b0e37bde5d5fe0a" +git-tree-sha1 = "6a55b747d1812e699320963ffde36f1ebdda4099" uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" -version = "4.0.2" +version = "4.0.4" weakdeps = ["StaticArrays"] [deps.Adapt.extensions] @@ -66,15 +66,16 @@ uuid = "ec485272-7323-5ecc-a04f-4719b315124d" version = "0.2.0" [[deps.ArrayInterface]] -deps = ["Adapt", "LinearAlgebra", "Requires", "SparseArrays", "SuiteSparse"] -git-tree-sha1 = "881e43f1aa014a6f75c8fc0847860e00a1500846" +deps = ["Adapt", "LinearAlgebra", "SparseArrays", "SuiteSparse"] +git-tree-sha1 = "44691067188f6bd1b2289552a23e4b7572f4528d" uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" -version = "7.8.0" +version = "7.9.0" [deps.ArrayInterface.extensions] ArrayInterfaceBandedMatricesExt = "BandedMatrices" ArrayInterfaceBlockBandedMatricesExt = "BlockBandedMatrices" ArrayInterfaceCUDAExt = "CUDA" + ArrayInterfaceChainRulesExt = "ChainRules" ArrayInterfaceGPUArraysCoreExt = "GPUArraysCore" ArrayInterfaceReverseDiffExt = "ReverseDiff" ArrayInterfaceStaticArraysCoreExt = "StaticArraysCore" @@ -84,6 +85,7 @@ version = "7.8.0" BandedMatrices = "aae01518-5342-5314-be14-df237901396f" BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0" CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" + ChainRules = "082447d4-558c-5d27-93f4-14fc19e9eca2" GPUArraysCore = "46192b85-c4d5-4398-a991-12ede77f4527" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" StaticArraysCore = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" @@ -91,9 +93,9 @@ version = "7.8.0" [[deps.ArrayLayouts]] deps = ["FillArrays", "LinearAlgebra"] -git-tree-sha1 = "e46675dbc095ddfdf2b5fba247d5a25f34e1f8a2" +git-tree-sha1 = "6404a564c24a994814106c374bec893195e19bac" uuid = "4c555306-a7a7-4459-81d9-ec55ddd5c99a" -version = "1.6.1" +version = "1.8.0" weakdeps = ["SparseArrays"] [deps.ArrayLayouts.extensions] @@ -226,28 +228,32 @@ version = "1.0.5+1" [[deps.ComponentArrays]] deps = ["ArrayInterface", "ChainRulesCore", "ForwardDiff", "Functors", "LinearAlgebra", "PackageExtensionCompat", "StaticArrayInterface", "StaticArraysCore"] -git-tree-sha1 = "e3ced166fcefe2352b73f9ae3e1cf6f2c5d4e806" +git-tree-sha1 = "dded0a186977e5a4a12b1f1224f73956e4e8e90a" uuid = "b0b7db55-cfe3-40fc-9ded-d10e2dbeff66" -version = "0.15.10" +version = "0.15.11" [deps.ComponentArrays.extensions] ComponentArraysAdaptExt = "Adapt" ComponentArraysConstructionBaseExt = "ConstructionBase" ComponentArraysGPUArraysExt = "GPUArrays" + ComponentArraysOptimisersExt = "Optimisers" ComponentArraysRecursiveArrayToolsExt = "RecursiveArrayTools" ComponentArraysReverseDiffExt = "ReverseDiff" ComponentArraysSciMLBaseExt = "SciMLBase" ComponentArraysTrackerExt = "Tracker" + ComponentArraysTruncatedStacktracesExt = "TruncatedStacktraces" ComponentArraysZygoteExt = "Zygote" [deps.ComponentArrays.weakdeps] Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" ConstructionBase = "187b0558-2788-49d3-abe0-74a17ed4e7c9" GPUArrays = "0c68f7d7-f131-5f86-a1c3-88cf8149b2d7" + Optimisers = "3bd65402-5787-11e9-1adc-39752487f4e2" RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" + TruncatedStacktraces = "781d530d-4396-4725-bb49-402e4bee1e77" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.CompositionsBase]] @@ -266,9 +272,9 @@ version = "0.2.3" [[deps.ConcurrentUtilities]] deps = ["Serialization", "Sockets"] -git-tree-sha1 = "9c4708e3ed2b799e6124b5673a712dda0b596a9b" +git-tree-sha1 = "6cbbd4d241d7e6579ab354737f4dd95ca43946e1" uuid = "f0e56b4a-5159-44fe-b623-3e5288b988bb" -version = "2.3.1" +version = "2.4.1" [[deps.Conda]] deps = ["Downloads", "JSON", "VersionParsing"] @@ -284,9 +290,9 @@ version = "0.17.6" [[deps.ConstructionBase]] deps = ["LinearAlgebra"] -git-tree-sha1 = "c53fc348ca4d40d7b371e71fd52251839080cbc9" +git-tree-sha1 = "260fd2400ed2dab602a7c15cf10c1933c59930a2" uuid = "187b0558-2788-49d3-abe0-74a17ed4e7c9" -version = "1.5.4" +version = "1.5.5" [deps.ConstructionBase.extensions] ConstructionBaseIntervalSetsExt = "IntervalSets" @@ -308,9 +314,9 @@ uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" version = "4.1.1" [[deps.DBInterface]] -git-tree-sha1 = "6f93ab5557fa0ffd02e3d751186f329ac21da791" +git-tree-sha1 = "a444404b3f94deaa43ca2a58e18153a82695282b" uuid = "a10d1c49-ce27-4219-8d33-6db1a4562965" -version = "2.6.0" +version = "2.6.1" [[deps.DataAPI]] git-tree-sha1 = "abe83f3a2f1b857aac70ef8b269080af17764bbe" @@ -324,10 +330,10 @@ uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" version = "1.6.1" [[deps.DataInterpolations]] -deps = ["LinearAlgebra", "PrettyTables", "RecipesBase", "Reexport"] -git-tree-sha1 = "79e533ab41ad6784eea6eafbf3f1c615c9a1349e" +deps = ["FindFirstFunctions", "LinearAlgebra", "PrettyTables", "RecipesBase", "Reexport"] +git-tree-sha1 = "e31c460739fb1beb9d84cc851b670b43ef493fda" uuid = "82cc6244-b520-54b8-b5a6-8a565e85f1d0" -version = "4.7.0" +version = "4.7.1" [deps.DataInterpolations.extensions] DataInterpolationsChainRulesCoreExt = "ChainRulesCore" @@ -364,10 +370,10 @@ uuid = "85a47980-9c8c-11e8-2b9f-f7ca1fa99fb4" version = "0.4.1" [[deps.DiffEqBase]] -deps = ["ArrayInterface", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PreallocationTools", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Static", "StaticArraysCore", "Statistics", "Tricks", "TruncatedStacktraces"] -git-tree-sha1 = "b19b2bb1ecd1271334e4b25d605e50f75e68fcae" +deps = ["ArrayInterface", "ConcreteStructs", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "FastClosures", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PreallocationTools", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Static", "StaticArraysCore", "Statistics", "Tricks", "TruncatedStacktraces"] +git-tree-sha1 = "4fa023dbb15b3485426bbc6c43e030c14250d664" uuid = "2b5f629d-d688-5b77-993f-72d75c75574e" -version = "6.148.0" +version = "6.149.0" [deps.DiffEqBase.extensions] DiffEqBaseChainRulesCoreExt = "ChainRulesCore" @@ -395,9 +401,9 @@ version = "6.148.0" [[deps.DiffEqCallbacks]] deps = ["DataStructures", "DiffEqBase", "ForwardDiff", "Functors", "LinearAlgebra", "Markdown", "NonlinearSolve", "Parameters", "RecipesBase", "RecursiveArrayTools", "SciMLBase", "StaticArraysCore"] -git-tree-sha1 = "32b4359949681e76eb09f9b7a4536cb664172980" +git-tree-sha1 = "a731383bbafb87d496fb5e66f60c40e4a5f8f726" uuid = "459566f4-90b8-5000-8ac3-15dfb0a30def" -version = "3.3.0" +version = "3.4.0" [deps.DiffEqCallbacks.weakdeps] OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" @@ -453,9 +459,9 @@ uuid = "4e289a0a-7415-4d19-859d-a7e5c4648b56" version = "1.0.4" [[deps.EnzymeCore]] -git-tree-sha1 = "59c44d8fbc651c0395d8a6eda64b05ce316f58b4" +git-tree-sha1 = "1bc328eec34ffd80357f84a84bb30e4374e9bd60" uuid = "f151be2c-9106-41f4-ab19-57ee4f262869" -version = "0.6.5" +version = "0.6.6" weakdeps = ["Adapt"] [deps.EnzymeCore.extensions] @@ -496,9 +502,9 @@ version = "2.0.2" [[deps.FileIO]] deps = ["Pkg", "Requires", "UUIDs"] -git-tree-sha1 = "c5c28c245101bd59154f649e19b038d15901b5dc" +git-tree-sha1 = "82d8afa92ecf4b52d78d869f038ebfb881267322" uuid = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549" -version = "1.16.2" +version = "1.16.3" [[deps.FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" @@ -519,11 +525,16 @@ version = "1.9.3" SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" +[[deps.FindFirstFunctions]] +git-tree-sha1 = "e90fef90f7d75e6a5b435b0fd65609759f99717a" +uuid = "64ca27bc-2ba2-4a57-88aa-44e436879224" +version = "1.2.0" + [[deps.FiniteDiff]] deps = ["ArrayInterface", "LinearAlgebra", "Requires", "Setfield", "SparseArrays"] -git-tree-sha1 = "73d1214fec245096717847c62d389a5d2ac86504" +git-tree-sha1 = "bc0c5092d6caaea112d3c8e3b238d61563c58d5f" uuid = "6a86dc24-6348-571c-b903-95158fe2bd41" -version = "2.22.0" +version = "2.23.0" [deps.FiniteDiff.extensions] FiniteDiffBandedMatricesExt = "BandedMatrices" @@ -558,9 +569,9 @@ version = "0.1.3" [[deps.Functors]] deps = ["LinearAlgebra"] -git-tree-sha1 = "166c544477f97bbadc7179ede1c1868e0e9b426b" +git-tree-sha1 = "8ae30e786837ce0a24f5e2186938bf3251ab94b2" uuid = "d9f16b24-f501-4c13-a1f2-28368ffc5196" -version = "0.4.7" +version = "0.4.8" [[deps.Future]] deps = ["Random"] @@ -574,9 +585,9 @@ version = "0.1.6" [[deps.GenericSchur]] deps = ["LinearAlgebra", "Printf"] -git-tree-sha1 = "fb69b2a645fa69ba5f474af09221b9308b160ce6" +git-tree-sha1 = "af49a0851f8113fcfae2ef5027c6d49d0acec39b" uuid = "c145ed77-6b09-5dd9-b285-bf645a82121e" -version = "0.5.3" +version = "0.5.4" [[deps.Glob]] git-tree-sha1 = "97285bbd5230dd766e9ef6749b80fc617126d496" @@ -597,9 +608,9 @@ version = "1.9.0" [[deps.HiGHS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "f596ee3668df8587158bcaef1ae47bf75bc0fe39" +git-tree-sha1 = "9a550d55c49334beb538c5ad9504f07fc29a13dc" uuid = "8fd58aa0-07eb-5a78-9b36-339c94fd15ea" -version = "1.6.0+1" +version = "1.7.0+0" [[deps.HostCPUFeatures]] deps = ["BitTwiddlingConvenienceFunctions", "IfElse", "Libdl", "Static"] @@ -658,9 +669,13 @@ uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" [[deps.InverseFunctions]] deps = ["Test"] -git-tree-sha1 = "68772f49f54b479fa88ace904f6127f0a3bb2e46" +git-tree-sha1 = "896385798a8d49a255c398bd49162062e4a4c435" uuid = "3587e190-3f89-42d0-90ee-14403ec27112" -version = "0.1.12" +version = "0.1.13" +weakdeps = ["Dates"] + + [deps.InverseFunctions.extensions] + DatesExt = "Dates" [[deps.InvertedIndices]] git-tree-sha1 = "0dc7b50b8d436461be01300fd8cd45aa0274b038" @@ -712,9 +727,9 @@ weakdeps = ["ArrowTypes"] [[deps.JuMP]] deps = ["LinearAlgebra", "MacroTools", "MathOptInterface", "MutableArithmetics", "OrderedCollections", "PrecompileTools", "Printf", "SparseArrays"] -git-tree-sha1 = "4e44cff1595c6c02cdbca4e87ce376e63c33a584" +git-tree-sha1 = "a39e8a1828f8ca4de035cca341979f4d0dbc6eae" uuid = "4076af6c-e467-56ae-b986-b466b2749572" -version = "1.20.0" +version = "1.21.0" [deps.JuMP.extensions] JuMPDimensionalDataExt = "DimensionalData" @@ -724,9 +739,9 @@ version = "1.20.0" [[deps.JuliaInterpreter]] deps = ["CodeTracking", "InteractiveUtils", "Random", "UUIDs"] -git-tree-sha1 = "7b762d81887160169ddfc93a47e5fd7a6a3e78ef" +git-tree-sha1 = "e9648d90370e2d0317f9518c9c6e0841db54a90b" uuid = "aa1ae85d-cabe-5617-a682-6adf51b2e16a" -version = "0.9.29" +version = "0.9.31" [[deps.KLU]] deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse_jll"] @@ -815,10 +830,10 @@ deps = ["Libdl", "OpenBLAS_jll", "libblastrampoline_jll"] uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" [[deps.LinearSolve]] -deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "DocStringExtensions", "EnumX", "FastLapackInterface", "GPUArraysCore", "InteractiveUtils", "KLU", "Krylov", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveFactorization", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Sparspak", "StaticArraysCore", "UnPack"] -git-tree-sha1 = "b2cc25978eb8efda63ee5786f2ed72c35a711b61" +deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "DocStringExtensions", "EnumX", "FastLapackInterface", "GPUArraysCore", "InteractiveUtils", "KLU", "Krylov", "LazyArrays", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveFactorization", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Sparspak", "StaticArraysCore", "UnPack"] +git-tree-sha1 = "775e5e5d9ace42ef8deeb236587abc69e70dc455" uuid = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae" -version = "2.26.0" +version = "2.28.0" [deps.LinearSolve.extensions] LinearSolveBandedMatricesExt = "BandedMatrices" @@ -876,9 +891,9 @@ version = "1.0.3" [[deps.LoopVectorization]] deps = ["ArrayInterface", "CPUSummary", "CloseOpenIntervals", "DocStringExtensions", "HostCPUFeatures", "IfElse", "LayoutPointers", "LinearAlgebra", "OffsetArrays", "PolyesterWeave", "PrecompileTools", "SIMDTypes", "SLEEFPirates", "Static", "StaticArrayInterface", "ThreadingUtilities", "UnPack", "VectorizationBase"] -git-tree-sha1 = "0f5648fbae0d015e3abe5867bca2b362f67a5894" +git-tree-sha1 = "a13f3be5d84b9c95465d743c82af0b094ef9c2e2" uuid = "bdcacae8-1622-11e9-2a5c-532679323890" -version = "0.12.166" +version = "0.12.169" weakdeps = ["ChainRulesCore", "ForwardDiff", "SpecialFunctions"] [deps.LoopVectorization.extensions] @@ -926,9 +941,9 @@ version = "1.1.0" [[deps.MathOptInterface]] deps = ["BenchmarkTools", "CodecBzip2", "CodecZlib", "DataStructures", "ForwardDiff", "JSON", "LinearAlgebra", "MutableArithmetics", "NaNMath", "OrderedCollections", "PrecompileTools", "Printf", "SparseArrays", "SpecialFunctions", "Test", "Unicode"] -git-tree-sha1 = "679c1aec6934d322783bd15db4d18f898653be4f" +git-tree-sha1 = "d268e82322cc5df142a3664d03d59adecd53abf9" uuid = "b8f27783-ece8-5eb3-8dc8-9495eed66fee" -version = "1.27.0" +version = "1.27.1" [[deps.MatrixFactorizations]] deps = ["ArrayLayouts", "LinearAlgebra", "Printf", "Random"] @@ -938,9 +953,9 @@ version = "2.1.0" [[deps.MaybeInplace]] deps = ["ArrayInterface", "LinearAlgebra", "MacroTools", "SparseArrays"] -git-tree-sha1 = "a85c6a98c9e5a2a7046bc1bb89f28a3241e1de4d" +git-tree-sha1 = "b1f2f92feb0bc201e91c155ef575bcc7d9cc3526" uuid = "bb5d69b7-63fc-4a16-80bd-7e42200c7bdb" -version = "0.1.1" +version = "0.1.2" [[deps.MbedTLS]] deps = ["Dates", "MbedTLS_jll", "MozillaCACerts_jll", "NetworkOptions", "Random", "Sockets"] @@ -985,9 +1000,9 @@ version = "0.2.4" [[deps.MutableArithmetics]] deps = ["LinearAlgebra", "SparseArrays", "Test"] -git-tree-sha1 = "302fd161eb1c439e4115b51ae456da4e9984f130" +git-tree-sha1 = "2d106538aebe1c165e16d277914e10c550e9d9b7" uuid = "d8a4904e-b15c-11e9-3269-09a3773c0cb0" -version = "1.4.1" +version = "1.4.2" [[deps.NLSolversBase]] deps = ["DiffResults", "Distributed", "FiniteDiff", "ForwardDiff"] @@ -1007,9 +1022,9 @@ version = "1.2.0" [[deps.NonlinearSolve]] deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "FastBroadcast", "FastClosures", "FiniteDiff", "ForwardDiff", "LazyArrays", "LineSearches", "LinearAlgebra", "LinearSolve", "MaybeInplace", "PrecompileTools", "Preferences", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SparseArrays", "SparseDiffTools", "StaticArraysCore", "TimerOutputs"] -git-tree-sha1 = "f409959245f04c8004bd3711915d71c93b2043f7" +git-tree-sha1 = "c32743c2321e99adf8bbe03145ce8e2bf2fcfbf9" uuid = "8913a72c-1f9b-4ce2-8d82-65094dcecaec" -version = "3.7.3" +version = "3.9.0" [deps.NonlinearSolve.extensions] NonlinearSolveBandedMatricesExt = "BandedMatrices" @@ -1069,15 +1084,15 @@ version = "1.6.3" [[deps.OrdinaryDiffEq]] deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FillArrays", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "IfElse", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "MacroTools", "MuladdMacro", "NonlinearSolve", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "SparseDiffTools", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] -git-tree-sha1 = "287159684e32db56c82dbf545004a7884c6e5198" +git-tree-sha1 = "91079af18db922354197eeae2a17b177079e24c1" uuid = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" -version = "6.74.0" +version = "6.74.1" [[deps.OteraEngine]] deps = ["Markdown", "Pkg", "TOML"] -git-tree-sha1 = "69e36fecf524a1da7d76a8ae3e70a221d86d2867" +git-tree-sha1 = "c92627db1d45055c1b33b8133e829e1bce9d04fd" uuid = "b2d7f28f-acd6-4007-8b26-bc27716e5513" -version = "0.5.1" +version = "0.5.2" [[deps.PackageCompiler]] deps = ["Artifacts", "Glob", "LazyArtifacts", "Libdl", "Pkg", "Printf", "RelocatableFolders", "TOML", "UUIDs", "p7zip_jll"] @@ -1110,9 +1125,9 @@ version = "1.10.0" [[deps.Polyester]] deps = ["ArrayInterface", "BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "ManualMemory", "PolyesterWeave", "Requires", "Static", "StaticArrayInterface", "StrideArraysCore", "ThreadingUtilities"] -git-tree-sha1 = "fca25670784a1ae44546bcb17288218310af2778" +git-tree-sha1 = "09f59c6dda37c7f73efddc5bdf6f92bc940eb484" uuid = "f517fe37-dbe3-4b94-8317-1923a5111588" -version = "0.7.9" +version = "0.7.12" [[deps.PolyesterWeave]] deps = ["BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "Static", "ThreadingUtilities"] @@ -1140,9 +1155,9 @@ version = "0.4.20" [[deps.PrecompileTools]] deps = ["Preferences"] -git-tree-sha1 = "03b4c25b43cb84cee5c90aa9b5ea0a78fd848d2f" +git-tree-sha1 = "5aa36f7049a63a1528fe8f7c3f2113413ffd4e1f" uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" -version = "1.2.0" +version = "1.2.1" [[deps.Preferences]] deps = ["TOML"] @@ -1192,9 +1207,9 @@ version = "1.3.4" [[deps.RecursiveArrayTools]] deps = ["Adapt", "ArrayInterface", "DocStringExtensions", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "SparseArrays", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "dc428bb59c20dafd1ec500c3432b9e3d7e78e7f3" +git-tree-sha1 = "d8f131090f2e44b145084928856a561c83f43b27" uuid = "731186ca-8d62-57ce-b412-fbd966d074cd" -version = "3.10.1" +version = "3.13.0" [deps.RecursiveArrayTools.extensions] RecursiveArrayToolsFastBroadcastExt = "FastBroadcast" @@ -1283,10 +1298,10 @@ uuid = "76ed43ae-9a5d-5a62-8c75-30186b810ce8" version = "3.45.0+0" [[deps.SciMLBase]] -deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "3a281a9fce9cd62b849d7f16e412933a5fe755cb" +deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] +git-tree-sha1 = "d15c65e25615272e1b1c5edb1d307484c7942824" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.29.0" +version = "2.31.0" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" @@ -1313,6 +1328,11 @@ git-tree-sha1 = "10499f619ef6e890f3f4a38914481cc868689cd5" uuid = "c0aeaf25-5076-4817-a8d5-81caf7dfa961" version = "0.3.8" +[[deps.SciMLStructures]] +git-tree-sha1 = "5833c10ce83d690c124beedfe5f621b50b02ba4d" +uuid = "53ae85a6-f571-4167-b2af-e1d143709226" +version = "1.1.0" + [[deps.Scratch]] deps = ["Dates"] git-tree-sha1 = "3bac05bc7e74a75fd9cba4295cde4045d9fe2386" @@ -1339,20 +1359,26 @@ deps = ["Distributed", "Mmap", "Random", "Serialization"] uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383" [[deps.SimpleNonlinearSolve]] -deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "FastClosures", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "MaybeInplace", "PrecompileTools", "Reexport", "SciMLBase", "StaticArraysCore"] -git-tree-sha1 = "873a1bf90744acfa615e45cd5dddfd0ee89a094f" +deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "DiffResults", "FastClosures", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "MaybeInplace", "PrecompileTools", "Reexport", "SciMLBase", "StaticArraysCore"] +git-tree-sha1 = "d4c17fc60bf5f8f2be02777c4836878f27ac7b9b" uuid = "727e6d20-b764-4bd8-a329-72de5adea6c7" -version = "1.5.0" +version = "1.7.0" [deps.SimpleNonlinearSolve.extensions] SimpleNonlinearSolveChainRulesCoreExt = "ChainRulesCore" SimpleNonlinearSolvePolyesterForwardDiffExt = "PolyesterForwardDiff" + SimpleNonlinearSolveReverseDiffExt = "ReverseDiff" SimpleNonlinearSolveStaticArraysExt = "StaticArrays" + SimpleNonlinearSolveTrackerExt = "Tracker" + SimpleNonlinearSolveZygoteExt = "Zygote" [deps.SimpleNonlinearSolve.weakdeps] ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" PolyesterForwardDiff = "98d1487c-24ca-40b6-b7ab-df2af84e126b" + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" + Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" + Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.SimpleTraits]] deps = ["InteractiveUtils", "MacroTools"] @@ -1500,9 +1526,10 @@ uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c" version = "7.2.1+1" [[deps.SymbolicIndexingInterface]] -git-tree-sha1 = "251bb311585143931a306175c3b7ced220300578" +deps = ["Accessors", "ArrayInterface", "MacroTools", "RuntimeGeneratedFunctions", "StaticArraysCore"] +git-tree-sha1 = "4b7f4c80449d8baae8857d55535033981862619c" uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" -version = "0.3.8" +version = "0.3.15" [[deps.TOML]] deps = ["Dates"] @@ -1573,9 +1600,9 @@ uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f" version = "0.5.23" [[deps.TranscodingStreams]] -git-tree-sha1 = "3caa21522e7efac1ba21834a03734c57b4611c7e" +git-tree-sha1 = "71509f04d045ec714c4748c785a59045c3736349" uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" -version = "0.10.4" +version = "0.10.7" weakdeps = ["Random", "Test"] [deps.TranscodingStreams.extensions] @@ -1583,9 +1610,9 @@ weakdeps = ["Random", "Test"] [[deps.TriangularSolve]] deps = ["CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "LoopVectorization", "Polyester", "Static", "VectorizationBase"] -git-tree-sha1 = "fadebab77bf3ae041f77346dd1c290173da5a443" +git-tree-sha1 = "7ee8ed8904e7dd5d31bb46294ef5644d9e2e44e4" uuid = "d5829a12-d9aa-46ab-831f-fb7c9ab06edf" -version = "0.1.20" +version = "0.1.21" [[deps.Tricks]] git-tree-sha1 = "eae1bb484cd63b36999ee58be2de6c178105112f" @@ -1652,9 +1679,9 @@ version = "1.2.13+1" [[deps.Zstd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "49ce682769cd5de6c72dcf1b94ed7790cd08974c" +git-tree-sha1 = "e678132f07ddb5bfa46857f0d7620fb9be675d3b" uuid = "3161d3a3-bdf6-5164-811a-617609db77b4" -version = "1.5.5+0" +version = "1.5.6+0" [[deps.libblastrampoline_jll]] deps = ["Artifacts", "Libdl"] diff --git a/core/Project.toml b/core/Project.toml index edfb9b7ed..a268ed876 100644 --- a/core/Project.toml +++ b/core/Project.toml @@ -56,7 +56,7 @@ DataInterpolations = "4.4" DataStructures = "0.18" Dates = "<0.0.1,1" Dictionaries = "0.3.25, 0.4" -DiffEqCallbacks = "2.29.1, 3" +DiffEqCallbacks = "=3.4.0" Documenter = "0.27,1" EnumX = "1.0" FiniteDiff = "2.21" From 63aeeccaebb8b2f8208c1752f9295e91581a4b16 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 3 Apr 2024 08:26:54 +0200 Subject: [PATCH 026/158] Update pixi lock file (#1343) Update pixi dependencies to the latest version. Co-authored-by: GitHub --- pixi.lock | 7626 +++++++++++++++++++++++++++-------------------------- 1 file changed, 3898 insertions(+), 3728 deletions(-) diff --git a/pixi.lock b/pixi.lock index 48ee66a1f..0619ee985 100644 --- a/pixi.lock +++ b/pixi.lock @@ -17,17 +17,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-he635cd5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hbfc29b2_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h6b388c4_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h96cd748_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.3-hffff1cc_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4893938_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.4-h4893938_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-h4466546_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.3-h137ae52_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-he0cb598_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.4-hba3594f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hb1af6a8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.3.0-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -36,7 +36,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -52,11 +52,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -71,11 +71,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.50.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda @@ -83,20 +83,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-hfa15dee_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -110,28 +110,28 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.1-cxx17_h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.1-h6bfc85a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.1-hc6145d9_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.1-h757c851_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.1-hb016d2e_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.1-h757c851_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hb86450c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc6145d9_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-h757c851_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hb016d2e_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-h757c851_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.2-default_h5d6823c_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.6.0-hca28451_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda @@ -140,10 +140,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-h7c88fdf_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.22.0-h9be4e54_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda @@ -156,6 +156,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.2-h2448989_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda @@ -163,9 +164,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.26-pthreads_h413a1c8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.1-h352af49_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-h352af49_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda @@ -177,15 +178,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h7e041cc_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda @@ -203,22 +204,22 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py312hacefee8_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py312hacefee8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py312hfb8ada1_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -233,12 +234,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py312h176e3d2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py312h176e3d2_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py312h4b3b743_0.conda @@ -249,7 +250,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.2-hab00c5b_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -257,13 +258,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h112747c_20.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.8-h06160fa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py312h394d371_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py312heda63a1_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda @@ -275,28 +276,28 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.2-h2c6b66d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.21.1-ha9641ad_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda @@ -334,17 +335,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-h30f2259_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-hce3b3da_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.3-ha335edc_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-h6f42f56_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.4-h6f42f56_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h905ab21_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.3-hf5b2fc6_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h232afc9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.4-hacdced8_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-hd2aab46_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.3.0-py312hb401068_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -353,7 +354,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -369,10 +370,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -387,11 +388,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.50.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda @@ -400,13 +401,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -417,34 +418,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.1-h49b82c4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.1-h39e3226_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.1-h1a3ed6a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.1-h43798cf_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.1-h1a3ed6a_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-h8d4fe2c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h39e3226_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-h1a3ed6a_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h43798cf_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-h1a3ed6a_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-h2239303_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda @@ -457,9 +458,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h089a9f7_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda @@ -468,14 +469,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.2-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.2-hb6ac08f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda @@ -490,20 +491,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py312h04e34b5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py312h04e34b5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py312haf8ecfc_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -517,11 +518,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py312hc4c33ac_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py312hc4c33ac_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py312h1b0e595_0.conda @@ -530,7 +531,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h14d93e9_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.2-h9f0c242_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -552,16 +553,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.2-h7461747_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.21.1-h0d80af6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -570,9 +571,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda @@ -594,17 +595,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h59ac3ca_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hfe5d766_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.3-hb8a1441_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h4398043_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.4-h4398043_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-h677d54c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.3-h0de420c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h2fb64bc_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.4-he5ad744_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-ha761c4c_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.3.0-py312h81bd7bf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -613,7 +614,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -629,10 +630,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -647,11 +648,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.50.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda @@ -660,13 +661,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -677,34 +678,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.1-h8eee870_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.1-h1f98dca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.1-hb095944_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.1-h2c81988_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.1-h50959cf_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-h5e64418_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h1f98dca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb095944_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h2c81988_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-h50959cf_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-h7181668_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda @@ -717,9 +718,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h278d484_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda @@ -728,14 +729,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.2-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.2-hcd81f8e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda @@ -750,20 +751,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py312hbaff935_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -777,11 +778,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py312h1251918_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py312h1251918_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda @@ -790,7 +791,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h4d912e0_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -812,16 +813,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.2-hf2abe2d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.21.1-hbfef6ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -830,9 +831,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda @@ -854,17 +855,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-h3df98b0_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-h4e3df0f_7.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.3-h96fac68_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h08df315_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.4-h08df315_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-hf6fcf4e_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.3-h6047f0a_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h558341a_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.4-hbe739fa_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-hfaf0dd0_4.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.3.0-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -873,7 +874,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -889,10 +890,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -907,27 +908,27 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.50.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -937,32 +938,31 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.1-h2a83f13_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.1-h02312f3_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.1-h55b4db4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.1-h3f2ff47_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.1-h89268de_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-h878f99b_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-h02312f3_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-h55b4db4_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-h3f2ff47_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h89268de_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.2-default_hf64faad_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.6.0-hd5e4a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-hf83a0e2_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda @@ -973,9 +973,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.1-h7ec3a38_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h7ec3a38_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda @@ -984,12 +984,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 @@ -1015,16 +1015,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py312h115d327_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py312h115d327_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py312h2ab9e98_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -1039,11 +1039,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py312h85e32bb_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py312h85e32bb_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py312hfccd98a_0.conda @@ -1054,7 +1054,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.2-h2628c8c_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -1062,7 +1062,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda @@ -1077,16 +1077,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.21.1-h25b666a_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -1098,10 +1098,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda @@ -1138,20 +1138,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-he635cd5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hbfc29b2_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h6b388c4_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h96cd748_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.3-hffff1cc_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4893938_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.4-h4893938_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-h4466546_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.3-h137ae52_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-he0cb598_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.4-hba3594f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hb1af6a8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.3.0-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda @@ -1162,7 +1162,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 @@ -1184,13 +1184,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.2.0-py312h8572e83_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cryptography-42.0.5-py312h241aef2_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/curl-8.6.0-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/curl-8.7.1-hca28451_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dart-sass-1.58.3-ha770c72_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.1-py312h30efb56_0.conda @@ -1199,7 +1199,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-1.37.2-h335b0a9_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/deno-dom-0.1.35-hd9586b0_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/docutils-0.20.1-py312h7900ff3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/draco-1.5.7-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda @@ -1211,7 +1211,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/exiv2-0.28.2-h3cdc00d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/expat-2.6.2-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fiona-1.9.6-py312h66d9856_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/fmt-10.2.1-h00ab1b0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda @@ -1222,13 +1222,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.50.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda @@ -1237,38 +1237,40 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gh-2.45.0-ha8f183a_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gmp-6.3.0-h59595ed_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/gsl-2.7-he838d99_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-hfa15dee_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyhd33586a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-4.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jeepney-0.8.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda @@ -1279,18 +1281,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.13.0-he8a937b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.14.7-he8a937b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/jupyter_core-5.7.2-py312h7900ff3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/kealib-1.5.3-h2f55d51_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/keyring-25.1.0-pyha804496_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.5-py312h8572e83_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.2-h659d440_0.conda @@ -1300,28 +1302,28 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.1-cxx17_h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.1-h6bfc85a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.1-hc6145d9_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.1-h757c851_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.1-hb016d2e_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.1-h757c851_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hb86450c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc6145d9_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-h757c851_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hb016d2e_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-h757c851_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.2-default_h5d6823c_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.6.0-hca28451_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda @@ -1330,11 +1332,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-h0be55b3_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-h7c88fdf_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-he479ca9_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.22.0-h9be4e54_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda @@ -1348,6 +1350,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.2-h2448989_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda @@ -1355,9 +1358,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.26-pthreads_h413a1c8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.1-h352af49_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-h352af49_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda @@ -1371,7 +1374,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h7e041cc_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 @@ -1379,8 +1382,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxslt-1.1.39-h76b75d6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda @@ -1409,34 +1412,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/mypy-1.9.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py312h4b3b743_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.17-py312h4b3b743_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nitro-2.7.dev8-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py312hacefee8_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py312hacefee8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py312hfb8ada1_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandoc-3.1.11.1-ha770c72_0.conda @@ -1445,7 +1448,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.43-hcad00b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.6.3-h312035a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.7.0-h8cae3e1_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 @@ -1457,13 +1460,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda @@ -1471,11 +1474,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/psycopg2-2.9.9-py312h08590aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py312h176e3d2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py312h176e3d2_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py312h4b3b743_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda @@ -1488,7 +1491,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqtwebkit-5.15.9-py312hc23280e_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.2-hab00c5b_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -1500,22 +1503,22 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-25.1.2-py312h886d080_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qca-2.3.8-h4a6f7a0_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py312h05c534b_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.1-py312h05c534b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h4bd325d_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/qjson-0.9.0-h0c700ba_1009.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qscintilla2-2.14.1-py312hc23280e_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h112747c_20.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qtkeychain-0.14.2-hbc31b07_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qtwebkit-5.212-h60108c6_16.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/quarto-1.4.550-ha770c72_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/quartodoc-0.7.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qwt-6.2.0-h1a478b3_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.34.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 @@ -1524,8 +1527,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.18.0-py312h4b3b743_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py312h9118e91_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.5-py312h9118e91_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.8-h06160fa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py312h394d371_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py312heda63a1_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/secretstorage-3.3.3-py312h7900ff3_2.conda @@ -1548,8 +1551,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh0d859eb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.21.1-ha9641ad_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 @@ -1558,9 +1561,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda @@ -1569,7 +1572,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/typing_utils-0.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ukkonen-1.0.1-py312h8572e83_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uri-template-1.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda @@ -1580,9 +1583,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda @@ -1629,20 +1632,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-h30f2259_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-hce3b3da_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.3-ha335edc_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-h6f42f56_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.4-h6f42f56_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h905ab21_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.3-hf5b2fc6_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h232afc9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.4-hacdced8_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-hd2aab46_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.3.0-py312hb401068_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda @@ -1653,7 +1656,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 @@ -1674,13 +1677,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/contourpy-1.2.0-py312hbf0bb39_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/curl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/curl-8.7.1-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/dart-sass-1.58.3-h694c41f_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/debugpy-1.8.1-py312hede676d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 @@ -1688,7 +1691,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-1.37.2-h51b076b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/deno-dom-0.1.35-h08cba0f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/docutils-0.20.1-py312hb401068_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/draco-1.5.7-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda @@ -1700,7 +1703,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/exiv2-0.28.2-h239cba9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/expat-2.6.2-h73e2aa4_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/fiona-1.9.6-py312hc18349f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/fmt-10.2.1-h7728843_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda @@ -1711,13 +1714,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.50.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda @@ -1726,36 +1729,38 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/gh-2.45.0-h990441c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/gmp-6.3.0-h73e2aa4_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/gsl-2.7-h93259b0_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-4.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -1765,18 +1770,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.13.0-hf4330d5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.14.7-hf4330d5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/jupyter_core-5.7.2-py312hb401068_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/kealib-1.5.3-h5f07ac3_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py312hb401068_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/keyring-25.1.0-pyh534df25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/khronos-opencl-icd-loader-2023.04.17-hb7f2c08_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/kiwisolver-1.4.5-py312h49ebfd2_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/krb5-1.21.2-hb884880_0.conda @@ -1784,37 +1789,37 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.1-h49b82c4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.1-h39e3226_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.1-h1a3ed6a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.1-h43798cf_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.1-h1a3ed6a_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-h8d4fe2c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h39e3226_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-h1a3ed6a_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h43798cf_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-h1a3ed6a_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-15.0.7-default_h6b1ee41_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-15.0.7-default_h89cd682_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp15-15.0.7-default_h7151d67_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libclang13-18.1.2-default_h0edc4dd_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-he462391_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-h2239303_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-h34d8165_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda @@ -1826,14 +1831,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm14-14.0.6-hc8e404f_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm15-15.0.7-hbedff68_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libllvm18-18.1.2-hbcf5fad_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libogg-1.3.4-h35c211d_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libopus-1.3.1-hc929b4f_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h089a9f7_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda @@ -1844,17 +1850,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libtasn1-4.19.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libvorbis-1.3.7-h046ec9c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-1.3.2-h44782d1_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxslt-1.1.39-h03b04e6_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.2-hb6ac08f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/lxml-5.1.0-py312h799ce31_0.conda @@ -1879,33 +1885,33 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/mypy-1.9.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.0.33-h1d20c9b_6.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.0.33-hed35180_6.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.3.0-hfd7a639_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.3.0-ha9146f8_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py312h6e28e45_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.17-py312h1b0e595_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nitro-2.7.dev8-he965462_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py312h04e34b5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py312h04e34b5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py312haf8ecfc_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pandoc-3.1.11.1-h694c41f_0.conda @@ -1914,7 +1920,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pcre2-10.43-h0ad2156_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.6.3-hd2646b2_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.7.0-h223787e_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 @@ -1926,13 +1932,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda @@ -1941,9 +1947,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py312hc4c33ac_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py312hc4c33ac_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py312h1b0e595_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda @@ -1958,7 +1964,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/pyqtwebkit-5.15.9-py312h5ae8335_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.2-h9f0c242_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -1970,12 +1976,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/pyyaml-6.0.1-py312h104f124_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pyzmq-25.1.2-py312hc789acb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qca-2.3.8-h3036dd7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py312h3bc2ef5_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.1-py312h3bc2ef5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qhull-2020.2-h940c156_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/qjson-0.9.0-hed3eaa1_1009.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qscintilla2-2.14.1-py312h12cbc42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h4385fff_19.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h98f5cd4_20.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qtkeychain-0.14.2-had6348c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/qtwebkit-5.212-h3b777d0_16.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/quarto-1.4.550-h694c41f_1.conda @@ -1984,7 +1990,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/re2-2023.09.01-hb168e87_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h9e318b2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.34.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 @@ -1993,7 +1999,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.18.0-py312h1b0e595_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/rtree-1.2.0-py312h8974cf7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py312h1bc86af_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.5-py312h1bc86af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/scikit-learn-1.4.1.post1-py312h7167a34_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.12.0-py312h8adb940_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda @@ -2015,8 +2021,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.21.1-h0d80af6_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 @@ -2025,9 +2031,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda @@ -2046,9 +2052,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda @@ -2079,20 +2085,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h59ac3ca_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hfe5d766_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.3-hb8a1441_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h4398043_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.4-h4398043_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-h677d54c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.3-h0de420c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h2fb64bc_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.4-he5ad744_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-ha761c4c_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.3.0-py312h81bd7bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda @@ -2103,7 +2109,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 @@ -2124,13 +2130,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/contourpy-1.2.0-py312h76e736e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.7.1-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/dart-sass-1.58.3-hce30654_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/debugpy-1.8.1-py312h20a0b95_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 @@ -2138,7 +2144,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-1.37.2-hce30654_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/deno-dom-0.1.35-hb9e0d3b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/docutils-0.20.1-py312h81bd7bf_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/draco-1.5.7-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda @@ -2150,7 +2156,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/exiv2-0.28.2-h193c0af_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/expat-2.6.2-hebf3989_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fiona-1.9.6-py312hd158ed5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fmt-10.2.1-h2ffa867_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda @@ -2161,13 +2167,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.50.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda @@ -2176,36 +2182,38 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gh-2.45.0-h75b854d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gmp-6.3.0-hebf3989_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gsl-2.7-h6e638da_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyh3cd1d5f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-4.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -2215,18 +2223,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.13.0-h67a62a2_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.14.7-h67a62a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/jupyter_core-5.7.2-py312h81bd7bf_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kealib-1.5.3-h210d843_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py312h81bd7bf_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/keyring-25.1.0-pyh534df25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/khronos-opencl-icd-loader-2023.04.17-h1a8c8d9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/kiwisolver-1.4.5-py312h389731b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/krb5-1.21.2-h92f50d5_0.conda @@ -2234,37 +2242,37 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.1-h8eee870_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.1-h1f98dca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.1-hb095944_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.1-h2c81988_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.1-h50959cf_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-h5e64418_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h1f98dca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb095944_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h2c81988_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-h50959cf_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-15.0.7-default_hd209bcb_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-15.0.7-default_ha49e599_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp15-15.0.7-default_he012953_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-18.1.2-default_h83d0a53_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-hc81809c_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-h7181668_5.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-h99ae44e_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda @@ -2276,14 +2284,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm14-14.0.6-hd1a9a77_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm15-15.0.7-h2621b3d_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm16-16.0.6-haab561b_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm18-18.1.2-h30cc82d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libogg-1.3.4-h27ca646_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopus-1.3.1-h27ca646_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h278d484_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda @@ -2294,17 +2303,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtasn1-4.19.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libvorbis-1.3.7-h9f76cd9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-1.3.2-hf30222e_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxslt-1.1.39-h223e5b9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.2-hcd81f8e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lxml-5.1.0-py312h9bf3b9e_0.conda @@ -2329,33 +2338,33 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mypy-1.9.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.0.33-hf9e6398_6.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.0.33-he3dca8b_6.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.3.0-hd1853d3_4.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.3.0-hf036fc4_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py312h5280bc4_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.17-py312h5280bc4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nitro-2.7.dev8-h13dd4ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py312hbaff935_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandoc-3.1.11.1-hce30654_0.conda @@ -2364,7 +2373,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pcre2-10.43-h26f9a81_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.6.3-h3c564ca_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.7.0-h6d00f24_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pexpect-4.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 @@ -2376,13 +2385,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda @@ -2391,9 +2400,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py312h1251918_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py312h1251918_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda @@ -2408,7 +2417,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyqtwebkit-5.15.9-py312h14105d7_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -2420,12 +2429,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyyaml-6.0.1-py312h02f2b3b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyzmq-25.1.2-py312h1edf716_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qca-2.3.8-hbd3fef1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py312he6ce98a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.1-py312he6ce98a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qhull-2020.2-hc021e02_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qjson-0.9.0-haa19703_1009.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qscintilla2-2.14.1-py312h14105d7_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h6bf1bb6_19.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h07f8ed4_20.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtkeychain-0.14.2-h50bd4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/qtwebkit-5.212-ha51050e_16.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/quarto-1.4.550-hce30654_1.conda @@ -2434,7 +2443,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/re2-2023.09.01-h4cba328_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.34.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 @@ -2443,7 +2452,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.18.0-py312h77200ec_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rtree-1.2.0-py312h22f7183_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py312h1ae9fbf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.5-py312h1ae9fbf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scikit-learn-1.4.1.post1-py312hd4306f4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.12.0-py312h9d7df2b_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyhd1c38e8_0.conda @@ -2465,8 +2474,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh31c8845_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.21.1-hbfef6ee_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 @@ -2475,9 +2484,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda @@ -2496,9 +2505,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda @@ -2528,20 +2537,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-h3df98b0_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-h4e3df0f_7.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.3-h96fac68_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h08df315_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.4-h08df315_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-hf6fcf4e_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.3-h6047f0a_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h558341a_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.4-hbe739fa_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-hfaf0dd0_4.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.14.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.3.0-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blas-2.121-openblas.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blas-devel-3.9.0-21_win64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bleach-6.1.0-pyhd8ed1ab_0.conda @@ -2554,7 +2563,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/build-0.7.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 @@ -2575,13 +2584,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.2.0-py312h0d7def4_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/curl-8.6.0-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/curl-8.7.1-hd5e4a3a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/dart-sass-1.58.3-h57928b3_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/dataclasses-0.8-pyhc8e2a94_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.1-py312h53d5487_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 @@ -2589,7 +2598,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/deno-1.37.2-hc8b987e_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/deno-dom-0.1.35-h8b8d39b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/distlib-0.3.8-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/docutils-0.20.1-py312h2e8e312_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/draco-1.5.7-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda @@ -2601,7 +2610,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/executing-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/exiv2-0.28.2-hadc2d18_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/expat-2.6.2-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fiona-1.9.6-py312h95cbb4d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/fmt-10.2.1-h181d51b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/folium-0.16.0-pyhd8ed1ab_0.conda @@ -2612,13 +2621,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.50.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fqdn-1.5.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/future-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda @@ -2626,36 +2635,38 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/gflags-2.2.2-ha925a31_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/gh-2.45.0-hd02998f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glog-0.7.0-h9cd36e5_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gsl-2.7-hdfb1a43_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/httplib2-0.22.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/httpx-0.27.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/identify-2.5.35-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.0.0-h57928b3_49841.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.3-pyha63f2e9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.22.2-pyh7428d3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/isoduration-20.11.0-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-4.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -2664,18 +2675,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.21.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2023.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-with-format-nongpl-4.21.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.13.0-h975169c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.14.7-h975169c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-lsp-2.2.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/jupyter_core-5.7.2-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server-2.13.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_server_terminals-0.5.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab-4.1.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_pygments-0.3.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_server-2.25.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py312h2e8e312_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/keyring-25.1.0-pyh7428d3b_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/khronos-opencl-icd-loader-2023.04.17-h64bf75a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.5-py312h0d7def4_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.2-heb0366b_0.conda @@ -2683,33 +2694,32 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.1-h2a83f13_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.1-h02312f3_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.1-h55b4db4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.1-h3f2ff47_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.1-h89268de_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-h878f99b_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-h02312f3_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-h55b4db4_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-h3f2ff47_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h89268de_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.2-default_hf64faad_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.6.0-hd5e4a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-he430b0a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-hf83a0e2_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-h9089b89_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda @@ -2722,9 +2732,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.1-h7ec3a38_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h7ec3a38_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda @@ -2734,13 +2744,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-1.3.2-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxslt-1.1.39-h3df6e99_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda @@ -2775,29 +2785,29 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/mypy-1.9.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py312h426fad5_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.17-py312h426fad5_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/nitro-2.7.dev8-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.8.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nose2-0.9.2-py_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py312h115d327_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py312h115d327_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openblas-0.3.26-pthreads_h3721920_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/overrides-7.7.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/owslib-0.30.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py312h2ab9e98_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pandoc-3.1.11.1-h57928b3_0.conda @@ -2806,7 +2816,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pathspec-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pcre2-10.43-h17e33f8_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pdal-2.6.3-h572f625_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pdal-2.7.0-h2ff5919_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pep517-0.13.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-10.2.0-py312he768995_0.conda @@ -2817,13 +2827,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.2.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/plotly-5.19.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prometheus_client-0.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.42-pyha770c72_0.conda @@ -2832,9 +2842,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.2-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py312h85e32bb_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py312h85e32bb_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py312hfccd98a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.17.2-pyhd8ed1ab_0.conda @@ -2847,7 +2857,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pyqtwebkit-5.15.9-py312hca0710b_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.2-h2628c8c_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -2862,12 +2872,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-25.1.2-py312h1ac6f91_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qca-2.3.8-h2624d1c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py312h566b452_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.1-py312h566b452_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/qgis-plugin-manager-1.6.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-h70d2c02_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/qjson-0.9.0-h04a78d6_1009.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qscintilla2-2.14.1-py312hca0710b_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qtkeychain-0.14.2-h04a78d6_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qtwebkit-5.212-h4d8ddc9_16.conda - conda: https://conda.anaconda.org/conda-forge/win-64/quarto-1.4.550-h57928b3_1.conda @@ -2875,7 +2885,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/qwt-6.2.0-h07be427_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/readme_renderer-42.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.34.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-toolbelt-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/rfc3339-validator-0.1.4-pyhd8ed1ab_0.tar.bz2 @@ -2884,7 +2894,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/rich-13.7.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.18.0-py312hfccd98a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py312h60fbdae_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.5-py312h60fbdae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/scikit-learn-1.4.1.post1-py312hcacafb1_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.12.0-py312h8753938_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/send2trash-1.8.2-pyh08f2357_0.conda @@ -2906,8 +2916,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tenacity-8.2.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/terminado-0.18.1-pyh5737063_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.21.1-h25b666a_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.2.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 @@ -2916,9 +2926,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/twine-5.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-python-dateutil-2.9.0.20240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda @@ -2940,11 +2950,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/webcolors-1.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/websocket-client-1.7.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/winpty-0.4.3-4.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda @@ -2975,17 +2985,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-he635cd5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hbfc29b2_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h6b388c4_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h96cd748_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.3-hffff1cc_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4893938_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.4-h4893938_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-h4466546_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.3-h137ae52_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-he0cb598_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.4-hba3594f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hb1af6a8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py310hff52083_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.3.0-py310hff52083_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -2994,7 +3004,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py310hc6cd4ac_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -3010,11 +3020,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py310h2372a71_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -3029,11 +3039,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py310h2372a71_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.50.0-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py310he073c5f_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py310he073c5f_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda @@ -3041,20 +3051,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-hfa15dee_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -3068,28 +3078,28 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.1-cxx17_h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.1-h6bfc85a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.1-hc6145d9_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.1-h757c851_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.1-hb016d2e_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.1-h757c851_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hb86450c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc6145d9_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-h757c851_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hb016d2e_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-h757c851_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.2-default_h5d6823c_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.6.0-hca28451_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda @@ -3098,10 +3108,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-h7c88fdf_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.22.0-h9be4e54_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda @@ -3114,6 +3124,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.2-h2448989_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda @@ -3121,9 +3132,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.26-pthreads_h413a1c8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.1-h352af49_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-h352af49_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda @@ -3135,15 +3146,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h7e041cc_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py310h1b8f574_1.conda @@ -3161,22 +3172,22 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py310hba70d50_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py310h7dc5dd1_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py310h7dc5dd1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py310hb13e2d6_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py310hcc13569_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -3191,12 +3202,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py310hf9e7431_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py310hf9e7431_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py310hcb5633a_0.conda @@ -3207,21 +3218,21 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py310hc6cd4ac_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.13-hd12c33a_1_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.14-hd12c33a_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.10-4_cp310.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py310h2372a71_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h112747c_20.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py310hbdcdc62_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.8-h06160fa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py310h1fdf081_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py310hb13e2d6_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda @@ -3233,29 +3244,29 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.2-h2c6b66d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.21.1-ha9641ad_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py310h2372a71_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/unicodedata2-15.1.0-py310h2372a71_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py310h2372a71_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda @@ -3293,17 +3304,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-h30f2259_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-hce3b3da_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.3-ha335edc_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-h6f42f56_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.4-h6f42f56_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h905ab21_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.3-hf5b2fc6_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h232afc9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.4-hacdced8_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-hd2aab46_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py310h2ec42d9_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.3.0-py310h2ec42d9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -3312,7 +3323,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py310h9e9d8ca_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -3328,10 +3339,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py310hb372a2b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -3346,11 +3357,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py310hb372a2b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.50.0-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py310h66a83bd_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py310h66a83bd_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda @@ -3359,13 +3370,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -3376,34 +3387,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.1-h49b82c4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.1-h39e3226_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.1-h1a3ed6a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.1-h43798cf_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.1-h1a3ed6a_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-h8d4fe2c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h39e3226_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-h1a3ed6a_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h43798cf_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-h1a3ed6a_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-h2239303_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda @@ -3416,9 +3427,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h089a9f7_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda @@ -3427,14 +3438,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.2-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.2-hb6ac08f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py310h7d48a1f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py310hf99a7a4_0.conda @@ -3449,20 +3460,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py310h30a4ba5_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py310h1d5af72_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py310h1d5af72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py310h4bfa8fc_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py310hdba192b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -3476,11 +3487,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py310hb372a2b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py310hce9b33c_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py310hce9b33c_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py310h54baaa9_0.conda @@ -3489,9 +3500,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py310hd30efd9_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.10.13-h00d2728_1_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.10.14-h00d2728_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/python_abi-3.10-4_cp310.conda @@ -3511,16 +3522,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.2-h7461747_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.21.1-h0d80af6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py310hb372a2b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -3530,9 +3541,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/unicodedata2-15.1.0-py310h6729b98_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py310hb372a2b_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda @@ -3554,17 +3565,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h59ac3ca_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hfe5d766_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.3-hb8a1441_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h4398043_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.4-h4398043_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-h677d54c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.3-h0de420c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h2fb64bc_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.4-he5ad744_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-ha761c4c_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py310hbe9552e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.3.0-py310hbe9552e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -3573,7 +3584,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py310h1253130_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -3589,10 +3600,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py310hd125d64_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -3607,11 +3618,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py310hd125d64_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.50.0-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py310h4e7a73e_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py310h4e7a73e_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda @@ -3620,13 +3631,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -3637,34 +3648,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.1-h8eee870_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.1-h1f98dca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.1-hb095944_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.1-h2c81988_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.1-h50959cf_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-h5e64418_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h1f98dca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb095944_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h2c81988_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-h50959cf_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-h7181668_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda @@ -3677,9 +3688,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h278d484_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda @@ -3688,14 +3699,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.2-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.2-hcd81f8e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py310hf7687f1_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py310haecba8d_0.conda @@ -3710,20 +3721,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py310h3aafd6c_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py310hdf1f89a_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py310hdf1f89a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py310hd45542a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py310h6e3cc31_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -3737,11 +3748,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py310hd125d64_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py310h5e314f5_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py310h5e314f5_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py310hd442715_0.conda @@ -3750,9 +3761,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py310h486faf3_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.10.13-h2469fbe_1_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.10.14-h2469fbe_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python_abi-3.10-4_cp310.conda @@ -3772,16 +3783,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.2-hf2abe2d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.21.1-hbfef6ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py310hd125d64_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -3791,9 +3802,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/unicodedata2-15.1.0-py310h2aa6e3c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py310hd125d64_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda @@ -3815,17 +3826,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-h3df98b0_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-h4e3df0f_7.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.3-h96fac68_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h08df315_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.4-h08df315_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-hf6fcf4e_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.3-h6047f0a_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h558341a_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.4-hbe739fa_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-hfaf0dd0_4.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py310h5588dad_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.3.0-py310h5588dad_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -3834,7 +3845,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py310h00ffb61_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -3850,10 +3861,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py310h8d17308_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -3868,28 +3879,29 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py310h8d17308_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.50.0-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py310h7028bf2_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py310h7028bf2_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.0.0-h57928b3_49841.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda @@ -3898,45 +3910,43 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.1-h2a83f13_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.1-h02312f3_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.1-h55b4db4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.1-h3f2ff47_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.1-h89268de_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-h878f99b_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-h02312f3_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-h55b4db4_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-h3f2ff47_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h89268de_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_mkl.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_mkl.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.2-default_hf64faad_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.6.0-hd5e4a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-hf83a0e2_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.9.3-default_haede6df_1009.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_mkl.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.1-h7ec3a38_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h7ec3a38_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda @@ -3945,15 +3955,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py310hb84602e_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py310hbbb2075_0.conda @@ -3969,6 +3978,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py310h5588dad_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py310hc9baf74_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49657.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py310h232114e_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda @@ -3976,16 +3986,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py310h6477780_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py310h9ccaf4f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py310h9ccaf4f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py310hf667824_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py310hecd3228_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -4000,11 +4009,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py310h8d17308_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py310hd0bb7c2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py310hd0bb7c2_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py310h87d50f1_0.conda @@ -4015,15 +4025,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py310h00ffb61_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.10.13-h4de0772_1_cpython.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.10.14-h4de0772_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-tzdata-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.10-4_cp310.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py310h8d17308_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py310h1cbd46b_0.conda @@ -4037,17 +4047,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.2-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.11.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.21.1-h25b666a_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py310h8d17308_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -4060,10 +4071,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py310h8d17308_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda @@ -4093,17 +4104,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-he635cd5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hbfc29b2_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h6b388c4_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h96cd748_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.3-hffff1cc_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4893938_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.4-h4893938_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-h4466546_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.3-h137ae52_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-he0cb598_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.4-hba3594f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hb1af6a8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py311h38be061_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.3.0-py311h38be061_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -4112,7 +4123,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py311hb755f60_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -4128,11 +4139,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -4147,11 +4158,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py311h459d7ec_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.50.0-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py311h8be719e_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py311h8be719e_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda @@ -4159,20 +4170,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-hfa15dee_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -4186,28 +4197,28 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.1-cxx17_h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.1-h6bfc85a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.1-hc6145d9_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.1-h757c851_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.1-hb016d2e_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.1-h757c851_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hb86450c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc6145d9_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-h757c851_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hb016d2e_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-h757c851_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.2-default_h5d6823c_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.6.0-hca28451_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda @@ -4216,10 +4227,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-h7c88fdf_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.22.0-h9be4e54_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda @@ -4232,6 +4243,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.2-h2448989_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda @@ -4239,9 +4251,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.26-pthreads_h413a1c8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.1-h352af49_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-h352af49_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda @@ -4253,15 +4265,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h7e041cc_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py311ha6695c7_1.conda @@ -4279,22 +4291,22 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py311he8ad708_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py311h96b013e_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py311h96b013e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py311h64a7726_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py311h320fe9a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -4309,12 +4321,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py311h459d7ec_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py311h39c9aba_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py311h39c9aba_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py311h46250e7_0.conda @@ -4325,7 +4337,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py311hb755f60_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.8-hab00c5b_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -4333,13 +4345,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-4_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py311h459d7ec_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h112747c_20.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py311h3bb2b0f_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.8-h06160fa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py311hc009520_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py311h64a7726_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda @@ -4351,28 +4363,28 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.2-h2c6b66d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.21.1-ha9641ad_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py311h459d7ec_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda @@ -4410,17 +4422,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-h30f2259_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-hce3b3da_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.3-ha335edc_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-h6f42f56_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.4-h6f42f56_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h905ab21_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.3-hf5b2fc6_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h232afc9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.4-hacdced8_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-hd2aab46_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py311h6eed73b_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.3.0-py311h6eed73b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -4429,7 +4441,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py311hdf8f085_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -4445,10 +4457,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -4463,11 +4475,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py311he705e18_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.50.0-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py311haaa0e4f_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py311haaa0e4f_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda @@ -4476,13 +4488,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -4493,34 +4505,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.1-h49b82c4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.1-h39e3226_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.1-h1a3ed6a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.1-h43798cf_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.1-h1a3ed6a_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-h8d4fe2c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h39e3226_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-h1a3ed6a_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h43798cf_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-h1a3ed6a_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-h2239303_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda @@ -4533,9 +4545,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h089a9f7_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda @@ -4544,14 +4556,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.2-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.2-hb6ac08f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py311hb5c2e0a_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py311hdfabcfc_0.conda @@ -4566,20 +4578,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py311hd2be13f_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py311h97119f7_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py311h97119f7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py311hc43a94b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py311h1eadf79_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -4593,11 +4605,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py311he705e18_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py311h9425ff2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py311h9425ff2_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py311hd64b9fd_0.conda @@ -4606,7 +4618,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py311hb91e5a3_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.11.8-h9f0c242_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -4628,16 +4640,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.2-h7461747_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.21.1-h0d80af6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -4646,9 +4658,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py311he705e18_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda @@ -4670,17 +4682,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h59ac3ca_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hfe5d766_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.3-hb8a1441_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h4398043_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.4-h4398043_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-h677d54c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.3-h0de420c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h2fb64bc_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.4-he5ad744_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-ha761c4c_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py311h267d04e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.3.0-py311h267d04e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -4689,7 +4701,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py311ha891d26_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -4705,10 +4717,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -4723,11 +4735,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.48.1-py311h05b510d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.50.0-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py311h43f0207_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py311h43f0207_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda @@ -4736,13 +4748,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -4753,34 +4765,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.1-h8eee870_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.1-h1f98dca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.1-hb095944_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.1-h2c81988_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.1-h50959cf_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-h5e64418_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h1f98dca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb095944_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h2c81988_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-h50959cf_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-h7181668_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda @@ -4793,9 +4805,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h278d484_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda @@ -4804,14 +4816,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.2-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.2-hcd81f8e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py311hf5d242d_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py311hd44b8e9_0.conda @@ -4826,20 +4838,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py311ha6bebe6_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py311h00351ea_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py311h00351ea_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py311h7125741_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py311h6e08293_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -4853,11 +4865,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py311h05b510d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py311hce53c6f_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py311hce53c6f_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py311h94f323b_0.conda @@ -4866,7 +4878,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py311h9a031f7_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.11.8-hdf0ec26_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -4888,16 +4900,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.2-hf2abe2d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.21.1-hbfef6ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -4906,9 +4918,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py311h05b510d_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda @@ -4930,17 +4942,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-h3df98b0_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-h4e3df0f_7.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.3-h96fac68_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h08df315_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.4-h08df315_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-hf6fcf4e_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.3-h6047f0a_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h558341a_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.4-hbe739fa_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-hfaf0dd0_4.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py311h1ea47a8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.3.0-py311h1ea47a8_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -4949,7 +4961,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py311h12c1d0e_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -4965,10 +4977,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -4983,28 +4995,29 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py311ha68e1ae_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.50.0-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py311h21a6730_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py311h21a6730_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.0.0-h57928b3_49841.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kealib-1.5.3-hd248416_0.conda @@ -5013,45 +5026,43 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.1-h2a83f13_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.1-h02312f3_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.1-h55b4db4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.1-h3f2ff47_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.1-h89268de_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-h878f99b_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-h02312f3_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-h55b4db4_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-h3f2ff47_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h89268de_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_mkl.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_mkl.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.2-default_hf64faad_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.6.0-hd5e4a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-hf83a0e2_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.9.3-default_haede6df_1009.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libjpeg-turbo-3.0.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libkml-1.3.0-haf3e7a6_1018.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_mkl.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.1-h7ec3a38_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h7ec3a38_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda @@ -5060,15 +5071,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/llvmlite-0.42.0-py311h5bc0dda_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/lz4-4.3.3-py311haddf500_0.conda @@ -5084,6 +5094,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-3.8.3-py311h1ea47a8_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/matplotlib-base-3.8.3-py311h6e989c2_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/minizip-4.0.5-h5bed578_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49657.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msgpack-python-1.0.7-py311h005e61a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/msys2-conda-epoch-20160418-1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda @@ -5091,16 +5102,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py311he019f65_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py311h2c0921f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py311h2c0921f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py311h0b4df5a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py311hf63dbb6_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -5115,11 +5125,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py311ha68e1ae_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py311h6a6099b_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-hfa6e2cd_3.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py311h6a6099b_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py311hc37eb10_0.conda @@ -5130,7 +5141,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py311h12c1d0e_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.11.8-h2628c8c_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -5138,7 +5149,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-4_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py311ha68e1ae_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py311hcacb13a_0.conda @@ -5152,17 +5163,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sortedcontainers-2.4.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.2-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.11.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.21.1-h25b666a_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -5174,10 +5186,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py311ha68e1ae_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda @@ -5207,17 +5219,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-compression-0.2.18-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-event-stream-0.4.2-he635cd5_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-http-0.8.1-hbfc29b2_7.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h6b388c4_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h96cd748_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-mqtt-0.10.3-hffff1cc_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4893938_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.4-h4893938_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-c-sdkutils-0.1.15-h4466546_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-checksums-0.1.18-h4466546_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.3-h137ae52_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-he0cb598_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.4-hba3594f_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hb1af6a8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-core-cpp-1.11.1-h91d86a7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-blobs-cpp-12.10.0-h00ab1b0_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/azure-storage-common-cpp-12.5.0-h94269e2_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/black-24.3.0-py312h7900ff3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/blosc-1.21.5-h0f2a231_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -5226,7 +5238,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py312h30efb56_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-h3faef2a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -5242,11 +5254,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/coverage-7.4.4-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cytoolz-0.12.3-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -5261,11 +5273,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py312h98912ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.50.0-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-h267a509_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/freexl-2.0.0-h743c826_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/geos-3.12.1-h59595ed_0.conda @@ -5273,20 +5285,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/gflags-2.2.2-he1b5a44_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/giflib-5.2.1-h0b41bf4_3.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glog-0.7.0-hed5481d_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-hfa15dee_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-8.3.0-h3d44ed6_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf4-4.2.15-h2a13503_7.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_h4f84152_100.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-73.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -5300,28 +5312,28 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libabseil-20240116.1-cxx17_h59595ed_2.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libarchive-3.7.2-h2aa1ff5_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.1-h6bfc85a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.1-h59595ed_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.1-hc6145d9_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.1-h757c851_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.1-hb016d2e_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.1-h757c851_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hb86450c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-h59595ed_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc6145d9_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-h757c851_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hb016d2e_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-h757c851_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.69-h0f662aa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-21_linux64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.2-default_h5d6823c_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcrc32c-1.1.2-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h4637d8d_4.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.6.0-hca28451_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.12-hf998b51_1.conda @@ -5330,10 +5342,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.3-hd590300_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-h7c88fdf_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.2.0-h69a702a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.2.0-ha4646dd_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-2.22.0-h9be4e54_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgoogle-cloud-storage-2.22.0-hc7a4891_1.conda @@ -5346,6 +5358,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm14-14.0.6-hcd5def8_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hb3ce162_4.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-hb3ce162_3.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.2-h2448989_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnetcdf-4.9.2-nompi_h9612171_113.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.58.0-h47da74e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnl-3.9.0-hd590300_0.conda @@ -5353,9 +5366,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.26-pthreads_h413a1c8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.1-h352af49_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-h352af49_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.43-h2797004_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libprotobuf-4.25.3-h08a7969_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libre2-11-2023.09.01-h5a48ba9_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/librttopo-1.1.0-h8917695_15.conda @@ -5367,15 +5380,15 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h7e041cc_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-255-h3516f8a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libthrift-0.19.0-hb90f79a_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libutf8proc-2.8.0-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.2-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.15-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzip-1.10.1-h2629f0a_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/llvmlite-0.42.0-py312hb06c811_1.conda @@ -5393,22 +5406,22 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/netcdf4-1.6.5-nompi_py312h26027e0_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/nss-3.98-h1d7d5a4_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py312hacefee8_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py312hacefee8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py312heda63a1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/orc-2.0.0-h1e5e2c1_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pandas-2.1.4-py312hfb8ada1_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -5423,12 +5436,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/poppler-24.03.0-h590f24d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/proj-9.3.1-h1d62c97_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-5.9.8-py312h98912ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py312h176e3d2_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py312h176e3d2_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pydantic-core-2.16.3-py312h4b3b743_0.conda @@ -5439,7 +5452,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py312h30efb56_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.2-hab00c5b_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -5447,13 +5460,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.1-py312h98912ed_1.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h112747c_20.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/re2-2023.09.01-h7f4b329_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/rtree-1.2.0-py312hb0aae1a_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.8-h06160fa_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scikit-learn-1.4.1.post1-py312h394d371_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.12.0-py312heda63a1_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.2.0-pyhd8ed1ab_0.conda @@ -5465,28 +5478,28 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/spdlog-1.12.0-hd2e6256_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlite-3.45.2-h2c6b66d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.21.1-ha9641ad_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_inspect-0.9.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tzcode-2024a-h3f72095_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/uriparser-0.9.7-h59595ed_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/wrapt-1.16.0-py312h98912ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h8ee46fc_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h8ee46fc_1.conda @@ -5524,17 +5537,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-compression-0.2.18-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-event-stream-0.4.2-h30f2259_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-http-0.8.1-hce3b3da_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-mqtt-0.10.3-ha335edc_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-h6f42f56_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.4-h6f42f56_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-c-sdkutils-0.1.15-h905ab21_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-checksums-0.1.18-h905ab21_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.3-hf5b2fc6_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h232afc9_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.4-hacdced8_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-hd2aab46_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-core-cpp-1.11.1-hbb1e571_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-blobs-cpp-12.10.0-h7728843_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/azure-storage-common-cpp-12.5.0-h0e82ce4_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/black-24.3.0-py312hb401068_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/blosc-1.21.5-heccf04b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -5543,7 +5556,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-bin-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/brotli-python-1.1.0-py312heafc425_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/bzip2-1.0.8-h10d778d_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ca-certificates-2024.2.2-h8857fd0_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cairo-1.18.0-h99e66fa_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -5559,10 +5572,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/coverage-7.4.4-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/cytoolz-0.12.3-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -5577,11 +5590,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/fontconfig-2.14.2-h5bb23bf_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py312h41838bb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.50.0-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freetype-2.12.1-h60636b9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/freexl-2.0.0-h3ec172f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/geos-3.12.1-h93d8f39_0.conda @@ -5590,13 +5603,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/gflags-2.2.2-hb1e8313_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/giflib-5.2.1-hb7f2c08_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/glog-0.7.0-h31b1b29_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf4-4.2.15-h8138101_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/hdf5-1.14.3-nompi_h691f4bf_100.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/icu-73.2-hf5e326d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -5607,34 +5620,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/lcms2-2.16-ha2f27b4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/lerc-4.0.0-hb486fe8_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libabseil-20240116.1-cxx17_hc1bcbd7_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libarchive-3.7.2-hd35d340_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.1-h49b82c4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.1-hd427752_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.1-h39e3226_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.1-h1a3ed6a_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.1-h43798cf_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.1-h1a3ed6a_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-h8d4fe2c_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-hd427752_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h39e3226_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-h1a3ed6a_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h43798cf_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-h1a3ed6a_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libblas-3.9.0-21_osx64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlicommon-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlidec-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libbrotlienc-1.1.0-h0dc2134_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcblas-3.9.0-21_osx64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcrc32c-1.1.2-he49afe7_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libcxx-16.0.6-hd57cbcb_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libedit-3.1.20191231-h0678c8f_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libev-4.33-h10d778d_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libevent-2.1.12-ha90c15b_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libexpat-2.6.2-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libffi-3.4.2-h0d85af4_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-h2239303_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran-5.0.0-13_2_0_h97931a8_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgfortran5-13.2.0-h2873a65_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-2.22.0-h651e89d_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgoogle-cloud-storage-2.22.0-ha67e85c_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libgrpc-1.62.1-h384b2fc_0.conda @@ -5647,9 +5660,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libnetcdf-4.9.2-nompi_h7760872_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libnghttp2-1.58.0-h64cf6d3_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libopenblas-0.3.26-openmp_hfef2a42_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h089a9f7_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libpng-1.6.43-h92b6c6a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libprotobuf-4.25.3-h4e4d658_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libre2-11-2023.09.01-h81f5012_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/librttopo-1.1.0-hf05f67e_15.conda @@ -5658,14 +5671,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/libsqlite-3.45.2-h92b6c6a_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libssh2-1.11.0-hd019ec5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libthrift-0.19.0-h064b379_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libutf8proc-2.8.0-hb7f2c08_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/libwebp-base-1.3.2-h0dc2134_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libxcb-1.15-hb7f2c08_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzip-1.10.1-hc158999_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/libzlib-1.2.13-h8a1eda9_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.2-hb6ac08f_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/llvmlite-0.42.0-py312h534208b_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/lz4-4.3.3-py312h904eaf1_0.conda @@ -5680,20 +5693,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/netcdf4-1.6.5-nompi_py312hd4beaa4_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nspr-4.35-hea0b92c_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/nss-3.98-ha05da47_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py312h04e34b5_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py312h04e34b5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/numpy-1.26.4-py312he3a82b2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/openjpeg-2.5.2-h7310d3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/orc-2.0.0-h6c6cd50_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pandas-2.1.4-py312haf8ecfc_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -5707,11 +5720,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/poppler-24.03.0-h0c752f9_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/proj-9.3.1-h81faed2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/psutil-5.9.8-py312h41838bb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pthread-stubs-0.4-hc929b4f_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py312hc4c33ac_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py312hc4c33ac_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/pydantic-core-2.16.3-py312h1b0e595_0.conda @@ -5720,7 +5733,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/pyproj-3.6.1-py312h14d93e9_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/python-3.12.2-h9f0c242_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -5742,16 +5755,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/spdlog-1.12.0-h8dd852c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sqlite-3.45.2-h7461747_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.21.1-h0d80af6_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-h1abcd95_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tornado-6.4-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -5760,9 +5773,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/uriparser-0.9.7-he965462_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/wrapt-1.16.0-py312h41838bb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xerces-c-3.2.5-hbbe9ea5_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/xorg-libxau-1.0.11-h0dc2134_0.conda @@ -5784,17 +5797,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-compression-0.2.18-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-event-stream-0.4.2-h59ac3ca_6.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-http-0.8.1-hfe5d766_7.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-mqtt-0.10.3-hb8a1441_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h4398043_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.4-h4398043_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-sdkutils-0.1.15-h677d54c_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-checksums-0.1.18-h677d54c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.3-h0de420c_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h2fb64bc_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.4-he5ad744_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-ha761c4c_4.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-core-cpp-1.11.1-he231e37_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-blobs-cpp-12.10.0-h2ffa867_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/azure-storage-common-cpp-12.5.0-h09a5875_4.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.3.0-py312h81bd7bf_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/blosc-1.21.5-hc338f07_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -5803,7 +5816,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-bin-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/brotli-python-1.1.0-py312h9f69965_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-h93a5062_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ca-certificates-2024.2.2-hf0a4a13_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cairo-1.18.0-hd1e100b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -5819,10 +5832,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/coverage-7.4.4-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/cytoolz-0.12.3-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -5837,11 +5850,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fontconfig-2.14.2-h82840c6_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.50.0-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freetype-2.12.1-hadb7bae_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/freexl-2.0.0-hfbad9fb_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/geos-3.12.1-h965bd2d_0.conda @@ -5850,13 +5863,13 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/gflags-2.2.2-hc88da5d_1004.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/giflib-5.2.1-h1a8c8d9_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/glog-0.7.0-hc6770e3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf4-4.2.15-h2ee6834_7.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/hdf5-1.14.3-nompi_h5bb55e9_100.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/icu-73.2-hc8870d7_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -5867,34 +5880,34 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lcms2-2.16-ha0e7c42_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lerc-4.0.0-h9a09cb3_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libabseil-20240116.1-cxx17_hebf3989_2.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarchive-3.7.2-hcacb583_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.1-h8eee870_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.1-hebf3989_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.1-h1f98dca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.1-hb095944_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.1-h2c81988_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.1-h50959cf_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-h5e64418_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-hebf3989_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h1f98dca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb095944_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h2c81988_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-h50959cf_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libblas-3.9.0-21_osxarm64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlicommon-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlidec-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libbrotlienc-1.1.0-hb547adb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcblas-3.9.0-21_osxarm64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcrc32c-1.1.2-hbdafb3b_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libcxx-16.0.6-h4653b0c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libedit-3.1.20191231-hc8eb9b7_2.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libev-4.33-h93a5062_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libevent-2.1.12-h2757513_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.6.2-hebf3989_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.4.2-h3422bc3_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-h7181668_5.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran-5.0.0-13_2_0_hd922786_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgfortran5-13.2.0-hf226fd6_3.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-2.22.0-hbebe991_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgoogle-cloud-storage-2.22.0-h8a76758_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libgrpc-1.62.1-h9c18a4f_0.conda @@ -5907,9 +5920,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnetcdf-4.9.2-nompi_h291a7c2_113.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libnghttp2-1.58.0-ha4dd798_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libopenblas-0.3.26-openmp_h6c19121_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h278d484_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpng-1.6.43-h091b4b1_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libprotobuf-4.25.3-hbfab5d5_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libre2-11-2023.09.01-h7b2c953_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/librttopo-1.1.0-hc8f776e_15.conda @@ -5918,14 +5931,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libsqlite-3.45.2-h091b4b1_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libssh2-1.11.0-h7a5bd25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libthrift-0.19.0-h026a170_1.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libutf8proc-2.8.0-h1a8c8d9_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libwebp-base-1.3.2-hb547adb_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxcb-1.15-hf346824_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzip-1.10.1-ha0bc3c6_3.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libzlib-1.2.13-h53f4e23_5.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.2-hcd81f8e_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/llvmlite-0.42.0-py312h17030e7_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/locket-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/lz4-4.3.3-py312haed5471_0.conda @@ -5940,20 +5953,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/multimethod-1.9.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/netcdf4-1.6.5-nompi_py312h9035142_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nspr-4.35-hb7217d7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/nss-3.98-h5ce2875_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py312hbaff935_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/numpy-1.26.4-py312h8442bc7_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openjpeg-2.5.2-h9f1df11_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/orc-2.0.0-h3d3088e_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pandas-2.1.4-py312h9e53831_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -5967,11 +5980,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/poppler-24.03.0-h896e6cb_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/proj-9.3.1-h93d94ba_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/psutil-5.9.8-py312he37b823_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pthread-stubs-0.4-h27ca646_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py312h1251918_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py312h1251918_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pydantic-core-2.16.3-py312h5280bc4_0.conda @@ -5980,7 +5993,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/pyproj-3.6.1-py312h4d912e0_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyha2e5f31_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.12.2-hdf0ec26_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -6002,16 +6015,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/spdlog-1.12.0-he64bfa9_2.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sqlite-3.45.2-hf2abe2d_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.21.1-hbfef6ee_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tornado-6.4-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -6020,9 +6033,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/uriparser-0.9.7-h13dd4ca_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/urllib3-2.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/wrapt-1.16.0-py312he37b823_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xerces-c-3.2.5-hf393695_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/xorg-libxau-1.0.11-hb547adb_0.conda @@ -6044,17 +6057,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-compression-0.2.18-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-event-stream-0.4.2-h3df98b0_6.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-http-0.8.1-h4e3df0f_7.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-mqtt-0.10.3-h96fac68_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h08df315_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.4-h08df315_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-c-sdkutils-0.1.15-hf6fcf4e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/aws-checksums-0.1.18-hf6fcf4e_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.3-h6047f0a_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h558341a_3.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.4-hbe739fa_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-hfaf0dd0_4.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-core-cpp-1.11.1-h249a519_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-blobs-cpp-12.10.0-h91493d7_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/azure-storage-common-cpp-12.5.0-h91493d7_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/black-24.3.0-py312h2e8e312_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/blosc-1.21.5-hdccc3a2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bmipy-2.0.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/bokeh-3.4.0-pyhd8ed1ab_0.conda @@ -6063,7 +6076,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-bin-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py312h53d5487_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-hcfcfb64_5.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.2.2-h56e8100_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h1fef639_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.2.2-pyhd8ed1ab_0.conda @@ -6079,10 +6092,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/coverage-7.4.4-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cytoolz-0.12.3-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/editables-0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.0-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/execnet-2.0.2-pyhd8ed1ab_0.conda @@ -6097,27 +6110,27 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/fontconfig-2.14.2-hbde0cde_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py312he70551f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.50.0-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freetype-2.12.1-hdaf720e_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/freexl-2.0.0-h8276f4a_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_3.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-0.14.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/geopandas-base-0.14.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geos-3.12.1-h1537add_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/geotiff-1.7.1-hbf5ca3a_15.conda - conda: https://conda.anaconda.org/conda-forge/win-64/gettext-0.21.1-h5728263_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf4-4.2.15-h5557f11_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h73e8ff5_100.conda - conda: https://conda.anaconda.org/conda-forge/win-64/icu-73.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.6-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/joblib-1.3.2-pyhd8ed1ab_0.conda @@ -6127,32 +6140,31 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libabseil-20240116.1-cxx17_h63175ca_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libarchive-3.7.2-h313118b_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.1-h2a83f13_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.1-h63175ca_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.1-h02312f3_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.1-h55b4db4_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.1-h3f2ff47_2_cpu.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.1-h89268de_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-h878f99b_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-h63175ca_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-h02312f3_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-h55b4db4_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-h3f2ff47_1_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h89268de_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_openblas.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.2-default_hf64faad_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcrc32c-1.1.2-h0e60522_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.6.0-hd5e4a3a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libevent-2.1.12-h3671451_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.2-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-hf83a0e2_5.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-2.22.0-h9cad5c0_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgoogle-cloud-storage-2.22.0-hb581fae_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libgrpc-1.62.1-h5273850_0.conda @@ -6163,9 +6175,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libnetcdf-4.9.2-nompi_h07c049d_113.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libogg-1.3.4-h8ffe710_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.26-pthreads_hc140b1d_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.1-h7ec3a38_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h7ec3a38_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.43-h19919ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libprotobuf-4.25.3-h503648d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libre2-11-2023.09.01-hf8d8778_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/librttopo-1.1.0-h94c4f80_15.conda @@ -6174,12 +6186,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.45.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libthrift-0.19.0-ha2b3283_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libutf8proc-2.8.0-h82a8f57_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libvorbis-1.3.7-h0e60522_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.3.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libxcb-1.15-hcd874cb_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzip-1.10.1-h1d365fa_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.2.13-hcfcfb64_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2 @@ -6205,16 +6217,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.6.5-nompi_py312he4da9c3_100.conda - conda: https://conda.anaconda.org/conda-forge/noarch/networkx-3.2.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py312h115d327_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py312h115d327_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/numba_celltree-0.1.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py312h8753938_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/orc-2.0.0-heb0c069_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pandas-2.1.4-py312h2ab9e98_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-0.18.3-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pandera-base-0.18.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/partd-1.4.1-pyhd8ed1ab_0.conda @@ -6229,11 +6241,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pooch-1.8.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/poppler-24.03.0-hc2f3c52_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/poppler-data-0.4.12-hd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/proj-9.3.1-he13c7e8_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-5.9.8-py312he70551f_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-hcd874cb_1001.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py312h85e32bb_2_cpu.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py312h85e32bb_1_cpu.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pyarrow-hotfix-0.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydantic-2.6.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pydantic-core-2.16.3-py312hfccd98a_0.conda @@ -6244,7 +6256,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/pyqt5-sip-12.12.2-py312h53d5487_5.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pysocks-1.7.1-pyh0701188_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.1.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-xdist-3.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.2-h2628c8c_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda @@ -6252,7 +6264,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-4_cp312.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.1-py312he70551f_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_20.conda - conda: https://conda.anaconda.org/conda-forge/win-64/re2-2023.09.01-hd3b24a8_2.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.31.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/rtree-1.2.0-py312h72b5f30_0.conda @@ -6267,16 +6279,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/spdlog-1.12.0-h64d2f7d_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/sqlite-3.45.2-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tblib-3.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.21.1-h25b666a_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-w-1.0.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/toolz-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/types-pytz-2024.1.0.20240203-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.10.0-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.10.0-pyha770c72_0.conda @@ -6288,10 +6300,10 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-hcf57466_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.38.33130-h82b7239_18.conda - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.38.33130-hcb4865c_18.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyhd8ed1ab_6.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/wrapt-1.16.0-py312he70551f_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xerces-c-3.2.5-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/xmipy-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-hcd874cb_0.conda @@ -7005,46 +7017,46 @@ packages: - kind: conda name: aws-c-io version: 0.14.6 - build: h6b388c4_1 - build_number: 1 + build: h96cd748_2 + build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h6b388c4_1.conda - sha256: ac74c99bfba553c6b480f1d1b46a26a2edf60721d8fc67e9d5c9a38a5f136ad6 - md5: 77612630a759ab015f5507c0a14ffb89 + url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-io-0.14.6-h96cd748_2.conda + sha256: 5d7c7af98276949cee0e731ecedbd7e80135a3c3c3ea8246808ebb270732ae69 + md5: cbf8138080ea12e9d9d66cf7c8bee325 depends: - aws-c-cal >=0.6.10,<0.6.11.0a0 - aws-c-common >=0.9.14,<0.9.15.0a0 - libgcc-ng >=12 - - s2n >=1.4.7,<1.4.8.0a0 + - s2n >=1.4.8,<1.4.9.0a0 license: Apache-2.0 license_family: Apache - size: 157894 - timestamp: 1710512765311 + size: 157933 + timestamp: 1711318121062 - kind: conda name: aws-c-io version: 0.14.6 - build: h9ac2cdb_1 - build_number: 1 + build: h9ac2cdb_2 + build_number: 2 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_1.conda - sha256: 0c3261002064ef40366775b9ca7dc949aa4737ebad60cc9279eb60aa8c2e996f - md5: d40986b6fcf31624581e5196810a976e + url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-io-0.14.6-h9ac2cdb_2.conda + sha256: d30fd6663148d4dee682c6ce2d3c58b3a161b9a4c760dd5d613ffec28b508d69 + md5: dbbb487c722dba28b16aa609249ddc5e depends: - aws-c-cal >=0.6.10,<0.6.11.0a0 - aws-c-common >=0.9.14,<0.9.15.0a0 license: Apache-2.0 license_family: Apache - size: 136753 - timestamp: 1710513117268 + size: 137315 + timestamp: 1711318281438 - kind: conda name: aws-c-io version: 0.14.6 - build: hf0b8b6f_1 - build_number: 1 + build: hf0b8b6f_2 + build_number: 2 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_1.conda - sha256: ec85f39204f23e5cb25d92fb04dd874660d6d3322274948f4562c3b4bc7ead22 - md5: 013cbf4550ac67ac4bb74f3357327bda + url: https://conda.anaconda.org/conda-forge/win-64/aws-c-io-0.14.6-hf0b8b6f_2.conda + sha256: 296fa165e91eb388c0a0ccc34bedc44c44cc1b89aab0e804b084203030b1e263 + md5: e676be43454868d2520ce5fba70c78f2 depends: - aws-c-cal >=0.6.10,<0.6.11.0a0 - aws-c-common >=0.9.14,<0.9.15.0a0 @@ -7053,24 +7065,24 @@ packages: - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: Apache - size: 158929 - timestamp: 1710513181053 + size: 160262 + timestamp: 1711318595249 - kind: conda name: aws-c-io version: 0.14.6 - build: hf76ed93_1 - build_number: 1 + build: hf76ed93_2 + build_number: 2 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_1.conda - sha256: d884c0ede74ce7d17e9512306ba49dd76d7e2f6545e45ca0d791d7a5ba5c03cc - md5: 608b45526d333955b3a8d6b926004880 + url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-io-0.14.6-hf76ed93_2.conda + sha256: ccb7eb57008cf89526694d5248878c6feffa9022aed0d657cb6a631b57f68026 + md5: 95e1a36ee569ff79e7eeccaf0ec1fe76 depends: - aws-c-cal >=0.6.10,<0.6.11.0a0 - aws-c-common >=0.9.14,<0.9.15.0a0 license: Apache-2.0 license_family: Apache - size: 137750 - timestamp: 1710512891325 + size: 137954 + timestamp: 1711318271993 - kind: conda name: aws-c-mqtt version: 0.10.3 @@ -7145,13 +7157,12 @@ packages: timestamp: 1710282530222 - kind: conda name: aws-c-s3 - version: 0.5.2 - build: h08df315_2 - build_number: 2 + version: 0.5.4 + build: h08df315_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.2-h08df315_2.conda - sha256: 2f7af939a87176de471bac1a1c6cc7336c714a64c495f1a5d967e0cfa7bb0e07 - md5: 0a7a232878640624469d3ca4923d146b + url: https://conda.anaconda.org/conda-forge/win-64/aws-c-s3-0.5.4-h08df315_0.conda + sha256: 504ac959605e3798aba0846cce0640a6c26f15652c08b35efc7bac4cbf39ca26 + md5: b5be2ad8a8deca436576d8aee41ecb51 depends: - aws-c-auth >=0.7.16,<0.7.17.0a0 - aws-c-cal >=0.6.10,<0.6.11.0a0 @@ -7164,17 +7175,16 @@ packages: - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: Apache - size: 101487 - timestamp: 1710296653111 + size: 101749 + timestamp: 1711395969778 - kind: conda name: aws-c-s3 - version: 0.5.2 - build: h4398043_2 - build_number: 2 + version: 0.5.4 + build: h4398043_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.2-h4398043_2.conda - sha256: 27e90ada0ae6895159a49bc4ed7172b2757cd8fc63e0189dd8cce5d057c6ee06 - md5: 5ddebd5447f4baba6215b1bafcf605dc + url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-c-s3-0.5.4-h4398043_0.conda + sha256: 7301a3a30057b4ed36ccfde72f9b4e1a26c723b840a08f721be2fa5e3760ca0c + md5: f63868e3e10c9e95fb081510a7aed1f8 depends: - aws-c-auth >=0.7.16,<0.7.17.0a0 - aws-c-cal >=0.6.10,<0.6.11.0a0 @@ -7184,17 +7194,16 @@ packages: - aws-checksums >=0.1.18,<0.1.19.0a0 license: Apache-2.0 license_family: Apache - size: 90478 - timestamp: 1710296516337 + size: 90976 + timestamp: 1711395723947 - kind: conda name: aws-c-s3 - version: 0.5.2 - build: h4893938_2 - build_number: 2 + version: 0.5.4 + build: h4893938_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.2-h4893938_2.conda - sha256: 312d67b236c9c6003f92f682c55ff344721f79d50d9a4bcdea44f2144f637642 - md5: 7e24759a8b8ead67ce687f3c31ffd12f + url: https://conda.anaconda.org/conda-forge/linux-64/aws-c-s3-0.5.4-h4893938_0.conda + sha256: a0a6d23c1e4522d5ad11f9590c7356d548c0ab6800527fa18c129c4eedce2282 + md5: 4ccee5dfb44ad34d8bb30429f62273cc depends: - aws-c-auth >=0.7.16,<0.7.17.0a0 - aws-c-cal >=0.6.10,<0.6.11.0a0 @@ -7206,17 +7215,16 @@ packages: - openssl >=3.2.1,<4.0a0 license: Apache-2.0 license_family: Apache - size: 105455 - timestamp: 1710296220268 + size: 105833 + timestamp: 1711395493398 - kind: conda name: aws-c-s3 - version: 0.5.2 - build: h6f42f56_2 - build_number: 2 + version: 0.5.4 + build: h6f42f56_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.2-h6f42f56_2.conda - sha256: 950a37ab27ec0145a4c92a3524b8862a4f5affec08049dda7b9ab83403969fd6 - md5: 9f5dc9ef044d3c13b0959d04a2005753 + url: https://conda.anaconda.org/conda-forge/osx-64/aws-c-s3-0.5.4-h6f42f56_0.conda + sha256: 8c36e1638acd044e02aff903cad9a747dd2e0026c4b95a01e55b4935fb52d586 + md5: 9e41629856e566ef364f4f5c91c73b7f depends: - aws-c-auth >=0.7.16,<0.7.17.0a0 - aws-c-cal >=0.6.10,<0.6.11.0a0 @@ -7226,8 +7234,8 @@ packages: - aws-checksums >=0.1.18,<0.1.19.0a0 license: Apache-2.0 license_family: Apache - size: 91371 - timestamp: 1710296654896 + size: 91645 + timestamp: 1711395627169 - kind: conda name: aws-c-sdkutils version: 0.1.15 @@ -7358,13 +7366,13 @@ packages: timestamp: 1709827173669 - kind: conda name: aws-crt-cpp - version: 0.26.3 - build: h0de420c_2 + version: 0.26.4 + build: hacdced8_2 build_number: 2 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.3-h0de420c_2.conda - sha256: 578ffab0c981ea227d5a9d70b32af5bcba58c632d0f8b38d4eb1ed88cc05eaaa - md5: e6d964373064af06199c6e4dff9f174e + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.4-hacdced8_2.conda + sha256: 949859a2bad2c3e53e5b73cb44401cd5889e0dc79e17bbaca46d8de50799313c + md5: 60bbeb6278ab64872222273e780e32ed depends: - aws-c-auth >=0.7.16,<0.7.17.0a0 - aws-c-cal >=0.6.10,<0.6.11.0a0 @@ -7373,22 +7381,22 @@ packages: - aws-c-http >=0.8.1,<0.8.2.0a0 - aws-c-io >=0.14.6,<0.14.7.0a0 - aws-c-mqtt >=0.10.3,<0.10.4.0a0 - - aws-c-s3 >=0.5.2,<0.5.3.0a0 + - aws-c-s3 >=0.5.4,<0.5.5.0a0 - aws-c-sdkutils >=0.1.15,<0.1.16.0a0 - libcxx >=16 license: Apache-2.0 license_family: Apache - size: 218109 - timestamp: 1710309757551 + size: 283962 + timestamp: 1711479913208 - kind: conda name: aws-crt-cpp - version: 0.26.3 - build: h137ae52_2 + version: 0.26.4 + build: hba3594f_2 build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.3-h137ae52_2.conda - sha256: 596b6d63352b7ae189842dc86510d53438f88d1e2c1d56779eeebc130beef2b6 - md5: 21c8acfdfa31ab5582897dda7c9c8a75 + url: https://conda.anaconda.org/conda-forge/linux-64/aws-crt-cpp-0.26.4-hba3594f_2.conda + sha256: dfd54ab6a312c599d7b3d78f4e2d23121d7c8e412441a7d41877b47bb5ae1c40 + md5: d464ebd32bea6638216bae1d406e2b15 depends: - aws-c-auth >=0.7.16,<0.7.17.0a0 - aws-c-cal >=0.6.10,<0.6.11.0a0 @@ -7397,23 +7405,23 @@ packages: - aws-c-http >=0.8.1,<0.8.2.0a0 - aws-c-io >=0.14.6,<0.14.7.0a0 - aws-c-mqtt >=0.10.3,<0.10.4.0a0 - - aws-c-s3 >=0.5.2,<0.5.3.0a0 + - aws-c-s3 >=0.5.4,<0.5.5.0a0 - aws-c-sdkutils >=0.1.15,<0.1.16.0a0 - libgcc-ng >=12 - libstdcxx-ng >=12 license: Apache-2.0 license_family: Apache - size: 333634 - timestamp: 1710309442818 + size: 334567 + timestamp: 1711479693548 - kind: conda name: aws-crt-cpp - version: 0.26.3 - build: h6047f0a_2 + version: 0.26.4 + build: hbe739fa_2 build_number: 2 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.3-h6047f0a_2.conda - sha256: 1cb3c3f8d0b19dad52eaa64758629f47aea88591cf3bc354fcb87c0923dc9e73 - md5: 5c8a2ba1c7a6477b10d0bcd33ee1202f + url: https://conda.anaconda.org/conda-forge/win-64/aws-crt-cpp-0.26.4-hbe739fa_2.conda + sha256: 3cb4d1a9b6aa951f022e37144f143fdd2a22c3b2c879bceb0f1c2401590b2da2 + md5: d3e1411d214ca033fe35ded532f90ca3 depends: - aws-c-auth >=0.7.16,<0.7.17.0a0 - aws-c-cal >=0.6.10,<0.6.11.0a0 @@ -7422,24 +7430,24 @@ packages: - aws-c-http >=0.8.1,<0.8.2.0a0 - aws-c-io >=0.14.6,<0.14.7.0a0 - aws-c-mqtt >=0.10.3,<0.10.4.0a0 - - aws-c-s3 >=0.5.2,<0.5.3.0a0 + - aws-c-s3 >=0.5.4,<0.5.5.0a0 - aws-c-sdkutils >=0.1.15,<0.1.16.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: Apache - size: 242851 - timestamp: 1710309795536 + size: 245487 + timestamp: 1711480062309 - kind: conda name: aws-crt-cpp - version: 0.26.3 - build: hf5b2fc6_2 + version: 0.26.4 + build: he5ad744_2 build_number: 2 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/aws-crt-cpp-0.26.3-hf5b2fc6_2.conda - sha256: d4ec9488f2052276b4b119e62b2b08df52deec3e38dc7c57311f51413046de8b - md5: bcea6861674e784e2eb2f1de4f3bac35 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-crt-cpp-0.26.4-he5ad744_2.conda + sha256: 666e4464b6ed1ef77d379070a16a214cc61576a25acada0511854dd634d2369d + md5: 1a70a1b67a99ccf5ff0d10a28b69a2c4 depends: - aws-c-auth >=0.7.16,<0.7.17.0a0 - aws-c-cal >=0.6.10,<0.6.11.0a0 @@ -7448,102 +7456,102 @@ packages: - aws-c-http >=0.8.1,<0.8.2.0a0 - aws-c-io >=0.14.6,<0.14.7.0a0 - aws-c-mqtt >=0.10.3,<0.10.4.0a0 - - aws-c-s3 >=0.5.2,<0.5.3.0a0 + - aws-c-s3 >=0.5.4,<0.5.5.0a0 - aws-c-sdkutils >=0.1.15,<0.1.16.0a0 - libcxx >=16 license: Apache-2.0 license_family: Apache - size: 280273 - timestamp: 1710309758427 + size: 220065 + timestamp: 1711479827035 - kind: conda name: aws-sdk-cpp version: 1.11.267 - build: h232afc9_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-h232afc9_3.conda - sha256: d83b5e4728d61f996115251fbb1670b79c6b5c0a02f2f1f458b80a6b06b08eb1 - md5: f707d57fee350a6b47726b2996f8e4e1 + build: ha761c4c_4 + build_number: 4 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-ha761c4c_4.conda + sha256: 1d55f56449ec0c11fd56a53f4936c8cc0128bb0ad3b6f14376b396855f81f883 + md5: e8b9457ed514ea6be6c08d1d3f8f8814 depends: - aws-c-common >=0.9.14,<0.9.15.0a0 - aws-c-event-stream >=0.4.2,<0.4.3.0a0 - aws-checksums >=0.1.18,<0.1.19.0a0 - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 - - libcurl >=8.5.0,<9.0a0 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 + - libcurl >=8.6.0,<9.0a0 - libcxx >=16 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 license: Apache-2.0 license_family: Apache - size: 3367065 - timestamp: 1710323636919 + size: 3424678 + timestamp: 1711120425559 - kind: conda name: aws-sdk-cpp version: 1.11.267 - build: h2fb64bc_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/aws-sdk-cpp-1.11.267-h2fb64bc_3.conda - sha256: 5ad2be70779844380b8b8567814ed3966ef2efd9c48cc258975cec7f072c9753 - md5: e11e8d3c0ca63039e4b8101a5063fa30 + build: hb1af6a8_4 + build_number: 4 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-hb1af6a8_4.conda + sha256: b5515e6012fc858c6dd3ccf36009470d4ab6e3ba283934809112cca2874fb185 + md5: 3e735ae06073894080acd78365e78936 depends: - aws-c-common >=0.9.14,<0.9.15.0a0 - aws-c-event-stream >=0.4.2,<0.4.3.0a0 - aws-checksums >=0.1.18,<0.1.19.0a0 - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 - - libcurl >=8.5.0,<9.0a0 - - libcxx >=16 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 + - libcurl >=8.6.0,<9.0a0 + - libgcc-ng >=12 + - libstdcxx-ng >=12 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 license: Apache-2.0 license_family: Apache - size: 3423557 - timestamp: 1710323443841 + size: 3617525 + timestamp: 1711119330056 - kind: conda name: aws-sdk-cpp version: 1.11.267 - build: h558341a_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-h558341a_3.conda - sha256: 886817ef6b059f715ab3d93025d5306c5046688fdbdade21f6fb3ce33e053561 - md5: 42633be391d0a113f39356a37ce7ea40 + build: hd2aab46_4 + build_number: 4 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/aws-sdk-cpp-1.11.267-hd2aab46_4.conda + sha256: ce10e38c01771663a0491a5190078484c5c3ae7be315e5b02fc1bc87e4c9856e + md5: 76c6a4d1839a71361c31d9bcce3601b7 depends: - aws-c-common >=0.9.14,<0.9.15.0a0 - aws-c-event-stream >=0.4.2,<0.4.3.0a0 - aws-checksums >=0.1.18,<0.1.19.0a0 - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 + - libcurl >=8.6.0,<9.0a0 + - libcxx >=16 - libzlib >=1.2.13,<1.3.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - openssl >=3.2.1,<4.0a0 license: Apache-2.0 license_family: Apache - size: 3409008 - timestamp: 1710323920901 + size: 3397066 + timestamp: 1711120157637 - kind: conda name: aws-sdk-cpp version: 1.11.267 - build: he0cb598_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/aws-sdk-cpp-1.11.267-he0cb598_3.conda - sha256: 55bf5d47ba2591507abb9b2120905cdb0b1834b2867f03c6cff4bb88f7ec7c58 - md5: ca4aebdc89bb9b08b3b6dd68ae09080d + build: hfaf0dd0_4 + build_number: 4 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/aws-sdk-cpp-1.11.267-hfaf0dd0_4.conda + sha256: c56437510d5f2fe9d41f55809b081d79a861ba9e14c79440584bc8943f6eda76 + md5: d0530648ca0f77252b70ae9f8c31c0df depends: - aws-c-common >=0.9.14,<0.9.15.0a0 - aws-c-event-stream >=0.4.2,<0.4.3.0a0 - aws-checksums >=0.1.18,<0.1.19.0a0 - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 - - libcurl >=8.5.0,<9.0a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - libzlib >=1.2.13,<1.3.0a0 - - openssl >=3.2.1,<4.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: Apache - size: 3636564 - timestamp: 1710322529863 + size: 3420008 + timestamp: 1711120472446 - kind: conda name: azure-core-cpp version: 1.11.1 @@ -7777,19 +7785,19 @@ packages: timestamp: 1702422720584 - kind: conda name: beartype - version: 0.17.2 + version: 0.18.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/beartype-0.17.2-pyhd8ed1ab_0.conda - sha256: 5bed309b86113cce855042214147f86c216f7522753fd6b1c57c9fb0069ef7bb - md5: d1efc7c68a704da942163b96cd33b929 + url: https://conda.anaconda.org/conda-forge/noarch/beartype-0.18.0-pyhd8ed1ab_0.conda + sha256: 16f84c6cab5ec0ce42fb26a546218501e25492dc1baf853c0c55da528a496cc3 + md5: f5099fa00b2d3ccf1de56a388b835759 depends: - python >=3.8 license: MIT license_family: MIT - size: 727785 - timestamp: 1707900331125 + size: 752723 + timestamp: 1712051149782 - kind: conda name: beautifulsoup4 version: 4.12.3 @@ -7808,12 +7816,12 @@ packages: timestamp: 1705564819537 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py310h2ec42d9_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py310h2ec42d9_0.conda - sha256: f36f1e82edb62170885db61dea3ef8f59d168cb9c7c1a34283d9cd1e3004bfe4 - md5: ccd04b64f9ebc4804955c4ae6d85e1c1 + url: https://conda.anaconda.org/conda-forge/osx-64/black-24.3.0-py310h2ec42d9_0.conda + sha256: cd3d0d944dd85c1d3842b68f71227fc1383ddab6a3668bd9c52f46882980f971 + md5: fd70528e897e0c8896e2cd874697ab4b depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7826,16 +7834,16 @@ packages: - typing_extensions >=4.0.1 license: MIT license_family: MIT - size: 295631 - timestamp: 1708248466085 + size: 296348 + timestamp: 1710785028970 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py310h5588dad_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py310h5588dad_0.conda - sha256: e7f5f4b999f6749ae565c102436c6dcd15207f9b751950de47e410dcf2c6ac9e - md5: e75685adaa126be78c3ee49e1ca42751 + url: https://conda.anaconda.org/conda-forge/win-64/black-24.3.0-py310h5588dad_0.conda + sha256: a2387cecf62876710e81a03af90c9f2f4b686d4dd77aafc70c75a08b1156fec6 + md5: 6c21b55e38ea8c0a7999dd74b04a675e depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7848,16 +7856,16 @@ packages: - typing_extensions >=4.0.1 license: MIT license_family: MIT - size: 310829 - timestamp: 1708248940915 + size: 312561 + timestamp: 1710785191274 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py310hbe9552e_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py310hbe9552e_0.conda - sha256: 0fc94418020322f15de4062a9010e21c92cd219330ddd03ffe31fec0c812cc59 - md5: fdcf7d7d7b13d315556797320def34ba + url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.3.0-py310hbe9552e_0.conda + sha256: 14e713413881622525818fd4257c8c3e8be31b75203463f54fb10a666c9c1987 + md5: 27c8c3d62d5ffb799332e571f7834559 depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7871,16 +7879,16 @@ packages: - typing_extensions >=4.0.1 license: MIT license_family: MIT - size: 296947 - timestamp: 1708248594393 + size: 297146 + timestamp: 1710785123511 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py310hff52083_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py310hff52083_0.conda - sha256: 94673850a9881fdcf2d375abfe0376e7143a1d59aea9fc15ef1f25b132ec5f39 - md5: 92bb721ab7aca4e9ac80d07ca0f3fe5c + url: https://conda.anaconda.org/conda-forge/linux-64/black-24.3.0-py310hff52083_0.conda + sha256: f077d0cfd2da414b09427e7b024a2ddc717303fbb088e3b1f0185a9dc1fe3a2f + md5: 12960fe9118cbb71fb802a52870f7874 depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7893,16 +7901,16 @@ packages: - typing_extensions >=4.0.1 license: MIT license_family: MIT - size: 294633 - timestamp: 1708248328306 + size: 296153 + timestamp: 1710784705413 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py311h1ea47a8_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py311h1ea47a8_0.conda - sha256: b87464ade65b64177d73c63f16f2ec8f04b46ee4851db366b36e6c23383fd6d1 - md5: bace117309e02f00843794f9d7eebca2 + url: https://conda.anaconda.org/conda-forge/win-64/black-24.3.0-py311h1ea47a8_0.conda + sha256: 5b0f42cc66115df4be5b8ab66507d139f7e25bc49c1be047b1f270432efa0035 + md5: 2bdcd9478a4be51a226a5ebf40c3d79d depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7913,16 +7921,16 @@ packages: - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 402645 - timestamp: 1708248678003 + size: 404562 + timestamp: 1710785192729 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py311h267d04e_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py311h267d04e_0.conda - sha256: 5be58d2bd471adf44c3ef37f7909b2c27538a9ab63ee465f0b67652f42ea89cb - md5: 50648218d4ca9f1728c93f72f659a7a3 + url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.3.0-py311h267d04e_0.conda + sha256: d7a76da3bcf3dcf694458453b87ddd6e6423cf2082f7c84e108195fab7f5c41a + md5: d9f6cd4ebe5dacb3d221b80cba38317a depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7934,16 +7942,16 @@ packages: - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 385007 - timestamp: 1708251716849 + size: 388888 + timestamp: 1710785217768 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py311h38be061_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py311h38be061_0.conda - sha256: a8f4dca5689162914c76d6c798d43c346ea6d0c567ee3b83278d7c602fcc334e - md5: da18066416bcacf1ff2f644f4c4ec90d + url: https://conda.anaconda.org/conda-forge/linux-64/black-24.3.0-py311h38be061_0.conda + sha256: 4abc8381861f75b04e9ad9e0c2f43e2dc15b98cf06ddb0ca31b9251af14037ae + md5: c233b101ee7d472b8ede793d2ccdcb70 depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7954,16 +7962,16 @@ packages: - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 385178 - timestamp: 1708248412394 + size: 384636 + timestamp: 1710784822673 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py311h6eed73b_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py311h6eed73b_0.conda - sha256: 2fd6b25d8d3f0bc3e91715bafcd0c38121974b61248b7b812fd850abfa41c7ed - md5: 816ffba077c301e7b2710a1dd76e6e63 + url: https://conda.anaconda.org/conda-forge/osx-64/black-24.3.0-py311h6eed73b_0.conda + sha256: bfa7403c9805986008a0eaf13444a22d62f0a04f7e000e5abfee7277f0b33b07 + md5: 0d5b16e6eaf91d65d83cd3f6d11801eb depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7974,16 +7982,16 @@ packages: - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 386618 - timestamp: 1708248490085 + size: 387883 + timestamp: 1710785207252 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py312h2e8e312_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/black-24.2.0-py312h2e8e312_0.conda - sha256: c4584ef1470f5fc16d3befd6b9b37f81e1965c4d2da1527494c249fcba6be2b0 - md5: 5d5fcecb74b6a686d3603f5685cc751a + url: https://conda.anaconda.org/conda-forge/win-64/black-24.3.0-py312h2e8e312_0.conda + sha256: 88660889f8ccc36ac6516cf757a359da0b3cb987006c3fdf2161f3dc04454e18 + md5: 952e85aebae90f59b28946d2ac7e2184 depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -7994,16 +8002,16 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 394384 - timestamp: 1708248815652 + size: 397401 + timestamp: 1710785202377 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py312h7900ff3_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/black-24.2.0-py312h7900ff3_0.conda - sha256: de4717db993d101061a82bf07c79e4ee577fbf7649c7b527ededdfaae970e531 - md5: eeadc32d6756b009edecabde4a2a3791 + url: https://conda.anaconda.org/conda-forge/linux-64/black-24.3.0-py312h7900ff3_0.conda + sha256: 42090b79eb70a178e1b7f22dfbeb83e22c69b8c4a05b6ee81ffc5f33995bda99 + md5: 2fa95f448e69d4cb064c86fd0c0a8936 depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -8014,16 +8022,16 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 379409 - timestamp: 1708248364398 + size: 382178 + timestamp: 1710784805174 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py312h81bd7bf_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.2.0-py312h81bd7bf_0.conda - sha256: ec82613d981e5cc4bc56b8d3bee32fd5feb509ac74c2e13861ca551969966034 - md5: 088e764f17394df4dc77b4ab37149234 + url: https://conda.anaconda.org/conda-forge/osx-arm64/black-24.3.0-py312h81bd7bf_0.conda + sha256: 6bd8fd7da5c2b495f32d0a5d47f515a45aec7b48eaef64a3005ec2aaefbba1cd + md5: b461ee0f49568a94e26802fa638de705 depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -8035,16 +8043,16 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 380374 - timestamp: 1708248587887 + size: 379895 + timestamp: 1710785218332 - kind: conda name: black - version: 24.2.0 + version: 24.3.0 build: py312hb401068_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/black-24.2.0-py312hb401068_0.conda - sha256: a14480761a3117af0897a2efb9bb152d3420d15cb3d039789dda1073354eb91e - md5: 96a95bf8f65584dc4337f489624896c1 + url: https://conda.anaconda.org/conda-forge/osx-64/black-24.3.0-py312hb401068_0.conda + sha256: 8a50aa1b794ee726e4f7202475ec144c5115a12151c43009919f076fee5d06fe + md5: c48592d672284d3998483456eb2c5e56 depends: - click >=8.0.0 - mypy_extensions >=0.4.3 @@ -8055,8 +8063,8 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 379530 - timestamp: 1708248469387 + size: 381956 + timestamp: 1710785057274 - kind: conda name: blas version: '2.121' @@ -8709,58 +8717,58 @@ packages: timestamp: 1699279927352 - kind: conda name: c-ares - version: 1.27.0 + version: 1.28.1 build: h10d778d_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.27.0-h10d778d_0.conda - sha256: a53e14c071dcce756ce80673f2a90a1c6dff695a26bc9f5e54d56b55e76ee3dc - md5: 713dd57081dfe8535eb961b45ed26a0c + url: https://conda.anaconda.org/conda-forge/osx-64/c-ares-1.28.1-h10d778d_0.conda + sha256: fccd7ad7e3dfa6b19352705b33eb738c4c55f79f398e106e6cf03bab9415595a + md5: d5eb7992227254c0e9a0ce71151f0079 license: MIT license_family: MIT - size: 148568 - timestamp: 1708685147963 + size: 152607 + timestamp: 1711819681694 - kind: conda name: c-ares - version: 1.27.0 + version: 1.28.1 build: h93a5062_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.27.0-h93a5062_0.conda - sha256: a168e53ee462980cd78b324e055afdd00080ded378ca974969a0917eb4ae1ccb - md5: d3579ba506791b1f8f8a16cfc2885326 + url: https://conda.anaconda.org/conda-forge/osx-arm64/c-ares-1.28.1-h93a5062_0.conda + sha256: 2fc553d7a75e912efbdd6b82cd7916cc9cb2773e6cd873b77e02d631dd7be698 + md5: 04f776a6139f7eafc2f38668570eb7db license: MIT license_family: MIT - size: 145697 - timestamp: 1708685057216 + size: 150488 + timestamp: 1711819630164 - kind: conda name: c-ares - version: 1.27.0 + version: 1.28.1 build: hcfcfb64_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.27.0-hcfcfb64_0.conda - sha256: 1ab77396e0aaffc6e02508994983c7c6e3bc57019f4a13ac4fda6ee274e30bda - md5: 387d3a2f8fc0ec02f48cee4cd79ec7e0 + url: https://conda.anaconda.org/conda-forge/win-64/c-ares-1.28.1-hcfcfb64_0.conda + sha256: 44ded34fdac46d4a37942c1cae3fc871dc6ecb13e0408442c6f8797671b332e6 + md5: 3b2a518680f790a79a7e77bad1861c3a depends: - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 153934 - timestamp: 1708685329364 + size: 159060 + timestamp: 1711820066438 - kind: conda name: c-ares - version: 1.27.0 + version: 1.28.1 build: hd590300_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.27.0-hd590300_0.conda - sha256: 2a5866b19d28cb963fab291a62ff1c884291b9d6f59de14643e52f103e255749 - md5: f6afff0e9ee08d2f1b897881a4f38cdb + url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.28.1-hd590300_0.conda + sha256: cb25063f3342149c7924b21544109696197a9d774f1407567477d4f3026bf38a + md5: dcde58ff9a1f30b0037a2315d1846d1f depends: - libgcc-ng >=12 license: MIT license_family: MIT - size: 163578 - timestamp: 1708684786032 + size: 168875 + timestamp: 1711819445938 - kind: conda name: ca-certificates version: 2024.2.2 @@ -10059,53 +10067,53 @@ packages: timestamp: 1708780611460 - kind: conda name: curl - version: 8.6.0 + version: 8.7.1 build: h2d989ff_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.6.0-h2d989ff_0.conda - sha256: 456fa2298fd51d3db51315c55b2962cbd761b8b91c43a0ea1b692ea460b5b0cf - md5: 3aadf9ef324dacf891b8c25b175ca09d + url: https://conda.anaconda.org/conda-forge/osx-arm64/curl-8.7.1-h2d989ff_0.conda + sha256: 7b780958e4c42811f926e6182484ea20b5ecb37e7722dad1a229d2e102607e8c + md5: 480f81b812f8ba1f3ce1a47ec08c0072 depends: - krb5 >=1.21.2,<1.22.0a0 - - libcurl 8.6.0 h2d989ff_0 + - libcurl 8.7.1 h2d989ff_0 - libssh2 >=1.11.0,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 - zstd >=1.5.5,<1.6.0a0 license: curl license_family: MIT - size: 150257 - timestamp: 1710591348912 + size: 150581 + timestamp: 1711548609202 - kind: conda name: curl - version: 8.6.0 + version: 8.7.1 build: h726d00d_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/curl-8.6.0-h726d00d_0.conda - sha256: 041a2cbd1214040fd04f989165484927cfca253d75c8894c3eae4516a584eafb - md5: cfc821d0c36d63c9f4c964163d5f7abc + url: https://conda.anaconda.org/conda-forge/osx-64/curl-8.7.1-h726d00d_0.conda + sha256: 986b88c3ad56a0a3c077b15592cad3cbaa6172a5d15b46bb1d98332b9a2ff8cd + md5: 9f9e314ade5b7faa580208e1331074d8 depends: - krb5 >=1.21.2,<1.22.0a0 - - libcurl 8.6.0 h726d00d_0 + - libcurl 8.7.1 h726d00d_0 - libssh2 >=1.11.0,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 - zstd >=1.5.5,<1.6.0a0 license: curl license_family: MIT - size: 151970 - timestamp: 1710591217185 + size: 153094 + timestamp: 1711548452364 - kind: conda name: curl - version: 8.6.0 + version: 8.7.1 build: hca28451_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/curl-8.6.0-hca28451_0.conda - sha256: df635ee24e95ebe7ea53045da0755ab283b5a5f56edabf830bb3c6b5ec2988bb - md5: 75f03e8c698f2ad76c7c502eec247622 + url: https://conda.anaconda.org/conda-forge/linux-64/curl-8.7.1-hca28451_0.conda + sha256: 30935854620a6d48a3b5f1b940aefb19aeb37cef02bf58cd38288bbf620fc74d + md5: d2dd5466be2ce818f8097847341da63d depends: - krb5 >=1.21.2,<1.22.0a0 - - libcurl 8.6.0 hca28451_0 + - libcurl 8.7.1 hca28451_0 - libgcc-ng >=12 - libssh2 >=1.11.0,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 @@ -10113,19 +10121,19 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: curl license_family: MIT - size: 93160 - timestamp: 1710591005569 + size: 164864 + timestamp: 1711548139831 - kind: conda name: curl - version: 8.6.0 + version: 8.7.1 build: hd5e4a3a_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/curl-8.6.0-hd5e4a3a_0.conda - sha256: 79f61ab64bd3a1ca7afc1866abcf20f59f0c89635c8b46e87c21246c064d68ab - md5: 738073cd3cfe7fff32a206a5feee27c1 + url: https://conda.anaconda.org/conda-forge/win-64/curl-8.7.1-hd5e4a3a_0.conda + sha256: 9cee216c02039eae1aa7c7e3f6c236b8f5817722e7a440d4b8722663383b8763 + md5: edb3bd8b6b14b0d7f383ee88fbbeb0ec depends: - krb5 >=1.21.2,<1.22.0a0 - - libcurl 8.6.0 hd5e4a3a_0 + - libcurl 8.7.1 hd5e4a3a_0 - libssh2 >=1.11.0,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 - ucrt >=10.0.20348.0 @@ -10133,8 +10141,8 @@ packages: - vc14_runtime >=14.29.30139 license: curl license_family: MIT - size: 150434 - timestamp: 1710591385398 + size: 153952 + timestamp: 1711548640632 - kind: conda name: cycler version: 0.12.1 @@ -10411,20 +10419,19 @@ packages: timestamp: 1683598631146 - kind: conda name: dask - version: 2024.3.0 - build: pyhd8ed1ab_1 - build_number: 1 + version: 2024.4.0 + build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/dask-2024.3.0-pyhd8ed1ab_1.conda - sha256: 666cd081c8a33164aa2f20177cd2e3c952746936390f38558898269cf80cf8ed - md5: 271447895d7d7f1bd28a74e6afc51be3 + url: https://conda.anaconda.org/conda-forge/noarch/dask-2024.4.0-pyhd8ed1ab_0.conda + sha256: c531b2a35a98124f1959176bc947bc44fcaf2ee8cfcd5c564111304504d6a07d + md5: d8a33621ec5fc18dee18f2caa2d82ece depends: - bokeh >=2.4.2,!=3.0.* - cytoolz >=0.11.0 - - dask-core >=2024.3.0,<2024.3.1.0a0 + - dask-core >=2024.4.0,<2024.4.1.0a0 - dask-expr >=1.0,<1.1 - - distributed >=2024.3.0,<2024.3.1.0a0 + - distributed >=2024.4.0,<2024.4.1.0a0 - jinja2 >=2.10.3 - lz4 >=4.3.2 - numpy >=1.21 @@ -10435,18 +10442,17 @@ packages: constrains: - openssl !=1.1.1e license: BSD-3-Clause - license_family: BSD - size: 7428 - timestamp: 1710324137577 + size: 7468 + timestamp: 1712019802862 - kind: conda name: dask-core - version: 2024.3.0 + version: 2024.4.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.3.0-pyhd8ed1ab_0.conda - sha256: b7c1514f0be3b447305440bad0d7cc5842f521d46b01788e1d9bbdbf623bc76a - md5: b6c573c271bf4c062873d7f3df97c3ba + url: https://conda.anaconda.org/conda-forge/noarch/dask-core-2024.4.0-pyhd8ed1ab_0.conda + sha256: 1e848da25f1d9dab14f829165f40e8e59395d481e9745f6ba61aa697acaa403b + md5: 291ae1e1179a934cfb7dfbbb802206d6 depends: - click >=8.1 - cloudpickle >=1.5.0 @@ -10458,27 +10464,26 @@ packages: - pyyaml >=5.3.1 - toolz >=0.10.0 license: BSD-3-Clause - license_family: BSD - size: 880817 - timestamp: 1710259160341 + size: 880904 + timestamp: 1712002569346 - kind: conda name: dask-expr - version: 1.0.2 + version: 1.0.9 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.2-pyhd8ed1ab_0.conda - sha256: 7d09a3b8499b3fb3f035977809959e212de669c4a4a0619e728e9f52a7bbc97b - md5: 55fad7bd4735ae915926b7c14aed1d97 + url: https://conda.anaconda.org/conda-forge/noarch/dask-expr-1.0.9-pyhd8ed1ab_0.conda + sha256: 9547566530ab90d345254d7599f1a066081a7092fe59902efa1d0d3386d3dc13 + md5: f62eb0fa201e2c654aaefa8702c50257 depends: - - dask-core 2024.3.0 + - dask-core 2024.4.0 - pandas >=2 - pyarrow - python >=3.9 license: BSD-3-Clause license_family: BSD - size: 139718 - timestamp: 1710437344685 + size: 143093 + timestamp: 1712087175375 - kind: conda name: dataclasses version: '0.8' @@ -10747,18 +10752,18 @@ packages: timestamp: 1702383349284 - kind: conda name: distributed - version: 2024.3.0 + version: 2024.4.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.3.0-pyhd8ed1ab_0.conda - sha256: d13ee04cb06fa760b7b1fab4ce3b1d4bef37013daafb49aad6d28cb7c7dae906 - md5: e4736ce580a5b289f7412f14ae8df42a + url: https://conda.anaconda.org/conda-forge/noarch/distributed-2024.4.0-pyhd8ed1ab_0.conda + sha256: 4b61fe34e022d5596e47b4ec1fc630d788dd4371c42a6466e0b0be4d342c618a + md5: 5085b4511ddca32d600783bed80a420f depends: - click >=8.0 - cloudpickle >=1.5.0 - cytoolz >=0.10.1 - - dask-core >=2024.3.0,<2024.3.1.0a0 + - dask-core >=2024.4.0,<2024.4.1.0a0 - jinja2 >=2.10.3 - locket >=1.0.0 - msgpack-python >=1.0.0 @@ -10776,8 +10781,8 @@ packages: - openssl !=1.1.1e license: BSD-3-Clause license_family: BSD - size: 794380 - timestamp: 1710266308952 + size: 796949 + timestamp: 1712014794469 - kind: conda name: docutils version: 0.20.1 @@ -11227,18 +11232,18 @@ packages: timestamp: 1710362455984 - kind: conda name: filelock - version: 3.13.1 + version: 3.13.3 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.1-pyhd8ed1ab_0.conda - sha256: 4d742d91412d1f163e5399d2b50c5d479694ebcd309127abb549ca3977f89d2b - md5: 0c1729b74a8152fde6a38ba0a2ab9f45 + url: https://conda.anaconda.org/conda-forge/noarch/filelock-3.13.3-pyhd8ed1ab_0.conda + sha256: 3bb2b4b8b97160ee7d2ed40b9dbc78555932274e82ef314c8a400a1d17aa4626 + md5: ff15f46b0d34308f4d40c1c51df07592 depends: - python >=3.7 license: Unlicense - size: 15605 - timestamp: 1698715139726 + size: 15611 + timestamp: 1711394721380 - kind: conda name: fiona version: 1.9.6 @@ -11800,30 +11805,12 @@ packages: timestamp: 1566932280397 - kind: conda name: fonttools - version: 4.48.1 - build: py311h05b510d_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.48.1-py311h05b510d_0.conda - sha256: f1b89183449690090b6f187eca93d978184b4aedce5626f946135dcfc7072f3b - md5: d82b00861d6f37cece9a7925359a9faa - depends: - - brotli - - munkres - - python >=3.11,<3.12.0a0 - - python >=3.11,<3.12.0a0 *_cpython - - python_abi 3.11.* *_cp311 - license: MIT - license_family: MIT - size: 2762067 - timestamp: 1707240469460 -- kind: conda - name: fonttools - version: 4.49.0 + version: 4.50.0 build: py310h2372a71_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py310h2372a71_0.conda - sha256: 7aac51cdb7364f1534c352e15ecdd3d4f9b3889112e9b9716fa76bda9926a805 - md5: e61ae80fde506b70a88e5e06376d2068 + url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.50.0-py310h2372a71_0.conda + sha256: 182fa59da123c0e23f61e5d37cc667c53ad49883243db26a4cfff64d0a9252c2 + md5: 85c48c98c9f2b72b384fb11c9004920b depends: - brotli - libgcc-ng >=12 @@ -11833,16 +11820,16 @@ packages: - unicodedata2 >=14.0.0 license: MIT license_family: MIT - size: 2283569 - timestamp: 1708049341447 + size: 2302478 + timestamp: 1710865736691 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py310h8d17308_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py310h8d17308_0.conda - sha256: 1fdfd4988bec75d08029489605e9c32b4427f797665475e439f7c2511d804755 - md5: 416688efa740b4b6d58e3efcc5c6e309 + url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.50.0-py310h8d17308_0.conda + sha256: 3910e8cefc0f1a12f11955fab71c46e3cb4bd718994fdf6e37db12568de0b968 + md5: 980a516c27816e19dc5caeb09ffb1dfd depends: - brotli - munkres @@ -11854,16 +11841,16 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 1898500 - timestamp: 1708049616817 + size: 1904584 + timestamp: 1710866254729 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py310hb372a2b_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py310hb372a2b_0.conda - sha256: 69fbb33ddfe4db4793ea6ae95e34193f5f3e128ef9f74fb9c0cd85213dfd19ed - md5: 9f9e266f3ab1cf8e4dc60b420b8325e6 + url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.50.0-py310hb372a2b_0.conda + sha256: 426551915cb98d62726c04b9d38aa271a84774bb79c9d81d304f0c7f5b892da7 + md5: 9559ed1fa7e8d57f6229c3d1f457ad2c depends: - brotli - munkres @@ -11872,16 +11859,16 @@ packages: - unicodedata2 >=14.0.0 license: MIT license_family: MIT - size: 2212986 - timestamp: 1708049686736 + size: 2223795 + timestamp: 1710866131580 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py310hd125d64_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py310hd125d64_0.conda - sha256: aa183c703ac87c93815258252c073b71e0d1fd23c40d0a90f35b9692f6dc490a - md5: 595f279d3919fd98a0ba64fe00aadf83 + url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.50.0-py310hd125d64_0.conda + sha256: a0ec098c22d5337c69c2bf2ce7b30ab456025f6be7811e4080c70ccfc7b87a36 + md5: 23617ac29124a2405a672fafc2567af6 depends: - brotli - munkres @@ -11891,16 +11878,34 @@ packages: - unicodedata2 >=14.0.0 license: MIT license_family: MIT - size: 2194683 - timestamp: 1708049567122 + size: 2186951 + timestamp: 1710866255185 +- kind: conda + name: fonttools + version: 4.50.0 + build: py311h05b510d_0 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.50.0-py311h05b510d_0.conda + sha256: 00f955308440b00072c2b219201efc980ba0b6ea209722afe41fb177ce7d3ed1 + md5: 075e90c6d9bde0db4e947b9a51083553 + depends: + - brotli + - munkres + - python >=3.11,<3.12.0a0 + - python >=3.11,<3.12.0a0 *_cpython + - python_abi 3.11.* *_cp311 + license: MIT + license_family: MIT + size: 2748309 + timestamp: 1710865956888 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py311h459d7ec_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py311h459d7ec_0.conda - sha256: bbf00a8da6c109cb139dd1e691052081e7e1e28ff2a849e7297c9e71588a6d6f - md5: d66c9e36ab104f94e35b015c86c2fcb4 + url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.50.0-py311h459d7ec_0.conda + sha256: 8c067ffd17d97374ef206bd88953a641c0807686008da68140039bec5c4dee79 + md5: fcdef52b45265eece45de756b164a9a7 depends: - brotli - libgcc-ng >=12 @@ -11909,16 +11914,16 @@ packages: - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 2817685 - timestamp: 1708049363863 + size: 2838749 + timestamp: 1710865729526 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py311ha68e1ae_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py311ha68e1ae_0.conda - sha256: cae528ef4bf25ae3ab22941fa45eed8c2c3105e503d993698ab0d963a9f743d1 - md5: d13525346bdf13be1ea57172754e2daf + url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.50.0-py311ha68e1ae_0.conda + sha256: fcad25ad5172bc27db6e3d5ceead5ec069ce3201b4fde892e59a84178f20d11b + md5: d74765a814a064018a6966c9dc807a44 depends: - brotli - munkres @@ -11929,16 +11934,16 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 2404601 - timestamp: 1708049696942 + size: 2410298 + timestamp: 1710866466126 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py311he705e18_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py311he705e18_0.conda - sha256: 8ac8c8836616dcf366fd539951367d1e0f3a0f3e519287b3218665cb37366bfc - md5: fc14300cb29ba11efaaa294b3efb14e0 + url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.50.0-py311he705e18_0.conda + sha256: e90f75612e5e01f96b7b4a2e2cf507cb7b21b28be8843b1c7eb6db93bfab5c7e + md5: b8883c0ef26a87257b8c45206207f924 depends: - brotli - munkres @@ -11946,16 +11951,16 @@ packages: - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 2745147 - timestamp: 1708049594531 + size: 2745560 + timestamp: 1710865959719 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py312h41838bb_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.49.0-py312h41838bb_0.conda - sha256: bcd82aeaafe7b54de10af15f60c352f5e3e73cfb76f7b8a86f06a4394eb18b1b - md5: 910043c784378419df3160b7661ee915 + url: https://conda.anaconda.org/conda-forge/osx-64/fonttools-4.50.0-py312h41838bb_0.conda + sha256: c983db47e2de2990413f14817613b004cf837688937900a270cfef2164d9b7a2 + md5: e685bd98318c49ce304ae304b6e6af02 depends: - brotli - munkres @@ -11963,16 +11968,16 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 2690863 - timestamp: 1708049643117 + size: 2694393 + timestamp: 1710866044046 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py312h98912ed_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.49.0-py312h98912ed_0.conda - sha256: df21c2a070b576e4b930a95a58780ec3d0fa2ff586b40e3d9fe7953cdf1ea456 - md5: b0d9bd8d89f85d031783e497e6e3bbad + url: https://conda.anaconda.org/conda-forge/linux-64/fonttools-4.50.0-py312h98912ed_0.conda + sha256: dbeb732ccca48237d43fa716a461119836cd5b4e5881745300f25db43b2bc25f + md5: a4585049e1232d8ecb1dc5afe45d6784 depends: - brotli - libgcc-ng >=12 @@ -11981,16 +11986,16 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 2780091 - timestamp: 1708049288063 + size: 2773608 + timestamp: 1710865748217 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py312he37b823_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.49.0-py312he37b823_0.conda - sha256: 416813e38515bfe5d41a4df1cb68ad0595edbaadd122646ace755b4c7d16da69 - md5: b512c69c2d3fc0b5c04e2b120c6a22d2 + url: https://conda.anaconda.org/conda-forge/osx-arm64/fonttools-4.50.0-py312he37b823_0.conda + sha256: 44d8ee74106a7aa2f4c896322040edb4f2e984a66ec6a8794639f1cbde9b002e + md5: ba5be50732c979473cc6b0b24d0bfda5 depends: - brotli - munkres @@ -11999,16 +12004,16 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 2670923 - timestamp: 1708049779053 + size: 2677569 + timestamp: 1710866109770 - kind: conda name: fonttools - version: 4.49.0 + version: 4.50.0 build: py312he70551f_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.49.0-py312he70551f_0.conda - sha256: a95b5528c13faf6cb8b56f20dc19041f9ffc7145379b724f3282c57e172cc0f0 - md5: f18ed43529ccb05217783459c49f2533 + url: https://conda.anaconda.org/conda-forge/win-64/fonttools-4.50.0-py312he70551f_0.conda + sha256: 3ee86fb3b1a8f5b403570c08f8492fa0c60abfa4708beae3bb8219d52a7cab03 + md5: 47c1ab226faafab8ff5dc4e86b673183 depends: - brotli - munkres @@ -12019,8 +12024,8 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 2351933 - timestamp: 1708049743635 + size: 2366517 + timestamp: 1710866545308 - kind: conda name: fqdn version: 1.5.1 @@ -12171,18 +12176,19 @@ packages: timestamp: 1694952828719 - kind: conda name: fsspec - version: 2024.3.0 + version: 2024.3.1 build: pyhca7485f_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.0-pyhca7485f_0.conda - sha256: 3329551042b00f92210e69ca9b14ea67897b0d6737a06b9f51b31fb7ca337dc7 - md5: 30e975286171f6d96b0caf5498fb0634 + url: https://conda.anaconda.org/conda-forge/noarch/fsspec-2024.3.1-pyhca7485f_0.conda + sha256: b8621151939bb5ea4ea4aa84f010e6130a47b1453cd9178283f335816b72a895 + md5: b7f0662ef2c9d4404f0af9eef5ed2fde depends: - python >=3.8 license: BSD-3-Clause - size: 129095 - timestamp: 1710607943955 + license_family: BSD + size: 129227 + timestamp: 1710808383964 - kind: conda name: future version: 1.0.0 @@ -12201,17 +12207,17 @@ packages: - kind: conda name: gdal version: 3.8.4 - build: py310h4e7a73e_3 - build_number: 3 + build: py310h4e7a73e_5 + build_number: 5 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py310h4e7a73e_3.conda - sha256: 8d7ac7b882c1b7d4a463a04791cb2f194df0b113af96c4376ec4c4f54ad39b97 - md5: ca53088cdc4781f001056b7b347184b0 + url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py310h4e7a73e_5.conda + sha256: b728a8d686307c3d5210cb9423c7a9ee93c7ff986265e728874562336c4178db + md5: 7370e49ee21b91edb23f3fdbe0989688 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - libcxx >=16 - - libgdal 3.8.4 hd76467a_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 h7181668_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.22.4,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.10,<3.11.0a0 @@ -12219,43 +12225,43 @@ packages: - python_abi 3.10.* *_cp310 license: MIT license_family: MIT - size: 1466940 - timestamp: 1710252755929 + size: 1462374 + timestamp: 1711288228016 - kind: conda name: gdal version: 3.8.4 - build: py310h66a83bd_3 - build_number: 3 + build: py310h66a83bd_5 + build_number: 5 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py310h66a83bd_3.conda - sha256: 8d086d9224d430c03b4577185771c3ee36603dc1ee0d60201bfb3c764f0a4314 - md5: 2b58bc0a010520124d00e1cb03ec12b3 + url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py310h66a83bd_5.conda + sha256: d41261b9673b91641a55fbac694df816a019880d8c5f5c5c5bff336d79e28d4e + md5: c144cc40425e5c22d9fde38f8d576511 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - libcxx >=16 - - libgdal 3.8.4 hda5fd9c_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 h2239303_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.22.4,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.10,<3.11.0a0 - python_abi 3.10.* *_cp310 license: MIT license_family: MIT - size: 1479294 - timestamp: 1710252397027 + size: 1479905 + timestamp: 1711287520388 - kind: conda name: gdal version: 3.8.4 - build: py310h7028bf2_3 - build_number: 3 + build: py310h7028bf2_5 + build_number: 5 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py310h7028bf2_3.conda - sha256: b00e4b96732b4577ac0c38d99e427f8e83f3692951f33253300bec34e0833067 - md5: b2e62390d624e10018abeb52efcea4e0 + url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py310h7028bf2_5.conda + sha256: 2662044771415c233dce4e6846cbb76bf94ed40cf9fefd74b74a2466e11c4504 + md5: 747b9b757d11b86f0af91a450195c226 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - - libgdal 3.8.4 h8e1932a_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 hf83a0e2_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.22.4,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.10,<3.11.0a0 @@ -12265,42 +12271,44 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 1452982 - timestamp: 1710252367618 + size: 1451445 + timestamp: 1711287678830 - kind: conda name: gdal version: 3.8.4 - build: py310he073c5f_3 - build_number: 3 + build: py310he073c5f_5 + build_number: 5 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py310he073c5f_3.conda - sha256: e6d34da83da1e2a75c890a09bfb7bd185cd5df18dabb5d5483749b7f831c15f8 - md5: 6b45f961d9e775c3e0babc69c2a0f094 + url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py310he073c5f_5.conda + sha256: d9974fcc07222737c7460ee30de2c63f1395a288db4db571a726be3e94922740 + md5: 5ddb766a316116abbf5011be870c488f depends: - hdf5 >=1.14.3,<1.14.4.0a0 - - libgdal 3.8.4 hab4ef92_3 - - libxml2 >=2.12.5,<3.0a0 + - libgcc-ng >=12 + - libgdal 3.8.4 h7c88fdf_5 + - libstdcxx-ng >=12 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.22.4,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.10,<3.11.0a0 - python_abi 3.10.* *_cp310 license: MIT license_family: MIT - size: 1498528 - timestamp: 1710250005504 + size: 1498010 + timestamp: 1711286222201 - kind: conda name: gdal version: 3.8.4 - build: py311h21a6730_3 - build_number: 3 + build: py311h21a6730_5 + build_number: 5 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py311h21a6730_3.conda - sha256: 73c54e08a19c202c1a1bfcb32079dbcf3522d0bae5b6847785fadfe045a16f11 - md5: e24e02621a42482c51393ad343edc694 + url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py311h21a6730_5.conda + sha256: 287deb5b52c1bd96b1f90af91c3950849de1e29dc97355c2039c11966ff57792 + md5: 3ae0797c272519dc4d3925aa89019057 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - - libgdal 3.8.4 h8e1932a_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 hf83a0e2_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.23.5,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.11,<3.12.0a0 @@ -12310,22 +12318,22 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 1638142 - timestamp: 1710251526213 + size: 1632043 + timestamp: 1711287133402 - kind: conda name: gdal version: 3.8.4 - build: py311h43f0207_3 - build_number: 3 + build: py311h43f0207_5 + build_number: 5 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py311h43f0207_3.conda - sha256: 575d643ac3afb50d820bfc2c7c1a0f0fdd57525cb2f56856f8230947fd064ae4 - md5: ab91240b0cd871c033ea1279e95130a4 + url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py311h43f0207_5.conda + sha256: e556b5e54ab97fa85568182bd1fd328d28d8d57eaaf4d44b37acebba2b8fa599 + md5: d8e61aba08abe3ce4db36cf8a17b16fd depends: - hdf5 >=1.14.3,<1.14.4.0a0 - libcxx >=16 - - libgdal 3.8.4 hd76467a_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 h7181668_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.23.5,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.11,<3.12.0a0 @@ -12333,107 +12341,111 @@ packages: - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 1647008 - timestamp: 1710253075092 + size: 1648278 + timestamp: 1711287177532 - kind: conda name: gdal version: 3.8.4 - build: py311h8be719e_3 - build_number: 3 + build: py311h8be719e_5 + build_number: 5 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py311h8be719e_3.conda - sha256: ba84da511e452ca1282eebcd63fe714914fa685724f37d040e7740fca9bfad47 - md5: f69bb3a9230117b59335e212c2246e59 + url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py311h8be719e_5.conda + sha256: 839f519668585e79b577ad74172b23d0509079213522e1f15b23b52640c8c645 + md5: de467dcf47e6877fabff111dbe98b4b3 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - - libgdal 3.8.4 hab4ef92_3 - - libxml2 >=2.12.5,<3.0a0 + - libgcc-ng >=12 + - libgdal 3.8.4 h7c88fdf_5 + - libstdcxx-ng >=12 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.23.5,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.11,<3.12.0a0 - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 1681714 - timestamp: 1710250195843 + size: 1682610 + timestamp: 1711286124328 - kind: conda name: gdal version: 3.8.4 - build: py311haaa0e4f_3 - build_number: 3 + build: py311haaa0e4f_5 + build_number: 5 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py311haaa0e4f_3.conda - sha256: 52c13e01a54981b4308507942bd63adfa03237e58e5d424ce1729e473ea34643 - md5: da8d4f7d15d7843f93126a1c2568266f + url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py311haaa0e4f_5.conda + sha256: 31954c53c5bbd7f117af868d76cf2297e9be6551c8c79599d8184df963a13e44 + md5: f46b89d00c1b528afe02d43788561457 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - libcxx >=16 - - libgdal 3.8.4 hda5fd9c_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 h2239303_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.23.5,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.11,<3.12.0a0 - python_abi 3.11.* *_cp311 license: MIT license_family: MIT - size: 1657920 - timestamp: 1710252638203 + size: 1658794 + timestamp: 1711287128122 - kind: conda name: gdal version: 3.8.4 - build: py312h1be6df0_3 - build_number: 3 + build: py312h1be6df0_5 + build_number: 5 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_3.conda - sha256: 63d62c7325ffba664eac0e69729b8fcc4cd014651db78723aa0b0cc98680e708 - md5: 8a1642e73b9e921731df4244a87c8bbb + url: https://conda.anaconda.org/conda-forge/osx-64/gdal-3.8.4-py312h1be6df0_5.conda + sha256: 52dcdd46c5e50458271670666ca41cbf83be06218f72e8feeaf1c922c3423b66 + md5: e77cb26e60bc7a2f2b9ad4c2d35f024e depends: - hdf5 >=1.14.3,<1.14.4.0a0 - libcxx >=16 - - libgdal 3.8.4 hda5fd9c_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 h2239303_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.26.4,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 1641131 - timestamp: 1710252901191 + size: 1644273 + timestamp: 1711287316869 - kind: conda name: gdal version: 3.8.4 - build: py312h257dd4b_3 - build_number: 3 + build: py312h257dd4b_5 + build_number: 5 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_3.conda - sha256: f25796a6151e8bf9696c2bdfddb525e3b15323b81e353f11e504a7e064a692bc - md5: b5a87bed1b0ae09097369dc1542b3d07 + url: https://conda.anaconda.org/conda-forge/linux-64/gdal-3.8.4-py312h257dd4b_5.conda + sha256: a11ddb252246e579bed502bff472c4ec7d18aa157adbd349fe9f3de0e4e53e15 + md5: c5d9279e3e90a439cd7eac621d378d00 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - - libgdal 3.8.4 hab4ef92_3 - - libxml2 >=2.12.5,<3.0a0 + - libgcc-ng >=12 + - libgdal 3.8.4 h7c88fdf_5 + - libstdcxx-ng >=12 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.26.4,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 1663069 - timestamp: 1710250100001 + size: 1663454 + timestamp: 1711285933784 - kind: conda name: gdal version: 3.8.4 - build: py312h36e25a9_3 - build_number: 3 + build: py312h36e25a9_5 + build_number: 5 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_3.conda - sha256: 87ab42ffbeb016082b11590d360729443bfa519341c4639c33ae5a0c919d70f3 - md5: a023bba4dfc1578bb7b3f97fad6cd2bb + url: https://conda.anaconda.org/conda-forge/win-64/gdal-3.8.4-py312h36e25a9_5.conda + sha256: 24e6d9f306add64ff976f2ca17c246b83387a6b787d25ee666d48de182bb27c5 + md5: 45752ae67d53252996b53219071da344 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - - libgdal 3.8.4 h8e1932a_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 hf83a0e2_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.26.4,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.12,<3.13.0a0 @@ -12443,22 +12455,22 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 1620386 - timestamp: 1710251803375 + size: 1617688 + timestamp: 1711287952897 - kind: conda name: gdal version: 3.8.4 - build: py312h56161e1_3 - build_number: 3 + build: py312h56161e1_5 + build_number: 5 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_3.conda - sha256: cb26e93982fd1b0a0918e34538f252812dd250ed478ff5fc0c4dbc2331c09303 - md5: b9c589ed099a3555a0ca9708cfb398ee + url: https://conda.anaconda.org/conda-forge/osx-arm64/gdal-3.8.4-py312h56161e1_5.conda + sha256: 0774688419d356f93cfeebabe10406e3f3ccd658a628396f942877b2124d1e22 + md5: 63848d6de04fa1c2734bcbad65f32e79 depends: - hdf5 >=1.14.3,<1.14.4.0a0 - libcxx >=16 - - libgdal 3.8.4 hd76467a_3 - - libxml2 >=2.12.5,<3.0a0 + - libgdal 3.8.4 h7181668_5 + - libxml2 >=2.12.6,<3.0a0 - numpy >=1.26.4,<2.0a0 - openssl >=3.2.1,<4.0a0 - python >=3.12,<3.13.0a0 @@ -12466,8 +12478,8 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 1628143 - timestamp: 1710252131959 + size: 1628288 + timestamp: 1711287707706 - kind: conda name: geopandas version: 0.14.3 @@ -12859,125 +12871,135 @@ packages: - kind: conda name: glib version: 2.80.0 - build: h39d0aa6_0 + build: h39d0aa6_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_0.conda - sha256: 071e9727cf7c147ec5d9c29637b0a278c40d3aca557311d84e0382e8b043f923 - md5: 7390ec9a83c88bca0760592bd305d0ab + url: https://conda.anaconda.org/conda-forge/win-64/glib-2.80.0-h39d0aa6_1.conda + sha256: a76ad2d20164be5425269ac9c65dc8a071ea6dbd5ac3090f9b16dc29a7af1dbc + md5: 0384fcbea19fea38cdbf4b3b8924e436 depends: - - glib-tools 2.80.0 h0a98069_0 - - libglib 2.80.0 h39d0aa6_0 + - glib-tools 2.80.0 h0a98069_1 + - libglib 2.80.0 h39d0aa6_1 - python * - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: LGPL-2.1-or-later - size: 490138 - timestamp: 1710249964050 + size: 491857 + timestamp: 1710939590211 - kind: conda name: glib version: 2.80.0 - build: h81c1438_0 + build: h81c1438_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_0.conda - sha256: 876e6a708fb4141ec454da8432122d7e61262dd48f41a78c0b21b5c3fc05f79a - md5: 171e4303045e5982bfb4219d90033019 + url: https://conda.anaconda.org/conda-forge/osx-64/glib-2.80.0-h81c1438_1.conda + sha256: 9bf57bc4cb0cfe72fe37dd01de41d74f5761fb21bd6bb76e11bb44adacfeeb99 + md5: 5a6fd8f9e20c7e18edec5bbab75565c3 depends: - gettext >=0.21.1,<1.0a0 - - glib-tools 2.80.0 h49a7eea_0 - - libglib 2.80.0 h81c1438_0 + - glib-tools 2.80.0 h49a7eea_1 + - libglib 2.80.0 h81c1438_1 - python * license: LGPL-2.1-or-later - size: 502459 - timestamp: 1710250282872 + size: 503338 + timestamp: 1710939853223 - kind: conda name: glib version: 2.80.0 - build: hf2295e7_0 + build: hf2295e7_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_0.conda - sha256: d35cc8fef34498826d37d3ddfdb56eee7cb0c100650597102d4d17233056ce18 - md5: 56a4c2ed7723cf0847752f74dba1929f + url: https://conda.anaconda.org/conda-forge/linux-64/glib-2.80.0-hf2295e7_1.conda + sha256: 92e0344072050dafd9f478498a2662cb6e309697b58283793145fd05c413a921 + md5: d3bcc5c186f78feba6f39ea047c35950 depends: - - glib-tools 2.80.0 hde27a5a_0 - - libglib 2.80.0 hf2295e7_0 + - glib-tools 2.80.0 hde27a5a_1 + - libgcc-ng >=12 + - libglib 2.80.0 hf2295e7_1 - python * license: LGPL-2.1-or-later - size: 503456 - timestamp: 1710249649662 + size: 503830 + timestamp: 1710939217743 - kind: conda name: glib version: 2.80.0 - build: hfc324ee_0 + build: hfc324ee_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_0.conda - sha256: 65fe8969874ed68cc1a3e791c3a2ca35ecd480adba7057f1d2671a0b2cf66aac - md5: 0e4b1791c490ff84fdd521b17526592b + url: https://conda.anaconda.org/conda-forge/osx-arm64/glib-2.80.0-hfc324ee_1.conda + sha256: e0259eaa28f47dd266a43b428f75cc450e9e37eb8065c14ec294ff936819b581 + md5: 5d751a74ba034a7e2e5be201a00d5758 depends: - gettext >=0.21.1,<1.0a0 - - glib-tools 2.80.0 hb9a4d99_0 - - libglib 2.80.0 hfc324ee_0 + - glib-tools 2.80.0 hb9a4d99_1 + - libglib 2.80.0 hfc324ee_1 - python * license: LGPL-2.1-or-later - size: 501030 - timestamp: 1710249852477 + size: 503216 + timestamp: 1710939538458 - kind: conda name: glib-tools version: 2.80.0 - build: h0a98069_0 + build: h0a98069_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_0.conda - sha256: c6c0155a11da48596ca03a115bf29fa2f387aad0e9b1fd2098cde91a2847f99c - md5: fe2d7343d48cb2c07e170bd7f87b8478 + url: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.80.0-h0a98069_1.conda + sha256: 079b56c014b5f70381924db7a70000676e616079045e7a70081e2f3cf69bc969 + md5: b6a4948e65ee42739ce14967e4cacdca depends: - - libglib 2.80.0 h39d0aa6_0 + - libglib 2.80.0 h39d0aa6_1 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: LGPL-2.1-or-later - size: 93531 - timestamp: 1710249905145 + size: 94114 + timestamp: 1710939517930 - kind: conda name: glib-tools version: 2.80.0 - build: h49a7eea_0 + build: h49a7eea_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_0.conda - sha256: e9d331ba96091a6cb67a29ccf42332259624cefb932866b17b32d94d80e34908 - md5: 3af927f9f9eb67fc7c866a62498f4d21 + url: https://conda.anaconda.org/conda-forge/osx-64/glib-tools-2.80.0-h49a7eea_1.conda + sha256: 3174f5169a75abebba34de48f5f1ba44ae875abd9abefc0116792d2d13cb9e59 + md5: 3d9331d7bb0435d1a054aa50b513f9ac depends: - gettext >=0.21.1,<1.0a0 - - libglib 2.80.0 h81c1438_0 + - libglib 2.80.0 h81c1438_1 license: LGPL-2.1-or-later - size: 97981 - timestamp: 1710250166045 + size: 97279 + timestamp: 1710939727447 - kind: conda name: glib-tools version: 2.80.0 - build: hb9a4d99_0 + build: hb9a4d99_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_0.conda - sha256: 0c8c9012c182e1bccd98695ab8fa6e2554b3bac95ff2683b5fd980882c316c48 - md5: 477865c064bfba277a02384ff842613a + url: https://conda.anaconda.org/conda-forge/osx-arm64/glib-tools-2.80.0-hb9a4d99_1.conda + sha256: 80c474aa2214b57bff6ed61e6906ed9c09e2b64ac2c367534804e59d287b892b + md5: 31519ccdedc9a30d6752fbbf0ac2a18e depends: - gettext >=0.21.1,<1.0a0 - - libglib 2.80.0 hfc324ee_0 + - libglib 2.80.0 hfc324ee_1 license: LGPL-2.1-or-later - size: 96822 - timestamp: 1710249770092 + size: 97756 + timestamp: 1710939468243 - kind: conda name: glib-tools version: 2.80.0 - build: hde27a5a_0 + build: hde27a5a_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_0.conda - sha256: bc321122185e6586d374ce6cb242c2404c44d2681ea695bf1f300c294d20b511 - md5: 072608f7b71755993a294c3cdf909fa6 + url: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.80.0-hde27a5a_1.conda + sha256: 8d736e120bb1fe3b57f957d8f6b90c9bb035ee1dac167714c9afba395af6878c + md5: 939ddd853b1d98bf6fd22cc0adeda317 depends: - - libglib 2.80.0 hf2295e7_0 + - libgcc-ng >=12 + - libglib 2.80.0 hf2295e7_1 license: LGPL-2.1-or-later - size: 112500 - timestamp: 1710249598023 + size: 112852 + timestamp: 1710939161164 - kind: conda name: glog version: 0.7.0 @@ -13088,35 +13110,36 @@ packages: - kind: conda name: graphite2 version: 1.3.13 - build: h58526e2_1001 - build_number: 1001 + build: h59595ed_1003 + build_number: 1003 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 - sha256: 65da967f3101b737b08222de6a6a14e20e480e7d523a5d1e19ace7b960b5d6b1 - md5: 8c54672728e8ec6aa6db90cf2806d220 + url: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda + sha256: 0595b009f20f8f60f13a6398e7cdcbd2acea5f986633adcf85f5a2283c992add + md5: f87c7b7c2cb45f323ffbce941c78ab7c depends: - - libgcc-ng >=7.5.0 - - libstdcxx-ng >=7.5.0 - license: LGPLv2 - size: 104701 - timestamp: 1604365484436 + - libgcc-ng >=12 + - libstdcxx-ng >=12 + license: LGPL-2.0-or-later + license_family: LGPL + size: 96855 + timestamp: 1711634169756 - kind: conda name: griffe - version: 0.42.0 + version: 0.42.1 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.0-pyhd8ed1ab_0.conda - sha256: cea8abaa82625a62b7c65294e24698c12bbff37779243fc31a3157b099f2dac5 - md5: 9f464ae2cc26282ca79c7562377cd917 + url: https://conda.anaconda.org/conda-forge/noarch/griffe-0.42.1-pyhd8ed1ab_0.conda + sha256: cdb9afdb4eb66b6c43c6f34ed14da4a4d8686e51f3fafc23e2846e4a166ce700 + md5: c6adb089706beaef0673bc32953913e8 depends: - astunparse >=1.6 - colorama >=0.4 - python >=3.8 license: MIT license_family: MIT - size: 90540 - timestamp: 1710188827881 + size: 90936 + timestamp: 1710874467453 - kind: conda name: gsl version: '2.7' @@ -13183,15 +13206,16 @@ packages: - kind: conda name: gst-plugins-base version: 1.22.9 - build: h001b923_0 + build: h001b923_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_0.conda - sha256: 509a67ce9ad9c6a992694a2ecfaff99a6aa9681a8ceab5dfa448b76cc686e887 - md5: 304b9124de13767ea8c933f72f50b348 + url: https://conda.anaconda.org/conda-forge/win-64/gst-plugins-base-1.22.9-h001b923_1.conda + sha256: e2c37128de5bdc12e3656c9c50e7b1459d8890ea656b866e68293e334356b652 + md5: ef961ec5b46ac75cebd3d68460691c27 depends: - gettext >=0.21.1,<1.0a0 - - gstreamer 1.22.9 hb4038d2_0 - - libglib >=2.78.3,<3.0a0 + - gstreamer 1.22.9 hb4038d2_1 + - libglib >=2.78.4,<3.0a0 - libogg >=1.3.4,<1.4.0a0 - libvorbis >=1.3.7,<1.4.0a0 - libzlib >=1.2.13,<1.3.0a0 @@ -13200,71 +13224,74 @@ packages: - vc14_runtime >=14.29.30139 license: LGPL-2.0-or-later license_family: LGPL - size: 2034401 - timestamp: 1706155374324 + size: 2035564 + timestamp: 1711211913043 - kind: conda name: gst-plugins-base version: 1.22.9 - build: h09b4b5e_0 + build: h09b4b5e_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_0.conda - sha256: 8856911ccef5b9829601b08f19c7353cd5b86c8e58e87d7eb30d0511a2e23689 - md5: de6c7944b3378db095218f0c76f0a054 + url: https://conda.anaconda.org/conda-forge/osx-arm64/gst-plugins-base-1.22.9-h09b4b5e_1.conda + sha256: e55277c44e7a55cd710438fe18d36816ea74570280863830b48706b793c26583 + md5: 2e32f4b46cf8c2adef7e3ca6ad9c4e3c depends: - gettext >=0.21.1,<1.0a0 - - gstreamer 1.22.9 h551c6ff_0 - - libcxx >=15 - - libglib >=2.78.3,<3.0a0 + - gstreamer 1.22.9 h551c6ff_1 + - libcxx >=16 + - libglib >=2.80.0,<3.0a0 - libogg >=1.3.4,<1.4.0a0 - libopus >=1.3.1,<2.0a0 - - libpng >=1.6.39,<1.7.0a0 + - libpng >=1.6.43,<1.7.0a0 - libvorbis >=1.3.7,<1.4.0a0 - libzlib >=1.2.13,<1.3.0a0 license: LGPL-2.0-or-later license_family: LGPL - size: 1917386 - timestamp: 1706155193009 + size: 1919868 + timestamp: 1711211932350 - kind: conda name: gst-plugins-base version: 1.22.9 - build: h3fb38fc_0 + build: h3fb38fc_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_0.conda - sha256: c633c837b6e24da03129144ac1ab5940f43035a639b39bb2a1b086ea2f025e8f - md5: a0a4e1596c79cb67ba243e5e4dfd559f + url: https://conda.anaconda.org/conda-forge/osx-64/gst-plugins-base-1.22.9-h3fb38fc_1.conda + sha256: 5f82f59f3bab51d44629cee8932b83a4f61a4438095a6e8195a6ad80f5ccfa4a + md5: 7bc7cdc3d7e58558c3986108d5840645 depends: - gettext >=0.21.1,<1.0a0 - - gstreamer 1.22.9 hf63bbb8_0 - - libcxx >=15 - - libglib >=2.78.3,<3.0a0 + - gstreamer 1.22.9 hf63bbb8_1 + - libcxx >=16 + - libglib >=2.80.0,<3.0a0 - libogg >=1.3.4,<1.4.0a0 - libopus >=1.3.1,<2.0a0 - - libpng >=1.6.39,<1.7.0a0 + - libpng >=1.6.43,<1.7.0a0 - libvorbis >=1.3.7,<1.4.0a0 - libzlib >=1.2.13,<1.3.0a0 license: LGPL-2.0-or-later license_family: LGPL - size: 2344738 - timestamp: 1706155251056 + size: 2342680 + timestamp: 1711211838219 - kind: conda name: gst-plugins-base version: 1.22.9 - build: h8e1006c_0 + build: hfa15dee_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-h8e1006c_0.conda - sha256: a4312c96a670fdbf9ff0c3efd935e42fa4b655ff33dcc52c309b76a2afaf03f0 - md5: 614b81f8ed66c56b640faee7076ad14a + url: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.9-hfa15dee_1.conda + sha256: 58fda05d33182b29e0524d684f626aad5208fb21e0622bc4b9013791dc105417 + md5: b66ddd883308a836ed86c247231aab82 depends: - __glibc >=2.17,<3.0.a0 - - alsa-lib >=1.2.10,<1.3.0.0a0 + - alsa-lib >=1.2.11,<1.3.0a0 - gettext >=0.21.1,<1.0a0 - - gstreamer 1.22.9 h98fc4e7_0 - - libexpat >=2.5.0,<3.0a0 + - gstreamer 1.22.9 h98fc4e7_1 + - libexpat >=2.6.2,<3.0a0 - libgcc-ng >=12 - - libglib >=2.78.3,<3.0a0 + - libglib >=2.80.0,<3.0a0 - libogg >=1.3.4,<1.4.0a0 - libopus >=1.3.1,<2.0a0 - - libpng >=1.6.39,<1.7.0a0 + - libpng >=1.6.43,<1.7.0a0 - libstdcxx-ng >=12 - libvorbis >=1.3.7,<1.4.0a0 - libxcb >=1.15,<1.16.0a0 @@ -13275,84 +13302,88 @@ packages: - xorg-libxrender >=0.9.11,<0.10.0a0 license: LGPL-2.0-or-later license_family: LGPL - size: 2709696 - timestamp: 1706154948546 + size: 2709720 + timestamp: 1711211314174 - kind: conda name: gstreamer version: 1.22.9 - build: h551c6ff_0 + build: h551c6ff_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_0.conda - sha256: 9c4944fe57ceddaf007abe4cec9a28486186bf25535ef176f089bc6cb24efe45 - md5: f5025efbcae14c20393d6e55eef2e1b4 + url: https://conda.anaconda.org/conda-forge/osx-arm64/gstreamer-1.22.9-h551c6ff_1.conda + sha256: 5e379761c6f429ca2e4296602a7fb13af4d731c89d60bc9f8a6c6b9c4f239861 + md5: 1c3b67e6251ac77b04d4cc50212fab2c depends: - gettext >=0.21.1,<1.0a0 - - glib >=2.78.3,<3.0a0 - - libcxx >=15 - - libglib >=2.78.3,<3.0a0 + - glib >=2.80.0,<3.0a0 + - libcxx >=16 + - libglib >=2.80.0,<3.0a0 - libiconv >=1.17,<2.0a0 license: LGPL-2.0-or-later license_family: LGPL - size: 1344295 - timestamp: 1706154905073 + size: 1335313 + timestamp: 1711211515841 - kind: conda name: gstreamer version: 1.22.9 - build: h98fc4e7_0 + build: h98fc4e7_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_0.conda - sha256: aa2395bf1790f72d2706bac77430f765ec1318ca22e60e791c13ae452c045263 - md5: bcc7157b06fce7f5e055402a8135dfd8 + url: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.9-h98fc4e7_1.conda + sha256: 13cbc0ee5fa4a61f6f06e223d23d3c179dfbede51faf87cd2a4821efa2c249f2 + md5: f502076ed4db50d9ee5c907036a5a172 depends: - __glibc >=2.17,<3.0.a0 - gettext >=0.21.1,<1.0a0 - - glib >=2.78.3,<3.0a0 + - glib >=2.80.0,<3.0a0 - libgcc-ng >=12 - - libglib >=2.78.3,<3.0a0 + - libglib >=2.80.0,<3.0a0 - libiconv >=1.17,<2.0a0 - libstdcxx-ng >=12 license: LGPL-2.0-or-later license_family: LGPL - size: 1981554 - timestamp: 1706154826325 + size: 1982967 + timestamp: 1711211168691 - kind: conda name: gstreamer version: 1.22.9 - build: hb4038d2_0 + build: hb4038d2_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_0.conda - sha256: d2ba5248e1874608e6eb4e9d8f9a6af99c8395aec88696c4bfcc077e701d88f5 - md5: 0480eecdb44a71929d5e78bf1a8644fb + url: https://conda.anaconda.org/conda-forge/win-64/gstreamer-1.22.9-hb4038d2_1.conda + sha256: 4d42bc24434db62c093748ea3ad0b6ba3872b6810b761363585513ebd79b4f87 + md5: 70557ab875e72c1f21e8d2351aeb9c54 depends: - gettext >=0.21.1,<1.0a0 - - glib >=2.78.3,<3.0a0 - - libglib >=2.78.3,<3.0a0 + - glib >=2.78.4,<3.0a0 + - libglib >=2.78.4,<3.0a0 - libiconv >=1.17,<2.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: LGPL-2.0-or-later license_family: LGPL - size: 1930741 - timestamp: 1706155201555 + size: 1936661 + timestamp: 1711211717228 - kind: conda name: gstreamer version: 1.22.9 - build: hf63bbb8_0 + build: hf63bbb8_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_0.conda - sha256: be9d64972f997e1f865673cbb059a8c653f1fb38ff5e6c6a049699823bad0d9f - md5: 1581bb03c4655191284a3eab9ee8690d + url: https://conda.anaconda.org/conda-forge/osx-64/gstreamer-1.22.9-hf63bbb8_1.conda + sha256: dd2c54e38b64d35061d209f02afdd2fca91a5c24b53fce05ee306f2aa727226e + md5: 66790d9dd1a29307e379dc3d55a34360 depends: - gettext >=0.21.1,<1.0a0 - - glib >=2.78.3,<3.0a0 - - libcxx >=15 - - libglib >=2.78.3,<3.0a0 + - glib >=2.80.0,<3.0a0 + - libcxx >=16 + - libglib >=2.80.0,<3.0a0 - libiconv >=1.17,<2.0a0 license: LGPL-2.0-or-later license_family: LGPL - size: 1781693 - timestamp: 1706154946526 + size: 1785014 + timestamp: 1711211426347 - kind: conda name: h11 version: 0.14.0 @@ -13408,13 +13439,13 @@ packages: timestamp: 1699925311766 - kind: conda name: hatchling - version: 1.22.2 + version: 1.22.4 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.2-pyhd8ed1ab_0.conda - sha256: c68e4d24bcc9dbd228ae458ad871968881c62f6a8ed3d9e5ca31e554f8b6ffd7 - md5: b96f54757ba37f16f57301e6ec794b77 + url: https://conda.anaconda.org/conda-forge/noarch/hatchling-1.22.4-pyhd8ed1ab_0.conda + sha256: e047a6fb6dd790f0cb5dd904809c81d38bdeee974726442f9274f6ac367f68a3 + md5: 8320faf2e07543de1e3968b733c44da1 depends: - editables >=0.3 - importlib-metadata @@ -13425,8 +13456,9 @@ packages: - tomli >=1.2.2 - trove-classifiers license: MIT - size: 62661 - timestamp: 1710620245123 + license_family: MIT + size: 62671 + timestamp: 1711286880652 - kind: conda name: hdf4 version: 4.2.15 @@ -13604,13 +13636,13 @@ packages: timestamp: 1598856368685 - kind: conda name: httpcore - version: 1.0.4 + version: 1.0.5 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.4-pyhd8ed1ab_0.conda - sha256: dec07ca00223d52433e7c20c71d5e645a7828b3e50206d855ad7a540869341f2 - md5: 20f047662cf4fa8b97836111df87dbb4 + url: https://conda.anaconda.org/conda-forge/noarch/httpcore-1.0.5-pyhd8ed1ab_0.conda + sha256: 4025644200eefa0598e4600a66fd4804a57d9fd7054a5c8c45e508fd875e0b84 + md5: a6b9a0158301e697e4d0a36a3d60e133 depends: - anyio >=3.0,<5.0 - certifi @@ -13620,8 +13652,8 @@ packages: - sniffio 1.* license: BSD-3-Clause license_family: BSD - size: 45727 - timestamp: 1708529429006 + size: 45816 + timestamp: 1711597091407 - kind: conda name: httplib2 version: 0.22.0 @@ -13761,69 +13793,69 @@ packages: timestamp: 1701027126206 - kind: conda name: importlib-metadata - version: 7.0.2 + version: 7.1.0 build: pyha770c72_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.0.2-pyha770c72_0.conda - sha256: 9a26136d2cc81ccac209d6ae24281ceba3365fe34e34b2c45570f2a96e9d9c1b - md5: b050a4bb0e90ebd6e7fa4093d6346867 + url: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda + sha256: cc2e7d1f7f01cede30feafc1118b7aefa244d0a12224513734e24165ae12ba49 + md5: 0896606848b2dc5cebdf111b6543aa04 depends: - python >=3.8 - zipp >=0.5 license: Apache-2.0 license_family: APACHE - size: 26900 - timestamp: 1709821273570 + size: 27043 + timestamp: 1710971498183 - kind: conda name: importlib-resources - version: 6.3.0 + version: 6.4.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.3.0-pyhd8ed1ab_0.conda - sha256: ed401d44578cec3bf8bd924bee7867c6d86c0707e55dd543b99640fa0fc85e47 - md5: 828e394294c4a0e31872a9f420cf92f7 + url: https://conda.anaconda.org/conda-forge/noarch/importlib-resources-6.4.0-pyhd8ed1ab_0.conda + sha256: 38db827f445ae437a15d50a94816ae67a48285d0700f736af3eb90800a71f079 + md5: dcbadab7a68738a028e195ab68ab2d2e depends: - - importlib_resources >=6.3.0,<6.3.1.0a0 + - importlib_resources >=6.4.0,<6.4.1.0a0 - python >=3.8 license: Apache-2.0 license_family: APACHE - size: 9627 - timestamp: 1710342959310 + size: 9657 + timestamp: 1711041029062 - kind: conda name: importlib_metadata - version: 7.0.2 + version: 7.1.0 build: hd8ed1ab_0 subdir: noarch noarch: generic - url: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.0.2-hd8ed1ab_0.conda - sha256: b250e6a3e741b762bb2caf05119feb6245cb41b468542e5a9263cd01671098f7 - md5: d11132727a247f2c1998779a2af743a1 + url: https://conda.anaconda.org/conda-forge/noarch/importlib_metadata-7.1.0-hd8ed1ab_0.conda + sha256: 01dc057a45dedcc742a71599f67c7383ae2bf873be6018ebcbd06ac8d994dedb + md5: 6ef2b72d291b39e479d7694efa2b2b98 depends: - - importlib-metadata >=7.0.2,<7.0.3.0a0 + - importlib-metadata >=7.1.0,<7.1.1.0a0 license: Apache-2.0 license_family: APACHE - size: 9439 - timestamp: 1709821278370 + size: 9444 + timestamp: 1710971502542 - kind: conda name: importlib_resources - version: 6.3.0 + version: 6.4.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.3.0-pyhd8ed1ab_0.conda - sha256: 8ad2fdd72f6a0ebefaa1496d2f43f100596f1733468fd9b549891f6195a5b8cb - md5: 18850e65ca439066484607b26ed09ecd + url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.0-pyhd8ed1ab_0.conda + sha256: c6ae80c0beaeabb342c5b041f19669992ae6e937dbec56ced766cb035900f9de + md5: c5d3907ad8bd7bf557521a1833cf7e6d depends: - python >=3.8 - zipp >=3.1.0 constrains: - - importlib-resources >=6.3.0,<6.3.1.0a0 + - importlib-resources >=6.4.0,<6.4.1.0a0 license: Apache-2.0 license_family: APACHE - size: 30938 - timestamp: 1710342936493 + size: 33056 + timestamp: 1711041009039 - kind: conda name: iniconfig version: 2.0.0 @@ -14009,20 +14041,51 @@ packages: timestamp: 1638811664194 - kind: conda name: jaraco.classes - version: 3.3.1 + version: 3.4.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.3.1-pyhd8ed1ab_0.conda - sha256: 232b40de8176fa7fb66a893653f8ae03c29616e04a83dae5a47df94b74e256ca - md5: c541ae264c9f1f21d83fc30dffb908ee + url: https://conda.anaconda.org/conda-forge/noarch/jaraco.classes-3.4.0-pyhd8ed1ab_0.conda + sha256: c44030b080f33299ec5eb5d47d1be30277cd55859701d67b1b6e4e38f4b5bf06 + md5: 5271aed7436e2145d405a53ba05610aa depends: - more-itertools - python >=3.7 license: MIT license_family: MIT - size: 12069 - timestamp: 1707378260988 + size: 11979 + timestamp: 1712042091283 +- kind: conda + name: jaraco.context + version: 4.3.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jaraco.context-4.3.0-pyhd8ed1ab_0.conda + sha256: 7ce041636e6a62bf5f54b2d45f506dc77e27cd854fd754df975382f636282619 + md5: 53511e966e3ced065fbb1d3d5470d16d + depends: + - python >=3.6 + license: MIT + license_family: MIT + size: 10812 + timestamp: 1675258798785 +- kind: conda + name: jaraco.functools + version: 4.0.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jaraco.functools-4.0.0-pyhd8ed1ab_0.conda + sha256: d2e866fd22a48eaa2f795b6a3b0bf16f066293322ce04dd65cca36267160ead6 + md5: 547670a612fd335eaa5ffbf0fa75cb64 + depends: + - more-itertools + - python >=3.8 + license: MIT + license_family: MIT + size: 15192 + timestamp: 1701695329516 - kind: conda name: jedi version: 0.19.1 @@ -14136,6 +14199,7 @@ packages: depends: - python >=3.7,<4.0 license: Apache-2.0 + license_family: APACHE size: 27927 timestamp: 1710632397456 - kind: conda @@ -14267,66 +14331,66 @@ packages: timestamp: 1705707742938 - kind: conda name: juliaup - version: 1.13.0 + version: 1.14.7 build: h67a62a2_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.13.0-h67a62a2_0.conda - sha256: d38262639d9c40fd3078cd263ac4b592451f27405a31d67df058f4d6e34d0b19 - md5: 7625255395624b0c93f77266d1dbd18e + url: https://conda.anaconda.org/conda-forge/osx-arm64/juliaup-1.14.7-h67a62a2_0.conda + sha256: ab533c4b87f2e9c0d4cc085828fd40e5edba27bc732a8e672485c309adde8c90 + md5: 591cd935e82adfa28f8fa51fade68cd7 depends: - __osx >=11.0 constrains: - __osx >=11.0 license: MIT license_family: MIT - size: 2127788 - timestamp: 1706564824739 + size: 2181928 + timestamp: 1711139346144 - kind: conda name: juliaup - version: 1.13.0 + version: 1.14.7 build: h975169c_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.13.0-h975169c_0.conda - sha256: a14b9856b9c2f6ffd40d1b538dc1539b5e3058710df7c3c8fd8d837d2d43b1eb - md5: 78c45d1f9c8f0f4e563802d46db11ec0 + url: https://conda.anaconda.org/conda-forge/win-64/juliaup-1.14.7-h975169c_0.conda + sha256: 94f128dafe112ee7212cb257ceeaa04796c920dda60c5557de2493e8d724fc7a + md5: 2f1a5eb8bc97890c891bf94342d1c7ba depends: - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 1391312 - timestamp: 1706565757417 + size: 1480648 + timestamp: 1711139515938 - kind: conda name: juliaup - version: 1.13.0 + version: 1.14.7 build: he8a937b_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.13.0-he8a937b_0.conda - sha256: 7eec8c76b948ff51cfdb03e4d0d5303dba913b929de8173dc2df1ad5f8900cee - md5: 36f632298719dd4b37d57cca4ebd2ead + url: https://conda.anaconda.org/conda-forge/linux-64/juliaup-1.14.7-he8a937b_0.conda + sha256: aeceaef96c9bff58cec324f4266d0a81137df2dbe0884ab6c2aa71847d8b0fe8 + md5: 3994d5329948d26cc994e9501aba9d31 depends: - libgcc-ng >=12 license: MIT license_family: MIT - size: 3859930 - timestamp: 1706564340550 + size: 3972578 + timestamp: 1711138639418 - kind: conda name: juliaup - version: 1.13.0 + version: 1.14.7 build: hf4330d5_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.13.0-hf4330d5_0.conda - sha256: 81b1271be7f7c22b47d8b3dbfc959434087be1ff357cd4c9bf4a0bbf90fa60e1 - md5: 1bc86f6ebb96981962e52b6d42a09616 + url: https://conda.anaconda.org/conda-forge/osx-64/juliaup-1.14.7-hf4330d5_0.conda + sha256: 9d9c5655af4b028baa425402d29d5ff5c553317d671bfaf01fee7ffaa3affde3 + md5: f5cc6d64ade1fa88cbe2eaa553b4798c depends: - __osx >=10.15 constrains: - __osx >=10.12 license: MIT license_family: MIT - size: 2183774 - timestamp: 1706564964770 + size: 2249558 + timestamp: 1711139417930 - kind: conda name: jupyter-lsp version: 2.2.4 @@ -14437,13 +14501,13 @@ packages: timestamp: 1710257658978 - kind: conda name: jupyter_events - version: 0.9.1 + version: 0.10.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.9.1-pyhd8ed1ab_0.conda - sha256: 9054dea8926daf867ee0f366b3b45579e1bd16cbc7667d1f7541531d037fdbfd - md5: 331ea2fc883fc5f2fc002a4e66e38bc5 + url: https://conda.anaconda.org/conda-forge/noarch/jupyter_events-0.10.0-pyhd8ed1ab_0.conda + sha256: cd3f41dc093162a41d4bae171e40a1b9b115c4d488e9bb837a8fa9d084931fb9 + md5: ed45423c41b3da15ea1df39b1f80c2ca depends: - jsonschema-with-format-nongpl >=4.18.0 - python >=3.8 @@ -14455,8 +14519,8 @@ packages: - traitlets >=5.3 license: BSD-3-Clause license_family: BSD - size: 21271 - timestamp: 1710262753295 + size: 21475 + timestamp: 1710805759187 - kind: conda name: jupyter_server version: 2.13.0 @@ -14645,72 +14709,70 @@ packages: timestamp: 1703116732437 - kind: conda name: keyring - version: 24.3.1 - build: py312h2e8e312_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/keyring-24.3.1-py312h2e8e312_0.conda - sha256: 68394727fb7737e4c657062393df2b1f917ed1dc3ca79f8cd56e67bcfc349a4d - md5: bf404ac9e8bcd9dd183bd9b20ee1e561 + version: 25.1.0 + build: pyh534df25_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/keyring-25.1.0-pyh534df25_0.conda + sha256: b5c1f6b9f9baf161b7fd560b62a279841f4114f216c627706a828621326d82ae + md5: 537a5385c6cee5fa2275a457e0b51b21 depends: + - __osx + - importlib_metadata >=4.11.4 + - importlib_resources - jaraco.classes - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 - - pywin32-ctypes >=0.2.0 + - jaraco.context + - jaraco.functools + - python >=3.8 license: MIT license_family: MIT - size: 93058 - timestamp: 1709130311323 + size: 36284 + timestamp: 1712108104773 - kind: conda name: keyring - version: 24.3.1 - build: py312h7900ff3_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/keyring-24.3.1-py312h7900ff3_0.conda - sha256: 23d00575adf8a0974e5e1e5f0859a31e6bfa4178d2ef9f8e0c8c3e405e73c021 - md5: 7548ce5655764c5fdd98d98a677e68bf + version: 25.1.0 + build: pyh7428d3b_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/keyring-25.1.0-pyh7428d3b_0.conda + sha256: 1c5581bf3362bd4b36ca73dc2ad21bfd49accd0d46b03b278eddf66ea95ca6aa + md5: 993d4eaf46a94e1ba4d1a15fbed07953 depends: + - __win + - importlib_metadata >=4.11.4 + - importlib_resources - jaraco.classes - - jeepney >=0.4.2 - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 - - secretstorage >=3.2 + - jaraco.context + - jaraco.functools + - python >=3.8 + - pywin32-ctypes >=0.2.0 license: MIT license_family: MIT - size: 76250 - timestamp: 1709129804895 + size: 36403 + timestamp: 1712108422302 - kind: conda name: keyring - version: 24.3.1 - build: py312h81bd7bf_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/keyring-24.3.1-py312h81bd7bf_0.conda - sha256: 1df0e080d771a7c6fc5be24907dd1e46ce64ba423127d4945730a8ccc5b04e6c - md5: 90a5d7caf1fdb91bb763ccb7c6a54966 + version: 25.1.0 + build: pyha804496_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/keyring-25.1.0-pyha804496_0.conda + sha256: 2acc90266689d2832bfe119608e5de458ca2b4a42f712912fe0b0b3c950d0d19 + md5: db81e05a29ff5d52ca21b18bbf880520 depends: + - __linux + - importlib_metadata >=4.11.4 + - importlib_resources - jaraco.classes - - python >=3.12,<3.13.0a0 - - python >=3.12,<3.13.0a0 *_cpython - - python_abi 3.12.* *_cp312 - license: MIT - license_family: MIT - size: 76775 - timestamp: 1709130164881 -- kind: conda - name: keyring - version: 24.3.1 - build: py312hb401068_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/keyring-24.3.1-py312hb401068_0.conda - sha256: a534dc09ea7afc89da779b8c5e276c904101cde2a689c1055cedaff2f537dfb3 - md5: 4d44c57781677af60d7c16eceb1e4937 - depends: - - jaraco.classes - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 + - jaraco.context + - jaraco.functools + - jeepney >=0.4.2 + - python >=3.8 + - secretstorage >=3.2 license: MIT license_family: MIT - size: 76124 - timestamp: 1709130094054 + size: 35870 + timestamp: 1712107992056 - kind: conda name: keyutils version: 1.6.1 @@ -15338,67 +15400,63 @@ packages: timestamp: 1709160261245 - kind: conda name: libaec - version: 1.1.2 - build: h13dd4ca_1 - build_number: 1 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.2-h13dd4ca_1.conda - sha256: c9d6f01d511bd3686ce590addf829f34031b95e3feb34418496cbb45924c5d17 - md5: b7962cdc2cedcc9f8d12928824c11fbd - depends: - - libcxx >=15.0.7 - license: BSD-2-Clause - license_family: BSD - size: 29002 - timestamp: 1696474168895 -- kind: conda - name: libaec - version: 1.1.2 - build: h59595ed_1 - build_number: 1 + version: 1.1.3 + build: h59595ed_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.2-h59595ed_1.conda - sha256: fdde15e74dc099ab1083823ec0f615958e53d9a8fae10405af977de251668bea - md5: 127b0be54c1c90760d7fe02ea7a56426 + url: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda + sha256: 2ef420a655528bca9d269086cf33b7e90d2f54ad941b437fb1ed5eca87cee017 + md5: 5e97e271911b8b2001a8b71860c32faa depends: - libgcc-ng >=12 - libstdcxx-ng >=12 license: BSD-2-Clause license_family: BSD - size: 35228 - timestamp: 1696474021700 + size: 35446 + timestamp: 1711021212685 - kind: conda name: libaec - version: 1.1.2 - build: h63175ca_1 - build_number: 1 + version: 1.1.3 + build: h63175ca_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.2-h63175ca_1.conda - sha256: 731dc77bce7d6425e2113b902023fba146e827cfe301bac565f92cc4e749588a - md5: 0b252d2bf460364bccb1523bcdbe4af6 + url: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda + sha256: f5c293d3cfc00f71dfdb64bd65ab53625565f8778fc2d5790575bef238976ebf + md5: 8723000f6ffdbdaef16025f0a01b64c5 depends: - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: BSD-2-Clause license_family: BSD - size: 33554 - timestamp: 1696474526588 + size: 32567 + timestamp: 1711021603471 - kind: conda name: libaec - version: 1.1.2 - build: he965462_1 - build_number: 1 + version: 1.1.3 + build: h73e2aa4_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.2-he965462_1.conda - sha256: 1b0a0b9b67e8f155ebdc7205a7421c7aff4850a740fc9f88b3fa23282c98ed72 - md5: faa179050abc6af1385e0fe9dd074f91 + url: https://conda.anaconda.org/conda-forge/osx-64/libaec-1.1.3-h73e2aa4_0.conda + sha256: dae5921339c5d89f4bf58a95fd4e9c76270dbf7f6a94f3c5081b574905fcccf8 + md5: 66d3c1f6dd4636216b4fca7a748d50eb depends: - - libcxx >=15.0.7 + - libcxx >=16 + license: BSD-2-Clause + license_family: BSD + size: 28602 + timestamp: 1711021419744 +- kind: conda + name: libaec + version: 1.1.3 + build: hebf3989_0 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libaec-1.1.3-hebf3989_0.conda + sha256: 896189b7b48a194c46a3556ea04943ef81cbe0498521231f8eb25816a68bc8ed + md5: 6f0b8e56d2e7bae12a18fc5b2cd9f310 + depends: + - libcxx >=16 license: BSD-2-Clause license_family: BSD - size: 29027 - timestamp: 1696474151758 + size: 28451 + timestamp: 1711021498493 - kind: conda name: libarchive version: 3.7.2 @@ -15495,94 +15553,94 @@ packages: timestamp: 1701994485309 - kind: conda name: libarrow - version: 15.0.1 - build: h2a83f13_2_cpu - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.1-h2a83f13_2_cpu.conda - sha256: e5446c3b1bc2ee6c7c0cb72cb6adf1af2a2adfc6b12897fd06832d5aae221850 - md5: 221e1fe4fc5042a2d38845251608f121 + version: 15.0.2 + build: h5e64418_1_cpu + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.2-h5e64418_1_cpu.conda + sha256: 79767d66d9abc903fe68c8b00f24a697a3c45fc53a6245d04ffdb4df18c81b00 + md5: d0ab2045139252a296c00c72d350f1db depends: - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - aws-sdk-cpp >=1.11.267,<1.11.268.0a0 - bzip2 >=1.0.8,<2.0a0 + - glog >=0.7.0,<0.8.0a0 - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - libbrotlidec >=1.1.0,<1.2.0a0 - libbrotlienc >=1.1.0,<1.2.0a0 - - libcrc32c >=1.1.2,<1.2.0a0 - - libcurl >=8.5.0,<9.0a0 + - libcxx >=16 - libgoogle-cloud >=2.22.0,<2.23.0a0 - libgoogle-cloud-storage >=2.22.0,<2.23.0a0 - libre2-11 >=2023.9.1,<2024.0a0 - libutf8proc >=2.8.0,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - lz4-c >=1.9.3,<1.10.0a0 - - openssl >=3.2.1,<4.0a0 - orc >=2.0.0,<2.0.1.0a0 - re2 - snappy >=1.1.10,<2.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - zstd >=1.5.5,<1.6.0a0 constrains: - - arrow-cpp <0.0a0 - - apache-arrow-proc =*=cpu - parquet-cpp <0.0a0 + - apache-arrow-proc =*=cpu + - arrow-cpp <0.0a0 license: Apache-2.0 license_family: APACHE - size: 5039717 - timestamp: 1710346575479 + size: 5108625 + timestamp: 1711179661780 - kind: conda name: libarrow - version: 15.0.1 - build: h49b82c4_2_cpu - build_number: 2 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.1-h49b82c4_2_cpu.conda - sha256: 36ac0f4f1fffc93fbc3803e62a375010cf28565d5f65f87cd8a8dcbc6b2187d7 - md5: b91638d882147fca8a8d553d397918ab + version: 15.0.2 + build: h878f99b_1_cpu + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libarrow-15.0.2-h878f99b_1_cpu.conda + sha256: b2a67b9ef9526da159b9fb64d225c4f4121cde176bcd1fc38617fd7935c0a9b5 + md5: a22f43ca465278c992639603c2b8e48c depends: - - __osx >=10.13 - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - aws-sdk-cpp >=1.11.267,<1.11.268.0a0 - bzip2 >=1.0.8,<2.0a0 - - glog >=0.7.0,<0.8.0a0 - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - libbrotlidec >=1.1.0,<1.2.0a0 - libbrotlienc >=1.1.0,<1.2.0a0 - - libcxx >=16 + - libcrc32c >=1.1.2,<1.2.0a0 + - libcurl >=8.6.0,<9.0a0 - libgoogle-cloud >=2.22.0,<2.23.0a0 - libgoogle-cloud-storage >=2.22.0,<2.23.0a0 - libre2-11 >=2023.9.1,<2024.0a0 - libutf8proc >=2.8.0,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - lz4-c >=1.9.3,<1.10.0a0 + - openssl >=3.2.1,<4.0a0 - orc >=2.0.0,<2.0.1.0a0 - re2 - snappy >=1.1.10,<2.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 - zstd >=1.5.5,<1.6.0a0 constrains: - - arrow-cpp <0.0a0 - - apache-arrow-proc =*=cpu - parquet-cpp <0.0a0 + - apache-arrow-proc =*=cpu + - arrow-cpp <0.0a0 license: Apache-2.0 license_family: APACHE - size: 5714592 - timestamp: 1710347027029 + size: 5083581 + timestamp: 1711178993402 - kind: conda name: libarrow - version: 15.0.1 - build: h6bfc85a_2_cpu - build_number: 2 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.1-h6bfc85a_2_cpu.conda - sha256: 91340101e7b9735c4252a51ef76bab23f9e94dbac9d73f98df848fd65918b363 - md5: 4c747f9bfdde086a5fff03b334a28cc2 + version: 15.0.2 + build: h8d4fe2c_1_cpu + build_number: 1 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-15.0.2-h8d4fe2c_1_cpu.conda + sha256: 0c00897262e54c54f3769384518792f4dda43e384111cfedb2fc6c85ad8e1fb9 + md5: 0dfd8ebfe7557c521e195b40375735e7 depends: - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - __osx >=10.13 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - aws-sdk-cpp >=1.11.267,<1.11.268.0a0 - bzip2 >=1.0.8,<2.0a0 - glog >=0.7.0,<0.8.0a0 @@ -15590,11 +15648,10 @@ packages: - libabseil >=20240116.1,<20240117.0a0 - libbrotlidec >=1.1.0,<1.2.0a0 - libbrotlienc >=1.1.0,<1.2.0a0 - - libgcc-ng >=12 + - libcxx >=16 - libgoogle-cloud >=2.22.0,<2.23.0a0 - libgoogle-cloud-storage >=2.22.0,<2.23.0a0 - libre2-11 >=2023.9.1,<2024.0a0 - - libstdcxx-ng >=12 - libutf8proc >=2.8.0,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - lz4-c >=1.9.3,<1.10.0a0 @@ -15603,24 +15660,24 @@ packages: - snappy >=1.1.10,<2.0a0 - zstd >=1.5.5,<1.6.0a0 constrains: - - apache-arrow-proc =*=cpu - arrow-cpp <0.0a0 + - apache-arrow-proc =*=cpu - parquet-cpp <0.0a0 license: Apache-2.0 license_family: APACHE - size: 8187641 - timestamp: 1710345851562 + size: 5711851 + timestamp: 1711266383556 - kind: conda name: libarrow - version: 15.0.1 - build: h8eee870_2_cpu - build_number: 2 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-15.0.1-h8eee870_2_cpu.conda - sha256: a14dc9230098c8851776ac5454795e5f7a7223298eca57eb2a74f0fd3b2d1704 - md5: a65445962b3069ca94d7e13434c61868 + version: 15.0.2 + build: hb86450c_1_cpu + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-15.0.2-hb86450c_1_cpu.conda + sha256: f99e523a0dea433fcc79caf18057ef83621fd28da6f1b3e42096c4deaa485416 + md5: b68f648f3e2f60755adaa5bfb93287d0 depends: - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - aws-sdk-cpp >=1.11.267,<1.11.268.0a0 - bzip2 >=1.0.8,<2.0a0 - glog >=0.7.0,<0.8.0a0 @@ -15628,10 +15685,11 @@ packages: - libabseil >=20240116.1,<20240117.0a0 - libbrotlidec >=1.1.0,<1.2.0a0 - libbrotlienc >=1.1.0,<1.2.0a0 - - libcxx >=16 + - libgcc-ng >=12 - libgoogle-cloud >=2.22.0,<2.23.0a0 - libgoogle-cloud-storage >=2.22.0,<2.23.0a0 - libre2-11 >=2023.9.1,<2024.0a0 + - libstdcxx-ng >=12 - libutf8proc >=2.8.0,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - lz4-c >=1.9.3,<1.10.0a0 @@ -15640,168 +15698,168 @@ packages: - snappy >=1.1.10,<2.0a0 - zstd >=1.5.5,<1.6.0a0 constrains: - - arrow-cpp <0.0a0 - parquet-cpp <0.0a0 - apache-arrow-proc =*=cpu + - arrow-cpp <0.0a0 license: Apache-2.0 license_family: APACHE - size: 5095602 - timestamp: 1710347520676 + size: 8179378 + timestamp: 1711178447850 - kind: conda name: libarrow-acero - version: 15.0.1 - build: h59595ed_2_cpu - build_number: 2 + version: 15.0.2 + build: h59595ed_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.1-h59595ed_2_cpu.conda - sha256: 2e6e18868c9aaf0169df343a5c01a3e29c3af523592a9874823f28f685eff40a - md5: b0db752ef845464ccac2dee5d16dee5e + url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-acero-15.0.2-h59595ed_1_cpu.conda + sha256: 6bf96851b6451f5d3ede688d454a23e40e53bbceb1e56e6d30a538be451d126d + md5: b9423f0ec36b99f729aa890b6fb3c98d depends: - - libarrow 15.0.1 h6bfc85a_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu - libgcc-ng >=12 - libstdcxx-ng >=12 license: Apache-2.0 license_family: APACHE - size: 597927 - timestamp: 1710345908579 + size: 597414 + timestamp: 1711178497118 - kind: conda name: libarrow-acero - version: 15.0.1 - build: h63175ca_2_cpu - build_number: 2 + version: 15.0.2 + build: h63175ca_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.1-h63175ca_2_cpu.conda - sha256: e798d10974d315bee0ca8115d8a04feaead87a807b58f0775e52ca5017c7dd53 - md5: d867316394e441e8e975a23d7c6c592f + url: https://conda.anaconda.org/conda-forge/win-64/libarrow-acero-15.0.2-h63175ca_1_cpu.conda + sha256: bb9a0f2585dd122ac9d4150215cbdc4a835cee0595aa8f4d094cb98b6a0b903f + md5: 1760e0c37e7b61989f3a23067721f84e depends: - - libarrow 15.0.1 h2a83f13_2_cpu + - libarrow 15.0.2 h878f99b_1_cpu - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: APACHE - size: 446344 - timestamp: 1710346679854 + size: 445679 + timestamp: 1711179087147 - kind: conda name: libarrow-acero - version: 15.0.1 - build: hd427752_2_cpu - build_number: 2 + version: 15.0.2 + build: hd427752_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.1-hd427752_2_cpu.conda - sha256: 9c9a21abef1b7659a81cd87f87cbdce24e3d21b552f2ca6ad51186a9fdbba339 - md5: cae9197df25949fde7732853780b817e + url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-acero-15.0.2-hd427752_1_cpu.conda + sha256: 35a25a398c21791d8a7806be09b5d02b505081839d7ae5f9dc888d60f3c0d205 + md5: c0ebc15c626587f686000bd92be0700f depends: - - libarrow 15.0.1 h49b82c4_2_cpu + - libarrow 15.0.2 h8d4fe2c_1_cpu - libcxx >=16 license: Apache-2.0 license_family: APACHE - size: 522728 - timestamp: 1710347137918 + size: 522140 + timestamp: 1711266483945 - kind: conda name: libarrow-acero - version: 15.0.1 - build: hebf3989_2_cpu - build_number: 2 + version: 15.0.2 + build: hebf3989_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.1-hebf3989_2_cpu.conda - sha256: d50ac6f5f6e7e7e95c4efbe152f8c9a6c75bbe0aa381ea23c5f33cb3623cbfcc - md5: 21415f119849f677d839f970c776919a + url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-acero-15.0.2-hebf3989_1_cpu.conda + sha256: ce7352d970ad52d1e1bbf808d79b7632b8bc6f09155e22496520d9db7d188725 + md5: 4af17aab0040bd8e02d8f91c67f72531 depends: - - libarrow 15.0.1 h8eee870_2_cpu + - libarrow 15.0.2 h5e64418_1_cpu - libcxx >=16 license: Apache-2.0 license_family: APACHE - size: 485170 - timestamp: 1710347628485 + size: 483602 + timestamp: 1711179768547 - kind: conda name: libarrow-dataset - version: 15.0.1 - build: h59595ed_2_cpu - build_number: 2 + version: 15.0.2 + build: h59595ed_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.1-h59595ed_2_cpu.conda - sha256: 2e1583289e51d0e834482a338385f626ab835213c96c823cae6e72f0782d5189 - md5: 6e9bc87bade345d88c5537bd42e0dd54 + url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-dataset-15.0.2-h59595ed_1_cpu.conda + sha256: 41610da5423d6f167791b9dcf670151d53dbe545092e95efafd68dbf4437e6b1 + md5: a921e87ad731a7cde36a016233c1b80b depends: - - libarrow 15.0.1 h6bfc85a_2_cpu - - libarrow-acero 15.0.1 h59595ed_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu + - libarrow-acero 15.0.2 h59595ed_1_cpu - libgcc-ng >=12 - - libparquet 15.0.1 h352af49_2_cpu + - libparquet 15.0.2 h352af49_1_cpu - libstdcxx-ng >=12 license: Apache-2.0 license_family: APACHE - size: 584567 - timestamp: 1710346048368 + size: 583806 + timestamp: 1711178621744 - kind: conda name: libarrow-dataset - version: 15.0.1 - build: h63175ca_2_cpu - build_number: 2 + version: 15.0.2 + build: h63175ca_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.1-h63175ca_2_cpu.conda - sha256: dd8e8427d981fe01301dcc50b58d6e1ecb7b9283cad98fc890d74d542e06eb1d - md5: caf5cc1c9edba56c71a468a9485ebc3a + url: https://conda.anaconda.org/conda-forge/win-64/libarrow-dataset-15.0.2-h63175ca_1_cpu.conda + sha256: 68c8d5e01b3d404bd7c9b12d66cff1b03f8353c76d09c99e2a2f8ceecfcc094e + md5: e794000b8e1137d5cacbeba3811ecf3d depends: - - libarrow 15.0.1 h2a83f13_2_cpu - - libarrow-acero 15.0.1 h63175ca_2_cpu - - libparquet 15.0.1 h7ec3a38_2_cpu + - libarrow 15.0.2 h878f99b_1_cpu + - libarrow-acero 15.0.2 h63175ca_1_cpu + - libparquet 15.0.2 h7ec3a38_1_cpu - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: APACHE - size: 432401 - timestamp: 1710347045824 + size: 431252 + timestamp: 1711179443216 - kind: conda name: libarrow-dataset - version: 15.0.1 - build: hd427752_2_cpu - build_number: 2 + version: 15.0.2 + build: hd427752_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.1-hd427752_2_cpu.conda - sha256: ede78c680bca62f6c8e1f5aa1a09cecae638d0c34e3ee267b2cffdd1dde399f1 - md5: 06a2aab2b1fb2f70f9eae022db35e3cd + url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-dataset-15.0.2-hd427752_1_cpu.conda + sha256: 4b0ea6e2c18c6add7e276447b751e09b20289d4bc672857abc05a525c138b532 + md5: afb8fa396c1963637ab416acccf9c833 depends: - - libarrow 15.0.1 h49b82c4_2_cpu - - libarrow-acero 15.0.1 hd427752_2_cpu + - libarrow 15.0.2 h8d4fe2c_1_cpu + - libarrow-acero 15.0.2 hd427752_1_cpu - libcxx >=16 - - libparquet 15.0.1 h089a9f7_2_cpu + - libparquet 15.0.2 h089a9f7_1_cpu license: Apache-2.0 license_family: APACHE - size: 511914 - timestamp: 1710347457995 + size: 512287 + timestamp: 1711266804210 - kind: conda name: libarrow-dataset - version: 15.0.1 - build: hebf3989_2_cpu - build_number: 2 + version: 15.0.2 + build: hebf3989_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.1-hebf3989_2_cpu.conda - sha256: f37a3722c215e16c779bb15a35389e2d90b2b6dc3f0803ca80e7aa84b71404c5 - md5: dae4db55d557b2085ec525d2251870cd + url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-dataset-15.0.2-hebf3989_1_cpu.conda + sha256: 10d2a45fcb63a0750afbd15231647be8fb1944d2a6be78a5493ed848dfd30074 + md5: 6d30f16616e83eedb5866c2c1be33846 depends: - - libarrow 15.0.1 h8eee870_2_cpu - - libarrow-acero 15.0.1 hebf3989_2_cpu + - libarrow 15.0.2 h5e64418_1_cpu + - libarrow-acero 15.0.2 hebf3989_1_cpu - libcxx >=16 - - libparquet 15.0.1 h278d484_2_cpu + - libparquet 15.0.2 h278d484_1_cpu license: Apache-2.0 license_family: APACHE - size: 488193 - timestamp: 1710348020540 + size: 488259 + timestamp: 1711180185967 - kind: conda name: libarrow-flight - version: 15.0.1 - build: h02312f3_2_cpu - build_number: 2 + version: 15.0.2 + build: h02312f3_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.1-h02312f3_2_cpu.conda - sha256: 3e0045ff73040c07d50fa191ae1b5d67dc360a44d58b044fb4798cfd5f914c06 - md5: 998ace0d3d626afbb9ff28c8887ef221 + url: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-15.0.2-h02312f3_1_cpu.conda + sha256: 9e5f73153ed5ee20431943a11e5aee79674bded2584b614d4e4d5962c7a35a64 + md5: 8bc6c812f84251b654b3db070d9b72ad depends: - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h2a83f13_2_cpu + - libarrow 15.0.2 h878f99b_1_cpu - libgrpc >=1.62.1,<1.63.0a0 - libprotobuf >=4.25.3,<4.25.4.0a0 - ucrt >=10.0.20348.0 @@ -15809,62 +15867,62 @@ packages: - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: APACHE - size: 289584 - timestamp: 1710346778953 + size: 289403 + timestamp: 1711179180265 - kind: conda name: libarrow-flight - version: 15.0.1 - build: h1f98dca_2_cpu - build_number: 2 + version: 15.0.2 + build: h1f98dca_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.1-h1f98dca_2_cpu.conda - sha256: a5f5bdf533b16f4f75eef4c443bf2aa443eaac7220719a67f9e3cf49583c31d5 - md5: 510713b83ef18ffa3d770186e9d9610e + url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-15.0.2-h1f98dca_1_cpu.conda + sha256: fe1f40d20c1f9c8c7828c77311953773da8b790372ddd2a7546eedc412c7e55b + md5: de5f524a8661df4aa5aa3ee3298a5d5a depends: - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h8eee870_2_cpu + - libarrow 15.0.2 h5e64418_1_cpu - libcxx >=16 - libgrpc >=1.62.1,<1.63.0a0 - libprotobuf >=4.25.3,<4.25.4.0a0 license: Apache-2.0 license_family: APACHE - size: 311546 - timestamp: 1710347750832 + size: 310848 + timestamp: 1711179895578 - kind: conda name: libarrow-flight - version: 15.0.1 - build: h39e3226_2_cpu - build_number: 2 + version: 15.0.2 + build: h39e3226_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.1-h39e3226_2_cpu.conda - sha256: 36ee89a978cd5d01c2345ea5b1f3092a03e1d12c499d24c23d77bd8855a8cb00 - md5: bacdba60e514c492a7b86f9a0706cd91 + url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-15.0.2-h39e3226_1_cpu.conda + sha256: 6b12aca956d1c300a03fc3e25bd5b741a84f516dc2fe8d765350555d05126bd7 + md5: 4c10ac4396926e3b262a07fe7a4b85e6 depends: - __osx >=10.13 - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h49b82c4_2_cpu + - libarrow 15.0.2 h8d4fe2c_1_cpu - libcxx >=16 - libgrpc >=1.62.1,<1.63.0a0 - libprotobuf >=4.25.3,<4.25.4.0a0 license: Apache-2.0 license_family: APACHE - size: 323554 - timestamp: 1710347218986 + size: 323015 + timestamp: 1711266565593 - kind: conda name: libarrow-flight - version: 15.0.1 - build: hc6145d9_2_cpu - build_number: 2 + version: 15.0.2 + build: hc6145d9_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.1-hc6145d9_2_cpu.conda - sha256: 207c61bf7b8ec3ed87b497ee32a77ffe7388f95dca0401b2178f0ff00f87f708 - md5: adaae53046d79919dfd047222bee292b + url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-15.0.2-hc6145d9_1_cpu.conda + sha256: 0524b7b92b6d3ab5b043f5e3ea57291aec8fe69813191819bfd9e74bdcedfa1d + md5: a8166c3e9ff1222307cdd86af0234dbe depends: - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h6bfc85a_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu - libgcc-ng >=12 - libgrpc >=1.62.1,<1.63.0a0 - libprotobuf >=4.25.3,<4.25.4.0a0 @@ -15872,97 +15930,97 @@ packages: - ucx >=1.15.0,<1.16.0a0 license: Apache-2.0 license_family: APACHE - size: 505059 - timestamp: 1710345943047 + size: 503481 + timestamp: 1711178527272 - kind: conda name: libarrow-flight-sql - version: 15.0.1 - build: h1a3ed6a_2_cpu - build_number: 2 + version: 15.0.2 + build: h1a3ed6a_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.1-h1a3ed6a_2_cpu.conda - sha256: 535757b83097aa9864e922ee3e49ccb650490c84abc7e559765edae223ed84e7 - md5: e9eff483015772cf3c86fbe026ee649a + url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-flight-sql-15.0.2-h1a3ed6a_1_cpu.conda + sha256: ab67e0202ca0565561eedf5c16d61b8bdf4302034bfad78b385574a74406fa7e + md5: fa369c66520f1ada8738fbf15ef0ee50 depends: - __osx >=10.13 - - libarrow 15.0.1 h49b82c4_2_cpu - - libarrow-flight 15.0.1 h39e3226_2_cpu + - libarrow 15.0.2 h8d4fe2c_1_cpu + - libarrow-flight 15.0.2 h39e3226_1_cpu - libcxx >=16 - libprotobuf >=4.25.3,<4.25.4.0a0 license: Apache-2.0 license_family: APACHE - size: 154577 - timestamp: 1710347542842 + size: 154416 + timestamp: 1711266892717 - kind: conda name: libarrow-flight-sql - version: 15.0.1 - build: h55b4db4_2_cpu - build_number: 2 + version: 15.0.2 + build: h55b4db4_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.1-h55b4db4_2_cpu.conda - sha256: 65e4f1645950c845f7dce153454e2b16b58ee8155638f51eb85bbe7ccb071f8f - md5: 5117c965f22b5e04d90ecce004bb5e15 + url: https://conda.anaconda.org/conda-forge/win-64/libarrow-flight-sql-15.0.2-h55b4db4_1_cpu.conda + sha256: 7954820f6e8d924419a372d90db68c1aa707101dbf9dc0204497597f831adab8 + md5: 19d5af0b9e0adbb702969a5f75f9596f depends: - - libarrow 15.0.1 h2a83f13_2_cpu - - libarrow-flight 15.0.1 h02312f3_2_cpu + - libarrow 15.0.2 h878f99b_1_cpu + - libarrow-flight 15.0.2 h02312f3_1_cpu - libprotobuf >=4.25.3,<4.25.4.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: APACHE - size: 236476 - timestamp: 1710347122430 + size: 235286 + timestamp: 1711179521999 - kind: conda name: libarrow-flight-sql - version: 15.0.1 - build: h757c851_2_cpu - build_number: 2 + version: 15.0.2 + build: h757c851_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.1-h757c851_2_cpu.conda - sha256: 4a3625322cfd32bc5e4438965288de48917305e4472a6e5c09e46b37e8135c6b - md5: 6eac4d5af97cf5882f4f87ec99a147da + url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-flight-sql-15.0.2-h757c851_1_cpu.conda + sha256: 5d2910012453c698657a2129c9d3337d4569d79a23cf93b40ada013777a04798 + md5: b59b90d6c8d2e072890f5d289f9ba36f depends: - - libarrow 15.0.1 h6bfc85a_2_cpu - - libarrow-flight 15.0.1 hc6145d9_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu + - libarrow-flight 15.0.2 hc6145d9_1_cpu - libgcc-ng >=12 - libprotobuf >=4.25.3,<4.25.4.0a0 - libstdcxx-ng >=12 license: Apache-2.0 license_family: APACHE - size: 195542 - timestamp: 1710346083941 + size: 194476 + timestamp: 1711178653236 - kind: conda name: libarrow-flight-sql - version: 15.0.1 - build: hb095944_2_cpu - build_number: 2 + version: 15.0.2 + build: hb095944_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.1-hb095944_2_cpu.conda - sha256: f3ebe19606c11a17acebfbda953deccbbf4d51ede2c4b387e2e6853ad91ed1ae - md5: 286cd61cf7ad1b2b95e16d671cba967c + url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-flight-sql-15.0.2-hb095944_1_cpu.conda + sha256: 0cc6640c70f3b3c061a85dc88673674d3606d05f8fd69d1391f31f33711d663f + md5: 2c27f67068750b9a2ca0d795f53c2b35 depends: - - libarrow 15.0.1 h8eee870_2_cpu - - libarrow-flight 15.0.1 h1f98dca_2_cpu + - libarrow 15.0.2 h5e64418_1_cpu + - libarrow-flight 15.0.2 h1f98dca_1_cpu - libcxx >=16 - libprotobuf >=4.25.3,<4.25.4.0a0 license: Apache-2.0 license_family: APACHE - size: 154297 - timestamp: 1710348102606 + size: 153295 + timestamp: 1711180281143 - kind: conda name: libarrow-gandiva - version: 15.0.1 - build: h2c81988_2_cpu - build_number: 2 + version: 15.0.2 + build: h2c81988_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.1-h2c81988_2_cpu.conda - sha256: 7eb2deb4218b3421a70b28c2c336c8a5678f65ea76db6e3250957df57571b5c9 - md5: a39ab45d40a24d4594863bb5dd80eea2 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-gandiva-15.0.2-h2c81988_1_cpu.conda + sha256: 20fb6551040f1247db4bb6014d054b367647b2e12a017c59492dbb385bab05ca + md5: 8e4129c57f543cfb96c248f57a0fc484 depends: - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h8eee870_2_cpu + - libarrow 15.0.2 h5e64418_1_cpu - libcxx >=16 - libllvm16 >=16.0.6,<16.1.0a0 - libre2-11 >=2023.9.1,<2024.0a0 @@ -15971,21 +16029,21 @@ packages: - re2 license: Apache-2.0 license_family: APACHE - size: 686822 - timestamp: 1710347845238 + size: 686423 + timestamp: 1711179995080 - kind: conda name: libarrow-gandiva - version: 15.0.1 - build: h3f2ff47_2_cpu - build_number: 2 + version: 15.0.2 + build: h3f2ff47_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.1-h3f2ff47_2_cpu.conda - sha256: 618a5d610f22f3f4db8477c4c1ab8331f14af3f422aa3c0b888a7b5d8b56b678 - md5: e1e9ae9b3bb5ae6e45c45ef41e2a8dbd + url: https://conda.anaconda.org/conda-forge/win-64/libarrow-gandiva-15.0.2-h3f2ff47_1_cpu.conda + sha256: ff32757e31319f82b059be869b9e6fad1a65ccaa644263f8a30d5cf4ac0d20e2 + md5: 68d3eaa519881658b9a8fbdddb1b3a0d depends: - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h2a83f13_2_cpu + - libarrow 15.0.2 h878f99b_1_cpu - libre2-11 >=2023.9.1,<2024.0a0 - libutf8proc >=2.8.0,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 @@ -15997,22 +16055,22 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: Apache-2.0 license_family: APACHE - size: 10721855 - timestamp: 1710346868088 + size: 10716092 + timestamp: 1711179268859 - kind: conda name: libarrow-gandiva - version: 15.0.1 - build: h43798cf_2_cpu - build_number: 2 + version: 15.0.2 + build: h43798cf_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.1-h43798cf_2_cpu.conda - sha256: 732f2d533b8d29d1fb6c885187b72b454fdd45ed7ecdfe0bcc35452c389a9a59 - md5: da3b0bdd39437fc790a167c1d59848fe + url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-gandiva-15.0.2-h43798cf_1_cpu.conda + sha256: 95f3ea92b602de66fe03b09ad8718659503cadf3e424fd7e40a5949d9573f9ea + md5: bc579bbc786f9c0a58b249e2adb0b26e depends: - __osx >=10.13 - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h49b82c4_2_cpu + - libarrow 15.0.2 h8d4fe2c_1_cpu - libcxx >=16 - libllvm16 >=16.0.6,<16.1.0a0 - libre2-11 >=2023.9.1,<2024.0a0 @@ -16021,21 +16079,21 @@ packages: - re2 license: Apache-2.0 license_family: APACHE - size: 700362 - timestamp: 1710347297253 + size: 700923 + timestamp: 1711266648558 - kind: conda name: libarrow-gandiva - version: 15.0.1 - build: hb016d2e_2_cpu - build_number: 2 + version: 15.0.2 + build: hb016d2e_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.1-hb016d2e_2_cpu.conda - sha256: 51009b18513cf941510ac5632bf5b4a2ebe4146a09cab4e3f416f8962b6dc8b0 - md5: b267c1603302164915f489f521e3ade9 + url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-gandiva-15.0.2-hb016d2e_1_cpu.conda + sha256: 1e528b63285fd1918495e9b2ba83ece291ef0d53060b9120bb2af3591b53ffdd + md5: c595407620b1688599908bdc1c17fd74 depends: - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h6bfc85a_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu - libgcc-ng >=12 - libllvm16 >=16.0.6,<16.1.0a0 - libre2-11 >=2023.9.1,<2024.0a0 @@ -16045,90 +16103,90 @@ packages: - re2 license: Apache-2.0 license_family: APACHE - size: 896785 - timestamp: 1710345979257 + size: 896830 + timestamp: 1711178560814 - kind: conda name: libarrow-substrait - version: 15.0.1 - build: h1a3ed6a_2_cpu - build_number: 2 + version: 15.0.2 + build: h1a3ed6a_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.1-h1a3ed6a_2_cpu.conda - sha256: d6ed6332298dfa80709d4bb80d3a896c7ad23344f45443ebd74cd69f6650e34a - md5: 12e99df177a28210276445e9daba9a2b + url: https://conda.anaconda.org/conda-forge/osx-64/libarrow-substrait-15.0.2-h1a3ed6a_1_cpu.conda + sha256: 6cf5535189e7bd3bf20ebef56381ab8bd161543228a851f5285ead9736477f33 + md5: e3c034db160f4604bd11028c3d825fa6 depends: - __osx >=10.13 - - libarrow 15.0.1 h49b82c4_2_cpu - - libarrow-acero 15.0.1 hd427752_2_cpu - - libarrow-dataset 15.0.1 hd427752_2_cpu + - libarrow 15.0.2 h8d4fe2c_1_cpu + - libarrow-acero 15.0.2 hd427752_1_cpu + - libarrow-dataset 15.0.2 hd427752_1_cpu - libcxx >=16 - libprotobuf >=4.25.3,<4.25.4.0a0 license: Apache-2.0 license_family: APACHE - size: 450237 - timestamp: 1710347625046 + size: 449725 + timestamp: 1711266974219 - kind: conda name: libarrow-substrait - version: 15.0.1 - build: h50959cf_2_cpu - build_number: 2 + version: 15.0.2 + build: h50959cf_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.1-h50959cf_2_cpu.conda - sha256: 9eebd87fa04a69f6f133f63d13066c9704a27eff94f30c41ab2c222e1fadba45 - md5: 8377e9c62f385f5b4e4b43bf2a69045f + url: https://conda.anaconda.org/conda-forge/osx-arm64/libarrow-substrait-15.0.2-h50959cf_1_cpu.conda + sha256: fd44319e0b3ee61166d475fd02c857c3ead54c610090d7859a43e8f447f47501 + md5: 01d6dc3a660a0f714ef6298be80eef39 depends: - - libarrow 15.0.1 h8eee870_2_cpu - - libarrow-acero 15.0.1 hebf3989_2_cpu - - libarrow-dataset 15.0.1 hebf3989_2_cpu + - libarrow 15.0.2 h5e64418_1_cpu + - libarrow-acero 15.0.2 hebf3989_1_cpu + - libarrow-dataset 15.0.2 hebf3989_1_cpu - libcxx >=16 - libprotobuf >=4.25.3,<4.25.4.0a0 license: Apache-2.0 license_family: APACHE - size: 440331 - timestamp: 1710348236366 + size: 439171 + timestamp: 1711180402641 - kind: conda name: libarrow-substrait - version: 15.0.1 - build: h757c851_2_cpu - build_number: 2 + version: 15.0.2 + build: h757c851_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.1-h757c851_2_cpu.conda - sha256: f07490d44b621c3e053e7f340ad44f32558d2e0d330bf8ce4c66b5835d534a66 - md5: 51d0403e8e6dc661eaaf30756d4bb6dc + url: https://conda.anaconda.org/conda-forge/linux-64/libarrow-substrait-15.0.2-h757c851_1_cpu.conda + sha256: c4d7e0e2753eb193144b18ca78699d92da2a76011c3441952393ee672d1b9e32 + md5: 802e115e2c489e1c76c0fe809e766ccd depends: - - libarrow 15.0.1 h6bfc85a_2_cpu - - libarrow-acero 15.0.1 h59595ed_2_cpu - - libarrow-dataset 15.0.1 h59595ed_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu + - libarrow-acero 15.0.2 h59595ed_1_cpu + - libarrow-dataset 15.0.2 h59595ed_1_cpu - libgcc-ng >=12 - libprotobuf >=4.25.3,<4.25.4.0a0 - libstdcxx-ng >=12 license: Apache-2.0 license_family: APACHE - size: 520822 - timestamp: 1710346116519 + size: 519390 + timestamp: 1711178682023 - kind: conda name: libarrow-substrait - version: 15.0.1 - build: h89268de_2_cpu - build_number: 2 + version: 15.0.2 + build: h89268de_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.1-h89268de_2_cpu.conda - sha256: 392907bea83844a019b7b716f4f3daf152fab125f159d384f3724a84dc467041 - md5: 36c1899c1fd9a1669571bbcb1a1e1eb8 + url: https://conda.anaconda.org/conda-forge/win-64/libarrow-substrait-15.0.2-h89268de_1_cpu.conda + sha256: fd0c01546dec8d2cc8bfd6f88d80c961ca92f04872bda0441c4320cd4df6ed20 + md5: 99a787c11d708974eb7adde145591136 depends: - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libarrow 15.0.1 h2a83f13_2_cpu - - libarrow-acero 15.0.1 h63175ca_2_cpu - - libarrow-dataset 15.0.1 h63175ca_2_cpu + - libarrow 15.0.2 h878f99b_1_cpu + - libarrow-acero 15.0.2 h63175ca_1_cpu + - libarrow-dataset 15.0.2 h63175ca_1_cpu - libprotobuf >=4.25.3,<4.25.4.0a0 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: APACHE - size: 361945 - timestamp: 1710347208219 + size: 361715 + timestamp: 1711179599839 - kind: conda name: libblas version: 3.9.0 @@ -16192,6 +16250,26 @@ packages: license_family: BSD size: 14915 timestamp: 1705980172730 +- kind: conda + name: libblas + version: 3.9.0 + build: 21_win64_mkl + build_number: 21 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-21_win64_mkl.conda + sha256: ad47053cee17802df875203aba191b04d97a50d820dbf75a114a50972c517334 + md5: ebba3846d11201fe54277e4965ba5250 + depends: + - mkl 2024.0.0 h66d3029_49657 + constrains: + - liblapack 3.9.0 21_win64_mkl + - blas * mkl + - libcblas 3.9.0 21_win64_mkl + - liblapacke 3.9.0 21_win64_mkl + license: BSD-3-Clause + license_family: BSD + size: 5017135 + timestamp: 1705980415163 - kind: conda name: libblas version: 3.9.0 @@ -16217,59 +16295,59 @@ packages: - kind: conda name: libboost-headers version: 1.84.0 - build: h57928b3_1 - build_number: 1 + build: h57928b3_2 + build_number: 2 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_1.conda - sha256: 790ad368444ab7f64eee4060e42a13323b11fe435629d06cb6a84d4a471ac8eb - md5: 28b61d8b072ee3b7a7596a02a0b2c9df + url: https://conda.anaconda.org/conda-forge/win-64/libboost-headers-1.84.0-h57928b3_2.conda + sha256: 9acabbc9bf68f89ff60aa06e622b1bdf20edc7b3f53bfc782135f0ea9882291f + md5: 01d545c5fbafd05719fa31148cbd1989 constrains: - boost-cpp =1.84.0 license: BSL-1.0 - size: 13838168 - timestamp: 1707841627792 + size: 13853504 + timestamp: 1711405828125 - kind: conda name: libboost-headers version: 1.84.0 - build: h694c41f_1 - build_number: 1 + build: h694c41f_2 + build_number: 2 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_1.conda - sha256: cbe9834e3ea802ae6ab98ecde36d9840afd1bca768aabcb766a237124abcdfa2 - md5: 530c932ca58015980579dbd0dbc7001e + url: https://conda.anaconda.org/conda-forge/osx-64/libboost-headers-1.84.0-h694c41f_2.conda + sha256: e51f3b877ab4a7a68bf1e1f95e9b007d716e85547078bfd5f6f7f114545dc26e + md5: 37678c6938655e8862e121b48101365a constrains: - boost-cpp =1.84.0 license: BSL-1.0 - size: 13822391 - timestamp: 1707841532116 + size: 13810365 + timestamp: 1711406234038 - kind: conda name: libboost-headers version: 1.84.0 - build: ha770c72_1 - build_number: 1 + build: ha770c72_2 + build_number: 2 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_1.conda - sha256: f5ac6b12768e5c735d2c8e4e1e05093b105d649a68f02f6a5349f5cb61719b9c - md5: 63a2690ffde5448bd8bbf19b5d1d366c + url: https://conda.anaconda.org/conda-forge/linux-64/libboost-headers-1.84.0-ha770c72_2.conda + sha256: 5a7843db33422d043256af27f288836f51530b058653bdb074704eb72282f601 + md5: 85d30a3fcc0f1cfc252776208af546a1 constrains: - boost-cpp =1.84.0 license: BSL-1.0 - size: 13734106 - timestamp: 1707840416473 + size: 13730884 + timestamp: 1711404167604 - kind: conda name: libboost-headers version: 1.84.0 - build: hce30654_1 - build_number: 1 + build: hce30654_2 + build_number: 2 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_1.conda - sha256: 006d0e4e266b806eb2280c6e3250e79a011428c21a706ee7d3e4251f66d1f278 - md5: 6e665d044322dfffd437d7c6090e64f2 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libboost-headers-1.84.0-hce30654_2.conda + sha256: 2850952cc521318b6a5b18d8f55c86149b779a9103cca9875ff128ce9b6d6400 + md5: bf16112d5337a9a80d7126ac3a2cee7c constrains: - boost-cpp =1.84.0 license: BSL-1.0 - size: 13787581 - timestamp: 1707841353524 + size: 13849830 + timestamp: 1711406246757 - kind: conda name: libbrotlicommon version: 1.1.0 @@ -16528,6 +16606,25 @@ packages: license_family: BSD size: 14800 timestamp: 1705980195551 +- kind: conda + name: libcblas + version: 3.9.0 + build: 21_win64_mkl + build_number: 21 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-21_win64_mkl.conda + sha256: 886505d0a4a5b508b2255991395aadecdad140719ba0d413411fec86491a9283 + md5: 38e5ec23bc2b62f9dd971143aa9dddb7 + depends: + - libblas 3.9.0 21_win64_mkl + constrains: + - liblapack 3.9.0 21_win64_mkl + - blas * mkl + - liblapacke 3.9.0 21_win64_mkl + license: BSD-3-Clause + license_family: BSD + size: 5017024 + timestamp: 1705980469944 - kind: conda name: libcblas version: 3.9.0 @@ -16550,146 +16647,122 @@ packages: size: 3973158 timestamp: 1705980029383 - kind: conda - name: libclang - version: 15.0.7 - build: default_h6b1ee41_4 - build_number: 4 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libclang-15.0.7-default_h6b1ee41_4.conda - sha256: 7ff11065d4706777ff18041e200715e512ea7313d424b1e04204e9291f836326 - md5: 054a23b7162cadf8c7d7d54f90948c82 - depends: - - libclang13 15.0.7 default_h89cd682_4 - - libcxx >=16.0.6 - - libllvm15 >=15.0.7,<15.1.0a0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - size: 133689 - timestamp: 1701415540597 -- kind: conda - name: libclang + name: libclang-cpp15 version: 15.0.7 - build: default_hb11cfb5_4 - build_number: 4 + build: default_h127d8a8_5 + build_number: 5 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_hb11cfb5_4.conda - sha256: 0b80441f222a91074d0e5edb0fbc3b1ce16ca2cdf6ab899721afdcc3a3ff6302 - md5: c90f4cbb57839c98fef8f830e4b9972f + url: https://conda.anaconda.org/conda-forge/linux-64/libclang-cpp15-15.0.7-default_h127d8a8_5.conda + sha256: 9b0238e705a33da74ca82efd03974f499550f7dada1340cc9cb7c35a92411ed8 + md5: d0a9633b53cdc319b8a1a532ae7822b8 depends: - - libclang13 15.0.7 default_ha2b6cf4_4 - libgcc-ng >=12 - libllvm15 >=15.0.7,<15.1.0a0 - libstdcxx-ng >=12 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 133384 - timestamp: 1701412265788 + size: 17206402 + timestamp: 1711063711931 - kind: conda - name: libclang + name: libclang-cpp15 version: 15.0.7 - build: default_hd209bcb_4 - build_number: 4 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-15.0.7-default_hd209bcb_4.conda - sha256: 1c8d91209aedbdb36d3ec11e840f76b5c8119a627d78f2352b81bc034894320b - md5: 82102386cef9ba727456b16d37882b12 + build: default_h7151d67_5 + build_number: 5 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libclang-cpp15-15.0.7-default_h7151d67_5.conda + sha256: 0389c856f8524615e29980ed15ad39cdca6bbd01de35ddf5f6550392db943838 + md5: ec9151310badcf29fa53ae554273e269 depends: - - libclang13 15.0.7 default_ha49e599_4 - libcxx >=16.0.6 - libllvm15 >=15.0.7,<15.1.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 133641 - timestamp: 1701414923949 + size: 12345888 + timestamp: 1711067079759 - kind: conda - name: libclang + name: libclang-cpp15 version: 15.0.7 - build: default_hde6756a_4 - build_number: 4 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libclang-15.0.7-default_hde6756a_4.conda - sha256: 1083e53f51b35c7a6769fafa2e7ab5bb85f953eb288eb4a62cddd8200db7c46d - md5: a621ea4ac3f826d02441369e73e53800 - depends: - - libclang13 15.0.7 default_h85b4d89_4 - - libxml2 >=2.12.1,<3.0.0a0 - - libzlib >=1.2.13,<1.3.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - zstd >=1.5.5,<1.6.0a0 - license: Apache-2.0 WITH LLVM-exception - license_family: Apache - size: 148080 - timestamp: 1701415503085 -- kind: conda - name: libclang13 - version: 15.0.7 - build: default_h85b4d89_4 - build_number: 4 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libclang13-15.0.7-default_h85b4d89_4.conda - sha256: 37917f88ea5beb660a86b2325b727a03db125e25182d8186921a7cc53966df9d - md5: c6b0181860717a08469a324c4180ff2d + build: default_he012953_5 + build_number: 5 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libclang-cpp15-15.0.7-default_he012953_5.conda + sha256: 2e56e0acc3afad2708bc410e499d23db517cd66dcfaba150d7d28cf5a35911a8 + md5: a3035345155ca0a31eb1588bbbb2cff0 depends: - - libzlib >=1.2.13,<1.3.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - zstd >=1.5.5,<1.6.0a0 + - libcxx >=16.0.6 + - libllvm15 >=15.0.7,<15.1.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 21902269 - timestamp: 1701415323912 + size: 11404805 + timestamp: 1711086898132 - kind: conda name: libclang13 - version: 15.0.7 - build: default_h89cd682_4 - build_number: 4 + version: 18.1.2 + build: default_h0edc4dd_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libclang13-15.0.7-default_h89cd682_4.conda - sha256: bb710896ffcda1f3233e94a62c84f0c31ac062e17a723b7fa034449010c5d085 - md5: 974a771460156182b1871585cf534532 + url: https://conda.anaconda.org/conda-forge/osx-64/libclang13-18.1.2-default_h0edc4dd_1.conda + sha256: 8ecb10d57976991830f523c4dc48c9de2fd2f246dd961633ca78db2d9bd80fae + md5: 8e26ef06568f888286a077c759972c48 depends: - libcxx >=16.0.6 - - libllvm15 >=15.0.7,<15.1.0a0 + - libllvm18 >=18.1.2,<18.2.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 6952807 - timestamp: 1701415435112 + size: 8053259 + timestamp: 1711070248968 - kind: conda name: libclang13 - version: 15.0.7 - build: default_ha2b6cf4_4 - build_number: 4 + version: 18.1.2 + build: default_h5d6823c_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_ha2b6cf4_4.conda - sha256: e1d34d415160b69a401dc0662bf1b5378655193ed1364bf7dd14f055e76e4b60 - md5: 898e0dd993afbed0d871b60c2eb33b83 + url: https://conda.anaconda.org/conda-forge/linux-64/libclang13-18.1.2-default_h5d6823c_1.conda + sha256: fd1bb5fb2cd65526e1c67ea20efbbe8c1b1bf8ff61465af591d7b25f0c037b06 + md5: 7aa3c2bbedb583b81e1efc997cb22073 depends: - libgcc-ng >=12 - - libllvm15 >=15.0.7,<15.1.0a0 + - libllvm18 >=18.1.2,<18.2.0a0 - libstdcxx-ng >=12 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 9581845 - timestamp: 1701412208888 + size: 11070109 + timestamp: 1711067889145 - kind: conda name: libclang13 - version: 15.0.7 - build: default_ha49e599_4 - build_number: 4 + version: 18.1.2 + build: default_h83d0a53_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-15.0.7-default_ha49e599_4.conda - sha256: 900b46ae1f8341d292bffff01e2d24a859b1ed4cfbece33c391a8e4fc9b0bb9c - md5: 16014dc4b0f3b7f6530b8f82417f0b9e + url: https://conda.anaconda.org/conda-forge/osx-arm64/libclang13-18.1.2-default_h83d0a53_1.conda + sha256: 367ca773609a69b5dfb4f13ffac9b579490eb51ce6f8083c8d9f6b718f146ff5 + md5: 8fbed37344ef3939d791dc0243c6768a depends: - libcxx >=16.0.6 - - libllvm15 >=15.0.7,<15.1.0a0 + - libllvm18 >=18.1.2,<18.2.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 7520538 + timestamp: 1711068419314 +- kind: conda + name: libclang13 + version: 18.1.2 + build: default_hf64faad_1 + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libclang13-18.1.2-default_hf64faad_1.conda + sha256: 847dc28280d6564a02ef971a232f30c84fcb5d366a54e59de35fae33e096c8cc + md5: ece5a1b226db1000b2c479694c1ae265 + depends: + - libzlib >=1.2.13,<1.3.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + - zstd >=1.5.5,<1.6.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 6461212 - timestamp: 1701414820365 + size: 25310297 + timestamp: 1711069468740 - kind: conda name: libcrc32c version: 1.1.2 @@ -16768,12 +16841,12 @@ packages: timestamp: 1689195353551 - kind: conda name: libcurl - version: 8.6.0 + version: 8.7.1 build: h2d989ff_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.6.0-h2d989ff_0.conda - sha256: 85d2cbba4b0435a6fbf22963a50d2fd8cf2124eb76118e62d616ef355003c5a5 - md5: 3c0b1d8a9c8952e97c240fe0133dd27e + url: https://conda.anaconda.org/conda-forge/osx-arm64/libcurl-8.7.1-h2d989ff_0.conda + sha256: 973ac9368efca712a8fd19fe68524d7d9a3087fd88ad6b7fcdf60c3d2e19a498 + md5: 34b9171710f0d9bf093d55bdc36ff355 depends: - krb5 >=1.21.2,<1.22.0a0 - libnghttp2 >=1.58.0,<2.0a0 @@ -16783,16 +16856,16 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: curl license_family: MIT - size: 351423 - timestamp: 1710591296327 + size: 358080 + timestamp: 1711548548174 - kind: conda name: libcurl - version: 8.6.0 + version: 8.7.1 build: h726d00d_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.6.0-h726d00d_0.conda - sha256: 2381d1d91e61b7521a6fb084bdcfbd0e9219c1294d8a89d36016240f3dad70fc - md5: 09569d6e3dc8bef57841f1fc69ea3ea6 + url: https://conda.anaconda.org/conda-forge/osx-64/libcurl-8.7.1-h726d00d_0.conda + sha256: 06cb1bd3bbaf905213777d6ade190ac4c7fb7a20dfe0cf901c977dbbc6cec265 + md5: fa58e5eaa12006bc3289a71357bef167 depends: - krb5 >=1.21.2,<1.22.0a0 - libnghttp2 >=1.58.0,<2.0a0 @@ -16802,16 +16875,16 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: curl license_family: MIT - size: 371183 - timestamp: 1710591172599 + size: 378176 + timestamp: 1711548390530 - kind: conda name: libcurl - version: 8.6.0 + version: 8.7.1 build: hca28451_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.6.0-hca28451_0.conda - sha256: 357ce806adf1818dc8dccdcd64627758e1858eb0d8a9c91aae4a0eeee2a44608 - md5: 704739398d858872cb91610f49f0ef29 + url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.7.1-hca28451_0.conda + sha256: 82a75e9a5d9ee5b2f487d850ec5d4edc18a56eb9527608a95a916c40baae3843 + md5: 755c7f876815003337d2c61ff5d047e5 depends: - krb5 >=1.21.2,<1.22.0a0 - libgcc-ng >=12 @@ -16822,16 +16895,16 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: curl license_family: MIT - size: 391187 - timestamp: 1710590979402 + size: 398293 + timestamp: 1711548114077 - kind: conda name: libcurl - version: 8.6.0 + version: 8.7.1 build: hd5e4a3a_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.6.0-hd5e4a3a_0.conda - sha256: 49904a3c1ede193cf9044e8379067bf56850fb03f64abbf57ca45f7e6d2d3888 - md5: 9cc8dea844a89245dfe8618521ef8d6a + url: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.7.1-hd5e4a3a_0.conda + sha256: 8dd272362e2aeb1d4f49333ff57e07eb4da2bbabce20110a2416df9152ba03e0 + md5: 3396aff340d0903e8814c2852d631e4e depends: - krb5 >=1.21.2,<1.22.0a0 - libssh2 >=1.11.0,<2.0a0 @@ -16841,8 +16914,8 @@ packages: - vc14_runtime >=14.29.30139 license: curl license_family: MIT - size: 325841 - timestamp: 1710591351093 + size: 331262 + timestamp: 1711548608132 - kind: conda name: libcxx version: 16.0.6 @@ -16869,58 +16942,58 @@ packages: timestamp: 1686896907750 - kind: conda name: libdeflate - version: '1.19' - build: ha4e1b8e_0 + version: '1.20' + build: h49d49c5_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.19-ha4e1b8e_0.conda - sha256: d0f789120fedd0881b129aba9993ec5dcf0ecca67a71ea20c74394e41adcb503 - md5: 6a45f543c2beb40023df5ee7e3cedfbd + url: https://conda.anaconda.org/conda-forge/osx-64/libdeflate-1.20-h49d49c5_0.conda + sha256: 8c2087952db55c4118dd2e29381176a54606da47033fd61ebb1b0f4391fcd28d + md5: d46104f6a896a0bc6a1d37b88b2edf5c license: MIT license_family: MIT - size: 68962 - timestamp: 1694922440450 + size: 70364 + timestamp: 1711196727346 - kind: conda name: libdeflate - version: '1.19' - build: hb547adb_0 + version: '1.20' + build: h93a5062_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.19-hb547adb_0.conda - sha256: 6a3d188a6ae845a742dc85c5fb3f7eb1e252726cd74f0b8a7fa25ec09db6b87a - md5: f8c1eb0e99e90b55965c6558578537cc + url: https://conda.anaconda.org/conda-forge/osx-arm64/libdeflate-1.20-h93a5062_0.conda + sha256: 6d16cccb141b6bb05c38107b335089046664ea1d6611601d3f6e7e4227a99925 + md5: 97efeaeba2a9a82bdf46fc6d025e3a57 license: MIT license_family: MIT - size: 52841 - timestamp: 1694924330786 + size: 54481 + timestamp: 1711196723486 - kind: conda name: libdeflate - version: '1.19' + version: '1.20' build: hcfcfb64_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.19-hcfcfb64_0.conda - sha256: e2886a84eaa0fbeca1d1d810270f234431d190402b4a79acf756ca2d16000354 - md5: 002b1b723b44dbd286b9e3708762433c + url: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.20-hcfcfb64_0.conda + sha256: 6628a5b76ad70c1a0909563c637ddc446ee824739ba7c348d4da2f0aa6ac9527 + md5: b12b5bde5eb201a1df75e49320cc938a depends: - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 153203 - timestamp: 1694922596415 + size: 155358 + timestamp: 1711197066985 - kind: conda name: libdeflate - version: '1.19' + version: '1.20' build: hd590300_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.19-hd590300_0.conda - sha256: 985ad27aa0ba7aad82afa88a8ede6a1aacb0aaca950d710f15d85360451e72fd - md5: 1635570038840ee3f9c71d22aa5b8b6d + url: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.20-hd590300_0.conda + sha256: f8e0f25c382b1d0b87a9b03887a34dbd91485453f1ea991fef726dba57373612 + md5: 8e88f9389f1165d7c0936fe40d9a9a79 depends: - libgcc-ng >=12 license: MIT license_family: MIT - size: 67080 - timestamp: 1694922285678 + size: 71500 + timestamp: 1711196523408 - kind: conda name: libedit version: 3.1.20191231 @@ -17260,27 +17333,30 @@ packages: - kind: conda name: libgdal version: 3.8.4 - build: h8e1932a_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-h8e1932a_3.conda - sha256: d05fa6a8f7e3d95ad001e8f7f4f9c9b727249351d69423b56e102e5c8d4eca0a - md5: eea40eb63545c849f2683faf3cb55628 + build: h2239303_5 + build_number: 5 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-h2239303_5.conda + sha256: 0840390bd7b68eb2eb2f4e0dd67730d4ed20709a56f7c0e338442faee8603ed6 + md5: d38e6517611a9666774554c5124cfa44 depends: - blosc >=1.21.5,<2.0a0 - cfitsio >=4.4.0,<4.4.1.0a0 - freexl >=2.0.0,<3.0a0 - geos >=3.12.1,<3.12.2.0a0 - geotiff >=1.7.1,<1.8.0a0 + - giflib >=5.2.1,<5.3.0a0 - hdf4 >=4.2.15,<4.2.16.0a0 - hdf5 >=1.14.3,<1.14.4.0a0 + - json-c >=0.17,<0.18.0a0 - kealib >=1.5.3,<1.6.0a0 - lerc >=4.0.0,<5.0a0 - - libaec >=1.1.2,<2.0a0 + - libaec >=1.1.3,<2.0a0 - libarchive >=3.7.2,<3.8.0a0 - - libcurl >=8.5.0,<9.0a0 - - libdeflate >=1.19,<1.20.0a0 - - libexpat >=2.6.1,<3.0a0 + - libcurl >=8.6.0,<9.0a0 + - libcxx >=16 + - libdeflate >=1.20,<1.21.0a0 + - libexpat >=2.6.2,<3.0a0 - libiconv >=1.17,<2.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - libkml >=1.3.0,<1.4.0a0 @@ -17288,10 +17364,10 @@ packages: - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libtiff >=4.6.0,<4.7.0a0 - libwebp-base >=1.3.2,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - lz4-c >=1.9.3,<1.10.0a0 - openjpeg >=2.5.2,<3.0a0 @@ -17300,28 +17376,24 @@ packages: - poppler >=24.3.0,<24.4.0a0 - postgresql - proj >=9.3.1,<9.3.2.0a0 - - tiledb >=2.20.1,<2.21.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - tiledb >=2.21.1,<2.22.0a0 - xerces-c >=3.2.5,<3.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 8615842 - timestamp: 1710250929472 + size: 9376293 + timestamp: 1711286692389 - kind: conda name: libgdal version: 3.8.4 - build: hab4ef92_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-hab4ef92_3.conda - sha256: 71a9490ce412f26cea47b02a4598f7e36474e79a90794e3afb860f79c3c49644 - md5: 2800debb6c5443f1368e758b1c32cf70 + build: h7181668_5 + build_number: 5 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-h7181668_5.conda + sha256: 7bb93c93ab3264a22af70d3aa3787b11f4092a0dcb2b6f838bbf3c2e2ee5bfb2 + md5: 795df87e28f1df475c180064e86e3917 depends: - - __glibc >=2.17,<3.0.a0 - blosc >=1.21.5,<2.0a0 - cfitsio >=4.4.0,<4.4.1.0a0 - freexl >=2.0.0,<3.0a0 @@ -17333,11 +17405,12 @@ packages: - json-c >=0.17,<0.18.0a0 - kealib >=1.5.3,<1.6.0a0 - lerc >=4.0.0,<5.0a0 - - libaec >=1.1.2,<2.0a0 + - libaec >=1.1.3,<2.0a0 - libarchive >=3.7.2,<3.8.0a0 - - libcurl >=8.5.0,<9.0a0 - - libdeflate >=1.19,<1.20.0a0 - - libexpat >=2.6.1,<3.0a0 + - libcurl >=8.6.0,<9.0a0 + - libcxx >=16 + - libdeflate >=1.20,<1.21.0a0 + - libexpat >=2.6.2,<3.0a0 - libiconv >=1.17,<2.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - libkml >=1.3.0,<1.4.0a0 @@ -17345,11 +17418,10 @@ packages: - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libtiff >=4.6.0,<4.7.0a0 - - libuuid >=2.38.1,<3.0a0 - libwebp-base >=1.3.2,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - lz4-c >=1.9.3,<1.10.0a0 - openjpeg >=2.5.2,<3.0a0 @@ -17358,24 +17430,25 @@ packages: - poppler >=24.3.0,<24.4.0a0 - postgresql - proj >=9.3.1,<9.3.2.0a0 - - tiledb >=2.20.1,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 - xerces-c >=3.2.5,<3.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 11089221 - timestamp: 1710249682755 + size: 8508601 + timestamp: 1711286913611 - kind: conda name: libgdal version: 3.8.4 - build: hd76467a_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-3.8.4-hd76467a_3.conda - sha256: b1b02782129e8d38629ed0682a29be4c6ff6096bd531718f63b21bceacf8594d - md5: cc6fd7f48c0181769c9a13f76397643d + build: h7c88fdf_5 + build_number: 5 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgdal-3.8.4-h7c88fdf_5.conda + sha256: caad3fbd31a1572a5688d27bcf863acc36866eeaf73c4af67e5e40480e87772e + md5: 750bfb344a8690e7089c8c2b303f252a depends: + - __glibc >=2.17,<3.0.a0 - blosc >=1.21.5,<2.0a0 - cfitsio >=4.4.0,<4.4.1.0a0 - freexl >=2.0.0,<3.0a0 @@ -17387,12 +17460,12 @@ packages: - json-c >=0.17,<0.18.0a0 - kealib >=1.5.3,<1.6.0a0 - lerc >=4.0.0,<5.0a0 - - libaec >=1.1.2,<2.0a0 + - libaec >=1.1.3,<2.0a0 - libarchive >=3.7.2,<3.8.0a0 - - libcurl >=8.5.0,<9.0a0 - - libcxx >=16 - - libdeflate >=1.19,<1.20.0a0 - - libexpat >=2.6.1,<3.0a0 + - libcurl >=8.6.0,<9.0a0 + - libdeflate >=1.20,<1.21.0a0 + - libexpat >=2.6.2,<3.0a0 + - libgcc-ng >=12 - libiconv >=1.17,<2.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - libkml >=1.3.0,<1.4.0a0 @@ -17400,10 +17473,12 @@ packages: - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 + - libstdcxx-ng >=12 - libtiff >=4.6.0,<4.7.0a0 + - libuuid >=2.38.1,<3.0a0 - libwebp-base >=1.3.2,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - lz4-c >=1.9.3,<1.10.0a0 - openjpeg >=2.5.2,<3.0a0 @@ -17412,41 +17487,38 @@ packages: - poppler >=24.3.0,<24.4.0a0 - postgresql - proj >=9.3.1,<9.3.2.0a0 - - tiledb >=2.20.1,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 - xerces-c >=3.2.5,<3.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 8507696 - timestamp: 1710251802662 + size: 11113700 + timestamp: 1711285696664 - kind: conda name: libgdal version: 3.8.4 - build: hda5fd9c_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libgdal-3.8.4-hda5fd9c_3.conda - sha256: 9f0a7ebdea5d69c5094f5de05c6808da1d6276845acd37ebd2ffd68b46a4d3c6 - md5: cc8f150ac9eeaafcfe35cc673de087c7 + build: hf83a0e2_5 + build_number: 5 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libgdal-3.8.4-hf83a0e2_5.conda + sha256: 98e0e290f8cc76e66a386283240e35158bd22960b18301a7ca281a2aecaba01b + md5: 0efb428de61baca5231bdf6ef0a4de2d depends: - blosc >=1.21.5,<2.0a0 - cfitsio >=4.4.0,<4.4.1.0a0 - freexl >=2.0.0,<3.0a0 - geos >=3.12.1,<3.12.2.0a0 - geotiff >=1.7.1,<1.8.0a0 - - giflib >=5.2.1,<5.3.0a0 - hdf4 >=4.2.15,<4.2.16.0a0 - hdf5 >=1.14.3,<1.14.4.0a0 - - json-c >=0.17,<0.18.0a0 - kealib >=1.5.3,<1.6.0a0 - lerc >=4.0.0,<5.0a0 - - libaec >=1.1.2,<2.0a0 + - libaec >=1.1.3,<2.0a0 - libarchive >=3.7.2,<3.8.0a0 - - libcurl >=8.5.0,<9.0a0 - - libcxx >=16 - - libdeflate >=1.19,<1.20.0a0 - - libexpat >=2.6.1,<3.0a0 + - libcurl >=8.6.0,<9.0a0 + - libdeflate >=1.20,<1.21.0a0 + - libexpat >=2.6.2,<3.0a0 - libiconv >=1.17,<2.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - libkml >=1.3.0,<1.4.0a0 @@ -17454,10 +17526,10 @@ packages: - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libtiff >=4.6.0,<4.7.0a0 - libwebp-base >=1.3.2,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - lz4-c >=1.9.3,<1.10.0a0 - openjpeg >=2.5.2,<3.0a0 @@ -17466,25 +17538,27 @@ packages: - poppler >=24.3.0,<24.4.0a0 - postgresql - proj >=9.3.1,<9.3.2.0a0 - - tiledb >=2.20.1,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 - xerces-c >=3.2.5,<3.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 9367262 - timestamp: 1710251790537 + size: 8622989 + timestamp: 1711286830900 - kind: conda name: libgdal-arrow-parquet version: 3.8.4 - build: h0be55b3_3 - build_number: 3 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-h0be55b3_3.conda - sha256: 7bd805decc4d7f965d9e0af2e4c3bfa90b337de35a2f2a76402560bf4e4b3d28 - md5: 7fbe359b7b530cb3c619a00d0a62ffca + build: h34d8165_5 + build_number: 5 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-h34d8165_5.conda + sha256: bde1dbc23075e6825ab14b04161b1fcdca74b1f28d0f1fc9057397bea2dc2993 + md5: dd3f987f3015b4562306e3ceb0756032 depends: - - __glibc >=2.17,<3.0.a0 - blosc >=1.21.5,<2.0a0 - cfitsio >=4.4.0,<4.4.1.0a0 - freexl >=2.0.0,<3.0a0 @@ -17496,22 +17570,22 @@ packages: - json-c >=0.17,<0.18.0a0 - kealib >=1.5.3,<1.6.0a0 - libarchive >=3.7.2,<3.8.0a0 - - libarrow >=15.0.1,<16.0a0 - - libarrow-dataset >=15.0.1,<16.0a0 - - libexpat >=2.6.1,<3.0a0 - - libgdal 3.8.4 hab4ef92_3 + - libarrow >=15.0.2,<16.0a0 + - libarrow-dataset >=15.0.2,<16.0a0 + - libcxx >=16 + - libexpat >=2.6.2,<3.0a0 + - libgdal 3.8.4 h2239303_5 - libjpeg-turbo >=3.0.0,<4.0a0 - libkml >=1.3.0,<1.4.0a0 - libnetcdf >=4.9.2,<4.9.3.0a0 - - libparquet >=15.0.1,<16.0a0 + - libparquet >=15.0.2,<16.0a0 - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libtiff >=4.6.0,<4.7.0a0 - - libuuid >=2.38.1,<3.0a0 - libwebp-base >=1.3.2,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - openjpeg >=2.5.2,<3.0a0 - openssl >=3.2.1,<4.0a0 @@ -17520,51 +17594,48 @@ packages: - postgresql - proj >=9.3.1,<9.3.2.0a0 - qhull >=2020.2,<2020.3.0a0 - - tiledb >=2.20.1,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 - xerces-c >=3.2.5,<3.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 718574 - timestamp: 1710250826618 + size: 663239 + timestamp: 1711288696683 - kind: conda name: libgdal-arrow-parquet version: 3.8.4 - build: hc81809c_3 - build_number: 3 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-hc81809c_3.conda - sha256: 0bc61bfa9c9581848a8668ccc259ebdc1d4431452a5cace9e4f576a3857ee56a - md5: 04185259343d0e05083a636501e970ac + build: h9089b89_5 + build_number: 5 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-h9089b89_5.conda + sha256: ade1660827526864959e493bb65342155ef58e8b76fa7a8ed3392408ad237ae8 + md5: 139ca19a46bf911937eb8c1431b7e788 depends: - blosc >=1.21.5,<2.0a0 - cfitsio >=4.4.0,<4.4.1.0a0 - freexl >=2.0.0,<3.0a0 - geos >=3.12.1,<3.12.2.0a0 - geotiff >=1.7.1,<1.8.0a0 - - giflib >=5.2.1,<5.3.0a0 - hdf4 >=4.2.15,<4.2.16.0a0 - hdf5 >=1.14.3,<1.14.4.0a0 - - json-c >=0.17,<0.18.0a0 - kealib >=1.5.3,<1.6.0a0 - libarchive >=3.7.2,<3.8.0a0 - - libarrow >=15.0.1,<16.0a0 - - libarrow-dataset >=15.0.1,<16.0a0 - - libcxx >=16 - - libexpat >=2.6.1,<3.0a0 - - libgdal 3.8.4 hd76467a_3 + - libarrow >=15.0.2,<16.0a0 + - libarrow-dataset >=15.0.2,<16.0a0 + - libexpat >=2.6.2,<3.0a0 + - libgdal 3.8.4 hf83a0e2_5 - libjpeg-turbo >=3.0.0,<4.0a0 - libkml >=1.3.0,<1.4.0a0 - libnetcdf >=4.9.2,<4.9.3.0a0 - - libparquet >=15.0.1,<16.0a0 + - libparquet >=15.0.2,<16.0a0 - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libtiff >=4.6.0,<4.7.0a0 - libwebp-base >=1.3.2,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - openjpeg >=2.5.2,<3.0a0 - openssl >=3.2.1,<4.0a0 @@ -17573,48 +17644,54 @@ packages: - postgresql - proj >=9.3.1,<9.3.2.0a0 - qhull >=2020.2,<2020.3.0a0 - - tiledb >=2.20.1,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 - xerces-c >=3.2.5,<3.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 652107 - timestamp: 1710253752065 + size: 656936 + timestamp: 1711288900724 - kind: conda name: libgdal-arrow-parquet version: 3.8.4 - build: he430b0a_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libgdal-arrow-parquet-3.8.4-he430b0a_3.conda - sha256: 94c8a3052f4a23c0f686a3d70525e68c7a2db73af21ae8d6b925c213e74e324f - md5: c74df598ad88eb64de2b09687daad856 + build: h99ae44e_5 + build_number: 5 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libgdal-arrow-parquet-3.8.4-h99ae44e_5.conda + sha256: c498910680b96a7b46b915eeddd1fed697c63d8f420397210ea68011f7bb5f6d + md5: efe99a18a43fe251474b5505b54340c8 depends: - blosc >=1.21.5,<2.0a0 - cfitsio >=4.4.0,<4.4.1.0a0 - freexl >=2.0.0,<3.0a0 - geos >=3.12.1,<3.12.2.0a0 - geotiff >=1.7.1,<1.8.0a0 + - giflib >=5.2.1,<5.3.0a0 - hdf4 >=4.2.15,<4.2.16.0a0 - hdf5 >=1.14.3,<1.14.4.0a0 + - json-c >=0.17,<0.18.0a0 - kealib >=1.5.3,<1.6.0a0 - libarchive >=3.7.2,<3.8.0a0 - - libarrow >=15.0.1,<16.0a0 - - libarrow-dataset >=15.0.1,<16.0a0 - - libexpat >=2.6.1,<3.0a0 - - libgdal 3.8.4 h8e1932a_3 + - libarrow >=15.0.2,<16.0a0 + - libarrow-dataset >=15.0.2,<16.0a0 + - libcxx >=16 + - libexpat >=2.6.2,<3.0a0 + - libgdal 3.8.4 h7181668_5 - libjpeg-turbo >=3.0.0,<4.0a0 - libkml >=1.3.0,<1.4.0a0 - libnetcdf >=4.9.2,<4.9.3.0a0 - - libparquet >=15.0.1,<16.0a0 + - libparquet >=15.0.2,<16.0a0 - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libtiff >=4.6.0,<4.7.0a0 - libwebp-base >=1.3.2,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - openjpeg >=2.5.2,<3.0a0 - openssl >=3.2.1,<4.0a0 @@ -17623,27 +17700,25 @@ packages: - postgresql - proj >=9.3.1,<9.3.2.0a0 - qhull >=2020.2,<2020.3.0a0 - - tiledb >=2.20.1,<2.21.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - tiledb >=2.21.1,<2.22.0a0 - xerces-c >=3.2.5,<3.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 657780 - timestamp: 1710252618540 + size: 652697 + timestamp: 1711289498493 - kind: conda name: libgdal-arrow-parquet version: 3.8.4 - build: he462391_3 - build_number: 3 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libgdal-arrow-parquet-3.8.4-he462391_3.conda - sha256: 0d37e361e5b5d1480731e1dd426e7fea2d9fb885aa2519e1c77feb8ae1efa2bf - md5: c44d6f7a5c9049abd34e9735f39acd7d + build: he479ca9_5 + build_number: 5 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgdal-arrow-parquet-3.8.4-he479ca9_5.conda + sha256: 63394a892cc8446b8d1fd057615f78ca490e132d3161ab2a7988c0e73da9edbf + md5: eccb5810587924db590f83931a42e234 depends: + - __glibc >=2.17,<3.0.a0 - blosc >=1.21.5,<2.0a0 - cfitsio >=4.4.0,<4.4.1.0a0 - freexl >=2.0.0,<3.0a0 @@ -17655,22 +17730,24 @@ packages: - json-c >=0.17,<0.18.0a0 - kealib >=1.5.3,<1.6.0a0 - libarchive >=3.7.2,<3.8.0a0 - - libarrow >=15.0.1,<16.0a0 - - libarrow-dataset >=15.0.1,<16.0a0 - - libcxx >=16 - - libexpat >=2.6.1,<3.0a0 - - libgdal 3.8.4 hda5fd9c_3 + - libarrow >=15.0.2,<16.0a0 + - libarrow-dataset >=15.0.2,<16.0a0 + - libexpat >=2.6.2,<3.0a0 + - libgcc-ng >=12 + - libgdal 3.8.4 h7c88fdf_5 - libjpeg-turbo >=3.0.0,<4.0a0 - libkml >=1.3.0,<1.4.0a0 - libnetcdf >=4.9.2,<4.9.3.0a0 - - libparquet >=15.0.1,<16.0a0 + - libparquet >=15.0.2,<16.0a0 - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 + - libstdcxx-ng >=12 - libtiff >=4.6.0,<4.7.0a0 + - libuuid >=2.38.1,<3.0a0 - libwebp-base >=1.3.2,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - openjpeg >=2.5.2,<3.0a0 - openssl >=3.2.1,<4.0a0 @@ -17679,14 +17756,14 @@ packages: - postgresql - proj >=9.3.1,<9.3.2.0a0 - qhull >=2020.2,<2020.3.0a0 - - tiledb >=2.20.1,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 - xerces-c >=3.2.5,<3.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 662812 - timestamp: 1710253610587 + size: 719490 + timestamp: 1711286539541 - kind: conda name: libgfortran version: 5.0.0 @@ -17786,11 +17863,12 @@ packages: - kind: conda name: libglib version: 2.80.0 - build: h39d0aa6_0 + build: h39d0aa6_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_0.conda - sha256: 23ed998f01664fa179d892b1168ed1d6b398e1fc3e98df306b26bae2826466c7 - md5: a0ae0ebc994b94ceef4e19fe4c6a3c3b + url: https://conda.anaconda.org/conda-forge/win-64/libglib-2.80.0-h39d0aa6_1.conda + sha256: 326fb2d1c8789660cec01eda3eec2fa15dd816d291126df13f1c34d80ffda6aa + md5: 6160439f169ec670951460024751b2ae depends: - libffi >=3.4,<4.0a0 - libiconv >=1.17,<2.0a0 @@ -17800,18 +17878,19 @@ packages: - vc >=14.2,<15 - vc14_runtime >=14.29.30139 constrains: - - glib 2.80.0 *_0 + - glib 2.80.0 *_1 license: LGPL-2.1-or-later - size: 2793318 - timestamp: 1710249839256 + size: 2805065 + timestamp: 1710939443433 - kind: conda name: libglib version: 2.80.0 - build: h81c1438_0 + build: h81c1438_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_0.conda - sha256: 768ff8093a20798d3e8fe972496c143b5c6890a0e8e0ffc9987f033b27ef6127 - md5: 29fb6cf03659a10624db7a6b93b231b9 + url: https://conda.anaconda.org/conda-forge/osx-64/libglib-2.80.0-h81c1438_1.conda + sha256: 5bc911f8c29878252f14dfc08fcf72cf550038a7102f9c03612fee9f7ccf6234 + md5: e1c7ad2617b7ebe7589e87024d90ddda depends: - gettext >=0.21.1,<1.0a0 - libffi >=3.4,<4.0a0 @@ -17819,36 +17898,39 @@ packages: - libzlib >=1.2.13,<1.3.0a0 - pcre2 >=10.43,<10.44.0a0 constrains: - - glib 2.80.0 *_0 + - glib 2.80.0 *_1 license: LGPL-2.1-or-later - size: 2686957 - timestamp: 1710250055411 + size: 2641391 + timestamp: 1710939600553 - kind: conda name: libglib version: 2.80.0 - build: hf2295e7_0 + build: hf2295e7_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_0.conda - sha256: 0340d960ef2ddc79f74aada85659db48b79a4c0a9e8a0be5b8287f7cd4e42dd2 - md5: 6c0d5a4f5292e54bf9b8dc14ee7df448 + url: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.80.0-hf2295e7_1.conda + sha256: 636d984568a1e5d915098a5020712f82bb3988635015765c3caf70f1a91340c5 + md5: 0725f6081030c29b109088639824ff90 depends: - libffi >=3.4,<4.0a0 + - libgcc-ng >=12 - libiconv >=1.17,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 - pcre2 >=10.43,<10.44.0a0 constrains: - - glib 2.80.0 *_0 + - glib 2.80.0 *_1 license: LGPL-2.1-or-later - size: 2887222 - timestamp: 1710249541301 + size: 2888982 + timestamp: 1710939100254 - kind: conda name: libglib version: 2.80.0 - build: hfc324ee_0 + build: hfc324ee_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_0.conda - sha256: e9342915f52f88f9637984331e0175ece582f806cf2720637625a45dd069de0d - md5: 38c5ffcd979143a4278ab88d892b6269 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libglib-2.80.0-hfc324ee_1.conda + sha256: b7411c3b19681fea1a33c093364cb2d8a021a408133399b23c947231aac157d9 + md5: 3d8a5773a6ba1be1db8dc23ea9f44a0a depends: - gettext >=0.21.1,<1.0a0 - libffi >=3.4,<4.0a0 @@ -17856,10 +17938,10 @@ packages: - libzlib >=1.2.13,<1.3.0a0 - pcre2 >=10.43,<10.44.0a0 constrains: - - glib 2.80.0 *_0 + - glib 2.80.0 *_1 license: LGPL-2.1-or-later - size: 2601341 - timestamp: 1710249665209 + size: 2630397 + timestamp: 1710939388253 - kind: conda name: libgomp version: 13.2.0 @@ -18496,6 +18578,25 @@ packages: license_family: BSD size: 14829 timestamp: 1705980215575 +- kind: conda + name: liblapack + version: 3.9.0 + build: 21_win64_mkl + build_number: 21 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-21_win64_mkl.conda + sha256: 3fa7c08dd4edf59cb0907d2e5b74e6be890e0671f845e1bae892d212d118a7e9 + md5: c4740f091cb75987390087934354a621 + depends: + - libblas 3.9.0 21_win64_mkl + constrains: + - blas * mkl + - libcblas 3.9.0 21_win64_mkl + - liblapacke 3.9.0 21_win64_mkl + license: BSD-3-Clause + license_family: BSD + size: 5017043 + timestamp: 1705980523462 - kind: conda name: liblapack version: 3.9.0 @@ -18671,31 +18772,83 @@ packages: depends: - libgcc-ng >=12 - libstdcxx-ng >=12 - - libxml2 >=2.12.1,<3.0.0a0 + - libxml2 >=2.12.1,<3.0.0a0 + - libzlib >=1.2.13,<1.3.0a0 + - zstd >=1.5.5,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 35359734 + timestamp: 1701375139881 +- kind: conda + name: libllvm16 + version: 16.0.6 + build: hbedff68_3 + build_number: 3 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda + sha256: ad848dc0bb02b1dbe54324ee5700b050a2e5f63c095f5229b2de58249a3e268e + md5: 8fd56c0adc07a37f93bd44aa61a97c90 + depends: + - libcxx >=16 + - libxml2 >=2.12.1,<3.0.0a0 + - libzlib >=1.2.13,<1.3.0a0 + - zstd >=1.5.5,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 25196932 + timestamp: 1701379796962 +- kind: conda + name: libllvm18 + version: 18.1.2 + build: h2448989_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libllvm18-18.1.2-h2448989_0.conda + sha256: 231b3edb7650786fd9fc6ac8d7ecf38d663a0ae63eeb1f19c4c1c17d2eb98d51 + md5: fae7780457e00a07d068417d9dbdb24b + depends: + - libgcc-ng >=12 + - libstdcxx-ng >=12 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - zstd >=1.5.5,<1.6.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 35359734 - timestamp: 1701375139881 + size: 38407510 + timestamp: 1710943474854 - kind: conda - name: libllvm16 - version: 16.0.6 - build: hbedff68_3 - build_number: 3 + name: libllvm18 + version: 18.1.2 + build: h30cc82d_0 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libllvm18-18.1.2-h30cc82d_0.conda + sha256: 0d94c605bae6d743713dd902e2f56f52f65cbd3456b90c5d7c464321607e2b5b + md5: 6e8e9ff62e7886035618ac93fad76f9e + depends: + - libcxx >=16 + - libxml2 >=2.12.6,<3.0a0 + - libzlib >=1.2.13,<1.3.0a0 + - zstd >=1.5.5,<1.6.0a0 + license: Apache-2.0 WITH LLVM-exception + license_family: Apache + size: 25780908 + timestamp: 1710946768066 +- kind: conda + name: libllvm18 + version: 18.1.2 + build: hbcf5fad_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libllvm16-16.0.6-hbedff68_3.conda - sha256: ad848dc0bb02b1dbe54324ee5700b050a2e5f63c095f5229b2de58249a3e268e - md5: 8fd56c0adc07a37f93bd44aa61a97c90 + url: https://conda.anaconda.org/conda-forge/osx-64/libllvm18-18.1.2-hbcf5fad_0.conda + sha256: 524cfa625bac98ef647333ea0a4851eea7b0bd190df78053c43de96fd09c423c + md5: 30296989a5953e7fdc2dc6a87ced95a8 depends: - libcxx >=16 - - libxml2 >=2.12.1,<3.0.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - zstd >=1.5.5,<1.6.0a0 license: Apache-2.0 WITH LLVM-exception license_family: Apache - size: 25196932 - timestamp: 1701379796962 + size: 27602478 + timestamp: 1710945854082 - kind: conda name: libnetcdf version: 4.9.2 @@ -19072,70 +19225,70 @@ packages: timestamp: 1606823633642 - kind: conda name: libparquet - version: 15.0.1 - build: h089a9f7_2_cpu - build_number: 2 + version: 15.0.2 + build: h089a9f7_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.1-h089a9f7_2_cpu.conda - sha256: 0e7caa508a67d2e64107d2c76e183eeb7a2800fdb943ba6e320163c54e7a8a02 - md5: f36f05d2400de2e0f0b4c2b4b04f79b0 + url: https://conda.anaconda.org/conda-forge/osx-64/libparquet-15.0.2-h089a9f7_1_cpu.conda + sha256: c018302a1cb5a7d499ee48639264970acbdb6046367a53d533fdd3dad6b9de11 + md5: 1b06e76579f69227a285a574611f01d1 depends: - - libarrow 15.0.1 h49b82c4_2_cpu + - libarrow 15.0.2 h8d4fe2c_1_cpu - libcxx >=16 - libthrift >=0.19.0,<0.19.1.0a0 - openssl >=3.2.1,<4.0a0 license: Apache-2.0 license_family: APACHE - size: 922662 - timestamp: 1710347375302 + size: 922029 + timestamp: 1711266728694 - kind: conda name: libparquet - version: 15.0.1 - build: h278d484_2_cpu - build_number: 2 + version: 15.0.2 + build: h278d484_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.1-h278d484_2_cpu.conda - sha256: 951c031d0374db5f0e6f2162bc1f9fb931ad92e2ec84d1c57d21c584882c69b7 - md5: a97afe324ad0f53d498e2091afe5ac38 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libparquet-15.0.2-h278d484_1_cpu.conda + sha256: 7f464ccdbbf52032e4c21fbc4ee387bbabdbff1b0667e60d32c85fbd8b24f988 + md5: 7896c2d5ff80f77554d1cbefae676d78 depends: - - libarrow 15.0.1 h8eee870_2_cpu + - libarrow 15.0.2 h5e64418_1_cpu - libcxx >=16 - libthrift >=0.19.0,<0.19.1.0a0 - openssl >=3.2.1,<4.0a0 license: Apache-2.0 license_family: APACHE - size: 864424 - timestamp: 1710347939242 + size: 863642 + timestamp: 1711180089261 - kind: conda name: libparquet - version: 15.0.1 - build: h352af49_2_cpu - build_number: 2 + version: 15.0.2 + build: h352af49_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.1-h352af49_2_cpu.conda - sha256: 2c1511199324ce29b5322ecadc485f3ad0c8669142eaf740439c39ec0e2e9765 - md5: 1588cf5daa44fc95a4864282a5aad337 + url: https://conda.anaconda.org/conda-forge/linux-64/libparquet-15.0.2-h352af49_1_cpu.conda + sha256: 3561887d5cecd273ca4a40c7263b0b81b9fcb7d14c54fe83c1f691b86c1c6b6f + md5: 9c9171bf3a477a585d08a7979f84c3b8 depends: - - libarrow 15.0.1 h6bfc85a_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu - libgcc-ng >=12 - libstdcxx-ng >=12 - libthrift >=0.19.0,<0.19.1.0a0 - openssl >=3.2.1,<4.0a0 license: Apache-2.0 license_family: APACHE - size: 1180865 - timestamp: 1710346013771 + size: 1179311 + timestamp: 1711178591018 - kind: conda name: libparquet - version: 15.0.1 - build: h7ec3a38_2_cpu - build_number: 2 + version: 15.0.2 + build: h7ec3a38_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.1-h7ec3a38_2_cpu.conda - sha256: bf0ee432c8b654b0e4b96e6781fd7fb7587092ae288ff2c706aaa7aa8776e2d1 - md5: 45eeb24d2e6e5ac2136b7235102c2ad9 + url: https://conda.anaconda.org/conda-forge/win-64/libparquet-15.0.2-h7ec3a38_1_cpu.conda + sha256: 44b5242d76e63fff53deded142ebe762a05a1f6beb3392e267ba30688e3bea1f + md5: ed2a8225a571cecb51eb0a3e68edc8dc depends: - - libarrow 15.0.1 h2a83f13_2_cpu + - libarrow 15.0.2 h878f99b_1_cpu - libthrift >=0.19.0,<0.19.1.0a0 - openssl >=3.2.1,<4.0a0 - ucrt >=10.0.20348.0 @@ -19143,8 +19296,8 @@ packages: - vc14_runtime >=14.29.30139 license: Apache-2.0 license_family: APACHE - size: 793980 - timestamp: 1710346966003 + size: 792091 + timestamp: 1711179365149 - kind: conda name: libpng version: 1.6.43 @@ -19204,54 +19357,58 @@ packages: - kind: conda name: libpq version: '16.2' - build: h0f8b458_0 + build: h0f8b458_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_0.conda - sha256: 0ad2265131a6d79fcfe8c5b7a04884f7377f981d18af775ebb71bc61b0c938b6 - md5: fea5d30234a7158f4eaa915b5a6e0c9c + url: https://conda.anaconda.org/conda-forge/osx-arm64/libpq-16.2-h0f8b458_1.conda + sha256: 7a6a195d37f6fe2f2d608033755f6e9522c9a2b7b07e52529159105f635c6cae + md5: e236a8e95b82a454e333f22418b9c879 depends: - krb5 >=1.21.2,<1.22.0a0 - openssl >=3.2.1,<4.0a0 license: PostgreSQL - size: 2408453 - timestamp: 1707416268983 + size: 2452312 + timestamp: 1710864761131 - kind: conda name: libpq version: '16.2' - build: h33b98f1_0 + build: h33b98f1_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_0.conda - sha256: 352748b0499a22e2a8e103f071b8d9357e1fb710c0aec0f79895d3ba03dccb03 - md5: fe0e297faf462ee579c95071a5211665 + url: https://conda.anaconda.org/conda-forge/linux-64/libpq-16.2-h33b98f1_1.conda + sha256: e03a8439b79e013840c44c957d37dbce10316888b2b5dc7dcfcfc0cfe3a3b128 + md5: 9e49ec2a61d02623b379dc332eb6889d depends: - krb5 >=1.21.2,<1.22.0a0 - libgcc-ng >=12 - openssl >=3.2.1,<4.0a0 license: PostgreSQL - size: 2474825 - timestamp: 1707415138154 + size: 2601973 + timestamp: 1710863646063 - kind: conda name: libpq version: '16.2' - build: ha925e61_0 + build: ha925e61_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_0.conda - sha256: 537b3816ac66f12c56fc62a67d896703b68f7588a5d83ab98009731de82eb742 - md5: 8b81f4feaa3744271fcf2822ad1489f1 + url: https://conda.anaconda.org/conda-forge/osx-64/libpq-16.2-ha925e61_1.conda + sha256: bfb252cb14b88a75ba4af930c16dccae265dce0afdf5abde7de1718181aa2cea + md5: a10ef466bbc68a8e74112a8e26028d66 depends: - krb5 >=1.21.2,<1.22.0a0 - openssl >=3.2.1,<4.0a0 license: PostgreSQL - size: 2336821 - timestamp: 1707415890165 + size: 2333894 + timestamp: 1710864725862 - kind: conda name: libpq version: '16.2' - build: hdb24f17_0 + build: hdb24f17_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_0.conda - sha256: ae4e89c6fb924fbf0ac82b3462fc003277466b186ad48bf7a422dced00f6efd2 - md5: c2e66b1a4350b02557b9f63626cda4e5 + url: https://conda.anaconda.org/conda-forge/win-64/libpq-16.2-hdb24f17_1.conda + sha256: b217f10336ca02bcffd2adf474fecf4bc917d8fbd26ab027b96e0d05257e5537 + md5: a347334764562545270c6acc4b852ccf depends: - krb5 >=1.21.2,<1.22.0a0 - openssl >=3.2.1,<4.0a0 @@ -19259,8 +19416,8 @@ packages: - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: PostgreSQL - size: 3535847 - timestamp: 1707416127646 + size: 3642690 + timestamp: 1710864431449 - kind: conda name: libprotobuf version: 4.25.3 @@ -19997,89 +20154,89 @@ packages: - kind: conda name: libtiff version: 4.6.0 - build: h684deea_2 - build_number: 2 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h684deea_2.conda - sha256: 1ef5bd7295f4316b111f70ad21356fb9f0de50b85a341cac9e3a61ac6487fdf1 - md5: 2ca10a325063e000ad6d2a5900061e0d + build: h07db509_3 + build_number: 3 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-h07db509_3.conda + sha256: 6df3e129682f6dc43826e5028e1807624b2a7634c4becbb50e56be9f77167f25 + md5: 28c9f8c6dd75666dfb296aea06c49cb8 depends: - lerc >=4.0.0,<5.0a0 - - libcxx >=15.0.7 - - libdeflate >=1.19,<1.20.0a0 + - libcxx >=16 + - libdeflate >=1.20,<1.21.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - libwebp-base >=1.3.2,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: HPND - size: 266501 - timestamp: 1695661828714 + size: 238349 + timestamp: 1711218119201 - kind: conda name: libtiff version: 4.6.0 - build: h6e2ebb7_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-h6e2ebb7_2.conda - sha256: f7b50b71840a5d8edd74a8bccf0c173ca2599bd136e366c35722272b4afa0500 - md5: 08d653b74ee2dec0131ad4259ffbb126 + build: h129831d_3 + build_number: 3 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/libtiff-4.6.0-h129831d_3.conda + sha256: f9b35c5ec1aea9a2cc20e9275a0bb8f056482faa8c5a62feb243ed780755ea30 + md5: 568593071d2e6cea7b5fc1f75bfa10ca depends: - lerc >=4.0.0,<5.0a0 - - libdeflate >=1.19,<1.20.0a0 + - libcxx >=16 + - libdeflate >=1.20,<1.21.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 + - libwebp-base >=1.3.2,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: HPND - size: 787430 - timestamp: 1695662030293 + size: 257489 + timestamp: 1711218113053 - kind: conda name: libtiff version: 4.6.0 - build: ha8a6c65_2 - build_number: 2 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libtiff-4.6.0-ha8a6c65_2.conda - sha256: b18ef36eb90f190db22c56ae5a080bccc16669c8f5b795a6211d7b0c00c18ff7 - md5: 596d6d949bab9a75a492d451f521f457 + build: h1dd3fc0_3 + build_number: 3 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-h1dd3fc0_3.conda + sha256: fc3b210f9584a92793c07396cb93e72265ff3f1fa7ca629128bf0a50d5cb15e4 + md5: 66f03896ffbe1a110ffda05c7a856504 depends: - lerc >=4.0.0,<5.0a0 - - libcxx >=15.0.7 - - libdeflate >=1.19,<1.20.0a0 + - libdeflate >=1.20,<1.21.0a0 + - libgcc-ng >=12 - libjpeg-turbo >=3.0.0,<4.0a0 + - libstdcxx-ng >=12 - libwebp-base >=1.3.2,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: HPND - size: 246265 - timestamp: 1695661829324 + size: 282688 + timestamp: 1711217970425 - kind: conda name: libtiff version: 4.6.0 - build: ha9c0a0a_2 - build_number: 2 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.6.0-ha9c0a0a_2.conda - sha256: 45158f5fbee7ee3e257e6b9f51b9f1c919ed5518a94a9973fe7fa4764330473e - md5: 55ed21669b2015f77c180feb1dd41930 + build: hddb2be6_3 + build_number: 3 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.6.0-hddb2be6_3.conda + sha256: 2e04844865cfe0286d70482c129f159542b325f4e45774aaff5fbe5027b30b0a + md5: 6d1828c9039929e2f185c5fa9d133018 depends: - lerc >=4.0.0,<5.0a0 - - libdeflate >=1.19,<1.20.0a0 - - libgcc-ng >=12 + - libdeflate >=1.20,<1.21.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - - libstdcxx-ng >=12 - - libwebp-base >=1.3.2,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 - xz >=5.2.6,<6.0a0 - zstd >=1.5.5,<1.6.0a0 license: HPND - size: 283198 - timestamp: 1695661593314 + size: 787198 + timestamp: 1711218639912 - kind: conda name: libutf8proc version: 2.8.0 @@ -20435,32 +20592,32 @@ packages: timestamp: 1702724383534 - kind: conda name: libxkbcommon - version: 1.6.0 - build: hd429924_1 - build_number: 1 + version: 1.7.0 + build: h662e7e4_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.6.0-hd429924_1.conda - sha256: 213a4c927618198fd5fb5e7b0a76b89310a9c04a3ea025d59771754ee8a89451 - md5: 1dbcc04604fdf1e526e6d1b0b6938396 + url: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.7.0-h662e7e4_0.conda + sha256: 3d97d7f964237f42452295d461afdbc51e93f72e2c80be516f56de80e3bb6621 + md5: b32c0da42b1f24a98577bb3d7fc0b995 depends: - libgcc-ng >=12 - libstdcxx-ng >=12 - libxcb >=1.15,<1.16.0a0 - - libxml2 >=2.12.1,<3.0.0a0 + - libxml2 >=2.12.6,<3.0a0 - xkeyboard-config - xorg-libxau >=1.0.11,<2.0a0 license: MIT/X11 Derivative license_family: MIT - size: 574868 - timestamp: 1701352639132 + size: 593534 + timestamp: 1711303445595 - kind: conda name: libxml2 version: 2.12.6 - build: h0d0cfa8_0 + build: h0d0cfa8_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_0.conda - sha256: 38a5e25e1fd3b59fd31301f39a0f02ca28925d7d102348921b9366e580cd810c - md5: 4713f0d8bb1e50cc4757c118b6fe20d5 + url: https://conda.anaconda.org/conda-forge/osx-arm64/libxml2-2.12.6-h0d0cfa8_1.conda + sha256: f18775ca8494ead5451d4acfc53fa7ebf7a8b5ed04c43bcc50fab847c9780cb3 + md5: c08526c957192192e1e7b4f622761144 depends: - icu >=73.2,<74.0a0 - libiconv >=1.17,<2.0a0 @@ -20468,16 +20625,17 @@ packages: - xz >=5.2.6,<6.0a0 license: MIT license_family: MIT - size: 588221 - timestamp: 1710715191381 + size: 588539 + timestamp: 1711318256840 - kind: conda name: libxml2 version: 2.12.6 - build: h232c23b_0 + build: h232c23b_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_0.conda - sha256: 4646ae14fb226080d2bfeb89510147abebd603bab1c80bb6b3c02a01c10c6ee5 - md5: d86653ff5ccb88bf7f13833fdd8789e0 + url: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.12.6-h232c23b_1.conda + sha256: c0bd693bb1a7e5aba388a0c79be16ff92e2411e03aaa920f94b4b33bf099e254 + md5: 6853448e9ca1cfd5f15382afd2a6d123 depends: - icu >=73.2,<74.0a0 - libgcc-ng >=12 @@ -20486,16 +20644,17 @@ packages: - xz >=5.2.6,<6.0a0 license: MIT license_family: MIT - size: 704019 - timestamp: 1710715057008 + size: 705994 + timestamp: 1711318087106 - kind: conda name: libxml2 version: 2.12.6 - build: hc0ae0f7_0 + build: hc0ae0f7_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_0.conda - sha256: 4b6e6c4616a3a46f64416fed97901496e8f46d0a771572fe9f8cc3b9701e78c2 - md5: 913ce3dbfa8677fba65c44647ef88594 + url: https://conda.anaconda.org/conda-forge/osx-64/libxml2-2.12.6-hc0ae0f7_1.conda + sha256: 07a5dc7316d4c1ff3d924df6a76e6a13380d702fa5b3b1889e56d0672e5b8201 + md5: bd85e0ca9e1ffaadc3b56079fd956035 depends: - icu >=73.2,<74.0a0 - libiconv >=1.17,<2.0a0 @@ -20503,16 +20662,17 @@ packages: - xz >=5.2.6,<6.0a0 license: MIT license_family: MIT - size: 619163 - timestamp: 1710717459458 + size: 620164 + timestamp: 1711318305209 - kind: conda name: libxml2 version: 2.12.6 - build: hc3477c8_0 + build: hc3477c8_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_0.conda - sha256: 1840ebacace4e8439b1cafbf8df004cd75f7647afc6d37812b86c035e4311fbf - md5: 3c32fe752618a88e83f515a1fdd0e9a1 + url: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.6-hc3477c8_1.conda + sha256: 1846c1318a5987e7315ca3648b55b38e5cfd9853370803a0f5159bc0071609c1 + md5: eb9f59dd51f50f5aa369813fa63ba569 depends: - libiconv >=1.17,<2.0a0 - libzlib >=1.2.13,<1.3.0a0 @@ -20521,8 +20681,8 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 1641927 - timestamp: 1710715561316 + size: 1640801 + timestamp: 1711318467301 - kind: conda name: libxslt version: 1.1.39 @@ -20735,32 +20895,32 @@ packages: size: 2667 - kind: conda name: llvm-openmp - version: 18.1.1 + version: 18.1.2 build: hb6ac08f_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.1-hb6ac08f_0.conda - sha256: 11e8b607cdf405e305808034732e042c538a574a9b517c3ffce444a66debff1a - md5: 2c6e272674a49f93df7332e413cb9077 + url: https://conda.anaconda.org/conda-forge/osx-64/llvm-openmp-18.1.2-hb6ac08f_0.conda + sha256: dc40b678f5be2caf4e89ee3dc9037399d0bcd46543bc258dc46e1b92d241c6a6 + md5: e7f7e91cfabd8c7172c9ae405214dd68 constrains: - - openmp 18.1.1|18.1.1.* + - openmp 18.1.2|18.1.2.* license: Apache-2.0 WITH LLVM-exception license_family: APACHE - size: 300093 - timestamp: 1710508618436 + size: 300480 + timestamp: 1711010792383 - kind: conda name: llvm-openmp - version: 18.1.1 + version: 18.1.2 build: hcd81f8e_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.1-hcd81f8e_0.conda - sha256: 38cf66997aae1bb20575ca829c322cb255c23652609576f76590f4ab7e35572a - md5: 4f878f28804ed85e5191132c12c1fca5 + url: https://conda.anaconda.org/conda-forge/osx-arm64/llvm-openmp-18.1.2-hcd81f8e_0.conda + sha256: 2ed8ae5a4c6122d542564a9bb9d4961ed7d2fb9581f0ea8bd81e3a83e614b110 + md5: 34646dc152f3949a2f8a67136d406dce constrains: - - openmp 18.1.1|18.1.1.* + - openmp 18.1.2|18.1.2.* license: Apache-2.0 WITH LLVM-exception license_family: APACHE - size: 276239 - timestamp: 1710508622050 + size: 276238 + timestamp: 1711010656300 - kind: conda name: llvmlite version: 0.42.0 @@ -22476,6 +22636,22 @@ packages: license_family: BSD size: 66022 timestamp: 1698947249750 +- kind: conda + name: mkl + version: 2024.0.0 + build: h66d3029_49657 + build_number: 49657 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.0.0-h66d3029_49657.conda + sha256: 928bed978827e4c891d0879d79ecda6c9104ed7df1f1d4e2e392c9c80b471be7 + md5: 006b65d9cd436247dfe053df772e041d + depends: + - intel-openmp 2024.* + - tbb 2021.* + license: LicenseRef-ProprietaryIntel + license_family: Proprietary + size: 108505947 + timestamp: 1701973497498 - kind: conda name: mkl version: 2024.0.0 @@ -22925,103 +23101,111 @@ packages: timestamp: 1675543414256 - kind: conda name: mysql-common - version: 8.0.33 - build: h1d20c9b_6 - build_number: 6 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.0.33-h1d20c9b_6.conda - sha256: b6b18aeed435d4075b4aac3559a070a6caa5a174a339e8de87785fca2f8f57a6 - md5: ad07fbd8dc7992e5e004f7bdfdee246d + version: 8.3.0 + build: hd1853d3_4 + build_number: 4 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.3.0-hd1853d3_4.conda + sha256: 4ed97297f0278c01ea21eb20335141d5bfb29f5820fabd03f8bc1cb74d3fe9a7 + md5: f93a6079f12ef00195d7d0b96ff98191 depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - openssl >=3.1.4,<4.0a0 - size: 763190 - timestamp: 1698938422063 + - libcxx >=16 + - openssl >=3.2.1,<4.0a0 + license: GPL-2.0-or-later + license_family: GPL + size: 800889 + timestamp: 1709915847564 - kind: conda name: mysql-common - version: 8.0.33 - build: hf1915f5_6 - build_number: 6 + version: 8.3.0 + build: hf1915f5_4 + build_number: 4 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_6.conda - sha256: c8b2c5c9d0d013a4f6ef96cb4b339bfdc53a74232d8c61ed08178e5b1ec4eb63 - md5: 80bf3b277c120dd294b51d404b931a75 + url: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.3.0-hf1915f5_4.conda + sha256: 4cf6d29e091398735348550cb74cfd5006e04892d54b6b1ba916935f1af1a151 + md5: 784a4df6676c581ca624fbe460703a6d depends: - libgcc-ng >=12 - libstdcxx-ng >=12 - - openssl >=3.1.4,<4.0a0 - size: 753467 - timestamp: 1698937026421 + - openssl >=3.2.1,<4.0a0 + license: GPL-2.0-or-later + license_family: GPL + size: 784844 + timestamp: 1709910607121 - kind: conda name: mysql-common - version: 8.0.33 - build: hf9e6398_6 - build_number: 6 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-common-8.0.33-hf9e6398_6.conda - sha256: 9d60d7779c9c2e6c783521922ab715964fc966d827493877c3b6844dacf2b140 - md5: 5c969a77f976c028192f8120483e2f4d + version: 8.3.0 + build: hfd7a639_4 + build_number: 4 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/mysql-common-8.3.0-hfd7a639_4.conda + sha256: 1829b8a277bf7f078c9e3c78a4404b31d77b9e9c006b890435e68438c22c2caf + md5: 65af0764c5a5617539d07c9d243250e3 depends: - - __osx >=10.9 - - libcxx >=16.0.6 - - openssl >=3.1.4,<4.0a0 - size: 751501 - timestamp: 1698939564933 + - libcxx >=16 + - openssl >=3.2.1,<4.0a0 + license: GPL-2.0-or-later + license_family: GPL + size: 776212 + timestamp: 1709914020238 - kind: conda name: mysql-libs - version: 8.0.33 - build: hca2cd23_6 - build_number: 6 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_6.conda - sha256: 78c905637dac79b197395065c169d452b8ca2a39773b58e45e23114f1cb6dcdb - md5: e87530d1b12dd7f4e0f856dc07358d60 + version: 8.3.0 + build: ha9146f8_4 + build_number: 4 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.3.0-ha9146f8_4.conda + sha256: eaabfabb3c39f569a062f1235ff97eb208716ed847ab98b0d2040b2d8acea73b + md5: 507610a153e96fad858e1735779b3781 depends: - - libgcc-ng >=12 - - libstdcxx-ng >=12 + - libcxx >=16 - libzlib >=1.2.13,<1.3.0a0 - - mysql-common 8.0.33 hf1915f5_6 - - openssl >=3.1.4,<4.0a0 + - mysql-common 8.3.0 hfd7a639_4 + - openssl >=3.2.1,<4.0a0 - zstd >=1.5.5,<1.6.0a0 - size: 1530126 - timestamp: 1698937116126 + license: GPL-2.0-or-later + license_family: GPL + size: 1527176 + timestamp: 1709914179461 - kind: conda name: mysql-libs - version: 8.0.33 - build: he3dca8b_6 - build_number: 6 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.0.33-he3dca8b_6.conda - sha256: 1544f64334c1d87a83df21b93d5b61429db4a9317ddb8b5e09ad3384adf88ad1 - md5: 98bbd77933bb5d947dce7ca552744871 + version: 8.3.0 + build: hca2cd23_4 + build_number: 4 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.3.0-hca2cd23_4.conda + sha256: c39cdd1a5829aeffc611f789bdfd4dbd4ce1aa829c73d728defec180b5265d91 + md5: 1b50eebe2a738a3146c154d2eceaa8b6 depends: - - __osx >=10.9 - - libcxx >=16.0.6 + - libgcc-ng >=12 + - libstdcxx-ng >=12 - libzlib >=1.2.13,<1.3.0a0 - - mysql-common 8.0.33 hf9e6398_6 - - openssl >=3.1.4,<4.0a0 + - mysql-common 8.3.0 hf1915f5_4 + - openssl >=3.2.1,<4.0a0 - zstd >=1.5.5,<1.6.0a0 - size: 1510603 - timestamp: 1698939692982 + license: GPL-2.0-or-later + license_family: GPL + size: 1537884 + timestamp: 1709910705541 - kind: conda name: mysql-libs - version: 8.0.33 - build: hed35180_6 - build_number: 6 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/mysql-libs-8.0.33-hed35180_6.conda - sha256: 87d754167fddf342b894e377fdcaac096c93c941773267ad9c89bb7b64924a33 - md5: c27fddc4d3c2d471d1d706b243570f37 + version: 8.3.0 + build: hf036fc4_4 + build_number: 4 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/mysql-libs-8.3.0-hf036fc4_4.conda + sha256: a48101c076f9a038bd3cfa822df2b20fdc0ccce88f9000c7bee8f6d53a1cc64e + md5: 9cb8011d749d99db2cba868053bcd8cb depends: - - __osx >=10.9 - - libcxx >=16.0.6 + - libcxx >=16 - libzlib >=1.2.13,<1.3.0a0 - - mysql-common 8.0.33 h1d20c9b_6 - - openssl >=3.1.4,<4.0a0 + - mysql-common 8.3.0 hd1853d3_4 + - openssl >=3.2.1,<4.0a0 - zstd >=1.5.5,<1.6.0a0 - size: 1493906 - timestamp: 1698938538673 + license: GPL-2.0-or-later + license_family: GPL + size: 1541174 + timestamp: 1709915999617 - kind: conda name: nbclient version: 0.10.0 @@ -23043,13 +23227,13 @@ packages: timestamp: 1710317767117 - kind: conda name: nbconvert-core - version: 7.16.2 + version: 7.16.3 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.2-pyhd8ed1ab_0.conda - sha256: e1fe894114763addc98ef147a78fcd9a518bf97d268394c356b80c572c78c82f - md5: 5ab3248dd05c543dc631276455ef6a54 + url: https://conda.anaconda.org/conda-forge/noarch/nbconvert-core-7.16.3-pyhd8ed1ab_0.conda + sha256: 522d28206fbafa634763da1ae9119a9edd141d8c516ed13878f77b67921e1bb5 + md5: 0cab42b4917e71df9dc2224b9940ef19 depends: - beautifulsoup4 - bleach @@ -23069,12 +23253,12 @@ packages: - tinycss2 - traitlets >=5.0 constrains: - - pandoc >=2.14.2,<4.0.0 - - nbconvert =7.16.2=*_0 + - pandoc >=2.9.2,<4.0.0 + - nbconvert =7.16.3=*_0 license: BSD-3-Clause license_family: BSD - size: 188317 - timestamp: 1709581437093 + size: 189119 + timestamp: 1711069786088 - kind: conda name: nbformat version: 5.10.3 @@ -23096,46 +23280,39 @@ packages: timestamp: 1710502340495 - kind: conda name: ncurses - version: '6.4' - build: h463b476_2 - build_number: 2 + version: 6.4.20240210 + build: h078ce10_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4-h463b476_2.conda - sha256: f6890634f815e8408d08f36503353f8dfd7b055e4c3b9ea2ee52180255cf4b0a - md5: 52b6f254a7b9663e854f44b6570ed982 - depends: - - __osx >=10.9 + url: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.4.20240210-h078ce10_0.conda + sha256: 06f0905791575e2cd3aa961493c56e490b3d82ad9eb49f1c332bd338b0216911 + md5: 616ae8691e6608527d0071e6766dcb81 license: X11 AND BSD-3-Clause - size: 794741 - timestamp: 1698751574074 + size: 820249 + timestamp: 1710866874348 - kind: conda name: ncurses - version: '6.4' - build: h59595ed_2 - build_number: 2 + version: 6.4.20240210 + build: h59595ed_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-h59595ed_2.conda - sha256: 91cc03f14caf96243cead96c76fe91ab5925a695d892e83285461fb927dece5e - md5: 7dbaa197d7ba6032caf7ae7f32c1efa0 + url: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda + sha256: aa0f005b6727aac6507317ed490f0904430584fa8ca722657e7f0fb94741de81 + md5: 97da8860a0da5413c7c98a3b3838a645 depends: - libgcc-ng >=12 license: X11 AND BSD-3-Clause - size: 884434 - timestamp: 1698751260967 + size: 895669 + timestamp: 1710866638986 - kind: conda name: ncurses - version: '6.4' - build: h93d8f39_2 - build_number: 2 + version: 6.4.20240210 + build: h73e2aa4_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4-h93d8f39_2.conda - sha256: ea0fca66bbb52a1ef0687d466518fe120b5f279684effd6fd336a7b0dddc423a - md5: e58f366bd4d767e9ab97ab8b272e7670 - depends: - - __osx >=10.9 + url: https://conda.anaconda.org/conda-forge/osx-64/ncurses-6.4.20240210-h73e2aa4_0.conda + sha256: 50b72acf08acbc4e5332807653e2ca6b26d4326e8af16fad1fd3f2ce9ea55503 + md5: 50f28c512e9ad78589e3eab34833f762 license: X11 AND BSD-3-Clause - size: 822031 - timestamp: 1698751567986 + size: 823010 + timestamp: 1710866856626 - kind: conda name: nest-asyncio version: 1.6.0 @@ -23464,66 +23641,70 @@ packages: timestamp: 1698504905258 - kind: conda name: nh3 - version: 0.2.15 + version: 0.2.17 + build: py312h1b0e595_0 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.17-py312h1b0e595_0.conda + sha256: 2757f1eb998b3a2475b1464d86d579e171b3c8291565663a932afaae046e8a2e + md5: 4f054ad0586a4cce37bfa5a734caab2d + depends: + - python >=3.12,<3.13.0a0 + - python_abi 3.12.* *_cp312 + constrains: + - __osx >=10.12 + license: MIT + license_family: MIT + size: 543776 + timestamp: 1711546010408 +- kind: conda + name: nh3 + version: 0.2.17 build: py312h426fad5_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.15-py312h426fad5_0.conda - sha256: ac3ef8596487e29f67bea6f67782eab27652b09fbba0ee73a305cd0e6864fba0 - md5: 9b60784f94f7dcc9eb6c74bc0390ff60 + url: https://conda.anaconda.org/conda-forge/win-64/nh3-0.2.17-py312h426fad5_0.conda + sha256: fba43991ef788619219c6bb68bc1b0d517d3d1cbf0582387d03f963a4d6bd7db + md5: ac293016a363d8145cc7383227b66d7c depends: - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 493284 - timestamp: 1701975467693 + size: 495036 + timestamp: 1711546525421 - kind: conda name: nh3 - version: 0.2.15 + version: 0.2.17 build: py312h4b3b743_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.15-py312h4b3b743_0.conda - sha256: 6188d9675dbde885b96ecfc825043d58538fc4b1271132e80ea71b9f6024f842 - md5: 20bcb8b36e608686657e8a4b8a1ab7e8 + url: https://conda.anaconda.org/conda-forge/linux-64/nh3-0.2.17-py312h4b3b743_0.conda + sha256: 60067873dda1f5433fee8e2b7c02a32785153d2be73c75cfffae47ca4566a9c2 + md5: cfa305e03624c82d451a5ef250960bbd depends: - libgcc-ng >=12 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 615870 - timestamp: 1701974587653 + size: 607053 + timestamp: 1711545731955 - kind: conda name: nh3 - version: 0.2.15 + version: 0.2.17 build: py312h5280bc4_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.15-py312h5280bc4_0.conda - sha256: c33e7acd89ff0f34209e746bd5c1a4216938520282c334fde7e1a32db2bb86ab - md5: dd5eecd5fe445fc0c0c05be841c9d012 + url: https://conda.anaconda.org/conda-forge/osx-arm64/nh3-0.2.17-py312h5280bc4_0.conda + sha256: b5ff8a687db7ef51fe5f854fe37975f08b70a2ad0ff585d9444e4e3bd77b3d95 + md5: 7a6d211257e3d264516ae4d67ce181a4 depends: - python >=3.12,<3.13.0a0 - python >=3.12,<3.13.0a0 *_cpython - python_abi 3.12.* *_cp312 + constrains: + - __osx >=11.0 license: MIT license_family: MIT - size: 602780 - timestamp: 1701975343669 -- kind: conda - name: nh3 - version: 0.2.15 - build: py312h6e28e45_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/nh3-0.2.15-py312h6e28e45_0.conda - sha256: 3d00884dfd36c345135d9dd5c2afbd009f7e1e03a1785c0bb94240ceb7140aec - md5: bc1b4153dec8ebd5ba009039bfa684f1 - depends: - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 - license: MIT - license_family: MIT - size: 549709 - timestamp: 1701975061050 + size: 582437 + timestamp: 1711545995406 - kind: conda name: nitro version: 2.7.dev8 @@ -23730,42 +23911,40 @@ packages: timestamp: 1708065399315 - kind: conda name: numba - version: 0.59.0 - build: py310h1d5af72_1 - build_number: 1 + version: 0.59.1 + build: py310h1d5af72_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py310h1d5af72_1.conda - sha256: 96dae2cae5c602f00fcdc7e31a50eab8bab1b02e4e78e8e1df250b903217431c - md5: 8280a3c834648bf8ea8e11dc3f41a406 + url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py310h1d5af72_0.conda + sha256: a209aa01362bc96eda9cfd013400518fbf348845cd8a76235e4919f63336ec88 + md5: 48c2d28c10aa78b8db76f0eee9c08626 depends: - libcxx >=16 - llvm-openmp >=16.0.6 - - llvm-openmp >=17.0.6 + - llvm-openmp >=18.1.2 - llvmlite >=0.42.0,<0.43.0a0 - numpy >=1.22.4,<2.0a0 - python >=3.10,<3.11.0a0 - python_abi 3.10.* *_cp310 constrains: - - cudatoolkit >=11.2 - tbb >=2021.6.0 + - libopenblas !=0.3.6 + - cudatoolkit >=11.2 - scipy >=1.0 - cuda-version >=11.2 - - libopenblas !=0.3.6 - - numpy >=1.22.3,<1.27 - cuda-python >=11.6 + - numpy >=1.22.3,<1.27 license: BSD-2-Clause license_family: BSD - size: 4289874 - timestamp: 1707025171230 + size: 4306388 + timestamp: 1711475580226 - kind: conda name: numba - version: 0.59.0 - build: py310h7dc5dd1_1 - build_number: 1 + version: 0.59.1 + build: py310h7dc5dd1_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py310h7dc5dd1_1.conda - sha256: bdf13fdeb3fdb4ca5380bba9716d7f7e8e1ac1ff299fb8f9fafa49893bcb5f1f - md5: 966bc2bc095723310d746106e7c91791 + url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py310h7dc5dd1_0.conda + sha256: d2c631345a40f0ffbe18d312ef665e1ae1a4942ecff46334df2de49b8277bf81 + md5: b757b5ecfa1cad38328fa73e236b6563 depends: - _openmp_mutex >=4.5 - libgcc-ng >=12 @@ -23775,26 +23954,25 @@ packages: - python >=3.10,<3.11.0a0 - python_abi 3.10.* *_cp310 constrains: - - cuda-version >=11.2 + - cudatoolkit >=11.2 - cuda-python >=11.6 + - cuda-version >=11.2 - numpy >=1.22.3,<1.27 - libopenblas !=0.3.6 - - cudatoolkit >=11.2 - scipy >=1.0 - tbb >=2021.6.0 license: BSD-2-Clause license_family: BSD - size: 4310003 - timestamp: 1707025029634 + size: 4313101 + timestamp: 1711475336305 - kind: conda name: numba - version: 0.59.0 - build: py310h9ccaf4f_1 - build_number: 1 + version: 0.59.1 + build: py310h9ccaf4f_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py310h9ccaf4f_1.conda - sha256: 8e4416750bbd47c14803714270fe682988ec1434946667769f9319be1f3eaff9 - md5: 7213f937ca4848d61db49edfaf544d84 + url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py310h9ccaf4f_0.conda + sha256: fa83e95a18ab1011fb628f536609c86304cc6578035592de7078f78491e7b334 + md5: 62a19ec9b0e89bf270c6bf163cf21bb4 depends: - llvmlite >=0.42.0,<0.43.0a0 - numpy >=1.22.4,<2.0a0 @@ -23804,30 +23982,29 @@ packages: - vc >=14.2,<15 - vc14_runtime >=14.29.30139 constrains: - - tbb >=2021.6.0 - libopenblas !=0.3.6 + - numpy >=1.22.3,<1.27 - cuda-version >=11.2 - - cuda-python >=11.6 + - tbb >=2021.6.0 - cudatoolkit >=11.2 - scipy >=1.0 - - numpy >=1.22.3,<1.27 + - cuda-python >=11.6 license: BSD-2-Clause license_family: BSD - size: 4311966 - timestamp: 1707025411208 + size: 4293611 + timestamp: 1711475788866 - kind: conda name: numba - version: 0.59.0 - build: py310hdf1f89a_1 - build_number: 1 + version: 0.59.1 + build: py310hdf1f89a_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py310hdf1f89a_1.conda - sha256: c102278bd4fe439eea0f6973db30a599daefb22c7a588c39a701ef4aaddfc820 - md5: c5d326a3ec43c15e2e8a8fe329e428af + url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py310hdf1f89a_0.conda + sha256: 40ebaa41d0aa057f6ffeb58742fde256e13e410d8a7a18941d951b2f90ba7ea8 + md5: 8664b3ab76986782e3a8ad26f4af8fdd depends: - libcxx >=16 - llvm-openmp >=16.0.6 - - llvm-openmp >=17.0.6 + - llvm-openmp >=18.1.2 - llvmlite >=0.42.0,<0.43.0a0 - numpy >=1.22.4,<2.0a0 - python >=3.10,<3.11.0a0 @@ -23837,27 +24014,26 @@ packages: - tbb >=2021.6.0 - scipy >=1.0 - cuda-python >=11.6 - - cudatoolkit >=11.2 - - numpy >=1.22.3,<1.27 - cuda-version >=11.2 + - numpy >=1.22.3,<1.27 - libopenblas >=0.3.18, !=0.3.20 + - cudatoolkit >=11.2 license: BSD-2-Clause license_family: BSD - size: 4282939 - timestamp: 1707025258107 + size: 4292616 + timestamp: 1711475805806 - kind: conda name: numba - version: 0.59.0 - build: py311h00351ea_1 - build_number: 1 + version: 0.59.1 + build: py311h00351ea_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py311h00351ea_1.conda - sha256: dad80fa4c31658926bd15f44dabaa98ef542686483404dbad2f64f4d7a3941e0 - md5: 8bc0e2d3e03f7d9b0437ceeb8d4830ec + url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py311h00351ea_0.conda + sha256: 08fb0c631d4398db7ad6aca6028cf61ea1b7729b37fbfc39156bd8041e721ea6 + md5: 19ab43dae40c315f94f73127edc1ecec depends: - libcxx >=16 - llvm-openmp >=16.0.6 - - llvm-openmp >=17.0.6 + - llvm-openmp >=18.1.2 - llvmlite >=0.42.0,<0.43.0a0 - numpy >=1.23.5,<2.0a0 - python >=3.11,<3.12.0a0 @@ -23865,25 +24041,24 @@ packages: - python_abi 3.11.* *_cp311 constrains: - cudatoolkit >=11.2 - - libopenblas >=0.3.18, !=0.3.20 - - cuda-version >=11.2 + - scipy >=1.0 + - cuda-python >=11.6 - tbb >=2021.6.0 + - cuda-version >=11.2 + - libopenblas >=0.3.18, !=0.3.20 - numpy >=1.22.3,<1.27 - - cuda-python >=11.6 - - scipy >=1.0 license: BSD-2-Clause license_family: BSD - size: 5686955 - timestamp: 1707025264728 + size: 5714812 + timestamp: 1711475878723 - kind: conda name: numba - version: 0.59.0 - build: py311h2c0921f_1 - build_number: 1 + version: 0.59.1 + build: py311h2c0921f_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py311h2c0921f_1.conda - sha256: de02c464eb662495dbe169e88bb57c1f24d2f3110d96b9cc942089a775461189 - md5: 212de778a02afab2131bd7ae5fa11a08 + url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py311h2c0921f_0.conda + sha256: 444faaee93e210d2a24853b8fdb646afa57ee72378f1156bf3d9f0e67be0087b + md5: 37f04eaa0e229a07b03f219f10be11ef depends: - llvmlite >=0.42.0,<0.43.0a0 - numpy >=1.23.5,<2.0a0 @@ -23893,26 +24068,25 @@ packages: - vc >=14.2,<15 - vc14_runtime >=14.29.30139 constrains: - - cuda-python >=11.6 - - scipy >=1.0 - - tbb >=2021.6.0 - - cudatoolkit >=11.2 - libopenblas !=0.3.6 + - scipy >=1.0 - cuda-version >=11.2 - numpy >=1.22.3,<1.27 + - tbb >=2021.6.0 + - cudatoolkit >=11.2 + - cuda-python >=11.6 license: BSD-2-Clause license_family: BSD - size: 5736769 - timestamp: 1707025374646 + size: 5740925 + timestamp: 1711475788949 - kind: conda name: numba - version: 0.59.0 - build: py311h96b013e_1 - build_number: 1 + version: 0.59.1 + build: py311h96b013e_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py311h96b013e_1.conda - sha256: 7733d1377bf9c39efaef8af6bd0988248d8719691b8de67cb2cc2dc4416f5724 - md5: 488276429185c4fa1266e6a4a24a61af + url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py311h96b013e_0.conda + sha256: d04a4ae9207492a7e40135eef2a0c79da2d6ed53baf4b72a0ff533dd5fd838a9 + md5: cd581f19ea0c298ec6ef612fdf7d041c depends: - _openmp_mutex >=4.5 - libgcc-ng >=12 @@ -23922,163 +24096,158 @@ packages: - python >=3.11,<3.12.0a0 - python_abi 3.11.* *_cp311 constrains: - - cuda-version >=11.2 - tbb >=2021.6.0 - - numpy >=1.22.3,<1.27 - - scipy >=1.0 - cudatoolkit >=11.2 + - cuda-version >=11.2 - cuda-python >=11.6 + - scipy >=1.0 - libopenblas !=0.3.6 + - numpy >=1.22.3,<1.27 license: BSD-2-Clause license_family: BSD - size: 5727292 - timestamp: 1707024985748 + size: 5727056 + timestamp: 1711475359733 - kind: conda name: numba - version: 0.59.0 - build: py311h97119f7_1 - build_number: 1 + version: 0.59.1 + build: py311h97119f7_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py311h97119f7_1.conda - sha256: 8cf53e0723f7728cd94206594510800d509ee51e516aadd23d82ffd421c2b50f - md5: 6ef612819668f7bcd6782f6105d57938 + url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py311h97119f7_0.conda + sha256: 39c5d0402fe93521fd4593dddead61be6307590177aab6eb14a19c8aff8072e3 + md5: a7d40eca79cb5ee19a95f041627da7cc depends: - libcxx >=16 - llvm-openmp >=16.0.6 - - llvm-openmp >=17.0.6 + - llvm-openmp >=18.1.2 - llvmlite >=0.42.0,<0.43.0a0 - numpy >=1.23.5,<2.0a0 - python >=3.11,<3.12.0a0 - python_abi 3.11.* *_cp311 constrains: - - cudatoolkit >=11.2 + - cuda-version >=11.2 - scipy >=1.0 - - cuda-python >=11.6 - numpy >=1.22.3,<1.27 - - tbb >=2021.6.0 - - cuda-version >=11.2 - libopenblas !=0.3.6 + - cudatoolkit >=11.2 + - cuda-python >=11.6 + - tbb >=2021.6.0 license: BSD-2-Clause license_family: BSD - size: 5687339 - timestamp: 1707025156882 + size: 5694560 + timestamp: 1711475607780 - kind: conda name: numba - version: 0.59.0 - build: py312h04e34b5_1 - build_number: 1 + version: 0.59.1 + build: py312h04e34b5_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.0-py312h04e34b5_1.conda - sha256: fc9e3ed004b4d900d62e7fefa428fde6baa9d49a64301614fb53285817a7c038 - md5: 4b4835b6e0f12551299a268913fe543d + url: https://conda.anaconda.org/conda-forge/osx-64/numba-0.59.1-py312h04e34b5_0.conda + sha256: e4bc3426d6b023c121328e6a9878ec35a71487bc1cb3424f96d9f2808ad0ee43 + md5: 46499b9d015d01c22ceb1c37e1dc6ccc depends: - libcxx >=16 - llvm-openmp >=16.0.6 - - llvm-openmp >=17.0.6 + - llvm-openmp >=18.1.2 - llvmlite >=0.42.0,<0.43.0a0 - - numpy >=1.26.3,<2.0a0 + - numpy >=1.26.4,<2.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 constrains: - - cudatoolkit >=11.2 - - cuda-python >=11.6 - - scipy >=1.0 - tbb >=2021.6.0 + - cudatoolkit >=11.2 - numpy >=1.22.3,<1.27 - cuda-version >=11.2 + - cuda-python >=11.6 + - scipy >=1.0 - libopenblas !=0.3.6 license: BSD-2-Clause license_family: BSD - size: 5588109 - timestamp: 1707025160641 + size: 5586866 + timestamp: 1711475677299 - kind: conda name: numba - version: 0.59.0 - build: py312h115d327_1 - build_number: 1 + version: 0.59.1 + build: py312h115d327_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.0-py312h115d327_1.conda - sha256: 4614884673c6394f9931abb154aaa3c1afca1841912fc0d1bf626ea13ba551ee - md5: 98a3967da85cd9e1e3777162574bc650 + url: https://conda.anaconda.org/conda-forge/win-64/numba-0.59.1-py312h115d327_0.conda + sha256: 9a04cfd0886170036bdbc3c2b3e4805e8629c126c0b55e498e3401d4aee9331c + md5: 514d477e6114b692d400ed23deb73348 depends: - llvmlite >=0.42.0,<0.43.0a0 - - numpy >=1.26.3,<2.0a0 + - numpy >=1.26.4,<2.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 constrains: - - libopenblas !=0.3.6 - tbb >=2021.6.0 - - scipy >=1.0 - - cuda-python >=11.6 + - cuda-version >=11.2 - cudatoolkit >=11.2 + - scipy >=1.0 - numpy >=1.22.3,<1.27 - - cuda-version >=11.2 + - libopenblas !=0.3.6 + - cuda-python >=11.6 license: BSD-2-Clause license_family: BSD - size: 5591321 - timestamp: 1707025367311 + size: 5591106 + timestamp: 1711475839209 - kind: conda name: numba - version: 0.59.0 - build: py312hacefee8_1 - build_number: 1 + version: 0.59.1 + build: py312hacefee8_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.0-py312hacefee8_1.conda - sha256: 6f4c05c4632e211ee15366d1fec712fc8c063ace12964f5232633ab7adefdda1 - md5: b7d9c1563c135a05eb9ffde3637c51bc + url: https://conda.anaconda.org/conda-forge/linux-64/numba-0.59.1-py312hacefee8_0.conda + sha256: 13445a4ea0677336aa882c519f31ce397cbb5ac848adc68b0c951ca038784562 + md5: 84c93029c60916c59a914a3ba579c4a8 depends: - _openmp_mutex >=4.5 - libgcc-ng >=12 - libstdcxx-ng >=12 - llvmlite >=0.42.0,<0.43.0a0 - - numpy >=1.26.3,<2.0a0 + - numpy >=1.26.4,<2.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 constrains: + - cuda-version >=11.2 + - numpy >=1.22.3,<1.27 - libopenblas !=0.3.6 - tbb >=2021.6.0 - scipy >=1.0 - - cudatoolkit >=11.2 - - cuda-version >=11.2 - - numpy >=1.22.3,<1.27 - cuda-python >=11.6 + - cudatoolkit >=11.2 license: BSD-2-Clause license_family: BSD - size: 5599592 - timestamp: 1707024973279 + size: 5613943 + timestamp: 1711475331686 - kind: conda name: numba - version: 0.59.0 - build: py312hbaff935_1 - build_number: 1 + version: 0.59.1 + build: py312hbaff935_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.0-py312hbaff935_1.conda - sha256: c80264493ad73a313cd81d5772315df5cbb61bc99c5ed70012e2ad6678c2a67a - md5: 1a946f1b1308a4f6b321bd129ba32392 + url: https://conda.anaconda.org/conda-forge/osx-arm64/numba-0.59.1-py312hbaff935_0.conda + sha256: 300dde5a10d35eeba537b1d3e689841a7ea11fef7e8bd273a83af1535696c486 + md5: e4b79ed152a0499e5ccfe660140aeca7 depends: - libcxx >=16 - llvm-openmp >=16.0.6 - - llvm-openmp >=17.0.6 + - llvm-openmp >=18.1.2 - llvmlite >=0.42.0,<0.43.0a0 - - numpy >=1.26.3,<2.0a0 + - numpy >=1.26.4,<2.0a0 - python >=3.12,<3.13.0a0 - python >=3.12,<3.13.0a0 *_cpython - python_abi 3.12.* *_cp312 constrains: - cudatoolkit >=11.2 - - tbb >=2021.6.0 - scipy >=1.0 - - libopenblas >=0.3.18, !=0.3.20 - numpy >=1.22.3,<1.27 - - cuda-version >=11.2 + - tbb >=2021.6.0 + - libopenblas >=0.3.18, !=0.3.20 - cuda-python >=11.6 + - cuda-version >=11.2 license: BSD-2-Clause license_family: BSD - size: 5583158 - timestamp: 1707025272079 + size: 5590634 + timestamp: 1711475851039 - kind: conda name: numba_celltree version: 0.1.6 @@ -24363,17 +24532,18 @@ packages: - kind: conda name: ocl-icd version: 2.3.2 - build: hd590300_0 + build: hd590300_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_0.conda - sha256: d413c0b42ba13532943118458caab795454f5a73d70f5d2ed2daa6118df15876 - md5: 92e93490ee7f98bfadb389e3129b955c + url: https://conda.anaconda.org/conda-forge/linux-64/ocl-icd-2.3.2-hd590300_1.conda + sha256: 0e01384423e48e5011eb6b224da8dc5e3567c87dbcefbe60cd9d5cead276cdcd + md5: c66f837ac65e4d1cdeb80e2a1d5fcc3d depends: - libgcc-ng >=12 license: BSD-2-Clause license_family: BSD - size: 136327 - timestamp: 1707866764671 + size: 135681 + timestamp: 1710946531879 - kind: conda name: openblas version: 0.3.26 @@ -24482,27 +24652,29 @@ packages: - kind: conda name: openssl version: 3.2.1 - build: h0d3ecfb_0 + build: h0d3ecfb_1 + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_0.conda - sha256: 13663fcd4abc8681b31ccbad39800fee2127cb6159b51a989ed48a816af36cf5 - md5: 421cc6e8715447b73c2c57dcf78cb9d2 + url: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.2.1-h0d3ecfb_1.conda + sha256: 519dc941d7ab0ebf31a2878d85c2f444450e7c5f6f41c4d07252c6bb3417b78b + md5: eb580fb888d93d5d550c557323ac5cee depends: - ca-certificates constrains: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2862719 - timestamp: 1706635779319 + size: 2855250 + timestamp: 1710793435903 - kind: conda name: openssl version: 3.2.1 - build: hcfcfb64_0 + build: hcfcfb64_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_0.conda - sha256: 1df1c43136f863d5e9ba20b703001caf9a4d0ea56bdc3eeb948c977e3d4f91d3 - md5: 158df8eead8092cf0e27167c8761a8dd + url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.2.1-hcfcfb64_1.conda + sha256: 61ce4e11c3c26ed4e4d9b7e7e2483121a1741ad0f9c8db0a91a28b6e05182ce6 + md5: 958e0418e93e50c575bff70fbcaa12d8 depends: - ca-certificates - ucrt >=10.0.20348.0 @@ -24512,16 +24684,17 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 8229619 - timestamp: 1706638014697 + size: 8230112 + timestamp: 1710796158475 - kind: conda name: openssl version: 3.2.1 - build: hd590300_0 + build: hd590300_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_0.conda - sha256: c02c12bdb898daacf7eb3d09859f93ea8f285fd1a6132ff6ff0493ab52c7fe57 - md5: 51a753e64a3027bd7e23a189b1f6e91e + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda + sha256: 2c689444ed19a603be457284cf2115ee728a3fafb7527326e96054dee7cdc1a7 + md5: 9d731343cff6ee2e5a25c4a091bf8e2a depends: - ca-certificates - libgcc-ng >=12 @@ -24529,24 +24702,25 @@ packages: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2863069 - timestamp: 1706635653339 + size: 2865379 + timestamp: 1710793235846 - kind: conda name: openssl version: 3.2.1 - build: hd75f5a5_0 + build: hd75f5a5_1 + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_0.conda - sha256: 20c1b1a34a1831c24d37ed1500ca07300171184af0c66598f3c5ca901634d713 - md5: 3033be9a59fd744172b03971b9ccd081 + url: https://conda.anaconda.org/conda-forge/osx-64/openssl-3.2.1-hd75f5a5_1.conda + sha256: 7ae0ac6a1673584a8a380c2ff3d46eca48ed53bc7174c0d4eaa0dd2f247a0984 + md5: 570a6f04802df580be529f3a72d2bbf7 depends: - ca-certificates constrains: - pyopenssl >=22.1 license: Apache-2.0 license_family: Apache - size: 2509168 - timestamp: 1706636810736 + size: 2506344 + timestamp: 1710793930515 - kind: conda name: orc version: 2.0.0 @@ -24937,21 +25111,21 @@ packages: timestamp: 1702057691853 - kind: conda name: pandas-stubs - version: 2.2.0.240218 + version: 2.2.1.240316 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.0.240218-pyhd8ed1ab_0.conda - sha256: 1c50e2c7de3f7908316cd3f98775b56862d08a1c39fa7d948716d272688bd8eb - md5: 5756d2cc5343cc59c0667f4efe653a3f + url: https://conda.anaconda.org/conda-forge/noarch/pandas-stubs-2.2.1.240316-pyhd8ed1ab_0.conda + sha256: 34883e8d436a37858a88d7a756b35142d63d042c8b416b6ad83278cbce7abe3e + md5: 309fb20ff5d681cb3c783cc0c800d770 depends: - numpy >=1.26.0 - python >=3.9 - types-pytz >=2022.1.1 license: BSD-3-Clause license_family: BSD - size: 97984 - timestamp: 1708439836841 + size: 98146 + timestamp: 1710768532899 - kind: conda name: pandera version: 0.18.3 @@ -25166,13 +25340,13 @@ packages: timestamp: 1708118050286 - kind: conda name: pdal - version: 2.6.3 - build: h312035a_2 - build_number: 2 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.6.3-h312035a_2.conda - sha256: a45a3b2d5dcd406bf71c82168d68ca1467f242d578b5695a50f216d84ea91d3b - md5: 67282904d6a782df61f861c02d99fffc + version: 2.7.0 + build: h223787e_1 + build_number: 1 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.7.0-h223787e_1.conda + sha256: 38161a9d3d2b773055fc291f761a843acaa66af0d92d82407c8e7300a9398628 + md5: 35bc902ec4d224d14d8838cd122d2ab4 depends: - ceres-solver >=2.2.0,<2.3.0a0 - curl @@ -25180,94 +25354,95 @@ packages: - eigen >=3.4.0,<3.4.1.0a0 - geotiff >=1.7.1,<1.8.0a0 - hdf5 >=1.14.3,<1.14.4.0a0 - - libgcc-ng >=12 + - libcxx >=16 - libgdal >=3.8.4,<3.9.0a0 - libkml >=1.3.0,<1.4.0a0 - libpq >=16.2,<17.0a0 - - libstdcxx-ng >=12 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - nitro - - tiledb >=2.20.0,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 - zlib - zstd >=1.5.5,<1.6.0a0 + constrains: + - __osx >=10.15 license: BSD-3-Clause license_family: BSD - size: 4366262 - timestamp: 1708747168814 + size: 3130147 + timestamp: 1711217210986 - kind: conda name: pdal - version: 2.6.3 - build: h3c564ca_2 - build_number: 2 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.6.3-h3c564ca_2.conda - sha256: dbc0a8ca9018f8ac9dfab67a27fed83b9664d8fcc00a977dc7ac8f84522495d3 - md5: 126b8ebe75cfd5cbb0113bcc716d0aa1 + version: 2.7.0 + build: h2ff5919_1 + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/pdal-2.7.0-h2ff5919_1.conda + sha256: e05484f5d4a031b5c0c22545205c1575738b2d4f59a3179680ab51c59b87fd57 + md5: f0e598cf41c0a2332e812c8d1c522d11 depends: + - blas - ceres-solver >=2.2.0,<2.3.0a0 - curl - draco - eigen >=3.4.0,<3.4.1.0a0 - geotiff >=1.7.1,<1.8.0a0 - hdf5 >=1.14.3,<1.14.4.0a0 - - libcxx >=16 - libgdal >=3.8.4,<3.9.0a0 - libkml >=1.3.0,<1.4.0a0 - libpq >=16.2,<17.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 + - mkl - nitro - - tiledb >=2.20.0,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 - zlib - zstd >=1.5.5,<1.6.0a0 license: BSD-3-Clause license_family: BSD - size: 2755522 - timestamp: 1708748158901 + size: 2948677 + timestamp: 1711217918679 - kind: conda name: pdal - version: 2.6.3 - build: h572f625_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pdal-2.6.3-h572f625_2.conda - sha256: 307c2fb89a12ce5c88590b7d0519d42f5b945ef96fcf306854dd9b03c20ef706 - md5: 02aa67762f7514d208b5a79e2a13327e + version: 2.7.0 + build: h6d00f24_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/pdal-2.7.0-h6d00f24_1.conda + sha256: c64da8e84be05eebcaeaacf27e7d0fc75cf82a6b2d148a1d2b3175d2a498374a + md5: 274ec957035e3b49a425c028a12eb45d depends: - - blas - ceres-solver >=2.2.0,<2.3.0a0 - curl - draco - eigen >=3.4.0,<3.4.1.0a0 - geotiff >=1.7.1,<1.8.0a0 - hdf5 >=1.14.3,<1.14.4.0a0 + - libcxx >=16 - libgdal >=3.8.4,<3.9.0a0 - libkml >=1.3.0,<1.4.0a0 - libpq >=16.2,<17.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - - mkl - nitro - - tiledb >=2.20.0,<2.21.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - tiledb >=2.21.1,<2.22.0a0 - zlib - zstd >=1.5.5,<1.6.0a0 license: BSD-3-Clause license_family: BSD - size: 2930021 - timestamp: 1708749061986 + size: 2791861 + timestamp: 1711217670263 - kind: conda name: pdal - version: 2.6.3 - build: hd2646b2_2 - build_number: 2 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pdal-2.6.3-hd2646b2_2.conda - sha256: c53f1f6ead60b44018d4ff8c219f8d347d288caf954fa90dff3c951f79c47ce5 - md5: fcfac6b09723f9a7b5f91814cc22365b + version: 2.7.0 + build: h8cae3e1_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pdal-2.7.0-h8cae3e1_1.conda + sha256: cc08b2ad58c9d7bf0e7bc3c4f7687f0d7b918b65a52f79805afd3d5ed96d4f40 + md5: 375fa62db2d3c530edb2e14423942482 depends: - ceres-solver >=2.2.0,<2.3.0a0 - curl @@ -25275,22 +25450,21 @@ packages: - eigen >=3.4.0,<3.4.1.0a0 - geotiff >=1.7.1,<1.8.0a0 - hdf5 >=1.14.3,<1.14.4.0a0 - - libcxx >=16 + - libgcc-ng >=12 - libgdal >=3.8.4,<3.9.0a0 - libkml >=1.3.0,<1.4.0a0 - libpq >=16.2,<17.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libstdcxx-ng >=12 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - nitro - - tiledb >=2.20.0,<2.21.0a0 + - tiledb >=2.21.1,<2.22.0a0 - zlib - zstd >=1.5.5,<1.6.0a0 - constrains: - - __osx >=10.15 license: BSD-3-Clause license_family: BSD - size: 3068114 - timestamp: 1708748417977 + size: 4444436 + timestamp: 1711216355400 - kind: conda name: pep517 version: 0.13.0 @@ -25786,21 +25960,21 @@ packages: timestamp: 1706116931972 - kind: conda name: plum-dispatch - version: 2.3.2 + version: 2.3.3 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.2-pyhd8ed1ab_0.conda - sha256: 7baa22fc9af7e5740376434ad103cc38b384739e4180ffb14838d7c1eccfcca1 - md5: 29adbde22baf625ec8e4e1f9ed0142b2 + url: https://conda.anaconda.org/conda-forge/noarch/plum-dispatch-2.3.3-pyhd8ed1ab_0.conda + sha256: 74d8645a6f8d343cc146e2b75ab20004840fd14cdbc0fa9076f12cff157efffe + md5: fadd4630a6ead3313bf0c8f1d4cf4a32 depends: - beartype >=0.12 - python >=3.8 - rich >=10.0 license: MIT license_family: MIT - size: 36048 - timestamp: 1705836650950 + size: 35889 + timestamp: 1711401439271 - kind: conda name: ply version: '3.11' @@ -25972,93 +26146,97 @@ packages: - kind: conda name: postgresql version: '16.2' - build: h1beaf6b_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h1beaf6b_0.conda - sha256: 5443f216bf46d4d72a7a5b229db24e824112a01baa4ba727ffe7f0dc2d2b78c0 - md5: 03519a736c44af579f0c364669329df1 + build: h06f2bd8_1 + build_number: 1 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-h06f2bd8_1.conda + sha256: 2a96af8385c51e97950ed00d802186069bf4933b3be111956508ab6be158d463 + md5: fe36c4a9254176dde4ca696016c50aa8 depends: - krb5 >=1.21.2,<1.22.0a0 - - libpq 16.2 hdb24f17_0 - - libxml2 >=2.12.5,<3.0a0 + - libpq 16.2 ha925e61_1 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 + - readline >=8.2,<9.0a0 + - tzcode + - tzdata license: PostgreSQL - size: 18565712 - timestamp: 1707416202899 + size: 4627906 + timestamp: 1710864850772 - kind: conda name: postgresql version: '16.2' - build: h1d0603d_0 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-h1d0603d_0.conda - sha256: 01b5bb78c909778fefca380bb808044850adba2972cd92f8fe6ead122a34fc45 - md5: 29f3fd38f23da95692ab11af12fdb6da + build: h82ecc9d_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h82ecc9d_1.conda + sha256: 7fc52e69478973f173f055ade6c4087564362be9172c294b493a79671fef9a7e + md5: 7a5806219d0f77ce8393375d040df065 depends: - krb5 >=1.21.2,<1.22.0a0 - - libpq 16.2 h0f8b458_0 - - libxml2 >=2.12.5,<3.0a0 + - libgcc-ng >=12 + - libpq 16.2 h33b98f1_1 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 - readline >=8.2,<9.0a0 - tzcode - tzdata license: PostgreSQL - size: 4329570 - timestamp: 1707416482651 + size: 5308675 + timestamp: 1710863687299 - kind: conda name: postgresql version: '16.2' - build: h7387d8b_0 - subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/postgresql-16.2-h7387d8b_0.conda - sha256: 5b4fcfbd51957bb51fb1d2d28c3e9d8f4a50be0ac1be9c40083b1e9a39df7f3d - md5: 4e86738066b4966f0357f661b3691cae + build: h94c9ec1_1 + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/postgresql-16.2-h94c9ec1_1.conda + sha256: 35d632652bc965e5f7b6b4f9f8a36c6c399d1defc2e4f68841f42d5b9a51ee70 + md5: c76ba206e82b0d0dbfc9d6d48b80053b depends: - krb5 >=1.21.2,<1.22.0a0 - - libgcc-ng >=12 - - libpq 16.2 h33b98f1_0 - - libxml2 >=2.12.5,<3.0a0 + - libpq 16.2 hdb24f17_1 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 - - readline >=8.2,<9.0a0 - - tzcode - - tzdata + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 license: PostgreSQL - size: 5295904 - timestamp: 1707415161091 + size: 18712345 + timestamp: 1710864543420 - kind: conda name: postgresql version: '16.2' - build: hbd19fd8_0 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/postgresql-16.2-hbd19fd8_0.conda - sha256: 8a9d1277488ee4c7e7c260d9423280782497930253a56bc9d88c94b2ec59748f - md5: 00ed2daaa212835979fedc2cb7e1eac7 + build: hf829917_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/postgresql-16.2-hf829917_1.conda + sha256: cfc337097f145a3e527c45b2ab40663421480acc225c3eb997459a80e5e1f9ae + md5: a80492a97dc9c6f05b4181b8ab4dfb14 depends: - krb5 >=1.21.2,<1.22.0a0 - - libpq 16.2 ha925e61_0 - - libxml2 >=2.12.5,<3.0a0 + - libpq 16.2 h0f8b458_1 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 - readline >=8.2,<9.0a0 - tzcode - tzdata license: PostgreSQL - size: 4578492 - timestamp: 1707416355357 + size: 4360036 + timestamp: 1710864886003 - kind: conda name: pre-commit - version: 3.6.2 + version: 3.7.0 build: pyha770c72_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.6.2-pyha770c72_0.conda - sha256: 8eb9f5965c37d2bbee9302e16cc7c5517ee06491986356112be13431a043681e - md5: 61534ee57ffdf26d7b1b514d33daccc4 + url: https://conda.anaconda.org/conda-forge/noarch/pre-commit-3.7.0-pyha770c72_0.conda + sha256: b7a1d56fb1374df77019521bbcbe109ff17337181c4d392918e5ec1a10a9df87 + md5: 846ba0877cda9c4f11e13720cacd1968 depends: - cfgv >=2.0.0 - identify >=1.0.0 @@ -26068,8 +26246,8 @@ packages: - virtualenv >=20.10.0 license: MIT license_family: MIT - size: 179884 - timestamp: 1708284490635 + size: 180574 + timestamp: 1711480432386 - kind: conda name: proj version: 9.3.1 @@ -26541,25 +26719,24 @@ packages: timestamp: 1609419417991 - kind: conda name: pulseaudio-client - version: '16.1' - build: hb77b528_5 - build_number: 5 + version: '17.0' + build: hb77b528_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-hb77b528_5.conda - sha256: 9981c70893d95c8cac02e7edd1a9af87f2c8745b772d529f08b7f9dafbe98606 - md5: ac902ff3c1c6d750dd0dfc93a974ab74 + url: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-17.0-hb77b528_0.conda + sha256: b27c0c8671bd95c205a61aeeac807c095b60bc76eb5021863f919036d7a964fc + md5: 07f45f1be1c25345faddb8db0de8039b depends: - dbus >=1.13.6,<2.0a0 - libgcc-ng >=12 - - libglib >=2.76.4,<3.0a0 + - libglib >=2.78.3,<3.0a0 - libsndfile >=1.2.2,<1.3.0a0 - - libsystemd0 >=254 + - libsystemd0 >=255 constrains: - - pulseaudio 16.1 *_5 + - pulseaudio 17.0 *_0 license: LGPL-2.1-or-later license_family: LGPL - size: 754844 - timestamp: 1693928953742 + size: 757633 + timestamp: 1705690081905 - kind: conda name: pure_eval version: 0.2.2 @@ -26577,23 +26754,23 @@ packages: timestamp: 1642876055775 - kind: conda name: pyarrow - version: 15.0.1 - build: py310h5e314f5_2_cpu - build_number: 2 + version: 15.0.2 + build: py310h5e314f5_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py310h5e314f5_2_cpu.conda - sha256: 031c4f25444b0ff4780521710ec757cffab9233dcb302cbd2e84a18d946e9d3f - md5: ac4c438b21a12dc817849cd0fe05c66e - depends: - - libarrow 15.0.1 h8eee870_2_cpu - - libarrow-acero 15.0.1 hebf3989_2_cpu - - libarrow-dataset 15.0.1 hebf3989_2_cpu - - libarrow-flight 15.0.1 h1f98dca_2_cpu - - libarrow-flight-sql 15.0.1 hb095944_2_cpu - - libarrow-gandiva 15.0.1 h2c81988_2_cpu - - libarrow-substrait 15.0.1 h50959cf_2_cpu + url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py310h5e314f5_1_cpu.conda + sha256: 34cacd700ea067e847ac6e723b940aaeb992b9625dc81cf187beca53457e7965 + md5: 92550298e25ff0f872027fc7b74aa173 + depends: + - libarrow 15.0.2 h5e64418_1_cpu + - libarrow-acero 15.0.2 hebf3989_1_cpu + - libarrow-dataset 15.0.2 hebf3989_1_cpu + - libarrow-flight 15.0.2 h1f98dca_1_cpu + - libarrow-flight-sql 15.0.2 hb095944_1_cpu + - libarrow-gandiva 15.0.2 h2c81988_1_cpu + - libarrow-substrait 15.0.2 h50959cf_1_cpu - libcxx >=16 - - libparquet 15.0.1 h278d484_2_cpu + - libparquet 15.0.2 h278d484_1_cpu - numpy >=1.22.4,<2.0a0 - python >=3.10,<3.11.0a0 - python >=3.10,<3.11.0a0 *_cpython @@ -26602,27 +26779,27 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 3896343 - timestamp: 1710351808673 + size: 3910800 + timestamp: 1711181243606 - kind: conda name: pyarrow - version: 15.0.1 - build: py310hce9b33c_2_cpu - build_number: 2 + version: 15.0.2 + build: py310hce9b33c_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py310hce9b33c_2_cpu.conda - sha256: 0e61ca68d27765493c9b32f49bf2b1d7227d249c5b9351f6d6d06d4841c427c2 - md5: 9618136f08c1ceed270c25ea5c14353e - depends: - - libarrow 15.0.1 h49b82c4_2_cpu - - libarrow-acero 15.0.1 hd427752_2_cpu - - libarrow-dataset 15.0.1 hd427752_2_cpu - - libarrow-flight 15.0.1 h39e3226_2_cpu - - libarrow-flight-sql 15.0.1 h1a3ed6a_2_cpu - - libarrow-gandiva 15.0.1 h43798cf_2_cpu - - libarrow-substrait 15.0.1 h1a3ed6a_2_cpu + url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py310hce9b33c_1_cpu.conda + sha256: 32dac156ea19be85773188d74203ec1aaa32a1a8da813499451673d2dd88d5c3 + md5: 0d640a474e0f567ef1bf1dcfefd87d82 + depends: + - libarrow 15.0.2 h8d4fe2c_1_cpu + - libarrow-acero 15.0.2 hd427752_1_cpu + - libarrow-dataset 15.0.2 hd427752_1_cpu + - libarrow-flight 15.0.2 h39e3226_1_cpu + - libarrow-flight-sql 15.0.2 h1a3ed6a_1_cpu + - libarrow-gandiva 15.0.2 h43798cf_1_cpu + - libarrow-substrait 15.0.2 h1a3ed6a_1_cpu - libcxx >=16 - - libparquet 15.0.1 h089a9f7_2_cpu + - libparquet 15.0.2 h089a9f7_1_cpu - numpy >=1.22.4,<2.0a0 - python >=3.10,<3.11.0a0 - python_abi 3.10.* *_cp310 @@ -26630,26 +26807,26 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 3965907 - timestamp: 1710350331014 + size: 3968527 + timestamp: 1711268885130 - kind: conda name: pyarrow - version: 15.0.1 - build: py310hd0bb7c2_2_cpu - build_number: 2 + version: 15.0.2 + build: py310hd0bb7c2_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py310hd0bb7c2_2_cpu.conda - sha256: 13e08db1a5cd7988abff990ddea265cec8c2b4b233e4bd0ce9da2a0720052af6 - md5: 0cae89aa56b48f5a0b810cac95a4df4d - depends: - - libarrow 15.0.1 h2a83f13_2_cpu - - libarrow-acero 15.0.1 h63175ca_2_cpu - - libarrow-dataset 15.0.1 h63175ca_2_cpu - - libarrow-flight 15.0.1 h02312f3_2_cpu - - libarrow-flight-sql 15.0.1 h55b4db4_2_cpu - - libarrow-gandiva 15.0.1 h3f2ff47_2_cpu - - libarrow-substrait 15.0.1 h89268de_2_cpu - - libparquet 15.0.1 h7ec3a38_2_cpu + url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py310hd0bb7c2_1_cpu.conda + sha256: 7e22de22572b5cc9f33db59852b0cac7d3e47adad3d0c0ac752d99d37a65ff5b + md5: c36e44c5826a37d524baadc7be93276e + depends: + - libarrow 15.0.2 h878f99b_1_cpu + - libarrow-acero 15.0.2 h63175ca_1_cpu + - libarrow-dataset 15.0.2 h63175ca_1_cpu + - libarrow-flight 15.0.2 h02312f3_1_cpu + - libarrow-flight-sql 15.0.2 h55b4db4_1_cpu + - libarrow-gandiva 15.0.2 h3f2ff47_1_cpu + - libarrow-substrait 15.0.2 h89268de_1_cpu + - libparquet 15.0.2 h7ec3a38_1_cpu - numpy >=1.22.4,<2.0a0 - python >=3.10,<3.11.0a0 - python_abi 3.10.* *_cp310 @@ -26660,27 +26837,27 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 3434851 - timestamp: 1710348794894 + size: 3449549 + timestamp: 1711180448103 - kind: conda name: pyarrow - version: 15.0.1 - build: py310hf9e7431_2_cpu - build_number: 2 + version: 15.0.2 + build: py310hf9e7431_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py310hf9e7431_2_cpu.conda - sha256: c4c1eaee704a8711fa375bf43edbcbe85045e7cc8534888816a0cbc250ee46d5 - md5: 490e55ceea8617f7f6f5287b53d6f683 + url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py310hf9e7431_1_cpu.conda + sha256: 94c4f9598354c8cf3be3d7da0a0d8d5cc3f9784979d7d2bd0791951c0eb2558b + md5: 7828e1661a5168ca7089b4be96fbf02c depends: - - libarrow 15.0.1 h6bfc85a_2_cpu - - libarrow-acero 15.0.1 h59595ed_2_cpu - - libarrow-dataset 15.0.1 h59595ed_2_cpu - - libarrow-flight 15.0.1 hc6145d9_2_cpu - - libarrow-flight-sql 15.0.1 h757c851_2_cpu - - libarrow-gandiva 15.0.1 hb016d2e_2_cpu - - libarrow-substrait 15.0.1 h757c851_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu + - libarrow-acero 15.0.2 h59595ed_1_cpu + - libarrow-dataset 15.0.2 h59595ed_1_cpu + - libarrow-flight 15.0.2 hc6145d9_1_cpu + - libarrow-flight-sql 15.0.2 h757c851_1_cpu + - libarrow-gandiva 15.0.2 hb016d2e_1_cpu + - libarrow-substrait 15.0.2 h757c851_1_cpu - libgcc-ng >=12 - - libparquet 15.0.1 h352af49_2_cpu + - libparquet 15.0.2 h352af49_1_cpu - libstdcxx-ng >=12 - numpy >=1.22.4,<2.0a0 - python >=3.10,<3.11.0a0 @@ -26689,27 +26866,27 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 4483611 - timestamp: 1710348336075 + size: 4498140 + timestamp: 1711181398682 - kind: conda name: pyarrow - version: 15.0.1 - build: py311h39c9aba_2_cpu - build_number: 2 + version: 15.0.2 + build: py311h39c9aba_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py311h39c9aba_2_cpu.conda - sha256: a42c2c49de5f3b4dfb64e8f00dc4342a7998d309c14a95433d770123476cf5a1 - md5: 7c02ea1450f3a1362640a64ec0479093 + url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py311h39c9aba_1_cpu.conda + sha256: 1bb8dae47c3e0791e27af8d9459e28df320a5f728d8bf85da530b30548c58459 + md5: 9279ae695726f9217888f9845f578f2f depends: - - libarrow 15.0.1 h6bfc85a_2_cpu - - libarrow-acero 15.0.1 h59595ed_2_cpu - - libarrow-dataset 15.0.1 h59595ed_2_cpu - - libarrow-flight 15.0.1 hc6145d9_2_cpu - - libarrow-flight-sql 15.0.1 h757c851_2_cpu - - libarrow-gandiva 15.0.1 hb016d2e_2_cpu - - libarrow-substrait 15.0.1 h757c851_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu + - libarrow-acero 15.0.2 h59595ed_1_cpu + - libarrow-dataset 15.0.2 h59595ed_1_cpu + - libarrow-flight 15.0.2 hc6145d9_1_cpu + - libarrow-flight-sql 15.0.2 h757c851_1_cpu + - libarrow-gandiva 15.0.2 hb016d2e_1_cpu + - libarrow-substrait 15.0.2 h757c851_1_cpu - libgcc-ng >=12 - - libparquet 15.0.1 h352af49_2_cpu + - libparquet 15.0.2 h352af49_1_cpu - libstdcxx-ng >=12 - numpy >=1.23.5,<2.0a0 - python >=3.11,<3.12.0a0 @@ -26718,26 +26895,26 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 4574176 - timestamp: 1710346678421 + size: 4529968 + timestamp: 1711179840677 - kind: conda name: pyarrow - version: 15.0.1 - build: py311h6a6099b_2_cpu - build_number: 2 + version: 15.0.2 + build: py311h6a6099b_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py311h6a6099b_2_cpu.conda - sha256: 0b445a440634421a245983fdef37e56283b4564dbd2392790e7513d25743f81d - md5: a4a1473c7b4b5b902f2bb3646fc2acf3 - depends: - - libarrow 15.0.1 h2a83f13_2_cpu - - libarrow-acero 15.0.1 h63175ca_2_cpu - - libarrow-dataset 15.0.1 h63175ca_2_cpu - - libarrow-flight 15.0.1 h02312f3_2_cpu - - libarrow-flight-sql 15.0.1 h55b4db4_2_cpu - - libarrow-gandiva 15.0.1 h3f2ff47_2_cpu - - libarrow-substrait 15.0.1 h89268de_2_cpu - - libparquet 15.0.1 h7ec3a38_2_cpu + url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py311h6a6099b_1_cpu.conda + sha256: 72708c984c7344c0c1e31b5080a372df55c876015f10293647a45f467fe990bf + md5: 959503cb8e7d254c8ff3ba7ceda1b2e8 + depends: + - libarrow 15.0.2 h878f99b_1_cpu + - libarrow-acero 15.0.2 h63175ca_1_cpu + - libarrow-dataset 15.0.2 h63175ca_1_cpu + - libarrow-flight 15.0.2 h02312f3_1_cpu + - libarrow-flight-sql 15.0.2 h55b4db4_1_cpu + - libarrow-gandiva 15.0.2 h3f2ff47_1_cpu + - libarrow-substrait 15.0.2 h89268de_1_cpu + - libparquet 15.0.2 h7ec3a38_1_cpu - numpy >=1.23.5,<2.0a0 - python >=3.11,<3.12.0a0 - python_abi 3.11.* *_cp311 @@ -26748,27 +26925,27 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 3500905 - timestamp: 1710348057038 + size: 3486616 + timestamp: 1711182714761 - kind: conda name: pyarrow - version: 15.0.1 - build: py311h9425ff2_2_cpu - build_number: 2 + version: 15.0.2 + build: py311h9425ff2_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py311h9425ff2_2_cpu.conda - sha256: 32c4e96bdca0bd3b24316340bbb7edce438b5e4010f2fbc5c323c900dbbf6ba5 - md5: 76e8ef83c3bbe0689b349a278f3d379c - depends: - - libarrow 15.0.1 h49b82c4_2_cpu - - libarrow-acero 15.0.1 hd427752_2_cpu - - libarrow-dataset 15.0.1 hd427752_2_cpu - - libarrow-flight 15.0.1 h39e3226_2_cpu - - libarrow-flight-sql 15.0.1 h1a3ed6a_2_cpu - - libarrow-gandiva 15.0.1 h43798cf_2_cpu - - libarrow-substrait 15.0.1 h1a3ed6a_2_cpu + url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py311h9425ff2_1_cpu.conda + sha256: 830a5cd981ff9952bac13eb4dccfdb26f7befe819446d9dec69dc4f27e1fd6e5 + md5: 12ca5303e6b2098c781927cdf21b0207 + depends: + - libarrow 15.0.2 h8d4fe2c_1_cpu + - libarrow-acero 15.0.2 hd427752_1_cpu + - libarrow-dataset 15.0.2 hd427752_1_cpu + - libarrow-flight 15.0.2 h39e3226_1_cpu + - libarrow-flight-sql 15.0.2 h1a3ed6a_1_cpu + - libarrow-gandiva 15.0.2 h43798cf_1_cpu + - libarrow-substrait 15.0.2 h1a3ed6a_1_cpu - libcxx >=16 - - libparquet 15.0.1 h089a9f7_2_cpu + - libparquet 15.0.2 h089a9f7_1_cpu - numpy >=1.23.5,<2.0a0 - python >=3.11,<3.12.0a0 - python_abi 3.11.* *_cp311 @@ -26776,27 +26953,27 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 4038850 - timestamp: 1710350980312 + size: 4059964 + timestamp: 1711268312509 - kind: conda name: pyarrow - version: 15.0.1 - build: py311hce53c6f_2_cpu - build_number: 2 + version: 15.0.2 + build: py311hce53c6f_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py311hce53c6f_2_cpu.conda - sha256: 2e7250e514cd6077022a620caba310a7caccbd4c932f22a6e671d69be1d59bad - md5: 92c96900c592a2ca2685a0a4ede682eb - depends: - - libarrow 15.0.1 h8eee870_2_cpu - - libarrow-acero 15.0.1 hebf3989_2_cpu - - libarrow-dataset 15.0.1 hebf3989_2_cpu - - libarrow-flight 15.0.1 h1f98dca_2_cpu - - libarrow-flight-sql 15.0.1 hb095944_2_cpu - - libarrow-gandiva 15.0.1 h2c81988_2_cpu - - libarrow-substrait 15.0.1 h50959cf_2_cpu + url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py311hce53c6f_1_cpu.conda + sha256: 688d603957255bf6607fc42c524195a0c0bf936c6f4d9337d12776cebdf3aaea + md5: 8b80e4877390c903a3a9ca451ec9972f + depends: + - libarrow 15.0.2 h5e64418_1_cpu + - libarrow-acero 15.0.2 hebf3989_1_cpu + - libarrow-dataset 15.0.2 hebf3989_1_cpu + - libarrow-flight 15.0.2 h1f98dca_1_cpu + - libarrow-flight-sql 15.0.2 hb095944_1_cpu + - libarrow-gandiva 15.0.2 h2c81988_1_cpu + - libarrow-substrait 15.0.2 h50959cf_1_cpu - libcxx >=16 - - libparquet 15.0.1 h278d484_2_cpu + - libparquet 15.0.2 h278d484_1_cpu - numpy >=1.23.5,<2.0a0 - python >=3.11,<3.12.0a0 - python >=3.11,<3.12.0a0 *_cpython @@ -26805,27 +26982,27 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 3995756 - timestamp: 1710349100462 + size: 3996145 + timestamp: 1711183959869 - kind: conda name: pyarrow - version: 15.0.1 - build: py312h1251918_2_cpu - build_number: 2 + version: 15.0.2 + build: py312h1251918_1_cpu + build_number: 1 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.1-py312h1251918_2_cpu.conda - sha256: 54edf6ea007ad50ef37c087fa4f8612053bbee7d776ed93c083ac51fe8765676 - md5: 80ffeb889aa2ab3d4ee03f8e89fe5028 - depends: - - libarrow 15.0.1 h8eee870_2_cpu - - libarrow-acero 15.0.1 hebf3989_2_cpu - - libarrow-dataset 15.0.1 hebf3989_2_cpu - - libarrow-flight 15.0.1 h1f98dca_2_cpu - - libarrow-flight-sql 15.0.1 hb095944_2_cpu - - libarrow-gandiva 15.0.1 h2c81988_2_cpu - - libarrow-substrait 15.0.1 h50959cf_2_cpu + url: https://conda.anaconda.org/conda-forge/osx-arm64/pyarrow-15.0.2-py312h1251918_1_cpu.conda + sha256: 5b81c2edcf4d854468175154a97d31676cce5ee4aee224d0b575760966f41e57 + md5: 6ceb075409d206ef9c95601a65710ce2 + depends: + - libarrow 15.0.2 h5e64418_1_cpu + - libarrow-acero 15.0.2 hebf3989_1_cpu + - libarrow-dataset 15.0.2 hebf3989_1_cpu + - libarrow-flight 15.0.2 h1f98dca_1_cpu + - libarrow-flight-sql 15.0.2 hb095944_1_cpu + - libarrow-gandiva 15.0.2 h2c81988_1_cpu + - libarrow-substrait 15.0.2 h50959cf_1_cpu - libcxx >=16 - - libparquet 15.0.1 h278d484_2_cpu + - libparquet 15.0.2 h278d484_1_cpu - numpy >=1.26.4,<2.0a0 - python >=3.12,<3.13.0a0 - python >=3.12,<3.13.0a0 *_cpython @@ -26834,27 +27011,27 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 3924544 - timestamp: 1710349791105 + size: 3939280 + timestamp: 1711181957119 - kind: conda name: pyarrow - version: 15.0.1 - build: py312h176e3d2_2_cpu - build_number: 2 + version: 15.0.2 + build: py312h176e3d2_1_cpu + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.1-py312h176e3d2_2_cpu.conda - sha256: 3862b8351d662bda5f7e58ec25a0297ebfdebd42ce74924902de95df40868050 - md5: fe4e35712300ac4c9ac4eed11a5611bf + url: https://conda.anaconda.org/conda-forge/linux-64/pyarrow-15.0.2-py312h176e3d2_1_cpu.conda + sha256: b1e6c813d5bb2fee372a8622f85219f97392b2cd684777aa4f782ec34f0f7e98 + md5: e5340d2a8d88003d053b49e852459a4c depends: - - libarrow 15.0.1 h6bfc85a_2_cpu - - libarrow-acero 15.0.1 h59595ed_2_cpu - - libarrow-dataset 15.0.1 h59595ed_2_cpu - - libarrow-flight 15.0.1 hc6145d9_2_cpu - - libarrow-flight-sql 15.0.1 h757c851_2_cpu - - libarrow-gandiva 15.0.1 hb016d2e_2_cpu - - libarrow-substrait 15.0.1 h757c851_2_cpu + - libarrow 15.0.2 hb86450c_1_cpu + - libarrow-acero 15.0.2 h59595ed_1_cpu + - libarrow-dataset 15.0.2 h59595ed_1_cpu + - libarrow-flight 15.0.2 hc6145d9_1_cpu + - libarrow-flight-sql 15.0.2 h757c851_1_cpu + - libarrow-gandiva 15.0.2 hb016d2e_1_cpu + - libarrow-substrait 15.0.2 h757c851_1_cpu - libgcc-ng >=12 - - libparquet 15.0.1 h352af49_2_cpu + - libparquet 15.0.2 h352af49_1_cpu - libstdcxx-ng >=12 - numpy >=1.26.4,<2.0a0 - python >=3.12,<3.13.0a0 @@ -26863,26 +27040,26 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 4544871 - timestamp: 1710348879469 + size: 4513384 + timestamp: 1711179296429 - kind: conda name: pyarrow - version: 15.0.1 - build: py312h85e32bb_2_cpu - build_number: 2 + version: 15.0.2 + build: py312h85e32bb_1_cpu + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.1-py312h85e32bb_2_cpu.conda - sha256: 22dc7aba7c56b24a43a0764a321871b382218d10bdb0ecda10b8d5ab5a7e844f - md5: 1ad05a1b44cf740d728832fbc5f52167 - depends: - - libarrow 15.0.1 h2a83f13_2_cpu - - libarrow-acero 15.0.1 h63175ca_2_cpu - - libarrow-dataset 15.0.1 h63175ca_2_cpu - - libarrow-flight 15.0.1 h02312f3_2_cpu - - libarrow-flight-sql 15.0.1 h55b4db4_2_cpu - - libarrow-gandiva 15.0.1 h3f2ff47_2_cpu - - libarrow-substrait 15.0.1 h89268de_2_cpu - - libparquet 15.0.1 h7ec3a38_2_cpu + url: https://conda.anaconda.org/conda-forge/win-64/pyarrow-15.0.2-py312h85e32bb_1_cpu.conda + sha256: c50e4f26039ff880c38f72ba8454ccec62be4825cb78244424b552eef1d1ed1b + md5: 20a1bf6c88b1494acc2245e9d92f427b + depends: + - libarrow 15.0.2 h878f99b_1_cpu + - libarrow-acero 15.0.2 h63175ca_1_cpu + - libarrow-dataset 15.0.2 h63175ca_1_cpu + - libarrow-flight 15.0.2 h02312f3_1_cpu + - libarrow-flight-sql 15.0.2 h55b4db4_1_cpu + - libarrow-gandiva 15.0.2 h3f2ff47_1_cpu + - libarrow-substrait 15.0.2 h89268de_1_cpu + - libparquet 15.0.2 h7ec3a38_1_cpu - numpy >=1.26.4,<2.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 @@ -26893,27 +27070,27 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 3464338 - timestamp: 1710351158253 + size: 3450655 + timestamp: 1711183473119 - kind: conda name: pyarrow - version: 15.0.1 - build: py312hc4c33ac_2_cpu - build_number: 2 + version: 15.0.2 + build: py312hc4c33ac_1_cpu + build_number: 1 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.1-py312hc4c33ac_2_cpu.conda - sha256: d517f4c83067c604dfa57003fec798a591305fe742d85227950b6f637140ec83 - md5: 22b3c77acf8e55f4c22a524f80718df1 - depends: - - libarrow 15.0.1 h49b82c4_2_cpu - - libarrow-acero 15.0.1 hd427752_2_cpu - - libarrow-dataset 15.0.1 hd427752_2_cpu - - libarrow-flight 15.0.1 h39e3226_2_cpu - - libarrow-flight-sql 15.0.1 h1a3ed6a_2_cpu - - libarrow-gandiva 15.0.1 h43798cf_2_cpu - - libarrow-substrait 15.0.1 h1a3ed6a_2_cpu + url: https://conda.anaconda.org/conda-forge/osx-64/pyarrow-15.0.2-py312hc4c33ac_1_cpu.conda + sha256: 43c182aaadacb631b754ffef56a89cd8bf2be5afdc98c05c07223919b91e493e + md5: 31a48943b65f497d47afa9ba20f1ed08 + depends: + - libarrow 15.0.2 h8d4fe2c_1_cpu + - libarrow-acero 15.0.2 hd427752_1_cpu + - libarrow-dataset 15.0.2 hd427752_1_cpu + - libarrow-flight 15.0.2 h39e3226_1_cpu + - libarrow-flight-sql 15.0.2 h1a3ed6a_1_cpu + - libarrow-gandiva 15.0.2 h43798cf_1_cpu + - libarrow-substrait 15.0.2 h1a3ed6a_1_cpu - libcxx >=16 - - libparquet 15.0.1 h089a9f7_2_cpu + - libparquet 15.0.2 h089a9f7_1_cpu - numpy >=1.26.4,<2.0a0 - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 @@ -26921,8 +27098,8 @@ packages: - apache-arrow-proc =*=cpu license: Apache-2.0 license_family: APACHE - size: 3987634 - timestamp: 1710349100320 + size: 4004151 + timestamp: 1711267736737 - kind: conda name: pyarrow-hotfix version: '0.6' @@ -26941,19 +27118,19 @@ packages: timestamp: 1700596511761 - kind: conda name: pycparser - version: '2.21' + version: '2.22' build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.21-pyhd8ed1ab_0.tar.bz2 - sha256: 74c63fd03f1f1ea2b54e8bc529fd1a600aaafb24027b738d0db87909ee3a33dc - md5: 076becd9e05608f8dc72757d5f3a91ff + url: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda + sha256: 406001ebf017688b1a1554b49127ca3a4ac4626ec0fd51dc75ffa4415b720b64 + md5: 844d9eb3b43095b031874477f7d70088 depends: - - python ==2.7.*|>=3.4 + - python >=3.8 license: BSD-3-Clause license_family: BSD - size: 102747 - timestamp: 1636257201998 + size: 105098 + timestamp: 1711811634025 - kind: conda name: pydantic version: 2.6.4 @@ -28298,22 +28475,22 @@ packages: timestamp: 1709992719691 - kind: conda name: pytest-cov - version: 4.1.0 + version: 5.0.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-4.1.0-pyhd8ed1ab_0.conda - sha256: f07d3b44cabbed7843de654c4a6990a08475ce3b708bb735c7da9842614586f2 - md5: 06eb685a3a0b146347a58dda979485da + url: https://conda.anaconda.org/conda-forge/noarch/pytest-cov-5.0.0-pyhd8ed1ab_0.conda + sha256: 218306243faf3c36347131c2b36bb189daa948ac2e92c7ab52bb26cc8c157b3c + md5: c54c0107057d67ddf077751339ec2c63 depends: - coverage >=5.2.1 - pytest >=4.6 - - python >=3.7 + - python >=3.8 - toml license: MIT license_family: MIT - size: 25436 - timestamp: 1684965001294 + size: 25507 + timestamp: 1711411153367 - kind: conda name: pytest-xdist version: 3.5.0 @@ -28335,20 +28512,19 @@ packages: timestamp: 1700593072448 - kind: conda name: python - version: 3.10.13 - build: h00d2728_1_cpython - build_number: 1 + version: 3.10.14 + build: h00d2728_0_cpython subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/python-3.10.13-h00d2728_1_cpython.conda - sha256: a7ed0fb04ae2c031fd378a42421fee673983e9c2a2fd6734a609595f56349556 - md5: f33c836e5a8561cf1632a224f161470a + url: https://conda.anaconda.org/conda-forge/osx-64/python-3.10.14-h00d2728_0_cpython.conda + sha256: 00c1de2d46ede26609ef4e84a44b83be7876ba6a0215b7c83bff41a0656bf694 + md5: 0a1cddc4382c5c171e791c70740546dd depends: - bzip2 >=1.0.8,<2.0a0 - libffi >=3.4,<4.0a0 - - libsqlite >=3.44.2,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libzlib >=1.2.13,<1.3.0a0 - - ncurses >=6.4,<7.0a0 - - openssl >=3.2.0,<4.0a0 + - ncurses >=6.4.20240210,<7.0a0 + - openssl >=3.2.1,<4.0a0 - readline >=8.2,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata @@ -28356,24 +28532,23 @@ packages: constrains: - python_abi 3.10.* *_cp310 license: Python-2.0 - size: 13011373 - timestamp: 1703346424250 + size: 11890228 + timestamp: 1710940046031 - kind: conda name: python - version: 3.10.13 - build: h2469fbe_1_cpython - build_number: 1 + version: 3.10.14 + build: h2469fbe_0_cpython subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.10.13-h2469fbe_1_cpython.conda - sha256: 042c0583165b2f58f2bcf0776fc421aab5be2dbb88380e3d8abfb3f1c716233a - md5: a90029d144e4acfc97be918fb3b2578e + url: https://conda.anaconda.org/conda-forge/osx-arm64/python-3.10.14-h2469fbe_0_cpython.conda + sha256: 454d609fe25daedce9e886efcbfcadad103ed0362e7cb6d2bcddec90b1ecd3ee + md5: 4ae999c8227c6d8c7623d32d51d25ea9 depends: - bzip2 >=1.0.8,<2.0a0 - libffi >=3.4,<4.0a0 - - libsqlite >=3.44.2,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libzlib >=1.2.13,<1.3.0a0 - - ncurses >=6.4,<7.0a0 - - openssl >=3.2.0,<4.0a0 + - ncurses >=6.4.20240210,<7.0a0 + - openssl >=3.2.1,<4.0a0 - readline >=8.2,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata @@ -28381,23 +28556,22 @@ packages: constrains: - python_abi 3.10.* *_cp310 license: Python-2.0 - size: 11604730 - timestamp: 1703346075266 + size: 12336005 + timestamp: 1710939659384 - kind: conda name: python - version: 3.10.13 - build: h4de0772_1_cpython - build_number: 1 + version: 3.10.14 + build: h4de0772_0_cpython subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/python-3.10.13-h4de0772_1_cpython.conda - sha256: 52e7c6569af0fc1fe63b7b5c23c0fb90d84dbff7a96224ea34c805ff1c5cf156 - md5: 2466ed12bf4a033d0ae05981d24b535e + url: https://conda.anaconda.org/conda-forge/win-64/python-3.10.14-h4de0772_0_cpython.conda + sha256: 332f97d9927b65857d6d2d4d50d66dce9b37da81edb67833ae6b88ad52acbd0c + md5: 4a00e84f29d1eb418d84970598c444e1 depends: - bzip2 >=1.0.8,<2.0a0 - libffi >=3.4,<4.0a0 - - libsqlite >=3.44.2,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libzlib >=1.2.13,<1.3.0a0 - - openssl >=3.2.0,<4.0a0 + - openssl >=3.2.1,<4.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata - vc >=14.1,<15 @@ -28406,29 +28580,28 @@ packages: constrains: - python_abi 3.10.* *_cp310 license: Python-2.0 - size: 15919030 - timestamp: 1703345531924 + size: 15864027 + timestamp: 1710938888352 - kind: conda name: python - version: 3.10.13 - build: hd12c33a_1_cpython - build_number: 1 + version: 3.10.14 + build: hd12c33a_0_cpython subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.13-hd12c33a_1_cpython.conda - sha256: 4234c8e301737aa245d12c8fb44a4128005795e42883977c29cca3f34c71a1eb - md5: ed38140af93f81319ebc472fbcf16cca + url: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.14-hd12c33a_0_cpython.conda + sha256: 76a5d12e73542678b70a94570f7b0f7763f9a938f77f0e75d9ea615ef22aa84c + md5: 2b4ba962994e8bd4be9ff5b64b75aff2 depends: - bzip2 >=1.0.8,<2.0a0 - ld_impl_linux-64 >=2.36.1 - libffi >=3.4,<4.0a0 - libgcc-ng >=12 - libnsl >=2.0.1,<2.1.0a0 - - libsqlite >=3.44.2,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libuuid >=2.38.1,<3.0a0 - libxcrypt >=4.4.36 - libzlib >=1.2.13,<1.3.0a0 - - ncurses >=6.4,<7.0a0 - - openssl >=3.2.0,<4.0a0 + - ncurses >=6.4.20240210,<7.0a0 + - openssl >=3.2.1,<4.0a0 - readline >=8.2,<9.0a0 - tk >=8.6.13,<8.7.0a0 - tzdata @@ -28436,8 +28609,8 @@ packages: constrains: - python_abi 3.10.* *_cp310 license: Python-2.0 - size: 25670919 - timestamp: 1703347014418 + size: 25517742 + timestamp: 1710939725109 - kind: conda name: python version: 3.11.8 @@ -29318,13 +29491,12 @@ packages: timestamp: 1704858714486 - kind: conda name: qgis - version: 3.36.0 - build: py312h05c534b_3 - build_number: 3 + version: 3.36.1 + build: py312h05c534b_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.0-py312h05c534b_3.conda - sha256: 7db669aedd751284d14baa61f3f41e8854278fde68714fd8effa7161f0358afe - md5: c3338e0f07575ec4e4c9f3d37fc961b7 + url: https://conda.anaconda.org/conda-forge/linux-64/qgis-3.36.1-py312h05c534b_0.conda + sha256: d9cba373c202b181dd63a08d783f0515bb7c31a210753eec2ca2c053faa38d5d + md5: 28ad727026adde765f2f77b7f3252044 depends: - exiv2 >=0.28.2,<0.29.0a0 - future @@ -29335,14 +29507,14 @@ packages: - icu >=73.2,<74.0a0 - jinja2 - laz-perf - - libexpat >=2.6.1,<3.0a0 + - libexpat >=2.6.2,<3.0a0 - libgcc-ng >=12 - - libgdal >=3.8.1,<3.9.0a0 + - libgdal >=3.8.4,<3.9.0a0 - libpq >=16.2,<17.0a0 - libprotobuf >=4.25.3,<4.25.4.0a0 - libspatialindex >=1.9.3,<1.9.4.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libstdcxx-ng >=12 - libzip >=1.10.1,<2.0a0 - markupsafe @@ -29350,7 +29522,7 @@ packages: - nose2 - ocl-icd >=2.3.2,<3.0a0 - owslib - - pdal >=2.6.2,<2.7.0a0 + - pdal >=2.7.0,<2.7.1.0a0 - plotly - postgresql - proj >=9.3.1,<9.3.2.0a0 @@ -29379,17 +29551,16 @@ packages: - yaml license: GPL-2.0-only license_family: GPL - size: 94309352 - timestamp: 1709862769460 + size: 92726263 + timestamp: 1711197133856 - kind: conda name: qgis - version: 3.36.0 - build: py312h3bc2ef5_3 - build_number: 3 + version: 3.36.1 + build: py312h3bc2ef5_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.0-py312h3bc2ef5_3.conda - sha256: 3fe81927a3fb1956cbf121d3ece586206389e9e8497a596e0574bca30833cf1f - md5: e7d5b1ca53b3eb546f4d52d95d90ab71 + url: https://conda.anaconda.org/conda-forge/osx-64/qgis-3.36.1-py312h3bc2ef5_0.conda + sha256: 5921dc3a485f04cb7b6f2cb24b014066679e7a6b38b60117f7445425eeabcb22 + md5: f0dbbc74d1d7071ac08586d7bb50f0d6 depends: - __osx >=10.13 - exiv2 >=0.28.2,<0.29.0a0 @@ -29403,20 +29574,20 @@ packages: - khronos-opencl-icd-loader >=2023.4.17 - laz-perf - libcxx >=16 - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 + - libexpat >=2.6.2,<3.0a0 + - libgdal >=3.8.4,<3.9.0a0 - libpq >=16.2,<17.0a0 - libprotobuf >=4.25.3,<4.25.4.0a0 - libspatialindex >=1.9.3,<1.9.4.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libtasn1 >=4.19.0,<5.0a0 - libzip >=1.10.1,<2.0a0 - markupsafe - mock - nose2 - owslib - - pdal >=2.6.2,<2.7.0a0 + - pdal >=2.7.0,<2.7.1.0a0 - plotly - postgresql - proj >=9.3.1,<9.3.2.0a0 @@ -29447,17 +29618,16 @@ packages: - __osx >=10.15 license: GPL-2.0-only license_family: GPL - size: 74663961 - timestamp: 1709866089749 + size: 75678734 + timestamp: 1711201931870 - kind: conda name: qgis - version: 3.36.0 - build: py312h566b452_3 - build_number: 3 + version: 3.36.1 + build: py312h566b452_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.0-py312h566b452_3.conda - sha256: 84cbde78050e1692a5daa795debed6027451a7645769cd48c47a5d65ea2a6ef9 - md5: 1f7be00d36288387fdbe306612ef6644 + url: https://conda.anaconda.org/conda-forge/win-64/qgis-3.36.1-py312h566b452_0.conda + sha256: 424171cdd7e8d394538d5069bb2031aea31182a6c7f5cbe67dc1654fb73154e6 + md5: ae93d45caa6421106ebacf1dece22a6a depends: - exiv2 >=0.28.2,<0.29.0a0 - future @@ -29469,19 +29639,19 @@ packages: - jinja2 - khronos-opencl-icd-loader >=2023.4.17 - laz-perf - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 + - libexpat >=2.6.2,<3.0a0 + - libgdal >=3.8.4,<3.9.0a0 - libpq >=16.2,<17.0a0 - libprotobuf >=4.25.3,<4.25.4.0a0 - libspatialindex >=1.9.3,<1.9.4.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libzip >=1.10.1,<2.0a0 - markupsafe - mock - nose2 - owslib - - pdal >=2.6.2,<2.7.0a0 + - pdal >=2.7.0,<2.7.1.0a0 - plotly - postgresql - proj >=9.3.1,<9.3.2.0a0 @@ -29513,17 +29683,16 @@ packages: - yaml license: GPL-2.0-only license_family: GPL - size: 72549766 - timestamp: 1709865985102 + size: 72270690 + timestamp: 1711203441398 - kind: conda name: qgis - version: 3.36.0 - build: py312he6ce98a_3 - build_number: 3 + version: 3.36.1 + build: py312he6ce98a_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.0-py312he6ce98a_3.conda - sha256: 78ac8dcb193fe5bd271e8feb18e58182c225052c6505601cae114f4fdeeb9053 - md5: 08d37e79c67de6295935a3a7b01714dd + url: https://conda.anaconda.org/conda-forge/osx-arm64/qgis-3.36.1-py312he6ce98a_0.conda + sha256: c361329101df68bbb223324e3be4e3b1cc8df7036d273e6ebacf1785cc0adefb + md5: 76588835a4773742b71db129772d16a8 depends: - exiv2 >=0.28.2,<0.29.0a0 - future @@ -29536,20 +29705,20 @@ packages: - khronos-opencl-icd-loader >=2023.4.17 - laz-perf - libcxx >=16 - - libexpat >=2.6.1,<3.0a0 - - libgdal >=3.8.1,<3.9.0a0 + - libexpat >=2.6.2,<3.0a0 + - libgdal >=3.8.4,<3.9.0a0 - libpq >=16.2,<17.0a0 - libprotobuf >=4.25.3,<4.25.4.0a0 - libspatialindex >=1.9.3,<1.9.4.0a0 - libspatialite >=5.1.0,<5.2.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libtasn1 >=4.19.0,<5.0a0 - libzip >=1.10.1,<2.0a0 - markupsafe - mock - nose2 - owslib - - pdal >=2.6.2,<2.7.0a0 + - pdal >=2.7.0,<2.7.1.0a0 - plotly - postgresql - proj >=9.3.1,<9.3.2.0a0 @@ -29581,8 +29750,8 @@ packages: - __osx >=11.0 license: GPL-2.0-only license_family: GPL - size: 73140981 - timestamp: 1709866952412 + size: 72416248 + timestamp: 1711202472696 - kind: conda name: qgis-plugin-manager version: 1.6.1 @@ -29803,49 +29972,49 @@ packages: - kind: conda name: qt-main version: 5.15.8 - build: h4385fff_19 - build_number: 19 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h4385fff_19.conda - sha256: f1ab73268198fe66c0b438b58b34bc56b987d0c411c4d60882c9474186a7d7f0 - md5: e9e7fc8f8b31e436472e6c2697dfa9fa + build: h07f8ed4_20 + build_number: 20 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h07f8ed4_20.conda + sha256: 3ce363d5822ae9addd3cda2b73e19889115803adf8cb45e0529752f38ad77cf4 + md5: ad3ad3b5da9a52286814a2323eb3552b depends: - gst-plugins-base >=1.22.9,<1.23.0a0 - gstreamer >=1.22.9,<1.23.0a0 - icu >=73.2,<74.0a0 - krb5 >=1.21.2,<1.22.0a0 - - libclang >=15.0.7,<16.0a0 + - libclang-cpp15 >=15.0.7,<15.1.0a0 - libclang13 >=15.0.7 - libcxx >=14 - - libglib >=2.78.3,<3.0a0 + - libglib >=2.80.0,<3.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - - libpng >=1.6.42,<1.7.0a0 + - libllvm15 >=15.0.7,<15.1.0a0 + - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libzlib >=1.2.13,<1.3.0a0 - - mysql-libs >=8.0.33,<8.1.0a0 + - mysql-libs >=8.3.0,<8.4.0a0 - nspr >=4.35,<5.0a0 - - nss >=3.97,<4.0a0 + - nss >=3.98,<4.0a0 - zstd >=1.5.5,<1.6.0a0 constrains: - qt 5.15.8 - - __osx >=10.13 license: LGPL-3.0-only license_family: LGPL - size: 46210935 - timestamp: 1707961847477 + size: 50049276 + timestamp: 1711311604244 - kind: conda name: qt-main version: 5.15.8 - build: h5810be5_19 - build_number: 19 + build: h112747c_20 + build_number: 20 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5810be5_19.conda - sha256: 41228ec12346d640ef1f549885d8438e98b1be0fdeb68cd1dd3938f255cbd719 - md5: 54866f708d43002a514d0b9b0f84bc11 + url: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h112747c_20.conda + sha256: 14f9075640d1abc7f8834420564f80aeaaf4da75e40dc3e4187f93d39f952418 + md5: cea58006ee5e891fc2a70c6b64d41363 depends: - __glibc >=2.17,<3.0.a0 - - alsa-lib >=1.2.10,<1.3.0.0a0 + - alsa-lib >=1.2.11,<1.3.0a0 - dbus >=1.13.6,<2.0a0 - fontconfig >=2.14.2,<3.0a0 - fonts-conda-ecosystem @@ -29855,27 +30024,28 @@ packages: - harfbuzz >=8.3.0,<9.0a0 - icu >=73.2,<74.0a0 - krb5 >=1.21.2,<1.22.0a0 - - libclang >=15.0.7,<16.0a0 + - libclang-cpp15 >=15.0.7,<15.1.0a0 - libclang13 >=15.0.7 - libcups >=2.3.3,<2.4.0a0 - libevent >=2.1.12,<2.1.13.0a0 - - libexpat >=2.5.0,<3.0a0 + - libexpat >=2.6.2,<3.0a0 - libgcc-ng >=12 - - libglib >=2.78.3,<3.0a0 + - libglib >=2.80.0,<3.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - - libpng >=1.6.42,<1.7.0a0 + - libllvm15 >=15.0.7,<15.1.0a0 + - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libstdcxx-ng >=12 - libxcb >=1.15,<1.16.0a0 - libxkbcommon >=1.6.0,<2.0a0 - - libxml2 >=2.12.5,<3.0a0 + - libxml2 >=2.12.6,<3.0a0 - libzlib >=1.2.13,<1.3.0a0 - - mysql-libs >=8.0.33,<8.1.0a0 + - mysql-libs >=8.3.0,<8.4.0a0 - nspr >=4.35,<5.0a0 - - nss >=3.97,<4.0a0 + - nss >=3.98,<4.0a0 - openssl >=3.2.1,<4.0a0 - - pulseaudio-client >=16.1,<16.2.0a0 + - pulseaudio-client >=17.0,<17.1.0a0 - xcb-util >=0.4.0,<0.5.0a0 - xcb-util-image >=0.4.0,<0.5.0a0 - xcb-util-keysyms >=0.4.0,<0.5.0a0 @@ -29891,61 +30061,62 @@ packages: - qt 5.15.8 license: LGPL-3.0-only license_family: LGPL - size: 61337596 - timestamp: 1707958161584 + size: 60849352 + timestamp: 1711304658310 - kind: conda name: qt-main version: 5.15.8 - build: h6bf1bb6_19 - build_number: 19 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/qt-main-5.15.8-h6bf1bb6_19.conda - sha256: 11774126630e5816bb0725231f0915f3b303bc2fe54844190f5b4d7f5a02a265 - md5: 9abd8726afab7f8e7709f45a444c4844 + build: h98f5cd4_20 + build_number: 20 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/qt-main-5.15.8-h98f5cd4_20.conda + sha256: 166415427f27bbc7ee91a11eb5f263c964b5193d70172df7a52af889db7effea + md5: dc6ff6bc77f3326d1a0d6eea39a3ae7c depends: - gst-plugins-base >=1.22.9,<1.23.0a0 - gstreamer >=1.22.9,<1.23.0a0 - icu >=73.2,<74.0a0 - krb5 >=1.21.2,<1.22.0a0 - - libclang >=15.0.7,<16.0a0 + - libclang-cpp15 >=15.0.7,<15.1.0a0 - libclang13 >=15.0.7 - libcxx >=14 - - libglib >=2.78.3,<3.0a0 + - libglib >=2.80.0,<3.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - - libpng >=1.6.42,<1.7.0a0 + - libllvm15 >=15.0.7,<15.1.0a0 + - libpng >=1.6.43,<1.7.0a0 - libpq >=16.2,<17.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libsqlite >=3.45.2,<4.0a0 - libzlib >=1.2.13,<1.3.0a0 - - mysql-libs >=8.0.33,<8.1.0a0 + - mysql-libs >=8.3.0,<8.4.0a0 - nspr >=4.35,<5.0a0 - - nss >=3.97,<4.0a0 + - nss >=3.98,<4.0a0 - zstd >=1.5.5,<1.6.0a0 constrains: + - __osx >=10.13 - qt 5.15.8 license: LGPL-3.0-only license_family: LGPL - size: 51329823 - timestamp: 1707961383220 + size: 45779349 + timestamp: 1711310440876 - kind: conda name: qt-main version: 5.15.8 - build: h9e85ed6_19 - build_number: 19 + build: h9e85ed6_20 + build_number: 20 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_19.conda - sha256: a132554a24f0617f54668479a29d9af80a2235653b08a4ebd200dcd30da971a8 - md5: 1e5fa5b05768a8eed9d8bb0bf5585b1f + url: https://conda.anaconda.org/conda-forge/win-64/qt-main-5.15.8-h9e85ed6_20.conda + sha256: 548e948eb70174dad20151714a70319b9b2d220b75d407a88f4f5812f14fcdd2 + md5: 312511ef95bf1418f20dd50041a4bc85 depends: - gst-plugins-base >=1.22.9,<1.23.0a0 - gstreamer >=1.22.9,<1.23.0a0 - icu >=73.2,<74.0a0 - krb5 >=1.21.2,<1.22.0a0 - - libclang >=15.0.7,<16.0a0 - libclang13 >=15.0.7 - - libglib >=2.78.3,<3.0a0 + - libglib >=2.80.0,<3.0a0 - libjpeg-turbo >=3.0.0,<4.0a0 - - libpng >=1.6.42,<1.7.0a0 - - libsqlite >=3.45.1,<4.0a0 + - libpng >=1.6.43,<1.7.0a0 + - libsqlite >=3.45.2,<4.0a0 - libzlib >=1.2.13,<1.3.0a0 - openssl >=3.2.1,<4.0a0 - ucrt >=10.0.20348.0 @@ -29956,8 +30127,8 @@ packages: - qt 5.15.8 license: LGPL-3.0-only license_family: LGPL - size: 60081554 - timestamp: 1707957968211 + size: 60012507 + timestamp: 1711306247296 - kind: conda name: qtkeychain version: 0.14.2 @@ -30307,13 +30478,12 @@ packages: timestamp: 1685705931698 - kind: conda name: rdma-core - version: '50.0' - build: hd3aeb46_1 - build_number: 1 + version: '51.0' + build: hd3aeb46_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-50.0-hd3aeb46_1.conda - sha256: 85e38508eb4921e53cf1cb97435f9c9408ea2ddc582c6588ec50f3f3ec3abdc0 - md5: f462219598fcf46c0cdfb985c3482b4f + url: https://conda.anaconda.org/conda-forge/linux-64/rdma-core-51.0-hd3aeb46_0.conda + sha256: bcc774b60605b09701cfad41b2d6d9c3f052dd4adfc1f02bf1c929076f48fe30 + md5: 493598e1f28c01e316fda127715593aa depends: - __glibc >=2.17,<3.0.a0 - libgcc-ng >=12 @@ -30321,8 +30491,8 @@ packages: - libstdcxx-ng >=12 license: Linux-OpenIB license_family: BSD - size: 4713842 - timestamp: 1710157799992 + size: 4734659 + timestamp: 1711958296706 - kind: conda name: re2 version: 2023.09.01 @@ -30450,21 +30620,21 @@ packages: timestamp: 1694242843889 - kind: conda name: referencing - version: 0.33.0 + version: 0.34.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/referencing-0.33.0-pyhd8ed1ab_0.conda - sha256: 5707eb9ee2c7cfcc56a5223b24ab3133ff61aaa796931f3b22068e0a43ea6ecf - md5: bc415a1c6cf049166215d6b596e0fcbe + url: https://conda.anaconda.org/conda-forge/noarch/referencing-0.34.0-pyhd8ed1ab_0.conda + sha256: 2e631e9e1d49280770573f7acc7441b70181b2dc21948bb1be15eaae80550672 + md5: e4492c22e314be5c75db3469e3bbf3d9 depends: - attrs >=22.2.0 - python >=3.8 - rpds-py >=0.7.0 license: MIT license_family: MIT - size: 39055 - timestamp: 1706711589688 + size: 42071 + timestamp: 1710763821612 - kind: conda name: requests version: 2.31.0 @@ -30832,12 +31002,12 @@ packages: timestamp: 1705698063894 - kind: conda name: ruff - version: 0.3.3 + version: 0.3.5 build: py312h1ae9fbf_0 subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.3-py312h1ae9fbf_0.conda - sha256: 193a26dd4dd86def331af7c6a370869de1bbe8dd4e419bcf8949fd9862f78bc0 - md5: ad3ca76c1186e57a9b9183c6cc42b658 + url: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.3.5-py312h1ae9fbf_0.conda + sha256: 5296fa79876620d8265163b57a718ed17c271c05e95281fdae722591349e146b + md5: 0f3eea1aaceaeefe6007431c3ed547c5 depends: - libcxx >=16 - python >=3.12,<3.13.0a0 @@ -30847,16 +31017,16 @@ packages: - __osx >=11.0 license: MIT license_family: MIT - size: 5715399 - timestamp: 1710601149033 + size: 5771748 + timestamp: 1712000754650 - kind: conda name: ruff - version: 0.3.3 + version: 0.3.5 build: py312h1bc86af_0 subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.3-py312h1bc86af_0.conda - sha256: 8825e301e88e42467b630fd02a1ed73a325a8441e7f6a3c60abd417a0bb8e319 - md5: 9010daf7cc420c34832cb421ec703860 + url: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.3.5-py312h1bc86af_0.conda + sha256: 1b4f63c99f7cee254f4643b44ff799c202c6df2884d00e8f9e4c365c9306c1a2 + md5: e786229e16a01b80085ea1dd850546f5 depends: - libcxx >=16 - python >=3.12,<3.13.0a0 @@ -30865,16 +31035,16 @@ packages: - __osx >=10.12 license: MIT license_family: MIT - size: 5994417 - timestamp: 1710601046564 + size: 6082763 + timestamp: 1712000953476 - kind: conda name: ruff - version: 0.3.3 + version: 0.3.5 build: py312h60fbdae_0 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.3-py312h60fbdae_0.conda - sha256: 235d7acc983b7a0d2270d66f22c0cd2c1b39476cc4109e34eeadcc2447f64834 - md5: 4cc4c4c527c5772869bba4c0eedfe99c + url: https://conda.anaconda.org/conda-forge/win-64/ruff-0.3.5-py312h60fbdae_0.conda + sha256: e8deef5c04d74900702a959ce9260ab69e48e6c5a59326ae947b679990524c7d + md5: 2351d21767e094ae4ed4cd69c63fca48 depends: - python >=3.12,<3.13.0a0 - python_abi 3.12.* *_cp312 @@ -30883,16 +31053,16 @@ packages: - vc14_runtime >=14.29.30139 license: MIT license_family: MIT - size: 6135990 - timestamp: 1710601570375 + size: 6251931 + timestamp: 1712001041025 - kind: conda name: ruff - version: 0.3.3 + version: 0.3.5 build: py312h9118e91_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.3-py312h9118e91_0.conda - sha256: e6175ba4e0c0a3d5f514b4fd22c32e268dd5928e35331ec046790b756029e44d - md5: 6c70db4a8dd07b39042fb0e521b1faba + url: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.3.5-py312h9118e91_0.conda + sha256: fe8320ae9f369adb60990ab5e2d55246be58b1bb569f6753f8e566e958fc5475 + md5: a02f3dd98086ac515702e68e7fb88f62 depends: - libgcc-ng >=12 - libstdcxx-ng >=12 @@ -30900,23 +31070,23 @@ packages: - python_abi 3.12.* *_cp312 license: MIT license_family: MIT - size: 6201759 - timestamp: 1710600319419 + size: 6285718 + timestamp: 1711999610306 - kind: conda name: s2n - version: 1.4.7 + version: 1.4.8 build: h06160fa_0 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.7-h06160fa_0.conda - sha256: c46f77d6280f2f22e7c63b160c9177627278056742370f8aec7aeb1b3c5393a9 - md5: bd39dff72c2daebd9b38c5a27b3ad207 + url: https://conda.anaconda.org/conda-forge/linux-64/s2n-1.4.8-h06160fa_0.conda + sha256: 1068495f0f8f8b999dda339429dfaf5a8bd2e7a25bb386b6c39fd33ba01753fd + md5: 0240a49dffea6daea27aa388663edcab depends: - libgcc-ng >=12 - openssl >=3.2.1,<4.0a0 license: Apache-2.0 license_family: Apache - size: 339411 - timestamp: 1710451148936 + size: 340708 + timestamp: 1710939097247 - kind: conda name: scikit-learn version: 1.4.1.post1 @@ -32490,30 +32660,31 @@ packages: timestamp: 1710262943966 - kind: conda name: threadpoolctl - version: 3.3.0 + version: 3.4.0 build: pyhc1e730c_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.3.0-pyhc1e730c_0.conda - sha256: 5ba8bd3f2d49b3b860eb4481ca9505c57d4427212eb12cadd2b351309d5c28e6 - md5: 698d2d2b621640bddb9191f132967c9f + url: https://conda.anaconda.org/conda-forge/noarch/threadpoolctl-3.4.0-pyhc1e730c_0.conda + sha256: 4f4ad4f2a4ee8875cf2cb9c80abf4c7383e5e53cfec41104da7058569d9063b7 + md5: b296278eef667c673bf51de6535bad88 depends: - python >=3.8 license: BSD-3-Clause license_family: BSD - size: 22707 - timestamp: 1707930691866 + size: 23032 + timestamp: 1710943698793 - kind: conda name: tiledb - version: 2.20.1 - build: h3b251c8_4 - build_number: 4 - subdir: osx-arm64 - url: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.20.1-h3b251c8_4.conda - sha256: b535887c37ba0434e899abeb85c97978edbccd332bd0f195add4600344f1c60d - md5: 9014cda1a0d8ea01407fbf8ae53ddb4e + version: 2.21.1 + build: h0d80af6_1 + build_number: 1 + subdir: osx-64 + url: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.21.1-h0d80af6_1.conda + sha256: 2368f0d93fab2d1206a9575e2c930f884968f16e0a8069fbb0e88fb9bf6b7568 + md5: 238c63dbc6c0ad46c0b17e34812503bd depends: - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - __osx >=10.13 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - aws-sdk-cpp >=1.11.267,<1.11.268.0a0 - azure-core-cpp >=1.11.1,<1.11.2.0a0 - azure-storage-blobs-cpp >=12.10.0,<12.10.1.0a0 @@ -32522,7 +32693,7 @@ packages: - fmt >=10.2.1,<11.0a0 - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libcurl >=8.5.0,<9.0a0 + - libcurl >=8.6.0,<9.0a0 - libcxx >=16 - libgoogle-cloud >=2.22.0,<2.23.0a0 - libgoogle-cloud-storage >=2.22.0,<2.23.0a0 @@ -32533,19 +32704,19 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 3657633 - timestamp: 1710346154820 + size: 4159301 + timestamp: 1711295363664 - kind: conda name: tiledb - version: 2.20.1 - build: h8e6c834_4 - build_number: 4 + version: 2.21.1 + build: h25b666a_1 + build_number: 1 subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.20.1-h8e6c834_4.conda - sha256: 7fbe54fe814ba57686f7e99d31a795a4897facdb945b5f5a1a4cac5552c358af - md5: aeb9dbf276abe8c1c8a0ef88a0e07efe + url: https://conda.anaconda.org/conda-forge/win-64/tiledb-2.21.1-h25b666a_1.conda + sha256: 34b0a0ea6b07f4f152d7a22c69a2f4780a57c11be93d2f5818e3243e30a51889 + md5: 39170998eb988862a3cb234e1f385fcf depends: - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - aws-sdk-cpp >=1.11.267,<1.11.268.0a0 - azure-core-cpp >=1.11.1,<1.11.2.0a0 - azure-storage-blobs-cpp >=12.10.0,<12.10.1.0a0 @@ -32555,7 +32726,7 @@ packages: - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - libcrc32c >=1.1.2,<1.2.0a0 - - libcurl >=8.5.0,<9.0a0 + - libcurl >=8.6.0,<9.0a0 - libgoogle-cloud >=2.22.0,<2.23.0a0 - libgoogle-cloud-storage >=2.22.0,<2.23.0a0 - libzlib >=1.2.13,<1.3.0a0 @@ -32568,19 +32739,19 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 3286161 - timestamp: 1710344953424 + size: 3334501 + timestamp: 1711294902803 - kind: conda name: tiledb - version: 2.20.1 - build: h99d63bd_4 - build_number: 4 + version: 2.21.1 + build: ha9641ad_1 + build_number: 1 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.20.1-h99d63bd_4.conda - sha256: abb2f784f8b82767f783c074103364d7f2c419b2ba668fb60dfa53bb931f7567 - md5: 94d50e1c7c46b7157ad7a46afad1b9a0 + url: https://conda.anaconda.org/conda-forge/linux-64/tiledb-2.21.1-ha9641ad_1.conda + sha256: 7f5ee10edebe594158d935adc89c5c12f2cf4ba28a2a7ccba4dab3b9953de43c + md5: 0453962dfed0265093929b52f885b190 depends: - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - aws-sdk-cpp >=1.11.267,<1.11.268.0a0 - azure-core-cpp >=1.11.1,<1.11.2.0a0 - azure-storage-blobs-cpp >=12.10.0,<12.10.1.0a0 @@ -32589,7 +32760,7 @@ packages: - fmt >=10.2.1,<11.0a0 - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libcurl >=8.5.0,<9.0a0 + - libcurl >=8.6.0,<9.0a0 - libgcc-ng >=12 - libgoogle-cloud >=2.22.0,<2.23.0a0 - libgoogle-cloud-storage >=2.22.0,<2.23.0a0 @@ -32601,20 +32772,19 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 4582713 - timestamp: 1710344732755 + size: 4677029 + timestamp: 1711294421001 - kind: conda name: tiledb - version: 2.20.1 - build: he1859ca_4 - build_number: 4 - subdir: osx-64 - url: https://conda.anaconda.org/conda-forge/osx-64/tiledb-2.20.1-he1859ca_4.conda - sha256: d8e18f6743032419d47119685b175293dc0e39ad1bbb44cb14f7512e69895014 - md5: 70b68c15f6aaba03edc12aa5d48d9e9a + version: 2.21.1 + build: hbfef6ee_1 + build_number: 1 + subdir: osx-arm64 + url: https://conda.anaconda.org/conda-forge/osx-arm64/tiledb-2.21.1-hbfef6ee_1.conda + sha256: 00bea8634468cd45b0855a376d1f0927ea4cdc860fdaae6af9bc912e92511d4e + md5: 8559b34c7ba8001f5ba173d129683be1 depends: - - __osx >=10.13 - - aws-crt-cpp >=0.26.3,<0.26.4.0a0 + - aws-crt-cpp >=0.26.4,<0.26.5.0a0 - aws-sdk-cpp >=1.11.267,<1.11.268.0a0 - azure-core-cpp >=1.11.1,<1.11.2.0a0 - azure-storage-blobs-cpp >=12.10.0,<12.10.1.0a0 @@ -32623,7 +32793,7 @@ packages: - fmt >=10.2.1,<11.0a0 - libabseil * cxx17* - libabseil >=20240116.1,<20240117.0a0 - - libcurl >=8.5.0,<9.0a0 + - libcurl >=8.6.0,<9.0a0 - libcxx >=16 - libgoogle-cloud >=2.22.0,<2.23.0a0 - libgoogle-cloud-storage >=2.22.0,<2.23.0a0 @@ -32634,8 +32804,8 @@ packages: - zstd >=1.5.5,<1.6.0a0 license: MIT license_family: MIT - size: 4103043 - timestamp: 1710364045232 + size: 3704649 + timestamp: 1711295284758 - kind: conda name: tinycss2 version: 1.2.1 @@ -32987,19 +33157,19 @@ packages: timestamp: 1710254564088 - kind: conda name: trove-classifiers - version: 2024.3.3 + version: 2024.3.25 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.3-pyhd8ed1ab_0.conda - sha256: 4eb751b0a79f28e62657b6e1c751a0af78b78ea858d223c3b7b03ea11a89a144 - md5: 8ea774e1b108dc9a1a8358a483b4cc6d + url: https://conda.anaconda.org/conda-forge/noarch/trove-classifiers-2024.3.25-pyhd8ed1ab_0.conda + sha256: 909b4288bd2be8566f6d0a311d75a7e0e1cf81c42c19c97b1fc7d043c3db3301 + md5: e565e537d9760fc5d6d02ae4521a144b depends: - python >=3.7 license: Apache-2.0 license_family: Apache - size: 18266 - timestamp: 1709548253641 + size: 18393 + timestamp: 1711440195159 - kind: conda name: twine version: 5.0.0 @@ -33026,14 +33196,13 @@ packages: timestamp: 1707690947551 - kind: conda name: typeguard - version: 4.1.5 - build: pyhd8ed1ab_1 - build_number: 1 + version: 4.2.1 + build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.1.5-pyhd8ed1ab_1.conda - sha256: df63f90625d2eaefcb6990437b941c1c90ec3c224bc65a2becac928542d0aa5f - md5: 59d22e0ca481b057b94d54fc9ebacb13 + url: https://conda.anaconda.org/conda-forge/noarch/typeguard-4.2.1-pyhd8ed1ab_0.conda + sha256: dd140e850215c729a50cbface4a1fc640dcc91f8da43ce467977a298c4dfe89a + md5: 47102c2390ebdc73a8a1843e77dab61e depends: - importlib_metadata >=3.6 - python >=3.8 @@ -33042,8 +33211,8 @@ packages: - pytest >=7 license: MIT license_family: MIT - size: 33753 - timestamp: 1698176750792 + size: 34007 + timestamp: 1711272969310 - kind: conda name: types-python-dateutil version: 2.9.0.20240316 @@ -33202,22 +33371,22 @@ packages: - kind: conda name: ucx version: 1.15.0 - build: h11edf95_7 - build_number: 7 + build: ha691c75_8 + build_number: 8 subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-h11edf95_7.conda - sha256: 3e381ec5918045a43e0f349214a4d38e53990897ba07a6abf025f9e0156acaf2 - md5: 20a94f617ad76922f8737ad1fe317f4d + url: https://conda.anaconda.org/conda-forge/linux-64/ucx-1.15.0-ha691c75_8.conda + sha256: 85b40ac6607c9e4e32bcb13e95da41ff48a10f813df0c1e74ff32412e1f7da35 + md5: 3f9bc6137b240642504a6c9b07a10c25 depends: - libgcc-ng >=12 - libstdcxx-ng >=12 - - rdma-core >=50.0 + - rdma-core >=51.0 constrains: - cuda-version >=11.2,<12 license: BSD-3-Clause license_family: BSD - size: 6847943 - timestamp: 1710357262334 + size: 6842006 + timestamp: 1712025621683 - kind: conda name: ukkonen version: 1.0.1 @@ -33649,19 +33818,20 @@ packages: timestamp: 1701630814576 - kind: conda name: wheel - version: 0.42.0 - build: pyhd8ed1ab_0 + version: 0.43.0 + build: pyhd8ed1ab_1 + build_number: 1 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.42.0-pyhd8ed1ab_0.conda - sha256: 80be0ccc815ce22f80c141013302839b0ed938a2edb50b846cf48d8a8c1cfa01 - md5: 1cdea58981c5cbc17b51973bcaddcea7 + url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda + sha256: cb318f066afd6fd64619f14c030569faf3f53e6f50abf743b4c865e7d95b96bc + md5: 0b5293a157c2b5cd513dd1b03d8d3aae depends: - - python >=3.7 + - python >=3.8 license: MIT license_family: MIT - size: 57553 - timestamp: 1701013309664 + size: 57963 + timestamp: 1711546009410 - kind: conda name: win_inet_pton version: 1.1.0 @@ -33889,13 +34059,13 @@ packages: timestamp: 1699533495284 - kind: conda name: xarray - version: 2024.2.0 + version: 2024.3.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.2.0-pyhd8ed1ab_0.conda - sha256: 4b0a8143f5c501246214823fe543e9d0749c950fdbdd39de6d8cd6209da2259f - md5: 8e25aab3323476d4fd0b5f6bad05d403 + url: https://conda.anaconda.org/conda-forge/noarch/xarray-2024.3.0-pyhd8ed1ab_0.conda + sha256: 74e4cea340517ce7c51c36efc1d544d3a98fcdb62a429b6b1a59a1917b412c10 + md5: 772d7ee42b65d0840130eabd5bd3fc17 depends: - numpy >=1.23 - packaging >=22 @@ -33903,29 +34073,29 @@ packages: - python >=3.9 constrains: - bottleneck >=1.3 - - h5py >=3.6 + - sparse >=0.13 + - nc-time-axis >=1.4 + - scipy >=1.8 - zarr >=2.12 + - flox >=0.5 + - netcdf4 >=1.6.0 + - cartopy >=0.20 - h5netcdf >=1.0 + - dask-core >=2022.7 - cftime >=1.6 - - distributed >=2022.7 - - matplotlib-base >=3.5 - - flox >=0.5 - numba >=0.55 - - scipy >=1.8 - - nc-time-axis >=1.4 - - pint >=0.19 - - toolz >=0.12 - - netcdf4 >=1.6.0 - - seaborn >=0.11 - hdf5 >=1.12 - - dask-core >=2022.7 - - sparse >=0.13 - - cartopy >=0.20 - iris >=3.2 + - toolz >=0.12 + - h5py >=3.6 + - distributed >=2022.7 + - matplotlib-base >=3.5 + - seaborn >=0.11 + - pint >=0.19 license: Apache-2.0 license_family: APACHE - size: 741597 - timestamp: 1708349308763 + size: 765419 + timestamp: 1711742257463 - kind: conda name: xcb-util version: 0.4.0 From 5ae71c28be363107b99147fd06a828dc2cb084a0 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Wed, 3 Apr 2024 11:12:24 +0200 Subject: [PATCH 027/158] CompatHelper: Don't bump equality constraints (#1345) This will avoid unwanted CompatHelper PRs like https://github.com/Deltares/Ribasim/pull/1342. --- .github/workflows/core_compat_helper.yml | 7 +++++-- core/Project.toml | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/core_compat_helper.yml b/.github/workflows/core_compat_helper.yml index ac35110da..bd8575361 100644 --- a/.github/workflows/core_compat_helper.yml +++ b/.github/workflows/core_compat_helper.yml @@ -17,7 +17,7 @@ jobs: - name: Install Julia, but only if it is not already available in the PATH uses: julia-actions/setup-julia@v1 with: - version: '1' + version: "1" arch: ${{ runner.arch }} if: steps.julia_in_path.outcome != 'success' - name: "Add the General registry via Git" @@ -37,7 +37,10 @@ jobs: - name: "Run CompatHelper" run: | import CompatHelper - CompatHelper.main(; subdirs=["core"]) + CompatHelper.main(; + subdirs=["core"], + bump_compat_containing_equality_specifier=false, + ) shell: julia --color=yes {0} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/core/Project.toml b/core/Project.toml index a268ed876..99f416650 100644 --- a/core/Project.toml +++ b/core/Project.toml @@ -82,7 +82,7 @@ TOML = "<0.0.1,1" Tables = "1" TerminalLoggers = "0.1.7" Test = "<0.0.1,1" -TimeZones = "=1.14.0, 1" +TimeZones = "=1.14.0" TimerOutputs = "0.5" TranscodingStreams = "0.9,0.10" julia = "1.10" From 4cbd796c3e69713e186bbd6f059d0b8cf98937f5 Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Wed, 3 Apr 2024 14:59:03 +0200 Subject: [PATCH 028/158] Fix allocation arrow bug (#1347) Fixes https://github.com/Deltares/Ribasim/issues/1321. There was indeed a bug for the `demand` column, but the `realized` column is correct since that one is cumulative over all priorities. --- core/src/allocation_optim.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index 2d6cf45b1..5965298ea 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -758,7 +758,7 @@ function save_demands_and_allocations!( if node_id.type == NodeType.UserDemand has_demand = true user_demand_idx = findsorted(user_demand.node_id, node_id) - demand = user_demand.demand[user_demand_idx] + demand = get_user_demand(p, node_id, priority_idx; reduced = false) allocated = user_demand.allocated[user_demand_idx][priority_idx] #NOTE: instantaneous realized = get_flow(graph, inflow_id(graph, node_id), node_id, 0) From 7bb354fdfc0961bfa5273a26f9caf833eba080e1 Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 4 Apr 2024 09:53:34 +0200 Subject: [PATCH 029/158] Simplify sparsity.jl (#1349) Fixes https://github.com/Deltares/Ribasim/issues/1317. Obtaining the Jacobian takes a coarser (with some false positives) but easier to maintain approach. Special care must still be taken with e.g. continuous control concepts, where basins that are further apart (topologically) than 1 node can depend on each other. This does not fix all stability problems in the model by @harm-nomden-sweco, but achieves the same progress as before without the requirement `sparse = false`. --- core/src/sparsity.jl | 183 ++++++---------------------------------- core/test/utils_test.jl | 6 +- 2 files changed, 30 insertions(+), 159 deletions(-) diff --git a/core/src/sparsity.jl b/core/src/sparsity.jl index a1be7b2e6..6493bee60 100644 --- a/core/src/sparsity.jl +++ b/core/src/sparsity.jl @@ -1,5 +1,5 @@ """ -Get a sparse matrix whose sparsity matches the sparsity of the Jacobian +Get a sparse matrix whose sparsity matches (with some false positives) the sparsity of the Jacobian of the ODE problem. All nodes are taken into consideration, also the ones that are inactive. @@ -11,124 +11,35 @@ from the naming convention of this sparsity structure in the differentialequations.jl docs. """ function get_jac_prototype(p::Parameters)::SparseMatrixCSC{Float64, Int64} - (; basin, pid_control) = p + (; basin, pid_control, graph) = p n_basins = length(basin.node_id) n_states = n_basins + length(pid_control.node_id) jac_prototype = spzeros(n_states, n_states) - for nodefield in nodefields(p) - update_jac_prototype!(jac_prototype, p, getfield(p, nodefield)) - end - + update_jac_prototype!(jac_prototype, basin, graph) + update_jac_prototype!(jac_prototype, pid_control, basin, graph) return jac_prototype end """ -If both the unique node upstream and the unique node downstream of these -nodes are basins, then these directly depend on eachother and affect the Jacobian 2x -Basins always depend on themselves. -""" -function update_jac_prototype!( - jac_prototype::SparseMatrixCSC{Float64, Int64}, - p::Parameters, - node::Union{LinearResistance, ManningResistance}, -)::Nothing - (; basin, graph) = p - - for id in node.node_id - id_in = inflow_id(graph, id) - id_out = outflow_id(graph, id) - - has_index_in, idx_in = id_index(basin.node_id, id_in) - has_index_out, idx_out = id_index(basin.node_id, id_out) - - if has_index_in - jac_prototype[idx_in, idx_in] = 1.0 - end - - if has_index_out - jac_prototype[idx_out, idx_out] = 1.0 - end - - if has_index_in && has_index_out - jac_prototype[idx_in, idx_out] = 1.0 - jac_prototype[idx_out, idx_in] = 1.0 - end - end - return nothing -end - -""" -Method for nodes that do not contribute to the Jacobian -""" -function update_jac_prototype!( - jac_prototype::SparseMatrixCSC{Float64, Int64}, - p::Parameters, - node::AbstractParameterNode, -)::Nothing - node_type = nameof(typeof(node)) - - if !isa( - node, - Union{ - Basin, - DiscreteControl, - FlowBoundary, - FractionalFlow, - LevelBoundary, - Terminal, - }, - ) - error( - "It is not specified how nodes of type $node_type contribute to the Jacobian prototype.", - ) - end - return nothing -end - -""" -If both the unique node upstream and the nodes down stream (or one node further -if a fractional flow is in between) are basins, then the downstream basin depends -on the upstream basin(s) and affect the Jacobian as many times as there are downstream basins -Upstream basins always depend on themselves. +Add nonzeros for basins connected to eachother via 1 node and possibly a fractional flow node +Basins are also assumed to depend on themselves (main diagonal terms) """ function update_jac_prototype!( jac_prototype::SparseMatrixCSC{Float64, Int64}, - p::Parameters, - node::Union{Pump, Outlet, TabulatedRatingCurve, UserDemand}, + basin::Basin, + graph::MetaGraph, )::Nothing - (; basin, fractional_flow, graph) = p - - for (i, id) in enumerate(node.node_id) - id_in = inflow_id(graph, id) - - if hasfield(typeof(node), :is_pid_controlled) && node.is_pid_controlled[i] - continue - end - - # For inneighbors only directly connected basins give a contribution - has_index_in, idx_in = id_index(basin.node_id, id_in) - - # For outneighbors there can be directly connected basins - # or basins connected via a fractional flow - # (but not both at the same time!) - if has_index_in - jac_prototype[idx_in, idx_in] = 1.0 - - _, basin_idxs_out, has_fractional_flow_outneighbors = - get_fractional_flow_connected_basins(id, basin, fractional_flow, graph) - - if !has_fractional_flow_outneighbors - id_out = outflow_id(graph, id) - has_index_out, idx_out = id_index(basin.node_id, id_out) - - if has_index_out - jac_prototype[idx_in, idx_out] = 1.0 + for (idx_1, id) in enumerate(basin.node_id) + for id_neighbor in inoutflow_ids(graph, id) + for id_neighbor_neighbor in inoutflow_ids(graph, id_neighbor) + if id_neighbor_neighbor.type == NodeType.FractionalFlow + id_neighbor_neighbor = outflow_id(graph, id_neighbor_neighbor) end - else - for idx_out in basin_idxs_out - jac_prototype[idx_in, idx_out] = 1.0 + if id_neighbor_neighbor.type == NodeType.Basin + _, idx_2 = id_index(basin.node_id, id_neighbor_neighbor) + jac_prototype[idx_1, idx_2] = 1.0 end end end @@ -137,62 +48,22 @@ function update_jac_prototype!( end """ -The controlled basin affects itself and the basins upstream and downstream of the controlled pump -affect eachother if there is a basin upstream of the pump. The state for the integral term -and the controlled basin affect eachother, and the same for the integral state and the basin -upstream of the pump if it is indeed a basin. +Add nonzeros for the integral term and the basins on either side of the controlled node """ function update_jac_prototype!( jac_prototype::SparseMatrixCSC{Float64, Int64}, - p::Parameters, - node::PidControl, + pid_control::PidControl, + basin::Basin, + graph::MetaGraph, )::Nothing - (; basin, graph, pump) = p - - n_basins = length(basin.node_id) - - for i in eachindex(node.node_id) - listen_node_id = node.listen_node_id[i] - id = node.node_id[i] - - # ID of controlled pump/outlet + for (i, id) in enumerate(pid_control.node_id) + idx_integral = length(basin.node_id) + i id_controlled = only(outneighbor_labels_type(graph, id, EdgeType.control)) - - _, listen_idx = id_index(basin.node_id, listen_node_id) - - # Controlled basin affects itself - jac_prototype[listen_idx, listen_idx] = 1.0 - - # PID control integral state - pid_state_idx = n_basins + i - jac_prototype[listen_idx, pid_state_idx] = 1.0 - jac_prototype[pid_state_idx, listen_idx] = 1.0 - - if id_controlled in pump.node_id - id_pump_out = inflow_id(graph, id_controlled) - - # The basin downstream of the pump - has_index, idx_out_out = id_index(basin.node_id, id_pump_out) - - if has_index - # The basin downstream of the pump depends on PID control integral state - jac_prototype[pid_state_idx, idx_out_out] = 1.0 - - # The basin downstream of the pump also depends on the controlled basin - jac_prototype[listen_idx, idx_out_out] = 1.0 - end - else - id_outlet_in = outflow_id(graph, id_controlled) - - # The basin upstream of the outlet - has_index, idx_out_in = id_index(basin.node_id, id_outlet_in) - - if has_index - # The basin upstream of the outlet depends on the PID control integral state - jac_prototype[pid_state_idx, idx_out_in] = 1.0 - - # The basin upstream of the outlet also depends on the controlled basin - jac_prototype[listen_idx, idx_out_in] = 1.0 + for id_basin in inoutflow_ids(graph, id_controlled) + if id_basin.type == NodeType.Basin + _, idx_basin = id_index(basin.node_id, id_basin) + jac_prototype[idx_basin, idx_integral] = 1.0 + jac_prototype[idx_integral, idx_basin] = 1.0 end end end diff --git a/core/test/utils_test.jl b/core/test/utils_test.jl index c5e4d7af3..822164322 100644 --- a/core/test/utils_test.jl +++ b/core/test/utils_test.jl @@ -209,9 +209,9 @@ end @test jac_prototype.m == 4 @test jac_prototype.n == 4 - @test jac_prototype.colptr == [1, 3, 5, 7, 10] - @test jac_prototype.rowval == [1, 2, 1, 2, 2, 3, 2, 3, 4] - @test jac_prototype.nzval == ones(9) + @test jac_prototype.colptr == [1, 3, 5, 8, 11] + @test jac_prototype.rowval == [1, 2, 1, 2, 2, 3, 4, 2, 3, 4] + @test jac_prototype.nzval == ones(10) toml_path = normpath(@__DIR__, "../../generated_testmodels/pid_control/ribasim.toml") From 92b27066d7e9b8e52f679232b721ad1dd3ec7180 Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Thu, 4 Apr 2024 16:55:43 +0200 Subject: [PATCH 030/158] Support specifying coordinate reference system (CRS) of geometries (#1339) Fixes https://github.com/Deltares/Ribasim/issues/1254 Breaking changes: - Adds new required TOML key "crs" - Adds new required `Model` parameter "crs" Note: we could avoid adding the TOML key by requiring `Model.read` to take `crs` as parameter. Not sure if that's an improvment though. --------- Co-authored-by: Martijn Visser --- core/src/config.jl | 1 + core/test/data/config_test.toml | 1 + .../data/logging_test_loglevel_debug.toml | 1 + core/test/data/logging_test_no_loglevel.toml | 1 + core/test/docs.toml | 5 ++ core/test/io_test.jl | 3 ++ docs/python/examples.ipynb | 19 ++----- python/ribasim/ribasim/geometry/edge.py | 16 ++---- python/ribasim/ribasim/input_base.py | 29 +++-------- python/ribasim/ribasim/model.py | 33 ++++++++---- python/ribasim/tests/test_io.py | 6 ++- python/ribasim/tests/test_model.py | 15 +++++- .../ribasim_testmodels/allocation.py | 10 ++++ .../ribasim_testmodels/backwater.py | 1 + .../ribasim_testmodels/basic.py | 3 ++ .../ribasim_testmodels/bucket.py | 2 + .../ribasim_testmodels/discrete_control.py | 5 ++ .../ribasim_testmodels/dutch_waterways.py | 52 +++++++++++-------- .../ribasim_testmodels/equations.py | 7 ++- .../ribasim_testmodels/invalid.py | 4 ++ .../ribasim_testmodels/pid_control.py | 2 + .../ribasim_testmodels/time.py | 1 + .../ribasim_testmodels/trivial.py | 1 + .../ribasim_testmodels/two_basin.py | 2 +- 24 files changed, 136 insertions(+), 84 deletions(-) diff --git a/core/src/config.jl b/core/src/config.jl index 4099fb7c1..07c9aa78c 100644 --- a/core/src/config.jl +++ b/core/src/config.jl @@ -120,6 +120,7 @@ end @option @addnodetypes struct Toml <: TableOption starttime::DateTime endtime::DateTime + crs::String ribasim_version::String input_dir::String results_dir::String diff --git a/core/test/data/config_test.toml b/core/test/data/config_test.toml index 10a24d614..5172e746d 100644 --- a/core/test/data/config_test.toml +++ b/core/test/data/config_test.toml @@ -1,5 +1,6 @@ starttime = 2019-01-01 endtime = 2019-12-31 +crs = "EPSG:28992" input_dir = "../../generated_testmodels/lhm" results_dir = "../../generated_testmodels/lhm" ribasim_version = "2024.6.1" diff --git a/core/test/data/logging_test_loglevel_debug.toml b/core/test/data/logging_test_loglevel_debug.toml index d3af856f6..19de40d72 100644 --- a/core/test/data/logging_test_loglevel_debug.toml +++ b/core/test/data/logging_test_loglevel_debug.toml @@ -1,5 +1,6 @@ starttime = 2019-01-01 endtime = 2019-12-31 +crs = "EPSG:28992" input_dir = "." results_dir = "results" ribasim_version = "2024.6.1" diff --git a/core/test/data/logging_test_no_loglevel.toml b/core/test/data/logging_test_no_loglevel.toml index c854a8cb6..6fba3712a 100644 --- a/core/test/data/logging_test_no_loglevel.toml +++ b/core/test/data/logging_test_no_loglevel.toml @@ -1,5 +1,6 @@ starttime = 2019-01-01 endtime = 2019-12-31 +crs = "EPSG:28992" input_dir = "." results_dir = "results" ribasim_version = "2024.6.1" diff --git a/core/test/docs.toml b/core/test/docs.toml index b8bb8b066..9cd0e31fc 100644 --- a/core/test/docs.toml +++ b/core/test/docs.toml @@ -3,6 +3,11 @@ starttime = 2019-01-01 # required endtime = 2021-01-01 # required +# Coordinate Reference System +# The accepted strings are documented here: +# https://proj.org/en/9.4/development/reference/functions.html#c.proj_create +crs = "EPSG:4326" # required + # input files input_dir = "." # required results_dir = "results" # required diff --git a/core/test/io_test.jl b/core/test/io_test.jl index e113b5ccc..1de92e5db 100644 --- a/core/test/io_test.jl +++ b/core/test/io_test.jl @@ -8,6 +8,7 @@ database = "path/to/file", input_dir = ".", results_dir = "results", + crs = "EPSG:28992", ribasim_version = string(Ribasim.pkgversion(Ribasim)), ) config = Ribasim.Config(toml, "model") @@ -21,6 +22,7 @@ database = "path/to/file", input_dir = "input", results_dir = "results", + crs = "EPSG:28992", ribasim_version = string(Ribasim.pkgversion(Ribasim)), ) config = Ribasim.Config(toml, "model") @@ -34,6 +36,7 @@ database = "/path/to/file", input_dir = ".", results_dir = "results", + crs = "EPSG:28992", ribasim_version = string(Ribasim.pkgversion(Ribasim)), ) config = Ribasim.Config(toml) diff --git a/docs/python/examples.ipynb b/docs/python/examples.ipynb index 4908afb22..27f3e3727 100644 --- a/docs/python/examples.ipynb +++ b/docs/python/examples.ipynb @@ -76,7 +76,7 @@ "metadata": {}, "outputs": [], "source": [ - "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\")" + "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\", crs=\"EPSG:4326\")" ] }, { @@ -457,7 +457,7 @@ "metadata": {}, "outputs": [], "source": [ - "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\")" + "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\", crs=\"EPSG:4326\")" ] }, { @@ -771,10 +771,7 @@ "metadata": {}, "outputs": [], "source": [ - "model = Model(\n", - " starttime=\"2020-01-01\",\n", - " endtime=\"2020-12-01\",\n", - ")" + "model = Model(starttime=\"2020-01-01\", endtime=\"2020-12-01\", crs=\"EPSG:4326\")" ] }, { @@ -1037,10 +1034,7 @@ "metadata": {}, "outputs": [], "source": [ - "model = Model(\n", - " starttime=\"2020-01-01\",\n", - " endtime=\"2020-01-20\",\n", - ")" + "model = Model(starttime=\"2020-01-01\", endtime=\"2020-01-20\", crs=\"EPSG:4326\")" ] }, { @@ -1430,10 +1424,7 @@ "metadata": {}, "outputs": [], "source": [ - "model = Model(\n", - " starttime=\"2020-01-01\",\n", - " endtime=\"2020-02-01\",\n", - ")" + "model = Model(starttime=\"2020-01-01\", endtime=\"2020-02-01\", crs=\"EPSG:4326\")" ] }, { diff --git a/python/ribasim/ribasim/geometry/edge.py b/python/ribasim/ribasim/geometry/edge.py index c6199dbaf..760055d7e 100644 --- a/python/ribasim/ribasim/geometry/edge.py +++ b/python/ribasim/ribasim/geometry/edge.py @@ -10,7 +10,6 @@ from pandera.dtypes import Int32 from pandera.typing import Series from pandera.typing.geopandas import GeoDataFrame, GeoSeries -from pydantic import model_validator from shapely.geometry import LineString, MultiLineString, Point from ribasim.input_base import SpatialTableModel @@ -45,13 +44,6 @@ class Config: class EdgeTable(SpatialTableModel[EdgeSchema]): """Defines the connections between nodes.""" - @model_validator(mode="after") - def empty_table(self) -> "EdgeTable": - if self.df is None: - self.df = GeoDataFrame[EdgeSchema]() - self.df.set_geometry("geometry", inplace=True) - return self - def add( self, from_node: NodeData, @@ -68,6 +60,8 @@ def add( edge_type = ( "control" if from_node.node_type in SPATIALCONTROLNODETYPES else "flow" ) + assert self.df is not None + table_to_append = GeoDataFrame[EdgeSchema]( data={ "from_node_type": pd.Series([from_node.node_type], dtype=str), @@ -79,12 +73,10 @@ def add( "subnetwork_id": pd.Series([subnetwork_id], dtype=pd.Int32Dtype()), }, geometry=geometry_to_append, + crs=self.df.crs, ) - if self.df is None: - self.df = table_to_append - else: - self.df = GeoDataFrame[EdgeSchema](pd.concat([self.df, table_to_append])) + self.df = GeoDataFrame[EdgeSchema](pd.concat([self.df, table_to_append])) def get_where_edge_type(self, edge_type: str) -> NDArray[np.bool_]: assert self.df is not None diff --git a/python/ribasim/ribasim/input_base.py b/python/ribasim/ribasim/input_base.py index 99a5ec1b3..8f57e6067 100644 --- a/python/ribasim/ribasim/input_base.py +++ b/python/ribasim/ribasim/input_base.py @@ -1,5 +1,4 @@ import re -import warnings from abc import ABC, abstractmethod from collections.abc import Callable, Generator from contextlib import closing @@ -39,7 +38,6 @@ delimiter = " / " gpd.options.io_engine = "pyogrio" -warnings.filterwarnings("ignore", category=UserWarning, module="pyogrio") context_file_loading: ContextVar[dict[str, Any]] = ContextVar( "file_loading", default={} @@ -134,15 +132,6 @@ def set_filepath(self, filepath: Path) -> None: self.filepath = filepath self.model_config["validate_assignment"] = True - @abstractmethod - def _save(self, directory: DirectoryPath, input_dir: DirectoryPath) -> None: - """Save this instance to disk. - - This method needs to be implemented by any class deriving from - FileModel. - """ - raise NotImplementedError() - @classmethod @abstractmethod def _load(cls, filepath: Path | None) -> dict[str, Any]: @@ -227,11 +216,7 @@ def _load(cls, filepath: Path | None) -> dict[str, Any]: else: return {} - def _save( - self, - directory: DirectoryPath, - input_dir: DirectoryPath, - ) -> None: + def _save(self, directory: DirectoryPath, input_dir: DirectoryPath) -> None: # TODO directory could be used to save an arrow file db_path = context_file_loading.get().get("database") if self.filepath is not None: @@ -239,9 +224,9 @@ def _save( self._write_arrow(self.filepath, directory, input_dir) elif db_path is not None: self.sort() - self._write_table(db_path) + self._write_geopackage(db_path) - def _write_table(self, temp_path: Path) -> None: + def _write_geopackage(self, temp_path: Path) -> None: """ Write the contents of the input to a database. @@ -366,16 +351,16 @@ def _from_db(cls, path: Path, table: str): return df - def _write_table(self, path: Path) -> None: + def _write_geopackage(self, path: Path) -> None: """ - Write the contents of the input to a database. + Write the contents of the input to the GeoPackage. Parameters ---------- path : Path """ assert self.df is not None - self.df.to_file(path, layer=self.tablename(), driver="GPKG", mode="a") + self.df.to_file(path, layer=self.tablename(), driver="GPKG") class ChildModel(BaseModel): @@ -436,7 +421,7 @@ def node_ids(self) -> set[int]: node_ids.update(table.node_ids()) return node_ids - def _save(self, directory: DirectoryPath, input_dir: DirectoryPath, **kwargs): + def _save(self, directory: DirectoryPath, input_dir: DirectoryPath): for table in self._tables(): table._save(directory, input_dir) diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index 523eb9316..ccca20892 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -9,6 +9,7 @@ import tomli import tomli_w from matplotlib import pyplot as plt +from pandera.typing.geopandas import GeoDataFrame from pydantic import ( DirectoryPath, Field, @@ -39,11 +40,12 @@ Terminal, UserDemand, ) -from ribasim.geometry.edge import EdgeTable +from ribasim.geometry.edge import EdgeSchema, EdgeTable from ribasim.geometry.node import NodeTable from ribasim.input_base import ( ChildModel, FileModel, + SpatialTableModel, context_file_loading, ) from ribasim.utils import MissingOptionalModule @@ -57,6 +59,7 @@ class Model(FileModel): starttime: datetime.datetime endtime: datetime.datetime + crs: str input_dir: Path = Field(default=Path(".")) results_dir: Path = Field(default=Path("results")) @@ -97,6 +100,13 @@ def set_node_parent(self) -> "Model": setattr(v, "_parent_field", k) return self + @model_validator(mode="after") + def ensure_edge_table_is_present(self) -> "Model": + if self.edge.df is None: + self.edge.df = GeoDataFrame[EdgeSchema]() + self.edge.df.set_geometry("geometry", inplace=True, crs=self.crs) + return self + @field_serializer("input_dir", "results_dir") def serialize_path(self, path: Path) -> str: return str(path) @@ -151,6 +161,7 @@ def _write_toml(self, fn: Path) -> Path: return fn def _save(self, directory: DirectoryPath, input_dir: DirectoryPath): + self.set_crs(self.crs) db_path = directory / input_dir / "database.gpkg" db_path.parent.mkdir(parents=True, exist_ok=True) db_path.unlink(missing_ok=True) @@ -170,9 +181,19 @@ def _save(self, directory: DirectoryPath, input_dir: DirectoryPath): for sub in self._nodes(): sub._save(directory, input_dir) + def set_crs(self, crs: str) -> None: + self.crs = crs + self.edge.df = self.edge.df.set_crs(crs) + for sub in self._nodes(): + if sub.node.df is not None: + sub.node.df = sub.node.df.set_crs(crs) + for table in sub._tables(): + if isinstance(table, SpatialTableModel) and table.df is not None: + table.df = table.df.set_crs(crs) + def node_table(self) -> NodeTable: """Compute the full NodeTable from all node types.""" - df_chunks = [node.node.df for node in self._nodes()] + df_chunks = [node.node.df.set_crs(self.crs) for node in self._nodes()] df = pd.concat(df_chunks, ignore_index=True) node_table = NodeTable(df=df) node_table.sort() @@ -392,12 +413,6 @@ def to_xugrid(self): name="node_index", ) - if node_df.crs is None: - # TODO: can be removed when CRS is required, #1254 - projected = False - else: - projected = node_df.crs.is_projected - grid = xugrid.Ugrid1d( node_x=node_df.geometry.x, node_y=node_df.geometry.y, @@ -409,7 +424,7 @@ def to_xugrid(self): ) ), name="ribasim", - projected=projected, + projected=node_df.crs.is_projected, crs=node_df.crs, ) diff --git a/python/ribasim/tests/test_io.py b/python/ribasim/tests/test_io.py index e0b316106..46edcfbd6 100644 --- a/python/ribasim/tests/test_io.py +++ b/python/ribasim/tests/test_io.py @@ -117,7 +117,7 @@ def test_sort(level_setpoint_with_minmax, tmp_path): model.write(tmp_path / "basic/ribasim.toml") # write sorts the model in place assert table.df.iloc[0]["greater_than"] == 5.0 - model_loaded = ribasim.Model(filepath=tmp_path / "basic/ribasim.toml") + model_loaded = ribasim.Model.read(filepath=tmp_path / "basic/ribasim.toml") table_loaded = model_loaded.discrete_control.condition edge_loaded = model_loaded.edge assert table_loaded.df.iloc[0]["greater_than"] == 5.0 @@ -153,7 +153,9 @@ def test_roundtrip(trivial, tmp_path): def test_datetime_timezone(): # Due to a pydantic issue, a time zone was added. # https://github.com/Deltares/Ribasim/issues/1282 - model = ribasim.Model(starttime="2000-01-01", endtime="2001-01-01 00:00:00") + model = ribasim.Model( + starttime="2000-01-01", endtime="2001-01-01 00:00:00", crs="EPSG:28992" + ) assert isinstance(model.starttime, datetime) assert isinstance(model.endtime, datetime) assert model.starttime.tzinfo is None diff --git a/python/ribasim/tests/test_model.py b/python/ribasim/tests/test_model.py index 10d342b48..001ab889f 100644 --- a/python/ribasim/tests/test_model.py +++ b/python/ribasim/tests/test_model.py @@ -6,6 +6,7 @@ import pytest import xugrid from pydantic import ValidationError +from pyproj import CRS from ribasim.config import Solver from ribasim.geometry.edge import NodeData from ribasim.input_base import esc_id @@ -136,9 +137,11 @@ def test_node_ids_unsequential(basic): def test_tabulated_rating_curve_model(tabulated_rating_curve, tmp_path): model_orig = tabulated_rating_curve + model_orig.set_crs(model_orig.crs) basin_area = tabulated_rating_curve.basin.area.df assert basin_area is not None assert basin_area.geometry.geom_type.iloc[0] == "Polygon" + assert basin_area.crs == CRS.from_epsg(28992) model_orig.write(tmp_path / "tabulated_rating_curve/ribasim.toml") model_new = Model.read(tmp_path / "tabulated_rating_curve/ribasim.toml") pd.testing.assert_series_equal( @@ -186,6 +189,16 @@ def test_node_table(basic): assert df.subnetwork_id.dtype == pd.Int32Dtype() assert df.node_type.iloc[0] == "Basin" assert df.node_type.iloc[-1] == "Terminal" + assert df.crs == CRS.from_epsg(28992) + + +def test_edge_table(basic): + model = basic + df = model.edge.df + assert df.geometry.is_unique + assert df.from_node_id.dtype == np.int32 + assert df.subnetwork_id.dtype == pd.Int32Dtype() + assert df.crs == CRS.from_epsg(28992) def test_indexing(basic): @@ -224,7 +237,7 @@ def test_xugrid(basic, tmp_path): assert isinstance(uds, xugrid.UgridDataset) assert uds.grid.edge_dimension == "ribasim_nEdges" assert uds.grid.node_dimension == "ribasim_nNodes" - assert uds.grid.crs is None + assert uds.grid.crs == CRS.from_epsg(28992) assert uds.node_id.dtype == np.int32 uds.ugrid.to_netcdf(tmp_path / "ribasim.nc") uds = xugrid.open_dataset(tmp_path / "ribasim.nc") diff --git a/python/ribasim_testmodels/ribasim_testmodels/allocation.py b/python/ribasim_testmodels/ribasim_testmodels/allocation.py index 592a93ec7..1e102e8c0 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/allocation.py +++ b/python/ribasim_testmodels/ribasim_testmodels/allocation.py @@ -28,6 +28,7 @@ def user_demand_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", solver=Solver(algorithm="Tsit5"), ) @@ -78,6 +79,7 @@ def subnetwork_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-04-01", + crs="EPSG:28992", allocation=Allocation(use_allocation=True, timestep=86400), ) @@ -162,6 +164,7 @@ def looped_subnetwork_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", allocation=Allocation(use_allocation=True, timestep=86400), ) @@ -288,6 +291,7 @@ def minimal_subnetwork_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", allocation=Allocation(use_allocation=True, timestep=86400), ) @@ -346,6 +350,7 @@ def fractional_flow_subnetwork_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", allocation=Allocation(use_allocation=True, timestep=86400), ) @@ -433,6 +438,7 @@ def allocation_example_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-01-20", + crs="EPSG:28992", allocation=Allocation(use_allocation=True, timestep=86400), ) @@ -545,6 +551,7 @@ def main_network_with_subnetworks_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-03-01", + crs="EPSG:28992", allocation=Allocation(use_allocation=True, timestep=86400), ) @@ -869,6 +876,7 @@ def level_demand_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-02-01", + crs="EPSG:28992", allocation=Allocation(use_allocation=True, timestep=1e5), ) model.flow_boundary.add( @@ -917,6 +925,7 @@ def flow_demand_model() -> Model: model = Model( starttime="2020-01-01 00:00:00", endtime="2021-01-01 00:00:00", + crs="EPSG:28992", allocation=Allocation(use_allocation=True, timestep=1e5), ) @@ -992,6 +1001,7 @@ def linear_resistance_demand_model(): model = Model( starttime="2020-01-01 00:00:00", endtime="2021-01-01 00:00:00", + crs="EPSG:28992", allocation=Allocation(use_allocation=True), ) diff --git a/python/ribasim_testmodels/ribasim_testmodels/backwater.py b/python/ribasim_testmodels/ribasim_testmodels/backwater.py index a01d563e0..0a70a3fbb 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/backwater.py +++ b/python/ribasim_testmodels/ribasim_testmodels/backwater.py @@ -23,6 +23,7 @@ def backwater_model(): model = ribasim.Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.flow_boundary.add( diff --git a/python/ribasim_testmodels/ribasim_testmodels/basic.py b/python/ribasim_testmodels/ribasim_testmodels/basic.py index 3ee3e6dda..271267b76 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/basic.py +++ b/python/ribasim_testmodels/ribasim_testmodels/basic.py @@ -25,6 +25,7 @@ def basic_model() -> ribasim.Model: model = ribasim.Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.logging = ribasim.Logging(verbosity="debug") @@ -243,6 +244,7 @@ def tabulated_rating_curve_model() -> ribasim.Model: model = ribasim.Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) # Setup tabulated rating curve: @@ -320,6 +322,7 @@ def outlet_model(): model = ribasim.Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", solver=ribasim.Solver(saveat=0), ) diff --git a/python/ribasim_testmodels/ribasim_testmodels/bucket.py b/python/ribasim_testmodels/ribasim_testmodels/bucket.py index 248ed3b8f..66ffe2abb 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/bucket.py +++ b/python/ribasim_testmodels/ribasim_testmodels/bucket.py @@ -14,6 +14,7 @@ def bucket_model() -> ribasim.Model: model = ribasim.Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.basin.add( @@ -42,6 +43,7 @@ def leaky_bucket_model() -> ribasim.Model: model = ribasim.Model( starttime="2020-01-01", endtime="2020-01-05", + crs="EPSG:28992", ) model.basin.add( diff --git a/python/ribasim_testmodels/ribasim_testmodels/discrete_control.py b/python/ribasim_testmodels/ribasim_testmodels/discrete_control.py index ab48a4696..aae7674c9 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/discrete_control.py +++ b/python/ribasim_testmodels/ribasim_testmodels/discrete_control.py @@ -22,6 +22,7 @@ def pump_discrete_control_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.basin.add( @@ -115,6 +116,7 @@ def flow_condition_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.flow_boundary.add( @@ -175,6 +177,7 @@ def level_boundary_condition_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.level_boundary.add( @@ -246,6 +249,7 @@ def tabulated_rating_curve_control_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.basin.add( @@ -309,6 +313,7 @@ def level_setpoint_with_minmax_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.basin.add( diff --git a/python/ribasim_testmodels/ribasim_testmodels/dutch_waterways.py b/python/ribasim_testmodels/ribasim_testmodels/dutch_waterways.py index fc50e84ec..fd990957b 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/dutch_waterways.py +++ b/python/ribasim_testmodels/ribasim_testmodels/dutch_waterways.py @@ -21,6 +21,7 @@ def dutch_waterways_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) profile_level = np.array([1.86, 3.21, 4.91, 6.61, 8.31, 10.07, 10.17, 10.27, 11.61, 12.94, 13.05, 13.69, 14.32, 14.96, 15.59]) # fmt: skip @@ -45,30 +46,33 @@ def dutch_waterways_model() -> Model: a = 800 - b flow_rate = a * flow_rate + b - # TODO use EPSG:28992 and apply 405 - y to the y coordinates model.flow_boundary.add( - Node(1, Point(1310, 312)), + Node(1, Point(196212, 436220)), [flow_boundary.Time(time=time, flow_rate=flow_rate)], ) model.basin.add( - Node(2, Point(1281, 278), name="IJsselkop"), + Node(2, Point(194292, 439828), name="IJsselkop"), [basin.State(level=[8.31]), basin_profile], ) - model.linear_resistance.add(Node(3, Point(1283, 183)), linear_resistance_shared) - model.linear_resistance.add(Node(4, Point(1220, 186)), linear_resistance_shared) + model.linear_resistance.add( + Node(3, Point(195237, 442337)), linear_resistance_shared + ) + model.linear_resistance.add( + Node(4, Point(187489, 442384)), linear_resistance_shared + ) model.basin.add( - Node(5, Point(1342, 162), name="IJssel Westervoort"), + Node(5, Point(199198, 445557), name="IJssel Westervoort"), [basin.State(level=[7.5]), basin_profile], ) model.basin.add( - Node(6, Point(1134, 184), name="Nederrijn Arnhem"), + Node(6, Point(184906, 441999), name="Nederrijn Arnhem"), [basin.State(level=[7.5]), basin_profile], ) model.level_boundary.add( - Node(7, Point(1383, 121)), [level_boundary.Static(level=[3.0])] + Node(7, Point(208272, 454422)), [level_boundary.Static(level=[3.0])] ) model.tabulated_rating_curve.add( - Node(8, Point(1052, 201), name="Driel open"), + Node(8, Point(183819, 442076), name="Driel open"), [ tabulated_rating_curve.Static( control_state=["pump_low", "pump_high", "rating_curve", "rating_curve"], @@ -81,7 +85,7 @@ def dutch_waterways_model() -> Model: ], ) model.pump.add( - Node(9, Point(1043, 188), name="Driel gecontroleerd"), + Node(9, Point(183859, 441561), name="Driel gecontroleerd"), [ pump.Static( active=[True, True, False], @@ -91,29 +95,31 @@ def dutch_waterways_model() -> Model: ], ) model.basin.add( - Node(10, Point(920, 197)), [basin.State(level=[7.0]), basin_profile] + Node(10, Point(178532, 442187)), [basin.State(level=[7.0]), basin_profile] + ) + model.linear_resistance.add( + Node(11, Point(170775, 439396)), linear_resistance_shared ) - model.linear_resistance.add(Node(11, Point(783, 237)), linear_resistance_shared) model.basin.add( - Node(12, Point(609, 186)), [basin.State(level=[6.0]), basin_profile] + Node(12, Point(162995, 443270)), [basin.State(level=[6.0]), basin_profile] ) model.tabulated_rating_curve.add( - Node(13, Point(430, 176), name="Amerongen open"), + Node(13, Point(156421, 443460), name="Amerongen open"), [tabulated_rating_curve.Static(level=[4.45, 4.46], flow_rate=[418, 420.15])], ) model.pump.add( - Node(14, Point(442, 164), name="Amerongen gecontroleerd"), + Node(14, Point(156882, 441920), name="Amerongen gecontroleerd"), [pump.Static(flow_rate=[1.0], min_flow_rate=0.0, max_flow_rate=50.0)], ) model.basin.add( - Node(15, Point(369, 185)), [basin.State(level=[5.5]), basin_profile] + Node(15, Point(154547, 442540)), [basin.State(level=[5.5]), basin_profile] ) model.level_boundary.add( - Node(16, Point(329, 202), name="Kruising ARK"), + Node(16, Point(151776, 441465), name="Kruising ARK"), [level_boundary.Static(level=[3.0])], ) model.discrete_control.add( - Node(17, Point(1187, 276), name="Controller Driel"), + Node(17, Point(183612, 441833), name="Controller Driel"), [ discrete_control.Condition( listen_node_type="FlowBoundary", @@ -133,10 +139,14 @@ def dutch_waterways_model() -> Model: ), ], ) - model.linear_resistance.add(Node(18, Point(1362, 142)), linear_resistance_shared) - model.linear_resistance.add(Node(19, Point(349, 194)), linear_resistance_shared) + model.linear_resistance.add( + Node(18, Point(201507, 447443)), linear_resistance_shared + ) + model.linear_resistance.add( + Node(19, Point(153039, 442444)), linear_resistance_shared + ) model.pid_control.add( - Node(20, Point(511, 126), name="Controller Amerongen"), + Node(20, Point(155961, 442714), name="Controller Amerongen"), [ pid_control.Static( listen_node_type="Basin", diff --git a/python/ribasim_testmodels/ribasim_testmodels/equations.py b/python/ribasim_testmodels/ribasim_testmodels/equations.py index 47f439f1d..9ffe4c715 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/equations.py +++ b/python/ribasim_testmodels/ribasim_testmodels/equations.py @@ -24,6 +24,7 @@ def linear_resistance_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.basin.add( @@ -54,6 +55,7 @@ def rating_curve_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.basin.add( @@ -92,6 +94,7 @@ def manning_resistance_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) basin_profile = basin.Profile(area=[0.01, 100.0, 100.0], level=[0.0, 1.0, 2.0]) @@ -125,6 +128,7 @@ def misc_nodes_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", solver=Solver(dt=24 * 60 * 60, algorithm="Euler"), ) @@ -179,8 +183,7 @@ def pid_control_equation_model() -> Model: """Set up a model with pid control for an analytical solution test""" model = Model( - starttime="2020-01-01", - endtime="2020-01-01 00:05:00", + starttime="2020-01-01", endtime="2020-01-01 00:05:00", crs="EPSG:28992" ) model.basin.add( Node(1, Point(0, 0)), diff --git a/python/ribasim_testmodels/ribasim_testmodels/invalid.py b/python/ribasim_testmodels/ribasim_testmodels/invalid.py index 4eb92ed8d..906a7b485 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/invalid.py +++ b/python/ribasim_testmodels/ribasim_testmodels/invalid.py @@ -19,6 +19,7 @@ def invalid_qh_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-12-01", + crs="EPSG:28992", ) model.tabulated_rating_curve.add( @@ -55,6 +56,7 @@ def invalid_fractional_flow_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-12-01", + crs="EPSG:28992", ) basin_shared: list[TableModel[Any]] = [ @@ -118,6 +120,7 @@ def invalid_discrete_control_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-12-01", + crs="EPSG:28992", ) basin_shared: list[TableModel[Any]] = [ @@ -187,6 +190,7 @@ def invalid_edge_types_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-12-01", + crs="EPSG:28992", ) basin_shared: list[TableModel[Any]] = [ diff --git a/python/ribasim_testmodels/ribasim_testmodels/pid_control.py b/python/ribasim_testmodels/ribasim_testmodels/pid_control.py index 803d2872f..d8c591c09 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/pid_control.py +++ b/python/ribasim_testmodels/ribasim_testmodels/pid_control.py @@ -19,6 +19,7 @@ def pid_control_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-12-01", + crs="EPSG:28992", ) model.flow_boundary.add( @@ -92,6 +93,7 @@ def discrete_control_of_pid_control_model() -> Model: model = Model( starttime="2020-01-01", endtime="2020-12-01", + crs="EPSG:28992", ) model.level_boundary.add( diff --git a/python/ribasim_testmodels/ribasim_testmodels/time.py b/python/ribasim_testmodels/ribasim_testmodels/time.py index 4ccc0996a..64e006d8a 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/time.py +++ b/python/ribasim_testmodels/ribasim_testmodels/time.py @@ -12,6 +12,7 @@ def flow_boundary_time_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", ) model.flow_boundary.add( diff --git a/python/ribasim_testmodels/ribasim_testmodels/trivial.py b/python/ribasim_testmodels/ribasim_testmodels/trivial.py index 177d2725e..ad3669eb3 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/trivial.py +++ b/python/ribasim_testmodels/ribasim_testmodels/trivial.py @@ -10,6 +10,7 @@ def trivial_model() -> Model: model = Model( starttime="2020-01-01", endtime="2021-01-01", + crs="EPSG:28992", results=Results(subgrid=True, compression=False), ) diff --git a/python/ribasim_testmodels/ribasim_testmodels/two_basin.py b/python/ribasim_testmodels/ribasim_testmodels/two_basin.py index 7ba030edb..9cedb312f 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/two_basin.py +++ b/python/ribasim_testmodels/ribasim_testmodels/two_basin.py @@ -19,7 +19,7 @@ def two_basin_model() -> Model: The right basin fills up and discharges over the rating curve. """ - model = Model(starttime="2020-01-01", endtime="2021-01-01") + model = Model(starttime="2020-01-01", endtime="2021-01-01", crs="EPSG:28992") model.flow_boundary.add( Node(1, Point(0, 0)), [flow_boundary.Static(flow_rate=[1e-2])] From 9b2a3bf9a5e9a8a3364ddf5fdb645819a6b86cef Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 4 Apr 2024 21:00:44 +0200 Subject: [PATCH 031/158] Disallow LevelBoundary next to ManningResistance (#1352) Fixes https://github.com/Deltares/Ribasim/issues/1299. --- core/src/solve.jl | 3 ++- core/src/util.jl | 17 ------------- core/src/validation.jl | 4 ++-- core/test/run_models_test.jl | 4 ++-- core/test/utils_test.jl | 24 ------------------- .../ribasim_testmodels/backwater.py | 8 +++---- 6 files changed, 10 insertions(+), 50 deletions(-) diff --git a/core/src/solve.jl b/core/src/solve.jl index 214e4660e..1ce7eac31 100644 --- a/core/src/solve.jl +++ b/core/src/solve.jl @@ -444,7 +444,8 @@ function formulate_flow!( h_a = get_level(p, basin_a_id, t; storage) h_b = get_level(p, basin_b_id, t; storage) - bottom_a, bottom_b = basin_bottoms(basin, basin_a_id, basin_b_id, id) + bottom_a = basin_bottom(basin, basin_a_id) + bottom_b = basin_bottom(basin, basin_b_id) slope = profile_slope[i] width = profile_width[i] n = manning_n[i] diff --git a/core/src/util.jl b/core/src/util.jl index b7d5b8e5c..bdf2c4ea8 100644 --- a/core/src/util.jl +++ b/core/src/util.jl @@ -411,23 +411,6 @@ function basin_bottom(basin::Basin, node_id::NodeID)::Union{Float64, Nothing} end end -"Get the bottom on both ends of a node. If only one has a bottom, use that for both." -function basin_bottoms( - basin::Basin, - basin_a_id::NodeID, - basin_b_id::NodeID, - id::NodeID, -)::Tuple{Float64, Float64} - bottom_a = basin_bottom(basin, basin_a_id) - bottom_b = basin_bottom(basin, basin_b_id) - if bottom_a === bottom_b === nothing - error(lazy"No bottom defined on either side of $id") - end - bottom_a = something(bottom_a, bottom_b) - bottom_b = something(bottom_b, bottom_a) - return bottom_a, bottom_b -end - """ Replace the truth states in the logic mapping which contain wildcards with all possible explicit truth states. diff --git a/core/src/validation.jl b/core/src/validation.jl index 7a47141b1..202eec6a8 100644 --- a/core/src/validation.jl +++ b/core/src/validation.jl @@ -18,9 +18,9 @@ neighbortypes(::Val{:fractional_flow}) = Set((:basin, :terminal, :level_boundary neighbortypes(::Val{:flow_boundary}) = Set((:basin, :fractional_flow, :terminal, :level_boundary)) neighbortypes(::Val{:level_boundary}) = - Set((:linear_resistance, :manning_resistance, :pump, :outlet, :tabulated_rating_curve)) + Set((:linear_resistance, :pump, :outlet, :tabulated_rating_curve)) neighbortypes(::Val{:linear_resistance}) = Set((:basin, :level_boundary)) -neighbortypes(::Val{:manning_resistance}) = Set((:basin, :level_boundary)) +neighbortypes(::Val{:manning_resistance}) = Set((:basin,)) neighbortypes(::Val{:discrete_control}) = Set(( :pump, :outlet, diff --git a/core/test/run_models_test.jl b/core/test/run_models_test.jl index 8a24a0a6f..63df14e59 100644 --- a/core/test/run_models_test.jl +++ b/core/test/run_models_test.jl @@ -480,7 +480,7 @@ end u = model.integrator.sol.u[end] p = model.integrator.p - h_actual = get_tmp(p.basin.current_level, u) + h_actual = get_tmp(p.basin.current_level, u)[1:50] x = collect(10.0:20.0:990.0) h_expected = standard_step_method(x, 5.0, 1.0, 0.04, h_actual[end], 1.0e-6) @@ -496,7 +496,7 @@ end @test Ribasim.get_flow( p.graph, NodeID(:ManningResistance, 101), - NodeID(:LevelBoundary, 102), + NodeID(:Basin, 102), 0, ) ≈ 5.0 atol = 0.001 skip = Sys.isapple() end diff --git a/core/test/utils_test.jl b/core/test/utils_test.jl index 822164322..74203eb6a 100644 --- a/core/test/utils_test.jl +++ b/core/test/utils_test.jl @@ -56,30 +56,6 @@ end @test Ribasim.basin_bottom(basin, NodeID(:Basin, 5)) === 0.0 @test Ribasim.basin_bottom(basin, NodeID(:Basin, 7)) === 4.0 @test Ribasim.basin_bottom(basin, NodeID(:Basin, 6)) === nothing - @test Ribasim.basin_bottoms( - basin, - NodeID(:Basin, 5), - NodeID(:Basin, 7), - NodeID(:Pump, 6), - ) === (0.0, 4.0) - @test Ribasim.basin_bottoms( - basin, - NodeID(:Basin, 5), - NodeID(:Basin, 0), - NodeID(:Pump, 6), - ) === (0.0, 0.0) - @test Ribasim.basin_bottoms( - basin, - NodeID(:Basin, 0), - NodeID(:Basin, 7), - NodeID(:Pump, 6), - ) === (4.0, 4.0) - @test_throws "No bottom defined on either side of Pump #6" Ribasim.basin_bottoms( - basin, - NodeID(:Basin, 0), - NodeID(:Basin, 1), - NodeID(:Pump, 6), - ) end @testitem "Convert levels to storages" begin diff --git a/python/ribasim_testmodels/ribasim_testmodels/backwater.py b/python/ribasim_testmodels/ribasim_testmodels/backwater.py index 0a70a3fbb..04b79a550 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/backwater.py +++ b/python/ribasim_testmodels/ribasim_testmodels/backwater.py @@ -4,7 +4,6 @@ from ribasim.nodes import ( basin, flow_boundary, - level_boundary, manning_resistance, ) from shapely.geometry import Point @@ -68,12 +67,13 @@ def backwater_model(): model.manning_resistance[id + 1], ) - model.level_boundary.add( - Node(102, Point(1010.0, 0.0)), [level_boundary.Static(level=[2.0])] + model.basin.add( + Node(102, Point(1010.0, 0.0)), + [basin.State(level=[2.0]), basin.Profile(level=[0.0, 1.0], area=1e20)], ) model.edge.add( model.manning_resistance[101], - model.level_boundary[102], + model.basin[102], ) return model From 89b45257459e59a63507d451abbe02f580dc8efe Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 4 Apr 2024 21:02:44 +0200 Subject: [PATCH 032/158] Fix node ID bug in allocation (#1330) Fixes https://github.com/Deltares/Ribasim/issues/1262. --- core/src/allocation_init.jl | 25 ++++++++++++++----------- core/src/allocation_optim.jl | 5 +---- core/src/callback.jl | 5 ++++- core/src/parameter.jl | 2 +- 4 files changed, 20 insertions(+), 17 deletions(-) diff --git a/core/src/allocation_init.jl b/core/src/allocation_init.jl index f32a6855d..d17ffc094 100644 --- a/core/src/allocation_init.jl +++ b/core/src/allocation_init.jl @@ -108,11 +108,15 @@ This loop finds allocation network edges in several ways: function find_allocation_graph_edges!( p::Parameters, allocation_network_id::Int32, -)::Tuple{Vector{Vector{NodeID}}, SparseMatrixCSC{Float64, Int}} +)::Tuple{ + Vector{Vector{NodeID}}, + JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}}, +} (; graph) = p edges_composite = Vector{NodeID}[] - capacity = spzeros(nv(graph), nv(graph)) + dict = Dict{Tuple{NodeID, NodeID}, Float64}() + capacity = JuMP.Containers.SparseAxisArray(dict) node_ids = graph[].node_ids[allocation_network_id] edge_ids = Set{Tuple{NodeID, NodeID}}() @@ -199,11 +203,11 @@ For the composite allocation network edges: - Find out their allowed flow direction(s) """ function process_allocation_graph_edges!( - capacity::SparseMatrixCSC{Float64, Int}, + capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}}, edges_composite::Vector{Vector{NodeID}}, p::Parameters, allocation_network_id::Int32, -)::SparseMatrixCSC{Float64, Int} +)::Nothing (; graph) = p node_ids = graph[].node_ids[allocation_network_id] edge_ids = graph[].edge_ids[allocation_network_id] @@ -289,7 +293,7 @@ function process_allocation_graph_edges!( push!(edge_ids, (node_id_2, node_id_1)) end end - return capacity + return nothing end const allocation_source_nodetypes = @@ -320,7 +324,7 @@ Build the graph used for the allocation problem. function allocation_graph( p::Parameters, allocation_network_id::Int32, -)::SparseMatrixCSC{Float64, Int} +)::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}} # Find out which nodes in the subnetwork are used in the allocation network allocation_graph_used_nodes!(p, allocation_network_id) @@ -460,17 +464,16 @@ flow over edge <= edge capacity """ function add_constraints_capacity!( problem::JuMP.Model, - capacity::SparseMatrixCSC{Float64, Int}, + capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}}, p::Parameters, allocation_network_id::Int32, )::Nothing (; graph) = p main_network_source_edges = get_main_network_connections(p, allocation_network_id) F = problem[:F] - edge_ids = graph[].edge_ids[allocation_network_id] edge_ids_finite_capacity = Tuple{NodeID, NodeID}[] - for edge in edge_ids - if !isinf(capacity[edge...]) && edge ∉ main_network_source_edges + for (edge, c) in capacity.data + if !isinf(c) && edge ∉ main_network_source_edges push!(edge_ids_finite_capacity, edge) end end @@ -909,7 +912,7 @@ Construct the allocation problem for the current subnetwork as a JuMP.jl model. """ function allocation_problem( p::Parameters, - capacity::SparseMatrixCSC{Float64, Int}, + capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}}, allocation_network_id::Int32, )::JuMP.Model optimizer = JuMP.optimizer_with_attributes(HiGHS.Optimizer, "log_to_console" => false) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index 5965298ea..1fb5f8d3e 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -298,14 +298,11 @@ function set_initial_capacities_edge!( allocation_model::AllocationModel, p::Parameters, )::Nothing - (; graph) = p (; problem, capacity, allocation_network_id) = allocation_model - edge_ids = graph[].edge_ids[allocation_network_id] constraints_capacity = problem[:capacity] main_network_source_edges = get_main_network_connections(p, allocation_network_id) - for edge_id in edge_ids - c = capacity[edge_id...] + for (edge_id, c) in capacity.data # These edges have no capacity constraints: # - With infinite capacity diff --git a/core/src/callback.jl b/core/src/callback.jl index 77fd2e896..4662ab891 100644 --- a/core/src/callback.jl +++ b/core/src/callback.jl @@ -199,7 +199,10 @@ function get_value( if variable == "level" if node_id.type == NodeType.Basin - _, basin_idx = id_index(basin.node_id, node_id) + has_index, basin_idx = id_index(basin.node_id, node_id) + if !has_index + error("Discrete control listen node $node_id does not exist.") + end _, level = get_area_and_level(basin, basin_idx, u[basin_idx]) elseif node_id.type == NodeType.LevelBoundary level_boundary_idx = findsorted(level_boundary.node_id, node_id) diff --git a/core/src/parameter.jl b/core/src/parameter.jl index c5a8995e8..c7978d273 100644 --- a/core/src/parameter.jl +++ b/core/src/parameter.jl @@ -50,7 +50,7 @@ problem: The JuMP.jl model for solving the allocation problem """ struct AllocationModel allocation_network_id::Int32 - capacity::SparseMatrixCSC{Float64, Int} + capacity::JuMP.Containers.SparseAxisArray{Float64, 2, Tuple{NodeID, NodeID}} problem::JuMP.Model Δt_allocation::Float64 end From 17d1fea97c8b22eb9d839bb17559156d34847bb9 Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 4 Apr 2024 21:08:46 +0200 Subject: [PATCH 033/158] make demand, allocated matrices and index these directly (#1353) Fixes https://github.com/Deltares/Ribasim/issues/1277 --- core/src/allocation_optim.jl | 26 ++++++++++----------- core/src/parameter.jl | 6 ++--- core/src/read.jl | 15 ++++++------ core/src/solve.jl | 9 ++++---- core/src/util.jl | 44 ------------------------------------ core/test/allocation_test.jl | 20 ++++++---------- 6 files changed, 35 insertions(+), 85 deletions(-) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index 1fb5f8d3e..2de42ce63 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -78,7 +78,7 @@ function set_objective_priority!( )::Nothing (; problem, allocation_network_id) = allocation_model (; graph, user_demand, flow_demand, allocation, basin) = p - (; node_id) = user_demand + (; node_id, demand_reduced) = user_demand (; main_network_connections, subnetwork_demands) = allocation edge_ids = graph[].edge_ids[allocation_network_id] @@ -114,7 +114,8 @@ function set_objective_priority!( if to_node_id.type == NodeType.UserDemand # UserDemand - d = get_user_demand(p, to_node_id, priority_idx) + user_demand_idx = findsorted(node_id, to_node_id) + d = demand_reduced[user_demand_idx, priority_idx] add_user_demand_term!(edge_id, d, problem) else has_demand, demand_node_id = @@ -183,7 +184,7 @@ function assign_allocations!( if user_demand_node_id.type == NodeType.UserDemand allocated = JuMP.value(F[edge_id]) user_demand_idx = findsorted(user_demand.node_id, user_demand_node_id) - user_demand.allocated[user_demand_idx][priority_idx] = allocated + user_demand.allocated[user_demand_idx, priority_idx] = allocated end end end @@ -481,7 +482,7 @@ function set_initial_demands_user!( )::Nothing (; allocation_network_id) = allocation_model (; graph, user_demand, allocation) = p - (; node_id, demand_from_timeseries, demand_itp) = user_demand + (; node_id, demand_from_timeseries, demand_itp, demand, demand_reduced) = user_demand # Read the demand from the interpolated timeseries # for users for which the demand comes from there @@ -489,12 +490,11 @@ function set_initial_demands_user!( if demand_from_timeseries[i] && graph[id].allocation_network_id == allocation_network_id for priority_idx in eachindex(allocation.priorities) - d = demand_itp[i][priority_idx](t) - set_user_demand!(p, id, priority_idx, d; reduced = false) + demand[i, priority_idx] = demand_itp[i][priority_idx](t) end end end - copy!(user_demand.demand_reduced, user_demand.demand) + copy!(demand_reduced, demand) return nothing end @@ -576,17 +576,17 @@ function adjust_demands_user!( )::Nothing (; problem, allocation_network_id) = allocation_model (; graph, user_demand) = p + (; node_id, demand_reduced) = user_demand F = problem[:F] # Reduce the demand by what was allocated - for id in user_demand.node_id + for (i, id) in enumerate(node_id) if graph[id].allocation_network_id == allocation_network_id d = max( 0.0, - get_user_demand(p, id, priority_idx) - - JuMP.value(F[(inflow_id(graph, id), id)]), + demand_reduced[i, priority_idx] - JuMP.value(F[(inflow_id(graph, id), id)]), ) - set_user_demand!(p, id, priority_idx, d) + demand_reduced[i, priority_idx] = d end end return nothing @@ -755,8 +755,8 @@ function save_demands_and_allocations!( if node_id.type == NodeType.UserDemand has_demand = true user_demand_idx = findsorted(user_demand.node_id, node_id) - demand = get_user_demand(p, node_id, priority_idx; reduced = false) - allocated = user_demand.allocated[user_demand_idx][priority_idx] + demand = user_demand.demand[user_demand_idx, priority_idx] + allocated = user_demand.allocated[user_demand_idx, priority_idx] #NOTE: instantaneous realized = get_flow(graph, inflow_id(graph, node_id), node_id, 0) diff --git a/core/src/parameter.jl b/core/src/parameter.jl index c7978d273..26540502d 100644 --- a/core/src/parameter.jl +++ b/core/src/parameter.jl @@ -496,11 +496,11 @@ struct UserDemand <: AbstractParameterNode node_id::Vector{NodeID} active::BitVector realized_bmi::Vector{Float64} - demand::Vector{Float64} - demand_reduced::Vector{Float64} + demand::Matrix{Float64} + demand_reduced::Matrix{Float64} demand_itp::Vector{Vector{ScalarInterpolation}} demand_from_timeseries::BitVector - allocated::Vector{Vector{Float64}} + allocated::Matrix{Float64} return_factor::Vector{Float64} min_level::Vector{Float64} diff --git a/core/src/read.jl b/core/src/read.jl index dcda5a69b..9191b1cbc 100644 --- a/core/src/read.jl +++ b/core/src/read.jl @@ -652,7 +652,7 @@ end function user_demand_static!( active::BitVector, - demand::Vector{Float64}, + demand::Matrix{Float64}, demand_itp::Vector{Vector{ScalarInterpolation}}, return_factor::Vector{Float64}, min_level::Vector{Float64}, @@ -672,7 +672,7 @@ function user_demand_static!( for row in group priority_idx = findsorted(priorities, row.priority) demand_itp[user_demand_idx][priority_idx].u .= row.demand - demand[(user_demand_idx - 1) * length(priorities) + priority_idx] = row.demand + demand[user_demand_idx, priority_idx] = row.demand end end return nothing @@ -680,7 +680,7 @@ end function user_demand_time!( active::BitVector, - demand::Vector{Float64}, + demand::Matrix{Float64}, demand_itp::Vector{Vector{ScalarInterpolation}}, demand_from_timeseries::BitVector, return_factor::Vector{Float64}, @@ -712,8 +712,7 @@ function user_demand_time!( :demand; default_value = 0.0, ) - demand[(user_demand_idx - 1) * length(priorities) + priority_idx] = - demand_p_itp(0.0) + demand[user_demand_idx, priority_idx] = demand_p_itp(0.0) if is_valid demand_itp[user_demand_idx][priority_idx] = demand_p_itp @@ -741,14 +740,14 @@ function UserDemand(db::DB, config::Config)::UserDemand n_priority = length(priorities) active = BitVector(ones(Bool, n_user)) realized_bmi = zeros(n_user) - demand = zeros(n_user * n_priority) - demand_reduced = zeros(n_user * n_priority) + demand = zeros(n_user, n_priority) + demand_reduced = zeros(n_user, n_priority) trivial_timespan = [nextfloat(-Inf), prevfloat(Inf)] demand_itp = [ [LinearInterpolation(zeros(2), trivial_timespan) for i in eachindex(priorities)] for j in eachindex(node_ids) ] demand_from_timeseries = BitVector(zeros(Bool, n_user)) - allocated = [fill(Inf, length(priorities)) for id in node_ids] + allocated = fill(Inf, n_user, n_priority) return_factor = zeros(n_user) min_level = zeros(n_user) diff --git a/core/src/solve.jl b/core/src/solve.jl index 1ce7eac31..a6b3cd791 100644 --- a/core/src/solve.jl +++ b/core/src/solve.jl @@ -266,12 +266,13 @@ function formulate_flow!( storage::AbstractVector, t::Number, )::Nothing - (; graph, basin) = p + (; graph, basin, allocation) = p (; node_id, allocated, active, demand_itp, + demand, return_factor, min_level, demand_from_timeseries, @@ -291,12 +292,12 @@ function formulate_flow!( # and the current demand. # If allocation is not optimized then allocated = Inf, so the result is always # effectively allocated = demand. - for priority_idx in eachindex(allocated[i]) - alloc_prio = allocated[i][priority_idx] + for priority_idx in eachindex(allocation.priorities) + alloc_prio = allocated[i, priority_idx] demand_prio = if demand_from_timeseries[i] demand_itp[i][priority_idx](t) else - get_user_demand(p, id, priority_idx; reduced = false) + demand[i, priority_idx] end alloc = min(alloc_prio, demand_prio) q += alloc diff --git a/core/src/util.jl b/core/src/util.jl index bdf2c4ea8..6f4a88f0c 100644 --- a/core/src/util.jl +++ b/core/src/util.jl @@ -583,50 +583,6 @@ function is_main_network(allocation_network_id::Int32)::Bool return allocation_network_id == 1 end -function get_user_demand( - p::Parameters, - node_id::NodeID, - priority_idx::Int; - reduced::Bool = true, -)::Float64 - (; user_demand, allocation) = p - (; demand, demand_reduced) = user_demand - user_demand_idx = findsorted(user_demand.node_id, node_id) - n_priorities = length(allocation.priorities) - idx = (user_demand_idx - 1) * n_priorities + priority_idx - - if reduced - @assert is_active(allocation) "reduced demand accessed in non-allocation run" - return demand_reduced[idx] - else - return demand[idx] - end -end - -function set_user_demand!( - p::Parameters, - node_id::NodeID, - priority_idx::Int, - value::Float64; - reduced::Bool = true, -)::Nothing - (; user_demand, allocation) = p - (; demand, demand_reduced) = user_demand - - user_demand_idx = findsorted(user_demand.node_id, node_id) - n_priorities = length(allocation.priorities) - idx = (user_demand_idx - 1) * n_priorities + priority_idx - - if reduced - @assert is_active(allocation) "reduced demand accessed in non-allocation run" - demand_reduced[idx] = value - else - demand[idx] = value - end - - return nothing -end - function get_all_priorities(db::DB, config::Config)::Vector{Int32} priorities = Set{Int32}() diff --git a/core/test/allocation_test.jl b/core/test/allocation_test.jl index 80253447b..7f563739d 100644 --- a/core/test/allocation_test.jl +++ b/core/test/allocation_test.jl @@ -38,16 +38,10 @@ @test JuMP.value(F[(NodeID(:FlowBoundary, 1), NodeID(:Basin, 2))]) ≈ 0.5 @test JuMP.value(F[(NodeID(:Basin, 6), NodeID(:UserDemand, 11))]) ≈ 0.0 - allocated = p.user_demand.allocated - @test allocated[1] ≈ [0.0, 0.5] - @test allocated[2] ≈ [4.0, 0.0] - @test allocated[3] ≈ [0.0, 2.0] - - # Test getting and setting UserDemand demands - (; user_demand) = p - Ribasim.set_user_demand!(p, NodeID(:UserDemand, 11), 2, Float64(π); reduced = false) - @test user_demand.demand[4] ≈ π - @test Ribasim.get_user_demand(p, NodeID(:UserDemand, 11), 2; reduced = false) ≈ π + (; allocated) = p.user_demand + @test allocated[1, :] ≈ [0.0, 0.5] + @test allocated[2, :] ≈ [4.0, 0.0] + @test allocated[3, :] ≈ [0.0, 2.0] end @testitem "Allocation objective: linear absolute" begin @@ -197,7 +191,7 @@ end [(NodeID(:Basin, 10), NodeID(:Pump, 38))] end -@testitem "allocation with main network optimization problem" begin +@testitem "Allocation with main network optimization problem" begin using SQLite using Ribasim: NodeID, OptimizationType using ComponentArrays: ComponentVector @@ -255,8 +249,8 @@ end [0.00399999999, 0.0, 0.0] @test subnetwork_allocateds[NodeID(:Basin, 10), NodeID(:Pump, 38)] ≈ [0.001, 0.0, 0.0] - @test user_demand.allocated[2] ≈ [4.0, 0.0, 0.0] - @test user_demand.allocated[7] ≈ [0.001, 0.0, 0.0] + @test user_demand.allocated[2, :] ≈ [4.0, 0.0, 0.0] + @test user_demand.allocated[7, :] ≈ [0.001, 0.0, 0.0] end @testitem "subnetworks with sources" begin From 5d2bbeffa046ab4f824a8a70ada7ec8f2d316f95 Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 4 Apr 2024 21:18:39 +0200 Subject: [PATCH 034/158] Fix allocation flow output (#1355) Fixes https://github.com/Deltares/Ribasim/issues/1206. --------- Co-authored-by: Martijn Visser --- core/src/allocation_optim.jl | 40 ++++++++++++++++++++++++++++++------ core/test/allocation_test.jl | 14 ++++++++++++- 2 files changed, 47 insertions(+), 7 deletions(-) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index 2de42ce63..b42393f75 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -837,23 +837,51 @@ function save_allocation_flows!( F_basin_out = problem[:F_basin_out] # Edge flows - for allocation_edge in first(F.axes) + allocation_edge_idx = 1 + allocation_edges = first(F.axes) + n_allocation_edges = length(allocation_edges) + + while allocation_edge_idx <= n_allocation_edges + allocation_edge = allocation_edges[allocation_edge_idx] flow_rate = JuMP.value(F[allocation_edge]) + + # Check whether the next allocation edge is the reverse of the current + # allocation edge + if allocation_edge_idx < n_allocation_edges && + allocation_edges[allocation_edge_idx + 1] == reverse(allocation_edge) + # Combine the flow rates of bidirectional allocation edges + allocation_edge_idx += 1 + flow_rate -= JuMP.value(F[allocation_edges[allocation_edge_idx]]) + end + edge_metadata = graph[allocation_edge...] (; node_ids) = edge_metadata for i in eachindex(node_ids)[1:(end - 1)] + # Check in which direction this edge in the physical layer exists + if haskey(graph, node_ids[i], node_ids[i + 1]) + id_from = node_ids[i] + id_to = node_ids[i + 1] + flow_rate_signed = flow_rate + else + id_from = node_ids[i + 1] + id_to = node_ids[i] + flow_rate_signed = -flow_rate + end + push!(record_flow.time, t) push!(record_flow.edge_id, edge_metadata.id) - push!(record_flow.from_node_type, string(node_ids[i].type)) - push!(record_flow.from_node_id, Int32(node_ids[i])) - push!(record_flow.to_node_type, string(node_ids[i + 1].type)) - push!(record_flow.to_node_id, Int32(node_ids[i + 1])) + push!(record_flow.from_node_type, string(id_from.type)) + push!(record_flow.from_node_id, Int32(id_from)) + push!(record_flow.to_node_type, string(id_to.type)) + push!(record_flow.to_node_id, Int32(id_to)) push!(record_flow.subnetwork_id, allocation_network_id) push!(record_flow.priority, priority) - push!(record_flow.flow_rate, flow_rate) + push!(record_flow.flow_rate, flow_rate_signed) push!(record_flow.optimization_type, string(optimization_type)) end + + allocation_edge_idx += 1 end # Basin flows diff --git a/core/test/allocation_test.jl b/core/test/allocation_test.jl index 7f563739d..d804d8020 100644 --- a/core/test/allocation_test.jl +++ b/core/test/allocation_test.jl @@ -196,6 +196,7 @@ end using Ribasim: NodeID, OptimizationType using ComponentArrays: ComponentVector using JuMP + using DataFrames: DataFrame, ByRow, transform! toml_path = normpath( @__DIR__, @@ -209,7 +210,8 @@ end close(db) (; allocation, user_demand, graph, basin) = p - (; allocation_models, subnetwork_demands, subnetwork_allocateds) = allocation + (; allocation_models, subnetwork_demands, subnetwork_allocateds, record_flow) = + allocation t = 0.0 # Collecting demands @@ -249,6 +251,16 @@ end [0.00399999999, 0.0, 0.0] @test subnetwork_allocateds[NodeID(:Basin, 10), NodeID(:Pump, 38)] ≈ [0.001, 0.0, 0.0] + # Test for existence of edges in allocation flow record + allocation_flow = DataFrame(record_flow) + transform!( + allocation_flow, + [:from_node_type, :from_node_id, :to_node_type, :to_node_id] => + ByRow((a, b, c, d) -> haskey(graph, NodeID(a, b), NodeID(c, d))) => + :edge_exists, + ) + @test all(allocation_flow.edge_exists) + @test user_demand.allocated[2, :] ≈ [4.0, 0.0, 0.0] @test user_demand.allocated[7, :] ≈ [0.001, 0.0, 0.0] end From 6f6d88eb75ca57ca79325270f6b2acda71b81340 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 8 Apr 2024 08:59:23 +0200 Subject: [PATCH 035/158] Bump julia-actions/setup-julia from 1 to 2 (#1361) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [julia-actions/setup-julia](https://github.com/julia-actions/setup-julia) from 1 to 2.
Release notes

Sourced from julia-actions/setup-julia's releases.

v2.0.0 - Update to Node20

What's Changed

Note the rationale for the breaking change was discussed in julia-actions/setup-julia#209

Dependencies and misc

New Contributors

Full Changelog: https://github.com/julia-actions/setup-julia/compare/v1.9.6...v2.0.0

v1.9.6: Fix Apple Silicon installation

What's Changed

Deps & CI

New Contributors

Full Changelog: https://github.com/julia-actions/setup-julia/compare/v1.9.5...v1.9.6

v1.9.5: Maintain mtime of julia build to avoid re-precompilation

A big part of fixing JuliaLang/julia#50667 for julia <1.11 as maintaining the mtime of the julia source files means cached /compiled caches won't be invalidated in new runs where julia has been reinstalled.

What's Changed

Dep updates

... (truncated)

Commits
  • f225878 Add production dependencies & build
  • b96a572 Bump the version number to 2.0.0 in package.json and package-lock.json ...
  • 437a175 update to node20 (#209)
  • e9d953d Bump @​types/node from 20.11.16 to 20.11.30 (#226)
  • 4190528 Bump @​types/semver from 7.5.6 to 7.5.8 (#222)
  • 9acd04f Bump nock from 13.5.1 to 13.5.4 (#224)
  • See full diff in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=julia-actions/setup-julia&package-manager=github_actions&previous-version=1&new-version=2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/core_compat_helper.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/core_compat_helper.yml b/.github/workflows/core_compat_helper.yml index bd8575361..9c211232d 100644 --- a/.github/workflows/core_compat_helper.yml +++ b/.github/workflows/core_compat_helper.yml @@ -15,7 +15,7 @@ jobs: run: which julia continue-on-error: true - name: Install Julia, but only if it is not already available in the PATH - uses: julia-actions/setup-julia@v1 + uses: julia-actions/setup-julia@v2 with: version: "1" arch: ${{ runner.arch }} From a5ee40fa813674f40d43570e91d078b8c3ef46d4 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Mon, 8 Apr 2024 11:48:23 +0200 Subject: [PATCH 036/158] No need to formulate flow for Terminal anymore (#1357) This was missed from #1300. We don't store vertical flows anymore. Doing this was the only reason for `formulate_flows!` for Terminal nodes. What I don't fully understand is why tests did not fail on this. Any test model with a Terminal should have failed since the 3-arg `add_flow!(graph, id, -q)` it called was removed in #1300. This PR also removes the 4-arg version that is no longer used. --- core/src/graph.jl | 9 --------- core/src/solve.jl | 23 +---------------------- 2 files changed, 1 insertion(+), 31 deletions(-) diff --git a/core/src/graph.jl b/core/src/graph.jl index cb453e88d..344a31484 100644 --- a/core/src/graph.jl +++ b/core/src/graph.jl @@ -179,15 +179,6 @@ function set_flow!(graph::MetaGraph, id_src::NodeID, id_dst::NodeID, q::Number): return nothing end -""" -Add the given flow q to the existing flow over the edge between the given nodes. -""" -function add_flow!(graph::MetaGraph, id_src::NodeID, id_dst::NodeID, q::Number)::Nothing - (; flow_dict, flow) = graph[] - get_tmp(flow, q)[flow_dict[(id_src, id_dst)]] += q - return nothing -end - """ Get the flow over the given edge (val is needed for get_tmp from ForwardDiff.jl). """ diff --git a/core/src/solve.jl b/core/src/solve.jl index a6b3cd791..db5654aac 100644 --- a/core/src/solve.jl +++ b/core/src/solve.jl @@ -502,24 +502,6 @@ function formulate_flow!( return nothing end -function formulate_flow!( - terminal::Terminal, - p::Parameters, - storage::AbstractVector, - t::Number, -)::Nothing - (; graph) = p - (; node_id) = terminal - - for id in node_id - for upstream_id in inflow_ids(graph, id) - q = get_flow(graph, upstream_id, id, storage) - add_flow!(graph, id, -q) - end - end - return nothing -end - function formulate_flow!( flow_boundary::FlowBoundary, p::Parameters, @@ -637,12 +619,10 @@ function formulate_flows!(p::Parameters, storage::AbstractVector, t::Number)::No manning_resistance, tabulated_rating_curve, flow_boundary, - level_boundary, pump, outlet, user_demand, fractional_flow, - terminal, ) = p formulate_flow!(linear_resistance, p, storage, t) @@ -653,7 +633,6 @@ function formulate_flows!(p::Parameters, storage::AbstractVector, t::Number)::No formulate_flow!(outlet, p, storage, t) formulate_flow!(user_demand, p, storage, t) - # do these last since they rely on formulated input flows + # do this last since they rely on formulated input flows formulate_flow!(fractional_flow, p, storage, t) - formulate_flow!(terminal, p, storage, t) end From f42250ab0ccca2908bbac292525d28eea5733266 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Mon, 8 Apr 2024 12:44:39 +0200 Subject: [PATCH 037/158] Don't add the endtime to basin.arrow results (#1359) This reverts a part of 4ff9987710fac6642d723d97bceb574517b09f24 On Tuesday we discussed the `basin.arrow` with @SouthEndMusic and @Huite. A few issues/PRs will come out of this, but this already removes the endtime, such that we don't have `missing` vertical fluxes in `basin.arrow` anymore. The downside is that the final storage is not currently available, but we have #1358 for that, and plan to add `dS/dt (m3/s)` as well to be able to compute it. --- core/src/write.jl | 25 +++++++++++++------------ core/test/run_models_test.jl | 13 ++----------- core/test/time_test.jl | 14 +++----------- docs/core/usage.qmd | 27 ++++++++++++++------------- 4 files changed, 32 insertions(+), 47 deletions(-) diff --git a/core/src/write.jl b/core/src/write.jl index d54adfc18..66fec8fc2 100644 --- a/core/src/write.jl +++ b/core/src/write.jl @@ -84,26 +84,27 @@ function basin_table( node_id::Vector{Int32}, storage::Vector{Float64}, level::Vector{Float64}, - precipitation::Vector{Union{Missing, Float64}}, - evaporation::Vector{Union{Missing, Float64}}, - drainage::Vector{Union{Missing, Float64}}, - infiltration::Vector{Union{Missing, Float64}}, + precipitation::Vector{Float64}, + evaporation::Vector{Float64}, + drainage::Vector{Float64}, + infiltration::Vector{Float64}, } (; saved) = model (; vertical_flux) = saved + # The last timestep is not included; there is no period over which to compute flows. data = get_storages_and_levels(model) - storage = vec(data.storage) - level = vec(data.level) + storage = vec(data.storage[:, begin:(end - 1)]) + level = vec(data.level[:, begin:(end - 1)]) nbasin = length(data.node_id) - ntsteps = length(data.time) + ntsteps = length(data.time) - 1 nrows = nbasin * ntsteps - precipitation = Vector{Union{Missing, Float64}}(missing, nrows) - evaporation = Vector{Union{Missing, Float64}}(missing, nrows) - drainage = Vector{Union{Missing, Float64}}(missing, nrows) - infiltration = Vector{Union{Missing, Float64}}(missing, nrows) + precipitation = zeros(nrows) + evaporation = zeros(nrows) + drainage = zeros(nrows) + infiltration = zeros(nrows) idx_row = 0 @@ -118,7 +119,7 @@ function basin_table( end end - time = repeat(data.time; inner = nbasin) + time = repeat(data.time[begin:(end - 1)]; inner = nbasin) node_id = repeat(Int32.(data.node_id); outer = ntsteps) return (; diff --git a/core/test/run_models_test.jl b/core/test/run_models_test.jl index 63df14e59..de886783c 100644 --- a/core/test/run_models_test.jl +++ b/core/test/run_models_test.jl @@ -54,16 +54,7 @@ :drainage, :infiltration, ), - ( - DateTime, - Int32, - Float64, - Float64, - Union{Missing, Float64}, - Union{Missing, Float64}, - Union{Missing, Float64}, - Union{Missing, Float64}, - ), + (DateTime, Int32, Float64, Float64, Float64, Float64, Float64, Float64), ) @test Tables.schema(control) == Tables.Schema( (:time, :control_node_id, :truth_state, :control_state), @@ -108,7 +99,7 @@ @test nsaved > 10 # t0 has no flow, 2 flow edges @test nrow(flow) == (nsaved - 1) * 2 - @test nrow(basin) == nsaved + @test nrow(basin) == nsaved - 1 @test nrow(control) == 0 @test nrow(allocation) == 0 @test nrow(subgrid) == nsaved * length(p.subgrid.level) diff --git a/core/test/time_test.jl b/core/test/time_test.jl index 7977ad705..c45a315fe 100644 --- a/core/test/time_test.jl +++ b/core/test/time_test.jl @@ -34,15 +34,10 @@ end n_basin = length(basin.node_id) basin_table = DataFrame(Ribasim.basin_table(model)) - # No vertical flux data for last saveat - t_end = last(basin_table).time - data_end = filter(:time => t -> t == t_end, basin_table) - @test all(ismissing.(data_end.precipitation)) - @test all(ismissing.(data_end.evaporation)) - @test all(ismissing.(data_end.drainage)) - @test all(ismissing.(data_end.infiltration)) - time_table = DataFrame(basin.time) + t_end = time_table.time[end] + filter!(:time => t -> t !== t_end, time_table) + time_table[!, "basin_idx"] = [ Ribasim.id_index(basin.node_id, node_id)[2] for node_id in Ribasim.NodeID.(:Basin, time_table.node_id) @@ -66,9 +61,6 @@ end end end - filter!(:time => t -> t !== t_end, basin_table) - filter!(:time => t -> t !== t_end, time_table) - @test all( isapprox( basin_table.evaporation, diff --git a/docs/core/usage.qmd b/docs/core/usage.qmd index f8fec8b9c..29e608b7a 100644 --- a/docs/core/usage.qmd +++ b/docs/core/usage.qmd @@ -705,23 +705,24 @@ derivative | Float64 | - | - ## Basin - `basin.arrow` -The basin table contains: +The Basin table contains: -- results of the storage and level of each basin, which are instantaneous values; -- results of the vertical fluxes on each basin, which are mean values over the `saveat` intervals. In the time column the start of the period is indicated. This means that for the final time in the table the mean vertical fluxes are not computed, and thus are `missing`. +- Results of the storage and level of each basin, which are instantaneous values; +- Results of the vertical fluxes on each basin, which are mean values over the `saveat` intervals. In the time column the start of the period is indicated. +- The final state of the model is not part of this file, and will be placed in a separate output state file in the future. The initial condition is also written to the file. -column | type | unit -------------- | ------------------------ | ---- -time | DateTime | - -node_id | Int32 | - -storage | Float64 | $m^3$ -level | Float64 | $m$ -precipitation | Union{Float64, Missing} | $m^3 s^{-1}$ -evaporation | Union{Float64, Missing} | $m^3 s^{-1}$ -drainage | Union{Float64, Missing} | $m^3 s^{-1}$ -infiltration | Union{Float64, Missing} | $m^3 s^{-1}$ +column | type | unit +------------- | ---------| ---- +time | DateTime | - +node_id | Int32 | - +storage | Float64 | $m^3$ +level | Float64 | $m$ +precipitation | Float64 | $m^3 s^{-1}$ +evaporation | Float64 | $m^3 s^{-1}$ +drainage | Float64 | $m^3 s^{-1}$ +infiltration | Float64 | $m^3 s^{-1}$ The table is sorted by time, and per time it is sorted by `node_id`. From 2adaec49de7c10522d44223ecdd4a21fe671786e Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Mon, 8 Apr 2024 15:21:01 +0200 Subject: [PATCH 038/158] Add `Model.to_crs` method in order to reproject (#1360) Fixes #1354 --- python/ribasim/ribasim/model.py | 18 ++++++++++++++---- python/ribasim/tests/conftest.py | 5 +++++ python/ribasim/tests/test_model.py | 11 +++++++++++ .../ribasim_testmodels/bucket.py | 8 ++++---- 4 files changed, 34 insertions(+), 8 deletions(-) diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index ccca20892..864d17116 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -161,6 +161,7 @@ def _write_toml(self, fn: Path) -> Path: return fn def _save(self, directory: DirectoryPath, input_dir: DirectoryPath): + # Set CRS of the tables to the CRS stored in the Model object self.set_crs(self.crs) db_path = directory / input_dir / "database.gpkg" db_path.parent.mkdir(parents=True, exist_ok=True) @@ -182,14 +183,23 @@ def _save(self, directory: DirectoryPath, input_dir: DirectoryPath): sub._save(directory, input_dir) def set_crs(self, crs: str) -> None: - self.crs = crs - self.edge.df = self.edge.df.set_crs(crs) + self._apply_crs_function("set_crs", crs) + + def to_crs(self, crs: str) -> None: + # Set CRS of the tables to the CRS stored in the Model object + self.set_crs(self.crs) + self._apply_crs_function("to_crs", crs) + + def _apply_crs_function(self, function_name: str, crs: str) -> None: + """Apply `function_name`, with `crs` as the first and only argument to all spatial tables.""" + self.edge.df = getattr(self.edge.df, function_name)(crs) for sub in self._nodes(): if sub.node.df is not None: - sub.node.df = sub.node.df.set_crs(crs) + sub.node.df = getattr(sub.node.df, function_name)(crs) for table in sub._tables(): if isinstance(table, SpatialTableModel) and table.df is not None: - table.df = table.df.set_crs(crs) + table.df = getattr(table.df, function_name)(crs) + self.crs = crs def node_table(self) -> NodeTable: """Compute the full NodeTable from all node types.""" diff --git a/python/ribasim/tests/conftest.py b/python/ribasim/tests/conftest.py index 2f0f3ae9f..30939e521 100644 --- a/python/ribasim/tests/conftest.py +++ b/python/ribasim/tests/conftest.py @@ -19,6 +19,11 @@ def basic_transient() -> ribasim.Model: return ribasim_testmodels.basic_transient_model() +@pytest.fixture() +def bucket() -> ribasim.Model: + return ribasim_testmodels.bucket_model() + + @pytest.fixture() def tabulated_rating_curve() -> ribasim.Model: return ribasim_testmodels.tabulated_rating_curve_model() diff --git a/python/ribasim/tests/test_model.py b/python/ribasim/tests/test_model.py index 001ab889f..d7311b63d 100644 --- a/python/ribasim/tests/test_model.py +++ b/python/ribasim/tests/test_model.py @@ -242,3 +242,14 @@ def test_xugrid(basic, tmp_path): uds.ugrid.to_netcdf(tmp_path / "ribasim.nc") uds = xugrid.open_dataset(tmp_path / "ribasim.nc") assert uds.attrs["Conventions"] == "CF-1.9 UGRID-1.0" + + +def test_to_crs(bucket: Model): + model = bucket + + # Reproject to World Geodetic System 1984 + model.to_crs("EPSG:4326") + + # Assert that the bucket is still at Deltares' headquarter + assert model.basin.node.df["geometry"].iloc[0].x == pytest.approx(4.38, abs=0.1) + assert model.basin.node.df["geometry"].iloc[0].y == pytest.approx(51.98, abs=0.1) diff --git a/python/ribasim_testmodels/ribasim_testmodels/bucket.py b/python/ribasim_testmodels/ribasim_testmodels/bucket.py index 66ffe2abb..87fb28e07 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/bucket.py +++ b/python/ribasim_testmodels/ribasim_testmodels/bucket.py @@ -9,7 +9,7 @@ def bucket_model() -> ribasim.Model: - """Bucket model with just a single basin.""" + """Bucket model with just a single basin at Deltares' headquarter.""" model = ribasim.Model( starttime="2020-01-01", @@ -18,7 +18,7 @@ def bucket_model() -> ribasim.Model: ) model.basin.add( - Node(1, Point(400.0, 200.0)), + Node(1, Point(85825.6, 444613.9)), [ basin.Profile( area=[1000.0, 1000.0], @@ -38,7 +38,7 @@ def bucket_model() -> ribasim.Model: def leaky_bucket_model() -> ribasim.Model: - """Bucket model with dynamic forcing with missings.""" + """Bucket model with dynamic forcing with missings at Deltares' headquarter.""" model = ribasim.Model( starttime="2020-01-01", @@ -47,7 +47,7 @@ def leaky_bucket_model() -> ribasim.Model: ) model.basin.add( - Node(1, Point(400.0, 200.0)), + Node(1, Point(85825.6, 444613.9)), [ basin.Profile( area=[1000.0, 1000.0], From ef7b43e9da100861ccf7df51f3e151d26f3ef06e Mon Sep 17 00:00:00 2001 From: Jingru923 <47444880+Jingru923@users.noreply.github.com> Date: Mon, 8 Apr 2024 17:25:44 +0200 Subject: [PATCH 039/158] Guide documentation for cascade polder basins (#1258) Fixes #1017 A example model for a cascade of polder basin with local PID controller was made. Wiki page updated with this guidance document. --- core/src/solve.jl | 6 +- docs/python/examples.ipynb | 431 +++++++++++++++++- docs/python/image/cascade-polder.jpg | Bin 0 -> 123669 bytes .../ribasim_testmodels/__init__.py | 2 + .../ribasim_testmodels/doc_example.py | 178 ++++++++ 5 files changed, 614 insertions(+), 3 deletions(-) create mode 100644 docs/python/image/cascade-polder.jpg create mode 100644 python/ribasim_testmodels/ribasim_testmodels/doc_example.py diff --git a/core/src/solve.jl b/core/src/solve.jl index db5654aac..c23aeb562 100644 --- a/core/src/solve.jl +++ b/core/src/solve.jl @@ -154,14 +154,16 @@ function continuous_control!( factor_outlet = 1.0 - # No flow of outlet if source level is lower than target level + # No flow out of outlet if source level is lower than reference level if !(src_level === nothing || dst_level === nothing) Δlevel = src_level - dst_level factor_outlet *= reduction_factor(Δlevel, 0.1) end - # No flow out outlet if source level is lower than minimum crest level + # No flow out of outlet if source level is lower than minimum crest level if src_level !== nothing + controlled_node_idx = findsorted(outlet.node_id, controlled_node_id) + factor_outlet *= reduction_factor( src_level - outlet.min_crest_level[controlled_node_idx], 0.1, diff --git a/docs/python/examples.ipynb b/docs/python/examples.ipynb index 27f3e3727..315ce4777 100644 --- a/docs/python/examples.ipynb +++ b/docs/python/examples.ipynb @@ -1677,7 +1677,436 @@ { "cell_type": "markdown", "metadata": {}, - "source": [] + "source": [ + "# Guidance of modelling a cascade of polder basins" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Situation description**: This example shows how to make a model for a given practical water system, which consists of a cascade of level control polder basins with inlet and outlet to the main systems. Note that alternative model layouts are feasible for the same water system, each having its positive items and drawbacks." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![](image/cascade-polder.jpg)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The polder system is composed of a sequence of level controlled polder basins with weirs inbetween each basin and an inlet and outlet to main system" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model = Model(starttime=\"2020-01-01\", endtime=\"2021-01-01\", crs=\"EPSG:28992\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "All the polder basins are exposed to time varying forcings (precipitation, evaporation, drainage, infiltration) to mimic situations of water excess and water shortage.\n", + "\n", + "In case of water excess, a pump in the most downstream polder will need to pump the surplus water to the main water system. In case of water shortage, an inlet at the most upstream polder will need to bring water into the cascase of polders. The main water system acts as a water source.\n", + "\n", + "**Model approach**: All polder basins as well as the main water system are modelled with basin nodes. To let the system experience all 4 excess/shortage situation, forcing time series are made in a way that is adapting to them. Overall, assume that in one year, the system will experience precipitation (situation 1) in winter and early spring, precipitation shortage (situation 2) from late spring until early autumn. During situation 2, polder basin 4 will experience additional seepage (compoensating its shortage), and later polder basin 3 will also receive more seepage." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setting up the basins:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "time = pd.date_range(model.starttime, model.endtime)\n", + "day_of_year = time.day_of_year.to_numpy()\n", + "\n", + "precipitation = np.zeros(day_of_year.size)\n", + "precipitation[0:90] = 1.72e-8\n", + "precipitation[330:366] = 1.72e-8\n", + "\n", + "evaporation = np.zeros(day_of_year.size)\n", + "evaporation[130:270] = 2.87e-8\n", + "\n", + "drainage = np.zeros(day_of_year.size)\n", + "drainage[120:270] = 0.4 * 2.87e-8\n", + "drainage_3 = drainage.copy()\n", + "drainage_3[210:240] = 17 * 2.87e-8\n", + "drainage_4 = drainage.copy()\n", + "drainage_4[160:240] = 13 * 2.87e-8\n", + "\n", + "infiltration = np.zeros(day_of_year.size)\n", + "infiltration[0:90] = 5e-8\n", + "\n", + "polder_profile = basin.Profile(area=[100, 100], level=[0.0, 3.0])\n", + "\n", + "basin_time = [\n", + " basin.Time(\n", + " time=pd.date_range(model.starttime, model.endtime),\n", + " drainage=drainage,\n", + " potential_evaporation=evaporation,\n", + " infiltration=0.0,\n", + " precipitation=precipitation,\n", + " urban_runoff=0.0,\n", + " ),\n", + "]\n", + "\n", + "basin_time4 = [\n", + " basin.Time(\n", + " time=pd.date_range(model.starttime, model.endtime),\n", + " drainage=drainage_4,\n", + " potential_evaporation=evaporation,\n", + " infiltration=0.0,\n", + " precipitation=precipitation,\n", + " urban_runoff=0.0,\n", + " ),\n", + "]\n", + "basin_time3 = [\n", + " basin.Time(\n", + " time=pd.date_range(model.starttime, model.endtime),\n", + " drainage=drainage_3,\n", + " potential_evaporation=evaporation,\n", + " infiltration=0.0,\n", + " precipitation=precipitation,\n", + " urban_runoff=0.0,\n", + " ),\n", + "]\n", + "\n", + "model.basin.add(\n", + " Node(1, Point(2.0, 0.0)),\n", + " [\n", + " basin.State(level=[2.5]),\n", + " basin.Profile(area=[1000, 1000], level=[0.0, 3.0]),\n", + " basin.Time(\n", + " time=pd.date_range(model.starttime, model.endtime),\n", + " drainage=0.0,\n", + " potential_evaporation=0.0,\n", + " infiltration=0.0,\n", + " precipitation=0.0,\n", + " urban_runoff=0.0,\n", + " ),\n", + " ],\n", + ")\n", + "model.basin.add(\n", + " Node(4, Point(0.0, -2.0)),\n", + " [basin.State(level=[1.5]), polder_profile, *basin_time],\n", + ")\n", + "model.basin.add(\n", + " Node(6, Point(0.0, -4.0)),\n", + " [basin.State(level=[1.0]), polder_profile, *basin_time],\n", + ")\n", + "model.basin.add(\n", + " Node(8, Point(2.0, -4.0)),\n", + " [basin.State(level=[1.5]), polder_profile, *basin_time3],\n", + ")\n", + "model.basin.add(\n", + " Node(10, Point(4.0, -4.0)),\n", + " [basin.State(level=[1.3]), polder_profile, *basin_time4],\n", + ")\n", + "model.basin.add(\n", + " Node(12, Point(4.0, -2.0)),\n", + " [basin.State(level=[0.1]), polder_profile, *basin_time],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "After all the basins are defined the connecting component inbetween the basins needs to be determined. For polder basin 5 (node 12), the water level needs to be maintain at 0.0 meter. This means that either there should be no water in this basin, or the basin bottom is lower than the reference level, and the water level should be maintained at the reference level.\n", + "\n", + "Since the water level of the main system is at 2.5 meter above the reference level a pump is needed to remove the water from polder basin 5." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setup the pumps:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model.pump.add(\n", + " Node(13, Point(4.0, -1.0)),\n", + " [pump.Static(flow_rate=[0.5 / 3600])],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "According to the description of situation 1 and 2, the water in one polder basin needs to be able to flow to the downstream basin if the current basin has too much water (i.e. the water level is above the setpoint) or if the downstream basin is below setpoint and needs more water. This could be modelled with an uncontrolled TabulatedRatingCurve node with Q=0 at the setpoint level (and Q rising when the level rises above setpoint) , or with an Outlet node where the minimum crest is specified at or just below the setpoint. In this example, we've chosen for the Outlet where we specify the minimum crest level 5 cm below the setpoint. For example: the Outlet of polder basin 1 (node 4) is specified with a minimum crest level of 1.95 meter." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setup the outlets:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Set up outlet\n", + "model.outlet.add(\n", + " Node(2, Point(0.0, -1.0)),\n", + " [outlet.Static(flow_rate=[2 * 0.5 / 3600], min_crest_level=[0.0])],\n", + ")\n", + "model.outlet.add(\n", + " Node(5, Point(0.0, -3.0)),\n", + " [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[1.95])],\n", + ")\n", + "model.outlet.add(\n", + " Node(7, Point(1.0, -4.0)),\n", + " [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[1.45])],\n", + ")\n", + "model.outlet.add(\n", + " Node(9, Point(3.0, -4.0)),\n", + " [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[0.95])],\n", + ")\n", + "model.outlet.add(\n", + " Node(11, Point(4.0, -3.0)),\n", + " [outlet.Static(flow_rate=[0.5 / 3600], min_crest_level=[0.45])],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "When using Outlets as connecting nodes, the flow over the Outlet needs to be controlled to maintain the water level at the setpoint. For this purpose we introduce local PidControllers, where the targets of the PidControllers are set to the setpoints. Disadvantage of this local control approach is the delay that is introduced to transport the 'basin X has a shortage' message upstream through the cascade to the inlet. Current functionality does not offer the capability for PidControl to take multiple observations into account when controlling the inlet. Combining multiple observations in one control is feasible with DiscreteControl. This could be an alternative approach to controlling the inlet for the cascading water system." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setup the PID control:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "pid_control_data = {\n", + " \"listen_node_type\": \"Basin\",\n", + " \"proportional\": [0.05],\n", + " \"integral\": [0.00],\n", + " \"derivative\": [0.0],\n", + "}\n", + "model.pid_control.add(\n", + " Node(3, Point(-1.0, -1.0)),\n", + " [pid_control.Static(listen_node_id=[4], target=[2.0], **pid_control_data)],\n", + ")\n", + "model.pid_control.add(\n", + " Node(14, Point(-1.0, -3.0)),\n", + " [pid_control.Static(listen_node_id=[6], target=[1.5], **pid_control_data)],\n", + ")\n", + "model.pid_control.add(\n", + " Node(15, Point(1.0, -3.0)),\n", + " [pid_control.Static(listen_node_id=[8], target=[1.0], **pid_control_data)],\n", + ")\n", + "model.pid_control.add(\n", + " Node(16, Point(3.0, -3.0)),\n", + " [pid_control.Static(listen_node_id=[10], target=[0.5], **pid_control_data)],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setup the edges:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model.edge.add(model.basin[1], model.outlet[2])\n", + "model.edge.add(model.pid_control[3], model.outlet[2])\n", + "model.edge.add(model.outlet[2], model.basin[4])\n", + "model.edge.add(model.basin[4], model.outlet[5])\n", + "model.edge.add(model.outlet[5], model.basin[6])\n", + "model.edge.add(model.basin[6], model.outlet[7])\n", + "model.edge.add(model.outlet[7], model.basin[8])\n", + "model.edge.add(model.basin[8], model.outlet[9])\n", + "model.edge.add(model.outlet[9], model.basin[10])\n", + "model.edge.add(model.basin[10], model.outlet[11])\n", + "model.edge.add(model.outlet[11], model.basin[12])\n", + "model.edge.add(model.basin[12], model.pump[13])\n", + "model.edge.add(model.pump[13], model.basin[1])\n", + "model.edge.add(model.pid_control[14], model.outlet[5])\n", + "model.edge.add(model.pid_control[15], model.outlet[7])\n", + "model.edge.add(model.pid_control[16], model.outlet[9])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To plot the model" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model.plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Write the model to a TOML file and run it in the Julia." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "datadir = Path(\"data\")\n", + "model.write(datadir / \"local_pidcontrolled_cascade/ribasim.toml\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# | include: false\n", + "from subprocess import run\n", + "\n", + "run(\n", + " [\n", + " \"julia\",\n", + " \"--project=../../core\",\n", + " \"--eval\",\n", + " f'using Ribasim; Ribasim.main(\"{datadir.as_posix()}/local_pidcontrolled_cascade/ribasim.toml\")',\n", + " ],\n", + " check=True,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "After running the model, read back the result to plot the flow of each polder basin." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "datadir_flow = datadir / \"local_pidcontrolled_cascade/results/flow.arrow\"\n", + "df_flow = pd.read_feather(datadir_flow)\n", + "df_flow[\"edge\"] = list(zip(df_flow.from_node_id, df_flow.to_node_id))\n", + "df_flow[\"flow_m3d\"] = df_flow.flow_rate * 86400\n", + "\n", + "df_pivot = df_flow.pivot_table(index=\"time\", columns=\"edge\", values=\"flow_m3d\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Below graphs show the flow exchanged with the mainsystem (i.e. the inlet and the pump), and the flow of weirs inbetween the polder basins." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df_input = df_pivot.loc[:, [(1, 2), (13, 1)]]\n", + "df_input.plot(ylim=[-1.0, 20.0])\n", + "df_weirs = df_pivot.loc[:, [(4, 5), (6, 7), (8, 9), (10, 11)]]\n", + "df_weirs.plot(ylim=[-1.0, 15.0])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + " Below graph shows the vertical flux on each basin." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "datadir_basin = datadir / \"local_pidcontrolled_cascade/results/basin.arrow\"\n", + "df_basin = pd.read_feather(datadir_basin)\n", + "df_basin[\"vertical_flux\"] = (\n", + " df_basin[\"precipitation\"]\n", + " - df_basin[\"evaporation\"]\n", + " + df_basin[\"drainage\"]\n", + " + df_basin[\"infiltration\"]\n", + ")\n", + "df_basin_wide = df_basin.pivot_table(\n", + " index=\"time\", columns=\"node_id\", values=[\"storage\", \"level\", \"vertical_flux\"]\n", + ")\n", + "df_basin_wide[\"vertical_flux\"].plot()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the following graph, the water level of basins are shown. The five polder basins are given starting levels that are different from their setpoints. It can be observed that in the beginning, the water level are changing and approaching to the set points. Later when the water levels are stable, they will not be affected by the forcing." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df_basin_wide[\"level\"].plot()" + ] } ], "metadata": { diff --git a/docs/python/image/cascade-polder.jpg b/docs/python/image/cascade-polder.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7fff88d49ab3a37b9321b9879914306e0fb69268 GIT binary patch literal 123669 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 Date: Tue, 9 Apr 2024 13:56:46 +0200 Subject: [PATCH 040/158] Expose only AbstractVector{Float64} via BMI (#1368) --- core/src/bmi.jl | 4 ++-- core/test/bmi_test.jl | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/core/src/bmi.jl b/core/src/bmi.jl index bb4ee55f1..6595e6390 100644 --- a/core/src/bmi.jl +++ b/core/src/bmi.jl @@ -31,7 +31,7 @@ function BMI.update_until(model::Model, time)::Model return model end -function BMI.get_value_ptr(model::Model, name::AbstractString) +function BMI.get_value_ptr(model::Model, name::AbstractString)::AbstractVector{Float64} if name == "basin.storage" model.integrator.u.storage elseif name == "basin.level" @@ -47,7 +47,7 @@ function BMI.get_value_ptr(model::Model, name::AbstractString) elseif name == "basin.subgrid_level" model.integrator.p.subgrid.level elseif name == "user_demand.demand" - model.integrator.p.user_demand.demand + vec(model.integrator.p.user_demand.demand) elseif name == "user_demand.realized" model.integrator.p.user_demand.realized_bmi else diff --git a/core/test/bmi_test.jl b/core/test/bmi_test.jl index 8db5258fd..3e4847c27 100644 --- a/core/test/bmi_test.jl +++ b/core/test/bmi_test.jl @@ -73,7 +73,7 @@ end BMI.update_until(model, 86400.0) value_second = BMI.get_value_ptr(model, name) # get_value_ptr does not copy - @test value_first === value_second + @test value_first === value_second || pointer(value_first) == pointer(value_second) end end From 5cf4492d9cf4fdc4bce8046827101d36f25152ed Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Tue, 9 Apr 2024 15:00:09 +0200 Subject: [PATCH 041/158] Add remaining water balance terms to basin.arrow (#1367) Technically these terms can be calculated from flow.arrow and the storage. But since calculating the water balance for a Basin is such a common operation, we include them directly. This also makes it easier to locate water balance errors in time and space, by including the error term. At some point we may also want to add the instantaneous inflow and outflow to the Basin struct, and update them in `formulate_du!`. This would allow us to reject steps with too large of a balance error, using one of the metrics mentioned in #1271. But for now this only adds them to the output via a callback. --------- Co-authored-by: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> --- core/src/callback.jl | 33 +++++++++++++++++++++++---- core/src/model.jl | 2 +- core/src/parameter.jl | 13 +++++++++++ core/src/read.jl | 11 ++++++++- core/src/util.jl | 3 +++ core/src/write.jl | 41 ++++++++++++++++++++++++++++----- core/test/run_models_test.jl | 33 +++++++++++++++++++++++++-- docs/core/usage.qmd | 44 ++++++++++++++++++++++-------------- utils/runstats.jl | 2 +- 9 files changed, 150 insertions(+), 32 deletions(-) diff --git a/core/src/callback.jl b/core/src/callback.jl index 4662ab891..bd94043a5 100644 --- a/core/src/callback.jl +++ b/core/src/callback.jl @@ -69,8 +69,8 @@ function create_callbacks( SavingCallback(save_vertical_flux, saved_vertical_flux; saveat, save_start = false) push!(callbacks, save_vertical_flux_cb) - # save the flows over time, as a Vector of the nonzeros(flow) - saved_flow = SavedValues(Float64, Vector{Float64}) + # save the flows over time + saved_flow = SavedValues(Float64, SavedFlow) save_flow_cb = SavingCallback(save_flow, saved_flow; saveat, save_start = false) push!(callbacks, save_flow_cb) @@ -138,14 +138,39 @@ end "Compute the average flows over the last saveat interval and write them to SavedValues" function save_flow(u, t, integrator) - (; flow_integrated) = integrator.p.graph[] + (; graph) = integrator.p + (; flow_integrated, flow_dict) = graph[] + (; node_id) = integrator.p.basin Δt = get_Δt(integrator) flow_mean = copy(flow_integrated) flow_mean ./= Δt fill!(flow_integrated, 0.0) - return flow_mean + # Divide the flows over edges to Basin inflow and outflow, regardless of edge direction. + inflow_mean = zeros(length(node_id)) + outflow_mean = zeros(length(node_id)) + + for (i, basin_id) in enumerate(node_id) + for in_id in inflow_ids(graph, basin_id) + q = flow_mean[flow_dict[in_id, basin_id]] + if q > 0 + inflow_mean[i] += q + else + outflow_mean[i] -= q + end + end + for out_id in outflow_ids(graph, basin_id) + q = flow_mean[flow_dict[basin_id, out_id]] + if q > 0 + outflow_mean[i] += q + else + inflow_mean[i] -= q + end + end + end + + return SavedFlow(; flow = flow_mean, inflow = inflow_mean, outflow = outflow_mean) end "Compute the average vertical fluxes over the last saveat interval and write diff --git a/core/src/model.jl b/core/src/model.jl index 111407a34..4aacb0417 100644 --- a/core/src/model.jl +++ b/core/src/model.jl @@ -1,5 +1,5 @@ struct SavedResults{V1 <: ComponentVector{Float64}} - flow::SavedValues{Float64, Vector{Float64}} + flow::SavedValues{Float64, SavedFlow} vertical_flux::SavedValues{Float64, V1} subgrid_level::SavedValues{Float64, Vector{Float64}} end diff --git a/core/src/parameter.jl b/core/src/parameter.jl index 26540502d..16774df21 100644 --- a/core/src/parameter.jl +++ b/core/src/parameter.jl @@ -134,6 +134,19 @@ end abstract type AbstractParameterNode end +""" +In-memory storage of saved mean flows for writing to results. + +- `flow`: The mean flows on all edges +- `inflow`: The sum of the mean flows coming into each basin +- `outflow`: The sum of the mean flows going out of each basin +""" +@kwdef struct SavedFlow + flow::Vector{Float64} + inflow::Vector{Float64} + outflow::Vector{Float64} +end + """ Requirements: diff --git a/core/src/read.jl b/core/src/read.jl index 9191b1cbc..20643c943 100644 --- a/core/src/read.jl +++ b/core/src/read.jl @@ -1009,13 +1009,22 @@ function exists(db::DB, tablename::String) return !isempty(query) end +""" + seconds(period::Millisecond)::Float64 + +Convert a period of type Millisecond to a Float64 in seconds. +You get Millisecond objects when subtracting two DateTime objects. +Dates.value returns the number of milliseconds. +""" +seconds(period::Millisecond)::Float64 = 0.001 * Dates.value(period) + """ seconds_since(t::DateTime, t0::DateTime)::Float64 Convert a DateTime to a float that is the number of seconds since the start of the simulation. This is used to convert between the solver's inner float time, and the calendar. """ -seconds_since(t::DateTime, t0::DateTime)::Float64 = 0.001 * Dates.value(t - t0) +seconds_since(t::DateTime, t0::DateTime)::Float64 = seconds(t - t0) """ datetime_since(t::Real, t0::DateTime)::DateTime diff --git a/core/src/util.jl b/core/src/util.jl index 6f4a88f0c..9f28670cf 100644 --- a/core/src/util.jl +++ b/core/src/util.jl @@ -534,6 +534,9 @@ function Base.getindex(fv::FlatVector, i::Int) return v[r + 1] end +"Construct a FlatVector from one of the fields of SavedFlow." +FlatVector(saveval::Vector{SavedFlow}, sym::Symbol) = FlatVector(getfield.(saveval, sym)) + """ Function that goes smoothly from 0 to 1 in the interval [0,threshold], and is constant outside this interval. diff --git a/core/src/write.jl b/core/src/write.jl index 66fec8fc2..1f2ed07d4 100644 --- a/core/src/write.jl +++ b/core/src/write.jl @@ -84,33 +84,40 @@ function basin_table( node_id::Vector{Int32}, storage::Vector{Float64}, level::Vector{Float64}, + inflow_rate::Vector{Float64}, + outflow_rate::Vector{Float64}, + storage_rate::Vector{Float64}, precipitation::Vector{Float64}, evaporation::Vector{Float64}, drainage::Vector{Float64}, infiltration::Vector{Float64}, + balance_error::Vector{Float64}, + relative_error::Vector{Float64}, } (; saved) = model - (; vertical_flux) = saved - # The last timestep is not included; there is no period over which to compute flows. data = get_storages_and_levels(model) storage = vec(data.storage[:, begin:(end - 1)]) level = vec(data.level[:, begin:(end - 1)]) + Δstorage = vec(diff(data.storage; dims = 2)) nbasin = length(data.node_id) ntsteps = length(data.time) - 1 nrows = nbasin * ntsteps + inflow_rate = FlatVector(saved.flow.saveval, :inflow) + outflow_rate = FlatVector(saved.flow.saveval, :outflow) precipitation = zeros(nrows) evaporation = zeros(nrows) drainage = zeros(nrows) infiltration = zeros(nrows) + balance_error = zeros(nrows) + relative_error = zeros(nrows) idx_row = 0 - - for vec in vertical_flux.saveval + for cvec in saved.vertical_flux.saveval for (precipitation_, evaporation_, drainage_, infiltration_) in - zip(vec.precipitation, vec.evaporation, vec.drainage, vec.infiltration) + zip(cvec.precipitation, cvec.evaporation, cvec.drainage, cvec.infiltration) idx_row += 1 precipitation[idx_row] = precipitation_ evaporation[idx_row] = evaporation_ @@ -120,17 +127,39 @@ function basin_table( end time = repeat(data.time[begin:(end - 1)]; inner = nbasin) + Δtime_seconds = seconds.(diff(data.time)) + Δtime = repeat(Δtime_seconds; inner = nbasin) node_id = repeat(Int32.(data.node_id); outer = ntsteps) + storage_rate = Δstorage ./ Δtime + + for i in 1:nrows + storage_flow = storage_rate[i] + storage_increase = max(storage_flow, 0.0) + storage_decrease = max(-storage_flow, 0.0) + + total_in = inflow_rate[i] + precipitation[i] + drainage[i] - storage_increase + total_out = outflow_rate[i] + evaporation[i] + infiltration[i] - storage_decrease + balance_error[i] = total_in - total_out + mean_flow_rate = 0.5 * (total_in + total_out) + if mean_flow_rate != 0 + relative_error[i] = balance_error[i] / mean_flow_rate + end + end return (; time, node_id, storage, level, + inflow_rate, + outflow_rate, + storage_rate, precipitation, evaporation, drainage, infiltration, + balance_error, + relative_error, ) end @@ -184,7 +213,7 @@ function flow_table( from_node_id = repeat(from_node_id; outer = ntsteps) to_node_type = repeat(to_node_type; outer = ntsteps) to_node_id = repeat(to_node_id; outer = ntsteps) - flow_rate = FlatVector(saveval) + flow_rate = FlatVector(saveval, :flow) return (; time, diff --git a/core/test/run_models_test.jl b/core/test/run_models_test.jl index de886783c..63132c4f6 100644 --- a/core/test/run_models_test.jl +++ b/core/test/run_models_test.jl @@ -8,7 +8,8 @@ toml_path = normpath(@__DIR__, "../../generated_testmodels/trivial/ribasim.toml") @test ispath(toml_path) - model = Ribasim.run(toml_path) + config = Ribasim.Config(toml_path) + model = Ribasim.run(config) @test model isa Ribasim.Model @test successful_retcode(model) (; p) = model.integrator @@ -49,12 +50,31 @@ :node_id, :storage, :level, + :inflow_rate, + :outflow_rate, + :storage_rate, :precipitation, :evaporation, :drainage, :infiltration, + :balance_error, + :relative_error, + ), + ( + DateTime, + Int32, + Float64, + Float64, + Float64, + Float64, + Float64, + Float64, + Float64, + Float64, + Float64, + Float64, + Float64, ), - (DateTime, Int32, Float64, Float64, Float64, Float64, Float64, Float64), ) @test Tables.schema(control) == Tables.Schema( (:time, :control_node_id, :truth_state, :control_state), @@ -113,6 +133,15 @@ @test basin.storage[1] ≈ 1.0 @test basin.level[1] ≈ 0.044711584 + @test basin.storage_rate[1] ≈ + (basin.storage[2] - basin.storage[1]) / config.solver.saveat + @test all(==(0), basin.inflow_rate) + @test all(>(0), basin.outflow_rate) + @test flow.flow_rate[1] == basin.outflow_rate[1] + @test all(==(0), basin.drainage) + @test all(==(0), basin.infiltration) + @test all(q -> abs(q) < 1e-7, basin.balance_error) + @test all(q -> abs(q) < 0.01, basin.relative_error) # The exporter interpolates 1:1 for three subgrid elements, but shifted by 1.0 meter. basin_level = basin.level[1] diff --git a/docs/core/usage.qmd b/docs/core/usage.qmd index 29e608b7a..3613fa409 100644 --- a/docs/core/usage.qmd +++ b/docs/core/usage.qmd @@ -707,23 +707,33 @@ derivative | Float64 | - | - The Basin table contains: -- Results of the storage and level of each basin, which are instantaneous values; -- Results of the vertical fluxes on each basin, which are mean values over the `saveat` intervals. In the time column the start of the period is indicated. -- The final state of the model is not part of this file, and will be placed in a separate output state file in the future. - -The initial condition is also written to the file. - -column | type | unit -------------- | ---------| ---- -time | DateTime | - -node_id | Int32 | - -storage | Float64 | $m^3$ -level | Float64 | $m$ -precipitation | Float64 | $m^3 s^{-1}$ -evaporation | Float64 | $m^3 s^{-1}$ -drainage | Float64 | $m^3 s^{-1}$ -infiltration | Float64 | $m^3 s^{-1}$ - +- Results of the storage and level of each Basin, which are instantaneous values; +- Results of the fluxes on each Basin, which are mean values over the `saveat` intervals. + In the time column the start of the period is indicated. +- The initial condition is written to the file, but the final state is not. + It will be placed in a separate output state file in the future. +- The `inflow_rate` and `outflow_rate` are the sum of the flows from other nodes into and out of the Basin respectively. + The actual flows determine in which term they are counted, not the edge direction. +- The `storage_rate` is flow that adds to the storage in the Basin, increasing the water level. In the equations below this number is split out into two non-negative numbers, `storage_increase` and `storage_decrease`. +- The `balance_error` is the difference of all Basin inflows (`total_inflow`) and outflows (`total_outflow`), that is (`inflow_rate` + `precipitation` + `drainage` - `storage_increase`) - (`outflow_rate` + `evaporation` + `infiltration` - `storage_decrease`). + It can be used to check if the numerical error when solving the water balance is sufficiently small. +- The `relative_error` is the fraction of the `balance_error` over the mean of the `total_inflow` and `total_outflow`. + +column | type | unit +-------------- | ---------| ---- +time | DateTime | - +node_id | Int32 | - +storage | Float64 | $m^3$ +level | Float64 | $m$ +inflow_rate | Float64 | $m^3 s^{-1}$ +outflow_rate | Float64 | $m^3 s^{-1}$ +storage_rate | Float64 | $m^3 s^{-1}$ +precipitation | Float64 | $m^3 s^{-1}$ +evaporation | Float64 | $m^3 s^{-1}$ +drainage | Float64 | $m^3 s^{-1}$ +infiltration | Float64 | $m^3 s^{-1}$ +balance_error | Float64 | $m^3 s^{-1}$ +relative_error | Float64 | - The table is sorted by time, and per time it is sorted by `node_id`. diff --git a/utils/runstats.jl b/utils/runstats.jl index ca81f0f17..97c97ba9f 100644 --- a/utils/runstats.jl +++ b/utils/runstats.jl @@ -106,7 +106,7 @@ toml_paths = get_testmodels() runs = OrderedDict{String, Any}[] for toml_path in toml_paths config = Ribasim.Config(toml_path) - println(basename(toml_path)) + println(basename(dirname(toml_path))) # run first to compile, if this takes too long perhaps we can shorten the duration Ribasim.run(config) timed = @timed Ribasim.run(config) From 35dfc2c61d406e8e22bdb5eeb293562bf1e2f418 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Tue, 9 Apr 2024 16:54:38 +0200 Subject: [PATCH 042/158] Sort only Edge fid so edge_id becomes more stable (#1363) Before we sorted the Edge table like this: ```python sort_keys = [ "from_node_type", "from_node_id", "to_node_type", "to_node_id", ] ``` This made it appear a bit more neat, though it served no other purpose. The `fid` index was mostly an implementation detail that the user did not specify, and it went from 1:n following the sorting above. However `fid` becomes `edge_id` in the flow.arrow. Therefore when a users added a new edge, usually half of all `edge_id`s changed, making post-processing unnecessarily difficult. Therefore this PR removes this sorting, such that the input order is retained, keeping the old `edge_id`s stable. With this I think we can close #1310. It is useful to have a single identifier value for an Edge, even though it is somewhat superfluous. With this PR it becomes stable, unless users start modifying `fid`s themselves. --- core/test/run_models_test.jl | 2 +- core/test/validation_test.jl | 4 ++-- python/ribasim/ribasim/geometry/edge.py | 17 ++++++++--------- python/ribasim/ribasim/input_base.py | 4 +++- python/ribasim/ribasim/model.py | 5 ++++- python/ribasim/tests/test_io.py | 19 ++++++++++++------- python/ribasim/tests/test_model.py | 4 ++-- 7 files changed, 32 insertions(+), 23 deletions(-) diff --git a/core/test/run_models_test.jl b/core/test/run_models_test.jl index 63132c4f6..5c9037cd2 100644 --- a/core/test/run_models_test.jl +++ b/core/test/run_models_test.jl @@ -127,7 +127,7 @@ @testset "Results values" begin @test flow.time[1] == DateTime(2020) - @test coalesce.(flow.edge_id[1:2], -1) == [1, 2] + @test coalesce.(flow.edge_id[1:2], -1) == [0, 1] @test flow.from_node_id[1:2] == [6, 0] @test flow.to_node_id[1:2] == [0, 922] diff --git a/core/test/validation_test.jl b/core/test/validation_test.jl index d9eaa68d9..cb4909860 100644 --- a/core/test/validation_test.jl +++ b/core/test/validation_test.jl @@ -361,10 +361,10 @@ end @test length(logger.logs) == 2 @test logger.logs[1].level == Error @test logger.logs[1].message == - "Invalid edge type 'foo' for edge #1 from node #1 to node #2." + "Invalid edge type 'foo' for edge #0 from node #1 to node #2." @test logger.logs[2].level == Error @test logger.logs[2].message == - "Invalid edge type 'bar' for edge #2 from node #2 to node #3." + "Invalid edge type 'bar' for edge #1 from node #2 to node #3." end @testitem "Subgrid validation" begin diff --git a/python/ribasim/ribasim/geometry/edge.py b/python/ribasim/ribasim/geometry/edge.py index 760055d7e..2106821f4 100644 --- a/python/ribasim/ribasim/geometry/edge.py +++ b/python/ribasim/ribasim/geometry/edge.py @@ -76,21 +76,20 @@ def add( crs=self.df.crs, ) - self.df = GeoDataFrame[EdgeSchema](pd.concat([self.df, table_to_append])) + self.df = GeoDataFrame[EdgeSchema]( + pd.concat([self.df, table_to_append], ignore_index=True) + ) + self.df.index.name = "fid" def get_where_edge_type(self, edge_type: str) -> NDArray[np.bool_]: assert self.df is not None return (self.df.edge_type == edge_type).to_numpy() def sort(self): - assert self.df is not None - sort_keys = [ - "from_node_type", - "from_node_id", - "to_node_type", - "to_node_id", - ] - self.df.sort_values(sort_keys, ignore_index=True, inplace=True) + # Only sort the index (fid / edge_id) since this needs to be sorted in a GeoPackage. + # Under most circumstances, this retains the input order, + # making the edge_id as stable as possible; useful for post-processing. + self.df.sort_index(inplace=True) def plot(self, **kwargs) -> Axes: assert self.df is not None diff --git a/python/ribasim/ribasim/input_base.py b/python/ribasim/ribasim/input_base.py index 8f57e6067..d46905bae 100644 --- a/python/ribasim/ribasim/input_base.py +++ b/python/ribasim/ribasim/input_base.py @@ -360,7 +360,9 @@ def _write_geopackage(self, path: Path) -> None: path : Path """ assert self.df is not None - self.df.to_file(path, layer=self.tablename(), driver="GPKG") + # the index name must be fid otherwise it will generate a separate fid column + self.df.index.name = "fid" + self.df.to_file(path, layer=self.tablename(), index=True, driver="GPKG") class ChildModel(BaseModel): diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index 864d17116..34c808f73 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -175,8 +175,8 @@ def _save(self, directory: DirectoryPath, input_dir: DirectoryPath): if not node.df["node_id"].is_unique: raise ValueError("node_id must be unique") node.df.set_index("node_id", drop=False, inplace=True) - node.df.sort_index(inplace=True) node.df.index.name = "fid" + node.df.sort_index(inplace=True) node._save(directory, input_dir) for sub in self._nodes(): @@ -207,6 +207,7 @@ def node_table(self) -> NodeTable: df = pd.concat(df_chunks, ignore_index=True) node_table = NodeTable(df=df) node_table.sort() + node_table.df.index.name = "fid" return node_table def _nodes(self) -> Generator[MultiNodeModel, Any, None]: @@ -413,6 +414,7 @@ def to_xugrid(self): edge_df = edge_df[edge_df.edge_type == "flow"] node_id = node_df.node_id.to_numpy() + edge_id = edge_df.index.to_numpy() from_node_id = edge_df.from_node_id.to_numpy() to_node_id = edge_df.to_node_id.to_numpy() @@ -443,6 +445,7 @@ def to_xugrid(self): uds = xugrid.UgridDataset(None, grid) uds = uds.assign_coords(node_id=(node_dim, node_id)) + uds = uds.assign_coords(edge_id=(edge_dim, edge_id)) uds = uds.assign_coords(from_node_id=(edge_dim, from_node_id)) uds = uds.assign_coords(to_node_id=(edge_dim, to_node_id)) diff --git a/python/ribasim/tests/test_io.py b/python/ribasim/tests/test_io.py index 46edcfbd6..476cf8485 100644 --- a/python/ribasim/tests/test_io.py +++ b/python/ribasim/tests/test_io.py @@ -79,7 +79,7 @@ def test_repr(): assert isinstance(pump_static._repr_html_(), str) -def test_extra_columns(basic_transient): +def test_extra_columns(): terminal_static = terminal.Static(meta_id=[-1, -2, -3]) assert "meta_id" in terminal_static.df.columns assert (terminal_static.df.meta_id == [-1, -2, -3]).all() @@ -106,14 +106,12 @@ def test_sort(level_setpoint_with_minmax, tmp_path): table.sort() assert table.df.iloc[0]["greater_than"] == 5.0 - edge.df.sort_values("from_node_type", ascending=False, inplace=True) - assert edge.df.iloc[0]["from_node_type"] != "Basin" - edge.sort() - assert edge.df.iloc[0]["from_node_type"] == "Basin" + # The edge table is not sorted + assert edge.df.iloc[1]["from_node_type"] == "Pump" + assert edge.df.iloc[1]["from_node_id"] == 3 # re-apply wrong sort, then check if it gets sorted on write table.df.sort_values("greater_than", ascending=False, inplace=True) - edge.df.sort_values("from_node_type", ascending=False, inplace=True) model.write(tmp_path / "basic/ribasim.toml") # write sorts the model in place assert table.df.iloc[0]["greater_than"] == 5.0 @@ -121,13 +119,16 @@ def test_sort(level_setpoint_with_minmax, tmp_path): table_loaded = model_loaded.discrete_control.condition edge_loaded = model_loaded.edge assert table_loaded.df.iloc[0]["greater_than"] == 5.0 - assert edge.df.iloc[0]["from_node_type"] == "Basin" + assert edge.df.iloc[1]["from_node_type"] == "Pump" + assert edge.df.iloc[1]["from_node_id"] == 3 __assert_equal(table.df, table_loaded.df) __assert_equal(edge.df, edge_loaded.df) def test_roundtrip(trivial, tmp_path): model1 = trivial + # set custom Edge index + model1.edge.df.index = [15, 12] model1dir = tmp_path / "model1" model2dir = tmp_path / "model2" # read a model and then write it to a different path @@ -142,6 +143,10 @@ def test_roundtrip(trivial, tmp_path): model2dir / "ribasim.toml" ).read_text() + # check if custom Edge indexes are retained (sorted) + assert (model1.edge.df.index == [12, 15]).all() + assert (model2.edge.df.index == [12, 15]).all() + # check if all tables are the same __assert_equal(model1.node_table().df, model2.node_table().df) __assert_equal(model1.edge.df, model2.edge.df) diff --git a/python/ribasim/tests/test_model.py b/python/ribasim/tests/test_model.py index d7311b63d..bdc60368c 100644 --- a/python/ribasim/tests/test_model.py +++ b/python/ribasim/tests/test_model.py @@ -162,8 +162,8 @@ def test_write_adds_fid_in_tables(basic, tmp_path): # for edge no index was provided, but it still needs to write it to file nrow = len(model_orig.edge.df) - assert model_orig.edge.df.index.name is None - assert model_orig.edge.df.index.equals(pd.Index(np.full(nrow, 0))) + assert model_orig.edge.df.index.name == "fid" + assert model_orig.edge.df.index.equals(pd.RangeIndex(nrow)) model_orig.write(tmp_path / "basic/ribasim.toml") with connect(tmp_path / "basic/database.gpkg") as connection: From ac26199e82bc1e5388d96b52531baa26f7b6d0a2 Mon Sep 17 00:00:00 2001 From: Hofer-Julian <30049909+Hofer-Julian@users.noreply.github.com> Date: Wed, 10 Apr 2024 14:37:43 +0200 Subject: [PATCH 043/158] Add sqlite3-editor to recommended vscode extensions (#1370) --- .vscode/extensions.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.vscode/extensions.json b/.vscode/extensions.json index d9a3b3ac2..0506b40b0 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -7,6 +7,7 @@ "njpwerner.autodocstring", "quarto.quarto", "tamasfe.even-better-toml", - "samuelcolvin.jinjahtml" + "samuelcolvin.jinjahtml", + "yy0931.vscode-sqlite3-editor" ] } From ff3a5d405c31b5bd7063c5b42404c0defda3c0fc Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Wed, 10 Apr 2024 22:37:54 +0200 Subject: [PATCH 044/158] Add results to xugrid (#1369) Part of #969 We cannot fully test this since we don't yet support testing results from Python. ```python import ribasim_testmodels import subprocess model = ribasim_testmodels.basic_model() toml_path = "basic/ribasim.toml" model.write(toml_path) subprocess.call(["ribasim.cmd", toml_path], check=True) uds = model.to_xugrid() uds.ugrid.to_netcdf("basic.nc") ``` This results in the following netCDF: [basic.zip](https://github.com/Deltares/Ribasim/files/14930060/basic.zip) It has `flow_rate` on the edges, and all variables from basin.arrow on the nodes. The edge visualization is fine, and it supports the QGIS temporal controller: ![image](https://github.com/Deltares/Ribasim/assets/4471859/9551afc0-114c-4c7d-882d-81c58952dbbd) I'm not yet happy with the visualization on nodes. Maybe @Huite has ideas on how to improve this? ![image](https://github.com/Deltares/Ribasim/assets/4471859/a1b1a6e9-abe3-435c-828f-471b4ec9bd0b) The problem is that the `uds` has all nodes, but we only have Basin results on Basins, so the rest is NaN. If there is a NaN in between QGIS doesn't draw the line. If instead we put `uds[var_name] = da.reindex_like(uds, fill_value=0.0)` then it looks more like the flow_rate image, though that isn't what we want. Ideally we get some nice clear points. Also it would be nice to support displaying 'Basin / area' polygons over time instead of nodes. @Huite is that something that UGRID supports? --- python/ribasim/ribasim/model.py | 68 ++++++++++++++++++++++++++++-- python/ribasim/tests/test_io.py | 3 ++ python/ribasim/tests/test_model.py | 9 +++- 3 files changed, 75 insertions(+), 5 deletions(-) diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index 34c808f73..7a395ab5a 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -264,10 +264,10 @@ def write(self, filepath: str | PathLike[str]) -> Path: # TODO # self.validate_model() filepath = Path(filepath) + self.filepath = filepath if not filepath.suffix == ".toml": raise ValueError(f"Filepath '{filepath}' is not a .toml file.") context_file_loading.set({}) - filepath = Path(filepath) directory = filepath.parent directory.mkdir(parents=True, exist_ok=True) self._save(directory, self.input_dir) @@ -280,7 +280,7 @@ def write(self, filepath: str | PathLike[str]) -> Path: def _load(cls, filepath: Path | None) -> dict[str, Any]: context_file_loading.set({}) - if filepath is not None: + if filepath is not None and filepath.is_file(): with open(filepath, "rb") as f: config = tomli.load(f) @@ -395,9 +395,10 @@ def plot(self, ax=None, indicate_subnetworks: bool = True) -> Any: return ax - def to_xugrid(self): + def to_xugrid(self, add_results: bool = True): """ - Convert the network to a `xugrid.UgridDataset`. + Convert the network and results to a `xugrid.UgridDataset`. + To get the network only, set `add_results=False`. This method will throw `ImportError`, if the optional dependency `xugrid` isn't installed. """ @@ -449,4 +450,63 @@ def to_xugrid(self): uds = uds.assign_coords(from_node_id=(edge_dim, from_node_id)) uds = uds.assign_coords(to_node_id=(edge_dim, to_node_id)) + if add_results: + uds = self._add_results(uds) + + return uds + + def _add_results(self, uds): + toml_path = self.filepath + if toml_path is None: + raise FileNotFoundError("Model must be written to disk to add results.") + + results_path = toml_path.parent / self.results_dir + basin_path = results_path / "basin.arrow" + flow_path = results_path / "flow.arrow" + + if not basin_path.is_file() or not flow_path.is_file(): + raise FileNotFoundError( + f"Cannot find results in '{results_path}', " + "perhaps the model needs to be run first." + ) + + basin_df = pd.read_feather(basin_path) + flow_df = pd.read_feather(flow_path) + + edge_dim = uds.grid.edge_dimension + node_dim = uds.grid.node_dimension + + # from node_id to the node_dim index + node_lookup = pd.Series( + index=uds["node_id"], + data=uds[edge_dim], + name="node_index", + ) + # from edge_id to the edge_dim index + edge_lookup = pd.Series( + index=uds["edge_id"], + data=uds[edge_dim], + name="edge_index", + ) + + basin_df = pd.read_feather(basin_path) + flow_df = pd.read_feather(flow_path) + + # datetime64[ms] gives trouble; https://github.com/pydata/xarray/issues/6318 + flow_df["time"] = flow_df["time"].astype("datetime64[ns]") + basin_df["time"] = basin_df["time"].astype("datetime64[ns]") + + # add flow results to the UgridDataset + flow_df[edge_dim] = edge_lookup[flow_df["edge_id"]].to_numpy() + flow_da = flow_df.set_index(["time", edge_dim])["flow_rate"].to_xarray() + uds[flow_da.name] = flow_da + + # add basin results to the UgridDataset + basin_df[node_dim] = node_lookup[basin_df["node_id"]].to_numpy() + basin_df.drop(columns=["node_id"], inplace=True) + basin_ds = basin_df.set_index(["time", node_dim]).to_xarray() + + for var_name, da in basin_ds.data_vars.items(): + uds[var_name] = da + return uds diff --git a/python/ribasim/tests/test_io.py b/python/ribasim/tests/test_io.py index 476cf8485..bd6fcc7a8 100644 --- a/python/ribasim/tests/test_io.py +++ b/python/ribasim/tests/test_io.py @@ -29,8 +29,11 @@ def __assert_equal(a: DataFrame, b: DataFrame) -> None: def test_basic(basic, tmp_path): model_orig = basic toml_path = tmp_path / "basic/ribasim.toml" + assert model_orig.filepath is None model_orig.write(toml_path) + assert model_orig.filepath == toml_path model_loaded = Model.read(toml_path) + assert model_loaded.filepath == toml_path with open(toml_path, "rb") as f: toml_dict = tomli.load(f) diff --git a/python/ribasim/tests/test_model.py b/python/ribasim/tests/test_model.py index bdc60368c..3e2ed89d6 100644 --- a/python/ribasim/tests/test_model.py +++ b/python/ribasim/tests/test_model.py @@ -233,7 +233,7 @@ def test_indexing(basic): def test_xugrid(basic, tmp_path): - uds = basic.to_xugrid() + uds = basic.to_xugrid(add_results=False) assert isinstance(uds, xugrid.UgridDataset) assert uds.grid.edge_dimension == "ribasim_nEdges" assert uds.grid.node_dimension == "ribasim_nNodes" @@ -243,6 +243,13 @@ def test_xugrid(basic, tmp_path): uds = xugrid.open_dataset(tmp_path / "ribasim.nc") assert uds.attrs["Conventions"] == "CF-1.9 UGRID-1.0" + with pytest.raises(FileNotFoundError, match="Model must be written to disk"): + basic.to_xugrid(add_results=True) + + basic.write(tmp_path / "ribasim.toml") + with pytest.raises(FileNotFoundError, match="Cannot find results"): + basic.to_xugrid(add_results=True) + def test_to_crs(bucket: Model): model = bucket From 78e08c9a890895b608ed3272c9b2b8c1509bdbd2 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Thu, 11 Apr 2024 10:33:52 +0200 Subject: [PATCH 045/158] Fix "add results to xugrid" (#1374) Small bug I didn't notice in #1369 because the basic example has the same number of nodes and edges. --- python/ribasim/ribasim/model.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/ribasim/ribasim/model.py b/python/ribasim/ribasim/model.py index 7a395ab5a..895cf7220 100644 --- a/python/ribasim/ribasim/model.py +++ b/python/ribasim/ribasim/model.py @@ -479,7 +479,7 @@ def _add_results(self, uds): # from node_id to the node_dim index node_lookup = pd.Series( index=uds["node_id"], - data=uds[edge_dim], + data=uds[node_dim], name="node_index", ) # from edge_id to the edge_dim index From 51bc8ae328950068faac59739306c478810cacac Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 11 Apr 2024 11:09:03 +0200 Subject: [PATCH 046/158] Fix PID example (#1373) Fixes https://github.com/Deltares/Ribasim/issues/1372. There were some mistakes in the schematization. --- docs/python/examples.ipynb | 43 ++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/docs/python/examples.ipynb b/docs/python/examples.ipynb index 315ce4777..5a76e3ae7 100644 --- a/docs/python/examples.ipynb +++ b/docs/python/examples.ipynb @@ -854,7 +854,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Setup flow boundary:\n" + "Setup level boundary:\n" ] }, { @@ -865,7 +865,7 @@ "source": [ "model.level_boundary.add(\n", " Node(4, Point(3.0, 0.0)),\n", - " [level_boundary.Static(level=[1])],\n", + " [level_boundary.Static(level=[5.0])],\n", ")" ] }, @@ -882,24 +882,27 @@ "metadata": {}, "outputs": [], "source": [ - "pid_control_data = [\n", - " pid_control.Time(\n", - " time=[\n", - " \"2020-01-01\",\n", - " \"2020-05-01\",\n", - " \"2020-07-01\",\n", - " \"2020-12-01\",\n", - " ],\n", - " listen_node_id=[2, 2, 2, 2],\n", - " listen_node_type=[\"Basin\", \"Basin\", \"Basin\", \"Basin\"],\n", - " target=[5.0, 5.0, 7.5, 7.5],\n", - " proportional=[-1e-3, 1e-3, 1e-3, 1e-3],\n", - " integral=[-1e-7, 1e-7, -1e-7, 1e-7],\n", - " derivative=[0.0, 0.0, 0.0, 0.0],\n", - " )\n", - "]\n", - "model.pid_control.add(Node(5, Point(1.5, 1.0)), pid_control_data)\n", - "model.pid_control.add(Node(7, Point(1.5, -1.0)), pid_control_data)" + "for node, proportional, integral in [\n", + " (Node(5, Point(1.5, 1.0)), -1e-3, -1e-7),\n", + " (Node(7, Point(1.5, -1.0)), 1e-3, 1e-7),\n", + "]:\n", + " pid_control_data = [\n", + " pid_control.Time(\n", + " time=[\n", + " \"2020-01-01\",\n", + " \"2020-05-01\",\n", + " \"2020-07-01\",\n", + " \"2020-12-01\",\n", + " ],\n", + " listen_node_id=2,\n", + " listen_node_type=\"Basin\",\n", + " target=[5.0, 5.0, 7.5, 7.5],\n", + " proportional=proportional,\n", + " integral=integral,\n", + " derivative=0.0,\n", + " )\n", + " ]\n", + " model.pid_control.add(node, pid_control_data)" ] }, { From 6e53201afebde6414aa6d5f836640851ea8c19dc Mon Sep 17 00:00:00 2001 From: Jingru923 <47444880+Jingru923@users.noreply.github.com> Date: Thu, 11 Apr 2024 15:30:49 +0200 Subject: [PATCH 047/158] rename file name and task name (#1377) Fixes #1376 renamed python lint to mypy in pipeline --- .github/workflows/{python_lint.yml => mypy.yml} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename .github/workflows/{python_lint.yml => mypy.yml} (97%) diff --git a/.github/workflows/python_lint.yml b/.github/workflows/mypy.yml similarity index 97% rename from .github/workflows/python_lint.yml rename to .github/workflows/mypy.yml index 3c4e1e57d..44bf1d363 100644 --- a/.github/workflows/python_lint.yml +++ b/.github/workflows/mypy.yml @@ -1,4 +1,4 @@ -name: Python Lint +name: Mypy Type Check on: push: branches: [main, update/pixi-lock] From 8ee1d35711a2ca6744b0e03fc560827b4e8c1314 Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Thu, 11 Apr 2024 17:45:39 +0200 Subject: [PATCH 048/158] Add error starttime > endtime (#1379) Fixes https://github.com/Deltares/Ribasim/issues/1378. --------- Co-authored-by: Martijn Visser --- core/src/model.jl | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/src/model.jl b/core/src/model.jl index 4aacb0417..241ba2ec6 100644 --- a/core/src/model.jl +++ b/core/src/model.jl @@ -44,6 +44,11 @@ function Model(config::Config)::Model TimerOutputs.enable_debug_timings(Ribasim) # causes recompilation (!) end + t_end = seconds_since(config.endtime, config.starttime) + if t_end <= 0 + error("Model starttime is not before endtime.") + end + # All data from the database that we need during runtime is copied into memory, # so we can directly close it again. db = SQLite.DB(db_path) @@ -108,7 +113,6 @@ function Model(config::Config)::Model # Integrals for PID control integral = zeros(length(parameters.pid_control.node_id)) u0 = ComponentVector{Float64}(; storage, integral) - t_end = seconds_since(config.endtime, config.starttime) # for Float32 this method allows max ~1000 year simulations without accuracy issues @assert eps(t_end) < 3600 "Simulation time too long" t0 = zero(t_end) From 73ab09477b3397482f0275ff9b1e9785c7079bf3 Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Fri, 12 Apr 2024 07:21:48 +0200 Subject: [PATCH 049/158] Unpin DiffEqCallbacks and update to 3.6.0 (#1380) Fixes #1344, now that our upstream fix is merged and released. --- Manifest.toml | 6 +++--- core/Project.toml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Manifest.toml b/Manifest.toml index e5e063cf4..edd812975 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -2,7 +2,7 @@ julia_version = "1.10.0" manifest_format = "2.0" -project_hash = "22708fb864a341d70b001d75765852e92f1f5399" +project_hash = "122f7ec8a573942606ded1bed87e60f2356f603a" [[deps.ADTypes]] git-tree-sha1 = "016833eb52ba2d6bea9fcb50ca295980e728ee24" @@ -401,9 +401,9 @@ version = "6.149.0" [[deps.DiffEqCallbacks]] deps = ["DataStructures", "DiffEqBase", "ForwardDiff", "Functors", "LinearAlgebra", "Markdown", "NonlinearSolve", "Parameters", "RecipesBase", "RecursiveArrayTools", "SciMLBase", "StaticArraysCore"] -git-tree-sha1 = "a731383bbafb87d496fb5e66f60c40e4a5f8f726" +git-tree-sha1 = "173d6a313878635b6c764163f639ac2d5f201fdc" uuid = "459566f4-90b8-5000-8ac3-15dfb0a30def" -version = "3.4.0" +version = "3.6.0" [deps.DiffEqCallbacks.weakdeps] OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" diff --git a/core/Project.toml b/core/Project.toml index 99f416650..0a383e394 100644 --- a/core/Project.toml +++ b/core/Project.toml @@ -56,7 +56,7 @@ DataInterpolations = "4.4" DataStructures = "0.18" Dates = "<0.0.1,1" Dictionaries = "0.3.25, 0.4" -DiffEqCallbacks = "=3.4.0" +DiffEqCallbacks = "3.6" Documenter = "0.27,1" EnumX = "1.0" FiniteDiff = "2.21" From 19139f1c8cc7c539e7f18ea329b14f8226ceb79d Mon Sep 17 00:00:00 2001 From: Bart de Koning <74617371+SouthEndMusic@users.noreply.github.com> Date: Fri, 12 Apr 2024 10:28:44 +0200 Subject: [PATCH 050/158] Equal ratio allocation objective (#1366) Fixes https://github.com/Deltares/Ribasim/issues/1348. The objective function I found that leads to equal fraction allocation has terms of the form $$ d\left(1 - \frac{F}{d}\right)^2 = \left(\sqrt{d} - \frac{F}{\sqrt{d}}\right)^2 = \frac{F^2}{d} - 2F + d. $$ I can't explain yet why this works. --- core/src/allocation_init.jl | 158 +----------------- core/src/allocation_optim.jl | 105 ++++-------- core/test/allocation_test.jl | 115 ++++++++----- docs/core/allocation.qmd | 12 +- .../ribasim_testmodels/__init__.py | 2 + .../ribasim_testmodels/allocation.py | 97 +++++++++++ 6 files changed, 208 insertions(+), 281 deletions(-) diff --git a/core/src/allocation_init.jl b/core/src/allocation_init.jl index d17ffc094..0f16cb2b4 100644 --- a/core/src/allocation_init.jl +++ b/core/src/allocation_init.jl @@ -5,7 +5,8 @@ function find_subnetwork_connections!(p::Parameters)::Nothing (; subnetwork_demands, subnetwork_allocateds) = allocation for node_id in graph[].node_ids[1] for outflow_id in outflow_ids(graph, node_id) - if graph[outflow_id].allocation_network_id != 1 + if (graph[outflow_id].allocation_network_id != 1) | + (graph[node_id, outflow_id].allocation_network_id_source == 1) main_network_source_edges = get_main_network_connections(p, graph[outflow_id].allocation_network_id) edge = (node_id, outflow_id) @@ -405,55 +406,6 @@ function add_variables_flow_buffer!( return nothing end -""" -Certain allocation distribution types use absolute values in the objective function. -Since most optimization packages do not support the absolute value function directly, -New variables are introduced that act as the absolute value of an expression by -posing the appropriate constraints. -""" -function add_variables_absolute_value!( - problem::JuMP.Model, - p::Parameters, - allocation_network_id::Int32, -)::Nothing - (; graph, allocation) = p - (; main_network_connections) = allocation - - node_ids = graph[].node_ids[allocation_network_id] - node_ids_user_demand = NodeID[] - node_ids_level_demand = NodeID[] - node_ids_flow_demand = NodeID[] - - for node_id in node_ids - type = node_id.type - if type == NodeType.UserDemand - push!(node_ids_user_demand, node_id) - elseif type == NodeType.Basin - push!(node_ids_level_demand, node_id) - elseif has_external_demand(graph, node_id, :flow_demand)[1] - push!(node_ids_flow_demand, node_id) - end - end - - # For the main network, connections to subnetworks are treated as UserDemands - if is_main_network(allocation_network_id) - for connections_subnetwork in main_network_connections - for connection in connections_subnetwork - push!(node_ids_user_demand, connection[2]) - end - end - end - - problem[:F_abs_user_demand] = - JuMP.@variable(problem, F_abs_user_demand[node_id = node_ids_user_demand]) - problem[:F_abs_level_demand] = - JuMP.@variable(problem, F_abs_level_demand[node_id = node_ids_level_demand]) - problem[:F_abs_flow_demand] = - JuMP.@variable(problem, F_abs_flow_demand[node_id = node_ids_flow_demand]) - - return nothing -end - """ Add the flow capacity constraints to the allocation problem. Only finite capacities get a constraint. @@ -468,7 +420,6 @@ function add_constraints_capacity!( p::Parameters, allocation_network_id::Int32, )::Nothing - (; graph) = p main_network_source_edges = get_main_network_connections(p, allocation_network_id) F = problem[:F] edge_ids_finite_capacity = Tuple{NodeID, NodeID}[] @@ -692,106 +643,6 @@ function add_constraints_conservation_basin!( return nothing end -""" -Minimizing |expr| can be achieved by introducing a new variable expr_abs -and posing the following constraints: -expr_abs >= expr -expr_abs >= -expr -""" -function add_constraints_absolute_value!( - problem::JuMP.Model, - flow_per_node::Dict{NodeID, JuMP.VariableRef}, - F_abs::JuMP.Containers.DenseAxisArray, - variable_type::String, -)::Nothing - # Example demand - d = 2.0 - - node_ids = only(F_abs.axes) - - # These constraints together make sure that F_abs_* acts as the absolute - # value F_abs_* = |x| where x = F-d (here for example d = 2) - base_name = "abs_positive_$variable_type" - problem[Symbol(base_name)] = JuMP.@constraint( - problem, - [node_id = node_ids], - F_abs[node_id] >= (flow_per_node[node_id] - d), - base_name = base_name - ) - base_name = "abs_negative_$variable_type" - problem[Symbol(base_name)] = JuMP.@constraint( - problem, - [node_id = node_ids], - F_abs[node_id] >= -(flow_per_node[node_id] - d), - base_name = base_name - ) - - return nothing -end - -""" -Add constraints so that variables F_abs_user_demand act as the -absolute value of the expression comparing flow to a UserDemand to its demand. -""" -function add_constraints_absolute_value_user_demand!( - problem::JuMP.Model, - p::Parameters, -)::Nothing - (; graph) = p - - F = problem[:F] - F_abs_user_demand = problem[:F_abs_user_demand] - - flow_per_node = Dict( - node_id => F[(only(inflow_ids_allocation(graph, node_id)), node_id)] for - node_id in only(F_abs_user_demand.axes) - ) - - add_constraints_absolute_value!( - problem, - flow_per_node, - F_abs_user_demand, - "user_demand", - ) - - return nothing -end - -""" -Add constraints so that variables F_abs_level_demand act as the -absolute value of the expression comparing flow to a basin to its demand. -""" -function add_constraints_absolute_value_level_demand!(problem::JuMP.Model)::Nothing - F_basin_in = problem[:F_basin_in] - F_abs_level_demand = problem[:F_abs_level_demand] - flow_per_node = - Dict(node_id => F_basin_in[node_id] for node_id in only(F_abs_level_demand.axes)) - - add_constraints_absolute_value!(problem, flow_per_node, F_abs_level_demand, "basin") - - return nothing -end - -""" -Add constraints so that variables F_abs_flow_demand act as the -absolute value of the expression comparing flow to a flow buffer to the flow demand. -""" -function add_constraints_absolute_value_flow_demand!(problem::JuMP.Model)::Nothing - F_flow_buffer_in = problem[:F_flow_buffer_in] - F_abs_flow_demand = problem[:F_abs_flow_demand] - flow_per_node = Dict( - node_id => F_flow_buffer_in[node_id] for node_id in only(F_abs_flow_demand.axes) - ) - - add_constraints_absolute_value!( - problem, - flow_per_node, - F_abs_flow_demand, - "flow_demand", - ) - return nothing -end - """ Add the fractional flow constraints to the allocation problem. The constraint indices are allocation edges over a fractional flow node. @@ -921,7 +772,6 @@ function allocation_problem( # Add variables to problem add_variables_flow!(problem, p, allocation_network_id) add_variables_basin!(problem, p, allocation_network_id) - add_variables_absolute_value!(problem, p, allocation_network_id) add_variables_flow_buffer!(problem, p, allocation_network_id) # Add constraints to problem @@ -929,10 +779,6 @@ function allocation_problem( add_constraints_conservation_flow_demand!(problem, p, allocation_network_id) add_constraints_conservation_subnetwork!(problem, p, allocation_network_id) - add_constraints_absolute_value_user_demand!(problem, p) - add_constraints_absolute_value_flow_demand!(problem) - add_constraints_absolute_value_level_demand!(problem) - add_constraints_capacity!(problem, capacity, p, allocation_network_id) add_constraints_source!(problem, p, allocation_network_id) add_constraints_user_source!(problem, p, allocation_network_id) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index b42393f75..9172c13b2 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -1,67 +1,26 @@ @enumx OptimizationType internal_sources collect_demands allocate """ -Add a term to the objective function given by the objective type, -depending in the provided flow variable and the associated demand. +Add an objective term `demand * (1 - flow/demand)^2`. If the absolute +value of the demand is very small, this would lead to huge coefficients, +so in that case a term of the form (flow - demand)^2 is used. """ function add_objective_term!( + ex::JuMP.QuadExpr, demand::Float64, - constraint_abs_positive::Union{JuMP.ConstraintRef, Nothing} = nothing, - constraint_abs_negative::Union{JuMP.ConstraintRef, Nothing} = nothing, + F::JuMP.VariableRef, )::Nothing - # Objective function ∑ |F - d| - JuMP.set_normalized_rhs(constraint_abs_positive, -demand) - JuMP.set_normalized_rhs(constraint_abs_negative, demand) - return nothing -end - -""" -Add a term to the expression of the objective function corresponding to -the demand of a UserDemand. -""" -function add_user_demand_term!( - edge::Tuple{NodeID, NodeID}, - demand::Float64, - problem::JuMP.Model, -)::Nothing - node_id_user_demand = edge[2] - - constraint_abs_positive = problem[:abs_positive_user_demand][node_id_user_demand] - constraint_abs_negative = problem[:abs_negative_user_demand][node_id_user_demand] - - add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative) -end - -""" -Add a term to the expression of the objective function corresponding to -the demand of a node with a a flow demand. -""" -function add_flow_demand_term!( - edge::Tuple{NodeID, NodeID}, - demand::Float64, - problem::JuMP.Model, -)::Nothing - node_id_flow_demand = edge[2] - - constraint_abs_positive = problem[:abs_positive_flow_demand][node_id_flow_demand] - constraint_abs_negative = problem[:abs_negative_flow_demand][node_id_flow_demand] - - add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative) -end - -""" -Add a term to the expression of the objective function corresponding to -the demand of a basin. -""" -function add_basin_term!(problem::JuMP.Model, demand::Float64, node_id::NodeID)::Nothing - constraint_abs_positive = get(problem[:abs_positive_basin], node_id) - constraint_abs_negative = get(problem[:abs_negative_basin], node_id) - - if isnothing(constraint_abs_positive) - return + if abs(demand) < 1e-5 + # Error term (F - d)^2 = F² - 2dF + d² + JuMP.add_to_expression!(ex, 1.0, F, F) + JuMP.add_to_expression!(ex, -2.0 * demand, F) + JuMP.add_to_expression!(ex, demand^2) + else + # Error term d*(1 - F/d)^2 = F²/d - 2F + d + JuMP.add_to_expression!(ex, 1.0 / demand, F, F) + JuMP.add_to_expression!(ex, -2.0, F) + JuMP.add_to_expression!(ex, demand) end - - add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative) return nothing end @@ -81,29 +40,17 @@ function set_objective_priority!( (; node_id, demand_reduced) = user_demand (; main_network_connections, subnetwork_demands) = allocation edge_ids = graph[].edge_ids[allocation_network_id] + F = problem[:F] - ex = JuMP.AffExpr() - - F_abs_user_demand = problem[:F_abs_user_demand] - F_abs_level_demand = problem[:F_abs_level_demand] - F_abs_flow_demand = problem[:F_abs_flow_demand] - - if !isempty(only(F_abs_user_demand.axes)) - ex += sum(F_abs_user_demand) - end - if !isempty(only(F_abs_level_demand.axes)) - ex += sum(F_abs_level_demand) - end - if !isempty(only(F_abs_flow_demand.axes)) - ex += sum(F_abs_flow_demand) - end + ex = JuMP.QuadExpr() # Terms for subnetworks as UserDemand if is_main_network(allocation_network_id) - for connections_subnetwork in main_network_connections + for connections_subnetwork in main_network_connections[2:end] for connection in connections_subnetwork d = subnetwork_demands[connection][priority_idx] - add_user_demand_term!(connection, d, problem) + F_inlet = F[connection] + add_objective_term!(ex, d, F_inlet) end end end @@ -116,7 +63,8 @@ function set_objective_priority!( # UserDemand user_demand_idx = findsorted(node_id, to_node_id) d = demand_reduced[user_demand_idx, priority_idx] - add_user_demand_term!(edge_id, d, problem) + F_ud = F[edge_id] + add_objective_term!(ex, d, F_ud) else has_demand, demand_node_id = has_external_demand(graph, to_node_id, :flow_demand) @@ -127,8 +75,9 @@ function set_objective_priority!( priority_idx == flow_priority_idx ? flow_demand.demand[findsorted(flow_demand.node_id, demand_node_id)] : 0.0 + F_fd = F[edge_id] - add_flow_demand_term!(edge_id, d, problem) + add_objective_term!(ex, d, F_fd) end end end @@ -142,7 +91,8 @@ function set_objective_priority!( get_basin_demand(allocation_model, u, p, t, node_id) : 0.0 _, basin_idx = id_index(basin.node_id, node_id) basin.demand[basin_idx] = d - add_basin_term!(problem, d, node_id) + F_ld = F_basin_in[node_id] + add_objective_term!(ex, d, F_ld) end new_objective = JuMP.@expression(problem, ex) @@ -259,7 +209,8 @@ function set_initial_capacities_source!( for edge_id in edge_ids if graph[edge_id...].allocation_network_id_source == allocation_network_id # If it is a source edge for this allocation problem - if edge_id ∉ main_network_source_edges + if (edge_id ∉ main_network_source_edges) | + is_main_network(allocation_network_id) # Reset the source to the current flow from the physical layer. source_capacity = get_flow(graph, edge_id..., 0) JuMP.set_normalized_rhs( diff --git a/core/test/allocation_test.jl b/core/test/allocation_test.jl index d804d8020..262c4e736 100644 --- a/core/test/allocation_test.jl +++ b/core/test/allocation_test.jl @@ -44,7 +44,7 @@ @test allocated[3, :] ≈ [0.0, 2.0] end -@testitem "Allocation objective: linear absolute" begin +@testitem "Allocation objective" begin using DataFrames: DataFrame using SciMLBase: successful_retcode using Ribasim: NodeID @@ -57,15 +57,23 @@ end config = Ribasim.Config(toml_path) model = Ribasim.run(config) @test successful_retcode(model) - problem = model.integrator.p.allocation.allocation_models[1].problem + (; p) = model.integrator + (; user_demand) = p + problem = p.allocation.allocation_models[1].problem objective = JuMP.objective_function(problem) - @test objective isa JuMP.AffExpr # Affine expression - @test :F_abs_user_demand in keys(problem.obj_dict) + @test objective isa JuMP.QuadExpr # Quadratic expression F = problem[:F] - F_abs_user_demand = problem[:F_abs_user_demand] - @test objective.terms[F_abs_user_demand[NodeID(:UserDemand, 5)]] == 1.0 - @test objective.terms[F_abs_user_demand[NodeID(:UserDemand, 6)]] == 1.0 + to_user_5 = F[(NodeID(:Basin, 4), NodeID(:UserDemand, 5))] + to_user_6 = F[(NodeID(:Basin, 4), NodeID(:UserDemand, 6))] + + @test objective.aff.constant ≈ sum(user_demand.demand) + @test objective.aff.terms[to_user_5] ≈ -2.0 + @test objective.aff.terms[to_user_6] ≈ -2.0 + @test objective.terms[JuMP.UnorderedPair(to_user_5, to_user_5)] ≈ + 1 / user_demand.demand[1] + @test objective.terms[JuMP.UnorderedPair(to_user_6, to_user_6)] ≈ + 1 / user_demand.demand[2] end @testitem "Allocation with controlled fractional flow" begin @@ -160,7 +168,7 @@ end @test Ribasim.is_main_network(first(allocation_network_ids)) # Connections from main network to subnetworks - @test isempty(main_network_connections[1]) + @test only(main_network_connections[1]) == (NodeID(:FlowBoundary, 1), NodeID(:Basin, 2)) @test only(main_network_connections[2]) == (NodeID(:Basin, 2), NodeID(:Pump, 11)) @test only(main_network_connections[3]) == (NodeID(:Basin, 6), NodeID(:Pump, 24)) @test only(main_network_connections[4]) == (NodeID(:Basin, 10), NodeID(:Pump, 38)) @@ -173,14 +181,6 @@ end (NodeID(:Basin, 10), NodeID(:Pump, 38)), ] ⊆ allocation_edges_main_network - # Subnetworks interpreted as user_demands require variables and constraints to - # support absolute value expressions in the objective function - allocation_model_main_network = Ribasim.get_allocation_model(p, Int32(1)) - problem = allocation_model_main_network.problem - @test problem[:F_abs_user_demand].axes[1] == NodeID.(:Pump, [11, 24, 38]) - @test problem[:abs_positive_user_demand].axes[1] == NodeID.(:Pump, [11, 24, 38]) - @test problem[:abs_negative_user_demand].axes[1] == NodeID.(:Pump, [11, 24, 38]) - # In each subnetwork, the connection from the main network to the subnetwork is # interpreted as a source @test Ribasim.get_allocation_model(p, Int32(3)).problem[:source].axes[1] == @@ -223,33 +223,40 @@ end # See the difference between these values here and in # "subnetworks_with_sources" - @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [4.0, 4.0, 0.0] + @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [4.0, 4.0, 0.0] atol = + 1e-4 @test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0] - @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.002] + @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.002] rtol = + 1e-4 # Solving for the main network, containing subnetworks as UserDemands allocation_model = allocation_models[1] (; problem) = allocation_model - Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.allocate) + Ribasim.allocate_priority!(allocation_model, u, p, t, 1, OptimizationType.allocate) # Main network objective function + F = problem[:F] objective = JuMP.objective_function(problem) - objective_variables = keys(objective.terms) - F_abs_user_demand = problem[:F_abs_user_demand] - @test F_abs_user_demand[NodeID(:Pump, 11)] ∈ objective_variables - @test F_abs_user_demand[NodeID(:Pump, 24)] ∈ objective_variables - @test F_abs_user_demand[NodeID(:Pump, 38)] ∈ objective_variables + objective_edges = keys(objective.terms) + F_1 = F[(NodeID(:Basin, 2), NodeID(:Pump, 11))] + F_2 = F[(NodeID(:Basin, 6), NodeID(:Pump, 24))] + F_3 = F[(NodeID(:Basin, 10), NodeID(:Pump, 38))] + @test JuMP.UnorderedPair(F_1, F_1) ∈ objective_edges + @test JuMP.UnorderedPair(F_2, F_2) ∈ objective_edges + @test JuMP.UnorderedPair(F_3, F_3) ∈ objective_edges # Running full allocation algorithm Ribasim.set_flow!(graph, NodeID(:FlowBoundary, 1), NodeID(:Basin, 2), 4.5) u = ComponentVector(; storage = zeros(length(p.basin.node_id))) Ribasim.update_allocation!((; p, t, u)) - @test subnetwork_allocateds[NodeID(:Basin, 2), NodeID(:Pump, 11)] ≈ - [4.0, 0.49500000, 0.0] - @test subnetwork_allocateds[NodeID(:Basin, 6), NodeID(:Pump, 24)] ≈ - [0.00399999999, 0.0, 0.0] - @test subnetwork_allocateds[NodeID(:Basin, 10), NodeID(:Pump, 38)] ≈ [0.001, 0.0, 0.0] + @test subnetwork_allocateds[NodeID(:Basin, 2), NodeID(:Pump, 11)] ≈ [4.0, 0.4947, 0.0] atol = + 1e-4 + @test subnetwork_allocateds[NodeID(:Basin, 6), NodeID(:Pump, 24)] ≈ [0.004, 0.0, 0.0] rtol = + 1e-3 + + @test subnetwork_allocateds[NodeID(:Basin, 10), NodeID(:Pump, 38)] ≈ + [0.001, 2.473e-4, 0.0] rtol = 1e-3 # Test for existence of edges in allocation flow record allocation_flow = DataFrame(record_flow) @@ -262,7 +269,7 @@ end @test all(allocation_flow.edge_exists) @test user_demand.allocated[2, :] ≈ [4.0, 0.0, 0.0] - @test user_demand.allocated[7, :] ≈ [0.001, 0.0, 0.0] + @test all(isapprox.(user_demand.allocated[7, :], [0.001, 0.0, 0.0], atol = 1e-5)) end @testitem "subnetworks with sources" begin @@ -292,7 +299,7 @@ end # Collecting demands u = ComponentVector(; storage = zeros(length(basin.node_id))) - for allocation_model in allocation_models[2:end] + for (i, allocation_model) in enumerate(allocation_models[2:end]) Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.internal_sources) Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.collect_demands) end @@ -300,7 +307,8 @@ end # See the difference between these values here and in # "allocation with main network optimization problem", internal sources # lower the subnetwork demands - @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [3.1, 4.0, 0.0] + @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [3.1, 4.0, 0.0] atol = + 1e-4 @test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0] @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.001] end @@ -399,7 +407,6 @@ end F = problem[:F] F_flow_buffer_in = problem[:F_flow_buffer_in] F_flow_buffer_out = problem[:F_flow_buffer_out] - F_abs_flow_demand = problem[:F_abs_flow_demand] node_id_with_flow_demand = NodeID(NodeType.TabulatedRatingCurve, 2) constraint_flow_out = problem[:flow_demand_outflow][node_id_with_flow_demand] @@ -435,9 +442,8 @@ end optimization_type, ) objective = JuMP.objective_function(problem) - @test F_abs_flow_demand[node_id_with_flow_demand] in keys(objective.terms) # Reduced demand - @test flow_demand.demand[1] == flow_demand.demand_itp[1](t) - 0.001 + @test flow_demand.demand[1] ≈ flow_demand.demand_itp[1](t) - 0.001 rtol = 1e-3 @test JuMP.normalized_rhs(constraint_flow_out) == Inf ## Priority 2 @@ -450,9 +456,9 @@ end optimization_type, ) # No demand left - @test flow_demand.demand[1] ≈ 0.0 + @test flow_demand.demand[1] < 1e-10 # Allocated - @test JuMP.value(only(F_flow_buffer_in)) == 0.001 + @test JuMP.value(only(F_flow_buffer_in)) ≈ 0.001 rtol = 1e-3 @test JuMP.normalized_rhs(constraint_flow_out) == 0.0 ## Priority 3 @@ -468,9 +474,10 @@ end # The flow from the source is used up in previous priorities @test JuMP.value(F[(NodeID(NodeType.LevelBoundary, 1), node_id_with_flow_demand)]) == 0 # So flow from the flow buffer is used for UserDemand #4 - @test JuMP.value(F_flow_buffer_out[node_id_with_flow_demand]) == 0.001 + @test JuMP.value(F_flow_buffer_out[node_id_with_flow_demand]) ≈ 0.001 rtol = 1e-3 + # Flow taken from buffer - @test JuMP.value(only(F_flow_buffer_out)) == user_demand.demand_itp[1][3](t) + @test JuMP.value(only(F_flow_buffer_out)) ≈ user_demand.demand_itp[1][3](t) rtol = 1e-3 # No flow coming from level boundary @test JuMP.value(F[(only(level_boundary.node_id), node_id_with_flow_demand)]) == 0 @@ -485,8 +492,9 @@ end ) # Get demand from buffers d = user_demand.demand_itp[3][4](t) - @assert JuMP.value(F[(NodeID(NodeType.UserDemand, 4), NodeID(NodeType.Basin, 7))]) + - JuMP.value(F[(NodeID(NodeType.UserDemand, 6), NodeID(NodeType.Basin, 7))]) == d + @test JuMP.value(F[(NodeID(NodeType.UserDemand, 4), NodeID(NodeType.Basin, 7))]) + + JuMP.value(F[(NodeID(NodeType.UserDemand, 6), NodeID(NodeType.Basin, 7))]) ≈ d rtol = + 1e-3 end @testitem "flow_demand_with_max_flow_rate" begin @@ -510,3 +518,28 @@ end ) @test constraint.set.upper == 2.0 end + +@testitem "equal_fraction_allocation" begin + using Ribasim: NodeID, NodeType + using StructArrays: StructVector + using DataFrames: DataFrame + + toml_path = + normpath(@__DIR__, "../../generated_testmodels/fair_distribution/ribasim.toml") + @test ispath(toml_path) + model = Ribasim.run(toml_path) + (; user_demand, graph) = model.integrator.p + + data_allocation = DataFrame(Ribasim.allocation_table(model)) + fractions = Vector{Float64}[] + + for id in user_demand.node_id + data_allocation_id = filter(:node_id => ==(id.value), data_allocation) + frac = data_allocation_id.allocated ./ data_allocation_id.demand + push!(fractions, frac) + end + + @test all(isapprox.(fractions[1], fractions[2], atol = 1e-4)) + @test all(isapprox.(fractions[1], fractions[3], atol = 1e-4)) + @test all(isapprox.(fractions[1], fractions[4], atol = 1e-4)) +end diff --git a/docs/core/allocation.qmd b/docs/core/allocation.qmd index e3669da7d..b0aa5e336 100644 --- a/docs/core/allocation.qmd +++ b/docs/core/allocation.qmd @@ -158,25 +158,23 @@ $$ The error between the flows and user demands is denoted by $E_{\text{user demand}}$, where $$ - E_{\text{user demand}} = \sum_{(i,j)\in E_S\;:\; i\in U_S} \left| F_{ij} - d_j^p(t)\right| + E_{\text{user demand}} = \sum_{(i,j)\in E_S\;:\; i\in U_S} d_j^p(t)\left(1 - \frac{F_{ij}}{d_j^p(t)}\right)^2 $$ :::{.callout-note} When performing main network allocation, the connections to subnetworks are also interpreted as UserDemand with demands determined by subnetwork demand collection. ::: -This type of objective cares about the absolute amount of water allocated to a demand. It treats all deviations equally which means it doesn't give larger punishment per flow unit if deviations increase. - -The absolute value applied here is not supported in a linear programming context directly; this requires introduction of new variables and constraints. For more details see [here](https://optimization.cbe.cornell.edu/index.php?title=Optimization_with_absolute_values). +This type of objective cares about the fraction of the demand allocated, and will lead to an equal fraction of all demands allocated when possible. Likewise, the error of level demands from basins is the absolute difference between flows consumed by basins and basin demands. $$ - E_{\text{level demand}} = \sum_{i \in B_S} \left| F_i^\text{basin in} - d_i^p(t)\right| + E_{\text{level demand}} = \sum_{i \in B_S} d_i^p(t)\left(1 - \frac{F_i^\text{basin in}}{d_i^p(t)}\right)^2 $$ Lastly, the error of the flow demands is given as below. $$ - E_{\text{flow demand}} = \sum_{i \in FD_S} \left| F_i^\text{buffer in} - d_i^p(t)\right| + E_{\text{flow demand}} = \sum_{i \in FD_S} d_i^p(t)\left(1 - \frac{F_i^\text{buffer in}}{d_i^p(t)}\right)^2 $$ ## The optimization constraints @@ -238,7 +236,7 @@ $$ {#eq-fractionalflowconstraint} ## Example -The following is an example of an optimization problem for the example shown [here](../python/examples.ipynb#model-with-allocation-user-demand): +The following is an example of an optimization problem for the example model shown [here](../python/examples.ipynb#model-with-allocation-user-demand): ```{julia} diff --git a/python/ribasim_testmodels/ribasim_testmodels/__init__.py b/python/ribasim_testmodels/ribasim_testmodels/__init__.py index ceeb1fad2..3706e2173 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/__init__.py +++ b/python/ribasim_testmodels/ribasim_testmodels/__init__.py @@ -7,6 +7,7 @@ import ribasim_testmodels from ribasim_testmodels.allocation import ( allocation_example_model, + fair_distribution_model, flow_demand_model, fractional_flow_subnetwork_model, level_demand_model, @@ -66,6 +67,7 @@ "bucket_model", "discrete_control_of_pid_control_model", "dutch_waterways_model", + "fair_distribution_model", "flow_boundary_time_model", "flow_condition_model", "flow_demand_model", diff --git a/python/ribasim_testmodels/ribasim_testmodels/allocation.py b/python/ribasim_testmodels/ribasim_testmodels/allocation.py index 1e102e8c0..5172a8dd8 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/allocation.py +++ b/python/ribasim_testmodels/ribasim_testmodels/allocation.py @@ -1029,3 +1029,100 @@ def linear_resistance_demand_model(): model.edge.add(model.flow_demand[4], model.linear_resistance[2]) return model + + +def fair_distribution_model(): + model = Model( + starttime="2020-01-01 00:00:00", + endtime="2020-01-07 00:00:00", + crs="EPSG:28992", + allocation=Allocation(use_allocation=True), + ) + + model.level_boundary.add( + Node(1, Point(0, 0), subnetwork_id=1), + [ + level_boundary.Static( + level=[1.0], + ) + ], + ) + + model.pump.add( + Node( + 2, + Point(1, 0), + subnetwork_id=1, + ), + [pump.Static(flow_rate=9.0, max_flow_rate=[9.0])], + ) + + model.basin.add( + Node(3, Point(2, 0), subnetwork_id=1), + [basin.Profile(area=1e3, level=[0.0, 1.0]), basin.State(level=[1.0])], + ) + + model.linear_resistance.add( + Node(4, Point(3, 0), subnetwork_id=1), + [linear_resistance.Static(resistance=[1.0])], + ) + + model.basin.add( + Node(5, Point(4, 0), subnetwork_id=1), + [basin.Profile(area=1e3, level=[0.0, 1.0]), basin.State(level=[1.0])], + ) + + model.user_demand.add( + Node(6, Point(2, 1), subnetwork_id=1), + [ + user_demand.Static( + priority=[1], demand=1.0, return_factor=1.0, min_level=0.2 + ) + ], + ) + + model.user_demand.add( + Node(7, Point(2, -1), subnetwork_id=1), + [ + user_demand.Static( + priority=[1], demand=2.0, return_factor=1.0, min_level=0.2 + ) + ], + ) + + model.user_demand.add( + Node(8, Point(4, 1), subnetwork_id=1), + [ + user_demand.Static( + priority=[1], demand=3.0, return_factor=1.0, min_level=0.2 + ) + ], + ) + + model.user_demand.add( + Node(9, Point(4, -1), subnetwork_id=1), + [ + user_demand.Time( + priority=1, + time=pd.date_range(start="2020-01", end="2021-01", freq="MS"), + demand=np.linspace(1.0, 5.0, 13), + return_factor=1.0, + min_level=0.2, + ) + ], + ) + + model.edge.add(model.level_boundary[1], model.pump[2], subnetwork_id=1) + model.edge.add(model.pump[2], model.basin[3]) + model.edge.add(model.basin[3], model.linear_resistance[4]) + model.edge.add(model.linear_resistance[4], model.basin[5]) + model.edge.add(model.basin[3], model.user_demand[6]) + model.edge.add(model.basin[3], model.user_demand[7]) + model.edge.add(model.basin[5], model.user_demand[8]) + model.edge.add(model.basin[5], model.user_demand[9]) + model.edge.add(model.user_demand[6], model.basin[3]) + model.edge.add(model.user_demand[7], model.basin[3]) + model.edge.add(model.user_demand[8], model.basin[5]) + model.edge.add(model.user_demand[9], model.basin[5]) + + return model From 510fa6c29db7e602a446d39254bcdec9b4c003a0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Apr 2024 10:18:16 +0200 Subject: [PATCH 051/158] Bump prefix-dev/setup-pixi from 0.5.1 to 0.5.2 (#1381) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [prefix-dev/setup-pixi](https://github.com/prefix-dev/setup-pixi) from 0.5.1 to 0.5.2.

Release notes

Sourced from prefix-dev/setup-pixi's releases.

v0.5.2

What's Changed

👷🏻 CI

🐛 Bug fixes

📝 Documentation

⬆️ Dependency updates

🤷🏻 Other changes

New Contributors

Full Changelog: https://github.com/prefix-dev/setup-pixi/compare/v0.5.1...v0.5.2

Commits
  • 4fc8d82 fix: restoring cache for pyproject.toml (#95)
  • 42f9edd fix: respect frozen/locked inputs for pixi list (#94)
  • 92e1dd3 Reference latest Pixi version in README (#92)
  • 07648b1 Bump the dependencies group with 2 updates (#90)
  • d0cc138 Bump the dependencies group with 4 updates (#89)
  • 3d63506 Reference latest Pixi version in README (#86)
  • 2e317cc Improve multi environment example (#85)
  • 603fd64 Create pull request template (#84)
  • f0903b2 Reference latest Pixi version in README (#83)
  • d2f0e65 Bump the dependencies group with 7 updates (#80)
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=prefix-dev/setup-pixi&package-manager=github_actions&previous-version=0.5.1&new-version=0.5.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/core_testmodels.yml | 2 +- .github/workflows/core_tests.yml | 2 +- .github/workflows/docs.yml | 2 +- .github/workflows/julia_auto_update.yml | 2 +- .github/workflows/mypy.yml | 2 +- .github/workflows/pixi_auto_update.yml | 2 +- .github/workflows/python_codegen.yml | 2 +- .github/workflows/python_tests.yml | 2 +- .github/workflows/qgis.yml | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/core_testmodels.yml b/.github/workflows/core_testmodels.yml index 8833f6fe7..2c1328740 100644 --- a/.github/workflows/core_testmodels.yml +++ b/.github/workflows/core_testmodels.yml @@ -33,7 +33,7 @@ jobs: with: cache-compiled: "true" cache-registries: "true" - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/core_tests.yml b/.github/workflows/core_tests.yml index d85f5ab2e..e687075e7 100644 --- a/.github/workflows/core_tests.yml +++ b/.github/workflows/core_tests.yml @@ -33,7 +33,7 @@ jobs: with: cache-compiled: "true" cache-registries: "true" - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index c0a59462e..8864587b8 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -24,7 +24,7 @@ jobs: with: cache-compiled: "true" cache-registries: "true" - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/julia_auto_update.yml b/.github/workflows/julia_auto_update.yml index f0011c3c8..dd0050fef 100644 --- a/.github/workflows/julia_auto_update.yml +++ b/.github/workflows/julia_auto_update.yml @@ -14,7 +14,7 @@ jobs: - uses: actions/checkout@v4 with: ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" - name: Update Julia manifest file diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index 44bf1d363..dca14991d 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -16,7 +16,7 @@ jobs: continue-on-error: true steps: - uses: actions/checkout@v4 - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/pixi_auto_update.yml b/.github/workflows/pixi_auto_update.yml index 0b9096599..39a34c520 100644 --- a/.github/workflows/pixi_auto_update.yml +++ b/.github/workflows/pixi_auto_update.yml @@ -14,7 +14,7 @@ jobs: - uses: actions/checkout@v4 with: ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" cache: false diff --git a/.github/workflows/python_codegen.yml b/.github/workflows/python_codegen.yml index 6f027ca04..0062e307f 100644 --- a/.github/workflows/python_codegen.yml +++ b/.github/workflows/python_codegen.yml @@ -16,7 +16,7 @@ jobs: continue-on-error: true steps: - uses: actions/checkout@v4 - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/python_tests.yml b/.github/workflows/python_tests.yml index 9770ccc46..485e2e834 100644 --- a/.github/workflows/python_tests.yml +++ b/.github/workflows/python_tests.yml @@ -26,7 +26,7 @@ jobs: - py310 steps: - uses: actions/checkout@v4 - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/qgis.yml b/.github/workflows/qgis.yml index 6bc4d97fb..70429ed7e 100644 --- a/.github/workflows/qgis.yml +++ b/.github/workflows/qgis.yml @@ -22,7 +22,7 @@ jobs: - windows-latest steps: - uses: actions/checkout@v4 - - uses: prefix-dev/setup-pixi@v0.5.1 + - uses: prefix-dev/setup-pixi@v0.5.2 with: pixi-version: "latest" - name: Prepare pixi From 799a2d58908635af2a0fe9db8c536891f502a03a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Apr 2024 10:19:14 +0200 Subject: [PATCH 052/158] Bump peaceiris/actions-gh-pages from 3 to 4 (#1382) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages) from 3 to 4.
Release notes

Sourced from peaceiris/actions-gh-pages's releases.

actions-github-pages v4.0.0

See CHANGELOG.md for more details.

actions-github-pages v3.9.3

See CHANGELOG.md for more details.

actions-github-pages v3.9.2

See CHANGELOG.md for more details.

actions-github-pages v3.9.1

  • update deps

See CHANGELOG.md for more details.

actions-github-pages v3.9.0

  • deps: bump node12 to node16
  • deps: bump @​actions/core from 1.6.0 to 1.10.0

See CHANGELOG.md for more details.

actions-github-pages v3.8.0

See CHANGELOG.md for more details.

actions-github-pages v3.7.3

See CHANGELOG.md for more details.

actions-github-pages v3.7.2

See CHANGELOG.md for more details.

actions-github-pages v3.7.1

See CHANGELOG.md for more details.

actions-github-pages v3.7.0

See CHANGELOG.md for more details.

Overviews:

  • Add .nojekyll file by default for all branches (#438) (079d483), closes #438
  • Add destination_dir option (#403) (f30118c), closes #403 #324 #390
  • Add exclude_assets option (#416) (0f5c65e), closes #416 #163
  • exclude_assets supports glob patterns (#417) (6f45501), closes #417 #163

actions-github-pages v3.6.4

See CHANGELOG.md for more details.

actions-github-pages v3.6.3

See CHANGELOG.md for more details.

actions-github-pages v3.6.2

See CHANGELOG.md for more details.

... (truncated)

Changelog

Sourced from peaceiris/actions-gh-pages's changelog.

3.9.3 (2023-03-30)

docs

fix

3.9.2 (2023-01-17)

chore

ci

deps

3.9.1 (2023-01-05)

chore

ci

  • add Renovate config (#802) (072d16c), closes #802
  • bump actions/dependency-review-action from 2 to 3 (#799) (e3b45f2), closes #799
  • bump peaceiris/actions-github-app-token from 1.1.4 to 1.1.5 (#798) (a5f971f), closes #798
  • bump peaceiris/actions-mdbook from 1.1.14 to 1.2.0 (#793) (9af6a68), closes #793
  • bump peaceiris/workflows from 0.17.1 to 0.17.2 (#794) (087a759), closes #794

... (truncated)

Commits
  • 4f9cc66 chore(release): 4.0.0
  • 9c75028 chore(release): Add build assets
  • 5049354 build: node 20.11.1
  • 4eb285e chore: bump node16 to node20 (#1067)
  • cdc09a3 chore(deps): update dependency @​types/node to v16.18.77 (#1065)
  • d830378 chore(deps): update dependency @​types/node to v16.18.76 (#1063)
  • 80daa1d chore(deps): update dependency @​types/node to v16.18.75 (#1061)
  • 108285e chore(deps): update dependency ts-jest to v29.1.2 (#1060)
  • 99c95ff chore(deps): update dependency @​types/node to v16.18.74 (#1058)
  • 1f46537 chore(deps): update dependency @​types/node to v16.18.73 (#1057)
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=peaceiris/actions-gh-pages&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 8864587b8..ae317c17f 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -41,7 +41,7 @@ jobs: - name: Publish Quarto Project if: github.ref == 'refs/heads/main' - uses: peaceiris/actions-gh-pages@v3 + uses: peaceiris/actions-gh-pages@v4 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./docs/_site From 0574470c910f9e26e8e009a49911a7c964f4198b Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Mon, 15 Apr 2024 15:00:51 +0200 Subject: [PATCH 053/158] Revert "Equal ratio allocation objective (#1366)" (#1385) This reverts commit 19139f1c8cc7c539e7f18ea329b14f8226ceb79d, https://github.com/Deltares/Ribasim/pull/1366. It introduced some non-deterministic failures, that would be best to investigate outside of main. See https://github.com/Deltares/Ribasim/issues/1383. To land this again we should also include https://github.com/Deltares/Ribasim/pull/1384, which addressed one of the failures. --- core/src/allocation_init.jl | 158 +++++++++++++++++- core/src/allocation_optim.jl | 105 ++++++++---- core/test/allocation_test.jl | 115 +++++-------- docs/core/allocation.qmd | 12 +- .../ribasim_testmodels/__init__.py | 2 - .../ribasim_testmodels/allocation.py | 97 ----------- 6 files changed, 281 insertions(+), 208 deletions(-) diff --git a/core/src/allocation_init.jl b/core/src/allocation_init.jl index 0f16cb2b4..d17ffc094 100644 --- a/core/src/allocation_init.jl +++ b/core/src/allocation_init.jl @@ -5,8 +5,7 @@ function find_subnetwork_connections!(p::Parameters)::Nothing (; subnetwork_demands, subnetwork_allocateds) = allocation for node_id in graph[].node_ids[1] for outflow_id in outflow_ids(graph, node_id) - if (graph[outflow_id].allocation_network_id != 1) | - (graph[node_id, outflow_id].allocation_network_id_source == 1) + if graph[outflow_id].allocation_network_id != 1 main_network_source_edges = get_main_network_connections(p, graph[outflow_id].allocation_network_id) edge = (node_id, outflow_id) @@ -406,6 +405,55 @@ function add_variables_flow_buffer!( return nothing end +""" +Certain allocation distribution types use absolute values in the objective function. +Since most optimization packages do not support the absolute value function directly, +New variables are introduced that act as the absolute value of an expression by +posing the appropriate constraints. +""" +function add_variables_absolute_value!( + problem::JuMP.Model, + p::Parameters, + allocation_network_id::Int32, +)::Nothing + (; graph, allocation) = p + (; main_network_connections) = allocation + + node_ids = graph[].node_ids[allocation_network_id] + node_ids_user_demand = NodeID[] + node_ids_level_demand = NodeID[] + node_ids_flow_demand = NodeID[] + + for node_id in node_ids + type = node_id.type + if type == NodeType.UserDemand + push!(node_ids_user_demand, node_id) + elseif type == NodeType.Basin + push!(node_ids_level_demand, node_id) + elseif has_external_demand(graph, node_id, :flow_demand)[1] + push!(node_ids_flow_demand, node_id) + end + end + + # For the main network, connections to subnetworks are treated as UserDemands + if is_main_network(allocation_network_id) + for connections_subnetwork in main_network_connections + for connection in connections_subnetwork + push!(node_ids_user_demand, connection[2]) + end + end + end + + problem[:F_abs_user_demand] = + JuMP.@variable(problem, F_abs_user_demand[node_id = node_ids_user_demand]) + problem[:F_abs_level_demand] = + JuMP.@variable(problem, F_abs_level_demand[node_id = node_ids_level_demand]) + problem[:F_abs_flow_demand] = + JuMP.@variable(problem, F_abs_flow_demand[node_id = node_ids_flow_demand]) + + return nothing +end + """ Add the flow capacity constraints to the allocation problem. Only finite capacities get a constraint. @@ -420,6 +468,7 @@ function add_constraints_capacity!( p::Parameters, allocation_network_id::Int32, )::Nothing + (; graph) = p main_network_source_edges = get_main_network_connections(p, allocation_network_id) F = problem[:F] edge_ids_finite_capacity = Tuple{NodeID, NodeID}[] @@ -643,6 +692,106 @@ function add_constraints_conservation_basin!( return nothing end +""" +Minimizing |expr| can be achieved by introducing a new variable expr_abs +and posing the following constraints: +expr_abs >= expr +expr_abs >= -expr +""" +function add_constraints_absolute_value!( + problem::JuMP.Model, + flow_per_node::Dict{NodeID, JuMP.VariableRef}, + F_abs::JuMP.Containers.DenseAxisArray, + variable_type::String, +)::Nothing + # Example demand + d = 2.0 + + node_ids = only(F_abs.axes) + + # These constraints together make sure that F_abs_* acts as the absolute + # value F_abs_* = |x| where x = F-d (here for example d = 2) + base_name = "abs_positive_$variable_type" + problem[Symbol(base_name)] = JuMP.@constraint( + problem, + [node_id = node_ids], + F_abs[node_id] >= (flow_per_node[node_id] - d), + base_name = base_name + ) + base_name = "abs_negative_$variable_type" + problem[Symbol(base_name)] = JuMP.@constraint( + problem, + [node_id = node_ids], + F_abs[node_id] >= -(flow_per_node[node_id] - d), + base_name = base_name + ) + + return nothing +end + +""" +Add constraints so that variables F_abs_user_demand act as the +absolute value of the expression comparing flow to a UserDemand to its demand. +""" +function add_constraints_absolute_value_user_demand!( + problem::JuMP.Model, + p::Parameters, +)::Nothing + (; graph) = p + + F = problem[:F] + F_abs_user_demand = problem[:F_abs_user_demand] + + flow_per_node = Dict( + node_id => F[(only(inflow_ids_allocation(graph, node_id)), node_id)] for + node_id in only(F_abs_user_demand.axes) + ) + + add_constraints_absolute_value!( + problem, + flow_per_node, + F_abs_user_demand, + "user_demand", + ) + + return nothing +end + +""" +Add constraints so that variables F_abs_level_demand act as the +absolute value of the expression comparing flow to a basin to its demand. +""" +function add_constraints_absolute_value_level_demand!(problem::JuMP.Model)::Nothing + F_basin_in = problem[:F_basin_in] + F_abs_level_demand = problem[:F_abs_level_demand] + flow_per_node = + Dict(node_id => F_basin_in[node_id] for node_id in only(F_abs_level_demand.axes)) + + add_constraints_absolute_value!(problem, flow_per_node, F_abs_level_demand, "basin") + + return nothing +end + +""" +Add constraints so that variables F_abs_flow_demand act as the +absolute value of the expression comparing flow to a flow buffer to the flow demand. +""" +function add_constraints_absolute_value_flow_demand!(problem::JuMP.Model)::Nothing + F_flow_buffer_in = problem[:F_flow_buffer_in] + F_abs_flow_demand = problem[:F_abs_flow_demand] + flow_per_node = Dict( + node_id => F_flow_buffer_in[node_id] for node_id in only(F_abs_flow_demand.axes) + ) + + add_constraints_absolute_value!( + problem, + flow_per_node, + F_abs_flow_demand, + "flow_demand", + ) + return nothing +end + """ Add the fractional flow constraints to the allocation problem. The constraint indices are allocation edges over a fractional flow node. @@ -772,6 +921,7 @@ function allocation_problem( # Add variables to problem add_variables_flow!(problem, p, allocation_network_id) add_variables_basin!(problem, p, allocation_network_id) + add_variables_absolute_value!(problem, p, allocation_network_id) add_variables_flow_buffer!(problem, p, allocation_network_id) # Add constraints to problem @@ -779,6 +929,10 @@ function allocation_problem( add_constraints_conservation_flow_demand!(problem, p, allocation_network_id) add_constraints_conservation_subnetwork!(problem, p, allocation_network_id) + add_constraints_absolute_value_user_demand!(problem, p) + add_constraints_absolute_value_flow_demand!(problem) + add_constraints_absolute_value_level_demand!(problem) + add_constraints_capacity!(problem, capacity, p, allocation_network_id) add_constraints_source!(problem, p, allocation_network_id) add_constraints_user_source!(problem, p, allocation_network_id) diff --git a/core/src/allocation_optim.jl b/core/src/allocation_optim.jl index 9172c13b2..b42393f75 100644 --- a/core/src/allocation_optim.jl +++ b/core/src/allocation_optim.jl @@ -1,26 +1,67 @@ @enumx OptimizationType internal_sources collect_demands allocate """ -Add an objective term `demand * (1 - flow/demand)^2`. If the absolute -value of the demand is very small, this would lead to huge coefficients, -so in that case a term of the form (flow - demand)^2 is used. +Add a term to the objective function given by the objective type, +depending in the provided flow variable and the associated demand. """ function add_objective_term!( - ex::JuMP.QuadExpr, demand::Float64, - F::JuMP.VariableRef, + constraint_abs_positive::Union{JuMP.ConstraintRef, Nothing} = nothing, + constraint_abs_negative::Union{JuMP.ConstraintRef, Nothing} = nothing, )::Nothing - if abs(demand) < 1e-5 - # Error term (F - d)^2 = F² - 2dF + d² - JuMP.add_to_expression!(ex, 1.0, F, F) - JuMP.add_to_expression!(ex, -2.0 * demand, F) - JuMP.add_to_expression!(ex, demand^2) - else - # Error term d*(1 - F/d)^2 = F²/d - 2F + d - JuMP.add_to_expression!(ex, 1.0 / demand, F, F) - JuMP.add_to_expression!(ex, -2.0, F) - JuMP.add_to_expression!(ex, demand) + # Objective function ∑ |F - d| + JuMP.set_normalized_rhs(constraint_abs_positive, -demand) + JuMP.set_normalized_rhs(constraint_abs_negative, demand) + return nothing +end + +""" +Add a term to the expression of the objective function corresponding to +the demand of a UserDemand. +""" +function add_user_demand_term!( + edge::Tuple{NodeID, NodeID}, + demand::Float64, + problem::JuMP.Model, +)::Nothing + node_id_user_demand = edge[2] + + constraint_abs_positive = problem[:abs_positive_user_demand][node_id_user_demand] + constraint_abs_negative = problem[:abs_negative_user_demand][node_id_user_demand] + + add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative) +end + +""" +Add a term to the expression of the objective function corresponding to +the demand of a node with a a flow demand. +""" +function add_flow_demand_term!( + edge::Tuple{NodeID, NodeID}, + demand::Float64, + problem::JuMP.Model, +)::Nothing + node_id_flow_demand = edge[2] + + constraint_abs_positive = problem[:abs_positive_flow_demand][node_id_flow_demand] + constraint_abs_negative = problem[:abs_negative_flow_demand][node_id_flow_demand] + + add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative) +end + +""" +Add a term to the expression of the objective function corresponding to +the demand of a basin. +""" +function add_basin_term!(problem::JuMP.Model, demand::Float64, node_id::NodeID)::Nothing + constraint_abs_positive = get(problem[:abs_positive_basin], node_id) + constraint_abs_negative = get(problem[:abs_negative_basin], node_id) + + if isnothing(constraint_abs_positive) + return end + + add_objective_term!(demand, constraint_abs_positive, constraint_abs_negative) return nothing end @@ -40,17 +81,29 @@ function set_objective_priority!( (; node_id, demand_reduced) = user_demand (; main_network_connections, subnetwork_demands) = allocation edge_ids = graph[].edge_ids[allocation_network_id] - F = problem[:F] - ex = JuMP.QuadExpr() + ex = JuMP.AffExpr() + + F_abs_user_demand = problem[:F_abs_user_demand] + F_abs_level_demand = problem[:F_abs_level_demand] + F_abs_flow_demand = problem[:F_abs_flow_demand] + + if !isempty(only(F_abs_user_demand.axes)) + ex += sum(F_abs_user_demand) + end + if !isempty(only(F_abs_level_demand.axes)) + ex += sum(F_abs_level_demand) + end + if !isempty(only(F_abs_flow_demand.axes)) + ex += sum(F_abs_flow_demand) + end # Terms for subnetworks as UserDemand if is_main_network(allocation_network_id) - for connections_subnetwork in main_network_connections[2:end] + for connections_subnetwork in main_network_connections for connection in connections_subnetwork d = subnetwork_demands[connection][priority_idx] - F_inlet = F[connection] - add_objective_term!(ex, d, F_inlet) + add_user_demand_term!(connection, d, problem) end end end @@ -63,8 +116,7 @@ function set_objective_priority!( # UserDemand user_demand_idx = findsorted(node_id, to_node_id) d = demand_reduced[user_demand_idx, priority_idx] - F_ud = F[edge_id] - add_objective_term!(ex, d, F_ud) + add_user_demand_term!(edge_id, d, problem) else has_demand, demand_node_id = has_external_demand(graph, to_node_id, :flow_demand) @@ -75,9 +127,8 @@ function set_objective_priority!( priority_idx == flow_priority_idx ? flow_demand.demand[findsorted(flow_demand.node_id, demand_node_id)] : 0.0 - F_fd = F[edge_id] - add_objective_term!(ex, d, F_fd) + add_flow_demand_term!(edge_id, d, problem) end end end @@ -91,8 +142,7 @@ function set_objective_priority!( get_basin_demand(allocation_model, u, p, t, node_id) : 0.0 _, basin_idx = id_index(basin.node_id, node_id) basin.demand[basin_idx] = d - F_ld = F_basin_in[node_id] - add_objective_term!(ex, d, F_ld) + add_basin_term!(problem, d, node_id) end new_objective = JuMP.@expression(problem, ex) @@ -209,8 +259,7 @@ function set_initial_capacities_source!( for edge_id in edge_ids if graph[edge_id...].allocation_network_id_source == allocation_network_id # If it is a source edge for this allocation problem - if (edge_id ∉ main_network_source_edges) | - is_main_network(allocation_network_id) + if edge_id ∉ main_network_source_edges # Reset the source to the current flow from the physical layer. source_capacity = get_flow(graph, edge_id..., 0) JuMP.set_normalized_rhs( diff --git a/core/test/allocation_test.jl b/core/test/allocation_test.jl index 262c4e736..d804d8020 100644 --- a/core/test/allocation_test.jl +++ b/core/test/allocation_test.jl @@ -44,7 +44,7 @@ @test allocated[3, :] ≈ [0.0, 2.0] end -@testitem "Allocation objective" begin +@testitem "Allocation objective: linear absolute" begin using DataFrames: DataFrame using SciMLBase: successful_retcode using Ribasim: NodeID @@ -57,23 +57,15 @@ end config = Ribasim.Config(toml_path) model = Ribasim.run(config) @test successful_retcode(model) - (; p) = model.integrator - (; user_demand) = p - problem = p.allocation.allocation_models[1].problem + problem = model.integrator.p.allocation.allocation_models[1].problem objective = JuMP.objective_function(problem) - @test objective isa JuMP.QuadExpr # Quadratic expression + @test objective isa JuMP.AffExpr # Affine expression + @test :F_abs_user_demand in keys(problem.obj_dict) F = problem[:F] + F_abs_user_demand = problem[:F_abs_user_demand] - to_user_5 = F[(NodeID(:Basin, 4), NodeID(:UserDemand, 5))] - to_user_6 = F[(NodeID(:Basin, 4), NodeID(:UserDemand, 6))] - - @test objective.aff.constant ≈ sum(user_demand.demand) - @test objective.aff.terms[to_user_5] ≈ -2.0 - @test objective.aff.terms[to_user_6] ≈ -2.0 - @test objective.terms[JuMP.UnorderedPair(to_user_5, to_user_5)] ≈ - 1 / user_demand.demand[1] - @test objective.terms[JuMP.UnorderedPair(to_user_6, to_user_6)] ≈ - 1 / user_demand.demand[2] + @test objective.terms[F_abs_user_demand[NodeID(:UserDemand, 5)]] == 1.0 + @test objective.terms[F_abs_user_demand[NodeID(:UserDemand, 6)]] == 1.0 end @testitem "Allocation with controlled fractional flow" begin @@ -168,7 +160,7 @@ end @test Ribasim.is_main_network(first(allocation_network_ids)) # Connections from main network to subnetworks - @test only(main_network_connections[1]) == (NodeID(:FlowBoundary, 1), NodeID(:Basin, 2)) + @test isempty(main_network_connections[1]) @test only(main_network_connections[2]) == (NodeID(:Basin, 2), NodeID(:Pump, 11)) @test only(main_network_connections[3]) == (NodeID(:Basin, 6), NodeID(:Pump, 24)) @test only(main_network_connections[4]) == (NodeID(:Basin, 10), NodeID(:Pump, 38)) @@ -181,6 +173,14 @@ end (NodeID(:Basin, 10), NodeID(:Pump, 38)), ] ⊆ allocation_edges_main_network + # Subnetworks interpreted as user_demands require variables and constraints to + # support absolute value expressions in the objective function + allocation_model_main_network = Ribasim.get_allocation_model(p, Int32(1)) + problem = allocation_model_main_network.problem + @test problem[:F_abs_user_demand].axes[1] == NodeID.(:Pump, [11, 24, 38]) + @test problem[:abs_positive_user_demand].axes[1] == NodeID.(:Pump, [11, 24, 38]) + @test problem[:abs_negative_user_demand].axes[1] == NodeID.(:Pump, [11, 24, 38]) + # In each subnetwork, the connection from the main network to the subnetwork is # interpreted as a source @test Ribasim.get_allocation_model(p, Int32(3)).problem[:source].axes[1] == @@ -223,40 +223,33 @@ end # See the difference between these values here and in # "subnetworks_with_sources" - @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [4.0, 4.0, 0.0] atol = - 1e-4 + @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [4.0, 4.0, 0.0] @test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0] - @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.002] rtol = - 1e-4 + @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.002] # Solving for the main network, containing subnetworks as UserDemands allocation_model = allocation_models[1] (; problem) = allocation_model - Ribasim.allocate_priority!(allocation_model, u, p, t, 1, OptimizationType.allocate) + Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.allocate) # Main network objective function - F = problem[:F] objective = JuMP.objective_function(problem) - objective_edges = keys(objective.terms) - F_1 = F[(NodeID(:Basin, 2), NodeID(:Pump, 11))] - F_2 = F[(NodeID(:Basin, 6), NodeID(:Pump, 24))] - F_3 = F[(NodeID(:Basin, 10), NodeID(:Pump, 38))] - @test JuMP.UnorderedPair(F_1, F_1) ∈ objective_edges - @test JuMP.UnorderedPair(F_2, F_2) ∈ objective_edges - @test JuMP.UnorderedPair(F_3, F_3) ∈ objective_edges + objective_variables = keys(objective.terms) + F_abs_user_demand = problem[:F_abs_user_demand] + @test F_abs_user_demand[NodeID(:Pump, 11)] ∈ objective_variables + @test F_abs_user_demand[NodeID(:Pump, 24)] ∈ objective_variables + @test F_abs_user_demand[NodeID(:Pump, 38)] ∈ objective_variables # Running full allocation algorithm Ribasim.set_flow!(graph, NodeID(:FlowBoundary, 1), NodeID(:Basin, 2), 4.5) u = ComponentVector(; storage = zeros(length(p.basin.node_id))) Ribasim.update_allocation!((; p, t, u)) - @test subnetwork_allocateds[NodeID(:Basin, 2), NodeID(:Pump, 11)] ≈ [4.0, 0.4947, 0.0] atol = - 1e-4 - @test subnetwork_allocateds[NodeID(:Basin, 6), NodeID(:Pump, 24)] ≈ [0.004, 0.0, 0.0] rtol = - 1e-3 - - @test subnetwork_allocateds[NodeID(:Basin, 10), NodeID(:Pump, 38)] ≈ - [0.001, 2.473e-4, 0.0] rtol = 1e-3 + @test subnetwork_allocateds[NodeID(:Basin, 2), NodeID(:Pump, 11)] ≈ + [4.0, 0.49500000, 0.0] + @test subnetwork_allocateds[NodeID(:Basin, 6), NodeID(:Pump, 24)] ≈ + [0.00399999999, 0.0, 0.0] + @test subnetwork_allocateds[NodeID(:Basin, 10), NodeID(:Pump, 38)] ≈ [0.001, 0.0, 0.0] # Test for existence of edges in allocation flow record allocation_flow = DataFrame(record_flow) @@ -269,7 +262,7 @@ end @test all(allocation_flow.edge_exists) @test user_demand.allocated[2, :] ≈ [4.0, 0.0, 0.0] - @test all(isapprox.(user_demand.allocated[7, :], [0.001, 0.0, 0.0], atol = 1e-5)) + @test user_demand.allocated[7, :] ≈ [0.001, 0.0, 0.0] end @testitem "subnetworks with sources" begin @@ -299,7 +292,7 @@ end # Collecting demands u = ComponentVector(; storage = zeros(length(basin.node_id))) - for (i, allocation_model) in enumerate(allocation_models[2:end]) + for allocation_model in allocation_models[2:end] Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.internal_sources) Ribasim.allocate!(p, allocation_model, t, u, OptimizationType.collect_demands) end @@ -307,8 +300,7 @@ end # See the difference between these values here and in # "allocation with main network optimization problem", internal sources # lower the subnetwork demands - @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [3.1, 4.0, 0.0] atol = - 1e-4 + @test subnetwork_demands[(NodeID(:Basin, 2), NodeID(:Pump, 11))] ≈ [3.1, 4.0, 0.0] @test subnetwork_demands[(NodeID(:Basin, 6), NodeID(:Pump, 24))] ≈ [0.004, 0.0, 0.0] @test subnetwork_demands[(NodeID(:Basin, 10), NodeID(:Pump, 38))][1:2] ≈ [0.001, 0.001] end @@ -407,6 +399,7 @@ end F = problem[:F] F_flow_buffer_in = problem[:F_flow_buffer_in] F_flow_buffer_out = problem[:F_flow_buffer_out] + F_abs_flow_demand = problem[:F_abs_flow_demand] node_id_with_flow_demand = NodeID(NodeType.TabulatedRatingCurve, 2) constraint_flow_out = problem[:flow_demand_outflow][node_id_with_flow_demand] @@ -442,8 +435,9 @@ end optimization_type, ) objective = JuMP.objective_function(problem) + @test F_abs_flow_demand[node_id_with_flow_demand] in keys(objective.terms) # Reduced demand - @test flow_demand.demand[1] ≈ flow_demand.demand_itp[1](t) - 0.001 rtol = 1e-3 + @test flow_demand.demand[1] == flow_demand.demand_itp[1](t) - 0.001 @test JuMP.normalized_rhs(constraint_flow_out) == Inf ## Priority 2 @@ -456,9 +450,9 @@ end optimization_type, ) # No demand left - @test flow_demand.demand[1] < 1e-10 + @test flow_demand.demand[1] ≈ 0.0 # Allocated - @test JuMP.value(only(F_flow_buffer_in)) ≈ 0.001 rtol = 1e-3 + @test JuMP.value(only(F_flow_buffer_in)) == 0.001 @test JuMP.normalized_rhs(constraint_flow_out) == 0.0 ## Priority 3 @@ -474,10 +468,9 @@ end # The flow from the source is used up in previous priorities @test JuMP.value(F[(NodeID(NodeType.LevelBoundary, 1), node_id_with_flow_demand)]) == 0 # So flow from the flow buffer is used for UserDemand #4 - @test JuMP.value(F_flow_buffer_out[node_id_with_flow_demand]) ≈ 0.001 rtol = 1e-3 - + @test JuMP.value(F_flow_buffer_out[node_id_with_flow_demand]) == 0.001 # Flow taken from buffer - @test JuMP.value(only(F_flow_buffer_out)) ≈ user_demand.demand_itp[1][3](t) rtol = 1e-3 + @test JuMP.value(only(F_flow_buffer_out)) == user_demand.demand_itp[1][3](t) # No flow coming from level boundary @test JuMP.value(F[(only(level_boundary.node_id), node_id_with_flow_demand)]) == 0 @@ -492,9 +485,8 @@ end ) # Get demand from buffers d = user_demand.demand_itp[3][4](t) - @test JuMP.value(F[(NodeID(NodeType.UserDemand, 4), NodeID(NodeType.Basin, 7))]) + - JuMP.value(F[(NodeID(NodeType.UserDemand, 6), NodeID(NodeType.Basin, 7))]) ≈ d rtol = - 1e-3 + @assert JuMP.value(F[(NodeID(NodeType.UserDemand, 4), NodeID(NodeType.Basin, 7))]) + + JuMP.value(F[(NodeID(NodeType.UserDemand, 6), NodeID(NodeType.Basin, 7))]) == d end @testitem "flow_demand_with_max_flow_rate" begin @@ -518,28 +510,3 @@ end ) @test constraint.set.upper == 2.0 end - -@testitem "equal_fraction_allocation" begin - using Ribasim: NodeID, NodeType - using StructArrays: StructVector - using DataFrames: DataFrame - - toml_path = - normpath(@__DIR__, "../../generated_testmodels/fair_distribution/ribasim.toml") - @test ispath(toml_path) - model = Ribasim.run(toml_path) - (; user_demand, graph) = model.integrator.p - - data_allocation = DataFrame(Ribasim.allocation_table(model)) - fractions = Vector{Float64}[] - - for id in user_demand.node_id - data_allocation_id = filter(:node_id => ==(id.value), data_allocation) - frac = data_allocation_id.allocated ./ data_allocation_id.demand - push!(fractions, frac) - end - - @test all(isapprox.(fractions[1], fractions[2], atol = 1e-4)) - @test all(isapprox.(fractions[1], fractions[3], atol = 1e-4)) - @test all(isapprox.(fractions[1], fractions[4], atol = 1e-4)) -end diff --git a/docs/core/allocation.qmd b/docs/core/allocation.qmd index b0aa5e336..e3669da7d 100644 --- a/docs/core/allocation.qmd +++ b/docs/core/allocation.qmd @@ -158,23 +158,25 @@ $$ The error between the flows and user demands is denoted by $E_{\text{user demand}}$, where $$ - E_{\text{user demand}} = \sum_{(i,j)\in E_S\;:\; i\in U_S} d_j^p(t)\left(1 - \frac{F_{ij}}{d_j^p(t)}\right)^2 + E_{\text{user demand}} = \sum_{(i,j)\in E_S\;:\; i\in U_S} \left| F_{ij} - d_j^p(t)\right| $$ :::{.callout-note} When performing main network allocation, the connections to subnetworks are also interpreted as UserDemand with demands determined by subnetwork demand collection. ::: -This type of objective cares about the fraction of the demand allocated, and will lead to an equal fraction of all demands allocated when possible. +This type of objective cares about the absolute amount of water allocated to a demand. It treats all deviations equally which means it doesn't give larger punishment per flow unit if deviations increase. + +The absolute value applied here is not supported in a linear programming context directly; this requires introduction of new variables and constraints. For more details see [here](https://optimization.cbe.cornell.edu/index.php?title=Optimization_with_absolute_values). Likewise, the error of level demands from basins is the absolute difference between flows consumed by basins and basin demands. $$ - E_{\text{level demand}} = \sum_{i \in B_S} d_i^p(t)\left(1 - \frac{F_i^\text{basin in}}{d_i^p(t)}\right)^2 + E_{\text{level demand}} = \sum_{i \in B_S} \left| F_i^\text{basin in} - d_i^p(t)\right| $$ Lastly, the error of the flow demands is given as below. $$ - E_{\text{flow demand}} = \sum_{i \in FD_S} d_i^p(t)\left(1 - \frac{F_i^\text{buffer in}}{d_i^p(t)}\right)^2 + E_{\text{flow demand}} = \sum_{i \in FD_S} \left| F_i^\text{buffer in} - d_i^p(t)\right| $$ ## The optimization constraints @@ -236,7 +238,7 @@ $$ {#eq-fractionalflowconstraint} ## Example -The following is an example of an optimization problem for the example model shown [here](../python/examples.ipynb#model-with-allocation-user-demand): +The following is an example of an optimization problem for the example shown [here](../python/examples.ipynb#model-with-allocation-user-demand): ```{julia} diff --git a/python/ribasim_testmodels/ribasim_testmodels/__init__.py b/python/ribasim_testmodels/ribasim_testmodels/__init__.py index 3706e2173..ceeb1fad2 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/__init__.py +++ b/python/ribasim_testmodels/ribasim_testmodels/__init__.py @@ -7,7 +7,6 @@ import ribasim_testmodels from ribasim_testmodels.allocation import ( allocation_example_model, - fair_distribution_model, flow_demand_model, fractional_flow_subnetwork_model, level_demand_model, @@ -67,7 +66,6 @@ "bucket_model", "discrete_control_of_pid_control_model", "dutch_waterways_model", - "fair_distribution_model", "flow_boundary_time_model", "flow_condition_model", "flow_demand_model", diff --git a/python/ribasim_testmodels/ribasim_testmodels/allocation.py b/python/ribasim_testmodels/ribasim_testmodels/allocation.py index 5172a8dd8..1e102e8c0 100644 --- a/python/ribasim_testmodels/ribasim_testmodels/allocation.py +++ b/python/ribasim_testmodels/ribasim_testmodels/allocation.py @@ -1029,100 +1029,3 @@ def linear_resistance_demand_model(): model.edge.add(model.flow_demand[4], model.linear_resistance[2]) return model - - -def fair_distribution_model(): - model = Model( - starttime="2020-01-01 00:00:00", - endtime="2020-01-07 00:00:00", - crs="EPSG:28992", - allocation=Allocation(use_allocation=True), - ) - - model.level_boundary.add( - Node(1, Point(0, 0), subnetwork_id=1), - [ - level_boundary.Static( - level=[1.0], - ) - ], - ) - - model.pump.add( - Node( - 2, - Point(1, 0), - subnetwork_id=1, - ), - [pump.Static(flow_rate=9.0, max_flow_rate=[9.0])], - ) - - model.basin.add( - Node(3, Point(2, 0), subnetwork_id=1), - [basin.Profile(area=1e3, level=[0.0, 1.0]), basin.State(level=[1.0])], - ) - - model.linear_resistance.add( - Node(4, Point(3, 0), subnetwork_id=1), - [linear_resistance.Static(resistance=[1.0])], - ) - - model.basin.add( - Node(5, Point(4, 0), subnetwork_id=1), - [basin.Profile(area=1e3, level=[0.0, 1.0]), basin.State(level=[1.0])], - ) - - model.user_demand.add( - Node(6, Point(2, 1), subnetwork_id=1), - [ - user_demand.Static( - priority=[1], demand=1.0, return_factor=1.0, min_level=0.2 - ) - ], - ) - - model.user_demand.add( - Node(7, Point(2, -1), subnetwork_id=1), - [ - user_demand.Static( - priority=[1], demand=2.0, return_factor=1.0, min_level=0.2 - ) - ], - ) - - model.user_demand.add( - Node(8, Point(4, 1), subnetwork_id=1), - [ - user_demand.Static( - priority=[1], demand=3.0, return_factor=1.0, min_level=0.2 - ) - ], - ) - - model.user_demand.add( - Node(9, Point(4, -1), subnetwork_id=1), - [ - user_demand.Time( - priority=1, - time=pd.date_range(start="2020-01", end="2021-01", freq="MS"), - demand=np.linspace(1.0, 5.0, 13), - return_factor=1.0, - min_level=0.2, - ) - ], - ) - - model.edge.add(model.level_boundary[1], model.pump[2], subnetwork_id=1) - model.edge.add(model.pump[2], model.basin[3]) - model.edge.add(model.basin[3], model.linear_resistance[4]) - model.edge.add(model.linear_resistance[4], model.basin[5]) - model.edge.add(model.basin[3], model.user_demand[6]) - model.edge.add(model.basin[3], model.user_demand[7]) - model.edge.add(model.basin[5], model.user_demand[8]) - model.edge.add(model.basin[5], model.user_demand[9]) - model.edge.add(model.user_demand[6], model.basin[3]) - model.edge.add(model.user_demand[7], model.basin[3]) - model.edge.add(model.user_demand[8], model.basin[5]) - model.edge.add(model.user_demand[9], model.basin[5]) - - return model From 221155667a7c63164b17bf108b1411eb91888218 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 11:12:52 +0200 Subject: [PATCH 054/158] TeamCity change in 'Ribasim / Linux' project: 'Build' build template was extracted from 'Build libribasim' build configuration --- .../buildTypes/Ribasim_Linux_Build.xml | 65 +++++++++++++++++++ .../Ribasim_Linux_BuildLibribasim.xml | 61 ++--------------- 2 files changed, 70 insertions(+), 56 deletions(-) create mode 100644 .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml new file mode 100644 index 000000000..50b575465 --- /dev/null +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml @@ -0,0 +1,65 @@ + + + diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml index 411c2ddcf..3cda8935d 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml @@ -2,64 +2,13 @@ Build libribasim - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - - - - - - - - - + From f70aaccb8a80afdd44e45fdeaf5e6f680f491855 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 11:33:25 +0200 Subject: [PATCH 055/158] TeamCity change in 'Ribasim / Linux' project: requirements of 'Build' build template were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml index 50b575465..53027c4ec 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml @@ -46,7 +46,7 @@ pixi run build-libribasim]]>
- + From 48a770e5b93bb1ccd2f092ad856cf3305be01835 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 11:34:06 +0200 Subject: [PATCH 056/158] TeamCity change in 'Ribasim / Linux' project: requirements of 'Build' build template were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml index 53027c4ec..4be8aaa2d 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml @@ -46,7 +46,7 @@ pixi run build-libribasim]]> - + From 2b5f0bd9a14eabc8085a48f441b97bb49e774585 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 11:34:27 +0200 Subject: [PATCH 057/158] TeamCity change in 'Ribasim / Linux' project: requirements of 'Build' build template were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml index 4be8aaa2d..50b575465 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml @@ -46,7 +46,7 @@ pixi run build-libribasim]]> - + From 391129adb5070ffe5fe16fbf01753a5087e5ed5b Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 11:40:56 +0200 Subject: [PATCH 058/158] TeamCity change in 'Ribasim / Linux' project: requirements of 'Build' build template were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml index 50b575465..86ecc3d31 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml @@ -46,7 +46,7 @@ pixi run build-libribasim]]> - + From bf3c6ef160759162ea4d8d36514e6d264027eab1 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 11:52:29 +0200 Subject: [PATCH 059/158] TeamCity change in 'Ribasim / Linux' project: 'Build' build template settings were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml index 86ecc3d31..3a1244512 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml @@ -8,6 +8,9 @@ - - - - - - - - From b956f00702449177d72a4fe796b83c283684e861 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:01:45 +0200 Subject: [PATCH 069/158] TeamCity change in 'Ribasim / Linux' project: 'Test ribasim_cli' build configuration was attached to 'Build' template --- .../Ribasim_Linux_TestRibasimCli.xml | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml index 8f64b9a8c..8a7ca3254 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml @@ -2,10 +2,9 @@ Test ribasim_cli - + @@ -40,11 +39,7 @@ pixi run test-ribasim-cli]]> - - - - - + @@ -74,14 +69,6 @@ pixi run test-ribasim-cli]]> - - - - - - - - @@ -108,3 +95,4 @@ pixi run test-ribasim-cli]]> + From 6ae873ac92268c1436451c8f57b2ee9407e71cfd Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:16:09 +0200 Subject: [PATCH 070/158] TeamCity change in 'Ribasim / Linux' project: 'Build' build template settings were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml index 935189868..3a1244512 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml @@ -9,7 +9,6 @@ + + + + + + + + From 39d3c65dfc68f6ee14b5d60546e97076443f9d5a Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:21:39 +0200 Subject: [PATCH 076/158] TeamCity change in 'Ribasim / Linux' project: 'Test ribasim_api' build configuration was detached from 'Build' template --- .../Ribasim_Linux_TestRibasimApi.xml | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml index 06ae7975f..56c94aaa9 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml @@ -2,9 +2,12 @@ Test ribasim_api - + @@ -39,9 +42,14 @@ pixi run test-ribasim-api]]> - + + + + + + @@ -76,6 +84,14 @@ pixi run test-ribasim-api]]> + + + + + + + + From b5aba731238a5d13dd6db41a34189357d3602cc5 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:25:42 +0200 Subject: [PATCH 077/158] TeamCity change in 'Ribasim / Linux' project: 'Os' build template was created --- .../Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml new file mode 100644 index 000000000..3321ccad1 --- /dev/null +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml @@ -0,0 +1,14 @@ + + + From b17196fb759af5a7b35ae33eb6558c4bc4c8df91 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:27:03 +0200 Subject: [PATCH 078/158] TeamCity change in 'Ribasim / Linux' project: general settings of 'Os' build template were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml index 3321ccad1..20e3b701e 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml @@ -3,6 +3,9 @@ Os Template for agent that uses Linux OS + + From d1c7377f5122b473c6f3a7d4afc2886eb1aa8833 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:28:03 +0200 Subject: [PATCH 079/158] TeamCity change in 'Ribasim / Linux' project: requirements of 'Os' build template were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml index 20e3b701e..5fb92150b 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml @@ -9,7 +9,9 @@ - + + + From 97214a1534103b5ddb8a3ecca1a3d3a00aba5e92 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:30:45 +0200 Subject: [PATCH 080/158] TeamCity change in 'Ribasim / Linux' project: VCS roots of 'Os' build template were updated --- .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml index 5fb92150b..5e73b1d7a 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml @@ -4,6 +4,7 @@ Template for agent that uses Linux OS + From 5d640dbe520ed8cba431079fa93f855c89ee8e6c Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:32:42 +0200 Subject: [PATCH 081/158] TeamCity change in 'Ribasim / Linux' project: 'Build ribasim_cli' build configuration was attached to 'Os' template --- .../buildTypes/Ribasim_Linux_BuildRibasimCli.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml index dc2bffb65..ecdc60598 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml @@ -2,10 +2,9 @@ Build ribasim_cli - + @@ -70,3 +69,4 @@ pixi run build-ribasim-cli]]> + From 186b5091c0c9b2f425b153b77cb192d4c9bba8c4 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:33:10 +0200 Subject: [PATCH 082/158] TeamCity change in 'Ribasim / Linux' project: 'Test ribasim_api' build configuration was attached to 'Os' template --- .../buildTypes/Ribasim_Linux_TestRibasimApi.xml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml index 56c94aaa9..91bb162e9 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml @@ -2,12 +2,10 @@ Test ribasim_api - + @@ -49,7 +47,6 @@ pixi run test-ribasim-api]]> - From d7341a009becbb4b9e6b026219fad3b3cff1afe7 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:33:18 +0200 Subject: [PATCH 083/158] TeamCity change in 'Ribasim / Linux' project: 'Test ribasim_cli' build configuration was attached to 'Os' template --- .../buildTypes/Ribasim_Linux_TestRibasimCli.xml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml index 1892b5879..39e00aba1 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml @@ -2,12 +2,10 @@ Test ribasim_cli - + @@ -49,7 +47,6 @@ pixi run test-ribasim-cli]]> - From 4ba0d9a99dba6330609a689bd133411f9bfe849e Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:33:29 +0200 Subject: [PATCH 084/158] TeamCity change in 'Ribasim / Linux' project: 'Build libribasim' build configuration was attached to 'Os' template --- .../buildTypes/Ribasim_Linux_BuildLibribasim.xml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml index f9ad518e0..1bca99252 100644 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml @@ -2,12 +2,10 @@ Build libribasim - + @@ -46,9 +44,7 @@ pixi run build-libribasim]]> - - - + From 3057347b6305dd055f1f3a5c3681b0de4b88c956 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:33:44 +0200 Subject: [PATCH 085/158] TeamCity change in 'Ribasim / Linux' project: 'Build' build template was removed --- .../buildTypes/Ribasim_Linux_Build.xml | 69 ------------------- 1 file changed, 69 deletions(-) delete mode 100644 .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml b/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml deleted file mode 100644 index 935189868..000000000 --- a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Build.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - From c70a1e6478e23e07c093a4bb8ba191c763c34a0c Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:37:50 +0200 Subject: [PATCH 086/158] TeamCity change in 'Ribasim / Windows' project: 'Build libribasim' build configuration settings were updated --- .../buildTypes/Ribasim_Windows_BuildLibribasim.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml index 2f95b2615..2b3c25366 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml @@ -5,7 +5,6 @@ - From cd55be2d4c9094959a48d7bee3c70038e162da64 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:37:55 +0200 Subject: [PATCH 087/158] TeamCity change in 'Ribasim / Windows' project: 'Build libribasim' build configuration settings were updated --- .../buildTypes/Ribasim_Windows_BuildLibribasim.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml index 2b3c25366..e781aa589 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml @@ -5,7 +5,6 @@ - From e8b86ac5b9ab62acf4ff6034817568fbeda1eac5 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:38:10 +0200 Subject: [PATCH 088/158] TeamCity change in 'Ribasim / Windows' project: 'Build libribasim' build configuration was detached from 'Build' template --- .../Ribasim_Windows_BuildLibribasim.xml | 46 +++++++++++++++++-- 1 file changed, 43 insertions(+), 3 deletions(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml index e781aa589..c5be9f380 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml @@ -2,17 +2,57 @@ Build libribasim - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From a7e6dbe71affc430527c996519980964a3ae2d84 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:44:24 +0200 Subject: [PATCH 089/158] TeamCity change in 'Ribasim / Windows' project: 'Build' build template was removed --- .../buildTypes/Ribasim_Windows_Build.xml | 54 ------------------- 1 file changed, 54 deletions(-) delete mode 100644 .teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Build.xml diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Build.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Build.xml deleted file mode 100644 index d2d6be2b8..000000000 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Build.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - From d3f1c441bc297e006d8bc74aeb385e3d62e95c62 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:45:35 +0200 Subject: [PATCH 090/158] TeamCity change in 'Ribasim / Windows' project: 'Os' build template was created --- .../buildTypes/Ribasim_Windows_Os.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 .teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml new file mode 100644 index 000000000..f575b6919 --- /dev/null +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml @@ -0,0 +1,14 @@ + + + From 4f52f45a734122214d70a6984051a06d4ebae00e Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:45:53 +0200 Subject: [PATCH 091/158] TeamCity change in 'Ribasim / Windows' project: VCS roots of 'Os' build template were updated --- .teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml index f575b6919..a2a6b8f92 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml @@ -3,6 +3,9 @@ Os Template for agent that uses Windows OS + + From a1b205f6aba59c0ffaa43a99c73d2de231d7d272 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:46:26 +0200 Subject: [PATCH 092/158] TeamCity change in 'Ribasim / Windows' project: requirements of 'Os' build template were updated --- .teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml index a2a6b8f92..87b1a65fa 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_Os.xml @@ -9,7 +9,9 @@ - + + + From 4054219f79b2be62c8031db2a9e0632d1045aae8 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:53:27 +0200 Subject: [PATCH 093/158] TeamCity change in 'Ribasim / Windows' project: 'Build libribasim' build configuration was attached to 'Os' template --- .../buildTypes/Ribasim_Windows_BuildLibribasim.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml index c5be9f380..d2249ca64 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildLibribasim.xml @@ -2,10 +2,9 @@ Build libribasim - + @@ -39,7 +38,6 @@ pixi run build-libribasim]]> - From 18d06ace41b0d35fe88c34aec70208676889f800 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:53:55 +0200 Subject: [PATCH 094/158] TeamCity change in 'Ribasim / Windows' project: 'Build ribasim_cli' build configuration was attached to 'Os' template --- .../buildTypes/Ribasim_Windows_BuildRibasimCli.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml index f9c3f4f6a..0979e904c 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_BuildRibasimCli.xml @@ -2,10 +2,9 @@ Build ribasim_cli - + @@ -58,3 +57,4 @@ pixi run build-ribasim-cli]]> + From 941e68bdac37f5be2b5c44a8b0bba716c8fe5024 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:54:06 +0200 Subject: [PATCH 095/158] TeamCity change in 'Ribasim / Windows' project: 'Test ribasim_api' build configuration was attached to 'Os' template --- .../buildTypes/Ribasim_Windows_TestRibasimApi.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml index bb6b05130..173949191 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimApi.xml @@ -2,10 +2,9 @@ Test ribasim_api - + From 5e46eae86fa161a70c9342cb6fbadd8e720fc7d5 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 13:54:17 +0200 Subject: [PATCH 096/158] TeamCity change in 'Ribasim / Windows' project: 'Test ribasim_cli' build configuration was attached to 'Os' template --- .../buildTypes/Ribasim_Windows_TestRibasimCli.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml index 7edcc1961..b6de156b6 100644 --- a/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml +++ b/.teamcity/Ribasim_Windows/buildTypes/Ribasim_Windows_TestRibasimCli.xml @@ -2,10 +2,9 @@ Test ribasim_cli - + @@ -97,3 +96,4 @@ + From 184827a964fc5bed356f86e0fc2d367caf1c7d0b Mon Sep 17 00:00:00 2001 From: Martijn Visser Date: Tue, 16 Apr 2024 14:06:30 +0200 Subject: [PATCH 097/158] Run allocation first after BMI stop (#1390) This allows allocation over period `(t, t + dt)` to use variables set over BMI at time `t`. We no longer run allocation as a callback, but call it ourselves, such that we can control that BMI runs allocation first before running the physical layer. --- core/src/Ribasim.jl | 1 + core/src/bmi.jl | 7 +++--- core/src/callback.jl | 10 -------- core/src/main.jl | 7 +++--- core/src/model.jl | 56 ++++++++++++++++++++++++++++++++++++------ core/src/util.jl | 2 +- core/src/validation.jl | 11 +++++++++ 7 files changed, 67 insertions(+), 27 deletions(-) diff --git a/core/src/Ribasim.jl b/core/src/Ribasim.jl index 6d6128bb8..f8d027f63 100644 --- a/core/src/Ribasim.jl +++ b/core/src/Ribasim.jl @@ -56,6 +56,7 @@ using SciMLBase: solve!, step!, SciMLBase, + ReturnCode, successful_retcode, CallbackSet, ODEFunction, diff --git a/core/src/bmi.jl b/core/src/bmi.jl index 6595e6390..d598722f8 100644 --- a/core/src/bmi.jl +++ b/core/src/bmi.jl @@ -17,16 +17,15 @@ function BMI.update(model::Model)::Model return model end -function BMI.update_until(model::Model, time)::Model - integrator = model.integrator - t = integrator.t +function BMI.update_until(model::Model, time::Float64)::Model + (; t) = model.integrator dt = time - t if dt < 0 error("The model has already passed the given timestamp.") elseif dt == 0 return model else - step!(integrator, dt, true) + step!(model, dt) end return model end diff --git a/core/src/callback.jl b/core/src/callback.jl index bd94043a5..242c1eafa 100644 --- a/core/src/callback.jl +++ b/core/src/callback.jl @@ -51,16 +51,6 @@ function create_callbacks( ) push!(callbacks, tabulated_rating_curve_cb) - if config.allocation.use_allocation - allocation_cb = PeriodicCallback( - update_allocation!, - config.allocation.timestep; - initial_affect = false, - save_positions = (false, false), - ) - push!(callbacks, allocation_cb) - end - # If saveat is a vector which contains 0.0 this callback will still be called # at t = 0.0 despite save_start = false saveat = saveat isa Vector ? filter(x -> x != 0.0, saveat) : saveat diff --git a/core/src/main.jl b/core/src/main.jl index 78d4823ad..1e75e721f 100644 --- a/core/src/main.jl +++ b/core/src/main.jl @@ -54,8 +54,7 @@ function main(ARGS::Vector{String})::Cint config = Config(arg) mkpath(results_path(config, ".")) open(results_path(config, "ribasim.log"), "w") do io - logger = - Ribasim.setup_logger(; verbosity = config.logging.verbosity, stream = io) + logger = setup_logger(; verbosity = config.logging.verbosity, stream = io) with_logger(logger) do cli = (; ribasim_version = string(pkgversion(Ribasim))) (; starttime, endtime) = config @@ -63,13 +62,13 @@ function main(ARGS::Vector{String})::Cint @warn "The Ribasim version in the TOML config file does not match the used Ribasim CLI version." config.ribasim_version cli.ribasim_version end @info "Starting a Ribasim simulation." cli.ribasim_version starttime endtime - model = Ribasim.run(config) + model = run(config) if successful_retcode(model) @info "The model finished successfully" return 0 end - t = Ribasim.datetime_since(model.integrator.t, starttime) + t = datetime_since(model.integrator.t, starttime) retcode = model.integrator.sol.retcode @error "The model exited at model time $t with return code $retcode.\nSee https://docs.sciml.ai/DiffEqDocs/stable/basics/solution/#retcodes" return 1 diff --git a/core/src/model.jl b/core/src/model.jl index 241ba2ec6..7ac16aea1 100644 --- a/core/src/model.jl +++ b/core/src/model.jl @@ -29,6 +29,9 @@ end function Model(config_path::AbstractString)::Model config = Config(config_path) + if !valid_config(config) + error("Invalid configuration in TOML.") + end return Model(config) end @@ -44,11 +47,6 @@ function Model(config::Config)::Model TimerOutputs.enable_debug_timings(Ribasim) # causes recompilation (!) end - t_end = seconds_since(config.endtime, config.starttime) - if t_end <= 0 - error("Model starttime is not before endtime.") - end - # All data from the database that we need during runtime is copied into memory, # so we can directly close it again. db = SQLite.DB(db_path) @@ -114,6 +112,7 @@ function Model(config::Config)::Model integral = zeros(length(parameters.pid_control.node_id)) u0 = ComponentVector{Float64}(; storage, integral) # for Float32 this method allows max ~1000 year simulations without accuracy issues + t_end = seconds_since(config.endtime, config.starttime) @assert eps(t_end) < 3600 "Simulation time too long" t0 = zero(t_end) timespan = (t0, t_end) @@ -188,10 +187,51 @@ function SciMLBase.successful_retcode(model::Model)::Bool end """ - solve!(model::Model)::ODESolution + step!(model::Model, dt::Float64)::Model + +Take Model timesteps until `t + dt` is reached exactly. +""" +function SciMLBase.step!(model::Model, dt::Float64)::Model + (; config, integrator) = model + (; t) = integrator + # If we are at an allocation time, run allocation before the next physical + # layer timestep. This allows allocation over period (t, t + dt) to use variables + # set over BMI at time t before calling this function. + # Also, don't run allocation at t = 0 since there are no flows yet (#1389). + ntimes = t / config.allocation.timestep + if t > 0 && round(ntimes) ≈ ntimes + update_allocation!(integrator) + end + step!(integrator, dt, true) + return model +end + +""" + solve!(model::Model)::Model Solve a Model until the configured `endtime`. """ -function SciMLBase.solve!(model::Model)::ODESolution - return solve!(model.integrator) +function SciMLBase.solve!(model::Model)::Model + (; config, integrator) = model + if config.allocation.use_allocation + (; tspan) = integrator.sol.prob + (; timestep) = config.allocation + allocation_times = timestep:timestep:(tspan[end] - timestep) + n_allocation_times = length(allocation_times) + # Don't run allocation at t = 0 since there are no flows yet (#1389). + step!(integrator, timestep, true) + for _ in 1:n_allocation_times + update_allocation!(integrator) + step!(integrator, timestep, true) + end + + if integrator.sol.retcode != ReturnCode.Default + return model + end + # TODO replace with `check_error!` https://github.com/SciML/SciMLBase.jl/issues/669 + integrator.sol = SciMLBase.solution_new_retcode(integrator.sol, ReturnCode.Success) + else + solve!(integrator) + end + return model end diff --git a/core/src/util.jl b/core/src/util.jl index 9f28670cf..46a3643b9 100644 --- a/core/src/util.jl +++ b/core/src/util.jl @@ -683,7 +683,7 @@ function get_Δt(integrator)::Float64 elseif isinf(saveat) t else - t_end = integrator.sol.prob.tspan[2] + t_end = integrator.sol.prob.tspan[end] if t_end - t > saveat saveat else diff --git a/core/src/validation.jl b/core/src/validation.jl index 202eec6a8..72fcb55ff 100644 --- a/core/src/validation.jl +++ b/core/src/validation.jl @@ -146,6 +146,17 @@ function sorted_table!( return table end +function valid_config(config::Config)::Bool + errors = false + + if config.starttime >= config.endtime + errors = true + @error "The model starttime must be before the endtime." + end + + return !errors +end + """ Test for each node given its node type whether the nodes that # are downstream ('down-edge') of this node are of an allowed type From 2a1adc3a66fe64d39450b70b748d42b1e9a7f596 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 14:06:39 +0200 Subject: [PATCH 098/158] TeamCity change in 'Ribasim / Linux' project: 'Os' build template was moved to 'Ribasim' project --- .../{Ribasim_Linux => Ribasim}/buildTypes/Ribasim_Linux_Os.xml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .teamcity/{Ribasim_Linux => Ribasim}/buildTypes/Ribasim_Linux_Os.xml (100%) diff --git a/.teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Linux_Os.xml similarity index 100% rename from .teamcity/Ribasim_Linux/buildTypes/Ribasim_Linux_Os.xml rename to .teamcity/Ribasim/buildTypes/Ribasim_Linux_Os.xml From d6c1a40cde5407cf47f02366a76e2abfd37108f6 Mon Sep 17 00:00:00 2001 From: feng Date: Tue, 16 Apr 2024 14:07:20 +0200 Subject: [PATCH 099/158] TeamCity change in 'Ribasim' project: general settings of 'Linux' build template were updated --- .../buildTypes/{Ribasim_Linux_Os.xml => Ribasim_Linux.xml} | 2 +- .../Ribasim_Linux/buildTypes/Ribasim_Linux_BuildLibribasim.xml | 2 +- .../Ribasim_Linux/buildTypes/Ribasim_Linux_BuildRibasimCli.xml | 2 +- .../Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimApi.xml | 2 +- .../Ribasim_Linux/buildTypes/Ribasim_Linux_TestRibasimCli.xml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) rename .teamcity/Ribasim/buildTypes/{Ribasim_Linux_Os.xml => Ribasim_Linux.xml} (97%) diff --git a/.teamcity/Ribasim/buildTypes/Ribasim_Linux_Os.xml b/.teamcity/Ribasim/buildTypes/Ribasim_Linux.xml similarity index 97% rename from .teamcity/Ribasim/buildTypes/Ribasim_Linux_Os.xml rename to .teamcity/Ribasim/buildTypes/Ribasim_Linux.xml index 5e73b1d7a..901a95ae3 100644 --- a/.teamcity/Ribasim/buildTypes/Ribasim_Linux_Os.xml +++ b/.teamcity/Ribasim/buildTypes/Ribasim_Linux.xml @@ -1,6 +1,6 @@