Upgrade Node to v21

Closes #49
Still throwing a lot of errors:
ERROR in ./src/Style.scss (/Users/todd/code/electrify/node_modules/css-loader!/Users/todd/code/electrify/node_modules/sass-loader/dist/cjs.js!./src/Style.scss)
Module build failed (from /Users/todd/code/electrify/node_modules/sass-loader/dist/cjs.js):
TypeError: this.getOptions is not a function
    at Object.loader (/Users/todd/code/electrify/node_modules/sass-loader/dist/index.js:19:24)
 @ ./src/Style.scss 2:14-127 21:1-42:3 22:19-132
 @ multi ./src/Init.tsx ./src/Style.scss

ERROR in<EMAIL_ADDRESS>741:21
Module parse failed: Unexpected token (741:21)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
|     }
|   }
>   return defaultCase?.();
| }
| async function copyToClipboard(input) {
 @ /Users/todd/code/electrify/node_modules/react-joyride/dist/index.mjs 323:0-49 328:0-43 376:14-18 569:9-13 618:12-16 656:0-64 667:16-26 667:27-32
 @ ./src/components/Compositor.tsx
 @ ./src/Init.tsx
 @ multi ./src/Init.tsx ./src/Style.scss

ERROR in [at-loader] ./src/Globals.tsx:11:30
    TS2339: Property 'initializeApp' does not exist on type 'typeof import("/Users/todd/code/electrify/node_modules/firebase/index")'.

ERROR in [at-loader] ./src/Globals.tsx:23:32
    TS2339: Property 'auth' does not exist on type 'typeof import("/Users/todd/code/electrify/node_modules/firebase/index")'.

ERROR in [at-loader] ./src/Globals.tsx:89:24
    TS2339: Property 'firestore' does not exist on type 'typeof import("/Users/todd/code/electrify/node_modules/firebase/index")'.

ERROR in [at-loader] ./src/components/views/NewGameDetailsContainer.tsx:32:3
    TS2345: Argument of type 'typeof default' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof default' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'default' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.
                  The types returned by 'render()' are incompatible between these types.
                    Type 'React.ReactNode' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactNode'.
                      Type '{}' is not assignable to type 'ReactNode'.
                        Type '{}' is missing the following properties from type 'ReactPortal': children, type, props, key

ERROR in [at-loader] ./src/components/views/LoadingContainer.tsx:59:3
    TS2345: Argument of type 'typeof Loading' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof Loading' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'Loading' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.

ERROR in [at-loader] ../../shared/Theme.tsx:8:28
    TS2307: Cannot find module '@material-ui/core/styles/createMuiTheme'.

ERROR in [at-loader] ./src/components/base/AudioContainer.tsx:33:3
    TS2345: Argument of type 'typeof Audio' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof Audio' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'Audio' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.
                  The types returned by 'render()' are incompatible between these types.
                    Type 'React.ReactNode' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactNode'.
                      Type '{}' is not assignable to type 'ReactNode'.
                        Type '{}' is missing the following properties from type 'ReactPortal': children, type, props, key

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:101:52
    TS2322: Type '"#f44336"' is not assignable to type '"#1e88e5" | "#212121"'.

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:114:9
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.
  The types returned by 'render()' are incompatible between these types.
    Type 'ReactElement<any, string | ((props: any) => ReactElement<any, any> | null) | (new (props: any) => Component<any, any, any>)>' is not assignable to type 'ReactNode'.
      Property 'children' is missing in type 'ReactElement<any, string | ((props: any) => ReactElement<any, any> | null) | (new (props: any) => Component<any, any, any>)>' but required in type 'ReactPortal'.

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:126:9
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:138:9
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.
  The types returned by 'render()' are incompatible between these types.
    Type 'React.ReactNode' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactNode'.
      Type '{}' is not assignable to type 'ReactNode'.
        Type '{}' is not assignable to type 'ReactPortal'.

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:150:9
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.
  The types returned by 'render()' are incompatible between these types.
    Type 'React.ReactNode' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactNode'.
      Type '{}' is not assignable to type 'ReactNode'.
        Type '{}' is not assignable to type 'ReactPortal'.

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:161:9
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:172:31
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:184:40
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartSupplyDemand.tsx:194:20
    TS2605: JSX element type 'VictoryLegendBase' is not a constructor function for JSX elements.
  The types returned by 'render()' are incompatible between these types.
    Type 'ReactElement<any, string | ((props: any) => ReactElement<any, any> | null) | (new (props: any) => Component<any, any, any>)>' is not assignable to type 'ReactNode'.
      Type 'ReactElement<any, string | ((props: any) => ReactElement<any, any> | null) | (new (props: any) => Component<any, any, any>)>' is not assignable to type 'ReactPortal'.

ERROR in [at-loader] ./src/components/base/NavigationContainer.tsx:25:3
    TS2345: Argument of type 'typeof Navigation' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof Navigation' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'Navigation' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.

ERROR in [at-loader] ./src/components/views/FacilitiesContainer.tsx:33:3
    TS2345: Argument of type 'typeof default' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof default' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'default' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.

ERROR in [at-loader] ./src/components/base/ChartFinances.tsx:52:9
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartFinances.tsx:63:9
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartFinances.tsx:72:9
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartFinances.tsx:82:9
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/views/FinancesContainer.tsx:23:3
    TS2345: Argument of type 'typeof default' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof default' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'default' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.

ERROR in [at-loader] ./src/components/base/ChartForecastFuelPrices.tsx:36:11
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastFuelPrices.tsx:48:11
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastFuelPrices.tsx:59:11
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastFuelPrices.tsx:71:11
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastFuelPrices.tsx:83:11
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastFuelPrices.tsx:95:11
    TS2605: JSX element type 'VictoryLegendBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastSupplyDemand.tsx:41:9
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastSupplyDemand.tsx:53:9
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastSupplyDemand.tsx:65:9
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastSupplyDemand.tsx:76:9
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastSupplyDemand.tsx:86:9
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastWeather.tsx:35:11
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastWeather.tsx:48:11
    TS2605: JSX element type 'VictoryAxisBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastWeather.tsx:57:11
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastWeather.tsx:69:11
    TS2605: JSX element type '{ state: {}; getEventState: (eventKey: string | number, namespace: string, childType?: string | undefined) => any; getScopedEvents: (events: any, namespace: any, childType: any, baseProps: any) => {}; ... 43 more ...; events: unknown; }' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/base/ChartForecastWeather.tsx:81:11
    TS2605: JSX element type 'VictoryLegendBase' is not a constructor function for JSX elements.

ERROR in [at-loader] ./src/components/views/ForecastsContainer.tsx:20:3
    TS2345: Argument of type 'typeof default' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof default' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'default' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.

ERROR in [at-loader] ./src/components/views/ManualContainer.tsx:23:3
    TS2345: Argument of type 'typeof Manual' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof Manual' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'Manual' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.

ERROR in [at-loader] ./src/components/Compositor.tsx:4:8
    TS6133: 'Joyride' is declared but its value is never read.

ERROR in [at-loader] ./src/components/Compositor.tsx:176:9
    TS2605: JSX element type 'GlobalHotKeys' is not a constructor function for JSX elements.
  The types returned by 'render()' are incompatible between these types.
    Type 'React.ReactNode' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactNode'.
      Type '{}' is not assignable to type 'ReactNode'.
        Type '{}' is not assignable to type 'ReactPortal'.

ERROR in [at-loader] ./src/components/Compositor.tsx:177:10
    TS2769: No overload matches this call.
  Overload 1 of 2, '(props: TransitionGroupProps<"div", any>): TransitionGroup', gave the following error.
    The types of 'childFactory(...).type' are incompatible between these types.
      Type 'string | ((props: any) => ReactElement<any, any> | null) | (new (props: any) => Component<any, any, any>)' is not assignable to type 'string | ((props: any, deprecatedLegacyContext?: any) => ReactElement<any, any> | null) | (new (props: any, deprecatedLegacyContext?: any) => Component<any, any, any>)'.
        Type 'new (props: any) => Component<any, any, any>' is not assignable to type 'string | ((props: any, deprecatedLegacyContext?: any) => ReactElement<any, any> | null) | (new (props: any, deprecatedLegacyContext?: any) => Component<any, any, any>)'.
          Type 'new (props: any) => Component<any, any, any>' is not assignable to type 'new (props: any, deprecatedLegacyContext?: any) => Component<any, any, any>'.
            Construct signature return types 'Component<any, any, any>' and 'Component<any, any, any>' are incompatible.
              The types returned by 'render()' are incompatible between these types.
                Type 'React.ReactNode' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactNode'.
                  Type '{}' is not assignable to type 'ReactNode'.
                    Type '{}' is not assignable to type 'ReactPortal'.
  Overload 2 of 2, '(props: TransitionGroupProps<"div", any>, context: any): TransitionGroup', gave the following error.
    Types of property 'childFactory' are incompatible.
      Type '(child: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactElement<any, string | ((props: any, deprecatedLegacyContext?: any) => import("/Users/todd/code/electrify/node_modules/<EMAIL_ADDRESS>is not assignable to type '(child: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactElement<any, string | ((props: any, deprecatedLegacyContext?: any) => import("/Users/todd/code/electrify/node_modules/<EMAIL_ADDRESS>Two different types with this name exist, but they are unrelated.

ERROR in [at-loader] ./src/components/Compositor.tsx:190:28
    TS2304: Cannot find name 'Joyride'.

ERROR in [at-loader] ./src/components/CompositorContainer.tsx:53:3
    TS2345: Argument of type 'typeof Compositor' is not assignable to parameter of type 'JSXElementConstructor<never>'.
  Type 'typeof Compositor' is not assignable to type 'new (props: never, deprecatedLegacyContext?: any) => Component<any, any, any>'.
    Construct signature return types 'Compositor' and 'Component<any, any, any>' are incompatible.
      The types of 'refs' are incompatible between these types.
        Type '{ [key: string]: React.ReactInstance; }' is not assignable to type '{ [key: string]: import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance; }'.
          Index signatures are incompatible.
            Type 'React.ReactInstance' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").ReactInstance'.
              Type 'Component<any, {}, any>' is not assignable to type 'ReactInstance'.
                Type 'React.Component<any, {}, any>' is not assignable to type 'import("/Users/todd/code/electrify/node_modules/@material-ui/core/node_modules/@types/react-transition-group/node_modules/@types/react/ts5.0/index").Component<any, {}, any>'.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/index.d.ts(16,13)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/index.d.ts(16,46)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(2,10)
      TS1005: 'from' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(2,13)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(2,18)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(2,23)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(3,10)
      TS1005: 'from' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(3,13)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(3,24)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(3,29)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(5,10)
      TS1005: 'from' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(5,13)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(5,18)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(5,23)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(6,10)
      TS1005: 'from' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(6,13)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(6,32)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(6,37)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(7,10)
      TS1005: 'from' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(7,13)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(7,20)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(7,25)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(8,10)
      TS1005: 'from' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(8,13)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(8,20)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(8,25)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(9,10)
      TS1005: 'from' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(9,13)
      TS1005: ';' expected.

ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts
[tsl] ERROR in /Users/todd/code/electrify/node_modules/victory-core/lib/victory-util/index.d.ts(9,21)
      TS1005: ';' expected.

Closing in favor of https://github.com/toddmedema/electrify/pull/77


r1.6 broken link to nasm package in workspace.bzl

Please go to Stack Overflow for help and support:
https://stackoverflow.com/questions/tagged/tensorflow
If you open a GitHub issue, here is our policy:

It must be a bug, a feature request, or a significant problem with documentation (for small docs fixes please send a PR instead).
The form below must be filled out.
It shouldn't be a TensorBoard issue. Those go here.

Here's why we have that policy: TensorFlow developers respond to issues. We want to focus on work that benefits the whole community, e.g., fixing bugs and adding features. Support only helps individuals. GitHub also notifies thousands of people when issues are filed. We want them to see you communicating an interesting problem, rather than being redirected to Stack Overflow.

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): N/A
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 16.04
TensorFlow installed from (source or binary): Source
TensorFlow version (use command below): 1.6.0
Python version: 2.7/3.5
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: 9.0/7
GPU model and memory: NVidia GeForce 1060 6GB
Exact command to reproduce:

bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package

You can collect some of this information using our environment capture script:
https://github.com/tensorflow/tensorflow/tree/master/tools/tf_env_collect.sh
You can obtain the TensorFlow version with
python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
Describe the problem
Describe the problem clearly here. Be sure to convey here why it's a bug in TensorFlow or a feature request.
I had an issue when trying to build due to the broken nasm link in tensorflow/workspace.bzl.
I was trying to build tensorflow from source (Ubuntu 16.04, x64). I checked out r1.6.  I am following all of the instructions in the install guide. Everything  seems to work fine. Once bazel is installed and I run the build command and I receive a error
no such package '@nasm//': java.io.IOException: Error downloading [https://mirror.bazel.build/www.nasm.us/pub/nasm/releasebuilds/2.12.02/nasm-2.12.02.tar.bz2, http://pkgs.fedoraproject.org/repo/pkgs/nasm/nasm-2.12.02.tar.bz2/d15843c3fb7db39af80571ee27ec6fad/nasm-2.12.02.tar.bz2]

The build is unable to continue at this point. I've run it multiple  times, all with the same error. I've found that this is because there is  only one working mirror link for the nasm package inside of the bazel  config.
I can confirm that link http://pkgs.fedoraproject.org/repo/pkgs/nasm/nasm-2.12.02.tar.bz2/d15843c3fb7db39af80571ee27ec6fad/nasm-2.12.02.tar.bz2 is dead (403 response). Adding another mirror such as "http://www.nasm.us/pub/nasm/releasebuilds/2.12.02/nasm-2.12.02.tar.bz2"  to tensorflow/workspace.bzl allowed the build to continue This is all done on the r1.6 branch
Note this is a duplicate of #16862
In order to repro just try to build tensorflow from source using the instructions at https://www.tensorflow.org/install/install_sources while working on the r1.6 branch.
--
Source code / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached. Try to provide a reproducible test case that is the bare minimum necessary to generate the problem.

Closing this since it's a duplicate of #16862 , let's continue discussion there.


kdex not pulling vref from GitHub

In Kdex's netkan, the following is specified :
"$vref"           : "#/ckan/ksp-avc/",

This does not seem to find the kdex.version file.
Will submit a pull request to specify the path.

Looks like it's working fine.
https://github.com/KSP-CKAN/CKAN-meta/blob/master/KDEX/KDEX-v1.11.3.ckan
    "ksp_version_min": "1.0.0",
    "ksp_version_max": "1.6.99",

What specific problem leads you to believe it's not finding it?

Isn't it supposed to pick up the version file from master? I updated kdex to mark it compatible with1.7.x ages ago but ckan hasn't picked that up.
Release 1.11.4.

Oh. 1.11.4 isn't indexed at all because it has no downloadable assets:

And the change to the remote version file isn't picked up because the VERSION property doesn't match:
In 1.11.3 download, BUILD is 10, on GitHub it is 11:
    "VERSION":
    {
        "MAJOR":1,
        "MINOR":11,
        "PATCH":3,
        "BUILD":10
    },

https://raw.githubusercontent.com/mwerle/kdex/master/GameData/masTerTorch/kdex.version
    "VERSION":
    {
        "MAJOR":1,
        "MINOR":11,
        "PATCH":3,
        "BUILD":11
    },

Hmm.
I didn't create any because apart from the version file there's no changes. Figured no need for people to have to redownload.
Thought it was similar to marking a mod compatible with a new version of KSP on Spacedock. That works without uploading a new file...

Hmm.  I don't consider the BUILD to be part of the version. That's just a tag for recompile/repackaging.
ok. so ckan needs that to remain the same as well. noted.
will have to pick this up tomorrow, sorry. 1am here.

I see two options at this point:

Change URL.BUILD in the remote version file to 10. This would make the bot pull the version info in that file for 1.11.3, which would then be marked as compatible up to 1.7.99. Maybe delete the 1.11.4 release to reduce confusion.
Create ZIP files for 1.11.4 and attach them to the release. This would then index that version in CKAN according to whatever is in its .version file.

Either one would work, but option 1 is probably cleaner if indeed there are no changes.

Hmm. I don't consider the BUILD to be part of the version. That's just a tag for recompile/repackaging.

Maybe for you, but others use it to distinguish real versions:
https://github.com/KSP-CKAN/CKAN-meta/tree/master/KSPInterstellarExtended

Looking into this a bit further, the filtering out of 1.11.4 is done by GitHub, not CKAN; it doesn't show up in the API's release listing at all:
https://api.github.com/repos/mwerle/kdex/releases?per_page=100

ckan needs that to remain the same as well.

Confirmed that KSP-AVC and MiniAVC have the same requirement:
https://github.com/linuxgurugamer/KSPAddonVersionChecker/blob/1274c6751dcf109614741f01f5e89babff1bb617/MiniAVC/Addon.cs#L201-L207
https://github.com/linuxgurugamer/KSPAddonVersionChecker/blob/1274c6751dcf109614741f01f5e89babff1bb617/MiniAVC/VersionInfo.cs#L260-L266

Apologies, I was already 3/4 asleep last night and tapping away on my phone. I wasn't meaning you should change the way build numbers are treated, it was just what I think of them as.
Thank you so much for investigating and pointing out the various reasons/gotchas why things weren't working.  I'll try option (1) suggested by @HebaruSan a few comments up.  If that doesn't work out, I'll try a full point release.

Good news, the bot picked up the changes to the remote version file in its latest pass:
https://github.com/KSP-CKAN/CKAN-meta/commit/a392e65288c6291a339043c894f305046f06afec

Awesome. Thanks for confirming and I'll try to remember for next time.
Thanks for all your help.


fixing the svg (#17427)

(cherry picked from commit d1965886619a6393c3507a4e902cb3b9ff81d902)

This PR fixes #17406

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 41.477%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
26817

Relevant Lines:
58649

💛  - Coveralls


Support new this(...) within static methods

Bind this within class static methods to the class itself rather than just the statics.  This is necessary to allow instantiating this.
I would still like to admit polymorphic statics that yield derived instances, e.g.
class A {
  static create<T: A>(): T {
    return new this();
  }
}

class B extends A {}

var b: B = B.create(); // NG

Issues: #611, #822

Upon reflection, I see that this is related to #399.  I think that the complexity comes from the decision to admit class derivation where a subclass constructor does not necessarily subtype the superclass constructor.  (I'm sure that this decision was the correct one.)

I think this is ok. In the future, when we build the this type, we can build on top of this PR :)

Ok, merging! Thanks for the contribution!

Unfortunately, this exhibits a subtyping issue as well, and I think we need to revert this.
class A {
  constructor(s: string) {}

  static foo() {
    return new this("");
  }
}

class B extends A {
  constructor(n: number) {
    super(n.toFixed(2));
  }
}

B.foo();

(Note: subclasses inherit static members)

@samwgoldman +1.  Half baked.


FR: Create new files when hovering over links to documents that do not exist

I wasn't sure about it when I heard of all these ideas of hover editors, but now that I'm using it I can already see how this will speed up my workflow significantly, thank you so much! Truly a gamechanger :)
Here is one FR: The hover editor does not work when hovering over links to non-existing notes. It would be very useful if the plugin were to create an empty file when hovering over it. I very frequently create links to nonexisting notes and just add some metadata there, not having to navigate to that page would be super helpful for me.

Yeah, agreed. I will be addressing that in a future release. For now, it default back to the native Page preview behavior for certain things such as hovering over a link that does not exist.
Same goes for quick explorer. Previews invoked via quick explorer will default back to the native preview since I have some more work to do to make this play nicely with the quick explorer implementation.

This is now part of 0.3.3. It's pretty basic right now but let me know how it goes.

Thanks! It seems to give a clickable button when hovering. When using the keyboard to open the hover, it doesn't seem to work though. (Ideally it'd create it and not show the button when using the keyboard, but that's my opinion. Also, I'd love not to have to use the mouse here, I very frequently create files).

v0.3.6 should get you the behavior you're looking for.


What if TMs run off the tape?

The definition of a configuration of a TM yielding another in one step leaves out the case where the machine is scanning square 0 and wants to go left. What happens? Does it halt? Does it stay put but doesn't halt?

Ok, so Sipser doesn't actually mark the left end of the tape, only Papadimitriou does. And he handles that case by requiring that M never moves left when reading \TMendtape it doesn't move left. That's probably easiest.

I think the easiest is to have the machine halt if it runs off the tape. No extra conditions, minimal addition required for undecidability proof. Tape end symbol is not special so it'll be easier to eg prove that recursive functions are Turing computable.

Is this where I should grumble about it being better to stick with tape infinite in both directions? ;)

Only if you want to redo the undecidability proof!

Ok, I decided to just make the machine stay put. If we made it halt, we'd lose the result that we can always have a single designated halt state (or at least the easy proof of it).


Item_Dropped signal missing from Ctrl_inventory_grid in current version

As stated above, the Item_Dropped Signal is no longer activated when dragging an item outside of the inventory. The signal still exists, but doesn't seem to be mentioned in the Ctrl_Inventory_Grid script anymore.  This means any code or function related to this signal now no longer works.
Is there a new way to restore functionality to this? Was it moved, or is it simply missing?

Looks like it has been removed during some code restructuring in the past. It should be fixed now in a9eaee7c982ec171782e81c963791c64519c1874.


Adds JSON encoded data format

Introducing the -j, --json switch:
> gron -j <<<  '{"a":{"b":["c"]}}'  | tee out.jgron
[[],{}]
[["a"],{}]
[["a","b"],[]]
[["a","b",0],"c"]
> cat out.jgron  | gron -j -u
{
  "a": {
    "b": [
       "c"
    ]
  }
}

Thanks for your PR, @csabahenk!
I think this will take me a little while to review. In the meantime, can you tell me a bit more about the output format and what it's good for? I'm finding it a little difficult to see what it's good for / why I might want it

I updated the commits to amend some suboptimal allocations.
I'll provide rationale / use case later.

Hey! Just to let you know that I'm planning to review this this week. It's a hefty change, but you put forward a very good case for merging it. Thank you!

Would you like me to resolve the conflict and update the PR?

@csabahenk I've finally had a chance to have a look through everything! Yes, if you fix the conflicts I will merge it :) Thank you!

@tomnomnom all conflicts are reduced to ashes!

Merged! Thank you so much for your contribution :)


Loading saved sessions from commandline: what is the magic marker?

I wonder what is the magic syntax to achieve the following command in Vim through the command line?

I tried to issue the following command, but can only get a Vim window with an empty buffer named wiki, and a prompt that is asking for the session name:
gvim -c :SLoad wiki

I tried to wrap things around "wiki", but none of the following markers helped:

You have to quote the whole argument for -c:
gvim -c 'SLoad wiki'


/gdi:hw in windows

When /gdi:hw option is set(and this is default), colors on remote machines become strange. Also there is some buffering problems(changes on the screen doesn't show while there is few of them). And one very big problem is that sometimes remote machine stucks on welcome screen.
Here is some screenshots:

This welcome message won't go away.

I use widnows 7 and the latest version of freerdp. With /gdi:sw colors are normal, but welcome screen problem stays.

I had this Problem too.  It appears that freeRDP Colors were switched to x11 Colors without any regard to Windows and the /gdi:sw is too slow and broken when it Comes to scaling.  It would be nice if the Colors were handled differently for each System.  If you want to put it back check out orders.c and Color.c, they both have inverted reading of Color and Bitmaps, plus in wf_gdi.c they switched tofreerdp_color_convert_var_rgb when it was freerdp_color_convert_var_bgr.

I had the same problem also.
Regards,
Emil

GDI mode working on master 3c7cc555a5a5f02366918be7eb935bb1f22115ef


Add a way to predict or estimate expected tokens or expected costs

Is your feature request related to a problem? Please describe.
Generation with reliance on external APIs might be expensive.
Describe the solution you'd like
Something like a pipeline method expected_costs or expected_tokens
Describe alternatives you've considered
Wait and see.
Additional context
Perhaps something like expected_time would also be interesting?

All these would be really useful, I think. You'd want:

expected costs for a particular pipeline (either calculated directly, or via directing to some API or online costs calculator for the particular LLMs involved). In the case of multiple LLMs involved, this might get complicated i.e.
expected tokens to be used for a particular pipeline, and split by LLM / task (so you can manually make the calculation yourself if you want
add a 'max_budget' option for a param, which would either stop when you hit that estimated cost, or it wouldn't run the param and would suggest ways to downscale the amount of work your pipeline does in order to stay within the costs?
expected_time is maybe interesting, but probably hard to do. But I agree it'd be pretty useful if you could get a ballpark figure.

You might even consider abstracting this out into some online calculator tool where you just get the number of tokens for a raw data file and then for a typical task you could get a rough estimate of both time and cost for typical scenarios (i.e. gpt3.5 or claude-haiku etc).
I think this'd all be really beneficial for the tool. In the end, you can only make very loose guesses right now based on small subsection runs and then try to extrapolate out.


running numpy functions on xarray objects

In the pint integration tests I tried to also test calling numpy functions on xarray objects (we provide methods for all of them).
Some of these functions, like numpy.median, numpy.searchsorted and numpy.clip, depend on __array_function__ (i.e. not __array_ufunc__) to dispatch. However, neither Dataset nor DataArray (nor Variable, I think?) define these protocols (see #3643).
Should we define __array_function__ on xarray objects?

I think this is probably a good idea, assuming we figure out the type casting hierarchy challenge. Right now people often check for the existence of __array_function__, which clearly isn't quite right.


Integrate the mapping API if not using Mapbox

We're not using mapbox. Instead, we're using the esri/arcgis api.
There's a react-arcgis package as well.

Detroit is wanting to move forward with Mapbox or Google Maps, so pausing work on this.
The work was in PR #604.
The Esri api had a few constraints that made this work difficult, that we should keep in mind if we try it again:
The @esri/react-argis package is convenient, but on import it tries to call window, which isn't available on the server for server side rendering, so we need to only load the modules on the client-side code. Details are in https://github.com/Esri/esri-loader/issues/64.
We can also use a technique like this to wrap the whole component in a way that tells next not to try to run the code on the server.
I pursued a different strategy: Just use the underlying esri code that @esri/react-arcgis wraps, which is what a lot of other people do too. For example:

https://github.com/benelan/arcgis-esm-samples/blob/main/jsapi-create-next-app/components/EsriMap.js
https://github.com/tomwayson/esri-loader-react-starter-kit/blob/master/src/components/EsriMap/EsriMap.js

The downside of these is that they require esri loadModules to pull the esri javascript from the Esri cdn every time the page loads, instead of importing it like any other dependency and including in the JS bundle as needed. I got error ERR_REQUIRE_ESM when I tried that though: https://community.esri.com/t5/arcgis-api-for-javascript-questions/arcgis-core-with-next-js-error-err-require-esm/td-p/1037947
Open work:

Figure out how to import that modules directly
Fix the styling issues.

@willrlin closing with won'tfix


Request: Add Profiles

It'd be nice if there could be profiles you can load so the motd will change on-demand. Would this be a possibility?

You can always reload the plugin with /cleanmotd reload :)

Well yeah but it'd just be useful if I could do something like /cleanmotd profile <profile> so I can switch back and forth easily

I will see what i can do about it, but i want to keep cleanmotd as clean as possible :)


Update course-definition.yml to include old repositories warning

We added this for the RDB extension, but not for the replication one. Thanks to @scjuly19 for highlighting this!

Thank you for fixing. Glad I could help !


libstrangle: init at 2017-02-22

Frame rate limiter for Linux/OpenGL.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build libstrangle

Works, thanks!


Add new ExcessiveDocstringSpacing cop

Creates a new cop for checking example descriptions for excessive whitespace - leading, trailing, and multiple consecutive spaces between text is considered to be excessive.
Resolves #1144

Before submitting the PR make sure the following are checked:

[x] Feature branch is up-to-date with master (if not - rebase it).
[ ] Squashed related commits together. (not yet, but commits are ready to be merged via squash)
[x] Added tests.
[x] Updated documentation.
[x] Added an entry to the CHANGELOG.md if the new code introduces user-observable changes.
[x] The build (bundle exec rake) passes (be sure to run this locally, since it may produce updated documentation that you will need to commit).

If you have created a new cop:

[x] Added the new cop to config/default.yml.
[x] The cop is configured as Enabled: pending in config/default.yml.
[x] The cop documents examples of good and bad code.
[x] The tests assert both that bad code is reported and that good code is not reported.
[x] Set VersionAdded in default/config.yml to the next minor version.

If you have modified an existing cop's configuration options:

[ ] Set VersionChanged in config/default.yml to the next major version.

@pirj thanks for the quick and detailed review!

My only slight concern is something like this:

That's been on my mind too, but overall I think the pro vs cons of this don't make it worth worrying about - especially as you could change the title to be it "tolerates strings made up of consecutive whitespace" (which imo is a better title anyway).

This offence seems strange https://github.com/chef/chef/blob/ec33c4b9b46f6905e14aef7deda2cd9637af5078/spec/unit/resource/group_spec.rb#L60:

That's because the string is actually missing an \ - right now it's actually escaping the space:
  it "behaves \ as expected" do
    expect_no_offenses(<<-'RUBY')
      it "accepts domain groups (@ or \ separator) on non-windows" do
      end
    RUBY
  end

Output from RSpec:
RuboCop::Cop::RSpec::ExcessiveDocstringSpacing
    behaves  as expected

missing an \ - right now it's actually escaping the space

Ah, that's right!
All good then. Just perfect, actually.

I've modified the cop slightly, and specs still pass

I'd  go with simplicity unless the performance is a real issue.

@pirj awesome, thanks that's much nicer - I figured there'd be a way to merge the two.

@G-Rath Thanks for the contribution!


Why in all that is holy is the TechNet site requesting a product name to provide necessary feedback?

Why does this site not work when I select 'English (United States);
https://social.technet.microsoft.com/Forums/en-us/newthread?prof=required
When I select 'English (United States)' The 'Forum category' selections disappear, and when I make any other selection, they reappear.
I select 'English (United States)'.
On clicking the 'Submit' button an asterisk appears with the message 'Please select a forum for your thread'; Which cannot be done because this selection explicitly removes them.
PRESENTED OPTIONS: Either select a language I cannot understand, OR not provide a ticket.

The technet forums site is being migrated over to the new Q&A site.
What forum are you looking for? Odds are there's a tag in this site for that subject matter:
https://docs.microsoft.com/answers/products/

The technet forums site is being migrated over to the new Q&A site.
What forum are you looking for? Odds are there's a tag in this site for that subject matter:
https://docs.microsoft.com/answers/products/

@kylemanel TechNet forums are closed at https://docs.microsoft.com/en-us/teamblog/msdn-technet-english-forums-closure

#please-close


Cassandra Connection String Changes

Thank you for your contribution.
Before submitting this PR, please make sure:

[x] PR description and commit message should describe the changes done in this PR
[x] Verify the PR is pointing to correct branch i.e. Release or Beta branch if the code fix is for specific release , else point it to master
[x] Latest Code from master or specific release branch is merged to your branch
[x] No unwanted\commented\junk code is included
[x] No new warning upon build solution
[x] Code Summary\Comments are added to my code which explains what my code is doing
[ ] Existing unit test cases are passed
[ ] New Unit tests are added for your development
[ ] Sanity Tests are successfully executed for New and Existing Functionality
[ ] Verify that changes are compatible with all relevant browsers and platforms.
[ ] After creating pull request there should not be any conflicts
[x] Resolve all Codacy comments
[ ] Builds and checks are passed before PR is sent for review
[ ] Resolve code review comments
[ ] Update the Help Library document to match any feature changes

Summary by CodeRabbit

New Features

Introduced SSL support for secure Cassandra database connections.

Bug Fixes

Improved resource management by ensuring proper disposal of session and cluster objects in Cassandra connections.

@digvijayAMDX please review the changes


Update integration build workflow

Make it run every day, add example requirements

Codecov Report

Merging #121 (68d8072) into main (1a52230) will decrease coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #121      +/-   ##
==========================================
- Coverage   72.13%   72.10%   -0.03%
==========================================
  Files         127      127
  Lines        7284     7284
==========================================
- Hits         5254     5252       -2
- Misses       2030     2032       +2

see 2 files with indirect coverage changes


Developing julia packages

[ ] Video tutorial: Chris
[ ] PkgTemplate.jl
[ ] Unit test
[ ] CI/CD with GitHub actions
[ ] Documenter (with SSH key)

Reference:
https://stevengogogo.github.io/tw/post/how-to-create-and-publish-a-package-with-julia/


Do not convert array to object

Thanks for all your investment in this barbushin
$xx = [1,2];
PC::debug($xx, 'numeric');
$xx = [1=>1,'b'=>'b'];
PC::debug($xx, 'associative');

is displayed as:

Object {1: "1", b: "b"} is confusing to me, I would expect something consistent with the first display like [1: "1", "b": "b"]
Maybe it is not possible due to a conversion to javascript, but then it would be nice if it was documented.

There is no way to fix it. It's default behavior of JavaScript console.log() method.


Dockerfile requirements

rclone >= 1.53
https://github.com/burstable-ai/burst/projects/1#card-52925295
note even 20.04 has bad version
do we have working directory needs?

yes /home/burst/work

Can we add to Dockerfile or at least document
~20.04 has rclone 1.5x which we need for seek / append~

1.50 may not be good enough

we have been manually installiing 1.53
update Dockerfile for base image
Pyvision works bc custom Dockerfile

#feature @dan

I think we are OK here. All requirements.txt files in burst_examples are versioned; conda we are assuming is wizardly and has no versioning


Add support for AWS partition name

What does this PR change?
When deploying on AWS, if we use an instance type > t2.XXX, the partition name will be nvme1nX . Sumaform doesn't support this naming for mirror and server with additional disk.
This PR adds nvme1nX naming support
traditionaly partitions are just numbered after the device name:
sda1, sda2, xvdf1, xvdf2, etc.
On NVMe drives this seems to have changed as the device name ends with a number. So they use p1, p2, etc. for partition 1, partition 2, etc.
nvme0n1p1,
nvme0n1p2,
nvme1n1p1

Very similar to https://github.com/uyuni-project/sumaform/pull/1182

@maximenoel8 I closed my PR. Would you please change the default type of the bastion host to "t3" or "t3a" ?
This seems to be the only change which is missing compared to my PR.

I tested this changes with testsuite deployment ( mirror + additional disk for server)


make reduction-effort a configuration item

currently we can't configure reduction-effort, which defaults to a value of 4,  this means resizing jpegs to larger webp files uses more cpu to reduce file size.  This results in higher latency, for a small size trade off
make reduction-effort a configuration item, we would like to set this to 0 (zero)
see https://sharp.pixelplumbing.com/api-output#webp
options.reductionEffort number  level of CPU effort to reduce file size, integer 0-6 (optional, default 4)
having started using this service in production, we noticed our p90 origin latency and integration latency was high.  investigation further we found it was webp operations.  Benchmarking using the command line tool for vips, we found significant latency differences for this value.
time vips resize /tmp/photo.jpeg  /tmp/photo.webp [Q=75,reduction-effort=0,strip]  "1.1"
real    0m0.193s
user    0m0.310s
sys     0m0.049s
time vips resize /tmp/photo.jpeg  /tmp/photo.webp [Q=75,reduction-effort=4,strip]  "1.1"
real    0m0.479s
user    0m0.551s
sys     0m0.056s
resultant file sizes
242,758 for reduction-effort=4 (default behaviour)
275,994 for reduction-effort=0
I understand CF will cache this so it's a one-time cost, but we would still like to be able to chose our preferred value

Hi @frankenbubble thank you for your request. We will add this to our backlog for further investigation.

@frankenbubble, we have updated our solution, the issue has been fixed, please see the change here. If you still see the issue with the latest version (v6.0.0), please feel free to reopen the issue.
You can refer to the recent changes here.


Download file to specific destination

Resolve #1240 (see discussion there) following what we agreed on in https://github.com/huggingface/huggingface_hub/issues/1240#issuecomment-1438492986.
I have changed the naming (local_dir instead of destination for consistency with other methods and local_dir_use_symlinks instead of just use_symlinks to make it explicit). So to sum up the behavior:
# pip install git+https://github.com/huggingface/huggingface_hub1240-snapshot-download-to-destination
from huggingface_hub import snapshot_download

# Download and cache files
snapshot_download(repo_id)

# Download and cache files + add symlinks in "my-folder"
snapshot_download(repo_id, local_dir="my-folder")

# Duplicate files already existing in cache
# and/or
# Download missing files directly to "my-folder"
#     => if ran multiple times, files are re-downloaded
snapshot_download(repo_id, local_dir="my-folder", local_dir_use_symlinks=False)

@philschmid @pcuenca I would be very interested if you could try this PR and give me some feedback. Also @peterschmidt85 since you showed great interest in this issue.
Additional notes:

When setting local_dir_use_symlinks=False the cache directory will still be used and potentially have some modifications even if it's empty => I'm talking about the snapshots/ folder being created (empty), the refs folder being created and populated. Those files are neglectable in term of size but still exist.
In the cache, when creating a symlink between the blob_path and the pointer_path, we were computing a relative path for it (relative_src = os.path.relpath(src, start=os.path.dirname(dst))). @julien-c any idea why this was needed? Asking because now that we can have symlinks with arbitrary locations, I think it's best to have only absolute paths in the symlink -relative path between different volumes wouldn't work I think-.
If files already exists in local_dir, they are overwritten without warning.
At the moment, if local_dir_use_symlinks=False

If files are not cached, we don't have any reference kept to which version/reference the file comes from. It means that if a user run the command again, the file will be download again. To solve that we could compute the sha of the file and compare but that's out of scope of this PR I think. Users using local_dir_use_symlinks=False should be aware it's not optimal.
If files are cached, re-running the command will duplicate again the file (i.e. even if file exists at destination, it will be copy-pasted again). It doesn't have impact on disk usage but it's not optimized computation-wise. Same as above, I'll not fix it in this PR.

[x] Updated the "Download files" guide:

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

Great news! Thank you for testing @pcuenca :)

