Find and document working SVG loader

Discussed in https://github.com/callstack/repack/discussions/58

Originally posted by jaysson July 16, 2021
Do you know any webpack loader for react-native-svg? I was using https://github.com/kristerkari/react-native-svg-transformer with metro. Tried https://www.npmjs.com/package/react-native-svg-loader, but it didn't work. It was published 2 years back, looks like not maintained.
I tried https://www.npmjs.com/package/@svgr/webpack with native: true. That just throws NonErrorEmittedError: (Emitted value instead of an instance of Error) Error in parsing SVG: Non-whitespace before first tag. for all SVGs.

I've had good success with @svgr/webpack without any issues specified above.

Ok this is something we have to address in Re.Pack. The AssetPlugin is capturing and coverting .svg to JavaScript and this JavaScript is now passed to @svgr/webpack, so I need to add configuration options to AssetPlugin to prevent AssetPlugin from processing SVGs.

Hi @zamotany  . I tried using react-native-svg but I facing issue : " View config getter callback for component RNSVGRect must be a function (received undefined)"
my Svg file :
import {widthLize} from 'pmn-rn-component';
import React from 'react';
import Svg, {Path, Rect} from 'react-native-svg';

type Props = {
  width?: number;
  height?: number;
  color?: string;
};

const IconFB = ({width = 41, height = 40, color = '#3B5998'}: Props) => {
  return (
    <Svg
      width={widthLize(width)}
      height={widthLize(height)}
      viewBox="0 0 41 40"
      fill="none">
      <Path
        d="M0.5 20C0.5 8.9543 9.4543 0 20.5 0C31.5457 0 40.5 8.9543 40.5 20C40.5 31.0457 31.5457 40 20.5 40C9.4543 40 0.5 31.0457 0.5 20Z"
        fill={color}
      />
      <Rect x="0.5" width="40" height="40" rx="20" fill={color} />
      <Path
        d="M22.8145 31V19.9987H26.0687L26.5 16.2076H22.8145L22.82 14.3101C22.82 13.3213 22.9207 12.7915 24.4426 12.7915H26.477V9H23.2223C19.3129 9 17.9369 10.8391 17.9369 13.9319V16.208H15.5V19.9991H17.9369V31H22.8145Z"
        fill="white"
      />
    </Svg>
  );
};

export default IconFB;

webpack.config mini app:
import path from 'path';
import TerserPlugin from 'terser-webpack-plugin';
import * as Repack from '@callstack/repack';
import {deps} from '../../shared/dependencies.mjs';
/**
 * More documentation, installation, usage, motivation and differences with Metro is available at:
 * https://github.com/callstack/repack/blob/main/README.md
 *
 * The API documentation for the functions and plugins used in this file is available at:
 * https://re-pack.netlify.app/
 */

/**
 * Webpack configuration.
 * You can also export a static object or a function returning a Promise.
 *
 * @param env Environment options passed from either Webpack CLI or React Native CLI
 *            when running with `react-native start/bundle`.
 */
export default env => {
  const {
    mode = 'development',
    context = Repack.getDirname(import.meta.url),
    entry = './index.js',
    platform = process.env.PLATFORM,
    minimize = mode === 'production',
    devServer = undefined,
    bundleFilename = undefined,
    sourceMapFilename = undefined,
    assetsPath = undefined,
    reactNativePath = new URL('./node_modules/react-native', import.meta.url)
      .pathname,
  } = env;
  const dirname = Repack.getDirname(import.meta.url);

  if (!platform) {
    throw new Error('Missing platform');
  }

  /**
   * Using Module Federation might require disabling hmr.
   * Uncomment below to set `devServer.hmr` to `false`.
   *
   * Keep in mind that `devServer` object is not available
   * when running `webpack-bundle` command. Be sure
   * to check its value to avoid accessing undefined value,
   * otherwise an error might occur.
   */
  // if (devServer) {
  //   devServer.hmr = false;
  // }

  /**
   * Depending on your Babel configuration you might want to keep it.
   * If you don't use `env` in your Babel config, you can remove it.
   *
   * Keep in mind that if you remove it you should set `BABEL_ENV` or `NODE_ENV`
   * to `development` or `production`. Otherwise your production code might be compiled with
   * in development mode by Babel.
   */
  process.env.BABEL_ENV = mode;

  return {
    mode,
    /**
     * This should be always `false`, since the Source Map configuration is done
     * by `SourceMapDevToolPlugin`.
     */
    devtool: false,
    context,
    /**
     * `getInitializationEntries` will return necessary entries with setup and initialization code.
     * If you don't want to use Hot Module Replacement, set `hmr` option to `false`. By default,
     * HMR will be enabled in development mode.
     */
    entry: [
      ...Repack.getInitializationEntries(reactNativePath, {
        hmr: devServer && devServer.hmr,
      }),
      entry,
    ],
    resolve: {
      /**
       * `getResolveOptions` returns additional resolution configuration for React Native.
       * If it's removed, you won't be able to use `<file>.<platform>.<ext>` (eg: `file.ios.js`)
       * convention and some 3rd-party libraries that specify `react-native` field
       * in their `package.json` might not work correctly.
       */
      ...Repack.getResolveOptions(platform),

      /**
       * Uncomment this to ensure all `react-native*` imports will resolve to the same React Native
       * dependency. You might need it when using workspaces/monorepos or unconventional project
       * structure. For simple/typical project you won't need it.
       */
      // alias: {
      //   'react-native': reactNativePath,
      // },
    },
    /**
     * Configures output.
     * It's recommended to leave it as it is unless you know what you're doing.
     * By default Webpack will emit files into the directory specified under `path`. In order for the
     * React Native app use them when bundling the `.ipa`/`.apk`, they need to be copied over with
     * `Repack.OutputPlugin`, which is configured by default inside `Repack.RepackPlugin`.
     */
    output: {
      clean: true,
      hashFunction: 'xxhash64',
      path: path.join(dirname, 'build/generated', platform),
      filename: 'index.bundle',
      chunkFilename: '[name].chunk.bundle',
      publicPath: Repack.getPublicPath({platform, devServer}),
    },
    /**
     * Configures optimization of the built bundle.
     */
    optimization: {
      /** Enables minification based on values passed from React Native CLI or from fallback. */
      minimize,
      /** Configure minimizer to process the bundle. */
      minimizer: [
        new TerserPlugin({
          test: /\.(js)?bundle(\?.*)?$/i,
          /**
           * Prevents emitting text file with comments, licenses etc.
           * If you want to gather in-file licenses, feel free to remove this line or configure it
           * differently.
           */
          extractComments: false,
          terserOptions: {
            format: {
              comments: false,
            },
          },
        }),
      ],
      chunkIds: 'named',
    },
    module: {
      /**
       * This rule will process all React Native related dependencies with Babel.
       * If you have a 3rd-party dependency that you need to transpile, you can add it to the
       * `include` list.
       *
       * You can also enable persistent caching with `cacheDirectory` - please refer to:
       * https://github.com/babel/babel-loader#options
       */
      rules: [
        {
          test: /\.[jt]sx?$/,
          include: [
            /node_modules(.*[/\\])+react\//,
            /node_modules(.*[/\\])+react-native/,
            /node_modules(.*[/\\])+@react-native/,
            /node_modules(.*[/\\])+react-freeze/,
            /node_modules(.*[/\\])+@react-navigation/,
            /node_modules(.*[/\\])+@react-native-community/,
            /node_modules(.*[/\\])+@expo/,
            /node_modules(.*[/\\])+pretty-format/,
            /node_modules(.*[/\\])+metro/,
            /node_modules(.*[/\\])+abort-controller/,
            /node_modules(.*[/\\])+@callstack\/repack/,
            /node_modules(.*[/\\])+pmn-rn-component/,
            /node_modules(.*[/\\])+react-native-fast-image/,
            /node_modules(.*[/\\])+react-native-gesture-handler/,
            /node_modules(.*[/\\])+react-native-reanimated/,
            /node_modules(.*[/\\])+react-native-paper/,
            /node_modules(.*[/\\])+react-native-safe-area-context/,
            /node_modules(.*[/\\])+react-native-screens/,
            /node_modules(.*[/\\])+react-native-tab-view/,
            /node_modules(.*[/\\])+react-native-vector-icons/,
            /node_modules(.*[/\\])+react-native-keyboard-aware-scroll-view/,
            /node_modules(.*[/\\])+react-native-reanimated-carousel/,
            /node_modules(.*[/\\])+react-native-svg/,
          ],
          use: 'babel-loader',
        },
        /**
         * Here you can adjust loader that will process your files.
         *
         * You can also enable persistent caching with `cacheDirectory` - please refer to:
         * https://github.com/babel/babel-loader#options
         */
        {
          test: /\.[jt]sx?$/,
          exclude: /node_modules/,
          use: {
            loader: 'babel-loader',
            options: {
              /** Add React Refresh transform only when HMR is enabled. */
              plugins:
                devServer && devServer.hmr
                  ? ['module:react-refresh/babel']
                  : undefined,
            },
          },
        },
        /**
         * This loader handles all static assets (images, video, audio and others), so that you can
         * use (reference) them inside your application.
         *
         * If you wan to handle specific asset type manually, filter out the extension
         * from `ASSET_EXTENSIONS`, for example:
         * ```
         * Repack.ASSET_EXTENSIONS.filter((ext) => ext !== 'svg')
         * ```
         */
        {
          test: Repack.getAssetExtensionsRegExp(
            Repack.ASSET_EXTENSIONS.filter(ext => ext !== 'svg'),
          ),
          // exclude: [
          //   path.join(dirname, 'src/assets/images'),
          //   path.join(dirname, 'src/assets/icons'),
          // ],
          use: {
            loader: '@callstack/repack/assets-loader',
            options: {
              platform,
              devServerEnabled: Boolean(devServer),
              /**
               * Defines which assets are scalable - which assets can have
               * scale suffixes: `@1x`, `@2x` and so on.
               * By default all images are scalable.
               */
              scalableAssetExtensions: Repack.SCALABLE_ASSETS,
              // remote: {
              //   enabled: true,
              //   publicPath: 'http://localhost:9999',
              // },
            },
          },
        },
        // {
<img width="478" alt="Ảnh chụp Màn hình 2023-07-06 lúc 14 22 01" src="https://github.com/callstack/repack/assets/84919875/7b1937ea-8045-44af-bae3-d741a57cbd30">

        //   test: /\.[jt]sx?$/,
        //   include: [/src\/assets\/icons\/IconFB/],
        //   use: {
        //     loader: '@svgr/webpack',
        //     options: {
        //       native: true,
        //       dimensions: false,
        //     },
        //   },
        // },
        {
          test: /\.svg$/,
          use: [
            {
              loader: '@svgr/webpack',
              options: {
                native: true,
                dimensions: false,
              },
            },
          ],
        },
      ],
    },
    plugins: [
      /**
       * Configure other required and additional plugins to make the bundle
       * work in React Native and provide good development experience with
       * sensible defaults.
       *
       * `Repack.RepackPlugin` provides some degree of customization, but if you
       * need more control, you can replace `Repack.RepackPlugin` with plugins
       * from `Repack.plugins`.
       */
      new Repack.RepackPlugin({
        context,
        mode,
        platform,
        devServer,
        output: {
          bundleFilename,
          sourceMapFilename,
          assetsPath,
        },
      }),
      new Repack.plugins.ModuleFederationPlugin({
        name: 'myVideo',
        exposes: {
          './App': './App.tsx',
        },
        shared: deps,
      }),
    ],
  };
};

