Conditional external dependencies in a Metacello BaselineOf?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Conditional external dependencies in a Metacello BaselineOf?

Damien Pollet
I have a couple projects that I develop together; the first depending on the second, and both managed on GitHub (in separate repositories).

The BaselineOf therefore expresses the dependency using repository: 'github://…'
However, I'd like to locally change that to gitfiletree:// so that I can build new development images from scratch, with both projects ready to commit to gitfiletree, with minimal repo juggling and code reloading ?

Is there a way to achieve that? Metacello project attributes? a git submodule?

--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet
Reply | Threaded
Open this post in threaded view
|

Re: Conditional external dependencies in a Metacello BaselineOf?

Dale Henrichs-3
Damien,

You want to use a a lock[1]. Look at the section on locking a
`filetree://` repo [2]--- should be similar for locking your gitfiletree
repo ...

When you load you may want to use `onWarningLog`, because locks do
generate Warnings telling you the the lock is being honored (i.e., the
load is taking place from the local clone, not github as specified in
the baseline) ...

Dale

[1]
https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-command-reference
[2]
https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-the-projects

On 04/12/2016 11:18 AM, Damien Pollet wrote:

> I have a couple projects that I develop together; the first depending
> on the second, and both managed on GitHub (in separate repositories).
>
> The BaselineOf therefore expresses the dependency using repository:
> 'github://…'
> However, I'd like to locally change that to gitfiletree:// so that I
> can build new development images from scratch, with both projects
> ready to commit to gitfiletree, with minimal repo juggling and code
> reloading ?
>
> Is there a way to achieve that? Metacello project attributes? a git
> submodule?
>
> --
> Damien Pollet
> type less, do more [ | ] http://people.untyped.org/damien.pollet


Reply | Threaded
Open this post in threaded view
|

Re: Conditional external dependencies in a Metacello BaselineOf?

Damien Pollet-2
Oh, nice!

Just to be sure, because 2:15am is not the best time to start playing with code… if I understood correctly, I'd load the depended-upon baseline from gitfiletree, lock it, and then that would take precedence over the github:// repo specified in the baseline of the main project?

I'll try tomorrow, thanks :)

On 13 April 2016 at 00:38, Dale Henrichs <[hidden email]> wrote:
Damien,

You want to use a a lock[1]. Look at the section on locking a `filetree://` repo [2]--- should be similar for locking your gitfiletree repo ...

When you load you may want to use `onWarningLog`, because locks do generate Warnings telling you the the lock is being honored (i.e., the load is taking place from the local clone, not github as specified in the baseline) ...

Dale

[1] https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-command-reference
[2] https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-the-projects


On 04/12/2016 11:18 AM, Damien Pollet wrote:
I have a couple projects that I develop together; the first depending on the second, and both managed on GitHub (in separate repositories).

The BaselineOf therefore expresses the dependency using repository: 'github://…'
However, I'd like to locally change that to gitfiletree:// so that I can build new development images from scratch, with both projects ready to commit to gitfiletree, with minimal repo juggling and code reloading ?

Is there a way to achieve that? Metacello project attributes? a git submodule?

--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet



Reply | Threaded
Open this post in threaded view
|

Re: Conditional external dependencies in a Metacello BaselineOf?

Peter Uhnak

On Wed, Apr 13, 2016 at 2:24 AM, Damien Pollet <[hidden email]> wrote:
Oh, nice!

Just to be sure, because 2:15am is not the best time to start playing with code… if I understood correctly, I'd load the depended-upon baseline from gitfiletree, lock it, and then that would take precedence over the github:// repo specified in the baseline of the main project?

I'll try tomorrow, thanks :)

On 13 April 2016 at 00:38, Dale Henrichs <[hidden email]> wrote:
Damien,

You want to use a a lock[1]. Look at the section on locking a `filetree://` repo [2]--- should be similar for locking your gitfiletree repo ...

When you load you may want to use `onWarningLog`, because locks do generate Warnings telling you the the lock is being honored (i.e., the load is taking place from the local clone, not github as specified in the baseline) ...

Dale

[1] https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-command-reference
[2] https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-the-projects


On 04/12/2016 11:18 AM, Damien Pollet wrote:
I have a couple projects that I develop together; the first depending on the second, and both managed on GitHub (in separate repositories).

The BaselineOf therefore expresses the dependency using repository: 'github://…'
However, I'd like to locally change that to gitfiletree:// so that I can build new development images from scratch, with both projects ready to commit to gitfiletree, with minimal repo juggling and code reloading ?

Is there a way to achieve that? Metacello project attributes? a git submodule?

--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet




Reply | Threaded
Open this post in threaded view
|

Re: Conditional external dependencies in a Metacello BaselineOf?

Dale Henrichs-3
Damien,

Peter's got the proper script ... When you lock a Metacello project, you are registering a repository with a project name, so no need to "load Baseline", the name and local repository are enogh to the job ... then do you normal load ... you do have to use the `Metacello new` form of project loading for the lock to take effect:

  Metacello new
    baseline: '...';
    repository: '...';
    onWarningLog;
    load

Peter's script is a good example ...

Dale

On 4/13/16 1:40 AM, Peter Uhnák wrote:

On Wed, Apr 13, 2016 at 2:24 AM, Damien Pollet <[hidden email]> wrote:
Oh, nice!

Just to be sure, because 2:15am is not the best time to start playing with code… if I understood correctly, I'd load the depended-upon baseline from gitfiletree, lock it, and then that would take precedence over the github:// repo specified in the baseline of the main project?

I'll try tomorrow, thanks :)

On 13 April 2016 at 00:38, Dale Henrichs <[hidden email]> wrote:
Damien,

You want to use a a lock[1]. Look at the section on locking a `filetree://` repo [2]--- should be similar for locking your gitfiletree repo ...

When you load you may want to use `onWarningLog`, because locks do generate Warnings telling you the the lock is being honored (i.e., the load is taking place from the local clone, not github as specified in the baseline) ...

Dale

[1] https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-command-reference
[2] https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md#lock-the-projects


On 04/12/2016 11:18 AM, Damien Pollet wrote:
I have a couple projects that I develop together; the first depending on the second, and both managed on GitHub (in separate repositories).

The BaselineOf therefore expresses the dependency using repository: 'github://…'
However, I'd like to locally change that to gitfiletree:// so that I can build new development images from scratch, with both projects ready to commit to gitfiletree, with minimal repo juggling and code reloading ?

Is there a way to achieve that? Metacello project attributes? a git submodule?

--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet