Merge pull request #44 from cyberious/master
Update Readme and ignore file
Merge remote-tracking branch 'origin/1.0.x'
Remove 1.8.7 and puppet 2.7 from matrix, pry testing will not work wi…
…th 1.8.7
Merge pull request #64 from cyberious/TravisCiFixes
Remove 1.8.7 and puppet 2.7 from matrix, pry testing will not work with 1.8.7
Remove duplicate dependency on puppetlabs/stdlib
See: https://tickets.puppetlabs.com/browse/GEP-194 for an issue caused by the redundant dependency.
Merge pull request #66 from casharma/fix/deps
Remove duplicate dependency on puppetlabs/stdlib
Merge remote-tracking branch 'upstream/1.0.x'
* upstream/1.0.x: Remove duplicate dependency on puppetlabs/stdlib (maint) load Gemfile.local if exists (maint) ignore Gemfile.local / .bundle (MODULES-1292) Don't try to apply a regex to a binary string Release 1.0.3 Refactored to add FOSS testing Pinned to beaker 1.16 due to failures, also reordered tests as in Jenkins we have more than one agent causing failure for some logic Fix registry testing, remove dependency of master to enable both foss and pe testing
FM-1509 Update for Future_Parser Testing
Merge pull request #68 from cyberious/1.0.x
FM-1509 Update for Future_Parser Testing
Merge branch '1.0.x' adding FutureParser testing
Fix tolerate mixed case test regex
Merge pull request #69 from cyberious/1.0.x
Fix tolerate mixed case test regex
Merge remote-tracking branch 'origin/1.0.x'
Adjust where examples exist and remove useless init.pp from manifests…
… directory
Merge pull request #70 from cyberious/ExamplesFix
Adjust where examples exist and remove useless init.pp from manifests directory
Modify the way we install stdlib due to github rpc hangups
Merge pull request #71 from cyberious/master
Modify the way we install stdlib due to github rpc hangups
Fix issue with Rakefile where require beaker fails on windows or when…
… not installed
Merge pull request #74 from cyberious/RakeFileFix
Fix issue with Rakefile where require beaker fails on windows or when not installed
Updates README file per DOC-1492
1. Remove any "what this affects" sections, except where particularly warranted. 2. Make sure that for each parameter, where applicable, there is a data type and a default value. 3. Make sure that for each parameter that's applicable, there is a note if the parameter is optional. 4. Make sure the links in the README work and are accurate. 5. Update the link in the Contributing section to point here: https://docs.puppetlabs.com/forge/contributing.html 6. General copyediting. 7. Replace "custom resource type" with "type" and "defined type" with "define"
Merge pull request #75 from psoloway/readme-overhaul
Updates README file per DOC-1492
(maint) update Beaker dependency to ~> 2.2
- Beaker 2.4 will actually be required to test AIO packages
(maint) Add Beaker to :system_tests gem group
- Without Beaker in isolation, there is no way to actually install the bundle for this module on Windows, since Beaker contains gems with native extensions that don't compile on Ruby 2.1.5 and Windows (unf_ext in particular). With this change, we can now install the gems to be used for local integration testing with: bundle install --path .bundle/gems --without=system_tests
(MODULES-1723) Introduce Ruby 2.1.5 failing tests
- New tests to demonstrate Ruby 2.1.5 failures for:
- Win32::Registry#delete_value which always fails based on passing
wide character UTF-16LE strings to an ANSI Api (used in the
registry_value provider destroy method)
Ruby bug filed at https://bugs.ruby-lang.org/issues/10820
- Win32::Registry#each_key enumeration which initiates unnecessary
locale conversion (used in registry_key provider .values method)
- Note that these tests were crafted specifically to introduce failures
of Ruby 2.1.5 code, and do not introduce failures when run against
Ruby 2.0.0. The non-ASCII test is guarded to only run in Ruby 2.1
as it doesn't affect Ruby 2.0 or Ruby 2.2 and can write corrupt data
to the registry under Ruby 1.9.3 due to Ruby using Windows ANSI APIs.
- Ensure that when creating registry keys with Ruby to specify
KEY_WOW64_64KEY to control the location of the key. When using the
module provider code, this is the default specified for deletion.
When these don't match, the key delete attempt may fail based on
bitness of the Ruby process.(MODULES-1723) Test Ruby Registry methods uncalled
- Ensure that under Ruby 2.1.x that problematic method calls to Win32::Registry are not made. This was made in a separate commit because unfortunately Mocha's any_instance will actually hide other errors (which are visible in the prior commit). Once code has been changed to alter code paths under other Ruby versions, the guarding will be changed accordingly.
(MODULES-1723) Use wide character registry APIs
- Switch to using RegQueryValueExW and RegDeleteKeyExW instead of their ANSI counterparts - Since Ruby 2.1.5 is broken with respec to calling delete_key and delete_value, add our own code for RegDeleteValueW to be used. Ensure that all deletions of registry keys go through the API rather than Ruby. - Implement a helper method for converting Ruby strings to UTF-16LE strings and for creating an unmanaged LCPWSTR pointer for use in FFI calls given a Ruby string. This code appears in Puppet itself, but for compatibility reasons, the Registry module cannot rely on the Puppet version that defines it. - Implement an each_value inside of the provider base code that either uses Rubys Win32::Registry#each_value in Ruby 2.0 and lower, or uses the Puppet 4 implementation if available. This provides existing behavior for older versions of Puppet / Ruby which don't have LOCALE conversion issues, and the correct behavior for Puppet 4. This was implemented this way to avoid dragging in a lot of duplicated FFI code from Puppet 4 introduced via: puppetlabs/puppet@b46ede7
(MODULES-1723) Additional tests for purge_values
- Previously, the purge_values tests were only for Ruby 2.1, where we know that there are issues in Win32::Registry. - Add tests that demonstrate that other versions of Ruby / Puppet work as well.
Merge pull request #72 from Iristyle/ticket/master/MODULES-1723-ruby-…
…2-compatibility (MODULES-1723) Update Registry module for Puppet 4 / Ruby 2.1.5 / Unicode
Merge branch 'master' into 1.1.x
Merge remote-tracking branch 'origin/master' into 1.1.x
* origin/master: Prepare for 1.1.0 release (MODULES-1723) Additional tests for purge_values (MODULES-1723) Use wide character registry APIs (MODULES-1723) Test Ruby Registry methods uncalled (MODULES-1723) Introduce Ruby 2.1.5 failing tests (maint) remove unused serverspec gem dependency (maint) Add Beaker to :system_tests gem group (maint) update Beaker dependency to ~> 2.2 Updates README file per DOC-1492