Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Buckminster dev » fetcher questions
fetcher questions [message #37598] Fri, 10 July 2009 15:53 Go to next message
Henrik Lindberg is currently offline Henrik LindbergFriend
Messages: 2509
Registered: July 2009
Senior Member
Hi,
I am documenting the fetcher in the Bucky Book. I wonder what the
options mean.

options:
Semicolon separated list of options controlling how to deal with the
fetched archive. Can be "uncompress", "flatten", or "include=xxx".

I can guess what uncompress does (i.e. unpacks zips, etc.), and I guess
that flatten removes all structure from an archive. I don't know what
"include=xxx" is - my guess is that it is a pattern for files to get
from an archive - but I am not sure.

Can someone help?

Regards
- henrik
Re: [buckminster-dev] fetcher questions [message #37619 is a reply to message #37598] Sat, 11 July 2009 19:24 Go to previous messageGo to next message
Guillaume Chatelet is currently offline Guillaume ChateletFriend
Messages: 146
Registered: July 2009
Senior Member
--0016e6d27c93d995c5046e730adf
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

You are absolutely right Henrik.

- include=*.cpp

will include cpp files only.

- flatten removes the hierarchy
- and uncompress ... well... uncompresses the archive.

Supported archives extensions are *.zip, *.tar.gz, *.tgz, *.tbz2 and
*.tar.bz2

If you need more info on those special executors ( fetcher, executor ) and
everything discussed on this page :
http://wiki.eclipse.org/Non_Java_projects_Proposal . I'm here to help.

I was wondering also if it would make sense to add something about how we
are handling our C++ projects here at MikrosImage with Buckminster. Actually
we are still not completely happy with that because of the genericity of the
editor which makes it painful to write even simple component specifications
with fetchers and executors actors.
However the executors we proposed and implemented until then allowed us to
share internal projects with a lot of dependencies and complex access right.

Cheers
Guillaume

On Fri, Jul 10, 2009 at 5:53 PM, Henrik Lindberg <
henrik.lindberg@cloudsmith.com> wrote:

> Hi,
> I am documenting the fetcher in the Bucky Book. I wonder what the options
> mean.
>
> options:
> Semicolon separated list of options controlling how to deal with the
> fetched archive. Can be "uncompress", "flatten", or "include=xxx".
>
> I can guess what uncompress does (i.e. unpacks zips, etc.), and I guess
> that flatten removes all structure from an archive. I don't know what
> "include=xxx" is - my guess is that it is a pattern for files to get from an
> archive - but I am not sure.
>
> Can someone help?
>
> Regards
> - henrik
> _______________________________________________
> buckminster-dev mailing list
> buckminster-dev@eclipse.org
> https://dev.eclipse.org/mailman/listinfo/buckminster-dev
>

--0016e6d27c93d995c5046e730adf
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

You are absolutely right Henrik.<br><ul><li>include=3D*.cpp</li></ul>will i=
nclude cpp files only.<br><ul><li>flatten removes the hierarchy</li><li>and=
uncompress ... well... uncompresses the archive.</li></ul>Supported archiv=
es extensions are *.zip, *.tar.gz, *.tgz, *.tbz2 and *.tar.bz2<br>

<br>If you need more info on those special executors ( fetcher, executor ) =
and everything discussed on this page : <a href=3D"http://wiki.eclipse.org/=
Non_Java_projects_Proposal">http://wiki.eclipse.org/Non_Java_projects_Propo=
sal</a> . I&#39;m here to help.<br>

<br>I was wondering also if it would make sense to add something about how =
we are handling our C++ projects here at MikrosImage with Buckminster. Actu=
ally we are still not completely happy with that because of the genericity =
of the editor which makes it painful to write even simple component specifi=
cations with fetchers and executors actors.<br>

However the executors we proposed and implemented until then allowed us to =
share internal projects with a lot of dependencies and complex access right=
..<br><br>Cheers<br>Guillaume<br><br><div class=3D"gmail_quote">On Fri, Jul =
10, 2009 at 5:53 PM, Henrik Lindberg <span dir=3D"ltr">&lt;<a href=3D"mailt=
o:henrik.lindberg@cloudsmith.com">henrik.lindberg@cloudsmith.com</a>&gt;</s=
pan> wrote:<br>

<blockquote class=3D"gmail_quote" style=3D"border-left: 1px solid rgb(204, =
204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi,<br>
I am documenting the fetcher in the Bucky Book. I wonder what the options m=
ean.<br>
<br>
options:<br>
Semicolon separated list of options controlling how to deal with the fetche=
d archive. Can be &quot;uncompress&quot;, &quot;flatten&quot;, or &quot;inc=
lude=3Dxxx&quot;.<br>
<br>
I can guess what uncompress does (i.e. unpacks zips, etc.), and I guess tha=
t flatten removes all structure from an archive. I don&#39;t know what &quo=
t;include=3Dxxx&quot; is - my guess is that it is a pattern for files to ge=
t from an archive - but I am not sure.<br>


<br>
Can someone help?<br>
<br>
Regards<br>
- henrik<br>
_______________________________________________<br>
buckminster-dev mailing list<br>
<a href=3D"mailto:buckminster-dev@eclipse.org" target=3D"_blank">buckminste=
r-dev@eclipse.org</a><br>
<a href=3D"https://dev.eclipse.org/mailman/listinfo/buckminster-dev" target=
=3D"_blank">https://dev.eclipse.org/mailman/listinfo/buckminster-dev</a><br=
>
</blockquote></div><br>

--0016e6d27c93d995c5046e730adf--
Re: [buckminster-dev] fetcher questions [message #37688 is a reply to message #37619] Sun, 12 July 2009 00:59 Go to previous messageGo to next message
Henrik Lindberg is currently offline Henrik LindbergFriend
Messages: 2509
Registered: July 2009
Senior Member
Hi, the thing that I did not understand at all was the options... But
after looking on that wiki page, I found this example:
<cs:property key="options"
value="uncompress;flatten;include=*.html;include=*.c"/>

Which made things a lot clearer. I think I can document this now, and
hope to get some help with reviewing the result.

I would love to include an example on "How to use fetcher and executor
to manage non Java projects with Buckminster" if you have material to
share. (BTW: The book is written using DocBook, so if you want to share
material, either write it in DocBook, or keep the styling to a minimum).

- henrik

Guillaume Chatelet wrote:
> You are absolutely right Henrik.
>
> * include=*.cpp
>
> will include cpp files only.
>
> * flatten removes the hierarchy
> * and uncompress ... well... uncompresses the archive.
>
> Supported archives extensions are *.zip, *.tar.gz, *.tgz, *.tbz2 and
> *.tar.bz2
>
> If you need more info on those special executors ( fetcher, executor )
> and everything discussed on this page :
> http://wiki.eclipse.org/Non_Java_projects_Proposal . I'm here to help.
>
> I was wondering also if it would make sense to add something about how
> we are handling our C++ projects here at MikrosImage with Buckminster.
> Actually we are still not completely happy with that because of the
> genericity of the editor which makes it painful to write even simple
> component specifications with fetchers and executors actors.
> However the executors we proposed and implemented until then allowed us
> to share internal projects with a lot of dependencies and complex access
> right..
>
> Cheers
> Guillaume
>
> On Fri, Jul 10, 2009 at 5:53 PM, Henrik Lindberg
> <henrik.lindberg@cloudsmith.com <mailto:henrik.lindberg@cloudsmith.com>>
> wrote:
>
> Hi,
> I am documenting the fetcher in the Bucky Book. I wonder what the
> options mean.
>
> options:
> Semicolon separated list of options controlling how to deal with the
> fetched archive. Can be "uncompress", "flatten", or "include=xxx".
>
> I can guess what uncompress does (i.e. unpacks zips, etc.), and I
> guess that flatten removes all structure from an archive. I don't
> know what "include=xxx" is - my guess is that it is a pattern for
> files to get from an archive - but I am not sure.
>
> Can someone help?
>
> Regards
> - henrik
> _______________________________________________
> buckminster-dev mailing list
> buckminster-dev@eclipse.org <mailto:buckminster-dev@eclipse.org>
> https://dev.eclipse.org/mailman/listinfo/buckminster-dev
>
>
Re: [buckminster-dev] fetcher questions [message #37765 is a reply to message #37619] Wed, 15 July 2009 12:49 Go to previous messageGo to next message
Henrik Lindberg is currently offline Henrik LindbergFriend
Messages: 2509
Registered: July 2009
Senior Member
Guillaume Chatelet wrote:
> You are absolutely right Henrik.
>
> * include=*.cpp
>
Hi, finally got around to updating the actor reference. On the wikipage
that describes the fetcher, it says that 'include' uses regular
expressions, but I wonder if that is really true - in that case, the
expression above would have to be written something like .*\.cpp.

So, is it a simpler expression - i.e. just using '*' as a wildcard?

Regards
- henrik
Re: [buckminster-dev] fetcher questions [message #37959 is a reply to message #37765] Wed, 15 July 2009 21:08 Go to previous messageGo to next message
Guillaume Chatelet is currently offline Guillaume ChateletFriend
Messages: 146
Registered: July 2009
Senior Member
--0016364c71cbd04c77046ec4f628
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

Hi Henrik,

I had to check before answering you : )
So it is regular expressions as you guessed but with a little bit of
tweaking so it's much easier to write.
Here is the relevant piece of code :

> p = p.replace(SEP, "/");
> p = p.replace(".", "\\.");
> p = p.replace("*", ".*");
> p = p.replace("?", ".?");
>

If a separator is found / or \ depending on the platform, it is converted to
/
If a dot is found it is converted to the dot character in the regular
expression : \\.
* => .*
? => .?

So it's much closer to a bash regular expression.

Guillaume

On Wed, Jul 15, 2009 at 2:49 PM, Henrik Lindberg <
henrik.lindberg@cloudsmith.com> wrote:

> Guillaume Chatelet wrote:
>
>> You are absolutely right Henrik.
>>
>> * include=*.cpp
>>
>> Hi, finally got around to updating the actor reference. On the wikipage
> that describes the fetcher, it says that 'include' uses regular expressions,
> but I wonder if that is really true - in that case, the expression above
> would have to be written something like .*\.cpp.
>
> So, is it a simpler expression - i.e. just using '*' as a wildcard?
>
>
> Regards
> - henrik
> _______________________________________________
> buckminster-dev mailing list
> buckminster-dev@eclipse.org
> https://dev.eclipse.org/mailman/listinfo/buckminster-dev
>

--0016364c71cbd04c77046ec4f628
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Henrik,<br><br>I had to check before answering you : )<br>So it is regul=
ar expressions as you guessed but with a little bit of tweaking so it&#39;s=
much easier to write.<br>Here is the relevant piece of code :<br><blockquo=
te style=3D"border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt =
0.8ex; padding-left: 1ex;" class=3D"gmail_quote">

p =3D p.replace(SEP, &quot;/&quot;);<br>p =3D p.replace(&quot;.&quot;, &quo=
t;\\.&quot;);<br>p =3D p.replace(&quot;*&quot;, &quot;.*&quot;);<br>p =3D p=
..replace(&quot;?&quot;, &quot;.?&quot;);<br></blockquote><div><br>If a sepa=
rator is found / or \ depending on the platform, it is converted to /<br>

If a dot is found it is converted to the dot character in the regular expre=
ssion : \\.<br>* =3D&gt; .*<br>? =3D&gt; .?<br><br>So it&#39;s much closer =
to a bash regular expression.<br><br>Guillaume <br><br></div><div class=3D"=
gmail_quote">

On Wed, Jul 15, 2009 at 2:49 PM, Henrik Lindberg <span dir=3D"ltr">&lt;<a h=
ref=3D"mailto:henrik.lindberg@cloudsmith.com">henrik.lindberg@cloudsmith.co=
m</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"borde=
r-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-le=
ft: 1ex;">

<div class=3D"im">Guillaume Chatelet wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"border-left: 1px solid rgb(204, =
204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
You are absolutely right Henrik.<br>
<br>
=C2=A0 =C2=A0* include=3D*.cpp<br>
<br>
</blockquote></div>
Hi, finally got around to updating the actor reference. On the wikipage tha=
t describes the fetcher, it says that &#39;include&#39; uses regular expres=
sions, but I wonder if that is really true - in that case, the expression a=
bove would have to be written something like .*\.cpp.<br>


<br>
So, is it a simpler expression - i.e. just using &#39;*&#39; as a wildcard?=
<div><div></div><div class=3D"h5"><br>
<br>
Regards<br>
- henrik<br>
_______________________________________________<br>
buckminster-dev mailing list<br>
<a href=3D"mailto:buckminster-dev@eclipse.org" target=3D"_blank">buckminste=
r-dev@eclipse.org</a><br>
<a href=3D"https://dev.eclipse.org/mailman/listinfo/buckminster-dev" target=
=3D"_blank">https://dev.eclipse.org/mailman/listinfo/buckminster-dev</a><br=
>
</div></div></blockquote></div><br>

--0016364c71cbd04c77046ec4f628--
Re: [buckminster-dev] fetcher questions [message #38048 is a reply to message #37959] Wed, 15 July 2009 22:06 Go to previous message
Henrik Lindberg is currently offline Henrik LindbergFriend
Messages: 2509
Registered: July 2009
Senior Member
Great - thanks!
I will include this information in the documentation.

It actually means that users have to be careful since they can't use the
* and ? operators as in a full reqular expression, and if they entered
escapes with \ on windows, this is replaced with /. If for some reason,
the names the user is trying to match requires use of other special
regexp characters - these can't be matched.

I am not saying you should change the implementation - not until someone
actually has an issue (if ever).

Regards
- henrik

Guillaume Chatelet wrote:
> Hi Henrik,
>
> I had to check before answering you : )
> So it is regular expressions as you guessed but with a little bit of
> tweaking so it's much easier to write.
> Here is the relevant piece of code :
>
> p = p.replace(SEP, "/");
> p = p.replace(".", "\\.");
> p = p.replace("*", ".*");
> p = p..replace("?", ".?");
>
>
> If a separator is found / or \ depending on the platform, it is
> converted to /
> If a dot is found it is converted to the dot character in the regular
> expression : \\.
> * => .*
> ? => .?
>
> So it's much closer to a bash regular expression.
>
> Guillaume
>
> On Wed, Jul 15, 2009 at 2:49 PM, Henrik Lindberg
> <henrik.lindberg@cloudsmith.com <mailto:henrik.lindberg@cloudsmith.com>>
> wrote:
>
> Guillaume Chatelet wrote:
>
> You are absolutely right Henrik.
>
> * include=*.cpp
>
> Hi, finally got around to updating the actor reference. On the
> wikipage that describes the fetcher, it says that 'include' uses
> regular expressions, but I wonder if that is really true - in that
> case, the expression above would have to be written something like
> .*\.cpp.
>
> So, is it a simpler expression - i.e. just using '*' as a wildcard?
>
>
> Regards
> - henrik
> _______________________________________________
> buckminster-dev mailing list
> buckminster-dev@eclipse.org <mailto:buckminster-dev@eclipse.org>
> https://dev.eclipse.org/mailman/listinfo/buckminster-dev
>
>
Previous Topic:[buckminster-dev] Commit rights for Adrian Skehill have been expired
Next Topic:Re: [buckminster-dev] Automatic headless buckminster build and update
Goto Forum:
  


Current Time: Tue Apr 23 07:07:18 GMT 2024

Powered by FUDForum. Page generated in 0.03825 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top