Skip to content

Fix the link to ncurses patch download in macos installer build script #20421

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 27, 2020

Conversation

hoefling
Copy link
Contributor

@hoefling hoefling commented May 26, 2020

Reason: the link ftp://invisible-island.net/ncurses//5.9/ncurses-5.9-20120616-patch.sh.bz2 is dead, which prevents Mac/BuildScript/build-installer.py from completing. Looks like the host of the FTP server was changed to ftp.invisible-island.net, thus this proposal.

Signed-off-by: oleg.hoefling [email protected]

Automerge-Triggered-By: @ned-deily

@hoefling
Copy link
Contributor Author

Please note that I created neither a new issue on BPO nor added a news entry as the changes are IMO too trivial to deserve any of this.

@ned-deily ned-deily self-assigned this May 26, 2020
@hoefling
Copy link
Contributor Author

hoefling commented May 26, 2020

@ned-deily since you are taking a look at it anyway - may I ask a quick question since you're the best person to ask questions related to Mac installer? I see you have defined

FW_PREFIX = ["Library", "Frameworks", "Python.framework"]

for building OpenSSL. Is there a reason not to use it everywhere, e.g. here and so forth:
'--libdir=/Library/Frameworks/Python.framework/Versions/%s/lib'%(getVersion(),),

If not, would you accept a PR that uses FW_PREFIX and FW_VERSION_PREFIX instead of hardcoded paths?

Copy link
Member

@ned-deily ned-deily left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR. Looks good to me. I hadn't noticed that change yet because we cache the patch file locally so haven't had to actually download it for some time. Eventually, we will want to update ncurses but it's not been a high priority item.

@miss-islington
Copy link
Contributor

Sorry, I can't merge this PR. Reason: Base branch was modified. Review and try the merge again..

3 similar comments
@miss-islington
Copy link
Contributor

Sorry, I can't merge this PR. Reason: Base branch was modified. Review and try the merge again..

@miss-islington
Copy link
Contributor

Sorry, I can't merge this PR. Reason: Base branch was modified. Review and try the merge again..

@miss-islington
Copy link
Contributor

Sorry, I can't merge this PR. Reason: Base branch was modified. Review and try the merge again..

@miss-islington
Copy link
Contributor

@hoefling: Status check is done, and it's a success ✅ .

1 similar comment
@miss-islington
Copy link
Contributor

@hoefling: Status check is done, and it's a success ✅ .

@miss-islington
Copy link
Contributor

Sorry, I can't merge this PR. Reason: Pull Request is not mergeable.

1 similar comment
@miss-islington
Copy link
Contributor

Sorry, I can't merge this PR. Reason: Pull Request is not mergeable.

@miss-islington
Copy link
Contributor

Thanks @hoefling for the PR 🌮🎉.. I'm working now to backport this PR to: 3.7, 3.8, 3.9.
🐍🍒⛏🤖

@bedevere-bot
Copy link

GH-20445 is a backport of this pull request to the 3.9 branch.

@bedevere-bot bedevere-bot removed the needs backport to 3.9 only security fixes label May 27, 2020
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request May 27, 2020
pythonGH-20421)

Reason: the link `ftp://invisible-island.net/ncurses//5.9/ncurses-5.9-20120616-patch.sh.bz2` is dead, which prevents `Mac/BuildScript/build-installer.py` from completing. Looks like the host of the FTP server was changed to `ftp.invisible-island.net`, thus this proposal.

Signed-off-by: oleg.hoefling <[email protected]>
(cherry picked from commit 7da46b6)

Co-authored-by: Oleg Höfling <[email protected]>
@bedevere-bot
Copy link

GH-20446 is a backport of this pull request to the 3.8 branch.

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request May 27, 2020
pythonGH-20421)

Reason: the link `ftp://invisible-island.net/ncurses//5.9/ncurses-5.9-20120616-patch.sh.bz2` is dead, which prevents `Mac/BuildScript/build-installer.py` from completing. Looks like the host of the FTP server was changed to `ftp.invisible-island.net`, thus this proposal.

Signed-off-by: oleg.hoefling <[email protected]>
(cherry picked from commit 7da46b6)

Co-authored-by: Oleg Höfling <[email protected]>
@bedevere-bot
Copy link

