Skip to content

Releases: Jcparkyn/nodexr

v1.6.0

12 Nov 09:28
Compare
Choose a tag to compare

Changes

  • Upgrade to .NET 7.
  • Lots of little things (mostly refactoring).

v1.5.0

13 Nov 09:55
Compare
Choose a tag to compare

Changes

  • Upgrade to .NET 6.
  • Various other refactoring and behind-the-scenes changes.

v1.4.2

24 Mar 01:25
Compare
Choose a tag to compare

Changes

  • Improved styling for buttons when directly editing the output regex.
  • Added option for IntegerNode to prefer longer numbers.

Bugfixes

  • Fixed bug where nodes were rendered in the wrong location in some locales.

v1.4.1

12 Nov 05:13
80cf6eb
Compare
Choose a tag to compare

Changes

  • Upgraded the project to .NET 5.0, providing general performance improvements.
  • Fixed a bug with parsing {x,y} quantifiers.
  • Made the height of the bottom panels independent of their contents (fixes #112).
  • Minor UI improvements.
  • Added an error message when an unhandled error occurs.

v1.4.0

24 Oct 12:41
2138c47
Compare
Choose a tag to compare

Features/Changes

This update adds five new nodes with more advanced functionality. Most of these use combinations of the existing nodes to construct commonly used patterns. These nodes cover a lot of common use cases, and drastically reduce the number of nodes needed in a lot of scenarios. Currently, none of the new nodes will be preserved after using the 'Create Shareable Link' or 'Edit' buttons (this is due to a limitation with how the link sharing is currently implemented).

  • Decimal: Matches a decimal/floating point number. This node can match numbers with or without a decimal place, as well as numbers without an integer part (e.g. .5). The node also includes options for a sign (+-) and a 'digit separator' to separate groups of digits.
  • Integer: Matches an integer (whole number). This node can simply be used as an alternative to the 'Wildcard' node for numbers, but where it really comes in useful is with Limit By set to Value. In this mode, the node will only match numbers within the specified (positive) range.
  • Optional: Makes the input nodes optional. This is equivalent to using a Quantifier node with Repetitions: 'Zero or one'.
  • List: Matches a list of similar items, with a separator between each one (and no trailing separator).
  • Recursion: Matches recursively nested expressions with brackets, using the 'Balancing Groups' feature of .NET regular expressions. This node relies on making sure that the number of opening and closing brackets are the same. Full regular expressions can also be used in the 'bracket' fields for more complex tasks (such as a rudimentary HTML parser).

Example use cases

Matching an IPv4 address with values in the range 0-255, and leading zeros allowed:
chrome_2020-10-24_23-03-24
Matching a list of 1 or more floating point numbers, each separated by a comma (with optional whitespace), and each having an optional positive or negative exponent. The numbers are each stored in a capturing group called num:
chrome_2020-10-24_23-13-07
Matching a mathematical expression with an equal number of opening and closing parentheses:
chrome_2020-10-24_23-18-05
Matching an HTML element with nested HTML tags (this doesn't check that the opening and closing tags are the same type):
chrome_2020-10-24_23-26-44
Matching a comma-separated list of times, in a variety of formats. Only times with an hour value from 0-23 and valid minute/second values (0-59) are matched.
firefox_2020-10-24_23-35-31

Other changes

  • Used a new input type (Range) to simplify the Quantifier node and the related quantifiers built into the Wildcard, Character Set, and Whitespace nodes.
  • Various refactorings and a few small bug fixes.

v1.3.1

12 Aug 08:21
b2e0d17
Compare
Choose a tag to compare

Changes

  • Removed the ability to delete the Output node or add a second one (this also fixes #107).
  • Increased the default size of the bottom panels
  • Updated the GitHub Readme
  • Added some basic analytics using GoatCounter. This does not use cookies, and no personal information is recorded.

Bugfixes

  • Fixed a bug where nodes can be accidentally deleted when pressing Backspace or Delete in a text field.
  • Fixed a bug where nodes can be unintentionally restored after being deleted.

v1.3.0

08 Aug 07:39
16faafb
Compare
Choose a tag to compare

Features/changes

  • Nodes and connected noodles are now moved while dragging in realtime. This makes it easier to position nodes, and improves support for Firefox (where the previous drag images were misaligned).
  • Removed the drag image when connecting nodes (it was misaligned on Firefox).
  • Other various improvements have been made to the drag-drop functionality.
  • Fixed the styling of the Regex Options dropdown.
  • Nodes are no longer deselected when panning.
  • Code improvements to allow for multi-select (#101) and possibly touchscreen support in a future update.

v1.2.2

31 Jul 08:09
391d531
Compare
Choose a tag to compare

Changes

  • Improved top row styling with smaller output.
  • Improved styling of output editor dialog.

Bugfixes

  • Fixed bug when pasting into the output in Firefox.
  • Improved styling of draggable window regions to prevent the bottom panels from becoming hidden.

v1.2.1

22 Jul 08:03
33e719c
Compare
Choose a tag to compare

Features/Changes:

  • Edit the regex directly using an inline editor, instead of the previous modal dialog.
  • Added the option to revert after parsing if the result is not what was intended.

v1.2.0

20 Jul 05:58
3549074
Compare
Choose a tag to compare

Features/Changes:

  • Added tooltips to node inputs explaining their purpose.
  • Improved performance when connecting nodes.
  • Added an outline to all segments produced by currently selected node (in the output display).
  • Added simple tooltips to each segment in the output display.

Bugfixes:

  • Fixed bug when using non-greedy search types with ungrouped input.
  • Removed focus outlines from buttons.
  • Fixed a bug in Firefox where the temporary noodle wasn't displayed correctly while connecting nodes.