<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="381544" data-post-id="381544">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sezaru" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sezaru/120/36113_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sezaru
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/zachdaniel" rel="nofollow">@zachdaniel</a> Any idea about this? If there is some more tests or code changes that I can do here to help figure this out just let me know <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381544" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/12">Post #11</a>
	                </div>
	            </div>
              <div id="likers-container-381544" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381544"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #11"></div>
  </section>
</div>
    <div class="postbit" id="381670" data-post-id="381670">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="zachdaniel" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/zachdaniel/120/31980_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  zachdaniel
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>Creator of Ash</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I haven’t had a chance to look into this. I don’t think you should have to do that though, the regex should be compiled in. The cached regex stuff was added because an inadvertent change was made in Elixir due to OTP 28.0 that didn’t support regexes at compile time. But that’s been patched in 28.1 and latest Elixir AFAIK. So the regex should be compiled in. And in both cases they use the same option type for regexes.</p>
<p>If you can confirm that going back to the old option and using the tuple format solves the performance issue then it may be a simple fix.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381670" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/13">Post #12</a>
	                </div>
	            </div>
              <div id="likers-container-381670" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381670"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #12"></div>
  </section>
</div>
    <div class="postbit" id="381671" data-post-id="381671">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sezaru" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sezaru/120/36113_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sezaru
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I feel that trying to understand where the 495 calls to <code>:re.import/1</code> comes from is a better bet to fix the issue instead of a workaround no?</p>
<p>I tried to find who is calling :re.import using this code:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">defmodule Test do
  alias Core.Cnpj.Estabelecimento
  alias Core.Ash.Resource.Cast
  
  @args %{
     cnpj_basico: "11111111",
     cnpj_sufixo: "666666",
     cnpj_formatado: "22.333.333/4444-22",
     nome: "Blibs blobs",
     matriz?: false,
     situacao_cadastral: :ativa,
     inicio_da_atividade: Date.utc_today()
   }

  def run do
    tracer =
      spawn(fn -&gt;
        receive_loop = fn receive_loop -&gt;
          receive do
            {:trace_ts, pid, :call, {:re, :import, _args}, _ts} -&gt;
              stack = Process.info(pid, :current_stacktrace)
              IO.puts("\n=== re.import called by #{inspect(pid)} ===")
              IO.inspect(stack)
              receive_loop.(receive_loop)

            _ -&gt;
              receive_loop.(receive_loop)
          end
        end

        receive_loop.(receive_loop)
      end)

    :erlang.trace(:all, true, [:call, :timestamp, {:tracer, tracer}])
    :erlang.trace_pattern({:re, :import, 1}, true, [])
    @args
    |&gt; Cast.cast(:create, Estabelecimento)
  end
end
</code></pre>
<p>But the stacktrace I got is not very useful, for my changes, I got these 3 times:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">=== re.import called by #PID&lt;0.95.0&gt; ===
{:current_stacktrace,
 [
   {:code_server, :call, 1, [file: ~c"code_server.erl", line: 163]},
   {:code_server, :call, 1, [file: ~c"code_server.erl", line: 163]},
   {:code, :ensure_loaded, 1, [file: ~c"code.erl", line: 578]},
   {:error_handler, :undefined_function, 3,
    [file: ~c"error_handler.erl", line: 86]},
   {Ash.Changeset, :run_change_or_validation, 6,
    [file: ~c"lib/ash/changeset/changeset.ex", line: 3245]},
   {Ash.Changeset, :"-run_action_changes/6-fun-2-", 6,
    [file: ~c"lib/ash/changeset/changeset.ex", line: 3150]},
   {Enum, :"-reduce/3-lists^foldl/2-0-", 3, [file: ~c"lib/enum.ex", line: 2520]},
   {Ash.Changeset, :run_action_changes, 6,
    [file: ~c"lib/ash/changeset/changeset.ex", line: 3146]},
   {Ash.Changeset, :do_for_action, 4,
    [file: ~c"lib/ash/changeset/changeset.ex", line: 2577]},
   {Core.Ash.Resource.Cast, :cast, 3,
    [file: ~c"lib/core/ash/resource/cast.ex", line: 14]},
   {:elixir, :eval_external_handler, 3, [file: ~c"elixir.erl", line: 365]},
   {:erl_eval, :do_apply, 7, [file: ~c"erl_eval.erl", line: 924]},
   {:elixir, :eval_forms, 4, [file: ~c"elixir.erl", line: 343]},
   {Module.ParallelChecker, :verify, 1,
    [file: ~c"lib/module/parallel_checker.ex", line: 155]},
   ...
 ]}
</code></pre>
<p>And for the match constraint, I get this trace repeated 495 times:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">=== re.import called by #PID&lt;0.95.0&gt; ===
{:current_stacktrace,
 [
   {:code_server, :call, 1, [file: ~c"code_server.erl", line: 163]},
   {:elixir_compiler, :dispatch, 4, [file: ~c"elixir_compiler.erl", line: 82]},
   {:elixir_compiler, :compile, 4, [file: ~c"elixir_compiler.erl", line: 56]},
   {:elixir_compiler, :maybe_fast_compile, 2,
    [file: ~c"elixir_compiler.erl", line: 43]},
   {:elixir_lexical, :run, 3, [file: ~c"elixir_lexical.erl", line: 17]},
   {:elixir_compiler, :quoted, 3, [file: ~c"elixir_compiler.erl", line: 21]},
   {Module.ParallelChecker, :verify, 1,
    [file: ~c"lib/module/parallel_checker.ex", line: 155]},
   {Code, :require_file, 2, [file: ~c"lib/code.ex", line: 1613]},
   {Kernel.CLI, :wrapper, 1, [file: ~c"lib/kernel/cli.ex", line: 562]},
   {Enum, :"-map/2-lists^map/1-1-", 2, [file: ~c"lib/enum.ex", line: 1688]},
   {Kernel.CLI, :process_commands, 1, [file: ~c"lib/kernel/cli.ex", line: 93]},
   {Kernel.CLI, :"-main/1-fun-1-", 2, [file: ~c"lib/kernel/cli.ex", line: 39]},
   {Kernel.CLI, :"-exec_fun/2-fun-0-", 3,
    [file: ~c"lib/kernel/cli.ex", line: 141]}
 ]}
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381671" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/14">Post #13</a>
	                </div>
	            </div>
              <div id="likers-container-381671" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381671"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #13"></div>
  </section>
</div>
    <div class="postbit" id="381672" data-post-id="381672">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sabiwara" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sabiwara/120/18612_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sabiwara
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>Elixir Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><code>:re.import</code> is called by the code generated by expanding the <code>~r</code> sigil (which needs to re-import the exported binary pattern back to a ref).</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">~r/foo/
</code></pre>
<p>is expanded as</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">%Regex{
  re_pattern:
    :re.import(
      {:re_exported_pattern, "re-PCRE2¤þ¿", "foo", [:export],
       "&lt;&lt;long-binary&gt;&gt;"}
    ),
  source: "foo",
  opts: []
}
</code></pre>
<p>Importing the exported pattern is faster than re-compiling from scratch (it is the reason it was <a href="https://github.com/erlang/otp/pull/9976" rel="noopener nofollow ugc">introduced</a>), but is still is slower than the actual matching.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381672" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/15">Post #14</a>
	                </div>
	            </div>
              <div id="likers-container-381672" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381672"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #14"></div>
  </section>
</div>
    <div class="postbit" id="381677" data-post-id="381677">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sezaru" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sezaru/120/36113_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sezaru
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>But that should only happen 3 times in my resource since I have only used the sigil 3 times in the resource no?</p>
<p>Here is a one file code that reproduces the issue:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">Application.put_env(:ash, :validate_domain_resource_inclusion?, false)
Application.put_env(:ash, :validate_domain_config_inclusion?, false)

Mix.install([{:ash, "~&gt; 3.0"}], consolidate_protocols: false)

defmodule Cast do
  def cast(arguments, action, resource) do
    %{accept: accept} = Ash.Resource.Info.action(resource, action)

    with {:ok, resource} &lt;-
           resource
           |&gt; Ash.Changeset.for_create(action, arguments)
           |&gt; Ash.Changeset.apply_attributes() do
      {:ok, Map.take(resource, accept)}
    end
  end

  def cast!(arguments, action, resource),
    do: arguments |&gt; cast(action, resource) |&gt; Ash.Helpers.unwrap_or_raise!()
end

defmodule Tutorial.Profile do
  use Ash.Resource,
    domain: Tutorial

  actions do
    defaults [create: :*]
  end

  attributes do
    uuid_primary_key :id

    attribute :attr_1, :string do
      public? true
      allow_nil? false

      constraints min_length: 8, max_length: 8, match: ~r/^[A-Za-z0-9]{8}$/
    end
  end
end

defmodule Tutorial do
  use Ash.Domain

  resources do
    resource Tutorial.Profile
  end
end
defmodule Test do
  @args %{attr_1: "11111111"}

  def run do
    tracer =
      spawn(fn -&gt;
        receive_loop = fn receive_loop -&gt;
          receive do
            {:trace_ts, pid, :call, {:re, :import, _args}, _ts} -&gt;
              stack = Process.info(pid, :current_stacktrace)
              IO.puts("\n=== re.import called by #{inspect(pid)} ===")
              IO.inspect(stack)
              receive_loop.(receive_loop)

            _ -&gt;
              receive_loop.(receive_loop)
          end
        end

        receive_loop.(receive_loop)
      end)

    :erlang.trace(:all, true, [:call, :timestamp, {:tracer, tracer}])
    :erlang.trace_pattern({:re, :import, 1}, true, [])

    @args |&gt; Cast.cast(:create, Tutorial.Profile)
  end
end

Test.run()
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381677" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/16">Post #15</a>
	                </div>
	            </div>
              <div id="likers-container-381677" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381677"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #15"></div>
  </section>
</div>
    <div class="postbit" id="381725" data-post-id="381725">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sabiwara" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sabiwara/120/18612_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sabiwara
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>Elixir Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="sezaru" data-post="16" data-topic="73890">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sezaru/48/36113_2.png" class="avatar"> sezaru:</div>
<blockquote>
<p>But that should only happen 3 times in my resource since I have only used the sigil 3 times in the resource no?</p>
</blockquote>
</aside>
<p>This is more a question for Ash maintainers, since I don’t know what the macros get expanded to.<br>
But to give a pure elixir example:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir"># import is called in the lambda, so n times
Enum.map(strings, fn string -&gt; string =~ ~r/foo/ end)

# import is called once
regex = ~r/foo/
Enum.map(strings, fn string -&gt; string =~ regex end)
</code></pre>
<p>This is a bit of an unfortunate state of things, but given the way it works in OTP, I don’t think there is an easy way around this. Maybe the compiler could try to be smart and translate the first into the second, but it might break if the lambda invocation is done across nodes.</p>
<p>The ideal fix would be to have actual constants in OTP as <a class="mention" href="/u/michalmuskala" rel="nofollow">@michalmuskala</a> suggested in the past, but I don’t think there’s any active plan for it at the moment.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381725" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/17">Post #16</a>
	                </div>
	            </div>
              <div id="likers-container-381725" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381725"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #16"></div>
  </section>
</div>
    <div class="postbit" id="381730" data-post-id="381730">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sezaru" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sezaru/120/36113_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sezaru
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Ok, I tested your suggestion and it indeed fixed the issue, I didn’t even needed to change my constraint, I just leave it as a regex since spark will convert it into a cache regardless:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">  defp validate_type(:regex_as_mfa, _key, %Regex{} = regex) do
    source = Regex.source(regex)
    opts = Regex.opts(regex)
    {:ok, {Spark.Regex, :cache, [source, opts]}}
  end
</code></pre>
<p>So, the only change I did was change the match type in lib/ash/type/string.ex from <code>:regex</code> to <code>:regex_as_mfa</code>.</p>
<p>With this, now the code is at least twice as fast. Here is a comparison with my code above but looped 10k times with eprof:</p>
<p>with :regex:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">#                                                                 CALLS     %   TIME µS/CALL
Total                                                            966500 100.0 146590    0.15
</code></pre>
<p>with :regex_as_mfa</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">#                                                                 CALLS    %  TIME µS/CALL
Total                                                            912500 100. 59629    0.07
</code></pre>
<p>It is almost 3x faster.</p>
<p><a class="mention" href="/u/zachdaniel" rel="nofollow">@zachdaniel</a> would you consider reverting the types for string.ex, ci_string.ex, type.ex and match.ex from that commit from :regex to :regex_as_mfa?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381730" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/18">Post #17</a>
	                </div>
	            </div>
              <div id="likers-container-381730" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381730"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #17"></div>
  </section>
</div>
    <div class="postbit" id="381776" data-post-id="381776">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="zachdaniel" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/zachdaniel/120/31980_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  zachdaniel
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>Creator of Ash</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Hmm… yes. I would accept a PR that does that <img src="https://forum.elixirforum.com/images/emoji/apple/person_bowing.png?v=15" title=":person_bowing:" class="emoji" alt=":person_bowing:" loading="lazy" width="20" height="20">.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381776" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/19">Post #18</a>
	                </div>
	            </div>
              <div id="likers-container-381776" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381776"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #18"></div>
  </section>
</div>
    <div class="postbit" id="381798" data-post-id="381798">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sezaru" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sezaru/120/36113_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sezaru
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>There you go <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"><br>
<a href="https://github.com/ash-project/ash/pull/2516" class="onebox" target="_blank" rel="noopener nofollow ugc">https://github.com/ash-project/ash/pull/2516</a></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381798" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/20">Post #19</a>
	                </div>
	            </div>
              <div id="likers-container-381798" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381798"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #19"></div>
  </section>
</div>
    <div class="postbit" id="381839" data-post-id="381839">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sezaru" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sezaru/120/36113_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sezaru
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>The PR was merged, so I’m closing this <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="381839" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/improve-regex-performance-or-temporarely-disable-during-bulk-insertion/73890/21">Post #20</a>
	                </div>
	            </div>
              <div id="likers-container-381839" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="381839"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-solved cat-solved" title="Marked as solution"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <span class="all-loaded">— All posts loaded —</span>
</div></template></turbo-stream>