Project

General

Profile

Statistics
| Revision:

# Date Author Comment
887 02/07/2012 03:10 PM Aaron Marcuse-Kubitza

xpath.py: get(): Turn off last_only optimization when limit > 1

886 02/07/2012 03:07 PM Aaron Marcuse-Kubitza

xpath.py: get(): Added full support for returning multiple matches

885 02/07/2012 02:33 PM Aaron Marcuse-Kubitza

xpath.py: get(): Added basic structure for returning multiple matches. Added limit parameter to select one or many matches.

884 02/07/2012 02:13 PM Aaron Marcuse-Kubitza

input.Makefile: test/VegBIEN.%.2-step.xml: Use the core map specific to the test's table instead of the main core map

883 02/07/2012 02:10 PM Aaron Marcuse-Kubitza

bin/map: Print error if map root not found inXML input

882 02/07/2012 01:52 PM Aaron Marcuse-Kubitza

mappings/: Removed mappings used by old tester

881 02/07/2012 01:48 PM Aaron Marcuse-Kubitza

inputs/SALVIAS/maps/VegX.*.csv: Replaced symlinks with actual files

880 02/07/2012 01:45 PM Aaron Marcuse-Kubitza

Removed old tester

879 02/07/2012 01:44 PM Aaron Marcuse-Kubitza

Switched to using inputs/test as main test target

878 02/07/2012 01:38 PM Aaron Marcuse-Kubitza

Added SALVIAS-CSV tests

877 02/07/2012 01:31 PM Aaron Marcuse-Kubitza

Added NYBG-CSV tests

876 02/07/2012 01:28 PM Aaron Marcuse-Kubitza

input.Makefile: Run separate tests for each map spreadsheet (input table) rather than all tables at once. This will make it possible to test CSV inputs, which have one CSV per table.

875 02/07/2012 12:54 PM Aaron Marcuse-Kubitza

Added NYBG-CSV input

874 02/07/2012 12:47 PM Aaron Marcuse-Kubitza

inputs/Makefile: Fixed forwarding of empty targets to subdirs

873 02/07/2012 12:20 PM Aaron Marcuse-Kubitza

Regenerated vegbien.ERD exports

872 02/07/2012 12:17 PM Aaron Marcuse-Kubitza

vegbien.sql: Added morphospecies table

871 02/07/2012 11:53 AM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Fixed lines

870 02/07/2012 11:45 AM Aaron Marcuse-Kubitza

vegbien.sql: Removed the taxonOccurrence:aggregateOccurrence 1:1 constraint

869 02/06/2012 05:22 PM Aaron Marcuse-Kubitza

sql.py: truncate(): Use run_raw_query() instead of run_query() because truncate() does not use the recover functionality of run_query(). Also, in the profiling output, this separates the "normal" SQL statements (which use run_query()) from the "core" SQL statements (which use run_raw_query()).

868 02/06/2012 05:09 PM Aaron Marcuse-Kubitza

