summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-15 04:01:39 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-15 04:01:39 +0000
commita5742b6be29379d28f12f7589fcc8e7d38e94967 (patch)
tree6054a0586e41fcd94192dbd83a0ebe74131b881c
parentbf341e669b39b2ff9546be28cf4a5dfb63e3a5c9 (diff)
automatic import of python-django-friendship
-rw-r--r--.gitignore1
-rw-r--r--python-django-friendship.spec603
-rw-r--r--sources1
3 files changed, 605 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..d7b134a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/django_friendship-1.9.6.tar.gz
diff --git a/python-django-friendship.spec b/python-django-friendship.spec
new file mode 100644
index 0000000..140f354
--- /dev/null
+++ b/python-django-friendship.spec
@@ -0,0 +1,603 @@
+%global _empty_manifest_terminate_build 0
+Name: python-django-friendship
+Version: 1.9.6
+Release: 1
+Summary: django-friendship provides an easy extensible interface for following and friendship
+License: BSD-3-Clause
+URL: https://github.com/revsys/django-friendship/
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2d/af/2b58320c47e1cc99d45b73915c818206cb669e55a8bc4de3d1ff73a74a3d/django_friendship-1.9.6.tar.gz
+BuildArch: noarch
+
+Requires: python3-black
+Requires: python3-pytest
+Requires: python3-pytest-django
+Requires: python3-pytest-cov
+Requires: python3-pytest-pythonpath
+Requires: python3-factory-boy
+
+%description
+# django-friendship
+
+[![CI](https://github.com/revsys/django-friendship/actions/workflows/actions.yml/badge.svg)](https://github.com/revsys/django-friendship/actions/workflows/actions.yml)
+
+This application enables you to create and manage follows, blocks and bi-directional friendships between users. It features:
+
+- Friendship request objects that can be accepted, rejected, canceled, or marked as viewed.
+- Hooks to easily list all friend requests sent or received by a given user, filtered by the status of the request.
+- A blocklist for each user of users they've blocked.
+- Tags to include information about friendships, blocks and follows in your templates.
+- Integration with `AUTH_USER_MODEL`.
+- Validation to prevent common mistakes.
+- Faster server response time through caching
+
+## Requirements
+
+** Django 3.2 since v1.9.1 **
+
+Previously: **Django 1.11+** since v1.7.0 (latest release supporting **Django 1.10** is v1.6.0)
+
+## Installation
+
+1. `pip install django-friendship`
+2. add `"friendship"` to `INSTALLED_APPS` and run `python manage.py migrate`.
+3. Use the friendship manager in your own views, or wire up the URLconf to include the builtin views:
+
+```python
+urlpatterns = [
+ ...
+ path('friendship/', include('friendship.urls'))
+ ...
+]
+```
+
+Note: If you are migrating from django-friendship `v1.6.x`, you'll need to rollback your migrations and fake
+migration `0002`
+
+```shell
+$ ./manage.py migrate friendship 0001
+$ ./manage.py migrate friendship 0002 --fake
+```
+
+If you're migrating from `v1.7.x`, you'll likely have to fake `0003` as well:
+
+```shell
+$ ./manage.py migrate friendship 0003 --fake
+```
+
+## Usage
+
+`django-friendship` provides a free API that gives you several ways to create and manage friendship requests or follows in your views. Add the following at the top of your `views.py`:
+
+```python
+from django.contrib.auth.models import User
+from friendship.models import Friend, Follow, Block
+```
+
+### Getting Data about Friendships
+
+- List all of a user's friends: `Friend.objects.friends(request.user)`
+- List all unread friendship requests: `Friend.objects.unread_requests(user=request.user)`
+- List all unrejected friendship requests: `Friend.objects.unrejected_requests(user=request.user)`
+- Count of all unrejected friendship requests: `Friend.objects.unrejected_request_count(user=request.user)`
+- List all rejected friendship requests: `Friend.objects.rejected_requests(user=request.user)`
+- Count of all rejected friendship requests: `Friend.objects.rejected_request_count(user=request.user)`
+- List of all sent friendship requests: `Friend.objects.sent_requests(user=request.user)`
+- Test if two users are friends: `Friend.objects.are_friends(request.user, other_user) == True`
+
+### Getting Data about Follows
+
+- List of a user's followers: `Follow.objects.followers(request.user)`
+- List of who a user is following: `Follow.objects.following(request.user)`
+
+### Getting Data about Blocks
+
+- List of a user's blockers: `Block.objects.blocked(request.user)`
+- List of who a user is blocking: `Block.objects.blocking(request.user)`
+- Test if a user is blocked: `Block.objects.is_blocked(request.user, other_user) == True`
+
+### Managing Friendships and Follows
+
+#### Create a friendship request:
+
+```python
+other_user = User.objects.get(pk=1)
+Friend.objects.add_friend(
+ request.user, # The sender
+ other_user, # The recipient
+ message='Hi! I would like to add you') # This message is optional
+```
+
+#### Let the user who received the request respond:
+
+```python
+from friendship.models import FriendshipRequest
+
+friend_request = FriendshipRequest.objects.get(from_user=request.user, to_user=other_user)
+friend_request.accept()
+# or friend_request.reject()
+```
+
+#### To remove the friendship relationship between `request.user` and `other_user`, do the following:
+
+```python
+Friend.objects.remove_friend(request.user, other_user)
+```
+
+#### Make request.user a follower of other_user:
+
+```python
+Follow.objects.add_follower(request.user, other_user)
+```
+
+
+#### Make request.user block other_user:
+
+```python
+Block.objects.add_block(request.user, other_user)
+```
+
+#### Make request.user unblock other_user:
+
+```python
+Block.objects.remove_block(request.user, other_user)
+```
+
+### Templates
+
+You can use `django-friendship` tags in your templates. First enter:
+
+```django
+{% load friendshiptags %}
+```
+
+Then use any of the following:
+
+```django
+{% friends request.user %}
+{% followers request.user %}
+{% following request.user %}
+{% friend_requests request.user %}
+{% blockers request.user %}
+{% blocking request.user %}
+```
+
+### Signals
+
+`django-friendship` emits the following signals:
+
+- friendship_request_created
+- friendship_request_rejected
+- friendship_request_canceled
+- friendship_request_accepted
+- friendship_removed
+- follower_created
+- following_created
+- follower_removed
+- following_removed
+- block_created
+- block_removed
+
+
+### Contributing
+
+Development [takes place on GitHub](https://github.com/revsys/django-friendship). Bug reports, patches, and fixes are always welcome!
+
+# Need help?
+
+[REVSYS](http://www.revsys.com?utm_medium=github&utm_source=django-test-plus) can help with your Python, Django, and infrastructure projects. If you have a question about this project, please open a GitHub issue. If you love us and want to keep track of our goings-on, here's where you can find us online:
+
+<a href="https://revsys.com?utm_medium=github&utm_source=django-friendship"><img src="https://pbs.twimg.com/profile_images/915928618840285185/sUdRGIn1_400x400.jpg" height="50" /></a>
+<a href="https://twitter.com/revsys"><img src="https://cdn1.iconfinder.com/data/icons/new_twitter_icon/256/bird_twitter_new_simple.png" height="43" /></a>
+<a href="https://www.facebook.com/revsysllc/"><img src="https://cdn3.iconfinder.com/data/icons/picons-social/57/06-facebook-512.png" height="50" /></a>
+
+
+
+
+%package -n python3-django-friendship
+Summary: django-friendship provides an easy extensible interface for following and friendship
+Provides: python-django-friendship
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-django-friendship
+# django-friendship
+
+[![CI](https://github.com/revsys/django-friendship/actions/workflows/actions.yml/badge.svg)](https://github.com/revsys/django-friendship/actions/workflows/actions.yml)
+
+This application enables you to create and manage follows, blocks and bi-directional friendships between users. It features:
+
+- Friendship request objects that can be accepted, rejected, canceled, or marked as viewed.
+- Hooks to easily list all friend requests sent or received by a given user, filtered by the status of the request.
+- A blocklist for each user of users they've blocked.
+- Tags to include information about friendships, blocks and follows in your templates.
+- Integration with `AUTH_USER_MODEL`.
+- Validation to prevent common mistakes.
+- Faster server response time through caching
+
+## Requirements
+
+** Django 3.2 since v1.9.1 **
+
+Previously: **Django 1.11+** since v1.7.0 (latest release supporting **Django 1.10** is v1.6.0)
+
+## Installation
+
+1. `pip install django-friendship`
+2. add `"friendship"` to `INSTALLED_APPS` and run `python manage.py migrate`.
+3. Use the friendship manager in your own views, or wire up the URLconf to include the builtin views:
+
+```python
+urlpatterns = [
+ ...
+ path('friendship/', include('friendship.urls'))
+ ...
+]
+```
+
+Note: If you are migrating from django-friendship `v1.6.x`, you'll need to rollback your migrations and fake
+migration `0002`
+
+```shell
+$ ./manage.py migrate friendship 0001
+$ ./manage.py migrate friendship 0002 --fake
+```
+
+If you're migrating from `v1.7.x`, you'll likely have to fake `0003` as well:
+
+```shell
+$ ./manage.py migrate friendship 0003 --fake
+```
+
+## Usage
+
+`django-friendship` provides a free API that gives you several ways to create and manage friendship requests or follows in your views. Add the following at the top of your `views.py`:
+
+```python
+from django.contrib.auth.models import User
+from friendship.models import Friend, Follow, Block
+```
+
+### Getting Data about Friendships
+
+- List all of a user's friends: `Friend.objects.friends(request.user)`
+- List all unread friendship requests: `Friend.objects.unread_requests(user=request.user)`
+- List all unrejected friendship requests: `Friend.objects.unrejected_requests(user=request.user)`
+- Count of all unrejected friendship requests: `Friend.objects.unrejected_request_count(user=request.user)`
+- List all rejected friendship requests: `Friend.objects.rejected_requests(user=request.user)`
+- Count of all rejected friendship requests: `Friend.objects.rejected_request_count(user=request.user)`
+- List of all sent friendship requests: `Friend.objects.sent_requests(user=request.user)`
+- Test if two users are friends: `Friend.objects.are_friends(request.user, other_user) == True`
+
+### Getting Data about Follows
+
+- List of a user's followers: `Follow.objects.followers(request.user)`
+- List of who a user is following: `Follow.objects.following(request.user)`
+
+### Getting Data about Blocks
+
+- List of a user's blockers: `Block.objects.blocked(request.user)`
+- List of who a user is blocking: `Block.objects.blocking(request.user)`
+- Test if a user is blocked: `Block.objects.is_blocked(request.user, other_user) == True`
+
+### Managing Friendships and Follows
+
+#### Create a friendship request:
+
+```python
+other_user = User.objects.get(pk=1)
+Friend.objects.add_friend(
+ request.user, # The sender
+ other_user, # The recipient
+ message='Hi! I would like to add you') # This message is optional
+```
+
+#### Let the user who received the request respond:
+
+```python
+from friendship.models import FriendshipRequest
+
+friend_request = FriendshipRequest.objects.get(from_user=request.user, to_user=other_user)
+friend_request.accept()
+# or friend_request.reject()
+```
+
+#### To remove the friendship relationship between `request.user` and `other_user`, do the following:
+
+```python
+Friend.objects.remove_friend(request.user, other_user)
+```
+
+#### Make request.user a follower of other_user:
+
+```python
+Follow.objects.add_follower(request.user, other_user)
+```
+
+
+#### Make request.user block other_user:
+
+```python
+Block.objects.add_block(request.user, other_user)
+```
+
+#### Make request.user unblock other_user:
+
+```python
+Block.objects.remove_block(request.user, other_user)
+```
+
+### Templates
+
+You can use `django-friendship` tags in your templates. First enter:
+
+```django
+{% load friendshiptags %}
+```
+
+Then use any of the following:
+
+```django
+{% friends request.user %}
+{% followers request.user %}
+{% following request.user %}
+{% friend_requests request.user %}
+{% blockers request.user %}
+{% blocking request.user %}
+```
+
+### Signals
+
+`django-friendship` emits the following signals:
+
+- friendship_request_created
+- friendship_request_rejected
+- friendship_request_canceled
+- friendship_request_accepted
+- friendship_removed
+- follower_created
+- following_created
+- follower_removed
+- following_removed
+- block_created
+- block_removed
+
+
+### Contributing
+
+Development [takes place on GitHub](https://github.com/revsys/django-friendship). Bug reports, patches, and fixes are always welcome!
+
+# Need help?
+
+[REVSYS](http://www.revsys.com?utm_medium=github&utm_source=django-test-plus) can help with your Python, Django, and infrastructure projects. If you have a question about this project, please open a GitHub issue. If you love us and want to keep track of our goings-on, here's where you can find us online:
+
+<a href="https://revsys.com?utm_medium=github&utm_source=django-friendship"><img src="https://pbs.twimg.com/profile_images/915928618840285185/sUdRGIn1_400x400.jpg" height="50" /></a>
+<a href="https://twitter.com/revsys"><img src="https://cdn1.iconfinder.com/data/icons/new_twitter_icon/256/bird_twitter_new_simple.png" height="43" /></a>
+<a href="https://www.facebook.com/revsysllc/"><img src="https://cdn3.iconfinder.com/data/icons/picons-social/57/06-facebook-512.png" height="50" /></a>
+
+
+
+
+%package help
+Summary: Development documents and examples for django-friendship
+Provides: python3-django-friendship-doc
+%description help
+# django-friendship
+
+[![CI](https://github.com/revsys/django-friendship/actions/workflows/actions.yml/badge.svg)](https://github.com/revsys/django-friendship/actions/workflows/actions.yml)
+
+This application enables you to create and manage follows, blocks and bi-directional friendships between users. It features:
+
+- Friendship request objects that can be accepted, rejected, canceled, or marked as viewed.
+- Hooks to easily list all friend requests sent or received by a given user, filtered by the status of the request.
+- A blocklist for each user of users they've blocked.
+- Tags to include information about friendships, blocks and follows in your templates.
+- Integration with `AUTH_USER_MODEL`.
+- Validation to prevent common mistakes.
+- Faster server response time through caching
+
+## Requirements
+
+** Django 3.2 since v1.9.1 **
+
+Previously: **Django 1.11+** since v1.7.0 (latest release supporting **Django 1.10** is v1.6.0)
+
+## Installation
+
+1. `pip install django-friendship`
+2. add `"friendship"` to `INSTALLED_APPS` and run `python manage.py migrate`.
+3. Use the friendship manager in your own views, or wire up the URLconf to include the builtin views:
+
+```python
+urlpatterns = [
+ ...
+ path('friendship/', include('friendship.urls'))
+ ...
+]
+```
+
+Note: If you are migrating from django-friendship `v1.6.x`, you'll need to rollback your migrations and fake
+migration `0002`
+
+```shell
+$ ./manage.py migrate friendship 0001
+$ ./manage.py migrate friendship 0002 --fake
+```
+
+If you're migrating from `v1.7.x`, you'll likely have to fake `0003` as well:
+
+```shell
+$ ./manage.py migrate friendship 0003 --fake
+```
+
+## Usage
+
+`django-friendship` provides a free API that gives you several ways to create and manage friendship requests or follows in your views. Add the following at the top of your `views.py`:
+
+```python
+from django.contrib.auth.models import User
+from friendship.models import Friend, Follow, Block
+```
+
+### Getting Data about Friendships
+
+- List all of a user's friends: `Friend.objects.friends(request.user)`
+- List all unread friendship requests: `Friend.objects.unread_requests(user=request.user)`
+- List all unrejected friendship requests: `Friend.objects.unrejected_requests(user=request.user)`
+- Count of all unrejected friendship requests: `Friend.objects.unrejected_request_count(user=request.user)`
+- List all rejected friendship requests: `Friend.objects.rejected_requests(user=request.user)`
+- Count of all rejected friendship requests: `Friend.objects.rejected_request_count(user=request.user)`
+- List of all sent friendship requests: `Friend.objects.sent_requests(user=request.user)`
+- Test if two users are friends: `Friend.objects.are_friends(request.user, other_user) == True`
+
+### Getting Data about Follows
+
+- List of a user's followers: `Follow.objects.followers(request.user)`
+- List of who a user is following: `Follow.objects.following(request.user)`
+
+### Getting Data about Blocks
+
+- List of a user's blockers: `Block.objects.blocked(request.user)`
+- List of who a user is blocking: `Block.objects.blocking(request.user)`
+- Test if a user is blocked: `Block.objects.is_blocked(request.user, other_user) == True`
+
+### Managing Friendships and Follows
+
+#### Create a friendship request:
+
+```python
+other_user = User.objects.get(pk=1)
+Friend.objects.add_friend(
+ request.user, # The sender
+ other_user, # The recipient
+ message='Hi! I would like to add you') # This message is optional
+```
+
+#### Let the user who received the request respond:
+
+```python
+from friendship.models import FriendshipRequest
+
+friend_request = FriendshipRequest.objects.get(from_user=request.user, to_user=other_user)
+friend_request.accept()
+# or friend_request.reject()
+```
+
+#### To remove the friendship relationship between `request.user` and `other_user`, do the following:
+
+```python
+Friend.objects.remove_friend(request.user, other_user)
+```
+
+#### Make request.user a follower of other_user:
+
+```python
+Follow.objects.add_follower(request.user, other_user)
+```
+
+
+#### Make request.user block other_user:
+
+```python
+Block.objects.add_block(request.user, other_user)
+```
+
+#### Make request.user unblock other_user:
+
+```python
+Block.objects.remove_block(request.user, other_user)
+```
+
+### Templates
+
+You can use `django-friendship` tags in your templates. First enter:
+
+```django
+{% load friendshiptags %}
+```
+
+Then use any of the following:
+
+```django
+{% friends request.user %}
+{% followers request.user %}
+{% following request.user %}
+{% friend_requests request.user %}
+{% blockers request.user %}
+{% blocking request.user %}
+```
+
+### Signals
+
+`django-friendship` emits the following signals:
+
+- friendship_request_created
+- friendship_request_rejected
+- friendship_request_canceled
+- friendship_request_accepted
+- friendship_removed
+- follower_created
+- following_created
+- follower_removed
+- following_removed
+- block_created
+- block_removed
+
+
+### Contributing
+
+Development [takes place on GitHub](https://github.com/revsys/django-friendship). Bug reports, patches, and fixes are always welcome!
+
+# Need help?
+
+[REVSYS](http://www.revsys.com?utm_medium=github&utm_source=django-test-plus) can help with your Python, Django, and infrastructure projects. If you have a question about this project, please open a GitHub issue. If you love us and want to keep track of our goings-on, here's where you can find us online:
+
+<a href="https://revsys.com?utm_medium=github&utm_source=django-friendship"><img src="https://pbs.twimg.com/profile_images/915928618840285185/sUdRGIn1_400x400.jpg" height="50" /></a>
+<a href="https://twitter.com/revsys"><img src="https://cdn1.iconfinder.com/data/icons/new_twitter_icon/256/bird_twitter_new_simple.png" height="43" /></a>
+<a href="https://www.facebook.com/revsysllc/"><img src="https://cdn3.iconfinder.com/data/icons/picons-social/57/06-facebook-512.png" height="50" /></a>
+
+
+
+
+%prep
+%autosetup -n django-friendship-1.9.6
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-django-friendship -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 1.9.6-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..d5fb760
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+9e6f6e383c9e40a046e0b5ef0386e14d django_friendship-1.9.6.tar.gz