question: after updating to 2.13 (from 2.9) my plu...
# plugins
g
question: after updating to 2.13 (from 2.9) my plugin doesn't seem to be getting any
TransitiveTargets.dependencies
even though
./pants dependencies
is showing the correct
python_sources
as dependencies I'm assuming some api change has happened, do we have updated docs or am I gonna have to go back into the code again?
b
Hi Ofear! The docs are versioned, and are updated with every release. If you find something is missing from the version of the docs that corresponds to what you're using, please do let us know so we can fix the oversight; we don't intend for you to need to go into the code to find out something as basic as what the API is. By any chance did you update directly from 2.9 to 2.13? We always recommend going up one minor release at a time so you can resolve deprecation warnings as you go. (
update-build-files
is designed to assist with transitioning between minor releases.)
g
yeah 2.13 was the first version that I could use that would work with the docker configs I'm doing 😞
but yeah I can downgrade to figure out which version killed my transitive depends
b
I think that'll go easiest yeah. I'm not on the engineering side, or would have pointed you at a more specific version number. But hopefully the strep-through of minor versions will pin down that and any other lurking problems. Do let us know if it doesn't fully resolve your problem. I am happy to tag in an engineer in to followup.
💯 1
Good luck!
h
Hey @gentle-guitar-84783, any update on the above?
g
Hey @hundreds-father-404, downgrading to 2.12 fixed the issue and I don't have the time to look into why
TransitiveTargets
isn't working as expected, my gut feeling is there was some rework to the dependency inference code but haven't checked the diff yet Either way 2.12 luckily hit the sweet spot between updates the docker backend and my plugin code doing what I want it to do
👀 1
h
Okay, we definitely are eager to fix any regressions. If you are able to bisect between 2.12 and 2.14 in the future, that would be a big help 🙂
g
ah yeah, I was only upgrading to 2.13 stable, but honestly I feel like I just kind of got lucky that the dependency inference worked at all since I really didn't do anything except get
TransitiveTargets
from a python source file
more than likely I am just abusing an unintended consequence haha
h
the only relevant 2.13 change I can think of is: https://github.com/pantsbuild/pants/pull/15397. does that look maybe relevant? It comes from 2.13.0.dev2, so if 2.13.0.dev1 works but 2.13.0.dev2 doesn't, that's a big hint
g
unlikely, my code doesn't include any
__init__.py
files specifically it's taking a python source file (an Airflow DAG), reading the requirements, removing any third party requirements (this is handled by the airflow ecosystem so they don't need to be included), packaging it all up into a zip file to be read by airflow
there's a ton of work I want to do on the plugin but don't have the free time unfortunately (like tailor looking for any dag objects and automatically creating the
airflow_dag
operator)
h
Okay -- if you are able to git bisect in the future between 2.12.0 and 2.13.0, that would help a ton to figure out what change broke things
👍 1