This project is mirrored from https://github.com/metabrainz/musicbrainz-server.
Pull mirroring updated .
- Dec 16, 2020
-
-
yvanzo authored
* beta: Update translations from Transifex Fix broken date formatter cache set Serialize AccountLayoutUserT for Subscribers.js Update translations from Transifex Fix load_first_release_date for empty recording lists Remove DBDefs import from definePluginConfig.js Update POT files using the production database Update translations from Transifex MBS-10634: Limit InstrumentsWithoutAnImage to StaticBrainz MBS-10590: Implement IROMBOOK images for instruments Set SameSite=None on beta cookie MBS-11241: Seed annotation, edit_note with textarea Avoid passing UnsanitizedEditorT to UserAccountLayout Make /admin/email-search accept POST only Fix incorrect test Test for sanitized editor data in dumps Serialize email/birth_date based on active user Pass only activeUserId to CollectionsEntityTypeSection Rename EditorPreferencesT to UnsanitizedEditorPreferencesT Rename SanitizedEditorT back to EditorT Detect unsanitized editor data in hydration props Editor::TO_JSON returns a sanitized editor Rename EditorT to UnsanitizedEditorT Fix performance issues with MBS-1424 implementation Update translations from Transifex Update POT files using the production database Use SameSite=Lax for login cookies (fixes MBS-11238) Add NONCE_SECRET to DBDefs.pm.ctmpl Update translations from Transifex Update POT files using the production database Store name in EditLinkType attributes MBS-1424: Add a "First release date" field to recordings MBS-8438: Only return event once in find_by methods MBS-11216: Split InstrumentsWithoutAnImage report MBS-11227: Ensure /release-group/merge also works MBS-11225: Autoselect IROMBOOK images Add ACTIVE_SCHEMA_SEQUENCE flag Update MB Solr to v3.3.1 Add JSON entry for schema 26 MBS-11188: Block odesli.co smart links Bump Flow to 0.138.0 MBS-11224: Show clear message for releases with no media MBS-11223: Only try to load medium rels if they have tracks Syntax fixed by bitmap Allow external release editor seeding in user selected language Avoid "masks earlier declaration" warning MBS-11212: Actually test qualities other than normal in WS MBS-11214: Don't group different link orders MBS-11169: Don't group different relationship credits MBS-11212: Serialize correct quality for JSON release Allow translating [removed] like elsewhere Add csrf_session_key field Add NONCE_SECRET Add seed confirmation page (resolves MBS-11092) Set SameSite=Strict on session, remember_login cookies set_csp_headers before returning the login form Move set_csp_headers to MusicBrainz::Server Merge global DBDefs/$c namespaces MBS-4555: Preserve POST parameters on login Move CSRF tokens to form layer Add CSRF token to linktype/delete Add CSRF token to linkattributetype/delete Move broken viewing_own_profile check Move generate_globals_script_nonce to Server.pm Merge Submit(Cancel) form(s) into Confirm Merge admin/edit_user forms Remove unused actions Remove unused ANNOTATION_LOCK_TIME RequireAuth instead of forward to /user/do_login MBS-11211: Convert the login page to React MBS-11210: Allow more subpaths for saisaibatake.ame-zaiku.com MBS-11207: Avoid double-encoding DBI errors Eslint fix: operator-assignment Hide cardinality and orderable direction if not in edit data MBS-10664: Allow more tags in expand2react Align comments with new code Add ReadOnlyFormT and make FormT rw Fix broken /lost-username link Add flow types to utility/dates.js Document how to disable entity caching Bump Flow to 0.137.0 Add edit_data_type_info to DropFunctions.sql Clearer wording for cardinality headers MBS-11018: Convert Add Relationship Type edit to React
-
yvanzo authored
-
- Dec 09, 2020
-
-
Michael Wiencek authored
Very obviously broken and not populating the cache properly at all. (In fact it does populate the cache with formatter as the key and undefined as the value, which just grows infinitely.)
-
Michael Wiencek authored
Very obviously broken and not populating the cache at all.
-
- Dec 08, 2020
-
-
Michael Wiencek authored
When root/entity/Subscribers.js is passed an editor, we must serialize it as an AccountLayoutUserT as required by UserAccountLayout. Fixes MBS-11269.
-
- Dec 07, 2020
-
-
Michael Wiencek authored
* master: Update translations from Transifex Fix load_first_release_date for empty recording lists (#1819)
-
Michael Wiencek authored
-
Michael Wiencek authored
If `@ids` is empty, this errors with `invalid input syntax for type integer: ""`. For example, on: https://beta.musicbrainz.org/ws/2/recording?artist=93ce655f-d54f-435f-a13c-0c6fb1f10a96&inc=work-rels&limit=100&offset=0
-
- Dec 03, 2020
-
-
Michael Wiencek authored
* beta: Remove DBDefs import from definePluginConfig.js
-
Michael Wiencek authored
DBDefs.pm does not exist when building docker images, so we of course cannot access DBDefs.js in that case either, since it hasn't been generated.
-
Michael Wiencek authored
* master: Update POT files using the production database Update translations from Transifex MBS-10634: Limit InstrumentsWithoutAnImage to StaticBrainz MBS-10590: Implement IROMBOOK images for instruments MBS-11241: Seed annotation, edit_note with textarea (#1803) Avoid passing UnsanitizedEditorT to UserAccountLayout Make /admin/email-search accept POST only Fix incorrect test Test for sanitized editor data in dumps Serialize email/birth_date based on active user Pass only activeUserId to CollectionsEntityTypeSection Rename EditorPreferencesT to UnsanitizedEditorPreferencesT Rename SanitizedEditorT back to EditorT Detect unsanitized editor data in hydration props Editor::TO_JSON returns a sanitized editor Rename EditorT to UnsanitizedEditorT
-
Michael Wiencek authored
-
Michael Wiencek authored
-
Michael Wiencek authored
MBS-10590: Implement IROMBOOK images for instruments
-
Nicolás Tamargo authored
Commons images (and other image links) are pretty much useless to us at the moment, since we no longer display any of them. This limits the InstrumentsWithoutAnImage report to only count staticbrainz.org/irombook images, since the point is to see which instruments are missing an image we can display.
-
Nicolás Tamargo authored
We have started uploading the IROMBOOK instrument images that we got permission to use to StaticBrainz, so we can display them on instrument pages. This makes that change and starts displaying them there.
-
Michael Wiencek authored
* beta: Set SameSite=None on beta cookie (#1813)
-
Michael Wiencek authored
Improvements to editor JSON handling
-
Michael Wiencek authored
If someone has the beta preference on and uses an external importer, the POST request won't include the beta cookie due to it using SameSite=Lax. This switches the beta cookie to use SameSite=None so that the 307 redirect is performed before the ConfirmSeed page is shown twice (first on the production site, then again on the beta site).
-
Michael Wiencek authored
This should preserve newlines in the input. The CSS changes are required in order to make the inputs and textareas have identical widths. Setting size=50 and cols=50 wasn't sufficient because the font families and font sizes were different for some reason.
-
- Nov 30, 2020
-
-
Michael Wiencek authored
-
Michael Wiencek authored
While the query parameters are sent securely over HTTPS, there's still the fact of them being stored the in admin's browser history, which is not ideal.
-
Michael Wiencek authored
It's failing to test the editor it just verified.
-
Michael Wiencek authored
-
Michael Wiencek authored
* Editor::_unsanitized_json outputs undef for both email and birth_date. * $c->unsanitized_editor_json must be called to fill in this info, and only does so if the active user is an account admin (in the case of email) or the same editor being serialized (in the case of email and birth_date -- I don't believe the latter is ever relevant to an account admin).
-
Michael Wiencek authored
formatCollaboratorNumber and formatPrivacy do not require any other information about the user.
-
Michael Wiencek authored
Also rename SanitizedEditorPreferencesT to ActiveEditorPreferencesT (I wouldn't consider those completely sanitized, just minimally relevant to the active user only).
-
Michael Wiencek authored
Now that Editor::TO_JSON returns a sanitized editor by default, and we have an UnsanitizedEditorT type to make uses of that more apparent, we can revert back to the simpler name (which reads less similarly to "UnsanitizedEditorT" and is probably harder to confuse).
-
Michael Wiencek authored
This only runs on the client, during tests or with DEVELOPMENT_SERVER enabled. Webpack should eliminate it as dead code in production.
-
Michael Wiencek authored
A separate method, unsanitized_json, has been added to explicitly request a full editor object; this should only be done if required.
-
Michael Wiencek authored
This should discourage use of EditorT in favor of SanitizedEditorT. While this doesn't affect what data is returned from the server, I think it serves as a good reminder to check whether a full editor is really needed. In a followup commit I plan to make Editor::TO_JSON return a SanitizedEditorT by default. This commit also removes the CatalystUserT alias for EditorT to maintain consistency in indicating that the type is unsanitized.
-
- Nov 28, 2020
-
-
Michael Wiencek authored
* master: Fix performance issues with MBS-1424 implementation (#1801)
-
Michael Wiencek authored
After running the original upgrade script for MBS-1424 in production we started to observe an increase in 504s due to track insertions taking 2-4 seconds or more. I traced this to the recording_release_dates view being slow, particularly joining against a union of the release_country and release_unknown_country tables. This commit adds a new materialized `release_first_release_date` table to store a union of the earliest release dates from `release_country` and `release_unknown_country`. To see where this matters, refer to the changes in the `set_recordings_first_release_dates` function. An example of the previous kind of subquery this would perform is: SELECT DISTINCT ON (recording) recording, year, month, day FROM recording_release_dates WHERE recording = ANY(ARRAY[1076099]) ORDER BY recording, year NULLS LAST, month NULLS LAST, day NULLS LAST; which takes slightly under 4 seconds in production. The new subquery (using the release_date table) looks like this: SELECT DISTINCT ON (track.recording) track.recording, rd.year, rd.month, rd.day FROM track JOIN medium ON medium.id = track.medium LEFT JOIN release_first_release_date rd ON rd.release = medium.release WHERE track.recording = ANY(ARRAY[1076099]) ORDER BY track.recording, rd.year NULLS LAST, rd.month NULLS LAST, rd.day NULLS LAST; and takes only ~0.66 ms by making use of an index scan on release_first_release_date_pkey.
-
Michael Wiencek authored
* beta: Guard against undef editor in EditorOAuthToken
-
Michael Wiencek authored
* production: Guard against undef editor in EditorOAuthToken
-
Michael Wiencek authored
-
- Nov 24, 2020
-
-
Michael Wiencek authored
* beta: Update translations from Transifex Update POT files using the production database
-
Michael Wiencek authored
-
Michael Wiencek authored
-
Michael Wiencek authored
* master: Use SameSite=Lax for login cookies (fixes MBS-11238) (#1802) MBS-11224: Show clear message for releases with no media MBS-11223: Only try to load medium rels if they have tracks MBS-11214: Don't group different link orders MBS-11169: Don't group different relationship credits
-