lambdaisland / lambdaisland/deep-diff2

Extract cljs port of puget

未关闭
#20 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

主要语言
Clojure
星标
326
派生
18
PR 合并指标
30 天内没有已合并 PR

描述

As part of porting deep-diff to clojurescript, we ported Puget to ClojureScript. Sadly this version is not compatible with upstream puget, since we can't do type dispatching in the same way. This also means that people need to explicitly add print handlers for custom types (although apparently there's an option to fall back to the regular printer, we should enable that).

Having puget available in ClojureScript for rendering of cljs data structures is very useful, and we should pull that out into its own lib/artifact.

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先,在 deep-diff 代码库中找到现有的 ClojureScript Puget 移植实现,并将其类型分派和打印器回退行为与上游 Puget 进行比较。将兼容的功能提取到独立的 library 或 artifact 中,启用 regular-printer fallback,并验证它能够渲染 ClojureScript 数据结构,而无需为每种类型编写自定义 handler。

由索引模型根据 Issue 内容生成。

评估

技术栈
clojure
领域
tooling
Issue 类型
重构
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。