Skip to content
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

Review implementation support - Paths chapter #385

Open
ewilligers opened this issue Feb 5, 2018 · 4 comments
Open

Review implementation support - Paths chapter #385

ewilligers opened this issue Feb 5, 2018 · 4 comments

Comments

@ewilligers
Copy link
Contributor

ewilligers commented Feb 5, 2018

Changes:

Added new B and b "bearing" path commands. [At Risk]

Tests show no browsers support bearing commands.

Allow Z or z to fill in missing path coordinate data in the previous command with the coordinate of the initial point in the subpath. [At Risk]

Tests show no browsers support z filling in missing path coordinate data.
InkScape plans to implement.

Define ‘path’, ‘polygon’ and ‘polyline’ elements with no data set (empty or zero valid commands) to not render.

Tests show Chrome, Edge, Firefox, Safari support this functionality.

Removed the SVGPathSeg* and SVGAnimatedPathData interfaces and the related methods on SVGPathElement.

Tests show only Chrome has removed the interfaces and related methods.

Promoted the ‘d’ attribute to a property. [At Risk]

Tests show Chrome exposes 'd' as a property, with an implementation that differs from the current spec.

Removed the pathLength attribute, getTotalLength(), and getPointAtLength() methods from SVGPathElement, they are now on SVGGeometryElement. [At Risk]

Tests show lack of browser support.

Clarified that a value of zero for ‘pathLength’ is valid.

Tests exist. There are some test failures, these need investigation.

@css-meeting-bot
Copy link
Member

The Working Group just discussed https://github.com/w3c/svgwg/issues/384.

The full IRC log of that discussion <ericwilligers> Topic: https://github.com//issues/384
<BogdanBrinza> topic new
<BogdanBrinza> GitHub: https://github.com//issues/384
<BogdanBrinza> ericwilligers: We'll start with Extensibility chapter
<BogdanBrinza> two changes to the spec
<Chris> great, good to hear
<liam> awesome
<ericwilligers> GitHub: https://github.com//issues/385
<BogdanBrinza> all: sound great - no concerns to make width/height presentation attrbutes
<BogdanBrinza> GitHub: https://github.com//issues/385
<liam> [i think at TPAC we agreed to remove bearing commands, would be good to reaffirm that here]
<BogdanBrinza> ericwilligers: bearing commands - no current implementations, at risk
<BogdanBrinza> https://svgwg.org/specs/paths/
<AmeliaBR> https://www.w3.org/2017/04/svg-2017.html#scope " features which are in the reference draft of SVG2 and which do not meet the stability and interoperability requirements for a Proposed Recommendation may be moved to separate specification modules, work on which would remain in scope, but at a lower priority."
<BogdanBrinza> resolution: remove bearing commands from SVG 2.0 specification, optionally move to https://svgwg.org/specs/paths/
<Chris> Tav: Inkscape plans to implement this
<Chris> BogdanBrinza: OK, but no browser implementation yet
<Chris> AmeliaBR: much asked-for feature
<BogdanBrinza> resolution: remove Z and z from SVG 2.0 and move to https://svgwg.org/specs/paths/
<BogdanBrinza> no issues with path, polygon, etc *
<BogdanBrinza> "Removed the SVGPathSeg* and SVGAnimatedPathData interfaces and the related methods on SVGPathElement."
<BogdanBrinza> tests suggest that only Chrome removed it - shouldn't be a blocker to removal from the specification
<BogdanBrinza> krit: are browsers interested in implementing new features? specifically mesh gradients, new path commands
<BogdanBrinza> krit: if they're not implemented will we have just another revision of SVG 1.1?
<BogdanBrinza> AmeliaBR: the discussion is really about this year, in time for candidate recommendation
<BogdanBrinza> Chris: suggest we keep focused on the discussion on the agenda
<BogdanBrinza> BogdanBrinza: (getting back to GitHub discussion)
<BogdanBrinza> ericwilligers: Promoted the ‘d’ attribute to a property. [At Risk]
<Chris> yes, keep this one in the spec
<BogdanBrinza> Tav: considering implementation in Inkscape
<BogdanBrinza> ericwilligers: "Removed the pathLength attribute, getTotalLength(), and getPointAtLength() methods from SVGPathElement, they are now on SVGGeometryElement. [At Risk]"
<BogdanBrinza> ericwilligers: no browser implementations
<BogdanBrinza> AmeliaBR: Chrome should support this
<BogdanBrinza> ericwilligers: will double check the test
<BogdanBrinza> resolution: this is (same) interface change - keep this at risk
<BogdanBrinza> ericwilligers: "Clarified that a value of zero for ‘pathLength’ is valid."
<BogdanBrinza> resolution: not at risk - just a clarification to a spec
<liam> [big thank you yes]
<Chris> nice one, ericwilligers

ewilligers pushed a commit to ewilligers/svgwg that referenced this issue Feb 6, 2018
Bearing commands 'B' and 'b' remain in the SVG Paths spec
https://www.w3.org/TR/svg-paths/#PathDataBearingCommands
but are being removed from svg2-draft.

Resolution:
w3c#385
ewilligers pushed a commit to ewilligers/svgwg that referenced this issue Feb 6, 2018
Bearing commands are not in SVG 1.1 or svg2-draft,
so they can be removed from the list of changes.

Resolution:
w3c#385
@longsonr
Copy link

Firefox nightlies support pathLength attribute, getTotalLength(), and getPointAtLength() on SVGGeometryElement. All shapes are now SVGGeometryElement and Firefox nightly passes the SVGGeometryElement-rect.svg test.

Firefox is also removing the parts of the SVGPathSeg* and SVGAnimatedPathData interfaces that manipulate paths. The interface remains currently but only allows retrieval of path data.

ewilligers pushed a commit to ewilligers/svgwg that referenced this issue Mar 30, 2018
Segment-completing close path commands, where coordinates are omitted
and implicitly replaced with the initial point of the subpath,
lack implementations and have been removed from the spec.

Discussed in w3c#385
ewilligers pushed a commit to ewilligers/svgwg that referenced this issue Mar 30, 2018
Segment-completing close path commands, where coordinates are omitted
and implicitly replaced with the initial point of the subpath,
lack implementations and have been removed from the spec.

Discussed in w3c#385
@boggydigital boggydigital added this to the SVG 2.0 Recommendation milestone Jun 11, 2018
@boggydigital
Copy link
Contributor

Not blocking updated 2.0 CR publication - assigning 2.0 Recommendation milestone to clean this up before 2.0 REC

@ewilligers ewilligers self-assigned this Jun 25, 2018
@Tavmjong
Copy link
Contributor

Tavmjong commented Jul 5, 2018

Inkscape (trunk) exposes 'd' attribute as property as speced (rendering only for now). Doing differently introduces complications as we handle attributes and properties with the same code paths.

ewilligers pushed a commit to ewilligers/svgwg that referenced this issue Aug 14, 2018
Segment-completing close path commands, where coordinates are omitted
and implicitly replaced with the initial point of the subpath,
lack implementations and have been removed from the spec.

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

No branches or pull requests

7 participants