Commit Graph

221 Commits

Author SHA1 Message Date
Vidar Tonaas Fauske
7bf9b5ec68
Document contents chunks (#5508)
* Document contents chunks

Add a documentation entry for the contents API regarding use of "chunk" in save.

Adds an `extra_requires` value in setup.py for installing documentation dependencies.
2020-06-05 08:24:00 -07:00
Kevin Bates
84b7b854b6
Apply review comments, revert interval validation, bump terminado to 0.8.3 2020-05-18 11:46:23 -07:00
Kris Wilson
a9ed339d58 Add UNIX socket support to notebook server. 2020-04-28 00:54:50 -07:00
Kevin Bates
499740b4bb Bump minimum version of jupyter_core (#5170)
Since there's a 6.0.3 release brewin', I thought we should bump
the minimum version of jupyter_core from 4.6.0 to 4.6.1.  The
latter has an edge case to the slew of secure_write issues that
would be very annoying if NB 6.0.3 didn't upgrade to that version.
The edge case is to tolerate the owner-execute bit on the connection
file, which occurs when RUNTIME_DIR resides on certain filesystem
types (e.g., CIFS).
2020-01-21 09:50:30 -08:00
Thomas Kluyver
e53383ceb2 Allow testing with nbconvert 6 again (unpin)
Closes gh-5086
Closes gh-5092
2019-12-09 16:48:36 +00:00
Thomas Kluyver
f377abfa04 Pin nbconvert <6 for now 2019-11-27 11:38:22 +00:00
Luciano Resende
13039db1a6 Move license information from COPYING.md
Closes #4765
Fixes 2768
2019-11-04 15:09:34 -08:00
Kevin Bates
55e93b9ffe Update core and client dependencies (#4959) 2019-10-21 08:35:57 -07:00
Jason Grout
9b597a9091 Notebook 6 supports only Python 3.5 or later, not Python 3.4. (#4875) 2019-09-11 09:41:07 -07:00
Sylvain Corlay
3ae4fae322 Update jupyter_client 2019-07-10 09:31:08 +02:00
Johan Mabille
93304180d7 Bumped the required version of jupyter_client 2019-07-08 11:15:39 +02:00
Min RK
3d94b517e8 require Python 3.5
3.4 doesn't have isawaitable

remove unsupported combinations from test matrix
2019-03-06 13:09:21 +01:00
Min RK
729183b148 use our own maybe_future
instead of the monkeypatch we did to keep the backport patch small

requiring tornado 5 simplifies things a ton because tornado.concurrent.Future is asyncio.Future
2019-03-06 10:52:55 +01:00
Min RK
57122409b2 unpin tornado
to get testing 6.0 again
2019-03-05 12:18:45 +01:00
Thomas Kluyver
9035cb1bdd Limit to tornado <6 for now
Tornado 6.0a1 is causing test failures in CI
2019-01-02 12:33:50 +00:00
Min RK
5711075f0b
Merge pull request #3789 from munkm/pytest
modify contributing instructions to use pytest for testing
2018-09-26 15:26:57 +02:00
Steven Silvester
26ec5952a7
Merge pull request #3926 from Carreau/drop-27
Drop 2.7
2018-09-25 06:54:11 -05:00
Matthias Bussonnier
37f9a41948 Drop 2.7 2018-09-16 23:04:10 +02:00
Matthias Bussonnier
d239839e07 Build js translation at build time.
Make sure they are included in sdist/wheel.
2018-09-16 11:55:22 +02:00
Madicken Munk
f9d578ee40 add pytest to test env requirements and suggest it in contributing docs 2018-07-20 16:52:21 -05:00
Madicken Munk
f2499f3713 adding selenium to test requirements 2018-07-14 11:09:39 -05:00
Thomas Kluyver
7f1bba613d Check 'Host' header for local connections 2018-06-25 10:26:10 +02:00
Min RK
19188568c9
Merge pull request #3490 from yuvipanda/prometheus-intro
Add a /metrics endpoint for Prometheus Metrics
2018-06-13 15:34:18 +02:00
Thomas Kluyver
7bfa3d03bd "Require" pyzmq>=17
Not really a requirement, but explaining about the pyzmq/tornado incompatibility
gets old fast.

Closes gh-3579
2018-04-30 17:03:21 +02:00
yuvipanda
a764f90b14 Add a /metrics endpoint for Prometheus Metrics
[Prometheus](https://prometheus.io/) provides a standard
metrics format that can be collected and used in many contexts.

- From the browser
  to drive 'current resource usage' displays, such
  as https://github.com/yuvipanda/nbresuse
- From a prometheus server
  to collect historical data for operational analysis and
  performance monitoring
  Example: https://grafana.mybinder.org/dashboard/db/1-overview?refresh=1m&orgId=1
  for mybinder.org metrics from JupyterHub and BinderHub,
  via prometheus server at https://prometheus.mybinder.org

The JupyterHub and BinderHub projects already expose Prometheus
metrics natively. Adding this to the Jupyter notebook server
allows us to instrument the code easily and in
a standard format that has lots of 3rd party tooling for it.

This commit does the following:

- Introduce the `prometheus_client` library as a dependency.
  This library has no dependencies of its own and is pure python.
- Add an authenticated `/metrics` endpoint to the server,
  which returns metrics in Prometheus Text Format
- Expose the default process metrics from `prometheus_client`,
  which include memory usage and CPU usage info (for just the
  notebook process)
2018-04-02 11:40:25 -07:00
Thomas Kluyver
aa9c977880 Testing with Selenium & Sauce labs (#3321)
* Initial selenium test

* Try configuring Travis to run selenium tests on Sauce

* Encryption key needs to be for my account, not jupyter

* Install selenium on Travis

* Get more data from server info file

* Set cwd when launching notebook server

Will this help on Travis?

* Use JUPYTER_TEST_BROWSER=chrome to test with Chrome

* Debugging test

* Separate fixtures into conftest.py

* Try with --Cls.a=b option syntax

* Try using sauce labs directly, not through Travis proxy

* Back to using proxy, with http instead of https

Idea from https://stackoverflow.com/questions/48236104/ssl-errors-using-
sauce-labs-in-travis-ci-with-selenium-webriver-tests-django-pr

* Specify browserName in desired_capabilities for Sauce

* Try connecting to Sauce for only some jobs in matrix

* Exclude selenium tests from regular test run

* Remove redundant JS test for dashboard navigation (converted to Selenium)

* Re-enable other tests

* Exclude selenium tests on Appveyor

* Later browser versions are available on Windows

* Try running tests with Firefox 57 instead of 58

* Try running with local Firefox on Travis

* Install geckodriver for Selenium tests

* Untar the right version of geckodriver

* Try stepping back one version of Firefox again
2018-02-13 09:01:00 -08:00
Thomas Kluyver
6f6dc28e0e Always use setuptools in setup.py
This copies what we've already done for some other packages: always use setuptools
but disable its implicit egg building which causes so many headaches. The setup code
can be significantly simpler if it's not trying to handle the case where setuptools
isn't in use.
2018-01-12 16:12:49 +00:00
Thomas Kluyver
3f035c5ba9 Bump jupyter_client dependency to 5.2 2017-12-19 14:03:50 +00:00
Thomas Kluyver
3eb6d72bb5 Find available kernelspecs more efficiently
Closes gh-3135
2017-12-15 11:30:50 +00:00
Steven Silvester
7b8759fafb Add support for terminals on Windows (#3087)
* Add support for terminals on Windows

* Bump terminado requirement

* Fix handling of default shell

* Fix appveyor syntax

* Fix requires syntax

* Fix version target

* Clean up handling of default shell and update version check

* Always require terminado

* Clean up appveyor test

* Make the terminado warning uniform

* Default to powershell on Windows

* Clean up terminado verison
2017-11-30 21:33:50 -08:00
Thomas Kluyver
059c2b77fc Switch to jupyter_core implementation of ensure_dir_exists
Closes gh-2858

Requires jupyter_core 4.4.0, which I just released.
2017-10-31 16:38:40 +00:00
Min RK
aa461d9e06 Merge pull request #1968 from takluyver/delete-to-trash
Send files to OS trash mechanism on delete
2017-10-20 11:41:25 +02:00
Vidar Tonaas Fauske
522fcf403c Add nbval to docs tests 2017-09-01 13:03:54 +02:00
Thomas Kluyver
1849b80287 Merge branch 'master' into delete-to-trash 2017-07-31 16:03:39 +01:00
Min RK
8a644a9794 restore r.js-based build system from 4.x 2016-12-22 18:44:46 +01:00
Thomas Kluyver
ad3ab9b8c7 Send files to OS trash mechanism on delete
This adds a config option, defaulting to use trash, and adds a
dependency on the pure-Python 'send2trash' package. Linux, Mac and
Windows should all be supported.

Alternatively, we could make it default to hard delete (the current
behaviour), and let users opt in to trash behaviour. Then Send2Trash
could be a soft dependency.

This doesn't touch the UI yet, so you still get a confirmation dialog
which inaccurately says it will 'permanently delete' the file. If we
want to do this, we'll need some way for the contents manager to pass
the UI a hint about whether deleting is permanent or not.

Closes gh-165
2016-12-12 16:10:21 +00:00
Adam Chainz
a947025308 Convert readthedocs links for their .org -> .io migration for hosted projects
As per [their blog post of the 27th April](https://blog.readthedocs.com/securing-subdomains/) ‘Securing subdomains’:

> Starting today, Read the Docs will start hosting projects from subdomains on the domain readthedocs.io, instead of on readthedocs.org. This change addresses some security concerns around site cookies while hosting user generated data on the same domain as our dashboard.

Test Plan: Manually visited all the links I’ve modified.
2016-10-09 21:56:18 +01:00
Min RK
f707b78e54 exclude terminal tests on Windows 2016-09-13 15:04:47 +02:00
Peter Parente
de7753402b Cleanup CLI naming
Based on first review by @minrk

* bundlerextension for consistency
* Move CLI entry point into bundler package
* Add bundler/__main__.py

(c) Copyright IBM Corp. 2016
2016-07-02 14:57:10 -04:00
Peter Parente
8fb670904b First pass migrating from jupyter_cms
* Change handler for consistency with nbconvert
* Change bundler function API to take ContentManager models
* Change CLI to work as jupyter bundler
* Change UI to fit into existing template / JS structure

(c) Copyright IBM Corp. 2016
2016-07-02 14:36:17 -04:00
Sylvain Corlay
a91af4d642 Update traitlets API 2016-06-10 17:27:00 -04:00
Min RK
151bbb9d79 setup doesn't require genutils
the dependency is gone, but it was still declared
2016-06-04 21:46:23 +02:00
Min RK
41d6da235c Merge pull request #879 from ellisonbg/nbext-pain
New nbextensions installation API
2016-03-25 22:02:22 -07:00
Matthias Geier
69b09b5af0 Add instructions for getting the doc-building requirements
... and add docs/requirements.txt
2016-03-24 18:48:23 +01:00
Matthias Geier
ac89707ecc DOC: Trying to make a single place for contributor docs
See #1193.
2016-03-14 20:21:27 +01:00
damianavila
f437042e40 First iteration on serverextension CLI. List working OK. I have the check and revisit the other ones: enable, disable. 2016-02-26 09:32:02 -08:00
Min RK
fdc1bb50da simplify js build steps
- run npm, bower install every time (except from sdist).
  Removes need to check npm, bower sources.
- only check `built/index.js` for build target
  since webpack is only a single step now
2016-02-24 16:00:39 +01:00
Matthias Bussonnier
6ab2cd0dd6 Show warnings during tests 2016-02-22 21:52:14 -08:00
Thomas Kluyver
9bcac1d629 Remove explicit Python 3.3 classifier
If we're going to explicitly list 3.3, we should also be listing 3.4 and
3.5. But really we're compatible with any fairly recent Python 3
version, and will probably be compatible with future versions, so I
think it's best to just use the overall Python 3 classifier.
2015-12-01 15:00:37 +00:00
Min RK
fda86ad301 formatting for long_description 2015-09-22 21:25:47 +02:00