Gina Häußge
085ab77c57
Added system API to client lib and migrated users to it
2015-10-01 14:57:41 +02:00
Gina Häußge
8875f257ea
Merge branch 'devel' into dev/clientlib
...
Conflicts:
src/octoprint/server/api/__init__.py
src/octoprint/static/js/app/viewmodels/navigation.js
2015-10-01 14:22:15 +02:00
Gina Häußge
1837c74e8e
PMGR: Show restart button on notification if restart command is configured
...
This will directly offer a "Restart Now" button on the "a restart is required" notification
for plugins which cannot be directly enabled/disabled without a restart, but only if
the restart command is configured on the server.
On click a confirmation dialog will be shown.
2015-10-01 14:20:37 +02:00
Gina Häußge
950b1c2355
Only show divider between core & custom commands if there are core commands
2015-10-01 14:19:00 +02:00
Gina Häußge
97e8326768
Only try to rewrite PNotify confirm buttons if buttons are actually configured
2015-10-01 14:16:24 +02:00
Gina Häußge
6ab44849cd
Extracted system commands into their own proper API & ViewModel
2015-10-01 14:05:23 +02:00
Gina Häußge
31bc7c1f3e
Helper method for creating notifications with only one confirm button
...
PNotify always merges the default buttons and the ones provided. Just settings the default
to containing no buttons was no option since plugins might already depend on the so far
obligatory Cancel button being present. The helper allows to create one buttoned
notifications without touching the defaults.
2015-10-01 10:08:24 +02:00
Gina Häußge
be79cf289e
Merge branch 'maintenance' into devel
2015-09-30 16:00:56 +02:00
Gina Häußge
5cc8ec5cc3
Better wording for plugin system startup & sorted plugin list of ALL plugins
2015-09-30 16:00:32 +02:00
Gina Häußge
982f24fe31
PMGR: Better wording of "pip unavailable" message
2015-09-30 15:59:08 +02:00
Gina Häußge
0a1816e52f
Better error reporting in PipUtil for errors during pip setup detection
2015-09-30 15:58:38 +02:00
Gina Häußge
b432496b7f
Merge branch 'devel' into dev/clientlib
2015-09-30 14:40:46 +02:00
Gina Häußge
2926b5c8d5
PMGR: only mark as pending (un)installed if restart is needed
2015-09-30 14:30:10 +02:00
Gina Häußge
fdcc6ac367
PMGR: Only add --user flag if not running in a virtual env
2015-09-30 14:25:06 +02:00
Gina Häußge
2eb80c550f
PMGR: Disable plugin remove button if plugin is not managable
2015-09-30 13:44:58 +02:00
Gina Häußge
ca587454df
PMGR: Fixed marking of plugins
...
Plugins can now (again) show if they are pending installation,
uninstallation and also if they are managable at all.
2015-09-30 13:37:27 +02:00
Gina Häußge
e64975c85c
PMGR: Debug output in frontend to indicate venv
2015-09-30 13:36:45 +02:00
Gina Häußge
4a97864e01
PMGR: Added option to force use of --user flag
2015-09-30 13:36:00 +02:00
Gina Häußge
28fc7d74f4
Made plugin marking in PluginManager more flexible
...
Now supports arbitrary markers for plugins. Also added a method
to check if a plugin was marked with a specified marker.
2015-09-30 13:33:25 +02:00
Gina Häußge
fbfac4b569
PluginManager also scans user site packages
...
In case the user site packages are not yet part of the used
working set OR the sys path and ENABLE_USER_SITE is true, the
manager will now make sure that the folder is searched for plugins
as well upon plugin reload.
This is necessary since Python will not automatically include the
user site directory upon firing up the program in case there's
nothing installed to it/it doesn't exist. If a plugin is installed
during run time with --user that will lead to it not being found,
which is undesirable. Hence run time manipulation of sys.path and
the workingset becomes necessary.
2015-09-30 13:30:39 +02:00
Gina Häußge
10db8c9577
PluginManager now marks plugins as managable
...
Managable currently pretty much only means "uninstallable".
Plugins are managable if their installation location is writable
and - if they are installed from an entry point and OctoPrint is
running in a virtual environment - within the bounds of the virtual
environment (because otherwise pip will not allow to uninstall).
2015-09-30 13:28:58 +02:00
Gina Häußge
7c5fe46f4a
More intelligence for PipUtil to determine when to use --user
...
Includes a force_user (and a force_sudo) parameter.
2015-09-30 13:27:24 +02:00
Gina Häußge
6ed96764e1
Merge branch 'devel' into dev/pipUserParameter
2015-09-29 16:41:11 +02:00
Gina Häußge
79b8639135
Fix: Use adjusted pip arguments in execute method
2015-09-29 16:38:26 +02:00
Gina Häußge
62478fd98f
More pip data in plugin manager front end
2015-09-29 14:51:58 +02:00
Gina Häußge
22509f02b5
Make sure to include testballoon package in install
2015-09-29 14:23:10 +02:00
Gina Häußge
cae73c1ee5
Cache for pip setup and version information
...
Can take a bit of time to collect that data since it needs some invocations of
pip, so we cache that data unless told otherwise.
2015-09-29 14:22:29 +02:00
Gina Häußge
5df576b73e
Install testballoon using pip install . in testballoon folder
2015-09-29 13:53:48 +02:00
Gina Häußge
000f8e9310
Debug logging for testballoon install
2015-09-29 13:47:35 +02:00
Gina Häußge
7d38d66489
PipUtil now uses --user argument with pip install if detected as necessary
2015-09-29 13:39:08 +02:00
Gina Häußge
705f0706fd
Merge branch 'fix/pmgrPipWithSudo' into devel
...
Conflicts:
src/octoprint/util/pip.py
2015-09-28 20:21:40 +02:00
Gina Häußge
fce7b40b51
pip: Use string representation of version for display in UI
2015-09-28 20:20:56 +02:00
Gina Häußge
697affc62d
Merge branch 'fix/pmgrPipWithSudo' into devel
...
Conflicts:
src/octoprint/plugins/pluginmanager/__init__.py
src/octoprint/util/pip.py
2015-09-28 19:57:05 +02:00
Gina Häußge
1178fe9e95
Support sudo for installing plugins, but warn about it
2015-09-28 19:53:30 +02:00
Gina Häußge
bdc5d72613
Fixes OctoPrint.files.download method
2015-09-28 18:41:40 +02:00
Gina Häußge
e57ed92294
Less repetitious code
2015-09-28 18:24:56 +02:00
Gina Häußge
73c235d67f
Migrate SettingsViewModel.requestData to using promises
...
Fallback implementation for old callback parameter is still present,
logs warning about deprecation.
2015-09-28 18:17:43 +02:00
Gina Häußge
7a06f496de
Let's get rid of another callback
2015-09-28 17:08:40 +02:00
Gina Häußge
7b7f21d126
Migrate to new utility methods for testing URLs & executable paths
2015-09-28 17:08:25 +02:00
Gina Häußge
c5f0ccdb94
Migrated client to module factory pattern
...
This should _hopefully_ also make it compatible to AMD implementations,
but I have to admit that I haven't tried that yet...
2015-09-28 17:07:37 +02:00
Gina Häußge
1a469e1c97
Take login data from data, not request.values
...
That was a left-over from the previous implementation...
2015-09-28 17:06:08 +02:00
Gina Häußge
6bc8bca99c
Merge branch 'devel' into dev/clientlib
2015-09-28 13:09:58 +02:00
Gina Häußge
2f24e73fcb
Merge branch 'fix/logsDocsBug' into maintenance
2015-09-28 13:08:57 +02:00
Gina Häußge
39a0441f34
Merge branch 'fix/logsDocsBug' into devel
2015-09-28 13:08:42 +02:00
Gina Häußge
9ff5c36370
Fixed a documentation bug
2015-09-28 13:08:35 +02:00
Gina Häußge
f3e242d3a0
Merge remote-tracking branch 'origin/devel' into devel
2015-09-28 13:02:38 +02:00
Gina Häußge
0b4e590a5b
Refactored drop zone processing in GcodeFilesViewModel
2015-09-28 13:01:47 +02:00
Gina Häußge
96d479bd67
Merge branch 'fix/noDropFileuploads' into devel
2015-09-28 12:55:54 +02:00
Gina Häußge
1b4ea75466
Fix: Don't have file upload widgets listen to drop events by default
...
That way they won't be triggered by gcode uploads when all they are interested in
are uploads via a single file input.
2015-09-28 12:55:32 +02:00
Gina Häußge
eafca5d77a
Some bug fixing of client migration
2015-09-25 17:09:07 +02:00