SlideShare a Scribd company logo
1 of 40
EFL 오픈소스 커미터 / 구글
16살 된 EFL은
어떻게 관리하고 배포할까?
서주영
2015년 10월 28일
발표자 소개
서주영
•EFL/Enlightenment 오픈소스 커미터
•EFL 안정 버전 배포/관리
•구글 유튜브
세월과 함께 한 EFL
EFL 최신 버전
•현재 최신 개발 버전: 1.16.0 beta3
•현재 최신 안정 버전: 1.15.2
최초 EFL 배포 정책
•수시 배포(Rolling Release)
수시 배포의 장단점
•장점
•배포를 신경 쓸 필요가 없다.
•개발 속도를 높일 수 있다.
•항상 최신 버전을 사용할 수 있다.
•단점
•안정화 하기 어렵다.
•완성된 API를 만들기 어렵다.
EFL 1.0은 언제 나왔을까?
EFL 1.0은 언제 나왔을까?
EFL 1.0은 언제 나왔을까?
•2011/01/29
•1.0
•Eina, Evas, Ecore, Embryo, Edje, E_Dbus, Efreet,
Eeze
•Eet(1.4)
그 동안 뭐한 거지?
•애초에 배포에 관심이 없었음
•배포 관리를 하지 않음
드디어 1.0 버전 배포
•관심이 없어 늦어진 배포
•고정된 API가 필요했던 삼성의 압박
•전체 API 리뷰 등 쉽지 않은 작업 동반
1.0 이후, 기능에 따라 배포
•큰 기능, 원하는 기능이 구현되면 배포
•장점
•원하는 기능을 마음 편히 구현
•충분한 테스트 시간
•단점
•배포가 늘어지게 됨
•어느 시점에 어떤 버전을 사용하게 될지 모름
•배포하는데 큰 관심을 가지지 않게 됨
1.7 버전 배포
•2012/08/30
•1.7 버전으로 천하통일
•Eina, Evas, Ecore, Embryo, Edje, E_Dbus,
Efreet, Eeze, Elementary, …
1.7 버전 배포 이후
•SVN -> GIT
•흩어져 있던 EFL 라이브러리 통합
•efl
•elementary
•evas_generic_loaders
•emotion_generic_players
1.8 버전 배포
•2013/12/01
•1.7 버전 이후 1년이 넘는 개발 기간
1.9 부터 주기적으로 배포
•2014/02/26
•12주(3개월) 주기
1.9 부터 주기적으로 배포
•장점
•배포가 어느 정도 예측이 가능함
•안정화하는 시간을 정해놓고 가짐
•단점
•원하는 버전에 특정 기능을 배포 하기 위해 마음이 급해
짐
•배포 일정을 정확하게 예측하지는 못함
1.15 부터 정해진 날에 배포
•1.15: 2015년 8월 첫 번째 월요일
•1.16: 2015년 11월 첫 번째 월요일
•1.17: 2016년 2월 첫 번째 월요일
•1.18: 2016년 5월 첫 번째 월요일
•1.19: 2016년 8월 첫 번째 월요일
1.15 부터 정해진 날에 배포
•1.15: 2015년 8월 첫 번째 월요일
•1.16: 2015년 11월 첫 번째 월요일
•1.17: 2016년 2월 첫 번째 월요일
•1.18: 2016년 5월 첫 번째 월요일
•1.19: 2016년 8월 첫 번째 월요일
•1.20: ???
1.15 부터 정해진 날에 배포
•장점
•배포하는 날짜를 정확히/쉽게 예측 가능함.
•단점
•???
메이저 버전 관리 및 배포
메이저 버전 관리 및 배포
개발 안정화
알파/
베타
배포
메이저 버전 관리 및 배포
평소엔 열심히
닥치고 코딩
개발 안정화
알파/
베타
배포
메이저 버전 관리 및 배포
Weekly news from the automated build and
QA front
개발 안정화
알파/
베타
배포
메이저 버전 관리 및 배포
Phabricator Maniphest
개발 안정화
알파/
베타
배포
메이저 버전 관리 및 배포
1.16 release cycle schedule proposal
개발 안정화
알파/
베타
배포
메이저 버전 관리 및 배포
•개발 시기가 끝나면 안정화
•master 브랜치가 안정 모드로 전환
•Reminder about soon ending merge
window for 1.16 (October 5th noon UTC)
개발 안정화
알파/
베타
배포
메이저 버전 관리 및 배포
EFL + Elementary
ABI report v1.16.0 alpha1
개발 안정화
알파/
베타
배포
메이저 버전 관리 및 배포
•알파 -> 베타
•Input for the 1.16 announcement
•Work items for 1.16
개발 안정화
알파/
베타
배포
메이저 버전 관리 및 배포
•최종 버전 배포
•master 브랜치는 다시 개발 모드로
•안정 버전 브랜치 생성
개발 안정화
알파/
베타
배포
Python EFL 배포
•EFL 배포 직후 Python EFL도 배포
•Davide Andreoli
안정 버전 관리 및 배포
•언제 배포하는가?
•개발 버전에 추가되는 커밋 중 버그 수정 커밋을 안정 버
전 브랜치에 지속적으로 반영
•어느 정도 버그 수정 커밋이 쌓이거나 아주 중요한 버그
가 수정된 경우 안정 버전 배포
안정 버전 관리 및 배포
•일주일쯤 전 공지
•하루 전 tarball 배포
•안정 버전 공식 배포
Q. 개발 버전에 추가되는
버그 수정 커밋 찾기
•개발 버전에 추가되는 커밋 중 버그 수정 커밋을
안정 버전 브랜치에 지속적으로 반영
•@fix: 버그 수정
•@feature: 기능 추가
Q. 안정화 기간 중에도
계속 신규 기능을 개발하고 싶다면?
• 개인 로컬 브랜치에서 작업
• 필요한 경우 공식적으로 다음 버전 임시 브랜
치를 생성해 공동 작업
Q. 안정화 기간 직전에
신규 API 추가하기
•가급적 하지 마라
질문&답변
요약
•어느 정도 예측 가능하게 주기적으로 배포
•안정화 시간을 충분히 가짐
•git 사용
오픈소스에 참여하세요!
감사합니다!

