A week in Openverse: 2023-09-18 – 2023-09-25

openverse

Merged PRs

  • #3059: Fixes `KeyError` for `media_serializers.py`
  • #3054: Start data refreshes on Mondays UTC 00:00
  • #3052: Bump cryptography from 41.0.3 to 41.0.4 in /automations/python
  • #3050: Publish changelog for api-2023.09.20.11.16.51
  • #3049: Publish changelog for api-2023.09.20.07.37.52
  • #3048: Replace gevent with uvloop
  • #3047: Re-add gevent monkey-patching
  • #3044: Configure conf options as parameters
  • #3041: Remove mentions of tailwind-config-viewer from docs
  • #3040: Publish changelog for api-2023.09.19.08.13.24
  • #3039: Add pagination examples to fix DRF spectacular warnings
  • #3038: Reference WordPress CoC and etiquette in OpenverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org. CoC
  • #3036: Remove `django-storages` and associated conf
  • #3035: Correctly set up constant fields in APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. responses
  • #3033: Publish changelog for frontend-2023.09.18.10.25.25
  • #3032: Add Elasticsearch cluster maintenance documentation
  • #3029: Upgrade ES dependencies to match cluster version
  • #3022: Replace "mature" with "sensitive" in api help strings
  • #3008: Deduplicate checks between ESLint and TypeScript
  • #3001: Add runbooks for API response times alarms
  • #2891: Improve image grid

Closed issues

  • #3056: KeyError: 'reason'
  • #3037: Fix the API documentation pagination set up
  • #3034: Fix the API documentation set up for the constant fields
  • #3007: Enable import ESLint pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party's TypeScript rule override to deduplicate TypeScript functionality
  • #2976: Replace `CODE_OF_CONDUCT.md` with a reference to WordPress Foundation's community code of conduct
  • #2917: Update provider DAGs to configure conf options as @params
  • #2888: Remove `django-storages` dependency
  • #2833: Media results not checked for`undefined` before decoding
  • #2768: Image grid padding calculation issue
  • #2712: Tall images get poorly cropped and their license icons are hidden
  • #2625: `mature` -> `sensitive` copy changes for the API
  • #1881: Openverse deployments log
  • #1259: Missing logs when `pull_data` is manually failed
  • #547: Image results grid improvement
  • #563: Search results do not display the image license without hovering

openverse-infrastructure

Merged PRs

  • #623: 🔄 synced file(s) with WordPress/openverse
  • #622: Define API response time anomaly alarms and increase threshold
  • #621: Revert "Revert "Add canary service feature""
  • #620: Revert "Add canary service feature"
  • #619: Define alarms for API thumbnails response times
  • #618: Add canary service feature
  • #615: Define alarms for Nuxt response times
  • #614: Define alarms for API response times

Closed issues

  • #617: Create a "canary"/"migrator" API service with a single task to run migrations and unblock a rapid redeployment of a second API service that has the rest of the tasks

#openverse, #week-in-openverse

A week in Openverse: 2023-09-11 – 2023-09-18

openverse

Merged PRs

  • #3031: Publish changelog for api-2023.09.15.19.15.58
  • #3030: Update dependency Pillow to v10.0.1
  • #3021: Resolve flakiness in global audio player VR tests
  • #3018: Remove `requests-oauthlib` from api dependencies
  • #3017: FilterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. languages by presence of ISO
  • #3016: Media results null check
  • #3015: Publish changelog for frontend-2023.09.11.17.34.23
  • #3014: Publish changelog for api-2023.09.11.16.56.52
  • #3013: Populate sensitivities for single result view
  • #3010: Skip flaky global audio visual regression test
  • #3006: `mature` -> `sensitive` frontend copy and code
  • #3005: Remove python3 openid dependency from api
  • #3004: remove redlock-py from api dependencies
  • #3003: remove hvac dependency from APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
  • #3002: Remove django-sslserver
  • #2983: Add content safety info to `SELECT_SEARCH_RESULT` event
  • #2974: Initialise runbooks for Nuxt 2XX/5XX alarms
  • #2964: Refactor popularity SQL
  • #2851: Update links in metadata section on single result page
  • #2793: Provider: justtakeitfree.com
  • #2738: Add runbooks for first API alarms

