Global project linking - xref question

This forum is for all Flare issues not related to any of the other categories.

Global project linking - xref question

Postby Psider on Wed Apr 18, 2018 8:01 pm

Hi guys,

I'm hoping to clarify some advice about Global Project Linking (Flare Project Import). I've been reading the forums to understand the way people use this and the pros and cons for GPL and merging. I've found some conflicting advice about cross references, so I'm hoping @Dave Lee might jump in. :)

One post from 2016 says to use GPL when the projects are "tightly coupled" and you need to use xrefs, or want a lot of links between topics in both projects.
viewtopic.php?f=9&t=28227&p=123971&hilit=merging+projects#p123971

Another post from 2018 says when using GPL you can't have cross references between, say, a topic in project 5 and a topic in project 7.
viewtopic.php?f=75&t=30045&p=130892&hilit=global+project+linking#p130892

Is it possible to use cross references between projects when using GPL?

For those working on multiple related projects, how do you manage the links between projects.

(A long time ago I used the merge functionality in Flare, and put manual relative links in snippets to minimise the pain of entering and updating them, but I want to find see if there are other options.)
Psider
Sr. Propeller Head
 
Posts: 445
Joined: Wed Jul 06, 2011 1:32 am

Re: Global project linking - xref question

Postby Dave Lee on Thu Apr 19, 2018 12:05 am

Psider wrote:Is it possible to use cross references between projects when using GPL?


No, not in any sensible way.

When you insert a cross-reference, you can only select a topic inside the same project.

For example, say I have a main project A, and use a project import (GPL) to import topics from two projects B and C.
- If I create a cross-reference in B or C, I can only select other topics in B or C. So I can't create a link from B to C, or B to A.*
- If I create a cross-reference in A, then I can select any topics from A, B or C - because the imported topics from B and C are all in the same project A.
- In project A, I can't edit imported topics from B or C without breaking their link, so I can't add/edit cross-references in those imported topics.

* Technically, I guess you can manually edit cross-references in B or C (before import), to point to topics that don't exist in the current project, but will come from the other projects after the import; but you probably want to avoid that path.


However, if your projects are "tightly coupled" and will have a lot of links between them, then my advice would be not to use separate projects. Combine them in a single project and produce several outputs from that. Flare's designed to do this.
Dave Lee
Master Propellus Maximus
 
Posts: 5303
Joined: Mon Mar 05, 2007 8:33 am
Location: UK

Re: Global project linking - xref question

Postby Psider on Thu Apr 19, 2018 1:22 am

Thanks Dave.

I'm just trialling Flare at the moment, but I'm reluctant to combine the projects as, in the past, and again at some point going forward, multiple people will be working on the content, and I've only ever had bad experiences with multiple people working on the one project at the same time.

I'll have a play with merging, to see if there is a way to set up the source projects so browsing will create a relative path that matches the output (it might be possible if the Content folder is included in the output...we'll see.)

Edit: Never mind. The hyperlink functionality seems to hard code the absolute path.
Psider
Sr. Propeller Head
 
Posts: 445
Joined: Wed Jul 06, 2011 1:32 am

Re: Global project linking - xref question

Postby Psider on Thu Apr 19, 2018 1:44 am

We interrupt this program for a mild moan.
<mild moan> Le sigh. I've yet to work on products that don't require links between modules and aren't worked on by multiple people and have the same release cycle.<end mild moan>
Now returning to your regularly scheduled program.

:P
Psider
Sr. Propeller Head
 
Posts: 445
Joined: Wed Jul 06, 2011 1:32 am

Re: Global project linking - xref question

Postby Dave Lee on Thu Apr 19, 2018 2:15 am

Psider wrote:I'm just trialling Flare at the moment, but I'm reluctant to combine the projects as, in the past, and again at some point going forward, multiple people will be working on the content, and I've only ever had bad experiences with multiple people working on the one project at the same time.


If you have multiple people working on the same content, then use source control.
That will prevent or help to control any conflicts.

Even if you work by yourself, like I do, I'd advise using use source control!

You'll have very bad experiences if you have multiple people accessing the same project, e.g. on a network share.
Using multiple projects doesn't actually prevent those problems either, unless you're going to physically restrict access to projects to certain people.
Dave Lee
Master Propellus Maximus
 
Posts: 5303
Joined: Mon Mar 05, 2007 8:33 am
Location: UK

Re: Global project linking - xref question

Postby Psider on Thu Apr 19, 2018 5:33 pm

Source Control is something I'm working on, but it's a slow process. At the moment, we are assigned a specific project. If we have a piece of work that needs a different project to be updated, we ask the relevant person to make the update. Every day or few (depending on how much work has been done on a project), and before weekends, holidays, etc, we create a zip backup on the network.

In a previous life we had issues with source control when working on the same project at the same time, with various hard-coded paths being saved, plus conflicts that were hard to figure out when the same topic was updated, and various behind the scenes things that mean even looking at a topic results in an "edit" and conflict that needs to be reviewed and resolved. I'm sure there were other things, but that's what I can remember off the top of my head. It was super annoying. Maybe these things have been improved in the intervening time.

(I'd ideally also like to be able to release the different modules independently, which I think would mean the merge option, rather than GPL. I'm still considering whether I need that for this product.)

(Oh, the other thing in my previous life, we tested branching so that the main branch could be released even if the child branch wasn't ready, but the merge tool was super confusing and didn't always get the tags right, so we had a lot of post merge work to fix everything up. Maybe source control merge tools have improved since then. I might post in Source Control and see how people handle it.)
Psider
Sr. Propeller Head
 
Posts: 445
Joined: Wed Jul 06, 2011 1:32 am


Return to Flare's General Discussion

Who is online

Users browsing this forum: spatte22 and 5 guests