Opened 6 years ago

Closed 6 years ago

#55049 closed defect (fixed)

textmate2 @2.0-rc.4: build fails under highsierra (10.13) with error: no viable conversion from

Reported by: hardwhack Owned by: neverpanic (Clemens Lang)
Priority: Normal Milestone:
Component: ports Version: 2.4.1
Keywords: sierra highsierra Cc: vinteles, ryandesign (Ryan Carsten Schmidt)
Port: textmate2

Description

Trying to build textmate2 in High Sierra (10.13) using XCode 9.0. Build fails with

:info:build Frameworks/editor/src/editor.cc:549:63: error: no viable conversion from 'vector<pair<char *, char *>>' to 'const vector<pair<const char *, const char *>>'
:info:build                                 std::vector< std::pair<char const*, char const*> > const& v = text::to_lines(str.data(), str.data() + str.size());
:info:build                                                                                           ^ 

Attaching logfile. Above line # is ~2805. Tried clean followed by install and same problem.

Attachments (1)

main.log (603.4 KB) - added by hardwhack 6 years ago.

Download all attachments as: .zip

Change History (8)

Changed 6 years ago by hardwhack

Attachment: main.log added

comment:1 Changed 6 years ago by mf2k (Frank Schima)

Cc: cal@… removed
Owner: set to neverpanic
Status: newassigned

comment:2 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Keywords: sierra added

And on Sierra with Xcode 9.0.1.

comment:3 Changed 6 years ago by sierkb (Sierk Bornemann)

BTW:

The port file referrs with livecheck.url https://api.textmate.org/releases/release/version to the (outdated?) textmate website, which indeed says: 2.0-rc.4, so the port's version of textmate sticks to date to that version. But: the textmate project's upstream info on its GitHub repository on https://github.com/textmate/textmate/releases says other: latest upstream release version obviously is not RC4 (release date: 18 Nov 2016) but at least RC7 (release date: 5 Dec 2016). Or further, since there is active code commitment every now and then in the master branch (see https://github.com/textmate/textmate/commits/master, the latest commit is only 11 days ago from today).

Should the MacPort's port of textmate not point to at least that RC7 version code (or maybe better to master, which seems indeed very alive) rather than sticking to the obviously obsolete RC4 (for whatever reason that version has been left on https://api.textmate.org/releases/release/version instead of reflecting the actual state as its repository on GitHub)?

comment:4 Changed 6 years ago by neverpanic (Clemens Lang)

Yes, it should ship RC7. It's always a hassle to get newer versions to build, though. Patches welcome.

comment:5 Changed 6 years ago by TheDreamer (Lawrence Chen)

The issue appears to be with Xcode 9, since it had built and ran fine with Xcode 8 on Sierra. But, the port recently got a revision bump, with no changes, forcing a recompile ...

I tried coercing the data types, but it compiled...but segfaults (and there's a QL plugin, so it becomes really annoying)...so probably need to defer to someone more knowledgeable about such 'modern' programming languages...

But, it had built and been running fine when I had first upgraded from El Capitan to Sierra.

I tried rc7, the problem is still present.

Haven't looked at master...since prefer to avoid relying on luck to have a reproducible release or some such thinking.

Though this port is the first one I've encountered ( so far ) that doesn't fetch archives or require checksums.

So, it might actually be easy to try an untagged checkout to find where it'll build and not segfault. (possibly removing the need for some of the current patches and without requiring new one...though I one of the patch is to change for tracking in macports?)

Hmmm, just noticed that rc5/rc6/rc7 are all tagged to the same point in time ... Dec 3, 2016... Though I have it compiling with the one patch to the specific file, haven't installed it yet.

Last edited 6 years ago by TheDreamer (Lawrence Chen) (previous) (diff)

comment:6 in reply to:  3 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: vinteles ryandesign added

Replying to sierkb:

Should the MacPort's port of textmate not point to at least that RC7 version code (or maybe better to master, which seems indeed very alive) rather than sticking to the obviously obsolete RC4 (for whatever reason that version has been left on https://api.textmate.org/releases/release/version instead of reflecting the actual state as its repository on GitHub)?

The short answer is no. We should continue to ship 2.0-rc.4 because that is what the developers want us to ship. See #55486.

Has duplicate #55765 which has some patches for solving the port's current problems. I'm looking into adding them to the port.

comment:7 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: assignedclosed

In 3a39d0c2a0515effb3bed655ebab27094844aa2a/macports-ports:

textmate2: Add patch to fix build failure with Xcode 9

The same patch also addresses a runtime crash on High Sierra, but since
the port has never built on High Sierra, no revbump is needed.

Closes: #55049

Remove check for Xcode >= 4.4 on OS X 10.7 since the port requires OS X
10.8.

Add GitHub handle to maintainers line.

Add patch to fix build failure with modern multimarkdown.

Add patch to prevent the build from finding dependencies installed with
Homebrew.

Add patch to make ninja verbose.

Explicitly specify the paths to boost and sparsehash to prevent build
failures (or opportunistic use of dependencies in /usr/local) for users
using a nonstandard MacPorts prefix.

Note: See TracTickets for help on using tickets.