[Starlingx-discuss] FW: [starlingx-discuss][python3] four solutions for "Add python3-daemon required by logmgmt"

An, Ran1 ran1.an at intel.com
Wed Apr 29 04:13:25 UTC 2020


@Penney, Don drop codes (https://opendev.org/starlingx/utilities/src/branch/master/utilities/logmgmt/logmgmt/logmgmt/logmgmt.py#L64-L66) could not solve the problem bringing by python3 upgradation.
The root cause is a  bug of python-daemon upstream. 

@Jeremy Stanley thanks for your "subclass daemon.runner " advice which simplifies the Option 2 and makes it become a good option to choose.  By the way, the offline patch in Option 1 is refer to https://pagure.io/python-daemon/pull-request/27, in fact .

@Wold, Saul the different between Option1 and Option3 is the bug was fixed in master branch of project https://github.com/jbvsmo/python-daemon and we can expect to drop the offline patch when it comes a new release. However I didn't notice the project imported in Option 3 had not updated release for 6 years, so I'll drop option 3.
By the way, both Option2 and Option4 are modifying the logmgmt code directly instead of changing the daemon code. 

In last, we'll try to commit pull-request to python-daemon upstream to fix this bug. 

But before that we'll implement Option 2 to support logmgmt python3 upgradation. 
"   Option 2: subclass "daemon.runner.DaemonRunner()" as “MyDaemonRunner()”  and override methods refer to https://pagure.io/python-daemon/pull-request/27 .   
                   1) using class “MyDaemonRunner()” instead of “daemon.runner.DaemonRunner()” to create daemon runner; 
                   2) build python3-daemon rpm from python-daemon srpm"

Thanks
Ran

-----Original Message-----
From: Penney, Don <Don.Penney at windriver.com> 
Sent: Tuesday, April 28, 2020 10:35 PM
To: Jeremy Stanley <fungi at yuggoth.org>; starlingx-discuss at lists.starlingx.io
Subject: Re: [Starlingx-discuss] FW: [starlingx-discuss][python3] four solutions for "Add python3-daemon required by logmgmt"

If the sole problem here is the /dev/null redirects, then let's just drop the redirects:
https://opendev.org/starlingx/utilities/src/branch/master/utilities/logmgmt/logmgmt/logmgmt/logmgmt.py#L64-L66

I don't think that should have any impact.

-----Original Message-----
From: Jeremy Stanley [mailto:fungi at yuggoth.org]
Sent: Tuesday, April 28, 2020 10:25 AM
To: starlingx-discuss at lists.starlingx.io
Subject: Re: [Starlingx-discuss] FW: [starlingx-discuss][python3] four solutions for "Add python3-daemon required by logmgmt"

On 2020-04-28 06:44:35 -0700 (-0700), Saul Wold wrote:
> I am not sure I understand how option 1 and option 3 are different 
> both are modifying upstream projects and require the StarlingX 
> community to maintain a patched version (ie technical debt).
> 
> Is there an option that modifies the logmgmt code directly instead of 
> changing the daemon code?
[...]

It might be possible to subclass daemon.runner and shadow the offending methods, rather than forking the entire codebase.

> > Option 3: import python-daemon-3k [2] python3 condition.
> > 
> >   * use "python-daemon-3k" instead of "python-daemon" when the
> >     env is python3
> >   * add patch to fix the bug of python-daemon in python3 (refer
> >     to pull request #1 from takuti/fix-unbuffered-error
> >     <https://github.com/jbvsmo/python-daemon/commit/91567c9e68a1e02d3e9a811eaf9ab49961d9d63c>)
> >   * build python3-daemon rpm from python-daemon-3k release
> >     <https://github.com/jbvsmo/python-daemon/archive/1.5.8.tar.gz>
[...]

I find it amusing that the comparison is trying to count *GitHub
Stars* for a project which isn't actually hosted on GitHub (and when were those ever a mark of quality in the first place?), but more amazing is that it seems to have ignored that python-daemon-3k was last released in 2014 and its Git repository has seen no new commits since 2016, while python-daemon's last release was a mere 6 months ago.

Also the patch referred to there looks like it would apply cleanly to both projects (python-daemon-3k is really just a very outdated fork of python-daemon anyway). Similar patches have been proposed to python-daemon, so maybe helping to address the maintainer's concerns with one of those would be a greater benefit to everyone?

    https://pagure.io/python-daemon/pull-request/7

    https://pagure.io/python-daemon/pull-request/27

--
Jeremy Stanley

_______________________________________________
Starlingx-discuss mailing list
Starlingx-discuss at lists.starlingx.io
http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss


More information about the Starlingx-discuss mailing list