Skip to content

Commit

Permalink
Packaging for 0.1.24 release
Browse files Browse the repository at this point in the history
  • Loading branch information
sparkslabs committed Nov 10, 2016
1 parent 69a1223 commit b7a0f6f
Show file tree
Hide file tree
Showing 9 changed files with 303 additions and 22 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ This project adheres to [Semantic Versioning](http://semver.org/), within
reason. (Prior to a 1.0.0 release minor version increases may be backwards
incompatible)

## [0.1.24] - UNRELEASED
## [0.1.24] - 2016-11-10

### What's been fixed?

Expand Down
5 changes: 3 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,8 @@ Release History

Release History:

- 0.1.24 - UNRELEASED - TBD
- 0.1.24 - 2016-11-10 - Fix assignment in else/elif, update to support
Ubuntu 16.04LTS, initial steps on function/def statement support
- 0.1.23 - 2016-10-11 - Major arduino profile improvements,
print-as-function not statement
- 0.0.22 - 2016-09-25 - Enable ability to use a variety of Arduino
Expand Down Expand Up @@ -430,4 +431,4 @@ As of 0.1.23, the print\_statement has been removed. As well as being
simplifying the syntax, it also means that Arudino statements like
Serial.print now become legal statements.

Michael Sparks, October 2016
Michael Sparks, November 2016
119 changes: 114 additions & 5 deletions doc/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,67 @@ This project adheres to [Semantic Versioning](http://semver.org/), within
reason. (Prior to a 1.0.0 release minor version increases may be backwards
incompatible)

### In progress
## [0.1.24] - 2016-11-10

## [0.1.24] - UNRELEASED
### What's been fixed?

* Code generation for `else`/`elif` was failing when the statements inside
contained identifiers. This was due to context not propogating into
`else`/`elif`. This was caused by neither `if` nor `elif` adding else clauses
as children. This was done and now this operates correctly.

### New

*
* Added playful puppy example that compiles and controls the Dagu Playful Puppy
robot. (8 leg servos, 2 head/neck servos, infrared array sensor/eye)
* v0 no funcs Playful Puppy code analyses #213
* v0 no funcs Playful Puppy code generates code #214
* v0 no funcs Playful Puppy code compiles, & runs on device correctly #215

* Profile specific code has been extracted to a specific file. In this
case, the iniitial profile made more managable is of course the arduino
profile. To configure this/extend this, you now update the file
`pyxie/profile/arduino.py`

* To add more predefined variables/etc that are used in the context (ala
A0, etc) you extend the function `populate_profile_context`.

* If you need to add extra types - ala the `Servo` type - you can use
the `Servo` function call as an example. Note that it has a return
type of `Servo`. This means of course that the `Servo` function is
a constructor. For this to work clearly the type needs to be
defined - so you define it below in the variable `types`.

* Started on _parsing_ side aspects of definition of simple user functions.
(ie `def` statements) Hopefully basic functions should be in the next
iteration of pyxie.

### Internal Changes

* `pyxie-dev` - Pyxie's release management tool, has had an overhaul,
and transferred into the pyxie package, rather than standalone code.
In the process code was improved, such that "dryrun" and "verbose"
now mean precisely that. Help text is deliberately verbose to note
what the release process is.

* Check all Pynodes add all sub nodes as children correctly #264

* Start of function support:
* Lexing for function definition succeeds #265
* Grammar parsing for function definition succeeds #266
* Pynode support for def statements #269.
* Add a callable type #270

### Other

*
* Reorganised backlog based on priorities - need, useful, want, wouldlike.
Plan going forward is to primarily focus on needs, and one or two from
each of the other categories.
* Function call code supports simplified type definitions for externals. #34
* Block structure of generated C Code is pretty/human friendly/readable #26
* Add special case for function calls like print #37



## [0.1.23] - 2016-10-11

Expand Down Expand Up @@ -120,6 +170,8 @@ This is in addition to:

* Updated docs



## [0.0.22] - 2016-09-25

This release sees a practicality change - specifically to allow the user
Expand Down Expand Up @@ -150,6 +202,8 @@ with.

* Minor cleanups



## [0.0.21] - 2016-09-17

Various small changes that result in the abilty to generate C++ code
Expand Down Expand Up @@ -197,6 +251,8 @@ profiles.
* Cleaned up/removed extraneous code
* Bump for release



## [0.0.20] - 2016-08-12

Bulk of changes for this release are internal - various refactoring and so
Expand Down Expand Up @@ -237,6 +293,8 @@ hence the new WIPNOTES :-)
* Subsume tree functionality into core
* Update changelog



## [0.0.19] - 2016-01-31

### Fixes
Expand Down Expand Up @@ -268,6 +326,8 @@ hence the new WIPNOTES :-)
* Bump copyright notices to 2016(!)
* Add link to latest release on homepage



## [0.0.18] - 2016-01-10

### New
Expand Down Expand Up @@ -314,6 +374,7 @@ hence the new WIPNOTES :-)
* Do not clean up builds temporarily



## [0.0.17] - 2015-08-12

### New
Expand All @@ -329,6 +390,8 @@ hence the new WIPNOTES :-)
* Updated usage instructions to include covering using arduino profile
* Documentation updated to current status (to a large extent)



## [0.0.16] - 2015-08-02

Summary: Adds initial Arduino LEONARDO support, improved function call, release build scripts
Expand Down Expand Up @@ -375,10 +438,13 @@ as functionality stabilises.
* Re-enable doc building



## [0.0.15] - 2015-07-18

* clib converted to py clib for adding to build directory



