Skip to content

Latest commit

 

History

History
422 lines (332 loc) · 16 KB

CHANGELOG.md

File metadata and controls

422 lines (332 loc) · 16 KB

Planned/TODO

  • Connect to Figwheel
  • Connect to ClojureScript using an arbitrary command
  • Before/After refresh
  • Higlight current form
  • Auto-import
  • Clean unused imports

Next

0.12.0

  • Migrated most of Pathom code to a new project called Duck-REPLed
  • Disabled clj-kondo statistics for now
  • Fixed stacktraces in Clojerl
  • Fixed Lumo REPL
  • Source for var now works for ClojureScript with Shadow-CLJS

0.11.2

  • Making connect_socket callable from init.js/init.coffee

0.11.1

  • Fixed goto var definition with CLJ-Kondo

0.11.0

  • Pathom resolvers are now customizable
  • Go to var definition now works with namespaces
  • Several fixes for clickable stacktraces in Clojure

0.10.8

  • Auto-detect port fix

0.10.6

  • Fixed nREPL connection

0.10.5

  • nREPL port will only be detected if a config is enabled
  • Adding a "timeout" when you can't connect to CLJS, with an error with possible reasons
  • Fixed connecting to ClojureScript without experimental features on
  • Removed error on ClojureScript, with experimental features, for Browser targets

0.10.4

  • Removed error on ClojureScript, with experimental features, for Browser targets

0.10.3

  • Fixed issue detecting port from .shadow-cljs/socket-repl.port file on Windows
  • Added support for detecting port from .nrepl-port and .socket-repl-port files
  • Trying to fix issue #234

0.10.2

  • Fixed issues with prn inside interactive renderer
  • Fixed issues with disconnect (sometimes it tries to run callbacks after disconnected)
  • Caching clj-kondo
  • Fixed an error parsing shadow-cljs.edn files (#226)

0.10.1

  • Fixed nREPL code disconnecting when you send accents
  • Fixed some undetectable var definitions on ClojureScript

0.10.0

  • Goto var definition and doc for var now work with ClojureScript's macros
  • Added clj-kondo statical analysis if it's on the path for goto-var and doc
  • Added a new feature - eql - to check for info data in extension points with EQL
  • Removed "activation commands" because for now, Chlorine will always be active even without a REPL connection

0.9.4

  • Fixed defining functions with same name as clojure.core (fixes #214).
  • Fixed clojure REPL not connecting on first try
  • Interactive eval redirects STDOUT

0.9.3

  • Adding custom tag :div/clj to render Clojure forms

0.9.2

  • Adding commands render/add-class and render/set-attr
  • Adding custom tag :div/ansi to render ANSI char codes

0.9.0

  • Clickable stacktraces for Clojerl
  • Better printer for Clojerl and nREPL
  • Cutting some stdout messages from aux REPL
  • Better support for Lumo, CLR, and Joker

0.8.3

  • Fix error while trying to print lots of really small lines

0.8.2

  • Support for resolving promises on Shadow Relay API
  • tap> support for Shadow-CLJS Relay API

0.8.1

  • Possibility of running Shadow-CLJS Remote API commands (see: mauricioszabo/repl-tooling#83)
  • Small fix on inline results, with Experimental Features, when saving a file with errors on Shadow-CLJS

0.8.0

  • Fix on regexp printing
  • Using another way to connect to Shadow-CLJS

Experimental features on this version

  • Implemented the new Websocket REPL of Shadow-CLJS (Remote API)
  • For now, removed inspection of JS and resolving promises

0.7.5

  • Fixes on nREPL imports for Orchard, Compliment, etc (#191)

0.7.4

  • Fixed refresh code not working

0.7.3

  • Forward-finding namespaces if a NS form was not found before the cursor (fixes #193)
  • Waiting for REPL results before forwarding new commands to the REPL (probably fixes #192)
  • Autocomplete shows docstrings and arities when completing functions

0.7.2

  • Fixed that tried to run refresh on EDN files
  • Fix on get-selection for configs in ClojureScript
  • Remove Ink
  • Performance fixes on inline results, removed LOTS of memory leaks
  • editor/eval-and-render now resolves as promises

0.7.0

  • Performance improvement while parsing Clojure code
  • Runnable config
  • Fixed error trying to connect to ClojureScript socket REPLs

0.6.2

  • Fixed core Clojerl exception
  • Fixed saving file when Clojure is disconnected and auto-refresh is turned on (Fixes #179)
  • More commands comming from Orchard:
    • find-usages
    • clojure-doc-for-var

0.6.1

  • Fixed connection for other Clojure implementations like Clojerl, Joker, etc.

0.6.0

  • Interactive results (see documentation)
  • First support for info command, if "Orchard" is on classpath
  • Code refactoring, fixed issues

0.5.4

  • Loading tests on full refresh
  • Fixed parsing of namespaces with metadata, and quotes (the kind you get when using clj-kondo)

0.5.3

  • Fixed paths on darwin systems

0.5.2

  • Faster nREPL messages parsing
  • Load-file now prints the stacktrace when it fails to load
  • Fixed paths on Windows, so goto var definition and clicking on stacktraces will work

0.5.1

  • Simple fix for nREPL on slower sockets
  • (Possible) load-file fix

0.5.0

  • Alpha support for nREPL

0.4.16

  • Fixed connection with Babashka

0.4.15

  • Fixed issue with GOTO Var Definition when the current file's full path is too long.

0.4.14

  • First try to fix opening an empty editor on MacOSX

0.4.13

  • When refresh fails, show the stacktrace on the console
  • Clickable stacktraces for Clojure and Shadow-CLJS
  • Stacktraces on ClojureScript will use source-maps to parse their errors
  • Experimental features fix: don't generate two inline results for the same line

0.4.12

  • Redirecting *test-out* to the right output

0.4.11

  • Fixes "Attempting to call unbound fn: #'unrepl.core/write" (#158)

0.4.10

0.4.9

  • Fix for CSS of Ink inline results, and some edge-cases that could throw exceptions

0.4.7

  • Autocomplete for Babashka

Experimental features

  • Dropping Ink dependency

0.4.6

  • Changed the detection of blocks (will consider the parens the cursor is in as the "block")
  • Fixed #150

0.4.5

  • Some fixes on the experimental features' renderer
  • Fixed a bug that happens when something is evaluating, then you disconnect the REPL

Experimental features

  • Added support for resolving promises

0.4.4

  • Some fixes on evaluate-block

Experimental features on this version

  • Changed the way to evaluate Shadow-CLJS commands
  • Added some inspection to Javascript objects
  • Fixed some issues on deeply nested invalid EDN objects on ClojureScript

0.4.3

  • Supporting Suitable for CLJS autocomplete
  • When evaluating top-level, considers the parens before the cursor if the selection is on the end of the line
  • Fixes for strange issues happening on evaluation of Clojure forms (sometimes, things were evaluating out-of-order or returning nil incorrectly)
  • Migrated autocomplete tools to use promises, to avoid crashing the Atom editor in case of failures while autocompleting
  • Fixed a bug on Autocomplete (when disconnecting the REPL and adding/removing Compliment, the autocomplete would still try to use/not use Compliment after connecting to REPL)

0.4.2

0.4.1

  • Fixed test results and output not appearing on console

0.4.0

  • Fixed test output not rendering on console
  • Promoted all "experimental features" as they passed the battle test
  • All "evaluate" commands are implemented without using Atom's APIs. They also are aware of reader symbols, so now evaluate-block over '(+ 1 2 3) will return a list, not run the function.
  • Added "interactive" evaluation
  • Goto var definition now works on ClojureScript

0.3.9

  • Fixed autocomplete error on dynamic vars (#132)
  • Support for Clojerl
  • Treating special windows chars on REPL output

0.3.8

  • Fixed error when trying to execute a ClojureScript code when REPL is not clj-connected
  • Fixed warnings when connecting to ClojureScript without reagent

0.3.7

  • Fixed "get current var" when cursor is at the end of the variable
  • Fixed warning messages connection to Shadow-CLJS when reagent is not present (#127)

0.3.6

  • Added specs on doc-for-var (#100)
  • Fixed an issue with goto var definition where sometimes it wasn't able to find the var

0.3.5

  • Fixed issues with "Copy to Clipboard"
  • Removed old connection methods like "Connect Clojure Socket REPL" and "Connect ClojureScript REPL"
  • Removed deprecated extension points

0.3.4

  • Fixed connection on Arcadia
  • Some REPLs don't send a "disconnect" event when closing the socket, so we "simulate" a disconnect
  • Fixed "Disconnected from REPLs" appearing twice
  • Copy results to clipboard

0.3.3

  • Fixed evaluation on CLR where it fails with "Unable to resolve symbol: str in this context"
  • Load-file working on multiple REPLs
  • Fixed UUIDs

0.3.2

  • Fixed an edge-case with "Evaluate Selection" (sometimes when selecting the last line and sending to evaluate, it could crash).
  • Fixed "load-file" on "Connect Clojure Socket REPL"
  • Disabled "Connect ClojureScript Socket REPL"

0.3.1

  • Fixed connection on Clojure over the "Connect Socket REPL" command

0.3.0

  • Fixed sending incomplete forms freezing Clojure REPL
  • When trying to connect to a wrong host/port, displays an error
  • Disable commands that other REPLs don't support
  • Fixed edge case of internal implementation "leaking" over the Chlorine console and appearing on the output of evaluations

Experimental support for new REPLs

  • Support for Babashka >= 0.0.24
  • Support for ClojureCLR
  • Support for Joker
  • Support for more ClojureScript REPLs that open a socket REPL

0.2.2

  • Fixes problems when evaluating code that can't be compiled (#109)
  • Fixes autocomplete crashing the editor

0.2.1

  • Removed printing of name.space=> on console for CLJS
  • Fixes styling issues on console tab
  • Fixed double-exception rendering on console tab

0.2.0

  • Connection to ClojureScript with Shadow-CLJS allows us to select the build ID
  • New autocomplete for Clojure without Compliment
  • New autocomplete for ClojureScript with Compliment
  • Detection of which autocomplete to use based detecting namespaces on the classpath
  • Fix console CSS when using IDEs packages
  • Better extension points for Atom

0.1.14

  • Re-adding a rich console for evaluation and STDOUT/STDERR
  • Exceptions are now rendered on the console

0.1.12

  • Fixed InkConsole not opening (#93)
  • Better evaluate-block and evaluate-top-block without using Atom API (still behind the experimental features)

Experimental features on this version

  • Commands "evaluate-selection", "evaluate-top-block" and "evaluate-block" without using Atom's APIs. They also are aware of reader symbols, so now evaluate-block over '(+ 1 2 3) will return a list, not run the function.

0.1.11

  • Fixed some error with autocomplete in CLJS (#85)
  • Added experimental features with a config to control
  • Disabled editing on Console tab (#79)
  • Changed defaults for auto-reload projects
  • Rendering correctly the ratio (like 1/2)
  • Fixed load-file on non-saved or non-editor tabs (#75)

Experimental features on this version

  • To be able to support multiple NS on the same files and also to remove internal Atom's API on detecting the current start/end forms, there's a new way to detect start/end of forms. This affects the commands "evaluate-selection" and "evaluate-top-block" (but not "evaluate-block" because of other issues). These two new ways of evaluating are not stable yet and they'll fail with ::server/port kind of symbols, for example.

0.1.10

  • Fixed autocomplete on Clojure

0.1.9

  • Fix goto var definition failing when the var was defined evaluating blocks, or with load-file

0.1.8

  • Fix GOTO definition
  • Takes up less space on status bar

0.1.7

  • Fixes Chlorine not activating on MacOSX (#67)

0.1.5

  • Fixes compilation problems

0.1.4 (unpublished)

  • Autocomplete now honors config Minimum Word Length from Atom's config

0.1.3

0.1.2

  • Auto-adding port number if the project file is a shadow-cljs build project
  • Config to open console on bottom
  • Fixed console errors (#33) and (#32)

0.1.1

  • Fix #js tagged literal
  • Shadow-CLJS can now evaluate multiple forms
  • Fix stacktraces on ClojureScript
  • Removed "shadow" on exception on CLJS (conflicts with light theme)
  • Fixed link spacing on renderer

0.1.0

  • New renderer for results
  • Fixed "leaking internal implementation" on some exceptions
  • New renderer for errors
  • Fixed error when trying to expand tagged literals
  • De-emphasis on Java's stacktrace lines
  • Fixes stacktrace not appearing on big exceptions (#50)
  • Fixes REBL integration (#51)
  • Focus on fields when connecting to Socket REPL (#47)
  • Install dependencies (#45)

0.0.10

  • Update of UNREPL broke objects that implements nav (all objects, really). Temporary fix so things keep working until it's solved for once.

0.0.9

  • Evaluate of 10M and 10N is rendered correctly
  • Rendering Java Objects that implement print-method
  • Better rendering of Java objects that have no print-method implemented
  • Better rendering of Java classes / methods
  • Using a custom UNREPL blob

0.0.8

  • GOTO definition for Clojure (inside JARs)
  • Add support for REBL
  • Fixes mauricioszabo/repl-tooling#14 (unreadable keywords and symbols)
  • Fixes some edge-cases with clojure/tools.namespace refresh
  • Allows to load file with windows on WSL

0.0.7

0.0.6

0.0.5

  • Goto definition for Clojure files outside JAR
  • Fix wrong file and line number when evaluating
  • Add commands chlorine:load-file to load full file in REPL, chlorine:source-for-var to show source (by @seancorfield)
  • Add commands to run tests (by @seancorfield)
  • Fixed auto-complete on Clojure when NS form is undetermined (by @seancorfield)

0.0.4

  • Fixes #9 (Error while evaluating block, top-level block, and we're not on a form)
  • Configuration for refresh-mode, save on refresh
  • Better refreshable architecture
  • More info on statusbar (about refresh)
  • Connect embedded ClojureScript now tries to find a build from shadow-cljs.edn, if present

0.0.3 - Clojure's Autocomplete FIX

  • Fixed autocomplete on Clojure (incorrect predictions, more... string, require, and other issues)

0.0.2 - Better CLJS support (ALPHA!)

  • Support for self-hosted REPLs like Lumo
  • Support for exceptons in CLJS

0.0.1 - First Release (ALPHA!)

  • Connection to Clojure REPL with UnREPL
  • Connection to Shadow CLJS from UnREPL
  • Doc for var
  • Evaluate (selection, block, top block)
  • Reload (full) from Clojure