Bug 1960274 - Version 7.1.4 of mkdocs-material is available
Summary: Version 7.1.4 of mkdocs-material is available
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: mkdocs-material
Version: 35
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Robin Lee
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-05-13 13:47 UTC by Ben Beasley
Modified: 2022-12-13 15:23 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-12-13 15:23:05 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Ben Beasley 2021-05-13 13:47:46 UTC
Description of problem:

Packaged version is very far behind upstream.

Version-Release number of selected component (if applicable):

5.0.2-5

How reproducible:

Steps to Reproduce:
1. Examine currently packaged version.

Actual results:

5.0.2, released Apr 10, 2020

Expected results:

7.1.4, released May 6, 2021

Additional info:

Let me know if you want any help packaging the release, or packaging/reviewing the new dependency https://github.com/facelessuser/mkdocs-material-extensions.

Comment 1 Robin Lee 2021-05-24 14:40:16 UTC
I don't actively maintain this package. I can pass this package to you.

Comment 2 Ben Beasley 2021-05-24 15:13:11 UTC
Thanks.

I just took a look at the upstream source.

It looks like upstream ships pre-compiled/minified JavaScript in the source tarball. I’ll take a look to see if I can get this package compliant with https://docs.fedoraproject.org/en-US/packaging-guidelines/JavaScript/ and https://docs.fedoraproject.org/en-US/packaging-guidelines/Web_Assets/ by re-building these from scratch in the RPM build.

If I find that this is feasible, then I’ll gladly take over this package. I’ll get back to you.

Comment 3 Ben Beasley 2021-05-28 17:23:08 UTC
In the applicable packaging guidelines, it’s very clear that the status quo of shipping pre-compiled/pre-minified JavaScript and CSS assets is not acceptable.

> If a JavaScript library typically is shipped as minified or compiled code, it MUST be compiled or minified as part of the RPM build process. Shipping pre-minified or pre-compiled code is unacceptable in Fedora.

> Pure CSS frameworks can be included as-is. CSS frameworks that use an alternative language that compiles to CSS, such as LESS, must compile to CSS as part of the build process. It is not acceptable to include pre-compiled CSS in Fedora packages.

Unfortunately, I don’t think I can replicate the upstream asset build pipeline in a way that is compliant with the packaging guidelines; if I can, it will be wildly impractical. The asset build system and dependencies are complicated enough that I think using alternative compilers/bundlers is not a plausible approach. I looked at using a fork of nodejs-packaging-bundler (https://src.fedoraproject.org/rpms/nodejs-packaging//blob/rawhide/f/nodejs-packaging-bundler) to try to treat the build system similarly to a NodeJS package (https://docs.fedoraproject.org/en-US/packaging-guidelines/Node.js/). It’s not clear if this approach would be acceptable—it definitely would fall into a grey area in the guidelines—but it has a chance in principle. However, the dev dependencies are required to build the assets, and contents of some of the dev dependencies (e.g. FontAwesome) are copied into the built assets, so now any/all dev dependencies are potentially bundled. It’s not very practical to track these correctly. So I think this is not an approach I am eager to pursue either.

If the packaging of web assets cannot be made compliant with guidelines, it may be that the best course of action is to retire this package instead.

As far as I can tell, I maintain all but one (python-devtools) of the packages that use it (python-{databases,fastapi,starlette}, pipx), and I can always stop building the documentation in those. Or, it may be possible to build them with an alternative theme.

What do you think?

Comment 4 Ben Beasley 2021-05-28 17:37:30 UTC
I tried building the pipx documentation with the base mkdocs theme, and it certainly doesn’t look quite as nice, but it’s serviceable. I imagine the other packages will be similar.

Comment 5 Ben Beasley 2021-05-28 17:43:02 UTC
(At a glance, the base mkdocs package may have a similar bundling/precompiling/preminifying problem, but it uses just a few “old-school” asset dependencies and lacks the complicated “modern” asset build pipeline, so the problem in that package could probably be remedied.)

Comment 6 Ben Beasley 2021-05-28 22:31:41 UTC
I have worked around the mkdocs-material dependency in python-{databases,fastapi,starlette} and pipx, so python-devtools seems to be the only remaining dependent package.

Comment 7 Ben Cotton 2021-08-10 13:02:24 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 35 development cycle.
Changing version to 35.

Comment 8 Ben Cotton 2022-11-29 16:57:06 UTC
This message is a reminder that Fedora Linux 35 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora Linux 35 on 2022-12-13.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
'version' of '35'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, change the 'version' 
to a later Fedora Linux version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora Linux 35 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora Linux, you are encouraged to change the 'version' to a later version
prior to this bug being closed.

Comment 9 Ben Cotton 2022-12-13 15:23:05 UTC
Fedora Linux 35 entered end-of-life (EOL) status on 2022-12-13.

Fedora Linux 35 is no longer maintained, which means that it
will not receive any further security or bug fix updates. As a result we
are closing this bug.

If you can reproduce this bug against a currently maintained version of Fedora Linux
please feel free to reopen this bug against that version. Note that the version
field may be hidden. Click the "Show advanced fields" button if you do not see
the version field.

If you are unable to reopen this bug, please file a new report against an
active release.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.