Snovault 混合对象关系型数据库框架
项目描述
SnoVault JSON-LD 数据库框架
系统安装 (OSX Big Sur(测试), Catlina(10.15.x), Mojave(10.14.6))
- 命令行工具
xcode-select --install
brew: https://brew.sh.cn/ . 确保已安装git
Python 3.8.5
- Postgres@11 (Postgres@9.3 也适用)
brew install postgresql@11 # May need to add postgres to PATH in your shell profile, e.g. ~/.bash_profile, ~/.zshrc # echo 'export PATH="/usr/local/opt/postgresql@11/bin:$PATH"' >> YOUR_SHELL_PROFILE
- Node 10.x.x
brew install node@12
您可能需要使用 brew link node@12 将 node/npm 链接起来,然后添加到您的 PATH 中
- Ruby - 非系统版本,用于安装compass并避免权限错误
brew install ruby # May need to add ruby to your bash_profile/zshrc and restart terminal
- Compass
gem install compass # Test the install compass -v # If the command is not found then find your ruby bin directory ls /usr/local/lib/ruby/gem/ # If you have two versions use the active one ruby -v # Using the correct ruby version bin diretory, make a sym link ln -s /usr/local/lib/ruby/gems/2.6.0/bin/compass /usr/local/opt/ruby/bin/compass
- Java 11
brew install openjdk@11 # Add to your PATH in terminal profile, i.e. ~/.bash_profile or ~/.zshrc export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
- Elasticsearch 5.x
# Download tar: https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.0.tar.gz # Decompress tar -xvf ~/Downloads/elasticsearch-5.6.0.tar.gz -C /usr/local/opt/ # Add to PATH in your terminal profile, i.e. ~/.bash_profile or ~/.zshrc export PATH="/usr/local/opt/elasticsearch-5.6.0/bin:$PATH" # Restart terminal and check versions elasticsearch -V
- Brew 依赖项
brew install libmagic nginx graphviz redis
测试用的Chrome驱动器
Chromedriver 需要添加到您的 PATH 中。如果在python虚拟环境中工作,则可以将chromedriver添加到您的 -venv-dir/bin 目录。
您还需要安装Chrome(如果尚未安装)。此外,允许 chromedriver 运行 bdd 测试(系统偏好设置->安全和隐私)
应用程序安装
- 在您的工目录中创建一个虚拟环境。这里我们使用python3 venv模块。如果您愿意,也可以使用conda的venv
cd your-work-dir python3 -m venv snovault-venv source snovault-venv/bin/activate pip install -U pip==21.0.1
- 克隆repo并安装需求
cd snovault pip install -e '.[dev]'
- 如果psycopg2编译失败,您可能需要在pip安装之前将LDFLAGS设置为 pg_config --ldflags 的输出。
LDFLAGS=$(pg_config --ldflags) pip install -e '.[dev]'
如果您遇到以下类似的运行时错误
ImportError: dlopen(/Users/foo/venv/lib/python3.7/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so, 2): Symbol not found: _PQencryptPasswordConn Referenced from: /Users/foo/venv/lib/python3.7/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so Expected in: /usr/lib/libpq.5.dylib in /Users/foo/venv/lib/python3.7/site-packages/psycopg2/_psycopg.cpython-37m-darwin.so
您可能需要在 LDFLAGS 中添加由 pg_config --ldflags 给出的,以及通常位于 -L/usr/local/opt/postgresql@11/lib 的 brew-安装的Postgres头文件。
- 构建应用程序
# Make sure you are in the snovault-venv make clean && buildout
- 运行应用程序
# Make sure you are in the snovault-venv dev-servers development.ini --app-name app --clear --init --load # In a separate terminal, make sure you are in the snovault-venv pserve development.ini
- 运行测试
没有参数运行非bdd测试
# Make sure you are in the snovault-venv ./circle-tests.sh bdd ./circle-tests.sh npm ./circle-tests.sh
更改
Snovault 1.0.68 (发布) 编码 v130
SNO2-25-multiple-types (#402)
Snovault 1.0.67 (发布) 编码 v129.2
SNO2-21-files-crash (#399)
Snovault 1.0.66 (发布) 编码 v129.0
ENCM-89-support-big-image-attachments (#390)
Snovault 1.0.65 (发布) 编码 v128.0
增加字段限制 (#388)
Snovault 1.0.64 (发布) 编码 v128.0
固定splitter (#385)
Snovault 1.0.63 (发布) 编码 v128.0
ENCM-29-pin-antlr (#379)
Snovault 1.0.62 (发布) 编码 v124.0
SNO-217-register-search-config-pieces-from-item (#370)
Snovault 1.0.61 (发布) 编码 v124.0
SNO-214-upgrade-node-to-version-12-for-circleci-tests (#365)
SNO-210-read-columns-from-configs (#368)
SNO-216 修复dev-servers无打印内容时的100% CPU使用率 (#367)
SNO-212 允许gzip附件 (#363)
SNO-213-circleci-node-install-fix (#364)
SNO-211-increase-batch-size-in-scroll-api (#360)
Snovault 1.0.60 (发布) 编码 v121.0
SNO-209-move-search-code-to-independent-package (#356)
SNO-206-use-redis-cache-for-rnget-view (#354)
SNO-207-facet-groups-support (#355)
SNO-205-allow-customization-of-default-sort (#353)
Snovault 1.0.59 (发布) 编码 v120.0
SNO-204-allow-facet-caching (#351)
Snovault 1.0.58 (发布) 编码 v118.0
SNO-170-avoid-rendering-from-database-3 (#346)
SNO-202-upgrade-python (#345)
Snovault 1.0.57 (已发布) 编码 v116.0
撤销 SNO-202-python3.8.5-upgrade (#338)
SNO-201-add-search-config-registry (#336)
SNO-202-python3.8.5-upgrade (#335)
Snovault 1.0.56 (已发布) 编码 v115.0
SNO-200-remove-nonsubstring-filter-from-mapping (#332)
SNO-199-allow-customization-of-search-fields (#333)
SNO-197-add-range-queries-and-min-max-aggs (#329)
SNO-198-allow-configuration-of-reserved-search-params (#330)
SNO-138-fix-pytest-warnings (#324)
SNO-182-readme-update (#323)
Snovault 1.0.55 (已发布) 编码 v114.0
SNO-192-update-pip-install (#321)
Snovault 1.0.54 (已发布) 编码 v113.0
SNO-27-pip-installable (#316)
SNO-191-pyramid-env-vars (#318)
SNO-117-search-as-you-type (#220)
Snovault 1.0.53 (已发布) 编码 v112.0
SNO-158-create-minimally-indexed-deploy
SNO-190-pin-setuptools-in-circle-ci (#315)
Snovault 1.0.52 (已发布) 编码 v111.0
SNO-185-Log-connection-error (#311)
SNO-183-allow-specification-of-cart-in-search (#310)
SNO-181-Update-install-readme (#309)
Snovault 1.0.51 (已发布) 编码 v109.0
SNO-174-add-local-storage-redis (#299)
SNO-176-invalidate-object-when-unlinked (#303)
SNO-177-add-view-with-specified-fields (#300)
SNO-178-fix-indexer-test (#304)
Snovault 1.0.50 (已发布) 编码 v108.0
SNO-168-stream-heterogeneous-uuids (#292)
SNO-169 创建管理员用户创建命令 (#293)
Snovault 1.0.49 (已发布) 编码 v106.0
SNO-166-update-query-string (#288)
Snovault 1.0.48 (已发布) 编码 v105.0
SNO-163-install-graphviz (#285)
Snovault 1.0.47 (已发布) 编码 v104.0
SNO-159-allow-remote-indexing (#282)
Snovault 1.0.46 (已发布) 编码 v103.0 (未发布)
SNO-160-use-boolean-values-in-facets (#280)
SNO-116 使用 summary_matrix 代替 summary (#278)
SNO-157-make-facets-collapsable (#275)
Snovault 1.0.45 (已发布) 编码 v102.0
SNO-154-fix-magic-json-bug (#272)
SNO-156 使用 pyramid_retry 2.1.1 (#273)
SNO-137-add-search-doc (#267)
SNO-152 修复 circle-ci 浏览器安装 (#269)
Snovault 1.0.44 (已发布) 编码 v99.0
SNO-150 删除重复项并修复 antlr 版本 (#266)
SNO-149-allow-specification-of-audit-field (#265)
SNO-143 更新并切换 readme (#252)
SNO-148-uuid-indexing-times-new-line-bit (#192)
SNO-144-redirect-downloads-through-nginx-or-apache (#192)
Snovault 1.0.43 (已发布) 编码 v98.0
SNO-146-clean-up-threadmanager-on-pyramid-retry-exception (#261)
Snovault 1.0.42 (已发布) 编码 v97.0
SNO-145-handle-missing-obj-on-request (#258)
Snovault 1.0.41 (已发布) 编码 v97rc
SNO-142 修复 ubutnu 18 在 v96x1rc1 上的小错误 (#252)
SNO-141 更新 osx catalina readme (#252)
SNO-140 允许使用标志截断 uuid (#249)
SNO-139 记录详细的初始索引时间 (#249)
SNO-135 更新 osx catalina 的安装 (#249)
SNO-132 更新到 py37 lrowe pr 并修复 (#249)
Snovault 1.0.40 (已发布) 编码 v95.0
SNO-129-add-fielded-generator-response (#244)
SNO-128-make-select-calculated-properties-view (#245)
SNO-133-setuptools-test-failure (#247)
Snovault 1.0.39 (已发布) 编码 v94.0
SNO-126-allow-default-value-for-missing-aggregation-field (#242)
Snovault 1.0.38 (已发布) 编码 v93.0
SNO-125-switch-batch-download-to-query-string (#238)
SNO-118-simple-query-string (#240)
SNO-123-limit-es-scan (#237)
SNO-121-fix-circleci-apt-install (#224)
Snovault 1.0.37 (已发布) 编码 v92.0
SNO-119-escape-regex-slash (#221)
[热修复] SNO-120-stream-large-json (#222)
SNO-115-delete-old-search-code (#219)
Snovault 1.0.36 (已发布) 编码 v91.0
SNO-112-fix-npm-audit-issues (#216)
SNO-113-make-audit-view (#217)
Snovault 1.0.35 (未发布)
SNO-95-refactor-search (#214)
Snovault 1.0.34 (已发布) 编码 v88.0
SNO-108-improve-search-new (#212)
SNO-105-fix-batchupgrade-tests-sno103 (#211)
SNO-106-fix-spec-char-500-error (#209)
Snovault 1.0.33 (已发布) 编码 v87.0
SNO-103 修复 batch-upgrade 错误记录 (#206)
SNO-102 使用-openjdk-java-for-circleci (#205)
Snovault 1.0.32 (已发布) 编码 v87rc1
SNO-99 将 travis 测试迁移到 circleci (#202)
SNO-100 并行化 batchupgrade 脚本 (#201)
SNO-92 修复批量升级日志 (#201)
SNO-101 重构批量升级 (#201)
Snovault 1.0.31 (已发布) 编码 v86.0
SNO-98 更新 sauce connect 至 4.5.3 (#199)
SNO-93 用户计数不匹配 (#191)
SNO-90 添加高级查询 (#183)
Snovault 1.0.30 (已发布) 编码 v85x2
SNO-96 修复索引测试 (#196)
Snovault 1.0.29 (已发布) 编码 v85rc1
SNO-91 更新 travis-java-ref (#188)
SNO-87 在配置文件 URL 不工作的情况下修复问题 (#179)
SNO-86 转义搜索文本 (#178)
SNO-88 修复用户搜索计数 (#180)
Snovault 1.0.28 (已发布) 编码 v84rc1
SNO-89 修复索引器中的退避错误密钥 (#181)
SNO-85 面板重新出现 (#175)
Snovault 1.0.27 (已发布) 编码 v83.0
SNO-83 为 EXIF 旋转 img 附件 (#174)
Snovault 1.0.26 (已发布) 编码 v82.0
SNO-78 添加长面板类型 (#168)
SNO-80 面板类型自动完成 (#168)
SNO-73 添加 uuid 队列模块 (#162)
Snovault 1.0.25 (已发布) 编码 v81.0
SNO-77 将审核添加到 submit_for 验证 (#166)
Snovault 1.0.24 (已发布) 编码 v80.0
SNO-75-fix-linux-travis-option (#163)
Snovault 1.0.23 (已发布) 编码 v79.0 同样
SNO-72 更新 uuid 模块的 simple (#158)
Snovault 1.0.22 (已发布) 编码 v79.0 同样
SNO-68 停止使用 _all 进行索引 (#155)
SNO-74 删除 npm shrinkwrap json (#157)
Snovault 1.0.21 (已发布) 编码 v78.0 同样
SNO-65 将索引器 uuid 重构为服务器客户端 (#151)
Snovault 1.0.20 (已发布) 编码 v78.0
SNO-63 更新 pip requests 并删除 wal-e 请求 (#150)
SNO-66 添加新端点以将模式映射到模式标题 (#152)
Snovault 1.0.19 (已发布) 编码 v77.0
SNO-60-check-report-res-has-view (#147)
SNO-50 购物车初始化 (#142)
SNO-59-fix-index-logger-name (#137)
SNO-53 将索引标志添加到索引器 (#137)
Snovault 1.0.18 (已发布) 编码 v76.0
SNO-49 更改审计继承默认值 (#132)
SNO-31 重构与搜索相关的视图 (#141) (#143)
1.0.17 1. [热修复] SNO-54-fix-schema-copy-line (#136)
1.0.16 1. SNO-52-alter-select-distinct-values (#131)
1.0.15 1. SNO-48-add-embed-cache-to-ini (#127)
1.0.14 1. SNO-45 增加嵌入容量 (#123)
1.0.13 1. SNO-46 删除未使用的搜索类型参数 (#122) 2. SNO-43 清理 snovault 启动 (#116)
1.0.12 1. SNO-42 明确检查调用次数 (#118)
1.0.11 01. SNO-41-put-validator-accession (#112)
1.0.10 01. SNO-35 修复 get_rev_links 中的错误 (#111) 02. SNO-40 将 blob 存储升级到 boto3 (#110)
1.0.9: 01. SNO-38 从 get_related_uuids 返回列表 (#108, #105)
1.0.8: 与 1.0.9 一起发布 01. SNO-36-update-buildout (#104) 02. SNO-34-nginx-dev-proxy-headers (#103)
1.0.7: 唯一更新已撤销。空发布。
1.0.6: 01. SNO-33 从集合中指定 get_by_unique_key 的索引 (#94) 02. SNO-28 将 ES 存储限制为为 snovault 资源创建的索引 (#93)
1.0.5: 01. SNO-30 将索引器状态从索引器文件中分离并更新 02. SNO-10 通过两步删除审计索引 03. SNO-9 向新的索引器元对象添加 API 端点 04. SNO-25 将 uniqueItems 用于检查序列化值 (#85) 05. SNO-26 将 schemas 映射视图添加到配置文件 (#86) 06. SNO-29 限制表单更新时的审计 07. SNO-19 更新 DOI 首选解析器 URL (#80)
1.0.4: -SNO-15 向存储属性表添加索引 -SNO-14 更新删除脚本
1.0.3: -SNO-8 向配置文件页面添加 JSONSchemas 类型 (#73)
1.0.2: * 在发布 ENCD v65 第二部分时发现的问题
-SNO-12: 在 es 索引器搜索中设置最大子句参数 (#75) -SNO-11: 向 ES 索引器搜索查询添加超时 (#74)
1.0.1: * 发布 ENCD v65 时发现的问题
-SNO-6: 修复索引查询过多子句失败 -SNO-5: 将 psycopg 更新为与 encoded 版本 2.7.3 匹配
1.0.0:
31 删除
ES5 修复:更新索引设置分片编号
0.33:
ES5 更新:ENCD-2488 ES5 更新也称为 RM3910
修复 travis 构建:为类似 ENCD-3722 的 travis 预安装 setuptools
0.32:
更新到ENCD-3669,编辑视图中的对象不包括不可提交的逆链接。
0.31:
ENCD-3684指定https索引以修复构建,更新更改日志。
使用notSubmittable代替calculatedProperty来指示可能无法提交的属性。与ENCD-3669相关。
0.30:
文档依赖Java 8。
禁用第二次索引遍历。
0.29:
修复记录索引错误。
添加有关索引的文档。
0.28:
添加对在模式中指定为抽象类型的子对象添加和更新的支持。
将索引分为两个阶段。
0.27:
将嵌入式缓存移动到连接并增加大小。
修复当错误路径包含整数时的升级错误报告。
0.26:
索引器:限制工作进程为1个任务,并根据索引的项目数量调整块大小。
0.25:
索引器:限制工作进程为4个任务以避免内存不足错误。
0.24:
如果模式指定了显式的映射,则在构建Elasticsearch映射时使用它。这为边缘情况(例如,不索引页面布局结构)提供了一个逃生阀。
升级到sauceconnect v4.4.4
向wsgi_tests添加port_range(mrmin)
0.23: - 替换copy.deepcopy()以实现更快的索引
0.22: - 新的Image Magic版本,修复Sauce Labs
0.21: - (pypi错误,与0.22相同)
0.20: - 补丁mpindexer以获得更好的错误消息
项目详情
snovault-1.0.68.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | adadf9a68957c5e295d79f23c8425962273ef80ec620f11733db27abe59d4eef |
|
MD5 | df54e30caf1f66cc1318f0dfd917c278 |
|
BLAKE2b-256 | 798d655754c9fbeca53593abeab75e5e06114a1729e98c00f1d8aa12f95e3e5e |