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


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="dimitarvp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/120/38664_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  dimitarvp
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Fully agreed with <a class="mention" href="/u/leifericf" rel="nofollow">@leifericf</a>!</p>
<p>Dan has been privately providing me support without ever having to – and I’m very grateful. <img src="https://forum.elixirforum.com/images/emoji/apple/sparkling_heart.png?v=15" title=":sparkling_heart:" class="emoji" alt=":sparkling_heart:" loading="lazy" width="20" height="20"> <img src="https://forum.elixirforum.com/uploads/default/original/2X/3/3a30b8d856b321b56a083b43a1d89624be195466.gif?v=15" title=":024:" class="emoji emoji-custom" alt=":024:" loading="lazy" width="20" height="20"></p>
<p>I’m pondering compiling some short Pow how-to-guides and propose them as PRs. When I get the time I’ll do it.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="125327" data-batch-url="/posts/batch_likers">
                        4
                      </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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/113">Post #112</a>
	                </div>
	            </div>
              <div id="likers-container-125327" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="125327"
                     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 #112"></div>
  </section>
</div>
    <div class="postbit" id="125562" data-post-id="125562">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="danschultzer" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/danschultzer/120/4942_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  danschultzer
                    <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 class="user-title">
									<span>Pow Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Thanks for the kind words both of you!</p>
<p>In my last startup I needed a good user auth library, so I began working on Pow. The business didn’t work out, but I have been able to work full time on Pow since. I’ve been fortunate to be able to build several businesses on top of the open source work from thousands of developers, so I only feel it’s right that I contribute back.</p>
<p>I’ve yet to feel burned out, and I do enjoy helping out everyone. It also helps me identify issues and make Pow more ergonomic to work with (I feel too many libraries are missing this). All this work doesn’t pay the bills though so my time is getting more limited as I’m heading back into building new businesses <img src="https://forum.elixirforum.com/images/emoji/apple/smile.png?v=15" title=":smile:" class="emoji" alt=":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="125562" data-batch-url="/posts/batch_likers">
                        14
                      </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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/114">Post #113</a>
	                </div>
	            </div>
              <div id="likers-container-125562" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="125562"
                     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 #113"></div>
  </section>
</div>
    <div class="postbit" id="126837" data-post-id="126837">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I’ve started using Pow and PowAssent. Works pretty well so far. I also tend to dive into the source of the packages I use to understand them better.</p>
<p>I’ve got two pieces of constructive criticism. First, I notice that you tend to use pipelines a lot, which is fine. However, there are many cases where things can fail in your pipeline and you end up handling it by making the next command in the pipeline aware of the possibility of that failure. A better mechanism for this in my opinion is <a href="https://elixirschool.com/en/lessons/basics/control-structures/#with" rel="noopener nofollow ugc"><code>with</code></a>, which I don’t see you using anywhere (though I may have missed some place). <code>with</code> allows you to short circuit a sequence of steps when there is a failure. Meaning subsequent steps don’t need to consider that failure.</p>
<p>The second, is that to customize a something like a changeset, you have the code define <code>changeset/2</code> and <code>pow_changeset/2</code> for example. Instead of defining <code>pow_changeset/2</code>, you can just do <code>defoverridable changeset: 2</code>. That allows the user of your library to define their own <code>changeset/2</code> and call <code>super</code> to call the one your library defined.</p>
<aside class="onebox allowlistedgeneric" data-onebox-src="https://elixir.hexdocs.pm/Kernel.html">
  <header class="source">

      <a href="https://elixir.hexdocs.pm/Kernel.html" target="_blank" rel="noopener nofollow ugc">elixir.hexdocs.pm</a>
  </header>

  <article class="onebox-body">
    

<h3><a href="https://elixir.hexdocs.pm/Kernel.html" target="_blank" rel="noopener nofollow ugc">Kernel — Elixir v1.20.2</a></h3>



  </article>

  <div class="onebox-metadata">
    
    
  </div>

  <div style="clear: both"></div>
</aside>
 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="126837" data-batch-url="/posts/batch_likers">
                        2
                      </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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/115">Post #114</a>
	                </div>
	            </div>
              <div id="likers-container-126837" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="126837"
                     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 #114"></div>
  </section>
</div>
    <div class="postbit" id="126863" data-post-id="126863">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="danschultzer" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/danschultzer/120/4942_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  danschultzer
                    <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 class="user-title">
									<span>Pow Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Thank <a class="mention" href="/u/blatyo" rel="nofollow">@blatyo</a>!</p>
<p>I’m really happy to get some feedback for the code. That’s the only way to improve it <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>
<aside class="quote no-group" data-username="blatyo" data-post="115" data-topic="15807">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/blatyo/48/4554_2.png" class="avatar"> blatyo:</div>
<blockquote>
<p>However, there are many cases where things can fail in your pipeline and you end up handling it by making the next command in the pipeline aware of the possibility of that failure.</p>
</blockquote>
</aside>
<p>Yeah, I can see <code>with</code> makes sense in some of the ecto changeset methods. I’ve never done anything with <code>with</code>, and have always preferred just using pipe operators because it’s easy for me to understand what happens step by step.</p>
<p>I would love to see some examples of code in Pow that can be made more concise using <code>with</code>!</p>
<aside class="quote no-group" data-username="blatyo" data-post="115" data-topic="15807">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/blatyo/48/4554_2.png" class="avatar"> blatyo:</div>
<blockquote>
<p>Instead of defining <code>pow_changeset/2</code> , you can just do <code>defoverridable changeset: 2</code> .</p>
</blockquote>
</aside>
<p>That actually already happens. <code>changeset/2</code> is defined, and can be overridden.  You can take a look at the use macro here:</p>
<p><a href="https://github.com/danschultzer/pow/blob/b9885d0ab9d99e5e244a7ccc30fabdd5f55db109/lib/pow/ecto/schema.ex#L88-L110" class="onebox" target="_blank" rel="noopener nofollow ugc">https://github.com/danschultzer/pow/blob/b9885d0ab9d99e5e244a7ccc30fabdd5f55db109/lib/pow/ecto/schema.ex#L88-L110</a></p>
<p>You can use <code>super</code>, but calling <code>pow_changeset/2</code> method makes it more explicit. As you can read in the docs, there’s also a <code>pow_extension_changeset/2</code> method since the extension modules are separated from the Pow core module.</p>
<p>I often try to think of how someone new to my codebase would understand it, and how to make the code as explicit as possible.</p>
<p>Best case would be to call something like <code>Pow.Ecto.Schema.changeset/2</code> rather than using a method defined in the use macro, but if you look at the <a href="https://github.com/danschultzer/pow/blob/master/lib/pow/ecto/schema.ex" rel="noopener nofollow ugc"><code>Pow.Ecto.Schema</code> module</a> you can see that due to compile time config it’s necessary to define these methods in the macro so Pow is ergonomic to work with.</p>
<p>Feel free to open any PR/issues on GitHub too <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="126863" 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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/116">Post #115</a>
	                </div>
	            </div>
              <div id="likers-container-126863" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="126863"
                     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 #115"></div>
  </section>
</div>
    <div class="postbit" id="126923" data-post-id="126923">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="danschultzer" data-post="116" data-topic="15807">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/danschultzer/48/4942_2.png" class="avatar"> danschultzer:</div>
<blockquote>
<p>That actually already happens. <code>changeset/2</code> is defined, and can be overridden. You can take a look at the use macro here:</p>
</blockquote>
</aside>
<p>I guess I should have realized that since you can obviously override the changeset functions. It was just the fact that there were the <code>pow_*</code> functions that threw me off.</p>
<p>I did see yesterday when customizing routes, that you had used <code>defoverride</code> there as well. However, you chose not to create <code>pow_*</code> functions there. Perhaps the changeset situation would be more obvious if you suggest people write <code>@impl true</code> before their changeset:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">@impl true
def changeset(...) do
</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="126923" 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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/117">Post #116</a>
	                </div>
	            </div>
              <div id="likers-container-126923" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="126923"
                     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 #116"></div>
  </section>
</div>
    <div class="postbit" id="126925" data-post-id="126925">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="danschultzer" data-post="116" data-topic="15807">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/danschultzer/48/4942_2.png" class="avatar"> danschultzer:</div>
<blockquote>
<p>have always preferred just using pipe operators because it’s easy for me to understand what happens step by step.</p>
</blockquote>
</aside>
<p><code>with</code> is still step by step. The difference is that you don’t need every subsequent step to be aware of the errors of the steps before them. I sometimes call it the happy case operator. Because it allows you to describe what should happen if nothing failed and then address the situation where things did fail later or pass off the error for something else to handle.</p>
<aside class="quote no-group" data-username="danschultzer" data-post="116" data-topic="15807">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/danschultzer/48/4942_2.png" class="avatar"> danschultzer:</div>
<blockquote>
<p>I would love to see some examples of code in Pow that can be made more concise using <code>with</code> !</p>
</blockquote>
</aside>
<p>I’ll throw up a PR sometime this weekend.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="126925" data-batch-url="/posts/batch_likers">
                        6
                      </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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/118">Post #117</a>
	                </div>
	            </div>
              <div id="likers-container-126925" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="126925"
                     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 #117"></div>
  </section>
</div>
    <div class="postbit" id="129282" data-post-id="129282">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="Naumoski" src="/assets/icons/user-9f439610.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  Naumoski
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Hello Dan,</p>
<p>I’ve followed your guide for implementing <a rel="nofollow">custom controllers</a> but the confirmation email is not sent. When submitting registration on the default pow routes (/registraton), the confirmation email is sent successfully. Also when submitting to the custom registration controller the user is signed in without confirmation but works properly on the default pow controllers. I used exactly the same code you used in the referenced link above, is there something that needs to be added to the code so the mail can be sent or am I making other mistakes.</p>
<p>Thanks</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="129282" 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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/119">Post #118</a>
	                </div>
	            </div>
              <div id="likers-container-129282" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="129282"
                     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 #118"></div>
  </section>
</div>
    <div class="postbit" id="129287" data-post-id="129287">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="danschultzer" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/danschultzer/120/4942_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  danschultzer
                    <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 class="user-title">
									<span>Pow Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>When you use custom controllers you’ll have to implement any extension logic yourself (the example only shows how to do it for the create action on the session controller, but it needs to be implemented on any controller actions that signs in users): <a href="https://github.com/danschultzer/pow/blob/master/guides/CUSTOM_CONTROLLERS.md#further-customization" rel="noopener nofollow ugc">https://github.com/danschultzer/pow/blob/master/guides/CUSTOM_CONTROLLERS.md#further-customization</a></p>
<p>Unless you got a good reason for not using the default Pow controllers, I would recommend that you just use them instead of custom controllers.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="129287" 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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/120">Post #119</a>
	                </div>
	            </div>
              <div id="likers-container-129287" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="129287"
                     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 #119"></div>
  </section>
</div>
    <div class="postbit" id="129550" data-post-id="129550">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="danschultzer" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/danschultzer/120/4942_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  danschultzer
                    <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 class="user-title">
									<span>Pow Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<h3><a name="p-129550-pow-108-released-1" class="anchor" href="#p-129550-pow-108-released-1" aria-label="Heading link" rel="nofollow"></a>Pow 1.0.8 released</h3>
<p>Changelog: <a href="https://github.com/danschultzer/pow/blob/v1.0.8/CHANGELOG.md#v108-2019-05-24" rel="noopener nofollow ugc">Github </a><br>
Hex: <a href="https://hex.pm/packages/pow/1.0.8" rel="nofollow">https://hex.pm/packages/pow/1.0.8 </a></p>
<h4><a name="p-129550-multitenancy-2" class="anchor" href="#p-129550-multitenancy-2" aria-label="Heading link" rel="nofollow"></a>Multitenancy</h4>
<p>You can now easily pass repo opts for your multitenant app: <a href="https://github.com/danschultzer/pow/blob/v1.0.8/guides/MULTITENANCY.md" class="inline-onebox" rel="noopener nofollow ugc">pow/guides/MULTITENANCY.md at v1.0.8 · pow-auth/pow · GitHub</a></p>
<h4><a name="p-129550-custom-mailer-layout-3" class="anchor" href="#p-129550-custom-mailer-layout-3" aria-label="Heading link" rel="nofollow"></a>Custom mailer layout</h4>
<p>It’s now possible to set a mailer layout similar to Phoenix controller layout: <a href="https://hexdocs.pm/pow/1.0.8/Pow.Phoenix.Mailer.Mail.html#module-custom-layout" class="inline-onebox" rel="noopener nofollow ugc">Pow.Phoenix.Mailer.Mail — Pow v1.0.8</a></p>
<h4><a name="p-129550-decoupling-4" class="anchor" href="#p-129550-decoupling-4" aria-label="Heading link" rel="nofollow"></a>Decoupling</h4>
<p>Ecto/Plug/Phoenix modules already was very decoupled, but there was some specs that didn’t reflect that, as well as expectation for the changeset being an <code>Ecto.Changeset</code> struct. Now there’s a clearer separation.</p>
<p>Happy coding <img src="https://forum.elixirforum.com/images/emoji/apple/rocket.png?v=15" title=":rocket:" class="emoji" alt=":rocket:" 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="129550" data-batch-url="/posts/batch_likers">
                        7
                      </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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/121">Post #120</a>
	                </div>
	            </div>
              <div id="likers-container-129550" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="129550"
                     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 #120"></div>
  </section>
</div>
    <div class="postbit" id="130014" data-post-id="130014">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Is it possible to only use a session cookie for a session, without the need of a backend store?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="130014" 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/pow-robust-modular-extendable-user-authentication-and-management-system/15807/122">Post #121</a>
	                </div>
	            </div>
              <div id="likers-container-130014" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="130014"
                     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 #121"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <a class="load-more-button" data-turbo-stream="true" href="/topics/15807/load_more?page=13">Load more posts (121 remaining)</a>
</div></template></turbo-stream>