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

Release 0.4 #409

Merged
merged 141 commits into from
Oct 24, 2024
Merged

Release 0.4 #409

merged 141 commits into from
Oct 24, 2024

Conversation

jernst
Copy link
Member

@jernst jernst commented Oct 24, 2024

No description provided.

steve-bate and others added 30 commits July 7, 2024 10:52
* Experimental (PoC) version of Mastodon API Node

* Changed time.sleep to use retry_interval

* Support for Mastodon node test

* Guarded import kludge
… find out when we push.

Also added note about bugs.
* Draft for release howto

* As I've worked with this list for today's release, obviously it turned out to have many bugs. This is better.

---------

Co-authored-by: Johannes Ernst <git@j12t.org>
Co-authored-by: Johannes Ernst <git@j12t.org>
Co-authored-by: Johannes Ernst <git@j12t.org>
Co-authored-by: Johannes Ernst <git@j12t.org>
…t are on remote servers (#243)

* Add ssh support for ubos-admin commands so we can drive UbosNodes that run on remote servers.

* UbosNodeDriver now unprovisions, no need to do this in the WordPressPlusActivityPubPluginUbosNodeDriver
Also, the WordPress Node does not depend on UBOS; renamed

---------

Co-authored-by: Johannes Ernst <git@j12t.org>
* Allow overriding PYTHON executable path

* Allow overriding other configuration variables

---------

Co-authored-by: Matthew Exon <git.mexon@spamgourmet.com>
Co-authored-by: Johannes Ernst <git@j12t.org>
…. Let's only use create- (#246)

Co-authored-by: Johannes Ernst <git@j12t.org>
* Move some things around to make test setup easier (isolate @test etc annotation functionality)
Allows to remove env var workaround for selective nodedriver loading
Adding some tests

* .gitignore

---------

Co-authored-by: Johannes Ernst <git@j12t.org>
…neral-purpose mechanism that also works for mechanisms like "machinectl shell" or ssh with non-standard flags. (#249)

Co-authored-by: Johannes Ernst <git@j12t.org>
* More appname as parameter changes and related

* Lint improvements

---------

Co-authored-by: Johannes Ernst <git@j12t.org>
Skip tests if no mastodon config is present.

Co-authored-by: Steve Bate <svc-atlassian@stevebate.net>
Co-authored-by: Matthew Exon <git.mexon@spamgourmet.com>
Transcript won't be written in this case.

Co-authored-by: Steve Bate <svc-atlassian@stevebate.net>
Co-authored-by: Steve Bate <svc-atlassian@stevebate.net>
…ion. (#268)

Co-authored-by: Steve Bate <svc-atlassian@stevebate.net>
Added diagnostics for missing HTML templates.

Co-authored-by: Steve Bate <svc-atlassian@stevebate.net>
Co-authored-by: Steve Bate <svc-atlassian@stevebate.net>
1. Add return type annotation (helps with IDE)
2. Return the annotated type (so import works)

Co-authored-by: Steve Bate <svc-atlassian@stevebate.net>
Co-authored-by: Steve Bate <svc-atlassian@stevebate.net>
…d coding them (#252)

One thing led to another, and this got a bit long ... there are still some rough edges but I feel it's better to merge now before this gets even further out of hand. Major changes:

    manual NodeDriver registration for built-in NodeDrivers
    Transcript version check
    our own private certificate authority, integrated with system trust store on UBOS and venv everywhere
    more consistent handling of Node parameters and parameter completions
    MastodonMixin has become a NodeWithMastodonAPI, which in turn is a subclass of FediverseNode. This makes things simpler including parameter handling and Node/NodeDriver implementations
    Automated user provisioning for Mastodon on UBOS, works consistently for ActivityPub Actors and WebFinger accounts
    No more need for the restore-from-backup hack for WordPress because we now use wp-cli to fix the permalink scheme at run-time
    Facade mechanism for ActivityStreams objects based on underlying JSON -- this may be a good compromise between typed / untyped and invalid data
    Clarified the semantics of some of the Node API calls in the comments and adjusted code accordingly
    always use rolename, not nickname
    Generate UBOS Site JSON dynamically with new ids, certs, hostnames instead of hard coding -- the original purpose of this branch.

Caveats:

    Recursive AS Collection resolution is untested, and needs its own tests because it's so complicated
    UBOS packages mastodon, wordpress need to be manually rebuilt, and wp-cli manually installed from Arch (updates are not in the UBOS repos yet)
Johannes Ernst and others added 29 commits October 14, 2024 11:43
…_until() and exposing the underlying polled functions. This simplifies things.

Split prompt_user into two functions, which can have more sane / lint-friendly signature and allows us to remove a bunch of cast()'s
… it gets in the way of straightforward debugging. (#391)

Co-authored-by: Johannes Ernst <git@j12t.org>
…l_until rimes out

Move poll_until into fediverse main package from utils
Add poll_but_not as the opposite function
All Mastodon API call HTTP headers are now lowercase
Mastodon API debug output also shows JSON responses
Better Mastodon API debug output in case of errors
Reorder methods on FediverseNode for better comprehensibility (#395)
Add some FediverseNode methods for next set of tests
Rename account_id_*validate to acct_uri_*validate for consistency
Add list-of validation functions

Co-authored-by: Johannes Ernst <git@j12t.org>
Add duration to test steps in report
…gainst one or more Constellations (#407)

* That makes it consistent with how we generate HTML matrix reports.
* TestPlanSession so now is more correctly called TestPlanSessionTemplate
* Generate a single HTML file for single-Constellation TestPlans, and N+1 HTML files for N-Constellation TestPlans
* Reorganize Serializers and jinja2 templates
* Update unit tests
* Lint improvements

---------

Co-authored-by: Johannes Ernst <git@j12t.org>
* Fix minor version comparison
* feditest version to only print the version, so it can be used in git checkout
* Consistent description of the project
* Update project version
* Make HTML report titles and H1's consistent
* Minor CSS
* Now called session_template not session; update Jinja2 template
* Better formatting of SpecLevel and InteropLevel in HTML
* To trigger CORS headers, the Origin header sent from the client must have a URI method
* Rename WebFingerQueryResponse -> WebFingerQueryDiagResponse
* Simplify multiple exceptions in WebFingerQueryDiagResponse
* Simplify ignoring exceptions of certain types in WebFinger tests so each test doesn't report other tests' exceptions
* Updating RELEASE-HOWTO

---------

Co-authored-by: Johannes Ernst <git@j12t.org>
@jernst jernst merged commit b5b5d39 into main Oct 24, 2024
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.

3 participants