More Related Content

Viewers also liked

TMC Hugues Sweeney CoPro Interview French Version
TMC Hugues Sweeney CoPro Interview French VersionTMC Hugues Sweeney CoPro Interview French Version
TMC Hugues Sweeney CoPro Interview French VersionTMC Resource Kit
 
Civica power point
Civica power pointCivica power point
Civica power pointadeasc
 
STROKE ISQUEMICO Y HEMATOMA INTRAPARENQUIMATOSO- RUBER RODRIGUEZ
STROKE ISQUEMICO Y HEMATOMA INTRAPARENQUIMATOSO- RUBER RODRIGUEZ STROKE ISQUEMICO Y HEMATOMA INTRAPARENQUIMATOSO- RUBER RODRIGUEZ
STROKE ISQUEMICO Y HEMATOMA INTRAPARENQUIMATOSO- RUBER RODRIGUEZ Ruber Rodríguez D.
 
Apache Tajo - BWC 2014
Apache Tajo - BWC 2014Apache Tajo - BWC 2014
Apache Tajo - BWC 2014Gruter
 
실무로 배우는 시스템 성능 최적화 - 4부. 프로세스 이해하기
실무로 배우는 시스템 성능 최적화 - 4부. 프로세스 이해하기실무로 배우는 시스템 성능 최적화 - 4부. 프로세스 이해하기
실무로 배우는 시스템 성능 최적화 - 4부. 프로세스 이해하기Minchul Jung
 
インターネットの仕組み
インターネットの仕組みインターネットの仕組み
インターネットの仕組みTakeru Muroya
 
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전Daniel Juyung Seo
 
OKKY_송년회_발표자료
OKKY_송년회_발표자료OKKY_송년회_발표자료
OKKY_송년회_발표자료Dexter Jung
 
[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력Daniel Juyung Seo
 
[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어Daniel Juyung Seo
 
7가지 동시성 모델 4장
7가지 동시성 모델 4장7가지 동시성 모델 4장
7가지 동시성 모델 4장HyeonSeok Choi
 
reproducción sexual Meiosis
 reproducción sexual Meiosis  reproducción sexual Meiosis
reproducción sexual Meiosis Ale Jaky
 
2016 화장품 미세 플라스틱 간담회_한국해양과학기술원
2016 화장품 미세 플라스틱 간담회_한국해양과학기술원2016 화장품 미세 플라스틱 간담회_한국해양과학기술원
2016 화장품 미세 플라스틱 간담회_한국해양과학기술원여성환경연대
 

Viewers also liked (14)

TMC Hugues Sweeney CoPro Interview French Version
TMC Hugues Sweeney CoPro Interview French VersionTMC Hugues Sweeney CoPro Interview French Version
TMC Hugues Sweeney CoPro Interview French Version
 
Civica power point
Civica power pointCivica power point
Civica power point
 
STROKE ISQUEMICO Y HEMATOMA INTRAPARENQUIMATOSO- RUBER RODRIGUEZ
STROKE ISQUEMICO Y HEMATOMA INTRAPARENQUIMATOSO- RUBER RODRIGUEZ STROKE ISQUEMICO Y HEMATOMA INTRAPARENQUIMATOSO- RUBER RODRIGUEZ
STROKE ISQUEMICO Y HEMATOMA INTRAPARENQUIMATOSO- RUBER RODRIGUEZ
 
Apache Tajo - BWC 2014
Apache Tajo - BWC 2014Apache Tajo - BWC 2014
Apache Tajo - BWC 2014
 
실무로 배우는 시스템 성능 최적화 - 4부. 프로세스 이해하기
실무로 배우는 시스템 성능 최적화 - 4부. 프로세스 이해하기실무로 배우는 시스템 성능 최적화 - 4부. 프로세스 이해하기
실무로 배우는 시스템 성능 최적화 - 4부. 프로세스 이해하기
 
インターネットの仕組み
インターネットの仕組みインターネットの仕組み
インターネットの仕組み
 
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
 
OKKY_송년회_발표자료
OKKY_송년회_발표자료OKKY_송년회_발표자료
OKKY_송년회_발표자료
 
[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력
 
[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어
 
7가지 동시성 모델 4장
7가지 동시성 모델 4장7가지 동시성 모델 4장
7가지 동시성 모델 4장
 
reproducción sexual Meiosis
 reproducción sexual Meiosis  reproducción sexual Meiosis
reproducción sexual Meiosis
 
Presentation day4 oracle12c
Presentation day4 oracle12cPresentation day4 oracle12c
Presentation day4 oracle12c
 
2016 화장품 미세 플라스틱 간담회_한국해양과학기술원
2016 화장품 미세 플라스틱 간담회_한국해양과학기술원2016 화장품 미세 플라스틱 간담회_한국해양과학기술원
2016 화장품 미세 플라스틱 간담회_한국해양과학기술원
 

More from Daniel Juyung Seo

오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰Daniel Juyung Seo
 
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 [위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 Daniel Juyung Seo
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기Daniel Juyung Seo
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발Daniel Juyung Seo
 
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)Daniel Juyung Seo
 
Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Daniel Juyung Seo
 
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014Daniel Juyung Seo
 
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Daniel Juyung Seo
 
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)Daniel Juyung Seo
 
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Daniel Juyung Seo
 
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)Daniel Juyung Seo
 
오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼Daniel Juyung Seo
 
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹Daniel Juyung Seo
 
Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)
Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)
Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)Daniel Juyung Seo
 
EFL Open Source Community & How to Contribute
EFL Open Source Community & How to ContributeEFL Open Source Community & How to Contribute
EFL Open Source Community & How to ContributeDaniel Juyung Seo
 
EFL 오픈소스 활용 사례
EFL 오픈소스 활용 사례EFL 오픈소스 활용 사례
EFL 오픈소스 활용 사례Daniel Juyung Seo
 
오픈소스 개발자로 살아가기
오픈소스 개발자로 살아가기오픈소스 개발자로 살아가기
오픈소스 개발자로 살아가기Daniel Juyung Seo
 
