Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use GitHub actions not travis #67

Merged
merged 29 commits into from
Dec 25, 2023
Merged

Conversation

nigelmegitt
Copy link
Collaborator

Incorporates some other fixes to make tests pass.

nigelmegitt and others added 22 commits December 25, 2023 10:51
* Add service_identity module dependency

Removes a test warning, improves twisted's ability to verify certificates.

* Fix ebu#474

Use relative links to templates.
Put message payload into the UIP display so that the receiver can read it without having to open the message XML up.

* Remove requirement for pytest-capturelog, removed from

No longer needed because it has been merged into the core.

* Refactor proxy handling for client

Track a change to proxy handling in Autobahn / twisted for ebu#477. There's probably a more elegant way, but this works for now... Lacking a test, but have verified it locally.

* More elegant fix for proxy

We don't need the HTTPProxyConfig object at all anymore, just a `dict` will do.

* Don't call fixtures directly

Closes ebu#490.

Calling fixtures directly is deprecated, this solution described at
https://docs.pytest.org/en/latest/deprecations.html#calling-fixtures-directly
seems to work, creating a named fixture rather than defining the "then"
step as a fixture directly.

* Restrict autobahn to versions before 18

Temporarily fixes ebu#496, prior to addressing the problem properly anyway.

* Restrict autobahn to versions before 18

Temporarily fixes ebu#496, prior to addressing the problem properly anyway.

