arrow_backRetour aux issues
collective/icalendar
#1421
Débutant
Ouvrirarrow_forward
Débutant
Ouvrirarrow_forward
Débutant
Ouvrirarrow_forward
Make all properties available to avoid additional loop
ecoDébutant
good first issue
descriptionDescription
## Describe the bug
On the example https://icalendar.readthedocs.io/en/latest/how-to/usage.html#read-calendar-from-file, we can see see some properties are available, for example the summary that can be accessed like that:
`event.get("SUMMARY")`
And the trigger property that can be accessed like that (https://icalendar.readthedocs.io/en/latest/reference/api/icalendar.cal.event.html#icalendar.cal.event.Event.alarms):
`event.alarms.times[0].trigger`
However it looks like we cannot access the ACTION property to check for example if the value is DISPLAY or AUDIO. If I understand correctly, this would require an additional loop using the function property_items.
## Expected behavior
To avoid unnecessary processing and battery usage, especially on Linux smartphones that don't have a long autonomy like the PinePhone, it should be possible to make all properties available or at least additional properties available on demand the first time the ICS file is parsed in the function from_ical so we don't have to create an additional loop. This could also improve performance by avoiding duplicate work.
## Environment
- Operating system: Mobian (Debian 13) with Phosh on the PinePhone
- Python version: Python 3.13.5
- `icalendar` version: 7.1.2
## Additional context
I tested with the ICS file generated by Gnome Calendar.
Issues similaires
calkit/calkit
star53
Poids du dépôt moyen
VS Code extension should be robust to YAML parser errors
Seeing this error: ``` Failed to read calkit.yaml: YAMLParseError: A block sequence may not be used as an implicit map…
Python
bug
good first issue
fu351/Doberman-Core
star211
Poids du dépôt léger
dash: a manual Refresh control
The dashboard polls: `refreshStats()` (`src/doberman/dash/app.py:408`) every 5 s and `refreshPending()` (`:546`) every …
Python
enhancement
good first issue
fu351/Doberman-Core
star211
Poids du dépôt léger
dash: "Copy details" button on each pending-approval card
Each pending-approval card in the dashboard (`renderPending`, `src/doberman/dash/app.py:448-544`) shows the risk badge,…
Python
enhancement
good first issue