* Increase timeout for connecting via Mix standalone
I have hit this timeout when connecting via mix to a fairly large
application. Increasing this fixes it for my use case.
* Update lib/livebook/runtime/standalone_init.ex
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Serve iframes from another local port when running on http
* Use relative hostname in local iframe URL
* Simplify server start check
* Use random iframe port when Livebook runs on a random port
* Rename space/ to iframe/
* LivebookWeb.IframePlug -> LivebookWeb.IframeEndpoint
* add function to open notebook urls
* Update lib/livebook/utils.ex
Co-authored-by: José Valim <jose.valim@gmail.com>
* Update lib/livebook/utils.ex
Co-authored-by: José Valim <jose.valim@gmail.com>
* open notebook with notebook_open_url/2
* Update server.ex
* format Livebook.Utils
* Update lib/livebook_cli/server.ex
Co-authored-by: José Valim <jose.valim@gmail.com>
* correct function doc
Co-authored-by: José Valim <jose.valim@gmail.com>
* check if section has valid parent + tests
* formatting
* apply review feedback
* fix the forgotten test
* apply feedback
* apply feedback
* produce a warning if the section points to itself + tests
* Apply suggestions from code review
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Accessibility improvements on home page
* Unique ids for file info path buttons
* Improves navigation for screen readers in the session list
* Landmarks navigation for screen readers
* Headings navigation for screen readers
* Group navigation - running sessions list
* Fix typo
* Minor adjustments based on review suggestions
* Support downloading source on a per session basis
* Update session_list_component.ex
* Add test
* Update lib/livebook_web/live/home_live/session_list_component.ex
* Update test/livebook_web/live/home_live_test.exs
Co-authored-by: José Valim <jose.valim@gmail.com>
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Export file with title or file name
* Export with title or file name
* Add Session.file_name_for_download/1
* Compute the name without calling the server
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Configuring word wrapping temporarily on editor-level
* Split into enable and disable word wrapping actions
* Move toggle word wrapping code to __mountEditor
* Skip XML.decode!(body) if body is empty
Google Cloud Storage has almost S3 compatible XML API,
but some responses have `content-type: text/html; charset=UTF-8`
and empty body. This change prevents XML decode error and
enables work fine with Google Cloud Storage.
* Handle Google Cloud Storage XML API response
* Rename S3.encode to S3.decode
* Improve a test case description
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Make S3.decode/1 let any content type pass
* mix format
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
* Adjust stop reasons for server processes
* Update lib/livebook/unique_task.ex
Co-authored-by: José Valim <jose.valim@dashbit.co>
Co-authored-by: José Valim <jose.valim@dashbit.co>
1. Allow multiple sessions to close or disconnect at once,
and then request the system resources to be updated
2. Make sure that closing a session happens synchronously,
otherwise a race condition could still list the closed
session in a dashboard
3. Ensure close and disconnect can happen more than once
(for example if two users click the same button at the
same time)