ioBroker.js-controller icon indicating copy to clipboard operation
ioBroker.js-controller copied to clipboard

Find ways to replace used "controller lib exports"

Open Apollon77 opened this issue 3 years ago • 4 comments

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');

Apollon77 avatar Sep 11 '22 18:09 Apollon77

see also https://github.com/ioBroker/adapter-core/issues/500

Apollon77 avatar Sep 11 '22 18:09 Apollon77

Some fixed: javascript, history, sql, influxdb

Apollon77 avatar Sep 19 '22 07:09 Apollon77

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+

Apollon77 avatar Sep 22 '22 06:09 Apollon77

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

Apollon77 avatar Oct 02 '22 10:10 Apollon77

synology has been adapted with release 2.1.13, see https://github.com/iobroker-community-adapters/ioBroker.synology/issues/198

mcm1957 avatar Nov 05 '22 21:11 mcm1957

  • [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

foxriver76 avatar Mar 21 '23 07:03 foxriver76