unnecessary rerenders of every row and cell in examples/react/editable-data

Describe the bug
Every time one cell is edited in the examples/react/editable-data example, the entire table rerenders. If a user wants to render a large amount of rows, this strategy will start getting slow. At 50 rows in the example it takes 14.4 milliseconds to rerender the whole table with basic data. I've narrowed the unstable reference down to cell.getContext().
Your minimal, reproducible example
https://github.com/TanStack/table/tree/main/examples/react/editable-data
Steps to reproduce

Open react dev tools profiler
Start profiling
Click on a cell to edit it
Click off the cell
Stop the profiler
Check the results

Expected behavior
Only the affected cell should rerender unless my other cells have a direct dependency on it. I've even tried creating memoized components all the way down to the cell.
How often does this bug happen?
Every time
Screenshots or Videos
No response
Platform
Windows
react-table version
8.8.5
TypeScript version
No response
Additional context
If this is something the library doesn't support then I think there should be a documentation section on it describing the pitfalls of rendering a large amount of rows and/or using complex cells.
Terms & Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I understand that if my bug cannot be reliable reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.

It seems it's the same issue from v7 (#4449).

@jasekiw Unfortunately it seems you're right,  I mean memoizing only the cells will have a significant impact only if the cells are heavy enough.
But to memoize rows/cells properly the row should not change if nothing in it changed, same for the cell and the cellContext ( plus cellContext should not reference the table).
On a different note maybe adding an example for a table with only ids with an explanation would be nice

@Tsyklop here is a sandbox is a simple example.
you will need some store to implement it.
there are other options for how to implement it, for example, you could pass a getItem(string id) => Person to the table and get the item per row instead of the cell

I just noticed the same behaviour in my table, when I start editing it. It really is a bummer. And I do not think, that @alissaVrk ´s solution should be the go-to way. It works, but it is something that should be fixed by tanstack/table imo...
:/

@dennemark I agree, though since the whole data is passed to the table, the table will have to be re-rendered. and to avoid re-rendering the rows some memoization will have to be involved

https://github.com/TanStack/table/assets/30996641/a5952f15-1ff9-4b51-bbca-63800b4aa21f
https://github.com/TanStack/table/assets/30996641/33c6521b-286c-4786-9d91-c505b36c0e81

any idea why it keeps rerendering?

I found this piece of code that make my table keep rendering
{header.column.getCanResize() ? (

  ) : null}

I'm seeing my memoized flexRendered component not only rerendering on interactions, but actually unmounting without arg changes. Is this likely related to this issue?

I was able to get no unnecessary rerenders by extracting only the properties I need out of each row/cell and then creating a memoized Row and Cell Components:

function arrayContentsEqual<T>(arr1: T[], arr2: T[]) {
  if(arr1.length !== arr2.length) return false;
  for(let i = 0; i < arr1.length; i++) {
    if(arr1[i] !== arr2[i]) return false;
  }
  return true;
}

function objectContentsEqual<T extends Record<string, any>>(obj1: T, obj2: T) {
  const obj1Keys = Object.keys(obj1);
  const obj2Keys = Object.keys(obj2);
  if(obj1Keys.length !== obj2Keys.length) return false;
  if(!arrayContentsEqual(obj1Keys, obj2Keys)) return false;
  for (let obj1Key of obj1Keys) {
    if(obj1[obj1Key] !== obj2[obj1Key]) {
      console.log(obj1Key, obj1[obj1Key], obj2[obj1Key], 'differ')
      return false;
    }
  }
  return true;
}

type MemoizedRow<TData extends RowData> = {
  id: string;
  cells: MemoizeCell<TData>[];
}

type MemoizeCell<TData extends RowData> = {
  id: string;
  rowIndex: number
  columnId: string;
  value: TData
  updateData: (rowIndex: number, columnId: string, value: any) => void;
}

function useMemoizedRows<TData extends RowData>(rows: Row<TData>[]) {
  const startTime = Date.now();
  const rowsRef = React.useRef<MemoizedRow<TData>[]|null>(null);
  let newRows = React.useMemo(() => {
    return rows.map<MemoizedRow<TData>>((row, rowIndex) => {
      const cells = row.getVisibleCells();
      return {
        id: row.id,
        cells: cells.map((cell, cellIndex) => {
          const cellContext = cell.getContext();
          return {
            id: cell.id,
            rowIndex: cellContext.row.index,
            columnId: cellContext.column.id,
            value: cellContext.getValue(),
            updateData: cellContext.table.options.meta?.updateData!,
          } as MemoizeCell<TData>;
        })
      }
    })
  }, [rows]);

  if(!rowsRef.current)
    rowsRef.current = newRows;

  newRows = newRows.map((newRow, rowIndex) => {
    const memoizedRow = rowsRef.current![rowIndex]!;
    let anyCellChanged = false;
    const resultingRow = {
      id: newRow.id,
      cells: newRow.cells.map((newCell, cellIndex) => {
        const memoizedCell = memoizedRow?.cells[cellIndex];
        if(memoizedCell && objectContentsEqual(newCell, memoizedCell)) return memoizedCell;
        // console.log('rowIndex', rowIndex, 'cellIndex', newCell, 'changed')
        anyCellChanged = true;
        return newCell;
      })
    } as MemoizedRow<TData>;
    if(!anyCellChanged && newRow.id === memoizedRow?.id)
      return memoizedRow;
     // console.log('rowIndex', rowIndex, 'changed')
    return resultingRow;
  });
  const endTime = Date.now();
  console.info('memoization took: ', endTime - startTime, 'ms');
  if(arrayContentsEqual(newRows, rowsRef.current!)) {
    rowsRef.current = newRows;
    return rowsRef.current!;
  }
  rowsRef.current = newRows;
  return rowsRef.current!;
}

          {memoizedRows.map(row => {
            return (
              <RowComponent key={row.id} row={row} />
            )
          })}

function RowInner({row}: {row: MemoizedRow<Person>}) {
  return (

      {row.cells.map(cell => {
        return (
          <CellComponent
            key={cell.id}
            rowIndex={cell.rowIndex}
            columnId={cell.columnId}
            value={cell.value}
            updateData={cell.updateData}
          />);
      })}

  )
}

const RowComponent = React.memo(RowInner);

function CellInner({
  value,
  rowIndex,
  columnId,
  updateData,
}: MemoizeCell<any>)  {
  return (

      <input
        value={value as string}
        onChange={(e) => updateData?.(rowIndex, columnId, e.target.value)}
      />

  );
}
const CellComponent = React.memo(CellInner);

This cuts down on all re-renders. I found however that getRowModel takes a very long time when rendering that many items and has gotten worse in recent releases. Something in the core doesn't seem to handle even a 1,000 well.


ROX-16235: Add deprecation notice for Network Graph 1.0

Description
This PR adds a deprecation notice to v1.0 of Network Graph and adds a line item to the CHANGELOG

@zhenpesky let me know if you have a better message for this


Fix a bug that does not load game categories after v8.1.12

Source

@Foxbond Did you try restarting Chrome? For me, when restarting Firefox, it works normally.

Restarting browser did not fix the bug for me on Firefox and also another user reported that this won't help https://www.steamgifts.com/go/comment/0HJlWOP.
I've often but not always the following error in console:
TypeError: d is null esgst.js:1:1110824

Done and I got
Promise resolved after context unloaded esgst.js:54
A/e/</t.continueRequest/t/<moz-extension://325d0a81-23a4-4820-ab42-3033d251fe7c/esgst.js:54:267218

With 8.1.13 it is:
Promise resolved after context unloaded esgst.js:54
A/e/</t.continueRequest/t/<moz-extension://325d0a81-23a4-4820-ab42-3033d251fe7c/esgst.js:54:267330

It's not fixed with v8.1.13?

I'm sorry I didn't even test it further with the latest update just opened a page and the console. It seems to be fixed with 8.1.13.

Thanks for confirming.


[5.10] Revert "Update swift-certificates to 1.0.1, swift-crypto to 3.0.0 (#6949)"

This reverts commit d90d52ee2374785f6fd10b7bb474652093d108df.
Until update-checkout supports this change in 5.10.

@swift-ci please test Windows platform


Fix legalization of SplitV by handling negative axis values

The legalization for SplitV would not take negative values as axis at
the moment. Because no error is thrown, the rewrite will just discard
the operator resulting in a wrong MLIR.
This patch fixes the issue by adjusting the axis with a wrap around
approach. Furthermore, if the axis value exceeds the size of the input
tensor, an error is thrown so that the legalization does not take place
allowing other rewrites to be performed.
Signed-off-by: Michele Di Giorgio<EMAIL_ADDRESS>Change-Id: I2b873ddce9685b9105a142c20fc032afc9863bf3

@mdigiorgio could you add a test in the TensorFlow or TensorFlowLite legalizations?

@mdigiorgio could you add a test in the TensorFlow or TensorFlowLite legalizations?

Hi @rsuderman, thanks for reviewing. I've just added a test that stresses this specific case.

Hi @rsuderman , any chance you could have another look at this? Thanks in advance!


BLOCK-40: Implement chainsaw in NFT assets view

Problem solved
Short description of the bug fixed or feature added

PR-Codex overview
The focus of this PR is to optimize fetching owned NFTs and improve NFT card rendering in the ViewNFTs screen.
Detailed summary

Added useGetOwnedNFTs hook for fetching owned NFTs efficiently.
Removed redundant NFT fetching logic.
Updated NFT card rendering logic to display images and quantity owned correctly.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

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

#4006  👈
#4005
#4004
main

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

Join @iuwqyir and the rest of your teammates on  Graphite


Change language on code blocks to 'C'

Our APIs are actually just straight C functions.
Also the ManagedCPlusPlus declaration isn't working to highlight anything.
Did a find and replace on all files, checked the highlighting through Open Publishing and it's now coloring const and function names (which is better than the nothing it was highlighting before.)

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/addconsolealias.md
:white_check_mark:Succeeded
View

docs/allocconsole.md
:white_check_mark:Succeeded
View

docs/attachconsole.md
:white_check_mark:Succeeded
View

docs/char-info-str.md
:white_check_mark:Succeeded
View

docs/clearing-the-screen.md
:white_check_mark:Succeeded
View

docs/console-cursor-info-str.md
:white_check_mark:Succeeded
View

docs/console-font-info-str.md
:white_check_mark:Succeeded
View

docs/console-font-infoex.md
:white_check_mark:Succeeded
View

docs/console-history-info.md
:white_check_mark:Succeeded
View

docs/console-readconsole-control.md
:white_check_mark:Succeeded
View

docs/console-screen-buffer-info-str.md
:white_check_mark:Succeeded
View

docs/console-screen-buffer-infoex.md
:white_check_mark:Succeeded
View

docs/console-selection-info-str.md
:white_check_mark:Succeeded
View

docs/console-virtual-terminal-sequences.md
:white_check_mark:Succeeded
View

