Skip to content

Commit

Permalink
Merge branch 'master' into rn-slow-3/8
Browse files Browse the repository at this point in the history
  • Loading branch information
mscuthbert authored Oct 4, 2022
2 parents ab68d73 + 5417b3c commit bebc2b5
Show file tree
Hide file tree
Showing 303 changed files with 9,343 additions and 7,157 deletions.
8 changes: 0 additions & 8 deletions .codeclimate.yml

This file was deleted.

5 changes: 5 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,15 @@ omit =

[report]
exclude_lines =
if TYPE_CHECKING:
if t.TYPE_CHECKING:
if __name__ == .__main__.:
if debug:
if self.debug:
if self.show:
def x_test
def xtest
pragma: no cover
class TestExternal(unittest.TestCase):
class TestSlow(unittest.TestCase):

7 changes: 4 additions & 3 deletions .github/workflows/maincheck.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,10 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.8, 3.9, "3.10"] # "3.10" must be in quotes to not have it eval to 3.1
# "3.11.0-rc.2" waiting for scipy.
python-version: ["3.10.6", "3.10"] # "3.10" must be in quotes to not have it eval to 3.1
steps:
- uses: actions/setup-python@v2
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- uses: actions/checkout@v2
Expand All @@ -27,7 +28,7 @@ jobs:
- name: Run Main Test script
run: python -c 'from music21.test.testSingleCoreAll import ciMain as ci; ci()'
- name: Coveralls
if: ${{ matrix.python-version == '3.9' }}
if: ${{ matrix.python-version == '3.10.6' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COVERALLS_SERVICE_NAME: github
Expand Down
15 changes: 9 additions & 6 deletions .github/workflows/pythonpylint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,10 @@ jobs:
steps:
- uses: actions/checkout@v1
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: '3.8'
python-version: '3.10'
cache: 'pip'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
Expand All @@ -37,9 +38,10 @@ jobs:
steps:
- uses: actions/checkout@v1
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: '3.8'
python-version: '3.10'
cache: 'pip'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
Expand All @@ -55,9 +57,10 @@ jobs:
steps:
- uses: actions/checkout@v1
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: '3.10'
python-version: '3.10.6' # pinned until mypy 0.990 is released
cache: 'pip'
- name: Install mypy
run: |
python -m pip install mypy
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ __pycache__/

# OSX
.DS_Store
**/.DS_Store

# C extensions
*.so
Expand All @@ -40,6 +41,7 @@ develop-eggs
lib
lib64
__pycache__
**/__pycache__
venv

# Installer logs
Expand Down
3 changes: 0 additions & 3 deletions .gitignore_global

This file was deleted.

16 changes: 13 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,17 @@ own projects that import and extend `music21`.
[Code of Conduct](README.md)


## Preparing to Contribute ##

Be sure to install all of the requirements in `requirements_dev.txt` via:

```
pip3 install -r requirements_dev.txt
```

There are several tools needed for fully testing music21 that aren't included
in the standard `requirements.txt`.

## Issue Tickets ##

Please use the provided templates for bug reports or feature proposals. For issues
Expand Down Expand Up @@ -94,9 +105,8 @@ Conventions:
- line continuation characters (`\`) are not allowed; use open parentheses.
- prefer f-strings to `.format()`. The `%` interpolation is no longer allowed.
- annotating types is required in new code, and encouraged to be added to older code.
- e.g. `self.counter: int = 0` or `def makeNoises() -> t.List['noise.Noise']:`
- e.g. `self.counter: int = 0` or `def makeNoises() -> list['noise.Noise']:`
- The typing library should always be imported as `t`.
- Until `music21` no longer supports Python 3.8, use `t.List[]` rather than `list[]`.
- Until `music21` no longer supports Python 3.9, use `t.Optional[x]` rather than `x|None`.
- prefer enums to string configurations
- in music21.common.enums, there is a StrEnum class for nearly-backwards compatible
Expand Down Expand Up @@ -125,7 +135,7 @@ Conventions:
- Exceptions may be granted if the class structures follow names that are in common musical use
but whose real world objects do not follow this principle. For instance, a `Manx` is a subclass
of `Cat` without `self.tail`. Sometimes, however, rewriting the superclass might be possible
(perhaps `self.tail: Optional[Tail]`).
(perhaps `self.tail: t.Optional[Tail]`).
- `Music21` was originally designed without this principle in mind, so you will find
parts of the system that do not follow LSP and for backwards compatibility never will.
I (Myke) have personally apologized to Barbara Liskov for my past ignorance.
Expand Down
7 changes: 0 additions & 7 deletions MANIFEST.in

This file was deleted.

28 changes: 18 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
# music21 #

music21 -- A Toolkit for Computational Musicology
`music21` -- A Toolkit for Computer-Aided Musical Analysis and
Computational Musicology

Copyright © 2006-2022, Michael Scott Asato Cuthbert and cuthbertLab
Copyright © 2006-2022, [Michael Scott Asato Cuthbert](http://www.trecento.com)

For more information, visit:
https://web.mit.edu/music21

To try it out, visit:
https://tinyurl.com/m21colab
https://tinyurl.com/m21colab (runs music21 v7)

And to install, see:
https://web.mit.edu/music21/doc/usersGuide/usersGuide_01_installing.html

Music21 runs on Python 3.8+. Use version 4 on Python 2 or Py3.4, version 5
on Py3.5, version 6 on Py3.6, version 7 on Py3.7.
`Music21` runs on Python 3.10+. Use version 4 on Python 2 or Py3.4, version 5
on Py3.5, version 6 on Py3.6, version 7 on Py3.7, version 8 on Py3.8/Py3.9.

Released under the BSD (3-clause) license. Music21 may also be used
under the LGPL license. See LICENSE.
Released under the BSD (3-clause) license. See LICENSE.
Externally provided software (including the MIT licensed Lilypond/MusicXML test Suite) and
music encoding in the corpus may have different licenses and/or copyrights.
A no-corpus version of music21 is available also on GitHub.
A no-corpus version of `music21` is available also on GitHub.

[![Build Status](https://github.com/cuthbertLab/music21/workflows/maincheck/badge.svg)](https://github.com/cuthbertLab/music21)
[![Lint Status](https://github.com/cuthbertLab/music21/workflows/PyLint/badge.svg)](https://github.com/cuthbertLab/music21)
Expand All @@ -42,7 +42,7 @@ See: https://groups.google.com/forum/#!forum/music21list

## Community Code of Conduct ##

Music21 encourages contributions, discussions, and usage from all people interested in
`Music21` encourages contributions, discussions, and usage from all people interested in
music and computers. This encouragement extends to all people regardless of (among other aspects)
gender, race, sexual orientation, disability, religion, appearance, veteran status,
gender identity, socioeconomic status, or nationality.
Expand All @@ -57,7 +57,15 @@ sometimes make mistakes and will, in general, accept sincere regrets for such ca
Blatant or repeated violations of the code will result in the removal of the
contributor’s participation in the community.

The maintainers of music21 and associated sites will commit themselves to enforcing
The maintainers of `music21` and associated sites will commit themselves to enforcing
this code of conduct. Users who notice violations, including instances of abuse,
harassment, or otherwise unacceptable behavior are requested to contact cuthbert@mit.edu.
Maintainers will respect confidentiality with regard to reports.

## Acknowledgements ##

The development of `music21` has been supported by
the generosity of the Seaver Institute and the
National Endowment for the Humanities. MIT's Music and Theater Arts Section
and the School of Humanities, Arts, and Social Sciences encouraged Cuthbert
in its development.
Loading

0 comments on commit bebc2b5

Please sign in to comment.