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


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Okay, a slightly more subjective one here, but:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">%Paginator{
  path: path,
  size: size,
  pagers: pagers(path, size, chunks),
  pages: []}
</code></pre>
<p>is formatted by the formatter as</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">%Paginator{path: path, size: size, pagers: pagers(path, size, chunks), pages: []}
</code></pre>
<p>The struct does fit within a single line’s character count, but while you can easily scan downward on the former and see what the fields are, you have to scan across both fields and values to see all the fields of the latter.</p>
<p>On the other hand it saves a bunch of lines, so… ???</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55550" 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/running-the-new-elixir-formatter/9344/83">Post #82</a>
	                </div>
	            </div>
              <div id="likers-container-55550" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55550"
                     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 #82"></div>
  </section>
</div>
    <div class="postbit" id="55552" data-post-id="55552">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group quote-modified" data-username="sasajuric" data-post="81" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sasajuric/48/991_2.png" class="avatar"> sasajuric:</div>
<blockquote>
<p>Fair enough. But there is an implied notion that inconsistency is per se bad, while consistency is good. You even said yourself that</p>
<p>Can you clarify what you mean by this?</p>
</blockquote>
</aside>
<p>That’s a very good question! I believe I have already made those points, and I am glad to repeat them, I just don’t want us to go on a loop. <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"> So here we go:</p>
<p>The ambiguity part was about respecting the user’s choice in the formatter. The formatter, as well as a human reader, can’t distinguish between a mistake or user’s choice in some of my examples above.</p>
<p>The inconsistency part is about folks that want to respect the style in a codebase when working on it. As well as the team receiving contributions also want those contributions to align with their source code. This can be a new person joining the company, someone contributing to OSS, etc. If you have loose rules based on our perception of readability, then the person will have difficulty in figuring out the proper rules or the project will go into a direction where each person uses their own style. But maybe those styles are actually really close to each other and then it is not a problem.</p>
<aside class="quote no-group" data-username="sasajuric" data-post="81" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sasajuric/48/991_2.png" class="avatar"> sasajuric:</div>
<blockquote>
<p>However, I’m asking you to think about how opinionated the initial version should be.</p>
</blockquote>
</aside>
<p>Point taken. It should not be a surprise that we have put a lot of thought into it already. But it definitely doesn’t hurt to put more. From my side, I just ask you to remember that there are cons with respecting the user’s choice. <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>
<p>EDIT: Just as a joke, but maybe we didn’t make it <em>strict</em> enough. Because we do respect the user’s choice in some occasions. If we had made it fully strict and then added those cases then everyone would be much happier now with the flexibility they got. <img src="https://forum.elixirforum.com/images/emoji/apple/wink.png?v=15" title=":wink:" class="emoji" alt=":wink:" 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="55552" 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/running-the-new-elixir-formatter/9344/84">Post #83</a>
	                </div>
	            </div>
              <div id="likers-container-55552" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55552"
                     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 #83"></div>
  </section>
</div>
    <div class="postbit" id="55553" data-post-id="55553">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/mischov" rel="nofollow">@mischov</a> this is covered in the formatter docs. <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"> The formatter will respect your choice if you add a new line after <code>{</code> and before <code>}</code>, like this:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">%Paginator{
  path: path,
  size: size,
  pagers: pagers(path, size, chunks),
  pages: []
}
</code></pre>
<p>In other words, we keep it multiline if you write it in the same multiline way as the formatter would.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55553" 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/running-the-new-elixir-formatter/9344/85">Post #84</a>
	                </div>
	            </div>
              <div id="likers-container-55553" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55553"
                     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 #84"></div>
  </section>
</div>
    <div class="postbit" id="55554" data-post-id="55554">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Ah, of course- it’s missing the newline before <code>}</code>! I was wondering why the formatter compressed it anyway.</p>
<p>Would it make sense to keep it multiline if you have just the newline after <code>{</code> but not before <code>}</code> (automatically adding the newline before <code>}</code>)?</p>
<p><strong>Edit</strong>: Wow, the formatter source is complicated. I haven’t yet been able figure out how the formatter decides whether to make a map multiline or not! Any good primer on understanding how the formatter works?</p>
<p><strong>Second Edit</strong>: I guess having a newline after <code>{</code> but not before <code>}</code> wouldn’t add <code>:eol</code> to the quoted map metadata, and therefore not trigger the multiline case in <code>args_to_algebra_with_comments</code>? After looking through all that I think I am happy with the current behavior, <img src="https://forum.elixirforum.com/images/emoji/apple/sweat_smile.png?v=15" title=":sweat_smile:" class="emoji" alt=":sweat_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="55554" 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/running-the-new-elixir-formatter/9344/86">Post #85</a>
	                </div>
	            </div>
              <div id="likers-container-55554" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55554"
                     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 #85"></div>
  </section>
</div>
    <div class="postbit" id="55591" data-post-id="55591">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Apologies if this is discussed above or elsewhere, couldn’t find*, I know the .formatter.exs will allow one of the VERY few customizations via <code>locals_without_parens</code>, but will mix packages be able to, perhaps, have their .formatter.exs files automatically merged in to a requiring project’s .formatter.exs?  When we ran this on our work project, all the Ecto macro’s suddenly had parentheses, and while macro’s we write ourselves and want to be parens-less clearly need adding, if the goal is consistenty, it seems it should allow consistent use of macros exported from libraries, and standard library macros, to all be on similar/equal footing.</p>
<p>(*and the site takes over browser ctrl-f so not even sure from searching page)</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55591" 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/running-the-new-elixir-formatter/9344/87">Post #86</a>
	                </div>
	            </div>
              <div id="likers-container-55591" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55591"
                     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 #86"></div>
  </section>
</div>
    <div class="postbit" id="55593" data-post-id="55593">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Oh, hmm, I had this link open <a href="https://github.com/elixir-lang/elixir/issues/6644" class="inline-onebox" rel="noopener nofollow ugc">How to make the code formatter configurable from dependencies · Issue #6644 · elixir-lang/elixir · GitHub</a> but hadn’t read yet, sounds like it’s talking about same thing, but I still think allowing a hex package to export/merge in it’s locals_without_parens, either the same one they use for developing/formatting their own code, or a secondary <code>external_without_parens</code> parameter or something…  it seems not too different from auto-starting applications from dependencies to also auto-import, or import-by-default, whatever little configurability is allowed to users via the pacakge system.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55593" 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/running-the-new-elixir-formatter/9344/88">Post #87</a>
	                </div>
	            </div>
              <div id="likers-container-55593" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55593"
                     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 #87"></div>
  </section>
</div>
    <div class="postbit" id="55617" data-post-id="55617">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group quote-modified" data-username="bglusman" data-post="88" data-topic="9344" data-full="true">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/bglusman/48/9459_2.png" class="avatar"> bglusman:</div>
<blockquote>
<p>Oh, hmm, I had this link open <a href="https://github.com/elixir-lang/elixir/issues/6644" class="inline-onebox" rel="nofollow">How to make the code formatter configurable from dependencies · Issue #6644 · elixir-lang/elixir · GitHub</a> but hadn’t read yet, sounds like it’s talking about same thing, but I still think allowing a hex package to export/merge in it’s locals_without_parens, either the same one they use for developing/formatting their own code, or a secondary external_without_parens parameter or something…</p>
</blockquote>
</aside>
<p>It is worth mentioning that Ecto’s <code>.formatter.exs</code> is for Ecto’s private usage and may contain locals that only make sense for Ecto. For example, <a href="https://github.com/elixir-lang/elixir/blob/master/.formatter.exs#L7" rel="nofollow">see Elixir’s config file</a> where all entries are relevant to Elixir tests only.</p>
<p>In any case, we may still support a similar feature to the one you are asking, although you will have to explicitly say it:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">%{
  load_locals_from: "deps/ecto/public_formatter.exs"
} 
</code></pre>
<p>or something of sorts. The formatter has to be super fast so editors can format files and provide a fast feedback cycle. Therefore any kind of “automatically figuring out of things” may add unnecessary overhead.</p>
<p>But for now the plan is that Phoenix will generate a .formatter.exs file into your application that has all of the relevant macros listed.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55617" 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/running-the-new-elixir-formatter/9344/89">Post #88</a>
	                </div>
	            </div>
              <div id="likers-container-55617" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55617"
                     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 #88"></div>
  </section>
</div>
    <div class="postbit" id="55620" data-post-id="55620">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote group-livebook_core_team" data-username="josevalim" data-post="89" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/josevalim/48/1787_2.png" class="avatar"> josevalim:</div>
<blockquote>
<p>But for now the plan is that Phoenix will generate a .formatter.exs file into your application that has all of the relevant macros listed.</p>
</blockquote>
</aside>
<p>Why phoenix only? Ecto can be used standalone very well.</p>
<p>Therefore we need something that “just” works, also it needs to feel official right from the beginning:</p>
<p>So whats about a recursive mix task that goes through dependencies and collects their formatting rules (another mix task? Add a config to mix which specifies a file to copy or a function to call?)? Then those could even derive from the project specific locals and it were a one time thing (after deps have been added), also one only needs to parse and consume a single file.</p>
<p>Eg. on <code>mix fmt.fetch_locals</code> the formatter asks each dependency for their suggestions, it will return a simple list of rules, those lists of all deps will get concatenated, and written into another file. <code>.formatter.exs</code> and <code>.external_formatters.exs</code> will then be merged on a <code>mix fmt</code> run (er even merged once into a third file which is only regenerated when one of the other 2 chages).</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55620" 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/running-the-new-elixir-formatter/9344/90">Post #89</a>
	                </div>
	            </div>
              <div id="likers-container-55620" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55620"
                     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 #89"></div>
  </section>
</div>
    <div class="postbit" id="55628" data-post-id="55628">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>That’s a good idea and we probably don’t need separate files. Phoenix “.formatter.exs” can provide an “export” field and the user “.formatter.exs” can have an “import” where each entry is a dependency and their imported configuration. It should be ok for the tool to work on the user’s .formatter.exs since we can format it before writing it to disk.</p>
<p>The only issue I see with this approach is that “.formatter.exs”, based on its name, does not sound like a file that should be part of packages and we will also need to change hex default instructions to include 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="55628" 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/running-the-new-elixir-formatter/9344/91">Post #90</a>
	                </div>
	            </div>
              <div id="likers-container-55628" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55628"
                     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 #90"></div>
  </section>
</div>
    <div class="postbit" id="55631" data-post-id="55631">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I do not talk about packaging the <code>.formatter.exs</code>, since as you said, its local to the package, I’m talking about adding a field to <code>*.MixFile.project</code> which resolves to the <strong>external</strong> formatter config of a project.</p>
<p>This way, we had a clear distinction between the configuration used for developing in a project and that configuration that is used when <strong>using</strong> the project as a dependency.</p>
<p><strong>edit</strong></p>
<p>Also, I think only config of <strong>direct</strong> dependencies should be pulled in, not transient ones. If we simply collect all <code>.formatter.exs</code> and merge them, then we can’t do anything against transient dependencies.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55631" 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/running-the-new-elixir-formatter/9344/92">Post #91</a>
	                </div>
	            </div>
              <div id="likers-container-55631" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55631"
                     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 #91"></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/9344/load_more?page=10">Load more posts (60 remaining)</a>
</div></template></turbo-stream>