| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
It was only used for the model._id -> model.id conversion and is not
needed anymore.
Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We were refering to model._id in most of the code base as this is
what Mongo uses. However, each use of _id required a) fixup of queries:
e.g. what we did in our find() and find_one() functions moving all
'_id' to 'id'. It also required using AliasFields to make the ._id
attribute available. This all means lots of superfluous fixing and
transitioning in a SQL world.
It will also not work in the long run. Much newer code already refers
to the objects by model.id (e.g. in the oauth plugin), which will break
with Mongo. So let's be honest, rip out the _id mongoism and live with
.id as the one canonical way to address objects.
This commit modifies all users and providers of model._id to use
model.id instead. This patch works with or without Mongo removed first,
but will break Mongo usage (even more than before)
I have not bothered to fixup db.mongo.* and db.sql.convert
(which converts from Mongo to SQL)
Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
|
|
|
|
|
|
|
| |
The reason for wanting to give extra information to the user (this is
a very special case migration) is good, but we don't have a nice
"official" way to capture and present that information during tests,
so removing this.
|
| |
|
|
|
|
| |
Add a lengthy comment explaining all the variants.
|
|
|
|
|
| |
This one seems to work nicely in all relevant situations.
See comments inside the source.
|
|
|
|
|
|
| |
_fix_query_dict modifies its argument in place. Ensure that the
argument passed in has a local name and will be passed into the
subsequent filter_by call.
|
| |
|
|
|
|
| |
run.
|
|\
| |
| |
| |
| |
| | |
* commit '9437ea4742':
Add commit argument to clean_orphan_tags
Add "commit" argument to Base model delete()
|
| |
| |
| |
| | |
So we can prevent the session from being committed if we don't want it.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In case we want to bundle db actions into a single transaction, we
can now use delete(commit=False) to prevent the transaction from being
committed immediately. This is useful when e.g. deleting a User() and
thousands of his MediaEntries in a single commit.
Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We have migrations creating new tables. Those currently use
"raw" table definitions. This easily gives errors (we
already had this problem).
So instead rewrite those to use declarative tables and use
those to create new tables. Just copy the new table over to
the migration, strip it down to the bare minimum, rename to
_v0, base it on declarative_base() and be done!
Do this for the current migrations.
|
|/
|
|
| |
Just force the passed in name to MigrationManager() to unicode.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- Added HTTPError catching around the callback request, to not mark the
entry as failed, just log the exception.
- Fixed bug where I forgot to actually fetch the entry before passing it
to json_processing_callback.
- Changed __main__ migration #6 to create the ProcessingMetaData table
as it is currently, to prevent possible breakage if a siteadmin
is lagging behind with his db migrations and more than one migration
wants to fix stuff with the ProcessingMetaData table.
|
|
|
|
|
| |
Sends an HTTP POST request back to an URL given on submission to the API
submit view.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
THE MIGRATIONS SUPPLIED WITH THIS COMMIT WILL DROP AND RE-CREATE YOUR
oauth__tokens AND oauth__codes TABLES. ALL YOUR OAUTH CODES AND TOKENS
WILL BE LOST.
- Fixed pylint issues in db/sql/migrations.
- Added __repr__ to the User model.
- Added _disable_cors option to json_response.
- Added crude error handling to the api.tools.api_auth decorator
- Updated the OAuth README.
- Added client registration, client overview, connection overview,
client authorization views and templates.
- Added error handling to the OAuthAuth Auth object.
- Added AuthorizationForm, ClientRegistrationForm in oauth/forms.
- Added migrations for OAuth, added client registration migration.
- Added OAuthClient, OAuthUserClient models.
- Added oauth/tools with require_client_auth decorator method.
|
| |
|
| |
|
| |
|
|
|
|
| |
instead of 'collections'
|
| |
|
|
|
|
|
| |
- Adapt tests to new global_config arg for run_dbupdate
- Account for [plugins] not being set in config
|
| |
|
|
|
|
|
| |
The __repr__() call would crash the process when it tried to convert an
unicode title to ASCII for terminal/logfile output.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Added progress meter for video and audio media types.
- Changed the __repr__ method of a MediaEntry to display a bit more
useful explanation.
- Added a new MediaEntry.state, 'processing', which means that the task
is running the processor on the item currently.
- Fixed some PEP8 issues in user_pages/views.py
- Fixed the ATOM TAG URI to show the correct year.
|
|
|
|
| |
This commit makes test_submission mostly warning-clean.
|
|
|
|
|
|
|
|
|
|
|
|
| |
sqlite doesn't like complex changes (alter table) to happen
inside a transaction that has already done other things.
And really, each migration should say "I'm done" and commit
its changes.
This is not the full story, but it's the core of it.
Specifially the migration framework should probably do a
rollback "just in case" after each migration.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
'is_derek/bug405_email_notifications_for_comments' into notifications-merge
Conflicts:
mediagoblin/db/mongo/migrations.py
|
| |\
| | |
| | |
| | |
| | | |
Conflicts:
mediagoblin/db/mongo/migrations.py
|
| | | |
|
| | |
| | |
| | |
| | | |
Renamed `ogg' to `webm_audio' in core__file_keynames
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The cleanup could be missed if the request handling code in
app.py:__call__ exits early (due to exception, or due to
one of those early "return"s).
So to make sure the sql session is cleaned up for real,
wrap the whole thing in a try: finally:.
Also wrote a short tool to test if the session is actually
empty. The tool is currently disabled, but ready to be
used.
|
| | |
| | |
| | |
| | |
| | | |
In the analyzing part also check that the media_data tables
are empty (as expected) before dropping them.
|
| | |
| | |
| | |
| | | |
Well, and if it's not needed, drop it again. ;)
|
| | |
| | |
| | |
| | |
| | |
| | | |
After converting everything, check what is actually used in
the db. For media_types that are not used, drop all the
media_data tables and remove the migration info.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Output some headers while converting things.
And indent some info.
Also some DRY things.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The JSON fields are really "dumb stuff in here" fields.
They are not intended to get indexed or anything. And they
can get large. For example the exif_all field in one of my
simple tests is nearly 7 kB large. Although VARCHAR might
work, TEXT feels just better as the storage type.
|
| | | |
|
| | |
| | |
| | |
| | | |
And some other stuff, that the converter does not need.
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
And add the image and video media_data tables.
And start to rewrite the convert tool.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
1. No need to drop media_data['exif'], we only have and
want media_data['exif_all'].
2. Use media['_id'] instead of media._id (better not use
dot-notation on mongo objects in such a low level tool).
|