Closed issues

  • #3009: Flaky visual regression test: `visual-regression/components/global-audio-player.spec.ts:15:9 › screen at breakpoint xs with width 340 › Global audio player on the search page – rtl`
  • #2986: Warning from @nuxtjs/i18n about locales without ISO code
  • #2969: Track sensitivity and blurring info in result selection event
  • #2926: Single result endpoint does not return correctly populated `sensitivity`
  • #2896: Remove `python3-openid` dependency from API
  • #2895: Remove `requests-oauthlib` dependency from API
  • #2894: Remove `hvac` dependency from API
  • #2893: Remove `redlock-py` dependency from API
  • #2887: Remove `django-sslserver` dependency
  • #2731: Update Source and Provider links in the single result page Information section
  • #2678: Create a mapping of media type to SQL constants
  • #2624: `mature` -> `sensitive` code changes for the frontend
  • #2623: `mature` -> `sensitive` copy changes for the frontend
  • #2582: New styles in Metadata element
  • #2505: Frontend response count alarms
  • #1264: Image source: justtakeitfree.com
  • #433: Popularity calculation optimizations (Matview refresh)

openverse-infrastructure

Merged PRs

  • #613: Promote unhealthy ECS host count alarms
  • #612: Add alarm for high total requests for Nuxt
  • #587: Use default, recommended ES heap sizes
  • #581: Define alarms for API 2XX and 5XX responses

#openverse, #week-in-openverse

A week in Openverse: 2023-09-04 – 2023-09-11

openverse

Merged PRs

  • #2997: Fix metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. tags on pages
  • #2995: Check flag 'sensitive_content' with 'fetch_sensitive'
  • #2990: Publish changelog for ingestion_server-2023.09.05.18.56.18
  • #2989: Publish changelog for frontend-2023.09.05.17.09.13
  • #2988: Add a null/undefined check to audio VGridSkeleton
  • #2985: Increase timeout of filtered index creation action
  • #2984: Start data refresh schedule on Tuesdays UTC 00:00
  • #2982: Wrap usage of `useSensitiveMedia` with `computed`
  • #2978: Publish changelog for frontend-2023.09.04.20.20.34
  • #2977: Publish changelog for api-2023.09.04.19.52.19
  • #2975: Add 10k throttle to filtered index reindex query
  • #2973: Silo ESLint configuration into pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party package
  • #2972: Fix package build and refactor tsconfig to be less complex and breakable
  • #2971: Move deployDeploy Launching code from a local development environment to the production web server, so that it's available to visitors. steps before changelog PR
  • #2960: Bump deepdiff from 6.3.1 to 6.4.1 in /api
  • #2955: Separate features into persistent and session scoped cookies
  • #2948: Add null check for images in loading skeleton
  • #2936: Switch local APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. dev server to use gunicorn instead of django runserver
  • #2929: Add an updated `VAudioControl` component
  • #2845: Refactor the error page
  • #2782: Collect image dimensions from Europeana
  • #2727: Ensure data refresh can still be run if no initial index exist

Closed issues

  • #2994: Fetch sensitive feature flag stays active even if sensitive content feature flag is disabled
  • #2991: Powerhouse Collection
  • #2987: Homepage `robots` meta is set to `noindex`
  • #2979: Move data refresh schedule to start on Tuesdays UTC 00:00
  • #2965: ESLint plugin package is broken on `main`
  • #2963: Add a `requests_per_second` limit to the filtered index reindex step
  • #2932: Update `fetch_sensitive` flag to use session cookie instead of sessionStorage
  • #2927: `useSensitiveMedia` composable doesn't update when media changes
  • #2924: `TypeError` in VAudioCollection
  • #2923: `TypeError` in VImageGrid
  • #2907: TypeScript `defineComponent` type inference crash
  • #2859: Open changelog PRs in release app workflow even if linting fails
  • #2839: New popover and popover item
  • #2835: SecurityError: Failed to read the 'sessionStorage' property from 'Window': Access is denied for this document.
  • #2814: Switch local API dev server to use `gunicorn –reload` instead of Django's `runserver`
  • #2725: Change trigger rule for data refresh's `generate_index_suffix` to handle case where `get_current_index` skips
  • #2602: New styles in Audio control component
  • #2549: Update 'mature' field in API responses with 'sensitivity'
  • #2095: Run a data refresh for each media type with decoupled popularity
  • #460: Update external sources modal styles
  • #1484: Update Europeana to collect image dimensions

