Skip to content

Releases: abhishekmishra/picoturtle

v0.2.0-alpha.7

12 Jan 14:26
Compare
Choose a tag to compare
v0.2.0-alpha.7 Pre-release
Pre-release

0.2.0-alpha.7 2024-01-12 Abhishek Mishra abhishekmishra3@gmail.com

  • This is the 13th release of PicoTurtle. It's mostly a maintenance release.
  • This release has updated to the latest version of Qt in vcpkg i.e. '6.6.1'.
  • It also uses the latest skia version in vcpkg i.e. '0.38.2'.
  • There are some breaking changes in the latest version skia, requiring
    some minor fixes. These fixes have only been tested on windows for now.
    If there are more fixes required for other platforms I will make another
    release.
  • The fixes relate to changes in SkCanvas class and in PNG encoding.

v0.2.0-alpha.6

12 Feb 06:50
Compare
Choose a tag to compare
v0.2.0-alpha.6 Pre-release
Pre-release
  • This is the 12th release of PicoTurtle. I've changed the cadence on release
    as changes are slowing down.
  • This release contains several new turtle commands, new features and bug fixes.
  • The documentation using mkdocs was completed sometime last week
    and went live at https://picoturtle.neolateral.in
  • The color names lib c-color-names was updated to the latest release tag.
  • The turtle API now contains two new commands enable_update and
    disable_update which enable and disable screen updates respectively. These
    commands when used with paint command (which forces screen update) can be
    used to build animations on the turtle canvas. I've developed a few examples
    which show how this can be used.
  • A utility method makegif is added to the PicoTurtle lua module to enable
    creation of gifs from the snapshots taken from the turtle canvas. This can
    be used to build offline animations - when not using the on-screen canvas.
  • The command snap is now an alias for export_img command.
  • Two new commands loadpic and pic are added to the turtle API which enable
    loading of images from disk and drawing them on the turtle's location. More
    parameters will be added to the pic function to make it more powerful.
  • A few new sample programs are added to the samples folder which use some of
    these new commands.
  • The start location for the Open File dialog now uses the last opened
    file's location. This saves some time navigating to the same folder again and
    again.

v0.2.0-alpha.5

22 Jan 19:09
Compare
Choose a tag to compare
v0.2.0-alpha.5 Pre-release
Pre-release
  • This is the 11th weekly release of PicoTurtle. It incorporates a new PicoTurtle CLI program, and a brand new documentation site which is work in progress.
  • There is a new program ptcli added to PicoTurtle which allows the user to run a PicoTurtle Lua program from the command line. This could be useful for automating some graphics generation. I've added this program because I want to generate the sample programs and images for the new documentation site in a bulk.
  • The documentation site is added in the docs folder - and is built using mkdocs and the mkdocs Material theme
  • The documentation is currently deployed using github actions. It is available at https://abhishekmishra.github.io/picoturtle. However the URL might change at a later date.

v0.2.0-alpha.4

15 Jan 05:40
Compare
Choose a tag to compare
v0.2.0-alpha.4 Pre-release
Pre-release
  • This is the 10th weekly release of PicoTurtle. It incorporates two major features in the Turtle lua code editor and some minor changes.
  • The Turtle Lua Editor now has two edit action for indent code and de-indent code code. These have shortcuts assigned, and work like the usual indentation actions in other code editors.
  • The editor also has a toggle comment action which comments (or uncomments) one or more lines using Lua "--" single line comments. Again these work similar to indentation actions in other code editor.
  • The Tab key when pressed in the editor now adds a tab when there is no selection, and calls the indent code action when there is a selection.
  • The Shift-Tab key always calls de-indent action whether there is a selection or not.
  • The c-color-names version used in PicoTurtle is updated to the lates head version.
  • There is a minor fix in documentation markdown.

v0.2.0-alpha.3

07 Jan 04:06
Compare
Choose a tag to compare
v0.2.0-alpha.3 Pre-release
Pre-release
  • This is the 9th weekly release of PicoTurtle and the first one in 2023. This release contains several documentation and installer related changed - and one major bug fix.
  • The CMAKE build is used to generate an internal version header file - which can be used by other code to display the currect built version.
  • The About Dialog now uses the version headers instead of hardcoding version.
  • The CMAKE package section for windows uses the build version variables for generating installer strings.
  • BugFix: When the last tab was closed in the IDE, the tab widget segfaults in the internal Qt handler. Essentially Qt does not support 0 tabs in the current version. So there is a workaround to add a new empty tab if the last editor is closed by the user.
  • Documentation for circle and arc commands is added.

v0.2.0-alpha.2

31 Dec 03:42
Compare
Choose a tag to compare
v0.2.0-alpha.2 Pre-release
Pre-release
  • This is the 8th weekly release of PicoTurtle and the last one in 2022. This release contains a few minor features and bug fixes.
  • The build targets for install and release have been changed to work with release binaries on Windows/Visual Studio.
  • The installer build now contains release binaries instead of debug binaries. Since this was a relatively minor change, the binary for the previous version was also changed on the github release page.
  • A new circle(radius) method is added to the Turtle. It draws a circle with the given radius around the current position of the turtle.
  • A new arc(radius, extent, steps) based on the python turtle circle method is added. This allows drawing of arcs, circles and regular polygons.
  • The Canvas now supports a begin and end fill mode. This will be used to build fill capability in the turtle.

v0.2.0-alpha.0

24 Dec 03:51
Compare
Choose a tag to compare
v0.2.0-alpha.0 Pre-release
Pre-release

NOTE: The original installer build for this release included debug binaries. The build was fixed and new release binaries installer is now attached.

  • This is the 7th weekly release of PicoTurtle. I've bumped the minor version to 2 - as starting this release there will be a windows installer available. The release contains the following changes.
  • The mechanism of drawing the turtle (tiny red triangle indicating the turtle's position and heading) is moved to the canvas painter widget. This allows the gui to control when the turtle is drawn.
  • Therefore the stop command is not longer explicitly needed in code - and does not do anything for now.
  • Documentation is fully updated for all turtle commands in the docs/help.md file.
  • pw and pc are new two letter aliases for penwidth and pencolor in the Turtle Lua API.
  • The color-names dependency is upgraded to its v0.1.0-aplha.0 tag - which contains the latest changes from upstream color-names package.
  • The statusbar now has a separate display for showing current line number and column number of the editor.
  • The CPack config to create a windows installer was added in last release - there are some minor changes to this section. This will be used to create the installer for windows and uploaded as part of this release.

v0.1.0-alpha.5

17 Dec 05:28
Compare
Choose a tag to compare
v0.1.0-alpha.5 Pre-release
Pre-release
  • This is the 6th alpha weekly release of PicoTurtle. This is perhaps the last source only release. It contains the following changes.
  • The turtle canvas_size method now accepts either 2 arguments (to specify a new canvas size width X height) or 0 arguments. In both cases the current canvas size is returned as two values width, height.
  • Minor fix in BoxTurtle class now passes the proper font arguments to the turtle font call.
  • The BoxTurtle class now allows passing a color argument to the clear method. Thus the canvas can be cleared to any colour. This will later be added to the main turtle clear method as well.
  • A new About dialog is added to PicoTurtle gui.
  • The PicoTurtle docs are updated to use section numbers, and has a new turtle creation section.
  • The docs are now displayed in a QTextBrowser for better readability.
  • CPack is added to the cmake build. The windows installer creation is now working. A complete set of files will be added - and the windows installer will be part of the next release.

v0.1.0-alpha.4

10 Dec 05:49
Compare
Choose a tag to compare
v0.1.0-alpha.4 Pre-release
Pre-release
  • This is the fifth early alpha weekly release of PicoTurtle. It contains a couple of major features and a few bug fixes.
  • The first major feature is Turtle Lua Console Integration. All turtle programs are now run as chunks in the lua repl widget.
    • Every program run restarts the lua repl session
    • This enables the reload of any dependent lua modules which might have changed.
    • The use of docall to load the chunk implies that the global variables are available for inspection post the run.
    • The turtle object is created by the repl class in global scope. This allows the inspection of turtle object in the repl post-run. It also allows user to issue turtle commands via the repl.
  • The second major feature is "Find/replace widget". A naive implementation without current support for regex or match/ignore case is implemented. These features will be added in the coming releases.
  • Bug fix: if open file dialog was cancelled, an empty tab was added to editor. This is now fixed - no tab is added when the action is cancelled.
  • The menu editor commands are now connected to corresponding actions in the editor widget.
  • If the lua file being run is saved on disk (has a valid path) then the directory containing the file is added to the lua path. Thus all require commands can resolve modules in that directory. This is helpful for running multi-file projects.

v0.1.0-alpha.3

04 Dec 06:24
Compare
Choose a tag to compare
v0.1.0-alpha.3 Pre-release
Pre-release
  • This is the fourth early alpha weekly release of PicoTurtle. It contains several minor changes/fixes and one major feature.

  • The fern drawing sample program in the README.md file is updated.

  • The Box and BoxTurtle lua classes now optionally check the bounds for each movement of the turtle. The option is supplied in the constructor. If check_bounds is enabled the BoxTurtle keeps the turtle moving only inside the box. Any move taking the turtle outside the box is invalid and has no effect.

  • To enable gameloop like mechanics for some turtle programs the following methods are added to the turtle API:

    1. elapsed_time_ms - Gives the total time in millis since the turtle was constructed.
    2. paint - Explicitly calls the paint callback if specified. This should be used to paint the turtle on the UI canvas.
    3. delay - Add an explicit delay to the turtle to slow it down. This calls the delay callback if specified. In non-interactive runs this method can be ignored - by not providing a callback to implement it.
    4. update - A function which calls the update callback whenever the state of the turtle changes. This helps the UI take some actions when the turtle is modified.
  • The major feature added in this release is the Lua Repl Widget in the UI. This widget is based on the code in lua.c of lua5.4 and implements an interactive lua console. Currently the turtle is not enabled in this console. In the next release turtle launches and interaction will be added to this widget.