Release 1.0.0

Well, it’s finally happening, on Friday the 13th no less: ProseMirror 1.0 has been released.

In the future, the packages will no longer be versioned and released in lockstep (I’m looking into setting up some largely-automated release process so that I can quickly fire off minor releases). New features will go through the RFC process, and backwards-compatibility will be prioritized.

I couldn’t help working on a few more things right before the release. Nothing scary or breaking, but if you run into a regression, let me know and I’ll try to quickly resolve it with a patch release.

Release notes

prosemirror-model 1.0.0 (2017-10-13)

New features

ParseRule.context may now include multiple, pipe-separated context expressions.

prosemirror-transform 1.0.0 (2017-10-13)

Bug fixes

When setBlockType comes across a textblock that can’t be changed due to schema constraints, it skips it instead of failing.

canSplit now returns false when the requested split goes through isolating nodes.

prosemirror-view 1.0.0 (2017-10-13)

Bug fixes

Dragging nodes with a node view that handles its own mouse events should work better now.

List item DOM nodes are no longer assigned pointer-events: none in the default style. Ctrl-clicking list markers now properly selects the list item again.

Arrow-down through an empty textblock no longer causes the browser to forget the cursor’s horizontal position.

Copy-dragging on OS X is now done by holding option, rather than control, following the convention on that system.

Fixes a crash related to decoration management.

Fixes a problem where using cut on IE11 wouldn’t actually remove the selected text.

Copy/paste on Edge 15 and up now uses the clipboard API, fixing a problem that made them fail entirely.

New features

The dragging property of a view, which contains information about editor content being dragged, is now part of the public interface.

prosemirror-commands 1.0.0 (2017-10-13)

New features

The setBlockType command can now be used to change the types of multiple selected textblocks (rather than only one).

The platform-dependent versions of the base keymap are now exported separately as pcBaseKeymap and macBaseKeymap.

prosemirror-gapcursor 1.0.0 (2017-10-13)

New features

Valid gap cursor positions are not determined in a way that allows them inside nested nodes. By default, any position where a textblock can be inserted is valid gap cursor position.

Nodes can override whether they allow gap cursors with the allowGapCursor property in their spec.



One little issue:

If you place the caret in the middle of the first sentence in the demo on and then hit enter, it does not split the paragraph. Also paragraph merging does not seem to work any more. Tested on Chrome 61 and Firefox 56. Same happens when I try it out with our code.

1 Like

Argh, that’s bad—I screwed up one of those last-second changes. Released prosemirror-commands 1.0.1 with a fix.


working now.

1 Like


Been great watching this project progress, I can only imagine how rewarding it must be for you to see it hit 1.0!

Congrats! It’s been a long road. Glad to see ProseMirror hit a milestone and advance this part of the web… maybe they will finally fix contentEditable :smiley:

Congratulations! @marijn

Awesome work :slight_smile: Congrats!

Congratulations on the 1.0 release.

I note that you marked the 1.0 versions with a commit. Will there be any tags, branches, etc. to make getting the proper versions from github easier?

Yes, each release is tagged in the repositories.

Congratulations on the 1.0 release.