Commit graph

13 commits

Author SHA1 Message Date
Gina Häußge
21699699b6 CLI: Fixed logging init for plugins
Also fixed a stupid typo ;)
2017-07-18 12:36:16 +02:00
Gina Häußge
42e3922053 Don't care about common params on CLI
--basedir, --config, --verbose, --safe may now come before or after
subcommands and should still be evaluated.

For the server commands (legacy, "server" and "daemon"), the same
should now hold true for the related parameters --host, --port, --debug,
--logging, --iknowwhatimdoing and also --pid (for daemon command).

While having the parameters belong to the individual commands and only
there (which is click's basic approach) is way more cleaner, too many people
were running into issues with that strict approach after all.

I just hope the somewhat hackish approach with context injection needed to
get the less strict version to work won't backfire badly in the long run.

See also #1633 and #1657
2016-12-16 12:18:05 +01:00
Gina Häußge
97bf331307 Add safe mode that disables all third party plugins
Can be enabled either through new --safe command line
parameter or through server.startOnceInSafeMode in
config.yaml

When running in safe mode the plugin manager will
only allow to disable or uninstall third party plugins. Enabling
third party plugins or installing new plugins is disabled.

That will hopefully allow for more straightforward recovery
in case of a misbehaving plugin.
2016-11-18 13:02:16 +01:00
Gina Häußge
76a04cbe9d Merge branch 'dev/python3B' of https://github.com/ByReaL/OctoPrint into pr/ByReaL/dev/python3B 2016-07-15 11:28:55 +02:00
MirceaDan
c33a9f9aa2 from __future__ import absolute_import, division, print_function
changed the behavior to import division and print to be consistent
across all app and similar with python 3.x
2016-07-15 00:16:58 -07:00
Gina Häußge
0fd510a51f Less scary message on config.yaml parsing error 2016-07-08 12:35:46 +02:00
Gina Häußge
8ed3bcb094 Slight changes in CLI structure for performance reasons
Having the plugin commands on the first level of --help proved to be
a bad idea since it basically kills every chance of lazy loading the (expensive)
plugin context. Using a sub command for anything plugin related allows us
to only fire up the plugin context if a plugin command is expected, saving us
some precious seconds of operation in all other cases.

For conformity reasons the dev sub commands were now restructured
similarly.
2015-10-30 16:28:34 +01:00
Gina Häußge
e3fa916364 Forgot to declare self.hooks on OctoPrintPluginCommands 2015-10-30 12:56:49 +01:00
Gina Häußge
c6f1088ccf <plugin identifier>:<command> => plugin:<plugin identifier> command 2015-10-30 10:14:21 +01:00
Gina Häußge
3c2d2b579d Documention for CLI and its development 2015-10-29 17:37:05 +01:00
Gina Häußge
d9f0fb1667 Consolidated common options into custom decorators 2015-10-29 16:26:50 +01:00
Gina Häußge
9c56b2fd4e Variable output verbosity via CLI parameter -v 2015-10-28 19:18:40 +01:00
Gina Häußge
2dd04574ce Moved CLI into its own module with submodules
Less chaos in one file
2015-10-27 18:08:27 +01:00