APOC Release 3.0.8.4

@jexp jexp released this Jan 6, 2017 · 6 commits to 3.0 since this release

This release targets Neo4j 3.0.8 and later in the 3.0.x series, should also work with earlier versions after 3.0.4

Notable changes:

  • ed7a25a Add some more full text index add and remove procedures for nodes and relationships
  • 989b26a fix escaping of \ in export.cypher.* fixes #235
  • 7c5b7ea added apoc.map.fromNodes(label, property) fixes #217
  • 4cdc97c remove extra relationships from apoc.meta.graph(), quick variant from db-stats via apoc.meta.graphSample() fixes #209
  • 7a6c525 added apoc.refactor.invert(rel) to invert relationship-direction
  • 59e5234 documented apoc.json.get/setProperty added apoc.json.getPropertyMap
  • 67bdac6 Additional option parameters for apoc.index.addAllNodes (#158)
  • 2c9fc73 added new map procedures, added MapListResult for a map with list values
  • ab7afbf Added first stab at export to csv with apoc.export.csv.* #117
  • e8742a6 added apoc.date.systemTimezone() for 3.0 (#216)
  • d862f6b Make sortNodes return a list of nodes, added coll.sortMaps, fixes #213, #214
  • cbe17be added apoc.date.expire.in and added some docs to overview, should fix #196
  • 8437ece added parameters for concurrency and write-back property and logging to Algorithms
  • d138146 Fix error message für periodic iterate and commit: Caused by: java.util.IllegalFormatConversionException: d != java.lang.String

This release also contains quite a number of bugfixes and a few documentation updates.

Thanks a lot to everyone who provided feedback or sent in pull requests.

Downloads

APOC Release 3.1.0.3

@jexp jexp released this Dec 14, 2016 · 73 commits to 3.0 since this release

This is the newest release of APOC for the 3.1.x series of Neo4j, currently 3.1.0

Besides bug-fixes it contains these new procedures and functions.

  • remove extra relationships from apoc.meta.graph(), quick variant from db-stats via apoc.meta.graphSample() fixes #209
  • added apoc.map.fromNodes(label, property)
  • added apoc.refactor.invert(rel) to invert relationship-direction
  • added apoc.math.round(value, prec, mode)
  • documented apoc.json.get/setProperty added apoc.json.getPropertyMap
  • Additional option parameters for apoc.index.addAllNodes for index-configuration
  • apoc.map.mergeList([{maps}]) yield value | merges all maps in the list into one
  • apoc.map.groupBy([maps/nodes/relationships],'key') yield value | creates a map of the list keyed by the given property, with single values
  • apoc.map.groupByMulti([maps/nodes/relationships],'key') yield value | creates a map of the list keyed by the given property, with list values
  • added overview doc for apoc.text.regexp
  • Added first stab at export to csv with apoc.export.csv.*
  • Make sortNodes return a list of nodes, added coll.sortMaps
  • added apoc.date.expire.in and added some docs to overview
  • added apoc.date.systemTimezone() to retrieve the system timezone prog… (#215)

Downloads

APOC Release 3.1.0.2

@jexp jexp released this Nov 6, 2016 · 58 commits to master since this release

This is the new 3.1.0.2 release of APOC for Neo4j 3.1.0-M13-beta3 with a ton of new functionality and fixes.

We also started with a first set of guides for APOC, just try in your browser

:play http://guides.neo4j.com/apoc

Thanks so much to everyone, sorry if I forgot to mention you, for your contributions, feedback and ideas.

Please try out the new features and give us feedback. Also if you haven't used APOC so far, make sure to check out the intro articles on the Neo4j Blog and the documentation

And if you like it, please star the repository. Thanks!

New Procedures

  • apoc.map.merge(map1,map2) to merge two maps
  • apoc.map.setKey, apoc.map.setEntry, apoc.map.setPairs, apoc.map.setLists, apoc.map.setValues
  • apoc.number.format/parse procedures (Thanks @inserpio)
  • First stab at database triggers apoc.trigger.add
  • (WIP) a queue based apoc.cypher.mapParallel2 for sub-paralellization
  • apoc.config.list to list Neo4j configuration as admin
  • apoc.util.validate to raise exceptions
  • efficient apoc.node.relationship.exists that takes dense nodes into account
  • apoc.text.lpad/rpad, apoc.text.format (printf syntax)
  • apoc.create.set(Rel)Property for dynamic property names (and apoc.create.set(Rel)Properties)

Data Integration

  • Couchbase integration apoc.couchbase.* (Thanks @inserpio)
  • Import and Export for GraphML
  • Reading and Writing of files has to be enabled apoc.import/export.file.enabled=true

Graph Algorithms

  • algo.pageRankCypher on projected graphs (Thanks @atuljangra)
  • algo.betweenessCentralityCypher on projected graphs (Thanks @atuljangra)
  • improved and parallelized loading of projected graphs
  • pageRankStats for only execution and write-back no return of nodes

Documentation

  • In Browser Guides
  • Documentation updates
  • Documentation for manual indexes (thanks @rohankharwar)

Bugfixes & Improvements

  • fixed memory leak with all background transaction procedures like periodic.iterate or periodic.commit
  • fixed apoc.warmup.run, (Thanks @fpavageau)
  • performance improvements to periodic.iterate and periodic.commit
  • Auth information from URL turned into basic auth headers (thanks @ikwattro)
  • Hide passwords & credentials in error messages
  • apoc.meta.graph and apoc.meta.stats now use the transactional database statistics and are instant
  • procedure compiler (checker) update (thanks @fbiville)
  • increased jdbc fetch size
  • use id-generator for highest-node and rel-ids
  • fixes for algorithms esp. concurrency and correctness
  • fix for apoc.nodes.delete
  • fix to dijkstra for string cost properties

Downloads

APOC Release 3.0.4.2

@jexp jexp released this Oct 29, 2016 · 26 commits to master since this release

This is the new 3.0.4.2 release of APOC with a ton of new functionality and fixes.

We also started with a first set of guides for APOC, just try in your browser

:play http://guides.neo4j.com/apoc

Thanks so much to everyone, sorry if I forgot to mention you, for your contributions, feedback and ideas.

Please try out the new features and give us feedback. Also if you haven't used APOC so far, make sure to check out the intro articles on the Neo4j Blog and the documentation

And if you like it, please star the repository. Thanks!

New Procedures

  • apoc.map.merge(map1,map2) to merge two maps
  • apoc.map.setKey, apoc.map.setEntry, apoc.map.setPairs, apoc.map.setLists, apoc.map.setValues
  • apoc.number.format/parse procedures (Thanks @inserpio)
  • First stab at database triggers apoc.trigger.add
  • (WIP) a queue based apoc.cypher.mapParallel2 for sub-paralellization
  • apoc.config.list to list Neo4j configuration as admin
  • apoc.util.validate to raise exceptions
  • efficient apoc.node.relationship.exists that takes dense nodes into account
  • apoc.text.lpad/rpad, apoc.text.format (printf syntax)
  • apoc.create.set(Rel)Property for dynamic property names (and apoc.create.set(Rel)Properties)

Data Integration

  • Couchbase integration apoc.couchbase.* (Thanks @inserpio)
  • Import and Export for GraphML
  • Reading and Writing of files has to be enabled apoc.import/export.file.enabled=true

Graph Algorithms

  • algo.pageRankCypher on projected graphs (Thanks @atuljangra)
  • algo.betweenessCentralityCypher on projected graphs (Thanks @atuljangra)
  • improved and parallelized loading of projected graphs
  • pageRankStats for only execution and write-back no return of nodes

Documentation

  • In Browser Guides
  • Documentation updates
  • Documentation for manual indexes (thanks @rohankharwar)

Bugfixes & Improvements

  • fixed memory leak with all background transaction procedures like periodic.iterate or periodic.commit
  • fixed apoc.warmup.run, (Thanks @fpavageau)
  • performance improvements to periodic.iterate and periodic.commit
  • Auth information from URL turned into basic auth headers (thanks @ikwattro)
  • Hide passwords & credentials in error messages
  • apoc.meta.graph and apoc.meta.stats now use the transactional database statistics and are instant
  • procedure compiler (checker) update (thanks @fbiville)
  • increased jdbc fetch size
  • use id-generator for highest-node and rel-ids
  • fixes for algorithms esp. concurrency and correctness
  • fix for apoc.nodes.delete
  • fix to dijkstra for string cost properties

Downloads

Preview Release for Neo4j 3.1.0-M10 with User Defined Functions

@jexp jexp released this Oct 6, 2016 · 58 commits to master since this release

We already converted about 50 procedures into functions from the following areas:

package # of functions example function

date & time conversion

3

apoc.date.parse("time",["unit"],["format"])

number conversion

3

apoc.number.parse("number",["format"])

general type conversion

8

apoc.convert.toMap(value)

type information and checking

4

apoc.meta.type(value)

collection and map functions

25

apoc.map.fromList(["k1",v1,"k2",v2,"k3",v3])

JSON conversion

4

apoc.convert.toJson(value)

string functions

7

apoc.text.join(["s1","s2","s3"],"delim")

hash functions

2

apoc.util.md5(value)

We also started to add default values for parameters and deprecate procedures that required alternative names because of a wider parameter set.

We also moved the Description annotation from APOC's own to the one now provided within Neo4j, so you'll see the descriptions for all functions and procedures in dbms.procedures().

Downloads

3.0.4.1 Release of Awesome Procedures On Cypher (APOC)

@sarmbruster sarmbruster released this Aug 22, 2016 · 92 commits to master since this release

*NB: This release requires at least Neo4j 3.0.4. *

A ton of new procedures has been added, in total we do now have a collection of way more than 200 procedures.

Thanks to everyone who made that happen.

Downloads

1.1.0 Release of Awesome Procedures On Cypher (APOC)

@jexp jexp released this Jul 11, 2016 · 146 commits to master since this release

More than 100 new functions since the last APOC release. Especially around data integration, there are now new means to exchange data with ElasticSearch, MongoDB, Cassandra and Gephi. There were also a lot of new convenience functions added in all sections.

Thanks a lot to all contributors and users who reported back with feedback, suggestions and pull requests.

There will be an ongoing blog series on https://neo4j.com/blog about the different aspects covered by APOCs.

If you like the library please tell your friends and colleagues.

Downloads

First release of APOC

@jexp jexp released this May 7, 2016 · 278 commits to master since this release

Over the last few weeks since the release of Neo4j 3.0.0 on April 26, APOC gathered a lot of new functionality including

  • free text search
  • first graph-algos like page-rank, centrality, allSimplePaths, label-propagation and clique finding (WIP)
  • bit-operations
  • geocode
  • warm-up
  • more utility, time, map, and string functions

There are new docs in development at http://neo4j-contrib.github.io/neo4j-apoc-procedures/

That's why I felt a first release was due. And because I wanted to get it into your hands.

ENJOY!
And make sure to report feedback and ideas as GitHub Issues

Michael

Downloads

First APOC release

@jexp jexp released this Apr 15, 2016 · 358 commits to master since this release

In this first release APOC already comes loaded with lots of useful procedures for Neo4j 3.0-RC1

Please follow the instructions in the readme for usage tips. You can also use CALL apoc.help('name') for a short description in the browser

Grab the binary JAR, drop it in the $NEO4J_HOME/plugins folder and restart the server. Then CALL dbms.procedures should list them all.

apoc-help-apoc

Downloads