Related bugs

Related blueprints

Branch information

Recent revisions

1. Added a new convenience method to Axiom.axiom.userbase, getUsernames(),
which returns a generator of two-tuples of (username, domain) for
LoginMethods in the given store that are internal and contain both a
localpart and a domain portion.

2. Changed Mantissa.xmantissa._webutil.VirtualHostWrapper.subdomain() such
that it will only return a username, domain tuple for known usernames
in the system as opposed to any subdomain of a known username domain.

3. Fixed a bug in Mantissa.xmantissa.websession.PersistentSessionWrapper that
caused subdomain-enabled cookies to fail. The method cookieDomainForRequest
returned unicode when it returned anything but None. Now the method
returns text as a string, so that the cookie sent to the client can be
handled successfully by the user-agent.

4. Modified Mantissa.xmantissa.web.SiteConfiguration.rootURL such that it
always returns an absolute URL (a URL that includes the protocol and
hostname) based on the request. There was never a need to force requests
to subdomains to resolve to the root domain for username VirtualHosts
as the new UserSubdomainWebSiteIntegration test,
test_staticContentAccessibleFromVirtualHost, shows.

Also, this change coincidentally fixes issue #2875, that Mantissa doesn't
work at all with the default shell template in Internet Explorer 6+.
Returning a relative URL (a URL without protocol and hostname) for use
in an HTML 4.01 / XHTML 1.0 <base /> tag is a violation of the W3C spec
in any case and needed to be changed.

5. Now Mantissa.xmantissa.web._SecureWrapper.renderHTTP takes the incoming
request into account when generating the encrypted root URL.

Remove all code from Quotient which instantiates Schedulers or SubSchedulers and
upgrade away persistent attributes which refer to existing such items. Replace
this with simple adaption of Stores to IScheduler where necessary.

Remove all code from Sine which instantiates Schedulers or SubSchedulers and
upgrade away persistent attributes which refer to existing such items. Replace
this with simple adaption of Stores to IScheduler where necessary (though
largely the use of schedulers seemed to be pointless and superficial).

Remove all code from Mantissa which instantiates Schedulers or SubSchedulers and
upgrade away persistent attributes which refer to existing such items. Replace
this with simple adaption of Stores to IScheduler.

Update the Quotient nits to reflect the long-ago changed URL structure for
application-specific static content. This fixes a number of nit failures
by changing from from asserting against the wrong value to asserting against
a good value.