Buy me a coffeeBuy me a coffee

2020년 5월 15일에 Spring Boot 2.3.0 이 출시되었다고 함.

https://spring.io/blog/2020/05/15/spring-boot-2-3-0-available-now 

 

바뀐점은 다음과 같음

의존성 관련 버전 업그레이드 

  • Spring Data Neumann
  • Spring HATEOAS 1.1
  • Spring Integration 5.3
  • Spring Kafka 2.5
  • Spring Security 5.3
  • Spring Session Dragonfruit

그리고, 서드파티 라이브러리도 의존성관련으로 업그레이드가 됨

  • Cassandra Driver 4.6
  • Couchbase Client 3.0
  • Elasticsearch 7.6
  • Kafka 2.5
  • Micrometer 1.5
  • MongoDB 4.0

Java 14 지원

Docker 지원

Graceful shutdown (우아한 닫기) 지원

Liveness and readiness probes, Spring Data Neuman, 등등 여러가지 추가 및 변경사항 생김을 확인,

 

Spring boot 2.3.0에 대한 문서는 아래를 참조하여 확인하면 될것 같음.

https://docs.spring.io/spring-boot/docs/2.3.0.RELEASE/reference/html/index.html

 

Spring Boot Reference Documentation

The reference documentation consists of the following sections: Legal Legal information. Documentation Overview About the Documentation, Getting Help, First Steps, and more. Getting Started Introducing Spring Boot, System Requirements, Servlet Containers,

docs.spring.io

 

ps. 오래간만에 본업에 관련한 글을 올림. 

ps2. 참고할만한 Spring 관련 Git프로젝트

https://github.com/spring-io/sagan

 

spring-io/sagan

The spring.io site and reference application. Contribute to spring-io/sagan development by creating an account on GitHub.

github.com

ps3. Spring Boot 2.3출시 정보와 Spring Boot 2.2에서 2.3으로 이전할때 가이드

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.3-Release-Notes#upgrading-from-spring-boot-22

 

spring-projects/spring-boot

Spring Boot. Contribute to spring-projects/spring-boot development by creating an account on GitHub.

github.com

ps4. Spring boot에 Jasypt 통합 라이브러리 

https://github.com/ulisesbocchio/jasypt-spring-boot

 

ulisesbocchio/jasypt-spring-boot

Jasypt integration for Spring boot. Contribute to ulisesbocchio/jasypt-spring-boot development by creating an account on GitHub.

github.com

Spring boot2.3으로 올릴때 버전 업하면 변경해야하는 사항을 여기서 확인해야함 

Buy me a coffeeBuy me a coffee