docs/coord-str.md
:white_check_mark:Succeeded
View

docs/createconsolescreenbuffer.md
:white_check_mark:Succeeded
View

docs/fillconsoleoutputattribute.md
:white_check_mark:Succeeded
View

docs/fillconsoleoutputcharacter.md
:white_check_mark:Succeeded
View

docs/flushconsoleinputbuffer.md
:white_check_mark:Succeeded
View

docs/focus-event-record-str.md
:white_check_mark:Succeeded
View

docs/freeconsole.md
:white_check_mark:Succeeded
View

docs/generateconsolectrlevent.md
:white_check_mark:Succeeded
View

docs/getconsolealias.md
:white_check_mark:Succeeded
View

docs/getconsolealiases.md
:white_check_mark:Succeeded
View

docs/getconsolealiaseslength.md
:white_check_mark:Succeeded
View

docs/getconsolealiasexes.md
:white_check_mark:Succeeded
View

docs/getconsolealiasexeslength.md
:white_check_mark:Succeeded
View

docs/getconsolecp.md
:white_check_mark:Succeeded
View

docs/getconsolecursorinfo.md
:white_check_mark:Succeeded
View

docs/getconsoledisplaymode.md
:white_check_mark:Succeeded
View

docs/getconsolefontsize.md
:white_check_mark:Succeeded
View

docs/getconsolehistoryinfo.md
:white_check_mark:Succeeded
View

docs/getconsolemode.md
:white_check_mark:Succeeded
View

docs/getconsoleoriginaltitle.md
:white_check_mark:Succeeded
View

docs/getconsoleoutputcp.md
:white_check_mark:Succeeded
View

docs/getconsoleprocesslist.md
:white_check_mark:Succeeded
View

docs/getconsolescreenbufferinfo.md
:white_check_mark:Succeeded
View

docs/getconsolescreenbufferinfoex.md
:white_check_mark:Succeeded
View

docs/getconsoleselectioninfo.md
:white_check_mark:Succeeded
View

docs/getconsoletitle.md
:white_check_mark:Succeeded
View

docs/getconsolewindow.md
:white_check_mark:Succeeded
View

docs/getcurrentconsolefont.md
:white_check_mark:Succeeded
View

docs/getcurrentconsolefontex.md
:white_check_mark:Succeeded
View

docs/getlargestconsolewindowsize.md
:white_check_mark:Succeeded
View

docs/getnumberofconsoleinputevents.md
:white_check_mark:Succeeded
View

docs/getnumberofconsolemousebuttons.md
:white_check_mark:Succeeded
View

docs/getstdhandle.md
:white_check_mark:Succeeded
View

docs/handlerroutine.md
:white_check_mark:Succeeded
View

docs/input-record-str.md
:white_check_mark:Succeeded
View

docs/key-event-record-str.md
:white_check_mark:Succeeded
View

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


Incorrect project page link

Hi,
The project page link of "GPS-Gaussian: Generalizable Pixel-wise 3D Gaussian Splatting for Real-time Human Novel View Synthesis" is incorrect, and it should be https://shunyuanzheng.github.io/GPS-Gaussian.
Could you kindly update the info? Thanks!

Thx, is updated!


Refactor broker management

Configure addresses explicitly
Refactor broker management to easily support different entity types

@vbusch This should make it easier to wire in the per-address settings for shared infra.

@enmasse-ci run tests profile=isolated-shared-infra

:heavy_check_mark: Test Summary :heavy_check_mark:
TEST_PROFILE: isolated-shared-infra
TEST_CASE:
TOTAL: 43
PASS: 37
FAIL: 0
SKIP: 6
BUILD_NUMBER: 931
BUILD_ENV: oc cluster up

@enmasse-ci run tests profile=isolated-shared-infra crc

@enmasse-ci run tests profile=isolated-shared-infra crc

:heavy_check_mark: Test Summary :heavy_check_mark:
TEST_PROFILE: isolated-shared-infra
TEST_CASE:
TOTAL: 43
PASS: 37
FAIL: 0
SKIP: 6
BUILD_NUMBER: 933
BUILD_ENV: crc

@enmasse-ci run tests profile=isolated-shared-infra

:heavy_check_mark: Test Summary :heavy_check_mark:
TEST_PROFILE: isolated-shared-infra
TEST_CASE:
TOTAL: 43
PASS: 37
FAIL: 0
SKIP: 6
BUILD_NUMBER: 935
BUILD_ENV: oc cluster up


@ctix-declaration is too strict.

singleton-check.ts
/** @ctix-declaration */
/* eslint-disable no-var -- global neeed this. */
import { VERSION } from "internal/constants";
import { internal } from "./internal.js";

if (globalThis["XENON_INSTANCE_VERSION"] !== undefined) {
    internal.log.warn(
        "ATTENTION!!!",
        "There may currently be multiple versions of the module.",
        "Version A:",
        VERSION,
        "Version B:",
        globalThis["XENON_INSTANCE_VERSION"],
    );
} else {
    globalThis["XENON_INSTANCE_VERSION"] = VERSION;
}

declare global {
    var XENON_INSTANCE_VERSION: string | undefined;
}

I used the above file to check for multiple module instances, which requires an import statement in 'index.ts', but that would be excluded.
It is expected that files with '@ctix-declaration' will simply generate an 'import' statement in all cases.

@smallmain Hi,
The @ctix-declaration comment is intended for use in cases where the declare module syntax cannot be added to the index.ts file, rather than as an exception process for the exclude option. The order and process of including or excluding target files can significantly impact the ctix user, so in this case, it is recommended to use the exclude option more precisely.

@smallmain Hi,
The @ctix-declaration comment is intended for use in cases where the declare module syntax cannot be added to the index.ts file, rather than as an exception process for the exclude option. The order and process of including or excluding target files can significantly impact the ctix user, so in this case, it is recommended to use the exclude option more precisely.

Hi, can you tell me how to solve this situation?
Seems to be missing a feature that is always included.

@smallmain Could you please provide a reproducible repository?

@smallmain Could you please provide a reproducible repository?

@imjuni
ctix-demo.zip
Please take a look at the archive for the minimal reproduction project.
I need to generate an import statement to 'check.ts' in' index.ts', but there's no way to do that right now.

@smallmain
I developed @ctix-declaration specifically for extending types, so it is designed not to work in files that contain if/else or for/while, etc statements. In the reproducible repo you provided, @ctix-declaration did not work because of the if/else statements.
While TypeScript/JavaScript supports extending or overwriting globalThis, and therefore ctix should also support it, ctix is a code generation tool and must ensure that the generated code is always compilable. For this reason, ctix supports extending or overwriting globalThis, but it does not support having export statements in the same file. In such cases, it becomes difficult to predict how the correct import/export code should be generated for a valid compilation.
I have released version 2.6.1, which includes these updates. Thank you for your continuous support in helping improve ctix!

@smallmain
I developed @ctix-declaration specifically for extending types, so it is designed not to work in files that contain if/else or for/while, etc statements. In the reproducible repo you provided, @ctix-declaration did not work because of the if/else statements.
While TypeScript/JavaScript supports extending or overwriting globalThis, and therefore ctix should also support it, ctix is a code generation tool and must ensure that the generated code is always compilable. For this reason, ctix supports extending or overwriting globalThis, but it does not support having export statements in the same file. In such cases, it becomes difficult to predict how the correct import/export code should be generated for a valid compilation.
I have released version 2.6.1, which includes these updates. Thank you for your continuous support in helping improve ctix!

Thank you, we just need a way to include the file anyway and generate 'import "xxx"; 'directive, this directive can be guaranteed to be valid by the user.


Feature support zero property for tvf numbers

Proposed changes
Issue Number: close #xxx
mysql> select * from numbers("zero" = "10");
+--------+
| number |
+--------+
|      0 |
|      0 |
|      0 |
|      0 |
|      0 |
|      0 |
|      0 |
|      0 |
|      0 |
|      0 |
+--------+
10 rows in set (0.11 sec)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall


Add "do_update" option for smart groups

The do_update parameter is an optional addition to the groups and exclusion_groups dictionaries within the arguments of a JSS recipe. This allows the recipe to specify a computer group to be added to the Targets and Exclusions of a policy, but not to update the smart groups if they already exist. The default behaviour is do_update == True, which is the same as the current behaviour. If <key>do_update</key><false/> is added to a group dictionary, an existing group of the specifying name will not be overwritten/updated.
The use case for this change is that an administrator can automatically provide smart groups via AutoPkg, which can then be altered - most likely, the criteria is changed. More broadly, the idea is that JSSImporter can be used to create a set of production policies for a software title, some of which will change with new software versions, but some will not, and need to have adjustable scope.
Example:
<key>groups</key>
<array>
	<dict>
		<key>do_update</key>
		<false/>
		<key>name</key>
		<string>%USERS_GROUP_NAME%</string>
		<key>smart</key>
		<true/>
		<key>template_path</key>
		<string>%USERS_GROUP_TEMPLATE%</string>
	</dict>
</array>

Created a new feature branch in which to merge the new do_update and skip_scope features prior to merging into master.


DIA-112 Adding tracking of clicks on the gallery verified rep pill

The type of this PR is: Enhancement
DIA-112
Description
As we rollout the new gallery verified representation feature on the artist page we want to track users who are clicking on the pill
The new event is surfaced within the already existing click table

:rocket: PR was released in v4.148.0 :rocket:


bosh micro deploy problem

Hi, I'm using the instruction in below link:
http://bosh.io/docs/deploy-microbosh-to-openstack.html
and I downloaded bosh-stemcell-3115-openstack-kvm-centos-7-go_agent.tgz, but when i execute this command :  bosh micro deploy bosh-stemcell-3115-openstack-kvm-centos-7-go_agent.tgz
I get this output:
Conventionally, `bosh-deployments.yml` should be saved in /root.
Is /root/my-micro-deployment a directory where you can save state? (type 'yes' to continue): yes
Deploying new micro BOSH instance `manifest.yml' to `https://x.x.x.x:25555' (type 'yes' to   continue): yes

Verifying stemcell...
File exists and readable                                     OK
Verifying tarball...
Read tarball                                                       OK
Manifest exists                                                   OK
Stemcell image file                                             OK
Stemcell properties                                             OK

Stemcell info
 -------------