Ping @julien-c @LysandreJik @pcuenca I have updated this PR (and its description) to have local_folder_use_symlinks="auto" by default. The idea is to either use symlinks or duplicate files depending on the file size. Small files (<5MB) are duplicated: it doesn't take much space and it ensures users will not manually edit a file in the cache. Big files are still symlinked to preserver disk usage. And in both cases files are cache to preserve bandwidth. I think it's a good trade-off between performance (disk usage/bandwidth) and usability (not corrupting the cache).

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


wsgi server: allow binding to ipv6 address

Reproduce the fix in python3.8 http.server by doing a dns lookup and
using the correct address family
Fixes #567

Not sure what policy here is with squashes, I'd rather keep the python 2 compat commit separate but ask if you want me to squash it down.
For pyhton3.4 it's no longer installable on my distro and I cannot see circeci error without logging in, granting way more permissions that I'm comfortable with, so if someone would be kind enough to give me the error I'll try to fix it too... I tried to make it close to what's described on python doc but to no avail :/

Thanks, I will check this out when I get a moment, but will need to catch up on some of the context in discussed in the related issue.
Don't worry about the 3.4 failure, it is a known issue right now due to a bad version of a 3rd party library used in tests being pushed. That version was then yanked from pypi, but the tests are still pulling it for some reason. Specifically the issue is attrs 21.1.0 does not work on 3.4.

Thanks, no rush.
I recap'd what I had understood of the issue in the last post of the issue if that's good enough for you, but there are at least 3 other similar issues on the project so information is spread a bit everywhere with various links to python bugs that ultimately didn't really help or workarounds that aren't appropriate for merging or looked too kludgy (forcing AF_INET6 or detecting ipv6 by looking for colon character)
This PR does what python3.8 http.server does when invoked from command-line so hopefully it's good enough :)

It does not work if I do not specify an address. It tries to look up empty string as a DNS record.

Ah, good point we should make addr=<IP_ADDRESS> by default to keep the behaviour (I think it's that currently? need to check)
Interestingly for http.server it defaults to None, which with socket.AI_PASSIVE resolves as both <IP_ADDRESS> and :: in that order keeping only <IP_ADDRESS>... But passing it for python2 (which doesn't allow kwargs) would mean something like socket.getaddrinfo(address, port, 0, socket.SOCK_STREAM, 0, socket.AI_PASSIVE)... Well, I guess argument meaning shouldn't change; but just changing the default addr value seems simpler.

If I specify 'localhost' as my address, it may bind to IPv6, which means users going to <IP_ADDRESS> would no longer reach the service. I wonder if we should default to IPv4 if available?

Hm, that will definitely bind to ::1 on most systems yes; this is more annoying.
In general I'd really rather default to ipv6, that's a behaviour configurable at OS level and something everyone should be used to by now, having it the other way around would be surprising for new users... vs. breakage for old users (it's not just localhost, if they were using a name with both local A and AAAAs it would previously default to the A) so keeping old behaviour...
Ultimately it's up to you but I guess minimizing breakage is more important? I'll wait for your decision on this.

Well, I guess argument meaning shouldn't change; but just changing the default addr value seems simpler.

Could we check for empty string for addr and just default to IPv4 for that case without going through _get_best_family?

Ultimately it's up to you but I guess minimizing breakage is more important? I'll wait for your decision on this.

Yeah, typically minimizing breakage is a goal I have, but if it makes a solution too complicated some breakage is ok for edge cases like this. The address_family issue in the other thread is more of a concern to me.

Hello,
it's been a little while and I had totally forgotten about it until I upgraded the machine I use this on and my kludge got overwritten. Is there anything I can do to help move forward?
I appreciate that modifying the global ThreadingWSGIServer class is bad from a helper position, but unless we figure a way of "deep copying" the class I really don't see any other way about it. My suggestion of restoring the original value is as good as I can do.

I have been thinking about this, and sadly just don't feel like there is a great solution right now :(. I don't want a library to be changing classes, so I guess the recommendation as it stands would be to use something else to stand up the server for IPv6. If I think of something else I will let you know though!

Hello, thanks for not forgetting about this! :)
My problem is that I'm not a direct user of this library, but just using exporters which do -- I can't very well go about telling the prometheur tor exporter, dht22 exporter and all other uses that they must use something else because my setup requires ipv6 and it's not useable with this client, so it's much easier to patch this (as I do on my systems).
I've just had another look and it looks like we can just instantiate a new subclass locally, and that won't affect the parent class, so this is probably a better workaround than saving the old family and restoring it. How about this new version of the patch?
I've tested running twice in a row with different families of address and making sure the previous call didn't affect the current instance version.

Thanks!

Thank you, and good idea to copy the class!


US Country not currently supported

The Create new customer scenario throws a bad request exception code 20000, saying Current country not supported which by default is set to US.  Changing country to a valid  GB address  in CreateCustomer.RunScenario  works however.
In my case I removed the State field, changed country to GB and switched city and postal code to some random place in England.

Its likely that your partner tenant cannot transact in the US territory. The API honors the regional authorization rules hence it is not allowing you to create a customer in US if your territory / region is under EFTA.


Support semicolons in quotes and parenthesis in custom property values

Reference Issue
Fixes #4288
RegExp for CSS value should consider parenthesis or quotes that could contain ;

@azakus https://github.com/webcomponents/shadycss/pull/48#issuecomment-283834384

Could you rebase and add a test case?

I started with PR for 1.x

Closing this PR as https://github.com/webcomponents/shadycss/pull/48 has been merged. Thanks for your contribution!


Not working with Grav's Admin Panel

The plugin SocialButtons can't be configured using the new Grav's Admin Panel. For example, if we go to the settings page of the plugin (url /admin/plugins/socialbuttons) and click on Save, there's the following error:

Validation failed: buttons is not defined in blueprints

According to a Grav developer: "These plugins just need to get updated with appropriate blueprint files so they will work in the admin plugin."
My config: Grav v0.9.39, Admin Panel v0.4.2, SocialButtons v1.0.0

Fixed with 1.0.2 release


Feature generation, create generated xml file with empty feature list

See https://github.com/OpenLiberty/ci.maven/pull/1319
<?xml version="1.0" encoding="UTF-8"?>
<server>
    <!--# Generated by the Liberty Gradle Plugin-->
    <featureManager>
        <!--# No additional features generated-->
    </featureManager>
</server>

Signed-off-by: Kathryn Kodama<EMAIL_ADDRESS>

Updated the comments generated by the Liberty Gradle plugin.
Sample generated-features.xml:
<?xml version="1.0" encoding="UTF-8"?>
<server>
    <!--# This file was generated by the Liberty Gradle Plugin and will be overwritten on subsequent
runs of the generateFeatures task. It is recommended that you do not edit this file.-->
    <featureManager>
        <!--# The following features were generated based on API usage detected in your project-->
        <feature>mpHealth-3.1</feature>
        <feature>batch-1.0</feature>
        <feature>jpa-2.2</feature>
        <feature>jaxrs-2.1</feature>
    </featureManager>
</server>


The package doesn't work when using const constructors for widgets

Reproduce:
Take the example code from this package and give Home widget a const constructor. Also create the instance of it with const. Full example:
import 'package:flutter/material.dart';
import 'package:responsive_sizer/responsive_sizer.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return ResponsiveSizer(
      builder: (context, orientation, screenType) {
        return MaterialApp(
          title: 'Responsive Sizer Example',
          theme: ThemeData(
            primarySwatch: Colors.blue,
          ),
          home: const Home(),
        );
      },
      maxTabletWidth: 900, // Optional
    );
  }
}

class Home extends StatelessWidget {
  const Home();

  @override
  Widget build(BuildContext context) {
    late final String screenTypeText;

    switch (Device.screenType) {
      case ScreenType.mobile:
        screenTypeText = "My screen's type is Mobile";
        break;
      case ScreenType.tablet:
        screenTypeText = "My screen's type is Tablet";
        break;
      // ScreenType can only be desktop when `maxTabletWidth`
      // is set in `ResponsiveSizer`
      case ScreenType.desktop:
        screenTypeText = "My screen's type is Desktop";
        break;
    }

    return Scaffold(
      body: Column(
        mainAxisAlignment: MainAxisAlignment.spaceEvenly,
        children: [
          Container(
            height: Adaptive.h(12.5), // or 12.5.h
            width: 50.w, // or Adaptive.w(50)
            color: Colors.black,
          ),
          Text(
            "This text is responsive",
            style: TextStyle(fontSize: 18.sp), // or Adaptive.sp(12)
          ),
          Text(
            "w=${100.w} h=${100.h}",
            style: TextStyle(fontSize: 12.sp),
          ),
          Device.orientation == Orientation.portrait
              ? Text("My orientation is Portrait")
              : Text("My orientation is Landscape"),
          Text(screenTypeText),
        ],
      ),
    );
  }
}

