Proposal: error while extracting context for action

Describe the bug
When submitting a proposal to update the VaultFactory contract, the core-eval fails with the following error startVaultFactory not in getManifestForVaultFactory.
Based on this I imagine I have made some mistake when building the manifest or even in the proposal builder script. Although I am not being able to spot the bug.
Links to source code:

manifest
proposal builder script
generated proposal
generated permit
generated plan

To Reproduce
Steps to reproduce the behavior:

Go to the following agoric-sdk forked branch jorge/proposal
Launch agoric local chain and client

cd packages/agoric-cli/test
./start-local-chain.sh

cd agoric-sdk/packages/cosmic-swingset
make SOLO_COINS='13000000ubld,12345000000000uist,1122000000ibc/toyusdc' scenario2-run-client

Generate bundles

cd packages/builders/scripts/inter-protocol/liquidationVisibility
yarn bundle-source --cache-js $(pwd)/bundles  /<path to sdk>/packages/inter-protocol/src/vaultFactory/vaultFactory.js vaultFactory

Submit proposal

cd packages/builders/scripts/inter-protocol/liquidationVisibility
make local-proposal

Show Error

Chain logs:
2024/02/07 15:44:42 error while extracting context for action {{"CORE_EVAL" 'ñ' '�'} [{"{\n  \"consume\": {\n    \"board\": \"board\",\n    \"chainStorage\": true,\n    \"diagnostics\": true,\n    \"feeMintAccess\": \"zoe\",\n    \"chainTimerService\": \"timer\",\n    \"zoe\": \"zoe\",\n    \"priceAuthority\": \"priceAuthority\",\n    \"economicCommitteeCreatorFacet\": \"economicCommittee\",\n    \"reserveKit\": \"reserve\",\n    \"auctioneerKit\": \"auction\",\n    \"agoricNamesAdmin\": \"makeCoreProposalBehavior\",\n    \"vatAdminSvc\": \"makeCoreProposalBehavior\"\n  },\n  \"produce\": {\n    \"vaultFactoryKit\": \"VaultFactory\"\n  },\n  \"brand\": {\n    \"consume\": {\n      \"IST\": \"zoe\"\n    }\n  },\n  \"oracleBrand\": {\n    \"consume\": {\n      \"USD\": true\n    }\n  },\n  \"installation\": {\n    \"consume\": {\n      \"contractGovernor\": \"zoe\",\n      \"VaultFactory\": \"zoe\"\n    },\n    \"produce\": \"makeCoreProposalBehavior\"\n  },\n  \"instance\": {\n    \"consume\": {\n      \"reserve\": \"reserve\",\n      \"auctioneer\": \"auction\"\n    },\n    \"produce\": {\n      \"VaultFactory\": \"VaultFactory\",\n      \"VaultFactoryGovernor\": \"VaultFactoryGovernor\"\n    }\n  },\n  \"evaluateBundleCap\": \"makeCoreProposalBehavior\",\n  \"modules\": {\n    \"utils\": {\n      \"runModuleBehaviors\": \"makeCoreProposalBehavior\"\n    }\n  }\n}" "// This is generated by writeCoreProposal; please edit!\n/* eslint-disable */\n\nconst manifestBundleRef = {bundleID:\"b1-aaefe6af1d3f97e01c9e92129a855db38f17736c1050b87a80b0606f44adca8dc92be334f5b18b4af6f97effb673b85e3744fa9b0851b3f73015d0351e6a5c60\"};\nconst getManifestCall = harden([\n  \"getManifestForVaultFactory\",\n  {\n    installKeys: {\n      vaultFactory: {\n        bundleID: \"b1-0549e2e790529d9ce158b65a56051332f7750453cde89395ace96fc6d384dcda41014fd1a43353f639865d726e709b12d8a132d25cb3ab4e8ee267256ed356be\",\n      },\n    },\n    vaultFactoryControllerAddress: undefined,\n  },\n]);\nconst customManifest = {\n  startVaultFactory: {\n    brand: {\n      consume: {\n        IST: \"zoe\",\n      },\n    },\n    consume: {\n      auctioneerKit: \"auction\",\n      board: \"board\",\n      chainStorage: true,\n      chainTimerService: \"timer\",\n      diagnostics: true,\n      economicCommitteeCreatorFacet: \"economicCommittee\",\n      feeMintAccess: \"zoe\",\n      priceAuthority: \"priceAuthority\",\n      reserveKit: \"reserve\",\n      zoe: \"zoe\",\n    },\n    installation: {\n      consume: {\n        VaultFactory: \"zoe\",\n        contractGovernor: \"zoe\",\n      },\n    },\n    instance: {\n      consume: {\n        auctioneer: \"auction\",\n        reserve: \"reserve\",\n      },\n      produce: {\n        VaultFactory: \"VaultFactory\",\n        VaultFactoryGovernor: \"VaultFactoryGovernor\",\n      },\n    },\n    oracleBrand: {\n      consume: {\n        USD: true,\n      },\n    },\n    produce: {\n      vaultFactoryKit: \"VaultFactory\",\n    },\n  },\n};\n\n// Make a behavior function and \"export\" it by way of script completion value.\n// It is constructed by an anonymous invocation to ensure the absence of a global binding\n// for makeCoreProposalBehavior, which may not be necessary but preserves behavior pre-dating\n// https://github.com/Agoric/agoric-sdk/pull/8712 .\nconst behavior = (({\n  manifestBundleRef,\n  getManifestCall: [manifestGetterName, ...manifestGetterArgs],\n  customManifest,\n  E,\n  log = console.info,\n  customRestoreRef,\n}) => {\n  const { entries, fromEntries } = Object;\n\n  /**\n   * Given an object whose properties may be promise-valued, return a promise\n   * for an analogous object in which each such value has been replaced with its\n   * fulfillment.\n   * This is a non-recursive form of endo `deeplyFulfilled`.\n   *\n   * @template T\n   * @param {{[K in keyof T]: (T[K] | Promise<T[K]>)}} obj\n   * @returns {Promise<T>}\n   */\n  const shallowlyFulfilled = async obj => {\n    if (!obj) {\n      return obj;\n    }\n    const awaitedEntries = await Promise.all(\n      entries(obj).map(async ([key, valueP]) => {\n        const value = await valueP;\n        return [key, value];\n      }),\n    );\n    return fromEntries(awaitedEntries);\n  };\n\n  const makeRestoreRef = (vatAdminSvc, zoe) => {\n    /** @type {(ref: import\\('./externalTypes.js').ManifestBundleRef) => Promise<Installation<unknown>>} */\n    const defaultRestoreRef = async bundleRef => {\n      // extract-proposal.js creates these records, and bundleName is\n      // the optional name under which the bundle was installed into\n      // config.bundles\n      const bundleIdP =\n        'bundleName' in bundleRef\n          ? E(vatAdminSvc).getBundleIDByName(bundleRef.bundleName)\n          : bundleRef.bundleID;\n      const bundleID = await bundleIdP;\n      const label = bundleID.slice(0, 8);\n      return E(zoe).installBundleID(bundleID, label);\n    };\n    return defaultRestoreRef;\n  };\n\n  /** @param {ChainBootstrapSpace & BootstrapPowers & { evaluateBundleCap: any }} powers */\n  const coreProposalBehavior = async powers => {\n    // NOTE: `powers` is expected to match or be a superset of the above `permits` export,\n    // which should therefore be kept in sync with this deconstruction code.\n    // HOWEVER, do note that this function is invoked with at least the *union* of powers\n    // required by individual moduleBehaviors declared by the manifest getter, which is\n    // necessary so it can use `runModuleBehaviors` to provide the appropriate subset to\n    // each one (see ./writeCoreProposal.js).\n    // Handle `powers` with the requisite care.\n    const {\n      consume: { vatAdminSvc, zoe, agoricNamesAdmin },\n      evaluateBundleCap,\n      installation: { produce: produceInstallations },\n      modules: {\n        utils: { runModuleBehaviors },\n      },\n    } = powers;\n\n    // Get the on-chain installation containing the manifest and behaviors.\n    log('evaluateBundleCap', {\n      manifestBundleRef,\n      manifestGetterName,\n      vatAdminSvc,\n    });\n    let bcapP;\n    if ('bundleName' in manifestBundleRef) {\n      bcapP = E(vatAdminSvc).getNamedBundleCap(manifestBundleRef.bundleName);\n    } else if ('bundleID' in manifestBundleRef) {\n      bcapP = E(vatAdminSvc).getBundleCap(manifestBundleRef.bundleID);\n    } else {\n      const keys = Reflect.ownKeys(manifestBundleRef).map(key =>\n        typeof key === 'string' ? JSON.stringify(key) : String(key),\n      );\n      const keysStr = `[${keys.join(', ')}]`;\n      throw Error(\n        `bundleRef must have own bundleName or bundleID, missing in ${keysStr}`,\n      );\n    }\n    const bundleCap = await bcapP;\n\n    const proposalNS = await evaluateBundleCap(bundleCap);\n\n    // Get the manifest and its metadata.\n    log('execute', {\n      manifestGetterName,\n      bundleExports: Object.keys(proposalNS),\n    });\n    const restoreRef = customRestoreRef || makeRestoreRef(vatAdminSvc, zoe);\n    const {\n      manifest,\n      options: rawOptions,\n      installations: rawInstallations,\n    } = await proposalNS[manifestGetterName](\n      harden({ restoreRef }),\n      ...manifestGetterArgs,\n    );\n\n    // Await promises in the returned options and installations records.\n    const [options, installations] = await Promise.all(\n      [rawOptions, rawInstallations].map(shallowlyFulfilled),\n    );\n\n    // Publish the installations for our dependencies.\n    const installationEntries = entries(installations || {});\n    if (installationEntries.length > 0) {\n      const installAdmin = E(agoricNamesAdmin).lookupAdmin('installation');\n      await Promise.all(\n        installationEntries.map(([key, value]) => {\n          produceInstallations[key].resolve(value);\n          return E(installAdmin).update(key, value);\n        }),\n      );\n    }\n\n    // Evaluate the manifest.\n    return runModuleBehaviors({\n      // Remember that `powers` may be arbitrarily broad.\n      allPowers: powers,\n      behaviors: proposalNS,\n      manifest: customManifest || manifest,\n      makeConfig: (name, _permit) => {\n        log('coreProposal:', name);\n        return { options };\n      },\n    });\n  };\n\n  return coreProposalBehavior;\n})({ manifestBundleRef, getManifestCall, customManifest, E });\nbehavior;\n"}]}
2024-02-07T15:44:42.132Z SwingSet: vat: v1: evaluateBundleCap { manifestBundleRef: { bundleID: 'b1-aaefe6af1d3f97e01c9e92129a855db38f17736c1050b87a80b0606f44adca8dc92be334f5b18b4af6f97effb673b85e3744fa9b0851b3f73015d0351e6a5c60' }, manifestGetterName: 'getManifestForVaultFactory', vatAdminSvc: Promise [Promise] {} }
2024-02-07T15:44:43.711Z SwingSet: vat: v1: execute { manifestGetterName: 'getManifestForVaultFactory', bundleExports: [ 'getManifestForVaultFactory' ] }
2024-02-07T15:44:43.752Z block-manager: block 241 commit
2024-02-07T15:44:47.211Z block-manager: block 242 begin
2024-02-07T15:44:47.298Z SwingSet: vat: v1: CORE_EVAL failed: (Error#1)
2024-02-07T15:44:47.298Z SwingSet: vat: v1: Error#1: startVaultFactory not in getManifestForVaultFactory
2024-02-07T15:44:47.298Z SwingSet: vat: v1: Error: startVaultFactory not in getManifestForVaultFactory
at construct ()
at Error (/bundled-source/.../node_modules/@endo/lockdown/node_modules/ses/src/error/tame-error-constructor.js:56)
at makeError (/bundled-source/.../node_modules/@endo/lockdown/node_modules/ses/src/error/assert.js:273)
at fail (/bundled-source/.../node_modules/@endo/lockdown/node_modules/ses/src/error/assert.js:387)
at baseAssert (/bundled-source/.../node_modules/@endo/lockdown/node_modules/ses/src/error/assert.js:407)
at (.../vats/src/core/utils.js:184)
at ()

2024-02-07T15:44:47.299Z SwingSet: xsnap: v1: Error#1 ERROR_NOTE: Sent as error:liveSlots:v1#70001
2024-02-07T15:44:47.299Z SwingSet: ls: v1: Logging sent error stack (Error#1)
2024-02-07T15:44:47.302Z SwingSet: xsnap: v10: UnhandledPromiseRejectionWarning: (RemoteError(error:liveSlots:v1#70001)#1)
2024-02-07T15:44:47.302Z SwingSet: xsnap: v10: RemoteError(error:liveSlots:v1#70001)#1: startVaultFactory not in getManifestForVaultFactory
2024-02-07T15:44:47.302Z SwingSet: xsnap: v10: Error: startVaultFactory not in getManifestForVaultFactory
at construct ()
at Error (/bundled-source/.../node_modules/@endo/lockdown/node_modules/ses/src/error/tame-error-constructor.js:56)
at makeError (/bundled-source/.../node_modules/@endo/lockdown/node_modules/ses/src/error/assert.js:273)
at decodeErrorCommon (/bundled-source/.../node_modules/@endo/marshal/src/marshal.js:281)
at decodeFromSmallcaps (/bundled-source/.../node_modules/@endo/marshal/src/encodeToSmallcaps.js:437)
at fromCapData (/bundled-source/.../node_modules/@endo/marshal/src/marshal.js:356)
at notifyOnePromise (/bundled-source/.../packages/swingset-liveslots/src/liveslots.js:1194)
at notify (/bundled-source/.../packages/swingset-liveslots/src/liveslots.js:1218)
at dispatchToUserspace (/bundled-source/.../packages/swingset-liveslots/src/liveslots.js:1487)
at runWithoutMetering (/bundled-source/.../packages/swingset-xsnap-supervisor/lib/supervisor-subprocess-xsnap.js:60)
at ()

Expected behavior
Proposal is executed and a new instance of vaultFactory is deployed.
Platform Environment

what OS are you using? what version of Node.js? : macOS , v16.20.2
is there anything special/unusual about your platform? : No
what version of the Agoric-SDK are you using<EMAIL_ADDRESS>

The functions named in the manifest are looked up by name in the exports of the liquidationVisibility/manifest.js module.
so try
export { startVaultFactory };

Greetings @dckc
The change you proposed solved the issue related to the startVaultFactory which means that the error startVaultFactory not in getManifestForVaultFactory is no longer being triggered.
Although, the issue that triggers the error error while extracting context for action {{"CORE_EVAL" 'ñ' '�'} still persists.
This error message point to

error while extracting context for action

It's not obvious to me with a quick look what's going on. the blame view suggests MFig might know, but I don't think now is a good time to ask him. @kbennett2000 help me remember to follow up on this one, please?

@kbennett2000 help me remember to follow up on this one, please?

Thank you very much Dan


Manipulate color of 'terrain-lines" Stamen map

What steps would need to be taken to do color manipulation with the 'terrain-lines' Stamen map?
I want to achieve the same color manipulation that's done in the Color manipulation example with the 'watercolor' Stamen map. I'm happy to open a PR

Just change the watercolor string in the sample with terrain-lines and it's done. Layer terrain-lines is already supported https://github.com/openlayers/openlayers/blob/v5.3.0/src/ol/source/Stamen.js#L37

@ThomasG77 fantastic! I'll give it a try

I can get terrain to work but not terrain-lines to change colour. No matter what hue value I change it to, the map looks like below:

Hue will have no effect on a grayscale image where all pixels have equal ratios of the primary colours.  To add colour you would need additional inputs to reduce or remove at least one of the RGB values of the pixels, for example:
function rgb2hcl(pixel) {
  var red = rgb2xyz(pixel[0]*redScale);
  var green = rgb2xyz(pixel[1]*greenScale);
  var blue = rgb2xyz(pixel[2]*blueScale);

@mike-000 that is exactly what I was looking for!
@fredj really appreciate the example, it looks great.
Thanks for your work on this project, it's superb


Image size constraint

Is there any image size constraint on the performance? Also, how one can use VIT for asymmetric images e.g. 32*64?

It should still work for asymmetric, as long as the height and width are divisible by the patch size. I think as long as there are sufficient patchs (you need the for the necessary query / key interaction in attention), it should be fine


How to configure webhooks from stripe to parse server

Hi,
Before migration this webhook configured on stripe dashboard worked perfectly:
<EMAIL_ADDRESS>Now, when I try to do the same with my parse server on heroku:
<EMAIL_ADDRESS>I got error "403 unauthorized" when I test this webhooks from stripe dashboard.
How could I fix that please?

Have you checked your keys are set-up correctly?
A workaround:
in index.js (if you used the demo app or in your express routes)
// exposes a new api route that can be used in stripe  //yourdomain/api/stripe
app.get('/api/stripe', function(req, res) {

Parse.Cloud.run("new_invoice",req.body[0],
{
 success:function(e){...},
 error:function(e){..}
});

};

Thank you for your help, I could find a solution by doing these modifications:
You must have in your code:
var stripe = require('stripe')('your live or test stripe key');
var Parse = require('parse').Parse;
var Parse = require('parse/node').Parse;
var bodyParser = require('body-parser');

then add:
app.use( bodyParser.json() );
and finally the code to receive webhook and launch function from cloud code:
app.post('/stripe', function(req, res){

Parse.initialize("appId", "JsKey");
Parse.Cloud.run('hello',{}, {
success: function(obj) { res.send(obj); },
error: function(error) {
res.status(500);
res.send(error);
}
});

});

In webhook testing mode on stripe I get the response from my cloud code function, in that case "hello world!"

@cyboolo hi so are webhooks working for you with parse-server and cloudcode?

Just making this a little clearer for people still having trouble. Also this express doc was super helpful for me. https://expressjs.com/en/api.html#req
I was using a webhook with twilio.
// index.js
var hooks = require('./cloud/hooks');
var bodyParser = require('body-parser');
//...
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded

app.post('/receiveSMS', function(req, res) {
  console.log("RECEVIED SMS FROM: " + req.body.From);
  console.log("Body: " + req.body.Body);
  var passedRequest = {"params": req.body}; // That's how my receiveSMS function expects it. You may not need this.
  hooks.receiveSMS(passedRequest, {
    success: function(obj) {
      res.status(200).send(obj);
    },
    error: function(error) {
      res.status(500).send(error);
    }
  });
});

Hi
I am new in parse-server and i have to create webhook for a class.I can't understand what is the Webhook URL   and where to use.

None of the approaches worked for me. What did work is this:
////yourdomain/api/stripe?param1=2&param2=true, all params are in req.query
app.get('/api/stripe', function(req, res) {
Parse.Cloud.run("stripeWebHook", req.query,{
success:function(e){
res.status(200).send(e);
},
error:function(e){
res.status(-1).send(e);
}
});
});


Use a build matrix to also build for xtensa architectures

Requires https://github.com/esp-rs/xtensa-toolchain/pull/6 to be merged first. This is now merged.
I was able to delete .github/configs/sdkconfig.defaults since it's no longer required. If you like this, I will also do this for the other workflows in this repo as well as for the other esp-rs repos.

Thanks @svenstaro, this is great!


Documentation for GenBank generate_char_matrix inconsistent with code

generate_char_matrix has a method called gb_to_taxon_fn but the documentation at https://pythonhosted.org/DendroPy/primer/genbank.html calls it gb_to_taxon_func.
Incidentally, in previous versions the name was gb_to_taxon_func.
One of them should be changed, I think (doc or src)

Fixed in latest revision.


python312Packages.vt-py: 0.18.4 -> 0.19.0

Changelog: https://github.com/VirusTotal/vt-py/releases/tag//0.19.0

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 361772

x86_64-linux

:white_check_mark: 6 packages built:

ioccheck
ioccheck.dist
python311Packages.vt-py
python311Packages.vt-py.dist
python312Packages.vt-py
python312Packages.vt-py.dist


Is it possible to implement this additionally for phones and tablets outside the keyboard controls?

I have been able to implement this to my component, and it works brilliantly. I'm very grateful for this!
I have a question though, since my current implementation works only with keyboard controls.

is there a way to implement it for phones and other touchscreen devices that don't use keyboardcontrols ? I hope my question makes sense.

Check the documentation EcctrlJoystick section: https://github.com/pmndrs/ecctrl?tab=readme-ov-file#ecctrljoystick-and-touch-buttons
You could also use your own joystick with Ecctrl.

Thank you very much. Worked like a charm


Datepicker Only for Date

Hi AllenFang and a datepicker only for date and not hours?

just like this: 2014-11-11T15:25:33 so what's your requirement?

You can select only the date without any time. Currently if you do not add the time the data is not sent.
I propose a date selector without hours.

I want to be able to select only the date

@cristina321, react-bootstrap-table use the default date input like this and it's impossible to change the date format, due to this. Anyway, we support this basic functionality and if you think it's not suitable for your application, I recommend you to custom your date picker, check this to see how to custom.
BTW, there's a best solution which is I can find a react datepicker library and integrate with it, but I thought this is not a critical feature currently and it's also a dependency for this repo and I need to master it so that I can integrate it with this component well. So PR is welcome
Let me know if you have any question,


Add qtrade.io

Looks the same to me!

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Apologies, must've made a mistake pushing the change. Should now actually be correct and I've signed the CLA.


Add 'autoconf' to 'Quick Build Guide'

For someone strictly following the 'Quick Build Guide' running './configure' will produce 'bash: ./configure: No such file or directory'. To spare others the same problem 'autoconf' was added to the guide which will produce the missing configure script with the given 'configure.ac'.
I did not change anything on line 42 but GitHub automatically changed the encoding of the file from ISO-8859-1 to UTF-8, which I guess is leading GitHub to mark the line as changed.

Coverage remained the same at 80.779% when pulling<PHONE_NUMBER>ee8e6c4a424a1b2145b0e0459163e4 on NiklasEi:NiklasEi-patch-1 into db86364da8d143c2aaea983384a8af4a8ecb720d on tbeu:master.

Coverage remained the same at 80.779% when pulling<PHONE_NUMBER>ee8e6c4a424a1b2145b0e0459163e4 on NiklasEi:NiklasEi-patch-1 into db86364da8d143c2aaea983384a8af4a8ecb720d on tbeu:master.

Note, there is a difference between building the lib from the repo or building from the distribution. README is meant for the distribution, where configure is available.

I fixed the encoding issue in both READMEs though. Thanks for reporting to it.

Sure, no problem.


software list upgrader

need mechanism to upgrade software lists to accommodate future changes to data structure and/or new functionality

implemented in #41


update linfa logistic and linear

Changes:
linfa-linear

Moved existing documentation from ols.rs to lib.rs
Added examples
Slightly changed exported modules/structs style to match other crates
substituted abs_diff_eq with assert_abs_diff_eq in tests

linfa-logistic

Added documentation on the method and an example in the example folder
Implemented Fit and PredictRef traits

linfa

Implement Label for &str (logistic regression) and Option<usize> (clustering)
Added metrics_clustering module with silhouette score and some tests
Adjusted r2 to the definition
Implement Regression for Array2 targets so that

pred.r2(dataset.targets().try_single_target().unwrap())

becomes
pred.r2(dataset.targets())

(which will panic in case of multi target datasets)

Allow regression metrics on datasets to use a different target type than the dataset's. this allows Array2 targets which are really single targets in disguise to be compared to Arry1s. The key """issue""" is that the return type is still an array, so we still have array.r2(array) = value and dataset.r2(array) = [value]
substituted abs_diff_eq with assert_abs_diff_eq in regression tests
implemented more tests on regression metrics also to assert equivalence between array and dataset metrics

linfa-datasets

Modified the return type of AppxDbscan and Dbscan according to the recent multi target datasets update so that they implement AsTargets/Labels etc
Updated the AppxDbscan and Dbscan example to include the silhouette score and to use meaningful parameters (before they found 0 clusters, now they find the 4 actual clusters)

Issues found
The iris test in linfa-dataset checks the p-value but this is obtained by random shuffling. It happened to me (only once) that the p_value computed in the test was 0.9 instead of the expected 0.5, failing the test since the error was bigger than the allowed epsilon
Remarks
In #82 I added a bullet point about:

The metrics module page could use a brief list of the provided metrics

but, after looking at it a bit more, I think it is quite clear the way it is so I'd like to dismiss that point if you agree

Traits SingleTargetRegression and MultiTargetRegression have been implemented and now regression metrics can be computed between:
One-dimensional array - One-dimensional array
One-dimensional array - bi-dimensional array
One-dimensional array - dataset
bi-dimensional array - bi-dimensional array
bi-dimensional array - dataset
dataset - dataset
dataset - one-dimensional array
dataset - bi-dimensional array
I also added a new Error variant, but I don't know if that was what you had in mind

one thing to the metrics_regression trait: the advantage of the associated type is that you can avoid overlapping traits (which Rust can't handle) by implementing them for all possible combinations. For now a multi-target / single-target combination uses the MultiTargetRegression trait, but should use SingleTargetRegression. We should fix that at a later point :)

I'm not sure I understand what you mean. Right now I am using T: AsTargets for the traits implementations so that they are all built in just one go. Are you suggesting instead to add a different impl for all possible set of targets so that, for example, one could implement SingleTargetRegression for Array2 with an Array1 as the compare_to, without overlapping with the MultiTargetRegression implementation?

Btw: the coverage run is failing in the test I mentioned in the first comment

mh we should fix the seed there, I don't want to increase the number of test runs for better convergence :/

I'm not sure I understand what you mean. Right now I am using T: AsTargets for the traits implementations so that they are all built in just one go. Are you suggesting instead to add a different impl for all possible set of targets so that, for example, one could implement SingleTargetRegression for Array2 with an Array1 as the compare_to, without overlapping with the MultiTargetRegression implementation?

yes that's the point

could you remove the corresponding correlation test for now and then merge the PR. I have to modify the src/correlation.rs to accept different random number generators


Don't require a TLS Certificate when manually entering node details

Description
When setting up a new connection to a node without using lndconnect, a TLS certificate is required. This shouldn't be the case for node's that use a trusted certificate signed by a valid CA.

Expected Behavior
This field should be optional with a warning message. Users should have the ability to not pass in a TLS Certificate when using a trusted cert and therefore can connect without providing one.

Actual Behavior
I get TLS Certificate is a require field

Possible Fix
Make it not required and show a warning message about the requirement for your node to have a trusted cert if not supplying a certificate yourself.

Steps to Reproduce

Open Zap Desktop

Try to connect to a node but leave the TLS Certificate field blank

Hit Connect.

Context

Your Environment
LND 0.10.4

Zap version: 0.7.2-beta
Operating System and version: macOS

Also, when a user connects to a node without specifying the certificate, the lndconnect URI is broken in the Profile page. If you connect to a node without specifying a TLS cert, then go to the Profile Page, then Connect. That QR code/lndconnect string doesn't work because it sets cert=&macaroon=.... Zap mobile doesn't like that empty =. It should just be removed all together if a certificate isn't defined.


Share bookkeeping data across controllers

Hello,
this PR is a WIP to share the state across multiple controllers to scale out the controllers in OpenWhisk.
It will allow us to share Activations per namespaces and invokers across several controllers using Akka Distributed framework. The TrieMaps were replaced by PNCounterMaps, which are updated locally without waiting for the replication across other nodes in the cluster.
UPDATED.
I have a couple of things to mention:

Parsing of the seed-nodes is defined in a separate method due to a well known akka config issue https://github.com/akka/akka/issues/23600.
The old LoadBalancerData implementation is still in place, so in case of emergency we can turn off akka replication across Controllers.

Any other todos and comments are welcome.
@cbickel @markusthoemmes @rabbah
regards,
Vadim.

In general: Try to bury all implementation details in the interface, for instance: We cast all the BigInts to Int outside of the replication? Then do the cast as part of the interface.
Returning a String and "casting" it to a UUID is another example. Just cast inside the interface.
That keeps the clients clean.

I labeled this a "WIP" patch per the description. Thanks @ddragosd for raising these early. I expect this PR is going to involve a bit more.

It's shaping up nicely @vvraskin .
Given it's a distributed state, are you planning to add tests with multiple instances, including test with failure scenarios ?

@ddragosd
Sure, I'm going to test it locally and on our load test environment.
The plan is to stress 3 node cluster under a high load, and look how akka behaves under the burst.
I'm also planning to test whether the cluster is still functioning in case of node failure (-s).
The next tests would be to measure the maximal number of nodes in the cluster with an acceptable performance.

@vvraskin mind adding a customizable way to specify the seed-nodes in the cluster ? I.e. take a look at how the seed nodes can be auto-discovered with Mesos and  how it's used. We can use the SPI support already in the master branch, with a default value that reads the seed-nodes from ansible.

Or, instead of SPI, we can configure Akka as:
cluster {
    name: "my-akka-cluster",
    discovery {
      source: "ansible | mesos | kubernetes",
    }
   ...
  }

And provide an impl for each discovery source.
This configuration will become more and more important as we bring more clustering capabilities  into the project.

@tysonnorris @ddragosd
Thanks for your feedback about the seed nodes, I made a small change to join the seed nodes at the startup of the SharedDataService service. So later you can extend the traitSeedNodesProvider to add kube and mesos support, or create an SPI. Are you ok with this change?
Actually this change has also helped to get rid of a special seed-nodes parsing and get back the logging to the Config classes.

@vvraskin

I've been giving some thought to clustering usage… but still absorbing the code base. I may have some wisdom to add to that one down the line
auto-downing is, as you point out, generally not a good thing. It's practically begging for split-brain issues. Lightbend has a really nice split-brain-resolver plugin that helps with these kinds of things but it is unfortunately a subscription product so not available for OpenWhisk.

I suspect the best approach to handling failure detection and related items is for OpenWhisk to do testing, come up with some base defaults and possibly documented "alternate defaults based on use case", but let the user turn some knobs with big red blinking lights and buttons marked "do not touch unless you are absolutely sure what you are doing"
Clustering & remoting are meant to be referentially transparent versus local actors, so not entirely sure what you mean about adding complexity, if you could clarify? That is to say, my experience has been that done right, we should be able to implement this where it works well without much code change for both local and remote (remote including clustered).

@vvraskin to your points:
1 - in controller immediately, no. In controller in the near future, yes, e.g. in a mesos case we will need to use either ClusterSingleton or MemberEvent to designate a leader; we will also need to share some state within the cluster (may be able to leverage SharedDataService, or else directly use DistributedData)
2 - my concern with downing is the case where nodes are down, and not coming back (or not coming back with the same id). In this case, docs indicate that new members cannot become "up", etc, till the unreachable node is downed. So regardless of whether traffic is routed to an unreachable node, if clustering usage is affected by having an unreachable, but NOT downed node, then there will be other types of problems (e.g. can replacement nodes be added? can the cluster size be grown?). Separately from needing the ability to cause nodes to be downed, the semantics of determining down vs temp unreachable will be different in a cluster manager like mesos/kube, similar to the semantics of determining seed nodes.

:+1: @bwmcadams  @tysonnorris

I'm also wondering what's the most performant model to distribute billions of records using distributed data with Akka.  Should we have billions of keys, or should we partition them in groups, distributing groups of N number of keys (where 1 update of 1 key in a group, causes the whole group to be updated in the cluster) ? Assuming ReadLocal/ WriteLocal is fine, and that all keys fit in each JVM's memory w/o any problems, will either one of these methods facilitate a higher performance, or optimal noise in the network ?
@bwmcadams any suggestions from your side ?

At the risk of a vapid comment, I need to do a bit of refresher research  on this (also boarding an airplane). Let me give it some thought tonight. Hmm

@bwmcadams
2. What I meant on additional complexity is that if we have cluster management outside of the actors, that could imply implementing an additional actor to monitor the health state of another nodes. I don't believe its the right timing to do that, the costs of not having the freshest state are lower then estimated effort to implement it. And I don't believe its the scope of this PR as well.
Back to your point wrt to the measurements you mentioned. I think its a tricky one, given non-deterministic failure conditions, environment differences, etc, its difficult to guarantee that one size fits all property would work here.

@tysonnorris

Given that the cluster is now started from within the LoadBalancerService, it should be good enough for near future extensions.
I think you mean the case of network partitioning in between two controllers when the traffic could still flow between nginx and that controller. In this case we could probably set the hard auto-downing timeout - 5 mins, mark it as unreachable and the broken node could join the cluster again. (back to the point of @bwmcadams with a measured value, however, this is just a high enough number). But even without this timeout, the node should become green again, once the partitioning is resolved.
However, if you speak about some other hypothetical cases when the network is fine, but the node is unreachable und not downed. Then restarting the node should automatically unregister it from the cluster and give it a chance to join it again (actor should signal to the cluster upon going down).

I think we are a bit far way from the initial discussion we have started upon the changes requested on this PR. Do you mind approving or you still think some changes are required?

@vvraskin how are nodes downed ? I think we still need to add logic for downing the nodes. WDYT ?

@ddragosd at the moment we don't down the nodes, they must unregister themselves, in worse case scenario nodes are operating on their own vision of the number of activations on invokers/namespaces until the network outage is resolved. Do you have an idea on how we can do it better?

@vvraskin I think the worst case scenario is that the node crashes and does not unregister itself ever. This is the point I think Dragos is getting at. If the split brain cluster is a tolerable state as you mention, then maybe it would be good for a) unreachable nodes to be downed and b) later extend this so that downing logic can be extensible (where some external systems may be better equipped to determine the distinction between crash and partition).
However, the risks involved with running in this split mode (e.g. controllers lose contact and do not share state) should be clearly documented (e.g. what is the impact to invoker routing logic? is there any point of recovery possible, etc)

Let me summarise what we have already discussed with Tyson over slack.
Given the deployment model when a container receives a new ip address assigned after the restart. In our case if one controller has failed and rejoined the cluster as a new member, there will be some garbage accumulated in the list of cluster members. It is not harmful per se, e.g. the cluster is still running, however healthy cluster nodes will be still gossiping with a non-existing container. If assigning static IP addresses is not an option, in order to avoid this case one could use auto-downing feature in akka cluster, which allows to a cluster leader to mark the failing node as down and remove it from the cluster. To prevent cluster partitioning due to several leaders this property must be set to a relatively high value. The number is not deterministic and could be defined based on the further ops experience.
One could also think of another monitoring component that is going to watch the cluster state and down the failed nodes on demand. But this solution is rather an expensive one and I think it doesn't belong to the context of this PR.

@vvraskin thanks for updating docs and the default! LGTM


Print emb

Opting to have this closed out. Unless the user can specify what changes were made that help this project in a positive way.
Commit comments are vague and the changes to the files seem to be particular for a solution that the user is creating for themselves. Additionally the Title for Semantra was changed to Doc Search which seems a little off.
Lastly, there seems to be conflicts that the user has not resolved.


Updated helm chart to render same yaml for STS as in Kyma

Description
Changes proposed in this pull request:

...
...
...

Related issue(s)

https://github.com/kyma-project/nats-manager/issues/33

/test all

/test pull-nats-manager-unit-test

/test pull-nats-manager-unit-test


Swaym/update docs

Updated the docs.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Merged update docs branch


TAG Contributor Strategy leadership updates

TAG Contributor Strategy leadership updates

Add Dawn Foster (VMware) as TAG Chair
Emeritus Paris Pittman (Apple) and Stephen Augustus (Cisco)

CHARTER.md: De-dupe leadership list with README.md

Also fixes affiliations in certain places.
Signed-off-by: Stephen Augustus<EMAIL_ADDRESS>

Closing now that https://github.com/cncf/tag-contributor-strategy/pull/150 is open.


Define and implement a metric store trait

The idea is to make the run_metric_store function more generic, so that we can implement other connectors as well.

I'm closing this issue because the issue/solution relates to an old version (v0.8.0) of the rust coordinator that is no longer maintained. A similar issue may have occurred in the upcoming version, but it will be addressed in a separate issue.


docs: add reranker / cross encoder to README advanced usage

Follow up on https://github.com/embeddings-benchmark/mteb/pull/457#issuecomment-2323099939
Checklist

[x] Run tests locally to make sure nothing is broken using make test.
[x] Run the formatter to format the code using make lint.

Thanks for the feedback folks. Will merge this now, and create a separate issue for the other item.


[DR] Advance token in case of missing keys

The replication loop waits for missing keys to be sent by remote replica so that it can apply them locally. The case for BackupChecker is different. It needs to report those missing keys and just move on.

Overall LGTM. There is one binary file with weird name in the PR. I assume it was by accident.

yeah just an error


Fix campaign saves dying

What's this PR do?
Sets the default language of campagin nodes to the site's default language (english)
Checks campaign nodes on save, and set's the language to the correct role of the user.
How should this be manually tested?
Create a campaign node as a brazil/mexico admin and check the lang after save.
Also create a campaign node ad a regular editor and check the language is english (and the page doesn't die!)
Any background context you want to provide?
Campaign node saves were dying in a fire.
What are the relevant tickets?
Fixes #5042

:+1:


mydump: add a warning log on large file with CSV header

What problem does this PR solve?
Auto-splitting requires (1) strict-format = true and (2) csv.header = false. Since csv.header = true by default, it would be confusing that setting strict-format = true alone has no effect.
What is changed and how it works?
Add a warning if a large CSV file cannot be split only because of csv.header.
Check List
Tests

No code

Side effects
Related changes

I think we can still split large csv files even if they contains header line?

only if we read the header before splitting. this changes the scanning logic considerably.

LGTM. BTW, I think it's strage for user that we can't split large csv because of head line? As a use, I will think, why not just skip the first line and split the rest

@glorv the problem is we can't just skip the first line, since the CSV column order and CREATE TABLE column order are not necessarily equivalent.

LGTM

should we close this in favor of #363, or merge this first?

I prefer to close this if we can merge #363 before the next release (about 2020/08/21).

#363 has been merged.


Whitelist editable for admin user rather than update whitelist and re-deploy every time

Currently, once there is new user, I need to add the email to WHITLIST of app and deploy it which is not convenient.
The users info can set in the MongoDB with specify the permission of user (admin=true) for user allowed add user to WHITELIST.

All opened with the job.sh fixed with limited time (10 mins.)


[Bug]: no action menu on the rating cards in the user profile page

URL of the Page
https://postreview-app.herokuapp.com/profile
What happened?
There is currently no way to edit, remove or make ratings anonymous from the user profile page.

Wireframe for reference: https://whimsical.com/user-page-KN8xxZWDHtrZNdYqAbyc93@2Ux7TurymNLPL8ruw2vL
It's not a huge problem if users can do it elsewhere. I think you can edit your rating from the paper page. Is the only way to make a rating anonymous - to resubmit the same rating but turn on the anonymous tumbler as you submit it? We probably need a better way. And it doesn't look like there is a way to delete the rating at the moment, is that correct (we probably need this one for the MVP)?
Steps to reproduce
No response
What browsers are you seeing the problem on?
Chrome
Code of Conduct

[X] I agree to follow this project's Code of Conduct

@coglebed I worked on this a bit. Along the way, I thought that having a "Make Anonymous" button may not make sense, since the popup for editing a review will have a make anonymous toggle button. Instead, having only two options (Edit and Delete) may work. What do you think?
Since there are only two options, icons may work better.
Either something like this:

Or the version where the "delete" icon is colorless (red may be too strong?):

We talked synchronously and decided that we go with the initial design for now

We can think about improvements later.

@all-contributors please add @coglebed for bug reports
(I thought I already did this before but it's not showing up on README---doing it again!)


Require boost 1.57

Update assert in main.cpp to require boost version 1.57
Reviewers: @HowardHinnant @nbougalis

:+1:

Obviously correct
:+1:


[Question] Given proto actor cluster runs in dynamic environment, would query to ProcessRegistry.Get slow down due lack of DEREGISTER HostResolver handlers?

I see that there is RegsiterHostResolver in ProcessRegistry, but no Deregister counterpart exists. Would this hurt a bit performance if cluster is run in dynamic environment where hostnames are dynamically generated due scaling dynamics, and cluster is running for some time (or in case of attempt to "hot-replace" release changes)?

There is one HostResolver for the remote layer, and it is used for all remote lookups.
Meaning there is no need to deregister anything. it's the same resolver throughout the entire application's life.
Once the lookup is done, this value is cached inside the PID.

That is per endpoint, right?
If so, what would happen if endpoint is respawned with different hostname (scale up/down scenario)?
I'm not criticizing, just trying to understand code since I'm trying to make a port in rust language.

No there is one EndpointManager for the whole actor system, which is what registers the HostResolver.
There can be many Endpoints managed by the EndpointManager, but there is still just one host resolver.
I would love to see the progress of a Rust version. there have been some requests for that  over the years

I started recently, it is here . There is not much, just draft modules.


fix(selector): added optional accessibility labels

added optional props accessibility and accessibilityLabel

Breaking on CI because we need conventional commits with one of the package names in parentheses '(fscomponents)'. Also the types for accessiblity and accessibilityLabel should be optional.


jenkins/mkcloud: add vproduction job

to be similar to what we want to deploy as production cloud
(cloud.suse.de)
with HA, LDAP, SSL, Ceph

Should we also add this for Cloud8?

Rick: not yet. First, I'd like to get this green for 7 (and maybe 6)


Unhide query method on ComInterface trait

While I'm at it, I fixed some usability issues with the query methods. Briefly, I originally wrote the IUnknown vtable and trait by hand and it doesn't quite line up with how the Win32 metadata's version of GUID*, void** is translated into Rust. This just makes the signatures consistent so that it is easier to call query and simply forward the iid and interface parameters without any coercion.
Fixes: #2657

https://github.com/microsoft/windows-rs/pull/2658#issuecomment-1719713440


Encourage newcomers to use Python 3

Great tutorial here. My one request is to please encourage newcomers to use Python 3, not Python 2. It's 2015 -- it's well past time for us to move on to Python 3. I modified your introductory part a little bit to:

Encourage the readers to use Python 3

Use the Anaconda Python distribution

Anaconda will make their life so much easier. Let's not get newcomers trapped into using pip when there's better tools available. :-)

Thanks :)
I'll address your two changes separately.
Python 3. I agree with you in principle, I really do. I only mentioned that I'm using Python 2.7.5 to say, this is what I've tested with (so if you have another version, Your Mileage May Vary). But in the name of "choosing your battles," I do want to keep this guide focused. Since I do agree that people should use Python 3, I'll find a way to incorporate that. One concern is that many (valuable, viable, good) resources are still using Python 2.7.x. Across the whole Python ecosystem. Some of those resources might be linked in this notebook. I haven't made a pass to ensure they're all Python 3 compatible. Most likely ...  I'll add some verbiage to say something like, "Python. Use latest if you can! Python 3 is the best option. Python 2.7.x should work as well (I've tested with Python 2.7)" hopefully more concise. Then also I will track down a solid blog post about Python 2.7 and Python 3, link a word or two in that sentence if anybody cares to click through and understand the issue intimately.
pip and Anaconda. pip is good. It is official: https://github.com/pypa/pip . I will never recommend against pip, as it is the package manager for Python. Any concerns with pip should be taken up with the pip maintainers ;) to your point though, Anaconda is great. This guide should DEFINITELY recommend it. Anaconda will be the preference for many users. So I'll need to revise carefully to make it clear that both are viable options. The reader will know pretty well which one they prefer.
So yeah I think both are really good points. I just want to tweak to make sure I don't turn away people from any "camp." (camp 1, what I'm in: plain old Python, uses pip, prefers Python 2.7.x because acutely aware that a lot of of enterprise Python AND open-source Python is still only 2.7.x compatible; camp 2, more progressive folks who evangelize Python 3 (more power to 'em!); camp 3, people who use Anaconda and prefer that to pip ... camps 2 & 3 might be the same people sometimes. We all have different backgrounds, want to welcome all 2-3 camps here)

wrt to Python 2 compatibility -- what major Python data science tools are still only Python 2 compatible? I believed this for a very long time, but most of the major Python data science tools (that I use) have been updated to support Python 3.
wrt to pip -- pip is indeed great! I still use pip to install packages outside the Anaconda ecosystem. But Anaconda can be used to install all the most-used Python data science packages, and really helps avoid installation and compatibility headaches that sometimes arise with pip. As someone who has taught hundreds of newcomers to Python, I can tell you that installation is one of the biggest headaches for beginners, and the Anaconda Python distribution solves 99.9% of them. I wouldn't say get rid of mentions of pip entirely, but I would strongly recommend that you point newcomers to Anaconda first rather than it being an alternative to pip.

@rhiever OK yeah, you're convincing me about pip. I still want to learn a little more about how pip and Anaconda play together but I'll "point newcomers to Anaconda first rather than it being an alternative to pip," as you've said.
Regarding Python 3 compatibility, I'll just have to trust you about data science being ahead of the curve. I still routinely use libraries at work that are not Python 3 compatible yet. So I'll recommend Python 3 ... probably still something like "Python. Use latest if you can! Python 3 is the best option. Python 2.7.x should work as well (I've tested with Python 2.7)" but try to cut some words out, have 1 word link to a good blog post for context if anyone's curious.
I'm grateful for this contribution and you taking the time to discuss it with me. I'm going to merge it now. Then adjust as a followup.

Cheers! :+1:
On Wednesday, October 21, 2015, hangtwentyy<EMAIL_ADDRESS>wrote:

@rhiever https://github.com/rhiever OK yeah, you're convincing me about
pip. I still want to learn a little more about how pip and Anaconda play
together http://stackoverflow.com/a/18640601/884640 but I'll "point
newcomers to Anaconda first rather than it being an alternative to pip," as
you've said.
Regarding Python 3 compatibility, I'll just have to trust you about data
science being ahead of the curve. I still routinely use libraries at work
that are not Python 3 compatible yet. So I'll recommend Python 3 ...
probably still something like "Python. Use latest if you can! Python 3 is
the best option. Python 2.7.x should work as well (I've tested with Python
2.7)" but try to cut some words out, have 1 word link to a good blog post
for context if anyone's curious.
I'm grateful for this contribution and you taking the time to discuss it
with me. I'm going to merge it now. Then adjust as a followup.
—
Reply to this email directly or view it on GitHub
https://github.com/hangtwenty/dive-into-machine-learning/pull/4#issuecomment-150013786
.

--
Randal S. Olson, Ph.D.
Postdoctoral Researcher, Institute for Biomedical Informatics
University of Pennsylvania
E-mail<EMAIL_ADDRESS>| Twitter: @randal_olson
https://twitter.com/randal_olson
http://www.randalolson.com


No Chat

setting "displayRankBeforeNameOnChat = false," causes chat to not display

should be fixed, please test and notice me

Resolved

https://forum.fivem.net/t/release-cops-fivem-pre-v1-4-0-09-11-2017/17460/1575?u=kyominii
Fixed.


Re-categorise on Chrome Store, from 'Fun' to 'Entertainment: Music & Radio'

Currently:

New category might make more sense:

+1

Where's that screenshot from? I only see like 10 base categories in the extension settings. Totally different from these on the screenshot

@david-sabata These are from the chrome store user view: https://chrome.google.com/webstore/category/apps

...
Right, ignore me. I've fundamentally mistaken Chrome Store "apps" for "extensions", which have different categories entirely.


Duplicate results when finding owners

Issue
This issue can be reproduced in both VS Code and eclipse.
Steps to reproduce:

Given the newest spring-petclinic (https://github.com/spring-projects/spring-petclinic/commit/0962ed7e8f5df8cf287c79975f9894f3189aebab for now)
run ./gradlew build in the project folder
Open the project in either VS Code or eclipse, import as Gradle project, and wait for the project imported
Run the spring-petclinic application, and open the browser
Go to "Find Owners" page, input "C" and try to find Owner
We can see the result:

Finding

We can find there are several unexpected source folders in the project dependencies, view the project dependencies:

in VS Code, open "Java Projects" view, expand "Project and External Dependencies" node
in eclipse, open "Package Explorer" view, expand "Project and External Dependencies" node

The output folder of main source set can be found in the node:

I can confirm before commit https://github.com/spring-projects/spring-petclinic/commit/0962ed7e8f5df8cf287c79975f9894f3189aebab everything works well. The root cause is that Gradle plugin org.graalvm.buildtools.native, which will introduce the spring aot plugin org.springframework.boot.aot that causes this issue. After disabling that plugin, the application works well.

if you can't reproduce this issue, please run ./gradlew build and clean workspace, see step 2 above.

It seems to be an issue with vscode/buildship not the PetClinic? Is there anything we can do here?

It looks like the issue is related to the interaction between aot plugin and buildship/Gradle eclipse plugin. I guess the root cause is about the aot plugin will add each source set's output to the runtime classpath. See : https://github.com/spring-projects/spring-boot/blob/5d49889bfde45ec0cf1d73b96ae61096add9dae7/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/SpringBootAotPlugin.java#L78 and https://github.com/spring-projects/spring-boot/blob/5d49889bfde45ec0cf1d73b96ae61096add9dae7/spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/SpringBootAotPlugin.java#L92

I'm not sure I follow that reasoning. I also can't reproduce the problem - maybe you have a different version of the VSCode plugins (I have the "Extension Pack for Java" v0.25.10)? I can see that there are duplicate .class files in the runtime classpath, but I don't understand how the extra database records get created because the .sql scripts are resources (not classes) and they are not duplicated in the runtime classpath.

@dsyer could you run ./gradlew build and clean workspace after then?

Nevermind, I can reproduce it now. I don't think I was using Gradle in VSCode before. It's actually only a problem for webapps strangely. If you try to reproduce it without spring-boot-starter-web there's only one data.sql on the classpath. We should open an issue in Spring Boot. Do you want to do that?

Do you want to do that?

Can we just transfer this issue there and change the title? If that's not suitable, I can create a new issue there.

The Boot team say it's a problem in Buildship, so you should open the issue there (and this one can't be transferred). I have a small reproducer if you want to link to that, or copy it: https://github.com/scratches/gradle-aot.

@dsyer Thanks a lot for the project, that's cool! issue created: https://github.com/eclipse/buildship/issues/1236

@dsyer You can try the following patch
diff --git a/build.gradle b/build.gradle
index d0a34bf..aeee005 100644
--- a/build.gradle
+++ b/build.gradle
@@ -3,6 +3,7 @@ plugins {
   id 'org.springframework.boot' version '3.0.4'
   id 'io.spring.dependency-management' version '1.1.0'
   id 'org.graalvm.buildtools.native' version '0.9.20'
+  id 'eclipse'
 }

 apply plugin: 'java'
@@ -40,3 +41,18 @@ dependencies {
 tasks.named('test') {
   useJUnitPlatform()
 }
+
+eclipse {
+  classpath {
+    defaultOutputDir = file('build-default')
+    file {
+        whenMerged {
+            cp -> cp.getEntries().forEach{
+                cpEntry -> if(cpEntry.path=='src/main/resources') {
+                    cpEntry.output = 'build/resources/main'
+                }
+            }
+        }
+    }
+  }
+}


Weekly decrease of Thales emitted rewards

TIP-176 - Weekly decrease of emitted rewards for stakers

Included in CCIP PR


Delete Microsoft.Extensions.MemoryPool

We don't need this anymore. Everyone should use System.Buffers :+1:

I think we need an announcement for this too because it's public (though it lived a short life).

Fixed in 36c186daa30b546ba53d15e9465b89f9c7423eb6


Remove query JWTs (breaking change)

Is there a good reason to need to support query JWTs at the framework level?
The reason why I ask is because I believe enabling query JWTs punches a small security hole into the framework, and by extension Loco's users.
Intermediate proxies log requests, the requirements for shipping/aggregating those is usually less secure than applications and surrounding infrastructure themselves. This can be further exacerbated by engineering and ops teams having access to production logs via their machines. Finally, end users can also accidentally end up sharing their tokens. All of those can lead to session stealing/hijacking/replays.
I realise a lot of these are self inflicted errors, and some of them can be worked around or diminished, but I don't expect everyone to be hyper-vigilant about security!
Lastly, I don't think it has a great cost-benefit ratio: the cost is very steep (potential security hole, which are nightmares on multiple fronts: monetary, reputation, data loss), while the benefit is negligible: most anything sending a request can attach a header or a cookie already; usually attaching headers/cookies is also ergonomic than fiddling with query params.
Overall, I'd rather Loco errs on the side of providing only safe options out of the box, especially surrounding stuff like AuthN/AuthZ.
If users really want or need to implement something like this, they can shoot themselves in the foot on their own terms, but at least we've not given them the gun!
Hope I managed to get my thoughts across clearly. Also, I realise this might be a Chesterton's fence type of situation, though! So, I'm happy to discuss and even be convinced otherwise!

Great reasoning behind your opinion.
The reasons that I see to keep the query JWT are:

It still an option without framework user interaction, thus, reduces usage friction.
In my experience query parameters are easy to filter in monitoring tools.
In your case there is the assumption that all the proxies are external to the infrastructure. In a micro services world an internal service could identify services by this token on the query params.
Intermediate proxies can read/re-write headers
There are too many scenarios that are not considered.

Having said that. I think that the approach could be to leave it as an option but discourage it's usage mentioning the potential security risks.


feature: Add parameter columnIsPadded to Coordinate::fromString()…

… method

[x] Added automated tests
[x] Documented for all relevant versions
[x] Updated the changelog

Changes
Add parameter columnIsPadded to Coordinate::fromString() method

I do not understand the purpose of this change. An actual example in the test case and a description in the docblock would help.

I added an issue to describe the feature-request in detail (https://github.com/mll-lab/microplate/issues/11)


Include build tags to allow go get on non-Windows platforms.

This PR adds build tags to only try compiling Windows specific code when running on Windows, fixing #30.
As described in #30, this package is vendored in many common libraries like docker and swarmkit and currently it's not possible to run commands like go get github.com/docker/swarmkit/... because this library won't compile.
A noop.go file was added to the backuptar package because at least one file in a package must be compilable on the current platform. Also, the generated zsyscall.go was renamed to zsyscall_windows.go to avoid having to edit the output from mksyscall.

Anything preventing this from being merged?
I could really do with this as I am vendoring github.com/docker/go-connections/sockets which depends on this library, but I am building on Linux and would like to use go test ./... (which currently fails with undefined: syscall.Overlapped).

We see a similar issue with vendor/github.com/Microsoft/go-winio/file.go:45: undefined: syscall.Overlapped

LGTM


Consider using the ruff linter?

Another project that I am involved in started using the ruff linter, see
https://github.com/beancount/smart_importer/pull/133
I am creating this issue as a note for the future, just in case we run into linter problems again, e.g., like when we had to migrate away from pylama because it was unmaintained.

+1 for this.  I recently replaced pydocstyle and maybe other linters with ruff in a different project.


Support ECR login with Web Identity for Kubernetes EKS IRSA

Is this a request for help?:
No
Is this a BUG REPORT or a FEATURE REQUEST? (choose one):
Feature request

Anchore should also support assume_role_with_web_identity when authenticating against ECR, we have the anchor engine on EKS and would like to authenticate with a custom role using IRSA, the issue is anchore does not support this option here https://github.com/anchore/anchore-engine/blob/b5e45c522f9c3e0a73e452eb3d101154d65e221c/anchore_engine/auth/aws_ecr.py#L77
Ideally the command should receive as access_key_id  the value of _iam_role_web_identity and for secret_access_key could be the role_arn;path_identity_token_file;external_id

Version of Anchore Engine and Anchore CLI if applicable:
version 0.9.1
What happened:
What did you expect to happen:

Any relevant log output from /var/log/anchore:
What docker images are you using:
How to reproduce the issue:
Anything else we need to know:

@hev, @zhill  need your guidance prioritizing this feature for the next release


Password in plaintext in management and access logs

ISSUE TYPE

Bug Report

COMPONENT NAME

Logs

CLOUDSTACK VERSION

<IP_ADDRESS>, <IP_ADDRESS>

CONFIGURATION

OS / ENVIRONMENT

SUMMARY

Password and sensitive information are shown in plaintext in the management and access logs on the management server.
STEPS TO REPRODUCE

Looking in log files.

EXPECTED RESULTS

No sensitive passwords or secrets in logs

ACTUAL RESULTS

/var/log/cloudstack/management/access.log:1077542308:<IP_ADDRESS> - - [09/Aug/2024:16:42:01 +0000] "GET /client/api?account=joe-again-1286&apiKey=<apikey>&command=addVpnUser&domainid=c91a0528-377b-48aa-9c7b-2c7ead68200d&password=TOPSECRETPASSWORD&response=json&username=seantest2&signature=Ek%2BC7EGsrmNi0ONFL%2BxJBJxSGe0%3D HTTP/1.1" 200 115 "-" "GuzzleHttp/7" 86

/var/log/cloudstack/management/management-server.log:122775505:{u'vpn_users': [{u'add': True, u'password': u'TOPSECRETPASSWORD', u'user': u'seantest2'}], u'type': u'vpnuserlist', u'delete_from_processed_cache': False}

It is best to send credentials in a POST.

@rohityadavcloud Is there anyway this can be bumped up to a release sooner than <IP_ADDRESS>?  Being that this is a Security and Auditing issue, It would be nice to have this resolved sooner than later.

the first issue with access.log has been discussed before
users can redirect the file access.log to /dev/null as suggested by @DaanHoogland
the second issue (vpn user password are displayed in management-server.log) seems to only impact vpn user.
I was able to reproduce the issue. it may not deserve a security release.
I will have a look
cc @rohityadavcloud @DaanHoogland @sureshanaparti

the first issue with access.log has been discussed before users can redirect the file access.log to /dev/null as suggested by @DaanHoogland
the second issue (vpn user password are displayed in management-server.log) seems to only impact vpn user. I was able to reproduce the issue. it may not deserve a security release. I will have a look
cc @rohityadavcloud @DaanHoogland @sureshanaparti

@DaanHoogland do you have the link to what @weizhouapache is talking about for the access.log to /dev/null?
Depending on what that says, I'm not sure if that is an acceptable solution for me, because I want to see the access.log, but I don't want to see the passwords in it.

Depending on what that says, I'm not sure if that is an acceptable solution for me, because I want to see the access.log, but I don't want to see the passwords in it.

in that case it is not acceptable for you and you'll need to sanitise the access log somehow.

Depending on what that says, I'm not sure if that is an acceptable solution for me, because I want to see the access.log, but I don't want to see the passwords in it.

in that case it is not acceptable for you and you'll need to sanitise the access log somehow.

But It makes more sense ( from a security perspective ) to not have the passwords/secrets hit the log in the first place.  Sanitizing it after the fact is kinda pointless.
@rohityadavcloud @weizhouapache Can you please look into removing or obfuscating password information that is making it to access.log or any log for that matter from the actual code and not a retro solution or access.log > /dev/null ?

Depending on what that says, I'm not sure if that is an acceptable solution for me, because I want to see the access.log, but I don't want to see the passwords in it.

in that case it is not acceptable for you and you'll need to sanitise the access log somehow.

But It makes more sense ( from a security perspective ) to not have the passwords/secrets hit the log in the first place. Sanitizing it after the fact is kinda pointless.
@rohityadavcloud @weizhouapache Can you please look into removing or obfuscating password information that is making it to access.log or any log for that matter from the actual code and not a retro solution or access.log > /dev/null ?

it looks like all credentials in access.log are plain text.
ACS uses NCSARequestLog class to log request logs. I am not sure if it is possible to hide some information
If not ,  then need to look for another solution.
at this moment, I think you have to make a decision @CodeBleu
since the API calls are also saved in apilog.log and management-server.log, maybe you can just redirect access.log to /dev/null

Fixed by https://github.com/apache/cloudstack/pull/9568


Second animation crashes app in chat view controller

The first time a user taps on a text field in the ChatViewController, it works fine. However, if the user exits it, and then re-enters the same or another chat, and hits the text field, the app crashes. It gives the error:  fatal error: unexpectedly found nil while unwrapping an Optional value.

The error seems to be caused by the keyboard animations, which are started by the NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(raiseTextField), name: UIKeyboardWillShowNotification, object: nil) and NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(lowerTextField), name: UIKeyboardWillHideNotification, object: nil) lines. If they are removed, the error no longer happens. If the UIKeyboardWillShowNotification is removed, but the UIKeyboardWillHideNotification is not, then the error happens when the keyboard is released rather than shown.


Fixing Undefined index: height in 437

Interesting work.
Gonna look into this more (refactor OOP, weight, ...).

Thanks @cottton looking forward to your PR's 👍


Someone want to try and Push this and test it?

Sorry I am posting this here instead of the forums, I would post it there but I've registered 2 e-mail accounts on the Libgdx Forums and for some reason I haven't got an activation email all day, in either of them.
I haven't learned to use Github yet and do pull requests, and I haven't learned how to edit the source code AND recompile it and all that yet, new to IntelliJ, Java and libgdx.
Anyways to the task at hand.
Alright so I tried to add to the BaseTmxLoader.java and the TiledMapTileLayer.java in order to see if I can get the Layer offsets to render.
However, I haven't figured out how to get access to the source code properly, build it and send it through Github...
I have no idea how to use Github yet, with the pull requests and all that, but should be learning soon. Got a lot on my plate at the moment.
And still learning to use IntelliJ IDEA, Libgdx, Gradle etc. etc. on top of all that.
Anywhere here are the two files I changed.
**For the first:
TiledMapTileLayer.java
I added Lines # 30 and 31 private Int's for offsetx and y.

added Lines # 56 - 63 getter methods for TileLayer offsets.
added to the Constructor on line 73 in it's arguments, added the offsetx and y.
added Lines # 79 and 80.**

TiledMapTileLayer.zip
**For the second:
BaseTmxMapLoader.java
I added Lines # 80 and 81 inside the loadTileLayer method.**
BaseTmxMapLoader.zip
Now I'm not sure but perhaps the TmxMapLoader.java also needs these fields added? Or perhaps also to the MapLayer.java class as well.
I'm not sure because at the moment I can't test it out I haven't learned to build the source code yet.
So if anyone wants to try and add this, and perhaps the same fields to the TmxMapLoader.java and MapLayer.java if they require it also, and knows how to do those pull requests and such. That would be awesome. Cause if it works I'd like to have it right inside Libgdx so I we can all benefit from TILED maps Layer Offsets :D
I also couldn't find exactly where it takes in all the render arguments unless I already covered that with what I added? But if someone can point to where that's happening I will try to add the offsets to the render code as well. And post the files again, cause I won't be figuring out Github this week I know that for sure.

This is better suited for the irc or forums. Double check your spam filters, if its still not there you can give me your username and I can manually activate it.

Alright I just triedd a different email it finally worked. I will post in the forums under Contributions. Or will check the IRC, sorry.


Can’t connect to SITL using DroneKit – mode is 0

Checked out v1.3.1 version of the Firmware. Built and ran SITL with the command:
make posix_sitl_default jmavsim

JMavSim ran successfully. Trying to connect to the copter like this:
vehicle = connect('udp:<IP_ADDRESS>:14556', wait_ready=False)

Getting an exception:
>>> Exception in message handler for HEARTBEAT
>>> mode 0 not available on mavlink definition

Also, APM Planner shows, that the vehicle is in UNKNOWN mode. This can’t be changed neither with APM Planner/Mission Planner, nor with Mavproxy console.
Anyone can help?

Dronekit support is work in progress. You have to use QGroundControl, not APM Planner.
Can you file an issue in Dronekit for the mode announcement?
And please look at http://dev.px4.io for a Dronekit example.

I’m sorry, I don’t completely get you answer.
Is mode «0» a correct mode, that is, for some reason, isn’t defined in DroneKit? Also, I can’t change it from DroneKit, to «GUIDED» for example, is that a DroneKit issue?

Also, not I tried 14550 UDP port, and got another exception:
mode 65536 not available on mavlink definition

It would really help if you would consider reading the documentation I referenced earlier:
http://dev.px4.io/dronekit-example.html

OK, thanks, I read it. So, it’s impossible to switch mode with DroneKit’s vehicle.mode property? But I was able to do that on a real PX4.
Anyways, the example file on the manual doesn’t connect to the simulation copter either, it hangs with the same exception:
>>> Exception in message handler for HEARTBEAT
>>> mode 65536 not available on mavlink definition
>>> Exception in message handler for HEARTBEAT
>>> mode 65536 not available on mavlink definition
>>> Exception in message handler for HEARTBEAT
>>> mode 65536 not available on mavlink definition

That's because you didn't follow the instructions - did you see that they require you to install the latest Dronekit from source?

Using the latest DroneKit from the sources. Got the same exception.

Also, I would appreciate very much, it you made it more clear for me. Now, I’m trying to make an autonomous flight on a drone using DroneKit.
You said, that supporting DroneKit is in progress, so does the PX4 support following DroneKit’s features?

simple_takeoff? (worked for me on a real drone)
simple_goto? (didn’t try)
controlling the speeds by SET_POSITION_TARGET_LOCAL_NED MAVLink message? (didn’t worked for me)
controlling the yaw by CONDITION_YAW message?
RTL mode?

I’ve been messing up with this for a couple of weeks, and still got no results :(

Still the same issue here...

For communication with PX4 I recommend using mavros or pymavlink.


refactor(transformer/async-generator-function): remove inactive #[allow(clippy::unused_self)] attrs

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#7167  👈
#7166
#7165
#7164
#7163
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite


kedro airflow plugins: ValueError Pipeline input(s) not found in the DataCatalog

when I run the Airflow Job
Have this problem
ValueError: Pipeline input(s) {'X_test', 'y_train', 'X_train'} not found in the DataCatalog

import sys
from collections import defaultdict
from datetime import datetime, timedelta
from pathlib import Path

from airflow import DAG
from airflow.models import BaseOperator
from airflow.utils.decorators import apply_defaults
from airflow.version import version
from kedro.framework.project import configure_project
from kedro.framework.session import KedroSession

sys.path.append("/Users/mahao/airflow/dags/pandas_iris_01/src")

class KedroOperator(BaseOperator):
    @apply_defaults
    def __init__(self, package_name: str, pipeline_name: str, node_name: str,
                 project_path: str, env: str, *args, **kwargs) -> None:
        super().__init__(*args, **kwargs)
        self.package_name = package_name
        self.pipeline_name = pipeline_name
        self.node_name = node_name
        self.project_path = project_path
        self.env = env

    def execute(self, context):
        configure_project(self.package_name)
        with KedroSession.create(self.package_name,
                                 self.project_path,
                                 env=self.env) as session:
            session.run(self.pipeline_name, node_names=[self.node_name])

# Kedro settings required to run your pipeline
env = "local"
pipeline_name = "__default__"
#project_path = Path.cwd()
project_path = "/Users/mahao/airflow/dags/pandas_iris_01"
print(project_path)

package_name = "pandas_iris_01"

# Default settings applied to all tasks
default_args = {
    'owner': 'airflow',
    'depends_on_past': False,
    'email_on_failure': False,
    'email_on_retry': False,
    'retries': 1,
    'retry_delay': timedelta(minutes=5)
}

# Using a DAG context manager, you don't have to specify the dag property of each task
with DAG(
        "pandas-iris-01",
        start_date=datetime(2019, 1, 1),
        max_active_runs=3,
        schedule_interval=timedelta(
            minutes=30
        ),  # https://airflow.apache.org/docs/stable/scheduler.html#dag-runs
        default_args=default_args,
        catchup=False  # enable if you don't want historical dag runs to run
) as dag:

    tasks = {}

    tasks["split"] = KedroOperator(
        task_id="split",
        package_name=package_name,
        pipeline_name=pipeline_name,
        node_name="split",
        project_path=project_path,
        env=env,
    )

    tasks["make-predictions"] = KedroOperator(
        task_id="make-predictions",
        package_name=package_name,
        pipeline_name=pipeline_name,
        node_name="make_predictions",
        project_path=project_path,
        env=env,
    )

    tasks["report-accuracy"] = KedroOperator(
        task_id="report-accuracy",
        package_name=package_name,
        pipeline_name=pipeline_name,
        node_name="report_accuracy",
        project_path=project_path,
        env=env,
    )

    tasks["split"] >> tasks["make-predictions"]

    tasks["split"] >> tasks["report-accuracy"]

    tasks["make-predictions"] >> tasks["report-accuracy"]

I think you are missing the data from the catalog.
example_iris_data:
  type: pandas.CSVDataSet
  filepath: data/01_raw/iris.csv
example_train_x:
  type: pickle.PickleDataSet
  filepath: data/05_model_input/example_train_x.pkl
example_train_y:
  type: pickle.PickleDataSet
  filepath: data/05_model_input/example_train_y.pkl
example_test_x:
  type: pickle.PickleDataSet
  filepath: data/05_model_input/example_test_x.pkl
example_test_y:
  type: pickle.PickleDataSet
  filepath: data/05_model_input/example_test_y.pkl
example_model:
  type: pickle.PickleDataSet
  filepath: data/06_models/example_model.pkl
example_predictions:
  type: pickle.PickleDataSet
  filepath: data/07_model_output/example_predictions.pkl

See https://kedro.readthedocs.io/en/stable/deployment/airflow_astronomer.html?highlight=astro-airflow-iris


updated

adjusted spaces

This isn't doing anything meaningful to the operation of the code and there is nothing wrong here as users will view the code. So to keep the commit history light this won't be merged in.
Thank you for your time.


Removed nitro emoji TODO

Removes TODO for functionality with emojis from other servers due to limitations of discord bot functionality.

Please separate different functionalities into separate PRs (i.e. make another PR for quotes functionality, keep commits re: emojis in this PR).
This might help: https://stackoverflow.com/questions/1628563/move-the-most-recent-commits-to-a-new-branch-with-git

Looks good! I'll push a commit to fix a few punctuation mistakes in the comments. Thanks!


Found weightage incosistency

Hi,
Text classification for a few keywords lime is showing the inconsistency of red and green color for the same keyword in different sentences but the same label. Any parameter or the hyper-parameter we can control or explore it.

If you set bow=True when initializing LimeTextExplainer, every occurrence of a single word will be perturbed at the same time and get the same weight.

If you set bow=True when initializing LimeTextExplainer, every occurrence of a single word will be perturbed at the same time and get the same weight.


StreamBuilder's stream property is not currently marked @required in Flutter 1.15.23-pre.6

I can't think of an instance when this widget is useful without having a Stream provided.

Flutter 1.15.23-pre.6 • channel master • https://github.com/flutter/flutter.git
Framework • revision 028b7dced1 (29 hours ago) • 2020-03-16 11:33:00 -0700
Engine • revision a9d49a0f6e
Tools • Dart 2.8.0 (build 2.8.0-dev.14.0 d2950737b8)

Closing as per comment here: https://github.com/flutter/flutter/pull/52851#issuecomment-601909749

Thanks!


Want the implement of "TO WAKE-UP OR NOT TO WAKE-UP: REDUCING KEYWORD FALSE ALARM BY SUCCESSIVE REFINEMENT"

I am very interested in "TO WAKE-UP OR NOT TO WAKE-UP: REDUCING KEYWORD FALSE ALARM BY SUCCESSIVE REFINEMENT"this work.And I  sincerely want to know the code implement of this work.plz.

for BC-ResNet1


Fix RuntimeError due to inplace operation (fpn.py)

Thank you for great OSS!
When we use FPN, we get the following error on torch==1.13.1.
It looks like this is due to an in-place update of laterals at FPN.forward() in fpn.py.
RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatTensor [1, 64, 20, 20]], which is output 0 of LeakyReluBackward1, is at version 2; expected version 1 instead. Hint: enable anomaly detection to find the operation that failed to compute its gradient, with torch.autograd.set_detect_anomaly(True).

Here is the difference of yaml file.
$ git diff config/nanodet-plus-m_320.yml
     fpn:
-      name: GhostPAN
+      name: FPN # GhostPAN
       in_channels: [116, 232, 464]
-      out_channels: 96
-      kernel_size: 5
-      num_extra_level: 1
-      use_depthwise: True
+      num_outs: 3
+      out_channels: 96
       activation: LeakyReLU
     head:
-      strides: [8, 16, 32, 64]
+      strides: [8, 16, 32]
     aux_head:
-      strides: [8, 16, 32, 64]
+      strides: [8, 16, 32]

Thank you for the fix @y-okumura-isp !!


Remove load-plugin variable from my.cnf when there is no plugin

I've rebased this PR and looks like the changes have been merged in already so will close this PR.


[SteamAppNewsBridge] Add tags filter

Adds a tag filter that retrieves newsitems entries containing the listed tag(s).
The most common use-case is for retrieving entries with the patchnotes tag.
This uses the currently undocumented tags parameter, which can be discovered through a GetSupportedAPIList query. It takes a comma-separated list as an argument, and  it's allowed to be an empty string.

GetNewsForApp v2 entry via /ISteamWebAPIUtil/GetSupportedAPIList/v1/
{
  "name": "GetNewsForApp",
  "version": 2,
  "httpmethod": "GET",
  "parameters": [
    {
      "name": "appid",
      "type": "uint32",
      "optional": false,
      "description": "AppID to retrieve news for"
    },
    {
      "name": "maxlength",
      "type": "uint32",
      "optional": true,
      "description": "Maximum length for the content to return, if this is 0 the full content is returned, if it's less then a blurb is generated to fit."
    },
    {
      "name": "enddate",
      "type": "uint32",
      "optional": true,
      "description": "Retrieve posts earlier than this date (unix epoch timestamp)"
    },
    {
      "name": "count",
      "type": "uint32",
      "optional": true,
      "description": "# of posts to retrieve (default 20)"
    },
    {
      "name": "feeds",
      "type": "string",
      "optional": true,
      "description": "Comma-separated list of feed names to return news for"
    },
    {
      "name": "tags",
      "type": "string",
      "optional": true,
      "description": "Comma-separated list of tags to filter by (e.g. 'patchnodes')"
    }
  ]
}

I think the example in tags's description is supposed to be 'patchnotes', not 'patchnodes'.

Because I haven't been able to come across any news entries that have more than one tag, I refrained from making this bridge parameter the list type, as I felt that might suggest it utilizes an OR list rather than an AND list.
(There's also minor code formatting tweaks that didn't seem worth making into a separate commit, but I can do that if need be.)

some linter issues


Write documentation on FHIR functions

User Story
As a Reportstream engineer, I want documentation on FHIR functions
Description/Use Case
Write a document on FHIR path functions. See the doc skelly for some idea on content: https://docs.google.com/document/d/1Xr2defgjUjarZgyROqOqM1Cezx_hp6S_Gd3Ue8bik64/edit?usp=sharing
Risks/Impacts/Considerations
Dev Notes
If https://app.zenhub.com/workspaces/platform-6182b02547c1130010f459db/issues/gh/cdcgov/prime-reportstream/10208 is completed, use the existing structure, otherwise put the doc in docs/features.
Acceptance Criteria

[ ] Define content that should be in documentation and review with team before writing documentation
[ ] A document exists on FHIR functions
[ ] The document details custom FHIR Functions
[ ] The document details internal vs external FHIR path functions

Hey team! Please add your planning poker estimate with Zenhub @arnejduranovic @jack-h-wang @JessicaWNava @JFU-NAVA-PBC @luis-pabon-tf @mkalish @thetaurean


Use install over upgrade --install when deploying charts for the first time

Is your feature request related to a problem?
When deploying a Chart that comes with CRDs, such as the Strimzi Kafka Operator chart, the Kafka CRDs are not installed.
IIUC, it is because devspace always uses helm upgrade --install when deploying a helm chart - and Helm does not support CRDs when upgrading.
Which solution do you suggest?
Would it be an option to detected whether the chart is already installed or not, and use install or upgrade accordingly?
Which alternative solutions exist?
If it is not feasible, documenting the current behaviour and the CRDs caveat would be useful.
Additional context
Nope

The documentation you linked is specifying --dry-run as supporting CRDs.  Could you share your output so we can try to reproduce this?  Thank you.

@zerbitx sorry, I double-check what was happening and this is a non-issue.
helm upgrade --install will trigger the creation of CRDs if the operation is an install.
The issue that we deployed everything at the same time in our devspace setup (the 3rd-party chart that includes the CRDs and our chart that uses them).
Using the devspace dependencies features properly resolved the issue.


vscode-optgroup component

Feature request
VS Code component for the standard HTML optgroup element for organizing vscode-dropdown vscode-options.
Expected behavior
To be able to organize vscode-options in a vscode-dropdown using vscode-optgroup in the same way standard HTML options can be organized in a select using optgroup.
Current behavior
There currently is no work-alike to optgroup in the library that I'm aware of.
Use case
Selecting one of various kinds of encodings in a hex editor.
Screenshots/references
Here, I'm using a standard select, options and optgroup for the encodings, but would prefer to use vscode-dropdown with vscode-options and vscode-optgroup for the same look-and-feel:

Hi @scholarsmate,
I'm very sorry to say that the toolkit is being deprecated and all active development will be coming to a close.
There was an announcement last week where you can learn more details and leave any questions or comments you may have.
Beyond that, thank you so much filing this issue and apologies for never getting around to addressing it. It means a lot that you contributed to the improvement of this project. I wish you all the best in your future VS Code extension endeavors!


fix mis-spelling in client.go

fix mis-spelling in client.go

Codecov Report

Merging #3456 into master will increase coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #3456      +/-   ##
==========================================
+ Coverage   44.22%   44.22%   +<.01%
==========================================
  Files         124      124
  Lines       13724    13724
==========================================
+ Hits         6069     6070       +1
+ Misses       6724     6723       -1
  Partials      931      931

Flag
Coverage Δ

#linux
48.01% <ø> (ø)
:arrow_up:

#windows
39.88% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

runtime/v2/shim/shim_windows.go
43.5% <0%> (+0.64%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 29930e9...c27e48d. Read the comment docs.


Missing C++ examples for pose estimation

The code tabs also do not follow each other on this page

Will this be fixed in the 2023 docs?

@gaborszita C++ simulation is no longer supported at the moment.


Synchronize access to the 'Halt' method

This should fix a possible race condition between the timer
and the aggregator, who could previously both call 'Halt'
at the same time, causing consensus desyncs.
Fixes #565

Codecov Report

Merging #602 into rusk-ipc will increase coverage by 0.78%.
The diff coverage is 60.65%.

@@             Coverage Diff              @@
##           rusk-ipc     #602      +/-   ##
============================================
+ Coverage     54.96%   55.75%   +0.78%
============================================
  Files           156      159       +3
  Lines          9689    10283     +594
============================================
+ Hits           5326     5733     +407
- Misses         3723     3863     +140
- Partials        640      687      +47

Impacted Files
Coverage Δ

pkg/config/consts.go
0.00% <ø> (ø)

pkg/core/consensus/header/header.go
24.75% <0.00%> (ø)

pkg/gql/handler.go
0.00% <ø> (ø)

pkg/gql/httpserver.go
65.11% <0.00%> (ø)

pkg/gql/query/transactions.go
63.86% <0.00%> (+2.07%)
:arrow_up:

pkg/p2p/peer/peer.go
69.93% <0.00%> (ø)

pkg/p2p/wire/message/agreement.go
42.18% <ø> (ø)

pkg/util/nativeutils/eventbus/publisher.go
40.00% <0.00%> (-40.00%)
:arrow_down:

pkg/util/nativeutils/hashset/set.go
42.22% <0.00%> (-57.78%)
:arrow_down:

pkg/core/consensus/agreement/handler.go
62.85% <20.00%> (-8.12%)
:arrow_down:

... and 36 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c7af009...6cf9b33. Read the comment docs.