Participants: Federico

Duration: 1.5 hour

Goal: -http://nupack.codeplex.com/workitem/88 (Add Package Dialog Should Allow Choosing the Current Package Source)

 

Scenario: Large name of the package source

    • There is a limit of 51 chars on the settings dialog. There is an horizontal scroll bar that appears on the dialog.

clip_image001

  • As far as I could see, there is no way to resize the regions of the dialog.
  • Question: Can I change the name somewhere else? And see how far I can stretch the dialog?
    • Looks like the settings are stored in registry, under HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\NuGet

clip_image002

  • Looking at this registry, looks like the packages are serialized:

<ArrayOfPackageSource xmlns="http://schemas.datacontract.org/2004/07/NuGet" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">

<PackageSource>

<Name>NuGet official package source</Name>

<Source>

http://go.microsoft.com/fwlink/?LinkID=204820

</Source>

</PackageSource>

<PackageSource>

<Name>Local Source 1</Name>

<Source>

C:\Users\farmas\Desktop\NuGet\Source 1

</Source>

</PackageSource>

<PackageSource>

<Name>

A very long name of a package source to check what

</Name>

<Source>

C:\Users\farmas\Desktop\NuGet\Source 1

</Source>

</PackageSource>

</ArrayOfPackageSource>

  • Using regedit, changed the name of the source to a long string: "A very long name of a package source to check what is the maximum characters that I can put in here before the dialog starts behaving badly or I can no longer see text on the screen or something else that might be worth checking out, maybe a truncation?"
    • Nothing special happened. The horizontal scroll simply enlarged to allow the whole text to be displayed.

 

Scenario: Mess up the serialized string of available package sources.

  • I understand that users should not be touching the registry, but I want to see how bad things will get if for any reason the registry is changed incorrectly.
  • I just removed the closing ">" and got the following error (only way to fix this was to go back to registry)

clip_image003

  • Question: I am not sure how strict is the contract of the serialized string between versions. Are we garanteed that future versions of NuGet and .Net will be able to reconstruct it?

 

Scenario: Empty name for package source

  • I was unable to enter a package source with emtpy name in the dialog. I could do it through the registry, but I feel this is too low priority for my mission.

 

Scenario: Duplicate names for package sources

  • Settings dialog does not allow me to enter duplicate key names

 

Scenario: Many package sources

  • Issue: Dialog does not correctly resize vertically when there are many package sources

clip_image004

 

Scenario: No package sources

  • If user removes all package sources from settings, there is nothing that shows under the Online tab

clip_image005

  • Assumption: We could include some text that says "No Package sources", but I find this not worth it since by default there is a source always.

 

Scenario: Creating a package source that has no packages

  • The package source appears in the dialog list, and the right pane just shows "No items found". I think this is acceptable.

 

Scenario: Package source that points to a non existant location

  • The package source appears in the dialog list, and the right pane just shows "No items found". I think this is acceptable.

 

Scenario: Package source that contains non alpha numberic chars

  • Set to "<b>hello</b>", the string renders as-is with no problem on the dialog
  • Set to "&lt;foo&gt;",the string renders as-is with no problem on the dialog
  • Set to "一佁聜齡久加功許也包北否州現四院址良乙兀吋宇墮慧詜詝詛訲丂亐", ,the string renders as-is with no problem on the dialog
  • Set to string with %20, the string renders as-is with no problem on the dialog


Unrelated Issues

  • Issue: Accelerator keys on the settings dialog are not working
    • Alt-U should put focus on the source textbox (for some reason this closes the dialog)
    • Alt-M should put focus on the name textbox (nothing happens)
    • Also tried with Ctrl and same results.

clip_image006

  • Issue: VS Crash if opening package manager console and NuGet is unable to deserialize package sources from registry
    • Open HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\NuGet\PackageSources
    • Delete the closing ">" of the string
    • Launch VS
    • Launch the package manager console
    • Expected: Error stating that it failed to deserialize the package sources.

clip_image003[1]

  • Actual: VS crashes

Last edited Oct 29, 2010 at 6:24 PM by farmas, version 1