Skip to content

Commit

Permalink
Merge pull request #87 from PedalPi/version-0.6.0
Browse files Browse the repository at this point in the history
Version 0.6.0
  • Loading branch information
SrMouraSilva committed Nov 30, 2017
2 parents 5752d79 + 8a6f7e8 commit d0350ae
Show file tree
Hide file tree
Showing 96 changed files with 4,286 additions and 452 deletions.
4 changes: 3 additions & 1 deletion .gitignore
Expand Up @@ -2,7 +2,9 @@
*.egg-info
htmlcov
.coverage
.cache
docs/build
.eggs
dist/
build/
build/
test/autosaver_data
19 changes: 9 additions & 10 deletions .travis.yml
Expand Up @@ -12,20 +12,19 @@ sudo: required
install:
- sudo apt-get install -y portaudio19-dev python-all-dev --no-install-recommends
- sudo apt-get install -y lilv-utils calf-plugins guitarix --no-install-recommends
- sudo apt-get install -y lv2-dev --no-install-recommends
- pip3 install sphinx
- pip3 install coveralls
- pip3 install cffi
- pip3 install JACK-Client
- python setup.py develop
- pip3 install pytest pytest-cov
- make install-tests-requirements

script:
- lv2ls
- cd ..
- mkdir data
- cd data
- mkdir autosaver_data
- cd ../PluginsManager
- coverage3 run --source=pluginsmanager setup.py test
- cd docs
- make html
- make test
- make docs
- #make test-docs
- #pytest --doctest-modules

after_success:
- bash <(curl -s https://codecov.io/bash)
55 changes: 49 additions & 6 deletions CHANGES
@@ -1,15 +1,58 @@
Version 0.5.1 -- released 06//17
Version 0.6.0 -- released 11/30/17
**********************************
- `Issue #52`_ - :class:`Autosaver` - Change connection with :class:`SystemInput` and :class:`SystemOutput` causes error;
- `Issue #53`_ - :class:`Autosaver` - Remove effect with connections breaks.
- Add makefile. Now is possible run tests and generate docs easly (`make help`);
- Improve :class:`.SystemInput` and :class:`.SystemOutputs` documentation;
- `Issue #57`_ - Implementing midi support:
- Now :class:`.Effect` list yours `midi_inputs` and `midi_outputs`;
- :class:`.SystemEffect` now supports `midi_inputs` and `midi_outputs`;
- :class:`.Lv2Effect` now supports `midi_inputs` and `midi_outputs`;
- Created :class:`.MidiPort`, :class:`.MidiInput`, :class:`.MidiOutput`;
- Created :class:`.SystemMidiInput`, :class:`.SystemMidiOutput`;
- Created :class:`.Lv2MidiInput`, :class:`.Lv2MidiOutput`;
- :class:`.SystemEffectBuilder` now creates :class:`.SystemEffect` with your midi outputs and midi inputs;
- Fix autosaver_test creation folder. Now is more easily configure test workspace;
- Refactored :class:`.Input`, :class:`.Output`: Created :class:`.Port` for remove duplicated code;
- Refactored :class:`.SystemInput`, :class:`.SystemOutput`: Created :class:`.SystemPortMixing` for remove duplicated code;
- Refactored :class:`.Lv2Input`, :class:`.Lv2Output`: Created :class:`.Lv2PortMixing` for remove duplicated code;
- :class:`.JackClient` - Add attributes: `audio_inputs`, `audio_outputs`, `midi_inputs`, `midi_outputs`;
- Break change: Removed :meth:`Output.connect()` and :meth:`Output.disconnect()` :class:`.Output` methods.
Use instead :meth:`~pluginsmanager.model.pedalboard.Pedalboard.connect()`, :meth:`~pluginsmanager.model.pedalboard.Pedalboard.disconnect()` :class:`.Pedalboard` methods;
- `Issue #67`_ - Created :meth:`~pluginsmanager.model.pedalboard.Pedalboard.connect()`, :meth:`~pluginsmanager.model.pedalboard.Pedalboard.disconnect()` :class:`.Pedalboard` methods;
- Fixed Changelog: Now is possible see it in the documentation;
- `Issue #38`_ - Raise erros then add sys_effect in any Pedalboard;
- `Issue #65`_ - Fix documentation bug `SystemEffectBuilder(client).build()` instead `SystemEffectBuilder(client)`;
- `Issue #68`_ - Remove current mod-host pedalboard don't removes systems connection (system.output to system.input);
- `Issue #66`_ - JSON effect improviments: Add plugin version. Remove `min` and `max`;
- `Issue #62`_ - Create a converter MOD pedalboard -> PluginsManager pedalboard;
- `Issue #77`_ - Fix MidiConnection bugs (:class:`SystemMidiInput` and :class:`SystemMidiOutput` doesn't works in :class:`ModHost`);
- `Issue #78`_ - Improve lv2 effect builder error message when plugin not exists;
- :class:`.Lv2EffectBuilder` - Add parameter `ignore_unsupported_plugins` for ignore audio plugins errors if it doesn't installed in the system.
The previous versions raises error if a audio plugin hasn't installed in the system.
Now, is possible use it if `plugins_json` parameter contains your metadata.
Observes that, how the audio plugin aren't installed, your use with mod-host or other host will raises errors.

.. _Issue #38: https://github.com/PedalPi/PluginsManager/issues/38
.. _Issue #57: https://github.com/PedalPi/PluginsManager/issues/57
.. _Issue #62: https://github.com/PedalPi/PluginsManager/issues/65
.. _Issue #65: https://github.com/PedalPi/PluginsManager/issues/65
.. _Issue #66: https://github.com/PedalPi/PluginsManager/issues/66
.. _Issue #67: https://github.com/PedalPi/PluginsManager/issues/67
.. _Issue #68: https://github.com/PedalPi/PluginsManager/issues/68
.. _Issue #77: https://github.com/PedalPi/PluginsManager/issues/77
.. _Issue #78: https://github.com/PedalPi/PluginsManager/issues/78

Version 0.5.1 -- released 08/16/17
**********************************
- `Issue #52`_ - :class:`.Autosaver` - Change connection with :class:`.SystemInput` and :class:`.SystemOutput` causes error;
- `Issue #53`_ - :class:`.Autosaver` - Remove effect with connections breaks.
Disable connections removed notification when a effect with connections has removed;
- :class:`Autosaver` - Add :attr:`.Observable.real_list` attribute for access the list of :class:`ObservableList`.
- `Issue #54`_ - :class:`Mod-host` - Fix `feedback_socket optional`_ problem
- :class:`.Autosaver` - Add :attr:`.Observable.real_list` attribute for access the list of :class:`.ObservableList`;
- `Issue #54`_ - :class:`.Mod-host` - Fix `feedback_socket optional`_ problem.

.. _Issue #52: https://github.com/PedalPi/PluginsManager/issues/52
.. _Issue #53: https://github.com/PedalPi/PluginsManager/issues/53
.. _Issue #54: https://github.com/PedalPi/PluginsManager/issues/54
.. _default feedback_socket disabled: https://github.com/moddevices/mod-host/commit/31b1d04deb91c88420e1e0dd0cc4fad523f55712
.. _feedback_socket optional: https://github.com/moddevices/mod-host/commit/31b1d04deb91c88420e1e0dd0cc4fad523f55712

Version 0.5.0 -- released 05/29/17
**********************************
Expand Down
31 changes: 4 additions & 27 deletions README.rst
Expand Up @@ -157,7 +157,7 @@ It requires a `JackClient` instance, that uses `JACK-Client`_.
client = JackClient()
from pluginsmanager.model.system.system_effect_builder import SystemEffectBuilder
sys_effect = SystemEffectBuilder(client)
sys_effect = SystemEffectBuilder(client).build()
For manual input and output sound card definition, use:

Expand Down Expand Up @@ -261,43 +261,20 @@ library can be accessed in the `Observer section <observer.html>`__.

.. _Carla: https://github.com/falkTX/Carla

Changelog
---------

..include:: ../../CHANGES

Maintenance
-----------

Test
****

It is not necessary for the mod_host process to be running

.. code-block:: bash
coverage3 run --source=pluginsmanager setup.py test
Makefile
********

coverage3 report
coverage3 html
firefox htmlcov/index.html
Execute ``make help`` for see the options

Generate documentation
**********************

This project uses `Sphinx`_ + `Read the Docs`_.

You can generate the documentation in your local machine:

.. code-block:: bash
pip3 install sphinx
cd docs
make html
firefox build/html/index.html
.. _Sphinx: http://www.sphinx-doc.org/
.. _Read the Docs: http://readthedocs.org
.. _Calf: http://calf-studio-gear.org/
Expand Down
4 changes: 4 additions & 0 deletions docs/source/changelog.rst
@@ -0,0 +1,4 @@
Changelog
=========

.. include:: ../../CHANGES
1 change: 1 addition & 0 deletions docs/source/conf.py
Expand Up @@ -42,6 +42,7 @@
'sphinx.ext.viewcode',
'sphinx.ext.todo',
'sphinx.ext.graphviz',
#'sphinx.ext.inheritance_diagram',
# 'sphinx.ext.githubpages',
]

Expand Down
8 changes: 8 additions & 0 deletions docs/source/index.rst
@@ -1,5 +1,13 @@
.. include:: ../../README.rst

Changelog
---------

.. toctree::
:maxdepth: 2

changelog

API
---

Expand Down
116 changes: 97 additions & 19 deletions docs/source/model.rst
Expand Up @@ -39,24 +39,47 @@ This page contains the model classes.

.. graphviz::

digraph classes {
graph [rankdir=BT];
node [shape=rect, style=filled, color="#298029", fontname=Sans, fontcolor="#ffffff", fontsize=10];
digraph classes {
graph [rankdir=BT];
node [shape=rect, style=filled, color="#298029", fontname=Sans, fontcolor="#ffffff", fontsize=10];

Lv2Effect->Lv2Plugin[
dir="backward", arrowhead="diamond", arrowtail="normal"
];
Lv2Effect->Effect;
SystemEffect->Effect;
AudioPort->Port;

Lv2Input->Input;
SystemInput->Input;
Input->AudioPort;
Output->AudioPort;

Lv2Output->Output;
SystemOutput->Output;
MidiPort->Port;
MidiInput->MidiPort;
MidiOutput->MidiPort;

Lv2Param->Param;
}
Lv2Input->Input;
Lv2Output->Output;
Lv2MidiInput->MidiInput;
Lv2MidiOutput->MidiOutput;

SystemInput->Input;
SystemOutput->Output;
SystemMidiInput->MidiInput;
SystemMidiOutput->MidiOutput;

}

.. graphviz::

digraph classes {
graph [rankdir=BT];
node [shape=rect, style=filled, color="#298029", fontname=Sans, fontcolor="#ffffff", fontsize=10];

Lv2Effect->Lv2Plugin[
dir="backward", arrowhead="diamond", arrowtail="normal"
];
Lv2Effect->Effect;
SystemEffect->Effect;

Lv2Param->Param;

MidiConnection->Connection;
}

.. graphviz::

Expand All @@ -71,6 +94,11 @@ This page contains the model classes.
AutoSaver->UpdatesObserver
}

.. .. inheritance-diagram::
pluginsmanager.model.output.Output
pluginsmanager.model.input.Input


BanksManager
------------

Expand All @@ -87,6 +115,14 @@ Bank
:special-members:
:exclude-members: __weakref__

Pedalboard
----------

.. autoclass:: pluginsmanager.model.pedalboard.Pedalboard
:members:
:special-members:
:exclude-members: __weakref__

Connection
----------

Expand All @@ -95,6 +131,14 @@ Connection
:special-members:
:exclude-members: __weakref__

MidiConnection
--------------

.. autoclass:: pluginsmanager.model.midi_connection.MidiConnection
:members:
:special-members:
:exclude-members: __weakref__

Effect
------

Expand All @@ -103,6 +147,22 @@ Effect
:special-members:
:exclude-members: __weakref__

Port
----

.. autoclass:: pluginsmanager.model.port.Port
:members:
:special-members:
:exclude-members: __weakref__

AudioPort
---------

.. autoclass:: pluginsmanager.model.audio_port.AudioPort
:members:
:special-members:
:exclude-members: __weakref__

Input
-----

Expand All @@ -119,18 +179,36 @@ Output
:special-members:
:exclude-members: __weakref__

Param
-----
MidiPort
--------

.. autoclass:: pluginsmanager.model.param.Param
.. autoclass:: pluginsmanager.model.midi_port.MidiPort
:members:
:special-members:
:exclude-members: __weakref__

Pedalboard

MidiInput
---------

.. autoclass:: pluginsmanager.model.midi_input.MidiInput
:members:
:special-members:
:exclude-members: __weakref__

MidiOutput
----------

.. autoclass:: pluginsmanager.model.pedalboard.Pedalboard
.. autoclass:: pluginsmanager.model.midi_output.MidiOutput
:members:
:special-members:
:exclude-members: __weakref__

Param
-----

.. autoclass:: pluginsmanager.model.param.Param
:members:
:special-members:
:exclude-members: __weakref__

25 changes: 25 additions & 0 deletions docs/source/model_system.rst
Expand Up @@ -32,3 +32,28 @@ SystemOutput
:members:
:special-members:
:exclude-members: __weakref__


SystemMidiInput
---------------

.. autoclass:: pluginsmanager.model.system.system_midi_input.SystemMidiInput
:members:
:special-members:
:exclude-members: __weakref__

SystemMidiOutput
----------------

.. autoclass:: pluginsmanager.model.system.system_midi_output.SystemMidiOutput
:members:
:special-members:
:exclude-members: __weakref__

SystemPortMixing
----------------

.. autoclass:: pluginsmanager.model.system.system_port_mixing.SystemPortMixing
:members:
:special-members:
:exclude-members: __weakref__

0 comments on commit d0350ae

Please sign in to comment.