Bug 2047823

Summary: Please branch and build ipython for EPEL 9
Product: [Fedora] Fedora EPEL Reporter: Michel Lind <michel>
Component: ipythonAssignee: Michel Lind <michel>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: epel9CC: dcantrell, lbalhar, mhroncok, michel, mrunge, orion, python-sig, tomspur
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ipython-8.5.0-1.el9.1 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-09-21 00:36:46 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2047826, 2047847, 2047880, 2047881, 2047883, 2047884, 2124281, 2125028, 2126149    
Bug Blocks: 2047507, 2063314, 2093516    

Description Michel Lind 2022-01-28 16:09:03 UTC
Please branch and build ipython in epel9.

If you do not wish to maintain ipython in epel9,
or do not think you will be able to do this in a timely manner,
the EPEL Packagers SIG would be happy to be a co-maintainer of the package;
please add the epel-packagers-sig group through
https://src.fedoraproject.org/rpms/ipython/addgroup
and grant it commit access, or collaborator access on epel* branches.

Comment 1 Michel Lind 2022-01-28 16:11:52 UTC
There are some missing dependencies that need to be branched first - I'll start requesting them; leaving the issue assigned to David for now

Comment 2 Lumír Balhar 2022-01-31 08:20:32 UTC
Michel and David already had commit rights for the package and I've added epel-packagers-sig as a maintainer for all epel branches.

Comment 3 Lumír Balhar 2022-02-01 08:54:47 UTC
Note that there is a CVE to be fixed before you branch for epel9 unless you want to branch from rawhide where it's already fixed.

Comment 4 David Cantrell 2022-02-09 14:37:50 UTC
I have requested the epel9 branch and am ready to build it once the dependent packages are available for epel9.  ipython requires the following in epel9:

python3-backcall
python3-jedi >= 0.10'
python3-pickleshare'
python3-prompt-toolkit >= 2'
python3-traitlets >= 4.2'

Comment 5 Mohamed Akram 2022-03-07 16:08:51 UTC
Please add 2061453 to the blocks.

Comment 6 David Cantrell 2022-07-13 18:31:43 UTC
Looks like a number of the BuildRequires are now available in EPEL-9, but we are still missing:

python3-pickleshare
python3-stack-data

Comment 7 Michel Lind 2022-09-01 15:34:43 UTC
All the dependencies are in, I'm trying a test build now.

Comment 8 Michel Lind 2022-09-01 15:35:59 UTC
Oops, didn't mean to reset assignee (not unless I have a successful build)

It weirdly fails with

+ /usr/bin/python3 setup.py build '--executable=/usr/bin/python3 -s'                                        
running build                                                                                               
running build_py                                                                                            
checking package data                                                                                       
Traceback (most recent call last):                                                                          
  File "/builddir/build/BUILD/ipython-8.0.1/setup.py", line 185, in <module>                                
    setup(**setup_args)                                                                                     
  File "/usr/lib/python3.9/site-packages/setuptools/__init__.py", line 153, in setup                        
    return distutils.core.setup(**attrs)                                                                    
  File "/usr/lib64/python3.9/distutils/core.py", line 148, in setup                                         
    dist.run_commands()                                                                                     
  File "/usr/lib64/python3.9/distutils/dist.py", line 966, in run_commands                                  
    self.run_command(cmd)                                                                                   
  File "/usr/lib64/python3.9/distutils/dist.py", line 985, in run_command                                   
    cmd_obj.run()                                                                                           
  File "/usr/lib64/python3.9/distutils/command/build.py", line 135, in run                                  
    self.run_command(cmd_name)                        
  File "/usr/lib64/python3.9/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)                                                                  
  File "/usr/lib64/python3.9/distutils/dist.py", line 985, in run_command                                   
    cmd_obj.run()
  File "/builddir/build/BUILD/ipython-8.0.1/setupbase.py", line 132, in run                                 
    check_package_data(self.package_data)                                                                   
  File "/builddir/build/BUILD/ipython-8.0.1/setupbase.py", line 120, in check_package_data                  
    assert len(glob(path)) > 0, "No files match pattern %s" % path                                          
AssertionError: No files match pattern ipython/core/profile/README*                                         
error: Bad exit status from /var/tmp/rpm-tmp.6HcrAh (%build)                                                
    Bad exit status from /var/tmp/rpm-tmp.6HcrAh (%build)

Comment 9 Michel Lind 2022-09-01 15:57:51 UTC
of course, the directory should be IPython not ipython... but how is this succeeding in Rawhide

Comment 10 Michel Lind 2022-09-01 16:25:17 UTC
so yeah, if I `ln -s IPython ipython` build passes, but now everything is installed to ipython instead. Fun.

c9s has python3-setuptools-53.0.0-10.el9.noarch

f36 (where the build is fine) has python3-setuptools-59.6.0-2.fc36.noarch

Comment 11 Michel Lind 2022-09-01 17:06:12 UTC
PR with a fix, putting it up first since I'm not sure we want to carry it in Fedora too. Thoughts anyone?

https://src.fedoraproject.org/rpms/ipython/pull-request/43

Comment 12 Matthias Runge 2022-09-02 05:48:04 UTC
Personally, I have neither the time nor the interest to maintain it. No further opinion here.

Comment 13 Lumír Balhar 2022-09-06 12:12:19 UTC
I prefer to have the workaround only in EPEL until we fix setuptools there.

Comment 14 Fedora Update System 2022-09-09 16:08:08 UTC
FEDORA-EPEL-2022-39d8829fc7 has been submitted as an update to Fedora EPEL 9. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-39d8829fc7

Comment 15 Fedora Update System 2022-09-10 21:05:27 UTC
FEDORA-EPEL-2022-39d8829fc7 has been pushed to the Fedora EPEL 9 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-39d8829fc7

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 16 Michel Lind 2022-09-12 15:38:56 UTC
Retargeting to epel9-next since pygments is not available on EL 9.0

❯ fedpkg request-branch epel9-next
https://pagure.io/releng/fedora-scm-requests/issue/47538

Also from the update page, the following files are missing:

```
$ comm -3 <(rpm -qpl ~/Downloads/python3-ipython-8.5.0-1.fc38.noarch.rpm | sed -e 's|3.11|3.9|g' | sed -e 's|311|39|g' | sort) <(rpm -qpl ./repo/results/alma+epel-9-x86_64/ipython-8.5.0-1.el9/python3-ipython-8.5.0-1.el9.noarch.rpm | sort)
/usr/lib/python3.9/site-packages/IPython/core/profile
/usr/lib/python3.9/site-packages/IPython/core/profile/README_STARTUP
/usr/lib/python3.9/site-packages/IPython/testing/plugin/README.txt
/usr/lib/python3.9/site-packages/IPython/testing/plugin/test_combo.txt
/usr/lib/python3.9/site-packages/IPython/testing/plugin/test_exampleip.txt
/usr/lib/python3.9/site-packages/IPython/testing/plugin/test_example.txt
```

Comment 17 Fedora Update System 2022-09-12 17:11:09 UTC
FEDORA-EPEL-NEXT-2022-58785c6527 has been submitted as an update to Fedora EPEL 9 Next. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-NEXT-2022-58785c6527

Comment 18 Michel Lind 2022-09-12 17:55:21 UTC
turns out the epel9-next build is unnecessary. Not sure what caused it (unlucky with a bad mirror perhaps) but pygments *is* in c9s, Rocky 9, and Alma 9. Updated original update with a build fixing missing package data.

Comment 19 Fedora Update System 2022-09-13 04:25:06 UTC
FEDORA-EPEL-2022-39d8829fc7 has been pushed to the Fedora EPEL 9 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-39d8829fc7

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 20 Fedora Update System 2022-09-21 00:36:46 UTC
FEDORA-EPEL-2022-39d8829fc7 has been pushed to the Fedora EPEL 9 stable repository.
If problem still persists, please make note of it in this bug report.