openverse-infrastructure

Merged PRs

  • #610: Bump ingestion server version
  • #608: 🔄 synced file(s) with WordPress/openverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org.
  • #606: Define alarms for Nuxt 2xx and 5xx responses
  • #582: Add total requests count to dashboards and its alarm

#openverse, #week-in-openverse

A week in Openverse: 2023-08-28 – 2023-09-04

openverse

Merged PRs

  • #2968: Include general Node files under `packages` key
  • #2962: remove pycodestyle from ingestion server pipfile
  • #2958: Revert prettier updates to fix the dev build
  • #2954: Bump sentry-sdk from 1.29.2 to 1.30.0 in /api
  • #2952: Bump sentry-sdk from 1.29.2 to 1.30.0 in /ingestion_server
  • #2951: Bump renovatebot/githubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/-action from 39.0.1 to 39.0.5
  • #2950: Bump boto3 from 1.28.34 to 1.28.39 in /ingestion_server
  • #2945: Update postgres Docker tag to v13.10
  • #2942: Update agilepathway/pull-request-label-checker Docker tag to v1.5.3
  • #2941: Add analytics to content safety events
  • #2939: Update nginxNGINX NGINX is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more. It started out as a web server designed for maximum performance and stability. In addition to its HTTP server capabilities, NGINX can also function as a proxy server for email (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, TCP, and UDP servers. https://www.nginx.com/. Docker tag to v1.25.2
  • #2934: Replace deprecated function from Pillow
  • #2925: Bump sphinx from 7.1.1 to 7.2.5 in /documentation
  • #2919: Publish changelog for catalog-2023.08.30.17.30.22
  • #2916: Publish changelog for ingestion_server-2023.08.29.17.36.35
  • #2915: Add `catalog/init` just command
  • #2912: Publish changelog for api-2023.08.28.20.43.01
  • #2911: Publish changelog for frontend-2023.08.28.19.38.22
  • #2909: Fix Elasticsearch memory hogging the right way
  • #2908: Upgrade ESLint and Prettier packages in monorepo root
  • #2902: Use a temp checkout path for automation when building docs
  • #2898: Simplify, improve and document the i18n pipeline
  • #2897: Add all pages to tsconfig
  • #2884: Update `just` aliases
  • #2883: Remove popularity constants view
  • #2882: Remove ES matrix from CI
  • #2881: Create a page for apps made with the OpenverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org. APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
  • #2880: Enabling fetching sensitive results when the UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing. switch is toggled
  • #2876: Add missing argument in `Pool.create_or_update_pool`
  • #2874: Bump pillow from 9.5.0 to 10.0.0 in /api

Closed issues

  • #2967: <Replace this with the actual title>
  • #2966: <Replace this with actual title>
  • #2957: `dev` build is broken on main
  • #2922: Linting is failing on false-positives for executable files from dev container
  • #2921: Add analytics events for content safety interactions
  • #2914: PR label checks are running (and failing) on `main`
  • #2900: GH Pages deployments failing
  • #2886: Untranslated locales list is always empty
  • #2885: Remove excessive information from `wp-locales.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.`
  • #2879: Update the store `fetch_sensitive` flag when it's toggled in the UI
  • #2865: Add pages to tsconfig
  • #2836: Delete previous project reminder comment before issuing a new one
  • #2772: Remove ingestion server's dependency on pycodestyle
  • #2769: "Made with Openverse" / "Developers", or some other marketing page for the API
  • #2729: Component: `VCollectionHeader`
  • #2668: New Metasearch button
  • #2606: Provider outreach form letter
  • #2591: Not using locale fallbacks for translated strings
  • #2571: Enable `playwright/expect-expect` once the pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party supports extending the assert function names
  • #771: Define aliases for `just` recipes

openverse-infrastructure

Merged PRs

  • #604: Remove merge restrictions on all branches not already covered
  • #603: Bump ingestion server to rel-2023.08.29.17.36.35
  • #595: Add `openverse-sensitive-terms` repository to GitHub module

Closed issues

  • #599: Updated branch protection rules don't allow dependabot to rebase its PRs
  • #594: Track the `openverse-sensitive-terms` repository in terraform
  • #574: Investigate unhealthy hosts incident 2023-07-16
  • #279: Host Openverse SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. Reaction on Openverse AWS infrastructure

#openverse, #week-in-openverse

A week in Openverse: 2023-08-21 – 2023-08-28

openverse

Merged PRs

  • #2899: Bump boto3 from 1.28.20 to 1.28.34 in /ingestion_server
  • #2892: Remove `gevent`, `django-braces`, and `ipaddress` dependencies
  • #2875: Bump fakeredis from 2.15.0 to 2.18.0 in /api
  • #2873: Bump jsonschema from 4.18.6 to 4.19.0 in /ingestion_server
  • #2870: Bump furo from 2023.7.26 to 2023.8.19 in /documentation
  • #2868: Bump pygithub from 1.59.0 to 1.59.1 in /automations/python
  • #2866: Refactor search.vue and add it to tsconfig
  • #2864: Revert changes to drop and recreate popularity constants views
  • #2863: Update Tailwind `rounded-md`
  • #2857: Publish changelog for frontend-2023.08.22.06.04.39
  • #2856: Publish changelog for api-2023.08.22.04.57.04
  • #2855: Add codespell pre-commit hook
  • #2854: Add blurring to the global audio player
  • #2852: Escape HTMLHTML HTML is an acronym for Hyper Text Markup Language. It is a markup language that is used in the development of web pages and websites. in media title and creator
  • #2848: Fix nginxNGINX NGINX is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more. It started out as a web server designed for maximum performance and stability. In addition to its HTTP server capabilities, NGINX can also function as a proxy server for email (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, TCP, and UDP servers. https://www.nginx.com/. redirect for no trailing slash
  • #2847: Prevent errors when Plausible is not running
  • #2841: Drop and recreate pop constants instead of refreshing
  • #2824: Document Plausible configuration deployment & deprecated custom properties
  • #2818: Update data refresh to use media tables
  • #2803: Update audio and audioset_view to not rely on audio_view
  • #2724: Update VSearchBarButton to use VButton instead of VIconButton

Closed issues

  • #2890: Remove `django-braces` dependency from APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
  • #2889: Remove `ipaddress` dependency from API
  • #2862: Set `rounded-md` to 8px (instead of Tailwind default of 6px)
  • #2861: Handle `SychronousOnlyOperation` exceptions
  • #2787: Remove gevent
  • #2785: Embed the production run command in the dockerfile rather than relying on ECS to override it
  • #2658: Update right padding in HeaderHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. internal
  • #2094: Remove popularity steps from the data refresh DAGs
  • #2093: Update ingestion server to copy data from the catalog media tables
  • #1988: Update analytics documentation to include instructions for enabling the analytics feature flag
  • #1880: Compress Docker images with zstd
  • #378: Add pre-commit hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. for spell checking
  • #658: SystemExit
  • #728: Path `/static` redirects to port 8080

openverse-infrastructure

Merged PRs

  • #601: Use built in API run command
  • #600: Remove prod ES 7 cluster
  • #598: 🔄 synced file(s) with WordPress/openverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org.
  • #596: Change tag `Name` of `prod_es_instances`
  • #591: Make all-branch rule default for all repositories, add gh-pages rule
  • #590: 🔄 synced file(s) with WordPress/openverse
  • #588: Use built in API run command
  • #584: Update production API services to use the new ES8 Cluster

Closed issues

  • #597: Deprovision the ES7 cluster
  • #593: Escape HTML in results
  • #553: Upgrade to Elasticsearch 8
  • #173: Set branch protection rules on both monorepo and infra repo for non-`main` branches.

#openverse, #week-in-openverse

A week in Openverse: 2023-08-14 – 2023-08-21

openverse

Merged PRs

  • #2842: Unexpose port 3000 from APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. Dockerfile
  • #2837: Prevent < and > in commit titles from breaking dag-sync slackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. message
  • #2832: Run API and Ingestion Server tests with all relevant ES versions
  • #2830: Bump tornado from 6.3.2 to 6.3.3 in /documentation
  • #2829: Publish changelog for api-2023.08.14.16.35.15
  • #2828: Publish changelog for frontend-2023.08.14.16.26.44
  • #2827: Remove reference to tailwind config viewer from docs
  • #2826: Extract use-external-sources composable
  • #2822: polyfill flatMap for Chrome < 69
  • #2821: Fix VImageCell storybook test
  • #2819: Update popularity refresh schedule and timeouts
  • #2817: Adjust the date filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. in Europeana to pull updates rather than created records
  • #2808: Set API Dockerfile run to production config
  • #2783: Replace request mocks with pook in tests
  • #2777: Remove `body` from the index.update elasticsearch requests
  • #2748: Bump apacheApache Apache is the most widely used web server software. Developed and maintained by Apache Software Foundation. Apache is an Open Source software available for free.-airflow[amazon,httpHTTP HTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands.,postgres] from 2.6.2 to 2.6.3 in /catalog
  • #2737: Fix mobile headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. spacing
  • #2660: Custom ESLint pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party to Skip Unit Tests if Preceded by Comment with GithubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ Issue Link
  • #2647: Show individual doc differences for rendered documentation preview on PRs
  • #2637: Project Proposal: OpenverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org. Datasets
  • #2490: JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/. to TypeScript

Closed issues

  • #2825: Extract use-external-sources as a composable
  • #2820: Storybook visual-regression/v-image-cell.spec.ts:19:9 › VImageCell › intrinsic loaded test is flaky
  • #2785: Embed the production run command in the dockerfile rather than relying on ECS to override it
  • #2776: The elasticsearch-py is deprecating `body` parameter in index.update calls in version 9
  • #2745: Error when cleaning up vueuse event handlers on Chrome 68 TypeError: n.flatMap is not a function
  • #2646: Add a list of (changed) rendered files to the "docs emitted" PR comment
  • #2573: Custom ESLint plugin to allow skipped unit tests only if there is a comment attached to the test with a GitHub issue link
  • #2342: Use TypeScript for Tailwind config
  • #2092: Update the `popularity_refresh` DAG schedule and timeouts
  • #1909: Remove Sphinx live view port forwarded to API container
  • #1862: Add better error handling and reporting to the PR review reminders DAG
  • #1268: Update Europeana to ingest by timestamp_updated

openverse-infrastructure

Merged PRs

  • #588: Use built in API run command
  • #586: Update org Terraform lock file
  • #578: Use docker-compose for indexer worker, other init improvements

Closed issues

  • #576: Convert indexer worker init into docker-compose format

#openverse, #week-in-openverse

Cultivating Collaborative Pathways with Statens Museum for Kunst (SMK)

In mid-August, a group of OpenverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org. maintainers gathered in Copenhagen, Denmark, to synchronize on the project, discuss planning for next year, and generally catch up. While there, we had the opportunity to connect with Jonas Heide SmithMerete Sanderhoff, and Nikolaj Erichsen from the Statens Museum for Kunst (SMK), Denmark’s largest art museum. The meeting was a great chance to learn more about SMK’s vision and discuss open media and licensing topics.

Openverse maintainers and the SMK representatives. From left to right: @krysal, Nikolaj Erichsen, @dhruvkb, @olgabulat, Jonas Heide Smith, Merete Sanderhoff, @fcoveram, @aetherunbound

SMK is one of Openverse’s numerous sources, contributing to the 700+ million Creative Common (CC) licensed and public domain works available in the catalog. Within Openverse, users can search and explore all of SMK’s high-quality artwork, including sculptures and statues. These pictures, taken by the museum photographers at SMK, are free to use under the CC0 license and come with automatically generated attribution text via Openverse.

“Trompe l’oeil. Board Partition with Letter Rack and Music Book” with a phone holding the Openverse search result of the same, taken inside SMK.

During our time together, we discussed several shared endeavors, including the challenge of effectively educating about licensing, the ongoing license enforcement efforts, and the FAIR and CARE Data Principles, particularly around handling indigenous works. Additionally, we talked about a possible collaboration with the National Museum of Denmark and the exciting prospect of incorporating SMK’s 3D models into Openverse. These discussions provided an excellent opportunity for cooperation and opened the door for further dialogue and integrations.

Know an institution or source of Creative Commons works that you’d like to see in Openverse? Let us know! As part of our mission to make openly-licensed media widely discoverable and accessible, we’re always looking to expand our catalog with high-quality, trusted sources of CC and public domain works.

#openverse #creative-commons #providers

A week in Openverse: 2023-08-07 – 2023-08-14

openverse

Merged PRs

  • #2812: Improve the docs
  • #2809: Remove unused WSGIBasicAuth and django-cron
  • #2806: Publish changelog for api-2023.08.08.22.22.02
  • #2804: Publish changelog for frontend-2023.08.08.21.19.44
  • #2781: fix: adding mce-visual-caret-hidden pattern to ignored Sentry errors
  • #2778: Stop converting timeout error to an object in Nuxt APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. requests
  • #2743: Fix audio snackbar and box audio seeking
  • #2740: Clean up Popularity Refresh notifications and adjust poke interval

Closed issues

  • #2786: Remove unused WSGI Basic Auth middleware
  • #2779: Unrelated error sent to Sentry: TypeError: undefined is not an object (evaluating 'document.getElementsByClassName('hide-icon hidden mce-vis…
  • #2746: Timeout errors are not handled correctly
  • #2742: Audio instructions snackbar is not hidden when you navigate from All results to single result page
  • #2566: Evaluate feasibility of Django ASGI and ADRF conversion
  • #2511: Documentation is not emitted on PRs if playwright tests are skipped
  • #2124: Boxed audio layout should not be seekable
  • #2090: Complete a full run of all popularity_refresh DAGs
  • #1239: Add link to quickstart at the top of the general setup documentation
  • #1172: Automate project thread update reminders
  • #1168: Add automation for projects
  • #1166: Docs are missing explicit instructions to install `pnpm`
  • #1059: Error in ingestion server tests: index `audio_temporary` not found
  • #1035: Consider disabling exposed ports in CI to avoid port conflict flakiness
  • #800: Bind adress 50280 is reported to be in use
  • #779: Configure other filetypes in EditorConfig
  • #778: Unify ESLint configuration between the JS automations and the frontend
  • #772: Enable fallback in `just` scripts
  • #479: Add an optional focus ring to `VLink` component
  • #489: Add OpenverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org. UA string to server-side API requests
  • #493: Change the mobile content settings tabs using swipe gesture
  • #507: Page for 'not supported' / 'coming soon' content types
  • #508: Global audio e2e tests are failing
  • #515: PR GHCR builds are adding `main` tag
  • #296: Should we have an 'effort' label?
  • #295: Remove manual `credits` section from release notes template
  • #517: Replace @nuxtjs/svg `.svg?inline` components with native `svg`s
  • #291: Explore splitting CI into multiple workflow files
  • #290: Prevent workflows from eating up GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ openverse-bot user's API requests
  • #275: Guard against PR pings when a PR has two reviews

openverse-infrastructure

Closed issues

  • #520: Add alarms to alert when deployments never settle
  • #498: Remove legacy Kibana instance
  • #495: Use the warnings provider to add a note describing the expected plan when deployingDeploy Launching code from a local development environment to the production web server, so that it's available to visitors. the catalog
  • #474: Broken link to the API deployment doc in README
  • #444: Update README regarding new API deployment method
  • #442: Remove Terraform version-specific note from README
  • #421: Share mounts between NginxNGINX NGINX is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more. It started out as a web server designed for maximum performance and stability. In addition to its HTTP server capabilities, NGINX can also function as a proxy server for email (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, TCP, and UDP servers. https://www.nginx.com/. and Docker to prevent duplicating static files
  • #361: Address the archived browser extension repository
  • #265: Look into best practices for `concrete` service module default tags
  • #260: Airflow permission update errors
  • #239: Audit all passwords to ensure we are not using any defaults
  • #228: Expose the Airflow Configuration in the UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing.
  • #220: Explore whether using a `callable_workflow` instead of a composite action would result in an easier to audit deployment log
  • #212: Workflow to automatically sync updated deployment workflows to the repositories that need them
  • #206: Add EventBridge matcher for container state change from Running to Stopped
  • #191: Evaluate ElasticSearch 8 and/or OpenSearch
  • #180: Store Elasticsearch log group
  • #178: Change response status code widgets in Service-Dashboard to line graphs
  • #145: Ability to run Django management commands in ECS
  • #92: Move GitHub cross-repository label management into Terraform
  • #54: Update Grafana provisioning to use static provisioning files as proposed in the monitoring RFC
  • #53: Add Prometheus and GNU Mailman via ECS
  • #48: API: postgres connection is crashing in production
  • #43: Handle DNSDNS DNS is an acronym for Domain Name System - how you assign a human readable address to a website’s exact numeric coded location (ie. wordpress.org uses the actual IP address 198.143.164.252). records with CloudFlare terraform provider
  • #37: Elasticsearch init does not finish
  • #34: Create an Outage Protocol in P2P2 P2 or O2 is the term people use to refer to the Make WordPress blog. It can be found at https://make.wordpress.org/.
  • #15: Catalog deployment documentation

#openverse, #week-in-openverse

A week in Openverse: 2023-07-31 – 2023-08-07

openverse

Merged PRs

  • #2771: Bump cryptography from 41.0.2 to 41.0.3 in /api
  • #2770: Bump cryptography from 41.0.2 to 41.0.3 in /automations/python
  • #2764: Bump nunjucks from 3.2.3 to 3.2.4
  • #2763: bump django-cors-headers from 4.1.0 to 4.2.0 in /api
  • #2762: Bump gunicorn from 20.1.0 to 21.2.0 in /api
  • #2761: Bump django-redis from 5.2.0 to 5.3.0 in /api
  • #2760: Bump furo from 2023.5.20 to 2023.7.26 in /documentation
  • #2759: Bump sphinx from 6.2.1 to 7.1.1 in /documentation
  • #2758: Bump hvac from 1.1.0 to 1.1.1 in /api
  • #2757: Bump gevent from 22.10.2 to 23.7.0 in /api
  • #2756: Bump boto3 from 1.26.165 to 1.28.16 in /ingestion_server
  • #2755: Bump gunicorn from 20.1.0 to 21.2.0 in /ingestion_server
  • #2753: Bump pyyaml from 6.0 to 6.0.1 in /ingestion_server
  • #2752: Bump sentry-sdk from 1.26.0 to 1.29.0 in /ingestion_server
  • #2751: Bump renovatebot/githubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/-action from 38.1.8 to 39.0.1
  • #2750: Bump pyyaml from 6.0 to 6.0.1 in /automations/python
  • #2749: Bump pyotp from 2.8.0 to 2.9.0 in /automations/python
  • #2736: Add a wait for the fonts to load in the internal headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. modal
  • #2721: Rename `mature` to `includeSensitiveResults`
  • #2676: Implementation Plan: Additional search views

Closed issues

  • #2720: "visual-regression/v-header-internal.spec.ts:35:11 › VHeaderInternal › screen at breakpoint xs with width 340 › mobile-header-internal-modal-ltr" is flaky again
  • #2560: Implementation Plan: Additional search views for the frontend
  • #2548: Rename 'mature' query param to 'include_sensitive_results'
  • #1381: Capture Phylopic creator even if only first or last name is defined

openverse-infrastructure

Merged PRs

  • #583: 🔄 synced file(s) with WordPress/openverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org.

#openverse, #week-in-openverse

A week in Openverse: 2023-07-24 – 2023-07-31

openverse

Merged PRs

  • #2741: Publish changelog for frontend-2023.07.28.23.42.26
  • #2739: BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. crawling on search results views
  • #2733: Add `additional_search_views` feature flag
  • #2728: Fix double-scroll issue on iOSiOS The operating system used on iPhones and iPads. devices
  • #2726: Re-add request ID tracking to APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. middleware
  • #2723: Update VBackToSearchResultsLink size to "small"
  • #2722: Extract `use-audio-snackbar` component
  • #2719: Bump certifi from 2023.5.7 to 2023.7.22 in /automations/python
  • #2718: Bump certifi from 2023.5.7 to 2023.7.22 in /ingestion_server
  • #2717: Bump certifi from 2023.5.7 to 2023.7.22 in /api
  • #2716: Bump certifi from 2023.5.7 to 2023.7.22 in /documentation
  • #2714: Update the Box image and Large image cell component hover state
  • #2713: Add test/ to .dockerignore to exlcude tests and test assets from frontend image build context
  • #2707: Publish changelog for frontend-2023.07.24.21.23.45
  • #2706: Publish changelog for api-2023.07.24.20.47.04
  • #2703: Add additional details to implementation plan template
  • #2700: useSensitiveMedia composable
  • #2697: Create a new `VIconButton`
  • #2696: Update back to results button area
  • #2695: Extract reusable VAudioCollection.vue
  • #2693: Remove External sources section from All content page
  • #2691: Add development guidelines/documentation for eslint-pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party
  • #2690: Corrections to the catalog & ingestion server deployment run books
  • #2651: Content Safety UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing. for single results
  • #2618: Fix fetching search results and handle fetching errors
  • #2592: Add popularity refresh DAGs
  • #2570: Make batched_update DAG resistent to mid-update failures
  • #2386: Removed connection ID variables in favour of simply defining

Closed issues

  • #2732: Add a switchable `additional_search_views` feature flag
  • #2694: Extract `VAudioCollection` component
  • #2683: Hidden headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. as scrolling down
  • #2657: Update "Back to results" and "Report this content" buttons
  • #2638: Request ID shows up as `[none]` in the logs
  • #2588: Improve error handling in the media store
  • #2507: Make batched_update DAG resilient to task failures
  • #2499: Baseline monitoring changes for Terraform and the unhealthy host count alarm
  • #2463: Component: 'Hide content' button
  • #2462: Component: Content safety wall
  • #2294: Remove connection ID environment variables in favor of simply defining them
  • #2089: Create `popularity_refresh` DAG factory
  • #856: Exclude tests and test assets from frontend image build context
  • #505: Blur single results marked as sensitive
  • #533: MetaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. search should be disabled on all content results

openverse-infrastructure

Merged PRs

  • #580: Update catalog docker-compose to include triggerer
  • #579: 🔄 synced file(s) with WordPress/openverseOpenverse Openverse is a search engine for openly-licensed media, including images and audio. Find Openverse on GitHub and at https://openverse.org.
  • #577: Quote datetime format string for indexer worker log config
  • #573: Remove redundant gunicorn config for the API
  • #569: Production Elasticsearch 8 cluster

Closed issues

  • #575: Unquoted date format breaks indexer server `docker run` command

#openverse, #week-in-openverse