Skip to content

Commit

Permalink
Merge pull request #1715 from missionpinball/0.57
Browse files Browse the repository at this point in the history
dev update to 0.57.0.dev5
  • Loading branch information
toomanybrians authored Sep 16, 2023
2 parents f1fdc97 + 48a5f1a commit a069a00
Show file tree
Hide file tree
Showing 500 changed files with 6,504 additions and 6,053 deletions.
18 changes: 12 additions & 6 deletions .github/workflows/run_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,24 +10,30 @@ jobs:
fail-fast: false
matrix:
include:
- os: windows-latest
python-version: 3.7
- os: windows-latest
python-version: 3.8
- os: windows-latest
python-version: 3.9
- os: ubuntu-latest
python-version: 3.7
- os: windows-latest
python-version: "3.10"
- os: windows-latest
python-version: 3.11
- os: ubuntu-latest
python-version: 3.8
- os: ubuntu-latest
python-version: 3.9
- os: macos-latest
python-version: 3.7
- os: ubuntu-latest
python-version: "3.10"
- os: ubuntu-latest
python-version: 3.11
- os: macos-latest
python-version: 3.8
- os: macos-latest
python-version: 3.9
- os: macos-latest
python-version: "3.10"
- os: macos-latest
python-version: 3.11

steps:
- name: Checkout MPF
Expand Down
10 changes: 3 additions & 7 deletions AUTHORS → AUTHORS.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
Authors & Contributors
======================
# Authors & Contributors

The following folks are the ones who've made MPF possible. Some big. Some small. All in
their spare time, unpaid, for the love of pinball!

* Brian Madden <[email protected]>
* Gabe Knuth <[email protected]>
* Jan Kantert <[email protected]>
* Quinn Capen <[email protected]>
* John Marsh <[email protected]>
Expand Down Expand Up @@ -33,11 +31,9 @@ their spare time, unpaid, for the love of pinball!
* Charles Duncan (nullbuilds)
* Eric Selk <[email protected]>

MPF is inspired by pyprocgame and skeletongame which were written by:
MPF was inspired by pyprocgame which was written by:

* Adam Preble
* Gerry Stellenberg
* Michael Ocean
* Josh Kugler

Want to contribute to MPF? Get started here: http://docs.missionpinball.org/about/contributing_to_mpf.html
Want to contribute to MPF? Get started here: https://missionpinball.org/about/contributing_to_mpf/
11 changes: 5 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,12 @@ Visit the MPF project homepage at https://missionpinball.org. Additional related
Documentation
-------------

* User Docs (installation, tutorials, & reference): https://docs.missionpinball.org
* Developer documentation: https://developer.missionpinball.org/
* User Docs (installation, tutorials, & reference): https://missionpinball.org

Support
-------

