Commit graph

93 commits

Author SHA1 Message Date
Gina Häußge
fb8c56be57 SWU: Track network connectivity & handle offline scenarios
See also #2011
2017-07-19 18:42:28 +02:00
Gina Häußge
5fc194accd Docs: Added sequence diagrams for web interface lifecycle
For now only startup and reconnect to server.
2017-06-30 18:28:49 +02:00
Gina Häußge
12d40122d1 Use wrapt.ObjectProxy for SessionUser wrapper class
Our old manual wrapped didn't properly work in some aspects, this
version now should hopefully take care of most common proxy object
pitfalls.
2017-06-27 15:03:37 +02:00
Gina Häußge
1219939189 Add missing dependency
Closes #1850
2017-04-03 09:43:07 +02:00
Noah Martin
b1057a4cc8 Simplified install process on Mac
(cherry picked from commit 726eec8)
2017-01-13 13:29:11 +01:00
Gina Häußge
6c9cac0eca Merge branch 'master' into maintenance 2017-01-09 14:10:04 +01:00
Gina Häußge
101471235c Pinning Jinja to <2.9 for now
Variables defined in an outer scope can no longer be set from an inner scope (see
pallets/jinja#641). Regardless of whether that is right or wrong, we can't control if
people are using such constructs in their plugins, which versions of Jinja >= 2.9 would
now break out of the blue, regardless of OctoPrint version. That is unacceptable sadly
and requires pinning for now, until plugin authors have had a chance to adapt
accordingly.

Also see #1697.
2017-01-09 14:09:49 +01:00
Gina Häußge
fcb0e382b5 Fix missing websocket-client dependency for octoprint client
See #1648
2016-12-13 14:55:43 +01:00
Gina Häußge
0f53c1aaa6 Pin tornado dependency to 4.0.2 for now
">=4.0.2,<4.1" will pull in 4.1b and we don't want that due to issue with
that and websocket communication due to permessage-deflate.

While we desperately need to migrate to a newer tornado, due to some
voodoo needed to get large streamed uploads and downloads to work
that is probably not completely straightforward and therefore
something for post-1.3.0-stable release.
2016-11-24 11:45:26 +01:00
Gina Häußge
bccc706329 First throw at caching of API methods
Most caching is left to the client, by utilizing ETag and Last-Modified headers.

Where it was easily achievable, an additional server side miniature cache of intermediary
results was introduced (e.g. for the files). The regular cached decorator was not used
since it targets caching full responses, and the responses in question already contained
client request specific data. Caching "one step earlier" allows better usage of the cache here.

Also introduced a dependency on the scandir module, to get a bit of a performance boost
on os.walk and os.listdir (which have been replaced with scandir.walk and scandir.listdir
respectively). See https://github.com/benhoyt/scandir#background on why that made
sense.
2016-08-30 19:02:30 +02:00
Gina Häußge
aae01fe81b Merge branch 'maintenance' into devel
Conflicts:
	CHANGELOG.md
	docs/api/fileops.rst
	src/octoprint/plugins/virtual_printer/virtual.py
	src/octoprint/server/api/files.py
	src/octoprint/static/css/octoprint.css
	src/octoprint/static/js/app/dataupdater.js
	src/octoprint/static/js/app/main.js
	src/octoprint/static/js/app/viewmodels/files.js
	src/octoprint/static/js/app/viewmodels/settings.js
	src/octoprint/templates/sidebar/state.jinja2
	src/octoprint/util/comm.py
2016-07-28 15:00:23 +02:00
Gina Häußge
5d21399a73 Custom markdown filter, 3rd party one wasn't thread safe 2016-07-21 11:50:29 +02:00
MirceaDan
3dae8d90d7 python3: xrange got removed from python 3
python3 range is = python2 xrange
to make python 2 range = with python3 range i used teh future package
and did
from builtins import range
2016-07-15 00:56:45 -07:00
Gina Häußge
297c434d64 Ease up a bit on the version pinning 2016-07-14 11:41:39 +02:00
Gina Häußge
34842d4312 Use ChainMap for settings 2016-06-22 15:22:47 +02:00
Gina Häußge
76b4a45495 Merge branch 'maintenance' into devel
Conflicts:
	THIRDPARTYLICENSES.md
	setup.py
	src/octoprint/server/__init__.py
	src/octoprint/server/views.py
	src/octoprint/settings.py
	src/octoprint/static/css/octoprint.css
2016-05-03 10:48:26 +02:00
Gina Häußge
8f621eca43 Merge branch 'improve/announcementPlugin' into maintenance 2016-05-02 17:38:21 +02:00
Gina Häußge
789e9922d1 Some improvements in the about dialog
* Sponsors => Supporters
  * Links to individual About dialog tabs from start page
  * Slight rewording here and there
  * rel="noopener noreferrer" for external links
2016-05-02 11:25:05 +02:00
Gina Häußge
652158d17a WIP: Announcement plugin 2016-05-02 10:12:17 +02:00
Gina Häußge
54fe75fb4e Merge branch 'improve/aboutDialog' into devel
Conflicts:
	.gitignore
	THIRDPARTYLICENSES.md
	setup.py
	src/octoprint/plugins/virtual_printer/virtual.py
	src/octoprint/server/__init__.py
	src/octoprint/server/util/flask.py
	src/octoprint/server/views.py
	src/octoprint/settings.py
	src/octoprint/templates/dialogs/about/about.jinja2
	src/octoprint/templates/index.jinja2
2016-04-21 12:10:03 +02:00
Gina Häußge
5e6a7ef605 Added sponsor list 2016-04-21 11:56:56 +02:00
Gina Häußge
e0b888b2d0 First throw at an "About" dialog
(cherry picked from commit f2c07e8)
2016-04-19 16:41:30 +02:00
Gina Häußge
05ce46ccc4 Update click and cookiecutter dependencies 2016-03-23 10:40:09 +01:00
Gina Häußge
e4828450c9 Merge branch 'fix/slugifyFilenames' into devel
Conflicts:
	setup.py
2016-01-11 16:43:38 +01:00
Gina Häußge
7743372ee4 Slugify file names on local storage
Just stripping anything non-ASCII leads to errors with UTF-8 only
filenames.

Closes #1181
2016-01-11 16:42:05 +01:00
Gina Häußge
43420163db Fixed some pinned versions for dependencies, introduced upper bounds 2015-11-19 10:48:06 +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
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
9ce9af28c3 Updating versioneer & switch to PEP440 versioning
(cherry picked from commit 137db0b)
2015-10-23 09:51:50 +02:00
Gina Häußge
c55fea666d Updated required versions of psutil and netifaces
Also see #1090
2015-10-19 09:33:48 +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
a05e3a44af Updated tornado, sockjs-tornado and psutil dependencies 2015-09-21 15:00:06 +02:00
Marcel Hellwig
e46e7b3ee2 changed magic line from python->python2
Since python is sometimes (and for me on arch linux) a symlink to the
python3 utils, you should be more explicit with that.
2015-09-17 18:04:14 +02:00
Gina Häußge
f2c07e8f96 First throw at an "About" dialog 2015-09-03 17:08:15 +02:00
Gina Häußge
540cf4f4d9 Merge branch 'maintenance' into devel
Conflicts:
	.versioneer-lookup
	CHANGELOG.md
2015-09-02 20:19:29 +02:00
Gina Häußge
455474841e Pinned psutil version to 3.1.1 (and all other dependencies)
Something in the recently released psutil 3.2.0 version causes installations via
python setup.py install to fail that list psutil as requirement.

Pinning to 3.1.1 solves that problem for now.
2015-09-02 19:38:18 +02:00
Gina Häußge
0e863ad776 Made diskspace running low a bit more obvious
* Added "total" space to "free" in file list
  * Added configurable space thresholds. If free space is below "warning"
    threshold, exclamation sign will be added to report. If free space is below
    "critical" threshold, report will be styled bold and red.
(cherry picked from commit 097800a)
2015-08-27 17:14:10 +02:00
Gina Häußge
097800ae9c Made diskspace running low a bit more obvious
* Added "total" space to "free" in file list
  * Added configurable space thresholds. If free space is below "warning"
    threshold, exclamation sign will be added to report. If free space is below
    "critical" threshold, report will be styled bold and red.
2015-08-27 10:29:11 +02:00
Gina Häußge
a65ad50898 Better command line interface 2015-07-13 13:51:36 +02:00
Gina Häußge
137db0b17c Updating versioneer & switch to PEP440 versioning 2015-06-29 17:27:15 +02:00
Gina Häußge
8353c9bdf5 Better fix for #931, stays backwards compatible to older setuptools versions
python-setuptools on OctoPi is quite old and trying to update in a local virtualenv apparently CAN cause problems (we had this with python-serial too a while back), so a backwards compatible solution is better here.
2015-06-10 17:25:23 +02:00
Gina Häußge
6a7a858065 Fix: octoprint_setuptools depends on setuptools==7.0
Closes #931
2015-06-10 16:34:12 +02:00
Gina Häußge
261f6709a3 Depend on Flask-Assets 0.10
Compatibility adjustments and version pinning
2015-06-03 19:36:38 +02:00
Gina Häußge
157b78a052 WIP: Use Flask-Assets to merge js, css and less files
Should reduce number of requests and hence load times needed for loading web interface.

TODO: Handling of empty bundles needs to be fixed
2015-06-03 16:42:57 +02:00
Gina Häußge
02b7085543 Merge branch 'dev/translationsAsPackages' into devel
Conflicts:
	src/octoprint/server/__init__.py
2015-06-02 13:58:40 +02:00
Gina Häußge
5904d01bff Unbundled translations, added new tools to bundle and pack translations
The only translation that is going to be bundled with OctoPrint for now will be .de, if at all. The reason simply being that this is the only translation I can update myself and hence guarantee a good user experience for.

setup.py now offers two new commands, babel_bundle and babel_pack, with which translations for plugins and core OctoPrint can be automatically bundled or packed as language packs once compiled. This should make sharing translations quite easy in the future.
2015-06-02 13:38:08 +02:00
Gina Häußge
e8c37287fe Forgot a dependency for the bundled plugin manager
Thanks to @Salandora for the heads-up
2015-05-31 11:10:40 +02:00
Gina Häußge
caef322b65 The Plugin Manager is now bundled with OctoPrint 2015-05-29 16:31:43 +02:00