Hey @ngnm1009 Zamotany is no longer maintaining this repo. To avoid confusion for future readers of the issues please create a new issue and attach a minimal reproduction repository in which the problem can be reliably reproduced.
Thank you :)


[stable][sentry] Allow usage of existing secrets for sensitive data

What this PR does / why we need it:
This enable the user to provide an already created secret for sensitive data. This is useful when using gitops and everything is committed.
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/reopen


small fixes in readme and url trimming

unexpected single qoutation mark in readme
remove final slashes from sites-entries w/o site-names (i think i saw a rule or smth related to that before, but it looks better now anyway)
handle urls with final slashes from now on

Thanks :)


[FEATURE] Using defaultdict in group_by implementation

The current implementation of group_by loops twice over the lst, which significantly reduces the speed when working with large data. Instead using defaultdict will make it possible to loop over the lst only once.
Current implementation:
def group_by(lst, fn):
    return {key: [el for el in lst if fn(el] == key] for key in map(fn, lst)}

Suggested implementation:
from collections import defaultdict

def group_by(lst, fn):
    d = defaultdict(list)
    for el in lst:
        d[fn(el)].append(el)
    return d

Yeah, it looks more efficient that way. The python official website also gives a similar example.
And defaultdict can also be used in the implementation of count_by.
Current implementation:
def count_by(arr, fn=lambda x: x):
  key = {}
  for el in map(fn, arr):
    key[el] = 1 if el not in key else key[el] + 1
  return key

Suggested implementation:
from collections import defaultdict

def count_by(lst, fn):
  d = defaultdict(int)
  for el in lst:
    d[fn(el)] += 1
  return d

Just want to point out that this change is more important that said.
As I explain in #213 the initial implementation does not loop twice over the elements, it loops n times over all elements, which would be dramatic for as few as 1000 elements.


Update balena-io/deploy-to-balena-action action to 0.12.1

This PR contains the following updates:

Package
Type
Update
Change

balena-io/deploy-to-balena-action
action
patch
v0.12.0 -> v0.12.1

Release Notes

balena-io/deploy-to-balena-action
v0.12.1
Compare Source

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

@balena-ci I self-certify!


Linking to libraries that support the pattern

As was already accepted in #3609.

Learn Build status updates of commit 717b474:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/best-practices/transactional-outbox-cosmos-content.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

#sign-off

@mSarts,
Can you review the proposed changes? If someone else should, please advise.
IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@alexhart11 Please review the thread above.

#sign-off

Hey folks, any chance of getting this moving again? Thanks :)

@JanetCThomas / @alexhart11 - can you find out why this is being held up?  We've got multiple CACT reviews done, just PR merger is pending.

They delay is because this is in the public repo, so it travels a different process path. But I was able to add myself as a reviewer and approve/merge.

@ckittel  - I will keep an eye on this issue in case any process adjustment is needed on our part (PR review team).

Thanks very much everyone.
Process-wise, should I have done anything differently on my end?


Fix: [Android] Opening camera/gallery does not work on Android 11

Details
Update the image picker and document picker libraries to their latest versions
Migrate usages to match the newer version specs
Fixed Issues

Fixes #2531
Tests
Try for both Android 10, 11 and iOS, desktop/web implementation haven't been changed but you can test that as well

Open a chat
Press the (+) button and select "Add Attachment"
Try all the 3 options - Take Photo | Gallery | Documents

selecting photos documents should work
cancelling from take photo or the other options should not produce errors
changing permissions to "deny" using the camera should handle the error gracefully - see the videos bellow

QA Steps
Same as above
Tested On

[x] Web
[x] Mobile Web
[x] Desktop
[x] iOS
[x] Android

Screenshots

Web

https://user-images.githubusercontent.com/12156624/121575360-f5244280-ca2f-11eb-8454-8391e18e0e26.mp4
Mobile Web

https://user-images.githubusercontent.com/12156624/121575767-69f77c80-ca30-11eb-82e6-875f21b5651b.mov
Desktop

https://user-images.githubusercontent.com/12156624/121575084-a1195e00-ca2f-11eb-9552-7274026bd4f3.mov
iOS

When a user have manually denied permissions
https://user-images.githubusercontent.com/12156624/121574555-0e78bf00-ca2f-11eb-9808-8d05f5f1f814.mp4
Selecting a file from gallery or documents
Uploading Screen Recording 2021-06-10 at 21.47.51.mov…
Android

Android 11
When a user have manually denied permissions
https://user-images.githubusercontent.com/12156624/121572297-ade88280-ca2c-11eb-8ebb-f8275f806fb2.mp4
Selecting a file from gallery or documents
https://user-images.githubusercontent.com/12156624/121572413-d3758c00-ca2c-11eb-8a01-c35b56dd6593.mp4
Android 10
When a user have manually denied permissions
https://user-images.githubusercontent.com/12156624/121571078-3d8d3180-ca2b-11eb-9953-6fbab428ef36.mp4
Selecting a file from gallery or documents
https://user-images.githubusercontent.com/12156624/121570901-061e8500-ca2b-11eb-871b-64be01ebf3fa.mp4

Merged and resolved conflicts

Bump, @Gonals this is ready

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging in version: 1.0.71-1🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production in version: 1.0.73-3🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Enrich DB tables with useful fields - Direction, Day of Week

Once the RDS is complete in Phase 1, we'd like to enrich the database with more fields that are useful.  If you have special fields or views you need for your analysis, you can make a pull request to add support for it with examples to this repo so everyone can benefit.  Use this issue as a place to discuss and collaborate.

Looking at adding jam direction.  Suggestions for other fields welcome.

This is done in latest code.


Update Postnord details in Karpenter Adopters list

Fixes #N/A
Description
How was this change tested?
Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>2
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 83.005%

Totals

Change from base Build<PHONE_NUMBER>5:
0.02%

Covered Lines:
5519

Relevant Lines:
6649

💛  - Coveralls


[version 1.0.1] 12 mini, 15.4.1

installed through trollstore, 12 mini 15.4.1
when enabling disable do not disturb, it shows every possible system indicator, instead
Heres what im talking about
start at bottom

Ohhhh I think I uploaded the testing build hahahah sorry!!! I’ll post a fix soon.

Fixed in latest release.

this should be a real feature though


[FLINK-32559] Deprecate Queryable State

Remove the generated doc: queryable_state_configuration.html
Remove other related doc/link, e.g.:

Yep. I was hoping the CI docs_404_check to find all the missing links.

@masteryhx Comments addressed, PTAL.

Thanks for the review. I'll merge this once it passes the CI.


dep2nix: remove

Description of changes