Then run it in web. Notice that when you change the window size, the responsive text size doesn't change as it should.
This happens because Flutter's build cycle doesn't visit const children. It's an important optimization used to enhance performance and Flutter highly recommends using it (see https://docs.flutter.dev/perf/best-practices, https://www.youtube.com/watch?v=IOyq-eTRhvo)

You need the Home widget to rebuild. Removing const solves the issue. If you've set your Home widget as a const, it's not going to "update" or rebulid when the window size changes since you've marked it as a constant.

@CoderUni Of course it won't make a difference in a tiny single page example app. However in more complex widget trees, if rebuilds happen often (e.g changing the window size, animation, etc) you'll definitely notice performance degradation. That's why using const is one of the basic practices recommended by Flutter.

It is a best practice. However, you can only use it on children that don't need to be rebuilt. In this scenario, you have no choice. If you do not rebuild your Home widget, then how would your responsive text size update whenever the window size changes? This is the same thing with animations. There is a reason why animation widgets have a builder function. To optimize it, you add a const to certain parts of the widget that don't need to be rebuilt.

You're correct that the widget needs to rebuild if the window size changes, but the way you're currently doing it isn't ideal at all because it causes the widget to rebuild every time the parent does for any reason. You need a better approach that allows rebuilds only when needed - i.e when the window size/orientation changes.
This principle is also used in other packages such as Provider, where you have context.select(...) in order to make sure the widget rebuilds in reaction to only certain state changes and not all of them.
My suggestion to you is to either change ResponsiveSizer to be an InheritedWidget or change Device to be a Provider so widgets can depend on it. If you're interested I can help with a PR.

