Another huge PR for another massive change. Thanks for the effort Jarek!

On 2025/04/03 10:05:50 Kunal Bhattacharya wrote:
> Thank you so much for this Jarek, incredible effort. uv really has been a
> lifesaver and I can't wait to now try out the simplified dev workflow.
> 
> Regards,
> Kunal Bhattacharya
> 
> 
> 
> On Thu, Apr 3, 2025 at 11:16 AM Amogh Desai <amoghdesai....@gmail.com>
> wrote:
> 
> > Thank you for the effort Jarek!
> >
> > I am looking forward to having a simpler life building docs. Personally it
> > was a nightmare for me earlier.
> > Will shout out if / when I get to that stage.
> >
> > Thanks & Regards,
> > Amogh Desai
> >
> >
> > On Wed, Apr 2, 2025 at 10:37 PM Buğra Öztürk <ozturkbugr...@gmail.com>
> > wrote:
> >
> > > Amazing news! Thanks for the huge effort Jarek! :)
> > >
> > > On Wed, 2 Apr 2025, 18:45 Pavankumar Gopidesu, <gopidesupa...@gmail.com>
> > > wrote:
> > >
> > > > That's awesome Jarek, thank you for this :)
> > > >
> > > > Regards,
> > > > Pavan
> > > >
> > > > On Wed, Apr 2, 2025 at 1:09 PM Jarek Potiuk <ja...@potiuk.com> wrote:
> > > >
> > > > > You might also want to do *docker system prune*  or even *docker
> > system
> > > > > prune --all*  or run *breeze doctor* to clean-up some stale cache,
> > > > images,
> > > > > docker volumes
> > > > >
> > > > > Also IntelliJ/PyCharm users *uv run setup_idea.py* will add some
> > > missing
> > > > > directories and regenerate your IntelliJ project configuration.
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > On Wed, Apr 2, 2025 at 1:11 PM Jarek Potiuk <ja...@potiuk.com>
> > wrote:
> > > > >
> > > > > > Hello here,
> > > > > >
> > > > > > As part of the packaging work - I merged the
> > > > > > https://github.com/apache/airflow/pull/48223
> > > > > >
> > > > > > *TL;DR; Rebase all PRS, rebuild images and uv sync - and
> > > > > > hopefully everything should work as before even if a lot of things
> > > > moved.
> > > > > > Hopefully the move will be largely transparent (except changing
> > > > *include:
> > > > > > in open PRs in docs). *
> > > > > >
> > > > > > *NOTE! UV is now mandatory and a lot of code is gone thanks to
> > that.
> > > > > > Breeze will also refuse to work if uv is not installed.*
> > > > > >
> > > > > > It took a bit of time, but we are in a much more standard and
> > better
> > > > > shape
> > > > > > now - and as a side effect (which was intended but I had to
> > implement
> > > > it
> > > > > as
> > > > > > part of that monster PR to fix documentation) we now have a much
> > > > simpler
> > > > > > (more guidelines are coming) way to iterate on doc building.
> > > > > >
> > > > > > *Few important things first: *
> > > > > >
> > > > > > 1) Make sure to rebase your PRs, Run `breeze image build`, Rnu `uv
> > > > sync`.
> > > > > > Due to the way git handles things - you ** might **  have some
> > > dangling
> > > > > > generated directories in your repo and they might cause some
> > > problems.
> > > > > Run
> > > > > > "git status" after rebase and see you have some files you need to
> > > > delete
> > > > > > (manually)
> > > > > >
> > > > > > 2) If you are brave enough - you might want to run `breeze doctor`
> > > and
> > > > > > cleanup git repo - it should clean all files that should be
> > removed,
> > > > but
> > > > > > also it might remove some of your custom configurations and files
> > you
> > > > > > created,
> > > > > >
> > > > > > 3) Generally everything should work as it worked before with breeze
> > > > (for
> > > > > > example `breeze build-docs` command works as before. But a number
> > of
> > > > > > folders/distributions/code (not airflow nore providers directly)
> > were
> > > > > > moved/updated. For now you can just continue to build docs as
> > before
> > > -
> > > > > with
> > > > > > breeze. But simpler/faster ways are coming as follow up.
> > > > > >
> > > > > > 4) If you have some new examples or documentation included in your
> > > PRs
> > > > > the
> > > > > > doc build might start falling for you - but this is because
> > > `include::`
> > > > > or
> > > > > > `exampleinclude:`  might need to be updated - look at other
> > examples
> > > -
> > > > I
> > > > > > fixed the includes in all providers. More explanation in follow-up
> > > doc
> > > > > > build improvement PR - in the meantime, feel free to ask on slack
> > or
> > > PR
> > > > > for
> > > > > > help.
> > > > > >
> > > > > > *Generated provider_dependencies.json do not need to be updated*
> > > > > >
> > > > > > The "generated/provider_dependencies.json" is no longer committed
> > to
> > > > the
> > > > > > repo - it is .gitignored. We are generating it as-needed on the
> > > flight.
> > > > > It
> > > > > > should be automatically regenerated when you run pre-commits
> > locally
> > > > and
> > > > > > when you build the breeze image.
> > > > > >
> > > > > > There might be some cases when we add dependencies and you will
> > need
> > > to
> > > > > > regenerate it but that should happen automatically as needed.
> > > > > >
> > > > > > *New, updated folders*
> > > > > >
> > > > > > The change are mostly with these:
> > > > > >
> > > > > > ./dev/pyproject.toml
> > > > > > ./devel-common/pyproject.toml
> > > > > > ./doc
> > > > > > ./docker-stack-docs
> > > > > > ./providers-summary-docs
> > > > > >
> > > > > > *More explanation for distributions/folder changes*
> > > > > >
> > > > > > The dev is now a separate distribution with its own pyproject.toml
> > > > > > dependencies that are used for all the release management and
> > general
> > > > dev
> > > > > > housekeeping. This is different from "devel-common" which is a
> > common
> > > > > > package with a lot of common code reused for tests and builds
> > > > (including
> > > > > > doc builds scripts are using).
> > > > > >
> > > > > > We might want to change names later, as they are confusing but I
> > will
> > > > > > leave that discussion for later when we complete all the isolation
> > > > work -
> > > > > > with those changes I implemented it will be very easy (as opposed
> > to
> > > > how
> > > > > it
> > > > > > was) to move those distributions around - and if we will want to
> > > > > > restructure it again, that will be a very simple move.
> > > > > >
> > > > > > *Improved doc structure*
> > > > > >
> > > > > > This is because we finally made the last step - where the "doc"
> > code
> > > is
> > > > > > moved to "devel-common" and we are importing it from there, also
> > each
> > > > > > distribution has it's own "conf.py" and that makes modifying docs
> > > > > building
> > > > > > and our sphinx building scripts MUCH more readable ana mangeable.
> > The
> > > > > "doc"
> > > > > > code now contains just spelling wordlist and README.md explaining
> > > where
> > > > > to
> > > > > > look for the documentation.
> > > > > >
> > > > > > Those new top-level folders ("docker-stack-docs" and
> > > > > > "providers-summary-docs") - contain the two independent pieces of
> > our
> > > > > > documentation ("docker-stack" and "apache-airflow-providers"
> > package
> > > > > names
> > > > > > from "breeze build-docs" command.
> > > > > >
> > > > > > The REALLY nice thing now is that the doc files are not copied
> > > between
> > > > > > places and each of the docs folder (including each of the 90
> > > providers
> > > > > docs
> > > > > > folder) has it's own "conf.py", which makes the "docs" folder for
> > > them
> > > > > > "isolated" and "fully self-contained" - which will open up the ways
> > > on
> > > > > much
> > > > > > more friendly sphinx workflows. Wait for it ! Coming **just in
> > time**
> > > > > when
> > > > > > we most need it - when we want to start updating the docs for
> > Airflow
> > > > 3.
> > > > > >
> > > > > > J.
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@airflow.apache.org
For additional commands, e-mail: dev-h...@airflow.apache.org

Reply via email to