Commit graph

3200 commits

Author SHA1 Message Date
Gina Häußge
c6f1088ccf <plugin identifier>:<command> => plugin:<plugin identifier> command 2015-10-30 10:14:21 +01:00
Gina Häußge
ec491c3d0d devel:newplugin => dev:plugin new, +dev:plugin install, +dev:plugin uninstall 2015-10-30 10:10:47 +01:00
Gina Häußge
bc7b17b66f Fixed an issue with compatibility across cookiecutter versions 2015-10-29 18:58:51 +01:00
Gina Häußge
628b9edbab CLI command devel:newplugin now allows specifying most of the parameters of the template 2015-10-29 18:41:51 +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
f68ce34351 Moved urllib3 ssl message to more suitable logging location 2015-10-29 15:26:58 +01:00
Gina Häußge
70fb385650 Try to ensure a sound SSL environment for the process
If the python version is < 2.7.9, we try to patch urllib3 with pyopenssl
to get rid of any InsecurePlatform issues.

That only works if pyopenssl plus dependencies are installed however,
hence we also log that.
2015-10-29 14:55:04 +01:00
Gina Häußge
d373d257e3 Slight changes on logging verbosity
Changed the intensity of logged warnings and ensured everything
but the octoprint package's log level to be WARN be default.
2015-10-29 14:52:14 +01:00
Gina Häußge
56805ab13d Refactored Daemon helper, added status command and added unit tests for all of it 2015-10-29 12:45:58 +01:00
Gina Häußge
4476545a55 Forgot to specify default value for daemon pidfile 2015-10-29 09:53:15 +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
55c0e2ca95 Fixed a couple of bugs with daemon and serve commands 2015-10-27 18:15:24 +01:00
Gina Häußge
a6f11b9744 Started work on devel CLI commands
For now only devel:newplugin is available (if cookiecutter is installed)
2015-10-27 18:10:51 +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
Gina Häußge
81dce6161a Moved startup log entry "up" a bit
Now that the plugin manager gets initialized before the server gets even constructed, we need
to log that entry right after we've set up logging in order to post any plugin manager related
log entries after.
2015-10-27 14:25:41 +01:00
Gina Häußge
150763fe2b CLI: debug is now part of the octoprint command context 2015-10-27 13:47:00 +01:00
Gina Häußge
aeb4c21657 Started documenting octoprint.cli.commands hook 2015-10-27 12:18:01 +01:00
Gina Häußge
12b1da9732 Some more comments to structure new click based CLI code 2015-10-27 11:13:19 +01:00
Gina Häußge
03830990ac New helper plugin_settings_for_settings_plugin, to use from cli hooks and internally 2015-10-27 10:48:23 +01:00
Gina Häußge
f4ae7b58e5 Renamed hook: octoprint.cli.command => octoprint.cli.commands 2015-10-27 10:22:08 +01:00
Gina Häußge
582cd1458d Plugin commands are now located on the same level as internal commands 2015-10-26 16:50:48 +01:00
Gina Häußge
6767a7e0a4 Plugins can now define a CLI via a hook 2015-10-26 13:47:50 +01:00
Gina Häußge
b326efbc3c Merge branch 'devel' into dev/click
Conflicts:
	setup.py
	src/octoprint/__init__.py
	src/octoprint/plugin/core.py
	src/octoprint/server/__init__.py
2015-10-26 13:47:17 +01:00
Gina Häußge
55075d40bc Merge branch 'maintenance' into devel
Conflicts:
	.versioneer-lookup
	setup.cfg
	src/octoprint/_version.py
	src/octoprint/plugin/types.py
	src/octoprint/util/__init__.py
	versioneer.py
2015-10-26 09:23:19 +01:00
Gina Häußge
a53195d2a0 Added Unit Tests for BlueprintPlugin mixin
(cherry picked from commit 53a62ab)
2015-10-26 09:15:54 +01:00
Marcel Hellwig
084fd8d433 add errorhandler decorator to blueprintplugin
This will allow you to add an errorhandler for your blueprint easily.
(cherry picked from commit b6053c1)
2015-10-26 09:12:17 +01:00
Gina Häußge
33306b6787 Fixed an earlier merge error 2015-10-26 09:11:44 +01:00
Gina Häußge
b4cb0dec87 Unit tests and some fixes for improved plugin settings processing
(cherry picked from commit bcd0f34)
2015-10-26 08:53:08 +01:00
Gina Häußge
063251fe03 Use get_all_data instead of get([], ...) construct
(cherry picked from commit ffcbdba)
2015-10-26 08:52:58 +01:00
Gina Häußge
9b3ef8b693 Fix: Persist all data different from default, not just current changes
We need to merge with our current data since we only might get partial data
from our caller.
(cherry picked from commit 7ea1578)
2015-10-26 08:52:46 +01:00
Gina Häußge
a5ce071939 Make sure only difference to default config is persisted for plugins
This change should make sure that only those settings actually make it into config.yaml
per plugin that do differ from the default settings. Up until now the full dictionary as received
e.g. from the REST API was saved, regardless whether it contained (only) default values or not.
That led to a lot of "null" entries in the config.yaml file, which for one looked horrible and also
led to problems when a plugin actually wanted to change its default values.

With this commit, two things are done. One, upon saving a configuration the default
implementation of the save routine in the settings plugin now first diffs the new data against
the defaults and only saves what is different. Two, upon server startup a cleanup method is
now called on settings plugins whose default implementation fetches the current data stored
in config.yaml, diffs that against the defaults and only writes back the diff result. If that is empty
the entry is completely deleted from config.yaml.
(cherry picked from commit d70fe32)
2015-10-26 08:52:05 +01:00
Gina Häußge
e8fa2e44e0 Travis: Let's see if we can't get the git depth upped a bit
(cherry picked from commit 5fc8e22)
2015-10-23 13:36:39 +02:00
Gina Häußge
e223341ece Travis: Migrate from legacy infrastructure
http://docs.travis-ci.com/user/migrating-from-legacy/
(cherry picked from commit bec0013)
2015-10-23 13:36:33 +02:00
Gina Häußge
5c8d9007f6 Fixed some missing exception capturing
(cherry picked from commit 2f86a6a)
2015-10-23 13:36:27 +02:00
Gina Häußge
91163dc4f4 Fixed existing doctests, added some new ones, enabled doctests in nosetests
(cherry picked from commit 02c3bf8)
2015-10-23 13:36:18 +02:00
Gina Häußge
2a8e084b51 Added a missing comma that broke the build... 2015-10-23 13:27:24 +02:00
Gina Häußge
ce00a069fa Added conversion for README.md to rst for PyPi 2015-10-23 12:08:36 +02:00
Gina Häußge
bdadab6993 We want pep440-post by default 2015-10-23 10:07:15 +02:00
Gina Häußge
05d6cac67a Define where our README is located so that it gets rendered correctly on pypi 2015-10-23 10:02:05 +02:00
Gina Häußge
528192b3c0 Fixed a merge error while migrating versioneer update 2015-10-23 09:55:14 +02:00
Gina Häußge
729d23b2c0 Fixed versioneer lookup file again
Runaway regex ;)
(cherry picked from commit 78277ac)
2015-10-23 09:54:46 +02:00
Koen Kooi
2e566c5ee1 versioneer lookup: add support for detached checkouts
When doing 'git checkout <rev>' or 'git checkout <tag>' there will be no
branch info:

	$ git branch
	* (detached from 96fc70b)

After whitelisting '\(detached.*' we get:

	$ python setup.py version
	running version
	got version from git {'version': '1.2.5-1-gfd73e02', 'branch': 'HEAD',
	'full': 'fd73e02f4fa9f286407ad688feeeee3ebaffea60'}
	Version is currently: 1.2.5-1-gfd73e02

The '-1-gfd73e02' is this commit on top of the 1.2.5 tag.

While detached checkouts should be discouraged some buildsystems (e.g.
OpenEmbedded) have no real way to avoid it, which is what this patch
fixes. Actual people doing a checkout should use a branch.

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
(cherry picked from commit 987e637)
2015-10-23 09:54:21 +02:00
Gina Häußge
e875d042a7 Refreshed versioneer again
(cherry picked from commit 7cd0adb)
2015-10-23 09:53:25 +02:00
Gina Häußge
f05f850175 Switched to new version of versioneer
Versions should now be PEP440 compatible.
(cherry picked from commit 711810d)
2015-10-23 09:53:13 +02:00
Gina Häußge
9ce9af28c3 Updating versioneer & switch to PEP440 versioning
(cherry picked from commit 137db0b)
2015-10-23 09:51:50 +02:00
Nicanor Romero Venier
a9c38cb779 Small bug fix that prevented deleting profiles 2015-10-22 17:02:42 +02:00
Gina Häußge
2c5f2f0bf8 Merge branch 'fix/sdcardFilename' into devel 2015-10-22 13:55:27 +02:00
Gina Häußge
57bf457d97 Fix: current filename in job data should never be prefixed with /
That was a tiny detail missing in 8bef18c2a8 that
caused issues with detecting which file was currently selected on the printer's
SD card (for "do not delete that" checks on the API).
2015-10-22 13:42:57 +02:00
Gina Häußge
5fc8e228b8 Travis: Let's see if we can't get the git depth upped a bit 2015-10-22 13:20:11 +02:00