Webpack 2: -p option does not set NODE_ENV to "production" in webpack config

Is that an upcoming feature or why isn't the variable set when I try to access it in the webpack config with process.env.NODE_ENV ? I use webpack ^2.1
Furthermore I recognized that when using -p option the UglifyJsPlugin is applied? Don't see that in the documentation anywhere.

NODE_ENV is set in the compiled code, not in the webpack.config.js file. You should not use enviroment variables in your configuration. Pass options via --env.option abc and export a function from the webpack.config.js.

Why should you not use env-variables in the config?
I have a webpack config, which changes according to NODE_ENV. It's awesome because it's in one file and

for developing I just run webpack-dev-server
for production I run NODE_ENV='production' webpack -p

const webpack = require('webpack'),
    path = require('path'),
    fs = require('fs')

const SRC = path.resolve(__dirname, "src"),
    NODE_MODULES = path.resolve(__dirname, "node_modules")

/* babel */
const babelSettings = JSON.parse(fs.readFileSync(".babelrc"))

const config = {
    entry: [
        './src/index.js'
    ],
    module: {
        loaders: [
            {
                test: /\.jsx?$/,
                include: SRC,
                loader: "babel-loader",
                query: babelSettings
            },
            {
                test: [
                    /\.png$/,
                    /\.jpg$/
                ],
                loader: "url-loader"
            },
            {
                test: /\.css$/,
                include: [
                    NODE_MODULES,
                    SRC
                ],
                loader: 'style-loader!css-loader!postcss-loader',
            }
        ]
    },
    resolve: {
        root: SRC,
        extensions: [
            '',
            '.js',
            '.jsx'
        ]
    },
    output: {
        path: path.resolve(__dirname, 'public', 'assets'),
        publicPath: '/assets',
        filename: 'bundle.js'
    },
    postcss: [
        require('autoprefixer')
    ],
    plugins: [
        new webpack.DefinePlugin({
            'process.env': {
                'NODE_ENV': JSON.stringify(process.env.NODE_ENV)
            }
        }),
    ]
};

if (process.env.NODE_ENV === 'production') {
    config.plugins.push(
        new webpack.optimize.UglifyJsPlugin({
            compress: {
                screw_ie8: true
            }
        })
    )
    babelSettings.plugins.push("transform-react-inline-elements");
    babelSettings.plugins.push("transform-react-constant-elements");

} else {
    config.devtool = "#cheap-module-source-map"
    config.devServer = {
        contentBase: './public',
        hot: true,
        inline: true,
        host: "<IP_ADDRESS>",
        port: 2708
    }
    config.plugins.push(
        new webpack.HotModuleReplacementPlugin()
    );
}

module.exports = config

I noticed too that for some reason the output of "webpack -p" is different than just running webpack with the Uglify plugin applied.

