Shoebot

Latest version: v1.4.0

Safety actively analyzes 621892 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

1.4

- Variable fonts! Fonts with variant axes can now be loaded and tweaked. Thanks to villares for the nudge. (339)
- Improved typography control with settings for tracking (letterspacing), underline and overline, along with the new fontnames(), textbounds() and fontoptions() commands (283 351 356 391)
- Stroke and fill features: strokecap(), strokejoin(), strokedash() and fillrule() (376)
- Arcs! They can now be drawn with the arc() and arcto() commands. (343)
- Blending modes for all drawing objects (376)

Other new features:
- Much improved unit test framework that already helped us find and kill several bugs, and made it possible to implement new features with confidence that things don't break. (296)
- Commands that set state (like fill() or font()) now always return its current value
- image() can properly load SVG files (277)
- Add (x,y) coordinates to closepath() (287)
- Have textwidth() and textheight() accept keyword args like textmetrics()
- The dependency install script was improved and has added support for Homebrew, Manjaro, Arch (thanks to villares for help and testing) and MINGW64 (thanks to speters33w for help and testing) (312)
- Significant speedups by removing unnecessary waits (372)
- Windows/Mingw64: working Gedit extension
- OSX: Improvements in dependency installing (264)

Cleanups:
- Remove CMYK references and only use RGB internally (386)
- Remove the Drawbot mode (never properly implemented) (375)

Bug fixes:
- Fix duplicate snapshot saving (413)
- Error codes are properly output on exit (284 374)
- Fix unstroked shapes being rendered as bitmaps (359)
- Properly show error logs on video export
- Fix line() being a closed path
- Fix crash when using HSB colors
- Fix L-System library bugs (290)
- Fix wrong line number output in script errors
- Fix colormode to take range, not crange for Nodebox compatibility
- Fix broken Text.draw()
- Fix socket server not starting because of new Python 3 API changes. (368)
- Update pubsub version (265)

Docs were seriously reworked:
- Many new examples in the command reference
- Many, many corrections, fixes and edits
- Move from ReadTheDocs to our own Sphinx site at docs.shoebot.net
- New look and name (Shoebot manual)
- Recommends per-user install, not system-wide
- Update Sphinx module to Python 3 and correct leftover Python 2 references (275)
- Remove reference to Shoebox appliance as this was not updated to Python 3

Testing:
- Add OSX support to end to end tests.
- Update unit tests to use AAA style.
- Add checks to ensure travis and the install script are consistent
- Add missing packages to travis for homebrew and ubuntu.
- Add end to end tests that visual output of some examples
- Add tests for exception format.
- (Re)Add tests for color.

Libraries:
- Port various bits to Python 3
- Cleanups and reformatting, including the colors library
- Fixes in the lsystem and graph libraries and examples
- SBVideo alert the user if numpy is not installed
- Removed the web library as it's stale and obsolete (288)

Examples:
- Added Dendrite and Fireworks example from Nodebox

1.3.1

A couple of additions:

* Ensure that the output window is redrawn on resize
* Center the output image in the window
* Add mnemonics for menus

And many bug fixes:

* Fix ReadTheDocs output, docs now build properly again
* Fix an issue where install would fail under PyPy
* Don't commit Python eggs to the repository
* Fix typo in install script that broke it
* Virtualenv chooser in IDE does not die anymore if ~/.virtualenvs doesn't
exist
* Remove outdated mentions of requirements.txt in install docs
* Fix buffer reference in IDE code
* Fix weird behavior when saving in the IDE

1.3

* The Shoebot Editor (IDE) is back as an easy way to edit and run scripts.
Its code has been substantially refactored as well. This feature is
currently in alpha status, moving to beta on the 1.4 release after some
testing.
* New dark theme for the IDE.
* Jupyter notebooks are now supported, through the use of the
jupyter-shoebot extension.
* PyPy support. Shoebot benefits from upstream fixes to both pycairo and
pygobject, and now runs under PyPy without any special configuration.
* Window scaling. Shoebot now renders at the window size instead of the bot
size, meaning that paths will not become pixelated when the window is
resized, and will stay smooth at any size.
* Improved the installation process significantly, with package lists
updated to play nice with most distros. Fedora and SUSE were particularly
targeted here, improving many annoyances that made running Shoebot in
these distros rather difficult.
* Migrate graphics backend into PyCairo by default.
* Easy toggle between Cairo/CairoCFFI and gi/pgi as a graphics backend.
Recent work on the graphics backend now makes it possible to choose the
Cairo and GObject bindings using an environment variable.
* Many documentation additions and edits
* Several bug fixes

1.2.2

Small fixes to `sbaudio` library after pysoundcard API changes

1.2.1

Improvements to vext which ought to work to make Shoebot installable via `pip` and `setup.py install`

1.2

New features:

* Livecoding branch merged
* Shoebot shell for communication with editors / IDEs
* Gtk3 branch merged, along with experimental support for pypy
* Use 'vext' for Gtk, extra virtualenv setup scripts removed
* Make setup.py clean actually remove all detritus
* Support setup.py develop
* Show shoebot icon in var window as well as main window
* Started event framework to control different parts of SB; it's pretty dumb right now, but enough to support livecoding of dynamic and non dynamic bots.

GEdit plugin changes

* Installable from `setup.py`, supports Windows
* Made to work on Python 2.6, so Windows Gedit can be supported
* Added Virtualenv chooser
* Settings are persisted in DConf
* Removed bash setup scripts
* Livecoding support - seperate tab for live errors
* Update examples search to work with `setup.py develop`

Examples

* Re-enabeled the colors examples
* Added Audio Examples
* Added other misc examples (Fat Text, Fat Lines)

The main focus of 1.2 has been on making installation easier, livecoding and making sure old branches don't go unused.

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.