Jason Robinson
bc38ac990b
Switch crypto library `pycrypto` to `pycryptodome`
...
This is a more up to date fork of the former. This fixes CVE-2018-6594 found in the former.
**Deployment note.** When updating an application, you *must* uninstall `pycrypto` first, otherwise there will be a conflict if both the versions are installed at the same time. To uninstall, do `pip uninstall pycrypto`.
Release 0.17.0
2018-08-11 21:47:16 +03:00
Jason Robinson
674e242519
Remove travis config
2018-07-23 23:21:33 +03:00
Jason Robinson
065c8594b6
Merge branch 'python36' into 'master'
...
Drop support for Python <= 3.5, add tox and Gitlab CI
See merge request jaywink/federation!128
2018-07-23 16:27:15 +00:00
Jason Robinson
a2e08d42f5
One more place to bump Python version in docs
2018-07-23 19:21:58 +03:00
Jason Robinson
bb3281d489
Add tox and gitlab CI
2018-07-23 19:15:34 +03:00
Jason Robinson
454dc8ccbc
Drop compatibility for Python <= 3.5
2018-07-23 18:33:47 +03:00
Jason Robinson
6cbe9cee9d
Start new development cycle
2018-07-23 18:32:54 +03:00
Jason Robinson
afee56cac6
Release 0.16.0
2018-07-23 16:28:08 +03:00
Jason Robinson
bfb4792f16
Fix Diaspora `Profile` mapping regarding `last_name` property
...
Previously only `first_name` was used when creating the `Profile.name`
value. Now both `first_name` and `last_name` are used.
When creating outgoing payloads, the `Profile.name` will still be placed
in `first_name` to avoid trying to artificially split it.
2018-06-24 22:12:43 +03:00
Jason Robinson
690e8872d8
Merge pull request #127 from jaywink/extract-mentions
...
Extract mentions from Diaspora payloads that have text content
2018-06-24 00:13:49 +03:00
Jason Robinson
af920604a2
Extract mentions from Diaspora payloads that have text content
...
The mentions will be available in the entity as `_mentions` which is
a set of Diaspora ID's in URI format.
2018-06-23 23:09:18 +03:00
Jason Robinson
8c7b1206c6
Monthly and halfyear active users from weekly should not be more than total user count
2018-06-05 23:03:33 +03:00
Jason Robinson
b28661b86a
Revert previous attempt for Mastodon weekly stats stabilizing
...
Instead, take a stable number from previous week stats for now.
2018-06-04 23:52:40 +03:00
Jason Robinson
907d1d60db
Try stabilizing Mastodon weekly counts with more guessing
...
Mastodon has a tricky way of reporting weekly logins according to the
going week. Multiply the count depending on the weekday to see if we
can stabilize the stats a bit.
2018-06-04 22:59:49 +03:00
Jason Robinson
8111f2d4e4
Fix Mastodon parser if version has non-numbers
2018-06-04 20:43:46 +03:00
Jason Robinson
7a328459ba
Merge pull request #126 from jaywink/improve-country-parsing
...
Switch to ipdata.co service for country lookups
2018-05-27 21:21:47 +03:00
Jason Robinson
a2c8d1c061
Switch to ipdata.co service for country lookups
2018-05-27 20:34:47 +03:00
Jason Robinson
5e3e363714
Merge pull request #125 from jaywink/mastodon-parser
...
Add parser for Mastodon server info and activity documents
2018-05-27 01:58:05 +03:00
Jason Robinson
6353e47a85
Add parser for Mastodon server info and activity documents
2018-05-27 01:46:55 +03:00
Jason Robinson
a42fd1631d
Don't allow negative values in meta doc usage numbers
2018-05-13 23:06:41 +03:00
Jason Robinson
5a5042a97d
Don't crash meta fetchers if no JSON returned
2018-05-13 22:57:33 +03:00
Jason Robinson
07fa3e8f19
More support for old buggy Hubzilla nodeinfo docs
2018-05-13 22:36:00 +03:00
Jason Robinson
2762fb5f3e
Guard against 'null' values in NodeInfo2 documents
2018-05-13 22:14:33 +03:00
Jason Robinson
1066502591
Add workaround for parsing a buggy older Hubzilla version nodeinfo
...
This has been fixed in later versions but there are quite a few
versions out with the bug so add a workaround to not crash on those.
2018-05-13 20:47:55 +03:00
Jason Robinson
7590e65f79
Don't automatically fetch ip and country when parsing meta docs
...
Otherwise we spam the country providing service too much.
2018-05-10 11:48:55 +03:00
Jason Robinson
af86d9a9a4
Merge pull request #124 from jaywink/wip
...
Add fetching of IP and country
2018-05-07 23:08:06 +03:00
Jason Robinson
33c6ed817a
Add fetching of IP and country
...
Network utils has a method `fetch_host_ip_and_country` which will
fetch both. The country fetching uses the `ip-api.com` free service
to resolve country information.
2018-05-07 22:58:25 +03:00
Jason Robinson
0da0e58693
Make statisticsjson hostmeta parser more resilient
...
Some servers use strings for number values.
2018-04-26 22:30:28 +03:00
Jason Robinson
2c255a68f7
Change hostmeta fetchers relay default to empty string
2018-04-08 20:20:24 +03:00
Jason Robinson
3bf19d2a8b
Merge pull request #123 from jaywink/nodeinfo2
...
Add NodeInfo2 generator and Django view
2018-04-08 15:15:58 +03:00
Jason Robinson
435c3d6d43
Add NodeInfo2 generator and Django view
...
See https://github.com/jaywink/nodeinfo2
2018-04-08 15:02:18 +03:00
Jason Robinson
a798b1d4b5
Merge pull request #122 from jaywink/server-meta-parsers
...
Add fetchers for nodeinfo, nodeinfo2 and statisticsjson
2018-04-08 13:30:35 +03:00
Jason Robinson
eef1f7d820
Add fetchers for nodeinfo, nodeinfo2 and statisticsjson
2018-04-08 12:57:08 +03:00
Jason Robinson
2a02f866aa
Allow port in Diaspora handles as per the protocol specification
...
Previously handles were validated like emails.
2018-03-09 22:17:08 +02:00
Jason Robinson
4c2a42dfb9
Fix validation of `Retraction` with entity type `Share`
2018-03-09 21:50:54 +02:00
Jason Robinson
ab3e2451b8
Ensure when processing payload empty payload tags don't create None values
2018-02-27 23:03:23 +02:00
Jason Robinson
233d191ff8
Merge pull request #117 from jaywink/new-entity-properties
...
Switch Diaspora protocol to send new style entities
2018-02-24 15:30:50 +02:00
Jason Robinson
c15aa14e8e
Switch Diaspora protocol to send new style entities
...
We've already accepted these on incoming payloads for a long time and so do all the other platforms now, so now we always send out entities with the new property names. This can break federation with really old servers that don't understand these keys yet.
Closes #59
2018-02-24 15:04:07 +02:00
Jason Robinson
aa8e8a7960
Use unquote instead of unquote_plus when preparing XML payload
...
Change unquote method used when preparing Diaspora XML payloads for verification.
Some platforms deliver payloads not using the urlsafe base64 standard which caused problems when validating the unquoted signature. Ensure maximum compatibility by allowing non-standard urlsafe quoted payloads.
Closes #115
2018-02-24 14:02:06 +02:00
Jason Robinson
fe762d383d
Merge pull request #116 from jaywink/add-more-to-json-webfinger
...
Add more things to JSON webfinger
2018-02-21 22:42:45 +02:00
Jason Robinson
d74aa5290c
Add search path to JSON webfinger
2018-02-21 22:21:55 +02:00
Jason Robinson
85e0b90ebf
Add salmon receive url to JSON webfinger
2018-02-21 22:02:30 +02:00
Jason Robinson
0466931d05
Add atom feed support to JSON webfinger
2018-02-21 21:58:10 +02:00
Jason Robinson
3730a3d9b8
Make JSON webfinger support webfinger profile url
2018-02-21 19:20:46 +02:00
Jason Robinson
065d9e4d2b
Merge pull request #114 from jaywink/send-payloads-with-correct-content-type
...
Send Diaspora payloads with correct content type
2018-02-19 23:22:29 +02:00
Jason Robinson
72a72873cd
Send Diaspora payloads with correct content type
...
Refs: #82
2018-02-19 23:14:42 +02:00
Jason Robinson
ea0bd811df
Add some extra logging to handle_send
2018-02-18 23:01:48 +02:00
Jason Robinson
0170a12a95
Allow guid to be empty when parsing or generating diaspora ID
...
Sometimes we just want a URI format Diaspora ID but don't have
a guid.
2018-02-17 20:54:18 +02:00
Jason Robinson
511ef6676c
Merge pull request #113 from jaywink/rfc3033-webfinger
...
Add RFC3033 webfinger generator
2018-02-17 01:45:33 +02:00
Jason Robinson
f80211b178
Add RFC3033 webfinger generator
...
Also provided is a Django view and url configuration for easy addition into Django projects. Django is not a hard dependency of this library, usage of the Django view obviously requires installing Django itself. For configuration details see documentation.
Closes #108
2018-02-17 01:38:37 +02:00