In the from_cost_method() function definition, demand weight comes first:
https://github.com/pysal/spopt/blob/main/spopt/locate/coverage.py#L126
However, from_geodataframe() passes the facility capacities first:
https://github.com/pysal/spopt/blob/main/spopt/locate/coverage.py#L455
This makes it hard to use the capacities, since any situation where capacity is bigger than the demand will get rejected erroneously as if capacity were smaller than the demand.
A fix is both easy and immediate. I can make this change, and would really appreciate a bug fix release this week before teaching the module in Tartu?