Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.maint.python > #10036 > unrolled thread

python-markdown and mkdocs circular build-dep

Started byDmitry Shachnev <mitya57@debian.org>
First post2018-01-11 11:40 +0100
Last post2018-01-12 18:10 +0100
Articles 4 — 3 participants

Back to article view | Back to linux.debian.maint.python


Contents

  python-markdown and mkdocs circular build-dep Dmitry Shachnev <mitya57@debian.org> - 2018-01-11 11:40 +0100
    Re: python-markdown and mkdocs circular build-dep Ghislain Vaillant <ghisvail@gmail.com> - 2018-01-11 12:20 +0100
    Re: python-markdown and mkdocs circular build-dep Simon McVittie <smcv@debian.org> - 2018-01-11 12:40 +0100
      Re: python-markdown and mkdocs circular build-dep Dmitry Shachnev <mitya57@debian.org> - 2018-01-12 18:10 +0100

#10036 — python-markdown and mkdocs circular build-dep

FromDmitry Shachnev <mitya57@debian.org>
Date2018-01-11 11:40 +0100
Subjectpython-markdown and mkdocs circular build-dep
Message-ID<v6Ir7-80w-3@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

Hi Brian and list,

The new release of python-markdown has switched docs building from its own
custom build system to mkdocs. However python-mkdocs itself build-depends on
python3-markdown for tests, which results in a circular build-dependency.

Will it be fine if I just mark the build-dependency in python-markdown as
<!nodoc>? Or will it be better to disable docs building completely?

--
Dmitry Shachnev

[toc] | [next] | [standalone]


#10037

FromGhislain Vaillant <ghisvail@gmail.com>
Date2018-01-11 12:20 +0100
Message-ID<v6J3P-8w7-1@gated-at.bofh.it>
In reply to#10036
2018-01-11 10:35 GMT+00:00 Dmitry Shachnev <mitya57@debian.org>:
> Hi Brian and list,
>
> The new release of python-markdown has switched docs building from its own
> custom build system to mkdocs. However python-mkdocs itself build-depends on
> python3-markdown for tests, which results in a circular build-dependency.

Then in src:python-markdown ---> mkdocs <!nodoc>
And in src:mkdocs ---> python3-markdown <!nocheck>

This way, both ends of the circular dep are covered.

[toc] | [prev] | [next] | [standalone]


#10038

FromSimon McVittie <smcv@debian.org>
Date2018-01-11 12:40 +0100
Message-ID<v6Jnc-c2-15@gated-at.bofh.it>
In reply to#10036
On Thu, 11 Jan 2018 at 13:35:13 +0300, Dmitry Shachnev wrote:
> The new release of python-markdown has switched docs building from its own
> custom build system to mkdocs. However python-mkdocs itself build-depends on
> python3-markdown for tests, which results in a circular build-dependency.

It would probably be best for python-mkdocs to build-depend on
python3-markdown <!nocheck>, after making sure that building with
"DEB_BUILD_PROFILES=nocheck DEB_BUILD_OPTIONS=nocheck" and without
python3-markdown installed does work (it looks as though it should). That
way the cycle can be broken from either end (and nocheck never changes
package contents, whereas nodoc does, so nocheck is probably a better
way to break it).

> Will it be fine if I just mark the build-dependency in python-markdown as
> <!nodoc>?

If the resulting package builds successfully with DEB_BUILD_PROFILES=nodoc
then that seems a good idea anyway. In some packages you might need to use
dh-exec to skip documentation files in debian/*.install, but it looks as
though that won't be necessary for python-markdown.

    smcv

[toc] | [prev] | [next] | [standalone]


#10045

FromDmitry Shachnev <mitya57@debian.org>
Date2018-01-12 18:10 +0100
Message-ID<v7b05-2zU-9@gated-at.bofh.it>
In reply to#10038

[Multipart message — attachments visible in raw view] — view raw

Thanks Ghislain and Simon for your responses.

It turns out mkdocs need python-markdown not for tests, but rather for
building its own docs.

So probably the correct way to go is to make sure both packages take the
nodoc build profile into account.

On Thu, Jan 11, 2018 at 11:29:34AM +0000, Simon McVittie wrote:
> It would probably be best for python-mkdocs to build-depend on
> python3-markdown <!nocheck>, after making sure that building with
> "DEB_BUILD_PROFILES=nocheck DEB_BUILD_OPTIONS=nocheck" and without
> python3-markdown installed does work (it looks as though it should). That
> way the cycle can be broken from either end (and nocheck never changes
> package contents, whereas nodoc does, so nocheck is probably a better
> way to break it).

For both mkdocs and python-markdown, -doc is a separate package, so
the nodoc build profile will not change the package contents, but it will
disable building the -doc package at all.

The other issue I found is that mkdocs adds some bundled JS libraries to
the generated documentation. It would be nice to have a dh_sphinxdoc-like
tool to help with unbundling them. I will file a bug for that.

--
Dmitry Shachnev

[toc] | [prev] | [standalone]


Back to top | Article view | linux.debian.maint.python


csiph-web