Comments (4)
Interesting points. Thanks for looking into this so thoroughly.
I ultimatately don't mind if you make a distro-specific patch, and would be happy to tweak the django-watson
codebase if the impact was small and it made your life easier. Non-django packages are probably easier to patch, but it sounds like you're considering everything quite sensibly.
Let me know what decision you come to, and if there's anything I can do to help out! :)
from django-watson.
If nothing else, it would be great if we can make this watson "relocatable" to django_watson
. i.e. distros applying a patch to setup.py which installs it to a non-standard directory. Then as long as "django_watson" is put into INSTALLED_APPS, and relative imports are used, distro users should be able to use this without further adjustments. Not ideal, and that patch would be unsupported by the project team here, but it is a way forward.
from django-watson.
There's an issue here, in that the "watson" namespace is used in database tables too. Anything that depends on "watson" will have to update not only their import
statements, but also any raw SQL queries.
It's pretty unfortunate that PyPi lets this happen. But there's a precedent of django-related projects having a django-
prefix in PyPi but installing the package without the prefix. And patching/renaming stuff is going to confuse people.
How about all the different "watson" packages are just marked as conflicting in the Debian package metadata? That's a pretty accurate representation of what's happening here. I have a feeling that most people use pip/virtualenv/pipenv to manage dependencies rather than the system package manager anyway.
from django-watson.
There's an issue here, in that the "watson" namespace is used in database tables too.
Django now has a workaround for this with app "label"s. Usually this works. This would be part of the distro patching. The one type of Django naming which is unsolved afaik is route namespaces, but that only causes problems when two apps use the same namespace. We dont have two Django apps here, so I think we should be ok.
Agree re PyPI, very poor metadata historically, but getting better.
And I am currently doing Conflicts:
in the .spec, but wish to improve on that.
But there's a precedent of django-related projects having a django- prefix in PyPi but installing the package without the prefix.
Yup, agreed.
I have a feeling that most people use pip/virtualenv/pipenv to manage dependencies rather than the system package manager anyway.
Absolutely. And solving the system packaging problem should not be at the expense of those users, and doesnt need to be rushed.
And patching/renaming stuff is going to confuse people.
It is only going to impact people who use distro packages for their Django server, which is a very limited subset. But still I take your point, it isnt the best outcome, and arguably even Conflicts:
may be better. Maybe one of the other packages can be renamed, either upstream or by patching, with less impact.
from django-watson.
Related Issues (20)
- AttributeError: module 'blog.admin' has no attribute 'site' HOT 2
- rebuilding index doesn't remove entries for deleted objects HOT 3
- No results for partial keywords HOT 1
- support extra fields to be indexed HOT 1
- expose metadata also in .filter() results HOT 3
- Registering Django FlatPage in apps.py or __init__.py Throws "Apps aren't loaded yet" Exception HOT 6
- Error after updating django to latest version HOT 2
- Possible to search with partial match? HOT 4
- Django 3.2 Warning in migration HOT 1
- psycopg2.errors.UndefinedTable: relation "watson_searchentry" does not exist HOT 3
- Search for a subset by filtering on related model fields HOT 2
- I ran python manage.py buildwatson and an error was returned... HOT 1
- 'QuerySet' object has no attribute 'strip' HOT 1
- Using non numeric primary keys HOT 1
- Issues with indexing with taggit HOT 2
- The search returns not only variants of the same word, but also words starting with the requested word HOT 3
- Doesn't pick up worded numbers in search terms HOT 1
- Searching for non-model related items (like views) HOT 1
- Support Multi-Database configuration
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from django-watson.