# Proposal: overrides for installers

**URL:** <https://discuss.python.org/t/proposal-overrides-for-installers/23666>\
**Category:** Packaging\
**Created:** [February 8, 2023, 8:25pm UTC](https://discuss.python.org/t/proposal-overrides-for-installers/23666 "2023-02-08T20:25:56Z")\
**Posts on this page:** 1\
**Showing post:** 40

<div class="post-metadata">

**Author:** ![sinoroc](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/sinoroc/32/1607_2.png) [@sinoroc](https://discuss.python.org/u/sinoroc)\
**Post date:** [January 18, 2024, 9:32pm UTC](https://discuss.python.org/t/proposal-overrides-for-installers/23666/40 "2024-01-18T21:32:46Z")

</div>

> [@NeilGirdhar](#):
>
> My proposal would be to do the work in multiple PEPs:

Yes, this needs to be split, no doubt about it.

> [@NeilGirdhar](#):
>
> A PEP to allow (possibly editable) path dependencies to pyproject.toml (poetry has this already),

I am against this. Abstract dependencies belong in `pyproject.toml`, concrete dependencies do not. Maybe you meant `overrides.toml` in which case, yes, that is one of the main drivers for this proposal.

> [@NeilGirdhar](#):
>
> A PEP to interpret a very simple `overrides.toml` that simply modifies a `pyproject.toml`.

Sure, why not. Not what I have in mind, but we’ll see, maybe it comes naturally as an extension of what I have in mind.

> [@NeilGirdhar](#):
>
> A PEP to provide additional indexes in a pyproject.toml and connect them with dependencies (poetry already has this feature, which they iterated on multiple times; it may be worth comparing any proposal with their solution)

That is just one aspect of what this proposal is about (But again, NOT in `pyproject.toml`! From my point of view Poetry got this wrong.). For me right now it is hard to see if it is a good aspect to use a starting point.

To be fair, I also kind of lost track of all the use cases I considered in this. I would need to find time to get back on this topic.

There were a couple of categories I thought of:

- Make it possible to use installation modifiers that are currently global, per dependency instead. For example pip’s `--pre` option (which kind of triggered me reviving this thread). See also how it has been added to [PDM](https://pdm-project.org/latest/usage/config/#allow-prereleases-in-resolution-result). And the big one would be if it were possible to specify one [`--index-url` option per dependency](https://gist.github.com/sinoroc/2a9a319dfc6715cadabe73c7389bf2f8#how-to-install-specific-dependencies-from-specific-indexes).

- Override faulty package metadata. Typically offer a way to override eager [upper caps](https://gist.github.com/sinoroc/2a9a319dfc6715cadabe73c7389bf2f8#how-to-fix-well-intentioned-but-ill-advised-upper-caps) on version constraints.

---

_[View the full topic](https://discuss.python.org/t/proposal-overrides-for-installers/23666)._
