Commit Graph

9619 Commits

Author SHA1 Message Date
Jorge Manrubia 9bf0663941 Merge pull request #2219 from jmporchet/patch-1
Add signup info when email config is not available
2026-03-03 11:44:24 +01:00
Jorge Manrubia ffb80ea3e0 Merge pull request #2216 from creslinux/docs/clarify-triage-endpoint
Clarify API docs for triage endpoint and S3 configuration
2026-03-03 11:42:51 +01:00
Jorge Manrubia 35c242ca9f Remove redundant clarification from triage endpoint description 2026-03-03 11:42:10 +01:00
Adrien Maston 8ce5a3c1b5 Merge pull request #2648 from basecamp/mobile/fix-change-email-layout
Mobile / Fix change email layout
2026-03-03 11:39:14 +01:00
Adrien Maston 00dd28790b Merge pull request #2644 from basecamp/mobile/done-button-with-icon
Mobile / Done button with icon
2026-03-03 11:38:56 +01:00
Adrien Maston 0cdb4495f9 Merge pull request #2640 from basecamp/mobile/search-scrolling+clear-suggestion
Mobile / Search scrolling + clear button suggestion
2026-03-03 11:38:27 +01:00
Jorge Manrubia 991e31bd66 Merge pull request #2634 from basecamp/dependabot/bundler/stackprof-0.2.28
Bump stackprof from 0.2.27 to 0.2.28
2026-03-03 11:34:58 +01:00
Jorge Manrubia 6f33d09471 Merge pull request #2630 from basecamp/dependabot/bundler/thruster-0.1.18
Bump thruster from 0.1.17 to 0.1.18
2026-03-03 11:34:52 +01:00
Adrien Maston a041c5bbfb Merge pull request #2643 from basecamp/mobile/fix-tag-button-tap-target
Mobile / Fix tag button tap target
2026-03-03 11:34:35 +01:00
Adrien Maston 9798026e73 Merge branch 'mobile/search-scrolling' into mobile/search-scrolling+clear-suggestion
* mobile/search-scrolling:
  Mobile: improve search screen (#2636)
  Document has_attachments in API card responses (#2523)
  Change exceeding and nearing limits to account for the 1000th card (#2345)
  Include concrete example motivating this module file
  Simplify comment in skip-detached override
  Extract detached-blob guard into its own file
  Skip AnalyzeJob when blob has no attachments
  Allow notice to take more inline space
  Fix small documentation typos
  Display the save form button on Board Settings page as a bridge button
  billing.rb: destroy -> destroy!
  Strip whitespace from webhook URLs
  Add test for webhook URL with trailing whitespace
2026-03-03 11:33:00 +01:00
Adrien Maston c4795ee075 Merge branch 'main' into mobile/search-scrolling
* main:
  Mobile: improve search screen (#2636)
  Document has_attachments in API card responses (#2523)
  Change exceeding and nearing limits to account for the 1000th card (#2345)
  Include concrete example motivating this module file
  Simplify comment in skip-detached override
  Extract detached-blob guard into its own file
  Skip AnalyzeJob when blob has no attachments
  Allow notice to take more inline space
  Fix small documentation typos
  Display the save form button on Board Settings page as a bridge button
  billing.rb: destroy -> destroy!
  Strip whitespace from webhook URLs
  Add test for webhook URL with trailing whitespace
2026-03-03 11:32:50 +01:00
Jorge Manrubia f2f5254efa Merge pull request #2638 from dainmiller/doc-typos-readme-kamal
Fix small documentation typos
2026-03-03 11:24:00 +01:00
Jorge Manrubia 7f0ac98902 Merge pull request #2637 from basecamp/mobile/board-settings
Mobile: display the save form button on Board Settings page as a bridge button
2026-03-03 11:23:31 +01:00
Jay Ohms 2e6d06afa7 Mobile: improve search screen (#2636)
* Disable search results nested scrolling behavior for mobile apps

* Display the native search input clear button in the native apps
2026-03-03 11:22:28 +01:00
Adrien Maston c606a9f40c Remove fixed panel size 2026-03-03 10:59:23 +01:00
Adrien Maston 757f990b85 Merge pull request #2641 from basecamp/mobile/fix-notice-size
Mobile / Fix notice size
2026-03-03 10:32:45 +01:00
Adrien Maston 8fced550d8 Refactor 2026-03-03 10:31:08 +01:00
Rob Zolkos 3cb5e29552 Document has_attachments in API card responses (#2523)
Follow-up to #2455 — add the has_attachments field to the card JSON
examples for the cards index, cards show, and pins index endpoints.
2026-03-03 10:30:31 +01:00
Andy Smith 9cd1167f85 Change exceeding and nearing limits to account for the 1000th card (#2345)
* Change exceeding and nearing limits to account for the 1000th card (instead of 1001)

* Add boundary condition tests for card limit checks

Tests now verify behavior at exactly the limit (1000 cards) and at the
nearing threshold (remaining = 100), covering the off-by-one fix.

---------

Co-authored-by: Jorge Manrubia <jorge@37signals.com>
2026-03-03 10:28:38 +01:00
Jorge Manrubia f6952187c7 Merge pull request #2508 from henrik/patch-1
billing.rb: destroy -> destroy!
2026-03-03 10:25:48 +01:00
Jorge Manrubia cae7990876 Strip whitespace from webhook URL's
Strip whitespace from webhook URL's
2026-03-03 10:06:31 +01:00
Joseph Hale, MS SE 49d22f9462 Merge pull request #2646 from basecamp/skip-analyze-job-for-detached-blobs
🤖 Skip AnalyzeJob when blob has no attachments
2026-03-02 15:55:46 -07:00
Joseph Hale 451920adc7 Include concrete example motivating this module file 2026-03-02 15:25:11 -07:00
Joseph Hale 7611236a67 Simplify comment in skip-detached override
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 14:40:21 -07:00
Joseph Hale c61f49cce9 Extract detached-blob guard into its own file
Separate the attachment existence check from the broadcast suppression
override so each file has a single responsibility. The guard now lives
in ActiveStorageAnalyzeJobSkipDetached with its own documentation
explaining the upload-then-delete race condition.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 14:38:19 -07:00
Joseph Hale 143508fc22 Skip AnalyzeJob when blob has no attachments
Upload-then-delete races cause AnalyzeJob to hit S3 after PurgeJob has
already removed the object, producing Aws::S3::Errors::NoSuchKey noise
in solid_queue_failed_executions. Since PurgeOnLastAttachment destroys
the attachment row before enqueueing PurgeJob, checking
blob.attachments.exists? catches this — a fast DB query that avoids the
S3 round-trip entirely.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 14:13:00 -07:00
Jay Ohms 1e18ddcad5 Merge branch 'mobile/search-scrolling' into mobile/search-scrolling+clear-suggestion
* mobile/search-scrolling:
  Extract event particulars helper method
  Reapply "Push event payload body updates"
  Bump z-index
  Bump z-index
  dep: Fix up Gemfile.saas.lock
2026-03-02 11:53:55 -05:00
Jay Ohms 71e295fb22 Merge branch 'main' into mobile/search-scrolling
* main:
  Extract event particulars helper method
  Reapply "Push event payload body updates"
  Bump z-index
  Bump z-index
  dep: Fix up Gemfile.saas.lock
2026-03-02 11:53:28 -05:00
Adrien Maston bedd2ff8ac Add check icon 2026-03-02 16:56:24 +01:00
Adrien Maston f4c35a1ca4 Merge pull request #2642 from basecamp/mobile/fix-missing-draft-button
Mobile / Fix missing draft button
2026-03-02 16:28:18 +01:00
Adrien Maston 1cb556ab2e Merge pull request #2639 from basecamp/mobile/fix-new-column-dialog
Mobile / Fix new column dialog
2026-03-02 16:27:40 +01:00
Jirka Hutárek f22afa7b56 Extract event particulars helper method 2026-03-02 16:15:28 +01:00
Jirka Hutárek 7e05794114 Reapply "Push event payload body updates"
This reverts commit 6e9de6a017.
2026-03-02 16:15:28 +01:00
Adrien Maston 911d114eb5 Add tap target button utility 2026-03-02 15:46:34 +01:00
Adrien Maston 85ba8a63d5 Bump z-index 2026-03-02 15:07:26 +01:00
Adrien Maston ef980a0d48 Allow notice to take more inline space 2026-03-02 14:50:58 +01:00
Adrien Maston 6a4db9af4d Show the custom clear button
... instead of the browser's
2026-03-02 14:22:28 +01:00
Adrien Maston 340d9aa763 Delegate clearing the input to new controller 2026-03-02 14:21:32 +01:00
Adrien Maston cc6809cd1f Bump z-index 2026-03-02 11:03:32 +01:00
Mike Dalessio 6a9121078e dep: Fix up Gemfile.saas.lock 2026-02-28 10:06:55 -05:00
Dain Miller bdf4459716 Fix small documentation typos 2026-02-28 05:41:55 -05:00
Jay Ohms 4e52b9b1d9 Display the save form button on Board Settings page as a bridge button 2026-02-28 05:18:48 -05:00
Jay Ohms 8a1a18562c Display the native search input clear button in the native apps 2026-02-28 05:10:30 -05:00
Jay Ohms cac08c8f06 Disable search results nested scrolling behavior for mobile apps 2026-02-28 04:39:36 -05:00
dependabot[bot] 9128fb276b Bump the development-dependencies group with 2 updates (#2629)
* Bump the development-dependencies group with 2 updates

Bumps the development-dependencies group with 2 updates: [web-console](https://github.com/rails/web-console) and [selenium-webdriver](https://github.com/SeleniumHQ/selenium).


Updates `web-console` from `bdbb391` to `90e3474`
- [Release notes](https://github.com/rails/web-console/releases)
- [Commits](https://github.com/rails/web-console/compare/bdbb39114348b037a515b2ce75a47457b0e647d1...90e3474306f2367cfeaf2875e91e2bc2d71b5f0f)

Updates `selenium-webdriver` from 4.40.0 to 4.41.0
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.40.0...selenium-4.41.0)

---
updated-dependencies:
- dependency-name: web-console
  dependency-version: 90e3474306f2367cfeaf2875e91e2bc2d71b5f0f
  dependency-type: direct:development
  dependency-group: development-dependencies
- dependency-name: selenium-webdriver
  dependency-version: 4.41.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: development-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* Sync Gemfile.saas.lock

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-27 23:46:48 -08:00
Jay Ohms 976f596990 Merge pull request #2635 from basecamp/mobile/remote-config
Update the android remote path config with the properties
2026-02-27 16:44:39 -05:00
Jay Ohms 29e80876e2 Update the android remote path config with the properties 2026-02-27 16:39:47 -05:00
github-actions[bot] 763af3f4a4 Sync Gemfile.saas.lock 2026-02-27 20:26:07 +00:00
dependabot[bot] a9c45c5979 Bump stackprof from 0.2.27 to 0.2.28
Bumps [stackprof](https://github.com/tmm1/stackprof) from 0.2.27 to 0.2.28.
- [Changelog](https://github.com/tmm1/stackprof/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tmm1/stackprof/compare/v0.2.27...v0.2.28)

---
updated-dependencies:
- dependency-name: stackprof
  dependency-version: 0.2.28
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-27 20:25:56 +00:00
github-actions[bot] e1ffecb4f6 Sync Gemfile.saas.lock 2026-02-27 20:24:55 +00:00