Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documenting stacks/platforms instead of individual domains #5

Closed
stuartpb opened this issue Mar 1, 2015 · 14 comments
Closed

Documenting stacks/platforms instead of individual domains #5

stuartpb opened this issue Mar 1, 2015 · 14 comments

Comments

@stuartpb
Copy link
Member

stuartpb commented Mar 1, 2015

Right now, "platform" is just a simple field. However, it's entirely feasible that these profiles could hold detailed platform info (on the order of BuiltWith.com's info). Also, it's likely that platforms could be more complex than just 1:1 name matching.

I propose that platform is redefined to something like platform.application.name and platform.application.version, where "applications" is a new set (next to "profiles") where versions, with their defaults, are provided as an array.

Moreover, there's probably a need for some kind of "mount path" data for apps - keys they use as the basis of their URL defaults. This needs further consideration.

@stuartpb stuartpb mentioned this issue Mar 1, 2015
@stuartpb stuartpb added this to the v0.1.0 milestone Jun 9, 2015
@stuartpb
Copy link
Member Author

There's also the matter of reused auth components like devise.

@stuartpb
Copy link
Member Author

I think for 0.1.0 it's sufficient to just replace all the current "platform" values with "platform.application.name", considering that we're pretty far from going much further with it right now anyway. This just moves the data we currently have to a position where it's less likely to need to move in the event that an ecosystem spontaneously springs up around it down the line.

@stuartpb
Copy link
Member Author

I think https://github.com/opensets/domainprofiles/blob/pebble/profiles/com/getpebble.yaml looks really similar to a lot of sites I've profiled lately: I should check for other sites with the same length rules, or the same route suffixes. I think this is the current shipping user account UI for Rails.

@stuartpb
Copy link
Member Author

Actually, the simpler model seems to me to be an array of... let's say an array of names, with different names referring to different layers of platform rule to look up (like if they're using Auth0 with Rails). Later named platforms overwrite values of earlier ones, with the final layer being the profile itself.

And so if PHPBB version 2 and PHPBB version 3 have different rules for some things, they'd be defined as phpbb2 and phpbb3: if they don't differ, there's no significant reason to distinguish them (leave the complex platform breakdown to BuiltWith).

@stuartpb
Copy link
Member Author

What about mount path variables? Maybe "platform" should have a "stack" array (structured as above, as a list of layers) and a "config" object.

@stuartpb
Copy link
Member Author

And platform profiles should be "stacklayers" (which might go next to domains in profiles which might be flat after #44)?

@stuartpb
Copy link
Member Author

How deep should the overwrites go? Rules seem like they should be a wholesale clobber.

@stuartpb
Copy link
Member Author

sxsw.com uses the Rails thing.

@stuartpb
Copy link
Member Author

Figuring out how to detect platform... I think, for now, it's just going to be a matter of going to a site and duck-typing it - if it looks like it matches all the stack's features, it's that stack.

@stuartpb
Copy link
Member Author

It looks like this is like #6 in that we don't have a lot of data for it now, and figuring out how that data should look is going to take a lot more thought, on structuring, discovering, and using this data (which are entwined concerns).

I think, for now (and going into 0.1.0), the solution is just going to have to be to copy-paste, and for discussions of stack (including hunches or evidence as to what a site's stack is) to be figured out in a pull request's comments thread, with labels on any PR/issue that includes discussion about what a site's stack is. we don't flood this issue with discussion about specific profiles (any more than it already is), and once a clear mechanism for exposing (and integrating, tooling-wise?) stack data has been figured out, we can go back and re-check those discussions for leads when forming the fully-usable data for them. There's probably going to have to be a #56-type pull request for removing the current, under-discussed platform entries currently in the data; that might end up being where the central "this is what this stack looks like" discussion might go. (Or it might go in the wiki. I don't know. I should be asleep.)

@stuartpb
Copy link
Member Author

Right now we have 4 profiles using a "platform" field (that's 3 more than were using profile.fields, but still not much), of which 2 are "zendesk", one is "mediawiki" (and it's not Wikimedia), and one is "virtuemart" (which I've never seen in another place where it would be applicable). I think those can be pulled out for later reference if applicable. (And I just checked - one of those domains has lapsed, so its profile is no longer relevant at all. RIP, dogeco.in, and your MediaWiki-based characteristics.)

@stuartpb stuartpb changed the title "platform" field should have more depth Documenting stacks/platforms instead of individual domains Jan 25, 2016
@stuartpb
Copy link
Member Author

Actually, noting stack information converges kind of well with the pull requests that'll be generated in solving #19.

stuartpb added a commit that referenced this issue Jan 26, 2016
Remove underdeveloped `platform` data (see #5)
@stuartpb
Copy link
Member Author

Now that this has been removed from the spec with a more workable plan going forward, I'm kicking further consideration to future (ie. unblocking v0.1.0) on this issue, like I did #6.

@stuartpb
Copy link
Member Author

Continuing in opws/opws-schemata#3

@opws opws locked and limited conversation to collaborators Nov 13, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant