iPython 2.0, a major version update, has been released and declared stable by upstream. Reproducible: Always
Don't expect this to be swift. I looked at the -2.0 and it wouldn't even build. Raised more questions than it answered. It's a complex package and most everything has been changed
*** Bug 507902 has been marked as a duplicate of this bug. ***
It seems to build for me with some minor modifications; it just doesn't support python 2.6 or 3.2. I will give it some testing.
Any update on this bump request?
@python: Please feel free to pick this up; I have lost interest for the moment.
2.1 is also now released. I have successful installed on amd64 with some tweaks to the 1.2.1 ebuild. The changes as I understand them which impact the ebuild and the changes I made to build correctly: 1) 1.0.0 setuptools patch no longer needed - removed patch section 2) Support for fewer versions of python, 2.7 and 3.3 only - changed supported versions 3) irunner.py has been removed - removed filename reference from sed command 4) emacs mode ipython.el is no longer part of the distribution - removed emacs use flag and all reference to compiling the el file and post installation rebuild of emacs scripts. I've attached the updated ebuild. Worked for me.
Created attachment 377398 [details] Updated Ebuild for ipython-2.1.0 This successfully installed on an amd64 machine which previously had ipython 1.3 installed. There may be more subtle changes that I missed.
(In reply to Spencer Ogden from comment #7) > Created attachment 377398 [details] > Updated Ebuild for ipython-2.1.0 > > This successfully installed on an amd64 machine which previously had ipython > 1.3 installed. There may be more subtle changes that I missed. This ebuild works for me, too. So far I have not seen anything out of the ordinary.
If we stabilize a newer version of oct2py, we could enable octave support for the python3 implementations as well (see): octave? ( dev-python/oct2py[${PY2_USEDEP}] ) The currently stable version 0.4.0-r1 supports only 2.7, the newer versions 1.0.0 and 1.3.0 support python3 as well. Will file a stabilization bug soon.
Unfortunately I don't understand the ebuild in its entirety, but it looks to me as if at least some of the former python2 only packages now support python3 and it might be a good idea to review all dependencies and fix that.
any update on this?
Considering python3.2 is not supported, I'd say we delay this until 3.2 is masked for removal. This should happen soon enough, considering upstream attitude towards it.
(In reply to Spencer Ogden from comment #7) > Created attachment 377398 [details] > Updated Ebuild for ipython-2.1.0 > > This successfully installed on an amd64 machine which previously had ipython > 1.3 installed. There may be more subtle changes that I missed. It's good for a base to start. It emerges however there are elements missing. The doc IUSE is listed but there is no doc build and the test phase is a no go. I suspect this was never even attempted, but oh well. Shall work it more tomorrow
Created attachment 381868 [details] ebuild wip Has a doc build which now works. Has a totally new testsuite which works, except some of the tests don't. The adding of py3.4 to oct2py gives and added headache. Keywords ~arm and ~ia64 need be dropped from ipython to accommadate this. Alternatively adding of py3.4 could be sacrificed, a rather 'unforward' step.
Created attachment 381870 [details] tail of the build log displaying test failiures $ PYTHON_TARGETS=python2_7 ebuild ipython-2.1.0.ebuild clean test yields Ran 1271 tests in 83.189s FAILED (SKIP=58, errors=32, failures=1) never a good sign. Then there's the py3.2 issue to add to the mix.
python_test() { distutils_install_for_testing local fail run_tests() { # Initialize ~/.ipython directory. "${EPYTHON}" -m IPython </dev/null >/dev/null || fail=1 # Run tests (-v for more verbosity). PYTHONPATH="${PYTHONPATH}:$(pwd)" cd ${TEST_DIR} "${EPYTHON}" -c "import IPython; IPython.test()" || fail=1 } VIRTUALX_COMMAND=run_tests virtualmake } @Ian Delaney: This might fix the test-suite.
(In reply to cel.gentoo from comment #16) > python_test() { > distutils_install_for_testing > local fail Unused. > run_tests() { > # Initialize ~/.ipython directory. > "${EPYTHON}" -m IPython </dev/null >/dev/null || fail=1 Why? Doesn't the 'import IPython' below do the same thing? > # Run tests (-v for more verbosity). > PYTHONPATH="${PYTHONPATH}:$(pwd)" ${PWD}? Why? > cd ${TEST_DIR} || die > "${EPYTHON}" -c "import IPython; IPython.test()" || fail=1 > } > > VIRTUALX_COMMAND=run_tests virtualmake > } > > @Ian Delaney: This might fix the test-suite.
(In reply to Michał Górny from comment #17) > (In reply to cel.gentoo from comment #16) > > python_test() { > > distutils_install_for_testing > > local fail > > Unused. Yes. I copied the skeleton verbatim from the old ipython ebuild. there should be something like:[[ ${fail} ]] && die "Tests fail with ${EPYTHON}" > > > run_tests() { > > # Initialize ~/.ipython directory. > > "${EPYTHON}" -m IPython </dev/null >/dev/null || fail=1 > > Why? Doesn't the 'import IPython' below do the same thing? Probably, I don't know. But making this implicit is a really bad idea. > > > # Run tests (-v for more verbosity). > > PYTHONPATH="${PYTHONPATH}:$(pwd)" > > ${PWD}? Why? It works :) - No idea what's the correct way to do this. Let me know! > > > cd ${TEST_DIR} > > || die Good catch. > > > "${EPYTHON}" -c "import IPython; IPython.test()" || fail=1 > > } > > > > VIRTUALX_COMMAND=run_tests virtualmake > > } > > > > @Ian Delaney: This might fix the test-suite.
(In reply to Michał Górny from comment #17) > (In reply to cel.gentoo from comment #16) > > python_test() { > > distutils_install_for_testing > > local fail > > Unused. > Actually it is. (|| fail=1) > > run_tests() { > > # Initialize ~/.ipython directory. > > "${EPYTHON}" -m IPython </dev/null >/dev/null || fail=1 > > Why? Doesn't the 'import IPython' below do the same thing? > This is a 'good' point. Remember bicatali wrote this long ago. You can always ask him, however, mb it was redundant then. I for one am happy to see it go if un-needed. It's not exactly pretty. > > # Run tests (-v for more verbosity). > > PYTHONPATH="${PYTHONPATH}:$(pwd)" > > ${PWD}? Why? > Because the testsuite is a clunky mess???. But it works > > cd ${TEST_DIR} > > || die > > > "${EPYTHON}" -c "import IPython; IPython.test()" || fail=1 > > } > > > > VIRTUALX_COMMAND=run_tests virtualmake > > } > > > > @Ian Delaney: This might fix the test-suite. getting there. Comes close
A breakthrough of sorts. The test that hangs for me is test_octave_plot() in IPython/extensions/tests/test_octavemagic.py. Once that is skipped over, from dev-python/ipython $ PYTHON_TARGETS=python2_7 ebuild ipython-2.1.0.ebuild test I get --------------------------------------------------------------- Test group: extensions /usr/lib64/python2.7/site-packages/nose/plugins/manager.py:395: RuntimeWarning: Unable to load plugin openstack.nose_plugin = openstack.nose_plugin:Openstack: colorama RuntimeWarning) .............F..EEE.. -------------------------------------------------------------- Test group: parallel ----------------------------------------- NOT RUN Test group: js/base ------------------------------------------ NOT RUN Test group: js/notebook -------------------------------------- NOT RUN Test group: js/services -------------------------------------- NOT RUN Test group: js/tree ------------------------------------------ NOT RUN Test group: js/widgets --------------------------------------- NOT RUN ______________________________________________________________________ Test suite completed for system with the following information: IPython version: 2.1.0 IPython commit : 681fd77 (installation) IPython package: /mnt/gen2/TmpDir/portage/dev-python/ipython-2.1.0/work/ipython-2.1.0-python2_7/build/test/lib/IPython Python version : 2.7.6 (default, May 5 2014, 09:24:40) [GCC 4.8.2] sys.executable : /usr/bin/python2.7 Platform : Linux-3.13.2-tuxonice-x86_64-AMD_Athlon-tm-_II_X4_645_Processor-with-gentoo-2.2 Tools and libraries available at test time: curses cython jinja2 matplotlib numpy oct2py pexpect pygments pymongo qt requests rpy2 sphinx sqlite3 tornado zmq Tools and libraries NOT available at test time: casperjs Status: ERROR - 1 out of 14 test groups failed (extensions). Took 184.415s. which is quite manageable. test_rmagic.py is the culprit for the F..EEE, however this appears it's local to my system. Need more cross testing.
*ipython-2.1.0 (01 Aug 2014) 01 Aug 2014; Ian Delaney <idella4@gentoo.org> +files/2.1.0-disable-tests.patch, +ipython-2.1.0.ebuild: major version bump: extensive re-write; add py3.4 support, drop keywords arm ia64 ppc ppc64 (which will be requested for re-addition), re-write of doc build, test phase, patch by cel1, thanks to cel1 for cross testing, fixes Bug 507410 While masking for testing is an option, leaving open for now and set Resolved Test-request, however testing has already been extensive. The py3.2 factor may still warrant it being masked which is fine.
Created attachment 382324 [details, diff] diff -u of ebuild in portage and upgraded ebuild drop inherit of elisp-common eclass Add IUSE cython and rpy for optional deps Reduce REQUIRED_USE to "doc? ( cython matplotlib mongodb octave rpy )" Substitute 2.1.0-disable-tests.patch with 3 new patches Remove outdated sed statements in python_prepare_all Upgrade test phase with "${PYTHON}" -m IPython.testing.iptestcontroller --all Upgrade python_install Changes based on, but not cloned from ebuild from, https://gist.github.com/cel4/5315eb2b76fab0156f9c by cel1. New IUSE flag sympy held back for now due to concerns raised by minor test failures for py3.4 in sympy testsuite. 'Magic' IUSE flags converted to regular IUSE flags. Also added doc build deps will require extension of list of packages requiring added keywording; numpydoc, fabric, matplotlib, pymongo, rpy
Created attachment 382328 [details, diff] 3 test patches Three substitute patches for testsuite
One of the patches is broken, I'm currently fixing this. This should not break any tests. So please do test the new ebuild. The ebuild has changed a lot. Please test the test suite, octavemagic, rmagic and mongodb support in particular.
Created attachment 382434 [details, diff] diff -u of ebuild in portage and upgraded ebuild IUSE flags adjusted/ reduced doc? deps revised See https://github.com/ipython/ipython/commit/bc12c3eb5bceb83b1bd7f460e99ed90eb944104a for substitute ${FILESDIR}/test.patch Remove broken test_ files Upgrade test phase, python install. The testsuite is now adequately fine The major issue remaining is that the insource files of IPython/extensions/rmagic.py and IPython/extensions/octavemagic.py are according to cel underdone. For now it's necessary to work with the source that comes and around those seemingly flawed files.
07 Aug 2014; Ian Delaney <idella4@gentoo.org> +files/2.1.0-substitute-files.patch, ipython-2.1.0.ebuild: add doc deps, upgrade deps, shed redundant sed statements of prior versions, add patch to fix test phase, patch by cel1 now merged upstram, update install phase, add msgs in postinst relating to optional features, thanks to cel1 for cross testing and patches