小编Fro*_*iwi的帖子

将内部依赖项部署到 Google App Engine 的纱线工作区 monorepo 应用程序

我想将我的应用程序从 monorepo 部署到 GAE。该应用程序依赖于我预先发布到 github 包的本地包。为了让生活变得轻松,我只是告诉我的应用程序始终获取最新版本:

  "dependencies": {
    "@thecointech/email": "*",
    "@thecointech/logging": "*",
    "@thecointech/utilities": "*",
    ...
Run Code Online (Sandbox Code Playgroud)

所有这些都运行良好。

yarn.lock当我尝试将该文件包含到部署中时,问题就出现了。按照此纱线线程中的建议:https://github.com/yarnpkg/yarn/issues/5428,我将本地根复制yarn.lock到应用程序目录并尝试部署。GAE 返回错误:

error Your lockfile needs to be updated, but yarn was run with `--frozen-lockfile`
Run Code Online (Sandbox Code Playgroud)

据我所知,问题源于我的 monorepo 锁定文件不包含我自己的包的条目。在 GAE 上安装时,它正确地发现这些条目丢失并想要添加它们 - 然后我们出错了。

目前,我只是没有完全包括锁定文件和规范部门,但似乎是错误的。这应该可行,这是一个常见的用例,并且工作区已经存在了足够长的时间。你尝试过类似的事情吗?有什么方法可以强制yarn.lock包含我的依赖项吗?

google-app-engine monorepo yarnpkg

9
推荐指数
0
解决办法
685
查看次数

无法在 Electron-Forge/Webpack 中加载内联字体

import 'semantic-ui-css/semantic.min.css'进入一个全新的 Electron-Forge/Webpack5 项目时,我得到以下信息:

UnhandledSchemeError: Reading from "data:application/x-font-ttf;charset=utf-8;;base64,AAEAAAAO...
Webpack supports "data:" and "file:" URIs by default.
You may need an additional plugin to handle "data:" URIs.
Run Code Online (Sandbox Code Playgroud)

单步执行代码后,此处的格式似乎data:uri与 NormalModule 中提取其格式的正则表达式不匹配:https://github.com/webpack/webpack/blob/e5570ab5230e98e1030d696e84465b5f533fdae9/lib/schemes/DataUriPlugin.js#L16;;请注意数据 URI 中的双精度,这会破坏正则表达式链接。

然而,这个 CSS 文件在我的网站上加载得很好。当单步执行 webpack 构建时,它们都会加载 CSS 文件(通过https://github.com/webpack/webpack/blob/e83587cfef25db91dc5b86be5b729288fd1bafdd/lib/NormalModule.js#L761中的断点进行验证),然后加载网站。 ..不加载这个数据URL???我尝试用网站上的配置替换 Electron 的 webpack 配置,但没有任何乐趣。

经过一四天的研究后,我已经没有任何想法了。我什至不知道下一步该戳哪里。关于我可以在哪里挖掘/可以检查什么以在 Electron 中加载此 CSS 文件有什么建议吗?

可以在这里找到一个最小的演示存储库: https: //github.com/FrozenKiwi/data-url-loading,唯一的区别是将有问题的 CSS 声明提取到本地 CSS 文件中

webpack electron webpack-5

6
推荐指数
1
解决办法
2931
查看次数

DynamoDB帐户余额原子计数器

在DynamoDB中,“原子计数器”是一个避免出现竞争状况的数字

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html#WorkingWithItems.AtomicCounters

是什么使数字具有原子性,我可以在非单位值的浮点数中加/减吗?

目前,我正在执行“设置余额=余额+:更改”

(长版)我正在尝试使用DynamoDB来实现用户余额,因此准确性至关重要。可以同时从多个来源更新余额。无需预取余额,我们永远不会拒绝交易,我只是在乎,当所有操作完成后,我们将获得正确的余额。只要最终结果正确,也可以按任何顺序应用操作。

据我了解,这应该没问题,但是我还没有看到任何原子增量示例会改变“ 1”以外的值

我之所以感到犹豫,是因为诸如Amazon DynamoDB条件写入和原子计数器之类的问题建议针对类似情况使用条件写入,这听起来像一个可怕的主意。如果我获取余额,更改并执行条件写入,那么如果同时更改了值,则写入可能会失败。但是,平衡是业务关键的定义,在忽略文档时我总是很紧张

-附加信息-

所有写操作都将来自Lambda函数,我希望写操作的成功率几乎达到100%。但是,我还保留所有更改的历史记录,并且如果余额处于“未知”状态(例如,网络超时),则可以锁定表并根据历史记录重新计算正确的余额。

我认为这是最好的“正常”操作。在99.999%的时间内,所有更新都可以一次写入。失败的代价可能是非常高昂的,因为我们需要扫描客户的整个历史以重新建立平衡,但是就权衡而言,这似乎是一个非常安全的选择。

amazon-dynamodb

5
推荐指数
1
解决办法
2541
查看次数

Typescript / Electron / Webpack模块如何/为什么具有绝对路径?

我在电子项目中使用react-dates,需要通过以下方式进行初始化:

 import 'react-dates/initialize';
Run Code Online (Sandbox Code Playgroud)

这会在内部设置一些变量,以供以后使用。问题是,当我下次输入使用这些变量的代码时,由于它们仍然为空,因此我得到了异常。

事实证明,Chrome / Electron将它们视为2个单独的文件,即使它们是磁盘上的相同文件也是如此。破坏设置文件时,Chrome会报告以下路径(首次访问/第二次访问)

C:\src\Project\node_modules\react-with-styles\lib\ThemedStyleSheet.js
webpack:///./node_modules/react-with-styles/lib/ThemedStyleSheet.js
Run Code Online (Sandbox Code Playgroud)

好:那很奇怪-有什么用?这在哪里/如何发生?我认为这与我的Webpack设置有关-如果重要的话,我正在使用TsConfigPathsPlugin和output / paths。从我的webpack:

/**
 * Base webpack config used across other specific configs
 */

import path from 'path';
import webpack from 'webpack';
import { dependencies } from '../package.json';

const TsconfigPathsPlugin = require('tsconfig-paths-webpack-plugin');

export default {
  externals: [...Object.keys(dependencies || {})],

  module: {
    rules: [
      {
        test: /\.tsx?$/,
        exclude: /node_modules/,
        use: [
          {
            loader: 'babel-loader',
            options: {
              cacheDirectory: true
            }
          },
          'ts-loader'
        ]
      },
      {
        test: /\.js$/, // Transform all .js files required …
Run Code Online (Sandbox Code Playgroud)

javascript node.js typescript electron

5
推荐指数
1
解决办法
454
查看次数

来自 Android 后台服务的 Prism DI 容器

我的应用程序有一个后台服务,可以独立于主应用程序 (HostApduService) 运行。

如何从此后台服务访问/使用 Prism 的 IContainer?

我知道 IContainer 可从 Xamarin.Forms.Application.Current 获得,请参阅:

https://tutel.me/c/programming/questions/45097342/implement+dependency+injection+in+background+services+in+xamarin+forms+using+prism

但是,在我的情况下,如果服务在不启动应用程序本身的情况下运行,则该应用程序可能不存在。

prism xamarin.android xamarin.forms

3
推荐指数
1
解决办法
566
查看次数