EFL 툴킷으로 화려하면서도 가볍고 빠른 앱 만들기
EFL 툴킷으로 화려하면서도 가볍고 빠른 앱 만들기EFL 툴킷으로 화려하면서도 가볍고 빠른 앱 만들기
EFL 툴킷으로 화려하면서도 가볍고 빠른 앱 만들기Daniel Juyung Seo
 

More from Daniel Juyung Seo (18)

오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰
 
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 [위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
 
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
 
Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)
 
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
 
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
 
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
 
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
 
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
 
오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼
 
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
 
Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)
Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)
Improving Cross Desktop Standard by Cedric BAIL (GNOME Asia Summit 2013)
 
EFL Open Source Community & How to Contribute
EFL Open Source Community & How to ContributeEFL Open Source Community & How to Contribute
EFL Open Source Community & How to Contribute
 
EFL 오픈소스 활용 사례
EFL 오픈소스 활용 사례EFL 오픈소스 활용 사례
EFL 오픈소스 활용 사례
 
오픈소스 개발자로 살아가기
오픈소스 개발자로 살아가기오픈소스 개발자로 살아가기
오픈소스 개발자로 살아가기
 
EFL 툴킷으로 화려하면서도 가볍고 빠른 앱 만들기
EFL 툴킷으로 화려하면서도 가볍고 빠른 앱 만들기EFL 툴킷으로 화려하면서도 가볍고 빠른 앱 만들기
EFL 툴킷으로 화려하면서도 가볍고 빠른 앱 만들기
 

[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포할까

  • 1. EFL 오픈소스 커미터 / 구글 16살 된 EFL은 어떻게 관리하고 배포할까? 서주영 2015년 10월 28일
  • 2. 발표자 소개 서주영 •EFL/Enlightenment 오픈소스 커미터 •EFL 안정 버전 배포/관리 •구글 유튜브
  • 4. EFL 최신 버전 •현재 최신 개발 버전: 1.16.0 beta3 •현재 최신 안정 버전: 1.15.2
  • 5. 최초 EFL 배포 정책 •수시 배포(Rolling Release)
  • 6. 수시 배포의 장단점 •장점 •배포를 신경 쓸 필요가 없다. •개발 속도를 높일 수 있다. •항상 최신 버전을 사용할 수 있다. •단점 •안정화 하기 어렵다. •완성된 API를 만들기 어렵다.
  • 7. EFL 1.0은 언제 나왔을까?
  • 8. EFL 1.0은 언제 나왔을까?
  • 9. EFL 1.0은 언제 나왔을까? •2011/01/29 •1.0 •Eina, Evas, Ecore, Embryo, Edje, E_Dbus, Efreet, Eeze •Eet(1.4)
  • 10. 그 동안 뭐한 거지? •애초에 배포에 관심이 없었음 •배포 관리를 하지 않음
  • 11. 드디어 1.0 버전 배포 •관심이 없어 늦어진 배포 •고정된 API가 필요했던 삼성의 압박 •전체 API 리뷰 등 쉽지 않은 작업 동반
  • 12. 1.0 이후, 기능에 따라 배포 •큰 기능, 원하는 기능이 구현되면 배포 •장점 •원하는 기능을 마음 편히 구현 •충분한 테스트 시간 •단점 •배포가 늘어지게 됨 •어느 시점에 어떤 버전을 사용하게 될지 모름 •배포하는데 큰 관심을 가지지 않게 됨
  • 13. 1.7 버전 배포 •2012/08/30 •1.7 버전으로 천하통일 •Eina, Evas, Ecore, Embryo, Edje, E_Dbus, Efreet, Eeze, Elementary, …
  • 14. 1.7 버전 배포 이후 •SVN -> GIT •흩어져 있던 EFL 라이브러리 통합 •efl •elementary •evas_generic_loaders •emotion_generic_players
  • 15. 1.8 버전 배포 •2013/12/01 •1.7 버전 이후 1년이 넘는 개발 기간
  • 16. 1.9 부터 주기적으로 배포 •2014/02/26 •12주(3개월) 주기
  • 17. 1.9 부터 주기적으로 배포 •장점 •배포가 어느 정도 예측이 가능함 •안정화하는 시간을 정해놓고 가짐 •단점 •원하는 버전에 특정 기능을 배포 하기 위해 마음이 급해 짐 •배포 일정을 정확하게 예측하지는 못함
  • 18. 1.15 부터 정해진 날에 배포 •1.15: 2015년 8월 첫 번째 월요일 •1.16: 2015년 11월 첫 번째 월요일 •1.17: 2016년 2월 첫 번째 월요일 •1.18: 2016년 5월 첫 번째 월요일 •1.19: 2016년 8월 첫 번째 월요일
  • 19. 1.15 부터 정해진 날에 배포 •1.15: 2015년 8월 첫 번째 월요일 •1.16: 2015년 11월 첫 번째 월요일 •1.17: 2016년 2월 첫 번째 월요일 •1.18: 2016년 5월 첫 번째 월요일 •1.19: 2016년 8월 첫 번째 월요일 •1.20: ???
  • 20. 1.15 부터 정해진 날에 배포 •장점 •배포하는 날짜를 정확히/쉽게 예측 가능함. •단점 •???
  • 22. 메이저 버전 관리 및 배포 개발 안정화 알파/ 베타 배포
  • 23. 메이저 버전 관리 및 배포 평소엔 열심히 닥치고 코딩 개발 안정화 알파/ 베타 배포
  • 24. 메이저 버전 관리 및 배포 Weekly news from the automated build and QA front 개발 안정화 알파/ 베타 배포
  • 25. 메이저 버전 관리 및 배포 Phabricator Maniphest 개발 안정화 알파/ 베타 배포
  • 26. 메이저 버전 관리 및 배포 1.16 release cycle schedule proposal 개발 안정화 알파/ 베타 배포
  • 27. 메이저 버전 관리 및 배포 •개발 시기가 끝나면 안정화 •master 브랜치가 안정 모드로 전환 •Reminder about soon ending merge window for 1.16 (October 5th noon UTC) 개발 안정화 알파/ 베타 배포
  • 28. 메이저 버전 관리 및 배포 EFL + Elementary ABI report v1.16.0 alpha1 개발 안정화 알파/ 베타 배포
  • 29. 메이저 버전 관리 및 배포 •알파 -> 베타 •Input for the 1.16 announcement •Work items for 1.16 개발 안정화 알파/ 베타 배포
  • 30. 메이저 버전 관리 및 배포 •최종 버전 배포 •master 브랜치는 다시 개발 모드로 •안정 버전 브랜치 생성 개발 안정화 알파/ 베타 배포
  • 31. Python EFL 배포 •EFL 배포 직후 Python EFL도 배포 •Davide Andreoli
  • 32. 안정 버전 관리 및 배포 •언제 배포하는가? •개발 버전에 추가되는 커밋 중 버그 수정 커밋을 안정 버 전 브랜치에 지속적으로 반영 •어느 정도 버그 수정 커밋이 쌓이거나 아주 중요한 버그 가 수정된 경우 안정 버전 배포
  • 33. 안정 버전 관리 및 배포 •일주일쯤 전 공지 •하루 전 tarball 배포 •안정 버전 공식 배포
  • 34. Q. 개발 버전에 추가되는 버그 수정 커밋 찾기 •개발 버전에 추가되는 커밋 중 버그 수정 커밋을 안정 버전 브랜치에 지속적으로 반영 •@fix: 버그 수정 •@feature: 기능 추가
  • 35. Q. 안정화 기간 중에도 계속 신규 기능을 개발하고 싶다면? • 개인 로컬 브랜치에서 작업 • 필요한 경우 공식적으로 다음 버전 임시 브랜 치를 생성해 공동 작업
  • 36. Q. 안정화 기간 직전에 신규 API 추가하기 •가급적 하지 마라
  • 38. 요약 •어느 정도 예측 가능하게 주기적으로 배포 •안정화 시간을 충분히 가짐 •git 사용