vegbien.sql: Added indexes for each field in party used in duplicate elimination (for use by sql.put()'s DuplicateKeyException handler)

867 02/06/2012 04:58 PM Aaron Marcuse-Kubitza

sql.py: run_raw_query(): In debug mode, print query after params have been substituted in

866 02/06/2012 04:55 PM Aaron Marcuse-Kubitza

sql.py: Fixed index_cols() to handle UNIQUE indexes with expressions, whose column names are stored in a different format

865 02/06/2012 04:04 PM Aaron Marcuse-Kubitza

sql.py: Print warning if SELECT statement missing a WHERE, LIMIT, or OFFSET clause. Changed bin/map DB input get-all-rows statement to pass start=0 to suppress this warning for that statement.

864 02/06/2012 03:51 PM Aaron Marcuse-Kubitza

db_xml.py: Added start option to get() that passes through to sql.select()

863 02/06/2012 03:50 PM Aaron Marcuse-Kubitza

sql.py: Added start option to select() to set the OFFSET

862 02/06/2012 03:27 PM Aaron Marcuse-Kubitza

sql.py: If run_raw_query.debug flag is set, print each query executed (on a single line)

861 02/06/2012 03:25 PM Aaron Marcuse-Kubitza

strings.py: Added one_line() function to make a string all on one line

860 02/06/2012 03:20 PM Aaron Marcuse-Kubitza

strings.py: Renamed one_line() to remove_extra_newl() to better reflect what it does

859 02/06/2012 03:19 PM Aaron Marcuse-Kubitza

bin/map: Don't print Done after an action in debug logging mode because it messes up newlines when more debugging info is printed right after it

858 02/06/2012 02:45 PM Aaron Marcuse-Kubitza

input.Makefile: Added nolog option to disable creating a log file, e.g. for debugging runs

857 02/06/2012 01:57 PM Aaron Marcuse-Kubitza

xml_dom.py: Remove extra newlines from single-line strings (bin/map doesn't need to do this itself anymore)

856 02/06/2012 01:56 PM Aaron Marcuse-Kubitza

strings.py: Added is_multiline() and one_line() for removing extra newlines from single-line strings

855 02/06/2012 01:48 PM Aaron Marcuse-Kubitza

bin/map: In debug mode, print input XPath's XML tree all on one line

854 02/06/2012 01:22 PM Aaron Marcuse-Kubitza

sql.py: Switched try_insert() to use index_cols() instead of constraint_cols() for "duplicate key value violates unique constraint" errors because they can also be generated by UNIQUE indexes (and there is a UNIQUE index for every UNIQUE constraint)

853 02/06/2012 01:14 PM Aaron Marcuse-Kubitza

sql.py: Added index_cols() to get cols used by an index (similar to constraint_cols())

852 02/06/2012 01:00 PM Aaron Marcuse-Kubitza

vegbien.sql: Fixed duplicate elimination for party to use a UNIQUE index with COALESCE for nullable fields

851 02/06/2012 01:00 PM Aaron Marcuse-Kubitza

sql.py: Fixed bug in try_insert() where DuplicateKeyException was passed only cols0 instead of cols array

850 02/06/2012 12:49 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Fixed lines

849 02/06/2012 12:30 PM Aaron Marcuse-Kubitza

Added get_errors to select just the error messages from `map` output

848 02/06/2012 11:59 AM Aaron Marcuse-Kubitza

Added profile_stats to analyze a profiling statistics file

847 02/06/2012 11:59 AM Aaron Marcuse-Kubitza

bin/map: Added profile_to option which turns on profiling to the specified file

846 02/06/2012 11:13 AM Aaron Marcuse-Kubitza

bin/map: Added "if name == '__main__': main()" idiom so file can be included as well as run. This will be useful for profiling.

845 02/06/2012 11:12 AM Aaron Marcuse-Kubitza

dates.py: Fixed strftime() to pad years and days with leading zeros as datetime.strftime() does

844 02/06/2012 11:01 AM Aaron Marcuse-Kubitza

dates.py: Work around strftime() bug that can't deal with 2/29 on a leap year

843 02/06/2012 10:44 AM Aaron Marcuse-Kubitza

xml_func.py: Added FormatException for SyntaxExceptions generated by strftime() (which are often Python bugs)

842 02/06/2012 09:46 AM Aaron Marcuse-Kubitza

Added schemas/vegbank.revised.sql. Initial version has all "character varying" types replaced with text.

841 02/06/2012 09:45 AM Aaron Marcuse-Kubitza

vegbien.sql: Replaced all "character varying" types with text, removing the length limits. Note that in PostgreSQL, text and "character varying" are stored the same way internally, so this does not affect performance or indexes.

840 02/04/2012 05:28 PM Aaron Marcuse-Kubitza

xml_dom.py: Added documentation labels to each section

839 02/04/2012 05:21 PM Aaron Marcuse-Kubitza

xml_dom.py: Fixed bug in NodeTextEntryIter where an entry containing an element instead of a text node would be returned as the whole entry, instead of the value of the entry

838 02/04/2012 04:56 PM Aaron Marcuse-Kubitza

bin/map: Added support for starting import at a specific row. Refactored row-processing code with and without a map to use a common process_rows() function (with the previous process_rows() being renamed to map_rows()).

837 02/04/2012 04:14 PM Aaron Marcuse-Kubitza

bin/map: Use new util.cast()

836 02/04/2012 04:14 PM Aaron Marcuse-Kubitza

util.py: Added cast() to cast a value while passing None through

835 02/04/2012 04:09 PM Aaron Marcuse-Kubitza

bin/map: Print row # of rows with errors

834 02/04/2012 03:22 PM Aaron Marcuse-Kubitza

sql.py: Fixed error in pkey() where recover was not passed as a named parameter to run_query()

833 02/04/2012 03:12 PM Aaron Marcuse-Kubitza

sql.py: Added documentation labels to each section

832 02/04/2012 03:10 PM Aaron Marcuse-Kubitza

sql.py: Added documentation labels to each section

831 02/04/2012 03:03 PM Aaron Marcuse-Kubitza

db_xml.py: Used new sql.py recover functionality

830 02/04/2012 03:03 PM Aaron Marcuse-Kubitza

sql.py: Added ability to recover from database errors so you don't get the error "InternalError: current transaction is aborted, commands ignored until end of transaction block"

829 02/04/2012 02:25 PM Aaron Marcuse-Kubitza

vegbien.sql: Removed taxonoccurrence.taxoninferencearea because it's duplicated in aggregateoccurrence.inferencearea

828 02/04/2012 02:18 PM Aaron Marcuse-Kubitza

bin/map: Highlight the "input row" and "output row:" labels in error messages

827 02/04/2012 02:17 PM Aaron Marcuse-Kubitza

xml_func.py: Highlight nodes that were commented out because of errors

826 02/04/2012 02:17 PM Aaron Marcuse-Kubitza

exc.py: Print exceptions with the first line highlighted in red

825 02/04/2012 02:16 PM Aaron Marcuse-Kubitza

term.py: Added emph() and error()

824 02/04/2012 01:51 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Fixed lines

823 02/04/2012 01:47 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Fixed lines

822 02/04/2012 01:46 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Added note, notelink, and revision

821 02/04/2012 01:43 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Added embargo to diagram

820 02/04/2012 01:27 PM Aaron Marcuse-Kubitza

Regenerated vegbien.ERD exports

819 02/04/2012 01:24 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Fixed lines. Added "Core subset" and "Other tables" labels.

818 02/04/2012 01:03 PM Aaron Marcuse-Kubitza

xml_func.py: Changed _date func to use new dates.strftime(), which can handle years before 1900

817 02/04/2012 01:03 PM Aaron Marcuse-Kubitza

Added dates.py to handle date/time manipulation, such as fixing Python's broken strftime() that can't handle years before 1900

816 02/04/2012 01:02 PM Aaron Marcuse-Kubitza

Regenerated mappings/for_review/DwC-VegBIEN.specimens.csv

815 02/03/2012 06:15 PM Aaron Marcuse-Kubitza

Regenerated vegbien.ERD exports

814 02/03/2012 06:12 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Added reference and party tables

813 02/03/2012 05:49 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Fixed lines

812 02/03/2012 05:48 PM Aaron Marcuse-Kubitza

filter_ERD.csv: Remove fkeys to heavily-linked tables (reference, party)

811 02/03/2012 05:30 PM Aaron Marcuse-Kubitza

Added to_do/milestones.doc

810 02/03/2012 05:27 PM Aaron Marcuse-Kubitza

Renamed milestones.doc to timeline.doc

809 02/03/2012 05:24 PM Aaron Marcuse-Kubitza

Added schemas/filter_ERD.csv and use it when generating vegbien.my.sql

808 02/03/2012 05:16 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Added cover* to main diagram

807 02/03/2012 04:53 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Started adding additional tables "below the fold" on the 2nd page

806 02/03/2012 04:34 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Fixed lines

805 02/03/2012 04:26 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Moved legend to top left to make room for more misc tables. Organized legend by location on diagram.

804 02/03/2012 04:14 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Added soilobs table

803 02/03/2012 04:07 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Added userdefined tables. Fixed lines.

802 02/03/2012 03:57 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Changed location color to match VegBank ERD

801 02/03/2012 03:53 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Added trait to diagram

800 02/03/2012 03:38 PM Aaron Marcuse-Kubitza

vegbien.ERD.mwb: Added plantstatus to diagram. Added margins around diagram.

799 02/03/2012 02:49 PM Aaron Marcuse-Kubitza

Added milestones.doc

798 02/03/2012 12:39 PM Aaron Marcuse-Kubitza

DwC mappings: Fixed syntax of _date XML funcs to not wrap dates twice in a _date func

797 02/03/2012 12:38 PM Aaron Marcuse-Kubitza

xml_func.py: Fixed bug in SyntaxException constructor where the cause was not passed to ExceptionWithCause

796 02/03/2012 12:24 PM Aaron Marcuse-Kubitza

xml_dom.py: Override Node.__repr__ and Element.__repr__ to make sure self.toprettyxml() is used in all cases where a Node is converted to a string

795 02/03/2012 11:57 AM Aaron Marcuse-Kubitza

util.py: Don't print type name in ConstraintError message because sometimes an entry tuple (e.g. from a dict) is checked, and then the type isn't useful

794 02/03/2012 11:53 AM Aaron Marcuse-Kubitza

xml_func.py: Use conv_items(str, ...) in XML funcs that require strings, but don't otherwise use conv_items()

793 02/03/2012 11:50 AM Aaron Marcuse-Kubitza

xml_func.py: Use xml_dom.TextEntryOnlyIter to check inputs for XML funcs that only handle strings, not whole elements

792 02/03/2012 11:49 AM Aaron Marcuse-Kubitza

xml_dom.py: Added TextEntryOnlyIter to check that values returned by NodeTextEntryIter are strings from text nodes

791 02/03/2012 11:48 AM Aaron Marcuse-Kubitza

util.py: Added is_str() and CheckedIter

790 01/31/2012 07:52 PM Aaron Marcuse-Kubitza

input.Makefile: Log each import to a new log file named according to the current time

789 01/31/2012 07:38 PM Aaron Marcuse-Kubitza

xml_func.py: SyntaxException: Use exc.ExceptionWithCause

788 01/31/2012 07:37 PM Aaron Marcuse-Kubitza

exc.py: Added str_() to convert an Exception to a string. Use str_() in print_ex().