Only use non-absolute paths for path dependencies

Previously Cargo would use a non-absolute path for any dependency contained
within the workspace root but this switches Cargo to only using relative paths
for path dependencies. In practice this shouldn't make much difference, but
for vendored crates and moving around CARGO_HOME it can produce more
consistent results when target directories are shared.
Closes #5923

r? @matklad
(rust_highfive has picked a reviewer for you, use r? to override)

How is the test asserting the fix of behaviour?
Also, from your wording, is there a difference between non-absolute and relative?

Ah the test is asserting the correct behavior by ensuring that the second compile doesn't print that it's compiling baz, showing that the cached verion was used.
The path passed to rustc largely only affects error messages and debuginfo, but due to debuginfo it affects the final artifact which means Cargo has to cache it separately.

:umbrella: The latest upstream changes (presumably #5628) made this pull request unmergeable. Please resolve the merge conflicts.

r? @ehuss

@bors r+
I'm not very familiar with vendoring packages, but I can't think of any specific problems with this.
I'll look at the error with deep_dependencies_trigger_rebuild.  It has triggered several times lately.

:pushpin: Commit 6e57be51602cab15f0e9f0111b749d9eab593a77 has been approved by ehuss

:hourglass: Testing commit 6e57be51602cab15f0e9f0111b749d9eab593a77 with merge 676d866fee71efc9d903d2025c46c7ddaae23b5a...

:sunny: Test successful - status-appveyor, status-travis
Approved by: ehuss
Pushing 676d866fee71efc9d903d2025c46c7ddaae23b5a to master...

Did you garner anything? I was thinking of opening an issue about it..

See #5940.  To fix deep_dependencies_trigger_rebuild, the calls to File::create and sleep need to be swapped.  However, as you can see in the issue, there are many other tests which can fail.  My preference would be to add limited hashing to deal with mtime issues to fix all the tests, but Alex mentioned he preferred to change the mtimes during the tests instead, so I was waiting to see what he had in mind.

Oh damn I thought I'd searched #5940.. makes sense it's there.
deep_dependencies_trigger_rebuild has been failing me on Travis CI very often, so I think we should go with the shallow fix for that one. I'll PR that, thanks for the tip.


⚠ Feedaty widget has degraded performance

In bb65d53, Feedaty widget (https://widget.feedaty.com/public/js/feedaty.js?merchant=10213975&style_ver=2021&data-sku=36263) experienced degraded performance:

HTTP code: 200
Response time: 2629 ms

Resolved: Feedaty widget performance has improved in ff52b5a after 14 minutes.


Documentation Issue

The Readme.md specifies that the filter expects the Base64 encoded JWT idToken, but it actually seems to expect the idToken as is, with dot delimiters.  Using the Base64'd value of the idToken causes parsing to fail.

Merged. Thx for reporting this !


Support last draft.js

stateToHTML.js:204   Uncaught TypeError: this.contentState.getBlocksAsArray is not a function
->
this.contentState.getCurrentContent().getBlocksAsArray()

Sorry, my fault

What did you do to fix this?

I'm having the same issue.

I had this error when I didn't use  .getCurrentContent().
stateToHTML(
    EditorState.createWithContent(
      convertFromRaw(raw)
    ).getCurrentContent()
  );

Hi there. Getting the same error in the latest npm stable version.


one setting can be better, I think..

Hi,
For bringing back the DIS to MIM you chose for 'Create resource in FIM' to be ON. I think it should be off, enabling only join relationship.
[Enter feedback here]

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 08269662-0165-5225-6da2-33bbf9989f12
Version Independent ID: d32b3f0b-2590-a119-0ee0-bbda1652904a
Content: Configuring the Microsoft Identity Manager connector for Microsoft Graph for B2B
Content Source: MIMDocs/microsoft-identity-manager-2016-graph-b2b-scenario.md
Product: microsoft-identity-manager
GitHub Login: @billmath
Microsoft Alias: billmath

The following issue is being closed due to the age. If this is still an issue, please re-submit this. Thank you.
#please-close


Consider free vars in abstract def implementations before existing types

Fixes #10153.
This doesn't change the semantics of free vars during abstract def checking.

The changes here are actually very similar to #9595, however I haven't found an example where the original issue manifests through a return type restriction.

This needs conflict resolution with master


Resource not indexed in ES when non ASCII chars in the @id

To reproduce:

In Nexus Web, in a project where you have the access rights to do so, try to create a resource with a non-ASCII character in the id (for instance a é, let's say we use café as the resource id).
Under the hood it will make a PUT request to create a resource, with the id correctly URL encoded (caf%C3%A9). This request claims to succeed with HTTP 201.
On the UI side however, it displays an error notification with An unknown error happened: e is undefined
More troubling, the newly created resource will not not appear in the ElasticSearch view results*, however it is possible to find it in the Sparql view results.

I cannot reproduce it. I can create PUT resources as follows:

PUT v1/resources/{org}/{proj}/_/café
POST v1/resources/{org}/{proj}

{
   "@id": "http://example.com/café",
   ...
}

Probably it was due to some previous error on our nexus-rdf library which has already been fixed


react-native-git-upgrade changes nothing

Description
I am trying to upgrade from react native 35 to 40. Running 'react-native-git-upgrade' in my project tells me the upgrade has been done but nothing has changed in my repository.
Output:
/usr/local/Cellar/node/7.4.0/bin/react-native-git-upgrade
git-upgrade info Check for updates
git-upgrade info Using yarn 0.19.1
git-upgrade info Read package.json files
git-upgrade info Check declared version
git-upgrade info Check matching versions
git-upgrade info Check React peer dependency
git-upgrade info Check that Git is installed
git-upgrade info Get information from NPM registry
git-upgrade info Upgrading to React Native 0.40.0, React ~15.4.0-rc.4
git-upgrade info Setup temporary working directory
git-upgrade info Configure Git environment
git-upgrade info Init Git repository
git-upgrade info Add all files to commit
git-upgrade info Commit current project sources
git-upgrade info Create a tag before updating sources
git-upgrade info Generate old version template
git-upgrade info Add updated files to commit
git-upgrade info Commit old version template
git-upgrade info Install the new version
git-upgrade info Generate new version template
git-upgrade info Add updated files to commit
warning: CRLF will be replaced by LF in android/gradlew.bat.

The file will have its original line endings in your working directory.
git-upgrade info Commit new version template
git-upgrade info Generate the patch between the 2 versions
git-upgrade info Save the patch in temp directory
git-upgrade info Reset the 2 temporary commits
git-upgrade info Apply the patch
error: patch failed: .flowconfig:1
Falling back to three-way merge...
Applied patch to '.flowconfig' with conflicts.
error: patch failed: .gitignore:22
Falling back to three-way merge...
Applied patch to '.gitignore' with conflicts.
error: android/app/src/main/java/com/appname/MainApplication.java: does not exist in index
error: cannot apply binary patch to 'android/gradle/wrapper/gradle-wrapper.jar' without full index line
Falling back to three-way merge...
error: cannot apply binary patch to 'android/gradle/wrapper/gradle-wrapper.jar' without full index line
error: android/gradle/wrapper/gradle-wrapper.jar: patch does not apply
error: patch failed: ios/appname.xcodeproj/project.pbxproj:22
Falling back to three-way merge...
Applied patch to 'ios/appname.xcodeproj/project.pbxproj' with conflicts.
error: patch failed: ios/appname.xcodeproj/xcshareddata/xcschemes/appname.xcscheme:3
Falling back to three-way merge...
Applied patch to 'ios/appname.xcodeproj/xcshareddata/xcschemes/appname.xcscheme' cleanly.
error: ios/appname/AppDelegate.m: does not exist in index
error: patch failed: ios/appname/Info.plist:45
Falling back to three-way merge...
Applied patch to 'ios/appname/Info.plist' with conflicts.
git-upgrade WARN The upgrade process succeeded but there might be conflicts to be resolved. See above for the list of files that have merge conflicts.
git-upgrade info Upgrade done

Then I look in my status
git status
On branch migration-rn40-2
Untracked files:
  (use "git add <file>..." to include in what will be committed)

	../../../old-logs

nothing added to commit but untracked files present (use "git add" to track)

Nothing. No conflict.
This is the ouptut after I ignored *.png in my global gitignore file (as per issue #11402). I had previously also warning related to the png files (although I never changed this part of the project since I'm only doing iOs for now).
After this script is run I get react native 40 in my node modules, but I couldn't build the project on Xcode which was complaining about the React native libraries of my project.
Solution
I guess the critical lines in the logs are the "without full index line" errors for the binaries I don't have (maybe because I never ran the android project) and the "does not exist in index" that is thrown for  AppDelegate.m (I use swift instead).
I managed to get it to work by changing in cliEntry.js git apply --3way ${patchPath} by git apply --reject ${patchPath} which worked (I could start correctly my application afterwards) but I will have to merge manually the conflicts now.
I guess you should at least test the output code of git apply to detect a failure and print a valid error message, and maybe suggest to retry with --reset instead of --3way if the --3way failed.
Additional Information

React Native version: 35
Platform: iOs
Operating System: MacOS

@joIivier how can I apply your patch locally?

@ncuillery I have the same error from RN39 to RN41

@sibelius in cliEntry.js replace git apply --3way by git apply --reject, run the migration script again and merge manually the files that were rejected by git (files ending in .rej).

I think it should run git apply --reject if git apply --3way fails

This seems like a pretty basic thing for upgrading react native and I don't understand why more people aren't complaining about it. I've been unable to use this tool successfully and have reinstalled multiple times. Any updates here?

@joIivier where in cliEntry.js are you seeing this? Here's mine:
/**
 * Copyright (c) 2015-present, Facebook, Inc.
 * All rights reserved.
 *
 * This source code is licensed under the BSD-style license found in the
 * LICENSE file in the root directory of this source tree. An additional grant
 * of patent rights can be found in the PATENTS file in the same directory.
 *
 * @flow
 */
'use strict';

const Config = require('./util/Config');

const assertRequiredOptions = require('./util/assertRequiredOptions');
const chalk = require('chalk');
const childProcess = require('child_process');
const commander = require('commander');
const commands = require('./commands');
const defaultConfig = require('./default.config');
const init = require('./init/init');
const minimist = require('minimist');
const path = require('path');
const pkg = require('../package.json');

import type {Command} from './commands';
import type {ConfigT} from './util/Config';

commander.version(pkg.version);

const defaultOptParser = (val) => val;

const handleError = (err) => {
  console.error();
  console.error(err.message || err);
  console.error();
  process.exit(1);
};

// Custom printHelpInformation command inspired by internal Commander.js
// one modified to suit our needs
function printHelpInformation() {
  let cmdName = this._name;
  if (this._alias) {
    cmdName = cmdName + '|' + this._alias;
  }

  const sourceInformation = this.pkg
    ? [
      `  ${chalk.bold('Source:')}<EMAIL_ADDRESS>      '',
    ]
    : [];

  let output = [
    '',
    chalk.bold(chalk.cyan((`  react-native ${cmdName} ${this.usage()}`))),
    `  ${this._description}`,
    '',
    ...sourceInformation,
    `  ${chalk.bold('Options:')}`,
    '',
    this.optionHelp().replace(/^/gm, '    '),
    '',
  ];

  if (this.examples && this.examples.length > 0) {
    const formattedUsage = this.examples.map(
      example => `    ${example.desc}: \n    ${chalk.cyan(example.cmd)}`,
    ).join('\n\n');

    output = output.concat([
      chalk.bold('  Example usage:'),
      '',
      formattedUsage,
    ]);
  }

  return output.concat([
    '',
    '',
  ]).join('\n');
}

function printUnknownCommand(cmdName) {
  console.log([
    '',
    cmdName
      ? chalk.red(`  Unrecognized command '${cmdName}'`)
      : chalk.red('  You didn\'t pass any command'),
    `  Run ${chalk.cyan('react-native --help')} to see list of all available commands`,
    '',
  ].join('\n'));
}

const addCommand = (command: Command, config: ConfigT) => {
  const options = command.options || [];

  const cmd = commander
    .command(command.name, undefined, {
      noHelp: !command.description,
    })
    .description(command.description)
    .action(function runAction() {
      const passedOptions = this.opts();
      const argv: Array<string> = Array.from(arguments).slice(0, -1);

      Promise.resolve()
        .then(() => {
          assertRequiredOptions(options, passedOptions);
          return command.func(argv, config, passedOptions);
        })
        .catch(handleError);
    });

    cmd.helpInformation = printHelpInformation.bind(cmd);
    cmd.examples = command.examples;
    cmd.pkg = command.pkg;

  options
    .forEach(opt => cmd.option(
      opt.command,
      opt.description,
      opt.parse || defaultOptParser,
      typeof opt.default === 'function' ? opt.default(config) : opt.default,
    ));

  // Placeholder option for --config, which is parsed before any other option,
  // but needs to be here to avoid "unknown option" errors when specified
  cmd.option('--config [string]', 'Path to the CLI configuration file');
};

function getCliConfig() {
  // Use a lightweight option parser to look up the CLI configuration file,
  // which we need to set up the parser for the other args and options
  const cliArgs = minimist(process.argv.slice(2));

  let cwd;
  let configPath;
  if (cliArgs.config != null) {
    cwd = process.cwd();
    configPath = cliArgs.config;
  } else {
    cwd = __dirname;
    configPath = Config.findConfigPath(cwd);
  }

  return Config.get(cwd, defaultConfig, configPath);
}

function run() {
  const setupEnvScript = /^win/.test(process.platform)
    ? 'setup_env.bat'
    : 'setup_env.sh';

  childProcess.execFileSync(path.join(__dirname, setupEnvScript));

  const config = getCliConfig();
  commands.forEach(cmd => addCommand(cmd, config));

  commander.parse(process.argv);

  const isValidCommand = commands.find(cmd => cmd.name.split(' ')[0] === process.argv[2]);

  if (!isValidCommand) {
    printUnknownCommand(process.argv[2]);
    return;
  }

  if (!commander.args.length) {
    commander.help();
  }
}

module.exports = {
  run: run,
  init: init,
};

@joIivier @ncuillery Made a video showing my struggles lol. Any suggestions here would be greatly appreciated as our current method of upgrading, completely manual, is a total PITA.
https://youtu.be/5BIsXChxAhk

Just tried on a coworkers computer who is in the same repo as us and got the exact same results.

@dwilt change this line: https://github.com/facebook/react-native/blob/master/react-native-git-upgrade/cliEntry.js#L331

Why i can‘t find this line

I discovered that a .patch file containing the diffs exists in $TMPDIR/react-native-git-upgrade/0.40.0_0.42.0.patch.
I took a look at this file, and sure enough, there's all my diffs.
So then I use git apply <path> --reject and it all works fine.
To reiterate:

Inside your working directory, run react-native-git-upgrade
Upon completion, ls $TMPDIR/react-native-git-upgrade -- you'll find your corresponding .patch file
Inside your working directory, run git apply <path to patch> --reject

Having this issue going from .40 to .42.3.  On first try, merge conflicts registered in the proper files.  But subsequent tries yielded no such luck and required the reject flag for any discernible conflict.

What seems to cause this
This issue is reproducible when the diff between the React Native project template files have changed (between your current RN version and the newest RN version) in one of the following ways:

You've already updated a file which got updated by React Native

Most commonly found with Gradle version numbers in Android projects, where Android Studio will update this for you.
Say React Native has upgraded Gradle from 1.3.1 to 2.2.3, but you're already on 2.3.3. The patch will fail since it can't find the line with the gradle version as 1.3.1

There is a line removed in the RN template files which is not found in your project

Say they removed a commented line, but you had previously already removed it from your project file. It will fail since it cannot delete a line that's not there.

The core issue
As others have identified, the upgrade process creates a patch file, then tries to apply the patch. When it tries to apply a --3way patch, it will fail if it encounters any errors such as those above ☝. Unfortunately, it reverses the whole patch when a 3-way patch fails to apply.
If you change the git strategy for applying the patch from --3way to --reject, it will allow your changes to go through, then you just have to resolve and remove the .rej files where it had errored out. You can either do this after it fails using the patch file @ajwhite found, or change the cliEntry.js directly as described in the PR description.
@sibelius and @whk1459086640, you should be looking for cliEntry.js inside the react-native-git-upgrade node_modules directory, found where NPM (globally) installed react-native-git-upgrade.

If you change the git strategy for applying the patch from --3way to --reject, it will allow your changes to go through, then you just have to resolve and remove the .rej files where it had errored out. You can either do this after it fails using the patch file @ajwhite found, or change the cliEntry.js directly as described in the PR description.

Upgrading shouldn't require finding a hidden temp file or editing a library file. The simplest workaround would probably be adding a cli argument to react-native-git-upgrade that will make the git command use --reject instead of --3way.

It seems like the patch should be agnostic as to the state of the thing needing to be upgrade, e.g. it should look to patch a version without caring about what the version number ought to have been previously.  This is especially the case because both Android Studio and Xcode will upgrade native config stuff as needed.

Running into this same problem on mac upgrading from react-native 0.43.3 to v0.44.3
git-upgrade info Install the new version
git-upgrade info Generate new version template
git-upgrade info Add updated files to commit
warning: CRLF will be replaced by LF in android/gradlew.bat.
The file will have its original line endings in your working directory.
git-upgrade info Commit new version template
git-upgrade info Generate the patch between the 2 versions
git-upgrade info Save the patch in temp directory
git-upgrade info Reset the 2 temporary commits
git-upgrade info Apply the patch
error: patch failed: .babelrc:1
Falling back to three-way merge...
Applied patch to '.babelrc' with conflicts.
error: patch failed: ios/pocket.xcodeproj/project.pbxproj:1196
Falling back to three-way merge...
Applied patch to 'ios/pocket.xcodeproj/project.pbxproj' with conflicts.
error: ios/pocketTests/pocketTests.m: does not exist in index

When running a git status only the gradle windows file is changed:
✗ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

	modified:   android/gradlew.bat

no changes added to commit (use "git add" and/or "git commit -a")

Hi there! This issue is being closed because it has been inactive for a while. Maybe the issue has been fixed in a recent release, or perhaps it is not affecting a lot of people. Either way, we're automatically closing issues after a period of inactivity. Please do not take it personally!
If you think this issue should definitely remain open, please let us know. The following information is helpful when it comes to determining if the issue should be re-opened:

Does the issue still reproduce on the latest release candidate? Post a comment with the version you tested.
If so, is there any information missing from the bug report? Post a comment with all the information required by the issue template.
Is there a pull request that addresses this issue? Post a comment with the PR number so we can follow up.

If you would like to work on a patch to fix the issue, contributions are very welcome! Read through the contribution guide, and feel free to hop into #react-native if you need help planning your contribution.

This issue still persists

https://github.com/facebook/react-native/compare/master...enthal:patch-1

Looks like this issue will be fixed (via more helpful error message) when 4fbd244b9a6b62e0efe1b4b5a7ec3de468f020f6 is released

still happening

This is fixed in 4fbd244b9a6b62e0efe1b4b5a7ec3de468f020f6


Use GitHub API for fetching diffs

This allows users who just use the alwaysNotifyForPaths feature to
avoid setting a GitHub password.

Omg, thanks for doing this!


fix: do not trust builder when using podman

Signed-off-by: Matej Vasek<EMAIL_ADDRESS>

@jrangelramos this also should fix the issues with podman but in a different way than https://github.com/containers/podman/pull/10905, this should disable trust to builder, just until fix is in official podman release.

@lance shall I merge this or wait for CI fix?

@matejvasek unit tests pass. I think it's okay


ISSUE-73: Improved parser for cmdline parameters

For #73 - Adding a more advanced parser to allow handling more complex cmdline parameters. This is based more on a 1 rune parse state machine style design, it iterates over each rune and makes a decision on what to do, copy/exit/change modes. Tried to leave enough comments to make it less confusing.

This can split apart on any whitespace (null bytes, newlines, carriage returns,tabs, spaces)
Quotes are handled and stripped from the strings
Escaping quotes (or other chars) will copy them through
Keys can't have an =, but values can get = chars in
Whitespace is generally cleaned up

The design is around a single key/value enumeration approach, so it can be called until everything is processed. It handles some bad conditions ok, other things it might choke on. Worst case it outputs a bad chunk of data as the final result if the input is horribly out of spec/mangled. It generates new strings for each key/value it reads, using += assembly so not the best, but its a one shot deal so shouldn't be a huge deal.
I did not clean up some of the other code that could probably be removed by using this (such as the strip quotes in luks uuid, I believe this will allow that to be avoided as the quotes are removed through this.
I used the following string as test:
"    key=value   param=test=true param=\"test=true\"   test=tr\\\000ue double=equals=true \"param=tr ue\" \"param=yes\" param2=\"also yes\" quotes=\"escaped\\\"ooh\" ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us\nLANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16\nrd_LVM_LV=VolGroup/lv_root rd_NO_DM rhgb quiet selinux=0"

Results: [ next token start, 'key parsed', 'value parsed' ]
        14      'key' = 'value'
        32      'param' = 'test=true'
        50      'param' = 'test=true'
        64      'test' = 'true'
        83      'double' = 'equals=true'
        97      'param' = 'tr ue'
        109     'param' = 'yes'
        127     'param2' = 'also yes'
        149     'quotes' = 'escaped"ooh'
        152     'ro' = ''
        186     'root' = '/dev/mapper/VolGroup-lv_root'
        197     'rd_NO_LUKS' = ''
        213     'KEYBOARDTYPE' = 'pc'
        225     'KEYTABLE' = 'us'
        242     'LANG' = 'en_US.UTF-8'
        251     'rd_NO_MD' = ''
        278     'rd_LVM_LV' = 'VolGroup/lv_swap'
        304     'SYSFONT' = 'latarcyrheb-sun16'
        340     'rd_NO_DM' = ''VolGroup/lv_root'
        345     'rhgb' = ''
        351     'quiet' = ''
        360     'selinux' = '0'

Thank you for this change! It looks great.

This can split apart on any whitespace (null bytes, newlines, carriage returns,tabs, spaces)
Quotes are handled and stripped from the strings
Escaping quotes (or other chars) will copy them through
Keys can't have an =, but values can get = chars in
Whitespace is generally cleaned up

Could you please add unit tests for these ^^ cases?

Worst case it outputs a bad chunk of data as the final result if the input is horribly out of spec/mangled.

And for this as well. Basically, we want as full unit test coverage as possible to handle future code changes smoother.

I added test cases to cover most examples of how the parser works, it has no error handling other than to try its best to recover. Garbage in, garbage out, wasn't sure if there would be a desire to throw any errors or not, could probably at least add warnings that unexpected characters were encountered perhaps.

could probably at least add warnings that unexpected characters were encountered perhaps.

Yeah, I think it is a good idea. If the command line does not parse correctly, then post a warning(). The message will go to the kernel logs, and it will help the user figure out what is going on with the system.

I see that your commits have author set to<EMAIL_ADDRESS>Do you want to set some real email instead?

One more suggestion is to use gofumpt -l -w . formatter that applies stricter formatting rules and used by booster. I ran this formatter locally for your change but it is a good idea to use it for your changes in the future.

Otherwise the change looks good and I would like to apply it to master. @jacobmyers-codeninja do you have anything to add to this PR?

I see that your commits have author set to<EMAIL_ADDRESS>Do you want to set some real email instead?

Unfortunately I already get way too much junk to my accounts for email to even be a good contact option, so I just use the github standin. It links to my github account which people are free to contact me though and allows me to easily keep the github alert mails sorted.

One more suggestion is to use gofumpt -l -w . formatter that applies stricter formatting rules and used by booster. I ran this formatter locally for your change but it is a good idea to use it for your changes in the future.

I forgot to run code cleanup, but it looks like it was just removing the redundant test{} declarations since the type info was known in advance. I only have my windows machine available for a while, when I try to run the go formatter it changes all the line endings and produces a commit with every file changed :(

Otherwise the change looks good and I would like to apply it to master. @jacobmyers-codeninja do you have anything to add to this PR?

I don't see any immediate cause for concern with anything, its as well put together as my primitive go understanding allows :) - I am intending to eventually use this for some servers I am migrating to void when I get everything relocated and running and I need luks keyfile support to make it happen. I figured this looked like something I could take a stab at to get acquainted with to experiment with that PR more as well.
I should have actual equipment to do more testing with in a few weeks.

I managed to get git and gofmt to behave with each other so ran it through gofmt! \o/

I managed to get git and gofmt to behave with each other so ran it through gofmt! \o/

I suggest you to check https://github.com/mvdan/gofumpt - it is a stricter version of gofmt from other of the go developers. booster uses it for formatting.

This PR has been squashed and merged master as fad77ecb30fa7fa37848748e6a93c6a1746fd912. Thank you for your work @jacobmyers-codeninja !


Fix for Issue #235

This project uses semver, please check the scope of this pr:

[x] #patch# - backwards-compatible bug fix
[ ] #minor# - adding functionality in a backwards-compatible manner
[ ] #major# - incompatible API change

CHANGELOG
Fix for Issue #235

👍


Provide a way to opt-out from preview flight

Description of the new feature / enhancement
Many months ago, I signed up for the preview flight of winget via the link in the README here in the repo. At this point I no longer want to be part of the preview flight, but instead get the same version of everything that "normal" users get that haven't signed up.  I would like to have some way to opt-out from the preview flight.
Proposed technical implementation details
Maybe just another web form where I can submit my MSA email address to be removed from the preview flight?

Duplicate of https://github.com/microsoft/winget-cli/discussions/866#discussioncomment-611421.

Duplicate of https://github.com/microsoft/winget-cli/discussions/866.

Duplicate of #866


Update karabiner-elements to 11.1.0

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} reports no offenses.
[x] The commit message includes the cask’s name and version.

Travis fails because of uninstall issue


No HTTP/2 on twemoji.maxcdn.com

Especially on pages with a lot of emoji it would help load times with H2 enabled on the MaxCDN mirror.

Not sure who to ping about this ... @bhaggs any idea?

HTTP/2 is available on MaxCDN if you're using HTTPS: https://www.maxcdn.com/one/tutorial/enable-http2/

https is also the default since quite a while. @Nektro please double check you are using latest with folder /2/

That says, protocol http/1.1
Are you including latest library?

Scratch that, actually I see http/1.1 too even on latest.
Reopening until proof it's on http2 when in https

So ... AFAIK I've just enabled it. Will double check tomorrow if that's the case but there's nothing else I can do in MaxCDN settings (beside enabling it)
Maybe just a propagation/cache issue, I'm sure by tomorrow it'll be fine.

All good on my end 👍👍


End-user/consumer dashboard/profile

User story
As an API consumer,
I would like a dashboard/profile where I can manage my details
So that I can view my API usage and recover my key.
Planning
There is an API Consumer Dashboard planning document on the API Umbrella wiki.
Support this issue
Financial supporters:

Is this something currently in the works or a longer term roadmap item? This is functionality that we require as well at the moment. Would you see this as part of api-umbrella-web or as a new web app?

I set up a Bountysource page to support this issue financially.

I was more thinking of contributing rather than funding it. I just wanted to make sure that it wasn't already in progress and I also want to make sure however we implement it fits in with your vision of the overall architecture. Thanks.

Cool. I am not the main developer.
We were just talking in our organization about contributing to the project financially, so had already set up the Bountysource page. Your post reminded me to submit the link to this issue is all :-)

Got it. Based on your bounties, it sounds like we have similar ideas for how to use the platform.

I have backed this with Bounty on https://www.bountysource.com/issues/7554569-end-user-consumer-dashboard-profile

@GUI We are going to need to develop something within the next couple months to provide at least a basic end user portal. I would prefer if we were able to contribute back what we developed to the project, so I was hoping to get your view on how you saw this fitting in. I am seeing this as an extension to the existing web project.
The scope we have in mind is:

registration process, which may or may not require approval for access to the API (dependent on config)
logins for registered users (likely same login mechanism as admins but consumer role)
one or more API keys tied to a registered user, with the ability to fully see the keys owned
optional closed-access documentation site
usage information for owned API keys (future)

p.s. We're preparing some feedback on your proposed new architecture. I only stumbled upon the issue tonight. Maybe a link from the project readme could garner more attention to the proposal? Thanks!

@darylrobbins Sorry for the delay in following up. We'd be happy to accept contributions regarding user registration or profile functionality. I have some loose ideas for now I've personally thought about implementing this feature, but everything you outlined sounds good and in a similar direction to what I've been thinking. There are probably some technical considerations with some of these items (like how a user with multiple keys is handled by the gatekeeper component, or how closed documentation works with our current model of treating documentation as an external static website repo), but this all sounds like the right direction.
I'd say our only real requirement on our end is that we do have to maintain our current signup approach for api.data.gov (which is what currently happens in API Umbrella, where we don't verify e-mail addresses and we don't have much of a concept of an account). But I think we are potentially interested in having more of a real account option either as an alternative or in tandem to our current approach. So I think we somehow need to support both signup models with API Umbrella, which I realize adds unfortunate complexity. However, if you'd prefer to fork and focus on the new functionality right now, I could try to lend a hand in making sure we can support both signup models at a later date.
So let me know how I can help or be of assistance. If you're comfortable with the code-base, you're certainly more than welcome to dive in and get started. But I also realize our documentation isn't great in areas, so I can certainly try to answer any questions you might have here. Alternatively, if it would be helpful, we could hop on a call sometime to chat through some of this in more detail.
Thanks!

@GUI Thanks for all your support, Nick.
In the end solution, I'm seeing three basic access models:

Fully open - sign up with an email/password and get an API key for full access. Log back in with your profile to get your API key again. (hopefully meeting your requirements)
Semi open - sign up with an email/password and purpose of request but you can't do or see anything until the admin approves your application
2a) More semi open - unapproved accounts have basic sandbox access to the environment. Hopefully, we can model this as a special case of 2.
Fully closed - accounts can only be created by admins; once they are created, login information is communicated to the registered email

Multiple API keys per account is definitely where things start to get interesting. Can a user split their entitlements into multiple keys or does an admin have to do it? Do they all have the same account id? What does each key represent? Different environments or different web properties/sources? At present, API umbrella doesn't really seem to support using common infrastructure for multiple environments (i.e. production, test).
Preferably, we would like to offer some degree of customizability of the admin/developer portal without the need for building your own package.
Closed documentation definitely adds some challenges to the process.
As you hint at, in an ideal world, we could deliver something as flexible as I just described. In reality, we may need to start somewhere and fork accordingly, iterating to bring the two together.
My team and I are definitely willing to invest some effort to build something that can be folded back into the project, but there are always going to be conflicting practical limitations.
At present, in our independent project, we have closed documentation generated from a RAML file and a fancy display of a single API key per account.
Let's look at having a call late next week or early the following week to go over architecture and high-level design of how we integrate a developer portal into the current code base. I have a development environment partially working, so I may ping you on a couple issues relating to getting that up and going. Vagrant is starting the chef provisioning process but it's failing part way through right now. In terms of scheduling, I'm guessing you are also located in the Eastern Timezone?

@darylrobbins: Sounds good. If you run into development setup issues, feel free to file issues or reach out. And if you want to have a call to discuss any of this in more detail, you're welcome to get in touch. In terms of scheduling, I'm actually in the Mountain timezone (if you want to schedule stuff, you can contact me directly at<EMAIL_ADDRESS>Oh, and one little side tidbit:

At present, API umbrella doesn't really seem to support using common infrastructure for multiple environments (i.e. production, test).

I might be misunderstanding you, but I think we may support this. If you want to proxy your development/staging/production APIs through a single API Umbrella instance, that is possible. You can do so, by having API Umbrella listen on multiple hosts or different paths to distinguish and route your staging vs production API traffic differently. However, if you mean something else, let me know.

Hey all, just threading together a few issues that may be related to dashboard development

RAML Support (#47)
API Docs Section (#55)
Available APIs listing (#53)

Unfortunately, it's looking like we aren't going to be able to work on the end-user dashboard as soon as we had hoped. Our web developer has accepted a position at another company, so I no longer have the resources available to develop this functionality until we are able to backfill and ramp up the new developer.

Hey all, what are some ideas you would like to see as components on the end-user (consumer) API Dashboard? We are planning to mock-up the API Dashboard, so your thoughts are really important! :-)
Also, lets try to keep the topic focused to Dashboard features, and add notes to other features on corresponding issues.

We need to also keep in mind that there are some paid APIs and the details of the payment also need to be displayed on the dashboard. For example my paid is been accessed 100 times today so I earn $X.

I added an API Consumer Dashboard planning document to the API Umbrella wiki. @GUI and @darylrobbins will you please help describe the desired functionality?

Here is my first attempt, these are just wireframes of a consumer dashboard page.

[1] Sortable/resizable boxes with different type/view of statistics on selected API. By default it shows statistics of first API on user's list.
[2] By clicking on button a panel slides down with available analytical tools, [3] which by drag&drop user can add to the page.
[4] By clicking on button modal window opens with the user’s API keys list. [5] User can copy selected key or [6] see a statistics on a selected API.
[7] Shows brief info of a user (e.g., Settings, Log out, user’s name, avatar, edit profile) [8] by clicking on a Settings/Edit Profile opens a modal with all settings/options/fields user can modify.

@GUI can you weigh in on this design? @darylrobbins do you have any design documents that we could use as reference for this task? We would like to contribute to the development efforts for this functionality.

Please help us out by contributing to the API dashboard design document

Apologies for the delay in responding. From a design perspective, I unfortunately don't have a ton to contribute, but I think these wireframes look good.
From my own perspective, the main thing I'd like to see is that the dashboard be API driven so that it's somewhat easy to build other interfaces or embed the dashboard on multiple sites. However, this is admittedly just because I'm thinking about our api.data.gov use-case where we allow individual agencies to embed and tailor the tools around their own existing developer portal sites. But that's just me and our rather specific use-case, so I wouldn't feel like you have to worry about implementing it in that way for your own implementation.
And if you are planning to dive into the development, definitely feel free to give me a shout if you'd ever like to chat about this in more detail or if I can be of any assistance in getting oriented in the code-base.
Thanks!

We are currently working on a spec, with the expectation to develop this feature. That said, we definitely need guidance writing the spec, so that it aligns with API Umbrella trajectory. To this end, I created the design document to help capture the specification for the dashboard.

Sorry for the delay. Unfortunately, we weren't able to get to a design document before our web developer moved to a new gig. This has left us quite understaffed, so I have been quite busy on other part of our architecture.
Here are some of the main factors that we identified from memory:
Signup Process

Open - anyone can signup and start using the API
Closed - only admins can create users
Approval - anyone can signup but they can't do anything until they are approved by an admin

Closed Documentation
Some installs may want to offer closed documentation, only to registered users (i.e. us).
API Tokens
Break the link between API User and API Token. It would make sense for a single user to have multiple API Tokens and for multiple API Users to share a single token (i.e. an entire team).
A user may want different tokens for each of their websites and/or for different environments (production/staging).
The question then becomes, how does a user get a new API key? Do we keep things simple and they get one when they registered (or are approved) and then an admin can assign more?
At least the administrator should be able to regenerate a key (and possibly a user).
Users should be able to see their API keys as well in the console.
Statistics
It would be nice if the user could have access to the same statistics as the admin, but constrained to their API keys.
Dashboard
It would be nice if there was a dashboard or an help page or something as the home page when one logs into the dashboard -- instead of the current blank page.
That's all I remember at the moment, but I will be sure to add anything else if I think of it. Thanks!

So, as a supplement, however as a main point try this amazing free app. Createer.com is an online software for easily designing online ads, responsive landing pages and print materials such as flyers, posters, covers, invitations and more. Createer lets you easily share your designs on social media, send them via email, download as HTML, image or PDF. You can even design UI mockups for mobile as for standard display (html, js, css always generating without any coding required from you). Createer also includes 3,000 predesigned templates (browse here: https://beta2.createer.com/Templates?ghi) and over 250,000 images (illustrations, photos and icons) to work with in its user-friendly drag’n’drop enviroment.  If you will, please help us test the beta project, and feel free to add feature requests, bug reports, etc. for anything needed.


assumes vagrant plugin-reload exists

I got this error:
$ vagrant up dc --provider virtualbox
Bringing machine 'dc' up with 'virtualbox' provider...
There are errors in the configuration of this machine. Please fix
the following errors and try again:
vm:

The 'reload' provisioner could not be found.

To fix:
vagrant plugin install vagrant-reload

Thanks @mkinney. Fixed with https://github.com/StefanScherer/adfs2/commit/1964264fb424853ec292e7f5800c76414bcdce0d


Create grid docs page

Our grid is built on the bootstrap grid.
However, there are significant differences that are not documented anywhere and only become apparent in the code.
These differences need to be documented.
Consider the following files and their dependencies:

styles/src/components/grid.scss

styles/src/layouts/portal/_variables.scss

[ ] update link on text utility page, which links to this page

duplicates #1048

Closed as duplicate


Implement keyword-only or **kwargs handling for numba.extending.overload

I would like to write an extension that (1) only accepts keyword arguments and (2) returns a different type, depending on the values of those arguments. I had more success with this using the high-level numba.extending.overload decorator than the low-level numba.extending.type_callable, so I'll report the high-level attempts here.
The extended function f should look like the following in user code (in a numba.njit-decorated function).
f(x=1)       # returns one type
f(y=1)       # returns a different type
f()          # complains about missing x or y
f(1)         # complains about passing argument by position

There's a NumPy function that's a little similar: the values of np.unique's keyword arguments change the type of its output, but that hasn't been implemented in Numba yet.

If I implement an overload with a keyword-only argument, like *, x=None, y=None, the error message is

Rejected as the implementation raised a specific error:
   IndexError: tuple index out of range
raised from /.../numba/core/typing/templates.py:214

which is still line 214 in the current master (I checked surrounding context).

If I implement an overload with arbitrary **kwargs (to try to do the same thing by inspecting the dict in the typing pass, obviously not in lowered code), the error message is

Rejected as the implementation raised a specific error:
   InternalError: The use of VAR_KEYWORD (e.g. **kwargs) is unsupported. (offending argument name is '**kwargs')
raised from .../numba/core/typing/templates.py:532

which is still line 532.
Here's a work-around that I'll be using to get my desired behavior, though it's not ideal:
@numba.extending.overload(f)
def f(
    fake_argument_to_make_the_rest_effectively_keyword_only=None,
    x=None,
    y=None,
):
    # If anything is passed in the first argument, including None, the following fails because
    # the value of this argument becomes the *type* (i.e. a NoneType instance, not None).
    if fake_argument_to_make_the_rest_effectively_keyword_only is not None:
        raise numba.TypingError("positional arguments are not allowed")

    if x is not None:
        def f_impl(
            fake_argument_to_make_the_rest_effectively_keyword_only=None,
            x=None,
            y=None,
        ):
            return 1   # one type

        return f_impl

    elif y is not None:
        def f_impl(
            fake_argument_to_make_the_rest_effectively_keyword_only=None,
            x=None,
            y=None,
        ):
            return numpy.array([1, 2, 3])   # a different type

        return f_impl

    else:
        raise numba.TypingError("either 'x' or 'y' keywords must be supplied")

Thanks for reporting this and writing it up @jpivarski, I'm going to propose this for discussion at the next public meeting. **kwargs is hard but I think doable given the heterogeneous literal-str-key dict support https://numba.readthedocs.io/en/stable/reference/pysupported.html#heterogeneous-literal-string-key-dictionary. The issues with kw-only need discussion and working out.

(I wasn't suggesting that the lowered code should be able to deal with arbitrary dict kwargs, though I suppose that's what someone might expect if it's accepted at the typing layer.)

I'm going to propose this for discussion at the next public meeting.

Minutes of the meeting during which the discussion was held are at: https://github.com/numba/numba/wiki/Minutes_2021_03_23


not work - linux traffic stoped, today

Version
v0.12.0
Operating System
Linux Mint
How are you running SpoofDPI?
/usr/local/bin/spoofdpi -addr <IP_ADDRESS> -port 3128 -enable-doh -dns-addr <IP_ADDRESS>
Description
today stop working
yerstoday is fine

@7dir Attach logs please

YouTube also doesn't open

Can't open YT. I use Firefox, spoof-dpi v0.10.11, default dns and port, window-size 1, here are the logs from debug true:
2024-09-19T17:09:47+09:00 INF [PROXY] created a listener on port 8080
2024-09-19T17:09:49+09:00 DBG [PROXY] request from <IP_ADDRESS>:59886

CONNECT www.youtube.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: www.youtube.com:443

2024-09-19T17:09:49+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [DNS] resolving www.youtube.com using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:09:49+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [DNS] resolved <IP_ADDRESS> from www.youtube.com in 126 ms
2024-09-19T17:09:49+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] new connection to the server <IP_ADDRESS>:40080 -> www.youtube.com
2024-09-19T17:09:49+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] sent connection estabalished to <IP_ADDRESS>:59886
2024-09-19T17:09:49+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] client sent hello 663 bytes
2024-09-19T17:09:49+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] writing chunked client hello to www.youtube.com
2024-09-19T17:09:49+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] window-size: 1
2024-09-19T17:09:50+09:00 DBG [PROXY] request from <IP_ADDRESS>:59898

CONNECT incoming.telemetry.mozilla.org:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: incoming.telemetry.mozilla.org:443

2024-09-19T17:09:50+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [DNS] resolving incoming.telemetry.mozilla.org using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:09:50+09:00 DBG [PROXY] request from <IP_ADDRESS>:59914

CONNECT mozilla.cloudflare-dns.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: mozilla.cloudflare-dns.com:443

2024-09-19T17:09:50+09:00 DBG c66ba295-e399544c-762f4679-08ea1a51 [DNS] resolving mozilla.cloudflare-dns.com using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:09:50+09:00 DBG [PROXY] request from <IP_ADDRESS>:59916

CONNECT i.ytimg.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: i.ytimg.com:443

2024-09-19T17:09:50+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [DNS] resolving i.ytimg.com using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:09:50+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [DNS] resolved <IP_ADDRESS> from incoming.telemetry.mozilla.org in 115 ms
2024-09-19T17:09:50+09:00 DBG c66ba295-e399544c-762f4679-08ea1a51 [DNS] resolved <IP_ADDRESS> from mozilla.cloudflare-dns.com in 129 ms
2024-09-19T17:09:50+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [DNS] resolved <IP_ADDRESS> from i.ytimg.com in 121 ms
2024-09-19T17:09:50+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] new connection to the server <IP_ADDRESS>:39360 -> incoming.telemetry.mozilla.org
2024-09-19T17:09:50+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] sent connection estabalished to <IP_ADDRESS>:59898
2024-09-19T17:09:50+09:00 DBG c66ba295-e399544c-762f4679-08ea1a51 [HTTPS] new connection to the server <IP_ADDRESS>:42426 -> mozilla.cloudflare-dns.com
2024-09-19T17:09:50+09:00 DBG c66ba295-e399544c-762f4679-08ea1a51 [HTTPS] sent connection estabalished to <IP_ADDRESS>:59914
2024-09-19T17:09:50+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] client sent hello 1254 bytes
2024-09-19T17:09:50+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] writing chunked client hello to incoming.telemetry.mozilla.org
2024-09-19T17:09:50+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] window-size: 1
2024-09-19T17:09:50+09:00 DBG c66ba295-e399544c-762f4679-08ea1a51 [HTTPS] client sent hello 674 bytes
2024-09-19T17:09:50+09:00 DBG c66ba295-e399544c-762f4679-08ea1a51 [HTTPS] writing chunked client hello to mozilla.cloudflare-dns.com
2024-09-19T17:09:50+09:00 DBG c66ba295-e399544c-762f4679-08ea1a51 [HTTPS] window-size: 1
2024-09-19T17:09:50+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] new connection to the server <IP_ADDRESS>:53808 -> i.ytimg.com
2024-09-19T17:09:50+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] sent connection estabalished to <IP_ADDRESS>:59916
2024-09-19T17:09:50+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] client sent hello 659 bytes
2024-09-19T17:09:50+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] writing chunked client hello to i.ytimg.com
2024-09-19T17:09:50+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] window-size: 1
2024-09-19T17:09:50+09:00 DBG [PROXY] request from <IP_ADDRESS>:59926

POST http://o.pki.goog/wr2 HTTP/1.1
Host: o.pki.goog
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Accept: */*
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Priority: u=4
Pragma: no-cache
Cache-Control: no-cache

0Q0O0M0K0I0	+�SBԄ����Mw|�#1{5��y�>7$�!��49mB�0{)hL�I��S��ݲb
2024-09-19T17:09:50+09:00 DBG 038450d1-57db76ec-ed2e2300-27d755bd [DNS] resolving o.pki.goog using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:09:51+09:00 DBG 038450d1-57db76ec-ed2e2300-27d755bd [DNS] resolved <IP_ADDRESS> from o.pki.goog in 121 ms
2024-09-19T17:09:51+09:00 DBG 038450d1-57db76ec-ed2e2300-27d755bd [HTTP] new connection to the server <IP_ADDRESS>:44982 -> o.pki.goog
2024-09-19T17:09:51+09:00 DBG 038450d1-57db76ec-ed2e2300-27d755bd [HTTP] sent a request to o.pki.goog
2024-09-19T17:09:51+09:00 DBG 038450d1-57db76ec-ed2e2300-27d755bd [HTTP] finished reading from o.pki.goog
2024-09-19T17:09:51+09:00 DBG 038450d1-57db76ec-ed2e2300-27d755bd [HTTP] error reading from <IP_ADDRESS>:59926: read tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:59926: use of closed network connection
2024-09-19T17:09:51+09:00 DBG 038450d1-57db76ec-ed2e2300-27d755bd [HTTP] closing proxy connection: o.pki.goog -> <IP_ADDRESS>:59926
2024-09-19T17:09:51+09:00 DBG 038450d1-57db76ec-ed2e2300-27d755bd [HTTP] closing proxy connection: <IP_ADDRESS>:59926 -> o.pki.goog
2024-09-19T17:10:06+09:00 DBG [PROXY] request from <IP_ADDRESS>:37860

CONNECT push.services.mozilla.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: push.services.mozilla.com:443

2024-09-19T17:10:06+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [DNS] resolving push.services.mozilla.com using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:10:06+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [DNS] resolved <IP_ADDRESS> from push.services.mozilla.com in 117 ms
2024-09-19T17:10:06+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] new connection to the server <IP_ADDRESS>:38802 -> push.services.mozilla.com
2024-09-19T17:10:06+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] sent connection estabalished to <IP_ADDRESS>:37860
2024-09-19T17:10:06+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] client sent hello 673 bytes
2024-09-19T17:10:06+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] writing chunked client hello to push.services.mozilla.com
2024-09-19T17:10:06+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] window-size: 1
2024-09-19T17:10:07+09:00 DBG [PROXY] request from <IP_ADDRESS>:37862

CONNECT push.services.mozilla.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: push.services.mozilla.com:443

2024-09-19T17:10:07+09:00 DBG ef8e6981-bf8b749e-1f9e4d22-d82c6595 [DNS] resolving push.services.mozilla.com using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:10:07+09:00 DBG ef8e6981-bf8b749e-1f9e4d22-d82c6595 [DNS] resolved <IP_ADDRESS> from push.services.mozilla.com in 384 ms
2024-09-19T17:10:07+09:00 DBG ef8e6981-bf8b749e-1f9e4d22-d82c6595 [HTTPS] new connection to the server <IP_ADDRESS>:38818 -> push.services.mozilla.com
2024-09-19T17:10:07+09:00 DBG ef8e6981-bf8b749e-1f9e4d22-d82c6595 [HTTPS] sent connection estabalished to <IP_ADDRESS>:37862
2024-09-19T17:10:07+09:00 DBG ef8e6981-bf8b749e-1f9e4d22-d82c6595 [HTTPS] error reading client hello from <IP_ADDRESS>:37862: EOF
2024-09-19T17:10:50+09:00 DBG [PROXY] request from <IP_ADDRESS>:59968

CONNECT push.services.mozilla.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: push.services.mozilla.com:443

2024-09-19T17:10:50+09:00 DBG faa31b11-71167441-44721655-a13c807f [DNS] resolving push.services.mozilla.com using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:10:50+09:00 DBG faa31b11-71167441-44721655-a13c807f [DNS] resolved <IP_ADDRESS> from push.services.mozilla.com in 328 ms
2024-09-19T17:10:51+09:00 DBG faa31b11-71167441-44721655-a13c807f [HTTPS] new connection to the server <IP_ADDRESS>:38528 -> push.services.mozilla.com
2024-09-19T17:10:51+09:00 DBG faa31b11-71167441-44721655-a13c807f [HTTPS] sent connection estabalished to <IP_ADDRESS>:59968
2024-09-19T17:10:51+09:00 DBG faa31b11-71167441-44721655-a13c807f [HTTPS] client sent hello 670 bytes
2024-09-19T17:10:51+09:00 DBG faa31b11-71167441-44721655-a13c807f [HTTPS] writing chunked client hello to push.services.mozilla.com
2024-09-19T17:10:51+09:00 DBG faa31b11-71167441-44721655-a13c807f [HTTPS] window-size: 1
2024-09-19T17:11:39+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] finished reading from <IP_ADDRESS>:59886
2024-09-19T17:11:39+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] error reading from www.youtube.com: read tcp <IP_ADDRESS>:40080-><IP_ADDRESS>:443: use of closed network connection
2024-09-19T17:11:39+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] closing proxy connection: <IP_ADDRESS>:59886 -> www.youtube.com
2024-09-19T17:11:39+09:00 DBG c5d9f335-be197ea0-78ba23f8-69ddac7a [HTTPS] closing proxy connection: www.youtube.com -> <IP_ADDRESS>:59886
2024-09-19T17:12:41+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] finished reading from <IP_ADDRESS>:59898
2024-09-19T17:12:41+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] error reading from incoming.telemetry.mozilla.org: read tcp <IP_ADDRESS>:39360-><IP_ADDRESS>:443: use of closed network connection
2024-09-19T17:12:41+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] closing proxy connection: incoming.telemetry.mozilla.org -> <IP_ADDRESS>:59898
2024-09-19T17:12:41+09:00 DBG 77516dd5-8a934515-49e6ed92-f8492675 [HTTPS] closing proxy connection: <IP_ADDRESS>:59898 -> incoming.telemetry.mozilla.org
2024-09-19T17:12:45+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] finished reading from <IP_ADDRESS>:59916
2024-09-19T17:12:45+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] error reading from i.ytimg.com: read tcp <IP_ADDRESS>:53808-><IP_ADDRESS>:443: use of closed network connection
2024-09-19T17:12:45+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] closing proxy connection: i.ytimg.com -> <IP_ADDRESS>:59916
2024-09-19T17:12:45+09:00 DBG 19a9d42a-eede8971-de3c8393-8461dcd7 [HTTPS] closing proxy connection: <IP_ADDRESS>:59916 -> i.ytimg.com
2024-09-19T17:12:54+09:00 DBG [PROXY] request from <IP_ADDRESS>:39688

CONNECT www.youtube.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: www.youtube.com:443

2024-09-19T17:12:54+09:00 DBG a34c397f-8512f275-35ede8e6-5e064253 [DNS] resolving www.youtube.com using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:12:54+09:00 DBG a34c397f-8512f275-35ede8e6-5e064253 [DNS] resolved <IP_ADDRESS> from www.youtube.com in 124 ms
2024-09-19T17:12:54+09:00 DBG a34c397f-8512f275-35ede8e6-5e064253 [HTTPS] new connection to the server <IP_ADDRESS>:46322 -> www.youtube.com
2024-09-19T17:12:54+09:00 DBG a34c397f-8512f275-35ede8e6-5e064253 [HTTPS] sent connection estabalished to <IP_ADDRESS>:39688
2024-09-19T17:12:54+09:00 DBG a34c397f-8512f275-35ede8e6-5e064253 [HTTPS] client sent hello 1229 bytes
2024-09-19T17:12:54+09:00 DBG a34c397f-8512f275-35ede8e6-5e064253 [HTTPS] writing chunked client hello to www.youtube.com
2024-09-19T17:12:54+09:00 DBG a34c397f-8512f275-35ede8e6-5e064253 [HTTPS] window-size: 1
2024-09-19T17:12:55+09:00 DBG [PROXY] request from <IP_ADDRESS>:39690

CONNECT i.ytimg.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:126.0) Gecko/20100101 Firefox/126.0
Proxy-Connection: keep-alive
Connection: keep-alive
Host: i.ytimg.com:443

2024-09-19T17:12:55+09:00 DBG 37e58041-b3fe8da3-b6815464-8c9443cb [DNS] resolving i.ytimg.com using general resolver(<IP_ADDRESS>:53)
2024-09-19T17:12:55+09:00 DBG 37e58041-b3fe8da3-b6815464-8c9443cb [DNS] resolved <IP_ADDRESS> from i.ytimg.com in 118 ms
2024-09-19T17:12:56+09:00 DBG 37e58041-b3fe8da3-b6815464-8c9443cb [HTTPS] new connection to the server <IP_ADDRESS>:51162 -> i.ytimg.com
2024-09-19T17:12:56+09:00 DBG 37e58041-b3fe8da3-b6815464-8c9443cb [HTTPS] sent connection estabalished to <IP_ADDRESS>:39690
2024-09-19T17:12:56+09:00 DBG 37e58041-b3fe8da3-b6815464-8c9443cb [HTTPS] client sent hello 1225 bytes
2024-09-19T17:12:56+09:00 DBG 37e58041-b3fe8da3-b6815464-8c9443cb [HTTPS] writing chunked client hello to i.ytimg.com
2024-09-19T17:12:56+09:00 DBG 37e58041-b3fe8da3-b6815464-8c9443cb [HTTPS] window-size: 1
2024-09-19T17:12:57+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] finished reading from <IP_ADDRESS>:37860
2024-09-19T17:12:57+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] error reading from push.services.mozilla.com: read tcp <IP_ADDRESS>:38802-><IP_ADDRESS>:443: use of closed network connection
2024-09-19T17:12:57+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] closing proxy connection: push.services.mozilla.com -> <IP_ADDRESS>:37860
2024-09-19T17:12:57+09:00 DBG f1e0583a-0f1ecca7-56b55ec7-1b490bae [HTTPS] closing proxy connection: <IP_ADDRESS>:37860 -> push.services.mozilla.com

I've no idea if it's the same, I'm new user, but when I turn it on, I cannot access any site using any browser because of empty server response (Sonoma 14.6.1 (23G93) )

@Krasnoslabodtsev @7dir @goglm @yamuru
Please, You can check this branch https://github.com/xvzc/SpoofDPI/tree/fix-tunneling-err-handling/main
Manual building required

@LiquidTheDangerous переключился локально в ветку МР, собрал, запустил, поведение не поменялось.
Сайт google.com не отправил данных. ERR_EMPTY_RESPONSE

такая же проблема

same thing here

+1 doesn't work from Russia

It doesn't show any errors, YouTube just hangs on a black screen, the wheel is spinning

+1 same ver: 0.12.0, linux

Ubuntu 24.04.1 LTS  - youtube not work
The site opens every other time, the player shows endless loading.

Macbook air m1 Ventura 13.6 сегодня с утра такая же проблема

same, won't pass dpi on youtube

Ubuntu 24.04.1, HUAWEI Matebook 14 2021 AMD
Same problem, youtube does not work.

@LiquidTheDangerous
Today I have tried fix branch - it didn't help.
But I noticed that both on main and fix branches browser console shows CORS and CSP errors.

На Манджаро не грузит ютаб

I have a similar issue. At first this utility didn't work for me at all. Then it started working and worked for a month, and then a couple of days ago it stopped working again. And this happened after my Internet provider broke the connection for a couple of minutes (I saw this in the router logs). I suppose that the Internet provider uses different types of traffic blocking and switches between them, so this is not always blocking via DPI.


Implement Markdown Changelog Message Feature in Inbox System

The task involves implementing a changelog message feature to our inbox system before the product launch. The content of the message should be in Markdown format to enable the inclusion of release notes with images. The changelog message should also allow users to provide a short title and description for preview purposes. Additional details such as the author and date published should be displayed. The steps to complete this task are as follows:

Develop a feature to add a changelog message to our inbox system.

Ensure the content of the message can be written in Markdown format.

Enable the inclusion of release notes with images in the message.

Allow users to provide a short title and description for the preview of the changelog message.

Display additional details such as the author and date published.

Collaborate with our designer to ensure the feature is user-friendly and visually appealing.

I'm working on it


fixed wrong link being displayed on the show page for challenges

Coverage remained the same at 97.307% when pulling 91989c4b748a221260e3696df4f2450d2de36cad on fix-wrong-url-challenge-show into df1abe9214099d9a57b775a6762f9b1891e09818 on master.


adapter-netlify edge function caching support

Describe the problem
One feature of Netlify edge functions is the ability to cache responses, described here: https://docs.netlify.com/edge-functions/optional-configuration/#response-caching
This requires a small change to the manifest to indicate manual caching control:
Opt in to caching
You can set the cache property to manual inline in the function code, or in netlify.toml.

For inline configuration, use the config object in your edge function file.

import type { Config } from "https://edge.netlify.com"

export default async () => new Response("Hello, world!")

export const config: Config = {
  cache: "manual",
  path: "/hello"
}

Describe the proposed solution
From what I understand, if the adapter allowed some level of configurability of the manifest output it would be possible to enable caching here:
https://github.com/sveltejs/kit/blob/c9a99b6c911c2ea9c919946aaada4f44293bdb75/packages/adapter-netlify/index.js#L116
Alternatives considered
No response
Importance
would make my life easier
Additional Information
No response

Would also benefit from having this feature implemented.
Currently patching it by running a script after building the application.
import * as fs from 'fs';
const manifestPath = '.netlify/edge-functions/manifest.json';

try {
  const manifest = JSON.parse(fs.readFileSync(manifestPath, 'utf8'));
  manifest.functions = manifest.functions?.map((item) => ({ ...item, cache: 'manual' }));
  const patchedManifest = JSON.stringify(manifest, null, 0);
  fs.writeFileSync(manifestPath, patchedManifest, 'utf8');
  console.log('Successfully patched manifest.json cache field.');
} catch (error) {
  console.error(`Error patching manifest.json: ${error}`);
}


Show indent and childItems when debugging the navigation bar

Hi @andy-ms, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Andy Hanson). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

:+1:


Build and Node v0.12.0 !== Fun Times

There are issues with grunt-sass running on node v0.12.0. When installing I get this issue:
Error: Module did not self-register.

The fix for this seems to be to use the beta version of node-sass and there is a PR open for this: https://github.com/sindresorhus/grunt-sass/pull/179
I've just tried it but this throws a different error of the grunt file not being able to find the sass module.
No actions can really be taken from this right now, but it will need sorting at some point.

Yes, right now the answer is to use 0.10. I heartily recommend using nvm anyway, and this is another good reason.

It's good the nvm instructions were added to the readme for now, but that doesn't solve the actual issue. The build system is complicated enough, so we might first want to try fix the actual issue.

Arthur - there is a number of issues at play - foremost, node-sass doesn't work with newer versions of node, so we can't change anything until that is fixed.

I agree sometimes you just have to wait for upstreams but to follow that up I'd rather keep this ticket open. I just mean, our build system is complicated enough, if we have the chance to get rid of an extra step we need to do so.


Compatibility with current versions of FreeType

There isn't formulae named freetype2 in brew. Pleas refer to brew documentation for freetype formulae. It clearly specifies version 2, even though package doesn't have 2 in name.

Location of header files probably changed. I have tried it on two independent devices with current Mac OS and on both freetype.h and tttables.h are located in ${includedir}/freetype2/freetype/ folder.

Without those changes library does not compile. I would like to suggest tagging version having mentioned changes as 2.0.0 since it is not backwards compatibile.

Now I see that path have been fixed in latest commit, however brew's formulae still needs change.


[Bug]: Cannot get all cookies that were sent to the server in the 'cookie' header of the request.

Bug description
Cannot get all cookies
	page = await browser.newPage();
	await page.setRequestInterception(true);
	page.on('request', interceptedRequest => {
		const headers = interceptedRequest.headers();
		headers.cookie = cookies;
		console.log('headers', headers);
		interceptedRequest.continue();
	});

Cookies that were sent to the server
https://prnt.sc/v2-_3W3vqm4U
And here are the cookies I can retrieve
https://prnt.sc/hrSNMk6jRw9U
Puppeteer version
19.3.0
Node.js version
18.1
npm version
7.21
What operating system are you seeing the problem on?
Windows
Configuration file
No response
Relevant log output
No response

Please provide a minimal executable example to repro the problem. You mention that you cannot get all cookies but the code snippet only sets the cookies?

Please file a new issue with the improved bug form. We will try to reproduce it there.


Tree view in git sidebar

Requesting a tree (hierarchical) view in git sidebar along with the currently available flat view. And an option to switch it back and forth between flat view and tree view. It would help a lot in cases when there are lots of changes, especially when merging.
And example of how it could look like in the elder brother (Visual Studio):

#14582

yah, totally needed.


Grand Total/Outstanding Amount wasn't updated if document wasn't opened /app/payment-entry

I need you to research and workaround for this issue.
It possible to instantly update Grand Total/Outstanding Amount to avoid display "0" like I've found below?

This was new payment entry. Grand total was 0 instead of 14,300baht.

1st time clicked into this doc.

I moved back to previous page, refreshed page and clicked into same doc again.
now, grand total is updated.

Fixeddd✅


Persistency of incoming OCM shares - incorrect handling of read-only folders

Currently, incoming OCM shares are stored in the native EFSS table oc_external_share. This implies that some metadata gets forgotten as the EFSS does not allow to store all metadata.
On top of the well-known multiple protocols (which would enable apps, see https://github.com/pondersource/sciencemesh-php/issues/161) and their options, the permissions associated with the webdav protocol (either read, write or share) get lost.
The consequence is that OC (and NC) delegate the permission check to the provider (remote) site, as opposed to already block locally with e.g. greying out the upload action in the GUI. But in the ScienceMesh scenario where reva proxies the remote site, a read-only share is just not respected, because reva has full power (via shared secret) over the SM app and would honor an upload independent from the original permissions.
I propose to not address this issue now, but just document it and say that read-only shares are not supported by the SM app. A proper fix requires creating a table to persist the OCM 1.1 payload, and would be beneficial to finally implement also apps and data transfers.

Related to this issue, commit https://github.com/cs3org/reva/pull/4115/commits/8620ddcd252a9e256d4eff0cd5425bdc7223001e in Reva currently includes all the missing fields "documented" as FIXME comments, to be populated once the payload gets exposed by the SM app.

Related to this: when a share is sent to CERNBox, which does implement full persistency of the OCM 1.1 share payload, it turns out the received permissions are set as read-only, and the sender cannot change them.

The database schema of ocm payload:

The payload received from Reva calling /~{userId}/api/ocm/addReceivedShare:
Array
(
    [userId] => marie
    [_route] => sciencemesh.reva.addReceivedShare
    [name] => TestFolder
    [remoteShareId] => "2"
    [grantee] => Array
    (
        [type] => GRANTEE_TYPE_USER
        [userId] => Array
        (
            [idp] => revaowncloud2.docker
            [opaqueId] => marie
        )

    )
    [owner] => Array
    (
        [idp] => revaowncloud1.docker
        [opaqueId] => einstein
        [type] => USER_TYPE_FEDERATED
    )
    [creator] => Array
    (
        [idp] => revaowncloud1.docker
        [opaqueId] => einstein
        [type] => USER_TYPE_FEDERATED
    )
    [ctime] => Array
    (
        [seconds] =><PHONE_NUMBER>
    )
    [mtime] => Array
    (
        [seconds] =><PHONE_NUMBER>
    )
    [shareType] => SHARE_TYPE_USER
    [protocols] => Array
    (
        [0] => Array
        (
            [webappOptions] => Array
            (
                [uriTemplate] => https://revaowncloud1.docker/external/sciencemesh/IIUVilCNV11TdSjO9yPbYXoALwO7xelu/{relative-path-to-shared-resource}
            )
        )
        [1] => Array
        (
            [webdavOptions] => Array
            (
                [sharedSecret] => IIUVilCNV11TdSjO9yPbYXoALwO7xelu
                [permissions] => Array
                (
                    [permissions] => Array
                    (
                        [getPath] => 1
                        [initiateFileDownload] => 1
                        [listContainer] => 1
                        [stat] => 1
                    )
                )
                [uri] => https://revaowncloud1.docker/remote.php/dav/ocm/IIUVilCNV11TdSjO9yPbYXoALwO7xelu
            )
        )
    )
    [state] => SHARE_STATE_PENDING
    [resourceType] => RESOURCE_TYPE_CONTAINER
)

@glpatcern can you help me with these?

It looks like Reva gets this value from the SM app in the first place! but doesn't explain why we have [name] => TestFolder here, since https://github.com/cs3org/reva/blob/a9dc6d321db83514bc1f996c37adf587bfbb9305/pkg/ocm/share/repository/nextcloud/nextcloud.go#L172 && https://github.com/cs3org/reva/blob/a9dc6d321db83514bc1f996c37adf587bfbb9305/pkg/ocm/share/repository/nextcloud/nextcloud.go#L305
Maybe I'm looking at the wrong place.

is grantee == share_with and creator == initiator? if yes why different names? (not that it is a big problem, I just want to get familiar with OCM)

we have to join share_with, owner, and initiator with @ to store them in the database in a format like opaqueId@idp, however, information about user type will be lost.

what are the enum values for SHARE_TYPE_USER, RESOURCE_TYPE_CONTAINER, and user types in general? I can implement my own set of value mapping s in PHP but I want to be as compliant with OCM as I can.

can view_mode of ocm_protocol_webapp be null? since it is not returned in the payload or the payload is incomplete since we don't really use web apps yet.

Initial support for the persistence of OCM shares has been implemented at this commit. the hard-coded values and unclear entity mappings should be fixed.
Native EFSS db entry:
MariaDB [efss]>  select * from oc_share_external;
+----+------------------------------+-----------+----------------------------------+----------+----------------+-------+----------+--------------------------------------------+----------------------------------+----------+----------+
| id | remote                       | remote_id | share_token                      | password | name           | owner | user     | mountpoint                                 | mountpoint_hash                  | accepted | lastscan |
+----+------------------------------+-----------+----------------------------------+----------+----------------+-------+----------+--------------------------------------------+----------------------------------+----------+----------+
|  1 | https://revaowncloud2.docker | 1         | V7qCEYl4mDo1ZprS553yvgLrA15lYOxk | NULL     | TestOcmPayload | marie | einstein | {{TemporaryMountPointName#TestOcmPayload}} | 93d316b2153e299d599c6cc339063f6b |        0 |     NULL |
+----+------------------------------+-----------+----------------------------------+----------+----------------+-------+----------+--------------------------------------------+----------------------------------+----------+----------+
1 row in set (0.001 sec)

OCM tables entries:
MariaDB [efss]>  select * from oc_sciencemesh_ocm_received_shares;
+----+-------------------+----------------+-----------+-------------------------------+----------------------------+----------------------------+------------+------------+------------+------+-------+-----------------+
| id | share_external_id | name           | item_type | share_with                    | owner                      | initiator                  | ctime      | mtime      | expiration | type | state | remote_share_id |
+----+-------------------+----------------+-----------+-------------------------------+----------------------------+----------------------------+------------+------------+------------+------+-------+-----------------+
|  1 |                 1 | TestOcmPayload |         1 |<EMAIL_ADDRESS>|<EMAIL_ADDRESS>|<EMAIL_ADDRESS>|<PHONE_NUMBER> |<PHONE_NUMBER> |       NULL |    1 |     1 | "1"             |
+----+-------------------+----------------+-----------+-------------------------------+----------------------------+----------------------------+------------+------------+------------+------+-------+-----------------+
1 row in set (0.000 sec)

MariaDB [efss]>  select * from oc_sciencemesh_ocm_received_share_protocols;
+----+-----------------------+------+
| id | ocm_received_share_id | type |
+----+-----------------------+------+
|  1 |                     1 |    1 |
+----+-----------------------+------+
1 row in set (0.000 sec)

MariaDB [efss]>  select * from oc_sciencemesh_ocm_protocol_transfer;
Empty set (0.001 sec)

MariaDB [efss]>  select * from oc_sciencemesh_ocm_protocol_webapp;
Empty set (0.001 sec)

MariaDB [efss]>  select * from oc_sciencemesh_ocm_protocol_webdav;
+-----------------+----------------------------------------------------------------------------------+----------------------------------+-------------+
| ocm_protocol_id | uri                                                                              | shared_secret                    | permissions |
+-----------------+----------------------------------------------------------------------------------+----------------------------------+-------------+
|               1 | https://revaowncloud2.docker/remote.php/dav/ocm/V7qCEYl4mDo1ZprS553yvgLrA15lYOxk | V7qCEYl4mDo1ZprS553yvgLrA15lYOxk |           1 |
+-----------------+----------------------------------------------------------------------------------+----------------------------------+-------------+
1 row in set (0.000 sec)

To address the questions, a general answer is that everything is specified in the official OCM API at: https://cs3org.github.io/OCM-API/docs.html?branch=v1.1.0&repo=OCM-API&user=cs3org#/paths/~1shares/post
For more details we better get together ;-)

This all works now with ownCloud, Nextcloud just needs the same patch


README references SMTPD_SSL_CERTS_PATH which was removed in 0.5.2

Describe the bug
The README is inaccurate. SMTPD_SSL_CERTS_PATH no longer exists in 0.5.2
To Reproduce
Read the readme
Expected behavior
The README accurately describes how to config certs
Environment (please complete the following information):

OS: N/A
Version N/a

Additional context

@holly-evans, Thanks for taking the time to report this issue. A correction will be on the main branch shortly and then included as part of version 0.5.3 once released.


add minimumKubeletVersion

/retest

/retest

@haircommander do we have a Jira/other way today to tag all related PRs for this effort in a single place? so it's easy for ourselves later in time or for others with less context to catch up?
E.g Add minimumKubeletVersion knob and validation epic involves
https://github.com/openshift/hypershift/pull/4980
https://github.com/openshift/kubernetes/pull/2104
https://github.com/openshift/api/pull/2059

@enxebre there's also https://github.com/openshift/library-go/pull/1831 and https://github.com/openshift/cluster-kube-apiserver-operator/pull/1754
the overarching epic is https://issues.redhat.com/browse/OCPNODE-2506. Note a number of the cards tracking these PRs are closed because they were originally scoped to drafts for the work until I got feedback and could size the time to respond

/retest

/retest
@JoelSpeed @enxebre any other thoughts?

/retest

/lgtm
Thanks @haircommander


[5.7][Sema] Propagate nonisolated attribute from wrapped property to the synthesized projectedValue property

Description: We were not propagating the nonisolated attribute from the wrapped property to the synthesised projectedValue variable, thus triggering a main actor-isolated property '$<name>' can not be referenced from a non-isolated context error in some contexts when accessing the projectedValue.
Risk: Low, just adding a missing attribute to a synthesised variable
Review by: @xedin
Testing: PR Testing
Original PR: https://github.com/apple/swift/pull/60421

@swift-ci please test

Hmmm, I don't think it's correct that you can mark a wrapped property as nonisolated, because the accessors use the isolated backing storage variable, and it would not be safe to mark the backing storage variable as nonisolated. This seems to expose a bug in actor isolation checking, because it allows you to use actor-isolated state in a non-isolated context.

Hmmm, I don't think it's correct that you can mark a wrapped property as nonisolated, because the accessors use the isolated backing storage variable, and it would not be safe to mark the backing storage variable as nonisolated. This seems to expose a bug in actor isolation checking, because it allows you to use actor-isolated state in a non-isolated context.

Ah okay, so we should disallow marking wrapped properties as nonisolated? We also allow making the wrappedValue and projectedValue as nonisolated in the property wrapper. Is that correct?

I thought that the reason why <name> is allowed is because backing property is transitively marked as nonisolated which seemed reasonable to me conceptually.

I thought that the reason why  is allowed is because backing property is transitively marked as nonisolated which seemed reasonable to me conceptually.

The backing property cannot be marked as nonisolated because it's a stored var. This means you'd be able to mutate actor state from outside the actor, which is fundamentally unsafe.

Ah I see, I didn't realize that nonisolated is only allowed on computed properties.

Ah okay, so we should disallow marking wrapped properties as nonisolated?

Yes, I think so!

We also allow marking the wrappedValue and projectedValue as nonisolated in the property wrapper (which also removes this error). Is that correct?

This may be correct because actor isolation checking should ensure that the (hand written) accessors for var wrappedValue and var projectedValue only access other nonisolated state.
There's probably some design discussion to be had on the forums about this topic. For example, we could allow nonisolated wrapped properties if we make the backing storage a let constant, which seems reasonable to me, although we may want a way to explicitly say the backing storage is a let constant.
In any case, I think we shouldn't take this change for 5.7 and we should discuss this on the forums!

@theblixguy please revert it from main as well.

Thank you for the explanation! It makes sense to me. I will create a forums post to discuss this further.
For now, I will revert the PR on main (and close this one) and will open a new PR to disallow nonisolated on wrapped properties.


build fail at UWP

https://github.com/microsoft/vcpkg/pull/14107

Hello @KaungZawHtet ,
https://dev.azure.com/vcpkg/public/_build/results?buildId=44242&view=logs&j=d0b5f9c7-318d-5672-3adb-f75c4e9afab7&t=16b8a01a-91c4-5f0e-47e2-989fedf3d734
Building package oatpp[core]:x64-uwp... done
Installing package oatpp[core]:x64-uwp...
Installing package oatpp[core]:x64-uwp... done
Elapsed time for package oatpp:x64-uwp: 1.876 s
Starting package 2/2: oatpp-sqlite:x64-uwp
Building package oatpp-sqlite[core]:x64-uwp...
Could not locate cached archive: W:\03\035daae6548f205131ee6271bd1db9e3f279e03f.zip
-- Note: oatpp-sqlite only supports static library linkage. Building static library.
-- Downloading https://github.com/oatpp/oatpp-sqlite/archive/932a79f1db5a0dfd6955c8fd84dc7bd2e5962be1.tar.gz...
-- Extracting source D:/downloads/oatpp-oatpp-sqlite-932a79f1db5a0dfd6955c8fd84dc7bd2e5962be1.tar.gz
-- Using source at D:/buildtrees/oatpp-sqlite/src/d2e5962be1-146fcc8dbb.clean
-- Configuring x64-uwp
-- Building x64-uwp-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:141 (message):
    Command failed: D:/downloads/tools/cmake-3.17.2-windows/cmake-3.17.2-win32-x86/bin/cmake.exe --build . --config Debug --target install -- /p:VCPkgLocalAppDataDisabled=true /p:UseIntelMKL=No /m
    Working Directory: D:/buildtrees/oatpp-sqlite/x64-uwp-dbg
    See logs for more information:
      D:\buildtrees\oatpp-sqlite\install-x64-uwp-dbg-out.log

I don't know what this error message means.
If you know where to find some meaningful logs please post them here.
Regards,
Leonid

@lganzzzo they replied at microsoft/vcpkg#14107 . You can directly communicate with them too

Is build ok at you now after the commits ?

Yes, now it should be ok.
Just take the latest master - it will use external SQLite by default.

I m in the progress of oatpp-sqlite PR. Check other db adapters, eg. Oatpp-PostgreSQL, too if they have same nature with oatpp-sqlite. If not so complex, those should be added into the vcpkg port pool too.

build failed. This time, even on linux

Are any logs available?
Logs in the vcpkg CI tells me nothing.

Check the link. They replied with log

CMake Error at D:/downloads/tools/cmake-3.18.4-windows/cmake-3.18.4-win32-x86/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message):
  Could NOT find SQLite3 (missing: SQLite3_INCLUDE_DIR SQLite3_LIBRARY)
Call Stack (most recent call first):
  D:/downloads/tools/cmake-3.18.4-windows/cmake-3.18.4-win32-x86/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:458 (_FPHSA_FAILURE_MESSAGE)
  D:/downloads/tools/cmake-3.18.4-windows/cmake-3.18.4-win32-x86/share/cmake-3.18/Modules/FindSQLite3.cmake:52 (find_package_handle_standard_args)
  C:/a/1/s/scripts/buildsystems/vcpkg.cmake:536 (_find_package)
  CMakeLists.txt:108 (find_package)

Ok, now the SQLite package is not found.
I'm not familiar with vcpkg packages, but I think it should be specified somewhere that oatpp-sqlite depends on SQLite-  to install sqlite first.

The build is in success now after experiencing with forked oatpp-sqlite. Build failed because of naming :
find_package(unofficial-sqlite3 CONFIG REQUIRED)
target_link_libraries(main PRIVATE unofficial::sqlite3::sqlite3)

check some improvement here
If you wish, I will make PR at master.

Hey @KaungZawHtet ,

The build is in success now after experimenting with forked oatpp-sqlite.

Nice, Great work!

If you wish, I will make PR at master.

Sounds good!
The only thing I would ask you is to fix indents please like this:
if(NOT OATPP_SQLITE_AMALGAMATION)

    #In case of vcpkg, specific finding is required because of unofficiality
    if(VCPKG_TOOLCHAIN )
        message("\nvcpkg is on\n")
        find_package(unofficial-sqlite3 CONFIG REQUIRED)
    else()
        find_package(SQLite3 REQUIRED)
    endif()

    message("SQLite3_INCLUDE_DIRS=${SQLite3_INCLUDE_DIRS}")
    message("SQLite3_LIBRARIES=${SQLite3_LIBRARIES}")
    message("SQLite3_VERSION=${SQLite3_VERSION}")

endif()

Fixed in https://github.com/oatpp/oatpp-sqlite/pull/8


[Event Request or refactor req.]table 1382 "Item Templ.".TransferFieldValues

Hi,
Currently we have the scenario that we can't add new fields (ISV or Standard fields) with new field numbers to table 1382 "Item Templ.".
Scenario is that ISV haven't added the fields in "Item Templ." and when we as a VAR tries to add them with another number the code fails since every field  "Item Templ." has to be a direct match.

Then it fails in this function due to mismatching fields

Can you at least add events so we can overide that not matching/not existing fields can be manually handled.
Best would be if you refactor/add a good error message if there is no handled and the target field is missing

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 13655.

Availability update: We will publish a fix for this issue in the next update for release 23.
Build ID to track: 13740.


feat(#49): exposing suggestion_group in config settings

With this changes suggestion_group will be exposed to the config under config.color like:
require("supermaven-nvim").setup({
  color = {
    suggestion_group = "Comment",
  },
})

Allowing users to change it in an easier way.

https://github.com/supermaven-inc/supermaven-nvim/assets/71392160/1fc06cc3-79ce-49c3-84cd-50bb3ca49692
Closes #49.

@sm-victorw @super-jacob When discussing the behaviour on #49 about how SupermavenSuggestion highlight group is set. I tested out using lazy.nvim changing it from lazy = false to event = "VeryLazy" and here are the results:
https://github.com/supermaven-inc/supermaven-nvim/assets/71392160/c4b1df43-2cdd-462c-a64d-b943aac4fa4a
Should I change this behaviour to create the group SupermavenSuggestion when loading the plugin in this PR, or create another PR with those changes?

@sm-victorw @super-jacob the changes will be the following:
Delete setting SupermavenSuggestion group in document_listener.lua on VimEnter and left only on ColorSchem event.
And set SupermavenSuggestion group in init.lua in M.setup(args) function without creating an autocmd on events.


auto take default value

if no input is there it'll auto takes the default values
add cursor pointer in submit button
resolved conflict

@1Danish-00  we can't use default values here.
Because this is end-user related required filters.


Add acceptance test that exposes JSON deserialization bug from #146

I have created a test that exposes the deserialization problem from issue #146 where DownstreamRoute.ReRoute.CacheOptions is null when fetched from cache.
I created a custom cache handle for CacheManager that mimics the behavior of the DictionaryHandle but uses the ICacheSerializer to serialize/deserialize values with Json.Net before saving them to an internal Dictionary.
When the handle tries to deserialize the saved configuration, it skips CacheOptions key because it mismatches with fileCacheOptions.
You can see the test failing if you revert the change on ReRoute.cs from 50ec8f17ea3dc6a817ece9a44fd71374c0d4e788
Don't know if this is overkill but couldn't think of any better way to expose this.

@hampos only issue I can see is a failing test.
Failed   Ocelot.AcceptanceTests.ConfigurationInConsul.should_return_response_200_with_simple_url
Error Message:
System.IO.IOException : Failed to bind to address http://<IP_ADDRESS>:9500: address already in use.
The consul port for your new test just needs changing to something other than 9500 to get it working..suggest 9502!

@TomPallister Changed the port to 9502, tests seem to be passing now.

@TomPallister do you have indentation settings for the project? I am under the impression that our settings don't match. Would like to fix that before merging the PR.


Output and terminate properly from subprocess

Output the result of make so we can see what's going on!

Is it just the output of make you want to see in logs? Was the previous behaviour of Git output being captured okay?

Is it just the output of make you want to see in logs? Was the previous behaviour of Git output being captured okay?

I think it's preferable to output for both - Buildkite builds are private and I don't think we expose any secrets now with our commands 🤞 so it's less pressing to suppress that output.


Couldn't get the installer working

Brief Description:
Operating System (OS and version): Windows 10 prof
OpenBazaar version (shown on About OpenBazaar page in menu): 2.0.18-setup 64 bit
Hardware: CPU i7-3770K
Reproducible (Always / Almost Always / Sometimes / Rarely / Couldn't Reproduce):
Always
Steps to reproduce:

Run installer
The error pops
open the setup log and saved.

Observed Behavior:
Always fail to install
Expected Behavior:
Additional info (links, images, etc go here):
log file:
SquirrelSetup.log

Do you have an anti-virus scanner installed?

Yes!
And after disabling it, I succeeded in installation.

great thanks.

The antivirus software was 360 anquan, if you care to know. Thanks!


Work item is not ready to save.

while trying to migrate from Jira 5.2 to azure devops , most of the issues are getting below error.
Error message
[Microsoft.TeamFoundation.WorkItemTracking.Client.ValidationException] Microsoft.TeamFoundation.WorkItemTracking.Client.ValidationException: TF237124: Work Item is not ready to save
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem.Save(SaveFlags saveFlags)
JCANDROID-2346.zip

Closing this issue in lack of further response. @sgullluu  feel free to reopen if you still experience problems


istioctl version maybe mismatched?

Hey guys im testing a number of things specifically egress , and during the chart installation im finding this on kube-inject
~/Projects/istiotest$ istioctl version
Version: 0.8.0
GitRevision: 6f9f420f0c7119ff4fa6a1966a6f6d89b1b4db84
User: root@48d5ddfd72da
Hub: docker.io/istio
GolangVersion: go1.10.1
BuildStatus: Clean

~/Projects/istiotest$ istioctl kube-inject -f httpbin.yaml  -i default
Error: failed to convert to proto. unknown field "egressProxyAddress" in v1alpha1.MeshConfig

I've installed istio using helm on incubator and this is the chart version:
~/Projects/istiotest$ helm search istio
NAME            CHART VERSION   APP VERSION     DESCRIPTION
incubator/istio 0.2.13-chart4   0.2.12          Istio Helm chart for Kubernetes

I'm sure there's a mismatch between istioctl and the chart i've deployed since the "egressProxyAddress" value that it's complaining about is on the configmap:
~/Projects/istiotest$ k get configmap istio -o yaml | egrep egress
    egressProxyAddress: istio-egress.default:80

Running all this on minikube with kubernetes-version v1.10.0 with RBAC
Thank you!

The egressProxyAddress was removed from istio/api on Feb 8.
Clusters running versions before Feb 8 may expose this when using istioctl post Feb 8,
https://github.com/istio/api/commit/b5d35aad98bedc3757f3fa76d50ae0b0dacca426#diff-e7424aa96af1917e2a00aea6798dc071

Thank you. Had some success running the chart on master and pointing images to gcr.io


Significant performance step backwards

Hi, I love this component and have used it in previous projects with great success but it looks like something has gone wrong somewhere between versions 4.1.2 and the current one.
The more items you bind the more time it takes it to load the carousel which makes sense but not to this extent. In my previous project I was using the component to show over 2000 items, each used to populate a simple template and it was loading in a split second. Currently I have 300 items and it takes about 10sec to open the carousel and it is quite clunky. I loaded up my previous project to check if I'm missing something but it can't even load up the carousel at all.
It looks like it is loading every item in memory on first load or something like this. Does this sound reasonable?
Cheers!

Android or iOS?

iOS

Yeah, i know wheres the problem. Can you try version 4.2.6 and tell me if the problem happens?

I'll do that right away, thanks for the immediate reply!

Hi, so unfortunately the problem is still there with 4.2.6 (and 4.2.5 :) )

Can you keep trying previous versions?

OK, I stopped at 4.2.3, I'll try some more :)

Thanks

I partially identified that indicators are affecting the performance.

Well I got down to 3.1.1 and it started missing some methods so I'll stop :)
If it helps I'm not using indicators at all. If there is something I can do to disable them completely - happy to do it if it will fix the issue.
Thanks for looking into it, much appreciated!

You are not using them but they still running in background. My mistake. I am changing that.

Hi mate, thanks for looking into this issue!
I don't want to be pushy or anything but just so I know what to do, do you know if this will be fixed in the next few days or is the fix going to be released in a few weeks? Just trying to figure out how to handle my project since it heavily relies on this functionality.
Cheers and thanks again!

It will be released in the next couple of days.

 Thank you!

The change is implemented and tested in iOS and Android. I have to make it work on UWP which is slightly different.

When using the carousel with a long list of elements, set ShowIndicators to false or you will get a long loading delay in iOS and UWP and the carousel will be clunky.

Thanks for doing this so quickly!
I don't think I got the fix though I removed the package in Xamarin and downloaded it again using the nuget window. Is this not the right way to update it?

I just uploaded version 4.2.8
It should appear soon in nuget.

OOOOHHH THE SLICKNESS!!!
It is fantastic thank you for the awesome support and the great product!


Investigate possibility of refreshing secrets on rotation

Are we doing something about rotation of secrets in the backends? Is this a non-goal?

+1000.
This is the ONLY reason I'm looking at solutions to leverage Secrets Manager. The ability to update configs outside of the K8s cluster.

Also would push us i the new CRD direction https://github.com/godaddy/kubernetes-external-secrets/pull/477, and I also think it is just a good feature to have.