Commit Graph

2722 Commits

Author SHA1 Message Date
Franček Prijatelj
dcd323201a
Translated using Weblate (Slovenian)
Currently translated at 100.0% (1155 of 1155 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/sl/
2024-03-29 17:02:17 +01:00
Jonathan Perret
96b652fb52
Support HTTP long polling as an alternative to WebSockets (#859)
The motivation for supporting an alternative to WebSockets is that while all browsers supported by Grist offer native WebSocket support, some networking environments do not allow WebSocket traffic.

Engine.IO is used as the underlying implementation of HTTP long polling. The Grist client will first attempt a regular WebSocket connection, using the same protocol and endpoints as before, but fall back to long polling using Engine.IO if the WebSocket connection fails.

Include these changes:
- CORS websocket requests are now rejected as a stronger security measure. This shouldn’t affect anything in practice; but previously it could be possible to make unauthenticated websocket requests from another origin.
- GRIST_HOST variable no longer affects CORS responses (also should not affect anything in practice, as it wasn't serving a useful purpose)
2024-03-28 13:22:20 -04:00
gallegonovato
b4c2562029
Translated using Weblate (Spanish)
Currently translated at 100.0% (1155 of 1155 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/es/
2024-03-28 15:02:01 +01:00
Paul Fitzpatrick
67afd74817 (core) clean up snapshot list when access rules are in effect
Summary:
When access rules are in effect on a document, non-owners currently
don't have access to snapshots. Previously when the document history
tab is opened in this situation, an error toast would appear, along
with a small message that was hard to see in dark mode. This change
removes the toast and improves the message somewhat.

Test Plan: updated test

Reviewers: jarek

Reviewed By: jarek

Differential Revision: https://phab.getgrist.com/D4218
2024-03-27 12:11:47 -04:00
Franček Prijatelj
40f88f3e9c
Translated using Weblate (Slovenian)
Currently translated at 100.0% (1126 of 1126 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/sl/
2024-03-27 05:11:16 +01:00
Dmitry S
e380fcfa90 (core) Admin Panel and InstallAdmin class to identify installation admins.
Summary:
- Add InstallAdmin class to identify users who can manage Grist installation.

  This is overridable by different Grist flavors (e.g. different in SaaS).
  It generalizes previous logic used to decide who can control Activation
  settings (e.g. enable telemetry).

- Implement a basic Admin Panel at /admin, and move items previously in the
  "Support Grist" page into the "Support Grist" section of the Admin Panel.

- Replace "Support Grist" menu items with "Admin Panel" and show only to admins.

- Add "Support Grist" links to Github sponsorship to user-account menu.

- Add "Support Grist" button to top-bar, which
  - for admins, replaces the previous "Contribute" button and reopens the "Support Grist / opt-in to telemetry" nudge (unchanged)
  - for everyone else, links to Github sponsorship
  - in either case, user can dismiss it.

Test Plan: Shuffled some test cases between Support Grist and the new Admin Panel, and added some new cases.

Reviewers: jarek, paulfitz

Reviewed By: jarek, paulfitz

Differential Revision: https://phab.getgrist.com/D4194
2024-03-25 12:18:38 -04:00
github-actions[bot]
a86c5da5c5
automated update to translation keys (#911)
Co-authored-by: Paul's Grist Bot <paul+bot@getgrist.com>
2024-03-25 09:56:12 -04:00
Thomas Steen Rasmussen
c40fa180c1
fix shebang in various bash scripts (#910) 2024-03-25 09:55:20 -04:00
Paul Fitzpatrick
0c05f4cdc4 (core) updates from grist-core 2024-03-25 09:45:23 -04:00
Владимир В
4fcfd57fb8
Translated using Weblate (Russian)
Currently translated at 99.5% (1121 of 1126 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/ru/
2024-03-25 14:02:00 +01:00
Paul Fitzpatrick
5607f41a91
tweak Dockerfile so image is buildable with podman (#907)
This adds a docker.io registry name, the lack of which will otherwise
cause image building to fail if podman is used rather than docker.
Common images like node are automatically aliased and don't need
the registry name. Based on a problem reported in discord.

https://discord.com/channels/1176642613022044301/1214877650108026881
2024-03-23 10:58:41 -04:00
gallegonovato
4d016510a8
Translated using Weblate (Spanish)
Currently translated at 100.0% (1126 of 1126 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/es/
2024-03-21 23:01:51 +01:00
George Gevoian
418681915e (core) Forms Improvements
Summary:
 - Forms now have a reset button.
 - Choice and Reference fields in forms now have an improved select menu.
 - Formula and attachments column types are no longer mappable or visible in forms.
 - Fields in a form widget are now removed if their column is deleted.
 - The preview button in a published form widget has been replaced with a view button. It now opens the published form in a new tab.
 - A new share menu for published form widgets, with options to copy a link or embed code.
 - Forms can now have multiple sections.
 - Form widgets now indicate when publishing is unavailable (e.g. in forks or unsaved documents).
 - General improvements to form styling.

Test Plan: Browser tests.

Reviewers: jarek

Reviewed By: jarek

Subscribers: paulfitz

Differential Revision: https://phab.getgrist.com/D4203
2024-03-21 13:01:25 -04:00
Dmitry S
aff9c7075c (core) Move Billing tests into a separate test suite, and skip some
Summary:
- Also move out reused helper methods out of test suites, to avoid inadvertently including some test suites into other suites.
- Add logging around onNewTab since that seems related to test failures.
- Skip several tests in Billing that fail particularly often.

Test Plan: Checking that tests pass, and how many. Compared to the last successful run on master, there are 4 new skips (this diff), and 3 fewer test cases (a test case run in triplicate was removed in https://github.com/gristlabs/grist-core/pull/899)

Reviewers: georgegevoian

Reviewed By: georgegevoian

Differential Revision: https://phab.getgrist.com/D4216
2024-03-20 20:07:56 -04:00
Camille L
a2a5caf85b
Translated using Weblate (French)
Currently translated at 100.0% (1125 of 1125 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/fr/
2024-03-20 22:05:31 +01:00
Jarosław Sadziński
ff8477cbe4 (core) Bug with empty, self-referencing RefList columns.
Summary:
If a table T contains a RefList:T showing RowId and there
are any empty cells, the table can't be removed.

Test Plan: Added new test

Reviewers: dsagal

Reviewed By: dsagal

Subscribers: dsagal

Differential Revision: https://phab.getgrist.com/D4215
2024-03-20 20:55:24 +01:00
Sylvain Boulade
e944de5f6c
Add README entry for GRIST_INCLUDE_CUSTOM_SCRIPT_URL variable (#906) 2024-03-20 12:56:04 -04:00
George Gevoian
07fcce548b (core) Add TSV and DSV import/export
Summary: Adds support for importing .dsv files (an April Fools 2024 easter egg), and options for exporting .dsv and .tsv files from the Share menu.

Test Plan: Browser and server tests.

Reviewers: jarek

Reviewed By: jarek

Differential Revision: https://phab.getgrist.com/D4210
2024-03-20 10:57:21 -04:00
CamilleLegeron
f3f320a193
Feat: rename all column label from a given row with right click (#848) 2024-03-20 09:34:09 -04:00
Florent
8b267c1e00
Remove unused var GRIST_HOME_INCLUDE_STATIC (#902)
The README document referenced a `GRIST_HOME_INCLUDE_STATIC` env variable, which seem to be used nowhere.

Also seem to be confusing with GRIST_SERVERS which can be set to `home,static`.
2024-03-20 09:21:38 -04:00
Владимир В
0cc6135005
Translated using Weblate (Russian)
Currently translated at 99.6% (1121 of 1125 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/ru/
2024-03-18 20:01:58 +01:00
Florent
e84c420a37
Don't require running docker with --init to stop with ^C (#892) 2024-03-18 09:49:42 -04:00
Paul Fitzpatrick
48a8af83fc (core) updates from grist-core 2024-03-18 09:14:25 -04:00
Franček Prijatelj
0c58d40f39
Translated using Weblate (Slovenian)
Currently translated at 100.0% (1125 of 1125 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/sl/
2024-03-16 01:01:54 +01:00
Paul Janzen
8ee074ab5f
Translated using Weblate (German)
Currently translated at 100.0% (1125 of 1125 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/de/
2024-03-16 01:01:54 +01:00
Paul Janzen
c1c44f9fd3
Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1125 of 1125 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/pt_BR/
2024-03-16 01:01:54 +01:00
Jonathan Perret
b054810fd1
Remove the GRIST_ALLOWED_HOSTS environment variable (#899)
This mostly reverts commit 49b1749e98.
2024-03-15 09:40:56 -04:00
George Gevoian
2ebf350bdf (core) Disable drag-and-drop in active form input
Summary:
Drag-and-drop was interfering with text selection in inputs for form
labels and paragraphs.

Test Plan: Manual.

Reviewers: jarek

Reviewed By: jarek

Subscribers: jarek

Differential Revision: https://phab.getgrist.com/D4209
2024-03-14 10:19:28 -04:00
Dmitry S
e4d104ee41 (core) Try to get Billing tests to pass consistently.
Summary:
1. Set pageLoad timeout to 10s (default is 5 minutes)
2. Disable chrome's prompts to save credit card info, which may be
   affecting Stripe pages
3. Periodically record of logs and screenshots for the most-failing test case
   so that whenever it fails in a bad way (timeout with no indication of
   what's wrong), we can hope to find out what's wrong.

Test Plan: Planning to celebrate if Billing tests pass.

Reviewers: georgegevoian

Reviewed By: georgegevoian

Subscribers: georgegevoian

Differential Revision: https://phab.getgrist.com/D4193
2024-03-13 13:33:49 -04:00
gallegonovato
2cc48c3bfb
Translated using Weblate (Spanish)
Currently translated at 100.0% (1125 of 1125 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/es/
2024-03-12 21:01:46 +01:00
藤丸渓介
1a34f38334
Translated using Weblate (Japanese)
Currently translated at 80.6% (901 of 1117 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/ja/
2024-03-11 15:01:52 +01:00
gallegonovato
a610e69682
Translated using Weblate (Spanish)
Currently translated at 100.0% (1117 of 1117 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/es/
2024-03-11 15:01:52 +01:00
Paul Fitzpatrick
17857ec1f0 (core) updates from grist-core 2024-03-11 09:03:58 -04:00
Jarosław Sadziński
0703c8527b (core) Better Max and Min shortcut funtions in the new column menu.
Summary: Using the lookup shortcut in the add column menu to find a max or min value is a buggy experience. MAX and MIN returns 0 for empty collections which can be interpreted as 1970.1.1 in date or date time columns. It is better to just return None (empty cell) when there are no records.

Test Plan: Updated

Reviewers: paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D4206
2024-03-08 21:59:33 +01:00
github-actions[bot]
87121e89af
automated update to translation keys (#888)
Co-authored-by: Paul's Grist Bot <paul+bot@getgrist.com>
2024-03-08 15:22:28 -05:00
藤丸渓介
a52abb66a3
Translated using Weblate (Japanese)
Currently translated at 80.6% (901 of 1117 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/ja/
2024-03-08 17:42:06 +01:00
Franček Prijatelj
863c1ecaba
Translated using Weblate (Slovenian)
Currently translated at 100.0% (1117 of 1117 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/sl/
2024-03-08 17:42:06 +01:00
George Gevoian
14125b9b97 (core) Use document access for showing form buttons
Summary:
Site access was being used to show or hide form widget buttons. This meant
that users granted owner access to a document couldn't see buttons to
publish/unpublish or share a form. Now, document access is used instead.

Test Plan: Manual.

Reviewers: paulfitz

Reviewed By: paulfitz

Subscribers: paulfitz

Differential Revision: https://phab.getgrist.com/D4207
2024-03-08 09:15:31 -05:00
Thomas Weaver
8d39d761a5
fixes #852 (#877) 2024-03-08 01:30:30 -05:00
藤丸渓介
b78e213e73
Translated using Weblate (Japanese)
Currently translated at 80.6% (901 of 1117 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/ja/
2024-03-08 05:01:50 +01:00
Camille L
bcf4ea0049
Translated using Weblate (French)
Currently translated at 100.0% (1117 of 1117 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/fr/
2024-03-08 05:01:50 +01:00
Paul Fitzpatrick
a4f5ca37a9
mention boot page in README (#884)
This mentions how to enable the boot page diagnostics in the README. Ideally, something like the boot page would be available on initial installation without doing anything special, but that can come later.
2024-03-07 16:12:20 -05:00
Florent
1e3e076820
Add option to skip Checksum verification between doc storage and Redis #751 (#767)
This check should be unnecessary for stores with strong consistency guarantees (virtually everywhere now).

---------

Co-authored-by: Florent FAYOLLE <florent.fayolle@beta.gouv.fr>
2024-03-07 14:11:17 -05:00
George Gevoian
a5099fc598 (core) Skip showing empty doc tours
Summary: Empty doc tours are now skipped. Before, an error was shown instead.

Test Plan: Browser test.

Reviewers: jarek

Reviewed By: jarek

Differential Revision: https://phab.getgrist.com/D4204
2024-03-07 10:10:55 -05:00
藤丸渓介
66f025c7df
Translated using Weblate (Japanese)
Currently translated at 80.5% (898 of 1115 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/ja/
2024-03-07 02:01:58 +01:00
garnetsong
4383a439bb
Translated using Weblate (Japanese)
Currently translated at 80.5% (898 of 1115 strings)

Translation: Grist/client
Translate-URL: https://hosted.weblate.org/projects/grist/client/ja/
2024-03-07 02:01:57 +01:00
CamilleLegeron
9ce8ed3f25
Feat: add title query params for exported csv and xlsx + download translations (#872)
Co-authored-by: Florent <florent.git@zeteo.me>
2024-03-06 12:12:42 -05:00
Dmitry S
ca8ac806db (core) Trim unapplicable permissions bits for column rules, both at parse time, and in UI
Summary:
- UI now trims column rules before saving.
- When rules are loaded, bits that aren't applicable to a resource get ignored.
  This should fix the incorrect behavior in existing docs without a migration.

Test Plan:
- Added test of UI, that it now sends trimmed rules
- Added a unitteset of new trimPermissions() function
- Add test of fixed interpretation of existing rules: now only permission bits
  applicable to a resource get respected. I.e. create/delete/schemaEdit are
  ignored in column rules, and schemaEdit is also ignored in table rules.
- Note that DuplicateTest was affected: updated on the assumption that
  schemaEdit still can't actually apply at a table level.

Reviewers: georgegevoian, paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D4205
2024-03-06 09:46:33 -05:00
Vincent Viers
011cf9da0d
make 'contact support' link customisable (#854)
Co-authored-by: CamilleLegeron <camille@telescoop.fr>
2024-03-06 00:59:46 -05:00
George Gevoian
cf6579dffa v1.1.12 2024-03-05 14:51:18 -05:00