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


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="shahryarjb" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/shahryarjb/120/39485_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  shahryarjb
                      <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">
								<aside class="quote no-group" data-username="kokolegorille" data-post="21" data-topic="44888">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kokolegorille/48/4784_2.png" class="avatar"> kokolegorille:</div>
<blockquote>
<p>It is not the tool that is insecure, it is how You use it. And the way You want to use it is insecure.</p>
</blockquote>
</aside>
<p>Sorry, I can not understand the security part, for example you have a project and add some mix after compile you start it again!! Now we create another node, before this we add mix and compile and start it again.</p>
<p>What is the difference between them?</p>
<p>I will try <code>Luerl</code> but it is Erlang, and I am not familiar Enough</p>
<p>If it is possible, please explain this<br>
Thank you</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="248125" 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/how-to-add-and-install-deps-without-stopping-phoenix-server-hex-package/44888/22">Post #21</a>
	                </div>
	            </div>
              <div id="likers-container-248125" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="248125"
                     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 #21"></div>
  </section>
</div>
    <div class="postbit" id="248126" data-post-id="248126">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I did not say adding dependencies was a security issue.</p>
<p>I wanted to highlight loading module dynamically, as You intended to do at first, is not secure.</p>
<p>Luerl is not Erlang, it’s Lua on the Beam.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="248126" 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/how-to-add-and-install-deps-without-stopping-phoenix-server-hex-package/44888/23">Post #22</a>
	                </div>
	            </div>
              <div id="likers-container-248126" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="248126"
                     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 #22"></div>
  </section>
</div>
    <div class="postbit" id="248127" data-post-id="248127">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="shahryarjb" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/shahryarjb/120/39485_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  shahryarjb
                      <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">
								<aside class="quote no-group" data-username="kokolegorille" data-post="23" data-topic="44888">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kokolegorille/48/4784_2.png" class="avatar"> kokolegorille:</div>
<blockquote>
<p>I wanted to highlight loading module dynamically, as You intended to do at first, is not secure.</p>
</blockquote>
</aside>
<p>Oh, thank you, yes after your suggestion and the other dear friends I left that idea.<br>
At first, I want to try to create different node and compile all new dependencies in new node of source.<br>
But some gap I have in my mind like how to create some hook to migrate developer’s state and even how to create another node and test it is loaded or not completely automatic.</p>
<p>I will try it and create a new post for this idea.</p>
<p>I appreciate you in advance, this post has prepared many things Informative for me.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="248127" 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/how-to-add-and-install-deps-without-stopping-phoenix-server-hex-package/44888/24">Post #23</a>
	                </div>
	            </div>
              <div id="likers-container-248127" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="248127"
                     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 #23"></div>
  </section>
</div>
    <div class="postbit" id="248132" data-post-id="248132">
  <section>
    <div class="post-wrap">


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>To give you some context I work as a Developer Advocate in API and Mobile Security.</p>
<aside class="quote no-group" data-username="shahryarjb" data-post="20" data-topic="44888">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/shahryarjb/48/39485_2.png" class="avatar"> shahryarjb:</div>
<blockquote>
<p>In the end, I have another question, why was Phoenix created and Phoenix LiveView either? When everybody can create a project which can be a security issue?!</p>
</blockquote>
</aside>
<p>I am without words, because to me this is pure no sense.</p>
<p>No programming language or framework will make impossible for the developer to create security issues in the application he is developing.</p>
<p>Ultimately is up to the developer to educate himself about security and think like an attacker when designing is project and coding it. The problem is that in our industry developers are not educated to do so, instead they are learn how to ship it as fast as they can, you know the sentence “it works, ship it!”, and then is what we see, data breaches daily all over the place.</p>
<p>I strongly recommend you to invest some time in educating yourself about security and how to think like an attacker.</p>
<p>The best resource I know, and that I took several years ago, is this one:</p>
<aside class="onebox allowlistedgeneric" data-onebox-src="https://www.pluralsight.com/courses/hack-yourself-first">
  <header class="source">

      <a href="https://www.pluralsight.com/courses/hack-yourself-first" target="_blank" rel="noopener nofollow ugc">pluralsight.com</a>
  </header>

  <article class="onebox-body">
    <div class="aspect-image" style="--aspect-ratio:690/388;"><img src="https://pluralsight.imgix.net/course-images/hack-yourself-first-v1.jpg" class="thumbnail" alt="" width="690" height="388"></div>

