Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

solutions/automations/vacation-calendar/ fails to import events that are created too far in advance

オープン
#474 コメント 0 件 リアクション 0 件 担当者 1 名 GitHub で見る

@vinay-google がすでに取り組んでいます。

2024年7月10日 から。

評価

この issue はまだ評価されていません。

説明

Summary

The code in solutions/automations/vacation-calendar/Code.js uses lastRun to constrain the event search, but only imports events that are timed between now and MONTHS_IN_ADVANCE months from now.
Hence, these events never get imported because when they satisfy the updatedMin parameter constraint in the Calendar.Events.list call, they fail the timeMin and timeMax constraint.

Expected Behavior

The code would import events, even events created a long time ago, if they occur within the search period (now, now+MONTHS_IN_ADVANCE).

Sample URL: https://github.com/googleworkspace/apps-script-samples/blob/main/solutions/automations/vacation-calendar/Code.js
Description:

Actual Behavior

The code only imports events if they were created within MONTHS_IN_ADVANCE of their occurrence. Other events are skipped entirely.

Steps to Reproduce the Problem

  1. Create a vacation event for a date 4 months from now.
  2. Let the script run.
  3. Notice that the event is not imported and is never imported.

Proposal

While the optSince parameter in findEvents is useful in further demonstrating the Calendar.Events.list API call, and generally reduces execution cost, it seems to prevent one important expected behavior for a team vacation populator---that events planned far in advance will show up in the team calendar. I suggest three alternatives:

  • Remove the updatedMin parameter in the findEvents body. That way, the code will still add upcoming events, but will add redundant events that get de-duplicated.
  • Set the default MONTHS_IN_ADVANCE relatively large, e.g., 12, 18 or more, so that the problem only manifests for events created much farther in advance.
  • Add a warning comment in the code that alerts the developer to the nature of these skipped imports and let the developer implement solution if desired.
主要言語
JavaScript
スター
5.2k
フォーク
2k
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

googleworkspace/apps-script-samples のほかの issue

googleworkspace/apps-script-samples の issue をすべて見る

似ている issue

JavaScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。