Personally, I am not quite getting what you mean by -env.option abcd  but I tried this and it doesn't seem to help with anything.  I do believe that doing this automatically based on the -p flag would be reasonable.  I could likely submit a PR if it is ok to resolve this in this way.  Otherwise, for the loads of other people that have also run into this behavior wondering "wtf!?" below is dead simple example of what I am currently using to deal with the issue:
package.json
{
  "name": "webpack_test",
  "version": "1.0.0",
  "description": "",
  "main": "build/bundle.js",
  "scripts": {
    "build": "webpack",
    "build:prod": "webpack -p",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Benjamin Baldivia",
  "license": "ISC",
  "devDependencies": {
    "webpack": "^1.13.2",
    "webpack-dev-server": "^1.16.1"
  }
}

webpack.config.js
const webpack = require('webpack');
const prod = process.argv.indexOf('-p') !== -1;

const config = {
  entry: './src/main.js',
  output: {
    path: 'build',
    filename: 'bundle.js'
  }
};

config.plugins = config.plugins||[];
if (prod) {
  config.plugins.push(new webpack.DefinePlugin({
      'process.env': {
          'NODE_ENV': `"production"`
      }
  }));
} else {
  config.plugins.push(new webpack.DefinePlugin({
      'process.env': {
          'NODE_ENV': `""`
      }
  }));
}

module.exports = config;

src/main.js
if (process.env.NODE_ENV === 'production') {
  module.exports = require('./prod.js')
} else {
  module.exports = require('./dev.js')
}

src/dev.js
console.log("I am in dev");

src/prod.js
console.log("I am in production");

The key here is really only the webpack.config.js I only included the rest for it to be a complete example of it's usage.  Below we can see the results:
npm run build

# OUTPUT

#><EMAIL_ADDRESS>build C:\Users\Goblin\dev\webpack_test
#> webpack
#
#Hash: 133cddf132a8bd0ff743
#Version: webpack 1.13.2
#Time: 42ms
#    Asset     Size  Chunks             Chunk Names
#bundle.js  1.61 kB       0  [emitted]  main
#   [0] ./src/main.js 140 bytes {0} [built]
#   [1] ./src/dev.js 29 bytes {0} [built]

npm run build:prod

#OUTPUT

#><EMAIL_ADDRESS>build:prod C:\Users\Goblin\dev\webpack_test
#> webpack -p
#Hash: e5112caeb4609ddc76a9
#Version: webpack 1.13.2
#Time: 79ms
#    Asset       Size  Chunks             Chunk Names
#bundle.js  283 bytes       0  [emitted]  main
#   [0] ./src/main.js 140 bytes {0} [built]
#   [1] ./src/prod.js 38 bytes {0} [built]
#
#WARNING in bundle.js from UglifyJs
#Condition always true [./src/main.js:1,0]
#Dropping unreachable code [./src/main.js:4,0]

This is much mode in-line with what I believe users expect when using the -p flag.  It would be REALLY nice if this was the default behavior when using the flag.  I would be more than willing to submit a PR if this is deemed acceptable default behavior.  I know I ran into this issue and ran around in circles working around it and while I was I know I looked up quite a few "solutions" (some blogged about) meaning there are quite a few people with this specific problem.

Agree, it's really confusing that is says this in the changelog:

-p sets NODE_ENV = “production”

and then process.env.NODE_ENV is undefined in the webpack config.
I usually call webpack setting NODE_ENV from the command line, and then I pass that to the code with the DefinePlugin.

I agree this is an issue. I spent several hour on it before I found out what is causing my problems :(
There are many articles and repositories which depend on having NODE_ENV set in config file already.

Agreed, this seems like a departure from previous behaviour? Migration guides could alert to this also.

A great workaround for me was using aliases as described in this StackOverflow post.

What's the extra optimisation that -p performs?

The key part here is to understand that environment variables are not available in the build process unless specified. That's why we need the following line from @fab1an's great example :
...
        new webpack.DefinePlugin({
            'process.env': {
                'NODE_ENV': JSON.stringify(process.env.NODE_ENV)
            }
        }),
...

....which can be stated more clearly as:
...
        new webpack.EnvironmentPlugin(['NODE_ENV']),
...

is webpack.DefinePlugin still work in<EMAIL_ADDRESS>I used it but I think doesn't work.

could this simply be implemented just by adding --env=production to the arguments baked into webpack -p?
Here are the relevant docs

Currently I'm handling this issue with webpack -p --env production.
And then in webpack.config.js:
module.exports = function(env) {
    // return env-specific configuration
}

I do agree the -p and --env production is a bit repetitive.

It seems that most people here thinks that webpack -p is mandatory to do a production build, but am I the only one thinking it should not be this way?
Not all are running webpack for production via the CLI, but programmatically via node. Shouldnt webpack -p be the same as running webpack with NODE_ENV=production?

-p automatically adds
        new webpack.DefinePlugin({
            'process.env': {
                'NODE_ENV': JSON.stringify(process.env.NODE_ENV)
            }
        }),
       new webpack.optimize.UglifyJsPlugin()

as plugins. It is not mandatory, it just enables those plugins for you for convenience.
Because of the DefinePlugin, process.env.NODE_ENV will be replaced in your source files, just like if you had used DefinePlugin in your config by hand. It will not set the node environment variable process.env.NODE_ENV in your webpack config, as the webpack config is run directly by node.
Basically, what you want to do is NODE_ENV=production webpack -p all the time. https://github.com/jacobmischka/coyote-grill/blob/master/package.json#L10

I don't think it's even possible to have a regular command line flag like -p directly influence the environment variables that node sees.

I'm pretty new to web development and man this is confusing.
Shouldn't webpack's default behavior be to simply pass along the NODE_ENV environment variable to the build, using its own plugin this way: webpack.EnvironmentPlugin(['NODE_ENV']) (or webpack.EnvironmentPlugin({NODE_ENV: ''}) if source files expect an empty default value)?
I think webpack's CLI options shortcuts should never set the environment variable to a specific value, the NODE_ENV variable should be explicitly set and visibly identifiable.
I might be missing something but what scenarios require you to not pass along the NODE_ENV variable to source files when using webpack?
If that becomes the default behavior:

If I want to invoke webpack and tell my source files 'hey this is a production build', I would invoke it with NODE_ENV=production webpack.
If I want to invoke webpack and tell my source files 'hey this is a production build' and utilize webpack's optimization and minification for a 'production bundle', I would do NODE_ENV=production webpack --optimize-minimize (which is the option that -p does).
If I want to have different webpack config items based on that environment variable, I would simply access process.env.NODE_ENV in the webpack config.
(bonus) Then if you want to, instead of using NODE_ENV=production with --optimize-minimize every time, you can just automatically add the UglifyPlugin in the webpack config if process.env.NODE_ENV==production.

Anyways, this is what I'm currently doing to completely avoid the confusing -p option, basically same as fab1an's:
// package.json

{
   // ...snip...
  "scripts": {
    "build:dev-server": "webpack-dev-server --inline --progress --colors",
    "build:dev": "webpack --progress --colors",
    "build:dist": "NODE_ENV=production webpack --optimize-minimize --progress --colors",
}

// webpack.config.js

var webpack = require('webpack');
var path = require('path');
var CopyWebpackPlugin = require('copy-webpack-plugin');

var config = {
    // ...snip...

    plugins: [
        new webpack.EnvironmentPlugin(['NODE_ENV']),
    ],
};

if (process.env.NODE_ENV == 'production') {
    config.plugins.push(
        new CopyWebpackPlugin([{
            from: 'src/templates/index_prod.html',
            to: 'templates/index.html'
        }])
    );
} else {
    // ...snip...
    config.devtool = 'inline-source-map';
    config.plugins.push(
        new CopyWebpackPlugin([{
            from: 'src/templates/index_dev.html',
            to: 'templates/index.html'
        }]),
    );
}

module.exports = config;

In order, to determine if I am in development or production mode I use the following code in my webpack.config.js:
// detect if webpack bundle is being processed in a production or development env
var isDevelopmentMode = !(require('yargs').argv.p || false);

then I can use it like:
    plugins: [
        new webpack.DefinePlugin({
            __DEBUG__: JSON.stringify(isDevelopmentMode)
        }),
    ]

I hope it helps for someone looking for an alternative.

I do the following:
"build": "webpack --env production",

and then in the webpack config:
module.exports = function webpackStuff(env) {
  if (env === 'production') plugins.push(new BabiliPlugin());

The second argument of your config function contains webpack calling options. This is undocumented feature, but might be useful, anyway.
module.exports = (env = {}, args = {}) => {
    console.log(args);
    // E.g. args.bail and args.p are true for webpack -p --bail
    ...
};

Wanting -p to set NODE_ENV to "production" is a bizarre request. -p indicates a production build, while NODE_ENV === "production" indicates a [runtime] production environment. I've never understood why devs tie these things together. I might want to test my production build in a local dev environment, in which case I now have to spoof NODE_ENV at build time. Unless you're actually using Webpack in a runtime production environment, I'm not sure why you'd want your config to rely on NODE_ENV at all. It seems like it would be mixing two entirely unrelated concerns.

I think the usual reason is that people specify different configs based on the NODE_ENV env var. So something like:
filename: process.env.NODE_ENV === 'production'
			? '[name]-[chunkhash].js'
			: '[name].js',

I do that as well, but I agree that it's a separate thing and it should be kept separate mentally. I just think people get confused when it says that -p sets NODE_ENV for you but don't realize that refers to in the source files, not in the config files.

Node env variables are for runtime code. Webpack environment variables are for configuration. Devs have simply confused the two.
@selfup's example is solid.

I finally settled on the EnvironmentConfig's defaulting behavior as in:
    plugins: [
        new webpack.EnvironmentPlugin({
            NODE_ENV: 'development'
        })
    ]

This just sets the default NODE_ENV value if not already defined.
If you also set it on the command line, as in NODE_ENV=production webpack ..., the command line wins. To me, that is intuitive and desirable.
Yes it's confusing to write NODE_ENV=production webpack -p ... as many have pointed out, but when the light bulb finally went on I realized this is really two different concepts.

I'm using the EnvironmentPlugin:
new webpack.EnvironmentPlugin(['NODE_ENV'])

When I run:
SET NODE_ENV=production && webpack -p --devtool source-map

React uses a dev build. But when I remove EnvironmentPlugin, everything works great and React uses a production build.

Im unable to run webpack in production environment. Here is the package.json:
"scripts": {
    "build": "webpack -p"
  },

webpack.common.js
const isProduction = (process.argv.indexOf('-p') !== -1);
plugins: [
    new webpack.DefinePlugin({
      'process.env': {
        'NODE_ENV':  (isProduction ? JSON.stringify('production'): JSON.stringify('development'))
      }
    })
]

webpack.config.js
switch (process.env.NODE_ENV) {
  case 'production':
    module.exports = require('./config/webpack.prod');
    break;
  case 'development':
  default:
    module.exports = require('./config/webpack.dev');
}

any help?

I seriously don't understand why the heck a --production/-p should not build a production build. Lets drop the dependency on NODE_ENV=production.

Thank you very much @jakeNiemiec

If I use both NODE_ENV and -p I get a larger bundle size than just using NODE_ENV.

very confusing to see
-p sets NODE_ENV = “production”
, when it is actually set to undefined. Wasted 2 hours on this.

One solution that I'm exploring: When using NPM scripts, it's possible to refer to the current lifecycle/script called. On the webpack.config.js context, it could be used to flag those configurations:
package.json
"scripts": {
  "build": "webpack",
  "build:production": "webpack -p"
}

webpack.config.js
module.exports = {
  // ...

One solution that I'm exploring: When using NPM scripts, it's possible to refer to the current lifecycle/script called. On the webpack.config.js context, it could be used to flag those configurations:
package.json
"scripts": {
  "build": "webpack",
  "build:production": "webpack -p"
}

webpack.config.js
const isProduction = process.env.npm_lifecycle_event.match(/:production/)

module.exports = {
  // ...
    plugins: [
        new webpack.DefinePlugin({
          'process.env': {
            'NODE_ENV':  (isProduction ? JSON.stringify('production'): JSON.stringify('development'))
          }
        })
    ]

I'm currently using webpack 3, and this is still a problem.  I dont care which direction is taken on this, but when running webpack --help you get:
-p           shortcut for --optimize-minimize --define
               process.env.NODE_ENV="production"                       [boolean]

Which clearly indicates that process.env.NODE_ENV will be defined as "production".  But when running webpack -p, I still get undefined...

As it says, process.env.NODE_ENV is defined in your source files that webpack bundles. Not in the webpack.config.js itself.
That is a separate thing, which is managed by setting the environment variable ie $ NODE_ENV=production webpack.

The solution is simple: rename -p to -o for optimize, which is exactly what this does. That way we can disassociate this command with the concept of production/environment variables. It should never have been called -p anyway.

const isProdBuild = process.argv.indexOf("-p") !== -1;

Why not using:
"scripts": {
  "build": "webpack --env development",
  "build:production": "webpack --env production"
}

And inside webpack.config.js:
module.exports = env => ({
   /* ... */
   plugins: [
     new webpack.DefinePlugin({
       'process.env': {
         NODE_ENV: JSON.stringify(env),
       },
     }),
   ],
   /* ... */
})

Please update your documentation then.
https://webpack.js.org/guides/production/#cli-alternatives
states that -p sets both flags. But in webpack 3.9.1 it still only sets this variable for packages run by webpack and not the webpack config itself.
Why use it?
See my repo: https://github.com/SamanthaAdrichem/webpack-3.9.1-splitted-config-angular/blob/master/package.json
i'm using it to load separate development and production configs -p now feels like a useless argument

const webpack = require('webpack');
const merge = require('webpack-merge');
const UglifyJSPlugin = require('uglifyjs-webpack-plugin');
const common = require('./webpack.common.js');
module.exports = merge(common, {
devtool: 'cheap-module-source-map',
plugins: [
new UglifyJSPlugin({
sourceMap: true
}),
new webpack.DefinePlugin({
'process.env': {
'NODE_ENV': JSON.stringify('production')
}
})
]
})
Technically, NODE_ENV is a system environment variable that Node.js exposes into running scripts. It is used by convention to determine dev-vs-prod behavior by server tools, build scripts, and client-side libraries. Contrary to expectations, process.env.NODE_ENV is not set to "production" within the build script webpack.config.js, see #2537. Thus, conditionals like process.env.NODE_ENV === 'production' ? '[name].[hash].bundle.js' : '[name].bundle.js' within webpack configurations do not work as expected.

It's work https://www.npmjs.com/package/dotenv-webpack

So. After long time of testing this way best for me.
Solution for windows:
npm install --save-dev cross-env
package.json
"scripts": {
"watch": "webpack --watch",
"build:dev": "cross-env NODE_ENV=development webpack",
"build:prod": "cross-env NODE_ENV=production webpack"
}

After 16 months the hackaton ended. They had finally found a way to set the environment in webpack.

@EspenLarod hahahahahahaha.

@EspenLarod @jefer94  So, are you ready to update your webpack.config.js according to the latest webpack4 rfc? OMG, it's a big project...

This is now fixed in webpack 4. Setting mode: production or development also sets the proper NODE_ENV

@TheLarkInn I keep getting this

WARNING in configuration
The 'mode' option has not been set. Set 'mode' option to 'development' or 'production' to enable defaults for this environment.

even when I am setting up NODE_ENV
"start": "NODE_ENV=development webpack --config ./webpack/webpack.dev.js --watch",
"build": "NODE_ENV=production webpack --config ./webpack/webpack.prod.js"

@yordis From the warning:

Set 'mode' option to 'development' or 'production'...

It means: webpack --mode=production, webpack doesn't know about your NODE_ENV variable

I sometimes use NODE_ENV outside the context of bundling. Is there a command-line flag or configuration setting to prevent --mode from changing NODE_ENV?
const fooConfig = {
  test: 'foo',
  local: 'Foo',
  sandbox: 'fooo',
  dev: 'FoOoOo',
  prod: 'FOO'
}

console.log(fooConfig[process.env['NODE_ENV']])

$ NODE_ENV=dev node foo.js
FoOoOo

$ webpack --mode development --entry ./foo.js -o ./fooBundle.js
Hash: 82c0f8c800e30479245d
Version: webpack 4.1.0
...

$ NODE_ENV=dev node fooBundle.js
undefined

https://webpack.js.org/concepts/mode/


Update aos.css

remove commented line in aos.css
/# sourceMappingURL=aos.css.map/

This file is automatically generated, so updating it won't fix anything. I replaced the whole setup and removed sourcemaps in the next version, that I'm currently working on: https://github.com/michalsnik/aos/tree/next
It should soon be available on master.


docs: show nursery icon for nursery rules

Summary
This changes the docs to show a nursery icon (🌅) for rules in the nursery.
It currently doesn't do that for the rules that are in sub-categories (Pylint, Pycodestyle) because there is no all_rules() for the RuleCodePrefix that's returned by UpstreamCategory iteration (and as mentioned on Discord, I think UpstreamCategory maybe shouldn't be a thing).
Test Plan
Generated docs to see new icons (with the caveat above).

Bad reviewer hygiene as I haven't looked through the code at all, but I only have a minute tonight so want to chime in to say, it probably is important that we support this for the pycodestyle rules, since we have a bunch of nursery rules in there that I'd love to get in the docs.

Bad reviewer hygiene as I haven't looked through the code at all, but I only have a minute tonight so want to chime in to say, it probably is important that we support this for the pycodestyle rules, since we have a bunch of nursery rules in there that I'd love to get in the docs.

Absolutely! (Those are the ones I'm interested in tbh.) I'm just not perfectly sure how to best do that, since I don't know how to add all_rules() from #5436 into RuleCodePrefix (as returned by the UpstreamCategory iteration), and that led me to thinking whether the whole UpstreamCategory thing should just be replaced by rules having optional RuleCategorys...

I took another look at this to try and get the pycodestyle rules to show, and it's just really tough to work with the proc macro code.

@charliermarsh See #5591 – it's not quite perfect but does the trick here 😅


dependency-check-ant does not produce any report in 6.2.0 with default h2-Database

Describe the bug
In the current version 6.2.0 dependency-check-ant is unable to determine vulnerabilities or produce reports when the default h2-database is used.
Version of dependency-check used
dependency-check-ant 6.2.0
Log file
Excerpt from running dependency-check-ant with --debug flag:
    [dependency-check] Unable to connect to the database
    SQLException: java.sql.SQLException: No suitable driver found for jdbc:h2:file:D:\path\to\my\dependency-check\odc;AUTOCOMMIT=ON;CACHE_SIZE=65536;RETENTION_TIME=1000;MAX_COMPACT_TIME=10000;
    	at java.sql.DriverManager.getConnection(DriverManager.java:689)
    	at java.sql.DriverManager.getConnection(DriverManager.java:247)
    	at org.owasp.dependencycheck.data.nvdcve.DatabaseManager.initialize(DatabaseManager.java:185)
    	at org.owasp.dependencycheck.data.nvdcve.DatabaseManager.<init>(DatabaseManager.java:123)
    	at org.owasp.dependencycheck.data.nvdcve.CveDB.<init>(CveDB.java:238)
    	at org.owasp.dependencycheck.Engine.openDatabase(Engine.java:987)
    	at org.owasp.dependencycheck.Engine.doUpdates(Engine.java:863)
    	at org.owasp.dependencycheck.Engine.initializeAndUpdateDatabase(Engine.java:680)
    	at org.owasp.dependencycheck.Engine.analyzeDependencies(Engine.java:606)
    	at org.owasp.dependencycheck.taskdefs.Check.callExecuteAnalysis(Check.java:1799)
    	at org.owasp.dependencycheck.taskdefs.Check.execute(Check.java:1756)

Aside: in contrast to version 6.1.6 the following output is missing from log produced by version 6.2.0:
[dependency-check] data.driver_path=''
[dependency-check] data.driver_name='org.h2.Driver

(These two lines appear before dependency-check connects to the database in 6.1.6.)
To Reproduce
Steps to reproduce the behavior:

Execute dependency-check-ant as of version 6.2.0 configured as follows:

<dependency-check reportoutputdirectory="${dir.reports.dc}"
                          autoupdate="true"
                          projectname="myproject"
                          reportformat="ALL"
                          datadirectory="${dependency-check.datadirectory}"
                          failonerror="false">
            <fileset dir="${basedir}/../${dir.libs}" includes="**/*.jar" />
            <fileset dir="${basedir}/.." includes="**/lib/**/*.jar" />
            <fileset dir="${basedir}" includes="**/lib/**/*.jar" />
            <suppressionfile path="${basedir}/${dir.project.build}/dependency-check-suppressions.xml" />
        </dependency-check>

See: no report is generated
(Exection does not fail due to failonerror="false")

Expected behavior
dependency-check-ant should be able to connect to the default h2 database.
Additional context

The datadirectory mentioned in the task configuration above is shared with another project of mine that uses the Dependency-Check plugin for Gradle, currently in version 6.1.6.
The last CVE update was executed via the Dependency-Check Gradle plugin, version 6.1.6, and is younger than 4 hours (default for cveValidForHours), so Dependency-Check Ant considers it still up to date.

duplicates #3416

Can confirm the fix for dependency-check-ant in 6.2.1. Thanks, Jeremy!


nonce configurable for script and style

Current dependencies on/for this PR:

main

PR #11   👈

This comment was auto-generated by Graphite.


ToggleActions is a resource, even with InputMap as component

Which feature is frustrating to use or confusing?
Using ToggleActions feels unnatural to use, and could lead to problems in some couch co-op scenarios, with component-based input maps, because they are all resources that apply globally.
Expectation
ToggleActions as components, or maybe a way to toggle the input maps directly?

I think that ToggleActions<T> should be both a resource and a component. This lets you implement a 'paused' state by adding the resource, affecting all entities, but also letting you enable/disable it per-entity.

Totally agree.

It seems like this would be fixed by https://github.com/Leafwing-Studios/leafwing-input-manager/pull/456.


Microsoft.AspNetCore.Server.Kestrel|Connection id "0HLJBPGDC9PUI" stopped

I set QoSOptions TimeoutValue 60s:
"QoSOptions": {
        "ExceptionsAllowedBeforeBreaking": 3,
        "DurationOfBreak": 5,
        "TimeoutValue": 60000
}

And my response complete with 33.78s, but web client catch “gateway timeout”，this is ocelot log:
2019-01-02 09:14:25.3196|2|INFO|Microsoft.AspNetCore.Hosting.Internal.WebHost|Request finished in 34134.0082ms 200 application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
2019-01-02 09:14:25.3208|2|DEBUG|Microsoft.AspNetCore.Server.Kestrel|Connection id "0HLJBPGDC9PUH" stopped.

I think this is HttpConnection Timeout, but how to set Ocelot HttpConnection's Timeout?

@SamYuann  I don't get your question. Just clarify I understood can you explain:
Response complete with 33.78s (while calling through gateway or directly downstream).
If its by gateway call, and response returns then Ocelot is fine, check with webclient and next thing you are trying to do with.
Exactly I don't remember solution for your problem but few years ago I have seen this problem in another project (Not in Ocelot),
and I searched on stackoverflow at that time to fix it,
Probably something wrong with http or https scheme.
https://stackoverflow.com/questions/58547548/dotnet-run-on-diferent-port-causes-a-connection-id-xxxx-request-processing-en
https://github.com/dotnet/aspnetcore/issues/44870
I need explanation again to understand problem, I haven't seen these things with latest Ocelot version and I have done testings over it.
Are you still using Ocelot? @SamYuann

@ks1990cn
Mr. Sam is not even with GitHub )) Repos are empty! Also, activities graph is empty since 2018/19. There is no forked Ocelot repo...
Conclusion: The next ghost is detected!

@SamYuann commented on Jan 2, 2019

Sam, welcome to Ocelot world!

I think this is HttpConnection Timeout

Why do you think so? I don't see any problems at all! Your request was finished in 34.134 seconds with successful status code 200 aka OK. What's the problem, my dear? 😉
So, QoS Timeout policy wasn't applied (34 is less than 60). 😄
And default HttpClient timeout is 90 secs:

_defaultTimeout = TimeSpan.FromSeconds(90);
Code link: Ocelot.Requester.HttpClientBuilder constructor initializes def timeout by 90 value

And if QoS value is defined then it is used instead of default 90 secs value:
            var timeout = downstreamRoute.QosOptions.TimeoutValue == 0
                ? _defaultTimeout
                : TimeSpan.FromMilliseconds(downstreamRoute.QosOptions.TimeoutValue);

See the Time out logic code here

but how to set Ocelot HttpConnection's Timeout?

The link: code:
            // This is hardcoded at the moment but can easily be added to configuration
            // if required by a user request.
            _defaultTimeout = TimeSpan.FromSeconds(90);

Any other problems we can help you? 🤣


artificial (static) enemies

I thought it would be nice to have blocked parts of the map - it makes ship distribution harder and may also force huge battles for some narrow passes.
But navigation would be hard, and it is probably not worth it.
But we may introduce (in later stages of the game) AI, which would guard some parts of the map. Like a turret. This could lead to similar behavior changes

Idea: guard "castle" in the center of the map. Player who destroys the castle instantly wins the game.
Postponed..


How to use Windows Authentication on version 1.0.4?

Please include as much of the following as you can in your bug report

Versions of Server-Side NuGet Packages: 1.0.4
Versions of Client-Side NPM Packages: 1.0.4
Are you using the C# client or the JavaScript client: JavaScript/Typescript Client
The Server you are using: IIS Express
The Operating System on the Server: Windows
The Operating System on the Client: Windows
The Browser on the client, if using the JavaScript client: Chrome

How to use Windows Authentication on version 1.0.4?
On previous versions you could use:
    var connection = new HubConnectionBuilder()
    .WithUrl("https://example.com/myhub", options => {
        options.UseDefaultCredentials = true;
    })
    .Build();

That does not seem to be available on version 1.0.4. The message I get from the server is 401 unauthorized. The regular AspNetCore Web Api requests work fine with Windows Authentication. Only the SignalR requests I cannot get working with WIndows Authentication.

I just wanted to add some more info. It is the OPTIONS pre-flight request that is not getting through. Even though CORS is set to allow any method. The response is 401 unauthorized.
This is the endpoint: https://localhost:44300/myHub/negotiate
           services
                .AddCors(options =>
                {
                    options.AddPolicy("CorsPolicy", builder =>
                        builder.AllowAnyOrigin()
                            .AllowAnyMethod()
                            .AllowAnyHeader()
                            .AllowCredentials());
                });
            services
                .AddAuthentication(IISDefaults.AuthenticationScheme);
            services
                .AddSignalR();
            services
                .AddMvc()
                .SetCompatibilityVersion(CompatibilityVersion.Version_2_1)
                .AddJsonOptions(options =>
                {
                    options.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
                });
-------------------------------------------------------
            app.UseCors("CorsPolicy");
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseHsts();
            }
            app.UseHttpsRedirection();
            app.UseSignalR(routes =>
            {
                routes.MapHub<MyHub>("/myHub");
            });
            app.UseMvc();

There is a nice blog post explaining exactly how to handle CORS + Windows Auth in IIS!
https://blogs.iis.net/iisteam/getting-started-with-the-iis-cors-module

Thanks Brennan for the blog post but the blog post was written for Asp.Net not Asp.Net Core. It did not contain the information needed to solve the problem.

The blog post is written for hosting an app in IIS, nothing specific to ASP.NET or ASP.NET Core. The same configuration will apply for both.
What information are you missing?

Unfortunately because IIS's Windows Auth happens before ASP.NET Core runs, the ASP.NET Core CORS implementation isn't able to process the OPTIONS request (because the browser won't send your Windows credentials with it). The only real solution here is to use the IIS CORS module since it runs before Windows Authentication and can process the unauthenticated CORS request.

My bad. This is my first project doing windows authentication. I'll give the blog post another try. I'll report back my findings.

Just a quick question. Do you know how to make it work on IIS express. The blog post works great for IIS but my development environment uses IIS express. I can't figure out how to make it work for IIS express.

Not off hand. I believe you can do the same, you'll just have to find the appropriate config files. @shirhatti, are there any docs about enabling the IIS CORS module on IIS Express specifically?
@DannyBoyNg Another option you can use is to configure IIS to allow anonymous users, then add middleware after the UseCors middleware that blocks anonymous users. Then, anonymous OPTIONS requests would go through and get to UseCors (where they would be handled) but if a non-OPTIONS request came in, it would pass through UseCors and hit your middleware that blocks it. It's a bit of a hack, but it would let you continue to use ASP.NET Core CORS with Windows Auth.

@anurse Thank you for your solution. It solves the problem of the anonymous OPTIONS request. There doesn't seem to be another solution, at least that I could find.
Case closed.


Updating some advocate profiles

Added james
Added Sandra
Added Penina
Updated Max
Fixed Aaron/Sandra/James images
Updated readme (for profile image)

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

README.md
:white_check_mark:Succeeded

advocates/index.html.yml
:white_check_mark:Succeeded
View

advocates/index.yml
:white_check_mark:Succeeded
View

advocates/james-turnbull.yml
:white_check_mark:Succeeded
View

advocates/map.yml
:white_check_mark:Succeeded
View

advocates/maxime-rouiller.yml
:white_check_mark:Succeeded
View

advocates/media/profiles/aaron-schlesinger.png
:white_check_mark:Succeeded
View

advocates/media/profiles/james-turnbull.png
:white_check_mark:Succeeded
View

advocates/media/profiles/penina-weiss.png
:white_check_mark:Succeeded
View

advocates/media/profiles/sandra-kriemann.png
:white_check_mark:Succeeded
View

advocates/penina-weiss.yml
:white_check_mark:Succeeded
View

advocates/sandra-kriemann.yml
:white_check_mark:Succeeded
View

advocates/toc.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

README.md
:white_check_mark:Succeeded

advocates/index.html.yml
:white_check_mark:Succeeded
View

advocates/index.yml
:white_check_mark:Succeeded
View

advocates/james-turnbull.yml
:white_check_mark:Succeeded
View

advocates/map.yml
:white_check_mark:Succeeded
View

advocates/maxime-rouiller.yml
:white_check_mark:Succeeded
View

advocates/media/profiles/aaron-schlesinger.png
:white_check_mark:Succeeded
View

advocates/media/profiles/james-turnbull.png
:white_check_mark:Succeeded
View

advocates/media/profiles/penina-weiss.png
:white_check_mark:Succeeded
View

advocates/media/profiles/rick-claus.png
:white_check_mark:Succeeded
View

advocates/media/profiles/sandra-kriemann.png
:white_check_mark:Succeeded
View

advocates/penina-weiss.yml
:white_check_mark:Succeeded
View

advocates/rick-claus.yml
:white_check_mark:Succeeded
View

advocates/sandra-kriemann.yml
:white_check_mark:Succeeded
View

advocates/toc.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

README.md
:white_check_mark:Succeeded

advocates/index.html.yml
:white_check_mark:Succeeded
View

advocates/index.yml
:white_check_mark:Succeeded
View

advocates/james-turnbull.yml
:white_check_mark:Succeeded
View

advocates/map.yml
:white_check_mark:Succeeded
View

advocates/maxime-rouiller.yml
:white_check_mark:Succeeded
View

advocates/media/profiles/aaron-schlesinger.png
:white_check_mark:Succeeded
View

advocates/media/profiles/james-turnbull.png
:white_check_mark:Succeeded
View

advocates/media/profiles/penina-weiss.png
:white_check_mark:Succeeded
View

advocates/media/profiles/rick-claus.png
:white_check_mark:Succeeded
View

advocates/media/profiles/sandra-kriemann.png
:white_check_mark:Succeeded
View

advocates/penina-weiss.yml
:white_check_mark:Succeeded
View

advocates/rick-claus.yml
:white_check_mark:Succeeded
View

advocates/sandra-kriemann.yml
:white_check_mark:Succeeded
View

advocates/toc.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

FromYmlToTOC-INDEX.ps1
:white_check_mark:Succeeded

README.md
:white_check_mark:Succeeded

advocates/index.html.yml
:white_check_mark:Succeeded
View

advocates/index.yml
:white_check_mark:Succeeded
View

advocates/james-turnbull.yml
:white_check_mark:Succeeded
View

advocates/map.yml
:white_check_mark:Succeeded
View

advocates/maxime-rouiller.yml
:white_check_mark:Succeeded
View

advocates/media/profiles/aaron-schlesinger.png
:white_check_mark:Succeeded
View

advocates/media/profiles/james-turnbull.png
:white_check_mark:Succeeded
View

advocates/media/profiles/penina-weiss.png
:white_check_mark:Succeeded
View

advocates/media/profiles/rick-claus.png
:white_check_mark:Succeeded
View

advocates/media/profiles/sandra-kriemann.png
:white_check_mark:Succeeded
View

advocates/penina-weiss.yml
:white_check_mark:Succeeded
View

advocates/rick-claus.yml
:white_check_mark:Succeeded
View

advocates/sandra-kriemann.yml
:white_check_mark:Succeeded
View

advocates/toc.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

FromYmlToTOC-INDEX.ps1
:white_check_mark:Succeeded

README.md
:white_check_mark:Succeeded

advocates/index.html.yml
:white_check_mark:Succeeded
View

advocates/index.yml
:white_check_mark:Succeeded
View

advocates/james-turnbull.yml
:white_check_mark:Succeeded
View

advocates/map.yml
:white_check_mark:Succeeded
View

advocates/maxime-rouiller.yml
:white_check_mark:Succeeded
View

advocates/media/profiles/aaron-schlesinger.png
:white_check_mark:Succeeded
View

advocates/media/profiles/james-turnbull.png
:white_check_mark:Succeeded
View

advocates/media/profiles/penina-weiss.png
:white_check_mark:Succeeded
View

advocates/media/profiles/rick-claus.png
:white_check_mark:Succeeded
View

advocates/media/profiles/sandra-kriemann.png
:white_check_mark:Succeeded
View

advocates/penina-weiss.yml
:white_check_mark:Succeeded
View

advocates/rick-claus.yml
:white_check_mark:Succeeded
View

advocates/sandra-kriemann.yml
:white_check_mark:Succeeded
View

advocates/toc.yml
:white_check_mark:Succeeded
View

advocates/tweets.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

FromYmlToTOC-INDEX.ps1
:white_check_mark:Succeeded

README.md
:white_check_mark:Succeeded

advocates/index.html.yml
:white_check_mark:Succeeded
View

advocates/index.yml
:white_check_mark:Succeeded
View

advocates/james-turnbull.yml
:white_check_mark:Succeeded
View

advocates/map.yml
:white_check_mark:Succeeded
View

advocates/maxime-rouiller.yml
:white_check_mark:Succeeded
View

advocates/media/profiles/aaron-schlesinger.png
:white_check_mark:Succeeded
View

advocates/media/profiles/james-turnbull.png
:white_check_mark:Succeeded
View

advocates/media/profiles/penina-weiss.png
:white_check_mark:Succeeded
View

advocates/media/profiles/rick-claus.png
:white_check_mark:Succeeded
View

advocates/media/profiles/sandra-kriemann.png
:white_check_mark:Succeeded
View

advocates/penina-weiss.yml
:white_check_mark:Succeeded
View

advocates/rick-claus.yml
:white_check_mark:Succeeded
View

advocates/sandra-kriemann.yml
:white_check_mark:Succeeded
View

advocates/toc.yml
:white_check_mark:Succeeded
View

advocates/tweets.yml
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Cache class field ref into local

Er... why did you close it?

Cache class field to local is completed. I will reopen it.

After some fixes, the pull request can now be successfully built and has passed all unit tests. Looking forward to your guidance.

If you send me your name, I'll add a thank note to CHANGES.

You can refer to me by my GitHub username, mouse0w0, due to privacy concerns.


initWith method forces apps to include the FirebaseAnalytics lib even if not in use

Create separate method that does not include FirebaseAnalytics instance

Tested in client project.


py2exe with mpld3

I made a simple script which plots a figure/line graph and then saves figure to html file.I want to make this script into a standalone executable.Is this possible via py2exe?
Thanks

I don't see why not... please give it a try and report back on how it works!  If it doesn't work, can you generate a "minimal complete verifiable example" of what has gone wrong and post it here?

I have been able to make a working .exe file using pyinstaller though.After pyinstaller generates the [dist] and the [build] folder,I needed to add mk2_avx.dll and **mk2_def.dll **in the [dist] folder to make it work.
As for py2exe,it gives me an error from the start,I was using the instructions as mentioned for matplotlib here


Documentation: Transformer example link broken

Package
dio
Version
5.7.0
Operating-System
Web
Adapter
Default Dio
Output of flutter doctor -v
No response
Dart Version
No response
Steps to Reproduce
Documentation at https://pub.dev/packages/dio#transformer refers to broken link https://github.com/cfug/dio/blob/main/example/lib/transformer.dart which should now be https://github.com/cfug/dio/blob/main/example_dart/lib/transformer.dart, I believe.
Expected Result
https://github.com/cfug/dio/blob/main/example_dart/lib/transformer.dart (works)
Actual Result
https://github.com/cfug/dio/blob/main/example/lib/transformer.dart (broken)

@eggzotic Would you like to submit a quick fix for it?


Getting "no matching index found" when running example

=> #<Google::Cloud::Datastore::Dataset:0x000055fbec9d62f8 @service=Google::Cloud::Datastore::Service(project_name)>
[17] pry(main)> task = datastore.entity "Task", "sampleTask" do |t|
[17] pry(main)*   t["type"] = "Personal"
[17] pry(main)*   t["done"] = false
[17] pry(main)*   t["priority"] = 4
[17] pry(main)*   t["description"] = "Learn Cloud Datastore"
[17] pry(main)* end
=> #<Google::Cloud::Datastore::Entity:0x000055fbec7c39c0
 @_exclude_indexes={},
 @key=#<Google::Cloud::Datastore::Key:0x000055fbec7c3600 @kind="Task", @name="sampleTask", @namespace=nil, @project=nil>,
 @properties=
  #<Google::Cloud::Datastore::Properties:0x000055fbec7c3998
   @hash={"type"=>"Personal", "done"=>false, "priority"=>4, "description"=>"Learn Cloud Datastore"}>>
[18] pry(main)>
[19] pry(main)> # Save the new task
[20] pry(main)> datastore.save task
=> [#<Google::Cloud::Datastore::Entity:0x000055fbec7c39c0
  @_exclude_indexes={},
  @key=#<Google::Cloud::Datastore::Key:0x000055fbec7c3600 @kind="Task", @name="sampleTask", @namespace=nil, @project=nil>,
  @properties=
   #<Google::Cloud::Datastore::Properties:0x000055fbec7c3998
    @hash={"type"=>"Personal", "done"=>false, "priority"=>4, "description"=>"Learn Cloud Datastore"}>>]
[21] pry(main)>
[22] pry(main)> # Run a query for all completed tasks
[23] pry(main)> query = datastore.query("Task").
[23] pry(main)* where("done", "=", false)
=> #<Google::Cloud::Datastore::Query:0x000055fbec4eb0b8
 @grpc=
  <Google::Datastore::V1::Query: projection: [], kind: [<Google::Datastore::V1::KindExpression: name: "Task">], filter: <Google::Datastore::V1::Filter: composite_filter: <Google::Datastore::V1::CompositeFilter: op: :AND, filters: [<Google::Datastore::V1::Filter: composite_filter: nil, property_filter: <Google::Datastore::V1::PropertyFilter: property: <Google::Datastore::V1::PropertyReference: name: "done">, op: :EQUAL, value: <Google::Datastore::V1::Value: boolean_value: false, integer_value: 0, double_value: 0.0, key_value: nil, entity_value: nil, geo_point_value: nil, array_value: nil, timestamp_value: nil, null_value: :NULL_VALUE, meaning: 0, string_value: "", blob_value: "", exclude_from_indexes: false>>>]>, property_filter: nil>, order: [], distinct_on: [], start_cursor: "", end_cursor: "", offset: 0, limit: nil>>
[24] pry(main)> tasks = datastore.run query
Google::Cloud::FailedPreconditionError: 9:no matching index found.
from /home/user/.rbenv/versions/2.4.3/lib/ruby/gems/2.4.0/gems/google-cloud-datastore-1.4.0/lib/google/cloud/datastore/service.rb:191:in `rescue in execute'```

This error is coming from the Datastore API. The Indexes guide states:

By default, Cloud Datastore automatically predefines an index for each property of each entity kind. These single property indexes are suitable for simple types of queries.

Your query is using a built-in index so it should be available. How long did you wait between creating the first entity with that property and running the query? It may take a few seconds for the built-in index to become available.

It works perfectly from UI

So at least 10+ minutes

Just recreated a project from the scratch and got the same
Google::Cloud::FailedPreconditionError: 9:no matching index found.```

I suspect there may be something else going on with your setup as I am unable to reproduce the error you are reporting. I just ran the following Ruby code in a new IRB session without any issues
require "google/cloud/datastore"
datastore = Google::Cloud::Datastore.new
task = datastore.entity "NeverUsedBeforeTask", "sampleTask" do |t|
  t["type"] = "Personal"
  t["done"] = false
  t["priority"] = 4
  t["description"] = "Learn Cloud Datastore"
end
datastore.save task
query = datastore.query("NeverUsedBeforeTask").where("done", "=", false)
tasks = datastore.run query

I pasted the ruby code into the console so it ran as fast as possible. Here is the output:
$ irb
irb(main):001:0> require "google/cloud/datastore"
=> true
irb(main):002:0> datastore = Google::Cloud::Datastore.new
=> #<Google::Cloud::Datastore::Dataset:0x00007ff94e8b8db0 @service=Google::Cloud::Datastore::Service(my-project-id)>
irb(main):003:0> task = datastore.entity "NeverUsedBeforeTask", "sampleTask" do |t|
irb(main):004:1*   t["type"] = "Personal"
irb(main):005:1>   t["done"] = false
irb(main):006:1>   t["priority"] = 4
irb(main):007:1>   t["description"] = "Learn Cloud Datastore"
irb(main):008:1> end
=> #<Google::Cloud::Datastore::Entity:0x00007ff94e872748 @properties=#<Google::Cloud::Datastore::Properties:0x00007ff94e872720 @hash={"type"=>"Personal", "done"=>false, "priority"=>4, "description"=>"Learn Cloud Datastore"}>, @key=#<Google::Cloud::Datastore::Key:0x00007ff94e8723d8 @kind="NeverUsedBeforeTask", @name="sampleTask", @project=nil, @namespace=nil>, @_exclude_indexes={}>
irb(main):009:0> datastore.save task
=> [#<Google::Cloud::Datastore::Entity:0x00007ff94e872748 @properties=#<Google::Cloud::Datastore::Properties:0x00007ff94e872720 @hash={"type"=>"Personal", "done"=>false, "priority"=>4, "description"=>"Learn Cloud Datastore"}>, @key=#<Google::Cloud::Datastore::Key:0x00007ff94e8723d8 @kind="NeverUsedBeforeTask", @name="sampleTask", @project=nil, @namespace=nil>, @_exclude_indexes={}>]
irb(main):010:0> query = datastore.query("NeverUsedBeforeTask").where("done", "=", false)
=> #<Google::Cloud::Datastore::Query:0x00007ff94c06d950 @grpc=<Google::Datastore::V1::Query: projection: [], kind: [<Google::Datastore::V1::KindExpression: name: "NeverUsedBeforeTask">], filter: <Google::Datastore::V1::Filter: composite_filter: <Google::Datastore::V1::CompositeFilter: op: :AND, filters: [<Google::Datastore::V1::Filter: composite_filter: nil, property_filter: <Google::Datastore::V1::PropertyFilter: property: <Google::Datastore::V1::PropertyReference: name: "done">, op: :EQUAL, value: <Google::Datastore::V1::Value: boolean_value: false, integer_value: 0, double_value: 0.0, key_value: nil, entity_value: nil, geo_point_value: nil, array_value: nil, timestamp_value: nil, null_value: :NULL_VALUE, meaning: 0, string_value: "", blob_value: "", exclude_from_indexes: false>>>]>, property_filter: nil>, order: [], distinct_on: [], start_cursor: "", end_cursor: "", offset: 0, limit: nil>>
irb(main):011:0> tasks = datastore.run query
=> [#<Google::Cloud::Datastore::Entity:0x00007ff94e848830 @properties=#<Google::Cloud::Datastore::Properties:0x00007ff94e8482e0 @hash={"type"=>"Personal", "done"=>false, "priority"=>4, "description"=>"Learn Cloud Datastore"}>, @key=#<Google::Cloud::Datastore::Key:0x00007ff94e848600 @kind="NeverUsedBeforeTask", @name="sampleTask", @project="my-project-id", @namespace="">, @_exclude_indexes={"type"=>false, "done"=>false, "priority"=>false, "description"=>false}>]

I switched projects and got the same results. Is there anything else you can tell us about your setup?

I'll try to reproduce as well.

I created a new project named temporary-datastore-test, created service account credentials and downloaded the JSON file, and then visited the following URL to set up the database.
https://console.cloud.google.com/datastore/setup?project=temporary-datastore-test
I did not create an entity at that URL, I only created the database. Then I ran the previous Ruby code as soon as the web UI refreshed after the database was created. Here is the output:
$ DATASTORE_PROJECT=temporary-datastore-test DATASTORE_CREDENTIALS=/downloads/temporary-datastore-test.json irb
irb(main):001:0> require "google/cloud/datastore"
=> true
irb(main):002:0> datastore = Google::Cloud::Datastore.new
=> #<Google::Cloud::Datastore::Dataset:0x00007fe77013b910 @service=Google::Cloud::Datastore::Service(temporary-datastore-test)>
irb(main):003:0> task = datastore.entity "NeverUsedBeforeTask", "sampleTask" do |t|
irb(main):004:1*   t["type"] = "Personal"
irb(main):005:1>   t["done"] = false
irb(main):006:1>   t["priority"] = 4
irb(main):007:1>   t["description"] = "Learn Cloud Datastore"
irb(main):008:1> end
=> #<Google::Cloud::Datastore::Entity:0x00007fe770118c30 @properties=#<Google::Cloud::Datastore::Properties:0x00007fe770118c08 @hash={"type"=>"Personal", "done"=>false, "priority"=>4, "description"=>"Learn Cloud Datastore"}>, @key=#<Google::Cloud::Datastore::Key:0x00007fe770118708 @kind="NeverUsedBeforeTask", @name="sampleTask", @project=nil, @namespace=nil>, @_exclude_indexes={}>
irb(main):009:0> datastore.save task
=> [#<Google::Cloud::Datastore::Entity:0x00007fe770118c30 @properties=#<Google::Cloud::Datastore::Properties:0x00007fe770118c08 @hash={"type"=>"Personal", "done"=>false, "priority"=>4, "description"=>"Learn Cloud Datastore"}>, @key=#<Google::Cloud::Datastore::Key:0x00007fe770118708 @kind="NeverUsedBeforeTask", @name="sampleTask", @project=nil, @namespace=nil>, @_exclude_indexes={}>]
irb(main):010:0> query = datastore.query("NeverUsedBeforeTask").where("done", "=", false)
=> #<Google::Cloud::Datastore::Query:0x00007fe7701117a0 @grpc=<Google::Datastore::V1::Query: projection: [], kind: [<Google::Datastore::V1::KindExpression: name: "NeverUsedBeforeTask">], filter: <Google::Datastore::V1::Filter: composite_filter: <Google::Datastore::V1::CompositeFilter: op: :AND, filters: [<Google::Datastore::V1::Filter: composite_filter: nil, property_filter: <Google::Datastore::V1::PropertyFilter: property: <Google::Datastore::V1::PropertyReference: name: "done">, op: :EQUAL, value: <Google::Datastore::V1::Value: boolean_value: false, integer_value: 0, double_value: 0.0, key_value: nil, entity_value: nil, geo_point_value: nil, array_value: nil, timestamp_value: nil, null_value: :NULL_VALUE, meaning: 0, string_value: "", blob_value: "", exclude_from_indexes: false>>>]>, property_filter: nil>, order: [], distinct_on: [], start_cursor: "", end_cursor: "", offset: 0, limit: nil>>
irb(main):011:0> tasks = datastore.run query
=> [#<Google::Cloud::Datastore::Entity:0x00007fe770108dd0 @properties=#<Google::Cloud::Datastore::Properties:0x00007fe770108470 @hash={"type"=>"Personal", "done"=>false, "priority"=>4, "description"=>"Learn Cloud Datastore"}>, @key=#<Google::Cloud::Datastore::Key:0x00007fe770108b78 @kind="NeverUsedBeforeTask", @name="sampleTask", @project="temporary-datastore-test", @namespace="">, @_exclude_indexes={"type"=>false, "done"=>false, "priority"=>false, "description"=>false}>]

Seems like we found the root of the issue.

I could not reproduce in my own project, using @blowmage's snippet in this comment. I get the same results as @blowmage posted there.

Ok, we figured out how to work around this. We were creating the databases in firebase which leads you to cloud console for service accounts and says that you can use datastore libraries, and lastly it says that it also automatically creates indexes:

So we tried creating the database in a new project in the cloud console instead and low and behold it worked. So it looks like there's a disconnect between creating it in the firebase console vs the cloud console.

@treeder So would you consider this a problem with the documentation? Can you provide additional links/screenshots and a recommendation for changes? We do not have the ability to change console or cloud.google.com docs ourselves, but we may be able to get the attention of someone who can.

Well, I would just expect it to work. I assume these indexes should be there when created in Firebase since it says that they should be per the screenshot I posted above. I guess I'm also assuming that these libraries should work with Firestore too since from what I've read, Firestore is backed by Datastore?
Maybe those are wrong assumptions though... ? 😄

Fair enough, let's leave open the possibility that it could be a bug in the service. We will do what we can to raise this issue to Google, but please also pursue any other support channels you may have.
Both scenarios are out of scope for this library, so I'm closing this issue now. Feel free to reopen this issue or new ones if you discover anything we can do to improve this library and/or google-cloud-firestore, which we hope you might also find useful.

Databases created through Firebase create Cloud Firestore projects. Cloud Firestore and Cloud Datastore have some interoperability, however they have different query semantics (and thus different indexes). Like Cloud Datastore, Cloud Firestore has automatic indexes, but they are a different set of indexes, which is why your Cloud Datastore queries (with Cloud Datastore semantics) are missing an index.

We found this lib and are giving it a try: https://github.com/firebase/firebase-admin-go You can probably chock this up to bad assumptions on our part. And the fact that this library partially works with Firestore (inserts, queries without filters, etc) which added to the confusion.

@treeder We let some Google folks know about this, thanks so much for opening this issue!

Hi @treeder,
Thanks for filing the issue could you help me understand how you came across information stating you could Datastore client libraries to access Firestore?
After chatting with @pcostell, there does exist some interoperability but not enough to recommend that you use the Datastore client. Please continue to use Ruby Firestore client libraries.
Thanks!


Add a testing framework and a few initial unit tests, plus other cleanup

@cmichelQT once you've reviewed this, if you could also enable Travis CI on the repository so that I can set up automated Travis builds, that would be great.


Guide on handling protected SSR api requests

A bit tricky of a question but here's the scenario. Also, sorry for posting here if not the correct project. Wasn't sure which repo to post under.
Using Nuxt with Express

Using Express Sessions
You have protected routes that lookup session to allow access
From a Nuxt page component, you use fetch (), or other server side hooks, to hit the protected route for data.

This works without an issue from the browser's point of view as cookie/session can be detected. However, when the fetch hook is triggered from the server, cookie/session is lost. Following the, https://nuxtjs.org/examples/auth-routes/ is insufficient.
ie: if your protected route looks like
exports function(req,res){
  if (!req.session.user) return res.status(401).send('not logged in')
}

Nuxt renderer will throw a 401 error as the hook call to the protected route will not contain the user session.
There are many solutions/workarounds here

Not using sessions and turning to stateless tokens
Not calling protected routes from server

using isServer flag

using the mounted hook instead

There may be others but probably in the realms of either or.

The token solution works but is not straight forward and probably be worthwhile to have examples for people to follow and setup.
not using protected routes from the server is a simple workaround but limits SSR on protected pages. From an SEO standpoint, this is completely fine and probably the use of SSR in the first place. Still not ideal.

This question is available on Nuxt.js community (#c285)

this is seemingly still an issue that's not documented? I'm happy I searched and stumbled into a closed issue that looks unresolv

I just ran into this issue today. and was scratching my head for hours, trying to figure out why express loses session on SSR. :(

JUST FYI: I have transitioned to using JWT tokens. Makes it much simpler to not have to deal with sessions.


[Bug] Plugin Registration Order is not deterministic when using layers

Environment

Operating System: Linux
Node Version:     v16.20.0
Nuxt Version:     3.7.1
CLI Version:      3.8.1
Nitro Version:    2.6.3
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      extends
Runtime Modules:  -
Build Modules:    -

Reproduction
https://stackblitz.com/edit/nuxt-starter-g42wkd?file=nuxt.config.ts
Describe the bug
The order of plugin execution is not correct when using layers. Plugins that are defined in lower layers execute after plugins defined in higher layers. This causes incorrect behavior when a plugin override is necessary. In the provided repo a use case of overriding the same entity from a higher level is not possible due to this issue.
Additional context
No response
Logs
No response

Yes, when using auto-imported plugins it seems to work as expected
https://stackblitz.com/edit/nuxt-starter-mofheb?file=nuxt.config.ts
isn't it ironic? :)

But it feels counter-intuitive, I deliberately provided an example of a custom component auto import. That one is working correctly, isn't it? So then why plugins should behave differently when manually defined?
Btw, what is c12?

A workaround can be sorting the plugins using app:resolve  nuxt hook.


FR: Ability to load icon from an embedded resource on file on Windows

As per the from_path and from_resource functions seen in the winit source code at https://github.com/rust-windowing/winit/blob/master/src/platform_impl/windows/icon.rs#L79 😄
Huge thanks
Fotis

Thank you so much @amrbashir!! 😄


Mkdir for lxc root dir before setup of symlink

Signed-off-by: Michael Crosby<EMAIL_ADDRESS>

LGTM

LGTM

Someone pls create bday issue about test this :) Shouldn't be very hard just to start daemon and check root.


Update ex_cifar10_tf from fgsm to FastGradientMethod

Bug: Currently the ex_cifar10_tf.py example is broken due to a change in the fgsm API.
To reproduce: install the current version of cleverhans with python setup.py install and run the example.
Expected:
$ python ex_cifar10_tf.py
 Test accuracy on legitimate test examples: 0.4957
 Test accuracy on legitimate test examples: 0.5728
...

Actual:
$ python ex_cifar10_tf.py
Using TensorFlow backend.
Traceback (most recent call last):
  File "ex_cifar10_tf.py", line 15, in <module>
    from cleverhans.attacks import fgsm
ImportError: cannot import name 'fgsm'

This PR updates ex_cifar10_tf.py to use the new FastGradientMethod class.

Thanks for the PR, there is a minor tweak missing but should be good once that is fixed


segment container should start with a leading dot which allows it to …

…be hidden when using gui tools such as cyberduck to reduce end user confusion.
while the current standard in the swift community is container + "_segments" all developers I spoke to acknowledge that this is not optimal as there are many GUI tools that show these segment containers and
This change will allow GUI clients such as Expandrive, Cloudberry, Cyberduck, SME to hide these folders and greatly increase end user experience and reduce helpdesk tickets to IT departments ("What is this _segment stuff, can I delete it ?") .
The new naming convention would be consistent with the swift stack undelete feature https://github.com/swiftstack/swift_undelete which creates trash cans starting with .trash /etc/  but also with Swift Commander

There is a backwards compatibility problem if we switch over to this - rclone assumes segments are stored in a _segments container when managing the container so a bit more code than this would be needed I think - I'll have to check.
@Tolsi do you have a view on whether naming the containers like this is a good idea or not?

I think not, but it may be an optional segments container prefix

Actually if you switch this setting there should be no compatibility issues as each manifest object in mycontainer contains pointers to the segments in mycontainer_segments. Every newly created object will have their segments in .segments_mycontainer. The only issue would be if you want to determine the total size of the container including the segment container and are using the older DLO instead of SLO. DLO does not report the sizes of objects in a container listing so you can either iterate over all object and determine the sizes with expensive head requests or you add up all the sizes of the containers and all segment containers. Of course the latter is not really deterministic as users may work with tools that have even other naming conventions for segment containers. I have also seen tools that use a single dedicated hidden container for ALL large objects in the account.

Sorry for the delay - fell off my radar!
I think I'm not going to merge this as-is. If you read through the code, you'll see that rclone assumes that segments are in _segments containers - it doesn't read the manifest like it should, so changing the name of the segments containers will cause problems for users. You could consider this a bug, and I'd be very interested to see a PR to fix it!
If you would like to resend with a feature flag, eg --swift-segment-container-prefix or something like that then I would accept it.
Thanks
Nick

I'm going to close this for the moment - please send a new PR if you want to carry on with the feature.
Thanks
Nick


Add an entry from the Portswigger WebAcademy about access control

Entry found in this lab.
Thank you very much in advance.

Thanks!

Thanks to you 😃


Added Baidu support

Fixes: #202
Added Button with Baidu icon and the scraper is used to scrape Baidu search engine.

@vaibhavsingh97 I'll do that as soon as this #205 gets accepted

This will need rework based on the current scraper.py

@cclauss You are right, I am again waiting for #205 to get merged and then I will do it


Repair or replace C++ fracpack implementation

See #265

Some notes:

Documentation of the format is at https://doc-sys.psibase.io/format/fracpack.html .
The test cases under psio/ are far from complete. rust/test_fracpack tests the rust and C++ implementations against each other and tries to cover the large number of border cases.
Non-orthognalitities (e.g. optional<vector<...>>) complicate both the C++ and Rust implementations. Other languages (e.g. js) will have a much harder time dealing with it.


Sat and Sun font colour

It would be nice to be able to setup Sat in blue and Sun in red for instance

Yeah, apparently that's a thing 🤦🏻♂


chore: Update devDependencies versions

PR-Codex overview
This PR updates various dependencies, fixes test descriptions, and improves test configuration across different packages and workflows.
Detailed summary

Updated dependencies for vite, esbuild, typescript, webpack, and others.
Modified test descriptions and configurations.
Replaced execa commands with $ template strings for script execution.
Enhanced test setup and mock handling with vitest.


init json column. As start point)

tested on postgresql.

Good work by the way!

Thanks)

Nah man, thank you! I will publish a new version asap

0.8.0 is up now


Fix: Modify Tag path behavior in Dynamic Registries

Causes all modded Dynamic Registries to use tags/NAMESPACE/path/to/file for tag paths instead of tags/path/to/file, where NAMESPACE is the namespace of the Dynamic Registry.
This prevents accidental namespace collision in tags, and could be considered a bugfix as it was intended behavior in the Dynamic Registry API to begin with.

Could a tag be added for testing in the testmod?


Server

Backend Server
Tools/Packages
.eslintrc.js added eslint
.gitignore initialized
.prettierrc added prettier
client/vite.config.js apply Vite development server.
package-lock.json
package.json
server/.gitignore
server/config/.env Updated env. variables
server/package-lock.json
server/package.json
Server
server/controllers/issues.js Initial issue
server/routes/main.js Initial issue
server/server.js  Updated focus on passing the api data to '/' end point, set headers, cors config
Client
client/src/Components/Home/LandingPage.jsx Updated to fetch backend api data.
client/src/Components/IssueBoard/IssueBoard.jsx To render cards depending on data array and pass that data.
client/src/Components/IssueBoard/GoodFirstIssueCard.jsx Pass the data to every single card.

Approved ✅


Reporting identity information back to Flagsmith API when using local evaluation

When using local evaluation, we want to be able to see the identities that have been evaluated locally.
As part of this, we want to be able to create a read-only view of the identities page since identity overrides won't work still.

Keep a hashmap of identities in the SDK when running in local eval mode and send all the Identity strings up to the API every N seconds. Keep a record of which Identities we have sent so they only get sent once. Have a configurable cache size in the SDK so LRU (maybe?!) entries are evicted. This will result in resends but it is unavoidable unless we stop caring about SDK memory consumption.


Select Images from Media Gallery

Hi!
I have a feature request.
When editing a Magento product media gallery (in Admin Panel of course) it would be really nice to be able to choose/assign from existing images in the Cloudinary Media Gallery (in addition to the Magento "standard upload files"-feature).
Thanks for your attention!

Hi,
I've passed it on to our dev team to consider adding such a feature in the future.
Thank you for your suggestion.

Hi @infabo , I am working with @taragano  on putting together the next version. I really like that idea and we have had a similar thoughts.
Can you share some ideas/ use cases that you want to use it for so we can see if we can cover it?
If you have other feature requests, please also get in touch.

Closing due to time elapsed.


Update demoman.md

My advice for being passive aggressive with demo and top scoring without a pocket.

Hi there,
Really sorry for not getting around to this earlier. For some reason I'm not getting notifications for pull requests in this repo...Will get on that ASAP.
Otherwise, this looks good to me! Will be merging this. If any touching up in the future is needed WRT grammar or spelling or if it needs to be moved within the page, hope you don't mind any small tweaks.


Travis CI Integration

Tracking issue for a Travis CI integration PR.

https://travis-ci.org/ampedandwired/bora


Cannot access Colab instructions

Hi! Looking to play around with trill on colab- the link to the notebook with install instructions from the online documentation appears to have the wrong permissions or not be functional- I can not access it.
https://colab.research.google.com/drive/1mx16cDAEgCYtflKm80mE8L_ZEk7Upxxe#scrollTo=AunNpGWa8tGn
Thanks!

Hey Sean! Can you send me a screenshot of what page the link pulls up for you? I've checked the permissions and it seems that anyone with the link should be able to view, but maybe it's a different notebook.

Hey Sean! Can you send me a screenshot of what page the link pulls up for you? I've checked the permissions and it seems like anyone with the URL should be able to open it, but maybe I'm using a different notebook.

Oops! Sorry, I let this languish. I just rechecked and it seems I can access the notebook just fine. I'll go ahead and close the issue if I can. Thanks!!

Hey! I can access the colab instructions fine, but the install isn't working. Something to do with cudatoolkit. Trying to install by running through cells on a GPU (T4) colab runtime. Several of the mamba commands give the same ultimate error about not finding cudatoolkit 12.2.*.
No package can be installed for pin: cudatoolkit 12.2.*
>>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/conda/exceptions.py", line 1124, in __call__
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/mamba/mamba.py", line 941, in exception_converter
    raise e
  File "/usr/local/lib/python3.10/site-packages/mamba/mamba.py", line 934, in exception_converter
    exit_code = _wrapped_main(*args, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/mamba/mamba.py", line 892, in _wrapped_main
    result = do_call(parsed_args, p)
  File "/usr/local/lib/python3.10/site-packages/mamba/mamba.py", line 754, in do_call
    exit_code = install(args, parser, "install")
  File "/usr/local/lib/python3.10/site-packages/mamba/mamba.py", line 547, in install
    solver.add_pin(final_spec)
RuntimeError: No package can be installed for pin: cudatoolkit 12.2.*

$ /usr/local/bin/mamba install -c conda-forge openmm swig pdbfixer openbabel smina fpocket vina
environment variables:
CIO_TEST=
COLAB_DEBUG_ADAPTER_MUX_PATH=/usr/local/bin/dap_multiplexer
COLAB_LANGUAGE_SERVER_PROXY=
CONDA_ROOT=/usr/local
CURL_CA_BUNDLE=
LD_LIBRARY_PATH=/usr/local/lib:/usr/lib64-nvidia
LD_PRELOAD=
LIBRARY_PATH=/usr/local/cuda/lib64/stubs
PATH=/opt/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/us
r/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/tools/node/bin:/tools/googl
e-cloud-sdk/bin
PYTHONPATH=/env/python
PYTHONWARNINGS=ignore:::pip._internal.cli.base_command
REQUESTS_CA_BUNDLE=
SSL_CERT_FILE=
TCLLIBPATH=/usr/share/tcltk/tcllib1.20
 active environment : None
   user config file : /root/.condarc

populated config files : /usr/local/.condarc
conda version : 23.1.0
conda-build version : not installed
python version : 3.10.10.final.0
virtual packages : __archspec=1=x86_64
__cuda=12.2=0
__glibc=2.35=0
__linux=6.1.58=0
__unix=0=0
base environment : /usr/local  (writable)
conda av data dir : /usr/local/etc/conda
conda av metadata url : None
channel URLs : https://conda.anaconda.org/conda-forge/linux-64
https://conda.anaconda.org/conda-forge/noarch
package cache : /usr/local/pkgs
/root/.conda/pkgs
envs directories : /usr/local/envs
/root/.conda/envs
platform : linux-64
user-agent : conda/23.1.0 requests/2.28.2 CPython/3.10.10 Linux/6.1.58+ ubuntu/22.04.3 glibc/2.35
UID:GID : 0:0
netrc file : None
offline mode : False
An unexpected error has occurred. Conda has prepared the above report.
####################################
If I try to run trill anyway, I get this error:
Traceback (most recent call last):
File "/usr/local/bin/trill", line 5, in
from trill.trill_main import cli
File "/usr/local/lib/python3.10/site-packages/trill/trill_main.py", line 30, in
from trill.utils.lightning_models import ESM, ProtGPT2, CustomWriter, ESM_Gibbs, ProtT5, ZymCTRL, ProstT5, Custom3DiDataset, Ankh
File "/usr/local/lib/python3.10/site-packages/trill/utils/lightning_models.py", line 23, in
from esm.inverse_folding.multichain_util import sample_sequence_in_complex
File "/usr/local/lib/python3.10/site-packages/esm/inverse_folding/init.py", line 6, in
from . import gvp_transformer
File "/usr/local/lib/python3.10/site-packages/esm/inverse_folding/gvp_transformer.py", line 16, in
from .features import DihedralFeatures
File "/usr/local/lib/python3.10/site-packages/esm/inverse_folding/features.py", line 73, in
from .gvp_modules import GVP, LayerNorm
File "/usr/local/lib/python3.10/site-packages/esm/inverse_folding/gvp_modules.py", line 33, in
from torch_geometric.nn import MessagePassing
ModuleNotFoundError: No module named 'torch_geometric'
Thanks!

Thanks for documenting the error so thoroughly! Try using this notebook, I just patched TRILL to work with colab again https://colab.research.google.com/drive/1UK5ULlFAmcjteabgXsfjizqFF35jJlAz#scrollTo=m46pBfehKJv0


Set the contentType for ajaxRequest

Example: The POST request to /api/kernels currently has Content-Type: text/plain. This is not a problem for the notebook server which does not care, but becomes problematic for alternative backends (dashboard server) that want deal with requests according to content type (express body parser).
Probably should be done throughout. I believe all of the RESTful endpoints take JSON.

Thanks for the heads up!  See #125.


Bugfix relationship 1:1 nullability

What kind of change does this PR introduce?
Bugfix. Reverse foreign key relationships are not known to be not null. This PR updates them to display nullability in Introspection schema. No transpilation behavior is changed.
Resolves #557

@olirice corrected a few fields in the test in my last commit. LGTM otherwise.

good edits, TY

Any news on when we can get this released and rolled out to hosted Supabase?

Working on a version bump here https://github.com/supabase/pg_graphql/pull/565
after that merges it'll be 1-2 weeks before it shows up in production


Add Worcester Sixth Form college

Official website URL: https://www.wsfc.ac.uk/
Proof of Computer Science A Level on website: https://www.wsfc.ac.uk/courses/a-levels/computer-science-a-level/

@AmazingPinapple First stage of verification passed, official domain is wsfc.ac.uk as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

Pull request merged. Thank you!


Using stopes with an unseen language

Hi,
I'm trying to clean and preprocess bitext for finetuning NLLB on a new unseen language. The source language is a part of laser3, the target language is not included. Will it work if I replace laser3 with BPE encoder pre-trained on my target language?
Thank you!
python -m stopes.pipelines.bitext.global_mining_pipeline src_lang=fuv tgt_lang=zul demo_dir=.../stopes-repo/demo +preset=demo output_dir=. embed_text=laser3

the laser3 encoder will project your text into an embedding space that is language independent. The way that mining works is that it aligns projections of the sentences from the src_lang into that space, with projections of the sentences from the tgt_lang into that space. This works because they are projected in the same language independent space and we can compute a distance between the embeddings of each sentences.
If you use a different encoder, it will probably not project into a compatible space.

Thanks, will try it with laser3. What should I indicate in tgt_lang for the unseen language?

What should I indicate in tgt_lang for the unseen language?

You can assign any name you want to the new language. If this name is abc, then you will need to indicate tgt_lang=abc in the entry command.
Also, you need to make sure that the mining config is correctly showing how to find source files for that language. In case of using the demo config (+preset=demo in your command, which corresponds to this configuration), you will need to have the following two files:

$demo_dir/abc.gz with the source text in your language.
$demo_dir/abc.nl with the number of lines of the file above.

Finally, you will need to add the path to your custom encoder (and its vocabulary, if it is also custom) to the lang_configs part of the demo config.

Hi, I'm trying to clean and preprocess bitext for finetuning NLLB on a new unseen language. The source language is a part of laser3, the target language is not included. Will it work if I replace laser3 with BPE encoder pre-trained on my target language? Thank you!
python -m stopes.pipelines.bitext.global_mining_pipeline src_lang=fuv tgt_lang=zul demo_dir=.../stopes-repo/demo +preset=demo output_dir=. embed_text=laser3

Hi @sete-nay, out of curiosity what is your tgt_lang? LASER3 + LASER2 covers over 200 languages. If the target lang isn't covered by LASER3, it may be included in LASER2. You can find the list of supported languages for LASER2 here. If it's not in either of them, you could even try to create your own LASER3 encoder and mine using this. The training code to do so is here.

Hi @heffernankevin, my tgt_lang is Circassian (Kabardian) and not a part of laser2 or 3, unfortunately. Thanks for the hint, will look into laser encoder training or otherwise just use a simpler tool. My goal is to create a corpus that can be used for finetuning NLLB or another multilingual model on Circassian language.


Generate build for DR2

WIP: references to central store remain.

References to central store now flagged with #TODO. This build also has the issue found in the build for DR1, where the README refers to central store and the behavior of the wrapper appears to be different than that described in the readme.

Pre-DR6 builds deemed unnecessary.


chore(deps): update terraform terraform-ibm-modules/landing-zone/ibm to v5.5.1

This PR contains the following updates:

Package
Type
Update
Change

terraform-ibm-modules/landing-zone/ibm (source)
module
minor
5.3.1 -> 5.5.1

Release Notes

terraform-ibm-modules/terraform-ibm-landing-zone (terraform-ibm-modules/landing-zone/ibm)
v5.5.1
Compare Source
Bug Fixes

deps: update terraform terraform-ibm-modules/landing-zone-vsi/ibm to v3.1.0 (#667) (51d4b30)

v5.5.0
Compare Source
Features

enable usage of existing VPC/Subnets feature (#666) (60b38f0)

v5.4.0
Compare Source
Features

remove all code to create a secrets manager instance - use the terraform-ibm-secrets-manager module instead (#660) (67c1bf7)

v5.3.2
Compare Source
Bug Fixes

deps: update terraform terraform-ibm-modules/landing-zone-vpc/ibm to v7.13.2NOTE: Upgrading to this version will see an expected destroy of the time_sleep.wait_for_authorization_policy resource (#639) (2c5011c)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

closing this PR. Handled in https://github.com/terraform-ibm-modules/terraform-ibm-powervs-infrastructure/pull/736


Android transitions crash

Hello,
First of all, thank you for your work.
Transitions seem to be break Android application while on IOS not.
The page change is very long and ended up closing the app.
The problem is also present on the Example app
Versions

react-native-router-flux v3.2.6
react-native v0.14.8

Steps to reproduce

Launch Exemple app on android device or emulator
Click on "Go to register page" and come back to the HomePage
Recommencer jusqu'a que l'application plante

Thanks

Duplicate of #355


Define type: "integer"

Part of

#4038

Why are we defining integer instead of leaving it to JSON Schema, which is very precise on this matter?

This is a good question, although it comes a little too late. OAS 3.0.0 to 3.1.0 all explicitly define "integer" as an allowed value of the type keyword in section Data Types:

Note that integer as a type is also supported and is defined as a JSON number without a fraction or exponent part. Models are defined using the Schema Object, which is a superset of JSON Schema Specification Draft 2020-12.

This PR only tries to make the existing definition more precise and mention this extension in the Schema Objects section in addition to the Data Types section.
We cannot remove this feature in a minor version, let alone a patch version.

What OpenAPI does with "integer" and formats can't change JSON Schema.  It doesn't matter if it's been that way in the spec and not been noticed or not.

I think the correct thing to do here is to note that JSON Schema only scopes formats to its data model types (number, string, boolean, null, object, array), and therefore the text of the OAS has been corrected to use "number" rather than "integer".  We can add wording to the effect that this has nothing to do with the type keyword if we want.
Since this is a very tricky area, I would be happy to write up a PR that aligns with JSON Schema.


UIEffectCapturedImage: on android have no effect

mac editor is ok
but on android the blur effect can not be feel
Environment (please complete the following information):

Platform: [e.g. Editor Mac is Ok
Unity: [e.g. 2019.1.8f]
UIEffect: [e.g. branch master]

Additional context
Add any other context, screenshots or gif animations about the question here.
all resource is build assetbundle

here is on the mac editor and the component parameters, all is ok.

now seam parameter on android device, the blur effect just like don't have.

one more thing , if the immediate capturing not toggle the android device blur is black

Hi @xiangyuan
Thank you for your reporting!
Can you test under different conditions?

Graphics api priority: Turn off Auto Graphics API for Android and reordering the list in player settings

OpenGL ES 2.0
OpenGL ES 3.0
Vulkan

I had the same issue, only forcing to open gl 2.0 solved it. Open gl 3.0 and Vulkan and maybe even metal are not working.
Any plans for supporting them?

Hi @xiangyuan
Thank you for your reporting.
I hope solve it.
However, to be honest, I do not know how to solve it. :(
Probably, I should use GPU debugger.

@mob-sakai  i have make a test,  click a button the invoke the capture method. invoke many times(5 ~6)
then the  blur effect can say,  the graphics order as follow.

maybe some blur algorithm problem.  thanks your great project.

Thank you, @xiangyuan

@mob-sakai  i know the problem.  if i use assetbundle to compile package apk, which will hove no effect. but if i move the shaders and mat to resources to package apk. it will work.
not about graphics order list.   thanks again.

@xiangyuan
Oh...
Hmm, I should change architecture of this plugin again...

Thank you for your information!