Skip to content

chore(deps): bump eslint from 9.39.4 to 10.0.3 in /apps/web#270

Open
dependabot[bot] wants to merge 731 commits intomainfrom
dependabot/npm_and_yarn/apps/web/eslint-10.0.3
Open

chore(deps): bump eslint from 9.39.4 to 10.0.3 in /apps/web#270
dependabot[bot] wants to merge 731 commits intomainfrom
dependabot/npm_and_yarn/apps/web/eslint-10.0.3

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Mar 9, 2026

Bumps eslint from 9.39.4 to 10.0.3.

Release notes

Sourced from eslint's releases.

v10.0.3

Bug Fixes

  • e511b58 fix: update eslint (#20595) (renovate[bot])
  • f4c9cf9 fix: include variable name in no-useless-assignment message (#20581) (sethamus)
  • ee9ff31 fix: update dependency minimatch to ^10.2.4 (#20562) (Milos Djermanovic)

Documentation

  • 9fc31b0 docs: Update README (GitHub Actions Bot)
  • 4efaa36 docs: add info box for eslint-plugin-eslint-comments (#20570) (DesselBane)
  • 23b2759 docs: add v10 migration guide link to Use docs index (#20577) (Pixel998)
  • 80259a9 docs: Remove deprecated eslintrc documentation files (#20472) (Copilot)
  • 9b9b4ba docs: fix typo in no-await-in-loop documentation (#20575) (Pixel998)
  • e7d72a7 docs: document TypeScript 5.3 minimum supported version (#20547) (sethamus)

Chores

  • ef8fb92 chore: package.json update for eslint-config-eslint release (Jenkins)
  • e8f2104 chore: updates for v9.39.4 release (Jenkins)
  • 5cd1604 refactor: simplify isCombiningCharacter helper (#20524) (Huáng Jùnliàng)
  • 70ff1d0 chore: eslint-config-eslint require Node ^20.19.0 || ^22.13.0 || >=24 (#20586) (Milos Djermanovic)
  • e32df71 chore: update eslint-plugin-eslint-comments, remove legacy-peer-deps (#20576) (Milos Djermanovic)
  • 53ca6ee chore: disable eslint-comments/no-unused-disable rule (#20578) (Milos Djermanovic)
  • e121895 ci: pin Node.js 25.6.1 (#20559) (Milos Djermanovic)
  • efc5aef chore: update tsconfig.json in eslint-config-eslint (#20551) (Francesco Trotta)

v10.0.2

Bug Fixes

  • 2b72361 fix: update ajv to 6.14.0 to address security vulnerabilities (#20537) (루밀LuMir)

Documentation

  • 13eeedb docs: link rule type explanation to CLI option --fix-type (#20548) (Mike McCready)
  • 98cbf6b docs: update migration guide per Program range change (#20534) (Huáng Jùnliàng)
  • 61a2405 docs: add missing semicolon in vars-on-top rule example (#20533) (Abilash)

Chores

  • 951223b chore: update dependency @​eslint/eslintrc to ^3.3.4 (#20553) (renovate[bot])
  • 6aa1afe chore: update dependency eslint-plugin-jsdoc to ^62.7.0 (#20536) (Milos Djermanovic)

v10.0.1

Bug Fixes

  • c87d5bd fix: update eslint (#20531) (renovate[bot])
  • d841001 fix: update minimatch to 10.2.1 to address security vulnerabilities (#20519) (루밀LuMir)
  • 04c2147 fix: update error message for unused suppressions (#20496) (fnx)
  • 38b089c fix: update dependency @​eslint/config-array to ^0.23.1 (#20484) (renovate[bot])

Documentation

  • 5b3dbce docs: add AI acknowledgement section to templates (#20431) (루밀LuMir)
  • 6f23076 docs: toggle nav in no-JS mode (#20476) (Tanuj Kanti)
  • b69cfb3 docs: Update README (GitHub Actions Bot)

Chores

... (truncated)

Commits
  • bfce7ea 10.0.3
  • d44ced8 Build: changelog update for 10.0.3
  • e511b58 fix: update eslint (#20595)
  • ef8fb92 chore: package.json update for eslint-config-eslint release
  • e8f2104 chore: updates for v9.39.4 release
  • 5cd1604 refactor: simplify isCombiningCharacter helper (#20524)
  • 9fc31b0 docs: Update README
  • 70ff1d0 chore: eslint-config-eslint require Node ^20.19.0 || ^22.13.0 || >=24 (#20586)
  • f4c9cf9 fix: include variable name in no-useless-assignment message (#20581)
  • 4efaa36 docs: add info box for eslint-plugin-eslint-comments (#20570)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

hessius and others added 30 commits February 21, 2026 07:33
…api-0.129.0

chore(deps): bump fastapi from 0.128.8 to 0.129.0 in /coffee-relay
… header

- Remove redundant Abort button during brewing (keep only Stop) in
  LiveShotView, ControlCenter, and ControlCenterExpanded. Pre-shot
  Cancel/Abort warmup button is preserved.
- Add 'Analyze Shot' button to the shot-complete summary card that
  navigates to ShotHistoryView for the active profile.
- Add sticky profile header (name + image) to the right column
  during live-shot view, above the scrollable profile breakdown.
- Add 'shot-history' ViewState for direct shot analysis navigation.
Merge feat/desktop-two-column into version/2.0.0:
- Extract ReplayChart, CompareChart, AnalyzeChart into ShotCharts.tsx
- Import shared constants from chartConstants.ts (not new chartStyles.ts)
- Add power target curve support to extracted AnalyzeChart
- CSS grid layout for ExpertAnalysisView desktop columns
- Remove redundant package-lock.json and lib/chartStyles.ts
- Clean up unused imports (Legend, ReferenceLine, CustomTooltip)
…I key, .dockerignore

- docker-compose.yml: Add 512MB memory limit, json-file log rotation (10m x 3),
  stop_grace_period, make GEMINI_API_KEY optional with default empty string
- docker-compose.watchtower.yml: Bind API port to 127.0.0.1 only (security),
  add log rotation
- docker-compose.tailscale.yml: Add log rotation, fix comment
- .dockerignore: New file — excludes tests, docs, .git, node_modules, data/
  from build context (faster builds, smaller context)
- install.sh: Make Gemini API key optional with clear messaging, download
  tailscale-serve.json, replace eval with direct execution, generate
  start.sh/stop.sh/update.sh convenience scripts
- install.ps1: Same optional API key change, download tailscale-serve.json
…ve labels

- system.py: Extract DNS name and external_url from Tailscale status JSON
  (Self.DNSName field), return in API response for clickable remote URL
- SettingsView.tsx: Show clickable remote access URL when Tailscale is
  connected, add inline 3-step guide for remote access setup, improved
  section title to 'Remote Access', removed stale console.error
- translation.json: Updated tailscale section with guide steps, renamed
  'IP Address' to 'Tailscale IP', improved auth key expired message
Replace stale v1 tests (test_local_install.bats, test_uninstall.bats)
that targeted non-existent local-install.sh and uninstall.sh with
comprehensive v2 test suite covering:

- Script validity and syntax checking
- Platform detection (Linux, macOS, Windows redirect)
- Docker prerequisite checks and auto-install
- Migration detection from v1 installations
- Configuration (optional API key, Meticulous IP defaults)
- Optional services (Tailscale, Watchtower)
- Docker Compose file validation (memory limits, log rotation, security)
- Convenience script generation (start/stop/update)
- Post-install verification

52 tests, 0 failures.
The tailscale service uses network_mode: service:meticai (sharing
meticai's network namespace), which already implies meticai must
start first. The additional meticai.depends_on: tailscale created
a circular dependency causing 'docker compose config' to fail
when the Tailscale overlay was included.

Discovered during manual install testing.
Three bugs found during manual Pi testing:

1. All `read` prompts silently skipped when run via `curl | bash`
   because stdin was the pipe, not the terminal. Fixed by adding
   `< /dev/tty` to every `read -p` call.

2. Syntax error ('unexpected token else') caused by read consuming
   subsequent script lines from the pipe — same root cause as #1.

3. Reverted premature optional Gemini API key — the script now
   loops until a key is provided. Making it optional requires
   additional backend/UI changes tracked separately.

Added BATS test: verify all read commands redirect from /dev/tty.
Port missing features from v1 local-install.sh (1681 lines):
- Network discovery: scan_for_meticulous() with 4 methods
  (dns-sd Bonjour, avahi-browse, ARP cache, direct mDNS)
- resolve_local_hostname() (dscacheutil, getent, ping)
- run_with_timeout() (GNU timeout, gtimeout, perl alarm)
- detect_server_ip() (route/ipconfig on macOS, hostname -I on Linux)
- Machine selection UI (numbered list or Y/n for single device)
- Non-interactive mode (METICAI_NON_INTERACTIVE=true)
- Docker Compose availability check
- uninstall.sh generation (volumes, image, macOS app cleanup)
- macOS Dock shortcut (/Applications/MeticAI.app)
- Post-install test command (curl api/version)

BATS tests expanded from 53 to 91 covering all new features.
Fixes install failure on Pi where docker-compose.tailscale.yml was
missing because REPO_URL pointed to /main which doesn't have it yet.

Three changes:
1. Download compose files EARLY (before config section) and track
   success with HAS_TAILSCALE_COMPOSE / HAS_WATCHTOWER_COMPOSE flags.
   Only offer optional services whose compose file downloaded OK.
2. Add post-.env verification loop — if any referenced compose file
   is missing, exit with a clear error instead of a cryptic Docker error.
3. Add REPO_BRANCH env var (defaults to 'main') so branch testing
   works without sed hacks:
     REPO_BRANCH=version/2.0.0 bash <(curl -fsSL .../install.sh)

BATS tests: 91 → 99 (8 new tests for these behaviors).
Three issues exposed by Pi testing:

1. Install script detection was too broad — any ~/.meticai/.env
   (including from a failed previous run) triggered the v1 migration
   path. Now split into:
   - ~/MeticAI exists → v1 detected, offer migrate or fresh
   - ~/.meticai exists (no ~/MeticAI) → v2 detected, offer reinstall
   The v2 reinstall path stops existing containers before overwriting.

2. Migration script hardcoded main branch URLs — curl downloaded
   the old v1 docker-compose.yml (4 containers) instead of v2.
   Now uses REPO_BRANCH/REPO_URL (inherited via export from installer).
   Also downloads optional compose files and fixes read < /dev/tty.

3. Install script exports REPO_BRANCH + REPO_URL before invoking
   the migration script, so branch testing flows through correctly.

BATS tests: 99 → 108 (9 new tests for detection split + migration script).
- Remote Access card always visible in settings
- Enable/disable toggle, auth key input, external URL copy button
- POST /api/tailscale/configure and extended GET /api/tailscale-status
- 14 new tests, all 557 pass. Translations for 6 locales.
…ompose

- docker-compose.yml: use ${METICAI_TAG:-latest} instead of hardcoded :latest
- install.sh: compute METICAI_TAG from REPO_BRANCH (main→latest, other→branch-name)
- install.sh: add installation directory prompt (skipped in non-interactive mode)
- install.sh: write METICAI_TAG to .env for docker compose interpolation
- install.sh: fix hardcoded ~/.meticai paths in verification and success banner
- install.sh: uninstall script uses METICAI_TAG for image removal
- tests: add 8 new BATS tests for METICAI_TAG and install dir prompt (116 total)

Root cause: CI only publishes :latest tag from main branch. The version/2.0.0
branch publishes as :version-2.0.0, but docker-compose.yml hardcoded :latest.
Now the install script auto-detects the correct tag based on REPO_BRANCH.
…ling

- SettingsView: change dynamic dark/light mode label to static 'Use light mode'
  toggle (on = light, off = dark) for clearer UX
- EspressoChart: compute left Y axis min from flow data to display negative
  flow values during retraction (domain now [min, max] instead of [0, max])
- ProfileBreakdown: change scrollIntoView block from 'nearest' to 'start'
  so active stage scrolls to top of container
- App: replace overflow-y-auto with auto-scroll-only CSS class (hidden scrollbar,
  pointer-events-none) so stages aren't manually scrollable
- App: add 80vh bottom padding for overscroll so last stage can reach top
- index.css: add .auto-scroll-only utility class
- Double loading messages from 16 to 32 with new coffee-themed strings
- Update time estimate from '60-90 seconds' to '120-180 seconds'
- Extend progress bar duration from 75s to 180s
- Increase message cycling interval from 3.5s to 5s (32 × 5s = 160s)
- Update all 6 locale files (en, sv, es, it, fr, de)

Closes #181
…ormalized axis

- Add 'power' to _FLOAT_SENSORS in mqtt_service.py for proper MQTT coercion
- Add power_delta to bridge config for delta filtering
- Add power field to MachineState interface and WebSocket message handler
- Map power in LiveShotView ChartDataPoint construction
- Add showPower prop to EspressoChart (default false), enable in LiveShotView
- Implement Option B normalization: power (0–100%) scaled to left Y-axis range
  so it doesn't compress pressure/flow readings into 12% of visual space
- Add <Line> for normalized power with CHART_COLORS.power (#f87171)
- CustomTooltip detects powerNorm dataKey and displays actual percentage
- Normalize target power SVG overlay in both EspressoChart and ShotCharts
- Add powerNorm field to ChartDataPoint for chart rendering

Closes #183
- Create useMachineActions hook with shared state derivation and cmd()
- Single source of truth for isIdle, isBrewing, canStart, canAbortWarmup, etc.
- Fix canAbortWarmup bug: ControlCenterExpanded was missing isPourWater,
  causing abort button disabled in expanded view during pour-water state
- Replace duplicate cmd() callbacks in ControlCenter, ControlCenterExpanded,
  and LiveShotView with shared hook
- LiveShotView cmd() now has try/catch (was missing error handling)

Closes #184
- Replace [...chartDataRef.current, point] with chartDataRef.current.push(point)
- Use requestAnimationFrame to coalesce rapid WebSocket bursts into a single
  render per display frame (adapts to device capability)
- Only run downsample() when data exceeds MAX_VISIBLE_POINTS threshold
- Cancel pending rAF on component unmount
- Eliminates O(n) array allocation per WebSocket frame (~10fps during brew)

Closes #185
Wire 9 components with useTranslation + t() calls:
- ShotHistoryView: 60+ strings (stats, tabs, analysis, stages)
- ShotCharts: chart labels, tooltips, legends
- ExpertAnalysisView: all analysis UI strings
- SettingsView: appearance section labels
- ProfileImportDialog: 30+ import flow strings
- ProfileBreakdown: all section headings and labels
- LiveShotView: simulation controls, stage heading
- App: error messages, loading text

Add ~100 new translation keys across namespaces:
shotHistory, shotComparison, shotCharts, expertAnalysis,
appearance, profileBreakdown (patterns/dynamics/validation),
controlCenter.liveShot, app.errors, common.tryAgain

Sync all new keys to sv, es, it, fr, de locales
(English placeholders for future translation).

Closes #187
Remove CONTROL_CENTER_SPEC.md (internal spec, implementation complete)
Remove LOGGING.md (merged into README troubleshooting section)
Remove TECHNICAL.md (outdated v1 docs)
Trim IOS_SHORTCUTS.md from 187 to 44 lines (table-based format)
Add structured logging section to README troubleshooting
Update README help links (API.md instead of removed TECHNICAL.md)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
- logging_config: prevent duplicate file handlers on repeated setup_logging() calls
- main.py: fix CORS config (allow_credentials must be False with allow_origins=*)
- docker-build.sh: fix port inconsistency (5000/8000 → 3550 unified nginx port)
- remove runtime marker files (.restart-requested, .update-requested) from repo
- .gitignore: add .restart-requested and .update-requested
- test_main.py: update CORS test to reflect corrected credential-free behavior

Co-authored-by: hessius <1499030+hessius@users.noreply.github.com>
Fix CORS misconfiguration, logging handler dedup, port inconsistency, and stray runtime files
hessius and others added 20 commits March 8, 2026 12:13
Add weight-based bloom completion alongside the existing time-based
countdown. Bloom is now "done" when either the time elapses OR the
weight target is reached (whichever comes first).

- New setting: bloom weight multiplier (1x/1.5x/2x/2.5x/3x of dose)
- Bloom indicator shows both time remaining and weight progress
- Weight trend graph renders amber dashed line at bloom weight target
- Multiplier selector appears in settings when bloom is enabled in
  ratio mode (hidden in free mode where there is no dose)
- New bloomWeightMultiplier field in preferences (default: 2x)
- Translations added for all 6 locales

Co-Authored-By: Claude <noreply@anthropic.com>
… trigger

Bloom phase now always runs for the full configured time. The weight
target is displayed as a pouring guide — once reached it shows a green
checkmark but the countdown keeps running. Updated locale descriptions
in all 6 languages to clarify the target is informational.

Co-Authored-By: Claude <noreply@anthropic.com>
The template was only copied when missing, so stale or incompatible
versions on the data volume persisted across image updates. Since this
is a read-only template (not user-editable), always overwrite it from
the bundled defaults on startup.

Co-Authored-By: Claude <noreply@anthropic.com>
…ctly

Previously "Use Scale" captured the current scale weight as dose then
tared, which meant the setup weight (dripper + carafe) was used instead
of actual coffee weight. Now the button tares first, enters an
awaiting-dose mode, and auto-captures the dose once the added coffee
weight stabilises (1.2s stable, >3g). A second tap confirms immediately.

Co-Authored-By: Claude <noreply@anthropic.com>
Reverts the two-phase dose capture (tare → await → auto-detect) back to
the original single-click behavior. The two-phase flow was overengineered;
the real issue was unclear labeling and missing validation.

Changes:
- Restore 1-step "Set dose from scale" button (captures weight + tares)
- Add AlertDialog warning when weight > 50g (forgot to tare?)
- Add description subtitle explaining what the button does
- Update translations in all 6 locales (en, de, es, fr, it, sv)
- Remove unused addCoffee/addCoffeeTitle translation keys
- Revert test to single-click + add >50g warning dialog test

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix recipe durations in 4-6-method*.json (realistic pour/wait times)
- Change recipe_adapter.py: use relative: true for time-based exit triggers
- Ensures machine actually waits during wait stages instead of skipping
- Add .github/skills/ for progressive disclosure (workflow, testing, frontend, backend)
- Add .github/prompts/ for AI workflow prompts
- Add .cursorrules, AGENTS.md, CLAUDE.md, GEMINI.md for multi-agent context
- Update .gitignore: ignore backup files, .continuity/, SESSION_HANDOFF.md
- Backend: Add 600s time backup exit trigger to weight-based stages
  in pour_over_adapter.py and recipe_adapter.py to prevent indefinite runs

- Frontend: Add 10-minute safety timeout in PourOverView.tsx that
  auto-stops the brew timer if exceeded

- Easter egg: Enhanced 'Ready' banner when temp is within 2.3°C of
  target - shows glow animation and 'even by Lance's standard' subtitle

- Translation: Add timeout and lancesStandard keys to all 6 locales
…en profiles

- Replace non-UUID profile IDs with proper UUIDs during normalization
- Fall back to partial profile data when full fetch fails (e.g., slug IDs)
- Improved error messages when profile operations fail due to invalid IDs
- Updated tests to reflect new behavior
- fix(profiles): return 503 instead of 500 when AI unavailable in
  analyze_shot_with_llm (profiles.py:1451)
- fix(env): mark GEMINI_API_KEY as optional in .env.example
- fix(i18n): replace hardcoded recipe step labels in PourOverView
  with i18n keys (Bloom, Pour to, Wait)
- fix(i18n): add recipe step translations for all 6 locales
  (en, sv, de, fr, es, it)
- fix(ux): disable profile generation submit button when AI
  is unavailable instead of only showing error on click

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
are copied into the container image.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…error

canSubmit referenced aiAvailable before it was declared, causing
'Cannot access before initialization' ReferenceError in the
production build (minified code).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Fix SSE reconnect: retry on EventSource error instead of permanent disconnect
- Filter keepalive events in SSE handler to prevent UI regression
- Add missing fields to pour-over preferences Pydantic models (bloomWeightMultiplier, autoStart, progressionMode)
- Restore unique React keys in MarkdownText component
- Fix greeting language reactivity with useMemo([t]) dependency
- Rename greeting_base to greetingBase (camelCase convention)
- Promote _load_template to public load_pour_over_template()
- Add getServerSnapshot to use-mobile hook for SSR safety
- Remove autouse from validate_profile test fixture (opt-in only)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Localize 5 remaining hard-coded toast strings (App.tsx, RunShotView.tsx)
- Add CI guardrail for hard-coded UI strings (warning-only grep step)
- Add beta/stable version notifications in SettingsView
- Enhance /api/check-updates with latest_stable_version and latest_beta_version
- Fix integration tests to work with real Meticulous machine API
- Add i18n keys for beta notifications to all 6 locales

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Mar 9, 2026
@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Mar 9, 2026

Labels

The following labels could not be found: javascript. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

hessius and others added 4 commits March 9, 2026 23:25
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
feat: v2.1.0 milestone — pour-over machine integration, validation retries, token optimization, localization & gap fixes
Bumps [eslint](https://github.com/eslint/eslint) from 9.39.4 to 10.0.3.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v9.39.4...v10.0.3)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 10.0.3
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/apps/web/eslint-10.0.3 branch from be80b7a to cb55a4b Compare March 10, 2026 11:36
hessius added a commit that referenced this pull request Mar 11, 2026
- i18n: Replace 8 hardcoded English error strings in OrphanResolutionDialog
  and DeleteProfileDialog with t() translation keys across all 6 locales
- deps: Bump eslint ^10.0.2 → ^10.0.3 (PR #270), storybook ^10.2.7 → ^10.2.17 (PR #276)
- fix(profiles): Add threading.Lock to history read-modify-write in profile
  rename cascade to prevent TOCTOU race condition
- fix(shots): Bound recent shots cache to 50 entries with TTL-based eviction
  and clamped cache key parameters to prevent unbounded memory growth
- chore: Bump version to 2.2.0-beta.2

All tests pass: 741 backend, 277 frontend. Build clean. Lint: 0 errors.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants