Skip to content

Releases: Entity-Access/entity-access

v1.1.4

20 Mar 05:12

Choose a tag to compare

Full Changelog: v1.1.3...v1.1.4

Added Stack information for driver errors.

v1.1.3

14 Mar 14:09

Choose a tag to compare

  1. Improved syntax for query, q.where({ userID }, (x, p) => x.userID === p.userID). Sql Parameter is now second parameter of the arrow function. This reduces query syntax and improves parsing time.
  2. Include index fixed.
  3. Added operator class support for index that can be helpful to postgres.
  4. Added Sql.regex.replace for regex replace if supported by database.
  5. Sql.text.endsWith fixed.
  6. Date serialization in JsonGenerator fixed.
  7. Added Sql.date.age
  8. Added text buffering in JsonGenerator to improve performance

Full Changelog: v1.0.512...v1.1.3

v1.0.512

18 Nov 10:58

Choose a tag to compare

What's Changed

  1. Exists query fixed for expansion
  2. Force join fixed for expansion
  3. Workflow task locking improved
  4. Added slice in query
  5. Added RawQuery support to query database directly (only in exceptional cases for direct execution).

Full Changelog: v1.0.411...v1.0.512

v1.0.411

21 Apr 10:30

Choose a tag to compare

Full Changelog: v1.0.408...v1.0.411

Simple Join

You can join two tables only as a where clause. Selecting combined mapping will be released in future.

The following example shows how to join two tables with no relations and with on clause for like method.

const fp = db.filePermissions.where({ userID} , (p) => (x) => x.useID === p.userID);

q = db.files.innerJoin(fp, (fq) => (x) => Sql.text.startsWith(x.path, fq.path));

Union All

You can union multiple queries a single query for improved performance instead of using OR clause.

const ownedFiles = db.files.where({userID}, (p) => (x) => x.ownerID === p.userID);
const sharedFiles = db.files.where({userID}, (p) => (x) => x.fileShares.some((fs) => fs.ownerID === p.userID));

const allFiles = sharedFiles.unionAll(ownedFiles);

v1.0.408

06 Mar 06:13

Choose a tag to compare

Full Changelog: v1.0.403...v1.0.408

Added RANK, DENSE_RANK, ROW_NUMBER window functions.

(p) => (x) => Sql.window.denseRank.orderBy(x.marks) => DENSE_RANK() OVER (ORDER BY marks)

(p) => (x) => Sql.window.denseRank.partitionByOrderBy(x.class, x.marks) => DENSE_RANK() OVER (PARTITION BY class ORDER BY marks)

v1.0.403

15 Feb 09:53

Choose a tag to compare

Full Changelog: v1.0.376...v1.0.403

  1. Added isJson in Sql Functions.
  2. Added updateSelect to perform select after updating values.
  3. Added High performance Json Serialization, which serializes json asynchronously.
  4. Json Serialization is non recursive function which reduces pressure on stack.
  5. Added preJson event that is executed before json serilalization

v1.0.376

22 Nov 04:00

Choose a tag to compare

Full Changelog: v1.0.365...v1.0.376

  1. Added register disposable in DI Scope
  2. ForeignKeyConstraint added for RelateOne
  3. Multiple transactions in single scope fixed
  4. Added error message parameter for firstOrFail

v1.0.365

17 Oct 06:55

Choose a tag to compare

Full Changelog: v1.0.364...v1.0.365

  1. QueryExpander's parentType fixed.

v1.0.364

10 Oct 05:24

Choose a tag to compare

Full Changelog: v1.0.346...v1.0.364

  1. Made null not distinct on Postgres as default.
  2. Index creation issue fixed on Postgres.
  3. Null check made explicit in direct statements.
  4. Added unit test for insertInto.
  5. Added ThrottleGroup for workflows.
  6. Duplicate ChangeSet detection fixed.
  7. Added DateTime as Default type for Postgres and Sql Server drivers.

v1.0.346

23 Jul 12:30

Choose a tag to compare

What's Changed

  1. Added simple statements for direct execution instead of saveDirect.
  2. Added missing negate experession

Full Changelog: v1.0.320...v1.0.346