Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update calendar with "friendly events" #32

Open
3 tasks
samumantha opened this issue Apr 8, 2024 · 9 comments
Open
3 tasks

Update calendar with "friendly events" #32

samumantha opened this issue Apr 8, 2024 · 9 comments
Assignees

Comments

@samumantha
Copy link
Contributor

samumantha commented Apr 8, 2024

Use workshops or community calendar: https://github.com/coderefinery/calendar/blob/main/calendars/workshops.yaml

Check other calendar entries for syntax :)

@samumantha samumantha converted this from a draft issue Apr 8, 2024
@samumantha samumantha moved this from Idea to Todo in CodeRefinery Apr 8, 2024
@samumantha
Copy link
Contributor Author

How to do this in more sustainable way?

@tpfau
Copy link
Contributor

tpfau commented Jun 3, 2024

  • Update by adding the respective Pages from Other orgs.
  • potentially link calendars.

@tpfau tpfau self-assigned this Jun 3, 2024
@samumantha samumantha moved this from Todo to In Progress in CodeRefinery Jun 3, 2024
@rkdarst
Copy link
Member

rkdarst commented Jun 3, 2024

This seems to be able to combine two ICS files, so that friendly events could be included without duplication:

a = ics.Calendar(open('out/community.ics').read())
b = ics.Calendar(urllib.request.urlopen('https://coderefinery.github.io/calendar/all.ics').read().decode())

c = ics.Calendar(events=a.events+b.events)
open('out.ics', 'w').write(c.serialize())

git-calendar could possibly be updated to do this natively (seems pretty easily: the the include would be changed to the processing of event list b above):
https://github.com/coderefinery/git-calendar/blob/main/git_calendar/yaml2ics.py#L148-L153

Other things

  • git-calendar could use some love and make sure it's packaged and maybe even used without the current submodule method
  • yaml2ics comes from another package (see the top). Update it based on upstream improvements. Maybe un-vendor it. Maybe contribute the new "include ics" thing upstream?
  • Set yaml2ics to include .ics files based on the above (and maybe also be able to open .ics files with urlopen?)
  • lots of testing! ICS parsing has been a bit fragile, I must say.

@rkdarst
Copy link
Member

rkdarst commented Jun 3, 2024

The above would rely on the other organizations having a .ics feed but that seems to be the minimal we can hope for(?)

@rkdarst
Copy link
Member

rkdarst commented Jun 3, 2024

I think I implemented this here: coderefinery/git-calendar#10

@tpfau
Copy link
Contributor

tpfau commented Jun 4, 2024

Should I just merge that PR?
Do I understand it correctly, that calendar will automatically pull the main branch from git-calendar and use that in the workflow, i.e. when this PR is merged, no further action on calendar (besides adding other calendars) is needed ?

@tpfau
Copy link
Contributor

tpfau commented Jun 4, 2024

@tpfau
Copy link
Contributor

tpfau commented Jun 6, 2024

git-calendar now supports adding downloadable calendars (including those not as direct ics downloads, but as a download url).

Now needed:
Proper ics exports from Aalto, NRIS/Sigma2/Uppmax/csc

@samumantha
Copy link
Contributor Author

Maybe we could just link these above pages from our calendar page on the website?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

No branches or pull requests

3 participants