All work
- Remove deprecated ConfigurationCPPOST-107Resolved issue: CPPOST-107Scott Cantor
- Dynamic metadata provider fails to install filtersCPPOST-105Resolved issue: CPPOST-105Scott Cantor
- DynamicMetadataProvider rejects metadata returned from MDQ associated with artifact profileCPPOST-99Resolved issue: CPPOST-99Scott Cantor
- BOOST autoconf macros break with gcc5CPPOST-91Resolved issue: CPPOST-91Scott Cantor
- Insufficient XML entity encoding in Metadata Status generationCPPOST-88Resolved issue: CPPOST-88Scott Cantor
- samlsign core dumps when -dig option is usedCPPOST-86Resolved issue: CPPOST-86Scott Cantor
- Dynamic metadata plugin race conditons / leaksCPPOST-85Resolved issue: CPPOST-85Scott Cantor
- Compile error with boost 1.53CPPOST-83Resolved issue: CPPOST-83Scott Cantor
- SAMLTIME_MAX constant breaks for universal Mac buildsCPPOST-80Resolved issue: CPPOST-80Scott Cantor
- Typo in "metadata intance failed manual validation checking" log messageCPPOST-79Resolved issue: CPPOST-79Scott Cantor
- Add metadata:rpi schema to OpenSAMLCPPOST-78Resolved issue: CPPOST-78Scott Cantor
- Excessive CFLAGS included in installed pkgconfig fileCPPOST-72Resolved issue: CPPOST-72Scott Cantor
- Name Format Constants for Unspecified Are MisspelledCPPOST-10Resolved issue: CPPOST-10Scott Cantor
Remove deprecated Configuration
Description
Environment
Activity
Scott CantorJanuary 25, 2018 at 2:50 PM
That's always been the problem, and as you noted, the IdP docs aren't precisely task-based, it's just that the organization of the configuration is more task-centric.
I would focus for now on just getting the content in.
Rod WiddowsonJanuary 25, 2018 at 10:44 AM
I may recast the "top level" of the current SP documentation when I start up in there again later today to be more task driven. Or not. What I'm not sure about is the slight impedance mismatch between the Element {{<MetadataProvider>}} and the task "adding Metadata" (plus an aside that I'm not 100% positive right now that the {{<ApplicationDefaults>}} is the only place it can go. Maybe I should leave as is right now and concentrate of adding content (MetadataFilter is what is next, then I'll move on to whateveer documentational infrastrcture is needed to support the IIS7 changes.
Scott CantorJanuary 21, 2018 at 8:32 PM
I think you've hit on the problem, and in a nutshell I don't know if it will work or not, but I think it would be a great improvement (IMHO). But I know there are people who probably would argue one file is better, particularly when it's already fairly short (in comparison to what it used to be).
One problem is that most of the plugin config is application-centric, not SP-centric. So mostly this is probably about breaking up the config such that applications are defined in separate files, and I'm not sure that would be a benefit or not. Perhaps.
More generally, I was asked to figure out a way to support "includes" a long time ago, and at the time I only considered trying to do that with the XML Include standard, which Xerces didn't support. It also is a terrible standard, as it turns out.
The XMLServiceProvider class is absolutely horrible, it's a single giant mass of code to load the entire configuration tree, exactly the sort of thing that led people to figure out Spring was a good thing, but this isn't Java, so it's not as easy to fix.
What I would say for the moment is that you're right that it won't be as elegant, but at least breaking the topics up by functional area and then having those topics explain where in the file you would put something would still be better than it is now.
Rod WiddowsonJanuary 21, 2018 at 11:58 AM
We discussed this and SP3 documentation briefly in the team meeting on Friday the 19th.
One of the things that said was that he wanted to structure the SP3 documentation to be more like the IdP documentation which is to say task driven rather than file driven. This surprised me since I had always considered the IdP documentation as being file driven, not task driven.
Last night I had an insight which squares this circle.
It appears to me than in fact it is the layout of the files in the config file which is task driven. The documentation follows this and hence it too is task driven. I find that a very natural way to proceed - particular as a beginner I had to hunt for the correct place to add metadata or to resolve attributes and so on.
As a corollary, one of the issue I have in trying to document the MetadataProviders for V3 is the depth of psuedo stru cture needed before I can get to the metadata providers - and hence why Scott wants to structure the documentation by task/function.
I wonder whether we could do the same for the SP. I have still to dive down into the fullest corners of the SP configuration but could we not split top level functions into files (Metadata provision, Handlers, Attributes, ShibD config, WebServer config, ...) and refer to these files with attributes inside the <SPConfig/>
element? We could relatively simply set up the parsers to whine if the find a deprecated function in the old place and not parse it at all in the new place.
This can (as discussed) all happen post 3.0. For 3.0 all that would need to be done would be to structure the documentation in terms of the file layout we want to move to and have for each element type a "where to find it in shibboleth2.xm".
This seems more natural to me and has as a benefit a greater granularity of control with respect to reloading metadata (and I guess signing and trust and so on).
I suspect I'm missing some subtle detail of configuration (e.g. per RP metadata or some such) or perhaps some philosophical issue I'm not aware of, but I thought I should share the idea.
Rod WiddowsonJanuary 18, 2018 at 8:09 PM
Same resolution as
— The decision here is to leave things as is. Just to not document them; For my own sanity I am collecting these things together here
Spotted while I wasx reviewing the Dynamic Metadata Providers' documenation.
The following elements are still scanned for for all metadata providers and should be removed for V3.
<BlacklistMetadataFilter>
,<Exclude>
<WhitelistMetadataFilter>
,<Include>
<SignatureMetadataFilter>
There may be other stuff which crops up as I review the other documentation