Concepts and Ideas

These pages contain concepts and ideas under development for future inclusion in Sling.

Sling API Redesign


Module Reorganization Proposal


Everything is a Resource

Taking the JCR Paradigm Everything is Content to Sling (IMPLEMENTED)

Effective Exceptions

We should define the SlingException as a RuntimeException and use it as the base class for all exceptions defined in the Sling API. (IMPLEMENTED)

Thoughts on Release Management

Version Number and Release Planning Concept (IMPLEMENTED)

Resource Type Overwrite
Add ResourceResolverFactory Service Interface

Easier and more flexible access to ResourceResolver instances providing the ResourceResolverFactory interface in the Sling API and allow for the extensibility of the factory using new ResourceResolverProvider services. (IMPLEMENTED)

Flexible Resource Resolution

Extend resource resolution with an integrated and flexible mechanism (IMPLEMENTED)

Updating the Sling Launcher

How we could get the Sling Launcher to be updated through management interfaces such as the Felix Web Console or the Felix Shell. (IMPLEMENTED)

Multitenancy Support

With support for virtual host resolution we made a first step towards multitenancy support. I would like to propose a further step to provide a basis for further multitenancy support throughout Sling.

Authentication Initiation

How to generalize initiation of the authentication process. (IMPLEMENTED)

Resource Resolution Plugins

Further enhancements to the Flexible Resource Resolution (DRAFT)

Donating Jackrabbit Integration to Apache Jackrabbit


User Authentication

Separating authentication from ResourceResolver access (ammending Add ResourceResolverFactory Service Interface) (NOT IMPLEMENTED)

Multiple Workspace Support
Supporting CRUD
Service Authentication

Introduce new service level authentication to replace loginAdministrative (PROTOTYPE)

Observation usage patterns
Solving the Authentication Handler Credential Validation Problem

Define a mechanism to allow an Authentication Handler to validate the user's identity and signal that to the ResourceResolverFactory in the authentication information.(DRAFT)

Sling Feature Flags support
YAMF - Yet Another Model Factory
Health Checks Executor Design
Proxy Server Resource Provider

Definition of a ResourceProvider infrastructure to enable supporting HTTP proxy functionality for Sling (DRAFT)

Replication - HTTP API (proposal)
Multitenancy Support Integration
Multitenancy scenarios and use cases

Describes different scenarios and use cases from the real world that the Sling Tenant implementing is supposed to fulfill.

Sling NG Launcher
Move from Subversion to Git


Ideas for a multi-tenant and multi-module content model
Sling SVN repository structure

OUTDATED - Sling has moved to Git

Startup Handling
Sling Models 2.0 Roadmap
Initial Module Cleanup, 2016 - moving "dormant" Sling modules to /attic


Moving the Sling Launchpad to use released artifacts only


New JSON library

Under discussion

Object Conversion for ValueMaps
Sample projects review and move to attic - October 2017

Status: Implemented, 2017-10-12

Sling module descriptor

STATUS: implemented as of 2017-11-15

POST Processing enhancements
Extend the Sling IDE tooling beyond Eclipse

Status: proof-of-concept

Moving integration tests closer to the code they test


Scaling Sling Development


Migrating the Sling Starter to the Feature Model


Removal of problematic language
The feature launcher and Atomos
Recommend mechanism for launching the feature-model based Starter

STATUS: Proposal accepted

Enhance the Project Archetype to provide a fully expanded feature model

STATUS: Proposal accepted

Running Sling Starter integration tests with module builds

STATUS: Proposal

Automatic updates for Sling Starter depedencies


Threat model

Status: DRAFT

Enforcing CI checks for pull requests

STATUS: working proposal

Module cleanup discussion - 2023
  • No labels