geeksforsocialchange / PlaceCal

Bring your community together
https://placecal.org
GNU Affero General Public License v3.0
17 stars 8 forks source link

Remove references to specific partners and partnerships from codebase #2073

Open kimadactyl opened 1 year ago

kimadactyl commented 1 year ago

Description

There are various references to IRL partners in our database.

We should prob remove these before doing a public launch.

Locations include iCal regexes, tests, and some hard coded routes.

Motivation

Our codebase should not reference actual live groups and instead be a set of data managed by us.

Acceptance Criteria

katjam commented 7 months ago

Privacy issue. vvv until we research extent.

r-ferrier commented 7 months ago
aaaaargZombies commented 7 months ago

First sweep looking at where the partners referenced in the ics parser comeup elsewhere in the codebase

        mossley: %r{^https?://mossleycommunitycentre\.org\.uk},
        theproudtrust: %r{^https?://www\.theproudtrust\.org},
        teamup: %r{^https?://ics\.teamup\.com/feed/.*},
        consortium: %r{^https://www\.consortium\.lgbt/events/.*},

view code in context

partners in code

LGBT consortium

app/jobs/calendar_importer/parsers/ics.rb

mossley community center

app/jobs/calendar_importer/parsers/ics.rb
config/initializers/icalendar_overrides.rb

proud trust

$ rg -i proud -l        
app/jobs/calendar_importer/parsers/ics.rb

teamup

note: this is a sass calendar thing not a partner

$ rg -i teamup -l
app/jobs/calendar_importer/parsers/ics.rb
test/jobs/calendar_importer/calendar_importer_test.rb
test/jobs/calendar_importer/calendar_importer_task_test.rb
test/fixtures/vcr_cassettes/Teamup_com_calendar.yml
test/fixtures/vcr_cassettes/Uknown_Teamup_Feed.yml
aaaaargZombies commented 7 months ago

sweep looking for suspicios http strings

partners referenced

zion center

rg -i zion -l  
test/controllers/admin/calendars_controller_test.rb
test/factories/calendar.rb
test/jobs/calendar_importer/calendar_importer_test.rb
test/fixtures/vcr_cassettes/calendar_for_outlook.yml
doc/adr/0001-combine-places-and-partners.md
lib/data/Ward_to_Local_Authority_District_to_County_to_Region_to_Country_(May_2023)_Lookup_in_United_Kingdom.csv
lib/data/Ward_to_Local_Authority_District_to_County_to_Region_to_Country_(December_2019)_Lookup_in_United_Kingdom.csv
test/fixtures/vcr_cassettes/Zion_Centre_Guide.yml
ivan-kocienski-gfsc commented 7 months ago

May want to check db seeds and also anything in the test directory (particularly the VCR cassettes/fixtures)?

aaaaargZombies commented 7 months ago

sweep looking for email addresses

This looks to be the only personal email, it's referenced in one of our VCR cassettes

https://github.com/geeksforsocialchange/PlaceCal/blob/88ed3f61a7446a9864e1c424923101bbea3c284b/test/fixtures/vcr_cassettes/Martin_Harris_Centre.yml#L186-L186

kimadactyl commented 7 months ago

theproudtrust can be removed if that helps at all, they are on eventbrite now

kimadactyl commented 7 months ago

teamup is a saas tho: https://www.teamup.com/

aaaaargZombies commented 7 months ago

May want to check db seeds and also anything in the test directory (particularly the VCR cassettes/fixtures)?

Most of our VCR fixtures come from a real partner we've interacted with at one time or another

test/fixtures/vcr_cassettes/
├── ACCG.yml
├── bad_meetup_gateway.yml
├── calendar_bad_source_url.yml
├── calendar_events_test.yml
├── calendar_for_outlook.yml
├── dice_fm_events.yml
├── eventbrite_bad_gateway.yml
├── Eventbrite_calendar.yml
├── eventbrite_events.yml
├── example_dot_com_bad_response.yml
├── example_dot_com.yml
├── generic_ical_feed.yml
├── generic_webcal_feed.yml
├── gfsc_studio.yml
├── good_meetup_source.yml
├── heart_of_torbay_events.yml
├── heart_of_torbay.yml
├── Importer_ICS_Bad_Response.yml
├── import_test_calendar.yml
├── Martin_Harris_Centre.yml
├── out_savvy_events.yml
├── Placecal_Hulme_Moss_Side_Google_Cal.yml
├── squarespace_bad_json.yml
├── Squarespace_calendar.yml
├── Teamup_com_calendar.yml
├── Uknown_Teamup_Feed.yml
├── unsupported_url.yml
├── Yellowbird_Webcal.yml
├── Z-Arts_Calendar.yml
└── Zion_Centre_Guide.yml
$ rg "VCR.*cass.*'"
test/controllers/admin/calendars_controller_test.rb
120:      VCR.use_cassette('Zion Centre Guide') do

test/jobs/calendar_importer/calendar_importer_test.rb
11:    VCR.use_cassette('Yellowbird Webcal', allow_playback_repeats: true) do
29:    VCR.use_cassette('Placecal Hulme & Moss Side Google Cal', allow_playback_repeats: true) do
47:    VCR.use_cassette('Zion Centre Guide', allow_playback_repeats: true) do
65:    VCR.use_cassette('ACCG', allow_playback_repeats: true) do
84:    VCR.use_cassette('Martin Harris Centre', allow_playback_repeats: true) do
102:    VCR.use_cassette('Z-Arts Calendar', allow_playback_repeats: true) do
120:    VCR.use_cassette('Teamup.com calendar', allow_playback_repeats: true) do
138:    VCR.use_cassette('Eventbrite calendar', allow_playback_repeats: true) do
156:    VCR.use_cassette('Squarespace calendar', allow_playback_repeats: true) do
199:    VCR.use_cassette('Z-Arts Calendar', allow_playback_repeats: true) do

test/jobs/calendar_importer/event_parse_ics_test.rb
9:    VCR.use_cassette('Importer ICS Bad Response', allow_playback_repeats: true) do

test/jobs/calendar_importer/calendar_importer_task_test.rb
7:    VCR.use_cassette('Placecal Hulme & Moss Side Google Cal', allow_playback_repeats: true) do
29:  #    VCR.use_cassette('Uknown Teamup Feed', allow_playback_repeats: true) do
51:    VCR.use_cassette('Uknown Teamup Feed', allow_playback_repeats: true) do
aaaaargZombies commented 7 months ago

nothing jumped out at me in the rake tasks

aaaaargZombies commented 7 months ago

There's some hardcoded stuff around https://mossley.placecal.org/ but this is a site not partner. But a candidate for a clean up.

kimadactyl commented 7 months ago

I would say everything you've referenced we have consent for just as much as we do in PlaceCal itself. You could argue that the email address should be blanked/anonymised as its from 2018 but its a copy of their exisitng public data, so its no better or worse than PlaceCal itself in that respect.

Obviously we should aspire to have our own test data one day, but for now maybe it's ok to just make that email more anonymous if we want, and remove the proudtrust importer while we're here? I would also be fine with dropping it from this milestone if others agree.

I think the endgame for the individual org importers prob has to be to store all the connection info inside PlaceCal but sheesh that sounds like a mess to implement huh.