Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge latest into my repo. #1

Merged
merged 164 commits into from
Dec 16, 2018
Merged

Conversation

SeanKilleen
Copy link
Owner

No description provided.

ferventcoder and others added 30 commits October 18, 2017 02:04
If changes to the log file are not able to be made due to lower
privileges, that output should not be shown. It causes confusion when
using self-service and a user isn't attempting to make changes to the
file in the first place.
Machine sources were formerly set based on whether they were disabled
or not, but not necessarily by priority order. This likely doesn't have
an effect in places with choco.exe but could have an effect with API
uses of Chocolatey, such as Chocolatey GUI.
When creating GetChocolatey, ensure that it is surrounded by a Mutex to
ensure one creation at a time.
When a package is not found, enhance the messaging with:

- note of prerelease
- how passing a source overrides default sources
- version information (pre-existing, but enhanced to show if version
passed)
- A link to troubleshooting for more information
When a custom logger is hooked up to the API, there will have been
quite a few logging messages already pass through that would be missed.
Instead of allowing those to be missed, capture those in a sink and
play them back to the custom logger.
Sometimes the logger abstraction has been created, but the
underlying logger has not been initialized. Ensure that it is
initialized.
Based on the switches passed, the logging levels should be set
appropriately for API use. This is for Debug/Verbose/Trace logging.
This spec was causing issues due to the addition of aggregate logging.
Since this spec file wasn't really used, remove for now and revisit
later.
When loading extensions, load DLL PowerShell modules first before
loading PSM1 modules. This allows for items to possibly be loaded prior
to being sent out.
Previously, when handling parameters with url values, which have both
`:` and `/`, Get-PackageParameters would split on those parameters.
This made it near impossible to pass through urls without finessing the
values.

Switch to using a regular expression that can handle the complexity of
parameters:

* Split on start of string and `/` or a space and then `/`.
* The splitter for each item name and value is either `:` or `=`.
* A flag should be set true if present (an item without a value).
* An item value can contain spaces colons and equals signs, pretty much
anything except for a space followed by "/".
Ensure that if sensitive parameters are detected based on the
automatically assumed values, that no parameters are logged to the
debugging log.
Ensure that Chocolatey loads its version of Get-PackageParameters with
an alias.
A small compatible change to the licensing.
Note that there is a difference in support requests based on open
source users versus commercial customers. Ensure folks understand how
they reach out if they are a commercial user.
- Use Mutex to ensure that file is only used for each transformation
- Verify by loading transformed file that it contains valid XML
- Restore backup file in the event of an error
- This isn't required, the license is asserted on each choco command
(GH-1500) Disable re-validation of Chocolatey License File
It would be quite helpful when troubleshooting to see logging from the
license validation code.
Allow to see licenses as subscriptions and check if there is a valid
place to check for upgrades.
When running the strong name cmd to convert NuGet.Core, it would be
helpful to know to copy the items from the subfolder up and delete the
directory afterwards.
ferventcoder and others added 28 commits August 10, 2018 14:48
The silent arguments seem to sometimes be the harder part to grasp on
exactly what can be passed. Better to add notes on how exactly they can
be used.
* stable:
  (maint) formatting
  (doc) update generated docs
  (doc) Add notes / examples for silentArguments
When determining the PowerShell version, using `$host.Version` is ill-advised -
it is dependent upon the host and may not be an accurate value. In the case of
Visual Studio Code, it was coming up with the version of VS Code and not
PowerShell's version. This leads to unexpected behavior. Instead, to make a
determination of the version of PowerShell, use `$PSVersionTable.PSVersion`.

See this [link](https://blogs.technet.microsoft.com/heyscriptingguy/2014/10/13/powertip-check-version-of-powershell/) for more information.
* pr1624:
  (GH-1623) Use PSVersionTable for Version
* stable:
  (GH-1623) Use PSVersionTable for Version
  (doc) fix up doc mistakes
  (doc) update licensed changelog
For uninstallation of software when pulling values from the uninstaller
registry, the value pulled for the uninstall string is likely to be a
full value that needs split up into the file to run and the arguments
to pass to it. Provide documentation notes to give a frame of
reference, not every installer is going to be the same so don't
approach putting a more generic way of approaching this at this time,
just documentation tidbits for package maintainers to determine the
best method to move forward with.
Add a get_outdated method to NuGetService to simplify calls away from
upgrade_run. The `FindPackage()` call from NuGet.Core PackageManager downloads
data about all versions of package instead of only the latest. Instead use
NuGet.Core PackageManager `GetPackages()` with a queryable to only retrieve
the latest version of a package.
Ensure all Chocolatey queries are sped up by using better selection on
the front part of the call to ensure what is returned is the result that
is being requested without a huge amount of traffic to get to that value.

Previously, a call to find a package or even a version for upgrade might
send queries to remote sources to provide all of the versions of a package
starting with the oldest version to the latest. This results in terrible
performance, especially as a source continues to have more and more versions
of a package, the performance gets worse. Instead, for install/upgrade/outdated
scenarios where choco is querying service-based url, it should make one call
ensuring it receives the version it is looking for.
* 1495_changes:
  (GH-1397) Reduce traffic - choco queries
  (GH-1397) Speed up choco outdated
* stable:
  (GH-1397) Reduce traffic - choco queries
  (GH-1397) Speed up choco outdated
  (GH-1644) Note registry uninstall may need split
- To allow for correctly generating hash code of objects
- To allow for correct generation of hash codes
- This will be used to validate changes to chocolatey.config file
(GH-1612) Added consistent generation of hash code
* stable:
  (version) 0.10.12-beta
  (doc) Updated release notes
  (GH-1612) Updated classes to override methods
  (GH-1612) Added extension method and struct
  (maint) Corrected whitespace
Searching for packages should not be case sensitive
Ensure the config is reset to a known point with each package being run
in an operation. Previously it was thought this was happening, but the
way the reset occurred was actually changing the original configuration
and the current. Ensure that is getting reset accordingly by doing the
deep copy to set config each time through.
Search through each repo based on features, instead of looking at only
what all in aggregate have available. This allows searching for
prereleases when available even if not every repo supports them.
* stable:
  (GH-1397) Search each repo based on features
  (GH-1397) Fix: Ensure config reset
  (GH-1656) Ensure check is not case sensitive
@SeanKilleen SeanKilleen merged commit c8512aa into SeanKilleen:master Dec 16, 2018
SeanKilleen added a commit that referenced this pull request Jan 17, 2019
This reverts commit c8512aa, reversing
changes made to 9c0a77d.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.