Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/sopel-irc/sopel
:robot::speech_balloon: An easy-to-use and highly extensible IRC Bot framework. Formerly Willie.
https://github.com/sopel-irc/sopel
Oops! All Error Cases!
...were not covered by the test suite. That was the easiest 100% ever.
c66731f623e190aa9198dca7cc99a96151ff4d4e authored about 1 year ago by dgw <[email protected]>modules: rename built-in plugins to "builtins"
26d57faaf97bbda5baad3a7ad9b43d95310f94de authored about 1 year ago by dgw <[email protected]>Updated relevant plugin handling, documentation/examples, & test files.
d4a0efde1a4bdea03be265d5e23591b553a0ce76 authored about 1 year ago by dgw <[email protected]>
This bump to `pytest` is primarily to eliminate some deprecation
warnings from inside of `pytest...
86d67b2b05585b88e96006f5b72351e3458dc055 authored about 1 year ago by James Gerity <[email protected]>
Versions of setuptools before 66.1 used deprecated portions of `pkgutil`
that were removed in Py...
build, test: upgrade to vcrpy>=5 & refresh broken cassettes
eb5e029528060acbb045c543c81ad4c0ed17804e authored about 1 year ago by dgw <[email protected]>
This is *probably* the ideal solution to my issues with certain VCR
cassettes failing locally, s...
ip: remove plugin extracted to external package
166de9f3d5f89778f804ecf4689c199748a256d4 authored about 1 year ago by dgw <[email protected]>docs: basic tutorials
ef0a202d6caac97d4f9d70d64512e3ef5c47dba1 authored about 1 year ago by dgw <[email protected]>Pin `packaging` version
ae222ad4ef337c1ba6adb09666c6774a14e20777 authored about 1 year ago by dgw <[email protected]>
This version of `packaging` is chosen to resolve `mypy` failures with
older versions. It may be ...
CodeQL: restrict paths on which action should run
abc9322d993d53c5fa050552a0fb33a3681894a4 authored about 1 year ago by dgw <[email protected]>
Saves us from burning GHA minutes (4-5 min/run) on CodeQL analysis when
no files in the `sopel/`...
This starts a new set of tutorials for Plugin Author:
* "Your first plugin" introduce the very ...
32a3b4a13975169887ccb0af61df4eafdc9a7b73 authored about 1 year ago by Florian Strzelecki <[email protected]>e4c516695f7dccb4b99fed71b8de71bef82fcfe4 authored about 1 year ago by James Gerity <[email protected]>
CodeQL: only scan `sopel` directory
96891bf37d4f1a877e57a9d43d5bf189ca600526 authored about 1 year ago by dgw <[email protected]>No more false security warnings in test files.
979e42d05eb658f3d2959e2ecd5776edc2fcad6a authored about 1 year ago by dgw <[email protected]>docs, dev-requirements: upgrade sphinx and try to fix some type issues with documentation
8a60980e989695126e187593e6f79c272add2c7f authored about 1 year ago by dgw <[email protected]>lifecycle: issue deprecation notices in pre-releases
a91ed843f86aa812565c75bac52fc69db77f30d5 authored about 1 year ago by dgw <[email protected]>bot: add deprecation notice to SopelWrapper
981ceea0c0b01bdd77308edc519499be41e8b435 authored about 1 year ago by dgw <[email protected]>8060ab7121ff8dbddeac20ed595056fa448c137d authored about 1 year ago by James Gerity <[email protected]>
586202311c4cb3a38bd91c5c99e1ae9d43471fd1 authored about 1 year ago by James Gerity <[email protected]>
0c6f63c3126e050fc1213fcd5ee85b5a7f204728 authored about 1 year ago by James Gerity <[email protected]>
contrib: drop Python 3.7 from tox config
ec9691b3bf3c00ade012b89335193181ace819e2 authored about 1 year ago by dgw <[email protected]>278213fb53e7a28a2f5bd0431501d529b88adf15 authored about 1 year ago by James Gerity <[email protected]>
currency: replace `exchangerate.host` -> `open.er-api.com`
4c7b507d27fca5fb1396a40d406611b5544d6e27 authored about 1 year ago by dgw <[email protected]>tools.memories: remove obsolete LGTM tricks
f2e1366db6185d00d67f23b38742da761c587af2 authored over 1 year ago by dgw <[email protected]>README: fix link to *latest source* archive
116ce4a3f77698661ae9fe246f5383da7b5aaff3 authored over 1 year ago by dgw <[email protected]>The old link went to the latest *release*, not master.
0358b04e1048a5f4323bef2f15daaaa75cbc36ea authored over 1 year ago by dgw <[email protected]>search: fix cases where `.suggest` gets only one item back
df2009e2ad5f084c71d9017ee8f3f71b359c5a3d authored over 1 year ago by dgw <[email protected]>
We aren't using LGTM any more, and thus don't need to trick it into
suppressing a warning about ...
Tests now cover a case where the suggestion endpoint returns only one
value (`.suggest sopel irc...
`xmltodict` presents a response with only one `<CompleteSuggestion>`
element as just a plain Ord...
exchangerate.host was bought and changed to require an API key. The new
owner also allegedly bro...
73cf3a3d3c3f65f60711c7924c8aec2ae44c9a1a authored over 1 year ago by Florian Strzelecki <[email protected]>
Co-authored-by: dgw <[email protected]>
09ee6538f513b929f0e93b1d1f67ee15c3a57f99 authored over 1 year ago by Florian Strzelecki <[email protected]>72a071d390a9fbe92427456a1ce25da1f17c71f4 authored over 1 year ago by Florian Strzelecki <[email protected]>
Sphinx 7.2+ for Python 3.9+, 7.1 only for Python 3.8.
b60fff31727d5783b19dc5f254f2c214547f35f7 authored over 1 year ago by Florian Strzelecki <[email protected]>abf29ab1587d38dd3b1292d2e8a73b91bb81ab04 authored over 1 year ago by Florian Strzelecki <[email protected]>
xkcd: address py/mixed-returns CodeQL alert
03dd79b232e084eb997c7ac9a958995c6b8501a1 authored over 1 year ago by dgw <[email protected]>9cba730ae34cb26671ecb5ed543aff44d96c4b56 authored over 1 year ago by dgw <[email protected]>
calc: gracefully handle `ExpressionEvaluator.Error`
8c3e533ea39b463441b2d92c6ee57c838b99f195 authored over 1 year ago by dgw <[email protected]>coretasks, test: handle `core.modes` setting being `None`
953f2eb2a6deb19ff05e27bccef71d02e7934013 authored over 1 year ago by dgw <[email protected]>
Add `None` to tested cases, as well, so if it goes back to throwing an
error after future change...
We might consider making this exception a standalone class, for less
wacky-looking error handlin...
test: add capabilities test cases for trailing space handling
274470ec29429a26bd0faed12984ce6ac09cf949 authored over 1 year ago by dgw <[email protected]>It's not much, but it's honest work.
I was going to do some type-hint cleanup too, but there ar...
0c868423337efbcb120251b79b71dd28d42ef185 authored over 1 year ago by dgw <[email protected]>
Some IRCds include trailing space in capability lists, and this is not a
spec violation. Default...
ci, make: "lint" (flake8 & mypy) replace "quality"
bc688b4eaee25a1be4fef66477f016bc21ea61d8 authored over 1 year ago by dgw <[email protected]>6fa76f3c83a412c8241fbc7a97ec3d4047df3057 authored over 1 year ago by James Gerity <[email protected]>
tools.calculation: replace deprecated `ast.Num` with `ast.Constant`
7b74964e2de3f2d0964d9f5b0f56b5e9447bb988 authored over 1 year ago by dgw <[email protected]>
I know I did that, so I'm owning my mistake, and rename "make quality"
by "make lint". A linter ...
Co-authored-by: SnoopJ <[email protected]>
282948700d5480ae9e9e040542be893a1af57861 authored over 1 year ago by dgw <[email protected]>
`ast.Num` and friends have been deprecated since Python 3.8, but didn't
start generating depreca...
build, meta: drop Python 3.7 support, checks, and CI job
d58d6a776214d770f169aba72f60873ec6e10524 authored over 1 year ago by dgw <[email protected]>
importlib.metadata.EntryPoint *shouldn't* differ from Python 3.8 onward,
unless there's somethin...
As of Python 3.5, we can do this. It's overdue.
c743861400e8a5d680104c61218f93d16790b11e authored over 1 year ago by dgw <[email protected]>
`importlib.metadata` officially starts existing in Python 3.8, and we
are removing support for P...
314c8a2d637f48a301658bf5d515f32b6c859f4a authored over 1 year ago by dgw <[email protected]>
Not doing exactly as the comment says because different Rule subclasses
pass aliases as either t...
Regular `dict` is promised to maintain insertion order as of Python 3.7
(which means this could ...
The test covering `_chunks()` still passes, so hooray!
451a36e030f2feb5da50d78b0c1ff3878252b940 authored over 1 year ago by dgw <[email protected]>
Played with using intentionally wrong types in the definition of a
`PluginMetaDescription` and r...
Can't drop the `importlib_metadata` requirement yet, though. We use some
stuff elsewhere that is...
Linking to just `/3/` is admittedly risky, because item/anchor locations
can change across Pytho...
45ce17c8a99af8669511fa067044a06b3615985c authored over 1 year ago by dgw <[email protected]>
docs: add docstring to library root module
271b306ac328ccea32da333787c00b739021bb39 authored over 1 year ago by dgw <[email protected]>tld: fix regressions from type-hint cleanup
37e6249ce41a826689482d756db8b27912284d28 authored over 1 year ago by dgw <[email protected]>docs: add example of plugin re-use
a620c14e468e4f854cc3d607b1c46c097453354a authored over 1 year ago by dgw <[email protected]>
Co-authored-by: dgw <[email protected]>
Co-authored-by: Florian Strzelecki <florian.strzelecki@...
393a22d506f1d6614ad86955eba09b01560f3bf8 authored over 1 year ago by James Gerity <[email protected]>
bugzilla: remove module extracted to separate package
85f19c7d1a991adccf6ff86a25ee88873d54a6ba authored over 1 year ago by dgw <[email protected]>db051a192af5a6b54725639cf7d131a8e53d53d9 authored over 1 year ago by James Gerity <[email protected]>
Add optional tox configuration
c26914b68913bc25bdd1f5fed9c5942a87fdfee6 authored over 1 year ago by dgw <[email protected]>56ff790a810d4469ad342b37b615053709529ef7 authored over 1 year ago by James Gerity <[email protected]>
Co-authored-by: dgw <[email protected]>
d06c975592187c8feadc02044e240a14997e613d authored over 1 year ago by James Gerity <[email protected]>meetbot: remove in favor of external package
4fe14cc43e6a742897b10bf7d6f3f723368147d7 authored over 1 year ago by dgw <[email protected]>
dict.update() returns None, not the updated dict, so the requests.get()
call was passed params=N...
Can't return an attribute that's been deleted, can we? Indeed not.
8be93b89ab80a9e8d5ca270f48171099d204ebc5 authored over 1 year ago by dgw <[email protected]>remind: remove plugin reimplemented as external package w/better tests
6af4f23d2ea011aa1e5fc9ce5449b2f2bce1bd1c authored over 1 year ago by dgw <[email protected]>Moved to https://github.com/sopel-irc/sopel-bugzilla
0e4d080aeb0a5dc08c0f80568a4db1ccaddb3bd0 authored over 1 year ago by dgw <[email protected]>mypy: use generic types instead of `typing` aliases where possible
79b6bce73f4de083a5019443a1cc45896c3ec7f5 authored over 1 year ago by dgw <[email protected]>91dd723c03c3c01a895521da3c8fe04fd1f039a7 authored over 1 year ago by dgw <[email protected]>
b78511097e4b87ba9d3058b375b7ab9a1d43abee authored over 1 year ago by dgw <[email protected]>
97403d943c922a1d5dcd3711cfec196e53fa7f0b authored over 1 year ago by dgw <[email protected]>
59fafb8cf1d8a8157f7046882e778b38f37cb87e authored over 1 year ago by dgw <[email protected]>
45f8cc6481eb016424a165479ce0e6e1871f979b authored over 1 year ago by dgw <[email protected]>
Clean up errors in `mypy --check-untyped-defs`
3185eed0263307dcba851bf09aa1ea96840e7fec authored over 1 year ago by dgw <[email protected]>957c6e2464ab93e42a25da1bf9e813b05173591c authored over 1 year ago by dgw <[email protected]>
f96878ef023cbfcd42091d3c87070c416217f377 authored over 1 year ago by dgw <[email protected]>
54c91a471b49bd5b34b7f5a3ff024e5c3858b02a authored over 1 year ago by dgw <[email protected]>
aeacb67479df3f2e9c06d11ba57743119ad68874 authored over 1 year ago by dgw <[email protected]>
1495121c808b8778eff6402da7173a54e893275d authored over 1 year ago by dgw <[email protected]>
c4aadd981ddc03d4f1b02cbeeb9c0f9bab776fd0 authored over 1 year ago by dgw <[email protected]>
67a6e70b726b929fbc83699c7373fe123914038c authored over 1 year ago by dgw <[email protected]>
b9784e2368fa261eb063d3bd75a09a136666de65 authored over 1 year ago by dgw <[email protected]>
e562df2df17fa8a4d017a4a6e39374c9ff7d9650 authored over 1 year ago by dgw <[email protected]>
d47d2d2d5cc7819a0400a218dcbfd38a480e005b authored over 1 year ago by dgw <[email protected]>
b23c506909ab2311d514f0541bc335d002457246 authored over 1 year ago by dgw <[email protected]>