-
Notifications
You must be signed in to change notification settings - Fork 5
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
feat: hour chime #66
feat: hour chime #66
Conversation
Warning Rate limit exceeded@JarbasAl has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 21 minutes and 34 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. WalkthroughThe pull request introduces enhancements to the Changes
Assessment against linked issues
Possibly related PRs
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (9)
README.md (4)
23-28
: Show default values in the configuration example.The current example uses a custom path that might not be immediately useful to users. Consider showing the default configuration instead:
{ "play_hour_chime": true, - "hour_sound": "/path/to/your/custom/sound.mp3" + "hour_sound": "res/clock-chime-88027.mp3" }
30-32
: Use consistent unordered list style markers.For consistency with Markdown standards, use asterisks (*) instead of dashes (-) for unordered lists.
- - **`play_hour_chime`**: (boolean) Enables or disables... - - **`hour_sound`**: (string) Specifies the file path... + * **`play_hour_chime`**: (boolean) Enables or disables... + * **`hour_sound`**: (string) Specifies the file path...🧰 Tools
🪛 Markdownlint
30-30: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
32-32
: Clarify accepted audio file formats and paths.The
hour_sound
description should specify:
- Supported audio formats (MP3 only?)
- Whether absolute paths are supported
- Base path for relative paths
🧰 Tools
🪛 Markdownlint
32-32: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
35-37
: Fix list style but content LGTM!The credit information is complete with proper attribution and licensing. Just update the list style for consistency:
- - [clock-chime.mp3 by @ecfike]... - - Original skill by Mycroft AI (@MycroftAI) + * [clock-chime.mp3 by @ecfike]... + * Original skill by Mycroft AI (@MycroftAI)🧰 Tools
🪛 Markdownlint
36-36: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
__init__.py (5)
68-74
: Improve the docstring.The docstring for the
initialize
method could be more concise and focused on the key aspects of what the method does. Consider refining it to something like:"""Initialize the skill by preloading language settings and scheduling the hourly chime."""
This captures the essence of the method's purpose without going into unnecessary details about when it's called or what the chime scheduling entails.
92-101
: Consider usingdatetime.timedelta
for better readability.Instead of manually constructing the
datetime
object for the next hour, you can usedatetime.timedelta
to add one hour to the current time. This makes the code more readable and less error-prone.def _schedule_hour_chime(self): n = now_local() + datetime.timedelta(hours=1) self.schedule_event(self._schedule_hour_chime, when=datetime.datetime(year=n.year, month=n.month, day=n.day, hour=n.hour, minute=0, second=0))
147-148
: Update the return type hint toOptional[datetime.tzinfo]
.Since the
_get_timezone_from_builtins
method can returnNone
if the timezone is not found, the return type hint should be updated to reflect this. Change it fromdatetime.tzinfo
toOptional[datetime.tzinfo]
.@staticmethod def _get_timezone_from_builtins(location_string: str) -> Optional[datetime.tzinfo]:
183-183
: Update the return type hint toOptional[datetime.tzinfo]
.Similar to the previous comment, update the return type hint of
_get_timezone_from_fuzzymatch
toOptional[datetime.tzinfo]
to indicate that it can returnNone
.def _get_timezone_from_fuzzymatch(self, location_string: str) -> Optional[datetime.tzinfo]:
240-240
: Update the return type hint toOptional[datetime.datetime]
.Since the
get_datetime
method can returnNone
if the timezone is not found, update the return type hint toOptional[datetime.datetime]
to reflect this.def get_datetime(self, location: str = None, anchor_date: datetime.datetime = None) -> Optional[datetime.datetime]:
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
⛔ Files ignored due to path filters (1)
res/clock-chime-88027.mp3
is excluded by!**/*.mp3
📒 Files selected for processing (3)
README.md
(1 hunks)__init__.py
(7 hunks)setup.py
(1 hunks)
🧰 Additional context used
🪛 Markdownlint
README.md
30-30: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
36-36: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
🔇 Additional comments (7)
README.md (1)
19-22
: LGTM! Clear and informative section introduction.
The configuration section introduction effectively explains the purpose and location of the configuration options.
setup.py (1)
33-33
: LGTM! Verify resource packaging.
The changes correctly enable MP3 file packaging for the hourly chime feature.
Let's verify the resource structure and file inclusion:
Also applies to: 35-35
✅ Verification successful
Resource packaging setup is correctly configured ✅
The verification confirms:
- MP3 file
clock-chime-88027.mp3
exists in theres
directory MANIFEST.in
includesres
directory withrecursive-include res *
directive- Setup matches the changes in
setup.py
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify the existence of MP3 resources and their packaging
# Test 1: Check if the res directory exists and contains MP3 files
echo "Checking for MP3 files in res directory..."
fd -e mp3 -d 1 . res/
# Test 2: Verify the specific chime file mentioned in the PR
echo "Checking for the specific clock chime file..."
fd "clock-chime-88027.mp3" .
# Test 3: Ensure MANIFEST.in includes res directory (if exists)
echo "Checking MANIFEST.in configuration..."
if [ -f "MANIFEST.in" ]; then
cat MANIFEST.in
fi
Length of output: 613
__init__.py (5)
15-15
: LGTM!
The addition of the os
import is necessary for the new functionality related to the hourly chime sound file path.
78-91
: LGTM!
The _handle_play_hour_chime
method is well-structured and properly handles playing the chime sound based on the play_hour_chime
setting. The re-scheduling of the next chime event is also correctly implemented.
103-120
: LGTM!
The play_hour_chime
and hour_chime
properties are well-defined and provide clear access to the relevant settings. The default value for hour_chime
is also properly set using the os.path.dirname
to construct the file path relative to the skill's directory.
502-502
: LGTM!
The formatting change in the emitted message for displaying the date on the Mark 1 is minor and doesn't affect the functionality.
526-526
: LGTM!
The formatting change in the emitted message for displaying the time on the Mark 1 is minor and doesn't affect the functionality.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Outside diff range and nitpick comments (3)
README.md (2)
16-32
: Consider enhancing configuration documentation.The configuration section is well-structured, but could benefit from additional details:
- Specify supported audio file formats
- Provide guidance on where users should place custom sound files
- Document any file size limitations or recommendations
- **`hour_sound`**: (string) Specifies the file path to the audio file used for the hourly chime. By default, it points to `casio-watch.wav` in the `res` folder. You can customize this with the path to any audio file you prefer. +- **`hour_sound`**: (string) Specifies the file path to the audio file used for the hourly chime. By default, it points to `casio-watch.wav` in the `res` folder. Supports WAV and MP3 formats. For custom sounds, place your audio files in the skill's `res` directory and specify the filename. Keep file sizes reasonable (< 1MB recommended) for optimal performance.
🧰 Tools
🪛 Markdownlint
31-31: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
31-32
: Maintain consistent list style.For better markdown consistency, use asterisks (*) instead of dashes (-) for unordered lists throughout the document.
- - **`play_hour_chime`**: (boolean) Enables or disables the hourly chime notification... - - **`hour_sound`**: (string) Specifies the file path to the audio file... + * **`play_hour_chime`**: (boolean) Enables or disables the hourly chime notification... + * **`hour_sound`**: (string) Specifies the file path to the audio file... - - [casio-watch.wav by @Pablobd]... - - [clock-chime.mp3 by @ecfike]... - - Original skill by Mycroft AI (@MycroftAI) + * [casio-watch.wav by @Pablobd]... + * [clock-chime.mp3 by @ecfike]... + * Original skill by Mycroft AI (@MycroftAI)Also applies to: 36-38
🧰 Tools
🪛 Markdownlint
31-31: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
__init__.py (1)
121-123
: Useos.path.join
for cross-platform path constructionTo improve cross-platform compatibility and code readability, consider using
os.path.join
when constructing file paths instead of concatenating strings with slashes. This ensures that the code functions correctly on different operating systems.Apply this diff to refactor the path construction:
if not os.path.isfile(snd): - snd2 = f"{os.path.dirname(__file__)}/res/{snd}" + snd2 = os.path.join(os.path.dirname(__file__), "res", snd) snd = snd2 if os.path.isfile(snd2) else snd
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
⛔ Files ignored due to path filters (2)
res/casio-watch.wav
is excluded by!**/*.wav
res/clock-chime.mp3
is excluded by!**/*.mp3
📒 Files selected for processing (3)
README.md
(2 hunks)__init__.py
(7 hunks)setup.py
(1 hunks)
🧰 Additional context used
🪛 Markdownlint
README.md
31-31: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
36-36: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
38-38: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
🔇 Additional comments (4)
README.md (2)
5-5
: LGTM! Clear and concise description.
35-38
: LGTM! Proper attribution and licensing information.
Excellent job providing comprehensive credits with proper attribution and license links for the sound files.
🧰 Tools
🪛 Markdownlint
36-36: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
38-38: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
setup.py (2)
33-33
: LGTM! Good practice to separate resource files.
The addition of "res" to resource_base_dirs follows good practice by keeping media files separate from code and configuration.
35-35
: LGTM! Verify sound file inclusion.
Adding "*.mp3" to package_data is necessary for the hour chime feature.
Let's verify the sound file exists in the correct location:
✅ Verification successful
Sound file inclusion verified successfully
The clock-chime.mp3
file exists in the expected res
directory, confirming that the addition of "*.mp3" to package_data
in setup.py is appropriate and necessary for the hour chime feature.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify the existence and location of MP3 files
# Expected: Find at least one MP3 file in the res directory for the hour chime
# Check for MP3 files in the res directory
echo "Checking for MP3 files in res directory..."
fd -e mp3 -p res/
# Verify if the specific clock chime file exists
echo "Checking for clock chime sound file..."
fd "clock-chime.mp3" -p res/
Length of output: 270
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Outside diff range and nitpick comments (3)
README.md (2)
16-32
: Documentation improvements needed for Configuration sectionWhile the configuration options are well documented, please consider the following improvements:
- Specify the location of the
settings.json
file- Make the default values more prominent in the initial description
Consider updating the introduction like this:
## Configuration -You can adjust certain aspects of this skill's behavior by configuring the `settings.json` file. +You can adjust certain aspects of this skill's behavior by configuring the `~/.config/mycroft/skills/skill-ovos-date-time/settings.json` file. 2 sound files are included with the skill, `"casio-watch.wav"` and `"clock-chime.mp3"`, to audibly signal when the hour changes -Below is an example configuration file with explanations for each option. +Below is an example configuration file with explanations for each option. By default, hourly chimes are disabled (`play_hour_chime: false`) and use `casio-watch.wav`.🧰 Tools
🪛 Markdownlint
31-31: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
35-38
: Fix list marker style inconsistencyThe unordered list uses dash (-) markers while other lists in the document use asterisks (*). Let's maintain consistency.
Update the list markers:
-Credits +## Credits -- [casio-watch.wav by @Pablobd](https://freesound.org/people/Pablobd/sounds/492481/) under the [CC0 1.0 Universal License](https://creativecommons.org/publicdomain/zero/1.0/) -- [clock-chime.mp3 by @ecfike](https://pixabay.com/sound-effects/clock-chime-88027/) under the [Pixabay Content License](https://pixabay.com/service/license-summary/) -- Original skill by Mycroft AI (@MycroftAI) +* [casio-watch.wav by @Pablobd](https://freesound.org/people/Pablobd/sounds/492481/) under the [CC0 1.0 Universal License](https://creativecommons.org/publicdomain/zero/1.0/) +* [clock-chime.mp3 by @ecfike](https://pixabay.com/sound-effects/clock-chime-88027/) under the [Pixabay Content License](https://pixabay.com/service/license-summary/) +* Original skill by Mycroft AI (@MycroftAI)🧰 Tools
🪛 Markdownlint
36-36: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
38-38: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
__init__.py (1)
99-101
: Fix indentation in schedule_event call.The indentation is inconsistent with the rest of the codebase.
- self.schedule_event(self._schedule_hour_chime, - when=datetime.datetime(year=n.year, month=n.month, day=n.day, - hour=n.hour, minute=0, second=0)) + self.schedule_event( + self._schedule_hour_chime, + when=datetime.datetime( + year=n.year, month=n.month, day=n.day, + hour=n.hour, minute=0, second=0 + ) + )
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
⛔ Files ignored due to path filters (2)
res/casio-watch.wav
is excluded by!**/*.wav
res/clock-chime.mp3
is excluded by!**/*.mp3
📒 Files selected for processing (2)
README.md
(2 hunks)__init__.py
(7 hunks)
🧰 Additional context used
🪛 Markdownlint
README.md
31-31: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
36-36: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
38-38: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
🔇 Additional comments (4)
__init__.py (4)
68-76
: LGTM! Well documented initialization.
The initialize method is well structured with clear documentation and proper setup of language settings and hourly chime scheduling.
78-90
: LGTM! Clean implementation of hourly chime handler.
The implementation correctly handles the chime playback and rescheduling. Using instant=True
ensures accurate timing of the chime.
151-152
: LGTM! Improved type safety with Optional returns.
The changes properly handle cases where timezone lookup fails by using Optional return types. This is a good practice that helps prevent runtime errors.
Also applies to: 187-187, 244-244
506-506
: LGTM! Consistent indentation in display methods.
The indentation changes in the message emission calls improve code consistency.
Also applies to: 530-530
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
🧹 Outside diff range and nitpick comments (5)
README.md (3)
16-32
: Enhance configuration documentation with additional details.While the configuration section is well-structured, consider adding:
- Supported audio file formats
- Whether relative/absolute paths are supported for custom sounds
- Location where custom sound files should be placed
🧰 Tools
🪛 Markdownlint
31-31: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
31-32
: Fix markdown list style consistency.Use asterisks (*) instead of dashes (-) for unordered lists to maintain consistency with the rest of the document.
- - **`play_hour_chime`**: (boolean) Enables or disables the hourly chime notification. If `true`, the skill will play an audio chime at the start of every hour. Default is `false`. - - **`hour_sound`**: (string) Specifies the file path to the audio file used for the hourly chime. By default, it points to `casio-watch.wav` in the `res` folder. You can customize this with the path to any audio file you prefer. + * **`play_hour_chime`**: (boolean) Enables or disables the hourly chime notification. If `true`, the skill will play an audio chime at the start of every hour. Default is `false`. + * **`hour_sound`**: (string) Specifies the file path to the audio file used for the hourly chime. By default, it points to `casio-watch.wav` in the `res` folder. You can customize this with the path to any audio file you prefer.🧰 Tools
🪛 Markdownlint
31-31: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
36-38
: Fix markdown list style consistency in credits section.Use asterisks (*) instead of dashes (-) for unordered lists to maintain consistency.
- - [casio-watch.wav by @Pablobd](https://freesound.org/people/Pablobd/sounds/492481/) under the [CC0 1.0 Universal License](https://creativecommons.org/publicdomain/zero/1.0/) - - [clock-chime.mp3 by @ecfike](https://pixabay.com/sound-effects/clock-chime-88027/) under the [Pixabay Content License](https://pixabay.com/service/license-summary/) - - Original skill by Mycroft AI (@MycroftAI) + * [casio-watch.wav by @Pablobd](https://freesound.org/people/Pablobd/sounds/492481/) under the [CC0 1.0 Universal License](https://creativecommons.org/publicdomain/zero/1.0/) + * [clock-chime.mp3 by @ecfike](https://pixabay.com/sound-effects/clock-chime-88027/) under the [Pixabay Content License](https://pixabay.com/service/license-summary/) + * Original skill by Mycroft AI (@MycroftAI)🧰 Tools
🪛 Markdownlint
36-36: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
38-38: Expected: asterisk; Actual: dash
Unordered list style(MD004, ul-style)
__init__.py (2)
Line range hint
248-255
: HandleNone
return fromget_datetime
inget_spoken_time
.Since
get_datetime
may now returnNone
,get_spoken_time
should handle this case to prevent exceptions whendt
isNone
. Please add a check fordt
and handle the situation appropriately, possibly by returning an error message or a default time.Apply this diff to handle the
None
case:def get_spoken_time(self, location: str = None, force_ampm=False, anchor_date: datetime.datetime = None) -> str: """Get formatted spoken time based on user preferences.""" dt = self.get_datetime(location, anchor_date) + if dt is None: + return self.translate("time.tz.not.found", {"location": location}) if location else None # speak AM/PM when talking about somewhere else say_am_pm = bool(location) or force_ampm
Line range hint
265-273
: HandleNone
return fromget_datetime
inget_display_time
.Similar to
get_spoken_time
, theget_display_time
method should handle cases whereget_datetime
returnsNone
to prevent exceptions.Apply this diff to handle the
None
case:def get_display_time(self, location: str = None, force_ampm=False, anchor_date: datetime.datetime = None) -> str: """Get formatted display time based on user preferences.""" dt = self.get_datetime(location, anchor_date) + if dt is None: + return None # Or handle appropriately # speak AM/PM when talking about somewhere else say_am_pm = bool(location) or force_ampm return nice_time(dt, lang=self.lang, speech=False, use_24hour=self.use_24hour, # session aware use_ampm=say_am_pm)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
⛔ Files ignored due to path filters (2)
res/casio-watch.wav
is excluded by!**/*.wav
res/clock-chime.mp3
is excluded by!**/*.mp3
📒 Files selected for processing (3)
README.md
(2 hunks)__init__.py
(7 hunks)setup.py
(1 hunks)
🧰 Additional context used
🪛 Markdownlint
README.md
31-31: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
36-36: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
38-38: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
🔇 Additional comments (3)
README.md (2)
5-5
: LGTM! Improved readability of the basic functionality description.
Line range hint 1-38
: Documentation successfully implements hour chime feature requirements.
The README changes comprehensively document the new hour chime feature, including configuration options and proper attribution for sound files. This aligns perfectly with the PR objectives from issue #47.
🧰 Tools
🪛 Markdownlint
31-31: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
32-32: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
36-36: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
37-37: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
38-38: Expected: asterisk; Actual: dash
Unordered list style
(MD004, ul-style)
41-41: null
Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
setup.py (1)
33-33
: LGTM! Verify resource directory structure.
The changes correctly add support for MP3 files and the "res" directory, which aligns with the hour chime feature requirements.
Let's verify the resource directory structure:
Also applies to: 35-35
✅ Verification successful
Resource directory structure verified successfully
The res
directory exists and contains the expected clock-chime.mp3
file, confirming proper resource structure for the hour chime feature.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify the existence of the res directory and MP3 files
# Test 1: Check if res directory exists
if [ -d "res" ]; then
echo "✓ res directory exists"
else
echo "⚠ res directory not found"
fi
# Test 2: Look for MP3 files in res directory
fd -e mp3 -d 1 . res/
Length of output: 115
Looks like a great new feature. Does anyone has that Casio watch bleep sound? Casio was always doing this for their cheap ass watches you won at the Fairs. can't really comment on the code itself. Do you want me to test this? |
in the PR i am using this https://freesound.org/people/Pablobd/sounds/492481/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Build test failing. Code looks good but I'll need to test it in one of my assistants
no clue what "test manifest" is actually testing and how to solve it, first time i'm running into this workflow. anyone care to explain this automation? nvm, got it. but we should standardize this across our repos, i don't recall seeing this one before! |
https://github.com/tj-actions/check-manifest It's disabled by default, but available in Neon test automations: https://github.com/NeonGeckoCom/.github/blob/09f0850847bf45f02a8cd7774097bb570e6a8fd7/.github/workflows/python_build_tests.yml#L12 |
yeah it's a nice one to have! I just missed it until now somehow. I approve adopting that one across more repos 👍 |
closes #47
Summary by CodeRabbit
New Features
settings.json
.Bug Fixes
Documentation
Chores