2020년 3월 16일/3월 23일자 타임지 합본호(Double issue)에서는 1920년부터 2019년까지 한 세기동안 세계에 영향을 미치고 많은 활약을 한 여성 지도자, 혁신가, 활동가, 창업가, 운동선수 및 예술가 100인을 선정하였습니다.
100 Women of the Year
The leaders, innovators, activists, entertainers, athletes and artists who defined a century
1920년 — The Suffragists
1921년 — Emmy Noether
1922년 — Xiang Jingyu
1923년 — Bessie Smith
1924년 — Coco Chanel
1925년 — Margaret Sanger
1926년 — Aimee Semple McPherson
1927년 — Queen Soraya Tarzi
1928년 — Anna May Wong
1929년 — Virginia Woolf
1930년 — Martha Graham
1931년 — Maria Montessori
1932년 — Babe Didrikson
1933년 — Frances Perkins
1934년 — Mary McLeod Bethune
1935년 — Amelia Earhart
1936년 — Wallis Simpson
1937년 — Soong Mei-ling
1938년 — Frida Kahlo
1939년 — Billie Holiday
1940년 — Dorothea Lange
1941년 — Jane Fawcett and the Codebreakers
1942년 — The Resisters
1943년 — Virginia Hall
1944년 — Recy Taylor
1945년 — Chien-Shiung Wu
1946년 — Eva Perón
1947년 — Amrit Kaur
1948년 — Eleanor Roosevelt
1949년 — Simone de Beauvoir
1950년 — Margaret Chase Smith
1951년 — Lucille Ball
1952년 — Queen Elizabeth II
1953년 — Rosalind Franklin
1954년 — Marilyn Monroe
1955년 — The Bus Riders
1956년 — Golda Meir
1957년 — Irna Phillips
1958년 — China Machado
1959년 — Grace Hopper
1960년 — The Mirabal Sisters
1961년 — Rita Moreno
1962년 — Jacqueline Kennedy
1963년 — Rachel Carson
1964년 — Barbara Gittings
1965년 — Dolores Huerta
1966년 — Stephanie Kwolek
1967년 — Zenzile Miriam Makeba
1968년 — Aretha Franklin
1969년 — Marsha P. Johnson
1970년 — Gloria Steinem
1971년 — Angela Davis
1972년 — Patsy Takemoto Mink
1973년 — Jane Roe
1974년 — Lindy Boggs
1975년 — American Women
1976년 — Indira Gandhi
1977년 — Judith Heumann
1978년 — Lesley Brown
1979년 — Tu Youyou
1980년 — Anna Walentynowicz
1981년 — Nawal El Saadawi
1982년 — Margaret Thatcher
1983년 — Françoise Barré-Sinoussi
1984년 — bell hooks
1985년 — Wilma Mankiller
1986년 — Corazon Aquino
1987년 — Diana, Princess of Wales
1988년 — Florence Griffith Joyner
1989년 — Madonna
1990년 — Aung San Suu Kyi
1991년 — Anita Hill
1992년 — Sinead O’Connor
1993년 — Toni Morrison
1994년 — Joycelyn Elders
1995년 — Sadako Ogata
1996년 — Ruth Bader Ginsburg
1997년 — Ellen DeGeneres
1998년 — J.K. Rowling
1999년 — Madeleine Albright
2000년 — Sandra Day O’Connor
2001년 — Wangari Maathai
2002년 — The Whistleblowers
2003년 — Serena Williams
2004년 — Oprah Winfrey
2005년 — The Good Samaritans
2006년 — Ellen Johnson Sirleaf
2007년 — Lilly Ledbetter
2008년 — Michelle Obama
2009년 — Malala Yousafzai
2010년 — Nancy Pelosi
2011년 — Tawakkol Karman
2012년 — Pussy Riot
2013년 — Patrisse Cullors, Alicia Garza and Opal Tometi
2014년 — Beyoncé Knowles-Carter
2015년 — Angela Merkel
2016년 — Hillary Rodham Clinton
2017년 — The Silence Breakers
2018년 — The Guardians
2019년 — Greta Thunberg

제가 모르는 분들이 많이 보이는군요. 그리고 타임지가 미국 중심이라, 많은 활동을 한 한국 여성분들은 선정이 안되었네요. 국제적으로 영향을 미친 중국 여성들이 많이 나오긴 하였습니다만…

Buy me a coffeeBuy me a coffee

실용서를 집필하는 데 필요한 10가지 핵심능력

1. 전문 지식(전문 용어)
2. 지식을 효과적으로 제공하는 구성
3. 이해를 쏙쏙 돕는 문장력
4. 난생처음 10쪽을 넘는 긴 글을 쓰는 인내력
5. 독자를 생각하는 좋은 마음
6. 편집자와의 원활한 커뮤니케이션
7. 투자 대비 효과는 안나오지만 슬퍼하지 않을 의지
8. 끝없는 단순 반복 작업
9. 끝없는 독자 질문에 대응하기
10. 끈질긴 마케팅

출처: “출판사가 OK하는 책쓰기” - 한빛미디어, 최현우 지음

Buy me a coffeeBuy me a coffee

일본 모리사와(Morisawa)직원이 작성한 "문자 코드는 무엇인가?"[ 文字コード is なに? What is a character code? ] 슬라이드

Buy me a coffeeBuy me a coffee

