Skip to content

Commit

Permalink
Merge branch 'master' into install_pi
Browse files Browse the repository at this point in the history
  • Loading branch information
ntoll committed Apr 27, 2018
2 parents fadd55f + fc519a9 commit 0176ca2
Show file tree
Hide file tree
Showing 28 changed files with 1,577 additions and 284 deletions.
29 changes: 29 additions & 0 deletions CHANGES.rst
Expand Up @@ -15,6 +15,35 @@ Release History
all his continuing hard work on MicroPython for the micro:bit.
* Inclusion of tkinter, turtle, gpiozero, guizero, pigpio, pillow and requests
libraries as built-in modules.
* Update to latest version of Pygame Zero.
* Fix plotter axis label bug which wouldn't display numbers if value was a
float.
* Separate session and settings into two different files. Session includes
user defined changes to configuration whereas settings contains sys-admin-y
configuration.
* Update the CSS for the three themes so they display consistently on all
supported platforms. Thanks to Zander Brown for his efforts on this.
* Move the mode selection to the "Mode" button in the top left of the window.
* Support for different encodings and default to UTF-8 where possible. Many
thanks to Tim Golden for all the hard work on this rather involved fix.
* Consistent end of line support on all platforms. Once again, many thanks to
Tim Golden for his work on this difficult problem.
* Use ``mu-editor`` instead of ``mu`` to launch the editor from the command
line.
* More sanity when dealing with cross platform paths and ensure filetypes are
treated in a case insensitive manner.
* Add support for minification of Python scripts to be flashed onto a micro:bit
thanks to Zander Brown's nudatus module.
* Clean up logging about device discovery (it's much less verbose).
* Drag and drop files onto Mu to open them. Thanks to Zander Brown for this
*really useful* feature.
* The old logs dialog is now an admin dialog which allows users to inspect the
logs, but also make various user defined configuration changes to Mu.
* Plotter now works in Python 3 mode.
* Fix problem in OSX with the ``mount`` command when detecting Circuit Python
boards. Thanks to Frank Morton for finding and fixing this.
* Add data flood avoidance to the plotter.
* A huge number of minor bug fixes, UI clean-ups and simplifications.

1.0.0.beta.15
=============
Expand Down
6 changes: 5 additions & 1 deletion CONTRIBUTING.rst
Expand Up @@ -47,6 +47,10 @@ yet robust argument is most welcome.
Checklist
+++++++++

* If your contribution includes non-obvious technical decision making please
make sure you document this in the
`design decisions <https://mu.readthedocs.io/en/latest/design.html>`_
section.
* Your code should be commented in *plain English* (British spelling).
* If your contribution is for a major block of work and you've not done so
already, add yourself to the AUTHORS file following the convention found
Expand All @@ -57,4 +61,4 @@ Checklist
make check

* If in doubt, ask a question. The only stupid question is the one that's never asked.
* Most importantly, **Have fun!**
* Most importantly, **Have fun!** :-)
13 changes: 13 additions & 0 deletions docs/design.rst
@@ -0,0 +1,13 @@
Design Decisions
----------------

The following documents concern the decision making aspects behind various
aspects of Mu. This is a recent practice (started by Tim Golden) so these
documents do not cover many aspects of Mu. However, moving forward newer
technical decisions will be documented in this way.

.. toctree::
:maxdepth: 2

design/file_reading_and_writing.rst
design/line-endings
17 changes: 9 additions & 8 deletions docs/design/line-endings.rst
Expand Up @@ -14,21 +14,22 @@ Background
----------

Mu is designed to run on any platform which supports Python / Qt. This includes
Windows and any *nix variant, including OS/X. Windows traditionally uses \r\n
(ASCII 13 + ASCII 10) for line-endings while *nix usually recognises a single \n
(ASCII 10). Although many editors now detect and adapt to either convention,
Windows and any \*nix variant, including OS/X. Windows traditionally uses \r\n
(ASCII 13 + ASCII 10) for line-endings while \*nix usually recognises a single
\n (ASCII 10). Although many editors now detect and adapt to either convention,
it's common enough for beginners to use, eg, Windows notepad which only honours
and only generates the \r\n convention.

When reading / writing files, Python offers several forms of line-ending
manipulation via the newline= parameter in the built-in open() function.
Mu originally used Universal newlines (newline=None; the default), but then switched
to retaining newlines (newline="") in PR #133
Mu originally used Universal newlines (newline=None; the default), but then
switched to retaining newlines (newline="") in PR #133

The effect of this last change is to retain whatever convention or mix of
conventions is present in the source file. In effect it is overriding any newline
manipulation to present to the editor control the characters originally present
in the file. When the file is saved, the same characters are written out.
conventions is present in the source file. In effect it is overriding any
newline manipulation to present to the editor control the characters originally
present in the file. When the file is saved, the same characters are written
out.

However this creates a quandary when programatically manipulating the editor
text: do we use the most widespread \n as a line-ending; or do we use the
Expand Down
33 changes: 33 additions & 0 deletions docs/design/template-decision.txt
@@ -0,0 +1,33 @@
Meaningful Title
================

Decision
--------

A brief summary of what Mu does given the context of the title.


Background
----------

As many paragraphs as needed to describe the situation that caused this
decision to be made.


Discussion and Implementation
-----------------------------

As many paragraphs as needed to explain the approach taken and implementation
thereof.

Implemented via:
~~~~~~~~~~~~~~~~

* (A list of URLs to GitHub pull requests or Git commits.)
* https://github.com/mu-editor/mu/pull/390

Discussion in:
~~~~~~~~~~~~~~

* (A list of URLs to GitHub issues, mailing list discussions etc...)
* https://github.com/mu-editor/mu/issues/380
4 changes: 4 additions & 0 deletions docs/index.rst
Expand Up @@ -17,6 +17,9 @@ Mu: A Python Code Editor
For tutorials, how-to guides and user related discussion, please see the
project's website for users of Mu at: https://codewith.mu/

If you're interested in the fun, educational, inspiring and sometimes
hilarious ways in which people use Mu, check out: https://madewith.mu/

What?
-----

Expand Down Expand Up @@ -120,6 +123,7 @@ Contents:
packaging.rst
website.rst
api.rst
design.rst
authors.rst
changes.rst
license.rst
Expand Down

0 comments on commit 0176ca2

Please sign in to comment.