## [0.0.14] - 2015-07-18

### New
Expand All @@ -397,6 +463,8 @@ as functionality stabilises.
* Test case for for loops
* Massive website revamp



## [0.0.13] - 2015-06-21

This probably marks the first release that's potentially properly useful when combined with
Expand All @@ -411,6 +479,8 @@ expressions.
* Support for boolean operators - specifically and/or/not, including any mixture
* Support for parenthesised expressions



## [0.0.12] - 2015-06-17

### New
Expand All @@ -429,6 +499,8 @@ benchmarking and so on. Creative use ( while + break) allows creation of "if" li
constructs meaning the code at this point supports sequence, selection and iteration
as well as very basic datatypes. That's almost useful... :-)



## [0.0.11] - 2015-06-06

### New
Expand All @@ -450,6 +522,8 @@ as well as very basic datatypes. That's almost useful... :-)

* Support empty statements/empty lines



## [0.0.10] - 2015-06-03

* Documentation added to pyxie/__init__.py, to allow project level help from "pydoc pyxie"
Expand All @@ -463,19 +537,23 @@ as well as very basic datatypes. That's almost useful... :-)
* New strategy for type inference documented, opens up lexical scoping
* pyxie compile harness now runs/compiles programs outside the pyxie tree



## [0.0.9] - 2015-05-23

Primary changes are to how the program is run, and fixes to precedence. This is the first
version to support a non-test mode - so you can output binaries, but also JSON parse trees.

### New

* Test modes for pyxie harness moved into a --test mode
* Standalone parse mode -- pyxie parse filename -- parses the given filename, outputs result to console
* Standalone compiler mode --
* pyxie compile path/to/filename.suffix -- compiles the given file to path/to/filename
* pyxie compile path/to/filename.suffix path/to/other/filename -- compiles the given file to the destination filename

### Changed

* Switch to left recursion. The reason is because YACC style grammars handle
this better than right recursion, and the fact it also fixes operator precedence
correctly in expressions. The reason the grammar was originally right recursive
Expand All @@ -484,11 +562,16 @@ version to support a non-test mode - so you can output binaries, but also JSON p
parsing)

### Fixes

* Bracket negative literal values in expressions to avoid confusing C++
* Precedence as noted above.



## [0.0.8] - 2015-05-13

### Changed

Switched compilation over to using PyNode objects rather than lists

Rolls up alot of changes, and improvements:
Expand Down Expand Up @@ -530,6 +613,7 @@ Rolls up alot of changes, and improvements:


## [0.0.7] - 2015-04-29

### Changed
- Bump revision for release
- Compiler structure & testing improvements
Expand All @@ -540,8 +624,12 @@ Rolls up alot of changes, and improvements:
- Bugfix: Fix precedence for plus/minus/times/divide
- Bugfix: Only output each include once



## [0.0.6] - 2015-04-26

Overview -- Character Literals, math expressions, build/test improvements

### Changed
- Character literals - parsing and compilation
- Initial version of changelog
Expand All @@ -561,8 +649,11 @@ Overview -- Character Literals, math expressions, build/test improvements
Simplest possible test initially



## [0.0.5] - 2015-04-23

### Added

- Core lexical analysis now matches language spec - collection of changes, which can be summarised as follows:
- Language spec updated relative to implementation & lexing states
- Lexical analysis of block structure
Expand All @@ -571,27 +662,39 @@ Overview -- Character Literals, math expressions, build/test improvements
- Fleshed out lexical tokens to match language spec

### Changed

- Code cleanups



## [0.0.4] - 2015-04-22

### Added

- Extends C AST to match python AST semantics
- Ability to use mixed literals in a print statement (1,True, "hello" etc)
- Argument list management
- Convert argument lists explicitly

### Changed

- Use Print not print

### Fixed

- Cleaned up debug output.



## [0.0.3] - 2015-04-21

### Added

- Adds ability to print and work with a small number of variables
- Better handling, and code gneration for integer literals

### Changed

- Add long description (setup.py)
- Update README.md to reflect project slightly better
- Reworded/tightened up README
Expand All @@ -601,20 +704,26 @@ Overview -- Character Literals, math expressions, build/test improvements
- Build test results inside the test-data/genprogs directory



## [0.0.2] - 2015-03-30

*Initial Release*
*Initial Release* -- 0.0.1 was not released and rolled into 0.0.2 (release notes for 0.0.1 below)

Simple assignment

### Added

- Transform Python AST to C CST - compile python to C++ for v simple program

### Changed

- Various tweaks for README/docs
- Packaging for pypi and Ubuntu Launchpad PPA for initial release 0.0.2



## [0.0.1] - Unreleased - rolled into 0.0.2

### Added

- Initial structure, loosely based on SWP from a few years ago
Expand Down
2 changes: 1 addition & 1 deletion doc/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -446,7 +446,7 @@ inspired heavily by python introspection) That's quite some time off.

Release History:

* 0.1.24 - UNRELEASED - TBD
* 0.1.24 - 2016-11-10 - Fix assignment in else/elif, update to support Ubuntu 16.04LTS, initial steps on function/def statement support
* 0.1.23 - 2016-10-11 - Major arduino profile improvements, print-as-function not statement
* 0.0.22 - 2016-09-25 - Enable ability to use a variety of Arduino boards by using an Makefile.in file
* 0.0.21 - 2016-09-17 - Adds ability to control Arduino servo objects. Quite a lot of internal changes to support that
Expand Down
Loading

0 comments on commit b7a0f6f

Please sign in to comment.