我正在尝试在 macOS 上本地运行一个基本的 GitHub 页面。
这是我的 Gemfile:
$cat Gemfile
source 'https://rubygems.org'
gem 'github-pages', group: :jekyll_plugins
Run Code Online (Sandbox Code Playgroud)
然后我安装依赖项:
$bundle install --path vendor/bundle
Run Code Online (Sandbox Code Playgroud)
结果,它安装了 Jekyll 3.8.5。但是,当我使用该网站构建网站时,bundle exec jekyll build --verbose
出现下一个错误:
Logging at level: debug
Configuration file: /Users/user/personal/my_user_name.github.io/_config.yml
Theme: jekyll-theme-midnight
Theme source: /Users/user/personal/my_user_name.github.io/vendor/bundle/ruby/2.6.0/gems/jekyll-theme-midnight-0.1.1
Invalid theme folder: _includes
GitHub Pages: github-pages v203
GitHub Pages: jekyll v3.8.5
Theme: jekyll-theme-midnight
Theme source: /Users/user/personal/my_user_name.github.io/vendor/bundle/ruby/2.6.0/gems/jekyll-theme-midnight-0.1.1
Invalid theme folder: _includes
Requiring: jekyll-seo-tag
Requiring: jekyll-coffeescript
Requiring: jekyll-commonmark-ghpages
Requiring: jekyll-gist
jekyll 3.8.5 | Error: uninitialized constant Faraday::Error::ClientError
Did you mean? …
Run Code Online (Sandbox Code Playgroud) 我正在尝试衡量由std::shared_ptr
和创建的指针的效率std::make_shared
。
我有下一个测试代码:
#include <iostream>
#include <memory>
#include <vector>
struct TestClass {
TestClass(int _i) : i(_i) {}
int i = 1;
};
void sum(const std::vector<std::shared_ptr<TestClass>>& v) {
unsigned long long s = 0u;
for(size_t i = 0; i < v.size() - 1; ++i) {
s += v[i]->i * v[i + 1]->i;
}
std::cout << s << '\n';
}
void test_shared_ptr(size_t n) {
std::cout << __FUNCTION__ << "\n";
std::vector<std::shared_ptr<TestClass>> v;
v.reserve(n);
for(size_t i = 0u; i < n; …
Run Code Online (Sandbox Code Playgroud) 我有下一个代码片段.我的想法是,vector有5个项目,我通过operator []访问100,这应该会导致崩溃.但正如你在输出中看到的那样,它有效.
#include <vector>
#include <iostream>
int main() {
std::vector<int> vec(5, 1);
vec[100] = 25;
std::cout << "vec[100] = " << vec[100] << ", vec[99] = " << vec[99] <<
", vector size = " << vec.size() <<
", vector capacity = " << vec.capacity() << std::endl;
}
Run Code Online (Sandbox Code Playgroud)
输出:
vec[100] = 25, vec[99] = 0, vector size = 5, vector capacity = 5
Run Code Online (Sandbox Code Playgroud)
编译标志:
clang++ -W -Wall -std=c++14 -stdlib=libc++ vector_over_flow_test.cpp -o vector_overflow_test.bin
Run Code Online (Sandbox Code Playgroud)
铿锵版:
$clang++ --version
Apple LLVM version 8.0.0 (clang-800.0.42.1) …
Run Code Online (Sandbox Code Playgroud) 我正在开发一个依赖于许多第 3 方板条箱的项目。\n正如经常发生的那样,第 3 方板条箱依赖于其他板条箱。
\n我经常发现自己处于这样的情况:两个或多个板条箱需要同一个板条箱的不同版本。因此,cargo 无法选择版本。\n通常,有问题的 crate 是我没有明确添加的 crate。
\n同时,唯一的解决方案是检查第三方并更新那里的版本,但这通常需要更新整个第三方链。这需要时间而且不好玩。当我尝试将更改发布到上游时,需要很长时间才能合并它们。
\nRust 有没有更好的方法来处理这种情况?
\nPS 我有 C++ 背景,其中依赖管理更糟糕。所以,我对现代生态系统没有太多经验,可能会错过一些东西。
\n为了提供更多上下文,我添加了部分(完整版本很长)cargo tree
输出。
这是我添加新依赖项之前的树:
\n \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 near-chain-configs v0.0.0 (https://github.com/f-squirrel/nearcore.git?rev=76424c004de84f6b5823751f132f62a0da9aa656#0a8e7ac7)\n \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 anyhow v1.0.75 (*)\n \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 chrono v0.4.26 (*)\n \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 derive_more v0.99.17 (proc-macro) (*)\n \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 near-config-utils v0.0.0 (https://github.com/f-squirrel/nearcore.git?rev=76424c004de84f6b5823751f132f62a0da9aa656#0a8e7ac7)\n \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 anyhow v1.0.75 (*)\n \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 json_comments v0.2.1\n \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 thiserror v1.0.47 (*)\n \xe2\x94\x82 …
Run Code Online (Sandbox Code Playgroud) c++ ×2
caching ×1
clang ×1
clang++ ×1
dependencies ×1
github-pages ×1
jekyll ×1
rust ×1
rust-cargo ×1
rust-crates ×1
std ×1
valgrind ×1
vector ×1