* Issue 447 resequencer documentation (ebu#515)

* Fix indentation warning

* Fix underline length warning

* Fix document generation warning

* Add Resequencer Node documentation

Closes ebu#447 .

* Address review comment

Merging now because this affects documentation only, and this allows progress to continue on other pull requests.

* Handle timing types in elements without crashing (ebu#516)

* Fix ebu#492

* Define the type of `ebuttm:documentStartOfProgramme` correctly.
* When processing a timing type outside of the context of an attribute, bypass the timebase validation.

This is possibly a temporary hack, since element timing validation might be needed one day, but since we don't do anything with metadata elements, this isn't a disaster (yet).

* Add tests

Checks that including a valid time in a `ebuttm:documentStartOfProgramme` element does not cause a processing or validation error.

* Issue 507 timedelta (ebu#508)

* Correctly interpret decimal fractions of seconds

Fixes ebu#507 by interpreting decimal fractions of seconds as milliseconds and adding tests to verify this behaviour for 3 and 4 decimal places.

Removes `_int_or_none` which doesn't seem to be needed

* Specify incompatible attributes (ebu#518)

Fixes ebu#514.

* Resequencer: allow to immediately issue documents (ebu#510)

So far the resequencer starts to regularly issue documents only after
the first EBU-TT Live document has been received. However for some use
cases this might be inconvenient as an active document must exist at all
times e.g. when creating segments for an MPEG-DASH stream. The reason
for documents being issued only after the first received EBU-TT Live
document is that certain parameters of that document are used for
initialisation.

This commit adds a new configuration parameter that specifies a document
which will be used for initialisation (instead of the first received
EBU-TT Live document). Therefore the resequencer will immediately (be
able to) start issuing documents after its creation.

Closes ebu#505.

* Resequencer: fix sequence number 1 if no content (ebu#509)

While the EBUTT3Splicer is provided with the current sequence number
stored/incremented by the Resequencer, the `create_compatible_document`
method so far refers to the sequence number stored internally by
EBUTT3DocumentSequence instead. This leads to a sequence number of 1 in
the issued output document if no subtitle content is available.

To align with the correct (strictly monotonic increasing) sequence
number, always use the one stored by the Resequencer.

Fixes ebu#502.

* Up version to 2.1.2
Merging without review on the basis that this version actually builds, and _some_ CI environment is much better than _no_ CI! Also good to get @spoeschel 's `release/2.1.3` work into the wild. It's been too long.

Some experimentation involved in this merge since I cannot verify that the GitHub action to publish to gh-pages will work except by doing it!

* Fix nltk dependency

Use the last version that supports Python 2.7.

Fixes ebu#533.

* Fix Pytest-BDD dependency

As versions newer than 3.2.1 don't work with the test suite, use the
last working version, as a maintenance fix to this legacy branch.

Addresses ebu#537 regarding the legacy Python 2 branch.

* Pin used Python 2 packages

Prevents issues like ebu#533 in the future, as it is expected that further
dependencies will remove Python 2 support in the future.

The updated file has been generated using `pip freeze` and replacing the
repository path of the toolkit by `.`. The `pkg-resources==0.0.0` line
has been removed, as it was present due to [a bug](pypa/pip#4022).

The `--index-url` parameter has been removed, as the specified URL
meanwhile forwards to the default package index.

Implements ebu#538.

* Setup GitHub Actions CI workflows for test and for docs and UI generation.

Create test.yml
Update README.md to fix the build status badge
Create docs_and_ui.yml
Push docs to gh-pages on success
Add coveralls
Add Slack notification

* Up version to 2.1.3

Co-authored-by: Stefan Pöschel <[email protected]>
* Fix docs build on master, include extra badge

* fix the ref
Not sure how this scenario arises, but it seems to, in tests. Guessing there's a race condition.
* Add service_identity module dependency

Removes a test warning, improves twisted's ability to verify certificates.

* Fix ebu#474

Use relative links to templates.
Put message payload into the UIP display so that the receiver can read it without having to open the message XML up.

* Remove requirement for pytest-capturelog, removed from

No longer needed because it has been merged into the core.

* Refactor proxy handling for client

Track a change to proxy handling in Autobahn / twisted for ebu#477. There's probably a more elegant way, but this works for now... Lacking a test, but have verified it locally.

* More elegant fix for proxy

We don't need the HTTPProxyConfig object at all anymore, just a `dict` will do.

* Don't call fixtures directly

Closes ebu#490.

Calling fixtures directly is deprecated, this solution described at
https://docs.pytest.org/en/latest/deprecations.html#calling-fixtures-directly
seems to work, creating a named fixture rather than defining the "then"
step as a fixture directly.

* Restrict autobahn to versions before 18

Temporarily fixes ebu#496, prior to addressing the problem properly anyway.

* Restrict autobahn to versions before 18

Temporarily fixes ebu#496, prior to addressing the problem properly anyway.

* Issue 447 resequencer documentation (ebu#515)

* Fix indentation warning

* Fix underline length warning

* Fix document generation warning

* Add Resequencer Node documentation

Closes ebu#447 .

* Address review comment

Merging now because this affects documentation only, and this allows progress to continue on other pull requests.

* Handle timing types in elements without crashing (ebu#516)

* Fix ebu#492

* Define the type of `ebuttm:documentStartOfProgramme` correctly.
* When processing a timing type outside of the context of an attribute, bypass the timebase validation.

This is possibly a temporary hack, since element timing validation might be needed one day, but since we don't do anything with metadata elements, this isn't a disaster (yet).

* Add tests

Checks that including a valid time in a `ebuttm:documentStartOfProgramme` element does not cause a processing or validation error.

* Issue 507 timedelta (ebu#508)

* Correctly interpret decimal fractions of seconds

Fixes ebu#507 by interpreting decimal fractions of seconds as milliseconds and adding tests to verify this behaviour for 3 and 4 decimal places.

Removes `_int_or_none` which doesn't seem to be needed

* Specify incompatible attributes (ebu#518)

Fixes ebu#514.

* Resequencer: allow to immediately issue documents (ebu#510)

So far the resequencer starts to regularly issue documents only after
the first EBU-TT Live document has been received. However for some use
cases this might be inconvenient as an active document must exist at all
times e.g. when creating segments for an MPEG-DASH stream. The reason
for documents being issued only after the first received EBU-TT Live
document is that certain parameters of that document are used for
initialisation.

This commit adds a new configuration parameter that specifies a document
which will be used for initialisation (instead of the first received
EBU-TT Live document). Therefore the resequencer will immediately (be
able to) start issuing documents after its creation.

Closes ebu#505.

* Resequencer: fix sequence number 1 if no content (ebu#509)

While the EBUTT3Splicer is provided with the current sequence number
stored/incremented by the Resequencer, the `create_compatible_document`
method so far refers to the sequence number stored internally by
EBUTT3DocumentSequence instead. This leads to a sequence number of 1 in
the issued output document if no subtitle content is available.

To align with the correct (strictly monotonic increasing) sequence
number, always use the one stored by the Resequencer.

Fixes ebu#502.

* Up version to 2.1.2
Merging without review on the basis that this version actually builds, and _some_ CI environment is much better than _no_ CI! Also good to get @spoeschel 's `release/2.1.3` work into the wild. It's been too long.

Some experimentation involved in this merge since I cannot verify that the GitHub action to publish to gh-pages will work except by doing it!

* Fix nltk dependency

Use the last version that supports Python 2.7.

Fixes ebu#533.

* Fix Pytest-BDD dependency

As versions newer than 3.2.1 don't work with the test suite, use the
last working version, as a maintenance fix to this legacy branch.

Addresses ebu#537 regarding the legacy Python 2 branch.

* Pin used Python 2 packages

Prevents issues like ebu#533 in the future, as it is expected that further
dependencies will remove Python 2 support in the future.

The updated file has been generated using `pip freeze` and replacing the
repository path of the toolkit by `.`. The `pkg-resources==0.0.0` line
has been removed, as it was present due to [a bug](pypa/pip#4022).

The `--index-url` parameter has been removed, as the specified URL
meanwhile forwards to the default package index.

Implements ebu#538.

* Setup GitHub Actions CI workflows for test and for docs and UI generation.

Create test.yml
Update README.md to fix the build status badge
Create docs_and_ui.yml
Push docs to gh-pages on success
Add coveralls
Add Slack notification

* Up version to 2.1.3

Co-authored-by: Stefan Pöschel <[email protected]>
pyproject.toml doesn't import values from external files easily. Instead, specify description, namd and version in pyproject.toml and fetch them in project.py so that they can be exposed to other scripts, including when building the documentation.
Now using pyproject.toml
And remove no longer needed requirements.txt
@nigelmegitt nigelmegitt merged commit 17040a1 into master Dec 25, 2023
3 checks passed
@nigelmegitt nigelmegitt deleted the use-github-actions-not-travis branch December 25, 2023 17:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant