pkg update's avatar

pkg update

@pkgupdt@hl.pkgu.net · 204 following · 152 followers

A hobbyist photographer, football fan and ex software engineer.

This account is for my personal records. I mostly post in Korean, but I can communicate in English and Japanese.

I use tags for my photo posts.

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

역시 전직?은 어쩔 수 없나, 계속 최적화 아이디어가 떠오르는데, 끽해야 1천개도 처리 안 하는 개인용 스트립트에 그런 최적화해서 무슨 이득이 있나 싶다. 😇

뉴스봇 - 국제's avatar
뉴스봇 - 국제

@news_global@802.3ether.net

미, 2028년부터 본토 육군 기지에 '초소형원자로' 설치 추진
(서울=연합뉴스) 전명훈 기자 = 미군이 자국 본토 내 다수의 핵심 육군기지에 '초소형 원자로'를 설치해 갈수록 커지는 전력 수요에 대응하기로 ...
yna.co.kr/view/AKR202510151341

鷺ノ宮's avatar
鷺ノ宮

@sagi@misskey.io

これからも魅力的な鉄道写真を撮っていきたい限り…

すとりけ(上昇中):role_photographer:'s avatar
すとりけ(上昇中):role_photographer:

@strike_zeam@misskey.io

Wooh:eggdog:'s avatar
Wooh:eggdog:

@Wooh@misskey.io

はさまれぷっぷー

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

사진가 이노우에 히로키(井上浩輝) 선생이 사진을 업이든 취미든 해나가기 위한 3요소 중 하나로 피사체에 대한 관심과 애정을 꼽은 적이 있다. 즉 좋아하는 것들을 찍어야 잘 된다는 이야기. 당연해 보이지만 곰곰이 생각해보면 생각보다 간단한 일이 아니다. 선생도 애정으로부터 그에 대해 알고 싶어해야하고 공부해야 한다고 말씀을 이어갔고.

참고로 그 3요소 중 나머지 둘은 사진 이론에 대한 이해와 명작을 보는 경험과 안목이었다.

KDE's avatar
KDE

@kde@floss.social

Happy Birthday to us 🎂! KDE is 29!

Today KDE is 29 years old and we are celebrating kicking off our yearly . Donate and make KDE's wishes come true.

kde.org/fundraisers/yearend202

Konqi opens a magic box of wonderful KDE things on his birthday.

Image by Arctaxia.
ALT text detailsKonqi opens a magic box of wonderful KDE things on his birthday. Image by Arctaxia.
pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

8bit면 256이니까, 연산할 필요 없이 그냥 정수-정수 LUT 돌려버려도 되긴 되네. 비싼 float 처리 해 봤자 최종단에서 양자화되는 거라 오차는 최대 0.5 나는거고, 그 것도 어차피 피할 수 없는 오차라면 테이블 그 것도 상수로 박아서 돌려버려도 큰 차이가 없구만.;;

제미나이한테 코딩 시키고, chatgpt한테 가져가서, 이거 문제점들 다 알려줘, 하고 그걸 다시 제미나이한테 들고 가서 왜 이런 문제들을 놔 뒀지? 일 제대로 안할꺼야? 하고 있자니 이게 바로 악덕 매니저다. ㅋㅋㅋㅋ 🤣

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

예전에 현상한 사진들은 지금 보면 마음에 안 드는 부분들 - 그 당시엔 눈치를 못 챘거나, 개선할 기술이 나에게 없었거나 - 이 있는데, 그렇다고 다시 현상하자니 시간이 없네. 😅

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

전주 경기전 사진 3장 더.

Gyeonggijeon Shrine, Jeonju, Jeonbuk-do, Korea.
ALT text detailsGyeonggijeon Shrine, Jeonju, Jeonbuk-do, Korea.
Gyeonggijeon Shrine, Jeonju, Jeonbuk-do, Korea.
ALT text detailsGyeonggijeon Shrine, Jeonju, Jeonbuk-do, Korea.
Gyeonggijeon Shrine, Jeonju, Jeonbuk-do, Korea.
ALT text detailsGyeonggijeon Shrine, Jeonju, Jeonbuk-do, Korea.
Silverkey | 은열쇠 🗝️'s avatar
Silverkey | 은열쇠 🗝️

@silverkey.social@bsky.brid.gy