디지털오션(Digital Ocean)에서 주최한 2019년 핵토버페스트(Hacktoberfest, 10월동안 Github에서 4개 이상의 PR를 올리면 티셔츠와 스티커를 증정하는 행사)에 참여해보았습니다.

여태동안, 이 행사가 존재함은 알고 있었으나 바쁘다는 핑계로 참여를 안했습니다. 그러나, 2019년, 리브레오피스 회원자격(LibreOffice Membership)이 있고, 리브레오피스 우리말 모듬(LibreOffice Korean Team)에 활동하게 되니, 자유 공개 원천 소프트웨어(자유 오픈소스 소프트웨어, FLOSS)활동을 열심히 해야겠다는 의지로 2019년도 핵토버페스트(Hacktoberfest)에 참여하였습니다.


참여가 끝난후, 행사 주최하는 곳에서 Github에 올라온 PR(풀-리퀘스트, Pull-Request)를 심사하였습니다. 심사 완료후, 티셔츠를 받을 주소를 달라고 해서 집 주소를 입력하였습니다.

2019년 연말에 그동안 바빠서 정신이 없어서 티셔츠 생각을 미쳐 못하다, 2020년 1월 6일에 드디어 티셔츠가 담긴 소포를 받았습니다.

저는 2019년 핵토버페스트(Hacktoberfest) 참여하여, 해가 지난 1월초에 드디어 티셔츠와 스티커를 받았습니다.

미국에서 출발, 독일 경유로 한국에 온 Hacktoberfest 티셔츠 소포
소포안에는 티셔츠와 스티커가 동봉되었음.



올해인 2020년 핵토버페스트(Hacktoberfest)에서는 저뿐만 아니라 커뮤니티에 관심많은 꿈나무들에게 오픈소스 활동 어떻게 할 지 알려주고 싶네요.

Buy me a coffeeBuy me a coffee

오랜만에, Mac 업그레이드 후에 처음으로 MacOSX 10.15 Catalina 에서 LibreOffice(리브레오피스) 빌드를 진행하였습니다.

LibreOffice(리브레오피스) 빌드는 문서 재단의 위키 링크 Building LibreOffice on macOS를 보며 따라하였습니다.

빌드를 진행하다 보니, 아래의 오류로 빌드 진행이 안되는 것을 확인하였습니다.

In file included from /Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.7/Headers/Python.h:139:
/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.7/Headers/pythonrun.h:142:5: error: 'TAPI' is not defined, evaluates to 0 [-Werror,-Wundef]
#if TAPI
    ^
[AIN] ooo_images
1 error generated.
/Users/****/dev/lode/dev/core/solenv/gbuild/LinkTarget.mk:239: recipe for target '/Users/****/dev/lode/dev/core/workdir/CObject/pyuno/source/module/pyuno_dlopenwrapper.o' failed
make[1]: *** [/Users/****/dev/lode/dev/core/workdir/CObject/pyuno/source/module/pyuno_dlopenwrapper.o] Error 1
make[1]: *** Waiting for unfinished jobs....
Makefile:282: recipe for target 'build' failed
make: *** [build] Error 2

해당 내용에서는 C언어 매크로 TAPI가 정의 안되어서 빌드 에러가 난다는 이야기가 나왔습니다.

해당 내용에 대하여 IRC의 #libreoffice-dev채널에 문의를 하였습니다.

9:28 PM I have a question about build on MacOSX (Catalina 10.15.2)
9:28 PM I get a LibreOffice source from git repository. and try to build, then failed.
9:29 PM message is In file included from ***/dev/core/pyuno/source/module/pyuno_dlopenwrapper.c:22:
9:29 PM In file included from /Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.7/Headers/Python.h:139:
9:29 PM /Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.7/Headers/pythonrun.h:142:5: error: 'TAPI' is not defined, evaluates to 0 [-Werror,-Wundef]
9:30 PM What is "#if TAPI" ? 
9:41 PM <mikekaganski> dhsung_: a coincidence: https://ask.libreoffice.org/en/question/223751
9:44 PM <ycao> https://ask.libreoffice.org/en/question/223751/error-tapi-is-not-defined-evaluates-to-0-werror-wundef-while-building-on-macos/
9:44 PM Any tips?
9:44 PM <_rene_>  yes, the obvious one
9:44 PM (don't build with -Werror)
9:45 PM and this undefined macro is inside python itself which is clear from the error message... (just that LO bundles python if you let it..)
9:45 PM <mikekaganski>  _rene_: the problem is that this looks like our default in LODE
9:46 PM <ycao>  How can I build without `-Werror`
9:46 PM Using `lode`
9:46 PM <_rene_> mikekaganski: yes, it's a problem. anywhere :)
9:46 PM $ ./configure --help | grep -i werror --enable-werror         Turn warnings to errors. (Has no effect in modules
9:47 PM so --disable-werror, of course ;)
9:48 PM <ycao>  So run `./configure --disable-werror` is ok?
9:48 PM <mikekaganski> ycao: essentially, add --disable-werror which _rene_ mentioned to autogen.input in your core directory

문의 결과

./configure --help | grep -i werror --enable-werror         Turn warnings to errors. 

빌드 '에러 error'를 에러 대신 '경고 warning'로 바꾸어서 빌드하라고 하더군요.

이유는 TAPI라는 정의되지 않은 매크로는 파이썬 자체에 있고, 이 매크로를 무시해도 빌드 후에 실행은 되니 '에러 error'로 빌드 안되는 것에 대하여 '에러 error'레벨을 '경고 warning'으로 바꾸어서 빌드 하면 된다고 하군요.

그래서, 저는 아래의 명령어로 빌드 진행을 하였습니다.

이후, 빌드 후 확인

****@**** core % ./autogen.sh --with-locales="ko"  --with-vendor="DaeHyun Sung, TDF Member"  --disable-werror           
********************************************************************
*
*   Using commandline arguments and ignoring autogen.input!
*
********************************************************************
Running ./configure with '--with-locales=ko --with-vendor=DaeHyun Sung, TDF Member --disable-werror --srcdir=/Users/sungdaehyun/dev/lode/dev/core --enable-option-checking=fatal'
********************************************************************
*
*   Running LibreOffice build configuration.
*
********************************************************************
To build, run:
/Users/****/lode/opt/bin/make

To view some help, run:
/Users/****/lode/opt/bin/make help

After the build of LibreOffice has finished successfully, you can immediately run LibreOffice using the command:
open instdir/LibreOfficeDev.app

If you want to run the smoketest, run:
/Users/****/lode/opt/bin/make check

****@**** core % make build-nocheck
make -j 4  -rs -f /Users/****/lode/dev/core/Makefile.gbuild  build  
[PAT] boost
[DEP] LNK:Library/libuno_salhelpergcc3.dylib.3
[LNK] Library/libuno_salhelpergcc3.dylib.3
[UPK] libgpg-error-1.27.tar.bz2
[PAT] icu
[PAT] nss
[PAT] liblangtag
[DEP] LNK:Executable/bestreversemap
[LNK] Executable/bestreversemap
[PAT] libjpeg-turbo
[PAT] lcms2

(생략)


[BIN] extras
[MOD] extras
[MOD] libreoffice
[BIN] top level modules: libreoffice
[ALL] top level modules: build-non-l10n-only build-l10n-only

빌드 완료 후 실행

****@**** core % open instdir/LibreOfficeDev.app

실행 후 화면

Buy me a coffeeBuy me a coffee

GNOME 프로젝트의 어떤 파일 빌드 중

/home/dhsung/Projects/gnome-hello/configure: line 11964: syntax error near unexpected token `maximum'
/home/dhsung/Projects/gnome-hello/configure: line 11964: `GNOME_COMPILE_WARNINGS(maximum)'

위의 메세지를 띄우며 빌드가 안될때 해결책.
'gnome-common'라이브러리( Common Files to Build GNOME )이 없어서 나오는 문제.

그래서 아래와 같이 'gnome-common'라이브러리를 설치해면 해결됨.

openSUESE에서
sudo zypper install gnome-common

Ubuntu에서
sudo apt install gnome-common

위의 패키지 설치가 끝나면 해결됨.

출처: GNOME_COMPILE_WARNINGS(maximum) – Syntax Error in configure

Buy me a coffeeBuy me a coffee

2019년 7월 27일 토요일 밤.

2014년도 초반에 구입한 맥북프로(MacBook Pro) 2013 late의 배터리 교체를 진행하였습니다.

저의 맥북프로 배터리 교체는 Youtube에 공개된 영상을 참고로 교체를 진행하였습니다.

쇼핑몰 사이트에서 맥북프로 13맥북프로(MacBookPro) 13인치(2013 late)를 구매하였습니다

구매한 MacBookPro 13인치 2013 late모델의 배터리

 

구매한 배터리를 사용하는 맥북프로(MacBookPro) 13인치 2013 late모델에 교체를 할수 있게 뒤의 기판을 열어봅니다.

 

맥북프로 하단 기판을 열어보니, 어머나, 배터리가 엄청 많이 부풀어올랐군요. 생각보다 많이 부풀어 올라서 계속 나두었으면 큰일날뻔 한 생각이 들었습니다.

5년이상 사용하여 부풀어 오른 맥북프로의 배터리 

Youtube동영상에 나온대로, 맥북프로에 붙어 있는 부풀어오른 배터리의 접착된 부분을 끌을 이용하여 떼어냅니다.

다만, 중간 부분은 터치패드 회로가 있는 부분이기 때문에 아주 조심히 떼어내야합니다.

 

배터리를 떼어내었으면, 새로운 배터리를 부착합니다.

맥북프로에 부풀어오른 배터리를 떼어낸후, 새로운 배터리로 교체한 모습
부풀어올라 떼어난 배터리와 맥북프로에 새로 교체하여 탑재된 배터리의 비교 

배터리를 교체한후, 혹시나 배터리가 이상이 있을지 모르니 켜봅니다. 정상적으로 켜졌으면 문제 없이 배터리가 교체된것입니다.

맥북프로를 켜고 난 후에 이상없는지 확인하면, 기판을 덮어 원상 복구를 합니다.

 

 

2014년초에 구입한 저의 맥북프로는 이번 2019년 7월 27일 토요일에 배터리를 교체하여 새로이 생명연장을 하였습니다.

2019년 7월 29일 토요일 밤의 맥북프로 배터리 교체기였습니다.

 

ps. 다음에는 2013년도에 출시되었고, 2014년 8월 일본 도쿄(동경,東京, Tokyo) 긴자(은좌, 銀座)에 위치한 애플스토어(Apple Store)에서 구매한 iPad mini2 의 배터리 교체기를 올리겠습니다.

 

https://button.like.co/studioego

 

Like DaeHyun Sung's work

Reward Creativity, powered by LikeCoin

button.like.co

 

Buy me a coffeeBuy me a coffee

요즘, LibreOffice를 맥북(MacBook Pro)에서 빌드를 계속 하게 됨,

그런데, 디스플레이를 끈 상태에서도 빌드를 계속 해야하는 상황이다. (자기 전에 디스플레이를 꺼야 잠을 잘수 있음.)

디스플레이를 끈다고 해도, 집에 부재한 상태에서 누구든 덮개를 닫는 상황이 있을 수 있음.

디스플레이 덮개를 닫게되면 LibreOffice 빌드중에 중단될 가능성이 높으므로 어쩌지 하다 답을 찾았음.

잠자기 방지 활성 (전원 연결에만 적용됨, 덮개 닫아도 잠자기 방지됨)
sudo pmset -c disablesleep 1

잠자기 방지 비활성 (전원 연결에만 적용됨)
sudo pmset -c disablesleep 0

https://button.like.co/studioego

 

Like DaeHyun Sung's work

Reward Creativity, powered by LikeCoin

button.like.co

 

Buy me a coffeeBuy me a coffee

+ Recent posts