ccollins476ad commented on issue #157: Make it easier to pin a version to a 
specific tag
URL: https://github.com/apache/mynewt-newt/issues/157#issuecomment-381838866
 
 
   @davidzuhn - OK, I think I finally see what you mean.  That does seem like 
an important use case, and one I hadn't considered.
   
   I believe my original idea would address your need.  I was considering a 
different use case, though, so it may not be ideal.  My proposed solution would 
work as follows:
   
   * mynewt-core's `master` and your fork's `master` are identical.
   
   * Instead of pointing to a version of the official mynewt-core repo, your 
`project.yml` file points to a commit, branch, or tag on your fork:
   
   ```
   repository.apache-mynewt-core:
       type: git
       vers: myownrelease-1.2
       url: 'g...@github.com:davidsfork/mynewt-core.git'
   ```
   
   *Note:* `project.yml` is not part of `mynewt-core` or your fork; it is local 
to your Mynewt workspace.  (In a CI system, this could come from a different 
git repo.  The point is it is not necessarily part of a Mynewt repo).
   
   `myownrelease-1.2` is a branch, tag, or commit in your fork.  We would 
probably want some special notation to distinguish git commits from version 
numbers here, but let's ignore that for now.
   
   Each package in the project still depends on packages in 
`apache-mynewt-core`, but because of the customized entry in your `project.yml` 
file, newt translates the dependencies to use your special branch instead of 
the official repo.
   
   I do think that your idea--specifying a branch in the app's `pkg.yml` 
file--would work, but I think we would have difficulty fitting that behavior 
into newt.  By the time newt parses the `pkg.yml` files, it has already 
determined which branches of each repo it should be using.  As newt is 
currently implemented, it is the `project.yml` file which determines which 
branches / tags / commits of each repo are used by the project.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to