머스크의 스페이스X와 xAI가 테슬라의 사이버트럭 재고를 구매해주고 있다고… 보통 이런 경우는 이해 충돌이지 않나 싶은데 진짜 대단하군. 이런식으로 테슬라 4분기 실적 개선하려는 것은 물론 전기차 세금 혜택 끝나기 전에 받아가겠다 이런건가

RE: https://bsky.app/profile/did:plc:7qwkxkh4lz2unhehubhbhpt5/post/3m33feg2kh22s

Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

Fedify 1.9.0: Security enhancements, improved DX, and expanded framework support

We are excited to announce Fedify 1.9.0, a mega release that brings major security enhancements, improved developer experience, and expanded framework support. Released on October 14, 2025, this version represents months of collaborative effort, particularly from the participants of Korea's OSSCA (Open Source Contribution Academy).

This release would not have been possible without the dedicated contributions from OSSCA participants: Jiwon Kwon (@z9mb1), Hyeonseo Kim (@gaebalgom), Chanhaeng Lee (@2chanhaeng), Hyunchae Kim (@r4bb1t), and An Subin (@nyeong). Their collective efforts have significantly enhanced Fedify's capabilities and made it more robust for the fediverse community.

Origin-based security model

Fedify 1.9.0 implements FEP-fe34, an origin-based security model that protects against content spoofing attacks and ensures secure federation practices. This critical security enhancement enforces same-origin policy for ActivityPub objects and their properties, preventing malicious actors from impersonating content from other servers.

The security model introduces a crossOrigin option in Activity Vocabulary property accessors (get*() methods) with three security levels:

// Default behavior: logs warning and returns null for cross-origin content
const actor = await activity.getActor({ crossOrigin: "ignore" });

// Strict mode: throws error for cross-origin content
const object = await activity.getObject({ crossOrigin: "throw" });

// Trust mode: bypasses security checks (use with caution)
const attachment = await note.getAttachment({ crossOrigin: "trust" });

Embedded objects are automatically validated against their parent object's origin. When an embedded object has a different origin, Fedify performs automatic remote fetches to ensure content integrity. This transparent security layer protects your application without requiring significant code changes.

For more details about the security model and its implications, see the origin-based security model documentation.

Enhanced activity idempotency

Activity idempotency handling has been significantly improved with the new withIdempotency() method. This addresses a critical issue where activities with the same ID sent to different inboxes were incorrectly deduplicated globally instead of per-inbox.

federation
  .setInboxListeners("/inbox/{identifier}", "/inbox")
  .withIdempotency("per-inbox")  // New idempotency strategy
  .on(Follow, async (ctx, follow) => {
    // Each inbox processes activities independently
  });

The available strategies are:

  • "per-origin": Current default for backward compatibility
  • "per-inbox": Recommended strategy (will become default in Fedify 2.0)
  • Custom strategy function for advanced use cases

This enhancement ensures that shared inbox implementations work correctly while preventing duplicate processing within individual inboxes. For more information, see the activity idempotency documentation.

Relative URL resolution

Fedify now intelligently handles ActivityPub objects containing relative URLs, automatically resolving them by inferring the base URL from the object's @id or document URL. This improvement significantly enhances interoperability with ActivityPub servers that use relative URLs in properties like icon.url and image.url.

// Previously required manual baseUrl specification
const actor = await Actor.fromJsonLd(jsonLd, { baseUrl: new URL("https://example.com") });

// Now automatically infers base URL from object's @id
const actor = await Actor.fromJsonLd(jsonLd);

This change, contributed by Jiwon Kwon (@z9mb1), eliminates a common source of federation failures when encountering relative URLs from other servers.

Full RFC 6570 URI template support

TypeScript support now covers all RFC 6570 URI Template expression types in dispatcher path parameters. While the runtime already supported these expressions, TypeScript types previously only recognized simple string expansion.

// Now fully supported in TypeScript
federation.setActorDispatcher("/{+identifier}", async (ctx, identifier) => {
  // Reserved string expansion — recommended for URI identifiers
});

The complete set of supported expression types includes:

  • {identifier}: Simple string expansion
  • {+identifier}: Reserved string expansion (recommended for URIs)
  • {#identifier}: Fragment expansion
  • {.identifier}: Label expansion
  • {/identifier}: Path segments
  • {;identifier}: Path-style parameters
  • {?identifier}: Query component
  • {&identifier}: Query continuation

This was contributed by Jiwon Kwon (@z9mb1). For comprehensive information about URI templates, see the URI template documentation.

WebFinger customization

Fedify now supports customizing WebFinger responses through the new setWebFingerLinksDispatcher() method, addressing a long-standing community request:

federation.setWebFingerLinksDispatcher(async (ctx, actor) => {
  return [
    {
      rel: "http://webfinger.net/rel/profile-page",
      type: "text/html",
      href: actor.url?.href,
    },
    {
      rel: "http://ostatus.org/schema/1.0/subscribe",
      template: "https://example.com/follow?uri={uri}",
    },
  ];
});

This feature was contributed by Hyeonseo Kim (@gaebalgom), and enables applications to add custom links to WebFinger responses, improving compatibility with various fediverse implementations. Learn more in the WebFinger customization documentation.

New integration packages

Fastify support

Fedify now officially supports Fastify through the new @fedify/fastify package:

import Fastify from "fastify";
import { fedifyPlugin } from "@fedify/fastify";

const fastify = Fastify({ logger: true });
await fastify.register(fedifyPlugin, {
  federation,
  contextDataFactory: () => ({ /* your context data */ }),
});

This integration was contributed by An Subin (@nyeong). It supports both ESM and CommonJS, making it accessible to all Node.js projects. See the Fastify integration guide for details.

Koa support

Koa applications can now integrate Fedify through the @fedify/koa package:

import Koa from "koa";
import { createMiddleware } from "@fedify/koa";

const app = new Koa();
app.use(createMiddleware(federation, (ctx) => ({
  user: ctx.state.user,
  // Pass Koa context data to Fedify
})));

The integration supports both Koa v2.x and v3.x. Learn more in the Koa integration documentation.

Next.js integration

The new @fedify/next package brings first-class Next.js support to Fedify:

// app/api/ap/[...path]/route.ts
import { federation } from "@/federation";
import { fedifyHandler } from "@fedify/next";

export const { GET, POST } = fedifyHandler(federation);

This integration was contributed by Chanhaeng Lee (@2chanhaeng). It works seamlessly with Next.js App Router. Check out the Next.js integration guide for complete setup instructions.

CommonJS support

All npm packages now support both ESM and CommonJS module formats, resolving compatibility issues with various Node.js applications and eliminating the need for the experimental --experimental-require-module flag. This particularly benefits NestJS users and other CommonJS-based applications.

FEP-5711 collection inverse properties

Fedify now implements FEP-5711, adding inverse properties to collections that provide essential context about collection ownership:

const collection = new Collection({
  likesOf: note,  // This collection contains likes of this note
  followersOf: actor,  // This collection contains followers of this actor
  // … and more inverse properties
});

This feature was contributed by Jiwon Kwon (@z9mb1). The complete set of inverse properties includes likesOf, sharesOf, repliesOf, inboxOf, outboxOf, followersOf, followingOf, and likedOf. These properties improve data consistency and enable better interoperability across the fediverse.

CLI enhancements

NodeInfo visualization

The new fedify nodeinfo command provides a visual way to explore NodeInfo data from fediverse instances. This replaces the deprecated fedify node command and offers improved parsing of non-semantic version strings. Try it with:

fedify nodeinfo https://comam.es/snac/

This was contributed by Hyeonseo Kim (@gaebalgom). The command now correctly handles various version formats and provides a cleaner visualization of instance capabilities. See the CLI documentation for more options.

Enhanced lookup with timeout

The fedify lookup command now supports a timeout option to prevent hanging on slow or unresponsive servers:

fedify lookup --timeout 10 https://example.com/users/alice

This enhancement, contributed by Hyunchae Kim (@r4bb1t), ensures reliable operation even when dealing with problematic remote servers.

Package modularization

Several modules have been separated into dedicated packages to improve modularity and reduce bundle sizes. While the old import paths remain for backward compatibility, we recommend migrating to the new packages:

  • @fedify/cfworkers replaces @fedify/fedify/x/cfworkers
  • @fedify/denokv replaces @fedify/fedify/x/denokv
  • @fedify/hono replaces @fedify/fedify/x/hono
  • @fedify/sveltekit replaces @fedify/fedify/x/sveltekit

This modularization was contributed by Chanhaeng Lee (@2chanhaeng). The old import paths are deprecated and will be removed in version 2.0.0.

Acknowledgments

This release represents an extraordinary collaborative effort, particularly from the OSSCA participants who contributed numerous features and improvements. Their dedication and hard work have made Fedify 1.9.0 the most significant release to date.

Special thanks to all contributors who helped shape this release, including those who provided feedback, reported issues, and tested pre-release versions. The fediverse community's support continues to drive Fedify's evolution.

For the complete list of changes, bug fixes, and improvements, please refer to the CHANGES.md file in the repository.

통 통조림's avatar
통 통조림

@bakedbean@sajin.life

일상

#사진 #사진토돈 #연합우주사진부 #마스토돈사진부 #미스키사진부 #photography #写真 #マストドン写真部 #misskey写真部
𒁹𒀭𒌍𒋾𒀀𒅆's avatar
𒁹𒀭𒌍𒋾𒀀𒅆

@unninni@daepi.so

ㅇㄴㅂㅈ에 수면이 부족하신 분들, 내가 몇 시간 자야하는지 감이 잘 없으신 분들을 위한 가이드

WebKit's avatar
WebKit

@AppleWebKit@planet.moe · Reply to pkg update's post

@pkgupdt 원래는 Jeollabuk-do를 썼는데요

특자도 전환하면서 풀네임이 "전북"특별자치도가 되버리는 바람에 그렇게 바뀌어버렸습니다.

overseas.mofa.go.kr/tt-ko/brd/

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net · Reply to WebKit's post

@AppleWebKit 아 특별자치도 전환 때문이었군요. 알려주셔서 감사합니다. 😊

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

전라북도는 영문명으로 Jeonbuk-do를 쓰네. 일단은 따라 쓰는데, 흠.

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

전주에 가면 경기전은 한 번 둘러볼만하다. 조선이 조용하게 남아 있는 곳.

Gyeonggijeon Shrine, Jeonju, Jeonbuk-do, Korea.
ALT text detailsGyeonggijeon Shrine, Jeonju, Jeonbuk-do, Korea.
pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

사진에 테두리를 두르니까 AI가 해석을 잘 못하는 듯도 하고? 뭐 얼마나 방해?가 되겠냐만은 당분간은 둘러 봐야겠다. ㅎㅎㅎ;

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

지쇼지(慈照寺) 또는 은각사는 내가 교토에서 제일 좋아하는 곳이다. 여러 양식을 과함이 없이 조화롭게 배치한 한 시대의 대표작이다.

慈照寺, Ginkaku-ji, Kyoto, Japan.
ALT text details慈照寺, Ginkaku-ji, Kyoto, Japan.
뉴스봇 - 국제's avatar
뉴스봇 - 국제

@news_global@802.3ether.net

CIA 비밀감옥 '블랙사이트'의 고문 수법…2003년 전문 기밀해제
(서울=연합뉴스) 임화섭 기자 = 미국 중앙정보국(CIA)의 비밀감옥에서 알카에다 관련 용의자를 고문하는 데 쓰인 수법을 담은 기밀 해제 전문(...
yna.co.kr/view/AKR202510141408

헬렐 (舊 ESN)'s avatar
헬렐 (舊 ESN)

@guiltyone@buttersc.one

https://x.com/Qmt4hl9Mtx70300/status/1801283725352997115

드라코's avatar
드라코

@draco@pointless.chat

“한국을 왜 걱정해요?” 노벨상 수상자들 극찬…단, ‘이것’만 빼고

n.news.naver.com/article/081/0

노벨경제학 수상자들 온라인 기자 간담회
모키어 교수 “한국 경제 크게 걱정 안해”
하윗 교수 “韓, 강력한 반독점 정책 필요”
한국 저출산 문제엔 “위험 요소” 한목소리

우리나라 정치인들보다도 잘 알고 계시네.

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

나 자신은 디지털로만 사진을 찍지만, 필름이 빛에 "탄" 질감은 정말 매력적이다. 여전히 필름을 찾아서 쓰는 사람들이 이해가 간다. 특히 흑백 필름에서 그라데이션이 실키하게 떨어지는 부분은 정말 좋다. ... 난 안 할 거지만. 😅

Panchromaholic's avatar
Panchromaholic

@panchromaholic@mastodon.art


📷 Nikon F2 🎞 Kentmere PAN 100 🧪 Amaloco AM 74

The black and white image shows a small vintage car parked neatly along a city street in front of a building with textured walls and recessed panels. The car’s smooth, rounded shape and simple details evoke a classic mid-20th-century design, and sunlight casts sharp shadows that emphasize its contours.
ALT text detailsThe black and white image shows a small vintage car parked neatly along a city street in front of a building with textured walls and recessed panels. The car’s smooth, rounded shape and simple details evoke a classic mid-20th-century design, and sunlight casts sharp shadows that emphasize its contours.
Ambivalena :verigold:'s avatar
Ambivalena :verigold:

@ambivalena@mastodon.nu

The Shaggy Ink Choir

Read for image description, 73 words.

A vertical image in black and white of three shaggy ink cap mushrooms, coprinus comatus, standing close together in the grass. They all have some facial expressions on their caps. The talllest one to the right looks pretty happy, the middle one to the left looks as if it is singing with eyes closed, and the smallest one in the middle and infront of the other two looks like it is singing loudly.
ALT text detailsA vertical image in black and white of three shaggy ink cap mushrooms, coprinus comatus, standing close together in the grass. They all have some facial expressions on their caps. The talllest one to the right looks pretty happy, the middle one to the left looks as if it is singing with eyes closed, and the smallest one in the middle and infront of the other two looks like it is singing loudly.
pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

하이라이트 날려도 (안 날리면 더 좋지만 그래도) 괜찮아, 를 미리 알았으면 아마 R8을 안 샀... 아니다, AF 못 잡는 거 때문에 사긴 샀을 듯. ㅎㅎㅎ DR이 거의 1.8 스탑 올라가긴 했는데 흠, 이걸로 사진이 더 좋아지진 않은 듯. 색 심도는 도움이 됐지만.

Samuel Hess's avatar
Samuel Hess

@hess_photo@pixelfed.social

Thunersee vom Finel aus

#NikonZ7II #NikonZ #NIKON Z 7II | 14mm | f/8 | 60s | 14/09/2025

#hess_photography #photography #fotografie #landscapephotography #landschaftsfotografie #BernerOberland #blackandwhite #bnw #bnwmood #BW #KantonBern #lake #LakeThun #longexposure #monochrome #mountains #schwarzweiss #Switzerland #Thunersee
Ein weiter, ruhiger See liegt in einer Voralpenlandschaft, umgeben von dichten Wäldern und bewaldeten Bergen. Die Wasserfläche spiegelt das letzte Licht des Tages wider und schafft eine fast mystische Stimmung.

Am Himmel ziehen sich dynamische Wolkenformationen hin, die durch die Langzeitbelichtung weich und fliessend wirken. Die Bergsilhouetten im Hintergrund heben sich dunkel gegen den Himmel ab, während die Baumkronen im Vordergrund für Tiefe und Struktur sorgen.
ALT text detailsEin weiter, ruhiger See liegt in einer Voralpenlandschaft, umgeben von dichten Wäldern und bewaldeten Bergen. Die Wasserfläche spiegelt das letzte Licht des Tages wider und schafft eine fast mystische Stimmung. Am Himmel ziehen sich dynamische Wolkenformationen hin, die durch die Langzeitbelichtung weich und fliessend wirken. Die Bergsilhouetten im Hintergrund heben sich dunkel gegen den Himmel ab, während die Baumkronen im Vordergrund für Tiefe und Struktur sorgen.
:minori__n::ablobcat_negi::sitai_ga_syabette_iru:'s avatar
:minori__n::ablobcat_negi::sitai_ga_syabette_iru:

@minoson@misskey.io

やさしいお姉さんに入れてもらえて、まあまあいい場所で見れた〜​:blobcataww:​​:arigatexe:
花火、日によって全然違うのだな〜
昨日はレインボーだったけど、今日は赤とか青が激しく炸裂するミャクい花火だった
:blobcataww:

pkg update's avatar
pkg update

@pkgupdt@hl.pkgu.net

노출을 오버하면서 기술적으로는 실패했지만, 석등이 귀여워서 맘에 드는 사진.

The garden in Nomura-ke, Kanazawa, Ishikawa, Japan.
ALT text detailsThe garden in Nomura-ke, Kanazawa, Ishikawa, Japan.
← Newer
Older →