conda-forge / poetry-feedstock

A conda-smithy repository for poetry.
BSD 3-Clause "New" or "Revised" License
3 stars 13 forks source link

Poetry 1.2.0 #70

Closed drhagen closed 1 year ago

drhagen commented 2 years ago

Comment:

Poetry has released 1.2.0rc2 and is going to finalize 1.2.0 soon. Can I request a cut of the latest release candidate so that I can test how downstream conda dependencies work under 1.2?

xylar commented 2 years ago

We've been having real trouble with circular dependencies between poetry and poetry-plugin-export: https://github.com/python-poetry/poetry/pull/5980

Since that issue is still open, I had assumed that wasn't resolved. conda really cannot handle circular dependencies at all so I don't think we have a workaround for this.

xylar commented 2 years ago

I'll go through the process, though, and see what we find with the latest RCs.

xylar commented 2 years ago

I'm building 1.2.0rc2 but also with a patch from https://github.com/python-poetry/poetry/pull/5980. That's our only way forward here.

drhagen commented 2 years ago

I'm building 1.2.0rc2 but also with a patch from python-poetry/poetry#5980. That's our only way forward here.

I support this. I would rather a release of Poetry 1.2 with the deprecated export function removed than no Poetry 1.2 at all.

maresb commented 2 years ago

This seems fairly dangerous to me. Do we really want a conda-forge version of Poetry which diverges from the standard one? How confident are we that leaving out the export plugin dependency won't lead to ImportErrors?

maresb commented 2 years ago

If the Poetry devs believe this is too big of a change and not suitable for 1.2, shouldn't we listen to them?

xylar commented 2 years ago

So I think the bigger problem is if we simply can't build a package for poetry >=1.2.0 at all. At least this is a way forward. My understanding. But it seems like downsteam users need both poetry and poetry-plugin-export so breaking them into 2 packages was probably not a good move. That's what I'm gathering from the discussion in any case.

maresb commented 2 years ago

Ya, this seems like a pretty terrible situation.

Another horrible but potentially safer hack would be to make a special copy of poetry-plugin-export which doesn't depend on Poetry. Perhaps poetry-plugin-export-deprecated? And then you make poetry depend on that until poetry straightens things out.

xylar commented 2 years ago

I could see how that would "work" better downstream in that installing poetry would get the poetry-plugin-export features. But it's a pretty giant mess.

maresb commented 2 years ago

On a compleeeetely unrelated side note, I must report that I'm very pleased so far with Hatch. :smile:

xylar commented 2 years ago

Not something I've tried.

drhagen commented 2 years ago

But it seems like downsteam users need both poetry and poetry-plugin-export so breaking them into 2 packages was probably not a good move.

Breaking functionality out into an optional package is pretty common and normal. The original sin was pulling out the functionality before being truly ready to make the functionality optional.

xylar commented 2 years ago

@drhagen, thanks for the insight. I'm not particularly expert in the specific of poetry or its history.

xylar commented 2 years ago

But I agree, breaking out packages that are optional dependencies (or shared ones) is very handy indeed!

maresb commented 2 years ago

And that happens to be exactly Hatch's philosophy. Standards-based and highly extensible. It even supports Conda environments, though I haven't played with that plugin yet.

xylar commented 2 years ago

As I commented on #72, another problem keeping us from releasing is that there hasn't been a release of cleo 1.0.0.

maresb commented 2 years ago

Haha, hi @ofek! Wasn't expecting to see you here with the :+1:. (He's the Hatch maintainer, and is very responsive.)

mbargull commented 1 year ago

I've added a suggestion for a workaround for the current dependency cycle at https://github.com/conda-forge/poetry-plugin-export-feedstock/pull/8#issuecomment-1296366125 .

xylar commented 1 year ago

It seems poetry is not yet compatible with cleo 2.0.0, which was just released. We need to keep an eye on https://github.com/python-poetry/poetry/pull/7070 and wait for a new release (or patch?).

maresb commented 1 year ago

While we skipped v1.2, we now have a v1.3 release.