Skip to content

OS X installer: readline module breaks when targeting on 10.5 or 10.6 #52313

Closed

Description

@ned-deily
BPO 8066
Nosy @warsaw, @ronaldoussoren, @ned-deily
Files
  • issue-sl-setup-26.txt
  • issue-sl-setup-trunk.txt
  • issue-sl-setup-py3k.txt
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = 'https://github.com/ronaldoussoren'
    closed_at = <Date 2010-03-08.07:10:24.942>
    created_at = <Date 2010-03-05.10:38:57.260>
    labels = ['OS-mac', 'type-crash', 'release-blocker']
    title = 'OS X installer: readline module breaks when targeting on 10.5 or 10.6'
    updated_at = <Date 2010-03-08.07:10:24.940>
    user = 'https://github.com/ned-deily'

    bugs.python.org fields:

    activity = <Date 2010-03-08.07:10:24.940>
    actor = 'ronaldoussoren'
    assignee = 'ronaldoussoren'
    closed = True
    closed_date = <Date 2010-03-08.07:10:24.942>
    closer = 'ronaldoussoren'
    components = ['macOS']
    creation = <Date 2010-03-05.10:38:57.260>
    creator = 'ned.deily'
    dependencies = []
    files = ['16448', '16449', '16450']
    hgrepos = []
    issue_num = 8066
    keywords = []
    message_count = 4.0
    messages = ['100463', '100569', '100606', '100630']
    nosy_count = 3.0
    nosy_names = ['barry', 'ronaldoussoren', 'ned.deily']
    pr_nums = []
    priority = 'release blocker'
    resolution = 'accepted'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'crash'
    url = 'https://bugs.python.org/issue8066'
    versions = ['Python 2.6', 'Python 2.7', 'Python 3.2']

    Activity

    1. ned-deily commented on Mar 5, 2010

      @ned-deily
      MemberAuthor

      2.6.5 release blocker

      Changes for bpo-6877 to enable the readline module to use the
      native OS X editline library instead of GNU readline introduce
      a problem for OS X installer builds or other builds using
      MACOSX_DEPLOYMENT_TARGET. The test in setup.py to determine
      whether to search for a non-system library is based solely
      on the OS level of the build system and not the minimum
      deployment target level. Without this patch to setup.py,
      10.3- or 10.4-targeted installer builds on 10.5 or 10.6
      will fail to search for the installer-supplied GNU readline
      *and* will be dynamically linked with the crippled
      10.4u SDK version of editline, thereby causing the readline
      module to crash on all levels of OS X. (The installer build
      needs to continue to supply GNU readline because of the broken
      10.4 editline).

      Symptoms vary by OS level and arch but include bus errors and
      test failures such as:

      test_readline failed -- line 29, in testHistoryUpdates
      self.assertEqual(readline.get_current_history_length(), 2)
      AssertionError: 8448056 != 2
      [10.5]: Python(71826,0xa0c18820) malloc: *** error for object 0x80e994: Non-aligned pointer being freed
      *** set a breakpoint in malloc_error_break to debug
      [10.6]: Python(25154,0xa0b73500) malloc: *** error for object 0x80df94: pointer being freed was not allocated
      [10.4]: test_readline skipped -- dlopen(/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload/readline.so, 2): Symbol not found: _rl_free_line_state

      Patches supplied for 26, trunk(27), and py3k(32), but *not*
      31 as the readline changes have not been backported to 31.

      The trunk and 2.6 versions of the patch also correct a version
      test in setup.py that causes builds on 10.6 to be flooded with
      OS X deprecation warnings.

    2. added
      type-crashA hard crash of the interpreter, possibly with a core dump
      on Mar 5, 2010
    3. ronaldoussoren commented on Mar 7, 2010

      @ronaldoussoren
      Contributor

      Barry: this definitely needs to be applied before 2.6.5 is released, without the patch I cannot build the mac installers.

      The patch disables support for libedit when targetting 10.4, which is IMHO correct because as Ned notes libedit's readline emulation is totally broken in 10.4.

    4. warsaw commented on Mar 7, 2010

      @warsaw
      Member

      Ned, thanks again for another great OS X fix. Ronald, please apply this to release26-maint for 2.6.5 rc 2.

    5. ronaldoussoren commented on Mar 8, 2010

      @ronaldoussoren
      Contributor

      Committed in r78784 (trunk), r78785 (2.6) and r78786 (3.2)

      (BTW. I applied the patch to the trunk then used svnmerge to merge the patch into the other branches)

    6. transferred this issue fromon Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Metadata

    Metadata

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions