# Releasing 3.8.2

**URL:** <https://forum.openrefine.org/t/releasing-3-8-2/1606>\
**Category:** Development & Design\
**Created:** [June 26, 2024, 8:18am UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606 "2024-06-26T08:18:44Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [June 26, 2024, 8:18am UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606/1 "2024-06-26T08:18:44Z")

</div>

I would like to release 3.8.2 soon, with the following fix (once it's merged):

- [Fix preservation of pagination when matching a single cell by wetneb · Pull Request #6696 · OpenRefine/OpenRefine · GitHub](https://github.com/OpenRefine/OpenRefine/pull/6696)

Let me know if you would like to include other fixes in this release.

---

<div class="post-metadata">

**Author:** ![Antoine2711](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antoine2711/32/85_2.png) [@Antoine2711](https://forum.openrefine.org/u/Antoine2711)\
**Post date:** [June 27, 2024, 5:49am UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606/2 "2024-06-27T05:49:51Z")

</div>

I'm still not able to see the CommonsExtensions. I'm running Version 3.9-SNAPSHOT. I really think this should be fixed in v3.8.2.

Am I doing something wrong? Should the Commons extension work with v3.8.2?

Below is the OR log.

Regards, Antoine

```auto
01:46:50.961 [butterfly] < wire modules (0ms)
01:46:50.961 [butterfly] > configure modules (0ms)
01:46:51.627 [velocity] ResourceManager : unable to find resource 'macros.vm' in any resource loader. (665ms)
01:46:51.627 [velocity] Velocimacro : Velocimacro : Error using VM library : macros.vm (0ms)
org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource 'macros.vm'
	at org.apache.velocity.runtime.resource.ResourceManagerImpl.loadResource(ResourceManagerImpl.java:483)
	at org.apache.velocity.runtime.resource.ResourceManagerImpl.getResource(ResourceManagerImpl.java:354)
	at org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:1400)
	at org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:1380)
	at org.apache.velocity.runtime.VelocimacroFactory.initVelocimacro(VelocimacroFactory.java:202)
	at org.apache.velocity.runtime.RuntimeInstance.init(RuntimeInstance.java:261)
	at org.apache.velocity.runtime.RuntimeInstance.init(RuntimeInstance.java:589)
	at org.apache.velocity.app.VelocityEngine.init(VelocityEngine.java:135)
	at edu.mit.simile.butterfly.Butterfly.configureModules(Butterfly.java:862)
	at edu.mit.simile.butterfly.Butterfly.configure(Butterfly.java:428)
	at edu.mit.simile.butterfly.Butterfly.init(Butterfly.java:295)
	at org.eclipse.jetty.servlet.ServletHolder$Wrapper.init(ServletHolder.java:1305)
	at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:633)
	at org.eclipse.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:486)
	at org.eclipse.jetty.servlet.ServletHolder.prepare(ServletHolder.java:731)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:524)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:131)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:578)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:223)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1570)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:131)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:822)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:223)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1384)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:176)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:484)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1543)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:174)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1306)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at com.google.refine.ValidateHostHandler.handle(ValidateHostHandler.java:93)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at org.eclipse.jetty.server.Server.handle(Server.java:563)
	at org.eclipse.jetty.server.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1598)
	at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:753)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:501)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:282)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:314)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)
	at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
01:46:51.634 [butterfly] Error enabling javascript control (7ms)
org.apache.velocity.exception.VelocityException: Velocimacro : Error using VM library : macros.vm
	at org.apache.velocity.runtime.VelocimacroFactory.initVelocimacro(VelocimacroFactory.java:219)
	at org.apache.velocity.runtime.RuntimeInstance.init(RuntimeInstance.java:261)
	at org.apache.velocity.runtime.RuntimeInstance.init(RuntimeInstance.java:589)
	at org.apache.velocity.app.VelocityEngine.init(VelocityEngine.java:135)
	at edu.mit.simile.butterfly.Butterfly.configureModules(Butterfly.java:862)
	at edu.mit.simile.butterfly.Butterfly.configure(Butterfly.java:428)
	at edu.mit.simile.butterfly.Butterfly.init(Butterfly.java:295)
	at org.eclipse.jetty.servlet.ServletHolder$Wrapper.init(ServletHolder.java:1305)
	at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:633)
	at org.eclipse.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:486)
	at org.eclipse.jetty.servlet.ServletHolder.prepare(ServletHolder.java:731)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:524)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:131)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:578)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:223)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1570)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:131)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:822)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:223)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1384)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:176)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:484)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1543)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:174)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1306)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at com.google.refine.ValidateHostHandler.handle(ValidateHostHandler.java:93)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
	at org.eclipse.jetty.server.Server.handle(Server.java:563)
	at org.eclipse.jetty.server.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1598)
	at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:753)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:501)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:282)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:314)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)
	at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource 'macros.vm'
	at org.apache.velocity.runtime.resource.ResourceManagerImpl.loadResource(ResourceManagerImpl.java:483)
	at org.apache.velocity.runtime.resource.ResourceManagerImpl.getResource(ResourceManagerImpl.java:354)
	at org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:1400)
	at org.apache.velocity.runtime.RuntimeInstance.getTemplate(RuntimeInstance.java:1380)
	at org.apache.velocity.runtime.VelocimacroFactory.initVelocimacro(VelocimacroFactory.java:202)
	... 42 more
01:46:51.635 [butterfly] < configure modules (1ms)
01:46:51.635 [butterfly] > initialize modules (0ms)
01:46:52.516 [butterfly] < initialize modules (880ms)

```

---

<div class="post-metadata">

**Author:** ![Antoine2711](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antoine2711/32/85_2.png) [@Antoine2711](https://forum.openrefine.org/u/Antoine2711)\
**Post date:** [June 27, 2024, 6:09am UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606/3 "2024-06-27T06:09:24Z")

</div>

Small question for you, @antonin_d: I can’t find a branch named 3.8.2.

If I do `git tag -l` after a `git fetch`, I get this what’s below…  
Is the branch 3.8 actually the branch with 3.8.2 code? Because I get this with 3.8: Version 3.8-SNAPSHOT [TRUNK].

Regards, Antoine

```auto
git tag -l
1.0
1.0.1
1.0a
1.0a1
1.0a2
1.0a3
1.0a4
1.0b1
1.1
2.0
2.1
2.1-rc1
2.5
2.5-rc1
2.5-rc3
2.6-alpha.2
2.6-alpha1
2.6-beta.1
2.6-rc.2
2.7
2.7-rc.1
2.7-rc.2
2.8
3.0
3.0-beta
3.0-rc.1
3.1
3.1-beta
3.2
3.2-beta
3.3
3.3-beta
3.3-rc1
3.4
3.4-beta
3.4-beta2
3.4.1
3.5-beta1
3.5-beta2
3.5.0
3.5.1
3.5.2
3.6-beta1
3.6-beta2
3.6-rc1
3.6.0
3.6.1
3.6.2
3.7-beta2
3.7-beta3
3.7-beta4
3.7-beta5
3.7.0
3.7.1
3.7.2
3.7.3
3.7.4
3.7.5
3.7.6
3.7.7
3.7.9
3.8-beta.3
3.8-beta.4
3.8-beta1
3.8-beta2
3.8-beta5
3.8.0
3.8.1
4.0-alpha1
v1.0.2
v1.0.3
v1.0.5
v1.0.6
v1.0.7
v2.6-rc1

```

---

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [June 27, 2024, 8:42am UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606/4 "2024-06-27T08:42:39Z")

</div>

That's correct. The 3.8.2 tag would be created when we release the 3.8.2 version, so because we haven't released it yet, it's normal that the corresponding tag does not exist yet.

The 3.8.2 version would be created by adding commits on top of the existing 3.8 branch, which contains the 3.8.0 and 3.8.1 tags.

---

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [June 27, 2024, 8:46am UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606/5 "2024-06-27T08:46:03Z")

</div>

Concerning the Commons extension, I agree it's urgent to fix it.

There is ongoing work by @Sebastian (as part of the [maintenance contract for the Commons extension](https://openrefine.org/blog/2023/07/26/Wikimedia-Commons-Training-Grant)) to release a new version of the extension here:

> <https://github.com/OpenRefine/CommonsExtension/pull/107>
>
> Bumps \[org.openrefine:main\](https://github.com/OpenRefine/OpenRefine) from 3.6-S…NAPSHOT to 3.8.1.
> \<details\>
> \<summary\>Release notes\</summary\>
> \<p\>\<em\>Sourced from \<a href="https://github.com/OpenRefine/OpenRefine/releases"\>org.openrefine:main's releases\</a\>.\</em\>\</p\>
> \<blockquote\>
> \<h2\>OpenRefine v3.8.1\</h2\>
> \<p\>This is the second stable release of the 3.8 series. Please \<a href="https://docs.openrefine.org/manual/installing#set-where-data-is-stored"\>backup your workspace directory\</a\> before installing and report any problems that you encounter.\</p\>
> \<h2\>Changes\</h2\>
> \<p\>For an overview of the main changes since 3.7, refer to \<a href="https://github.com/OpenRefine/OpenRefine/releases/tag/3.8-beta1"\>the changelog for 3.8-beta1\</a\>. This lists the changes since 3.8.0.\</p\>
> \<ul\>
> \<li\>Add back missing 'search for match' button in reconciled cells (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6599"\>#6599\</a\>) by \<a href="https://github.com/wetneb"\>\<code\>@​wetneb\</code\>\</a\>\</li\>
> \<li\>Fix encoding guesser for non-UTF-8 BOM-based files (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6595"\>#6595\</a\>) by \<a href="https://github.com/tfmorris"\>\<code\>@​tfmorris\</code\>\</a\>\</li\>
> \<li\>Fix project name lookup with missing metadata (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6453"\>#6453\</a\>) by \<a href="https://github.com/tfmorris"\>\<code\>@​tfmorris\</code\>\</a\>\</li\>
> \</ul\>
> \<h2\>OpenRefine v3.8.0\</h2\>
> \<p\>This is the first stable release of the 3.8 series. Please \<a href="https://docs.openrefine.org/manual/installing#set-where-data-is-stored"\>backup your workspace directory\</a\> before installing and report any problems that you encounter.\</p\>
> \<h2\>Changes\</h2\>
> \<ul\>
> \<li\>Improve new release notification for better flexibility and privacy (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6511"\>#6511\</a\>) by \<a href="https://github.com/wetneb"\>\<code\>@​wetneb\</code\>\</a\>\</li\>
> \</ul\>
> \<h2\>OpenRefine v3.8-beta.4\</h2\>
> \<p\>Version skipped due to an issue in the publishing process. See \<a href="https://github.com/OpenRefine/OpenRefine/releases/tag/3.8-beta5"\>3.8-beta5\</a\> instead.\</p\>
> \<h2\>OpenRefine v3.8-beta.3\</h2\>
> \<p\>Version skipped due to an issue in the publishing process. See \<a href="https://github.com/OpenRefine/OpenRefine/releases/tag/3.8-beta5"\>3.8-beta5\</a\> instead.\</p\>
> \<h2\>OpenRefine v3.8-beta5\</h2\>
> \<p\>This is the second beta release of the 3.8 series (version numbers \<code\>3.8-beta2\</code\> , \<code\>3.8-beta3\</code\> and \<code\>3.8-beta4\</code\> are skipped because of publishing problems). Please \<a href="https://docs.openrefine.org/manual/installing#set-where-data-is-stored"\>backup your workspace directory\</a\> before installing and report any problems that you encounter.\</p\>
> \<h2\>Changes\</h2\>
> \<ul\>
> \<li\>Improve separator guessing for CSV/TSV files (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6516"\>#6516\</a\>) by \<a href="https://github.com/tfmorris"\>\<code\>@​tfmorris\</code\>\</a\>\</li\>
> \<li\>Avoid crashing when cell renderer throws an exception (workaround for \<a href="https://redirect.github.com/OpenRefine/CommonsExtension/issues/99"\>OpenRefine/CommonsExtension#99\</a\>) by \<a href="https://github.com/wetneb"\>\<code\>@​wetneb\</code\>\</a\>\</li\>
> \<li\>Fix recon deserialization error for matched cells (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6464"\>#6464\</a\>) by \<a href="https://github.com/wetneb"\>\<code\>@​wetneb\</code\>\</a\>\</li\>
> \<li\>Normalize the ordering of &quot;OK&quot; / &quot;Cancel&quot; buttons in dialogs (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6353"\>#6353\</a\>) by \<a href="https://github.com/zyadtaha"\>\<code\>@​zyadtaha\</code\>\</a\>\</li\>
> \<li\>Removed grey background from (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6440"\>#6440\</a\>) by \<a href="https://github.com/abhishekkujur1307"\>\<code\>@​abhishekkujur1307\</code\>\</a\>\</li\>
> \<li\>Correct the behavior of cell editing when confirming single cell changes with &quot;Enter&quot; (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6406"\>#6406\</a\>) by \<a href="https://github.com/WR-Smiley"\>\<code\>@​WR-Smiley\</code\>\</a\>\</li\>
> \<li\>Package Java classes into jar archives (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/issues/6257"\>#6257\</a\>) by \<a href="https://github.com/wetneb"\>\<code\>@​wetneb\</code\>\</a\>\</li\>
> \</ul\>
> \<h2\>OpenRefine v3.8-beta1\</h2\>
> \<p\>This is the first beta release of the 3.8 series. Please \<a href="https://docs.openrefine.org/manual/installing#set-where-data-is-stored"\>backup your workspace directory\</a\> before installing and report any problems that you encounter.\</p\>
> \<h2\>New features and improvements\</h2\>
> \<h3\>Keyboard navigation improvements\</h3\>
> \<ul\>
> \<li\>Dialogs are focusable (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/pull/5578"\>#5578\</a\>, by \<a href="https://github.com/Abbe98"\>\<code\>@​Abbe98\</code\>\</a\>)\</li\>
> \<li\>The tab order for reconciliation create and match buttons is fixed (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/pull/5685"\>#5685\</a\>, by \<a href="https://github.com/Abbe98"\>\<code\>@​Abbe98\</code\>\</a\>)\</li\>
> \<li\>The show/hide left panel is keyboard accessible (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/pull/5852"\>#5852\</a\>, by \<a href="https://github.com/Abbe98"\>\<code\>@​Abbe98\</code\>\</a\>)\</li\>
> \<li\>Menu buttons in the extension-bar can be opened with the keyboard (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/pull/5853"\>#5853\</a\>, by \<a href="https://github.com/Abbe98"\>\<code\>@​Abbe98\</code\>\</a\>)\</li\>
> \<li\>Tab buttons are outlined when focused (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/pull/5851"\>#5851\</a\>, by \<a href="https://github.com/Abbe98"\>\<code\>@​Abbe98\</code\>\</a\>)\</li\>
> \<li\>The element outlines set by the browser are retained (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/pull/5867"\>#5867\</a\>, by \<a href="https://github.com/Abbe98"\>\<code\>@​Abbe98\</code\>\</a\>)\</li\>
> \<li\>The project permalink can be selected (\<a href="https://redirect.github.com/OpenRefine/OpenRefine/pull/5871"\>#5871\</a\>, by \<a href="https://github.com/Abbe98"\>\<code\>@​Abbe98\</code\>\</a\>)\</li\>
> \</ul\>
> 
> \</blockquote\>
> \<p\>... (truncated)\</p\>
> \</details\>
> \<details\>
> \<summary\>Commits\</summary\>
> \<ul\>
> \<li\>See full diff in \<a href="https://github.com/OpenRefine/OpenRefine/commits/3.8.1"\>compare view\</a\>\</li\>
> \</ul\>
> \</details\>
> \<br /\>
> 
> 
> \[!\[Dependabot compatibility score\](https://dependabot-badges.githubapp.com/badges/compatibility\_score?dependency-name=org.openrefine:main&package-manager=maven&previous-version=3.6-SNAPSHOT&new-version=3.8.1)\](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
> 
> 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-automerge-start)
> \[//\]: # (dependabot-automerge-end)
> 
> \---
> 
> \<details\>
> \<summary\>Dependabot commands and options\</summary\>
> \<br /\>
> 
> 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 merge\` will merge this PR after your CI passes on it
> \- \`@dependabot squash and merge\` will squash and merge this PR after your CI passes on it
> \- \`@dependabot cancel merge\` will cancel a previously requested merge and block automerging
> \- \`@dependabot reopen\` will reopen this PR if it is closed
> \- \`@dependabot close\` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
> \- \`@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)
> 
> 
> \</details\>

I'd be happy to include any changes that ease this process in 3.8.2.

---

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [July 4, 2024, 7:56am UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606/6 "2024-07-04T07:56:33Z")

</div>

@Sebastian has just released a new version of the Commons extension which is compatible with OpenRefine 3.8, so there should not need to be any further adaptations in OpenRefine that are needed for this to work.

For good measure, I'd say let's add a few other bug fixes which look safe to me:

- [Move commons-lang3 dependency to the server module by wetneb · Pull Request #6661 · OpenRefine/OpenRefine · GitHub](https://github.com/OpenRefine/OpenRefine/pull/6661)
- [Fix join() of arrays containing nulls. Fixes #6683 by tfmorris · Pull Request #6684 · OpenRefine/OpenRefine · GitHub](https://github.com/OpenRefine/OpenRefine/pull/6684)
- [Checking running status of OpenRefine with wget will not work correct… by dino2580 · Pull Request #6626 · OpenRefine/OpenRefine · GitHub](https://github.com/OpenRefine/OpenRefine/pull/6626)

---

<div class="post-metadata">

**Author:** ![antonin\_d](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/antonin_d/32/32_2.png) [@antonin\_d](https://forum.openrefine.org/u/antonin_d)\
**Post date:** [July 8, 2024, 5:46pm UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606/7 "2024-07-08T17:46:15Z")

</div>

I've published 3.8.2 and have left out [Fix join() of arrays containing nulls. Fixes #6683 by tfmorris · Pull Request #6684 · OpenRefine/OpenRefine · GitHub](https://github.com/OpenRefine/OpenRefine/pull/6684) because it did not cherry-pick cleanly.

---

<div class="post-metadata">

**Author:** ![tfmorris](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.openrefine.org/tfmorris/32/17_2.png) [@tfmorris](https://forum.openrefine.org/u/tfmorris)\
**Post date:** [July 15, 2024, 6:50pm UTC](https://forum.openrefine.org/t/releasing-3-8-2/1606/8 "2024-07-15T18:50:56Z")

</div>

> I've published 3.8.2 and have left out [Fix join() of arrays containing nulls. Fixes #6683 by tfmorris · Pull Request #6684 · OpenRefine/OpenRefine · GitHub](https://github.com/OpenRefine/OpenRefine/pull/6684) because it did not cherry-pick cleanly.

The fixes for #[6598](https://github.com/OpenRefine/OpenRefine/issues/6598) and #[6521](https://github.com/OpenRefine/OpenRefine/issues/6521) were on the same branch, but I think they got merged in reverse order, so they probably need to be considered as a set.

Tom