With the deprecation of buildGoPackage (#318069), deps.nix files become obsolete - thus also this generator.
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

I think we should at least wait with the dep2nix removal until we remove buildGoPackage. Currently, there are still packages in nixpkgs that have deps files generated with dep2nix. Also we should give downstream users of buildGoPackage/dep2nix time to migrate (which will only start after we set a deprecation notice, as they won't get notified otherwise).

I think we should at least wait with the dep2nix removal until we remove buildGoPackage. Currently, there are still packages in nixpkgs that have deps files generated with dep2nix. Also we should give downstream users of buildGoPackage/dep2nix time to migrate (which will only start after we set a deprecation notice, as they won't get notified otherwise).

Perfectly fine to me.

Do we still depend on dep2nix for any of our packages?

Do we still depend on dep2nix for any of our packages? If worst comes to worse, we can still give downstream packages some hints on how to use dep2nix from older nixos releases.

We don't. And yes, this sounds like a good backup plan. But with the deprecation of Go packages in nixpkgs, this is obsolete anyway.


Let plot_bloch_multivector name each sphere according to the circuit registers

What should we add?
When providing quantum circuit registers with a custom name like this

it would be convenient to get the names of each qubit properly choosen when drawing state vectors

Which is unfortunally hardcoded here for now.
This would be nice to be able to provide a list of names to the plot_bloch_multivector function, or even better, to that have the statevector structure hold the qubit names.

If this is something of interest, and @jzy3d wasn't planning to work on it, I will like to help.


nitweb: misc enhancements and cleaning

PR summary

remove useless modules since angular introduction
factorize some angular code
factorize routes /package, /group, /module... into /doc
display error messages
add a loading progress bar

Unified routes
Instead of having different prefix on the kind of mentity, URLs are no unified under the doc/ prefix:

http://nitweb.moz-code.org/doc/core
http://nitweb.moz-code.org/doc/core::Array
http://nitweb.moz-code.org/doc/core::Sequence::append

Error messages
Unknown mentities now trigger an error message:

http://nitweb.moz-code.org/doc/core::Sequence::append2

Loading bar
There is now an orange (but discrete) progress bar in the top of the screen while loading ressources dynamically.
Checkout the top of the screen while loading: http://nitweb.moz-code.org/

Should fix one point of #2177

:+1: +1

+1


Do not call winstonLogger.debug() if DEBUG=false.

It seems the winston library has some issues with garbage collecting when a log function with a level lower than the current level is called. Fixed this by not calling winstonLogger.debug() if DEBUG env var is not true.
Without the changes:

With the changes:

+ It also seems that bunyan, on the other hand, doesn't have this issue. I'll conduct some quick research on it & share it in the next meeting. We can compare & discuss which library to use!
Related: https://github.com/ainblockchain/ain-blockchain/issues/745

Wow, thanks for sharing!

Thanks for the reviews! Now merging~


Cleaned up the faction related code

Refer to this link for build results (access rights to CI server needed):
http://jenkins.terasology.org/job/DestinationSolPRs/14/
Hooray Jenkins reported success with all tests good!


Create Pages “newly-created-page”

Automatically generated by Netlify CMS

👷 Deploy Preview for mellow-gumdrop-d384ca processing.

Name
Link

🔨 Latest commit
bcbc8c76220afb8ef58b1b9637a437735fd05647

🔍 Latest deploy log
https://app.netlify.com/sites/mellow-gumdrop-d384ca/deploys/63d6a9db38facd0008e4d819


feat: support NodePort services with aws-lb-controller-v2

Pull Request Test Coverage Report for Build 883157669

44 of 76 (57.89%)  changed or added relevant lines in 3 files are covered.
81 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.01%) to 66.441%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

source/service.go
9
12
75.0%

provider/godaddy/godaddy.go
35
43
81.4%

provider/godaddy/client.go
0
21
0.0%

Files with Coverage Reduction
New Missed Lines
%

provider/godaddy/godaddy.go
34
83.44%

provider/godaddy/client.go
47
0%

Totals

Change from base Build 882321858:
0.01%

Covered Lines:
9810

Relevant Lines:
14765

💛  - Coveralls

Looks great


Link inside a td ?

How could I possible place an href or a link inside a td element?
It always seems to filter out any HTML tags. Maybe there's just something i'm missing here?
Thanks!

I need users to have the ability to click on the ID, and it will take them to another page. For example :
<a href="secondpage.php?id=_<ID ROW HERE>_">_<ID ROW HERE>_

I found the weirdest solution ever to my problem..
By simply adding
$(this) = "ZZ";
To line 98 of jquery.tables.js, it now allows me to put HTML tags into identifiers.
So your line 97, 98, 99 should now look like this:
// Create hidden input with row identifier.
$(this) = "ZZ";
var span = '' + $(this).text() + '';

I will look info this tomorrow, but it is working as of now! :)

SCRATCH MY OLD SOLUTION! I realized that that causes issues with editing rows.
I spent some more time looking into the code and found a better solution.
In the same file jquery.tables.js, make the following modification. (Should be line 98, but might be different)
Change
var span = '' + $(this).text() + '';
to
var span = '' + $(this).html() + '';


Password kept when username is changed

If you change your username via the username button, the previous saved password is kept and reused unless the user types in something new. When the username is changed, the password should be cleared out.
Further questions:

Should there be a username button at all? Rather, should it just be set in the authorize dialog that pops up?
Should username be repo specific? Each repo retains and remembers its own username?

This has been Eric's baby, so I dropped this in his lap, though we can reassign later if need be.

Username button is gone, username can be edited in the authorization dialog, password is reset when a new username is entered, username is repo specific and each repo does remember its own username in a given session


Support for List/Array types

Feature Description
DuckDB supports a LIST type (among other nested data types) yet seems evidence at the moment only supports very basic data-types, defaulting to string for all others.
I propose adding support for DuckDBs nested data types, starting with LIST.
Goal of Feature
Supporting these data types would mean being able to use more of DuckDBs power when modelling and querying data. It would also reduce confusion (e.g. recently on Slack) when columns silently change type.
Current Solution / Workarounds
Seems like the full power of DuckDB is available in DuckDB source queries so at the moment, I do all work requiring the list type there.
There's no live reloading with source queries though. Also, having to keep in mind which kind of query I'm writing and where to put it adds significant cognitive load.
Long story short, the workaround is alright but makes for bad developer experience.
Other notes
I'm happy to help with contributions myself, however seems like this might be a more complex change so might need some pointers how to approach it.

I have run into this same problem, our historical data has numerous nested structures, as our intention has been to query it with DuckDB from the start, the use of DuckDB is what attracted us to Evidence.
I see in the 'static/data' folder there is a '*.schema.json' file, which is being generated along with the parquet file when 'npm run sources' is being executed. All of the columns with structured data are being output as strings (JSON), the schema shows these as strings.
I would assume that the structures could be reconstituted and queried using the JSON functions of DuckDB. However, this would likely be much slower than the native structures which DuckDB and Parquet both support. Also, this will require overriding the the duckdb-wasm build which is being used.

just adding my 2 cents here as well - i would also benefit from this feature
in one of my use cases, a day's worth of data starts out as a 6gb collection of complex json files. i use python and duckdb to unnest the json files into around 10 separate tables, each having around 1.2 million rows.
a large amount of the data is repeated, and a technique i've used is to use window functions using the array_agg function to collate the "items of interest" in each table. the length of the array in my case is typically 24 elements. the array elements represent a time shift of 5 minutes; the first value is a recorded value, and all of the remaining values are what was forecast 5, 10, 15, 20, 25 mins etc. beforehand
my aim was to have 2 graphs side by side - left showing the recorded series (always element 1 of the array), and right showing one of the forecast series (e.g. a dropdown would be used to select one position of the array between positions 2-24)

if you have this in your source as my_query.sql
select ['one','two','three'] as list_col

in your markdown file you can do
select list_value(list_col)
from my_query

docs for list_value


How to limit amount of results displayed?

Does the api have the ability to limit the amount of results to be displayed? like I want to only show 5 results from pixiv

Sorry, this feature doesn't exist now, and probably won't.
HibiAPI is not designed to change the data returned from the upstream site API, so it returns the upstream data "as is".
So if there is a feature that the API does not provide, we do not and cannot provide it.
Please implement this feature elsewhere yourself. We regret not being able to provide such support.


Table: allow column headers & content to be right-aligned

All our table header & cells are left-aligned by default, we need a way to override this and right align columns for specific visual UIs.

Duplicated in https://github.com/lumihq/purescript-lumi-components/issues/50


Update announcements-viva-connections.md

Edits based on the Microsoft Writing Style Guide.

@AtkinE
PR has been copyedited and is ready for final review, could you please check and merge? Thanks!


An identifier was deleted rather than obsoleted/merged: GO:0044711  single-organism biosynthetic process

this is gone: no record, no alt_id, no obsolete class!!
[Term]
id: GO:0044711
name: single-organism biosynthetic process
namespace: biological_process
def: "A biosynthetic process - chemical reactions and pathways resulting in the formation of substances - involving a single organism." [GOC:jl]
is_a: GO:0009058 ! biosynthetic process
is_a: GO:0044710 ! single-organism metabolic process
intersection_of: GO:0009058 ! biosynthetic process
intersection_of: bearer_of PATO:0002487 ! single organismal process quality
created_by: janelomax
creation_date: 2012-10-17T15:52:18Z

[ ] add check back to travis @cmungall
[ ] reinstate class as obsolete @pgaudet

This wasn't caught by travis; @kltm caught it with the new complete pipeline
https://build.geneontology.org/job/geneontology/job/pipeline/job/snapshot/65/changes

Not sure what happened. I was trying to merge all these terms with their parent, so it should have been an alt ID of biosynthetic process. Looks like I deleted the ID after the merge (because '  single-organism biosynthetic process' was still a synonym of 'biosythetic process', so I did do a merge. I removed the synonym.
Thanks for catching that !
Pascale

I will add back the synonym and the alternative ID.


run install.sh with bash instead of default shell

not all shells support [[ style string comparison
http://stackoverflow.com/questions/12230690/string-comparison-in-bash-not-found

published<EMAIL_ADDRESS>to npm.


Change uod command function signature for long running commands

This issue proposes a change to how uod command functions are defined. It proposes to support generator functions instead of the current use of cmd.set_complete(). It is mostly a style change but allows internal improvements because internal engine commands already generator functions.
Details:
In command execution function, we currently require the call cmd.set_complete() in all execution functions to indicate when the command is complete. This allows the engine to support long running uod commands. An example is this from demouod:
    def reset(cmd: UodCommand, **kvargs) -> None:
        count = cmd.get_iteration_count()
        max_ticks = 100
        if count == 0:
            cmd.context.tags.get("Reset").set_value("Reset", time())
            cmd.context.hwl.reset_FT01()  # type: ignore
        elif count <= max_ticks:
            progress = count/max_ticks
            cmd.set_progress(progress)
        else:
            cmd.context.tags.get("Reset").set_value("N/A", time())
            cmd.set_complete()

Note that if the set_complete() call if forgotten, the command will run indefinitely.
In the proposed approach we remove set_complete() and instead allow command execution functions to be a generator function . Then the yield can be used until the command is complete: This could look like this:
    def reset(cmd: UodCommand, **kvargs):
        max_ticks = 100
        for iteration in range(max_ticks):
            if iteration == 0:
                cmd.context.tags.get("Reset").set_value("Reset", time())
                cmd.context.hwl.reset_FT01()  # type: ignore
                yield
            elif count <= max_ticks:
                progress = count/max_ticks
                cmd.set_progress(progress)
                yield
            else:
                cmd.context.tags.get("Reset").set_value("N/A", time())

Commands that complete in one iteration, just return when try're done and do not need to use set_complete() or yield. This eliminates the possibility of the uod author forgetting the set_complete() call.

Great idea. This makes a lot of sense. You are very welcome to implement this.
Br Eskild

Nice. We need to consider when because it is a breaking change in uod definitions (all command exec functions need to change a bit)


remove dependency on django-filter, resolves #2635

Thanks! I'm going to test this locally in a couple days, but this is a solid bit of work, and I'm excited to clean up our code!


 You might need to seek help with Heroku's support team.

I was, I'm not so familiar with the whole CLI usage I'm a Visual Studio IDE favorite. So if you could help me even to understand what's the issue is he it will be much appreciated.

That's right, in Heroku go to Settings, there you need to set the Config Var NPM_CONFIG_PRODUCTION=false so Heroku will install all dependencies.
Heroku sees the package.json and understands it's a NodeJS app. So it will run npm install and npm start. That's why there's a gulp build serve inside the package.json.

Event after I did that and installed everything successfully it's still not working.

Cool, I've noticed that the todos won't load under https protocol, change it to http for now.
Closing the issue by now alright?

THIS SOLUTION IS FOR GO LANG
When you deploy an app through heroku, it does not allow you to specify the port number.
In other words, you can not specify your web service's port number as 8000 or something else, heroku decides the port number in runtime.
so, you can not use the following code:
    log.Fatal(http.ListenAndServe(":8000", router))

What you can do is, getting the runtime port of heroku.
In short, just use the following code:
    log.Fatal(http.ListenAndServe(":" + os.Getenv("PORT"), router))


Closes #1680 : Fix failing Travis CI build

Description
Fixed with the help of this answer.
Related issues and discussion
Fixes #1680
Checklist
Make sure you've done all the following (You can delete the checklist before submitting)

[x] Apply the AndroidStyle.xml style template to your code in Android Studio.
[x] Code is well documented
[x] Include unit tests for new functionality
[x] All user-visible strings are made translatable
[x] Code passes Travis builds in your branch
[x] If you have multiple commits please combine them into one commit by squashing them.
[x] Read and understood the contribution guidelines .

Hey @huzaifaiftikhar,
Your changes look good to me!

Green. Merging.


"PEM routines::no start line"  With "SignedDataVerifier" in Production environment

Hello everyone!
I'm validating subcription from IAP Receipt using this library.
Everything is fine during dev in Apple's "Sandbox" mode.
Once I upload my app and run it from a testFlight build I've go this error:

Error: error:0480006C:PEM routines::no start line
at new X509Certificate (node:internal/crypto/x509:119:21)
at /opt/app/node_modules/@apple/app-store-server-library/jws_verification.ts:55:65
at Array.map ()
at new SignedDataVerifier (/opt/app/node_modules/@apple/app-store-server-library/jws_verification.ts:55:53)

Here is how I initiate the call:

    const issuerId = '6f1337a3-1234-4929-9ccd-774e8c02fa18';
    const keyId = 'FG7N3NY68Y';
    const bundleId = 'com.appname.app';
    const teamId = '6JZPD4JMSJ';

    // appAppleId is required when the environment is Production
    const appAppleId = teamId+"."+bundleId;
    const appleEnv = Environment.PRODUCTION;

    const filePath = path.join(ROOT_FOLDER, `/keys/AppleApi_AuthKey_${keyId}.p8`);
    const privateKey = fs.readFileSync(filePath, 'utf8');

    const client = new AppStoreServerAPIClient(privateKey, keyId, issuerId, bundleId, appleEnv);

    const appleRootCAs = [
      fs.readFileSync(path.join(ROOT_FOLDER, '/keys/AppleRootCer/AppleIncRootCertificate.cer')),
      fs.readFileSync(path.join(ROOT_FOLDER, '/keys/AppleRootCer/AppleComputerRootCertificate.cer')),
      fs.readFileSync(path.join(ROOT_FOLDER, '/keys/AppleRootCer/AppleRootCA-G2.cer')),
      fs.readFileSync(path.join(ROOT_FOLDER, '/keys/AppleRootCer/AppleRootCA-G3.cer')),
    ];
    const enableOnlineChecks = true;

    console.log('privateKey = ', privateKey);

    const verifier = new SignedDataVerifier(appleRootCAs, enableOnlineChecks, appleEnv, bundleId, appAppleId);

I'm first trying to run in Production env then in sandbox as requested in apple's documentation.
The files are correctly read. Login private key shows:

privateKey =  -----BEGIN PRIVATE KEY-----
MIGTAbEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQg4n35kqKOEJA5ITBZ
lf5QfWlaj1re4R60jFflAmzfJQKgCgYIKoZIzj0DABehRANCAATvNxWUh/WGfw+q
OW1kMsTRNyBN7IwS861VjFvtQKN7r8wlvG1jTw+vTpsv/84xZw/H+IDmFLnOkAbS
yRfk1PcT
-----END PRIVATE KEY-----

more log values :
enableOnlineChecks :  true
environment :  Production
bundleId :  com.appname.app
appAppleId :  6JZPD4JMSJ.com.appname.app    <=  is this appId format correct ?
(All keys and appname/ team id have been change for obvious security reason)
Can you see anything I do wrong  ? Is Apple root Certificate loading ok ?
should we "enableOnlineChecks"  ?
Tank you for your help.

Once I upload my app and run it from a testFlight build I've go this error:
To confirm, the library is not running on the app, you are just decoding a signed transaction received from the app, correct?
I'm first trying to run in Production env then in sandbox as requested in apple's documentation.
I don't believe our current documentation recommends this. We always recommend sending the expected environment along with the signed transaction, and then just using that in your verification directly so you don't have to try one and then the other.
appAppleId : 6JZPD4JMSJ.com.appname.app
No it should be a numerical value.
Is Apple root Certificate loading ok ?
This error appears to be when parsing the appleRootCAs files, please check the array of appleRootCAs contains valid values.

"you are just decoding a signed transaction received from the app, correct?"
=> Yep this is correct.
"I'm first trying to run in Production env then in sandbox as requested in apple's documentation.
I don't believe our current documentation recommends this"
=> I'm pretty sure I've read this somewhere and the apple app verification team sent this to me last week: "The recommended approach is for your production server to always validate receipts against the production App Store first. If validation fails with the error code "Sandbox receipt used in production," you should validate against the test environment instead."
I'll check my root certificates and see if I can fix this .
Thank you for the answer.

The recommended approach is for your production server to always validate receipts against the production App Store first. If validation fails with the error code "Sandbox receipt used in production," you should validate against the test environment instead.

These are not receipts, they are signed transactions, that advice applies when using the deprecated receipts from device and the deprecated verifyReceipt endpoint, it should no long be needed.

Thank you for this precision, it is very confusing to find so much information and docs for the deprecated method.
"Validate Receipt" meant to apply subscription from a previous purchase using this process (trunated code for simplicity)
  const receiptUtil = new ReceiptUtility();
  const transactionId = receiptUtil.extractTransactionIdFromAppReceipt(appReceipt);

  const client = new AppStoreServerAPIClient(privateKey, keyId, issuerId, bundleId, appleEnv);
  const response = client.getTransactionHistory(transactionId, revisionToken, transactionHistoryRequest);
  transactions.concat(response.signedTransactions);

  verifier = new SignedDataVerifier(appleRootCAs, enableOnlineChecks, appleEnv, bundleId, appAppleId);
  for each (transactions) verifier.verifyAndDecodeTransaction(transaction);

This whole process is needed while "validating receipts" right ?

@guiann
Generally we recommend using Storekit 2 on the client side and directly validating these with the SignedDataVerifier. However, if you need to support clients using deprecated Storekit, then yes, this appears to be the truncated process to extract data from a legacy receipt and get transaction data for the user from the App Store Server API


Cotary Create: Support ENS address resolution

ENS would be very easy to support and would improve UX significantly for those that use it.

On further examination this cannot be done from the UI and will require a lib change because of how we validate fields.


Support for cloudflare-pages

Hi, seen this mentioned in another issue but no clear answer was given.
When I build for the cloudflare-pages environment I get the following error:
  at Object.resolveId (node_modules/nitropack/dist/shared/nitro.4ea992bc.mjs:1973:17)
  at async PluginDriver.hookFirstAndGetPlugin (node_modules/rollup/dist/es/shared/node-entry.js:18592:28)
  at async resolveId (node_modules/rollup/dist/es/shared/node-entry.js:17261:26)
  at async ModuleLoader.resolveId (node_modules/rollup/dist/es/shared/node-entry.js:17675:15)
  at async node_modules/@rollup/plugin-commonjs/dist/es/index.js:785:16
  at async Promise.all (index 3)
  at async node_modules/@rollup/plugin-commonjs/dist/es/index.js:777:32
  at async rewriteRequireExpressionsAndGetImportBlock (node_modules/@rollup/plugin-commonjs/dist/es/index.js:1354:28)
  at async transformCommonjs (node_modules/@rollup/plugin-commonjs/dist/es/index.js:1928:23)
  at async transform (node_modules/rollup/dist/es/shared/node-entry.js:17593:16)

 ERROR  Cannot resolve "pnpapi" from "/node_modules/esbuild/lib/main.js" and externals are not allowed!

Should I be able to build for this environment? If not, are you able to advise on when it may be available - if all?
Thanks.

Duplicateof #2


Plotting Graph with node positions throws error

Plotting a graph giving manually defined positions:
hvnx.draw(G, pos=pos, width=500, height=500, node_size=0, with_labels=False)

Bizarrly gives an error about trying to convert data to Xarray format:
DataError                                 Traceback (most recent call last)
<ipython-input-161-81fb1ac94322> in <module>
----> 1 hvnx.draw(G_mst, pos=pos, width=500, height=500, node_size=0, with_labels=False)

~/Scratch/.conda/envs/scienceforge/lib/python3.7/site-packages/hvplot/networkx.py in draw(G, pos, **kwargs)
    223
    224     # Construct Graph object
--> 225     g = _from_networkx(G, pos, **params)
    226
    227     if 'nodelist' in kwargs:

~/Scratch/.conda/envs/scienceforge/lib/python3.7/site-packages/hvplot/networkx.py in _from_networkx(G, positions, nodes, cls, **kwargs)
    107             dim = col
    108         vdims.append(dim)
--> 109     nodes = cls.node_type(node_data, vdims=vdims)
    110
    111     # Construct graph

~/Scratch/.conda/envs/scienceforge/lib/python3.7/site-packages/holoviews/core/data/__init__.py in __init__(self, data, kdims, vdims, **kwargs)
    209         validate_vdims = kwargs.pop('_validate_vdims', True)
    210         initialized = Interface.initialize(type(self), data, kdims, vdims,
--> 211                                            datatype=kwargs.get('datatype'))
    212         (data, self.interface, dims, extra_kws) = initialized
    213         super(Dataset, self).__init__(data, **dict(kwargs, **dict(dims, **extra_kws)))

~/Scratch/.conda/envs/scienceforge/lib/python3.7/site-packages/holoviews/core/data/interface.py in initialize(cls, eltype, data, kdims, vdims, datatype)
    237                 continue
    238             try:
--> 239                 (data, dims, extra_kws) = interface.init(eltype, data, kdims, vdims)
    240                 break
    241             except DataError:

~/Scratch/.conda/envs/scienceforge/lib/python3.7/site-packages/holoviews/core/data/xarray.py in init(cls, eltype, data, kdims, vdims)
    175             raise DataError("xarray Dataset must define coordinates "
    176                             "for all defined kdims, %s coordinates not found."
--> 177                             % not_found, cls)
    178
    179         return data, {'kdims': kdims, 'vdims': vdims}, {}

DataError: xarray Dataset must define coordinates for all defined kdims, [Dimension('x'), Dimension('y'), Dimension('index')] coordinates not found.

XArrayInterface expects gridded data, for more information on supported datatypes see http://holoviews.org/user_guide/Gridded_Datasets.html

Bizarre indeed. Any chance you could provide a reproducible example by providing a definition of G?

The code below produces the error. Using JupyterLab (in hub environemnt), latest conda-forge versions of Python 3.7, hvplot, networkx.
import networkx as nx
import hvplot.networkx as hvnx

data = {'directed': False,
 'multigraph': False,
 'graph': {},
 'nodes': [{
   'pos': (2503912.5, 1117924.31),
   'id': 2035395},
  {'pos': (2501366.88, 1117228.62),
   'id': 1014313},
  {'pos': (2500027.5, 1116905.63),
   'id': 2038252},
  {'pos': (2498615.5, 1120565.88),
   'id': 1017682},
  {'pos': (2498622.25, 1120581.0),
   'id': 1017683},
  {'pos': (2500034.38, 1116879.62),
   'id': 1012469},
  {'pos': (2496947.0, 1117822.75),
   'id': 1029078},
  {'pos': (2496907.75, 1117850.25),
   'id': 1028759},
  {'pos': (2503905.0, 1117944.75),
   'id': 1005112},
  {'pos': (2501352.0, 1117201.75),
   'id': 1014293}],
 'links': [{'index': 3580380,
   'full_distance': 21.7725423411625,
   'source': 2035395,
   'target': 1005112},
  {'index': 1844454,
   'full_distance': 30.7150012209454,
   'source': 1014313,
   'target': 1014293},
  {'index': 4628693,
   'full_distance': 16.558287955081,
   'source': 1017682,
   'target': 1017683}]}

G = nx.json_graph.node_link_graph(data)

pos=nx.get_node_attributes(G,'pos')
hvnx.draw(G, pos=pos, width=500, height=500, node_size=10, with_labels=False)

Running the code above, I get an error but the exception is a little different from what you reported above:

DataError: The shape of the pos value array does not match the expected dimensionality indicated by the key dimensions. Expected 3-D array, found 2-D array.

I don't get why it is expecting a 3D array of positions here...

I think this is caused by some kind of collision between having a pos attribute attached to the nodes and passing in a pos argument to the hvnx.draw function. With the issue that brought me to this thread, I'm finding myself able to successfully draw the graph if I either:

Attach pos as a node attribute and don't pass a pos argument to the hvnx.draw function, or
Don't set a pos attribute on any nodes in the graph, and instead provide pos as an argument to hvnx.draw function

I think this is caused by some kind of collision between having a pos attribute attached to the nodes and passing in a pos argument to the hvnx.draw function. With the issue that brought me to this thread, I'm finding myself able to successfully draw the graph if I either:

Attach pos as a node attribute and don't pass a pos argument to the hvnx.draw function, or
Don't set a pos attribute on any nodes in the graph, and instead provide pos as an argument to hvnx.draw function


[meta] Charts Infrastructure

This is a meta ticket to build out the chart publishing infrastructure. This issue may move somewhere else, but for now this seems like the best place!
Relates to #349
Workflow releases should be published as signed and versioned charts available at charts.deis.com.
We need to build out the production repo infrastructure and automation, including:

nail down chart hosting location (GCS, S3)

bucket access logs so we can keep an eye on downloads

CDN-ify charts.deis.com (optional?)
SSL-ify charts.deis.com
automate chart publishing (packaging):

index regeneration
provenance file generation
publish .prov and .tgz to hosting location

document as part of the release process

This is a draft so @helgi @kmala feel free to edit/update the issue!

Off hand: throwing CDN in there often means none / reduce / funky logs but something to look at if we want CDN (eventually)

we can publish charts in two ways:

Individual component repo:

Each chart will be its own repo like builder in deis/builder etc., and a merge to master will package the charts and upload to the chart repo with the same semver(ex: 2.0.0-dev) always and a tag creation should package and upload to the chart repo with the semver as the tag.
Workflow repo will have the main chart with all other components as dependencies and version as the semver which we used to merge to master( 2.0.0-dev) and a tag release should update those versions with the latest tags of the each component and publish the release charts.
Jenkins e2e job should fetch the chart in the master and do a helm dependency update before an install so that the latest changes are always taken.
The main disadvantage with this approach is that some of our components are dependent on common resources like builder, database and registry require objectstore secret and where should we place that secret. One way would be to duplicate the secret under each repo which means we now create 3 objectstore secrets instead of one.

Current Approach:

Have all the charts in a single repo like https://github.com/kmala/charts/tree/gh-pages with all the charts of workflow under a single folder but each component has subfolder.
e2e jobs will work in the same way as currently pull the dev charts and install it or release chart during a release.

I like the first approach.
With each chart in their own repository, we can refer to the meta-package for the packages that depend on each other, while allowing the components that can stand alone as a separate chart some breathing room (i.e. the router).

The main disadvantage with this approach is that some of our components are dependent on common resources like builder, database and registry require objectstore secret and where should we place that secret.

I'd place that secret in the workflow chart, and just document the components that cannot stand on their own (i.e. Workflow-specific components) a big fat warning/message saying "this chart cannot be deployed alone. Please install the workflow chart to get this package up and running".

@slack @helgi do you want to add anything?

we shoudl think of components like builder as a library. Its not useful on its own but can be shipped independently from other things.

@jchauncey did you mean can't be shipped independently?

I think @jchauncey agrees that we should go forward with option 1 :)

yes we should do option 1

I want option 1 but we need to think about how we are going to deal with development - How do I install all current components that have not been "shipped" yet?
Until we have a good answer to that then I think we may have to start with option 2 while we are pre-stable with helm v2 charts

How do I install all current components that have not been "shipped" yet?
for that we have to use same semver tag and do a helm dep update before installing. I had mentioned about tackling of the jenkins jobs in my approach. My only concern was with the common secrets stuff.

Can you describe that workflow in more detail? What if I have not committed the code? Just have it locally that is

if anyone is playing with the chart locally then he would install using helm install <path-to-charts> and not use remote.

One way would be to duplicate the secret under each repo which means we now create 3 objectstore secrets instead of one.

I don't see a good way around this, and it doesn't sound that bad anyway.

approaches for release of builder and controller:

while creating builder/controller charts check the latest tags of the slugbuilder/runner and populate them in the builder/controller charts. This would mean we have to create a builder/controller chart after the slugbuilder/runner release is done and we should release a new builder/controller when a new slugbuilder/runner release is done even when there is no need for release of builder/controller.

Have slugbuilder/slugrunner have a secret or configmap as their release artifact which mentions the image tag and other things and make the builder/controller use them. This would mean each thing can be released on their own without depending on others and workflow chart will have the latest versions of all the things.

I vote for 2) from a cleaner/less 'special' logic CI perspective


Does not detect usb drive when running in osx

I've got a USB bluray drive, when I plug drop a bluray disk into the drive the docker container does not detect any changes. Can the readme give an example of how to use this with OSX and/or a usb drive.

I cannot help with hardware issues. This is something for the docker devs.

The docker run would need a change, e.g /dev/sr0 would be /dev/disk1 or something similar.
I'll knock something up which detects the OS and changes the docker run command depending on OS and device specific availability. Linux would have the same problem for usb blurays drives. This is NOT a hardware "issue".
I think the readme would also benefit massively from allowing for multiple cdrom drives (you've even got a link to someone who's achieved this). Have multiple docker instances each looking at a different /dev/ perhaps.


Allow revert commit from file history view

In the repository view we can revert a commit:

But not in the file history view:

The file history view used to let you then "view commit in repositories view" and then you could revert from there but this workflow seems to have disappeared in the latest version. It'd be great to be able to revert commit from right clicking on any representation of a commit!

@bobbyrenwick The option still exists in the menu, its just been renamed slightly

I will add a Commit > submenu here to allow access to all the main commit actions

There is now a Commit submenu on the file/line history nodes to allow access to many of the commit actions.
Can you please verify this fix in tomorrow's insiders edition? Be sure to disable/uninstall the stable version of GitLens first.
You can install the insiders edition from here.

Thanks for looking at that, Eric!
I can give the insiders edition a go tomorrow and let you know if I can successfully revert from the file history view.

@bobbyrenwick Any luck? 😄

@eamodio, thank you, that's excellent!

@eamodio, thank you, that's excellent!


Update collation-and-unicode-support.md

Removing the limitation of supplementary characters in Replication due to an internal table having an NTEXT column. As of SQL Server versions 2014 SP3, 2016 SP2, and 2017 CU5, the NTEXT has been replaced with NVARCHAR(max), thus making supplementary characters possible.
@pmasl - can you have a look?

@setemsft : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Combobox listbox refactor

Added fixes based on feedback from Friday's test session.

You can add merge-ready when ready


UI of main tabs

The colors are a little different since we have used vs-code colors.

Awesome !!


Cannot run any command after brew update

Please note we will close your issue without comment if you delete, do not read or do not fill out the issue checklist below and provide ALL the requested information. If you repeatedly fail to use the issue template, we will block you from ever submitting issues to Homebrew again.

[x] are reporting a bug others will be able to reproduce and not asking a question. If you're not sure or want to ask a question do so on our Discourse: https://discourse.brew.sh
[x] ran a brew command and reproduced the problem with multiple formulae? If it's a problem with a single, official formula (not cask) please file this issue at Linuxbrew/homebrew-core: https://github.com/Linuxbrew/homebrew-core/issues/new. If it's a brew cask problem please file this issue at https://github.com/caskroom/homebrew-cask/issues/new. If it's a tap (e.g. Homebrew/homebrew-php) problem please file this issue at the tap.
[x] ran brew update and can still reproduce the problem?
[ ] ran brew doctor, fixed all issues and can still reproduce the problem?
brew doctor produces the same exception I'm reporting.
[x] ran brew config and brew doctor and included their output with your issue?

HOMEBREW_VERSION: 1.6.3-2-gdb20cf6
ORIGIN: https://github.com/Linuxbrew/brew
HEAD: db20cf6a67ed870c8264b375e8405898cc160484
Last commit: 11 days ago
Core tap ORIGIN: https://github.com/Linuxbrew/homebrew-core
Core tap HEAD: dc037ef165f57f62e127f39ec5423bbf4b10b3b2
Core tap last commit: 21 hours ago
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew
HOMEBREW_REPOSITORY: /home/linuxbrew/.linuxbrew/Homebrew
HOMEBREW_CELLAR: /home/linuxbrew/.linuxbrew/Cellar
HOMEBREW_CACHE: /home/omer/.cache/Homebrew
HOMEBREW_DEV_CMD_RUN: 1
CPU: octa-core 64-bit 0x69e
Homebrew Ruby: 2.5.1 => /usr/bin/ruby2.5
Clang: 6.0 build 600
Git: 2.16.2 => /usr/bin/git
Curl: 7.58.0 => /usr/bin/curl
Java: N/A
Kernel: Linux 4.15.0-22-generic x86_64 GNU/Linux
OS: Ubuntu 18.04 LTS (bionic)
Host glibc: 2.27
/usr/bin/gcc: 7.3.0
glibc: N/A
gcc: 5.5.0_4
xorg: 20170115_1

brew config doesn't work.
To help us debug your issue please explain:

What you were trying to do (and why): brew update
What happened (include command output):

Error: 765: unexpected token at '{
  "adobe-air-sdk": "homebrew/cask",
  "android-ndk": "homebrew/cask",
  "android-platform-tools": "homebrew/cask",
  "android-sdk": "homebrew/cask",
  "app-engine-go-32": "homebrew/cask/google-cloud-sdk",
  "app-engine-go-64": "homebrew/cask/google-cloud-sdk",
  "auctex": "homebrew/tex",
  "avidemux": "homebrew/cask",
  "awsenv": "Luzifer/tools",
  "chromedriver": "homebrew/cask",
  "cloudfoundry-cli": "pivotal/tap",
  "cmucl": "homebrew/cask",
  "crystax-ndk": "homebrew/cask",
  "corelocationcli": "homebrew/cask",
  "dart": "dart-lang/dart",
  "dbt": "fishtown-analytics/dbt",
  "dwarf-fortress": "homebrew/cask",
  "geany": "homebrew/cask",
  "gimp": "homebrew/cask",
  "grads": "homebrew/cask",
  "gtkwave": "homebrew/cask",
  "helios": "spotify/public",
  "hexchat": "homebrew/cask",
  "horndis": "homebrew/cask",
  "inkscape": "homebrew/cask",
  "jsl": "homebrew/cask",
  "kdiff3": "homebrew/cask",
  "keybase": "homebrew/cask",
  "magit": "dunn/emacs",
  "meld": "homebrew/cask",
  "osxfuse": "homebrew/cask",
  "pdf-tools": "dunn/emacs",
  "pebble-sdk": "pebble/pebble-sdk",
  "quassel": "homebrew/cask",
  "sqlitebrowser": "homebrew/cask",
  "transmission-remote-gtk": "homebrew/cask/transmission-remote-gui",
  "tuntap": "homebrew/cask"
  "iotop": "linuxbrew/extra",
  "libpipeline": "linuxbrew/extra",
  "man-db": "linuxbrew/extra",
  "strace": "linuxbrew/extra",
}
'
Please report this bug:
  https://github.com/Linuxbrew/brew/wiki/troubleshooting
/usr/lib/ruby/2.5.0/json/common.rb:156:in `parse'
/usr/lib/ruby/2.5.0/json/common.rb:156:in `parse'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/tap.rb:513:in `tap_migrations'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/tap.rb:655:in `tap_migrations'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formulary.rb:209:in `formula_name_path'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formulary.rb:189:in `initialize'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formulary.rb:360:in `new'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formulary.rb:360:in `loader_for'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formulary.rb:280:in `factory'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formulary.rb:311:in `from_keg'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formulary.rb:294:in `from_rack'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formula.rb:1389:in `block in installed'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formula.rb:1387:in `each'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formula.rb:1387:in `flat_map'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/formula.rb:1387:in `installed'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/cmd/upgrade.rb:35:in `upgrade'
/home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/brew.rb:101:in `<main>'

What you expected to happen
Update should succeed and subsequent commands should work.
Step-by-step reproduction instructions (by running brew commands)
brew upgrade and kaboom...

Possibly a duplicate of #715

Fixed by https://github.com/Linuxbrew/homebrew-core/pull/7851


Show potential bay templates from SITIPE for a given Bay from SQL database

As a user of the SITIPE editor plugin I want to see all bay templates that can be added to a  Bay element.
Requirements
add a playlist_add icon button to right upper corner
by clicking show a list with all possible bay templates
first get the assignedBayTypicals for a given version 1.00 like so SELECT assignedBayTypicals FROM [databasename].[dbo].[frameworkID_SYSTEM_VERSION_LIST] WHERE version="1.00"
this is a point separated array of the different typical ID like so ID1.ID2.ID3
for each of the given bay template IDs get the bay template name like so SELECT name FROM [databasename].[dbo].[frameworkID_BayTypicals_LIST_]
DataBase dependencies
frameworkID: this is a variable given once per user e.g. Alliander. I this story is is given as cf3 and is needed to query the proper as it is part of the table name like so SELECT ...  This means that you can have multiple versions of everything in the data base. In this story the version is given as 1.00 . You can find the different version within SELECT version FROM [databasename].[dbo].[frameworkID_SYSTEM_VERSION_LIST]

Query
SELECT * FROM cf3__BayTypicals_LIST_
WHERE accessId IN (
SELECT VALUE FROM cf3__SYSTEM_VERSION_LIST_ CROSS APPLY STRING_SPLIT(assignedBayTypicals, ',')
WHERE version = '1.00'
);

We are allowed to share the Siemens example data in order to test it.

This has been merged. Closing the issue


fix: galactic build support

Build fails on Linux ROS2 galactic with the following CMake error:
--- stderr: sick_scan
CMake Error at CMakeLists.txt:651 (rosidl_get_typesupport_target):
Unknown CMake command "rosidl_get_typesupport_target".
Simple fix help for building on ROS2 galactic.

Thanks for your support. We will integrate this.


fix: be less picky about installing deps

:tada: This PR is included in version 1.0.0-alpha.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


assign priorities to jobs

Often there are more customers than the available vehicle fleet can serve. Then it would be nice to assign priorities to customers that must be served to differentiate them from those that can be serverd later or omitted at all.

I d suggest to introduce 3 priority levels: 1 = high, 2 = normal and 3 = low. As far as I can judge it now, it should be an appropriate differentiation (at least I do not know why we would need more levels).

seems to work :)

Is is still work priority for assinging for services?
I run the priority example and it out have some strange exprience.
So is really work or not.
Please help, I newbie with VRP

Can you explain what the problem is? What does not work when using priorities?

Hi! @oblonski
I running this example to a variable the value of priority but it does not give expected value.
Service service1 = Service.Builder.newInstance("1").setPriority(2).addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(5, 7)).build();
        Service service2 = Service.Builder.newInstance("2").setPriority(4).addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(5, 13)).build();

        Service service3 = Service.Builder.newInstance("3").setPriority(4).addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(15, 7)).build();
        Service service4 = Service.Builder.newInstance("4").setPriority(4).addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(15, 13)).build();

Thanks. What are your expectations?

Sir @oblonski I was seeing the result in graph stream but the result was strange.
The expectation is like should work according to the priority show the service should be the need to done in this step. -> "1" -> "2" but the output  "2" -> "1".

Also, some tweak the in priority it gives me strange result.

Priorties have no impact on the activity sequence at all. If you only had a capacity to serve 2 of your 4 jobs, then the one with higher priority should be prefered. That is the idea.

Often there are more customers than the available vehicle fleet can serve. Then it would be nice to assign priorities to customers that must be served to differentiate them from those that can be served later or omitted at all.

Okay, Sir, I got it the priority.
Sir How do I control the activity sequence.

Service service1 = Service.Builder.newInstance("1").addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(5, 7)).build();
        Service service2 = Service.Builder.newInstance("2").addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(5, 13)).build();

        Service service3 = Service.Builder.newInstance("3").addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(15, 7)).build();
        Service service4 = Service.Builder.newInstance("4").addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(15, 13)).build();

Can I get about it?

Hi! @oblonski I running this example to a variable the value of priority but it does not give expected value.
Service service1 = Service.Builder.newInstance("1").setPriority(2).addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(5, 7)).build();
        Service service2 = Service.Builder.newInstance("2").setPriority(4).addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(5, 13)).build();

        Service service3 = Service.Builder.newInstance("3").setPriority(4).addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(15, 7)).build();
        Service service4 = Service.Builder.newInstance("4").setPriority(4).addSizeDimension(WEIGHT_INDEX, 1).setLocation(Location.newInstance(15, 13)).build();

Priority 2 is assigned by default in the class Service and Shipment: private int priority = 2;.
So using priority=2 is the same as not using it.
Using priority > 2, means decreasing the priority by default.


Split - Avatar is opened with delay when accessing from split bill confirmation page

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4-37.3
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Go to FAB > Request money > Manual
Enter amount > Next
Select any two participants > Next
On the confirmation page, click on one of the participants' name
Click on the avatar

Expected Result:
The user avatar opens with delay
Actual Result:
The user avatar opens with delay after clicking on user avatar
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/d638dc1a-45f8-4799-a223-028fca85f8b4
View all open jobs on GitHub

We think that this bug might be related to #vip-split-p2p-chat-groups

I don't really understand the actual vs expected result here. The only difference I see is that the loading spinner shows much more briefly on production vs staging, and that's not a big problem IMO. I'm going to remove the blocker label, and close this issue because I don't see any real problem worth fixing.

Expected Result:
The user avatar opens with delay
Actual Result:
The user avatar opens with delay after clicking on user avatar


branch-2.0 make TimeUtils formatter use correct time_zone (#37465)

All timestamp/datetime parsing in Doris is controlled by the session variable time_zone.


909 Remove GenerationConfig wrapper class

Description
GenerationConfig needlessly wraps around GenerationConfigSource
removing this will make it easier to untangle the underlying config sources
which will be a prerequisite to the orchestrator changes
nothing has been renamed yet.
Should i rename the class that contains constants and enums to something like "ConfigDetails"?
Issue
Related to #909

Moving to be part of #958


added highlights and aliases filtering

actually https://github.com/datacamp/rdocumentation-app/issues/224, but forgot to start new branch
(rebased on dev though)

Looks good !


switch to yarn in appveyor

Motivation
switch to yarn to keep consistent. Windows android  build pass: https://ci.appveyor.com/project/gengjiawen/react-native/build/job/xyof6052yg2uhnmw.
Test Plan
pass all current ci.
Related PRs
none
Release Notes
[GENERAL] [INTERNAL] [CI] - switch to yarn.

@facebook-github-bot shipit


Flesh out color values

https://github.com/jxv/grid-proto/blob/a8a9784d751c7372f32b0b54590267300d4c641e/src/GridProto/Internal/Core.hs#L35
Hi there. I just wanted to ask how you want the color values to be fleshed out. What colors should be added? And with the addition of cool and warm black/white, are you keeping Black0, Black1, Black2 and White0, White1, White2?


metadata issue.

Getting this error on ng serve:
ng-push.d.ts, found version 4, expected 3

https://github.com/flauc/ng-push/issues/3 is the issue

This should be resolved now.


[KV] Overhaul KV API docs

this resolves https://github.com/cloudflare/cloudflare-docs/issues/14454 regarding kv
~need to give it a final review tomorrow, but sharing early to get feedback~ Self-reviewed, ready for PR review

Ready for PR review

Converted into https://github.com/cloudflare/cloudflare-docs/pull/16435


Gem::Specification#rubyforge_project= is deprecated on 12/1/2019

NOTE: Gem::Specification#rubyforge_project= is deprecated with no
replacement. It will be removed on or after 2019-12-01.
rails-footnotes-5abc557dfae0/rails-footnotes.gemspec:15.

Closing this issue still it is very old.


Update default docker image for bowtie2.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/cannoli-prb/144/Build result: FAILUREGitHub pull request #140 of commit 90d7cbf1c143d60a27313979dae60ce598a7fa17 automatically merged.Notifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'[EnvInject] - Loading node environment variables.Building remotely on amp-jenkins-worker-03 (centos spark-test) in workspace /home/jenkins/workspace/cannoli-prbWiping out workspace first.Cloning the remote Git repositoryCloning repository https://github.com/bigdatagenomics/cannoli.git > git init /home/jenkins/workspace/cannoli-prb # timeout=10Fetching upstream changes from https://github.com/bigdatagenomics/cannoli.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/bigdatagenomics/cannoli.git +refs/heads/:refs/remotes/origin/ # timeout=15 > git config remote.origin.url https://github.com/bigdatagenomics/cannoli.git # timeout=10 > git config --add remote.origin.fetch +refs/heads/:refs/remotes/origin/ # timeout=10 > git config remote.origin.url https://github.com/bigdatagenomics/cannoli.git # timeout=10Fetching upstream changes from https://github.com/bigdatagenomics/cannoli.git > git fetch --tags --progress https://github.com/bigdatagenomics/cannoli.git +refs/pull/:refs/remotes/origin/pr/ # timeout=15 > git rev-parse origin/pr/140/merge^{commit} # timeout=10 > git branch -a -v --no-abbrev --contains 69b9d0e5584c3537f65928748d152d37fe18ea98 # timeout=10Checking out Revision 69b9d0e5584c3537f65928748d152d37fe18ea98 (origin/pr/140/merge) > git config core.sparsecheckout # timeout=10 > git checkout -f 69b9d0e5584c3537f65928748d152d37fe18ea98First time build. Skipping changelog.Triggering cannoli-prb ? 2.7.3,2.11,2.2.1,ubuntucannoli-prb ? 2.7.3,2.11,2.2.1,ubuntu completed with result FAILURENotifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'
Test FAILed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/cannoli-prb/146/
Test PASSed.

Coverage remained the same at 19.242% when pulling<PHONE_NUMBER>ef8f4cdb65549bf5aa2e160bacba77 on heuermh:bowtie2-docker into 2f5b02cb8369dc8553e24671d9686c14c3777ea4 on bigdatagenomics:master.


v4.0.0

Description

Fixes # (issue)
Checklist

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I wrote unit tests for my code (if tests is required for my changes)
[ ] I have made changes in CHANGELOG.md file

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 95.03%. Comparing base (60f8de2) to head (6b51f2d).

Additional details and impacted files
@@            Coverage Diff            @@
##             master      #20   +/-   ##
=========================================
  Coverage     95.03%   95.03%
  Complexity       56       56
=========================================
  Files            10       10
  Lines           141      141
=========================================
  Hits            134      134
  Misses            7        7

Flag
Coverage Δ

php
95.03% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

not need any more


feat: implement git clone, commit, and push, and overwrite directives

WIP

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 47.65886% with 313 lines in your changes missing coverage. Please review.

Please upload report for BASE (promotion-directives@38fe212). Learn more about missing BASE report.

Files with missing lines
Patch %
Lines

internal/controller/git/work_tree.go
35.10%
136 Missing and 23 partials :warning:

internal/controller/git/base_repo.go
53.27%
41 Missing and 16 partials :warning:

internal/controller/git/bare_repo.go
62.29%
25 Missing and 21 partials :warning:

internal/controller/git/repo.go
50.00%
18 Missing and 15 partials :warning:

cmd/credential-helper/main.go
0.00%
6 Missing :warning:

internal/controller/promotion/pullrequest.go
0.00%
6 Missing :warning:

internal/controller/promotion/git.go
70.58%
5 Missing :warning:

internal/controller/freight/finder.go
80.00%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@                   Coverage Diff                   @@
##             promotion-directives       #5   +/-   ##
=======================================================
  Coverage                        ?   49.02%
=======================================================
  Files                           ?      259
  Lines                           ?    18137
  Branches                        ?        0
=======================================================
  Hits                            ?     8891
  Misses                          ?     8754
  Partials                        ?      492

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Superseded by https://github.com/akuity/kargo/pull/2537


[help] getnetplugin: failed to get TRP

Hi guys, I'm currently trying to create a multus-crd setup using the playbooks here as reference but am having issues adding a CRD network to the pod. I do have the appropriate clusterrole and clusterrolebindings for each node and get the appropriate output when checking my CRDs and networks:
[root@Kube-Master ~]# kubectl get crd
NAME                      AGE
networks.kubernetes.com   1d
[root@Kube-Master ~]# kubectl get networks
NAME           AGE
flannel-conf   36s
macvlan-conf   29s

However, when I try to create flannelpod/macvlanpod as seen on doubtv's blog the pod does not start and I receive the following error in systemctl status kubelet:
docker_sandbox.go:340] failed to read pod IP from plugin/docker: NetworkPlugin cni failed on the status hook for pod "flannelpod_default": CNI failed to retrieve network namespace path: cannot find network namespace for the terminated container "706d1f96593c67051e912aad8040c65db4b61b58c186777a6cd88f796924c56e"
cni.go:242] CNI failed to retrieve network namespace path: cannot find network namespace for the terminated container "706d1f96593c67051e912aad8040c65db4b61b58c186777a6cd88f796924c56e"
cni.go:277] Error deleting network: Multus: Err in getting k8s network from pod: getPodNetworkObj: failed in getting the netplugin: getnetplugin: failed to get TRP, refer Multus README.md for the usage guide: unknown
remote_runtime.go:115] StopPodSandbox "706d1f96593c67051e912aad8040c65db4b61b58c186777a6cd88f796924c56e" from runtime service failed: rpc error: code = Unknown desc = NetworkPlugin cni failed to teardown pod "flannelpod_default" network: Multus: Err in getting k8s network from pod: getPodNetworkObj: failed in getting the netplugin: getnetplugin: failed to get TRP, refer Multus README.md for the usage guide: unknown
kuberuntime_manager.go:800] Failed to stop sandbox {"docker" "706d1f96593c67051e912aad8040c65db4b61b58c186777a6cd88f796924c56e"}

