I'm glad to introduce you first beta version of the OwlyCI - package manager for Delphi. It includes package repository, build helper and generator.
I'm glad to introduce you first beta version of the OwlyCI - package manager for Delphi. It includes package repository, build helper and generator.
Most other languages have central repositories with open-source libraries (like NuGet,CPAN,PEAR and other) and i hope we can make such one for Delphi with your help. It can greatly improve Delphi-software development and give it a second breath.
I would be grateful for your suggestions and comments.
http://owlyci.com
Most other languages have central repositories with open-source libraries (like NuGet,CPAN,PEAR and other) and i hope we can make such one for Delphi with your help. It can greatly improve Delphi-software development and give it a second breath.
I would be grateful for your suggestions and comments.
http://owlyci.com
Thanks, finally it is coming. I have just installed it. Is it only a command line with handy manifest at present?
ReplyDeleteYes, there is only command line client now. But i recommend to use automatic manifest generation - it does all work for you.
ReplyDeleteAlexey Petushkov OK I will try it later.
ReplyDeleteThere are many features i want to implement, but i decide to show earliest version to make progress in-touch with the Delphi community. This version oriented mostly on programmers familiar with command line, but i sure IDE-integrated version is needed too.
ReplyDeleteGot it. It would be much great to have a simple to use user interface so that users will see what they can benefit at first glance : )
ReplyDeleteAn error occured when I run owlyci.exe --install libs/Spring4D "Error downloading package: Response from server: HTTP/1.1 401 Unauthorized" So I have to register it before using it?
ReplyDeletewhen I use --register parameter, username & password are required and then I don't know what I should do then. Did I miss something?
ReplyDeleteAs an user (like most others), I am very interested in how can the solution save my time on installing third-party "packages" on my specified IDEs and manage dependencies well. As a publisher, I am interested in whether it is easy to create and manage the repository.
ReplyDeleteBaoquan Zuo 401, it was my server misconfiguration - forgotten to remove protection, sorry. Now it is okay. Try owlyci.exe --install libs/Spring4D now.
ReplyDeleteRegistration available via Google auth or Facebook auth (simple email login planing, but is it needed?)
ReplyDeleteOnce registered, you can create your public channel - it is free. Private and dedic channels will be available later
ReplyDeleteBaoquan Zuo Thanks for your feedback!
ReplyDeleteAlexey Petushkov It works now and starts downloading but... no progress during the downloading. There are also some errors which I can't locate the issue. (You may try it)
ReplyDeleteCan you give me output, please ?
ReplyDeleteCorrect output looks like D:\Temp\40>owlyci --install libs/Spring4D
Downloading libs/Spring4D
Installing libs/Spring4D
Checking for dependecies
* Packages\DelphiXE\Spring.Base.dpk compiled OK
* Packages\DelphiXE\Spring.Core.dpk compiled OK
* Packages\DelphiXE\Spring.Extensions.dpk compiled OK
* Tests\Spring.Tests.dpr compiled OK
* Samples\IntroToDependencyInjection\1-StartingOut\StartingOut.dpr compiled OK
* Samples\IntroToDependencyInjection\2-MoveToInterfaces\MovingToInterfaces.dpr c
ompiled OK
* Samples\IntroToDependencyInjection\3-ConstructorInjection\ConstructorInjection
.dpr compiled OK
* Samples\IntroToDependencyInjection\4-UseMocks\UseMocks.dpr compiled OK
* Samples\IntroToDependencyInjection\5-IsolateInterfaces\IsolateInterfaces.dpr c
ompiled OK
* Samples\IntroToDependencyInjection\6-UseContainer\UseContainer.dpr compiled OK
* Samples\IntroToDependencyInjection\7-CustomConstructor\CustomConstructor.dpr c
ompiled OK
* Samples\IntroToDependencyInjection\8-FieldInjection\FieldInjection.dpr compile
d OK
* Samples\SpringDemos\Demo.Collections\Demo.Spring.Collections.Stack.dpr compile
d OK
* Samples\SpringDemos\Demo.Collections\Demo.Spring.Enumerators.dpr compiled OK
* Samples\SpringDemos\Demo.DependencyInjection\Demo.Spring.ConstructorInjection.
dpr compiled OK
* Samples\SpringDemos\Demo.DependencyInjection\Demo.Spring.DelegatedConstructor.
dpr compiled OK
* Samples\SpringDemos\Demo.DependencyInjection\Demo.Spring.DependencyInjection.d
pr compiled OK
* Samples\SpringDemos\Demo.DependencyInjection\Demo.Spring.FieldInjection.dpr co
mpiled OK
* Samples\SpringDemos\Demo.DependencyInjection\Demo.Spring.PropertyInjection.dpr
compiled OK
* Samples\SpringDemos\Demo.DependencyInjection\Demo.Spring.SimpleInjection.dpr c
ompiled OK
* Samples\SpringDemos\Demo.General\Demo.Spring.Enum.dpr compiled OK
* Samples\SpringDemos\Demo.General\Demo.Spring.Nullable.dpr compiled OK
* Samples\SpringDemos\Demo.General\Demo.Spring.ObjectContainer.dpr compiled OK
* Samples\SpringDemos\Demo.General\Demo.Spring.Predicates.dpr compiled OK
* Samples\SpringDemos\Demo.DependencyInjection\MultipleImplementations\Demo.Spri
ng.MultipleImplementations.dpr compiled OK
* Samples\SpringDemos\Demo.Patterns\Factory\Demo.Spring.FactoryPattern.dpr compi
led OK
* Samples\SpringDemos\Demo.Patterns\Observer\Demo.Spring.ObserverPattern.dpr com
piled OK
... package registered succesfully
... package registered succesfully
... package registered succesfully
D:\Temp\40>
Alexey Petushkov See http://pastebin.com/tpP7CYm1
ReplyDeleteI have installed XE4 field test version.
I see. This package is just not prepared for XE4. I see packages for 2010, XE and XE2 here but not XE3 or XE4. BTW could you help me fill row in this table http://owlyci.com/docs/versions for XE4 ?
ReplyDeleteTry this fork of Spring4D http://owlyci.com/package/jojoba/Spring4D/1.0.3.12-forXE4
ReplyDeleteowlyci.exe --install jojoba/Spring4D;1.0.3.12-forXE4
I cannot test this, but may work :)
Alexey Petushkov Thanks, it worked. There is a compiler failure due to a breaking change of the Delphi compiler (E2382 Cannot call constructors using instance variables) But I found another issue. Since the packages are runtime only so some errors are reported when starting the IDE. P.S. Did the installer adds browsing paths to the IDE?
ReplyDeleteInstaller fill paths only for .dproj with owlify command. Filling system-wide paths is a bad idea when you want building against different versions and easy rollback on dependency upgrade
ReplyDeleteWhat coincidence! yesterday I started to make PCR (Pascal Component Repository) for both Lazarus and Delphi, with same idea (like Maven for Java), but using INI file (instead of XML) as native structured delphi file. you can star by adding torry.net's components, you should try to predict potential future bugs from now!
ReplyDeletethanks alaxey. i'm always planning to do such a work .
ReplyDeletewill u open source ur job?
Alexey Petushkov Yes. You are right. I am just wondering how the tool automatically manage the references/dependencies of my project? (Also use dcu but enabling browsing path when debugging)
ReplyDeleteBaoquan Zuo I thought Delphi use paths to sources from compiled DCUs, but checkecked now and it is really not. Including browsing path is a good idea, thanks
ReplyDeleteIbrahim HALOUANE I keep in mind Lazarus, but its environment is completely different than Delphi (when talking about generics). It is hard to crosscompile most modern code from Delphi to Lazarus. Also, Lazarus have its own package manager and its nice. So I m not focused on Lazarus right now, may be later ...
ReplyDeleteThere are many package installers right now (like a DelphiPI), but a lack of repositories, lack of opensource communities.
It is hard for users now to find needed library (commercial or free), track changes and keep feedback.
melice huang Not decided yet, which benefits it can bring to project. But server API will be public.
ReplyDeleteThis sounds good, will check it out later. PS, the name OwlyCI to me is kinda not easy to remember...
ReplyDelete