foam-framework / foam2

FOAM: Feature-Oriented Active Modeller, Version 2
Apache License 2.0
73 stars 63 forks source link

Detect when FOAM is already installed #202

Open mdittmer opened 7 years ago

mdittmer commented 7 years ago

Use case: Browser extension that injects script into pages. Some pages may have FOAM installed.

Problem statement: Attempting to install FOAM twice results in obtuse errors (e.g., attempting to reinstall Object.prototype.$UID). It would be nice if FOAM could detect that it was already installed, and not bother installing itself.

Complicating factors: Of course, different versions of FOAM may be already installed / wanting to be installed. It's not clear what the best way is to deal with this. Perhaps implement some kind of versioning, let the first installed win, and emit a warning that different versions of FOAM were trying to install over top of each other.

kgrgreer commented 7 years ago

Maybe we could install multiple versions of FOAM at once in different scopes or contexts, possibly using Javascript's 'with' statement.

On 9 January 2017 at 16:33, Mark Dittmer notifications@github.com wrote:

Use case: Browser extension that injects script into pages. Some pages may have FOAM installed.

Problem statement: Attempting to install FOAM twice results in obtuse errors (e.g., attempting to reinstall Object.prototype.$UID). It would be nice if FOAM could detect that it was already installed, and not bother installing itself.

Complicating factors: Of course, different versions of FOAM may be already installed / wanting to be installed. It's not clear what the best way is to deal with this. Perhaps implement some kind of versioning, let the first installed win, and emit a warning that different versions of FOAM were trying to install over top of each other.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/foam-framework/foam2-experimental/issues/202, or mute the thread https://github.com/notifications/unsubscribe-auth/AHHXsxuFFGLEOfiqYDKf-4eTLlmCRWB3ks5rQqeTgaJpZM4LewR5 .

adamvy-google commented 7 years ago

Fully contextializing FOAM could be interesting.

It would make a "Develop FOAM2.1 in FOAM2" type situation feasible without even having to reload the page.

On Mon, Jan 9, 2017 at 9:53 PM, Kevin Glen Roy Greer < notifications@github.com> wrote:

Maybe we could install multiple versions of FOAM at once in different scopes or contexts, possibly using Javascript's 'with' statement.

On 9 January 2017 at 16:33, Mark Dittmer notifications@github.com wrote:

Use case: Browser extension that injects script into pages. Some pages may have FOAM installed.

Problem statement: Attempting to install FOAM twice results in obtuse errors (e.g., attempting to reinstall Object.prototype.$UID). It would be nice if FOAM could detect that it was already installed, and not bother installing itself.

Complicating factors: Of course, different versions of FOAM may be already installed / wanting to be installed. It's not clear what the best way is to deal with this. Perhaps implement some kind of versioning, let the first installed win, and emit a warning that different versions of FOAM were trying to install over top of each other.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/foam-framework/foam2-experimental/issues/202, or mute the thread https://github.com/notifications/unsubscribe-auth/AHHXsxuFFGLEOfiqYDKf- 4eTLlmCRWB3ks5rQqeTgaJpZM4LewR5

.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/foam-framework/foam2-experimental/issues/202#issuecomment-271472748, or mute the thread https://github.com/notifications/unsubscribe-auth/AHJP_dn8Gfhl878oXxvMRpVHl17aYv6lks5rQvK3gaJpZM4LewR5 .