<h3><a href="https://www.pluralsight.com/courses/hack-yourself-first" target="_blank" rel="noopener nofollow ugc">Hack Yourself First: How to go on the Cyber-Offense</a></h3>

  <p>Learn to hack like an attacker—before they do. Build secure web apps by understanding common vulnerabilities and how to prevent them.</p>


  </article>

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

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

<blockquote>
<p>The prevalence of online attacks against websites has accelerated quickly in recent years and the same risks continue to be readily exploited. However, these are very often easily identified directly within the browser; it’s just a matter of understanding the vulnerable patterns to look for.</p>
<p>This course, <strong>Hack Yourself First: How to go on the Cyber-Offense</strong>, comes at security from the view of the attacker in that their entry point is typically the browser. They have a website they want to probe for security risks and this is how they go about it.</p>
<p>This approach is more reflective of the real online threat than reviewing source code is and it empowers developers to begin immediately assessing their applications even when they’re running in a live environment without access to the source. After all, that’s what online attackers are doing.</p>
</blockquote>
<p>During the course you will be playing with <a href="https://hack-yourself-first.com/" rel="noopener nofollow ugc">this very vulnerable website</a> to learn how to think like an attacker.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="248132" 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/how-to-add-and-install-deps-without-stopping-phoenix-server-hex-package/44888/25">Post #24</a>
	                </div>
	            </div>
              <div id="likers-container-248132" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="248132"
                     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 #24"></div>
  </section>
</div>
    <div class="postbit" id="249546" data-post-id="249546">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="shahryarjb" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/shahryarjb/120/39485_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  shahryarjb
                      <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>Hi friends, I have created a simple code to install deps in runtime. You can see it in this video.</p><aside class="onebox allowlistedgeneric" data-onebox-src="https://t.co/0lcg0y3vZA">
  <header class="source">
      <img src="https://www.youtube.com/s/desktop/6740ecb6/img/favicon.ico" class="site-icon" alt="" width="48" height="48">

      <a href="https://t.co/0lcg0y3vZA" target="_blank" rel="noopener nofollow ugc">t.co</a>
  </header>

  <article class="onebox-body">
    

<h3><a href="https://t.co/0lcg0y3vZA" target="_blank" rel="noopener nofollow ugc">- YouTube</a></h3>

  <p>Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.</p>


  </article>

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

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

<p>It can help my CMS to have an installer, like Joomla, WordPress! But losing the app state will be updated is my problem.<br>
The question is when admin user want to update a library which has state (it has been installed and activated before), I need to stop and unload it, hence I am going to lose the dep state, it is my responsibility to save external developer dep, or I need to create structure to send him a request and he/she saves the state.</p>
<p>I need your suggestion, thank you in advance.</p>
<h3><a name="p-249546-code-1" class="anchor" href="#p-249546-code-1" aria-label="Heading link" rel="nofollow"></a>Code:</h3>
<p><a href="https://github.com/mishka-group/mishka_installer/blob/master/lib/installer/run_time_sourcing.ex" class="onebox" target="_blank" rel="noopener nofollow ugc">https://github.com/mishka-group/mishka_installer/blob/master/lib/installer/run_time_sourcing.ex</a></p>
<hr>
<h3><a name="p-249546-update-2" class="anchor" href="#p-249546-update-2" aria-label="Heading link" rel="nofollow"></a>Update</h3>
<p>I see some Erlang source code, when they want to update a gen server, they freeze it and after update resume.</p>
<p>But how can freeze all the state which are created by a specific app I want to update and the states maybe dynamic supervisors</p>
<p>Why I do <code>stop</code>, because I can not use <code>Application.load(app)</code> when the app exists before, so I need to <code>unload</code> it, for example update <code>timex</code> to new version, it needs to be <code>stop</code> and after that it lets me to update and load again</p>
<p>This section code:<br>
<a href="https://github.com/mishka-group/mishka_installer/blob/master/lib/installer/run_time_sourcing.ex#L76-L88" class="onebox" target="_blank" rel="noopener nofollow ugc">https://github.com/mishka-group/mishka_installer/blob/master/lib/installer/run_time_sourcing.ex#L76-L88</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="249546" 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/how-to-add-and-install-deps-without-stopping-phoenix-server-hex-package/44888/26">Post #25</a>
	                </div>
	            </div>
              <div id="likers-container-249546" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="249546"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-last-post cat-last-post" title="Last post!"></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>