# Discourse Version 2.4

**URL:** https://meta.discourse.org/t/discourse-version-2-4/108194
**Category:** Announcements
**Tags:** release-notes
**Created:** [2월 2, 2019, 7:33오전 UTC](https://meta.discourse.org/t/discourse-version-2-4/108194 "2019-02-02T07:33:19Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2월 2, 2019, 7:33오전 UTC](https://meta.discourse.org/t/discourse-version-2-4/108194/1 "2019-02-02T07:33:19Z")

</div>

### Focus

- ✅[Search existing topics when hyperlinking](https://meta.discourse.org/t/search-existing-topics-when-hyperlinking/112922)

- ✅[Yubikey/U2F Key Support](https://meta.discourse.org/t/yubikey-u2f-key-support/88543)

- ✅ add better theming support for emails

- ✅[Show group opt-in guidance on topics you have no access to](https://meta.discourse.org/t/show-group-opt-in-guidance-on-topics-you-have-no-access-to/110195)

- ✅ improved behavior for merging / splitting, make sure split topics show up properly read, [deal with bumps](https://meta.discourse.org/t/unbump-topics-if-new-post-was-split/65281).

- ✅[Remove hide category from homepage setting, add support for setting historic track / mute / watch when amending site settings](https://meta.discourse.org/t/exclude-category-posts-from-displaying-on-home-page/125035/5)

- ✅ Unique [welcome PM for mods and admins](https://meta.discourse.org/t/send-mods-and-admins-a-different-welcome-pm/110503) @vinothkannans

- ✅[Default tags watching/tracking/muted](https://meta.discourse.org/t/default-tags-watching-tracking-muted/73148) @vinothkannans

- ✅ Automatically expire unused API keys @david

- ✅[Merging tags - Tag Synonyms](https://meta.discourse.org/t/merging-tags-tag-synonyms/81869) @neil

- ✅ Turn _strict_ CSP on by default for all Discourse installs, both old and new, @blake

- ✅ revamped user hamburger UX

- ✅ polls can be expressed as pies, and limited to certain groups, and poll results can be downloaded

### Codename

- ~~[Vinča](https://meta.discourse.org/t/discourse-version-2-3/96690) v2.3~~
- [Cuneiform](https://en.wikipedia.org/wiki/Cuneiform) v2.4 ←

### Start date

June 18th, 2019

### Release date

Feb 25th, 2020

---

<div class="post-metadata">

### Author: ![neil](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/neil/32/102150_2.png) [@neil](https://meta.discourse.org/u/neil)
#### Post date: [2월 26, 2020, 3:25오전 UTC](https://meta.discourse.org/t/discourse-version-2-4/108194/2 "2020-02-26T03:25:45Z")

</div>

## 새로운 기능

- 사용자당 알림 수를 10,000개로 제한
- 검토 가능한 클레임 담당자가 변경될 때 메시지 게시 (#9019)
- 관리자가 재플래그 쿨다운 시간과 TL3+ 사용자가 스팸으로 플래그한 게시물이 자동으로 숨겨지는지 여부 설정 가능 (#9010)
- 로그인/가입 아래 플러그인 아울렛 추가, 모바일에 아울렛 추가
- 사용자 이메일 또는 사용자명 중 하나를 포함한 CSV 업로드 지원 (#8971)
- 사용자가 게시물이 수정되었거나 24시간 이상 전에 검토된 경우를 제외하고는 동일한 이유로 최근에 처리된 항목에 재플래그할 수 없습니다. (#8969)
- 플러그인 아울렛을 꾸미기 위한 새로운 플러그인 API 추가 (#8937)
- 북마크 개선 2부 – 주제 북마크 (#8954)
- defaultRenderTag 함수 내보내기 (#8941)
- 전달된 이메일을 나타내는 작은 액션 게시물 추가
- 최소 우선순위 임계값을 충족하지 못해도 대기 중인 큐에 있는 게시물이 포함됩니다 (#8925)
- 검토 가능한 플래그 게시물 청구 및 청구 해제 시 로깅 추가 (#8920)
- 비디오 캡션 태그/속성 지원 (#8914)
- trust\_level\_growth 리포트 추가 (#8878)
- 원박싱 시 특정 호스트에 대해 사용자 지정 사용자 에이전트를 사용하는 사이트 설정 추가
- 단일 선택지 투표 허용 (#8853)
- 웹 매니페스트의 short\_name이 항상 채워지도록 보장
- SSO 제공자 프로토콜에 로그아웃 기능 추가 (#8816)
- 좋아요에 대한 촉각 피드백 추가
- 의심스러운 사용자를 검토 큐로 이동 (#8811)
- 사용자가 자신의 프로필에 모든 공개 주제를 기능으로 지정할 수 있습니다 (#8809)
- 투표에 ‘그룹’ 옵션 추가 (#8469)
- 관리자가 자동으로 비활성화될 때 로그에 메시지 추가
- 공개 주제와 개인 메시지를 동시에 검색할 수 있도록 허용 (#8784)
- 초대 시 연락처 선택기 API 사용
- 일괄 수여 기능을 사용할 때 기존 배지 소유자 교체 (#8770)
- 게시물 이동, 주제 변환, 카테고리 변경 시 업로드 보안 상태 업데이트 (#8731)
- 컴포저의 비디오 및 오디오에 upload:// 짧은 URL 사용 (#8760)
- 모든 유형의 리포트 내보내기 (#8748)
- 복원 7일 후 “backup” 스키마 삭제
- 이모지가 1~3개만 있는 줄은 이제 큰 이모지로 표시됨
- 카테고리 수준의 프라이버시 및 게시물 기반 액세스 규칙을 허용하는 중복 업로드가 있는 보안 미디어 (#8664)
- 전역 공지에서 종료 기간을 정의할 수 있도록 허용 (#8715)
- 인벤토리 버킷 구성을 비활성화하는 숨겨진 설정 추가
- 배지 일괄 수여 (#8694)
- 사용자 선택기에 제외된 사용자명 전달 (#8695)
- 새로운 배지 API 사용
- 보안 미디어를 비활성화하는 rake 작업 추가 (#8669)
- 기본적으로 csp 활성화 (#8665)
- 라이선스 키를 사용하여 MaxMind DB 다운로드 지원
- 인터넷 익스플로러 비추천 전역 공지 (#8577)
- 모바일에서 주제 관리자 메뉴가 아래에 고정됩니다. (#8620)
- 플러그인이 전역 공지를 추가할 수 있도록 허용 (#8552)
- 번복된 패널티에 대한 TL3 승격 허용
- 플러그인에서 복잡한 게시물 매개변수 허용 (#8598)
- [mybb.ru](http://mybb.ru) 가져오기 스크립트 추가 (#8609)
- 주제 관리자 메뉴를 여는 키보드 단축키 (#8568)
- '카테고리 순서 변경’이 중첩된 카테고리와 함께 작동하도록 함 (#8578)
- 프로필 기능 주제 & 관리자 렌치 리팩터링 모달 (#8545)
- CSP에서 `unsafe-eval`을 완전히 제거
- rake admin:create에서 비밀번호가 일치하지 않을 때 메시지 추가 (#8543)
- 데이터베이스에서 API 키 해싱 (#8438)
- IE 지원 플러그인 생성 (#8520)
- 구성 요소가 추가되었지만 할당되지 않았을 때 경고 (#8482)
- 사용자 프로필 및 카드용 기능 주제 (#8461)
- `X-Frame-Options` 헤더를 제거하는 사이트 설정 추가.
- 태그 동의어
- 웹 훅 게시물 직렬화에 `topic_filtered_posts_count` 속성 추가.
- 모든 활성 구성 요소를 테마에 추가할 수 있는 기능 (#8447)
- CSP에서 `unsafe-eval`을 허용하는 숨겨진 설정 추가
- 새 주제 버튼 옆 플러그인 아울렛 (#8443)
- 개인 메시지에 사용자명 목록 붙여넣기 지원
- 의심스러운 사용자 발견 개선
- 사이트 텍스트 컨트롤러가 페이지와 로케일을 처리하도록 함 (#8408)
- 모든 테마에 구성 요소를 추가할 수 있는 기능 (#8404)
- 그룹 멤버십 요청 알림 통합.
- 사용자당 활성 세션 수 제한 (#8411)
- dmarc 판정 기반으로 수신 이메일에서 게시물 숨김 (#8333)
- 투표 결과용 파이 차트 옵션 (#8352)
- 핵심 user\_options에 시간대 추가 (#8380)
- 검토 큐에 사용자 지정 필터를 적용하기 위한 새로운 API (#8392)
- 투표 내보내기 버튼 추가 (#8370)
- webauthn에 대한 RS256 알고리즘 지원 (#8385)
- 이메일 변경 워크플로우 개선
- 서비스 워커 경로 정규화 (#8359)
- ‘suppress\_from\_latest’ 카테고리 설정 지원 제거. (#8308)
- 기본적으로 screaming frog SEO 스파이더 차단
- IP 기반 기본 애플리케이션 수준 속도 제한 도입
- 보안 미디어 지원 추가 (#7888)
- 날짜 범위별로 검토 가능한 항목 필터링 (#8354)
- 검색을 태그로 범위 지정할 수 있도록 허용 (#8345)
- 카테고리별 새로 닫기 (#8330)
- 새로운 TL2 사용자에게 메시지를 보내고 고급 튜토리얼로 안내 (#8335)
- 인증기가 하나만 있을 때 자동으로 인증기로 리디렉션
- 기본적으로 모든 카테고리를 음소거하도록 지원. (#8295)
- FinalDestination이 특정 호스트에 대해 사용자 지정 사용자 에이전트를 사용할 수 있도록 허용
- 태그가 게시물에 추가될 때 태그 관찰자에게 알림 (#8299)
- JS `eval` 없이 번역 오버라이드 로드
- 관리자 API 키 시스템 전면 개편 (#8284)
- 관리자용 환영 메시지 추가. (#8293)
- 추가 내비게이션 항목에 대한 “init” 메서드 추가
- 로컬 또는 네트워크 전체에서 docker dev 게시 허용
- 라이트박스에서 제목이 없으면 파일명 전에 이미지 alt로 폴백 (#8286)
- 매개변수가 있는 임베드에서 새 주제 버튼 (#8280)
- 사용자 설정의 기본 태그를 위한 새로운 사이트 설정. (#8283)
- 카테고리가 태그 그룹의 태그가 있는 주제를 요구할 수 있음
- 사이트 설정이 변경될 때 모든 사용자의 사용자 설정을 업데이트하는 옵션.
- 메시지와 속삭임에 대해 사용자의 last\_posted\_at 업데이트 중단
- 스테이징된 사용자에게 일괄 초대 보내기 허용
- 수신 이메일의 첨부 파일 제거 및 raw 필드 절단 (#8253)
- 사용자가 기본 그룹을 설정할 수 있도록 하는 사이트 설정/UI (#8244)
- 인식된 스팸 헤더에 SES 스팸 헤더 추가 (#8254)
- 환영 관리자 메시지 - 복사본 추가! (#8246)
- 그룹 개인 메시지에 대한 주제 목록 기억 추가 (#8235)
- 사용자 지정 이메일 스타일에서 SCSS 지원
- 위키 편집자는 위키 주제의 태그를 편집할 수 있습니다.
- 주제 직렬화에 이미지 URL 포함
- 개인 메시지 목록에서 스크롤 위치 기억 (#8212)
- 개인 메시지 목록에서 위치 기억
- 초안 백업을 위한 실험적 숨겨진 설정
- 스태프가 이메일 템플릿 사용자 지정에 topic\_url을 사용할 수 있도록 허용
- 허니팟 및 챌린지 로직 개선
- 사이트 설정이 변경될 때 모든 사용자의 카테고리 설정을 업데이트하는 옵션 (#8180)
- 'nofollow’와 함께 ‘ugc’ rel 속성 사용
- 로그인 페이지 제목에 짧은 사이트 설명 추가
- 컴포저에서 링크 추가 시 주제 검색 (#8178)
- bin/turbo\_rspec의 --fast-fail 지원
- 플러그인에서도 pretenders 로드. (#8173)
- API 키의 생성 및 마지막 사용 날짜 표시
- 재설계된 GitHub 원박싱
- 더 자세한 404 오류를 표시하는 사이트 설정 추가. (#8014)
- 모든 외부 인증 방식에 대해 전체 페이지 리디렉션 사용 (#8092)
- GitHub 커밋, PR 및 이슈 원박싱 렌더링 개선
- 가중 검토 가능한 사용자 정확도 (#8156)
- 부정확한 사용자는 부정적인 검토 정확도를 가짐
- 사용자 설정에서 새 인증기를 생성할 때 이름 입력 추가
- 인증기 입력에 플레이스홀더 추가
- 파일 압축 해제 시 추가 보호 계층 추가.
- UploadRecovery를 단일 게시물에서 실행할 수 있도록 허용 (#8094)
- 2FA 로그인(보안 키)을 통한 Webauthn 인증기 관리 (#8099)
- 게시물 웹 훅 페이로드에 주제 및 카테고리 컨텍스트 추가 (#8110)
- 주제 제목이 차단된 단어에 대해 검증됨 (#8127)
- PWA 매니페스트에서 마스커블 아이콘 지원 추가
- 공유 버튼이 사용자 지정 자바스크립트를 지원하도록 함 (#8090)
- `allowfullscreen` iframe 속성 화이트리스트 (#8086)
- mini\_scheduler를 업데이트하여 히스토리 필터링 지원
- 임베딩이 HTTP REFERER를 무시할 수 있도록 허용
- 사용자 메뉴의 빠른 접근 패널 (#8073)
- 

> `= tl2 사용자를 위한 새로운 게시물 편집 기간 (#8070)

- 새 게시물 편집을 위한 tl2 임계값 추가
- 주제 목록 임베드에 주제 생성자 사용자명 추가
- before-topic-progress 플러그인 아울렛 추가
- 검토 가능한 항목에 대해 더 자세한 점수를 표시하는 팝업 추가 (#8035)
- 익명 캐시 성능 개선
- 그룹 내비게이션에서 data-explorer 아울렛 지원 (#8063)
- API 키가 마지막으로 사용된 날짜 추적
- 자세한 메타데이터가 있는 주제 임베드 (#8062)
- 익명 캐시가 리포터에 데이터를 보고
- 새로운 ‘Discourse-Render’ HTTP 헤더
- 플래그된 게시물을 복원할 때 게시자에게 알림
- Discord로 로그인 (#8053)
- ↔를 이모지로 교체하지 않음
- iOS/Android 네이티브 앱과 연결을 위한 사이트 설정
- 모든 초기화기 후 후크 추가
- 테마가 js 파일을 자산으로 업로드할 수 있도록 허용
- `[date]`에 카운트다운 속성 추가 (#8037)
- TLS 1.3 0-RTT 사용 시 리플레이 공격 방지 (#8020)
- 플러그인이 백업 복원 중에 사이트 설정을 조작할 수 있도록 허용
- JavaScript에서 theme\_uploads를 설정으로 취급
- 그룹 메시지에 읽음 상태 게시. (#7989)
- PWA 설치 프롬프트를 Discourse UI에 통합 (#8013)
- 즐겨찾기 이모지도 컴포저 자동완성에서 표시 (#8011)
- 사용자 알림을 위한 웹 훅 추가
- 스태프 전용 투표 결과 (#7984)
- 자바스크립트 API를 통해 원격 사이트에 주제 목록 임베드. (#8008)
- 그룹 멤버 가시성 수준 지원 추가 (#8004)
- 투표 빌더에 미리보기 추가 (#7988)
- 테마가 색상 변환 변수를 오버라이드할 수 있도록 허용 (#7987)
- 초대 사용 시 외부 인증
- 주제에서 전달된 이메일의 내용을 표시하는 설정 추가 (#7935)
- 이메일에 항상 발췌문을 보내는 옵션 추가
- 멤버가 그룹에 수락되면 알림 전송. (#7614)
- 보안 카테고리에서 그룹을 우선시하도록 멘션
- 게시물 처리 뮤텍스를 더 오래 보유하도록 허용
- 관찰된 단어 관리자 인터페이스에 테스트 시설 추가
- rake db:stats가 제공하는 통계 개선
- 소개 페이지에 카테고리 모더레이터 목록 (#7916)
- html 이메일 사용자 지정 (#7934)
- base\_url이 변경될 때 새로운 VAPID 키 생성
- 읽지 않은 상태를 주제 목록에 실시간으로 동기화 (#7933)
- 발신 이메일에 첨부 파일 추가
- 사용자의 모든 직접 메시지를 볼 수 있는 검색 연산자 추가 (#7913)
- 관찰된 단어 개선 (#7899)
- 관찰된 단어 다운로드 허용
- 관찰된 단어 일괄 지우기 허용
- 게시물이 차단될 때 포함된 모든 차단된 단어 나열
- 검토 대기 중인 게시물의 원시 이메일 보기 허용 (#7910)
- 개인 메시지를 공개할 때 카테고리 선택 허용 (#7907)
- 지난 6개월 동안 패널티가 없었던 사용자를 TL3로 허용. (#7892)
- 일괄 초대를 위해 분당 최대 200개의 이메일 전송 (#7875)
- 카테고리를 파괴하기 위한 rake 작업 생성]``[1]`
- 새로운 날짜/시간 구성 요소 (#7898)
- 내보내기에 대해 Gz에서 zip으로 변경 (#7889)
- 관리자/사용자 내보내기는 zip 형식으로 압축됩니다 (#7784)"
- 카테고리를 파괴하기 위한 rake 작업 생성
- robots.txt 사용자 지정 허용 (#7884)
- WorkboxJS를 사용하여 Discourse가 오프라인에서 작동하도록 함 (#7870)
- 화려한 주제 제목에서 구성된 인용 부호 사용
- 타이포그래피 인용 부호를 위한 사이트 설정
- 관리자/사용자 내보내기는 zip 형식으로 압축됩니다 (#7784)
- S3 또는 CDN이 변경될 때 복원 중에 업로드 재매핑
- 백업에 S3 업로드를 포함하는 숨겨진 설정 추가
- 게시물 공지에서 Markdown 허용. (#7864)
- no-ember 레이아웃에 로그인 및 가입 버튼 표시 (#7867)
- 그룹의 게시물 옵션에 “그룹 소유자” 추가
- "로그인된 사용자"를 위한 새로운 그룹 가시성 옵션 추가 (#7814)
- Rake 테마 설치기 (#7848)
- 벨라루스어 추가
- 액세스 권한이 없는 사용자를 위한 주제에 대한 옵트인 가이드 (#7852)
- 로그인 시 내부 링크로 리디렉션할 때 쿼리 매개변수 지원 (#7829)
- 테마 구성 요소 비활성화 허용 (#7812)
- 연결된 계정 행에 CSS 클래스 추가
- 극심한 부하 시 검색 비활성화
- 주제에서 직접 메시지에 제목 미리 채우기
- 관리자 사용자 목록 페이지에 무한 스크롤 추가 (#7821)
- In:tagged 검색 (서버 측) (#7822)
- In:tagged 및 in:untagged 고급 검색 필터
- 테이블 모드를 지원하는 모든 유형의 리포트 내보내기. (#7662)
- 활성화 시 검색 메뉴 결과에 태그 표시 (#7819)
- 태그 그룹 검색 지원 추가
- 여러 totp 요인을 가질 수 있는 기능 추가 (#7626)
- 테마 설정을 개별적으로 업데이트하기 위한 엔드포인트 추가 (#7789)
- 검색 시 닫힌 주제에 작은 패널티 적용 (#7782)
- 새로운 이모지에 대한 초기 지원 추가 (#7785)

---

<div class="post-metadata">

### Author: ![neil](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/neil/32/102150_2.png) [@neil](https://meta.discourse.org/u/neil)
#### Post date: [2월 26, 2020, 3:26오전 UTC](https://meta.discourse.org/t/discourse-version-2-4/108194/3 "2020-02-26T03:26:14Z")

</div>

## 버그 수정

- 삭제된 주제에서도 검토 가능한 주장(claiming)이 작동하도록 수정 (#9040)
- Ember 및 비-Ember 레이아웃 동기화 (#9028)
- 박스 카테고리 배지에 주제 수가 올바르게 표시되도록 보장 (#9034)
- 태그 필터에서 ‘없음’ 태그 및 ‘모든 태그’ 라벨 번역 (#9030)
- 스코프된 검색 카테고리가 모든 카테고리에서 검색되도록 보장 (#9031)
- 기존 주제에서 새 개인 메시지(PM) 생성을 시도하지 않도록 보장 (#9029)
- 라이트박스 이미지로 인해 요약 이메일의 인기 게시글이 비어 있는 문제 수정
- 그룹 자동 멤버십 드롭다운이 작동하도록 보장 (#9022)
- 주제 타임라인에서 음소거(Muted)가 작동하지 않던 문제 수정 (#9021)
- 웹훅 재시도가 최대 5회로 제한되도록 보장
- 제안된 주제 라벨을 올바르게 표시 (#9017)
- 미니 태그 선택기가 max\_tags\_per\_topic을 준수하도록 보장 (#9018)
- 카테고리 + 태그 필터링된 페이지에서도 전용 사이트 속성 사용
- 업로드를 위한 지원 이미지 형식으로 webp 고려 (#9015)
- SiteSetting.secure\_media?가 true일 때만 첨부 파일을 보안 미디어로 표시 (#9009)
- 이름에 콜론이 있는 사이트에서 TOTP를 사용할 수 없던 문제 수정
- 서브폴더의 discourse-location 내부에서 initState() 호출 복원
- 이메일에서 prioritize\_username\_in\_ux 설정 준수
- 외부 저장소에 대한 업로드 통계 보고서 수정
- 관리자가 스태프 이메일을 변경해도 기존 이메일 확인을 여전히 강제 (#9007)
- 관리자가 다른 사용자의 이메일을 변경할 때 변경 사항을 자동 확인 (#9001)
- 깨진 오류 무시 버튼 제거
- 메일링 리스트 모드에서 음소거된 태그 준수
- 미래의 rubocop를 위한 경미한 린팅 문제 수정
- 무효일 때 API 키 생성 시 저장 버튼 비활성화 (#9005)
- 안전한 동시성 지원을 위해 ActiveRecord SchemaCache 패치
- iOS 고정 위치 버그를 피하기 위해 modal-body에서 border-box 제거
- 설정 객체가 자체적으로 value/name 속성을 정의할 수 있도록 (#9003)
- 설정 컴포넌트에 기본값을 설정할 때 페이지가 다시 로드되는 문제 방지
- 모바일에서 알림 버튼이 잘리는 문제 방지 (#8998)
- 열거형(Enums)은 평탄한 배열로 취급해야 함 (#8995)
- 모바일에서 그룹 멤버 드롭다운이 깨져 있던 문제 수정 (#8994)
- 배너 제목에서 앵커 제거
- `.notify`와 무관하게 멘션 업데이트기가 작동하도록 보장
- 그룹 멘션이 미리보기와 동일한 방식으로 조리(cook)되지 않던 문제 수정
- report-filter/category가 올바르게 필터링되도록 보장 (#8992)
- Discourse.os\_hostname이 사용 불가능할 때 ‘hostname’ 사용
- 사용자 그룹이 허용하지 않는 경우 투표 옵션 비활성화 (#8987)
- 발췌문에서 비디오 원박스(oneboxes) 제거
- 일부 select-kit 드롭다운이 모달의 숨겨진 오버플로우로 잘리는 문제 수정
- 단일 카테고리 “상위 태그” 목록에 대해 별도 사이트 속성 사용
- 올바른 번역 문자열 사용
- SK 본문이 래퍼 폭을 따르도록 (#8984)
- 태그 그룹 로딩 시 오류 방지 (#8983)
- 게시글 확장 시 페이지 라우팅이 트리거되는 문제 방지 (#8982)
- 업로드 보안 이모지 체크 조정 (#8981)
- update\_upload\_acl rake 작업에 대한 개선 및 수정 (#8980)
- 일반 이모지 보안으로 업로드를 절대 표시하지 않음 (#8973)
- 테마 가져오기(Theme importer)의 elsif 구문 오류 수정
- 툴바 메뉴 특정도(specificity)
- 사용자 이름 멘션 스타일링 유실 문제 수정
- 그룹이 멘션 불가능(unmentionable)한 경우 멘션 가능하도록 렌더링하지 않음
- 동의어 추가 후 태그 주제 수가 잘못 표시되던 문제 수정
- 값을 제거할 때 값 목록 선택지 처리
- GET 요청에서 `draft_key`가 존재하는지 확인
- `draft_key`가 누락된 경우 404 반환
- ‘모두’ 그룹이 투표의 그룹 옵션으로 표시되는 문제 방지 (#8957)
- sk2에 대한 더 안전한 마이그레이션 경로로 castInteger 복원 (#8966)
- 읽지 않은 답변 알림이 이미 존재하는 경우 새 알림을 생성하지 않음 (#8921)
- 이미 존재하는 경우 새 알림 생성하지 않음
- 주제 목록이 사용 가능한 경우 “categories” 루트에서 `Site.top_tags` 업데이트
- 사용자 정의 이모지를 보안으로 표시하지 않음 (#8965)
- default\_notification\_level이 설정되지 않은 경우 선택 텍스트 표시 (#8662)
- 게시글에 이미지가 없는 경우 주제 이미지를 제거하지 않음
- 단축키가 topic-notifications-button과 함께 올바르게 작동하도록 보장 (#8956)
- select-kit이 0을 값으로 가진 행을 선택할 수 있도록 보장 (#8955)
- SSO 제공자 파싱 예외 처리
- 해시태그를 통해 카테고리로 링크할 때 URL이 깨져 있던 문제 수정
- 테마 템플릿 오버라이드를 올바르게 컴파일 (#8946)
- 사용 가능한 경우 이미지 업로드 대신 일반 텍스트 사용
- 마법사 캔버스 요소 관련 회귀 문제 수정
- S3 마이그레이션 시 무시되거나 누락된 업로드를 카운트하지 않음
- 파이 차트 그리기 애니메이션 제거 (#8940)
- 공개되지 않은 그룹에 대한 멘션 하이라이트 방지
- 보안 컨텍스트의 보안 주제에서 인라인 원박스가 작동하도록 (#8895)
- 초기 로딩 시 서브폴더 사이트가 URL을 루트 도메인으로 다시 작성하는 문제 수정 (#8932)
- change-timestamp 모달에서 날짜를 변경할 때 날짜가 변경되지 않던 문제 수정 (#8935)
- 공개되지 않은 그룹에 대한 멘션 하이라이트 방지
- 다이제스트 구독 취소 푸터 링크에 테마 색상 사용 금지
- 현재 사용자를 user-chooser에서 올바르게 제외 (#8928)
- user-selector가 실제 부울값을 사용하도록 (#8909)
- 파이 차트 옵션에 대한 HTML 렌더링 (#8912)
- IE11을 위해 String.startsWith 함수 폴리필
- 카테고리 슬러그 검증 덜 엄격하게 (#8915)
- 보안 미디어 활성화 시 오디오 + 비디오 프리로딩 비활성화 (#8922)
- 인용문 내부의 그룹 멘션 무시 (#8905)
- 신뢰 수준 성장 보고서의 제한 제거 (#8908)
- 다른 요소의 스타일링을 피하기 위해 tag-{info,list}를 더 구체적으로 (#8902)
- 다른 프로필 정보 업데이트 시 플레어 아이콘이 제거되는 문제 수정
- 소스 URI가 무효할 때 URL 절대화(absolutizing) 스킵
- 인용문을 Markdown으로 올바르게 변환 (#8808)
- s2가 마법사와 함께 작동하도록 보장 (#8886)
- 새 버전 생성 시 게시글에서 `edit_reason` 초기화
- 발췌문에서 오디오/비디오 콘텐츠 제거 (#8881)
- group-add-member 모달에서 ac wrap 오버플로우 방지 (#8882)
- 게시글 편집 시 게시글/주제 image\_url 제거
- 스포일러 로직은 스포일러 플러그인 내부에 있어야 함
- 올바른 컴포넌트 이름이 있는지 보장 (#8876)
- 사용자가 없는 복구된 게시글은 시스템 사용자가 인수 (#8834)
- 가짜 null 값을 clearable 옵션으로 대체 (#8875)
- 카테고리 페이지에 대해 상세 오류 메시지 표시 (#8832)
- 제한되지 않다고 말하는 오해의 소지가 있는 태그 정보 메시지 수정
- 새 주제 초안을 열면 게시글이 생성되지 않던 문제 수정 (#8828)
- 미니 태그 선택기의 min/max 로직 수정 (#8871)
- sk2에서 닭과 달걀 문제를 피하기 위해 최대/최소 로직 단순화 (#8868)
- 키보드로 다양한 양식 제출 허용 (#8866)
- 이벤트 리스너 누출 방지 (999e2ff에서 도입된 버그)
- base\_importer에 서브-서브 카테고리 지원 추가
- 주제 생성 시 meta\_data와 custom\_fields 모두 허용
- 데스크톱에서 주제 진행률 바가 표시되지 않도록 (#8854)
- 제목 편집 시 게시글 편집 최소 신뢰 수준 준수
- Firefox가 공백 키로 클릭 이벤트를 생성하는 문제 방지 (#8856)
- tags-admin-dropdown이 sk2와 함께 올바르게 작동하도록 보장 (#8852)
- 카테고리 박스 설명의 링크가 클릭 가능하도록
- 마법사의 개인정보 옵션 라벨이 바뀌어 있던 문제 수정
- 새 주제 초안 덮어쓰기 시 사용자 경고 (#8841)
- 프로필 HTML에서 추천 주제 제목이 파싱되던 문제 수정 (#8850)
- 모델이 설정되지 않은 경우 /admin/badges 페이지에서 예외 방지 (#8849)
- 크기가 0바이트인 이메일 첨부 파일로 인한 오류 수정
- admin/email-style의 라우트 탐색 정리 (#8837)
- 이름이 너무 길 때 더 나은 오류 메시지
- 기간 선택기에서 위/아래 아이콘 복원
- reply\_ids를 통해 동일한 답변을 두 번 이상 반환하지 않음
- 드롭다운 사용자 정의 사용자 필드를 select-kit 2와 호환되도록
- 다른 주제에서 게시글 답변 반환 금지
- 분산 뮤텍스 키 만료 설정 시 1 off 오류 수정
- 매개변수 유형 확인
- 관리자 사용자 목록에서 보안 키만 활성화된 경우 2FA 아이콘이 표시되지 않던 문제 (#8839)
- 게시글 편집 시 알림 홍수 억제 (#8838)
- 게시글 타이밍이 충돌로 인해 생성되지 않은 경우 게시글 읽음 수 및 사용자 통계를 업데이트하지 않음 (#8824)
- S3 인벤토리 작업에서 updated\_at 사용 (#8823)
- 보안 미디어 업로드에서 nginx 404 없이 .ico 파일 서빙 (#8826)
- UrlHelper를 사용하여 사전 서명 URL 인코딩 중단 (#8818)
- 서브-서브 카테고리 가져오기 (#8810)
- ‘unless’ 헬퍼가 변수 이름을 한 번만 해결하도록 보장 (#8820)
- 숨겨진 주제 추천 금지 (#8814)
- 이메일에서 보안 미디어 URL이 과도하게 검열되는 문제 중단 (#8817)
- 일부 알림에서 사용자 정의 이메일 제목이 무시되던 문제 수정
- 그룹 주제 목록에서 showFooter를 true로 설정 (#8795)
- 게시글 높이 점프를 막기 위해 마크다운 비디오를 video-container 클래스로 감싸기 (#8806)
- 조리된 마크다운이 비어 있을 때 로그에서 예외가 발생하던 문제 수정
- 보안 이전의 레거시 핫링크 미디어가 다시 다운로드되지 않는 문제 완화 (#8802)
- 태그 또는 카테고리가 추가될 때 알림 수정 (#8801)
- 월 초에 “이 달의 사용자” 배지 수여
- Uploads:s3\_migration\_status rake 작업이 깨져 있던 문제 수정
- 사용자 아카이브에서 모든 카테고리 이름 내보내기 (#8790)
- 부여 날짜를 기준으로 좋아요 기반 배지 적용
- PostAlerter#create\_notification에서 nil:NilClass에 대한 ‘title’ 메서드 정의 없음 오류 수정
- 서브폴더 사이트의 GetURL은 URL 중간에 있는 접두사를 무시해야 함 (#8794)
- 게시글 수정자가 숨겨진 게시글의 편집을 선택하던 문제 수정 (#8792)
- downsize\_uploads 개선 (#8409)
- 깨진 이미지 플레이스홀더 테두리 조정 (#8781)
- 백업 복원 후 사용자 알림 실패 수정
- rss 피드 응답에 ‘noindex’ 헤더 추가
- 보안 미디어 URL에 대한 핫링크 이미지 및 깨진 링크 문제 해결 (#8777)
- 태그 페이지의 주제 정렬이 깨져 있던 문제 수정
- 소스맵의 소스가 올바른지 보장. 이번에는 전체 자산 경로를 사용 (#8774)
- Redis 폴백 핸들러 리팩토링 (#8771)
- 각 redis 페어에 대해 별도의 FallbackHandler를 사용해야 함
- 가능한 경우 전달된 설정의 동결 복사본 생성
- start\_reset 메서드 추출 및 테스트에 사용되는 메서드 제거
- 보안 미디어의 핫링크 이미지 가져오기 시 403을 피하기 위해 사전 서명 URL 사용 (#8764)
- 개발 모드에서 sourceURL 다시 적용
- 다른 사용자 프로필에서 주제 추천 시 해당 사용자의 주제가 표시되던 문제 수정 (#8769)
- 스테이징된 사용자에게 개인 카테고리 알림 (#8765)
- 서브카테고리가 있는 경우 서브카테고리 페이지에 카테고리 목록 표시 (#8768)
- 소스맵의 소스가 올바른지 보장
- 주제 페이지에 모든 상위 카테고리 표시 (#8767)
- 인용문을 인용하면 원래 게시글 정보가 보존됨 (#8746)
- 편집된 배지 제목만 사용자 제목을 업데이트하도록 보장
- schema.org의 BreadcrumbList 사용
- Categories\_breadcrumb 헬퍼가 2개 이상의 카테고리 레벨을 지원하도록
- 새 태그 루트 사용 (#8683)
- jquery.autoellipsis의 제한 사항 우회 (#8747)
- 헤더의 유저카드 z-index 증가
- 인용문과 원박스에서 날짜 추출 금지 (#8754)
- 앱이 더 긴 백업 코드를 생성하고 수락하도록 허용 (#8761)
- 배지 수여자의 잘못된 로케일 수정 (#8749)
- 태그 또는 카테고리가 추가되면 주제가 수정되었다고 사용자 알림 (#8750)
- aside 태그에 class 속성이 없는 경우 발췌문에서 오류 발생하지 않도록
- 주제 쿼리가 서브-서브 카테고리의 주제를 포함하도록 (#8709)
- 카테고리 선택기가 모든 상위 카테고리를 표시하도록 (#8706)
- 사용자가 기본 그룹을 제거할 수 있도록
- 프로필 설정 방문 시마다 타임존을 오버라이드하지 않도록
- `reply_id` 컬럼 이름 변경으로 인한 예외 방지
- 고정 헤더에 PM 아이콘 표시
- 아이콘에 올바른 스타일 적용 및 코드 정리 시도 (#8739)
- 마크다운 테이블에서 이모지 크기 증가 금지 (#8742)
- 플래그 확장 시 ReviewableScore 유형 다시 로드 (#8740)
- 새/읽지 않은 카운트에 서브-서브 카테고리 포함 (#8710)
- 추가 공개 업로드를 보안이 아니도록 변경 (#8738)
- 그룹 페이지네이션이 깨져 있던 문제 수정
- 카테고리 선택기의 rootNone 동작 변경 (#8692)
- 내러티브 봇 이탈리아어 로케일에 누락된 번역 키 추가
- 프로필 모달의 추천 주제 스타일링 (#8727)
- 주제 삭제가 실패하면 오류 메시지 표시 (#8723)
- 단락 내부의 이미지 및 크기 조절 컨트롤을 올바르게 감싸기 (#8718)
- 주제 삭제 실패 시 더 나은 오류 메시지
- 공개 게시글에만 게시글 알림 생성 (#8708)
- 그룹 멤버십 누출 수정
- 무효한 사용자 이름으로 그룹 필터링 시 적절한 NotFound 예외 발생
- 다른 사용자의 그룹을 볼 때 현재 사용자 가시성에 기반하여 그룹을 올바르게 필터링
- 로그인된 사용자에게 그룹 디렉터리가 비활성화되었을 때 groups\_controller#index 스펙
- 모든 정렬 조합을 실제로 테스트하기 위한 Groups\_controller.sortable 스펙
- “다른 사용자의 그룹 보기” 스펙을 다시 작성하여 모든 group\_visibility 및 members\_group\_visibility 조합을 테스트
- 라우트가 변경될 때 group-navigation 상태가 변경되도록 보장 (#8724)
- 모바일 내비게이션의 사용자 알림 보조 메뉴가 다시 로드되도록 보장 (#8716)
- 삽입 후 user-selector 제외된 사용자 이름 업데이트 (#8711)
- 배지 대량 수여 시 추천 배지 순위 업데이트
- padStart/padEnd를 코어 폴리필로 복원 (#8714)
- 구 파일名的 스펙
- `discourse-internet-explorer`에 CDN 사용
- 컴포저가 저장 중일 때 패딩 제거
- user-selector-test에 prettier 실행 (#8700)
- URL이 슬래시로 끝나는 경우 ‘findBySlugPathWithID’ 작동하도록 (#8699)
- iOS에서 파일을 붙여넣을 때 파일 URL이 붙여넣기되는 문제 방지 (#8693)
- 테스트 중 주장된 주제 데이터베이스 오류 로그 기록 금지
- 검토 가능한 충돌 시 postgres에서 오류 로그 기록 중단
- 많은 작은 파일 압축 해제 시 오류 발생
- 영어 이외의 로케일에서 사용자가 제목을 변경할 수 있도록 허용
- 인증 후 `/auth/*` URL로 리다이렉트하지 않도록
- 관리자 SSO 동기화에 외부 ID가 없는 경우 오류를 발생시키지 않도록
- user-activity-drafts에서 이벤트 리스너 누출 방지 (#8682)
- omniauth 확인 페이지가 GET 매개변수를 통과하도록 허용
- 사용자 프로필 페이지에 noindex 헤더 추가
- 주제에서 하단 게시글로 스크롤링 더 일관되게 (#8671)
- 벤치마크를 위해 항상 동일한 주제를 선택하도록 보장
- 모바일 탐색에서 OnScroll 메서드가 정의되지 않던 문제 수정 (#8672)
- mute\_all\_categories\_by\_default가 활성화된 경우 Topic\_tracking\_state
- ‘게시글 + 답변 삭제 및 동의’ 옵션을 사용할 때 첫 번째 게시글에만 동의
- 새 주제 데이터 캐시는 새 주제 무시 후에도 삭제되지 않아야 함 (#8660)
- 일반 카테고리에서 새 주제 무시 후 새/읽지 않은 카운트 (#8659)
- 탐색 주제 목록의 로드 시 스크롤 허용 (#8661)
- 애플리케이션 요청 생성을 위한 벌크 삽입
- 주제 생성을 위한 벌크 삽입
- 각 주제, 게시글 등에 대해 별도 사용자 생성 불필요
- ApplicationRequests의 또 다른 bulk\_insert
- 필요하지 않은 경우 사용자 및 주제 인스턴스 생성하지 않음
- 비용이 높은 설정을 가진 예제를 하나의 예제로 병합
- MaxMind DB 파일이 올바르게 다운로드되지 않던 문제 수정
- html에서 markdown 변환 시 ‘rb’ 및 ‘rp’ 태그 유지
- qunit에서 CSP가 꺼져 있는지 보장
- 카테고리 페이지에 미분류 설명 표시
- 햄버거 메뉴에서 미분류의 설명이 비어 있던 문제 수정
- 빈 투표 옵션 검증 추가 (#8652)
- 관리자 보고에 무효한 날짜 매개변수가 제공될 때 500 오류를 반환하지 않도록 (#8658)
- 업로드 다운로드 시 파일 확장자에 밑줄 허용
- 이미지 지연 로딩 시 원박스 높이를 올바르게 계산
- 모든 전역 공지 텍스트에 HTML 포함 가능 (#8655)
- 봇 정확도는 0이어야 함 (#8654)
- 와일드카드 URL 체크어에서 모든 프로토콜 허용 (#8651)
- MIME 유형이 잘못된 경우 불필요한 로그 기록 방지
- 드문 조건에서 새 초안 저장 시 일시적으로 오류가 발생하던 문제 수정
- 보안 키에 대해 알려진 COSE 알고리즘이 제공될 때 오류를 잡아내기 (#8649)
- 트리거 명령은 로케일마다 다르므로 이를 고려
- 모바일에서 동작이 있을 때만 관리자 렌치 표시
- 올바른 렌치를 클릭할 때 관리자 도구에서 클로크를 표시하지 않도록 (#8641)
- 관리자 주제 메뉴 시각적 개선 (#8638)
- MaxMind DB 캐시를 더 오래 사용
- 멘션에 추가 요소가 있어도 클릭 시 카드 열기 (#8626)
- ‘검토됨’ 상태 필터는 삭제된 요소를 포함해야 함 (#8630)
- 카테고리가 0개의 주제일 때 주제/게시글 카운터를 올바르게 업데이트 (#8600)
- 마지막으로 본 주제 하이라이트를 더 견고하게 (#8624)
- pwa 동의 배너를 올바르게 스타일링 (#8623)
- global\_notice 사이트 설정에 html 포함 허용 (#8622)
- IPAddr 없이 Cache\_critical\_dns가 오류를 발생시키던 문제 수정
- notification-consent-banner를 올바르게 스타일링 (#8621)
- 올바른 사이트 설정 추적
- 영어 및 미국식 날짜/시간 형식
- 포럼이 읽기 전용 모드일 때 더 나은 오류 메시지
- normalize css를 3.0.1에서 8.0.1로 업데이트 (#8591)
- 사랑의 배지 설명 수정 (#8615)
- on\_vote 및 closed 상태일 때 모든 사용자가 투표 결과를 볼 수 있음 (#8613)
- 제목으로 배지 취소 시 버그 수정 (#8616)
- 카테고리 루트 모델 매개변수는 URL 부분을 디코딩해야 함 (#8612)
- 슬러그 생성 방법이 인코딩된 경우 슬러그가 한 번만 인코딩되도록 보장
- 확장된 CSS/HTML 편집기에 \>`0 높이 부여
- 가입 양식의 라벨 헬퍼가 숨겨지지 않던 문제 수정 (#8603)
- rerenderTriggers 제거
- 직접 답변 시 전체 중첩 인용문 제거 (#8581)
- 가입 입력 팁 표시 및 간격 개선
- 비추천 아이콘 보고 시 요청 제한 및 데이터 포함
- 확장된 직렬화기를 위한 올바른 사용자 직렬화기 user 메서드 (#8590)
- IE11을 위한 `Symbol` 폴리필 포함
- 읽기 전용 체크의 IE11 호환성
- 2단계 카테고리의 상위 및 서브카테고리 표시 (#8579)
- AJAX 요청 후 IE11에서 오류 방지
- IE11을 위한 누락된 Object.entries 폴리필 추가
- 새 주제 또는 게시글이 생성되면 새/읽지 않은 버튼 표시 (#8576)
- 병렬 스펙 시스템은 각 워커마다 전용 업로드 폴더가 필요함 (#8547)
- IE 특정 CSS 규칙을 discourse-internet-explorer 플러그인으로 이동 (#8567)
- 비-스태프에 대한 ‘staff\_only’ 결과 옵션 제거 (#8565)
- url로 검색하도록 choose-topic 컴포넌트 수정 (#8574)
- IE11 지원을 위해 String.matchAll 사용 금지
- 만료된 초대장을 나타내기 위해 updated\_at 날짜 사용 (#8521)
- 빈 검색어에서 discourse\_tagging 충돌 방지 (#8548)
- 예쁘게 만든 슬러그가 숫자인 경우 기본값 반환 (#8554)
- rotp gem에 대해 Require: false (#8540)
- filterCategory의 카테고리 id (#8555)
- ID를 가져오기 전에 currentUser가 존재하는지 보장
- `db:migrate`를 단독으로 실행하면 환경을 로드해야 함
- 마이그레이션 경로가 잊혀지던 문제 수정
- CDN으로 IE 스크립트 로드 허용
- 스태프 상태 부여 시 승인 대기 사용자를 자동 승인해야 함 (#8533)
- 스태프 상태 부여 시 승인 대기 사용자를 자동 승인해야 함
- 동일한 주제 그룹을 두 번 삽입할 때 제약 오류
- 짧은 업로드 URL 캐싱 (#8541)
- c를 태그로 허용하지 않음
- none을 카테고리 슬러그로 허용하지 않음
- SiteSetting.enable\_bookmarks\_with\_reminders가 활성화된 경우 게시글 메뉴에서 구서마크 버튼 숨김
- 비추천된 URI.encode, URI.escape, URI.unescape 및 URI.unencode 대체 (#8528)
- 더 많은 aws-sdk API 변경 사항을 위해 S3 스텁 업데이트 (#8534)
- theme/component에 대한 새 콘텐츠 유형 추가
- 사용자가 존재하지 않는 경우 오류를 발생시키지 않도록
- 자유 공간 체크에서 과학적 표기법 방지 (#8473)
- 빠른 접근 항목에 사용자 이름 span을 항상 추가 (#8526)
- 카테고리 재배열이 작동하지 않던 문제 수정
- 미니 태그 선택기의 알파벳순 태그 정렬
- 태그 입력이 허용된 상위 5개 태그를 모두 표시하지 않던 문제 수정
- slug와 id가 배열이 아니도록 보장 (#8495)
- 음소거된 태그가 TopicTrackingState에 의해 준수됨 (#8467)
- 주제 업데이트 시 빈 태그 생성 시도하지 않음 (#8481)
- openComposerWithTopicParams의 기본 초안 키 (#8496)
- 원박스에서 이미지 최적화 (#8471)
- 코드 블록에서 카테고리 또는 이모지 자동 완성 금지 (#8459)
- 비-UTF-8 사용자 에이전트에 대한 크롤러 요청 추적 누락 수정
- 값이 "no"인 경우 2차 인증 변경 강제 검증 스킵
- iOS에서 이모지를 호출할 때 컴포저 고정 해제 방지
- 메일링 리스트 미러로 전송된 이메일에 대해 DMARC 무시
- 점으로 된 이미지 파일명이 컴포저 마크다운에서 올바르게 표시되지 않던 문제 (#8465)
- 설정으로 리다이렉트하는 로그인 페이지가 깨져 있던 문제 수정
- 서브폴더에서 /login-preferences로 리다이렉트가 작동하지 않던 문제 수정
- 익명 캐시 회귀 문제 수정
- 투표 UI 내보내기는 관리자만 표시해야 함
- html에서 markdown 변환 시 `ruby` 및 `rt` 태그 유지
- 라이트박스에서 보안 업로드 URL (#8451)
- BufferedValuesString.split은 함수가 아님 (#8463)
- LockOn에서 여러 점프가 발생하는 문제 방지 (#8460)
- S3 마이그레이션 시 nil 업로드 레코드 허용
- lockon으로 스크롤하기 전에 요소가 페이지에 있는지 보장 (#8458)
- 다음 페이지를 결정할 때 필터링된 게시글 사용
- 모든 테마에 컴포넌트를 추가하되 활성인 것만 포함
- select 컴포넌트/테마를 상단으로 이동
- defaultIsAvailable 개선
- filter(Boolean) 추가 및 btn 클래스 제거
- 사용 가능한 유일한 슬러그인 경우 인바운드 링크 (#8457)
- 카테고리 슬러그가 숫자만으로 구성되는 것 허용하지 않음
- 제목에서 `enable_inline_emoji_translation` 설정 준수
- 이모지 피커로 삽입할 때 앞쪽에 공백 추가
- 게시글이 속삭임(whisper)인 경우 독자의 아바타를 올바르게 필터링
- 검토 대기열에서 답변을 올바르게 지연시키기 위해 순서 보장 (#8426)
- 누락된 배지 그룹화로 인한 500 오류 (#8446)
- 결과가 그룹화된 경우 파이 범례 숨김 (#8445)
- 투표 파이 컨테이너가 너무 컸던 문제 수정 (#8444)
- 코드 블록에서 카테고리 또는 이모지 자동 완성 금지 (#8433)
- 서브디렉터리 사용 시 리다이렉트 URL을 올바르게 생성
- 3단계에서 none 경로를 올바르게 처리
- 검열기가 항상 처리할 최소한 빈 문자열이 있는지 보장 (#8442)
- ‘send\_advanced\_tutorial\_message’ 작업을 지연시켜 레이스 컨디션 방지
- 인용된 이미지 최적화 (#8427)
- developers 테이블에 고유 인덱스 추가 (#8436)
- 정지 상태가 최신인지 확인 (#8432)
- quick-access-item에 data-topic-id 추가 (#8430)
- mapBy와 filterBy를 직접 사용
- G Suite 사용자를 위해 Google Groups 스크레이퍼 작동하도록
- 실패한 원박스 URL 요청을 서버 측에서 캐싱 (#8421)
- 테마 컴포넌트에 사용된 경우 보안 미디어 업로드를 자동으로 보안이 아니도록 표시 (#8413)
- Google PageSpeed에 크롤러 뷰 서빙
- 플래그된 게시글에 대한 조치 시 답변을 올바르게 무시/승인 (#8425)
- SSO/인증기에서 로그아웃할 때 로그인 플로우를 시작하지 않도록 (#8423)
- 모든 비디오 유형에 대해 전용 Vimeo 원박스 사용
- 원박스에서 지연 로딩된 이미지를 올바르게 리사이즈
- vimeo.com의 올바른 호스트명
- Vimeo 링크에 대해 finaldestination 체크 우회
- `bumped_at` 초기화 시 주제를 검증하지 않도록
- 초대장 전송 날짜에 updated\_at 표시
- 새 주제에 답변할 때 초안이 지워지지 않던 문제 수정
- Oneboxer.js가 실패한 요청을 무한정 재시도하던 문제 수정 (#8414)
- DST가 올바르게 계산되도록 보장하여 반복 개선 (#8410)
- dif에서 현재 값이 비어 있을 때 오류 발생하지 않도록 (#8406)
- 빌드; prettier 실행 (#8412)
- 카테고리 목록을 수신할 때 사이트 데이터 업데이트
- 필요한 경우에만 업로드 ACL 업데이트 트리거
- 인용된 이미지를 올바르게 표시 (#8391)
- 마크다운 문자를 대체하는 것을 더 전술적으로
- 업로드의 마크다운 파일명에서 %20을 공백으로 대체 (#8405)
- 카테고리 무시 시 MessageBus를 통해 알림 (#8371)
- 예외 및 더 많은 중복 방지 (#8396)
- 미리보기에서 타임존이 중복된 존을 표시하는 문제 방지
- 메서드 이름이 올바르지 않던 문제 수정 (#8393)
- 보안 미디어에 대해 항상 secure\_proxy\_without\_cdn url 반환 (#8394)
- discourse 로더에서 불필요한 제거 (#8390)
- require에 대한 별칭 작동 (#8387)
- login\_required 사이트에서 개인 미디어 업로드 재사용 허용
- 린팅 체크 수정을 위해 this.get(“foo”)를 this.foo로 대체
- discourse local-dates에서 독일어 인용문 처리 (#8386)
- 기간 및 카테고리 또는 태그가 있는 모바일 상위 주제 목록
- 앱에 무효한 MIME 유형이 전달되면 로그 기록하지 않도록
- 내러티브 봇 플러그인에 대해 skip\_validations을 한 곳 더 추가
- 제목 이모지가 비활성화되어 있어도 고급 튜토리얼 허용
- 테마 내보내기에 올바른 MIME 유형 사용 (#8379)
- censored\_words\_regexp가 nil인 경우 CensoredWordsValidator를 조기에 중단 (#8375)
- Amazon 비디오 원박스가 작동하지 않던 문제 수정
- 전역 s3 설정이 활성화되고 enable\_s3\_uploads 검증이 있는 경우 보안 업로드 허용 (#8373)
- 가져오지 않은 더 많은 `Promise` 사용
- 단일 인증기의 경우 등록 플로우를 중단하지 않도록
- 인용문으로 시작하는 게시글의 이메일 발췌문에 사용자 이름이 표시되던 문제 수정
- 예약된 범프가 있는 주제의 자동 범프 끄기
- 병렬 스펙 시스템은 각 워커마다 전용 업로드 폴더가 필요함 (#8372)
- 익명 사용자에게 ‘default\_categories\_muted’ 사이트 설정이 작동하지 않던 문제 수정
- category user에 충돌 행 삽입 금지
- 개발 중 잘못된 sprockets 캐시에서 자동 복구 (#8364)
- 카테고리에서 필수 태그 그룹을 제거할 수 없던 문제 수정
- 이름에 콜론이 있는 태그 사용 시 오류
- load-more가 현재 위치를 고려하도록 보장 (#8357)
- Group 모델 상태 처리 개선 (#8356)
- Enter 키가 비밀번호 재설정 양식을 제출해야 하며 페이지를 새로고침하면 안 됨
- 사용자 메뉴의 PM 글리프는 항상 스태프에게 표시되어야 함
- 날짜를 그렇게 자주 새로고침할 필요가 없음 (#8367)
- 반복 사용 시 dst에 대해 올바르게 시도 (#8366)
- pmOnly 태그는 메시지로 링크해야 함 (#8361)
- 사용자가 없는 경우 CleanUpInactiveUserJob에서 오류 발생하지 않도록 (#8362)
- 수정 사항이 편집 이유를 저장하고 이유가 지워지지 않도록 보장 (#8363)
- 플러그인과의 `rake db:rollback` 지원
- 주제 요약에 5명의 참가자 포함
- navigation-item에서 this.category 대신 this.content.category 사용
- 백업 코드가 활성화된 경우 새 이메일 확인
- 봇을 게시글 독자로 표시하지 않도록
- 모바일에서 마지막 게시글로 점프하는 동작 되돌리기
- SVG 스프라이트 버전 해시는 번들 결과를 기반으로 해야 함
- 태그 주제 목록은 상위 메뉴를 빌드할 때 noSubcategories를 전달해야 함
- Tracking Topic State가 category\_seen\_at을 인식하도록 (#8351)
- discourse-narrative-bot 플러그인에 대해 open-uri require 필요
- extra\_js에 서브디렉터리가 있는 테마 가져오기 허용
- Utilities에서 누락된 User 객체
- Computed은 `@ember/object/computed`가 아니라 `@ember/object`의 일부임
- customHref 없이 forceActive 허용
- 최근 게시글 또는 API 키가 있는 경우 관리자 계정 비활성화 금지 (#8342)
- 게시글 이동 후 인용문 업데이트 (#8326)
- 태그 및 지정된 필터로 필터링된 주제 목록이 작동하지 않던 문제 수정
- 태그 및 카테고리 워처 회귀 문제 (#8336)
- 무효한 로케일 번들 버전에 대한 더 나은 오류 처리
- `@ember/object`가 아직 로드되지 않은 경우
- 사용자 검색에서 일부 이메일을 건너뛰지 않도록 (#8317)
- 그룹 바이오 발췌문에 이모지 이미지 유지 (#8329)
- 누락된 RSVP 가져오기 더 많음
- RSVP 대신 네이티브 브라우저 Promise를 사용하던 문제 수정
- 알림 레벨을 가져오기 위해 올바른 클래스 변수 사용
- 알림 레벨에서 마법 숫자 제거
- 최근 변경 사항을 위해 api\_key rake 작업 업데이트
- `Discourse.Session`에 대한 비추천 반환
- 테마가 사용하는 경우를 대비해 Discourse.NavItem에 대한 비추천 추가
- require되고 AND import되는 모듈에 대한 별칭 (#8315)
- 6개월 이상 전에 시작되었으면 현재 페널티를 카운트 (#8313)
- 데이터를 가져오기 위해 ember 모델을 사용하는 대신 ‘about.json’ 엔드포인트 사용
- 배지 및 사용자 제목 상호작용 수정 (#8282)
- 스태프에 대한 2FA 강제 적용이 보안 키로 충족되도록 보장 (#8316)
- 초안은 draft\_key와 user\_id로 고유함
- API 키 상세 UI에서 마지막으로 사용된 날짜의 올바른 표시
- Discourse 이메일과 대조하기 전에 SSO 외부 이메일을 소문자로 변경 (#8306)
- 개발 환경에 원박스 기본 옵션 포함
- 주제 타임라인의 내부 위치는 스크롤 위치임
- 모바일 타임라인에서 발췌문이 표시되지 않는 회귀 문제
- 날짜 형식에서 월 이름의 긴 버전 사용
- URL을 위해 인코딩된 유니코드 그룹 이름 (#8302)
- 비디오 원박스에서 과도한 빈 패딩
- API 키 취소 버튼에 대한 올바른 번역 키
- 검색 발췌문에서 오디오/비디오를 확인하는 경우 무효한 URL 건너뛰기
- Summary 이메일에 `<img>` alt 속성 추가
- restorer 스펙을 안정적으로 만들기 위해 조정 (#8300)
- 서브카테고리에 대해 아무것도 선택되지 않은 경우 태그 주제 목록을 올바르게 표시
- import를 위해 prettier로 빌드 (#8298)
- 초기화程序中에서 테마 번역에 액세스할 수 있도록 허용 (#8285)
- FilterQueryParams는 기본적으로 전역인 상태를 변경함
- 이미지 크기 조절 컨트롤에 사용되는 정규식 개선 (#8291)
- 모바일에서 navItem에 active 설정이 작동하지 않던 문제 수정
- iOS에서 앱 전환 시 컴포저 blur 이벤트 스킵
- 초대장 재전송 시 created\_at 날짜를 업데이트하지 않도록
- 모바일 앱 트래픽을 크롤러 방문으로 간주하지 않도록
- 원박스에 `cache` 옵션을 전달할 필요 없음
- Dropbox 비디오가 로드되지 않던 문제 수정
- 데스크톱에서만 메뉴가 너무 높지 않도록 보장
- zeitwerk와 함께 whitelisted\_generic\_onebox\_spec이 실패하는 문제 방지 (#8288)
- update 액션은 setting-component 믹신에 있어야 함 (#8287)
- 메뉴 패널이 화면에 비해 너무 높지 않도록 보장 (#8248)
- TopicQuery가 정의가 없는 서브카테고리에 잘 반응하지 않음
- 개인 메시지가 비활성화되어 있는 경우 사용자 메뉴에 개인 메시지 링크를 추가하지 않도록
- `makeArray`를 discourse-common으로 이동
- 누락된 `run` import
- 비활성화 시 플러그인 CSS/JS 자산 로드하지 않도록 (#8275)
- 속삭임이 마지막 게시글인 경우 읽지 않은 주제가 지워지지 않던 문제 수정 (#8271)
- 모바일에서 음소거된 서브카테고리 숨김 (#8273)
- 양식에서 Enter 키가 새로고침 대신 제출하도록 (#8274)
- 알림 동의 배너를 키보드 및 스크린 리더로 사용 가능하도록 (#8255)
- discourse-markdown-it의 upload-short-url에서 attachment\_css\_class 상수 이동
- 각 멀티사이트 테넌트에 대해 `Discourse.system_user`를 별도로 캐싱 (#8276)
- 일부 조건에서 저장 중이지 않을 때 초안이 저장 중이라고 표시하던 문제 수정
- q 매개변수 없이 categoryId로 태그를 필터링할 수 있음 (#8264)
- 관리자 사이트 설정 UI에서 기본 사용자 선호 카테고리가 업데이트되지 않던 문제 수정
- import하는 믹신에 prettier 적용 (#8270)
- 바이오를 표시하기 전에 발췌문이 있는지 보장
- 올바른 슬러그 검증
- 백업 복원 시 빈 업로드 디렉터리 고려 (#8262)
- 슬러그가 비어 있는 경우 카테고리 url을 올바르게 생성
- /tags/filter/search 루트에 q 매개변수 필수 (#8263)
- pretty text에서 ember import 사용 금지
- 테스트에서 `Ember.run.debounce` 해킹에 모듈 사용
- 키워드를 사용하여 사용자 정의 필드 업서트 시 배열 키가 문자열로 변환됨
- 더 불안정한 jobs\_base\_spec.rb (#8259)
- 불안정한 jobs\_base\_spec.rb (#8258)
- 이미지 스케일 버튼을 조건 없이 배치
- ESC 키 및 외부 클릭 시 모달 닫기
- 이메일 주소로 PM 전송 시 오류 수정
- Category.find\_by(slug: …)보다 Category.find\_by\_slug를 선호
- TopicQuery의 슬러그로 카테고리 조회
- category\_id가 비어 있는 경우 사용자 검색에 올바르게 응답
- 테마 컴포넌트 설정이 UI에서 업데이트되지 않던 문제 수정 (#8247)
- 개발 중 플러그인 번역 다시 로드 (#8243)
- 마법사를 실행하고 사용자 정의 테마를 사용할 때 base\_scheme\_id가 nil이면 color\_scheme 이름으로 폴백 (#8236)
- oauth2\_user\_infos에 고유하지 않은 행 저장 허용
- rack-mini-profiler 업데이트
- 음소거된 서브카테고리 숨김 (#8239)
- 아바타의 nil 경우 처리, 혹시 모르기 위해
- 아바타 다운로드가 리다이렉트를 따르도록 허용
- 원박스된 게시글에서 투표자 표시 (#7768)
- 알림 생성 전에 좋아요 게시글 존재 확인
- restorer 스펙에 대한 Rubocop 규칙 (#8238)
- 재연결 단계에서 오류를 발생시키지 않는 비-멀티사이트 복구 (#8237)
- 컴파일되지 않은 이메일 스타일 css에 대한 후방 호환성
- 사용자가 볼 수 없는 경우 그룹 멤버를 로드하지 않도록
- 새 주제 생성 중 주제 입력을 비활성화하면 안 됨
- 새 로더와 함께 깨진 마법사 테스트
- Sortable 컨트롤러 변수 충돌
- ImportExport 모듈의 올바른 경로 (#8227)
- 복구 프로세스의 재연결이 올바른 DB에 연결 (#8218)
- 특정 조건에서 알림 누락
- `tl3 links no follow` 설정 준수 (#8232)
- 파일 크기로 인해 아바타 다운로드가 불가능한 경우 빈 아바타 반환
- web\_hook\_topic\_view\_serializer에서 image\_url 제외
- null-byte 검색으로 인한 500 오류 방지 (#8226)
- 응답 코드가 200인 경우 리다이렉트를 따르며 url 반환
- xkcd 이미지 리사이즈 금지
- 알림 웹훅에 사용자 id 포함 (#8195)
- 일부 속성이 누락된 경우 사용자 모델 로드
- 카테고리 업데이트 슬러그 검증을 멱등(idempotent)하게 만들기
- 알림 카운트 새로고침 시 알림만 다시 로드 (#8221)
- 작업에 대한 Zeitwerk 관련 수정 (#8219)
- 레이트 리밋 및 하이재킹 인증서 생성 (#8215)
- 원박스 오디오 및 비디오 태그에 일반 HTML5 미디어 확장자 추가 (#8216)
- 보안되지 않은 카테고리의 새 주제에서 멘션 자동 완성 수정
- ‘only\_hidden\_tags\_changed?’ 메서드는 태그가 변경되지 않았어도 'true’를 반환하던 문제 수정
- to\_i’d되었으므로 Id는 항상 true임
- D-button의 기본 유형을 button으로 설정 (#8217)
- zeitwerk와 함께 플러그인 생성기 수정 (#8220)
- 초안 시스템의 다양한 수정
- Redis gem을 4.1.3 버전으로 업데이트
- IE11을 위해 NodeList의 forEach 지원 폴리필 (#8213)
- 서브카테고리에 대한 인코딩된 슬러그 처리
- 인코딩된 슬러그를 잘라내지 않도록
- ‘\_MF’ 키가 아닌 경우 사이트 텍스트 오버라이드 표시 (#8189)
- 유효한 보간을 확인하기 위해 복수형 키를 `.other`로 변환
- Redis gem을 4.1.3 버전으로 업데이트 (#8197)
- redis freedom 패치 제거
- 더 많은 인코딩된 슬러그 수정 (#8191)
- URL을 두 번 인코딩하지 않도록
- 인코딩된 슬러그를 처리하는 더 많은 곳
- /categories의 nil 슬러그 처리
- 서브카테고리를 조회할 때 nil을 고려
- 주제 타임라인 위치 계산 수정
- 부모 태그가 있는 두 개의 태그 그룹에 속하는 경우 태그를 사용할 수 없음
- 예제 텍스트에서 인용문 생성기 사용
- 빈 push\_url로 알림을 보내지 않도록
- push\_url이 비어 있는 경우 알림 API 호출을 하지 않도록
- 카테고리 슬러그 인덱스를 수정하기 위한 마이그레이션 추가
- 프로필에서 입력을 제출할 때 쓰레기 버튼이 포커스를 받는 문제 방지 (#8198)
- 초대된 사용자 알림 이메일에 대해 private\_email 설정 준수
- 기존 사용자를 주제/PM에 초대할 때 주제 링크 포함
- GitHub 커밋 원박스의 라인 카운트 링크 수정
- 테스트에서 Public\_file\_server.enabled는 false (#8192)
- 카테고리의 중복 슬러그를 방지하기 위한 고유 인덱스 추가
- iOS에서 이모지를 선택할 때 답변 상자 고정 해제를 하지 않도록
- 더 이상 필요 없는 hiredis gem 제거
- 서브카테고리 권한 검증
- 카테고리 트리 깊이 검증
- 사용자가 게시글을 쓴 경우에만 알림 레벨 이동
- 작업에 대한 Zeitwerk 관련 수정 (#8187)
- 예약된 작업이 로드되도록 보장 (#8183)
- ‘local\_cdn\_url’ 메서드는 로컬 상대 url에서도 작동해야 함
- 테마가 js 파일을 업로드하고 서빙할 수 있도록 허용 (#8188)
- 사용 가능한 경우 컴포저 미리보기에서 업로드의 cdn url 사용
- TOTP로 비밀번호 변경 허용
- 더 많은 결과를 표시할 때 검색 메뉴 패널 스크롤 허용 (#8186)
- reviewable\_scores의 정확한 sub\_total 계산 (#8184)
- 설정된 경우 올바르게 인코딩된 슬러그 (#8158)
- 업로드 생성 시 디스크에서 임시 파일을 제거하도록 보장
- 연속 단락을 편집할 때 올바른 diff 표시 (#8177)
- 중복된 TopicAllowedUsers 생성 방지 (#8169)
- 경미한 Github 원박스 레이아웃 문제
- 검토 가능한 목록에 대한 모바일 조정
- Downsize\_uploads 스크립트
- 제거할 디렉터리가 없는 경우 실패하지 않도록
- 동시 이메일 생성 중 렌더러를 재사용하지 않도록
- 기본적으로 position으로 UserFields 정렬 (#8176)
- position으로 정렬된 사이트 user\_fields
- Site에 대해 position으로 UserField 정렬
- 게시글 이동 시 원래 오류를 삼키지 않도록
- 내러티브 봇 인증서는 ERB 템플릿 (#8174)
- iPad에서 주제 타임라인 배치
- 기존 게시글 타이밍이 게시글 이동을 방해할 수 있음
- 게시글 타이밍을 파괴할 때 읽은 게시글 수를 감소 (#8172)
- 사이트 설정 ‘shadowed-by-global’ 옵션 제거 (#8061)
- iOS에서 원래 스크롤 위치를 0으로 리셋하지 않도록
- 외부 저장소를 지원하도록 Downsize\_uploads 스크립트
- 설명을 명확히 하기 위해 user\_accuracy\_bonus 저장 (#8165)
- zeitwerk 변경 후 rake db:create 수정
- bin/turbo\_rspec에 대한 대기 중인 마이그레이션 솔루션
- discourse-ember-source gem 업데이트 (#8167)
- 사용자 설정 화면 하단에 모바일 패딩 추가
- SiteSetting 검증에서 카테고리 충돌 확인 (#8137)
- 정확도가 음수가 되더라도 음수인 검토 가능한 점수를 허용하지 않음
- 푸시 알림 API 호출 전에 push\_url이 존재하는지 보장
- 업로드 시 이미지를 올바르게 축소
- Maxminddb:get 작업이 더 이상 작동하지 않던 문제 수정
- trustLevel과 trust\_level 간의 혼동으로 인한 오류 (#8149)
- 주제 쓰레기/복구 시 사용자 투표 수 업데이트 (#8144)
- 컴포저가 표시될 때 iOS에서 주제 진행률의 올바른 위치
- application.rb의 빈 줄로 인한 깨진 rubocop (#8148)
- Sidekiq을 위해 lib/ 경로 자동 로드 (#8147)
- 렌더링 전에 차트 부모 요소가 여전히 존재하는지 보장 (#8145)
- EmojiOne은 이제 JoyPixels (#8142)
- 사용자가 먼저 주제를 생성하면 첫 번째 게시글 true (#8139)
- iPad에서 DiscourseHub 앱 내비 위에 컴포저 표시
- Visual Viewport 컴포저 높이 계산은 iOS에서만 적용
- DistributedMutex 강화
- triggerRefresh 및 서브카테고리 목록에서 예외 (#8131)
- post\_migrate에 마이그레이션 경로 사용 (#8133)
- Demon::DemonBase를 Demon::Base로 되돌리기 (#8132)
- 고급 튜토리얼 리셋을 먼저 일치시키기 시도 (#8048)
- 존재하지 않는 게시글에서 게시글 읽음 수 업데이트 트리거 방지 (#8128)
- 기본 로케일이 변경될 때 관찰 중인 사이트 설정 리셋
- 사용자 이름 제안 시 유니코드 화이트리스트 준수
- 카테고리 설명 텍스트를 올바르게 이스케이프 (#8107)
- 안드로이드에서 애플리케이션이 재개될 때 포커스 변경
- ‘have\_uploads’ 메서드에 비디오 태그 및 짧은 url 포함
- each\_upload\_url 메서드에 'short\_path’를 src로 포함
- 기본 로고 누락으로 인해 PWA 설치 깨짐
- 이를 사용하는 테스트 후 DiscoursePluginRegistry 상태 정리
- 분당 레이트 리미터에 전달된 옵션 수정
- 서버 측 플러그인 아웃렛을 올바르게 렌더링 (#8106)
- 임계값 계산 전에 최소한의 검토 가능한 항목 수 요구
- 민감도는 기본적으로 작동하지 않던 문제 수정
- Active Record 워밍업에서 버전 제거 (#8105)
- 그룹으로 메시징할 때 min\_trust\_to\_send\_messages 무시 (#8104)
- 속삭임/작은 동작과 함께 올바른 jumpToPost
- 기본적으로 Google Groups 크롤링에서 오류 시 중단하지 않도록
- 개발자 가이드에서 마이그레이션을 두 단계로 분리 (#8103)
- 게시글 숨김 로직은 플래그 액션에만 적용
- Google Groups 크롤러 로그인 실패
- 'max\_oneboxes\_per\_post’까지 원박스 미리보기
- TL3 -\>` TL0 스팸 관련 사항 복원
- 무시된 플래그는 정확도 점수에 포함되지 않아야 함
- 테마 SCSS 오류 처리 수정
- 개발 중 편집 시 플러그인 스타일시트 라이브 리로드
- 색상 스키마가 변경될 때 플러그인 스타일시트 라이브 리로드
- 플러그인 SCSS에 테마 변수를 포함하지 않고 register\_css 수정
- 변경 없이 카테고리 주제 템플릿 게시 허용하지 않음
- 보간 전에 번역에서 $ 이스케이프 (#8100)
- 활동 \>` 초안 화면에서 PM의 초안을 열기
- 해시가 존재하는 경우 페이지가 올바르게 다시 로드되도록 보장 (#8096)
- 게시글이 속삭임인 경우 비멤버를 독자로 표시하지 않도록
- 문제 있는 사용자 이름에 대한 보호 개선 (#8097)
- 테마 javascripts 폴더에서 raw hbs 템플릿을 올바르게 로드
- `/associate/{{token}}` 로드 시 형식을 명시적으로 지정
- InlineUploads에 버전 쿼리 매개변수 지원 추가
- `fancy_title`을 다시 이스케이프하지 않도록 (#8095)
- 태그 목록의 탭에서 최신 카운트를 표시하지 않도록
- Rails 6 멀티사이트 마이그레이션 및 플러그인 마이그레이션
- 업로드를 인라인할 때 코드 블록에서 `<img>` 지원
- 마크다운 정규식 패턴을 대소문자 구분 없도록
- 스태프 액션 로그에 ‘pull\_hotlinked\_images’ 편집을 기록하지 않도록
- 호버 시 관리자 대시보드 정렬 캐럿 아이콘 색상 변경
- mailgun\_api\_key가 "HTTP 웹훅 서명 키"도 지원하도록 (#8091)
- 보고서에서 모든 숫자 값을 캐스팅 (#8087)
- 계정 생성 후 세션에서 인증 데이터 지우기 (#8040)
- 사용자 디렉터리에 승인되지 않은 사용자를 포함하지 않도록
- POP3은 TLS 1.3과 작동하지 않음
- Safari를 위해 전체 화면 외부 로그인으로 전환
- Inline\_uploads 및 서브폴더 (#8076)
- Migrate\_to\_s3 작업 및 서브폴더
- 버전 확인 정보가 누락된 경우 qunit 테스트에서 오류
- 읽음 수 표시기를 확장할 때 스테이징된 사용자의 아바타를 표시하지 않도록
- 검색 결과 발췌문에 이모지 표시
- 원박스 감지 개선 (#8019)
- 동결된 String 수정 및 profile\_db\_generator가 카테고리 id 사용 (#8080)
- post\_edit\_time\_limit을 tl2\_post\_edit\_time\_limit으로 마이그레이션 (#8082)
- 게시글 이동 시 읽음 상태 이동
- 음소거된 태그가 있는 주제가 카테고리와 태그로 필터링할 때 표시되지 않던 문제 수정
- 게시글 편집 기간 스펙
- 서브폴더 설정에서 Inline\_uploads 작동하지 않던 문제 수정
- :reject\_user\_delete 액션은 ReviewableUser만 처리할 수 있음 (#8068)
- 모바일 Safari 컴포저 개선 (#8069)
- ‘그룹 멤버십 요청’ 기능을 가시성 수준 옵션 'logged\_on\_users’와 호환되도록
- iPhone Xs Max 및 Xʀ에 대한 컴포저 크기 조정
- 로거에 캐시된 컨트롤러 및 액션 보고
- google classic이 올바른 man\_facepalming 이모지를 가지고 있는지 보장 (#8065)
- 업로드 url이 존재하지 않는 경우 'short\_url’을 src로 포함
- 메시지 버튼 클릭 후 사용자 카드 닫기
- Safari의 same-site 쿠키 특이사항을 위한 인증 팝업 처리
- 플래그된 게시글 사용자 알림 (#8041)
- 게시글이 삭제되면 사용자가 알림을 받아야 함
- per\_host \<-\>` global 변경 시 깨진 스케줄러
- 테마 설정 내 중첩된 객체에 액세스할 수 있도록 허용
- 고아 사용자 레코드인 경우 배지 스킵
- 하트비트는 호스트마다 있어야 함
- 백그라운드 탭에서 알림이 올바르게 업데이트되지 않던 문제 수정
- 업데이트 확인 시 원격 테마 레코드가 저장되지 않던 문제 (#8054)
- 주제가 삭제된 경우 변경 사항을 게시하지 않도록 방지
- publish\_group\_state가 활성화된 경우 읽음 표시기 포함
- 존재하지 않는 복수형 키의 오버라이드된 텍스트로 인해 오류 발생
- 테마 CSS 라이브 리로딩이 첫 번째에 작동하도록 보장 (#8052)
- 공유 그룹에서 오류가 올바르게 표시되도록 turbo\_rspec 수정
- 배포 중 스타일시트를 생성하는 레이스 컨디션
- 주제 제목 편집 시 태그를 검색하지 않도록
- 주제가 더 이상 존재하지 않는 경우 폭발하지 않도록 방지
- omniauth로 활성화할 때 비밀번호 재설정 후 토큰 생성
- 사용자를 활성화할 때 변경 사항이 즉시 반영되도록 보장
- git 버전을 찾을 수 없어도 대시보드가 로드되도록 허용
- 첫 번째 게시글에 실제 독자를 표시
- 아바타 크기가 정수인지 보장
- 공식 iOS 앱 배너에는 app 인자만 사용
- 속성이 활성화된 경우에만 누가 읽었는지 표시
- 주제 그룹을 올바르게 업데이트
- en\_US에서 \_MF 텍스트 오버라이드가 작동하지 않던 문제 수정
- 사용자 정의 인증기 URL을 사용할 때 GET을 사용하여 요청 전송
- Add\_to\_serializer가 상속 체인을 올바르게 고려하지 않던 문제 수정
- 네이티브 앱을 사용할 때 PWA 배너를 표시하지 않도록
- 오류 메시지에서 중복된 %-기호 제거
- 사이드킥 프로세스별 하트비트 체크 (#7873)
- 미니 태그 선택기가 백그라운드에서 태그를 가져오도록 허용 (#8033)
- wordpress를 위해 숨겨진 게시글 필터링
- 자신의 계정을 삭제한 후 destination\_url 쿠키를 설정하지 않도록 (#8028)
- IE11에서 멘션 시 무한 루프
- 데스크톱 및 모바일 전용 플러그인 css 자산을 올바르게 로드
- 숨겨진 태그를 사용할 때 주제 편집 허용
- 폴백 핸들러의 레이스 컨디션 (#8005)
- 스테이징된, 사용되지 않는 관리자와 모더레이터를 삭제하지 않도록 시도
- 업로드의 알려지지 않은 확장자를 정기적으로 리셋
- PWA 설치 배너를 당분간 Android로 제한
- 그룹 설정이 활성화된 경우에만 읽음 표시기가 나타남
- 추가 로케일이 스태프에게만 사용 가능하도록 보장
- 오프셋이 항상 양수인지 보장
- 모바일 내비게이션이 클릭 이벤트 등록 해제 시 오류를 생성하는 문제 방지 (#8016)
- 추가 내비게이션 항목의 사용자 정의 href에 더 간단한 패턴 사용 (#8015)
- Rack-mini-profiler가 플러그인 프레임을 표시하지 않던 문제 수정
- 빠르게 스크롤할 때 J/K 내비게이션이 현재 선택을 리셋하던 문제 수정
- 그룹 초대 시 알림 레벨을 올바르게 설정
- 그룹을 메시지로 초대할 때 추적 상태 준수
- `topic_query_params`를 명시적으로 require
- 리매핑 후 배너 주제 캐시 지우기
- 보고서가 레코드를 수정하지 못하도록 보장 (#8006)
- 라이브러리 로딩 시 올바른 레이스 컨디션
- s3 관련 분산 잠금을 더 오래 보유
- 플러그인에 필요한 사용자 정의 속성을 queuedpost 페이로드에 저장 (#8009)
- addDiscoveryQueryParam에서 매개변수를 사용하려는 시도 (#8007)
- 비교 전에 omniauth 인증기 이름을 심볼로 변환
- 인증기 이메일이 누락된 경우 예외를 발생시키지 않도록
- auth-provider에서 돌아오는 이메일을 소문자로 변경
- 모델 사용을 SQL 쿼리로 대체
- post\_edits 보고서의 올바른 정렬 및 쿼리 제한 제거
- post\_edits 대시보드 보고서의 올바른 쿼리
- s3 업로드 확인 후 tmp 인벤토리 파일 제거
- Android의 스와이프-인 메뉴 RIP (#7997)
- 첫 번째 게시글을 이동할 때 `watching_first_post` 알림을 업데이트하지 않도록
- 신뢰할 수 있는 사용자가 하나의 플래그로 콘텐츠가 숨겨지도록 할 수 있음
- 복구 중 실패한 리매핑 방지
- 리매핑 중 topic\_links.url을 500자로 잘라내기
- 중복된 좋아요 알림을 생성하지 않도록 (#7999)
- 빈 2차 요인은 기본 이름을 가짐
- IE를 위해 String.prototype.repeat 폴리필 (#7994)
- 사용자가 PM에서 게시글을 쓴 경우 사용자 자체 삭제 금지
- 콘텐츠가 Nokogiri::XML::Element의 인스턴스일 수 있으므로 #dup을 #+ 대신 사용
- 테이블을 드롭할 때 읽기 전용 함수 드롭
- 백업 중 읽기 전용 함수 생성
- DiscourseHub 사용자 에이전트 감지
- ‘첫 번째 원박스’ 배지는 원박스된 URL에만 수여 (#7974)
- OmniAuth 루트 순서 수정
- Reviewable 업데이트 시 알림 (#7980)
- 특정 로케일에 대해 잘못된 discobot 튜토리얼이 시작되던 문제 수정
- distributed\_mutex 라이브러리에서 present? 의존성 제거
- HTTP 헤더에서 비-ASCII 파일명을 올바르게 인코딩
- /login 또는 /session 경로를 가진 같은 호스트의 리다이렉트를 따르지 않도록
- 숫자 및 심볼 이모지 대체 허용 (#7978)
- 일부 HTML로 인해 주제 임베딩이 실패하던 문제 수정
- 최소 가시성을 충족하지 않는 경우 주제를 숨기지/닫지 않도록
- 콤보박스 id로 이스케이프되지 않은 제목 사용 (#7979)
- S3 업로드에 cache-control 헤더가 누락되어 있던 문제 (#7902)
- flag-ratio 보고서가 disagreed \>` agreed인 사용자를 표시하도록 보장 (#7977)
- 그룹 소유자에게만 멤버십 요청 링크 표시 (#7543)
- 생성된 컨트롤러는 언더스코어 폴더에 있어야 함 (#7975)
- pikaday 피커가 UTC로 표시되도록 보장 (#7968)
- chrome에서 컴포저에 파일 복사/붙여넣기 허용 (#7969)
- b1f5949의 구문 오류
- workbox 경로를 멀티사이트와 호환되도록
- IE11에서 컴포저 미리보기 (#7970)
- 비추천된 “refresh” 아이콘을 "sync"으로 이름 변경 (#7966)
- Apple 브라우저 감지 개선 (#7961)
- 관찰 중인 단어의 다양한 개선
- 이미 존재하는 경우 소스 URL에 멀티사이트 업로드 경로를 포함하지 않도록
- 업로드 복구를 멀티사이트와 호환되도록
- 첫 번째 게시글이 이동될 때 답변을 올바르게 업데이트
- 모달 `onClose`가 반복적으로 호출되던 문제 수정
- 예외가 발생하면 멀티사이트 테스트 롤백
- 테스트에서 다른 스레드에서 redis 연결을 재사용하지 않도록
- Gravatar 업로드가 authorized\_extensions에 의존하던 문제 수정
- DistributedMutex (#7953)
- 관리자 사용자 페이지에서 사용자 이름 업데이트 시 더 나은 오류 메시지
- DbHelper.remap에 verbose 옵션 복원
- 마이그레이션에 frozen\_string\_literal: true 추가
- user-notifications-dropdown이 의도하지 않은 변경을 일으키는 문제 방지
- CDN이 활성화된 경우 `Post#each_upload_url`이 블록에 잘못된 경로를 yield함
- 첫 번째 db:migrate에서 초기화程序이 작동하도록
- Chromium 기반 Edge를 올바르게 식별
- 테마 컴포넌트에서 멀티 파일 스타일시트 지원 (#7950)
- 빈 시크릿으로 인해 SSO가 실패할 때 더 나은 오류 (#7946)
- 보고서 내보내기 시 기본 라벨 포함
- 유효한 태그가 선택되지 않은 경우 오류 메시지 제공
- `TopicEmbed.import`의 동결 문자열 오류 (#7938)
- 무시된 사용자의 라이브 로드된 게시글 숨김
- #18e2816 되돌리기 (#7940)
- 멀티사이트 설정에서 원래 및 최적화된 인벤토리에 동일한 id 사용
- 루트 형식에 기본 제약 사항 적용 (2차 시도) (#7920)
- auth\_redirect에서 쿼리 매개변수 유지 (#7923)
- migrate\_to\_s3 직후 작업이 실행되지 않도록 보장
- 주제의 카테고리 업데이트 시 태그 확인 개선 (#7921)
- 컴포저에서 허용되지 않는 경우 미분류 컨텍스트 제거 (#7922)
- 올바른 … 업데이트를 위해 featuredLink를 featured\_link로 백엔드에 전송 (#7915)
- 압축되지 않은 루트 경로를 확인하는 경우 uniq 대신 uniq! 사용. ZipUtils에 rails 명명 규칙 사용
- 마이그레이션이 동결된 문자열을 변경하려고 시도하던 문제 수정
- 게시글 이동 시 답변 수 업데이트
- 게시글 이동 후 사용자가 볼 수 없는 알림 삭제
- 게시글 이동 후 구 알림이 올바른 게시글로 링크되지 않던 문제 수정
- wrap 컴포넌트에서 camelCased 속성을 지정할 수 있도록 허용 (#7919)
- 게시글당 최소 읽기 시간 설정 (#7842)
- S3에 저장된 파일 외에도 로컬 업로드를 항상 백업
- ‘로그아웃 모두’ 요청 시 새로고침을 요청하지 않도록
- 게시글 알림에 동일한 사용자 이름 또는 이름을 표시 (#7862)
- RSS 피드의 사용자 프로필 링크에서 사용자 이름을 URL 인코딩
- ‘find\_missing\_uploads’ 메서드 내부에서 게시글 업로드 레코드 생성 제거
- 버튼으로 계정 삭제 모달을 닫지 못하게 하는 버그 수정 (#7904)
- 관찰 중인 단어 UI에서 번역할 수 없는 문자열
- 유니코드 사이트 제목을 가진 빈 백업 이름
- '로그아웃 모두’에서 `logout_redirect` 설정 준수
- 'raw’가 이미지 업로드 url이 아닌 것으로 시작하면 short-url로 변환되지 않던 문제 수정
- 핫링크된 비-이미지 url을 short url로 변환
- Apple 디바이스에서 모든 서비스 워커를 _다시_ 제거
- 비추천된 아이콘 이름 변경, 배지에 사용자 정의 아이콘 허용
- COMPILER\_VERSION이 변경될 때 extra\_js 테마 자산 다시 컴파일 (#7897)
- brotli가 지원되지 않는 경우 gzip 압축으로 폴백 (#7895)
- 핫링크된 비-이미지 url에 대해 마크다운 변환 스킵
- pg\_dump \>`= 11로 생성된 백업은 이식 불가능함 (#7893)
- 루트 형식에 기본 제약 사항 적용 (#7890)
- 억제된 카테고리가 추천 주제를 생성하지 않도록 보장 (#7863)
- site\_texts 루트에서 앰퍼샌드 허용
- 종속 설정이 변경될 때 설정 재계산
- 플래그 이유에 기본 로케일 사용
- 게시글에 답변이 없는 경우 bootbox를 표시하지 않도록 (#7866)
- 읽기 전용일 때 검색 로깅 끄기 (#7877)
- 더 많이 로드할 때 tags/show에서 스피너가 표시되도록 보장 (#7876)
- 해시가 있는 라우팅이 히스토리를 막지 않도록 보장 (#7872)
- 해시가 있는 라우팅이 히스토리를 막지 않도록 보장
- 최신 Selenium gem이 Google Groups 가져오기 스크립트를 깨뜨림
- 복구 중 CDN URL에 대한 리매핑이 잘못됨
- 멀티사이트에서 온 백업인 경우 다르게 리매핑
- 터보 테스트 종료 코드
- 탭 전환 시 테마 편집기 내용 지우기
- 리매핑이 읽기 전용 컬럼을 변경하려고 시도하지 않도록
- 크롤러 뷰의 제목에 카테고리 이름 표시
- 수동 SQL에 올바른 타임존 사용
- 충돌을 잡기 위해 예외를 사용하지 않도록
- 뒤로 버튼이 목록 대신 이전 주제로 이동하던 문제 수정
- 폭과 높이가 픽셀인 경우에만 이미지 크기를 추가
- 사용자 자신의 활동 페이지의 IE 그리드 레이아웃 문제
- 태그 중 하나라도 업데이트할 수 없으면 실패하도록
- 로컬 로그인이 비활성화되어 있는 경우 초대 버튼 표시하지 않도록
- 쿼리 문자열이 있는 /으로 라우팅이 작동하도록 보장 (#7859)
- 사이트가 S3를 사용하는 경우 download\_remote\_images\_to\_local을 비활성화하지 않도록 (#7861)
- 고유 제약 사항이 실패하면 사용자 정의 필드 업서트
- S3에서 라이트박스 이미지 다운로드에 올바른 content disposition이 있는지 보장 (#7845)
- 이모지 피커가 표시되지 않는 문제 방지 (#7856)
- 플러그인 인증기의 full\_screen\_login 매개변수 준수 (#7855)
- 알림 항목에 title 속성 사용 (#7840)
- 잘못 배치된 저장 버튼 제거
- 모든 표 형식 보고서에 ‘내보내기’ 버튼 표시 (#7838)
- 컴포넌트 활성화/비활성화 로그는 스태프 액션 로그에 표시되어야 함
- 이모지 헬퍼가 사용자 정의 이모지와 함께 작동하도록 보장 (#7843)
- /t/TOPIC\_ID/POST\_NUMBER이 올바르게 라우팅되도록 보장 (#7841)
- 페이지는 1부터 시작 (#7844)
- 잘못 배치된 아웃렛 제거
- 빈 SQL 쿼리로 새 배지 생성 실패 (#7837)
- 권한이 있는 사용자만 타이머 제거 버튼을 표시
- 미리 채워진 컴포저에 fancy title 대신 일반 제목 사용
- 사용자가 주제를 볼 수 없는 경우 알림 이메일을 보내지 않도록
- 정적 페이지가 절대 경로를 사용하도록 보장 (#7828)
- 원격 테마 업데이트를 diff할 때 로컬 테마 변경 사항을 올바른 임시 폴더로 복사
- 내비게이션 버그 수정
- FakeExceptions에는 원래 클래스 이름이 있어야 함
- 예외 원인은 그 자체로 예외임
- 부모를 무시할 때 서브 카테고리 내 주제를 읽지 않음으로 표시
- Turbo\_rspec은 이러한 옵션을 수락하지 않음
- 총 점수에 대기 중/동의된 점수만 포함
- 코드를 이미지로 대체하는 이모지 헬퍼 제공 (#7802)
- 내부 객체에서 TL이 변경된 경우 실패 방지 (#7808)
- 게시글을 위한 카테고리가 사용 불가능한 경우 주제 생성 허용하지 않음 (#7786)
- 문자열로 액션을 호출하는 것은 비추천됨 (#7807)
- escape 시 search-menu 닫기 (#7804)
- 미분류에서 게시글이 비활성화되어 있는 경우 `topic_create_allowed`에 uncategorized\_category\_id를 포함하지 않도록
- 배너를 만들기 전에 주제가 존재하는지 보장 (#7781)
- redis 읽기 전용 상태를 저장하기 위해 DistributedCache를 사용하지 않도록
- CategoryUser#batch\_set (#7787)
- category\_users 고유 인덱스에서 notification\_level 제거
- CategoryUser#batch\_set이 기존 레코드를 업데이트하지 않던 문제 수정
- Changed가 잘못 보고되던 문제 수정
- 관찰 중인 단어 캐시를 지울 때 반복
- 멀티사이트 업로드 url에는 db 이름 또는 ‘short-url’ 단어가 있어야 함
- 높은 고정 모달에 대한 모바일 오버플로우
- 전체 검토 가능한 대화로 가는 url이 서브폴더에서 작동하도록 보장
- 카테고리 선택기 검색은 카테고리로 스코프되어야 함 (#7794)
- :after\_auth 이벤트가 트리거되도록 보장 (#7791)
- `index` 루트에서 리다이렉트 시 뒤로 버튼 문제
- `InlineUploads`에서 캐리지 리턴 지원
- 마크다운 형식의 앵커 태그 내부의 img 태그를 대체하지 않도록
- `InlineUploads`의 앵커 태그 엣지 케이스
- 일부 툴바 작업이 `change` 이벤트를 트리거하지 않던 문제 수정
- 사용자가 숨겨진 게시글을 삭제하면 히스토리를 잃지 않아야 함
- 모든 설정에 대해 저장 시 모든 설정을 새로고침하지 않고, 일부로 제한
- ‘status’ 매개변수 변경이 태그 루트의 주제를 필터링하지 않던 문제 수정
- `InlineUploads`의 BBcode 엣지 케이스
- selectable\_avatars\_enabled 사이트 설정에 대한 올바른 이름 사용
- `InlineUploads`는 첨부 파일 링크를 마크다운 텍스트로 대체해야 함
- 확장자가 `nil`인 경우 `Upload#short_url`이 잘못된 URL을 생성함
- OP가 잠겨 있는 경우 사용자가 주제 정보를 편집할 수 없도록
- 레지스트리에 없던 위젯을 수정할 수 없던 문제 수정
- 고정된 iOS 버그를 위한 임시 해킹 제거 (#7773)

---

<div class="post-metadata">

### Author: ![neil](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/neil/32/102150_2.png) [@neil](https://meta.discourse.org/u/neil)
#### Post date: [2월 26, 2020, 3:26오전 UTC](https://meta.discourse.org/t/discourse-version-2-4/108194/4 "2020-02-26T03:26:29Z")

</div>

## UX 변경 사항

- 카테고리 편집 탭의 토픽 템플릿에서 이모지 피커 숨김 (#9036)
- 메인 컴포저 외부에서 로컬 날짜 피커 사용 시 숨김
- btn-small에서 아이콘 높이 제한하여 높이 불일치 방지
- 모바일에서 긴 계정 생성 양식의 이중 모달 스크롤 제거
- 사용자 이름과 user-name에 동일한 스타일 적용
- 첫 번째 속성만 하이퍼링크로 표시
- 속성 위치 기반 여백 추가
- 작은 버튼 외관 개선 (#8990)
- 작은 게시물 메시지에서 멘션을 올바르게 표시
- 모바일에서 토픽 알림 드롭다운 너비 조정
- 모바일 컴포저의 카테고리 및 태그 입력을 한 줄로 유지
- 투표 빌더 UI 세부 조정 (#8985)
- 모바일 사용자 카드에서 사용자 필드 높이 제한 및 line-clamp 믹스인 추가
- 스태프 작업 상세 높이 제한
- 카테고리 드롭의 토픽 수가 새 줄로 넘어가는 것 방지 (#8943)
- SK2 드롭다운에 border-box sizing 사용
- 대상 토픽의 모든 상위 카테고리 표시
- 컴포저 자동완성에서 모든 가시적 그룹 이름 제안
- 투표에서 이모지 확대 방지 (#8934)
- 기존 토픽으로 게시물 이동 시 대상 토픽 상태 표시
- RTL을 위해 모바일 사이트 설정 슬라이드 아웃 내비게이션 업데이트
- 클레임 가능한 리뷰어블 모바일 레이아웃 수정
- 모바일에서 새 배지가 고립되는 것 방지
- 사용자 필드가 유효하지 않을 때 항상 계정 생성 버튼 비활성화
- IDP에서 name 매개변수가 email과 같을 경우 무시 (#8869)
- composer.saved\_draft 문구 개선 (#8863)
- 아이콘 피커 전체 아이콘 목록 캐싱 (#8862)
- 타임라인 알림 버튼의 미묘한 렌더링 지연 제거 (#8860)
- 알림 수 선택 알고리즘 조정
- 데스크톱에서 토픽 진행 바가 깜빡이지 않도록 수정
- 배지를 위한 icon-picker 컴포넌트 도입 (#8844)
- 미니 태그 선택기 헤더가 줄바꿈되는 것 방지 (#8858)
- 미니 태그 선택기에 화살표 내비게이션 지원 추가 (#8857)
- 두 줄이 아닐 때 독킹 헤더의 제목 중앙 정렬
- 모바일에서 고정 옵션 설명 표시하지 않음 (#8846)
- 고정 옵션 아이콘이 새 줄에 오지 않도록 보장 (#8845)
- 카테고리 페이지에서 기본적으로 음소거된 카테고리 포함 (#8842)
- Google Map 원박스 아이콘 추가
- allow\_embedding\_site\_in\_an\_iframe 설정 숨김
- 작성 중 세로 토픽 타임라인 표시 (#8813)
- 자동 ‘카테고리 토픽’ 설정 도입 (#8804)
- 관리자 검색 in:all 시 자신의 PM만 보이도록 수정
- 잘못된 CSV 오류 메시지에 잘못된 줄 정보 포함 (#8773)
- 기본 카테고리 슬러그로 ‘-’ 사용 (#8607)
- 태그 동의어 추가 시 확인 요청
- 비공개 그룹을 나갈 때 사용자가 확인해야 함
- 토픽 선택 모달 세부 조정
- PM 제목 편집 외관 개선
- 모바일 바이오에서 목록 및 사용자 필드 외관 개선
- 화면에 모든 생성된 백업 코드가 표시되도록 보장
- CSV가 잘못된 경우 더 친절한 오류 반환. /badges 뷰로 돌아가기 위해 취소 버튼 추가
- IE11 비추천 경고 업데이트 및 기본 활성화
- 모바일 프로필에서 추천 토픽 중앙 정렬
- 카테고리 박스 링크의 JS 의존성 제거
- "서브카테고리가 있는 박스"의 서브-서브 카테고리 + 일관성
- 카테고리 검색 우선순위 검증 메시지 수정
- 서브-서브 카테고리를 위한 카테고리 페이지 스타일 일부 조정
- 답글의 오픈그래프 이미지 폴백으로 아바타 사용 금지 (#8605)
- Invites#show는 json으로 요청할 수 없으며 올바르게 구성되지 않음 (#8570)
- 알림/트래킹 상태를 위한 새로운 벨 아이콘
- 카테고리 목록에서 서브-서브 카테고리 스타일링 개선 (#8593)
- 카테고리 목록에서 손자 카테고리 표시 (#8592)
- OP에서 게시물 관리자 메뉴가 헤더 아래에 나타나는 것 방지
- 숨겨진 토픽 콘텐츠의 투명도 감소, 컨트롤은 제외
- 긴 그룹 이름을 고려한 사용자 관리자 페이지 세부 조정
- PM 수신자 입력에 더 많은 유연성을 주기 위한 세부 조정
- 모바일용 콤보 박스 탭 영역 증가
- “좋아요/읽음” 복수형 처리
- Firefox에서 소셜 로그인/가입 버튼 정렬 개선
- 이미지 라이트박스 z-index가 모달 z-index보다 높아야 함
- 토픽으로 이동 및 메시지로 이동 모달의 문구 개선
- 멘션 가능한 그룹 세트에 공개 그룹 포함 (#8516)
- iOS 가입 모달 작은 수정
- 태그 콤보 박스 스타일이 토픽의 태그와 일치하도록 수정
- 태그 정보 세부 스타일 업데이트
- 차트 로딩 지연 감소 시도 (#8529)
- 업로드 모달에서 ‘더 보기’ 제거 (#8470)
- 모바일 사용자 카드의 아바타 애니메이션 제거 (#8483)
- 사용자 제목의 이중 인코딩 제거
- 초기 패널 로드 시 스크롤바 방지 (#8456)
- 마법사 단계 여백 조정 (#8452)
- 링크 추가 시 선택 범위의 앞쪽 공백 건너뛰기
- 제목이 같더라도 그룹 전체 이름 표시 (#8437)
- 터치 디바이스에서 호버 이미지 그림자 표시 금지 (#8429)
- 백업 복원이 비활성화되어 있을 때 명확한 메시지 표시
- 라이트박스 이미지 호버 효과 추가 (#8416)
- 투표에서 '결과 숨김’을 '투표 보기’로 이름 변경 (#8403)
- 스케일이 정의되지 않은 경우 선택된 스케일을 100%로 설정
- 다크 테마에서 공유 아이콘 색상 일관성 유지
- 긴 가입 양식 콘텐츠 페이드 증가로 스크롤 더 명확하게 표시
- 더 눈에 띄는 대체 인증 링크
- 관리자 패널에서 테스트 이메일 제출에 Enter 키 허용
- 총 사용자 수 대신 영향받을 사용자 수만 표시
- PM 토픽 목록에 +n 표시기 추가 (#8353)
- content\_security\_policy\_script\_src 설정에 CSP 문서 링크 추가
- Firefox에서 API 키 복사 시 앞뒤 공백 추가 금지
- 태그가 선택되지 않은 경우 태그 입력에서 필수 태그 제안
- “관리자 권한 부여” 이메일 및 UI에 사용자 이메일 주소 표시
- 태그 그룹 이름 입력 필드 확장 및 플레이스홀더 텍스트 추가
- 접근성 향상을 위해 경고 및 모달 닫기를 버튼으로 변환
- 다크 테마에서 `<select>`에 올바른 배경 적용 (#8234)
- iOS에서 인용 개선
- iOS 컴포저 회귀 버그 수정
- 색상 변수를 사용하여 비활성화된 드롭다운 스타일 업데이트
- 검색 메뉴 결과에서 태그 표시 표준화
- 대시보드가 git 비교 대신 git 커밋 목록으로 링크
- 그룹 멤버십 UI 명확화 (#8210)
- 발췌문에서 로컬 날짜가 UTC임을 강조 (#8208)
- GitHub 원박스 정보가 불필요하게 줄바꿈되지 않도록 보장
- 이메일에서 새로운 GitHub 원박스 렌더링 개선
- 투표 빌더를 위해 투표 태그 닫기 후 줄바꿈 추가
- 더 나은 정렬 옵션을 위해 다이제스트 이메일 푸터를 테이블로 감싸기
- 컴포저 링크 모달 검색 결과에 메타데이터 포함
- 더 쉬운 스타일링을 위해 다이제스트 이메일 템플릿에 CSS 클래스 추가
- 비밀번호 재설정 모달의 “도움” 버튼에 글리프 추가
- 모달에서 Enter를 사용하여 주요 작업 트리거
- GitHub 이슈 라벨에 테마 색상 사용
- 더 나은 컴포저 하이퍼링크 모달 (#8160)
- iOS 컴포저 레이아웃 리팩토링
- GitHub 이슈 설명 렌더링에 고정 폭 폰트 사용 중단
- GitHub 원박스 아이콘 크기 축소
- iOS 13에서 iPad 키보드 사용자 설정 제거
- iOS 앱에서 토픽 진행 배치 수정
- 새 인증기 생성 시 이름 입력 (#8153)
- 빠른 액세스 프로필 탭에 “임시 저장” 추가 (#8155)
- 높은 모달 높이를 뷰포트 %로 제한
- Android에서 컴포저 레이아웃 수정
- iPad에서 키보드를 닫을 때 컴포저 리사이즈 트리거
- 관리자 텍스트 필드 편집 시 크롬 자동완성 우회
- 게시물 메뉴 버튼과 동일한 순서로 읽음/좋아요 표시 (#8140)
- iPad에서 전체 뷰포트 컴포저 레이아웃
- 토픽 진행 배치 수정
- 토픽 진행 바 정렬 수정 및 일부 매직 숫자 제거
- iPad에서 컴포저 레이아웃 개선
- 컴포저의 편집 이유 링크를 아이콘으로 변경
- iOS 컴포저 높이에 Visual Viewport API 사용
- 약관에 페이지에서 특정 관리자 카테고리를 구분하기 위해 클래스 추가
- 게시물 알림에서 시간 표시에 중간 형식 사용 (#8074)
- 커밋 수 대신 SHA로 설치된 버전 표시
- RTL 컴포저 존재 아바타 정렬 조정
- 임베드/토픽용 더 나은 사용자 이미지
- 타임라인 컨트롤을 상단에 정렬
- 읽음 수가 0이면 읽음 표시기 숨김
- 토픽 목록 임베드에 Flexbox 사용
- em 단위 대신 vertical-align: middle 사용
- 색상 코드 변수 사용
- 임베드된 토픽 목록 HTML 구조를 테이블에서 div로 변환
- 읽음 표시기 개선 (#8049)
- 데스크톱 알림에 대한 사용되지 않는 문자열 제거
- #8047의 작은 후속 작업
- 헤더에서 태그 정렬 개선 (#8047)
- 검색에서 크롬 자동완성 버그 워크어라운드
- 긴 서브카테고리 이름을 가진 카테고리 박스 레이아웃 수정
- 인용문에서 라이트박스되지 않은 이미지가 늘어나거나 찌그러지는 것 방지 (#8021)
- 사용자가 태그를 생성할 수 없으면 “태그 생성” 옵션 숨김 (#7723)
- category-title-before 플러그인 아울렛 배치 일관성 (#8010)
- 사이트 설정 설명에 robots.txt 편집기 링크 추가
- 필요 시 로컬라이즈되지 않은 인증 제공자 이름으로 폴백
- 모바일 뷰포트보다 높이가 높아지지 않도록 트위터 원박스 iframe 방지
- 일반적인 OmniAuth 예외에 대한 오류 처리 개선 (#7991)
- 양식을 위한 더 많은 공간을 가질 수 있도록 관리자 이메일 템플릿 수정 (#7993)
- 무시 기간 모달을 열 때 사용자 이름 지우기
- 인증 플로우 중에 로그인/가입 헤더 버튼 숨김
- no\_ember 페이지에 로그인 버튼 아이콘 추가 (#7982)
- 투표 빌더 모달 레이아웃 개선
- 리포트 내보내기 UI의 날짜 개선 (#7971)
- 로컬 날짜 플러그인에서 더 짧은 요일 라벨 사용
- 날짜 피커에서 더 짧은 요일 라벨 사용
- 숨겨진 경우 "게시물 유지"를 "게시물 숨김 유지"로 이름 변경 (#7767)
- 관리자 다이제스트 이메일 미리보기 페이지 스타일 수정 (#7959)
- 무시된 사용자 목록에서 혼란스러운 테두리 제거
- 프로필 뷰를 다른 요소와 일관되게 유지 (#7956)
- 쿠킹된 날짜가 줄바꿈되는 것 방지 (#7944)
- 카테고리 권한 변경 시 그룹을 추가하지 않고 저장 버튼을 클릭하면 관리자 경고 표시 (#7947)
- 고정/트래킹 이유 텍스트 대비 증가, 레이아웃 개선
- 계정 설명이 없는 경우 계정 관련성 개선
- post-controls에 확장/축소 클래스 추가 (#7932)
- 원박스 파비콘 세로 정렬 수정 (#7926)
- 모바일에서 긴 태그 헤딩 레이아웃 개선
- 더 나은 모바일 간격을 위해 아바타 업로드 모달 리팩토링
- 초대 ‘찾을 수 없음’ 메시지 업데이트
- 모바일에서 프로필 이미지 업로드 컨트롤 간격 수정
- 카테고리 박스 제목에 href가 있는 `<a>` 태그 추가 (#7901)
- 이중 인증 설정에서 중복된 복사본 제거
- SCSS 색상 변수 사용
- 기본적으로 시스템 편집 알림 비활성화 (#7896)
- ‘변경 사항 저장’ 버튼을 아래로 이동하기 위해 무시 및 음소거 섹션 교체
- robots.txt 텍스트 영역에 뷰포트에 상대적인 높이 사용
- 편집 모달에서 컨트롤 재배치
- 드롭다운 위에 팝업 팁이 표시되도록 보장 (#7891)
- 모바일 편집기 스타일 수정 (#7878)
- 태그 그룹 플레이스홀더 업데이트
- PM 아이콘 링크에 title 속성 및 aria-label 추가
- 뷰포트에 없는 선택된 게시물 폐기 (#7869)
- 게시물 확장 버튼 정렬 수정 (#7865)
- 기본 사이트 로고 높이를 짝수인 40px로 설정
- 차원 없는 SVG를 수용하기 위해 배지 아이콘에 너비 부여
- 줄바꿈이 있는 트위터 상태 원박스 개선
- 인용된 트윗 스타일링 추가 (#7832)
- 컴포저에서 유사 토픽 결과 스타일링 개선 (#7839)
- 검색 메뉴 결과에서 태그와 카테고리를 같은 줄에 배치 (#7830)
- 토픽 타이머 제거 버튼의 모바일 위치 개선
- 검색 메뉴 결과에서 각 정보에 자체 줄 부여 (#7825)
- ignored\_user\_summary 복사본 업데이트 (#7748)
- 트래킹 중인 토픽 표시 링크 이동, 번역 단순화
- 비디오 플레이스홀더 아이콘 변경
- 게시물이 읽힌 후 게시물 미읽음 툴팁 숨김 (#7813)
- 원박스 비디오 플레이스홀더 아이콘을 회색으로 설정
- 닫힌 토픽에서 게시물을 승인할 때 확인 필요
- 토픽 타이머를 제거하기 위한 새로운 인라인 버튼 (#7790)
- 토픽 보류용 단축키 추가 (#7798)
- 타임스탬프 변경 모달 날짜 피커 개선 (#7771)
- 아카이브된 게시물에 좋아요 아이콘 표시 (#7775)

## 보안 변경 사항

- U2F / TOTP를 통한 2FA
- 백업 메타데이터 파싱 시 엄격한 JSON 파싱 사용
- 제2인자 인증 로직 개선
- 사용자 API 키 취소 시 권한 확인 수정
- WildcardUrlChecker 취약점
- 가능한 XSS를 피하기 위해 rack-mini-profiler 업그레이드 (#8537)
- SVG 파일에서 이벤트 핸들러 제거
- 이미지 업로드만 인라인으로 포함되도록 보장
- puma를 3.12.1에서 3.12.2로 버전 업데이트 (#8464)
- 멘션 자동완성 시 권한 확인
- 복원 시 백업을 안전하게 압축 해제 (#8166)
- 관리자를 위해 미니 프로파일러가 잘못 활성화됨
- 파일을 안전하게 압축 해제 (#8124)
- rubyzip 의존성 업데이트
- XSS를 수정하기 위해 rack-mini-profiler를 최신 버전으로 업데이트
- 존재하지 않는 경우 base\_uri를 임베더블 호스트로 허용하지 않음
- 사용자 프로필 위치 필드를 원박스화할 때 XSS
- 인증 제공자를 통해 계정 활성화 시 비밀번호 재설정
- 쿼리 문자열에 CSRF 토큰 전송 금지
- nokogiri 버전 업데이트
- 익명 JS 오류 보고에 레이트 리미팅 추가
- 접근 권한이 없는 사용자에게 카테고리 세부 정보 공개 금지
- login\_required 사이트에서 message-bus 접근 제한
- OmniAuth 요청 단계에 CSRF 토큰이 포함된 POST 요구
- 뮤텍스 키로 사용하기 위해 이메일 ID 정리
- 관련 계정 연결 시 확인 화면 추가
- 백업 청크 식별자 검증
- 관리자 패널에서 감시 중인 단어 표시 시 XSS
- 기본 카테고리를 이용한 SQL 인젝션
- lodash 업그레이드
- 설정 페이지에서 제목 선택기를 이용한 XSS
- 초대 이메일에서 HTML 제거
- 라우트에서 XSS
- `[details]`를 포함하는 게시물의 이메일 텍스트 이스케이프.

## 성능

- 호스트명을 가져오기 위해 셸링을 적극적으로 수행하지 않음
- 허용된 사용자 필드를 더 효율적으로 메모이즈 (#8968)
- PostRevisor#diff\_size 메모이즈 (#8939)
- 게시물 편집 최적화
- 알림 생성 시 사용자를 배치로 로드 (#8870)
- 큰 데이터베이스에서 게시물 이동 속도 향상
- 사용자 카드를 위한 별도 라우트 사용 및 사용자 직렬화기 분리 (#8789)
- 사용자 직렬화를 단순화하기 위해 추천 배지 랭크 캐싱 (#8698)
- 무시/음소거 정보 직렬화 시 DB 쿼리 감소 (#8629)
- current\_user 객체에 무시 및 음소거된 사용자 ID 캐싱
- 가디언에서 무시/음소거 권한 확인 시 DB 쿼리 피하기
- user\_stats 테이블에 사용자 배지 수 캐싱 (#8610)
- 게시물 변환 시 쿼리 횟수 감소 (#8358)
- NGINX에서 정적 자산 캐싱 시간 연장
- 배너를 위한 필터링된 인덱스 추가
- 게시물 이동을 가속화하기 위해 알림에 인덱스 추가
- 답글 게시 시 클라이언트에서 임시 저장물을 파괴하는 것 중단
- 비용이 높은 업로드 정리 실행 빈도 감소
- 요약 이메일에 신규 사용자 수 캐싱
- category\_groups에 group 인덱스 추가 (#8231)
- oauth2\_user\_infos(user\_id, provider)에 고유 인덱스 추가 (#8230)
- 읽음 상태 이동 속도 향상
- 핫 패스에서 정규식 피하기
- 이메일 템플릿 렌더링 시 렌더러 재사용
- 약관 페이지 렌더링 시간 단축 및 카테고리 관리자 제한 (#8112)
- 멀티사이트 전체에서 스키마 캐시를 워밍업하도록 보장
- 연결을 닫을 때마다 스레드를 생성하지 않도록 피하기
- 다른 사용자의 게시물이 읽힐 때 리더 수 업데이트. 단순히 카운트를 업데이트하기 위해 게시물 데이터를 다시 가져오지 않음 (#8078)
- 파비콘 프록시에 CDN URL 사용
- 정기적인 작업 스케줄에 여러 스레드 실행
- 사용자 작업의 일관성 창 감소
- 사용되지 않을 때 공유 임시 저장물 필터링 피하기
- 사용하는 유일한 필드만 선택
- 그룹 멤버가 마지막으로 읽은 게시물을 사전 계산
- 컴포저 본문 길이 계산 속도 향상
- 토픽 뷰에서 N+1 피하기
- Rake posts:rebake\_uncooked\_posts가 인라인으로 실행
- Message\_bus가 범람할 때 서버에 의해 지연됨
- 캐시 저장소 사용에 대한 더 많은 제약 추가
- 직접 PM을 조회할 때 쿼리 속도 개선
- JSON 직렬화에 Oj 사용 (#7820)
- 큰 텍스트 블록의 차이 비교에 소요되는 시간 제한
- JSON 직렬화에 Oj 사용 (#7780)

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2월 26, 2020, 3:32오전 UTC](https://meta.discourse.org/t/discourse-version-2-4/108194/5 "2020-02-26T03:32:28Z")

</div>


