- Extension of
getEntitiesOfTable()
function for multiple tables at once.
includeColumns: String[]
option has been added forgetEntitiesOfTable()
. Specified as an array of strings, it defines columns that will be followed on the top level.
- Extended
step(data, options)
function passed to aggregator byoptions
parameter:options.message
- replaces the step message on call.options.suppress
- suppresses the call of theprogress()
function while still counting the steps.
- Added a
trim
option tomodifyImages
. If set totrue
, it will trim pixels from all edges that contain values similar to the color of the top-left pixel. Default isfalse
.
- Removed
jimp
with pluginspngquant
andjpegoptim
- Added
sharp
as a replacement forjimp
- The API stays the same but
sharp
has other dependencies on native libraries which can break current deployments
- Moved
@babel/core
fromdevDependencies
todependencies
.
- Removed deprecated package
request-promise-native
. - Added
axios
as an alternative.
- The aggregator now properly returns its result in a Promise to the caller of the
start()
function.
- Updated
babel-*
node packages to@babel/*
,babel-register
hook to@babel/register
and.babelrc
configuration file.
- We've added a workaround for API requests resulting in above error message. We need to use
family: 4
in our requests which could be done by using therequest-promise-native
library rather thansuperagent
.
- When the protocol used for downloading attachments was https, the downloader broke. This is now fixed and https connections are possible.
- Added headers option from 6.2.0 to
downloader
to be able to set headers for the http requests when downloading attachments.
- Added option to
getEntitiesOfTable
to be able to set headers for the http requests.
- Added option to
filterBacklinks
infilter
. This option is set tofalse
by default. It is usually a good idea to use this option instead ofexcludeBacklinks
which will completely remove such columns.
- When aggregator broke, it would still send progress callbacks. This is fixed and the aggregator process should stop if the process was crashing.
- Added option to
tablesToLanguages
to fallback on empty strings or strings which become empty after a trim. This option is set totrue
on default and hence breaking.
- Added option to
tablesToLanguages
to be able to not use the key of a language, but just the fallbacks in the langtags. This way it is not necessary to have a valid language key as a key in thefallbacks
.
- Moved
babel-register
intodependencies
asstart
uses it.
referencer
now works without usingtablesToLanguages
before, without adding the link results intolinkRowId
. As someone may have used this bug, this could break changes. An integration test was added to test that existing code usually should not break, if not abusing the bug-behavior. Obviously,tablesToLanguages
does more than it should do currently, which should be changed in a future version.
- Add
timeoutToResendStatus
option that generally resends the progress status, if the aggregator does not send a new status by itself. You should not rely on the count of messages but on the realcurrentStep
/steps
provided in the progress message.
Channel closed exceptions are now automatically handled / swallowed. You should not rely on a closed channel for your aggregator to work.
- Add
exclude
to filter out data.
- Use pagination to request data from Grud. Introduced
maxEntriesPerRequest
option togetEntitiesOfTable()
to set this limit.
- Expose
getAllTables
to retrieve all table names of a Grud instance.
getEntitiesOfTable()
now requires the tableName parameter andpimUrl
option. If getEntitiesOfTable was used correctly, this should still not throw any exceptions. If it was used incorrectly, it would not have thrown but was probably not used as it would have resulted in an error during the aggregation.