The issue seems to be specific to the CRD, if I add flannel/macvlan as a default delegate to multus-crd.yaml and apply it, the pod will start with the delegated network but the CRDs are still ignored. Is there something I'm missing here? Thanks!

Alright, that's definitely permissions issues with Multus getting the CRDs from the Kube API. The error message in Multus is a bit dated -- TRPs (third party resources) were the precursor to CRDs (custom resource definitions)
Can you see if the clusterrolebindings were created properly? The playbooks should do those for you.
Mine, on a working install, look like:
[centos@kube-master ~]$ kubectl get clusterrolebinding | grep -i multus
multus-node-kube-master                                18d
multus-node-kube-node-1                                18d
[centos@kube-master ~]$ kubectl describe clusterrolebinding multus-node-kube-node-1
Name:         multus-node-kube-node-1
Labels:       <none>
Annotations:  <none>
Role:
  Kind:  ClusterRole
  Name:  multus-crd-overpowered
Subjects:
  Kind  Name                     Namespace
  ----  ----                     ---------
  User  system:node:kube-node-1
[centos@kube-master ~]$ kubectl get clusterrole multus-crd-overpowered
NAME                     AGE
multus-crd-overpowered   18d

I re-read and realize you said the clusterrole and clusterrolebindings are there... is it that the pods are created in another namespace? I honestly haven't tested outside the default namespace, and now I'm wondering if that may be something that's wrong with the permissions? Unsure, but, figured I'd add an extra comment.

Not sure what permissions I'd be missing:
[root@Kube-Master ~]# kubectl get clusterrolebinding | grep -i multus
multus-node-Kube-Master.example.com               17d
multus-node-Kube-Node01.example.com               17d
[root@Kube-Master ~]# kubectl describe clusterrolebinding multus-node-Kube-Master.example.com
Name:         multus-node-Kube-Master.example.com
Labels:       <none>
Annotations:  <none>
Role:
  Kind:  ClusterRole
  Name:  multus-crd-overpowered
Subjects:
  Kind  Name                                      Namespace
  ----  ----                                      ---------
  User  system:node:Kube-Master.example.com
[root@Kube-Master ~]# kubectl get clusterrole multus-crd-overpowered
NAME                     AGE
multus-crd-overpowered   5d

Hit the wrong button, did not mean to close.

I'm having some issues replicating the issue -- does it still happen on subsequent re-runs? I just spun up a cluster with the instructions from the Multus + CRD blog article, but, I couldn't replicate the issue.
Could you share your inventory and extra-vars file if you don't mind?
I'm also having a devil of a time trying to query the API from the node, I swear I've done it before, but, alas, I'm just not having luck today.
In some of the future development of Multus, I've added a bit to the line that outputs that error to make it easier to diagnose what's going on with Multus. Because it is notoriously tricky to figure out what the API is telling you when it fails to get the CRD in the current version @ master HEAD for Multus. In the future versions of kube-ansible, you'll have a way to change what version of Multus you're using (there's a pending PR for it, even).
But for now, you could hack in a different version, if you change the file ./roles/multus-cni/tasks/main.yml and change the play name: Clone multus-cni change:
    version: master

to
    version: "dev/network-plumbing-working-group-crd-change"

This will give you some better error output, however, it also changes the namespace for the CRDs.
So you'd change an example pod to read like:
apiVersion: v1
kind: Pod
metadata:
  name: bothpod
  annotations:
    kubernetes-networks.cni.cncf.io: '[
        { "name": "macvlan-conf" },
        { "name": "flannel-conf" }
    ]'
spec:
  containers:
  - name: bothpod
    command: ["/bin/bash", "-c", "sleep<PHONE_NUMBER>000"]
    image: dougbtv/centos-network
    ports:
    - containerPort: 80


DVC Language Server

DVC Language Server
Current Specification and Documentation:
https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/

Every time you ask for completions the server adds the same completions to the existing list:


Progress of multiple outputs

Anyway to differentiate .on('progress') if there are multiple output streams?

No, and I have no plans for that currently as ffmpeg does not output this information. If you find a way, though... :)


Add LocalizationState to the ConqDataRecorder

LocalizationState is now recorded within the ConqDataRecorder
Clients now includes the GraphNavClient
Updated scripts that use the ConqDataRecorder since the recording function now uses a Clients object instead of passing them all individually

Also consider adding Optional type hints to all the members of the Clients dataclass. It might make the code cleaner when only some clients are needed.

Done in b0e352f


cmd/link: linker fails on linux/amd64 when gcc's annobin plugin is used

What version of Go are you using (go version)?

$ go version
go version devel go1.21-7f59bea53c Tue Feb 21 05:09:21 2023 +0000 linux/amd64

Does this issue reproduce with the latest release?
yes, seems to be reproducible at least as far back as go1.18
What operating system and processor architecture are you using (go env)?
go env Output
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOENV="/root/.config/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/root/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/root/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/go/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="devel go1.21-7f59bea53c Tue Feb 21 05:09:21 2023 +0000"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/loki/go.mod"
GOWORK=""
CGO_CFLAGS="-O2 -g"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-O2 -g"
CGO_FFLAGS="-O2 -g"
CGO_LDFLAGS="-O2 -g"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build3131861800=/tmp/go-build -gno-record-gcc-switches"

This is with gcc-13.0.1, binutils-2.40 and glibc-2.37
What did you do?
git clone https://github.com/grafana/loki
cd loki
export CGO_CFLAGS="-fplugin=gcc-annobin"
go build -o logcli ./cmd/logcli
What did you expect to see?
Build finishing successfully or more clear error message being displayed.
What did you see instead?

go build -o logcli ./cmd/logcli
# github.com/grafana/loki/cmd/logcli
panic: unexpected empty container symbol

goroutine 1 [running]:
cmd/link/internal/loader.(*Loader).AddInteriorSym(0xc000004300, 0x16c72f, 0x16c73a)
	/go/src/cmd/link/internal/loader/loader.go:1681 +0x21e
cmd/link/internal/loader.(*SymbolBuilder).AddInteriorSym(...)
	/go/src/cmd/link/internal/loader/symbolbuilder.go:212
cmd/link/internal/loadelf.Load(0xc000004300, 0x842820, 0xbbb07?, 0xc0004fe070, {0x7f9f86b0694f, 0x3}, 0x19a8, {0xc000026b40, 0x2d}, 0x0)
	/go/src/cmd/link/internal/loadelf/ldelf.go:622 +0x207d
cmd/link/internal/ld.ldobj.func1(0xc0000ce000, 0xc0026801b0?, {0x7f9f86b0694f?, 0xc0018b9420?}, 0x7?, {0xc000026b40?, 0x12?})
	/go/src/cmd/link/internal/ld/lib.go:2096 +0x79
cmd/link/internal/ld.hostobjs(0xc0000ce000)
	/go/src/cmd/link/internal/ld/lib.go:1185 +0x18d
cmd/link/internal/ld.(*Link).loadlib(0xc0000ce000)
	/go/src/cmd/link/internal/ld/lib.go:602 +0x5b7
cmd/link/internal/ld.Main(_, {0x20, 0x20, 0x1, 0x7, 0x10, 0x0, {0xc00001a3b1, 0x1, 0x1}, ...})
	/go/src/cmd/link/internal/ld/main.go:269 +0xecb
main.main()
	/go/src/cmd/link/main.go:72 +0xdbb

Thanks for the report.
I don't have a copy of the annobin plugin on my system, and it does not seem to be especially easy to build from source.
Something seems fishy with your stack trace however -- the Go linker is trying to read host objects, which it only does in internal linking mode.  The program that you are building uses CGO, however, and normally we use the external linker for CGO programs.  Is there anything special you are doing to force internal linking? Thanks.

@golang/compiler

Whoops, on closer inspection it looks like there isn't any CGO use in the application itself, just in the various Go libraries (e.g. os/user, net) being linked in.
FYI, you should be able to work around this issue by adding "ldflags=linkmode=external" to your "go build" invocation.

You can easily reproduce this in the fedora:rawhide container. Fedora have annobin plugin built for its gcc and it is installed by default. For bit of context both issues discovery lays in the default C flags that Fedora uses.
I haven't been able to easily reduce the reproducer for both. I was able to only reproduce it in the build of the loki's logcli. So I think that the size of the binary objects might be a factor or some (Go's?) compiler heuristics.
Forcing the external linker is the workaround for both of the issues, I can confirm that.
Thank you for a quick reply.


Update displayOperands to handle optional operands

The displayOperands function previously did not distinguish between optional and required operands. This change updates the function to display optional operands within square brackets and position them at the end of the operand list.

Were you able to test this?

Yes, I was able to test it.
This is a direct copy from the website:  vd,vs2,vs1,[,vm]

I've rebased this branch as well.

Yes, I was able to test it. This is a direct copy from the website: vd,vs2,vs1,[,vm]

Would it be convenient to get rid of that extra comma? To produce vd,vs2,vs1[,vm] instead?


Freezing everything on windows 10

File-watcher is consuming too much disk also freezing everything, I tried by configuring, interval and binary Interval to 2000, but still, it starts hanging after some time.
user.dev.json
{
	 "fileWatcherPlugin": {
		  "touchFile": "./public/index.php",
		  "ignored": "./public/index.php",
		  "watchFileGlobs": [
			   "./public/**/*.js",
			   "./public/**/*.css",
			   "./public/**/*.php"
		  ],
		  "interval": 2000,
		  "binaryInterval": 2000
	 },
	 "wpThemeServer": {
		  "enable": true,
		  "host": "<IP_ADDRESS>",
		  "port": 8090,
		  "sslCert": null,
		  "sslKey": null
	 },
	 "injectWpThemeClient": {
		  "override": null,
		  "file": "./build/index.php"
	 }
}

@karanmandal,
Yikes! Can you provide any more details?

Which OS are you using?
Is this just a bare brand new theme that you're testing, or have you added any other NPMs to your project?
Etc...?

Basically how can I reproduce this on my machine?
Thanks for the reporting the bug and my apologies for the hassle.

@karanmandal,
I just realized that you put "Windows 10" in the Subject. Thanks.

Hi @karanmandal,
I just published a new version of the utils package. All it does is set polling to "false" by default. According to the chokidar docs, that can cause "high CPU utilization."
If that doesn't help you out, you should look at these chokidar options:

depth
awaitWriteFinish
atomic

Also, I wasn't able to reproduce this on my dev machine. If you provide enough details on your setup, then I can try again. I don't mind abandoning chokidar for something else. But I'd need to be able to test it all myself.
I hope that helps. Good luck!

Hi @karanmandal,
Since I was unable to reproduce this and so much time has gone by, I am going to close this.
If you're able to instruct me to create a reproducible scenario, then feel free to reopen it. And I'll take a look then.
Thanks.


where to use SW?

In model, i only see resnet50,and do not see SW. How do you use SW?

@Jinjicheng For the initialization function of ResNet, there are two parameters 'sw_cfg' and 'stage_with_sw', which defines configurations of SW and the stages to use SW.  Please also refer to 'build_norm_layer' function at models/utils/norm.py

Thank you! I will see carefully.


CPLP-457 Registration Request Board - part 1

https://jira.catena-x.net/browse/CPLP-457 Registration Request Board
part 1:

rename useradministration service to administration service
provide separate controllers for user, registration and invitation

@ntruchsess as discussed today here the draft PR for the separate controller with the administration service

@ntruchsess could you please review the PR again? I'm setting the status to open. Thank you!
As discussed implicit logging, error, HttpStatuscode-handling wil be added later on.
FYI: I still need to update the secret regarding the appsettings and take care of the frontend integration changes before merge, so I'll execute the merge myself.


[#9] Helper for filter form

@woylie Here's yesterday's snippet in Flop.Phoenix components.. No tests yet, basically a proof of concept for further discussion. Main point I'm unsure about is still the inputs_for vs. lower-level decision making (see comment).
please take a 👀

@woylie Thanks for your review! As outlined in the comment above, I'm still struggling to fully grasp your vision of the filter_input API and the filter_inputs_for API (with a list of fields). I simplified the current code a bit and dropped the public filter_input for now. Please let me know what you think, if I should proceed (adding features from your list, writing tests), or if you want to have a go on it.

I'm also happy to have a call on this topic, if you are up for it. I'm in CEST, if you hadn't guessed already.

Hey @maltoe, thanks for the update. I'll need to do some exploration before I can come back to you.

@woylie Sure, take your time 👍
One last thing, which came to me yesterday after working on this:

And since you pointed out that filter_inputs_for could be called multiple times with different sets of filters (and possibly different builder functions), I wonder whether this lowest level API is still needed in the end.

This is of course not true, as unfortunately multiple calls to filter_inputs_for (in its current version) would each start over indexing the nested maps at 0. For instance
<.filter_inputs_for fields={[:foo]} ... />
<.filter_inputs_for fields={[:bar]} ... />

generates this HTML:
...
<input name="filters[0][field]" value="foo">
...
<input name="filters[0][field]" value="bar">

so in the resulting parameters foo will be replace by bar. So this is actually not an option for "specializing" certain inputs.

Also feel free to hijack this PR if it helps!


Fix bug in summary print where average firing rate calculation was wrong

This fix deals with the average firing rate calculation on 1ms delay connections

Changes Unknown when pulling af8868af1d8d64e40c2e3054382b03ee8f22ce79 on fix/summaryPrint into ** on master**.


what is the "prev_image" in node of "simple light source"?

When an object image with a white background is used, the overall result appears brighter, which is good. However, I am curious about what effect this has.

It's only to make batching them simpler, mostly for the normal map generation that needs the subject lighted from 4 different directions, example use:


Missing documentation

Hi there
I'm really glad there is a possibility to communicate with the wiimote using python. But is there any kind of documentation about this (except the examples in xwiimote-bindings/examples/python/). I really try to understand what happens there but i do only understand parts of the code. In some situations I do have no Idea why a "True" oder "False" is passed when calling a function.
And is there a way to communicate with a second WiiMote thats connected via Bluetooth to xwiimote?
Sry I'm not able to read the sourcecode in xwiimote.i
Java and Python is ok for me, but this is where my knowlede ends...
Some hint's or documentation would be really cool. But in any case - thanks for writing this bindings :-)

The best documentation you can get is the XWiimote header file. Any functionality is well documented. Although it is C you can easily transfer its usage to Python.


Need example of using event-driven API

Such as CodeCommit's onCommit method.

Moving guide issues to doc repo.


Assigning times in defer dates

Is there a way to assign a time for the current day in defer dates? If I use ask and give it 5pm it sets it to "5pm", but if I set defer: 5pm it gets set to "9am" of the current day.

Any progress on the date parsing?

If I set it to 17h, I get close to what I want — I get 4:59PM.


resource_group should be resource_group_name

def create_powerbiembedded_workspace_collection(cmd, client,
                                                resource_group,

should be
def create_powerbiembedded_workspace_collection(cmd, client,
                                                resource_group_name,

is that a CLI convension?

yes. It's a CLI convension. And it's also related with this issue. https://github.com/Azure/autorest.az/issues/46 if you want to get location of resource group as the default location. CLI will use resource_group_name to get the location.