I'm interested in your proposed changes. I just don't think it would be possible to add those changes while making ResponsiveSizer intuitive and easy to use for other people. If you're able to do so, I'd be happy to merge the changes. ResponsiveSizer uses LayoutBuilder and OrientationBuilder behind the scenes. You can start here. Thanks!


Fix Types filter in List-Zones and Get-ZoneRecordSets

This change fixes the -Types filter in the List-Zones and Get-ZoneRecordSets functions. The query string was using type= instead of types=.
https://developer.akamai.com/api/cloud_security/edge_dns_zone_management/v2.html#getzones
https://developer.akamai.com/api/cloud_security/edge_dns_zone_management/v2.html#getzonerecordsets
It also fixes -AccountSwitchKey in Get-ZoneRecordsets which was missing an & in the query string.

Hey @stuartio. Any comment on the fixes I've submitted?


[Storage] Fix #16917: az storage account generate-sas fails if a connection string is provided

Description

Fix #16917: az storage account generate-sas fails if a connection string is provided
In PR #16034, a validator is added to check accout_name not None or ''. However, account_name can be parsed from connection_string in another validator for connecting_string, so when a valid connection_string is provided, account_name is not necessary.
This PR fixed this issue by checking account_name and account_key before invoking sdk function, at which time account_name has been parsed properly through connection_string validator.
Testing Guide

Expected failure cases:
az storage account generate-sas --account-name ""
az storage account generate-sas --connection-string $invalid_connection_string
Success cases:
az storage account generate-sas --account-name mystorageaccount
az storage account generate-sas --connection-string $valid_connection_string

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Storage


[Example] ggml: add llava-base64-stream example

Merge after https://github.com/WasmEdge/WasmEdge/pull/3248

Hello, I am a code review bot on flows.network.
It could take a few minutes for me to analyze this PR. Relax, grab a cup of coffee and check back later. Thanks!


?_embed

Should post support ?_embed attr on  ${typePrefix}posts ( ${typePrefix}posts?_embed) ?
It will be awesome to be able to added to  the feature image data. Possible? Feature?

@elpuas I don’t understand your question. Can you explain in more detail what you mean?

Sorry to  not explain me well, what i'm trying to achieve is get the feature in the old version of the REST API, you can't get the feature image endpoint, so to achieve this you need to add ?_embed to the endpoint to get the feature image data. so the new full endpoint for post will be:  /wp-json/wp/v2/posts?_embed make sense now? I believe this can be an upgrade to the plugin? make sense now

@elpuas Have you checked out the Gatsby GraphQL explorer? It shows you exactly what data comes from WordPress and is available to you. You can also check out the wordpress source plugin, that’s what actually pulls in data from WordPress. This starter is an example of how you can use the source plugin and display that data.
If I’ve understood your question correctly, it’s not related to this starter, so I’ll close this issue now. If you think I’ve misunderstood, feel free to reply and / or reopen the issue.

Yes you will right, I see that the feature image is showing in GraphQL data. Thanks!


samples: tfm_integration: Set TF-M profile type to none.

Set the TF-M profile type to none for TF-M integration samples.
If the default profile has been set to something else these samples may
fail.
Signed-off-by: Joakim Andersson<EMAIL_ADDRESS>

@theotherjimmy Mind having a look at this to test on the usual slew of boards, and looks like there is an issue with the new FWU sample in CI? Thanks!

Yeah, that compile error is strange. Off the cuff, I don't know what's causing it.

Hmm, my guess would be it is related to this:
zephyr/boards/arm/lpcxpresso55s69/Kconfig.defconfig:
choice TFM_PROFILE_TYPE
	depends on BUILD_WITH_TFM
	default TFM_PROFILE_TYPE_MEDIUM
endchoice

The CI failures seen here should be addressed in https://github.com/zephyrproject-rtos/zephyr/pull/45858 until a more permanent solution can be found (requiring changes uptream to TF-M first), which will certainly be after the 3.1.0 release.

Rebased now that fix for compilation issue has been merged.


二维码生成不正常

你好，请问这个问题解决了么

I have got the same problem. The result image have random white|gray points/lines.
But this is not the source's problem, maybe it is caused by CPU|GPU floats CALC or Browser|OS‘s kernel.
next code cause this problem:

            _oContext.fillRect(nLeft, nTop, nWidth, nHeight);
            // >>> the next two code blocks, caused the problem
            // 안티 앨리어싱 방지 처리
            _oContext.strokeRect(
                Math.floor(nLeft) + 0.5,
                Math.floor(nTop) + 0.5,
                nRoundedWidth,
                nRoundedHeight
            );

            _oContext.strokeRect(
                Math.ceil(nLeft) - 0.5,
                Math.ceil(nTop) - 0.5,
                nRoundedWidth,
                nRoundedHeight
            );

you can use the first line only. but there contains some gray lines in the gap.
            _oContext.fillRect(nLeft, nTop, nWidth, nHeight);

Does anyone know how to solve this problem, or is there another QR code solution?

Do you have a plan to repeat this problem

@DailyLee Could your provide your device and system information?

@DailyLee Could your provide your device and system information?

I only know that this issue occurs on CEF with Chrome version 100.0.4896.0.


Optimize reconciliation loops

This filters out events that are not relevant, mostly those triggered by status
subresources updates, at the exception of the status phase changes that are used
to transition resources from one phase to another.

added wip to merge it later when bump to the next version

There is a case in which we do update an annotation as a way to wake-up the reconcile look:
https://github.com/apache/camel-k/blob/master/pkg/controller/integrationcontext/build.go#L237-L259

not sure if it is taken into account

Changing the annotations and using the normal endpoint to update the resource will increment the generation field so the event won't be filtered out.

has this any impact with the resources cleanup ? just asking

maybe we need to move setting the digest on an annotation to a status field or maybe even update the Phase ?

has this any impact with the resources cleanup ? just asking

The clean-up delete older generation resources, so that requires a new generation increment whose event are not filtered. So we should be on the safe side.

maybe we need to move setting the digest on an annotation to a status field or maybe even update the Phase ?

I wonder exactly that as I stumbled on that piece of code. I didn't give much though about it but that digest annotation looked a bit off.


pip install uwsgi error, I'm not sure if this is related to pip

Hi, I'm getting Errors installing uwsgi using pip on rc-buster, rc-alpine, rc-slim  as well as with alipine and slim.
The installation on python:buster runs fine.
The trace is very large so here is the final message:
ERROR: Command errored out with exit status 1: /usr/local/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-iz491tr6/uwsgi_c1a46202d7044650b950af7a629818f0/setup.py'"'"'; __file__='"'"'/tmp/pip-install-iz491tr6/uwsgi_c1a46202d7044650b950af7a629818f0/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-6suqe6iy/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.10/uWSGI Check the logs for full command output.

This is part of the log: Building wheel for uWSGI (setup.py): finished with status 'error'
I'm not sure if this triggered the error  but apparently this function is deprecated
plugins/python/python_plugin.c:319:33: warning: ‘PyEval_CallObjectWithKeywords’ is deprecated [-Wdeprecated-declarations]
                                   PyEval_CallObject(random_seed, random_args);

oh BTW I tried installing the packages: python3.7-dev build-essential and linux-headers-amd64 but the error didn't change obviously because I was using pip.
I understand that this looks like an issue with pip but it works on python:buster so I think this is probably associated with this project somehow. Anyway I will appreciate your help

And pip install mod-wsgi-standalone also throws an error in standalone images.

With booster and rc-booster it never start the build

  Downloading mod_wsgi-standalone-4.7.0.tar.gz (496 kB)
     |████████████████████████████████| 496 kB 6.5 MB/s
  Installing build dependencies ... -

