Open MarcelWilson opened 12 months ago
@kimberlythegeek / @davehunt - is Moz still maintaining this or has the project been sunsetted?
Alternatively, can this project be shifted to a community ownership model? Happy to re-take the reigns.
I ended up forking the project as an alternatively named package primarily for myself but went ahead and published it to pypi in case it's useful for anyone else. (selenium-axe-python)
I was the architect of axe-selenium-python and core maintainer. I lost access after leaving Mozilla. I'll contact moz via other channels to understand their intent with this project.
For what it’s worth, we’ve been investigating using this package for Django (django#16372), so I’d love to know what the maintenance status is as well – and help if help is needed.
Mozilla staff are attending an All Hands meeting next week. I don't expect to hear back until after their meetings. The gears are in motion, we should receive a status update shortly. I appreciate everyone's patience while we get this sorted out.
I can confirm that this project is no longer being maintained by anyone at Mozilla. I fully support @m8ttyB's suggestion of handing this over to a new owner or community for future development. My suggestion would be to initiate a repository transfer. If others are in agreement, I believe we would just need to know the new owner.
thx @davehunt. I'm working to track down @kimberlythegeek to discuss the pypi maintainers list.
An open question to the community - @MarcelWilson + @thibaudcolas: Deque's Python bindings appear to have significantly improved over the years. The initial goals of this project were to provide Python bindings for axe-core, where Deque (if I remember correctly) only supported JS at the time. This gap has narrowed quite a bit.
Is there an intrinsic reason to continue using axe-selenium-python
instead of Deque's axe-devtools-api
? I'm not against reviving this project, but I want a sanity check.
I want to nudge this thread again -- I have not been able to locate @kimberlythegeek yet. I'll continue to work on getting ahold of her. In the meantime, @MarcelWilson or @thibaudcolas, have you given my question some thought? Should we suggest the community begin using axe-devtools-api
instead of this project?
@m8ttyB thanks for following up! I’ve not come across Deque’s axe-devtools-api
before. It seems to be a different product? Axe DevTools doesn’t seem to be open source / is only available on an authenticated packages registry. axe-core
is what I’m looking for Python/Selenium bindings for. Deque seems to have a lot of language-specific axe-core bindings these days but not one for Python/Selenium. There is a third-party axe-core-python though, which advertises Selenium and Playwright.
As far as ownership, the options I can see working from my side are:
We’d then try to replicate this as appropriate in PyPI, set up an Organization account and invite the relevant maintainers.
Hey all, my turn to nudge :)
Hi @thibaudcolas -- I was hoping @MarcelWilson might have a moment to weigh in.
You make fine points, particularly around being pushed towards an authenticated package registry that ties usage to Deque. Is this a blocker? The underlying integration they use to inject Axe with Selenium appears curiously similar to our solution.
Again, I am not dismissing the value of axe-selenium-python
; I just want to be clear that folks are comfortable creating/maintaining a solution that roughly parallel to Deque's that still relies on axe-core
. Reinvigorating community engagement on this project would give us more fine-grained control and move it out of the pay-walled model that Deque's model suggests.
If you're a 👍🏼, let's move forward, can you approach the Django project to engage in a conversation and take a temperature check? I agree with your assessment. Once it's decided which organization to host this project under, Mozilla folks will assist with transferring the project - ty to @davehunt & @pdehaan.
We’d then try to replicate this as appropriate in PyPI, set up an Organization account and invite the relevant maintainers.
There is a mechanism in place to recover abandoned pypi namespaces. I will begin the process.
@m8ttyB I'm not against paid libraries, but unfortunately it would be a non-starter for my projects (one of which is also open source).
Personally I would love to see axe-selenium-python
continue to thrive. It already seems to have roots, just needs a little TLC. (it would also mean I can ditch my forked version 😆)
ty @MarcelWilson. Let's do it.
I love the efforts everyone is making here to push this forward. I would be happy to volunteer to help in any manner possible and want to contribute some features inspired by https://github.com/pamelafox/pytest-axe-playwright-snapshot, majorly interested in having inbuilt snapshot testing as starters.
Quick update – took me a while but this is now in front of the right Django people for review. I’ll keep you all posted.
Brilliant, ty. That's great news.
Hi folks, I have good and bad news. The bad news is we can’t get this under the django organization in GitHub, because of the concerns I mentioned earlier about there being a package on there that’s not Django-related enough. The good news is – we can still proceed with the other options I mentioned :)
- A new dedicated organisation
- A personal account as a last resort (not keen on the bus factor)
Now I’m not keen on the personal account because of the bus factor – so I think the "separate organisation" is the way to go. I’m happy to set that up if that works for others here. Over the last few months I’ve had a good experience moving django-recaptcha to this type of model.
@m8ttyB what do you think? If this works for you, you can initiate the transfer to me and I’ll take it from there, coordinating with other volunteer maintainers to set up the package in a separate org. And then go through the needed maintenance.
For reference, here are people affiliated with Django who have offered to help maintain this: @tushar5526 @thibaudcolas @knyghty @sabderemane. And @MarcelWilson if you’re up for it, the more the merrier.
I agree a separate github org would make the most sense.
One very minor correction, I'm not affiliated with Django. I use the axe in conjunction with selenium.
I mention this because I feel it's important that the purpose of the package isn't/shouldn't be specifically limited to one umbrella.
@m8ttyB 👋 checking in where we’re at with this – do you think we could make the GitHub + PyPI transfer happen? I’m happy to have the package transferred to my personal account and take it from there, or you can create a new separate organization yourself and add the above people to it.
Re the PyPI package, same. You mentioned a mechanism to recover packages there, I’m not aware of it but am happy to take care of that if needed.
Oi vey, I apologize. This conversation fell off my map, and messages were sent to dev/null.
@davehunt, can you help Mozilla formalize the transfer of axe-selenium-python
to @thibaudcolas?
/cc @pdehaan
I've filed a support request with PyPI to initiate the transfer of the maintainer role. Once completed, we'll coordinate a community maintainer model for the package.
I've opened a ticket for transferring this repository to @thibaudcolas.
Excellent! :) Yes, as soon as the transfer is done I’ll proceed with creating an org for it, with the people listed above sharing access.
There's some process involved in transferring a repository, which makes me wonder if it's worth the effort. If we're able to get access to the PyPI project, could we archive this repository and allow a fork to become the canonical repository? Apparently this approach has been used before. What do you think?
@davehunt with the caveat that I don’t have context on what your process involves, nor on how PyPI package transfers work, that seems ok to me.
Here’s what I think we would lose, in rough order of value:
/mozilla-services/axe-selenium-python
#<number>
mentionsI’d like to see mitigations in place for items 1. and 2. if possible. I’d run an automated script to recreate placeholder issues for all existing issues, with a link pointing to their source. And it’d be nice if on the existing repository, I could comment with a link to the new repo before it’s archived. And signposting on the README before archival.
Be great if we could rely on GitHub’s support for all of this, but if not, I’ve created axe-selenium-python/axe-selenium-python-fork for now as a placeholder, which I’ll rename if we proceed with this.
Is this project actively being maintained? I see a couple PRs submitted from last year without any movement.