Skip to content

handle early dates (< 100AD) - #425

Closed
twistedvisions wants to merge 2 commits into
brianc:masterfrom
twistedvisions:master
Closed

handle early dates (< 100AD)#425
twistedvisions wants to merge 2 commits into
brianc:masterfrom
twistedvisions:master

Conversation

@twistedvisions

Copy link
Copy Markdown

This fixes both dates early in the AD and BC dates.

AD dates do not work because Date.UTC thinks a year < 100 must be in the 1900s.

BC dates do not work because postgres handles BC not as negatives, but by suffixing BC and this isn't being checked.

You probably want to add some tests to this, but it doesn't look there are any around this bit of the code to begin with...

For what it's worth, it seems to work for me!

@brianc

brianc commented Aug 27, 2013

Copy link
Copy Markdown
Owner

Cool, I'll keep this as a reference. Definitely gonna need some tests to merge this. Do you have a code snippet of producing a BC date in postgres?

@wbecker

wbecker commented Aug 27, 2013

Copy link
Copy Markdown

Apparently:

"Valid input for the time stamp types consists of a concatenation of a date and a time, followed by an optional time zone, followed by an optional AD or BC. (Alternatively, AD/BC can appear before the time zone, but this is not the preferred ordering.) "

I've been using things like

//43 BC
insert into tablename (timestamp_column) values ('0043-03-08 14:32:00 BC')
//62 AD
insert into tablename (timestamp_column) values ('0062-03-08 14:32:00')

I'm not in front of a computer with postgres at the moment, but will update it when I do (if I'm wrong).

@brianc

brianc commented Sep 2, 2013

Copy link
Copy Markdown
Owner

I've never taken the time to figure out how to add commits to someone elses pull request, so instead I created a local branch, added some failing tests, then applied your pull request as a patch that branch. The tests passed! So, I just opened a pull request with these changes right here:

#432

@brianc brianc closed this Sep 2, 2013
brianc added a commit that referenced this pull request Sep 2, 2013
Fix for early dates
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants