Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/ua-parser/uap-python

Python implementation of ua-parser
https://github.com/ua-parser/uap-python

Add support for lazy matchers

Add lazy builtin matchers (with a separately compiled file), as well
as loading json or yaml fil...

16c1324578c5c4b6fc1617757ebb5161f75b82b9 authored 11 months ago by masklinn <[email protected]>
Add README note that this is unreleased

While switching the default branch back to master is convenient for
development, it's already co...

04d0b7df7d62017dd90ef6e81c2861747701df38 authored 11 months ago by masklinn <[email protected]>
Default to re2 parser is available

After benchmarking, the results are out, at least on the current
sample file:

First, re2 is rid...

fa27574515fb236bdc817a188a87bee88bdc98d1 authored 11 months ago by masklinn <[email protected]>
Add benchmarking scripts

useragents.txt sample file kindly provided by @DailyMats out of
DailyMotion's data (2023-04-26)....

9960dbdf00c640664ccd0229e93d1bf6fcefd8ac authored 11 months ago by masklinn <[email protected]>
Add an re2-based parser

Requires splitting out some of the testenvs, as re2 is not available
for pypy at all, and not ye...

e719a7ef9b003e8bd901d55584d3d5c82ed6d4d3 authored 11 months ago by masklinn <[email protected]>
Add typechecker

Remove partial typing on the legacy API whose only effect is to break
typechecking.

Fixes #179

b408a13161af180a14ad389ed8b8e9135870ca1b authored 11 months ago by masklinn <[email protected]>
Typed API & parsers API

New API with full typing
========================

Seems pretty self-explanatory, rather than re...

69087a792282f188309e9861070398546682e242 authored 11 months ago by masklinn <[email protected]>
Disable pypy311

Despite the suite succeeding as noted in
e9483d8fbb1e288c8842bff2766ec0a08e1a73eb, github sucks ...

6ad6f0433d8499dfe8bf04d682c9ec61f1304d92 authored 11 months ago by masklinn <[email protected]>
fix black formatting changes now failing CI

fafda51915bef37ea103cd2b2853d674b43e5a90 authored 11 months ago by masklinn <[email protected]>
add weekly cron to CI, so it can run -next distributions

59f36d501f9f6e220939eaeceb835c8a95079c74 authored about 1 year ago by masklinn <[email protected]>
Add cpython 3.12 and pypy:3.10, add prereleases to ci

b372c9afe6ee7980551e6335fb1937009a4c44c5 authored about 1 year ago by masklinn <[email protected]>
Use continue on error for -next jobs

~~Apparently github's automerge is based on the job's properties not
the branch protection rules...

e9483d8fbb1e288c8842bff2766ec0a08e1a73eb authored about 1 year ago by masklinn <[email protected]>
Add tox labels to more easily run just a subset of the thing

The label can be selected with `-m` on most tox commands, this is
equivalent to selecting the co...

fd395ce6f5b4e617883015623de56b9bfb7b2032 authored over 1 year ago by masklinn <[email protected]>
forgot to remove format in a24779bea3c3f0fe477530f694ead307d8edcee5

This is broken, but obviously not tested.

f6fb0e2f2e43985b1015f529f39f9eb1de3f4a17 authored over 1 year ago by masklinn <[email protected]>
FIX: tests not working

Since the switch to src layout and pytest in
827347722bfb2fd8088783fd9705308dd8b0d4b6 the main t...

ae0fe2ba899994192fb3d97c9d0b1289d977dde4 authored over 1 year ago by masklinn <[email protected]>
Switch to tox 4

Tox 4 is (finally) compatible with wheel installs & stuff, which is
especially nice as the manua...

81da21a8004bd96a5d9351072171fa1cea63b03e authored over 1 year ago by masklinn <[email protected]>
Modernize user_agent_parser

- remove P2 compatibility (e.g. str/bytes)
- remove never used `MatchSpans` methods (not sure wh...

a24779bea3c3f0fe477530f694ead307d8edcee5 authored over 1 year ago by masklinn <[email protected]>
Modernize packaging

PEP 517
=======

Don't migrate away from setuptools, but move "static" packaging
content from `s...

bbb14b4cc1c807cca1d97c27efd84400782f76e8 authored over 1 year ago by masklinn <[email protected]>
Drop 2.7, 3.6, and 3.7

- 2.7 was EOL'd in 2020
- 3.6 was EOL'd in 2021
- 3.7 will be EOL'd in June 2023

Even if a 1.0 ...

24c82172c2894343b3eb35e9aaf1e80edcf63f75 authored over 1 year ago by masklinn <[email protected]>
Update CI actions for new packaging

- remove old compile step
- update python-action to v4 and "primary" python to 3.11
- produce sd...

e2267d294f8ba68ec3fbcdbfdaa05fe21bc204d6 authored over 1 year ago by masklinn <[email protected]>
Switch to src layout and move tests to their own directory

- src/ layout seems to be the modern standard, and avoids
e.g. false-positive success issues ...

827347722bfb2fd8088783fd9705308dd8b0d4b6 authored over 1 year ago by masklinn <[email protected]>
Forgot to add classifiers when promoting 3.11 in #153 (#155)

a8d45b675350dfa4fc19d17fc4b8ed1d04461dcf authored over 1 year ago by masklinn <[email protected]>
Fix up license situation

- move LICENSE back to repository root, seems to have been moved by mistake in 1ef47432741e6904f...

25c78c9d671be933ec35b7b06d961224e5c41512 authored over 1 year ago by Paul Wankadia <[email protected]>
Fix CI for 3.6 and pypy

Also update for 3.11 final, add 3.12a, and pypy 3.9, and add support for manual trigger.

1262a80c83131bdbd40371959380167c3ac19b91 authored over 1 year ago by masklinn <[email protected]>
Refine test matrices

ubuntu-latest was switched over to ubuntu-22.04, because 3.6 is long
EOLd actions/setup-python#5...

74ef44e159a0d6d079605472bb889dbb5c2cd58a authored over 1 year ago by masklinn <[email protected]>
Ignore sprurious cython import warning under pypy

See yaml/pyyaml#688 (and possibly cython/cython#1720), doesn't look
like there's really a better...

254b582524a3775da7a3d3bdb824e31f8d1803dc authored over 1 year ago by masklinn <[email protected]>
Promote 3.11 CI, add 3.12 alpha

f06f282b6edca2e613e8a4fe2f79197c3ae65f51 authored over 1 year ago by masklinn <[email protected]>
Allow manually triggering CI

Can be useful to re-run after a while, in case deps have changed

546ff4347d12cb8ea2f64b254ab74ca2084be7d3 authored over 1 year ago by masklinn <[email protected]>
Release 0.16.1

Fixes concurrency issues with the cache invalidation mechanism.

52053d54a6e4708ea5945ba01487642615d750fe authored over 2 years ago by masklinn <[email protected]>
Merge from 0.15.x

Merge fix of #132 from 0.15.x

f1cf6fae470d317c0fe155174072b887de916ed8 authored over 2 years ago by masklinn <[email protected]>
Release 0.15.2

Fix for #132 on 0.15

05be64dcb97ca84423078622bf9cd929344b3027 authored over 2 years ago by masklinn <[email protected]>
Revert cache FIFO replacement policy to reset/clear

Amongst other changes, #113 switched the cache to a FIFO inspired by
the standard library's re m...

0939d42b9130e8e4c216f60e7c699b7133f67e73 authored over 2 years ago by masklinn <[email protected]>
Allow CI to run on maintenance branches

c92ec436a5489ab2043e15e1f9e6d205dc2de861 authored over 2 years ago by masklinn <[email protected]>
Update uap-core to 0.16.0

Closes #129

ab2e451c886a8dcf9614e8e0054ed873f34cedf3 authored over 2 years ago by masklinn <[email protected]>
Release 0.15.1

- removed version bound from `setup_requires`, allows building from
source when only PyYaml 6....

56697397300a8a77e470ef8ad3827d0b0dcfb332 authored over 2 years ago by masklinn <[email protected]>
Relax pyyaml dev-dependency

Followup to #125 as it seems unnecessary to keep 3.10 on an outdated
non-binary-wheel version. E...

1bd2fbf911262c9db628d02ec955814c7a1605e5 authored over 2 years ago by masklinn <[email protected]>
Relax pyyaml versioning during building

e27d50d8f4d626f35986eafbfde9bf9ad9cb4cc4 moved the yaml dependency
from runtime to dev and updat...

4e26047763e51a7421e4ee25abd26980de6fd822 authored over 2 years ago by masklinn <[email protected]>
Use range spec for 3.11 in the build matrix

This should allow always testing against the latest 3.11 at the time.

7250d81b7827b3bf6dac274aff1c8396c3b15c5a authored over 2 years ago by masklinn <[email protected]>
Fix non-in-place building

It's unclear when that stopped (or possibly whether it's ever worked),
but "regular" commands wh...

6150b61a473cbd0b25926f2b283c2ef26487854e authored over 2 years ago by masklinn <[email protected]>
Add type assertion to the cache lookup

Currently if an incorrect type is passed in, it'll raise an error
that's anything but clear, eit...

05e0e416582d33bbe9b8a667c1d36b977e638309 authored over 2 years ago by masklinn <[email protected]>
Deprecate js override bits

They were a feature for testing whose need was removed in
2015 (ua-parser/uap-core#58). They ar...

c300922b2afe949bedf43a1ef964ededd268d68a authored over 2 years ago by masklinn <[email protected]>
Explicitely install libyaml if wheel is not available

Running with the pure python version of pyyaml causes a pretty
significant performance drop when...

46b74f5fe933ae2a357a1c6e4b3e5163ea01160c authored over 2 years ago by masklinn <[email protected]>
Enable verbose pytest mode for better reporting (and timings)

3c32cccfeb6f3e1fa5489baa4efa284f987beb4e authored over 2 years ago by masklinn <[email protected]>
Add tests warning when running without C extension

Also skip C extension when running under pypy, it doesn't do any
good (sadly) but it doesn't see...

f9d60ec8414d925d5a322846492e7f1904a8d1d7 authored over 2 years ago by masklinn <[email protected]>
Don't generate unnecessary lines in _regexes.py

The regex builder would generate one ctor parameter for each parser
field. However a *significan...

7a73e3e07887d4c78d3a1f3a552f1ff6b78a1ab4 authored over 2 years ago by masklinn <[email protected]>
Improve caching

- Adds caching to all Parse* functions, using a unified cache (so the
functions can be intermi...

a32a59ee80284e2037773e8e0679c889e2108332 authored over 2 years ago by masklinn <[email protected]>
Migrate to pytest as test runner

- it works with the existing tests
- it's easy to select individual tests, and to split the tes...

d72fff8dab71d509b31833bfb905548163655a7d authored over 2 years ago by masklinn <[email protected]>
Add a bunch of new python versions (and pypy) to the CI

Also to the local tox, and try to rewrite tox.ini to make it more
reliable (wip):

- don't sd...

f637a86ce69ca3ad70e9374874253d084630ef5c authored over 2 years ago by masklinn <[email protected]>
Update uap-core to 0.15.0

Also update internal version thingie to match. And remove 2.6 from the
classifier tags, as it w...

69a7a695d662e9056bf96fae90407269fc1a7f9e authored over 2 years ago by masklinn <[email protected]>
Formally deprecate functions which were initially imported deprecated.

Probably going to remove them, especially since `ParseWithJSOverrides`
was originally called `P...

c9241c752eacd409e13ff6e90b56ace3ce7ade8b authored over 2 years ago by masklinn <[email protected]>
Add comment clarifying use of yaml.load, remove requirements file

pyyaml hasn't been a required dependency for a very long time, it's
really not clear why #70 re...

e27d50d8f4d626f35986eafbfde9bf9ad9cb4cc4 authored over 2 years ago by masklinn <[email protected]>
Add note that the convenience parsers are not cached to readme

This is an intermediate stopgap before modifying caching so it works
with and across all the fun...

fa5478cf53349000b043ba234febcc9af16a9e11 authored over 2 years ago by masklinn <[email protected]>
Doctest the readme to ensure it doesn't break.

Fix docs to match the pprint behaviour of Python 3(.5), which much
more aggressively matches `wi...

25b648451eaa3af3f270ba2913872358cde8f974 authored over 2 years ago by masklinn <[email protected]>
Update CI workflow to split the checkers out

The checkers only need to run once, using the latest supported Python
(probably?).

Also fix bla...

0498c91fb1cf05bed518b65d663e17dbb00e2e4f authored over 2 years ago by masklinn <[email protected]>
Open UA_PARSER_YAML as binary

The yaml files should be parsed as UTF8.

In text mode, `open` uses `locale.getpreferredencodi...

ced19d4611e4a8e809c9ef7f99db7bb7353c4776 authored over 2 years ago by Mark DePalma <[email protected]>
Reinstate CI

- remove travis as it seems pretty dead
- add CI via github actions
- keep black disabled for no...

4b1a06687201d226418a620f6d71bc1515ebf2cd authored over 2 years ago by masklinn <[email protected]>
Merge pull request #88 from jnozsc/bump-uap-core-0.9.0

bump uap-core to 0.10.0

934bfabfc90c7f4e065220a6e3c1f4afeac2a61f authored almost 4 years ago by Lindsey Simon <[email protected]>
bump uap-core to 0.10.0

deba9132dbfd188af35d4403b95de27cb75de57c authored over 4 years ago by jnozsc <[email protected]>
bump uap-core to 0.9.0

547562b2a88f21b20b9a78e81035a326157ff7b0 authored over 4 years ago by jnozsc <[email protected]>
update example in doc based on 0.10.0 update

cad41bad76db7613f32c9753de45aeff3b83eae2 authored almost 5 years ago by jnozsc <[email protected]>
0.10.0

d40c2e38da1facf2458f0259daa58ba32d8d9fd9 authored almost 5 years ago by Matt Robenolt <[email protected]>
[Security] Bump uap-core to 0.8.0 to avoid DoS

A security advisory for uap-core was published at
https://github.com/ua-parser/uap-core/security...

0970eacb5cf75b67e62ec24c075d6fa9728f8724 authored almost 5 years ago by bcaller <[email protected]>
Include note about how to find change-log

29f506cc3c075fbca58091a4415d1e44e0059af9 authored almost 5 years ago by Nolan Wilson <[email protected]>
0.9.0

b79462725bad656aa52ad5d965ddf7dcbfb2bbd4 authored almost 5 years ago by Matt Robenolt <[email protected]>
wups

452d35b664d4236e4389b6ac2ec22b2e6efda561 authored almost 5 years ago by Matt Robenolt <[email protected]>
Always use yaml SafeLoader

898cf8131a72d68338477bf1244bb51174efe0e2 authored almost 5 years ago by Matt Robenolt <[email protected]>
Actually run all tests

c007bdc2ef00f8366247dd4e4efb83bd6692aae2 authored almost 5 years ago by Matt Robenolt <[email protected]>
Apply black everywhere else

d0ab043847216344a17018041a412c3e56e92bcc authored almost 5 years ago by Matt Robenolt <[email protected]>
simplify code and pep8 and apply black formatter (#80)

3aff3c4857967995ef6d3b9e5dc79507b82a8594 authored almost 5 years ago by jnozsc <[email protected]>
added py37 and py38 to tox. (#77)

* added python 3.7 to tox envs.
* added python 3.8 to tox envs.
* marked 3.7 and 3.8 as offici...

40bc3978a0e1ca36b3ed662d86b036b0327bb4eb authored almost 5 years ago by João Figueiredo <[email protected]>
Merge pull request #79 from innerverse/issue-78

ISSUE-78 Bump uap-core 0.9.10

442cf43e9aeee535a3c151697b460845bbee93ef authored almost 5 years ago by Lindsey Simon <[email protected]>
ISSUE-78 Bump uap-core 0.9.10

30e258dece75e195880b763ba5581156531e097f authored about 5 years ago by Seth Miller <[email protected]>
Merge pull request #74 from dgoldstein0/master

Update from uap-core 0.6.7 to 0.6.9

a9727e4af3d6526a42e319345bec05713edd997b authored over 5 years ago by Lindsey Simon <[email protected]>
fix lint

bd976cbff1c5110c69ed86dab2e1314e4b8e5c62 authored over 5 years ago by David Goldstein <[email protected]>
Fix OSParser to understand the variety of $N possibilities

7d61e38fa7869fd417af77594f8a070fe15c1145 authored over 5 years ago by David Goldstein <[email protected]>
Update uap-core

e48f67f3660cfbe6666a2d5490731cd525e84fbf authored over 5 years ago by David Goldstein <[email protected]>
Merge pull request #70 from admitad-github/feature/update-uap-core

update uap-core submodule

326da3e9c5e266cb1b4eda2dbc5dd1481d525cd7 authored over 5 years ago by Lindsey Simon <[email protected]>
improve readability

779d917a23e43faa734b8da6029443b8269ee3ce authored over 5 years ago by Sergey Polischouck <[email protected]>
remove python 3.7 because travis can’t build it

8b39b340f17c3be7452fdedb529c730136dd7899 authored over 5 years ago by Sergey Polischouck <[email protected]>
speed up ci with job parallelization (add support python3.7 and drop python2.6)

a9665f7bf3e7f4dd0d37681c4c0adcb74fea8fe8 authored over 5 years ago by Sergey Polischouck <[email protected]>
fix format in requirements

21415179a9da65cb36d5881b63636063a3fc213f authored over 5 years ago by Sergey Polischouck <[email protected]>
pin project dependencies

6b9848fcf9e3420d0bf862685a79bf478962a176 authored over 5 years ago by Sergey Polischouck <[email protected]>
fix os parsing specification with replacing

6e8fc931da65da5c93aff0f46dff6c3a8e0eca28 authored over 5 years ago by Sergey Polischouck <[email protected]>
fix expected behaviour to get None instead of empty string for ua version parsing

75b7d33b7935cde84c5b9ca3f6afc63a71c778d2 authored over 5 years ago by Sergey Polischouck <[email protected]>
update uap-core submodule to 0.6.7

d998dbb555bc36cb705da9f9700e7cd9b6868bac authored over 5 years ago by Sergey Polischouck <[email protected]>
Add license file to manifest

457e19b2674ca364db53885a3429e0cb5df0c978 authored almost 6 years ago by Pascal Bach <[email protected]>
reference official updated uap-core repo

684aebe439e2a987fd35756855aea668d0ed346d authored almost 6 years ago by Sergey Polischouck <[email protected]>
Fix license field

This is useful while filtering packages on PyPI.

f2f273d0ebd95418f0b569f5355220663c66b812 authored almost 6 years ago by Deniz Dogan <[email protected]>
temporary point to fork with needed regexes

c53f836045e3f3d534400b19b0c0a0ca6728ba04 authored almost 6 years ago by Sergey Polischouck <[email protected]>
move uap-core to 0.6.4

16b7615619786a9428b2ac0e55f5d0f23bdd63d2 authored almost 6 years ago by Sergey Polischouck <[email protected]>
0.8.0

145af36c99ec659e23fff223ea1c41d79d4de106 authored over 6 years ago by Matt Robenolt <[email protected]>
Update builds to python3, and drop interpreters that don't work in tox anymore

982100d635b3d9a44bf43d5949934e030c0076f5 authored over 6 years ago by Matt Robenolt <[email protected]>
Update to uap-core and fix os_v1_replacement (#59)

* updated to latest uap-core

* fixes broken test for os_v1_replacement

* fixing utf8

14bf01bf84b18c1a90706934c89651c2da0a7ebe authored over 6 years ago by Ondřej Žára <[email protected]>
0.7.3

6247d697a97d81eb77b3970f48bac2ad80692593 authored almost 8 years ago by Matt Robenolt <[email protected]>
ua-parser/uap-core@ce89c7637eeeb07b3464dbf40645bb3973723c0a

6cc101268cb0e4f349075360c17f5f58ee1bd82c authored almost 8 years ago by Matt Robenolt <[email protected]>
0.7.2

e5d5df00f398d590b02002c269b0c5a6f3ddfe93 authored about 8 years ago by Matt Robenolt <[email protected]>
ua-parser/uap-core@4215e8899c511dc656cff09bd5b16041c76d2542

7d1ae640d429d25a502b4929862856b6792c1533 authored about 8 years ago by Matt Robenolt <[email protected]>
Ignore .eggs directory from flake8

85edbf4f62267e9ae73e9ab3b1153aab3ac97846 authored about 8 years ago by Matt Robenolt <[email protected]>
Make flake8 work

31d2f99849c694290ad2674f85925feb12909697 authored over 8 years ago by Matt Robenolt <[email protected]>
Convert README to rst (#45)

So it doesn't look bad on PyPI like it currently does: https://pypi.python.org/pypi/ua-parser

...

fa19ec9feb8c9687d59d9024c5adf60dcdabf392 authored over 8 years ago by Adam Chainz <[email protected]>