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

Release/playful python #129

Merged
merged 104 commits into from Oct 25, 2018
Merged

Release/playful python #129

merged 104 commits into from Oct 25, 2018

Conversation

dxinteractive
Copy link
Collaborator

@dxinteractive dxinteractive commented Oct 24, 2018

Contains #107 #109 #111 #113 #115 #121 #126 #130

Current pre-release: v0.16.0-3 npm-tag@next

dataparcels

  • BREAKING CHANGE Removed Parcel.addModifier()
  • BREAKING CHANGE Removed Parcel.addDescendantModifier()
  • fix: modifyValue changing type no longer breaks the reducer Bug: modifyValue() calls that change the parcel type break in the reducer #118
  • fix: remove needless error swallower around parcel reducer call for handleChange calls
  • Fix: export a more correct and complete set of types
  • Fix: Parcel._boundarySplit() was not using _this._treeshare.boundarySplit()
  • fix: only unmutable writeable data types are now considered parent parcel types Uprade unmutable and only allow isWriteable(value) to be parents #122
    • this is because it doesn't make sense to allow people to get() something that cannot be set
  • fix: flow types
  • Add Parcel.toConsole() to log a parcel to the console
  • Add Parcel.batchAndReturn only on top level parcels
    • Calls batch() but returns the parcel instead of calling handleChange
  • Add Parcel.matchPipe()
    • Similar to Parcel.pipe() but automatically applies the updaters to new parcels whenever they are created and when the provided match rule is matched.
    • matchPipe(match: string, ...updaters: Array<(parcel: Parcel) => Parcel>): Parcel
    • Match string examples:
      • Match current parcel location only: .
      • Match child parcels only .*
      • Match child parcels with a key of "abc": .abc
      • Match child parcels whose key ends with "date": .*date
      • Match grandchild parcels only: .*.*
      • Match any descendant parcels with a key of "def": **.def
      • Match child parcels which are indexed: .*:Indexed
      • Match child parcels which are not indexed: .*:!Indexed
      • Match any descendant parcels which are elements": **:Element
      • Match either child parcels called "abc" or "def": .abc|.def
    • You must escape ., |, # or : with a preceding %. e.g. {"dot.key"} would be matched with .dot%.key
    • Matching is always relative to the depth at which matchPipe was called.
  • add: upgrade unmutable, unmutable compatible classes are now permitted as editable parent values
  • add: add deleted marker to fix issue with errors being thrown when calling reducer on a deleted parcel
    • DeletedParcelMarker now appears as a value when the parcel has been marked for deletion. It is a symbol that is exported from dataparcels like import {DeletedParcelMarker} from "dataparcels"
  • refactor: allow for types to accept arrays
  • refactor: move top level calculation out of ParcelTypes
  • refactor: Remove unused parcel properties

react-dataparcels

  • BREAKING CHANGE ParcelHoc config.initialValue is now called ParcelHoc config.valueFromProps
  • BREAKING CHANGE ParcelHoc now uses getDerivedStateFromProps. Use https://github.com/reactjs/react-lifecycles-compat if you're on a React version earlier than 16.3.0
  • Fix: export a more correct and complete set of types
  • Fix: Default behaviour for ParcelBoundary should be to clear the change buffer when a new parcel is received via props, as we can't assume the changes in the buffer are able to be applied to the new parcel's data.
  • fix: pure parcel now updates if isFirst() or isLast() change Bug: ParcelBoundary pure does not update if isFirst() or isLast() changes #119
  • Redo all ParcelBoundary tests to avoid setTimeout or any nested expect calls.
  • refactor: allow for types to accept arrays
  • Add ParcelBoundaryHoc (Add ParcelBoundaryHoc #108)
  • Add ParcelHoc config.shouldParcelUpdateFromProps which allows a ParcelHoc to replace its parcel's contents based on prop changes. At this point the only option is to completely replace all of the parcels contents and delete all key and meta information, depending on the outcome of a boolean test. In future there will be more options to allow partial changes, and to allow key and meta data to be retained.
  • Add ParcelBoundary.actions.cancel() to be able to cancel changes in a parcel boundary
  • add ParcelHoc config.debugParcel Add ParcelHoc({debugParcel: true}) #86
  • add ParcelBoundary debugParcel
  • add: re-export DeletedParcelMarker from dataparcels

dataparcels-docs

  • Add ParcelBoundary.childRenderer docs
  • Add ParcelBoundary.actions.cancel() to docs
  • Add ParcelBoundaryHoc docs
  • Add child props to ParcelHoc and ParcelBoundaryHoc
  • Add new gifs to docs

other

  • refactor: removed experimental dataparcels-plugin-form package

…ake matcher not care about special ^ char so it can work with non absolute paths, and use | to split parts and not types
…aries on the same parcel were sharing registries (see #109)
@dxinteractive dxinteractive merged commit 6db5ef2 into master Oct 25, 2018
@dxinteractive dxinteractive deleted the release/playful-python branch October 25, 2018 05:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants