django-restit 4.2.42__tar.gz → 4.2.44__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {django_restit-4.2.42 → django_restit-4.2.44}/PKG-INFO +1 -1
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/group.py +1 -1
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/iplookup/restit.py +1 -1
- {django_restit-4.2.42 → django_restit-4.2.44}/pyproject.toml +1 -1
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/__init__.py +1 -1
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/models.py +84 -15
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/transports/http.py +1 -1
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/worker.py +6 -5
- {django_restit-4.2.42 → django_restit-4.2.44}/LICENSE.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/README.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/fcm/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0003_member_phone_number.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0004_group_modified_alter_group_created.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0005_member_auth_code_expires.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0006_member_security_token.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0007_authtoken_signature_authsession.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0008_memberdevice_memberdevicemetadata.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0009_alter_member_phone_number.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0010_delete_authtoken.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0011_authtoken.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0012_settings_settingsmetadata.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0013_memberdevice_ip.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0014_alter_notificationmemberrecord_member.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0015_memberdevice_buid.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0016_authsession_buid.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0017_rename_requires_topt_member_requires_totp.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0018_userpasskey.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/device.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/feeds.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/group.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/legacy.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/member.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/membership.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/notify.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/passkeys.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/session.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/models/settings.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/oauth/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/oauth/google.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/passkeys/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/passkeys/core.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/periodic.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/auth.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/device.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/member.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/notify.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/oauth.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/passkeys.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/rpc/settings.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/settings.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/base.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/invite.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/plain/base.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/plain/invite.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/plain/reset_code.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/reset_code.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/simple/invite.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/simple/reset_code.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/README +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/decorators.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/middleware.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/models.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/periodic.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/rpc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/tq.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/auditlog/urls.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/README.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/handlers.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/migrations/0002_alter_message_cc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/migrations/0003_attachment_content_type.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/migrations/0004_mailtemplate.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/models/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/models/bounce.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/models/complaint.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/models/message.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/models/template.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/rpc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/utils/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/utils/parsing.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/utils/render.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/inbox/utils/sending.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/README.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0002_event_component_event_component_id.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0003_rule_action.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0004_serverossecalert_ssh_sig_alter_rulecheck_parent.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0005_incident_component_alter_incident_state.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0006_delete_eventmetadata.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0007_event_metadata.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0008_incident_action_sent_incident_hostname_and_more.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0009_incident_reporter_ip.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0010_incident_category_incident_component_id.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0011_ticket.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0012_rule_match_by.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0013_rulecheck_is_required.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0014_event_group_alter_rulecheck_index.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/models/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/models/event.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/models/incident.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/models/ossec.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/models/rules.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/models/ticket.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/parsers/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/parsers/ossec.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/periodic.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/rpc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/templates/email/incident_change.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/templates/email/incident_new.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/templates/email/incident_plain.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/incident/tq.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/geolocate.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/migrations/0002_geoip_subnet_alter_geoip_ip.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/models/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/models/address.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/models/ip.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/models/legacy.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/models/location.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/models/track.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/iplookup/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/iplookup/abstractapi.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/iplookup/extremeip.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/iplookup/geoplugin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/iplookup/ipapi.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/iplookup/ipinfo.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/location/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/location/google.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/timezones/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/timezones/google.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/providers/zillow.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/rpc/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/rpc/ip.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/rpc/location.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/location/rpc/track.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/cvutil/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/cvutil/contours.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/cvutil/images.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/cvutil/misc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/cvutil/text.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/fixtures/initial_data.json +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/fixtures/medialib.json +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/fixtures/medialib_test_fixture.json +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/forms.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/models.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/ocr.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/pdf.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/qrcode.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/anigif.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/ffmpeg.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/gifsicle.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/hls.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/mp4box.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/rtmp/Makefile +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/rtmp/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/rtmp/rtmp.i +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/rtmpdump.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/rtmpsink.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/video_getinfo.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/engines/websnap.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/exceptions.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/akamai.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/animated_thumbnail.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/ffmpeg.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/flv.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/hls.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/image_transcode.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/image_validate.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/mp4.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/video_still.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/video_validate.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/websnap.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/presets/youtube.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/render_utils.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/render/schedule.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/rpc/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/rpc/legacy.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/rpc/media.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/rpc/tools.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/scripts/init_config +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/css/base_medialibui.css +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/css/base_widgets.css +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/css/jquery.jcrop.css +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/arrow-down-white.png +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/bg-body.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/cancel.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/icon-generic.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/icon-image.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/icon-media.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/icon-zip.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/loading.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/noimage.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/render_err.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/rendering.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/star_off.png +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/star_on.png +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/img/unknown.gif +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/caman.full.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/hammer.min.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/jquery.Jcrop.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/jquery.hammer.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/load-image.min.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/swiper.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/tinymce/plugins/medialib/editor_plugin.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/tinymce/plugins/medialib/editor_plugin_src.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/tinymce/plugins/medialib/js/dialog.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/static/lib/tinymce/plugins/medialib/medialib.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/channel.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/discovery.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/errors.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/http.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/mimeparse.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/model.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/sample_tools.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/apiclient/schema.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/filestore.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/httplib2/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/httplib2/cacerts.txt +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/httplib2/iri2uri.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/httplib2/socks.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/httpstore.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/nullstore.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/anyjson.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/appengine.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/client.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/clientsecrets.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/crypt.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/django_orm.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/file.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/gce.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/keyring_storage.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/locked_file.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/multistore_file.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/old_run.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/tools.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/util.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/oauth2client/xsrfutil.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/rtmpstore.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/s3store.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/uritemplate/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/stores/youtubestore.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/base.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/instances.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/items.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/library.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_error.subject +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_error.to +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_error.txt +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_ready.subject +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_ready.to +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_ready.txt +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_render_error.subject +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_render_error.to +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_render_error.txt +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_validate_error.subject +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_validate_error.to +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/notify_validate_error.txt +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/smil +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/test.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/templates/medialib/testpicker.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/tests.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/tq.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/urls.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/utils.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/views.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/channel.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/discovery.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/errors.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/http.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/mimeparse.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/model.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/sample_tools.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/apiclient/schema.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/httplib2/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/httplib2/cacerts.txt +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/httplib2/iri2uri.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/httplib2/socks.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/anyjson.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/appengine.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/client.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/clientsecrets.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/crypt.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/django_orm.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/file.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/gce.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/keyring_storage.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/locked_file.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/multistore_file.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/old_run.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/tools.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/util.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/oauth2client/xsrfutil.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/upload.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/medialib/youtube/uritemplate/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/README.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/client.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/eod.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/examples/eod_example.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/commands/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/commands/delete_gauge.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/commands/delete_metric.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/commands/fix_redis_metrics_keys.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/commands/generate_test_metrics.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/commands/redis_metrics_send_mail.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/commands/reset_weekly_metrics.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/management/commands/system_metric.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/migrations/0002_metrics_k11_metrics_k12_metrics_k13_metrics_k14_and_more.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/migrations/0003_metrics_expires.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/migrations/0004_eodmetrics.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/migrations/0005_alter_metrics_v1_alter_metrics_v10_alter_metrics_v11_and_more.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/models.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/periodic.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/providers/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/providers/aws.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/rpc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/settings.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/tq.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/metrics/utils.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/models.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/rpc/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/rpc/githooks.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/rpc/legacy.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/rpc/products.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/static/js/models_pushit.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/tq.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/pushit/utils.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/.gitignore +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/README.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/RemoteEvents.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/arc4.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/cache.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/crypto/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/crypto/aes.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/crypto/privpub.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/crypto/util.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/datem.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/decorators.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/encryption.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/errors.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/extra/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/extra/json_metadata.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/fields.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/forms.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/helpers.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/joke.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/jwtoken.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/log.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/mail.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/mailman.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/management/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/management/commands/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/management/commands/rpc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/middleware/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/middleware/cors.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/middleware/db_router.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/middleware/jwt.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/middleware/request.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/middleware/session.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/middleware/session_store.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/models/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/models/base.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/models/cacher.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/models/metadata.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/net.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/regexes.yaml +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/requestex.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/rpc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/search.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/collection.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/csv.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/excel.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/json.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/legacy.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/localizers.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/model.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/profiler.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/response.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/serializers/util.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/settings_helper.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/ssl_check.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/static/lib/jquery.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/static/rest/app.css +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/static/rest/app.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/static/rest/rest.js +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/static/rest/rest.scss +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/templates/email/error.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/templates/email/error.subject +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/templates/rest_docs.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/templates/rest_html.html +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/ua.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/uberdict.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/url_docs.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/urls.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/rest/views.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/.gitignore +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/README.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/models.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/tests.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/sessionlog/views.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/README.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/periodic.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/rpc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/tq.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/transports/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/transports/email.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/transports/s3.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/transports/sftp.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/taskqueue/transports/sms.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/admin.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/decorators.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/migrations/0002_alter_sms_sid.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/models.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/phone_util.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/telephony/rpc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/migrations/0001_initial.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/migrations/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/models/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/models/faq.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/models/page.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/models/revision.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/periodic.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/renderers/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/renderers/mistune/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/renderers/mistune/highlight.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/renderers/mistune/math.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/renderers/mistune/media.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/renderers/mistune/meta.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/renderers/mistune/task_list.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/renderers/mistune/toc.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/rpc/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/rpc/wiki.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/wiki/tq.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/README.md +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/client.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/connection.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/exceptions.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/redis.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/servers/__init__.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/servers/base.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/servers/django.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/servers/uwsgi.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/settings.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/utf8validator.py +0 -0
- {django_restit-4.2.42 → django_restit-4.2.44}/ws4redis/websocket.py +0 -0
@@ -83,7 +83,7 @@ def rest_on_membership(request, pk=None):
|
|
83
83
|
@rd.login_required
|
84
84
|
def rest_on_users_membership(request, group_id=None):
|
85
85
|
ms = request.member.getMembershipFor(group_id, include_parents=True)
|
86
|
-
if ms is None:
|
86
|
+
if ms is None or not ms.is_enabled:
|
87
87
|
return rv.restStatus(request, False, error="not found", error_code=404)
|
88
88
|
return ms.restGet(request)
|
89
89
|
|
@@ -26,7 +26,7 @@ def getLocation(ip):
|
|
26
26
|
if GEOIP_RESTIT_HOST is None:
|
27
27
|
return None
|
28
28
|
params = {"ip": ip}
|
29
|
-
url = f"https://{GEOIP_RESTIT_HOST}/
|
29
|
+
url = f"https://{GEOIP_RESTIT_HOST}/api/location/ip/lookup"
|
30
30
|
res = requests.get(url, params=params)
|
31
31
|
if res.status_code != 200:
|
32
32
|
return None
|
@@ -31,6 +31,10 @@ TASK_STATES = [
|
|
31
31
|
(TASK_STATE_CANCELED, 'canceled')
|
32
32
|
]
|
33
33
|
|
34
|
+
TQ_RETRY_BACKOFF_FACTOR = settings.get("TQ_RETRY_BACKOFF_FACTOR", 2)
|
35
|
+
TQ_RETRY_ATTEMPTS = settings.get("TQ_RETRY_ATTEMPTS", 5)
|
36
|
+
TQ_RETRY_DELAY = settings.get("TQ_RETRY_DELAY", 60)
|
37
|
+
|
34
38
|
def getAppHandler(app_name, fname):
|
35
39
|
try:
|
36
40
|
# module = __import__(app_name + '.tq', globals(), locals(), ['*'], 0)
|
@@ -143,6 +147,12 @@ class Task(models.Model, RestModel):
|
|
143
147
|
return self.runtime
|
144
148
|
return (datetime.now() - self.started_at).total_seconds()
|
145
149
|
|
150
|
+
@property
|
151
|
+
def max_attempts(self):
|
152
|
+
if self.data:
|
153
|
+
return self.data.get("retry_max_attempts", TQ_RETRY_ATTEMPTS)
|
154
|
+
return TQ_RETRY_ATTEMPTS
|
155
|
+
|
146
156
|
def set_action(self, value):
|
147
157
|
if value == "retry_now":
|
148
158
|
self.retry_now()
|
@@ -158,6 +168,20 @@ class Task(models.Model, RestModel):
|
|
158
168
|
|
159
169
|
def log(self, text, kind="info"):
|
160
170
|
TaskLog.Log(self, text, kind=kind)
|
171
|
+
if self.data and ((self.data.log_component and self.data.log_pk) or self.data.log_tid):
|
172
|
+
PLOG = self.getModel("auditlog", "PersistentLog")
|
173
|
+
level = 0
|
174
|
+
if kind == "exception":
|
175
|
+
level = 21
|
176
|
+
elif kind == "error":
|
177
|
+
level = 17
|
178
|
+
PLOG.log(message=text, action=f"taskqueue_{kind}",
|
179
|
+
level=level,
|
180
|
+
method=self.fname, path=self.model,
|
181
|
+
tid=self.data.log_tid,
|
182
|
+
component=self.data.log_component,
|
183
|
+
pkey=self.data.log_pk,
|
184
|
+
group=self.data.group_id)
|
161
185
|
|
162
186
|
def log_exception(self, text, kind="exception"):
|
163
187
|
self.log(str(text), kind=kind)
|
@@ -173,7 +197,17 @@ class Task(models.Model, RestModel):
|
|
173
197
|
def retry_later(self, reason=None, from_now_secs=None):
|
174
198
|
if reason:
|
175
199
|
self.reason = reason
|
176
|
-
if from_now_secs:
|
200
|
+
if from_now_secs == -1:
|
201
|
+
# allow backoff retry
|
202
|
+
if self.data:
|
203
|
+
bof = self.data.get("retry_bof", TQ_RETRY_BACKOFF_FACTOR)
|
204
|
+
delay = self.data.get("retry_delay", TQ_RETRY_DELAY)
|
205
|
+
else:
|
206
|
+
bof = TQ_RETRY_BACKOFF_FACTOR
|
207
|
+
delay = TQ_RETRY_DELAY
|
208
|
+
attempts = self.attempts - 1
|
209
|
+
from_now_secs = delay * (bof ** attempts)
|
210
|
+
if from_now_secs is not None:
|
177
211
|
# this will not run the task again until after this time has been hit
|
178
212
|
self.scheduled_for = datetime.now() + timedelta(seconds=from_now_secs)
|
179
213
|
self.state = TASK_STATE_RETRY
|
@@ -200,24 +234,30 @@ class Task(models.Model, RestModel):
|
|
200
234
|
self.notifyError()
|
201
235
|
self.save()
|
202
236
|
|
203
|
-
def notifyError(self
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
msg = "{}:{}<br>\n{}".format(self.model, handler, self.reason)
|
209
|
-
# sms_msg = "{}\n{}".format(subject, msg)
|
210
|
-
# Member.notifyWithPermission("taskqueue_alerts", subject, msg, sms_msg=sms_msg)
|
237
|
+
def notifyError(self):
|
238
|
+
handler = f"{self.model}{self.fname}"
|
239
|
+
subject = f"TaskQueue - {handler}"
|
240
|
+
|
241
|
+
msg = f"{handler}<br>\n{self.reason}"
|
211
242
|
metadata = {
|
212
243
|
"server": settings.get("HOSTNAME", "unknown"),
|
213
244
|
"task": self.pk,
|
214
245
|
"reason": self.reason,
|
215
|
-
"kind": kind,
|
216
246
|
"app": self.model,
|
217
247
|
"fname": self.fname,
|
218
248
|
"channel": self.channel,
|
249
|
+
"attempts": self.attempts,
|
219
250
|
"handler": handler
|
220
251
|
}
|
252
|
+
|
253
|
+
if self.data:
|
254
|
+
if self.data.url:
|
255
|
+
metadata["url"] = self.data.url
|
256
|
+
msg = f"{msg}<br>\n{self.data.url}"
|
257
|
+
if self.data.log_component:
|
258
|
+
metadata["component"] = self.data.log_component
|
259
|
+
if self.data.log_pk:
|
260
|
+
metadata["component_id"] = self.data.log_pk
|
221
261
|
try:
|
222
262
|
import incident
|
223
263
|
incident.event_now(
|
@@ -254,10 +294,16 @@ class Task(models.Model, RestModel):
|
|
254
294
|
return getattr(model, self.fname, None)
|
255
295
|
|
256
296
|
@classmethod
|
257
|
-
def WebRequest(cls, url, data, fname="POST", stale_after_seconds=0
|
297
|
+
def WebRequest(cls, url, data, fname="POST", stale_after_seconds=0,
|
298
|
+
log_component=None, log_pk=None, log_tid=None):
|
258
299
|
tdata = nobjict()
|
259
300
|
tdata.url = url
|
260
301
|
tdata.data = data
|
302
|
+
if log_component is not None:
|
303
|
+
tdata.log_component = log_component
|
304
|
+
tdata.log_pk = log_pk
|
305
|
+
if log_tid is not None:
|
306
|
+
tdata.log_tid = log_tid
|
261
307
|
task = cls(channel="tq_hook", model="tq_web_request", fname=fname, data=tdata)
|
262
308
|
if stale_after_seconds:
|
263
309
|
task.stale_after = datetime.now() + timedelta(seconds=stale_after_seconds)
|
@@ -266,29 +312,41 @@ class Task(models.Model, RestModel):
|
|
266
312
|
return task
|
267
313
|
|
268
314
|
@classmethod
|
269
|
-
def EmailRequest(cls, address, data, filename=None, subject=None
|
315
|
+
def EmailRequest(cls, address, data, filename=None, subject=None,
|
316
|
+
log_component=None, log_pk=None, log_tid=None):
|
270
317
|
tdata = nobjict()
|
271
318
|
tdata.address = address
|
272
319
|
tdata.filename = filename
|
273
320
|
tdata.subject = subject
|
274
321
|
tdata.data = data
|
322
|
+
if log_component is not None:
|
323
|
+
tdata.log_component = log_component
|
324
|
+
tdata.log_pk = log_pk
|
325
|
+
if log_tid is not None:
|
326
|
+
tdata.log_tid = log_tid
|
275
327
|
task = cls(channel="tq_hook", model="tq_email_request", data=tdata)
|
276
328
|
task.save()
|
277
329
|
task.publish()
|
278
330
|
return task
|
279
331
|
|
280
332
|
@classmethod
|
281
|
-
def SMSRequest(cls, phone, data):
|
333
|
+
def SMSRequest(cls, phone, data, log_component=None, log_pk=None, log_tid=None):
|
282
334
|
tdata = nobjict()
|
283
335
|
tdata.phone = phone
|
284
336
|
tdata.data = data
|
337
|
+
if log_component is not None:
|
338
|
+
tdata.log_component = log_component
|
339
|
+
tdata.log_pk = log_pk
|
340
|
+
if log_tid is not None:
|
341
|
+
tdata.log_tid = log_tid
|
285
342
|
task = cls(channel="tq_hook", model="tq_sms_request", data=tdata)
|
286
343
|
task.save()
|
287
344
|
task.publish()
|
288
345
|
return task
|
289
346
|
|
290
347
|
@classmethod
|
291
|
-
def SFTPRequest(cls, host, data, filename, username, password
|
348
|
+
def SFTPRequest(cls, host, data, filename, username, password,
|
349
|
+
log_component=None, log_pk=None, log_tid=None):
|
292
350
|
tdata = nobjict()
|
293
351
|
tdata.host = host
|
294
352
|
tdata.filename = filename
|
@@ -297,13 +355,19 @@ class Task(models.Model, RestModel):
|
|
297
355
|
tdata.username = username
|
298
356
|
tdata.password = password
|
299
357
|
tdata.data = data
|
358
|
+
if log_component is not None:
|
359
|
+
tdata.log_component = log_component
|
360
|
+
tdata.log_pk = log_pk
|
361
|
+
if log_tid is not None:
|
362
|
+
tdata.log_tid = log_tid
|
300
363
|
task = cls(channel="tq_hook", model="tq_sftp_request", data=tdata)
|
301
364
|
task.save()
|
302
365
|
task.publish()
|
303
366
|
return task
|
304
367
|
|
305
368
|
@classmethod
|
306
|
-
def S3Request(cls, bucket, data, folder, aws, secret, filename, when
|
369
|
+
def S3Request(cls, bucket, data, folder, aws, secret, filename, when,
|
370
|
+
log_component=None, log_pk=None, log_tid=None):
|
307
371
|
tdata = nobjict()
|
308
372
|
tdata.bucket = bucket
|
309
373
|
tdata.filename = filename
|
@@ -312,6 +376,11 @@ class Task(models.Model, RestModel):
|
|
312
376
|
tdata.aws = aws
|
313
377
|
tdata.secret = secret
|
314
378
|
tdata.when = str(when)
|
379
|
+
if log_component is not None:
|
380
|
+
tdata.log_component = log_component
|
381
|
+
tdata.log_pk = log_pk
|
382
|
+
if log_tid is not None:
|
383
|
+
tdata.log_tid = log_tid
|
315
384
|
task = cls(channel="tq_hook", model="tq_s3_request", data=tdata)
|
316
385
|
task.save()
|
317
386
|
task.publish()
|
@@ -14,7 +14,7 @@ def REQUEST(task):
|
|
14
14
|
resp = net.REQUEST(method, url, params=params,
|
15
15
|
data=task.data.data, raw_response=True,
|
16
16
|
verify=False, timeout=REQ_TIMEOUT)
|
17
|
-
task.log(resp.text)
|
17
|
+
task.log(resp.text, kind="response")
|
18
18
|
return resp.status_code == 200
|
19
19
|
except requests.Timeout:
|
20
20
|
task.log("request timed out", kind="error")
|
@@ -178,7 +178,7 @@ class WorkManager(object):
|
|
178
178
|
pass
|
179
179
|
|
180
180
|
def processBacklog(self):
|
181
|
-
tasks = Task.objects.filter(state__in=[0,1,2])
|
181
|
+
tasks = Task.objects.filter(state__in=[0, 1, 2])
|
182
182
|
for task in tasks:
|
183
183
|
if task.channel in self.subscribe_to:
|
184
184
|
if task.cancel_requested:
|
@@ -196,8 +196,9 @@ class WorkManager(object):
|
|
196
196
|
def _on_webrequest(self, task):
|
197
197
|
if http.REQUEST(task):
|
198
198
|
task.completed()
|
199
|
-
elif task.attempts <
|
200
|
-
|
199
|
+
elif task.attempts < task.max_attempts:
|
200
|
+
# -1 will auto calculate retry with back off
|
201
|
+
task.retry_later(from_now_secs=-1)
|
201
202
|
else:
|
202
203
|
task.failed("max attempts")
|
203
204
|
|
@@ -212,8 +213,8 @@ class WorkManager(object):
|
|
212
213
|
resp = s3.UPLOAD(task)
|
213
214
|
if resp:
|
214
215
|
task.completed()
|
215
|
-
elif task.
|
216
|
-
task.retry_later(from_now_secs
|
216
|
+
elif task.attempts < task.max_attempts:
|
217
|
+
task.retry_later(from_now_secs=-1)
|
217
218
|
else:
|
218
219
|
task.failed()
|
219
220
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0003_member_phone_number.py
RENAMED
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0005_member_auth_code_expires.py
RENAMED
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0006_member_security_token.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0009_alter_member_phone_number.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/account/migrations/0012_settings_settingsmetadata.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/account/templates/email/simple/reset_code.html
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/inbox/migrations/0003_attachment_content_type.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0006_delete_eventmetadata.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0009_incident_reporter_ip.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{django_restit-4.2.42 → django_restit-4.2.44}/incident/migrations/0013_rulecheck_is_required.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|