Petr Viktorin
50b08d94d9
Make a few __get__ methods work properly on their class
...
Automatic doc generation requires this.
2012-02-11 22:54:46 +01:00
Petr Viktorin
81f2c83ad5
Allow ordering and filtering on translated texts, e.g. Move.name
2012-02-11 21:05:52 +01:00
Lynn "Zhorken" Vaughan
d3fa2891c8
Mention a couple of oddities with Struggle's recoil. #13
2012-02-11 12:17:36 -05:00
Lynn "Zhorken" Vaughan
7b2246d854
Little fixes for Magnitude and Crush Grip/Wring Out. #39 #40
2012-02-11 12:02:47 -05:00
Petr Viktorin
1d76ba7587
Move effect prose: Link mechanic:drain
2012-02-11 16:54:40 +01:00
Petr Viktorin
1c6023cd04
Move effect prose: Link fixes
2012-02-11 16:54:40 +01:00
Petr Viktorin
53abbacb2a
Move effect prose: Link the “fail” mechanic
2012-02-11 16:54:40 +01:00
Petr Viktorin
5b7e13892a
Add pokemon_form_generations, with internal game indices
...
Fixes #63
2012-02-11 13:08:54 +01:00
Petr Viktorin
216e4c8462
Typo fix
2012-02-11 09:12:17 +01:00
Lynn "Zhorken" Vaughan
677cd8f19e
Mark Zen Darmanitan as battle-only.
2012-02-10 16:33:05 -05:00
Eevee
897c6f1de1
Merge pull request #64 from veekun/zhorken
...
Fixes some move data issues and form bugs.
2012-02-05 21:29:22 -08:00
Petr Viktorin
48f3957aab
Add the VersionGroupPokemonMoveMethod table
2012-02-06 00:43:47 +01:00
Petr Viktorin
e15b1a257a
Put XD between Colosseum and FRLG. It is related to Colosseum more.
...
Also it should collapse better in the spline-pokedex tables.
2012-01-30 21:22:42 +01:00
Petr Viktorin
d4b7a29182
XD fix: Add order for the level-up moves
2012-01-30 20:25:13 +01:00
Petr Viktorin
73cf9c036c
Use VersionGroup.order in a bunch of relationships
2012-01-30 18:17:00 +01:00
Petr Viktorin
1134415e13
Introduce an order
column for version groups
...
Some code in spline-pokedex orders by `id`, which has worse consequences
than it may seem (e.g. instead of defaulting to most recent games, the
comparifier defaults to XD). This is the first step to fixing that.
2012-01-30 14:09:05 +01:00
Lynn "Zhorken" Vaughan
a6f9b47ae4
Copy the red Basculin's egg moves to the blue one. #575
2012-01-24 00:25:06 -05:00
Lynn "Zhorken" Vaughan
eb7c26b621
Add Keldeo's Secret Sword tutor.
2012-01-24 00:24:02 -05:00
Lynn "Zhorken" Vaughan
111394315e
Fix the indiscriminate display of Pokémon with their form names.
2012-01-24 00:24:02 -05:00
Lynn "Zhorken" Vaughan
871f9aa58b
Add French Pokémon form names.
2012-01-24 00:23:53 -05:00
Lynn "Zhorken" Vaughan
1309659ec3
Update the move changelog after that rerip.
...
I actually reripped all the D/P data, too, and compared them myself just
to be sure, but those four were all there was. (The other move from the
last commit was Poison Gas—we had its old accuracy right, remember.)
2012-01-19 03:00:36 -05:00
Lynn "Zhorken" Vaughan
cb5276773b
Rerip B/W power, accuracy, and PP for all moves.
2012-01-19 01:52:17 -05:00
Petr Viktorin
3607b9b3e1
Let MoveEffectProperty be None if the move_effect is None
...
MoveChangelog.move_effect is None if there is no effect change.
Its .effect should just be None as well.
2011-11-14 21:17:12 +02:00
Petr Viktorin
fd402d74e6
Move effect link fixes
2011-11-14 21:15:52 +02:00
Petr Viktorin
edd7efed29
Add XD tutor moves from ete's list, #588 , and XD/Colosseum level-up moves.
2011-10-29 17:01:07 +03:00
Petr Viktorin
144ff0a58e
Add Colosseum and XD as versions. Prepare to add XD tutors from ete's list. #588
2011-10-29 17:01:06 +03:00
Lynn "Zhorken" Vaughan
6f8a0bdc2e
Pirouette Meloetta is battle only; Overcast Cherrim is not.
2011-10-12 20:34:25 -04:00
Lynn "Zhorken" Vaughan
8ae79f8898
Tweak a couple Pokémon form names.
2011-10-12 20:24:32 -04:00
Lynn "Zhorken" Vaughan
44569700ae
Switch the Magic Coat and Role Play HG/SS tutor lists.
...
We apparently had them reversed somehow.
2011-10-01 01:55:09 -04:00
Petr Viktorin
b96b5aa956
Fix Magnitude percentages. #555
2011-09-24 18:56:12 +03:00
Petr Viktorin
28c39263df
Load/dump dance
2011-09-22 16:39:40 +03:00
Petr Viktorin
ebab8c6e43
Try importing markdown utilities from markdown.util
...
etree and AtomicString will be moved in python-markdown 2.1
See commit https://github.com/waylan/Python-Markdown/commit/89a4f3d0829a7 :
Cleaned up markdown namespace. This may be a backward incompatible
change for some extensions. They should be importing from
markdown.util
2011-09-22 00:51:59 +03:00
Petr Viktorin
719c32de0b
Make MarkdownString.as_html() accept an extension object, not class
...
No reason to instantiate every time as_html's called, is there?
Also, sessions use a markdown_extension attribute instead of
markdown_extension_class. The latter is only used to set the former when
the session is created (unless another markdown_extension_class is given,
of course).
2011-09-22 00:51:59 +03:00
Petr Viktorin
928eaca4a4
Make bad links in Markdown not fail
...
Links such as []{pokemon:mewthree} can come from users, so they should not
crash the parser.
So, when an object is not found (or more than one is found), call
identifier_url() directly, instead of failing to get the object for
object_url(). Essentially, treat the link as having an unknown category
(like mechanic:, currently).
The test that check the pokédex descriptions updated so that only
links to known objects and "mechanic:" are allowed.
2011-09-22 00:51:59 +03:00
Petr Viktorin
cdac374eed
Allow links to Pokémon forms in Markdown. Fixes #465
...
Linked-to objects aren't required to have identifiers now, so object_url()
in custom extensions might need to be changed.
The one in the test did, for example.
2011-09-22 00:51:59 +03:00
Petr Viktorin
d8d32a0176
Use identifiers in Pokemon.stat
2011-09-22 00:51:59 +03:00
Petr Viktorin
2a73d371f7
Typo fix in Light Screen effect
2011-09-22 00:51:59 +03:00
Lynn "Zhorken" Vaughan
c9ae5f9688
A bit of ability prose cleanup related to the last commit. #561
2011-09-21 17:38:56 -04:00
Lynn "Zhorken" Vaughan
aa0119f4c6
A bunch of improvements to ability effects and changelogs. #561
2011-09-21 16:28:46 -04:00
Lynn "Zhorken" Vaughan
36dfe7555e
Fix curly endquotes/apostrophes in B/W flavour text.
2011-09-21 16:28:46 -04:00
Eevee
a11261e529
Fix a stupid closure-in-loop problem. #654 #655
2011-09-11 17:27:58 -07:00
Eevee
eb6cae4bf3
Fix whoosh result sorting.
...
Now results are sorted by is-this-your-language (times levenshtein
distance, if appropriate), then by rough class of result (Pokémon, then
moves, then abilities, etc.) and finally by name.
This fixes a couple issues:
- If both a foreign name and a local name matched a wildcard lookup,
you'll see the local name. Before, you'd see whichever happened to be
first alphabetically.
- Wildcard results are more likely to have useful stuff at the top,
rather than being dominated by foreign junk and names of obscure
locations.
This also updates our usage of the whoosh API, which was old and busted
as of 2.0 or so.
2011-09-09 22:31:38 -07:00
Eevee
514ac79216
Improve multilingual support in lookup.
...
Language identifiers are stored and retrieved, rather than English
names.
Language weighting biases towards the current language, rather than to
English.
Language is no longer considered nullable to indicate English.
Duplicate names in other languages are no longer omitted from the index.
2011-09-08 20:58:29 -07:00
Eevee
66988fb070
Merge remote-tracking branch 'origin/encukou-whoosh'
...
Conflicts:
setup.py
2011-09-06 23:33:08 -07:00
Eevee
25ab674c7c
Fix this markdown extension nonsense.
...
Previously, every single spline-pokedex request tacked another markdown
extension onto a global list in spline, making markdown processing just
a little bit slower over time. This is terrible.
Now we do something a little less crazy and a little more global. Wait,
is that less crazy or more?
2011-09-06 21:52:27 -07:00
Petr Viktorin
bb1a164a34
Capitalization fix for Sunshine Cherrim
2011-09-05 11:21:19 +03:00
Petr Viktorin
46e924e821
Order Unown and Pichu forms
2011-09-05 11:21:19 +03:00
Petr Viktorin
3dc8a4cbd0
Add a sanity check for PokemonForm.order
2011-09-05 11:20:16 +03:00
Eevee
3a59ef1fe0
Update us to SQLAlchemy 0.7. #582
2011-09-04 23:19:56 -07:00
Petr Viktorin
21641d6fd0
Correct Italian names for Shadow Panic and Shadow type
...
See http://wiki.pokemoncentral.it/Ombrapanico_(mossa)
Qwilava (an admin at that wiki) confirms
2011-09-02 20:56:30 +03:00
Petr Viktorin
af8215535e
Use the new Whoosh API for spelling. May help #181 .
2011-08-30 23:17:20 +03:00
Petr Viktorin
bb49a6bc39
Fix a Unicode docstring
2011-08-30 23:05:28 +03:00
Petr Viktorin
41a168a0e2
Add a missing import, remove some unused ones
2011-08-30 23:05:22 +03:00
Petr Viktorin
f764a90439
Add missing gen.3 tutors (found by Eric the Espeon)
...
Glalie:Defense Curl in Emerald
Gengar:Double-Edge in Emerald & FRLG (confirmed by Moo)
Glalie:Rollout in Emerald
2011-08-30 14:15:54 +03:00
Eevee
10ce391098
Nicer docstrings for the three "pokemon" tables we have now.
2011-08-29 20:36:06 -07:00
Eevee
339d5d7da6
Merge branch 'encukou-species-split'
2011-08-29 20:00:58 -07:00
Eevee
6410c35141
Try to clarify this Judgment/Techno Blast thing. #644
2011-08-29 19:33:45 -07:00
Eevee
690a64cbf7
Scary Face changed from 90% to 100% accuracy in B/W.
2011-08-29 19:25:50 -07:00
Eevee
29324e39af
Weezing can be tutored Rollout in Pt/HG/SS. #641
2011-08-29 19:21:13 -07:00
Eevee
2e5d4afe01
Glaciate lowers Speed by one, not two. #629
2011-08-29 19:15:20 -07:00
Petr Viktorin
dd668febe7
Make id lookup util.get use query.get, avoiding queries for dupe lookups
2011-05-06 12:40:44 +03:00
Petr Viktorin
332647c362
Switch to py.test #604
2011-05-06 12:40:44 +03:00
Petr Viktorin
c710457717
Pokemon species split: media accessors
2011-05-06 12:26:17 +03:00
Petr Viktorin
ab2baaa759
Update media accessors wrt repo split
...
All accessors now take a `root` arg, the root of the media tree.
Alternatively `root` can be a custom MediaFile subclass, which should allow
neat tricks like:
- Checking some kind of manifest to prevent stat() calls
- Custom properties of the file objects (e.g. for HTML <img> tags)
- Downloading the media on demand
Tests assume media is at pokedex/data/media, skip otherwise.
2011-05-06 12:26:17 +03:00
Petr Viktorin
134f5a00ff
Add Pichu's Volt Tackle and Rotom's form moves for B/W
2011-05-06 12:26:16 +03:00
Petr Viktorin
11a65761e7
Oops, forgot to normalize the CSVs with a load/dump
2011-05-06 12:26:16 +03:00
Petr Viktorin
3034c04d59
Allow missing Markdown translation rows (for species' form descriptions)
2011-05-06 12:26:16 +03:00
Petr Viktorin
dd0d225228
Pokemon species split: utilities.
...
Remove 'simple' altogether, as pokémon are now sane by default!
2011-05-06 12:26:16 +03:00
Petr Viktorin
bc7e9128e8
Pokemon species split: Tests
2011-05-06 12:26:16 +03:00
Petr Viktorin
d0c01810be
Pokemon species split: Lookup & Markdown
2011-05-06 12:26:16 +03:00
Petr Viktorin
8309b316f2
Add is_default to Pokemon. Revise forms' is_default accordingly.
2011-05-06 12:26:16 +03:00
Petr Viktorin
bc244aeb53
Pokemon species split: DB metadata changes
2011-05-06 12:26:16 +03:00
Petr Viktorin
280c90b966
Pokemon species split: Schema changes
2011-05-06 12:26:16 +03:00
Petr Viktorin
be3e224cad
Pokemon species split: Other data changes
2011-05-06 12:26:16 +03:00
Petr Viktorin
24b0862c32
Pokemon species split: Automatic data changes
2011-05-02 01:12:03 +03:00
Eevee
349fbb2d94
Merge remote-tracking branch 'origin/encukou-markdown'
2011-04-28 19:40:20 -07:00
Petr Viktorin
7d7fcc74c8
Don't set autoincrement for ids with zeroes. Test included. #580
2011-04-28 23:45:43 +03:00
Petr Viktorin
b711edd511
Port the Markdown value tests from spline-pokedex. Fix remaining strings.
2011-04-28 23:43:54 +03:00
Petr Viktorin
f7a9c28e60
Rename MoveFlagType/MoveFlag to MoveFlag/MoveFlagMap. #591
2011-04-28 23:43:54 +03:00
Petr Viktorin
85d779ba83
Move Markdown handling to the translation classes
...
- the Session has a `pokedex_link_maker` property, whose `object_url`
method is used to make URLs in Markdown
- pokemon.names_table.name is now an ordinary Unicode column
- pokemon.name is a MarkdownString that is aware of the session and the
language the string is in
- pokemon.name_map is a dict-like association_proxy of the above
- move.effect works similarly, with transparent $effect_chance substitution
as before
2011-04-28 23:42:56 +03:00
Petr Viktorin
5a6ff3d27b
Fix some move short effects
2011-04-28 23:42:56 +03:00
Petr Viktorin
059f7dfc55
Autofill empty labels in Markdown links
...
- as_text() is now a function that takes the session as an argument
- likewise as_html(), which also takes URL makers and the language
- since there should be only one link extension, it is registered by
setting default_link_extension, not appending to markdown_extensions.
This only affects the __html__ attribute.
2011-04-28 23:42:56 +03:00
Petr Viktorin
051d6563a4
Don't try to replace the $effect_chance in missing effect translations
2011-04-28 23:42:56 +03:00
Petr Viktorin
733bedd602
Remove explicit labels that match the target's name from Markdown links
2011-04-28 23:42:56 +03:00
Petr Viktorin
98dcc613e2
Use relationship() instead of the deprecated relation(). #596
2011-04-28 23:31:38 +03:00
Petr Viktorin
4a9a4bfc62
Fix names of evolution triggers
2011-04-28 23:31:38 +03:00
Petr Viktorin
7767d546ac
Don't recreate the lookup index in tests
2011-04-28 23:31:38 +03:00
Petr Viktorin
3c17720a1c
order_by_name: properly fall back to the specified languages, or identifier
...
Sometimes, translations are incomplete. Handle this gracefully by allowing
fallback languages. If there are none, fall back to the identifier to get
at least some order.
2011-04-28 23:31:38 +03:00
Petr Viktorin
247f7ead43
Add __init__.py to pokedex/util
2011-04-28 23:31:38 +03:00
Lynn "Zhorken" Vaughan
4b5de689f8
Give Rotom's forms an explicit order.
...
The in-game Pokédex actually lists them in this order now, rather than
whatever order you see them in.
2011-04-27 14:25:57 -04:00
Eevee
b2db58afc7
Fix discrepancy between media-accessors branches.
2011-04-17 22:35:24 -07:00
Petr Viktorin
69140a88f5
Move the rest of pokedex.util.get to pokedex.db.util
2011-04-17 22:34:05 -07:00
Petr Viktorin
f271812cf7
Break "simple" query functions out of pokedex.util.get
2011-04-17 22:34:05 -07:00
Petr Viktorin
2f014411e1
Add pokedex.util.get: helpers to get stuff out of the DB easily
2011-04-17 22:34:04 -07:00
Petr Viktorin
1f2df80a00
Make Pokemon.form an actual relation
2011-04-17 22:34:03 -07:00
Petr Viktorin
4cd68fb5e3
Typo: multilang docstring was wrong
2011-04-17 22:34:02 -07:00
Petr Viktorin
dd89c811b8
Move util.py to compatibility.py
2011-04-17 22:30:37 -07:00
Petr Viktorin
7292ede94a
Test media accessors, and the media organization itself
...
A few tests of the accessors, along with a very dumb, long-running script
to ensure everything is in its proper place, and there's nothing but the
proper things.
For now it still finds some beta form cruft for Burmy, Pichu and Cherrim.
2011-04-17 20:55:58 -07:00
Petr Viktorin
11c0c4778b
Add media accessors
2011-04-17 20:55:57 -07:00
Petr Viktorin
9edec64de5
Add 'underground' flag to Iron Ball and Light Clay
2011-04-17 20:55:25 -07:00
Petr Viktorin
0f7feab591
Make PokemonForm.pokemon an actual relation
2011-04-17 17:45:10 -07:00
Petr Viktorin
27d33556d4
Load local_language lazily
2011-04-17 17:45:10 -07:00
Eevee
8e1bbe0004
Merge remote-tracking branch 'origin/encukou-translations'
2011-04-17 17:43:42 -07:00
Eevee
47d4d9d334
Fixed some missed markdown identifier conversions.
2011-04-14 08:49:04 -07:00
Petr Viktorin
695347bcff
Update markdown.py docstring
2011-04-12 11:10:36 +03:00
Petr Viktorin
77693e4dae
Change the Markdown links to always use identifiers
2011-04-12 11:05:47 +03:00
Petr Viktorin
10d9bc83b3
Mark MoveEffect.effect as a Markdown column.
...
Also relax the appropriate test
2011-04-12 09:51:51 +03:00
Petr Viktorin
f42f5f32d0
Expand some string limits so links with identifiers can fit
2011-04-12 09:06:04 +03:00
Petr Viktorin
5d18ae7ab6
Make the schema tests pass
2011-04-12 09:06:02 +03:00
Petr Viktorin
ae5225c932
Automatically disambiguate location identifiers
...
See the script docstring for what was done
Victory Roads and Halls of Origin should probably be hand-tuned later
2011-04-12 07:23:11 +03:00
Petr Viktorin
901c3a02bb
Fix a 'Fuschia City' typos in item effects
2011-04-12 02:56:28 +03:00
Petr Viktorin
05cca04306
Add usage text for --langs
2011-04-11 17:07:39 +03:00
Petr Viktorin
34a8070449
Load translations in pokedex load.
2011-04-11 17:07:38 +03:00
Petr Viktorin
817c4c289d
Don't dump unofficial translations in pokedex dump
...
(Translations cannot be dumped properly because the source string hash
isn't in the database.)
By default, unofficial texts are only dumped for English, but that can
be configured if someone wants CSVs for different language(s).
Official texts (<thing>_names rows for official languages) are always
dumped.
2011-04-11 17:07:37 +03:00
Petr Viktorin
0ed5d65384
Add current Czech translations
...
This makes Git track csv/translations
2011-04-11 17:07:35 +03:00
Petr Viktorin
4c2ad2bdf1
Reading, merging, and writing translations
2011-04-11 17:03:27 +03:00
Eevee
36fa8b7093
Fix a misuse of a set as a dictionary in db loading.
2011-04-10 18:51:03 -07:00
Eevee
72cfea5723
Dozen or so more item effects rewritten. #247
2011-04-10 18:20:20 -07:00
Eevee
dc75747175
Effects for the remaining B/W items. #247
2011-04-10 16:41:59 -07:00
Eevee
8fd61ad55d
Update item effects with English names. Added new stone evos.
2011-04-10 16:41:59 -07:00
Eevee
e8df2c70e5
Remaining B/W item effects, save for some gimmicks and key items. #377
2011-04-10 16:41:58 -07:00
Eevee
ed825f9e23
B/W item effects up through the jewels. #377
2011-04-10 16:41:58 -07:00
Eevee
8d1487781f
B/W item effects and mail item effects. #377
2011-04-10 16:41:58 -07:00
Eevee
8dbac07f56
Great Item Effect Rewrite, part 2: up through berries. #247
2011-04-10 16:41:57 -07:00
Eevee
310c618c83
Addressed Zhorken's myriad comments on the item rewrite so far. #247
2011-04-10 16:41:57 -07:00
Eevee
e91246126f
Great Item Effect Rewrite, part 1; up through the flutes. #247
2011-04-10 16:41:57 -07:00
Eevee
28d81cc25f
Rearranged evolution table; added new B/W evolutions. #378
...
There are now (well, have been for a while) multiple ways to evolve
a Pokémon from its unique parent, so the current schema wasn't working.
The parent Pokémon has moved back to the main pokemon table, and
pokemon_evolution has grown an artificial primary key.
New evolution methods for Milotic, Leafeon, Glaceon, Magnezone, and
Probopass have been added.
2011-04-10 16:33:18 -07:00
Eevee
08bfd753e0
Fix default language assignment once and for all.
...
Stop trying to be clever and magical and just make the caller pass in a
damn primary key.
2011-04-10 00:54:14 -07:00
Eevee
f666327fa0
Remove old move effect categories. #389
2011-04-09 22:58:40 -07:00
Eevee
8de33be206
Added identifiers for move meta categories.
2011-04-09 22:22:58 -07:00
Eevee
8e2ad429d9
hurp durp default language
2011-04-05 23:34:28 -07:00
Eevee
905f5b3d13
Merge remote-tracking branch 'origin/encounters-i18n'
...
Conflicts:
pokedex/db/__init__.py
2011-04-05 22:32:51 -07:00
Eevee
5b0f290ec5
Unbreak db.connect(), whoops.
2011-04-05 21:46:11 -07:00
Eevee
acf44c63a0
Merge branch 'encukou'
2011-04-05 21:04:32 -07:00
Eevee
9441ffb165
Remove the responsibility of setting a default language from multilang.
...
Caller now has to do it. No need to avoid circular deps, no need to do
much of anything at all.
2011-04-05 21:03:41 -07:00
Eevee
ef29dd667c
Always joinedload the local_language for a full language map.
2011-04-05 20:48:10 -07:00
a_magical_me
81f384e562
Add FR/LG encounters. #136
2011-04-04 17:48:12 -07:00
a_magical_me
841694f83f
Add R/S/E encounters. #136
...
- They actually have LocationAreaEncounterRates this time!
- Make EncounterSlots.rarity nullable, since my script requires it.
2011-04-04 17:48:10 -07:00
a_magical_me
c9a3ceb88f
Rename terrain => method. #375
...
They aren't actually terrains, and i need that name for another table.
2011-04-04 17:48:05 -07:00
a_magical_me
7b7c0addde
Add B/W locations. #375
...
English and Japanese. Woo!
The text dump contained a bunch of duplicate location names (possibly
for the Entralink?). I've merged them in the locations table, but
location_game_indices still has the duplicates—that is, a location can
now have multiple game_index values in one generation (necessitating a
small schema change).
2011-04-04 17:09:11 -07:00
Petr Viktorin
4291c33c00
Make MultilangSession's language class configurable
2011-04-04 21:51:35 +03:00
Petr Viktorin
9fdb8e1bd0
Make session.default_language set/get work
2011-04-04 04:18:37 +03:00
a_magical_me
dbb293e727
Add identifier_from_name() function.
...
Adapted from name2ident() in scripts/migration-i18n.py.
2011-04-03 15:32:11 -07:00
a_magical_me
34a888cc16
Revert "Added a bunch of autoincrement=False."
...
This reverts commit e68f43a5aee1b8fe145c416df6fa0015b54efd5c,
because it was a bloody terrible idea.
2011-04-03 15:20:53 -07:00
Petr Viktorin
8cddfefc4c
Add __repr__ to mapped classes
...
This makes string representations of lists, tuples, dicts, etc. with the
DB objects make sense
2011-04-03 21:18:37 +03:00
Petr Viktorin
a06498cb39
Make a bunch of text columns nullable to support missing translations
2011-04-03 20:08:05 +03:00
Petr Viktorin
6f36907341
Enable nullable MarkdownColumns
2011-04-03 20:08:04 +03:00
Petr Viktorin
105d9422ca
Change item short effect format to markdown
2011-04-03 19:34:18 +03:00
a_magical_me
bbb7cb9907
Make load.py more idiomatic.
...
Also snuck an idiom into db/__init__.py.
2011-04-03 04:26:45 -07:00
a_magical_me
b9a54c63d8
Add usage text for --safe.
2011-04-03 03:21:54 -07:00