Find ways to replace used "controller lib exports"
Here is a list of cases where in adapters currently utils-controllerDir is used ... we should fix them before 4.1 release. Some ofthem are alreayd replaceable ... some not
ioBroker.admin/main.js:const tools = require(utils.controllerDir + '/lib/tools.js');
ioBroker.admin/main.js: let io = fs.readFileSync(utils.controllerDir + '/io-package.json').toString('utf8');
ioBroker.admin/main.js: adapter.log.error(`Cannot read ${utils.controllerDir}/io-package.json: ${e}`);
ioBroker.admin/main.js: if (fs.existsSync(utils.controllerDir + '/io-package.json')) {
ioBroker.admin/main.js: const ioPackage = require(utils.controllerDir + '/io-package.json');
ioBroker.discovery-/main.js:const tools = require(utils.controllerDir + '/lib/tools');
ioBroker.email/main.js:const tools = require(utils.controllerDir + '/lib/tools.js');
ioBroker.lgtv/lgtv.js: let dir = utils.controllerDir + '/' + adapter.systemConfig.dataDir + adapter.namespace.replace('.', '_') + '/';
ioBroker.lovelace/main.js:const LE = require(utils.controllerDir + '/lib/letsencrypt');
ioBroker.mercury/main.js: const dir = utils.controllerDir + '/' + adapter.systemConfig.dataDir + adapter.namespace.replace('.', '_') + '/';
ioBroker.minmax/main.js://var dataDir = path.normalize(utils.controllerDir + '/' + require(utils.controllerDir + '/lib/tools').getDefaultDataDir());
ioBroker.minmax/main.js://const cachePath = path.normalize(utils.controllerDir + "/iobroker-data/");
ioBroker.mqtt/main.js:const tools = require(utils.controllerDir + '/lib/tools');
ioBroker.node-red/main.js: const parts = utils.controllerDir.split('/');
ioBroker.onvif/main.js:const tools = require(utils.controllerDir + '/lib/tools');
ioBroker.openknx/main.js: this.log.info(utils.controllerDir);
ioBroker.owntracks/main.js://const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.pimatic/main.js: adapter.tools = adapter.tools || require(utils.controllerDir + '/lib/tools');
ioBroker.sayit/main.js:let dataDir = libs.path.normalize(`${utils.controllerDir}/${require(utils.controllerDir + '/lib/tools').getDefaultDataDir()}/sayit`);
ioBroker.serve/main.js: dataDir = path.normalize(utils.controllerDir + '/../../iobroker-data')
ioBroker.simple-api/main.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.smartvisu/main.js:var dataDir = path.normalize(utils.controllerDir + path.sep + require(utils.controllerDir + path.sep + 'lib' + path.sep + 'tools').getDefaultDataDir());
ioBroker.socketio/main.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.socketio/main.js: const AdapterStore = require(utils.controllerDir + '/lib/session.js')(session, settings.ttl);
ioBroker.sonos/main.js:const tools = require(utils.controllerDir + '/lib/tools.js');
ioBroker.swagger/main.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.synology/main.js: dir = `${utils.controllerDir}/${adapter.systemConfig.dataDir}${adapter.namespace.replace('.', '_')}/`;
ioBroker.telegram/main.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.template-rest/main.js:var LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.tr-064/main.js:const tools = require(`${utils.controllerDir}/lib/tools`);
ioBroker.tuya/main.js: const dataDir = path.normalize(utils.controllerDir + '/' + require(utils.controllerDir + '/lib/tools').getDefaultDataDir());
ioBroker.unifi-protect/main.js:const tools = require(utils.controllerDir + "/lib/tools");
ioBroker.vis-google-fonts/main.js: const file = utils.controllerDir + '/lib/setup.js';
ioBroker.vis/main.js: const file = utils.controllerDir + '/iobroker.js';
ioBroker.web/main.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.web/main.js:const tools = require(utils.controllerDir + '/lib/tools.js');
ioBroker.web/main.js: AdapterStore = require(utils.controllerDir + '/lib/session.js')(session, settings.ttl);
ioBroker.wetty/main.js:var LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.wetty/main.js: AdapterStore = require(utils.controllerDir + '/lib/session.js')(session, settings.ttl);
ioBroker.wetty/main.js: password = require(utils.controllerDir + '/lib/password.js');
ioBroker.ws/main.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.ws/main.js: const AdapterStore = require(utils.controllerDir + '/lib/session.js')(session, settings.ttl);
ioBroker.xterm/main.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.xterm/main.js: const dir = utils.controllerDir.replace(/\\/g, '/');
ioBroker.yahka/main.js: yahkaAdapter = new hkAdapter.TIOBrokerAdapter(ioAdapter, utils.controllerDir);
iobroker.terminal-/main.js: AdapterStore = require(utils.controllerDir + '/lib/session.js')(session);
iobroker.terminal-/main.js: password = require(utils.controllerDir + '/lib/password.js');
ioBroker.admin/lib/web.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.admin/lib/web.js: AdapterStore = require(utils.controllerDir + '/lib/session.js')(session, settings.ttl);
ioBroker.admin/lib/web.js: password = require(utils.controllerDir + '/lib/password.js');
ioBroker.backitup/lib/tools.js: const tools = require(utils.controllerDir + '/lib/tools.js');
ioBroker.cloud/lib/socketCommands.js: zipFiles = require(utils.controllerDir + '/lib/zipFiles.js');
ioBroker.history/converter/history2db.js:const dataDir = path.normalize(utils.controllerDir + '/' + require(utils.controllerDir + '/lib/tools').getDefaultDataDir());
ioBroker.nibeuplink/build/main.js:const controllerTools = require(path.join(utils.controllerDir, 'lib/tools'));
ioBroker.nibeuplink/build/main.js: const dataDir = path.normalize(utils.controllerDir + '/' + controllerTools.getDefaultDataDir());
ioBroker.ring/build/main.js: this.config.path = path_1.default.normalize(`${utils.controllerDir}/${dataDir}files/${this.namespace}`);
ioBroker.snips/lib/client.js:const tools = require(utils.controllerDir + '/lib/tools');
ioBroker.socket-classes/lib/socketCommands.js: zipFiles = require(utils.controllerDir + '/lib/zipFiles.js');
ioBroker.socketio/lib/socketCommands.js: zipFiles = require(utils.controllerDir + '/lib/zipFiles.js');
ioBroker.swagger/lib/rest-api.js:const tools = require(utils.controllerDir + '/lib/tools');
ioBroker.tronwallets/lib/web.js:const LE = require(utils.controllerDir + '/lib/letsencrypt.js');
ioBroker.tronwallets/lib/web.js: AdapterStore = require(utils.controllerDir + '/lib/session.js')(session, settings.ttl);
ioBroker.tronwallets/lib/web.js: password = require(utils.controllerDir + '/lib/password.js');
see also https://github.com/ioBroker/adapter-core/issues/500
Some fixed: javascript, history, sql, influxdb
After that is fixed we also need to check all adaoters that use the data dir methods from adapter-core that they updated to adapter-core 2.6.6+
Ok, theeeeennnn ... :-))) (WIP, post will be updated over time)
I do just local changes for now and then with a 2.6.7 adapter-core I update all "at once".
Release with adapter-core 2.6.7+ DONE
- email v1.1.4+
- owntracks v1.0.5+
- simple-api v2.7.2+
- vis-google-fonts v1.0.4+
- terminal v1.0.0+
- xterm v1.1.0+
- discovery: needs getAdapterDir v3.0.6+
- mqtt: v4.1.1+
- web -> Bluefox v5.2.10+
- socket-classes -> Bluefox v0.5.0+
- cloud -> Bluefox v4.2.3+
- tr-064 v4.2.18+
- tuya v3.7.0+
- telegram v1.15.1+
- node-red v4.0.1+
- sayit v1.13.0+
- sonos v2.3.1+
- pimatic v0.3.1+
- smart-visu GitHub
- history v2.2.4+
Done by other Dev:
- nibeuplink v1.2.1+
- synology v2.1.13+
- backitup -> v2.3.0+
- lovelace - > v2.2.0+
- socketio -> v6.2.0+
- ws -> v2.2.0+
- rest-api -> v1.0.5+
- admin -> v6.2.23+
- yahka - v1.0.0+
- ring - released in v3.2.7+
- mercury - released v0.1.6+
- unifi-protect v0.0.12+
- onvif adapter is rewritten use new adapter
- LGTV -> https://github.com/SebastianSchultz/ioBroker.lgtv/pull/127/files -> Update from https://github.com/foxriver76/ioBroker.lgtv To be ignored:
- [x] openknx - removed the log message, however would still work as no reading of things all versions
- [x] serve - not in repo and official PRs have been ignored ignore
- [ ] wetty - seems not working we leave as is for now ignore
- [ ] snips - as the service is dead, I would wait until someone complains ignore
- [x] tronwallets - the code using it seems to be dead code ignore
synology has been adapted with release 2.1.13, see https://github.com/iobroker-community-adapters/ioBroker.synology/issues/198
- [x] mercury - released v0.1.6
- [x] minmax - only outcommented code all versions
- [x] onvif adapter is rewritten use new adapter
- [x] openknx - removed the log message, however would still work as no reading of things all versions
- [x] serve - not in repo and official PRs have been ignored ignore
- [x] unifi-protect - no longer present in code v0.0.12
- [ ] wetty - seems not working we leave as is for now ignore
- [x] yahka - v1.0.0
- [x] ring - released in v3.2.7
- [ ] snips - as the service is dead, I would wait until someone complains ignore
- [x] tronwallets - the code using it seems to be dead code ignore
Others:
LG -> https://github.com/SebastianSchultz/ioBroker.lgtv/pull/127/files