Skip to content

Releases: NCI-GDC/psqlgraph

7.0.0

18 Apr 17:13
28fcbfe

Choose a tag to compare

Breaking Changes

  • Class structures now have several required fields
    • Nodes now have the following required class variables set:
      • __label__: A unique name for referring to the node type.
      • __tablename__: The name of the table in Postgres to which the data should be written.
    • Edges now have the following required class variables set:
      • __label__: A unique name for referring to the edge type.
      • __tablename__: The name of the table in Postgres to which the data should be written.
      • __src_class__: The name of the source node class (as a string) for the edge.
      • __src_table__: The name of the source node's table in Postgres.
      • __dst_class__: The name of the destination node class (as a string) for the edge.
      • __dst_table__: The name of the destination node's table in Postgres.
      • __src_dst_assoc__: The name of property on the source node which refers to all of it's linked destination nodes.
      • __dst_src_assoc__: The name of the property on the destination node which refers to all of it's linked sources nodes.
  • pg_properties:
    • Now require parentheses even in case of no args. e.g.
      class Node(psqlgraph.Node):
          @psqlgraph.pg_property()
          def foo(self, value: Any) -> None:
              ...
      
    • When reference in filters, they no longer required explicit casting when type is specified.
      class Node(psqlgraph.Node):
          @psqlgraph.pg_property(str)
          def bar(self, value: str) -> None:
              ...
      
      # Old style
      graph.nodes(Node.bar).filter(Node.bar.astext == "required value")
      
      # New style
      graph.nodes(Node.bar).filter(Node.bar == "required value")
      
  • Several underlying namespaces were changed. Moving forward, it is suggested to utilize only the psqlgraph & psqlgraph.ext modules.
    • psqlgraph.base.create_all -> psqlgraph.create_all
    • psqlgraph.base.drop_all -> psqlgraph.drop_all
    • psqlgraph.base.ORMBase -> ORMBase = ext.get_orm_base(None)
    • psqlgraph.node.Edge -> psqlgraph.Edge
    • psqlgraph.node.PolyEdge -> psqlgraph.poly_edge
    • psqlgraph.node.Node -> psqlgraph.Node
    • psqlgraph.node.PolyNode -> psqlgraph.poly_node
    • psqlgraph.util.pg_property -> psqlgraph.pg_property
  • Both PolyEdge and PolyNode (now deprecated aliases of poly_edge and poly_node respectively) are now keyword only functions and require a label parameter.
  • This version of psqlgraph upgrades SQLAlchemy to version 1.4. As such, there are changes to session behavior. Please refer to the SQLAlchemy documentation here for more details.

What's Changed

  • DEV-3298: Switch to GitLab CI builds. by @BenX00 in #245
  • DEV-3297: Upgrade python to 3.9-13 by @BenX00 in #246
  • DEV-3409: Standardize project & fix build issues. by @BenX00 in #250
  • DEV-3409: Clean up PsqlGraphDriver. by @BenX00 in #249
  • DEV-3250: Standardize & utilize psqlgraph package interface. by @BenX00 in #252
  • DEV-3250: Centralize voided logic in single module. by @BenX00 in #253
  • DEV-3321: Use expr with pg_properties by @BenX00 in #248
  • DEV-3250: Pull PolyEdge & PolyNode into separate module. by @BenX00 in #254
  • DEV-3250: Merge base classes by @BenX00 in #244
  • DEV-3208: Upgrade SQLAlchemy by @BenX00 in #255

Full Changelog: 6.0.4...7.0.0

6.0.4

29 Jul 15:56
dec7e6a

Choose a tag to compare

What's Changed

  • DEV-2875: resolve link resolution by label or name by @kulgan in #242

Full Changelog: 6.0.3...6.0.4

6.0.3

28 Jun 12:12
df81670

Choose a tag to compare

What's Changed

  • DEV-2813: Use internal libraries template for builds by @kulgan in #241

Full Changelog: 6.0.2...6.0.3

6.0.2

01 Apr 17:20
9c9da54

Choose a tag to compare

6.0.2 Pre-release
Pre-release

What's Changed

  • DEV-2624: Fix missing custom values while generating nodes by @kulgan in #239

Full Changelog: 6.0.1...6.0.2

6.0.1 Francois Jacob

04 Jan 19:32
b762616

Choose a tag to compare

What's Changed

  • merge release/shinya_inoue to develop by @qiaouchicago in #232
  • DEV 2305 remove py36 by @qiaouchicago in #234
  • DEV 2303 downstream pipeline by @qiaouchicago in #235
  • DEV 2376 fix get_version by @qiaouchicago in #238

Full Changelog: 5.0.1...6.0.1

Shinya Inoue

17 Aug 14:03

Choose a tag to compare

What's Changed

  • chore(release): Galileo by @kulgan in #224
  • chore(sync): master to develop by @kulgan in #226
  • DEV 1933 move mocks to separate package by @qiaouchicago in #227
  • DEV 1990 add gitlab-ci by @qiaouchicago in #228
  • DEV 2015 rename mocks to hydrator by @qiaouchicago in #229

Full Changelog: 4.0.1...5.0.1

Galileo Galilei

05 Jun 17:49
fbc7889

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 4.0.0...4.0.1

4.0.1-rc.1

23 May 18:07
fbc7889

Choose a tag to compare

4.0.1-rc.1 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: 4.0.0...4.0.1-rc.1

Franklin

13 Apr 19:39
b94a7ac

Choose a tag to compare

What's Changed

  • update pre-commit-hooks by @qiaouchicago in #210
  • Feat/dev 1604 drop py2 by @qiaouchicago in #211
  • Feat/dev 1603 black and pyupgrade by @qiaouchicago in #213
  • Feat/dev 1629 isort yaml format toml sort by @qiaouchicago in #214
  • dev-955 use label for edge resolving in mocks by @qiaouchicago in #215
  • Feat/dev 1773 drop py35 by @qiaouchicago in #217
  • DEV 1772 Standardize project structure by @qiaouchicago in #216

Full Changelog: 3.4.0...4.0.0

3.4.0-rc.1

07 Jan 14:48
3.4.0-rc.1
1de9337

Choose a tag to compare

3.4.0-rc.1 Pre-release
Pre-release
Version 3.4.0-rc.1

New:
* DEV-945: Adds support for specifying read_only and auto_flush flags when starting a new transaction. Default values for the flags can be set globally during PsqlgraphDriver instantiation, these values can be replaced when starting a new transaction.