GH-20447 is a backport of this pull request to the 3.7 branch.

@ned-deily
Copy link
Member

If not, would you accept a PR that uses FW_PREFIX and FW_VERSION_PREFIX instead of hardcoded paths?

Thanks, @hoefling, if you want to go in there and deal with that messy code, sure. But be advised that I do expect a major update of build-installer.py in the near future.

If I may ask, are you using build-installer.py for something?

miss-islington added a commit that referenced this pull request May 27, 2020
GH-20421)

Reason: the link `ftp://invisible-island.net/ncurses//5.9/ncurses-5.9-20120616-patch.sh.bz2` is dead, which prevents `Mac/BuildScript/build-installer.py` from completing. Looks like the host of the FTP server was changed to `ftp.invisible-island.net`, thus this proposal.

Signed-off-by: oleg.hoefling <[email protected]>
(cherry picked from commit 7da46b6)

Co-authored-by: Oleg Höfling <[email protected]>
miss-islington added a commit that referenced this pull request May 27, 2020
GH-20421)

Reason: the link `ftp://invisible-island.net/ncurses//5.9/ncurses-5.9-20120616-patch.sh.bz2` is dead, which prevents `Mac/BuildScript/build-installer.py` from completing. Looks like the host of the FTP server was changed to `ftp.invisible-island.net`, thus this proposal.

Signed-off-by: oleg.hoefling <[email protected]>
(cherry picked from commit 7da46b6)

Co-authored-by: Oleg Höfling <[email protected]>
miss-islington added a commit that referenced this pull request May 27, 2020
GH-20421)

Reason: the link `ftp://invisible-island.net/ncurses//5.9/ncurses-5.9-20120616-patch.sh.bz2` is dead, which prevents `Mac/BuildScript/build-installer.py` from completing. Looks like the host of the FTP server was changed to `ftp.invisible-island.net`, thus this proposal.

Signed-off-by: oleg.hoefling <[email protected]>
(cherry picked from commit 7da46b6)

Co-authored-by: Oleg Höfling <[email protected]>
@hoefling
Copy link
Contributor Author

@ned-deily I'm looking into building a framework based MacOS distribution that uses a different framework target than /Library/Frameworks. I'm using the build-installer.py as a reference since there's more to do than just invoking ./configure --enable-framework=/custom/target if I want to get a distribution that is identical to the one in the PKG installer. So right now I'm studying the build-installer.py and extracting all the necessary bits. The plan is the following:

  1. Make sure I can reproduce building a PKG installer using the upstream repo. Install the PKG installer, verify the test run is identical to the official distribution. (done)
  2. Check what adjustments in build-installer.py are necessary to build a PKG installer that installs to a custom target. Build the PKG installer, install Python, verify no new tests fail. (in progress)
  3. Record all steps that were performed build the framework distribution as I'm not really interested in building a DMG or PKG file or the docs etc. Probably drop tkinter wrappers, too.
  4. (Optional) Write the steps from 3. down in a bash/python script. This should be roughly the same as invoking only the
    parseOptions()
    checkEnvironment()
    buildLibraries()
    buildPython()

part from the build-installer's main() function.

@bedevere-bot
Copy link

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot AMD64 FreeBSD Shared 3.9 has failed when building commit 43fccb1.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/all/#builders/720/builds/34) and take a look at the build logs.
  4. Check if the failure is related to this commit (43fccb1) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/all/#builders/720/builds/34

Failed tests:

  • test__xxsubinterpreters
  • test_concurrent_futures

Failed subtests:

  • test_still_running - test.test__xxsubinterpreters.DestroyTests
  • test_subinterpreter - test.test__xxsubinterpreters.IsRunningTests
  • test_cancel_futures_wait_false - test.test_concurrent_futures.ThreadPoolShutdownTest
  • test_idle_process_reuse_one - test.test_concurrent_futures.ProcessPoolSpawnProcessPoolExecutorTest

Summary of the results of the build (if available):

== Tests result: FAILURE then FAILURE ==

403 tests OK.

10 slowest tests:

  • test_unicodedata: 20 min 39 sec
  • test_lib2to3: 20 min 9 sec
  • test_multiprocessing_forkserver: 15 min 51 sec
  • test_concurrent_futures: 15 min 15 sec
  • test_gdb: 14 min 2 sec
  • test_subprocess: 11 min 50 sec
  • test_multiprocessing_fork: 11 min 6 sec
  • test_pickle: 11 min 4 sec
  • test_capi: 11 min
  • test_regrtest: 10 min 23 sec

2 tests failed:
test__xxsubinterpreters test_concurrent_futures

19 tests skipped:
test_dbm_gnu test_devpoll test_epoll test_idle test_ioctl
test_msilib test_ossaudiodev test_spwd test_startfile test_tcl
test_tix test_tk test_ttk_guionly test_ttk_textonly test_turtle
test_winconsoleio test_winreg test_winsound test_zipfile64

5 re-run tests:
test__xxsubinterpreters test_concurrent_futures
test_multiprocessing_spawn test_tokenize test_unparse

Total duration: 2 hour 59 min

Click to see traceback logs
Traceback (most recent call last):
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/test_concurrent_futures.py", line 481, in test_cancel_futures_wait_false
    self.assertEqual(out.strip(), b"apple")
AssertionError: b'' != b'apple'


Traceback (most recent call last):
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/multiprocessing/process.py", line 315, in _bootstrap
    self.run()
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/_test_multiprocessing.py", line 4834, in child
    join_process(p)
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/_test_multiprocessing.py", line 84, in join_process
    support.join_thread(process)
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/support/__init__.py", line 2105, in join_thread
    raise AssertionError(msg)
AssertionError: failed to join the thread in 30.0 seconds
Timeout (0:25:00)!
Thread 0x0000000800b69000 (most recent call first):
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/selectors.py", line 415 in select
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/multiprocessing/connection.py", line 936 in wait
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/multiprocessing/popen_fork.py", line 40 in wait
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/multiprocessing/process.py", line 149 in join
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/support/__init__.py", line 2102 in join_thread
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/_test_multiprocessing.py", line 84 in join_process
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/_test_multiprocessing.py", line 881 in test_sys_exit
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/case.py", line 550 in _callTestMethod
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/case.py", line 593 in run
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/case.py", line 653 in __call__
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/suite.py", line 122 in run
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/suite.py", line 84 in __call__
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/suite.py", line 122 in run
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/suite.py", line 84 in __call__
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/suite.py", line 122 in run
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/suite.py", line 84 in __call__
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/unittest/runner.py", line 176 in run
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/support/__init__.py", line 1795 in _run_suite
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/support/__init__.py", line 1917 in run_unittest
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/runtest.py", line 209 in _test_module
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/runtest.py", line 234 in _runtest_inner2
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/runtest.py", line 270 in _runtest_inner
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/runtest.py", line 140 in _runtest
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/runtest.py", line 193 in runtest
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/runtest_mp.py", line 80 in run_tests_worker
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/main.py", line 657 in _main
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/main.py", line 637 in main
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/libregrtest/main.py", line 715 in main
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/regrtest.py", line 43 in _main
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/regrtest.py", line 47 in <module>
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/runpy.py", line 87 in _run_code
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/runpy.py", line 197 in _run_module_as_main
/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/multiprocessing/resource_tracker.py:216: UserWarning: resource_tracker: There appear to be 1 leaked shared_memory objects to clean up at shutdown
  warnings.warn('resource_tracker: There appear to be %d '
/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/multiprocessing/resource_tracker.py:229: UserWarning: resource_tracker: '/psm_9de2e630': [Errno 2] No such file or directory: '/psm_9de2e630'
  warnings.warn('resource_tracker: %r: %s' % (name, e))


Traceback (most recent call last):
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/test__xxsubinterpreters.py", line 748, in test_still_running
    self.assertTrue(interpreters.is_running(interp),
AssertionError: False is not true : Interp 48 should be running before destruction.


Traceback (most recent call last):
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/test_concurrent_futures.py", line 992, in test_idle_process_reuse_one
    self.assertEqual(len(executor._processes), 1)
AssertionError: 2 != 1


Traceback (most recent call last):
  File "/usr/home/buildbot/python/3.9.koobs-freebsd-564d/build/Lib/test/test__xxsubinterpreters.py", line 478, in test_subinterpreter
    self.assertTrue(interpreters.is_running(interp))
AssertionError: False is not true

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants