RDI 0.1.0.20091020
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/AUTHORS +3 -0
- data/ChangeLog +46 -0
- data/Credits +21 -0
- data/LICENSE +31 -0
- data/README +18 -0
- data/TODO +17 -0
- data/lib/rdi/Installer.rb +678 -0
- data/lib/rdi/Model/ContextModifier.rb +20 -0
- data/lib/rdi/Model/DependencyDescription.rb +154 -0
- data/lib/rdi/Model/DependencyUserChoice.rb +202 -0
- data/lib/rdi/Model/Installer.rb +24 -0
- data/lib/rdi/Model/LocationSelector.rb +16 -0
- data/lib/rdi/Model/ProgressView.rb +16 -0
- data/lib/rdi/Model/Tester.rb +20 -0
- data/lib/rdi/Model/View.rb +16 -0
- data/lib/rdi/Plugins/ContextModifiers/GemPath.desc.rb +13 -0
- data/lib/rdi/Plugins/ContextModifiers/GemPath.rb +106 -0
- data/lib/rdi/Plugins/ContextModifiers/LibraryPath.rb +74 -0
- data/lib/rdi/Plugins/ContextModifiers/RubyLoadPath.rb +76 -0
- data/lib/rdi/Plugins/ContextModifiers/SystemPath.rb +74 -0
- data/lib/rdi/Plugins/GemCommon.rb +127 -0
- data/lib/rdi/Plugins/Installers/Download.rb +72 -0
- data/lib/rdi/Plugins/Installers/DownloadAndInstall.desc.rb +11 -0
- data/lib/rdi/Plugins/Installers/DownloadAndInstall.rb +54 -0
- data/lib/rdi/Plugins/Installers/Gem.desc.rb +13 -0
- data/lib/rdi/Plugins/Installers/Gem.rb +67 -0
- data/lib/rdi/Plugins/Installers/Icons/Download.png +0 -0
- data/lib/rdi/Plugins/Installers/Icons/DownloadAndInstall.png +0 -0
- data/lib/rdi/Plugins/Installers/Icons/Gem.png +0 -0
- data/lib/rdi/Plugins/Installers/Yum.rb +52 -0
- data/lib/rdi/Plugins/ProgressViews/SimpleWxGUI.desc.rb +13 -0
- data/lib/rdi/Plugins/ProgressViews/SimpleWxGUI.rb +58 -0
- data/lib/rdi/Plugins/ProgressViews/Text.rb +68 -0
- data/lib/rdi/Plugins/RubyGemsDepDesc.rb +41 -0
- data/lib/rdi/Plugins/Testers/Binaries.rb +56 -0
- data/lib/rdi/Plugins/Testers/DynamicLibraries.rb +56 -0
- data/lib/rdi/Plugins/Testers/RubyRequires.rb +76 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI/DependenciesLoaderDialog.rb +147 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI/DependencyPanel.rb +301 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI/Icons/Dependency.png +0 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI/Icons/Ignore.png +0 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI/Icons/ValidKO.png +0 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI/Icons/ValidOK.png +0 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI/LocationSelectors/Directory.desc.rb +13 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI/LocationSelectors/Directory.rb +45 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI.desc.rb +13 -0
- data/lib/rdi/Plugins/Views/SimpleWxGUI.rb +60 -0
- data/lib/rdi/Plugins/Views/Text/LocationSelectors/Directory.rb +44 -0
- data/lib/rdi/Plugins/Views/Text.rb +257 -0
- data/lib/rdi/Plugins/WxCommon.rb +69 -0
- data/lib/rdi/Plugins/WxRubyDepDesc.rb +36 -0
- data/lib/rdi/rdi.rb +8 -0
- data/test/Common.rb +796 -0
- data/test/Flows/BasicFlows.rb +114 -0
- data/test/Flows/UIFlows.rb +460 -0
- data/test/Plugins/ContextModifiers/GemPath.rb +44 -0
- data/test/Plugins/ContextModifiers/LibraryPath.rb +36 -0
- data/test/Plugins/ContextModifiers/RubyLoadPath.rb +36 -0
- data/test/Plugins/ContextModifiers/SystemPath.rb +36 -0
- data/test/Plugins/Installers/Download.rb +65 -0
- data/test/Plugins/Installers/DownloadAndInstall.rb +73 -0
- data/test/Plugins/Installers/Gem.rb +79 -0
- data/test/Plugins/LocationSelectors/Directory.rb +34 -0
- data/test/Plugins/Testers/Binaries.rb +46 -0
- data/test/Plugins/Testers/DynamicLibraries.rb +46 -0
- data/test/Plugins/Testers/RubyRequires.rb +48 -0
- data/test/Plugins/Views/SimpleWxGUI.rb +190 -0
- data/test/Plugins/Views/Text.rb +112 -0
- data/test/Plugins/WxEnv.rb +58 -0
- data/test/Plugins/WxEnvApp.rb +53 -0
- data/test/Repository/Binaries/DummyBinary +1 -0
- data/test/Repository/Libraries/DummyLibrary.so +1 -0
- data/test/Repository/RubyGems/DummyGem-0.0.1.20090828.gem +0 -0
- data/test/Repository/RubyGems/GemsSources/DummyGem/DummyGem.gemspec.rb +23 -0
- data/test/Repository/RubyGems/GemsSources/DummyGem/lib/DummyGemMain.rb +5 -0
- data/test/Repository/RubyLibraries/DummyRubyLib.rb +1 -0
- data/test/run.rb +23 -0
- metadata +145 -0
data/AUTHORS
ADDED
data/ChangeLog
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
= RDI Release History
|
2
|
+
|
3
|
+
== 0.1.0.20091020 (Alpha)
|
4
|
+
|
5
|
+
=== New features
|
6
|
+
|
7
|
+
* Updated icon for ignoring dependencies
|
8
|
+
* Implemented ProgressViews to give progression dialogs upon installation.
|
9
|
+
* Implemented Text Progress View.
|
10
|
+
* Implemented SimpleWxGUI Progress View.
|
11
|
+
* Added possibility to specify preferred ProgressViews.
|
12
|
+
* Refactored requires for gain in startup performances.
|
13
|
+
* Implemented a cache of Gem.path, find_files and clear_cache.
|
14
|
+
* Setting default options does not unset previously set default options, unless explicitly specified.
|
15
|
+
* Added getDefaultInstallLocation to the API.
|
16
|
+
* Added ensureLocationInContext to the API.
|
17
|
+
* Add install icons next to the installer choices in SimpleWxGUI.
|
18
|
+
* Local downloads are made in a Downloads sub-directory.
|
19
|
+
* Better error handling of zip extraction.
|
20
|
+
* Changed the local path to install gems (added LocalGems subdirectory to it)
|
21
|
+
* Removed .rb suffixes in required files (better migration to .so if needed)
|
22
|
+
* Adapted to new getPluginInstance interface
|
23
|
+
* Added default options that can be changed.
|
24
|
+
* Adopted new rUtilAnts API
|
25
|
+
* Removed direct public access to the application root directory (always use ExtDir instead).
|
26
|
+
* Implemented a main instance singleton.
|
27
|
+
* Renamed $CT_* variables into $rUtilAnts_*
|
28
|
+
|
29
|
+
=== Testing
|
30
|
+
|
31
|
+
* Regression: Implemented MuteProgressView to silently progress on test installations.
|
32
|
+
* Regression: Used new API.
|
33
|
+
* Use TempDir instead of AppRootDir in regression.
|
34
|
+
|
35
|
+
=== Bug correction
|
36
|
+
|
37
|
+
* Bug correction: Zip extraction did not set %INSTALLDIR% correctly for ContextModifiers.
|
38
|
+
* Bug correction: Installing Gem dependencies in paths already part of Gem.path could not be used correctly.
|
39
|
+
* Bug correction: Setting installer in the DependencyUserChoice object also set the Ignore flag.
|
40
|
+
* Bug correction: When choosing an alternate location to install to, the components did not display it correctly.
|
41
|
+
* Bug correction: rUtilAnts/Plugins was wrongly required.
|
42
|
+
* Bug correction: Corrected some regression test cases that did not clean everything behind them.
|
43
|
+
|
44
|
+
== 0.0.1.20090910 (Alpha)
|
45
|
+
|
46
|
+
* Initial public release
|
data/Credits
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
= Projects used by RDI
|
2
|
+
|
3
|
+
== Ruby
|
4
|
+
* Yukihiro « matz » Matsumoto (http://www.rubyist.net/~matz/)
|
5
|
+
* http://www.ruby-lang.org/
|
6
|
+
* Thanks a lot Matz for this truly wonderful language !
|
7
|
+
|
8
|
+
== RubyGems
|
9
|
+
* Paul Duncan <pabs@pablotron.org>
|
10
|
+
* http://rubygems.org/
|
11
|
+
* Used to automatically download Gem dependencies
|
12
|
+
|
13
|
+
== WxRuby
|
14
|
+
* Sean Long (http://rubyforge.org/users/seanlong/)
|
15
|
+
* Alex Fenton (http://rubyforge.org/users/brokentoy/)
|
16
|
+
* http://wxruby.rubyforge.org
|
17
|
+
* Used as the GUI framework
|
18
|
+
|
19
|
+
= People that helped a lot in developing RDI
|
20
|
+
|
21
|
+
* Alex Fenton (http://rubyforge.org/users/brokentoy/) for his unvaluable help in better understanding WxRuby and WxWidgets
|
data/LICENSE
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
|
2
|
+
The license stated herein is a copy of the BSD License (modified on July 1999).
|
3
|
+
The AUTHOR mentionned below refers to the list of people involved in the
|
4
|
+
creation and modification of any file included in the delivered package.
|
5
|
+
This list is found in the file named AUTHORS.
|
6
|
+
The AUTHORS and LICENSE files have to be included in any release of software
|
7
|
+
embedding source code of this package, or using it as a derivative software.
|
8
|
+
|
9
|
+
Copyright (c) 2009 Muriel Salvan (murielsalvan@users.sourceforge.net)
|
10
|
+
|
11
|
+
Redistribution and use in source and binary forms, with or without
|
12
|
+
modification, are permitted provided that the following conditions are met:
|
13
|
+
|
14
|
+
1. Redistributions of source code must retain the above copyright notice,
|
15
|
+
this list of conditions and the following disclaimer.
|
16
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
17
|
+
this list of conditions and the following disclaimer in the documentation
|
18
|
+
and/or other materials provided with the distribution.
|
19
|
+
3. The name of the author may not be used to endorse or promote products
|
20
|
+
derived from this software without specific prior written permission.
|
21
|
+
|
22
|
+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
23
|
+
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
24
|
+
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
25
|
+
EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
26
|
+
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
27
|
+
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
28
|
+
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
29
|
+
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
30
|
+
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
31
|
+
OF SUCH DAMAGE.
|
data/README
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
-- This file is best viewed when processed by rdoc.
|
2
|
+
++
|
3
|
+
|
4
|
+
= RDI: Runtime Dependencies Installer
|
5
|
+
|
6
|
+
Library that embeds a dynamic dependencies installer.
|
7
|
+
|
8
|
+
== Where is the documentation ?
|
9
|
+
|
10
|
+
Check the website at http://rdi.sourceforge.net
|
11
|
+
|
12
|
+
== Who wrote it ?
|
13
|
+
|
14
|
+
Check the AUTHORS[link:files/AUTHORS.html] file.
|
15
|
+
|
16
|
+
== What is the license ?
|
17
|
+
|
18
|
+
You can find out in the LICENSE[link:files/LICENSE.html] file.
|
data/TODO
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
* Documentation
|
2
|
+
** Write a complete User Guide.
|
3
|
+
** Write a complete Developer Guide.
|
4
|
+
** Create FAQ
|
5
|
+
|
6
|
+
* Testing
|
7
|
+
** Regression should test automatically for each Installer type that depending on the location of the install (Local, System, User...), only the correct directories are altered.
|
8
|
+
** Regression should warn when plugins don't have regression test cases
|
9
|
+
** Add cases were part of Testers are resolved (do GUIs correctly take the resolved ones into account ?)
|
10
|
+
** Add generic cases testing that for each AffectingContextModifier in Testers plugins, they effectively resolve Testers.
|
11
|
+
** Add generic cases for ProgressViews.
|
12
|
+
|
13
|
+
* Development
|
14
|
+
** In the dependenciesloader dialog, test internet connection before proposing installing Gems and Dlls.
|
15
|
+
** Give the possiblity to provide simple APIs that will handle most common dependency descriptions.
|
16
|
+
** Add buttons/combos 'Ignore All' 'Install All local' 'Install All system'... in the SimpleWxGUI.
|
17
|
+
** In the dependency description, each installer could have a list of DependencyDescription to ensure before trying to install. This could be useful for installers that compile... This can be used for nokogiri under Linux that needs yum install libxml2-devel and libxslt-devel.
|