Opened 11 years ago

Closed 11 years ago

#924 closed defect (fixed)

More visual feedback when merging ways leads to non-rendering tags

Reported by: richard Owned by: richard@…
Priority: major Milestone:
Component: potlatch (flash editor) Version:
Keywords: semicolons Cc:

Description

Make it a bit clearer when a user merges two ways and the result is "highway=trunk;primary" or similar. Maybe have a little '!' in the tag, or an unhappy face, or something.

(Would need to have a list of tags where a ';' is expected, e.g. description=, note=, to avoid false positives.)

Change History (6)

comment:1 Changed 11 years ago by openstreetmap@…

Keywords: semicolons added
Priority: minormajor
Type: enhancementdefect

When users shift click roads with different names, Potlatch will happily assume it's one way with multiple names and separate the names with semicolons. Roads with multiple names are quite rare, so the default behavior should be to prompt the user, like JOSM does.

I'm changing it to a major defect, because an end user product should not make it easy to make mistakes.

For example, johng has been an OSM member for more than a year and it still happened to him : http://www.openstreetmap.org/browse/way/4948937/history

He did not even knew what happened : http://lists.openstreetmap.org/pipermail/talk-za/2008-September/000279.html

comment:2 Changed 11 years ago by Richard

You can change it to 'critical' for all you like - it won't get it fixed any faster unless you are prepared to contribute a patch. Are you?

comment:3 Changed 11 years ago by openstreetmap@…

Well, the simplest will just be to change mergeWay in way.as so that it refuses to merge ways when any of the tags are in conflict.

OSMWay.prototype.mergeWay=function(topos,otherway,frompos) {

var i,z;

+z=otherway.attr; +for (i in z) { + if (otherway.attr[i].substr(0,6)=='(type ') {} + else if (this.attr[i].substr(0,6)=='(type ') {} + else if (this.attr[i]) { + if (this.attr[i]!=otherway.attr[i] && otherway.attr[i]) { return; } + } +}

if (this.oldversion>0
otherway.oldversion>0) { return; }

So + I have reported it on trac and not to osm-talk, as you requested earlier. + I've presented a patch

  • I haven't tested it.
  • I haven't documented it.
  • I haven't added a friendly error message. But there isn't one for trying to merge ways that are not sharing an end point either.
  • I haven't checked it in.

4 reasons why this bug will stay open I guess.

comment:4 Changed 11 years ago by Richard

No, that's utterly great and you have very pleasantly surprised me. :)

Testing and checking in is no problem; documentation to the level of the rest of Potlatch would be about two comments, so that's fine. Friendly error message - well, yes, I'd like one; but tbh actually having someone make the effort, for once, to contribute a patch makes me so much more likely to want to "complete the job", if you see what I mean. So the bug won't stay open - not for long anyway.

Cheers.

comment:5 Changed 11 years ago by Richard

Fixed in 0.10c (well, the second version thereof) with friendly error message.

comment:6 Changed 11 years ago by Richard

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.