Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

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: 2063314, 2047507, 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.