1. 16 Oct, 2018 2 commits
    • Release 3.35.0 · 8143c5a8
      Fix IndexedDB transaction handling.
      
      Ease usage of ReplicateStorage.
      Romain Courteaud committed
    • [replicateStorage] Replicate all documents/attachments before raising. · e9a130ed
      Accumulate all operations done in a ReplicateReport object.
      
      This ReplicateReport is returned by the repair method in any case (success or failure).
      
      If an error occured while replicating a document, do not stop the full process and log the issue in the report.
      Which means repair now always tries to replicate all documents even if one fails.
      
      Each operation has a code to ease parsing it if needed.
      
      By default, the report only contains error code (< 100).
      It is possible to change the log level by using the 'report_level' storage parameter.
      
      If the 'debug' parameter is set to true, codes will also be displayed in the console.log.
      Romain Courteaud committed
  2. 10 Oct, 2018 1 commit
    • [indexedDBStorage] handle transaction event · 8ab4f278
      Open database is now wrapped into a promise which ensure that the database will be closed as soon as the promise is resolved.
      This will allow to open multiple transactions if needed.
      
      Transaction creation is now manage by a promise, which will abort the transaction if cancel is called.
      
      The transaction will also be aborted if an error occurs during its callback function.
      
      As transaction abort will reject all accesses, it is safe to use .then method inside the transaction callback.
      
      Check the transaction error event to detect some browser internal errors (like QuotaExceededError).
      Previously, such error was silently ignored, and the jIO client was not aware that the data were not correctly written.
      
      All deletions are now correctly checked, and the method will wait for all deletion to be successfull before returning.
      
      Improve putAttachment algorithm to make it update the previous value and delete only the useless blob chunks.
      
      Reduce the usage of openCursor to not fetch the table content if not needed (like if the index key is enough for example).
      Romain Courteaud committed
  3. 09 Oct, 2018 2 commits
  4. 28 Sep, 2018 1 commit
  5. 27 Sep, 2018 2 commits
  6. 07 Sep, 2018 5 commits
  7. 03 Sep, 2018 3 commits
  8. 21 Aug, 2018 2 commits
  9. 13 Aug, 2018 1 commit
  10. 10 Aug, 2018 1 commit
  11. 09 Aug, 2018 4 commits
  12. 06 Aug, 2018 2 commits
  13. 19 Jul, 2018 1 commit
  14. 17 Jul, 2018 1 commit
  15. 21 Jun, 2018 3 commits
  16. 12 Jun, 2018 1 commit
  17. 19 Apr, 2018 1 commit
  18. 04 Apr, 2018 2 commits
  19. 29 Mar, 2018 3 commits
  20. 06 Mar, 2018 2 commits