Giter Club home page Giter Club logo

sdl_evolution's Introduction

SDL Evolution

Do not submit a proposal without reading this roadmap document. Ideas should be discussed on the SDL Slack #sdl_evolution open channel before a proposal is created here.

For more information about SDL, go to www.smartdevicelink.com.

This process and document is based on Apple's excellent Swift Evolution process.

This document tracks the ongoing evolution of SDL. Proposals should be made for any public API surface change, that is, any change that would necessitate a minor or major version change in any SDL mobile library. If a protocol or RPC change does not change any API surface, they must still be brought through the proposal process. In sum, the following changes must be proposed:

  • Changes necessitating minor or major version updates to SDL Core, the mobile libraries, Manticore, SDL Policy Server, and SHAID according to semantic versioning, except those that are caused by a misspelling.
  • Any change to the SDL Protocol.
  • Any change to the SDL RPC spec.

Important documents:

Platforms

When entering a proposal, only one platform will be listed as impacted on the proposal status page. It's inherent that some platforms impact others, as described below:

Protocol

The SmartDeviceLink protocol specification describes the method for establishing communication between an application and head unit and registering the application for continued communication with the head unit. The protocol is used as the base formation of packets sent from one module to another.

All new SDL implementations should implement the newest version of the protocol.

Repository: https://github.com/smartdevicelink/protocol_spec

Changes to Protocol also impact the following platforms:

  • Core
  • iOS
  • Android

RPC Spec

Spec for RPC messages sent between mobile devices and hardware modules.

Repository: https://github.com/smartdevicelink/rpc_spec

Changes to RPC also impact the following platforms:

  • Core
  • iOS
  • Android
  • HMI (in most cases)

Core

The Core component is the software which Vehicle Manufacturers (OEMs) implement in their vehicle head units. Integrating this component into their head unit and HMI based on a set of guidelines and templates enables access to various smartphone applications.

Repository: https://github.com/smartdevicelink/sdl_core

Changes to Core also impact the following platforms:

  • Manticore

Android SDK

The Android library is implemented by Android app developers into their applications to enable command and control via the connected head unit.

Repository: https://github.com/smartdevicelink/sdl_android


iOS SDK

The iOS library is implemented by iOS app developers into their applications to enable command and control via the connected head unit.

Repository: https://github.com/smartdevicelink/sdl_ios


Manticore

Manticore is used to dynamically provision SDL Core and SDL HMI instances in the cloud.

Repository: https://github.com/smartdevicelink/manticore

SDL hosted instance: https://smartdevicelink.com/resources/manticore/


SDL Policy Server

The SDL Policy Server handles authentication, data collection, and basic configurations for SDL connected vehicles.

Repository: https://github.com/smartdevicelink/sdl_server


SHAID

SHAID is a centralized service designed to keep information about SDL-supported applications synchronized across the SmartDeviceLink (SDL) ecosystem.

Repository: https://github.com/smartdevicelink/sdl_shaid

Recent and Upcoming Releases

You can see a detailed list of accepted and implemented proposals for upcoming versions on the proposal status page. Each proposal is listed as only impacting one platform, as it's inherent that some platforms impact others, as described above in the Platforms Section.

SHAID: 2.0.0

Release Date: August 15, 2017

Contents: This release enhances SHAID to allow application information (including name, description, default HMI level, RPCs required for integration, and ID) for SDLC-approved apps to be stored and accessible to "App Consumer" companies (OEMs and Suppliers). SHAID will also send notifications to these App Consumer companies when an SDLC-approved application registered on SHAID has been modified.


SDL Protocol: 5.0.0

Release Date: October 30, 2017

Contents: Introducing control frame payloads and a revised version negotiation scheme. Release information can be found here.


SDL RPC Spec: 4.5.0

Release Date: October 30, 2017

Contents: Release information can be found here.


Core: 4.5.0

Release Date: April 5, 2018

Contents: This release includes stabilization fixes and the Connectivity via iAP-BT and Transport Switch feature described here. Contents of this release are described in detail in the Core 4.5.0 Release Notes.


Manticore: 1.3.0

Release Date: May 1, 2018

Contents: Include enhancements and update to the latest version of Core.


Android SDK: 4.6.0

Release Date: June 21, 2018

Contents: This release focuses on bug fixes and making integration easier for application developers. Contents of this release are described in detail in the Android 4.6.0 Release Notes.


iOS SDK: 6.0.0

Release Date: June 27, 2018

Contents: This major release includes additional Screen Manager components, and also hides Transport, Protocol and Proxy layers by making them private. Contents of this release are described in detail in the the iOS 6.0.0 Release Notes.


Android SDK: 4.7.0

Release Date: October 19, 2018

Contents: Release information can be found here.


iOS SDK: 6.1.0

Release Date: October 19, 2018

Contents: Release information can be found here.


SDL Protocol: 5.1.0

Release Date: October 19, 2018

Contents: Release information can be found here.


SDL RPC Spec: 5.0.0

Release Date: October 19, 2018

Contents: Release information can be found here.


Core: 5.0.0

Release Date: October 19, 2018

Contents: Release information can be found here.


Manticore: 1.4.0

Expected Release Date: November 16, 2018

Contents: Include enhancements and update to the latest version of Core.


sdl_evolution's People

Contributors

agaliuzov avatar asm09fsu avatar atiwari9 avatar bilal-alsharifi avatar brandon-salahat-tm avatar brandonhe avatar brettywhite avatar dboltovskyi avatar dportis avatar drewd avatar getmanetsirina avatar jack-byrne avatar jacobkeeler avatar joeljfischer avatar joeygrover avatar jordynmackool avatar khrystynadubovyk avatar kshala-ford avatar luxoftakutsan avatar mrapitis avatar nicoleyarroch avatar pelsila avatar robinmk avatar shiniwat avatar shoamano83 avatar theresalech avatar toyota-sbetts avatar tpulatha avatar tvkanters avatar yang1070 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.