MPF is an open source community project which has no official support. Some MPF users participate in the MPF-Users Google group: https://groups.google.com/forum/#!forum/mpf-users.
MPF is an open source community project which has no official support. Some MPF users participate in the MPF-Users Google group or GitHub Discussion. Links [here](https://missionpinball.org/community/).

Individual pinball hardware companies may provide additional support for users of their hardware, often via their own Slack, Discord, or other chat groups. If you get stuck, you can ask for help in the MPF-users group, or you reach out to your hardware provider.

Expand All @@ -35,15 +34,15 @@ Maintenance, Pull Requests, & Bug Fixes

As a community project, we welcome pull requests and bug fixes. However, we do not have the resources to provide support for MPF. If you are interested in becoming a maintainer, please contact us at [email protected].

Bugs or other issues related to MPF itself can be posted to the [MPF Discussions page on GitHub](https://github.com/orgs/missionpinball/discussions).
Bugs or other issues related to MPF itself can be posted to the [MPF Discussions page on GitHub](https://missionpinball.org/community/).

Contributing
------------

Individual pinball hardware makers are responsible for their own platform interface maintenance and contributions.

If you're a Python coder, documentation writer, or pinball maker, feel free to make a change and submit a pull request. For more information about contributing see the [Contributing Code](http://docs.missionpinball.org/about/contributing_to_mpf.html)
and [Contributing Documentation](http://docs.missionpinball.org/about/contributing_to_mpf_docs.html) pages.
MPF is a passion project created and maintained by volunteers. If you're a Python coder, documentation writer, or pinball maker, feel free to make a change and submit a pull request. For more information about contributing see the [Contributing Code](https://missionpinball.org/about/contributing_to_mpf/)
and [Contributing Documentation](https://missionpinball.org/about/help_docs/) pages.

License
-------
Expand Down
2 changes: 1 addition & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
See: http://docs.missionpinball.org/versions/release_notes.html
See: https://missionpinball.org/versions/release_notes/
24 changes: 24 additions & 0 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# FAST Platform Rewrite TODO list for MPF 0.57

* Get rid of all communicator-level message waiting?

* Get FAST EXP tests working
* Finish the FAST machine reset test
* Add a test for ball ending?
* Merge fastpinball branch into mainline

* On startup, address switch changes coming in while everything is being reset. Add an init flag and ignore them until cleared?
* Delayed pulse. Add platform_setting for this.
* Test single wound with EOS? Is this a thing?
* Confirm recycle_ms when used with autofire rules
* Test game start & restart process
* Add a test for the "no config" case
* slots
* Find all the TODOs
* Implement the soft reset at startup / restart
* Figure out the config file errors / error logs to FAST site / etc.
* Single LED update task

Failing tests are
ERROR: test_scoring (mpf.tests.test_CustomCode.TestCustomCode)
And the FAST EXP and v1 tests
2 changes: 1 addition & 1 deletion docs/code/machine_code.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ match up to any of MPF's built in devices. The elevator and claw unloader
in *Demolition Man* is a good example, and what we'll use here.

(You can read about how to download and run *Demo Man* in the
`example games section <http://docs.missionpinball.org/example_games>`_
`example games section <https://missionpinball.org/example_games/>`_
section of the MPF User Documentation.)

Here's how to create a custom code class:
Expand Down
6 changes: 4 additions & 2 deletions docs/dev/event_annotations.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,7 @@ document the event in code and in the docs, we use a custom docblock annotation:
reason: The reason for this awesomeness is stated here.
'''
The event will be automatically added to the `event reference <http://docs.missionpinball.org/events/index.html>`_
on the next update of the documentation.
The event should be added to the `event reference <https://missionpinball.org/events/>`_
on missionpinball.org.

Note: As of June 2023, the events list on missionpinball.org is no longer automatically generated.
10 changes: 5 additions & 5 deletions docs/dev/mc.widget_player.rst
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ So here is our base ``widget`` from the config file that we will be using.
x: 35
Refer to the widget section in the docs for more info on how to set it up:
http://docs.missionpinball.org/displays/widgets/index.html
https://missionpinball.org/mc/widgets/

Writing the settings to show/play this widget in code
^^^^^^^^^^^^^^^
Expand All @@ -69,7 +69,7 @@ When it comes to the settings we start with the following:
You need to add ``action`` and ``key`` to make the ``widget`` work.
Refer to the ``widget_player`` section for more info on these and what other functions can be added:
http://docs.missionpinball.org/config/widget_player.html
https://missionpinball.org/config_players/widget_player/

Now you can show the pre-defined widget from the config file.

Expand Down Expand Up @@ -107,7 +107,7 @@ The following code shows how to override an image and x-coordinate
You can ``change``/``add`` everything this way from the related type of ``widget``, or the common settings for all widgets.
Refer to the common settings for a overview of all settings.

http://docs.missionpinball.org/displays/widgets/common_settings.html
https://missionpinball.org/mc/widgets/common_settings/

Just make sure you format this way

Expand All @@ -126,8 +126,8 @@ or create an animation from within the widget.
Creating animation from predefined animations
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The easiest thing is to change/add pre-defined animations.
See capther 9 of widget animation for more info on this:
http://docs.missionpinball.org/displays/widgets/animation.html
See chapter 9 of widget animation for more info on this:
https://missionpinball.org/mc/widgets/animation/

.. code-block:: python
Expand Down
6 changes: 3 additions & 3 deletions docs/index.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Mission Pinball Framework |version| Developer Documentation
===========================================================

This is the developer documentation for the `Mission Pinball Framework <http://missionpinball.org>`_ (MPF), version
This is the developer documentation for the `Mission Pinball Framework <https://missionpinball.org>`_ (MPF), version
|version|. Click the "Read the Docs" link in the lower left corner for other versions & downloads.

This documentation is for people who want to want to add custom Python code & game logic to their machine and for
Expand All @@ -12,7 +12,7 @@ people who want to contribute to MPF itself.
**This is DEVELOPER documentation, not general USER documentation!**

This documentation is for people writing custom Python code for MPF.
If you're a general *user* of MPF, read the `MPF User Documentation <http://docs.missionpinball.org>`_ instead.
If you're a general *user* of MPF, read the `MPF User Documentation <https://missionpinball.org>`_ instead.

Video about custom code in MPF:

Expand Down Expand Up @@ -100,4 +100,4 @@ Index
:hidden:
:caption: USER DOCUMENTATION

User Documentation <http://docs.missionpinball.org>
User Documentation <https://missionpinball.org>
2 changes: 1 addition & 1 deletion docs/testing/tutorial/1.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Testing Tutorial Step 1. Installing MPF
=======================================

`Step 1 of the MPF Tutorial <http://docs.missionpinball.org/en/dev/tutorial/1_install_mpf.html>`_ is just about
`Step 1 of the MPF Tutorial <https://missionpinball.org/tutorial/1_install_mpf>`_ is just about
getting MPF installed, so there's nothing to do yet for testing. Really we just include Step 1 here because if
we didn't it would be confusing as to why the tutorial starts on Step 2. :)

Expand Down
2 changes: 1 addition & 1 deletion docs/testing/tutorial/2.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Testing Tutorial Step 2. Create your machine folder
===================================================

`Step 2 of the MPF Tutorial <http://docs.missionpinball.org/en/dev/tutorial/2_creating_a_new_machine.html>`_ is where
`Step 2 of the MPF Tutorial <https://missionpinball.org/tutorial/2_creating_a_new_machine>`_ is where
you create your machine folder and get MPF up and running with an empty config. Since it ends with MPF running and the
attract mode being active, we can actually write a test for it!

Expand Down
2 changes: 1 addition & 1 deletion docs/testing/writing_machine_tests.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ your tests pass again!)
.. rubric:: Tutorial for writing your own tests

We have a complete tutorial which walks you through writing tests for your own machine. This tutorial
conveniently follows the general MPF tutorial at `<docs.missionpinball.org>`_. Each step here matches the
conveniently follows the general MPF tutorial at `<https://missionpinball.org/tutorial>`_. Each step here matches the
step with the same number there. (Just make sure you'll looking at the same version of the documentation
in both places.)

Expand Down
21 changes: 9 additions & 12 deletions mpf/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,38 +10,35 @@
"""

__version__ = '0.56.0'
__version__ = '0.57.0.dev5'
'''The full version of MPF.'''

__short_version__ = '0.56'
__short_version__ = '0.57'
'''The major.minor version of MPF.'''

__bcp_version__ = '1.1'
'''The version of BCP this build of MPF uses.'''

__config_version__ = '5'
__config_version__ = '6'
'''The config file version this build of MPF uses.'''

__show_version__ = '5'
__show_version__ = '6'
'''The show format version this build of MPF uses.'''

# pylint: disable-msg=invalid-name
version = "MPF v{}".format(__version__)
version = "Mission Pinball Framework (FAST Dev Fork) v{}".format(__version__)
'''A friendly version string for this build of MPF.'''
# TODO change back before mainlining

# pylint: disable-msg=invalid-name
extended_version = "MPF v{}, Config version:{}, Show version: {}, " \
extended_version = "Mission Pinball Framework v{}, Config version:{}, Show version: {}, " \
"BCP version:{}".format(__version__, __config_version__,
__show_version__, __bcp_version__)
'''An extended version string that includes the MPF version, show version,
and BCP versions used in this build of MPF.'''

if "dev" in __version__:
# pylint: disable-msg=invalid-name
log_url = "https://docs.missionpinball.org/en/dev/logs/{}.html"
else:
# pylint: disable-msg=invalid-name
log_url = "https://docs.missionpinball.org/en/{}/logs/{{}}.html".format(__short_version__)
log_url = "https://missionpinball.org/logs"
# TODO make dynamic "https://docs.missionpinball.org/en/dev/logs/{}.html"

__api__ = ['version',
'__short_version__',
Expand Down
3 changes: 1 addition & 2 deletions mpf/benchmarks/machine_files/events/config/config.yaml
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
#config_version=5

#config_version=6
2 changes: 1 addition & 1 deletion mpf/benchmarks/machine_files/shows/config/config.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#config_version=5
#config_version=6
lights:
light_1:
number: 1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#show_version=5
#show_version=6
- duration: .001
lights:
light_1: red
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#show_version=5
#show_version=6
- duration: .001
lights:
(led): red
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#show_version=5
#show_version=6
- duration: .001
lights:
(tag1): (color1)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#show_version=5
#show_version=6
- duration: .001
lights:
(tag): (color)
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#config_version=5
#config_version=6
switches:
s_switch_standard_playfield:
number: 1
Expand Down
6 changes: 3 additions & 3 deletions mpf/commands/create_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ def create_machine_config_structure(config_name, machine_path):
os.makedirs(os.path.normpath(machine_path))
os.makedirs(os.path.normpath(os.path.join(machine_path, "config")))
with open(os.path.normpath(os.path.join(machine_path, "config", "config.yaml")), "w") as f:
f.write("#config_version=5")
f.write("#config_version=6")

# create test folder
os.makedirs(os.path.normpath(os.path.join(machine_path, "tests")))
Expand All @@ -205,7 +205,7 @@ def create_show_structure(show_name, shows_dir, machine_path):
"""Create the basic hierarchy of a new show folder."""
if not os.path.exists(shows_dir):
os.makedirs(shows_dir)
file_content = "#show_version=5"
file_content = "#show_version=6"
show_file_name = "{}.yaml".format(show_name)
config_path = os.path.normpath(os.path.join(machine_path, "shows", show_file_name))
Command.write_config_file(config_path, file_content)
Expand All @@ -217,7 +217,7 @@ def create_mode_structure(mode_name, mode_path, machine_path):
# create config folder
os.makedirs(os.path.normpath(os.path.join(machine_path, "modes", mode_name, "config")))
# create config file
file_content = """#config_version=5
file_content = """#config_version=6
mode:
start_events: ball_started
Expand Down
Loading

0 comments on commit a069a00

Please sign in to comment.