Name:    bosh-openstack-kvm-centos-7-go_agent
Version: 3115
/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:135:in `require': cannot load such file -- fog (LoadError)
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:144:in `require'
from /usr/local/share/gems/gems/bosh-registry-1.3126.0/lib/bosh/registry.rb:10:in `<top (required)>'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:73:in `require'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:73:in `require'
from /usr/local/share/gems/gems/bosh-registry-1.3126.0/bin/bosh-registry:3:in `<top (required)>'
from /usr/local/bin/bosh-registry:23:in `load'
from /usr/local/bin/bosh-registry:23:in `<main>'
`bosh-registry -c /tmp/d20151107-3117-scmzcw/bosh_registry_yml20151107-3117-r6nn32` failed, exit status=1

thanks for your help.

Hi there, I'm not very familiar with BOSH micro plug-in but you probably could use bosh-init instead. http://bosh.io/docs/using-bosh-init.html That's how we do it in our OpenStack envrionment.
Cheers,
/Jay

Closing. no activity. As suggested please try using bosh-init.


url to msmarco triples do not exists anymore

Hi,
I'm trying to run a bi-encoder on msmarco dataset. I used your train_msmarco_v2.py script but it appears that the url to download msmarco triples do not exists anymore...

You can find the working scripts here:
https://github.com/UKPLab/sentence-transformers/tree/master/examples/training/ms_marco


fix(typo): fix some typo

Fixes #TODO
fix some typo about comments and error print
Motivation
fix some typo about comments and error print

Modifications

Verification

@juliev0 thank for your approved, is this pr allowed to merge?


i have a error saying: A Project With a output type of Class Library Cannot be directly started

Problem encountered on https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/create
Operating System: windows
Provide details about the problem you're experiencing. Include your operating system version, exact error message, code sample, and anything else that is relevant.

duplicate of #5266


New Feature: select all, clear all feature

Would we please add the "Select all" and "Clear all" feature? If the select items too many, select one by one will not convenience. Just like as below:

Thanks.

Hi every one will it be possible to developed above feature, I also need this feature.
Thanks

Me too.


Annoying behavior: Atom keeps stealing focus during startup on OS X

Here's a GIF: http://g.recordit.co/XVdFRbpFRV.gif
After launching Atom from terminal, I clicked on the terminal window to maintain focus, but while Atom was starting, it stole focus (as in the current active window) many times.
It's specially annoying since Atom is slow and I want to use the time it takes to be ready in other activities.
Atom is 0.199.0 on OS X Yosemite.

Came here just to report this! Grabs focus for 4 times on my machine with the same specs. Plugins might be contributing to this also.

Just made a test with a fresh .atom directory; Atom took focus for itself 2 times during load.

I can reproduce this on OS X 10.10.3 and Atom 0.200.0-6431807 – it steals focus twice during window startup (in safe mode).

Not only does Atom steal focus from other applications during window startup, but Atom windows actually steal focus from each other during window startup (ie. if you quit Atom with multiple windows open and then opened Atom again from the Dock) – the focused window changes multiple times.

I'm guessing this might be related to #6759 since it shows the window, the loads, then focuses it.

It steals focus on Windows, too.

Also feel annoyed by this, It steals the focus 3 times when I turn on my computer.


[staging] perl536Packages.XMLLibXML: fix broken build to unblock nixos VM tests

Description of changes
Workaround for https://github.com/NixOS/nixpkgs/issues/243214 : get perl536Packages.XMLLibXML to build to unblock nixos VM tests
I tried upgrading first to no avail, so disabled test as suggested in https://github.com/NixOS/nixpkgs/pull/241700
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Let's try some random test, since that's what made me want to fix this in the first place:
@ofborg build nixosTests.bpf

FWIW the test failure is due to an improvement in libxml2 (something that used to not parse correctly now parses successfully); the test will just be updated to make it harder to parse again but there is no bug in the perl XML-LibXML module here; so this is safe to ignore until next version.

test still failed, taking a look...
linked PR got merged so I'll update to apply patch instead of skipping test

new error seems unrelated:
INTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "/nix/store/d25c59i7i4fzwzrignmg8c6y2r53zzj7-python3.10-pytest-7.2.1/lib/python3.10/site-packages/_pytest/main.py", line 266, in wrap_session
INTERNALERROR>     config._do_configure()
INTERNALERROR>   File "/nix/store/d25c59i7i4fzwzrignmg8c6y2r53zzj7-python3.10-pytest-7.2.1/lib/python3.10/site-packages/_pytest/config/__init__.py", line 1037, in _do_co
nfigure
INTERNALERROR>     self.hook.pytest_configure.call_historic(kwargs=dict(config=self))
INTERNALERROR>   File "/nix/store/nd2wrig3f99r8nqawl9n65mhy8xflqw2-python3.10-pluggy-1.2.0/lib/python3.10/site-packages/pluggy/_hooks.py", line 452, in call_historic
INTERNALERROR>     res = self._hookexec(self.name, self._hookimpls, kwargs, False)
INTERNALERROR>   File "/nix/store/nd2wrig3f99r8nqawl9n65mhy8xflqw2-python3.10-pluggy-1.2.0/lib/python3.10/site-packages/pluggy/_manager.py", line 112, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
INTERNALERROR>   File "/nix/store/nd2wrig3f99r8nqawl9n65mhy8xflqw2-python3.10-pluggy-1.2.0/lib/python3.10/site-packages/pluggy/_callers.py", line 116, in _multicall
INTERNALERROR>     raise exception.with_traceback(exception.__traceback__)
INTERNALERROR>   File "/nix/store/nd2wrig3f99r8nqawl9n65mhy8xflqw2-python3.10-pluggy-1.2.0/lib/python3.10/site-packages/pluggy/_callers.py", line 80, in _multicall
INTERNALERROR>     res = hook_impl.function(*args)
INTERNALERROR>   File "/build/virtualenv-20.19.0/tests/conftest.py", line 26, in pytest_configure
INTERNALERROR>     order = manager.hook.pytest_collection_modifyitems._nonwrappers
INTERNALERROR> AttributeError: '_HookCaller' object has no attribute '_nonwrappers'
/nix/store/mjv0i0ky6qrhn2jbhmhn9p05d3h2cpwr-stdenv-linux/setup: line 1596: pop_var_context: head of shell_variables not a function context

I guess we can still merge this and look at the rest later, but I'll pass on this one :/

For reference this error is discussed at
https://github.com/NixOS/nixpkgs/pull/240480#issuecomment-1636693741


[FLINK-21550][tests] Harden ZooKeeperHaServicesTest.testSimpleClose

This commit hardens the ZooKeeperHaServicesTest by not busy loop waiting with a timeout
on a leader election but instead to use LeaderRetrievalUtils.LeaderConnectionInfoListener
which offers a future which is completed when the leader is elected.

Thanks for the review @zentol. The failing test is unrelated. Merging this PR now.


feat: add Prop to main type declaration file [#6850]

What kind of change does this PR introduce? (check at least one)

[ ] Bugfix
[x] Feature
[ ] Code style update
[x] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change? (check one)

[ ] Yes
[x] No

If yes, please describe the impact and migration path for existing applications:
The PR fulfills these requirements:

[x] It's submitted to the dev branch for v2.x (or to a previous version branch), not the master branch
[x] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)
[x] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
[x] New/updated tests are included

If adding a new feature, the PR's description includes:

[x] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

See #6850.
Other information:

This should also fix https://github.com/vuejs/vue/issues/6841.
I wonder how it would impact case like union: [User, Number].
Of course, exporting more types means more compatibility for us to maintain. If it can also fix union case I think we should ship this feature.

@HerringtonDarkholme it seems to work fine with union types where you want the constructor instead of the primitive:

To deal with union type, I guess it would be more convenient to declare another type (e.g. PropType in the following example) to unify the casting syntax.
type PropType<T> = Prop<T> | Prop<T>[]

interface Foo {
  a: string
}

Vue.extend({
  props: {
    // Both looks the same syntax
    // (we don't need to concern the `type` is an array or not)
    foo: Object as PropType<Foo>
    union: [Object, String] as PropType<Foo | string>
  }
})

Prop<string | Foo>[] is enough for union case. This is both concise and saves us one exported type.

@HerringtonDarkholme, I think that @ktsn has a good point. That is technically the purpose of PropValidator<T> which serves as the all-encompassing union of PropOptions<T> | Prop<T> | Prop<T>[]. Would it be better to export PropValidator<T> instead so that users don't have to worry about conforming to the Vue prop validator syntax, and just do:
props: {
  myProp: {/* constructor, array, or prop options */} as PropValidator<IMyProp>

@HerringtonDarkholme
I didn't mean we should export both Prop and PropType - I think we should minimize exposing types as possible too.
But the Prop might be a little low level to be used in user land because we need to consider whether the props type is an array or not, even though we just want to focus its type parameter in that case.
So I would suggest to add a thin wrapper type to intended to be used in the user land.
@ferdaber
I'd say PropValidator shouldn't be exposed since we just want to cast type here. It seems a little overkill for me.

The only difference between PropType<T> (which currently does not exist in options.d.ts), and PropValidator<T> is the additional union of the customized object syntax of the prop validator API. If someone were to use the customized object syntax then they would still need to do something like:
props: {
  union: [Object, string] as PropType<Foo | string>,
  complexUnion: {
    type: [Object, String] as PropType<Foo | string>
    // ... other stuff
  }
}

versus
props: {
  union: [Object, String] as PropValidator<Foo | string>,
  complexUnion: {
    type: [Object, String]
    // ... other stuff
  } as PropValidator<Foo | string>
}

I guess to me it makes more sense to have the typecast be in the same level of each prop definition, but it doesn't really make much of a difference so I'm fine with whichever you all decide. The other benefit I see too would be that PropValidator is the more abstract definition of props in a Vue constructor, so if in the future the lower-level API changes PropValidator is the one that's least likely to change

I think PropType is more pragmatic than Prop and more intuitive than PropValidator.

Great! I will modify the PR to create a new type called PropType and export that in place of Prop

Any updates on this?

Any movement on this? Keen to see it land!

Do we know when this will be released?  I am sure "when it's ready" but just looking for a guestimate?

Do we know when this will be released? This very important for us.

Gang -- when will this happen?!  This is causing us a major issue in our large Vue project.. it looks like everything is done and ready to go? Why isn't it merged?

Why is this hanging around in limbo?

@yyx990803 @ktsn @sodatea Anyone? This bug is causing unnecessary TypeScript errors in our projects.

Once we finish CLI release this will be the first to be merged in core, please bear with us.

Just want to echo the question by @alexsasharegan. Will it solve that problem?

@RehanSaeed Yes there is. Check out this great article by Mitchell Garcia.

@yyx990803 It's been a month since your last comment. Any hope of getting this merged soon? I'm glad there's a workaround (by simply excluding type: Array), but it's still a nuisance to not have proper type checking for props.

@ffxsam Looking forward to this as well, but is the function interface syntax not a viable workaround? Types are working for me with:
type: Array as () => string[],

@ky-is Nice trick, I'll give it a try. Thanks!

The solution is this PR. I'm not sure what the holdup is.

@yyx990803 @ferdaber can this be merged in? It's a big roadblock for our TypeScript codebase, too!

I think what's happening is that they won't focus on this kind of issues as they are rewritting Vue in TypeScript (as announced here: https://medium.com/the-vue-point/plans-for-the-next-iteration-of-vue-js-777ffea6fabf).

@cesalberca -- that is all well and good, but realistically it may be a year before adoption of V3.0 etc. meanwhile people everyday are going through this pain -- which is FIXED -- and an easy patch.  It doesn't make sense.

Maybe just just make a local copy and patch it yourself and not wait forever? That what we did.

@cesalberca -- that is all well and good, but realistically it may be a year before adoption of V3.0 etc. meanwhile people everyday are going through this pain -- which is FIXED -- and an easy patch. It doesn't make sense.

I know @sjmcdowall , I'm just saying that this is what may be occurring. I wouldn't agree too if this is whats truly happening.

will this be merged so soon?

Fantastic!
Is there some additional documentation on this somewhere so I can double make sure I'm implementing this correctly? I have:
<script lang="ts">
import Vue from 'vue';
import { Prop } from 'vue/types/options';
import { Education } from<EMAIL_ADDRESS>
export default Vue.extend({
    props: {
        education: {
            type: Object as Prop<Education>,
            required: false,
        },
    },
});

Is this the appropriate way to do it?

@abelgoodwin1988, I think you should use it like that
<script lang="ts">
import Vue, { PropType } from 'vue';
import { Education } from<EMAIL_ADDRESS>
export default Vue.extend({
    props: {
        education: Array as PropType<Education[]>,
    },
});

The PropType interface definition is export type PropType<T> = Prop<T> | Prop<T>[];

Fantastic!
Thanks for all the hard work and merging this.
Is there some additional documentation on this somewhere so I can double make sure I'm implementing this correctly? I have:
<script lang="ts">
import Vue from 'vue';
import { Prop } from 'vue/types/options';
import { Education } from<EMAIL_ADDRESS>
export default Vue.extend({
    props: {
        education: Array as Prop<Education[]>,
    },
});

Is this the appropriate way to do it?

I've been having good luck with PropOptions as an alternative approach.
<script lang="ts">
import Vue, { PropOptions } from 'vue';
import { Education } from<EMAIL_ADDRESS>
export default Vue.extend({
    props: {
        education: Array,
    } as PropOptions<Education[]>,
});

The name might be singular, I can check now from my phone. I like this approach because it also hints the validator function parameters.

ok


A question about kvstore and optimizer.

Is optimizer.py only executed on server node?
It seems the server node gives every node the same learning rate.  How do other nodes get the learning rate from the server node ? From kvstore ?
If we want different node training with different learning rate , how to do it?

Worker node only compute grads, and send them to server. The server node collects grads from workers and merge them to model, then pull the new model from server. Learning rate is not needed for workers.

So we cant't make nodes train with different speed? @feiyulv

there is a lr_scheduler, which decides how to change the learning rate. you can has a customized scheduler which gives different lr for different nodes

thank you@mli


How to stop printer?

For class Ticket there is no method to stop printer. What can i do to finish printing.
Thanks.

Hi, there is no need to have a special command to "finish printing".
The latest command could be to cut the ticket or just a few empty lines.


Fix k32w paths

Problem
Path for K32W was changed to be inside the NXP subdirectory, but builds do not match that.
./gn_build.sh completely fails.
Change overview
Adjust paths. Make k32w only compile for release.
Testing
Ran gn_build.sh. Saw k32w output.
CI will also validate that nothing breaks in compilation (although gn_build will not be used).

Marking hotfix: path renaming and apparently this codepath was not validated recently (CI never failed).

Moved to draft: This went a bit more down the rabbit hole than I wanted: fixed paths, fixed gnbuild, now going into otarequester teritory.
@doru91 leaving this as draft in case you need to see how far I got, will close the PR once we have an actual working fix (as this one is not it)

Moved PR out of draft after update from @doru91

I reverted d26cba02f4000c9e6887287c798fee2ecf384f27 and pushed a fix for LWIP define redefinition. Let's see if the CI is passing.

@andy31415 , looks good to me now.

Fast tracking build fixes.

/rebase


:nail_care: in request_validation.rb

it's always nice to have consistency in coding style :)
should have added this change in #9

Good point :point_up:


Version reporting doesn't find classpath file in JAR

When running the application from the JAR, the version checking feature doesn't find the version file on the classpath.

PR: #1546 Fix an issue with the file not being found in the jar

:+1:


Adding code coverage bits

Type of change

[ ] Refactor
[x] New feature
[ ] Bug fix
[x] Optimization
[ ] Documentation Update

Description
Pre-requisite PR from PROW: https://github.com/openshift/release/pull/46818
Checklist before requesting a review

[x] I have performed a self-review of my code.
[ ] If it is a core feature, I have added thorough tests.

Testing
Needs integration with PROW PR above to see it reflected in the subsequent PRs.

/approve
will wait on question about integration job before lgtm'ing

/lgtm
once https://github.com/openshift/release/pull/46818 merges, hit this with /retest and it should pass tests and merge (or you'll have more stuff to debug)

/retest

adding WIP label so we know to ignore this for now...once @vishnuchalla is back i'm hoping he can pick it back up

adding WIP label so we know to ignore this for now...once @vishnuchalla is back i'm hoping he can pick it back up

Looking at it now.

/retest

adding WIP label so we know to ignore this for now...once @vishnuchalla is back i'm hoping he can pick it back up

Looking at it now.

Added secret token for OLS codecov. Once this PR is merged we can do a /restest and verify here.

/retest

Welcome to Codecov :tada:
Once merged to your default branch, Codecov will compare your coverage reports and display the results in this comment.
Thanks for integrating Codecov - We've got you covered :open_umbrella:

/lgtm

/pj-rehearse ack

/pj-rehearse ack

wrong PR?  that's an openshift/release thing

/pj-rehearse ack

wrong PR? that's an openshift/release thing

Sorry my bad. Just went with the flow 😝


Add BitChoiceOption component Documentation Comments (#543)

This closes #543

I'm closing this PR because of the unrelated commits in it


Securing/Optimizing zPTA.php

Mostly just reduced how often this file is generating extra overhead for each string literal present. ( PHP interprets "string" heavily while  'string' generates significantly less cycles per literal)
A few places where variable substitution was used are also now safer due to greater resistance against injection attacks.

The " vs ' is a bit of a distraction, but these changes look harmless and can be merged.
@courtesysoft up to you.

I benchmarked this with a huge amount of tables and found no gain in apache, didn't bother to test in nginx.
OP, did you get a measured speed increase i'm missing?


Compose and entrypoint fixes

:tada: This PR is included in version 16.1.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[BUG]

I'm trying to install Juno, but get this error report:
Juno: Error downloading package info for latex-completions
Please check your internet connection, or report this to https://github.com/JunoLab/Juno.jl/issues or https://discourse.julialang.org/ and we'll try to help.
Details

Atom version: 1.60.0
Julia version: 1.8.2
OS: Win 10
Package versions:

Atom.jl:
julia-client:
ink:

I got the same error in Windows 10:
Atom version: 1.60.0 x 64
Julia version: 1.8.2
OS: Win 10
I don't have any other packages installed in Windows 10. This error prevents the installation of Juno on Windows.


Server is updated to 4.25.1 but v2rayN-core client shows 4.23.4 connected

Hi guys!
I think it is just a wrong message. Can you please confirm?
My server is updated at 4.25.1 but when I am connected to it, my v2rayN-core client shows 4.23.4 version at logs.
I am sure the server is updated because I have tried the KCP wechat-video and it is not getting banned as it was happening before the updates.
Do you have to suggest me any better client for windows?
SERVER:
v2ray.service` - V2Ray Service
Loaded: loaded (/lib/systemd/system/v2ray.service; enabled; vendor preset: en
Active: active (running) since Tue 2020-06-30 10:49:46 CST; 2h 36min ago
Docs: https://www.v2ray.com/
https://www.v2fly.org/
Main PID: 8395 (v2ray)
Tasks: 8 (limit: 1078)
Memory: 41.3M
CGroup: /system.slice/v2ray.service
└─8395 /usr/bin/v2ray/v2ray -config /etc/v2ray/config.json
Jun 30 10:49:46 localadmin systemd[1]: Started V2Ray Service.
Jun 30 10:49:46 localadmin v2ray[8395]: V2Ray 4.25.1 (V2Fly, a community-driven
Jun 30 10:49:46 localadmin v2ray[8395]: A unified platform for anti-censorship.
Jun 30 10:49:46 localadmin v2ray[8395]: 2020/06/30 10:49:46 [Info] v2ray.com/cor
Jun 30 10:49:46 localadmin v2ray[8395]: v2ctl> Read config:  `/etc/v2ray/config.j
V2RAYN-CORE CLIENT  v3.19
Vmess-****************
启动服务(30/6/2020 1:21:31 μμ)...
V2Ray 4.23.4 (V2Fly, a community-driven edition of V2Ray.) Custom (go1.14.1 windows/386)
A unified platform for anti-censorship.
2020/06/30 13:21:31 [Info] v2ray.com/core/common/platform/ctlcmd:
v2ctl> Read config:  **********\v2rayN-Core\config.json
2020/06/30 13:21:31 [Warning] v2ray.com/core: V2Ray 4.23.4 started

What V2RayN shows is the local V2Ray-Core version, all you need to do is update the local Core.

i have the latest v3.19 version of v2rayN maybe they don't have added the latest core version (windows v2rayN-core)?

oh ok!! i got it. I will update it

May I ask here about iphone-ios  client also?
I m using Shadowrocket, how can I know which v2ray-core it uses? I can see that Shadowrocket is more unstable than my windows client in general.
Is there any other ios client that it is updated more often and it is more stable?

Shadowrocket does not use V2Ray-core. In fact, all such apps on iOS neither used V2Ray-core.
Shadowrocket is the app with the most supported protocols and the easiest to use on iOS.
If I had to recommend it, I would recommend QuantumultX. It doesn't support many protocols, but it is the fastest, and is also highly playable, similar to Surge (except for the price).


generic lookup field colored pills

| New sample?      | yes
The JSON code to dynamically add colored pills to lookup columns. If you have a lookup column with more than 10 values, or a lookup column that can have additional items added, managing the pill colors can be time-consuming. The code will calculate a color, background, and border color based on the length of the lookup value and the lookupId.
This code can be applied to any lookup column
![dynamicColoredPills](https://github.com/user-attachments/assets/0d12e1c4-3395-4407-96d3-b544bbe181af)

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
  "elmType": "div",
  "style": {
    "display": "flex",
    "flex-wrap": "wrap",
    "width": "100%"
  },
  "children": [
    {
      "elmType": "div",
      "style": {
        "margin": "2px auto"
      },
      "children": [
        {
          "elmType": "div",
          "style": {
            "vertical-align": "middle",
            "white-space": "nowrap",
            "width": "auto",
            "padding": "5px",
            "color": "=if<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5)) % 255) / 10) * 10) * 0.299) +<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5) + @currentField.lookupId ) % 255) / 10) * 10) * 0.587) + ((255 -<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5) + @currentField.lookupId ) % 255) / 10) * 10)) * 0.114)) ) > 145, '#000000', '#ffffff')",
            "background-color": "='rgba(' +<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5)) % 255) / 10) * 10) + ', ' +<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5) + @currentField.lookupId ) % 255) / 10) * 10)  + ', ' + (255 -<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5) + @currentField.lookupId ) % 255) / 10) * 10)) + ', 1)'",
            "border-width": "2px",
            "border-style": "solid",
            "border-color": "='rgba(' + (255 -<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5)) % 255) / 10) * 10) + ', ' + (255 -<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5) + @currentField.lookupId ) % 255) / 10) * 10)  + ', ' +<EMAIL_ADDRESS>*<EMAIL_ADDRESS>5) + @currentField.lookupId ) % 255) / 10) * 10)) + ', 1)'",
            "border-radius": "25px"
          },
          "children": [
            {
              "elmType": "span",
              "style": {
                "padding": "8px"
              },
              "txtContent"<EMAIL_ADDRESS>            }
          ]
        }
      ]
    }
  ]
}

Hi @jaxkookie ! Thank you for the awesome sample!
However, this pull request does not include any new samples. Instead, it contains the previous samples.

Could you please try the following steps and create a new sample-only pull request?

Steps to create a new pull request
Update master branch

Access the master branch of the forked repository (jaxkookie/List-Formatting)

Click the [Update Branch] button at the top of the page

Clicking [Update Branch] will apply the changes from the original repository to your forked repository

⚠ If you do not see the [Update Branch] button or cannot successfully update or sync, please let me know in the comments.
Open GitHub Codespaces (Editor)

Access the master branch of the forked repository (jaxkookie/List-Formatting)

Press [.] on the keyboard

A web-based code editor called GitHub Codespaces will open

Make sure master is written in the lower left corner and the master branch is open

⚠ If you do not use GitHub Codespaces, you can use Visual Studio Code or any other editor. In that case, however, you will need to clone the file.
Create Branch

Click on the branch name (master) shown in the lower left corner

Click [Create new blanch]

Type in any branch name

Press [Enter] key

Click [Switch to Branch]

Confirm that the branch name in the lower left corner is the branch name you typed in

Add or change files
Add new sample files or make changes to existing ones.

Add or change files (add new sample files)

Review and commit changes

Click on the Source Control icon in the menu on the left

Files that have been changed will be displayed, so confirm the changes

If you are comfortable with the changes you have made, type in a comment about what changes you have made

Click [Commit and push]

Changes are committed to the current branch

Create a pull request

Open the List Formatting repository

You will see a yellow message, click [Compare & pull request]

Make sure that the branch you created is set to merge into the master branch of List Formatting

Fill in Title and Description

Click [Create pull request]

⚠ There is Japanese in some images in places. And the English translation of the Japanese may be incorrect. Sorry🙇♂

The following video also shows the pull request steps!
YouTube: How to submit your projects on GitHub

Thank you for the update @jaxkookie !
Please let me know in the comments when you are done updating and ready to merge!


 It modifies the benchmark Dockerfile to install the correct architecture-specific version of Go and adds tmp.benchmarks to .gitignore.
Changes

Added architecture detection in Dockerfile to install correct Go binary:

Uses arm64 version on Apple Silicon/aarch64
Uses amd64 version on x86_64

Added tmp.benchmarks to .gitignore to avoid committing benchmark results

Testing

Verified on Apple Silicon Mac:

Dockerfile now downloads correct arm64 Go binary
Go tests run without Rosetta errors
Benchmarks complete successfully

Problem
Previously on Apple Silicon Macs, Go tests would fail with:
rosetta error: Rosetta is only intended to run on Apple Silicon with a macOS host using Virtualization.framework with Rosetta mode enabled
This was because the wrong architecture (x86_64) Go binary was being installed.

Thanks for trying aider and filing this PR.
The benchmark is intended to be run inside the docker container. Are you experiencing this problem when running it that way?

Yes, I'm running the benchmark inside the docker container on my Macbook M3

I see, thanks for the fix.


Fix: enquening new job when previosu one was locked

after setting new key lock timeout in queueLock its pointless to check if now is greater than timeout beacuse it will never be, so callback will always return false as second argument and then job will not be pushed to queue which in my opinion is a bug especially that before_enqueue event is called only once after start

Bump!  If you make that last change, and I'll merge this in.

> npm publish
+<EMAIL_ADDRESS>


Add working example to Rusoto Logs readme

When I was first trying to set up rusoto_logs, I had to hunt through a large number of documentation sources, and I wanted to help anyone else who might have trouble putting the pieces together by providing a mostly minimal, self-contained working example.

Hi, thanks for adding this example!
The readme for each service crate is autogenerated, so your changes would be overwritten the next time we generate the rusoto_logs crate.
Fortunately there is an existing way to add examples to the service crates that will be included when generating the crate documentation. You can take a look at https://github.com/rusoto/rusoto/tree/master/rusoto/services/dynamodb/examples as an example.
Adding your example as a new file into services/logs/examples and then re-generating the services as described service_crategen README should include that example in the crate documentation.
If you want to have it included in the README for rusoto_logs as well, you could consider modifying service_crategen to include the examples when generating the README.
Please don't hestitate to ask if you have any further questions or need more pointers!

Thank you for the feedback! I moved my example into the examples directory and regenerated the services.

I'm not sure how to resolve the CI failure. It looks as though it is trying to run my example and failing because it relies on chrono (and probably dotenv, if it gets past chrono). Should I rework the example such that it doesn't require any external crates? Should I do something else to fix it?

Hmm, I see the problem. I can think of two ways to fix it:
a) We already have a mechanism to specify custom dependencies for the service crates (see here for an example). This could be extended to also specify custom dev dependencies.
b) As you suggested, rework your example to not use dotenv or chrono. Getting the unix epoch timestamp should be possible with what's available in std::time.
Of these two options, a) is probably more effort, but I'm happy with either!

I think I resolved it by adding the custom dev dependencies. I also made the example simpler overall, although I kept chrono in so I could test the first thing properly.

Hm, that failure doesn't look like my fault... although it really could be. Not sure what's going on there.

woohoo!

Great! Queuing this up to be merged after we sort out #1090.

Only change I'd like is the one on the CHANGELOG. Thanks for the PR! 👍


Mouse-over visibility on where an item is stored

When mixing disk drives, storage blocks, and external storage, it would be nice if we could see (on mouseover) where items are stored.  This is probably a large task and a silly request but sometimes you end up with things like Iron ingots in both disk drive and Quantum Storage (for example).  It would be nice to know where things are so we can be sure all of an item is where it should be.

No, this is a lot of work for very little benefit. Just turn storages on or off to see where stuff is stored.


[gitlab] get github_token from app

What does this PR do?
Generate GITHUB_TOKEN from Github App
Which scenarios this will impact?
None
Motivation
We're getting constantly rate limited by github when building the runner image, as we don't use authenticated requests.
Additional Notes

/merge


Wrong link for Microsoft 365 App  (pointing to Mac Store instead of Google Play)

Since this is the Android Shared Device Mode the Microsoft 365 App link should point to the Google store. (not the Mac store) https://play.google.com/store/apps/details?id=com.microsoft.office.officehubrow&hl=en_US&gl=US

@ctillier-vmware
Since we have not heard back from you, we will now proceed to close this thread.
If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


In v0.12.0 inject packet check depends on netns is a error desgin

1.In v0.12.0 we change the inject packet and binding it to netns.This cause if the interface not in netns, it will can't be inject packet.
For exampe, In openstack devstack enviroment, the vm's tap/qvo interfaces all not IPV4 ip in the interface, but we can see the Neutron ips in ui,
2.This situation in v0.11.0 we can inject packet by skydive client

Have discussed with masco.

I have the same problem in v0.12.0
In my openstack devstack environment, the virtual ports of the VMs do not belong to any of the network namespaces, and the packet injection fails.
In fact, nothing is shown when ip netns command is executed on the compute node.

The issue is not related to netns. In fact tap doesn't have IPV4 but we report the IPV4 that the VM will use in the Neutron metadata section.
Before this patch https://github.com/skydive-project/skydive/commit/f010aec562200aef936c1781a3904e64b8d20968
metadata of Neutron were replicated to the first level of metadata that's why the packet injector was able to find an IP. This was an error since the tap interface in reallity doesn't have an IP.
I think this should be fixed in the WebUI, adding something to help user to spoof the IP from the Neutron metadata

@safchain, I can not  inject packet successfully also when I use v0.11.0.  In my environment, there are two VMs created by openstack. OVS is uesed in the  environment.
VM1:
IP:<IP_ADDRESS>
MAC:fa:16:3e:95:b0:b8
Interface:tapb3238674-88 bridge     qbrb3238674-88 virtio      fa:16:3e:95:b0:b8
VM2:
IP:<IP_ADDRESS>
IP:fa:16:3e:ae:10:c6
Interface:tapeec17485-2d bridge     qbreec17485-2d virtio      fa:16:3e:ae:10:c6
root@compute1:~# brctl show
bridge name     bridge id               STP enabled     interfaces
qbrb3238674-88          8000.36b39499a407       no              qvbb3238674-88
tapb3238674-88
qbreec17485-2d          8000.aa3935cbd0c4       no              qvbeec17485-2d
tapeec17485-2d
When I ping from vm1 to vm2, I can capture ICMP messages normally, as shown below:
root@compute1:~# tcpdump -vv -i tapb3238674-88
tcpdump: listening on tapb3238674-88, link-type EN10MB (Ethernet), capture size 262144 bytes
18:13:47.452289 IP (tos 0x0, ttl 64, id 11037, offset 0, flags [DF], proto ICMP (1), length 84)
<IP_ADDRESS> > <IP_ADDRESS>: ICMP echo request, id 30465, seq 0, length 64
18:13:47.454433 IP (tos 0x0, ttl 64, id 17743, offset 0, flags [none], proto ICMP (1), length 84)
<IP_ADDRESS> > <IP_ADDRESS>: ICMP echo reply, id 30465, seq 0, length 64
root@compute1:~# tcpdump -vv -i qvbb3238674-88
tcpdump: listening on qvbb3238674-88, link-type EN10MB (Ethernet), capture size 262144 bytes
18:13:47.452458 IP (tos 0x0, ttl 64, id 11037, offset 0, flags [DF], proto ICMP (1), length 84)
<IP_ADDRESS> > <IP_ADDRESS>: ICMP echo request, id 30465, seq 0, length 64
18:13:47.454403 IP (tos 0x0, ttl 64, id 17743, offset 0, flags [none], proto ICMP (1), length 84)
<IP_ADDRESS> > <IP_ADDRESS>: ICMP echo reply, id 30465, seq 0, length 64
But When I inject packets using skydive client, I can capture ICMP echo request packet, but no ICMP echo reply, as shown below.
skydive client inject-packet --src="G.V().Has('Name', 'tapb3238674-88')" --dst="G.V().Has('Name', 'tapeec17485-2d')"
--type="icmp" --count=2 --srcIP="<IP_ADDRESS>/24" --dstIP="<IP_ADDRESS>/24" --srcMAC="fa:16:3e:95:b0:b8"
--dstMAC="fa:16:3e:ae:10:c6"
root@compute1:~# tcpdump -vv -i tapb3238674-88
tcpdump: listening on qvbb3238674-88, link-type EN10MB (Ethernet), capture size 262144 bytes
18:14:05.814217 IP (tos 0x0, id 0, offset 0, flags [none], proto ICMP (1), length 28)
<IP_ADDRESS> > <IP_ADDRESS>: ICMP echo request, id 0, seq 0, length 8
18:14:05.814235 IP (tos 0x0, id 0, offset 0, flags [none], proto ICMP (1), length 28)
<IP_ADDRESS> > <IP_ADDRESS>: ICMP echo request, id 0, seq 0, length 8
root@compute1:~# tcpdump -vv -i qvbb3238674-88
tcpdump: listening on qvbb3238674-88, link-type EN10MB (Ethernet), capture size 262144 bytes
In fact, I capture nothing on interface qvbb3238674-88 using tcpdump.
So I suspect that the ICMP message has not been sent out. I don't know what is the reason. Can you give me some help?
by the way,  the test case in packet_injector_test.go is ok in my environment.

I have known the reason. The ICMP message injected is in the wrong direction.


Conflicting versions of Google Play Services with another library

Your Environment

Plugin version: 0.63
Platform: Android
OS version: Android 10
Device manufacturer and model: Motorola Power One
React Native version: 0.61.5
Plugin configuration options:

BackgroundGeolocation.configure({
      desiredAccuracy: BackgroundGeolocation.HIGH_ACCURACY,
      stationaryRadius: 1,
      distanceFilter: 1,
      notificationTitle: 'App',
      notificationText: 'Navigation',
      debug: true,
      startOnBoot: false,
      stopOnTerminate: true,
      locationProvider: BackgroundGeolocation.RAW_PROVIDER,
      interval: 10000,
      fastestInterval: 5000,
    });

Context
App crashes on startup in while in debug mode,  after installing react-native google sign-in from react-community.
Cannot use it along with react-native google sign-in.
After debugging it for some time, I found out that it was due to conflicting versions in  Google Play Services as described in this medium article
Expected Behavior
No crash
Actual Behavior
App crash after build using npx react-native run-android after installing react-native google signin
Possible Fix

A way to change to a compatible Google Play Services Version
Steps to Reproduce

Install this library
2.Install the google signin library
3.run npx react-native run-android
4.App crashes

Thanks in advance

Figured it out, just had to modify android/build.gradle as stated in the Dependencies section in the docs.
Finally my ext looked like :
    ext {
        buildToolsVersion = "28.0.3"
        minSdkVersion = 16
        compileSdkVersion = 28
        targetSdkVersion = 28
        supportLibVersion = "27.1.1"
        googlePlayServicesAuthVersion = "17.0.0" // <--- use this version or newer
        googlePlayServicesVersion = "17.0.0"
    }

The issue was that react native google-signin required Play Services Version 16 or higher while I think this library default was 11 or higher


Create CI/CD for SLICOT

Originally posted by @andreasvarga in https://github.com/SLICOT/SLICOT-Reference/issues/1#issuecomment-776177370

It would be great if we could provide a testing facility for SLICOT for
the purpose of CI. Such facility exists also for LAPACK, but we lack
experience in this area.

I see one of the main usages for SLICOT as a computational kernel for
control related computations in conjunction with environments like Matlab,
Python, Julia, Octave. Bulding interfaces to these tools (wrappers,
mex-files, etc.) involves (probably) the generation of appropriate shared
libraries for different architectures and compilers.  It would be usefull
for many potential users to have this process largely automated.

https://github.com/SLICOT/SLICOT-Reference/pull/1#issuecomment-775015889 by @ilayn

Just to give a very basic introduction to the CI tools. Currently a few major vendors provide free CI/CD tools to open source codebases. GitHub itself, Azure Pipelines, CircleCI and AppVeyor are the most common ones. TravisCI was the most prominent player but lately they removed their free support so in case you saw their name that's why.
The main workflow is the Issue reports and Pull Requests and this is the annoying part that any change to be made should better be first committed as a pull request. The reason for this is that CI tools and GitHub are integrated each other hence when a new pull request is opened, CI tools receives a webhook signal and starts incorporating the changes to the build and run all the existing tests. This is very helpful to catch the initial tirivial problems should there be any and to see any existing behavior is broken. Once every test passes the CI check then codebase owners, in this case you both, can decide whether a piece of code should go in or not and click the merge button.
Obviously, the more tests there are the better it is. Hence all kinds of trivial input tests wrong strings, wrong options, wrong calls etc. can be tested and get out of the way.
Another advantage of these CI tools is the possibility of running builds against different machine architectures Linux, Win, OSX are very typical choices and some other esoteric options such as ARM and Raspbian etc. are also available.

I see one of the main usages for SLICOT as a computational kernel for control related computations in conjunction with environments like Matlab, Python, Julia, Octave. Bulding interfaces to these tools (wrappers, mex-files, etc.) involves (probably) the generation of appropriate shared libraries for different architectures and compilers.  It would be useful for many potential users to have this process largely automated.

Yes indeed one of the nice byproducts of these CI/CD tools is that you can save the so-called artifacts, the resulting files after the build and use them as releasing a new version. This is a bit trickier so I'll skip the details for now.

It would be great if we could provide a testing facility for SLICOT for
the purpose of CI. Such facility exists also for LAPACK, but we lack
experience in this area.

The Slycot build process and CI is obviously very Python centric. We use NumPy's F2PY to create a Python specific library, called an 'extension', from the Fortran sources, and then test our wrapper functions written in Python against it using Pytest. Unfortunately, none of this applies directly to this repository.
A first step towards a SLICOT CI/CD is to use one of the cloud facilities mentioned by @ilayn to compile the Fortran sources into a (Fortran) library. You already provide a makefile, but there is no configuration helper how to find the compiler and the BLAS/LAPACK libraries and headers. The paths to these could be hardcoded into the CI recipes for the various machines. A better option would be to use autoconf/automake or CMake to find all the build requirements and construct the build commands. Slycot's machinery uses CMake (calling f2py and wrapped by yet another layer named Scikit-buid for the Python setuptools system). I see the LAPACK repository on Github does also use CMake. Providing CMake recipes will also benefit potential users of SLICOT, who want to build it on their own.
Once the library is built, CMake's ctest (also used by LAPACK) could compile test programs which use the library and check their outputs. Many SLICOT routines already come with example code and example result data. These could be reused.


Replace outdated UI library, cleanup UI

Rebass is long time without maintenance.
The way it's currently used within this project is far from ideal.
UI should be rewritten using a different library (or none) from ground up.

@axelboc I think I need some expert guidance. Given the simplicity of the "project" I probably should switch to just SASS. However, if I really wanted to put that vanilla-extract in - I need a bit of extra tooling: I've looked at using craco but also at swapping CRA with something different. With vite I ran into some complexity with jest, using vitest seems like the go to option in that case but one might use Parcel etc. as well. Could you recommend a course of action, please?

Hehe, I mean if you want to keep it simple, I'd recommend CRA + CSS modules. I like the simplicity of CSS modules. I think it overweighs the downside of having to write the styles in separate files or not being able to nest selectors.


Rebase merging doesn't preserve commit signatures

Commits like https://github.com/TraceMachina/turbo-cache/commit/c577db5dde9afcb26d24279fe54ae013a1d03730 are actually verified, but the signature doesn't persist when applying the rebase merge.
@allada @MarcusSorealheis @chrisstaite-menlo Since this has potential security and legal implications it seems desirable to figure out some way to improve the current settings, but I'm not sure what the best approach would be.
I'm not sure whether this is an unchangeable issue with GitHub's rebase merging implementation or if we can somehow change the settings for the repo. I know that squash merging preserves signatures correctly, but that doesn't allow creating "stacks" of commits the same way that rebasing would.

This is quite a significant issue. From my point of view, we'd want to prioritize verified commits over non-verified commits for the reasons you alluded to above. I may need to spend some time investigating the full scope of the risk, but @allada owns the decision here.


add support for configifying json lib and relax httpoison, closes #11

closes #11

Thanks! Don't forget to push to hex :)

@sitch yep sorry I thought I did it already. done now, thanks


Repo Python version?

This repo doesn't seem to be consistent about which version of Python the code is written for.

Some files use type hints (SyntaxError in Python 2)
Some files use print statements (SyntaxError in Python 3)
garage.py has a mix of print statements and print as a function (although Python 2 doesn't treat it as a function)

I guess my question is, which version(s) of Python is this repo supposed to be for?
Importing __future__.print_function and adding brackets to all the print statements is fairly easy, but the type hinting is Python 3 only (although they could be moved to the docstrings for cross-compatibility).

I think we should make it consistent for Python 3.5+

@keon ,
It would probably be better to be more explicit about the target Python version(s) in the repository description and README.
The only "issue" with the repository being 3.5+ is that the examples then can't use fstrings (since they are 3.6+ only). That's a decision you'll have to make.

Also, I'm not sure that type hints (as function annotations) should be used in the examples since it seems to contradict your own description.

"Minimal examples of data structures and algorithms in Python"

Since type hints (as function annotations) are optional and essentially ignored by Python, adding them doesn't seem to show "minimal" examples of Python code. Adding type hints to the docstrings would give the same amount of information but would also adhere to the repos stated goal of "minimal examples".

"It should also be emphasized that Python will remain a dynamically typed language, and the authors have no desire to ever make type hints mandatory, even by convention."

Again, these decisions are up to you!

@delirious-lettuce thanks for the good points!
I really like fstrings... but I am not sure what % of python users use 3.6. I guess the majority still uses 3.5.
Though I think it shouldn't matter since this repo is going to be a stand-alone project for learning purposes.
Yeah, I think it's better to switch to docstrings. Many are more familiar with it and many IDEs still don't recognize type hinting in Python.

@keon ,
As much as I also like fstrings, I think you are correct that many people are still using Python 3.5.


"gzip filter failed to use preallocated memory" with current zlib-ng

On nginx 1.26.2 with zlib-ng 2.2.2, I get "gzip filter failed to use preallocated memory" errors in the log.
I'm guessing the previous workarounds for zlib-ng have since broken.
I did see this in the zlib-ng 2.2.0 release notes which might give a hint:

The downside to this is that decompression will now always allocate the maximum required memory (~42KB total on 64-bit platforms), previously it would allocate (and potentially free) memory as needed during decompression.
It also means that applications that replace the alloc/free functions with their own can potentially have some issues (Yes I am looking at you Nginx).

So I'm guessing the issue applies to all zlib-ng >= 2.2.0.
Thanks for reading!

@nginx Please see https://github.com/zlib-ng/patches/blob/master/nginx/1.26.2-zlib-ng.patch
Most of that patch is made to be generic, and could be used as a start to fully support switching between zlib and zlib-ng using configure. I don't know autoconf enough to implement that myself, so feel free to adopt and improve.
PS: Zlib-ng deflate now only does a single malloc that is always the same size, so the nginx code could potentially be made simpler by either letting us do malloc directly or passing your palloc directly to zlib-ng, unless you specifically want to restrict allocation size or something.


AcquireWithin should take a context.Context

It would be easy enough to wait for either ctx.Done() or for a resource to become available.

This was written long before the context package. I plan to refactor it to take a context.

I'm thinking of adding an AcquireContext.

Now there is AcquireContext and you can use a context.WithCancel if required. https://godoc.org/github.com/abiosoft/semaphore#Semaphore.AcquireContext.
AcquireWithin has also been modified to simply use a context.WithTimeout.


Dynamically load Layers

Yo, i thought i'd contribute to the project since i was messing with dynamically loading of the layers..
const layers = [];

const setLayers = () => {
  return (
    fs
    .readdirSync(`${dir}/gen_${gen}/`)
    // .filter((item) => !/(^|\/)\.[^\/\.]/g.test(item))
    .map((folder, i) => {
      layers.push({
        id: i + 1,
        gen: gen,
        name: folder,
        location: `${dir}/gen_${gen}/${folder}/`,
        elements: getElements(`${dir}/gen_${gen}/${folder}/`),
        position: { x: 0, y: 0 },
        size: { width: width, height: height },
      })
    })
  );
};

Note that I'm not an experience coder, but it works well. (obviously its edited for my project).
That also remind me, mixing different layers (generations) would be a cool tutorial! Keep it up.

Hi Thank you for contributing, I will be having a look, and then we can see how we can incorporate it in the latest update.


Detect language during authoring and suggest a correction if needed

Right now the selected language carries over from the last post. It's very easy to miss that control! So people often post with the wrong language tag.
It would not be a heavy lift to use lande to detect which language they're posting in and, if lande is confident enough, suggest they change the tag to that language.

Yeah I think that's the move


custom parameter for extra verification in VM provisionining

Recently new VM size test requirement demands the number of vCPU and memory size verification. The VM provision test 'VERIFY-DEPLOYMENT-PROVISION' can take a custom parameter 'vCPU' and 'vMem'. If any of those parameters is set in CustomParameter section in LISAv2, the test will verify the number of vCPU and vMemory.

Script: https://github.com/LIS/LISAv2/blob/master/Testscripts/Windows/VERIFY-DEPLOYMENT-PROVISION.ps1
Assigning this to @stefanlupsa

@juhlee-microsoft I've done some testing with this and vMem never matches what the VM sees, i don't know of a better way to get the memory inside the vm other than grep MemTotal /proc/meminfo but this never matches the exact amount the VM is supposed to have either in HyperV or Azure. Can you please clarify what is to be done?

I don't think a check to memory is possible, due to the variations in actual size, plus the old discussion on how the linux kernel reserves for mapping the memory.
An example is that for Size: Standard D12 v2 (4 vcpus, 28 GiB memory), meminfo shows a total of
MemTotal:       28776524 kB
which is over 28.7 GB of memory.
So we never have a good mapping of allocated vs what the VM reports, to do a perfect match.

@stefanlupsa @chvalean I understand the problem here, and I will change the requirement to vCPU only. At least we capture it from the VM name.


TP-542: Further query fixes for detail views.

Codecov Report

Merging #141 (b0036c5) into master (cdf9716) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##           master     #141   +/-   ##
=======================================
  Coverage   58.69%   58.69%
=======================================
  Files         157      157
  Lines        9767     9767
  Branches      733      733
=======================================
  Hits         5733     5733
  Misses       3859     3859
  Partials      175      175

Impacted Files
Coverage Δ

geo_areas/tests/bdd/test_detail_geo_areas.py
52.27% <0.00%> (ø)

geo_areas/views.py
72.72% <ø> (ø)

importer/management/commands/import_countries.py
48.80% <0.00%> (ø)

Continue to review full report at Codecov.

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

Codecov Report

Merging #141 (b0036c5) into master (cdf9716) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##           master     #141   +/-   ##
=======================================
  Coverage   58.69%   58.69%
=======================================
  Files         157      157
  Lines        9767     9767
  Branches      733      733
=======================================
  Hits         5733     5733
  Misses       3859     3859
  Partials      175      175

Impacted Files
Coverage Δ

geo_areas/tests/bdd/test_detail_geo_areas.py
52.27% <0.00%> (ø)

geo_areas/views.py
72.72% <ø> (ø)

importer/management/commands/import_countries.py
48.80% <0.00%> (ø)

Continue to review full report at Codecov.

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


Bonding contracts dump script

@Zequez  can we have the from address in the table output ?

also it should pass the lint

@Zequez can we have the from address in the table output ?

I have done it already


Right side of page truncated

If I split screen my browser i.e. the window is roughly 1440x1280px, part of the right side of the page is truncated and there is no horizontal scroll bar.
E.g.

I see this on edge, chrome and firefox.

It looks like the top bar is the only thing that's cut off here.  Does it persist after interacting with the page (clicking a link or something)?

It persists after a reload and switching to another page. You are correct in that it seems to only be the top bar that is cut off.

Which OS is this?  I can't replicate this locally on my Mac with Chrome (on mouse) - it always either gives me a scroll bar or collapses the top bar.

Windows 10.


Not working with TypeScript

I installed the preprocessor, configured everything, and now these errors appear in the console and the application does not work

Thank you for reporting the issue!
I will fix this ASAP.😅
(Today I'm AFK, so I will try to fix this tomorrow.)


Update to 2 in STEP and README.md

I have created a new branch, created a file and made a commit! creating pull request

The main branch and sub branch are created and merged.!! Well done!!


Possibly an enhancement request - non-zoomed child elements

Non-zoomed child elements
This plugin is excellent.  I plan to use it to allow for panning and zooming of a map. The issue I have is that I am plotting points on the map with labels. I can position them with percentages so they are displayed in the correct location.  However, the size of the points and the labels scale with image since the parent is transformed. Is there anyway to whitelist these points so they are not transformed? Or perhaps transform the inverse?  Thanks.

Not sure what your technical setup is there, but you would bind a container (including some marker and label) to a coordinate on your map. When zooming you would use the onZoom panzoom event to scale your container relative to the zoom level.

Thanks for opening an issue. Unfortunately, this is the nature of CSS. There are a couple options:

Scale all the other elements, excluding the one you don't want to scale, but this won't scale the container.
Scale the container and re-scale the element you don't want to scale. However, that can sometimes result in the child elements looking blurry.


Respect #nobot in a target network's about section.

This will make it easier for networks to opt out of followbots for all their users, without having to make the instance private or such.

Tbh I am more inclined now to spend time extending Mastodon rather than following on monkey patching a 5mn designed hacked tool that got out of proportion.
The idea floating now is to extend the user profile to add a 'federate_allowed' settings, and with that federate settings we'll autofollow from instances directly rather than from a user when we see you with no notifications for the user. I just need to wrap my head around doing some ruby on rails.. Doing it lazely when the user appears on the federated timeline of course, and not aggressively.

Is there any issue or PR in the core project about this (can't find one)? Curious to see if that idea takes root, since that might address some of the issue with the bots.

@stephenburgess8 only on the admin riot channel now, request for feedback without any answer. Broadcasted also one on Mastodon yesterday, same thing.


Composer error

Hi guys, I am getting the following error, when I run composer.phar update ,
I have removed everything in vendor directory, everything in the ~/.composer/cache/ directory and I have executed composer.phar self-update before that. What am I missing ?
  [Composer\DependencyResolver\SolverProblemsException]
    Problem 1
      - yiisoft/yii2 dev-master requires bower-asset/jquery.inputmask 3.1.* -> no matching package found.
      - yiisoft/yii2 2.0.x-dev requires bower-asset/jquery.inputmask 3.1.* -> no matching package found.
      - Installation request for yiisoft/yii2 * -> satisfiable by yiisoft/yii2[2.0.x-dev, dev-master].
  Potential causes:
   - A typo in the package name
   - The package is not available in a stable-enough version according to your minimum-stability setting
     see <https://groups.google.com/d/topic/composer-dev/_g3ASeIFlrc/discussion> for more details.
  Read <http://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.

You're missing global plugin http://www.yiiframework.com/doc-2.0/guide-start-installation.html

This is not exactly true, I have installed it long time ago.
Anyway I fixed this problem by deleting the ~/.composer directory and installing the plugin again.

have the same problem

what about clearing vendor dir?

Same issue here.
Already cleared .composer dir and vendor dir.
Still doing some research about this.


Warns about "no newline at eof" even when code body disables linting

Bug Report

TSLint version: 3.15.1
TypeScript version: 2.0.10
Running TSLint via: (please choose one) CLI

TypeScript code being linted
Posted first as Angular issue #13924; the official response was to close the issue with the comment:  "file an issue with tslint".
Note in the following TS code generated by Angular's AOT compiler that

There is no newline at the end
The body contains /* tslint:disable */

/**
 * @fileoverview This file is generated by the Angular 2 template compiler.
 * Do not edit.
 * @suppress {suspiciousCode,uselessCode,missingProperties}
 */
 /* tslint:disable */

export const styles:any[] = ['#speak[_ngcontent-%COMP%] { font-style: italic;  color: blue; }'];

FWIW,  if I induce a linting problem within the body of that code, that problem is ignored as expected. The problem seems to be confined to missing newline at EOF.
with tslint.json configuration:
{
  "rules": {
    "class-name": true,
    "comment-format": [
      true,
      "check-space"
    ],
    "curly": true,
    "eofline": true,
    "forin": true,
    "indent": [
      true,
      "spaces"
    ],
    "label-position": true,
    "label-undefined": true,
    "max-line-length": [
      true,
      140
    ],
    "member-access": false,
    "no-arg": true,
    "no-bitwise": true,
    "no-console": [
      true,
      "debug",
      "info",
      "time",
      "timeEnd",
      "trace"
    ],
    "no-construct": true,
    "no-debugger": true,
    "no-duplicate-key": true,
    "no-duplicate-variable": true,
    "no-empty": false,
    "no-eval": true,
    "no-inferrable-types": true,
    "no-string-literal": false,
    "no-switch-case-fall-through": true,
    "no-trailing-whitespace": true,
    "no-unused-expression": true,
    "no-unused-variable": true,
    "no-unreachable": true,
    "no-use-before-declare": true,
    "no-var-keyword": true,
    "object-literal-sort-keys": false,
    "one-line": [
      true,
      "check-open-brace",
      "check-catch",
      "check-else",
      "check-whitespace"
    ],
    "quotemark": [
      true,
      "single"
    ],
    "radix": true,
    "semicolon": [
      "always"
    ],
    "triple-equals": [
      true,
      "allow-null-check"
    ],
    "typedef-whitespace": [
      true,
      {
        "call-signature": "nospace",
        "index-signature": "nospace",
        "parameter": "nospace",
        "property-declaration": "nospace",
        "variable-declaration": "nospace"
      }
    ],
    "variable-name": false,
    "whitespace": [
      true,
      "check-branch",
      "check-decl",
      "check-operator",
      "check-separator",
      "check-type"
    ],

    "component-selector-name": [true, "kebab-case"],
    "component-selector-type": [true, "element"],
    "use-input-property-decorator": true,
    "use-output-property-decorator": true,
    "use-life-cycle-interface": true,
    "use-pipe-transform-interface": true,
    "component-class-suffix": true,
    "directive-class-suffix": true,
    "import-destructuring-spacing": true
  }
}

Actual behavior
[23:29:55] [gulp-tslint] error inheritance/ts/aot/app/base.component.css.shim.ngstyle.ts[8, 97]: file should end with a newline

Expected behavior
No warning

This is fixed by #1966 and should be included in tslint 4.3.0, although it's not in the changelog

Thanks. Didn't see it in the change log. We'll see what it takes for us to upgrade to 4.3.x


Use Soap 0.19.0

To be able to use the latest improvements and fixes from soap module

Thanks @rflament, sorry for the delay, merging and publishing right now! 😄


Server gets crashed for large files

Text File is getting transfered.
But binary file > 65 KBytes gets some error.

Figured out the problem ! File gets trimmed in last chunk so file is not completely sent.
That's why text file is shown but binary file get error

Resolved !! Error Was in sendMIME function parameter was wrong.


Graceful monoprocess restart

First of all, sorry for asking this as an issue but I couldn't find anywhere else to ask this kind of question.
So, how can I graceful restart my docker container (and thumbor as consequence) in a way it gets my recently updated environment variables (from a file) before it restarts thumbor and the container itself?
I'm running it in production (in a small project so far) with something like:
docker run --env-file conf/docker-thumbor-vars.env ...
The thing is I want to update some Thumbor configuration variables and cause 0s downtime.

This is not a issue of docker-thumbor.
Using docker you have to look about blue-green deployments, but it's necessary a new image for a balancer. For example: https://blog.tutum.co/2015/06/08/blue-green-deployment-using-containers/


fw import org

Would be nice to import all projects from an organization. This could also improve a certain backup.
#FKBR

It will require an auth token I guess unless we can somehow misuse hub for it?

On 2. Aug 2017, at 20:05, Patrick Haun<EMAIL_ADDRESS>wrote:
Would be nice to import all projects from an organization. This could also improve a certain backup.
#FKBR
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

This is now implemented and released.


Update ArrayRolation.py

Have you read the Contributing Guidelines on Pull Requests?
(Write your answer here.)
Description
(Write your answer here.)
Checklist

[ ] I've read the contribution guidelines.
[ ] I've checked the issue list before deciding what to submit.
[ ] I've edited the README.md and link to my code.

Related Issues or Pull Requests
(Write your answer here.)

@soumik2012 what is the procedure? I need to make only the CI process green that its right ?

@soumik2012 what is the procedure? I need to make only the CI process green that its right ?

You can check the detail why it is failing.


[1.19.6/1.20.0-beta6] Block decorations mess up editor content when destroyed

Prerequisites

[x] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
Block decorations mess up line numbers and editor content once destroyed.
The issue was originally reported by @srk-srinivasan on the Hydrogen repo: https://github.com/nteract/hydrogen/issues/981
This worked correctly till Atom 1.19.5 and 1.20.0-beta5.
Steps to Reproduce

Open file with a few lines of code
Execute the following code in dev tools:

function createBlock(row) {
  const item = document.createElement("span");
  item.innerText = "[block decoration]\n[block decoration]\n[block decoration]";
  const editor = atom.workspace.getActiveTextEditor();
  const marker = editor.markBufferPosition([row, 0]);
  editor.decorateMarker(marker, { type: "block", item: item });
  return marker;
}

const marker = createBlock(5);

Destroy marker with

marker.destroy();

Expected behavior: (Atom 1.19.5 / 1.20.0-beta5)
Editor correctly renders as if the block decoration was never there.
Actual behavior: (Atom 1.19.6 / 1.20.0-beta6)
Editor doesn't correctly re-render and messes up line numbering and editor content:

Reproduces how often: 100%
Versions
Atom 1.19.6 and 1.20.0-beta6
Additional Information
@as-cii This regression was likely introduced in #15503 or #15528

Thanks for the report 🙇 Adding it to the project board.
/cc: @as-cii

Apologies for this regression and thanks for the report, @lgeiger. I have already provided a fix for it which will be included in the next hotfix releases.

Excellent, thanks for the fast fix @as-cii


Create a build task assignment unclear.

I am uncertain if people know what to do here:

Now, write to the file where you define the author of the file.

Should one just paste #define AUTHOR $whoami or is this a format that needs to be explained?

Is it missing how you would write to a file, or what you should write to the file?

Writing a file have been trained, it's more the "what". It's first when I come to the next assignment I can see 100% what you meant by the text.
So maybe replace $whoami with  or something... I'm at least confused before looking at your code :)

Fixed. The header file comes with the exercise


Chrome Issue

It no longer appears to work in Chrome. Any chance of an update?

I don't actively maintain this project, but I'll take a look if I get a chance. Pull requests are always welcome!

I don't actively maintain this project, but I'll take a look if I get a chance. Pull requests are always welcome!
What specifically isn't working?

If I view your demo in Chrome, the box appears but you cannot draw anything in it, nothing appears, the box just stays white.
Kind Regards,
Juliet Moran
Technical Director
 Cloud Business Solutions

https://hostingsystems.uk/ Internet Services    |    https://hostingsystems.uk/businessbroadband/ Connectivity    |    https://hostingsystems.uk/businessolutions/office365/ Office 365   |    https://hostingsystems.uk/businesssolutions/ IT Services    |    https://hostingsystems.uk/webdevelopment/ Web & Software Development
Hosting Systems Ltd
The Hub, Trentham Business Quarter, Bellringer Road
Stoke-on-Trent, Staffordshire, ST4 8GB
For enquiries, help or support call
01782 608608
From: Ben Centra<EMAIL_ADDRESS>Sent: 17 January 2017 13:51
To: bencentra/jq-signature<EMAIL_ADDRESS>Cc: julietmb<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [bencentra/jq-signature] Chrome Issue (#10)
I don't actively maintain this project, but I'll take a look if I get a chance. Pull requests are always welcome!
What specifically isn't working?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/bencentra/jq-signature/issues/10#issuecomment-273164733 , or mute the thread https://github.com/notifications/unsubscribe-auth/AX_Vk8fTvkWq0Hv3oThqx46x5mtG-xDCks5rTMdegaJpZM4Lkt4D .  https://datafeeds.baruwa.com/1x1spacer.gif
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/bencentra/jq-signature","title":"bencentra/jq-signature","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/bencentra/jq-signature"}},"updates":{"snippets":[{"icon":"PERSON","message":"@bencentra in #10: I don't actively maintain this project, but I'll take a look if I get a chance. Pull requests are always welcome!\r\n\r\nWhat specifically isn't working? "}],"action":{"name":"View Issue","url":"https://github.com/bencentra/jq-signature/issues/10#issuecomment-273164733"}}}

Bump for this! Was just about to release this to the wild but Chrome is pretty important :)
Your implementation is the best out there. I just need a really simple signature system, and I was hoping this would be it!

Taking a quick looks, it appears to be this line throwing a wrench in things: https://github.com/bencentra/jq-signature/blob/master/jq-signature.js#L85
I'm guessing Chrome (and possibly other browsers) have implemented PointerEvents as well, and so only the Microsoft-style event handlers are getting applied. Simply removing the "if" block seems to restore things to normal. It appears to be working cross-browser via Browserstack, but I don't know if that's a reliable simulation of touch events...
I can push out a 2.0.0 update that resorts to just touch events to fix Chrome. I can follow up shortly with fixes for other browsers as I'm able to test them.


Imports not working in TypeScript project.

When I am trying to import any of the Props into a TypeScript project,
import sizes from "open-props/src/sizes"
I get a ts(2307) Error: Cannot find module 'open-props/src/sizes' or its corresponding type declarations.

Svelte-kit project,
TypeScript version: 4.4.3,
target: "es2020",

A workaround I found for this is declaring my own modules for the exports[] in package.json.
open-props.d.ts
declare module "open-props/src/sizes";

I am not sure if this is a problem with OpenProps or TypeScript / SvelteKit.
Once I find time, I will try and set it up in a React Project and see what happens there.

import sizes from "open-props/src/props.sizes.js"
does that resolve the issue? this way you're referencing a file directly and not leaning on the exports map in package.json.
not sure why declaring the module resolves it tho? the file you're importing is some basic ecma js
thanks for reporting, we'll get ya through it, and maybe i can update the docs to help others in the future

Unfortunately importing via open-props/src/props.sizes.js doesn't work.
I forgot to mention that.
I am getting a different error though:
[vite] Internal server error: Missing "./src/props.sizes.js" export in "open-props" package
It's kinda odd that the vite error is refering to "./src".
Might actually be a bug in the svelte-kit vite configuration.
It actually doesn't really block me since I am not actually using the props in javascript.
Was just trying things out.

glad you're not blocked, but still a bit disconcerting. are you able to import other props, or all props kinda give you the same issues with missing exports?

Sizes was just used as example here. I am actually not able to import any props.
I was digging a bit deeper and from what I can see, the index.js in /src is re-exporting the props.xyz.js objects through
const OpenProps = mapToObjectNotation({
  ...Animations,
  ...Sizes,
  ...Colors,
  ...ColorsHSL,
  ...Fonts,
  ...Borders,
  ...Aspects,
  ...Easings,
  ...SVG,
  ...Gradients,
  ...StaticShadows,
  ...Zindex,
});

My guess is that the signature gets lost there since the export of index.js is actually "OpenProps"  which then has a signature of (props: any) => any instead of the various props objects.

wanna help Open Props ship typings for ts importers?

Hey, sorry for the late reply. Was rly busy with a project.
Sounds really interesting, although I am not too sure if I am the right guy for the job.
I'll have a look at it on the weekend and open a PR if I find a good solution.

Interesting! I might look into debugging this and/or helping out with TS typings later this week.

OK, I think I've got typing to work on my fork of open-props. PR forthcoming.

Hey folks, sorry for not responding for far too long. I was just too busy with stuff unfortunately.
@hchiam Thanks for stepping in.
I had a quick look over your PR and from what I can tell it's a simple and effective solution!
Kudos!