Commit graph

125 commits

Author SHA1 Message Date
Wojtek Mach 4ec919f60b
App bundling improvements (#1279) 2022-07-18 11:51:17 +02:00
Jonatan Kłosko 5a3f5ff4b6
Release 0.6.3 (#1272) 2022-07-13 13:02:43 +02:00
Wojtek Mach 789a44a7da
Convert Mac launcher to a Cocoa app (#1263)
1. Add `:event_handler` app option. It is a process that will receive
   the app events, the `:open_app`, `{:open_url, url}`, and
   `{:open_file, path}` messages.

2. Add `AppBuilder.init/0`. This reads the `APP_BUILDER_INPUT` env
   variable which contains the app event the release was started with.

3. Use <https://github.com/wojtekmach/otp/tree/wm-WX_MACOS_NON_GUI_APP>
   branch which contains wx fix that hasn't been merged yet.
2022-07-06 19:27:06 +02:00
Jonatan Kłosko 1144d581fc
Release 0.6.2 (#1258) 2022-06-30 21:01:23 +02:00
Wojtek Mach 55be1ff7cd Add missing app_type: :agent 2022-06-03 13:56:16 +02:00
Wojtek Mach c9f022d637
Allow overwriting any bundler option per OS (#1213) 2022-06-02 21:33:23 +02:00
Wojtek Mach fc7328703a
App bundling improvements (#1211)
1. Replace `mix release mac_app|mac_app_dmg|windows_installer` with a single `mix release app`
2. Extract templates (Launcher.swift, Launcher.vbs, etc) into separate
   files in app_builder/lib/templates
3. Don't verify vc_redist.x64.exe checksum as the Microsoft publishes
   new releases on the same URL
2022-06-01 22:29:54 +02:00
Wojtek Mach fc82b55dab
Desktop icon improvements (#1201) 2022-05-27 14:45:20 +02:00
Wojtek Mach 5af5c75108
Run Mac app in the background (#1199) 2022-05-20 14:27:04 +02:00
Wojtek Mach f5afac9497 Remove otp version check when building desktop app
Since we're building our own OTP for Mac, the idea was not to
accidentally building agains something we happen to be testing at the
moment, like the latest RC. This check turned out to be a little bit
too annoying in practice though. We plan to automate builds on CI
in the near future so we wouldn't need it the anyway.

Closes #1177
2022-05-06 23:53:10 +02:00
Jonatan Kłosko c1a4c8c045
Release 0.6.1 (#1175) 2022-05-06 17:22:35 +02:00
Jonatan Kłosko 40c945502f
Include iframe in the hex archive (#1174) 2022-05-06 10:28:01 +02:00
Jonatan Kłosko 3ad817ac69
Release 0.6.0 (#1165) 2022-05-03 16:24:49 +02:00
Wojtek Mach e5092e4c99
Add taskbar icon to desktop app (#1119) 2022-04-21 09:51:48 +02:00
Wojtek Mach 29f0f54bbd
Desktop app packaging for Windows (#1032) 2022-03-02 12:06:30 +01:00
Wojtek Mach 2c34f62c11
standalone.exs: Ensure OTP version (#987) 2022-02-07 12:33:28 +01:00
Jonatan Kłosko b728d9deba
Release 0.5.2 (#946) 2022-01-27 16:35:17 +01:00
José Valim c0601798f3
Improvements to release (#944)
* Run in interactive mode: it uses less memory and improves
    boot time, which is the most desired properties for a dev tool

  * Do not use releases/cookie, instead generate one on boot
2022-01-27 14:52:59 +01:00
Roberto Estrada 5110f85e73
macOS App includes elixir, erlang for standalone mode (#929) 2022-01-24 23:41:49 +01:00
Mario Uher 4bc264e154
Make icon on macOS look more native (#924) 2022-01-23 13:03:24 +01:00
José Valim 716af1bae2 Add a default release 2022-01-20 15:36:27 +01:00
Jonatan Kłosko 2ee3efcbd4
Release 0.5.1 (#904) 2022-01-20 11:44:58 +01:00
Kevin cd757f8811
Add version to Mac app (#899) 2022-01-20 09:01:08 +01:00
Wojtek Mach 048446a16b Remove duplicate entry for app_builder 2022-01-20 08:49:19 +01:00
José Valim 112b47908d
Small fixes (#896)
* Hide app builder unless target matches
* Fix compile-time warnings on Elixir v1.14+
2022-01-19 22:20:05 +01:00
Jonatan Kłosko c380e1663f Make local app_builder a :dev dependency 2022-01-19 20:03:06 +01:00
Jonatan Kłosko 81c9871802
Release 0.5.0 (#895)
* Update Kino version

* Bump version
2022-01-19 19:58:54 +01:00
Wojtek Mach e8c80bf6a7
Add Mac app release (#865) 2022-01-17 17:34:38 +01:00
Alex Kwiatkowski 2688a685b9
Support telemetry poller 1.0 (#799) 2021-12-12 09:40:38 +01:00
Jonatan Kłosko e0c68f30f3
Release 0.4.1 (#783) 2021-12-09 22:36:22 +01:00
Jonatan Kłosko f44e34d3d7
Release 0.4.0 (#745) 2021-12-05 19:12:11 +01:00
Jonatan Kłosko 47d29cb389
Require Elixir 1.13 (#737)
* Bump required Elixir version to 1.13 and fix TODOs

* Fix tests

* Remove the deprecated URI.parse/1

* Bump Docker base image

* Bump Elixir on CI
2021-12-03 21:47:20 +01:00
Jonatan Kłosko b116e2b1e6 Release 0.3.2 2021-11-10 22:17:21 +01:00
Jonatan Kłosko fbd03d6725
Update Phoenix LV (#656)
* Wrap live routes in live_session

* Update Phoenix LV

* Migrate to live_component component call

* render_block -> render_slot

* phx-disconnected -> phx-loading

* phx-capture-click -> phx-click-away

* Add hook dealing with current user

* Bump LV

* Bump LV
2021-11-01 19:33:43 +01:00
Jonatan Kłosko c751fabf80
Release 0.3.1 (#652) 2021-10-27 17:07:18 +02:00
Jonatan Kłosko 652efd6bad Release 0.3.0 2021-10-19 14:41:58 +02:00
Jonatan Kłosko c354c46d89
Update dependencies (#606)
* Update dependencies

* Update dependencies major

* Update mix deps
2021-10-19 00:37:48 +02:00
Jonatan Kłosko a41dda9c7c
Keep static files outside priv (#602)
* Keep static files outside priv

* Override generated assets on the CI
2021-10-18 22:32:09 +02:00
José Valim 354aae9467
Encapsulate compile and runtime configuration (#577) 2021-10-05 00:49:01 +02:00
José Valim 6712fe0689 Update :phoenix to get rid of compiler config 2021-09-18 10:03:03 +02:00
Jonatan Kłosko 7d59acf518 Update README and version in mix.exs 2021-08-25 15:06:55 +02:00
José Valim c595ea968b
Use locked versions (#516)
* Use locked versions

* Update mix.exs

* Update mix.exs
2021-08-25 11:52:41 +02:00
Jonatan Kłosko 9822735bcf Update GitHub org references from elixir-nx to livebook-dev 2021-08-18 15:55:07 +02:00
Jonatan Kłosko 8802fd50f3
Sign S3 requests using aws_signature (#497)
* Sign S3 requests using aws_signature

* escape_key -> encode_key

* Update lib/livebook/file_system/s3.ex

Co-authored-by: José Valim <jose.valim@dashbit.co>

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-08-17 21:43:58 +02:00
Jonatan Kłosko 8e6558a83a
Introduce file system abstraction and an S3 implementation (#492)
* Introduce file system abstraction and an S3 implementation

* Support arbitrary absolute paths and delegate resolution to file system

* Remove accidental notebook file

* Apply suggestions from code review

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Apply review comments

* Add missing path assertions

* Apply review comments

* Fix test saving notebook in project root

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-08-13 21:17:43 +02:00
Jonatan Kłosko ec2d24c5b3
Release 0.2.3 (#491)
* Update earmark_parser

* Release 0.2.3
2021-08-12 14:40:07 +02:00
Jonatan Kłosko e965ad1392
Clarify note on deps (#490) 2021-08-11 12:07:03 +02:00
Jonatan Kłosko 5ed6dd0807
Update deps (#489) 2021-08-11 00:56:52 +02:00
Jonatan Kłosko f22bf2a21d
Keep inline Markdown unchanged when importing/exporting (#487)
* Merge: [WIP] Make Markdown formatter math-safe #447

* Keep inline Markdown unchanged when importing/exporting
2021-08-02 18:39:50 +02:00
Jonatan Kłosko 7578e81adb Depend on Phoenix 1.5.9 rather than master 2021-07-28 16:11:33 +02:00
Jonatan Kłosko c1654345b7
Migrate to latest LV (#437)
* Update phoenix deps

* Update reference to LiveDashboard encode_pid

* Fix form input id references

* Move to HEEx

* Update back to filesystem LV npm package

* Further HEEx rewrites

* Refactor icons into function components

* .html.leex -> .html.heex

* Further refactoring

* Move render helpers into function components

* Add doctype back

* Further refactoring

* Refactor cell component

* Further refactoring

* Compose sidebar using function components

* Rewrite notebook card component as function component

* Fruther refactoring

* Fix race condition in runtime tests

* Rewrite tooltips into function component

* Update Tailwind purge rules

* Revert "Rewrite tooltips into function component"

This reverts commit bd6ca8f0b5.

* Refactor conditional tooltip
2021-07-07 14:32:49 +02:00
Jonatan Kłosko 48b4938408 Release 0.2.2 2021-07-01 16:46:09 +02:00
Jonatan Kłosko 04e702d77c Release 0.2.1 2021-06-24 13:03:48 +02:00
Jonatan Kłosko 2de997cef5 Release 0.2.0 2021-06-17 19:54:27 +02:00
Jonatan Kłosko c07da9880c
Update LV version and remove deprecations (#312)
* Bump LiveView

* Remove deprecated socket argument to live_component

* Point to an exact LV version
2021-06-03 13:53:03 +02:00
Jonatan Kłosko 4f5b19dfc7 Release 0.1.2 2021-06-01 18:01:15 +02:00
Jonatan Kłosko 122c6f27d7
Release 0.1.1 (#292) 2021-05-24 19:32:13 +02:00
Jonatan Kłosko 406c17dc43 Build assets to tmp/static_dev in development 2021-05-19 23:50:18 +02:00
Jonatan Kłosko 7e4eccbf6d Update package files whitelist 2021-05-19 23:44:57 +02:00
Jonatan Kłosko 1e4200e338
Initial release (#279)
* Ensure config is loaded before compiling Escript dependencies

* Update README

* Add CHANGELOG

* Update mix.exs

* Increase timeout for mix standalone test

* Add package info to mix.exs

* Update README.md

Co-authored-by: José Valim <jose.valim@dashbit.co>

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-05-19 23:30:53 +02:00
Jonatan Kłosko 889503ad68
Require Elixir v1.12 (#278)
* Require Elixir v1.12

* Update introductory notebook

* Update base Docker images

* Add completion of reserved module attributes

* Move complete_module_attribute/1
2021-05-19 16:46:33 +02:00
Jonatan Kłosko ac8e1e30f4
Setup Docker image with releases (#244)
* Setup Docker image with releases

* Support ip env variable and use it for Docker deployment

* Autofocus auth forms

* Rename ip env var

* Update option lists

* Make distribution cookie configurable

* Update README.md

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Include git in the final image

* Remove unnecessary build dependency

* Improve file permissions handling and add more comments

* Use namespaced home directory

* Update README with all running options

* Update base image

* Reference official Docker image in the README

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-04-27 16:34:02 +02:00
Jonatan Kłosko aaba58a933
Set up importing notebook from URL or clipboard (#237)
* Set up importing notebook from URL or clipboard

* Extract loading functions into separate module

* Replace import icon with text

* Add TLS peer verification

* Remove unnecessary tests setup step
2021-04-23 17:40:13 +02:00
Jonatan Kłosko 9a1fe55759 Update Phoenix LV 2021-04-21 12:43:43 +02:00
José Valim 57047f9c7f
Unify env variables and change auth to use session (#195) 2021-04-15 15:50:29 +02:00
Jakub Perżyło a3c55a801d
Add live dashboard (#183) 2021-04-14 20:10:25 +02:00
José Valim 051156588d
Mark dev only tasks (#146) 2021-04-05 16:59:26 +02:00
Jonatan Kłosko 5c5b4ece26
Add "Hello Livebook" notebook (#123)
* Limit module result to a single line

* Add introductory notebook to get started with

* Don't show tooltip on focused elements

* Update lib/livebook/notebook/hello_livebook.ex

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Update lib/livebook/notebook/hello_livebook.ex

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Update lib/livebook/notebook/hello_livebook.ex

Co-authored-by: José Valim <jose.valim@dashbit.co>

* Update notebook settings reference

* Add note on package authors

* Add tests

* Update Phoenix version to git master

Co-authored-by: José Valim <jose.valim@dashbit.co>
2021-03-30 21:42:02 +02:00
Jonatan Kłosko fe5dfe3b86
Insert section (#114)
* Add section insertion button

* Add shortcut for inserting section

* Pass buttons to the component

* Add mix alias for running both formatter

* Adjustments

* Make the buttons group component stateless
2021-03-24 18:37:50 +01:00
Jonatan Kłosko 8b37e32e3a
Escript (#77)
* Set up Escript packaging

* Use MD5 digest sa ETAG

* Make sure changes to the static files recompile the relevant module

* Manually start the application in Escript

* Set up basic CLI

* Run formatter

* Start Elixir app before anything else

* Improve version output

* Build Escript to project root directory

* Improve assets handling

* Move plug related modules under plugs directory

* Include bundled assets in the repository

* Use the same plug with different static providers in prod and dev

* Refactor providers

* Rename StaticProvidedPlug to StaticPlug
2021-03-17 01:53:44 +01:00
Jonatan Kłosko dae6d5c9c3
Rename project (#68)
* Rename references

* Update file and directory names

* Fix homepage tests
2021-03-03 22:56:28 +01:00
Jonatan Kłosko 6ac7f94897
Define notebook file format (#27)
* Initial file import/export

* Add renderer tests

* Refactor renderer

* Depend only on EarmarkParser

* Add test for export

* Add import tests

* Improve import

* Document the ExMd file format

* Rename ExMd to ExMarkdown

* Rename ExMarkdown to LiveMarkdown

* Build iodata when exporting a notebook

* Persist metadata as a single JSON object

* Move Markdown to LiveMarkdown.MarkdownHelpers

* Make LiveMarkdown private

* Always move primary heading to the top during import

* Hint the user not to use heading 1 and 2

* Return a list of messages from the import function

* Update headings warning

* Add import and export test for non-elixir snippets

* Merge markdown renderer into MarkdownHelpers

* Add import messages on AST rewrites
2021-02-16 18:39:52 +01:00
José Valim 309c9c8a51
Update to Elixir v1.11 and remove unused files (#32) 2021-02-16 12:29:41 +01:00
José Valim 2dd88ec017 Add LiveView 2021-01-07 21:16:54 +01:00
José Valim 79792777a7 Initial commit 2021-01-07 20:56:24 +01:00