mgifos / quick-plan

Defines and schedules Garmin workouts
Apache License 2.0
140 stars 23 forks source link

Everytime i get 0 imported, 0 scheduled #36

Closed pschonmann closed 6 years ago

pschonmann commented 6 years ago

Im trying to create plan. But nothing imported and scheduled. In attachement is my testfile im trying to import Would be nice have commented example CSV in downloaded release.zip :)

Trenink_TEST.zip


Password:

Creating workouts:
Successfully logged in to Garmin Connect

Scheduling:

Statistics:
  0 imported
  0 scheduled
Logged out and closed connection
Bye
mgifos commented 6 years ago

It seems that you used unallowed unicode character in your workout definition name "U+2013 : EN DASH" and allowed range is "[\u0020-\u007F]+" (check in the "Workout notation" section of documentation). Initially the tool was created to do the job, it's not supposed to be for commercial use and that user will obey the rules of documentation. Some future direction of making the tool more bullet proof would be towards validating the input from user and generating more user friendly messages.

pschonmann commented 6 years ago

Im not using program for commercial use, im just want create plan from http://www.bezeckaskola.cz/clanek-2811-rocni-bezecky-treninkovy-plan-milose-skorpila-pro-vsechny-kteri-se-po-letech-opet-rozhodli-hybat.html I fixed EN DASH to normal dash 002D... now quickplan throws



Creating workouts:

Scheduling:

Statistics:
  0 imported
  0 scheduled
[WARN] [11/30/2018 10:01:05.361] [quick-plan-akka.actor.default-dispatcher-17] [quick-plan/Pool(shared->https://connect.garmin.com:443)] [0 (WaitingForEndOfResponseEntity)] Ongoing request [GET /modern/ Empty] was dropped because pool is shutting down
[ERROR] [11/30/2018 10:01:05.386] [quick-plan-akka.actor.default-dispatcher-2] [akka.actor.ActorSystemImpl(quick-plan)] Outgoing request stream error (akka.stream.AbruptTerminationException: Processor actor [Actor[akka://quick-plan/system/StreamSupervisor-1/flow-7-0-PoolFlow#-1003248606]] terminated abruptly)
Logged out and closed connection
Bye
mgifos commented 6 years ago

I was mentioning "commercial use" more from a "standards" perspective but actually you are free to use it even for commercial use. It could be that you still have some more non-ascii characters. Try removing "volno" from your training plan since it's not a reference to an existing workout definition.

pschonmann commented 6 years ago

Oh, thats make sense :) volno = rest in czech. In your table is rest day tagged as rest, but no reference too. I was expecting rest as reserved keyword. Rest day should be empty cell ?

mgifos commented 6 years ago

Sorry, I made a mistake. Volno is ok to be something that is going to be ignored by quick-plan. It's the same with rest text from the example you were mentioning. So, anything that is not matched against the workout definition mentioned on the main page will be ignored. That's means that you have to be really precise when typing a definition. E.g. in example above as I already mentioned, you have U+2013 : EN DASH Unicode character + the last "run" line is missing prefix "- ", so the complete definition is ignored because of this. If you want, you can send me your fixed file, so I can check it again with the fixes in case it didn't pass in the meantime.

mgifos commented 6 years ago

Btw, it would be a good improvement for the tool to validate in case the input starts with one of the keywords that are used to start a workout definition. E.g. running, cycling etc. I'll keep this in mind and possibly provide a fix in the coming period.

pschonmann commented 6 years ago

Ok, no problem. Seems problem is in Libreoffice, i check all letters precisely in exported CSV, import 0, Same in Google Docs, no problem.

pschonmann commented 6 years ago

Oops i found mistake :)

In your example, my template :) after @ must be space, not @z2

running: 15k, 3x3.2k @HMP

Now everything works like charm.

mgifos commented 5 years ago

I've introduced some additional workout validation in the new release 0.3.2. It's related to this issue as well, so if you like you can test it.