Commit graph

149 commits

Author SHA1 Message Date
4c3ee5a0d3 Add Sahara Reporters 2022-03-25 16:40:13 -04:00
4bcb2995d8 Add solidarity network to other projects 2022-03-25 16:38:16 -04:00
e3ca1b2860 Oh just add a blatant typo to our projects list 2022-03-25 16:37:18 -04:00
369070a257 Add shortcuts for internal content writing 2022-03-11 16:38:13 -05:00
85a38e9fd4 Add a common task alias and a couple internal task shortcuts 2022-03-07 21:41:59 -05:00
41d9655e8c Include Type Network in projects 2022-03-04 19:43:56 -05:00
9449f1dad3 Make matching for time shifts (in paranthesis) non-greedy, stopping at first closing paren 2022-03-04 18:33:43 -05:00
2be463c04d Add Tulane 2022-02-11 22:05:29 -05:00
780fd91394 Add Green Calendar 2022-02-11 22:03:27 -05:00
861a3c402f Oh, just commit a typo task to the compound task parser, easier than fixing it 2022-02-05 23:40:34 -05:00
ab264aab0c Add Visions Unite with aliases @TODO fix bug requiring this line
OK it's great to add the aliases but i had 'Visions Unite' directly and it
should have worked, but through some bug or oversight we do not work off the raw
projects / org list for projects, but require it to be in this set of provided
harvest project names.
2022-01-28 23:52:58 -05:00
b2c1bc841a Correct formatting to create latest date 2022-01-28 23:51:13 -05:00
7102c3876f Ensure date is a datetime not just an object
This mostly doesn't even matter but it prevents this warning when adding the delta:

PerformanceWarning: Adding/subtracting object-dtype array to TimedeltaArray not vectorized
2021-12-18 00:04:52 -05:00
239989075e Make not using regex explicit (this'll be the default)
but causing warnings now
2021-12-18 00:00:12 -05:00
8ffc95fe74 Remove shifted time from description, final working version 2021-12-17 23:22:00 -05:00
3b90dc2e3e Update description successfully to remove shifted time values
Fixes this error:
ValueError: Series.replace cannot use dict-like to_replace and non-None value
2021-12-17 17:07:20 -05:00
8cb00bf086 OK wow lot harder to remove value from column than expected 2021-12-12 15:44:19 -05:00
99b4d47e3c proof of concept shifting date 2021-12-12 12:19:07 -05:00
1f8e7a01db Add aliases for patient HM project 2021-12-06 07:59:14 -05:00
61d53e226d Add another pseudo-project that gets exanded into internal plus task
And correct the documentation and drop implication that this is only historical,
as i keep using it!
2021-12-06 07:59:02 -05:00
d7541af3fb Add camp and presentation 'projects' to become internal tasks, move learning in there too 2021-10-15 17:04:45 -04:00
b6145dd019 Add NICHQ Community 2021-10-08 22:38:36 -04:00
08d3b5d8be Add more aliases for Find It Cambridge 2021-10-03 11:19:07 -04:00
519c66aeb5 Add conversion for ZEIT 2021-10-01 16:35:11 -04:00
26e29d3157 Remove a redundancy with a conceivable synonym, add explainer comment
But what we learned is we have no way to expand 'NICHQ.org' into 'NICHQ Support: NICHQ.org work on'
or something like that, followed by whatever i put in, but that's not really a flaw of our parse
script here but our failure to have come up with an official way to track work on different
projects within the one support contract.
2021-09-06 11:51:35 -04:00
7bfb46dff3 Include date in filename for less chance of mistakes and easier archiving 2021-06-18 21:26:34 -04:00
fab23d3090 Add Workers Defense Alliance to other/personal projects 2021-06-18 17:15:02 -04:00
e542652f25 Add yet two more aliases for near north 2021-06-18 17:12:21 -04:00
d3af86c8ea Fix typo that was stopping everything 2021-06-18 17:12:11 -04:00
bd9c06e9b9 Add a whole new crazy feature for supporting tasks separated by em-dashes
Replacing the long project name to project - task breakout
2021-06-18 16:28:13 -04:00
c394489d43 Add projects that ended up in unknown this week 2021-06-07 19:51:12 -04:00
c665b1b1ec Fix eliot and guts project names (thankfully, Harvest won't import with blank client
So we have a built-in validation of our project names!
2021-06-02 14:16:48 -04:00
4106341b92 Write out all data to one or another CSV 2021-06-02 13:16:09 -04:00
93a7049de5 Define all missed projects 2021-06-02 13:12:09 -04:00
6aaaffd45b Finish saving & loading projects-clients mapping from Harvest API and document 2021-06-02 12:13:31 -04:00
32309e08b5 Fix typo in precise name Harvest wants, and prepare for client mapping 2021-06-02 10:47:54 -04:00
88504f6881 Restore simple, clean, grouping/aggregation that does in fact work 2021-06-02 10:47:24 -04:00
5bd5ba3aeb Fix underlying logic error actually causing failure of projects and subprojects to roll up properly
We were re-setting all of the projects to the task, doh, totally destroying that groupby
2021-06-02 10:46:52 -04:00
a6009caf97 Add Metalwerx to projects 2021-06-02 10:45:34 -04:00
3e782f20ee aaahhuuhuhuh why does our simple groupby stop working and why do more complicated ways work worse 2021-06-02 08:56:27 -04:00
aa05dc5734 Keep a version of harvest data around with same keys other stuff has, before renaming columns 2021-06-02 08:56:01 -04:00
0b61f165e3 Start conversion to Harvest column titles 2021-06-02 05:58:42 -04:00
6997b7ebea Define/redefine more project names 2021-06-02 05:36:41 -04:00
3cb7b495f5 Elegant merge operator, minus the typo 2021-06-01 20:48:57 -04:00
5ac674bf0d Give ourselves the debug variables we invariably create anyhow 2021-06-01 20:47:42 -04:00
0d2fe87111 Use elegant merge operator 2021-06-01 20:47:08 -04:00
020da15372 Fix crucial assignment error, we had only descriptions after this! 2021-06-01 20:33:48 -04:00
7387893e57 Gather projects into all three groups: harvest, known non-harvest, and unknown 2021-06-01 20:33:23 -04:00
379da43764 take one at collecting just known harvest stuff 2021-06-01 20:30:30 -04:00
ab951f5b86 Split out subproject 2021-06-01 16:43:57 -04:00
960008bdae Refine a couple more projects 2021-06-01 16:39:49 -04:00
eb3560bb3e Start to prepare for Harvest timelogs precise format export 2021-06-01 11:23:45 -04:00
91643f088d Add additional projects, rename as needed 2021-06-01 11:23:05 -04:00
20f31dfc6a Add more projects and name per Harvest 2021-06-01 11:16:06 -04:00
24156c83ec Sort projects in alphabetical order 2021-06-01 11:06:02 -04:00
3ed6413b25 Start adding projects exactly as named in Harvest 2021-06-01 11:03:45 -04:00
8002ddedea Fix another reversed debug logic 2021-05-29 04:34:08 -04:00
aff12ffaf2 Add additional aliases 2021-05-29 04:33:46 -04:00
e8ef6b0d7c Compare alternatives (plus original) as lower case so every possible variation need not be explicit 2021-05-28 14:39:51 -04:00
369d727d65 Add many more variations of camp support/defense 2021-05-28 14:39:09 -04:00
3eaa9afeb9 Add sub-project of NICHQ to resolve to Project: Subproject: approach 2021-05-28 14:38:47 -04:00
6c18d88dbc Add Family & Home to our projects 2021-05-28 14:38:09 -04:00
df64927f5a Force non-date values to 'not a time' that still let's column be datetime 2021-05-28 14:24:07 -04:00
d952f11350 Make one CSV logfile vs directory an option determined via settings.ini
Default to directory.
2021-05-28 14:21:52 -04:00
8c8c00586d Fix logic reversal error in our interactive/debug mode identification 2021-05-28 14:00:36 -04:00
afce4adaea Add a misspelling of propaganda site that came up 2021-05-27 08:20:14 -04:00
306b61055f Up our debugging game significantly by not making the rookie equals assignment object mistake 2021-05-27 08:19:56 -04:00
baee9b5087 Fix double typo mistakes 2021-05-26 12:48:36 -04:00
f6dadbfab0 Update glob to reflect directory path should have a slash already 2021-05-26 12:48:24 -04:00
1f4ec77467 Gather all csv files in provided directory 2021-05-25 15:57:52 -04:00
mlncn
ca5417ae93 Fix both filtering and an opposite logic error and our newest feature is done 2021-05-03 00:13:07 -04:00
mlncn
a1c0434015 Add missing import statement 2021-05-03 00:04:18 -04:00
mlncn
01c8670eb6 Finish up filtering of pre-last-recorded stuff 2021-05-03 00:01:59 -04:00
mlncn
206530b235 Use .apply rather than np.where for easier/better/not-randomly-failing individual parsing
+# On some systems, using np.where worked but others failed.  Why it worked is
+# unknown but why it failed is because numpy where evaluates all parts, even
+# the parts that will never get used because the where clause does not apply!
+# This caused the chained strings to fail because— no string.

This worked fine on the System76 and didn't on Bridget's computer, even after
updating the version of python, but anyway, .apply() is better for what i am
trying to do here.

TODO convert other np.where uses to .apply

See #4 in https://datatofish.com/if-condition-in-pandas-dataframe/
2021-05-02 22:38:54 -04:00
mlncn
d8a5e27a97 Save when our last processed date is from so we can pick up where we left off 2021-05-02 20:34:22 -04:00
mlncn
1f451309a7 Add requirements (python) file 2021-05-02 18:39:37 -04:00
benjamin melançon
3dc4d28f2f Add aliases for NICHQ 2021-04-30 09:19:10 -04:00
benjamin melançon
b8e4a8d094 Regularize Drutopia references 2021-04-28 11:42:00 -04:00
benjamin melançon
f706f0b1e6 Add comment about criticality of fill na 2021-04-28 11:15:53 -04:00
benjamin melançon
ce13e32f7d Regularize project titles 2021-04-28 11:14:39 -04:00
benjamin melançon
761d04204a Output all entries, reset index for fun, and write out our CSV file 2021-04-28 11:08:43 -04:00
benjamin melançon
9e97b6b250 Keep our strings from being ragged 2021-04-28 11:05:02 -04:00
benjamin melançon
9faa5c44c4 Document multiple task entries piece 2021-04-28 00:16:15 -04:00
benjamin melançon
367b69da3d Allow multiple entries to be put into one by splitting with semicolon 2021-04-28 00:14:48 -04:00
benjamin melançon
28550ef3ff Fix approach to dropping column after using it 2021-04-27 23:51:26 -04:00
benjamin melançon
4314ad0774 Really close to having it all now 2021-04-27 23:37:37 -04:00
benjamin melançon
1c63ab32e8 Actually we want to use regex to be sure we have a digit to multiply
Ensure we're splitting on the same asterisk we found with regex

We can tone down the regex now that we've thrown in extra cleanup,
that's coming next.
2021-04-27 22:40:17 -04:00
benjamin melançon
2516b9272d Document making .contains not a regular expression 2021-04-27 22:31:42 -04:00
benjamin melançon
f31c9d4d47 Start to use our multiplier to have time be x times what we give 2021-04-27 22:30:38 -04:00
benjamin melançon
3921d6774f Document code 2021-04-27 22:30:07 -04:00
benjamin melançon
f51acf4fec Aggregate by project as well as description now that we have it 2021-04-27 21:58:19 -04:00
benjamin melançon
796284931e Split out project into own column if it had been provided (with colon) 2021-04-27 21:45:37 -04:00
benjamin melançon
afbb5dbe1e Provide first started and last recorded times for each task 2021-04-27 19:48:46 -04:00
benjamin melançon
a42dd0b5e2 Don't overwrite timelog. Max for started isn't working here, weirdly 2021-04-27 14:32:01 -04:00
benjamin melançon
22a2bbae39 The payoff: combine multiple entries in the same day into one larger time unit 2021-04-27 11:32:34 -04:00
benjamin melançon
5f35d57024 Fix extraction of day name 2021-04-27 11:31:27 -04:00
benjamin melançon
e36d149b10 Put our start and recorded times in eastern time for easier review 2021-04-27 11:30:53 -04:00
benjamin melançon
9821ee623f Very solid progress on manipulating the date 2021-04-27 11:06:20 -04:00
benjamin melançon
8bf975e629 Initial commit: first line on interactive shell that didn't break 2021-04-27 09:41:53 -04:00