But with rc-alpine I get the following error
configure: error: in `/tmp/pip-install-xs7ny4uu/mod-wsgi-httpd_a46ec7620b604c2597aaadd8611dd7bd/build/apr-1.7.0':
      configure: error: no acceptable C compiler found in $PATH
      See `config.log' for more details

Am I missing something?
Am I sopposed to add dev packages in the latest images available at hub.docker?

So you only experience the issues on the rc versions with uwsgi?

python:rc-buster,
python:rc-alpine,
python:rc-slim,
python:alipine,
python:slim
with both uwsgi and mod-wsgi-standalone (I didn't tried pip install mod-wsgi because I didn't have httpd installed)
Note that pip install uwsgi works fine on phthon:buster.

The rc versions are all currently the (unreleased) 3.10 series, which probably isn't supported by uwsgi yet - the slim and alpine images are optimized for size, so in order to install modules that need a compiler, you'll need to install one (the buster non-slim images already contain the necessary compiler).

Thank you.
I opened this issue because I thought those are release candidates.
I understand these images are lightweight versions but it's not clear which packages should I use i.e. python3.x-dev or build essentials and build uwsgi form source which loose the entire purpose of containers.
Should I close the issue?
Do you think I should open an issue in pypi? Because they would tell me that it's not their fault that an image doesn't have the appropriate packages in order to use pip

No, this is a usability/understand gap, not an issue with the image or pip or pypi, frankly. :sweat_smile:
What I'd suggest is asking for help understanding how to accomplish what you're looking for from a dedicated support forum such as the Docker Community Forums, the Docker Community Slack, or Stack Overflow. :+1:

Thank you, I don't need it,  I'm using python:buster.
But this issue is something to have in mind if someone tries to use the python:rc-buster because as you agreed it's a release candidate, not the last release.
Thanks for your reply

You really ought to be more specific in the version of Python you're using -- as I've noted above, uwsgi does not appear to support Python 3.10 yet, and might not until after it's released and python:buster starts pointing at it, so I'd really recommend you instead switch to python:3.9-buster instead so that you're controlling your dependencies/versions more directly.

That's a good point, thank for your time


typingSuggestionEnabled does not keep predictive QuickType bar hidden

In the swift example code simply adding self.textView.typingSuggestionEnabled = false in configureViews() hides the predictive text but as soon as you start typing the bar pops back into view.
This is Xcode 7.2.1 and iOS 9.2

It would be nice if this could be forever. I tried doing so by also setting it to NO in textViewDidBeginEditing:(UITextView *)textView, but that really messed up performance when typing.
The reason I would like to hide it is because I'm already showing a toolbar in addition to the one in this controller resulting in a lot of space being taken up when the user is typing (Think Facebook Messenger).

Ran into the same thing and what worked for me was doing this in the (ObjC) class extending SLKTextViewController:
self.textView.autocorrectionType = UITextAutocorrectionTypeNo;


Remove leftover file (observelib was moved to a seperate repo)

Purpose
Just a small cleanup of an empty file.
Check List

[ ] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Thank you for the contribution, @Shadow-Devil


Allow non-draft tables in table functions

I was unable to use insert on a non-draft table:
draft.array = {}
insert(draft.array, "value")

ReplicatedStorage.rbxts_include.node_modules.@rbxts.immut.src.table.insert:11: Immut.insert can only be used on drafts

I had to use table.insert instead. It would be cleaner if I could use insert for all tables. Same goes for remove. I don't see any downsides to allowing all tables to be passed into the table functions.
Btw, how do I run tests for the repo? Saw rbx.yml but not familiar with what that is for.

Yeah this is definitely an oversight. Thanks for helping!
For running tests, if you're using VSCode, you can use an extension like TestEZ Companion. I personally don't use VSCode so the rbx.yml file is an artifact from a tool that I made for myself and haven't yet released publicly.


Tests not working

Hi.
I used to write my tests with os.environ['RECAPTCHA_TESTING'] = 'True' ...` (like described in #150 )
This not work with the current version.
Is there a new way to do this?

Hey @donbalon4
The reliance on the environment variable was removed in version 1.5.0, we apologise for the inconvenience this may be causing you.
Assuming you want to test a form or form view response the client.submit method will need to be mocked, check out: https://github.com/praekelt/django-recaptcha/blob/develop/captcha/tests/test_fields.py#L25-L30 for an example of how we are now doing it.

Ohh, I see.
Thank you @AltusBarry :smiley: . I'll close this issue.

Sorry,
How to test a view and fake the captcha value? Thanks

@AlviseSembenico an example:
from captcha.client import RecaptchaResponse
from unittest.mock import patch

@patch("captcha.fields.client.submit")
    def test_post_something(self, mocked_submit):
        mocked_submit.return_value = RecaptchaResponse(is_valid=True)
        response = self.client.post(
            reverse('something_url'),
            {
                'param_1': 'some1',
                'param_n': 'somen',
                'g-recaptcha-response': 'PASSED'
            },
            follow=True
        )
        self.assertEqual(response.status_code, 200)
        # some other asserts

How would that work with the ReCaptchaV3?
captcha = fields.ReCaptchaField(widget=ReCaptchaV3)

@hoenie-ams did you figure out how to test with recaptchav3?

@hoenie-ams did you figure out how to test with recaptchav3?

Nope, I used ReCaptchaV2Invisible instead.

I'm still not great at tests, but was able to hack my v3 form inside the unit test like this:
    def test_outside_signin_ok(self):
        class CustomUserLoginFormWithoutCaptcha(CustomUserLoginForm):
            captcha = None
        OutsideView.login_form = CustomUserLoginFormWithoutCaptcha

Which I guess is not the correct way, but it lets my test pass, and lets captcha work outside of tests.

For those who are looking how to test other captcha versions, take a look to this code:
https://github.com/torchbox/django-recaptcha/tree/main/captcha/tests

Here's an example to test captcha v3 in version 3.0.0 of this app
from captcha.client import RecaptchaResponse
from unittest.mock import patch

@patch("captcha.client.submit")
    def test_post_something(self, mocked_submit):
        mocked_submit.return_value = RecaptchaResponse(
            is_valid=True,
            extra_data={'score': '1'}
        )
        response = self.client.post(
            reverse('something_url'),
            {
                'param_1': 'some1',
                'param_n': 'somen',
                'captcha': 'PASSED'
            },
            follow=True
        )
        self.assertEqual(response.status_code, 200)
        # some other asserts

Here's an example to test captcha v3 in version 3.0.0 of this app
from captcha.client import RecaptchaResponse
from unittest.mock import patch

@patch("captcha.client.submit")
def test_post_something(self, mocked_submit):
    mocked_submit.return_value = RecaptchaResponse(
        is_valid=True,
        extra_data={'score': '1'}
    )
    response = self.client.post(
        reverse('something_url'),
        {
            'param_1': 'some1',
            'param_n': 'somen',
            'captcha': 'PASSED'
        },
        follow=True
    )
    self.assertEqual(response.status_code, 200)
    # some other asserts

Thank you so much.


Add redbubble link to README

I noticed that the README says you can't buy individual stickers, but I bought some at https://www.redbubble.com/people/rstudio-inc
If that is the official place to buy stickers, maybe include it in the README?
(If that is not the official way to buy stickers, I don't know where my money went, but it should have been yours ;) )

I also ordered from redbubble because it seemed legit ("RStudio Inc") but was disappointed: the stickers were too large (i just assumed "small" would be the usual hex sticker size.. my fault) and quality was not nice. if this redbubble account is affiliated with RStudio, I'd recommend they take it down: People will have high expectations and will be disappointed (plus, i'm not even sure I'll be able to get a refund for my order).
in summary, it seems there is no way to get "nice" stickers except ordering from stickermule in packs of 50. 😢

@friep Sorry to hear about your experience, I ordered about 20 for our department and I've had no complaints, and I rather liked them!

that's nice to hear! :)  i mean i could do with the quality but the "small" size is 7.6 by 8 cm which is really not the "typical" hex sticker you'd put on your laptop. 😂 but anyhow, just another reason to attend more R events! :)

We're going to pull them because they're the wrong size — we're continuing to look for some easier for people to get small quantities of individual stickers; hopefully will have something early next year.