[jira] [Commented] (NPANDAY-322) Resync Reference doesn't update SNAPSHOT artifact from local repository that already exist in .references folder
[ https://issues.apache.org/jira/browse/NPANDAY-322?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13143066#comment-13143066 ] Stoyan Damov commented on NPANDAY-322: -- The fix which I'm about to attach to this ticket (btw what should be it? a .patch or a .diff file?) reverts to File.Copy. Resync Reference doesn't update SNAPSHOT artifact from local repository that already exist in .references folder Key: NPANDAY-322 URL: https://issues.apache.org/jira/browse/NPANDAY-322 Project: NPanday Issue Type: Bug Components: Visual Studio Add-in Affects Versions: 1.4-incubating Reporter: Dmitry L Priority: Minor Fix For: 1.2.1 Steps: 1. Install Library1 into local maven repo 2. Add Library1 as dependency using Resync Reference to ProjectA (it will be copied into .references folder) 3. Update and reinstall Library1 into local maven repo 4. Invoke Resync Reference for ProjectA 5. Error: Library1 won't be updated in .references folder Expected: newer version (in terms of file timestamp) of Library1 (if any) should be copied into .references folder from local maven repo during Resync Reference Issue exist in trunk r59731 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (NPANDAY-322) Resync Reference doesn't update SNAPSHOT artifact from local repository that already exist in .references folder
[ https://issues.apache.org/jira/browse/NPANDAY-322?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13143094#comment-13143094 ] Stoyan Damov commented on NPANDAY-322: -- h3. Added {{ArtifactUtils}} helper class with the following methods: {code} bool IsSnapshot(Artifact.Artifact artifact) {code} Checks whether the artifact is a snapshot one, implementation checks whether artifact's version ends on {{-SNAPSHOT}}. {code} bool Exists(Artifact.Artifact artifact) {code} Checks whether the artifact exists in the local repository (impl. in terms of {{artifact.FileInfo.Exists}}) {code} bool DownloadFromRemoteRepository(Artifact.Artifact artifact, NPanday.Logging.Logger logger) {code} Downloads the artifact from the remote repository. Same as {{NPanday.ProjectImporter.Digest.Model.Reference.DownloadArtifact(artifact, logger)}}. {code} string GetArtifactReferenceFolder(Artifact.Artifact artifact, string referenceFolder) {code} Returns the reference folder for the artifact, modified to match the .dll searched in {{NPanday.ProjectImporter.Digest.Model.Reference.cs}}. The format is {{referenceFolder\groupId\artifactId-version}}, e.g. {{SomeFolder\.references\com.company.something\artifact-1.0-SNAPSHOT}} {code} string GetArtifactReferenceFilePath(Artifact.Artifact artifact, string referenceFolder) {code} Returns path to the artifact's file in the local reference folder in the format {{GetArtifactReferenceFolder()\artifactId.extension}}, e.g. {{SomeFolder\.references\com.company.something\artifact-1.0-SNAPSHOT\artifact.dll}}. {code} DateTime GetArtifactTimestamp(Artifact.Artifact artifact) {code} Returs the artifact's timestamp in the local repository. Attempts to get the timestamp off {{maven-metadata-repoId.xml}} or {{maven-metadata-local.xml}}, falls back to file's {{LastWriteStampUtc}}. {code} bool IsEarlierArtifactTimestamp(DateTime value, DateTime comparand) {code} Compares two timestamps disregarding the milliseconds (timestamps in {{maven-metadata-*.xml}} do not have milliseconds). Resync Reference doesn't update SNAPSHOT artifact from local repository that already exist in .references folder Key: NPANDAY-322 URL: https://issues.apache.org/jira/browse/NPANDAY-322 Project: NPanday Issue Type: Bug Components: Visual Studio Add-in Affects Versions: 1.4-incubating Reporter: Dmitry L Priority: Minor Fix For: 1.2.1 Attachments: ArtifactUtils.cs, Connect.cs, NPANDAY-322_and_NPANDAY-476.diff, ReferenceManager.cs Steps: 1. Install Library1 into local maven repo 2. Add Library1 as dependency using Resync Reference to ProjectA (it will be copied into .references folder) 3. Update and reinstall Library1 into local maven repo 4. Invoke Resync Reference for ProjectA 5. Error: Library1 won't be updated in .references folder Expected: newer version (in terms of file timestamp) of Library1 (if any) should be copied into .references folder from local maven repo during Resync Reference Issue exist in trunk r59731 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (NPANDAY-476) Add Resync references from local repository in VS addin
[ https://issues.apache.org/jira/browse/NPANDAY-476?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13143128#comment-13143128 ] Stoyan Damov commented on NPANDAY-476: -- The fix explained (as commented by Lars, patch is attached to NPANDAY-322): In {{Connect.cs}} refactored a bit so that methods dealing with resync solution/project references have appropriate names. Extracted the resync logic into implementation methods and refactored button click event handlers to call these. In the implementation methods added a boolean flag whether to resync from the remote or local repositories and then just delegated to the appropriate {{ReferenceManager.ResyncXxx}} call. In {{ReferenceManager.cs}}'s {{IReferenceManager}} added {{ResyncArtifactsFromLocalRepository}} method. Refactored {{ResyncArtifacts}} and {{ResyncArtifactsFromLocalRepository}} to call an implementation method, passing whether the resync should be done from the remote or local repository. Add Resync references from local repository in VS addin - Key: NPANDAY-476 URL: https://issues.apache.org/jira/browse/NPANDAY-476 Project: NPanday Issue Type: New Feature Components: Visual Studio Add-in Affects Versions: 1.4-incubating Reporter: Stoyan Damov Assignee: Lars Corneliussen Priority: Minor Labels: addin, feature, local, references, repository, resync, vs2010 Fix For: 1.4.1-incubating *Patch is attached to NPANDAY-322* As a developer of new modules, I'd like to be able to test debug refactor away the modules before I commit/push them to VCS and get these deployed into the remote repository by the build server. This is currently not possible. I'm working on X and Y (Y depends on X). I think I'm done on X and install X-1.0-SNAPSHOT in my local repo. I then add a dependency on X-1.0-SNAPSHOT in Y. Now, if I make a change in X, I'd like to re-install it in the local repo and use the updated X-1.0-SNAPSHOT in Y but I don't want to deploy X-1.0-SNAPSHOT in the remote repo. However, if I resync the references I'd currently hit NPANDAY-322, or in the best case I could get someone else's X-1.0-SNAPSHOT (which could have been updated in the remote repo while I'm working on X as well). However, I want to get the local repo's X, not the remote one's. I don't want to push X's changes and wait on the build server to deploy the new snapshot because I don't want to hurt the rest of the developers with something which might still have bugs in it, and I also don't want to get other devs's X-1.0-SNAPSHOT. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (NPANDAY-460) hook for the dependency:purge-local-repository plugin
[ https://issues.apache.org/jira/browse/NPANDAY-460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13143490#comment-13143490 ] Stoyan Damov commented on NPANDAY-460: -- Would NPANDAY-476 do what you're asking for? If yes, let's hope the patch will be approved soon. hook for the dependency:purge-local-repository plugin - Key: NPANDAY-460 URL: https://issues.apache.org/jira/browse/NPANDAY-460 Project: NPanday Issue Type: New Feature Components: Visual Studio Add-in Reporter: Daniel Williams I've begun using NPanday plugin and have noticed that there is no command/plugin to synch the .m2/repository and the .references libs created when adding a maven artifact. In the java usage of maven this can be done by executing mvn dependency:purge-local-repository. It would be nice if there was a VS command that could handle this. This would allow developers to iterate with sharing of libraries in a development phase across many development branches and be sure that they are all working against the most recent version of snapshots. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (NPANDAY-372) Integrate with NuGet and NuGet Gallery (nuget.org)
[ https://issues.apache.org/jira/browse/NPANDAY-372?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13143522#comment-13143522 ] Stoyan Damov commented on NPANDAY-372: -- Wish these were couple of hundred... I'm using [NuGet.WebDownloader|http://weblogs.asp.net/jgalloway/archive/2011/03/10/nuget-downloader-package-download-a-local-nuget-repository-using-nuget.aspx] to download the entire repo and on letter D I have 770 packages... The biggest challenge IMO would be the PowerShell installation scripts. The post-install transformations look easier. Integrate with NuGet and NuGet Gallery (nuget.org) -- Key: NPANDAY-372 URL: https://issues.apache.org/jira/browse/NPANDAY-372 Project: NPanday Issue Type: New Feature Components: Maven Plugins Reporter: Lars Corneliussen Assignee: Lars Corneliussen Fix For: 2.0 Dependency Management has come to .NET - and Microsoft has taken care of it. That means, to be successful we have to integrate. NuGet is for dependency management, and the nuget gallery has a couple of hundred OS packages online already. -I think it should be fairly easy to create a repository layout for those and integrated it with maven.- *Nothing is easy. :-)* h4. Prioritized Requirements For a first release, we should at least support following scenarios: # *Resolve library dependencies from nuget repositories / nuget.org* (this will be a huge benefit!, right away.) (!) How should we do this? Wagon, repository layout? I do not know enough about maven yet. (!) Also, which portions of a *.npkg should we support? It has some conventions, but supports very much any content you can put in a zip. It also has visual-studio-specific things in it. Have to investigate more here. (!) How do we talk to nuget.org? Via Nuget.Core? # *Generate nuspec-file from pom, or if it exsits, patch it* This will make it easier to pack and push nuget packages, even if this is not automated yet. # *Create a '\*.npkg' on 'package' and attach as 'nuget-package'* We need to add a new type != dotnet-*. Should this be part of npanday? # *Install \*.npgkg to local nuget repository on 'install'* (?) Is there any standard for this? (!) If not, will we invent one? # *Push \*.npkg to nuget.org on 'deploy'* That shouldn't be to hard. h4. Unique Selling Proposition * Nuget-Packages for VS 2005 and 2008 * Nuget outside of Visual Studio (currently the cmd-line tool does not do more than download and unzip) h4. Nice to have * Minimod support * further ideas? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira