Document recommended approach for require statements and project structure

Hi, me again with something seemingly incomprehensible that you will no doubt easily explain away(!)
Silly example: two files, PackUnpackDefs.cr and Pacj.cr (names are intentional)
Pacj.cr content:
class Sorei
  include PackUnpackDefs

  def pack(format_str)
    each_index do |source_idx|
    end
  end
end

Trying to build will yield:
Error in ./src/crystal-pack/Pacj.cr:2: undefined constant PackUnpackDefs
Now, rename Pacj.cr to Pacl.cr, so that its name now comes alphabetically after PackUnPackDefs.cr
I can now build!
Weird limitation?

you probably have a require "./something/*" somewhere, which loads the files in filesystem order, which just happens to appear alphabetical on your system.
Crystal makes no demands on the correlation of filenames and constants they may or may not define whatsoever, there's no autoloading system at all. require reads files and those may define some constants.
So to resolve your issue properly declare the dependency on the file level, Pacl.cr depends on PackUnpackDefs.cr, so it should do a `require "./PackUnpackDefs" at the top.

I see. So, it appears that I should have posted this @ stackoverflow. Sorry about that.
I simply used crystal build  and it generates a top-level file starting with this line:
require "./crystal-pack/*"

So, in effect, a good practice would be for me to either remove this line or put my helpers classes in sub-sub directories and only leave under crystal-pack/ files that do not have same-level dependencies?

Side note: would it be possible to add to the documentation that Crystal does not support forward declarations?

Loading a batch of file isn't a bad practice, it just happens that sometimes one of the loaded file has a dependency on another file that must be loaded before, so its better to specifically require it.

Simply add the explicit requires as needed, don't invent silly folder structures.

Jonne, they are not necessarily silly. In fact, quite often a module can be broken down in files contained in a directory named after that module ( cf. Crystal's source code ;) )
Anyway, I was merely pointing out that the proper approach ought to be exposed in Crystal's documentation. Newbies like me are easily startled!

To be honest we probably didn't really settle on a "proper" approach yet. Personally I don't do any * requires at all in my projects, but merely require what's needed in each file.

I think the solution is: if you get an error about an unknown type, add a require. Is there anything concrete we need to do?

I, of course, learnt that lesson and have since been explicitly including actual file names rather than wildcard.
Nothing more to do other than maybe document that 'gotcha'

To be honest we probably didn't really settle on a "proper" approach yet. Personally I don't do any * requires at all in my projects, but merely require what's needed in each file.

I think I ran into the same issue, when doing crystal init lib foo the foo/src/foor.cr contains
require "./foo/*"

so it may not actually uncommon for new people to run into that issue
I would have definitely appreciated some workflow recommendations more than just how to crystal init, but also how to structure a crystal project so maybe when some "proper" way is defined this will be low hanging fruit
(I am not sure I actually had that exact issue but chances are)

I think StackOverflow and eternal questions and answers on the internet solves this issue. If someone runs into this they will find this and have a solution.
There's simply no way to document everything. For example Ruby has no official documentation of the language :-O
(and if we someday have time to do this, we'll do it)

What I wanted to say is, that the default should probably be changed if it leads to errors easily (the default require with the *)
Some more examples next to the method documentations could maybe be added over time, node has this figured out quite nicely IMO
Stackoverflow will probably be the biggest help in some time when there are more people (beginners) using it, right


Name the registry a special kcl-registry instead of a common registry.

follow up https://github.com/kcl-lang/kpm/pull/421

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

[ ] N
[ ] Y

2. What is the scope of this PR (e.g. component or file name):

3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Other

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

[ ] N
[ ] Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

[ ] Unit test
[ ] Integration test
[ ] Benchmark (add benchmark stats below)
[ ] Manual test (add detailed scripts or steps below)
[ ] Other

Pull Request Test Coverage Report for Build<PHONE_NUMBER>8
Details

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

Totals

Change from base Build<PHONE_NUMBER>5:
0.0%

Covered Lines:
85

Relevant Lines:
599

💛  - Coveralls


chore: Add documentation for property pane config

Summary by CodeRabbit

New Features

Introduced a new PropertyControlFactory class for managing property controls.
Added new properties to the PropertyPaneControlConfig interface, enhancing customization and validation options.
Implemented methods for creating and registering control builders, improving the flexibility of property controls.

Documentation

Enhanced JSDoc comments for existing properties and methods, providing clearer guidance on their usage.
Updated documentation for the PropertyPaneSectionConfig, PropertyPaneControlConfig, and ValidationConfigParams interfaces to clarify their functionality.

[!WARNING]
Tests have not run on the HEAD 62df82621a44126f2d876c77a892010265ec53d3 yet
Mon, 28 Oct 2024 11:50:53 UTC

@riodeuno Can you check if it's okay to merge this? We can improve the comments further later on.

@jsartisan yes, please go ahead with this. I'm approving it


Cell's border property do not work, when cell is merged.

I'm sorry if i was wrong.
I just have the problem to create xlsx file with exceljs.
Ex) below is pseudo code.
case OK:// All border shows correctly.
getCell("A1").border = border_all(top right bottom left);
getCell("A2").border = border_all(top right bottom left);
getCell("A3").border = border_all(top right bottom left);
case NG: // A1's border only shows.
getCell("A1").border = border_all(top right bottom left);
getCell("A2").border = border_all(top right bottom left);
getCell("A3").border = border_all(top right bottom left);
worksheet.mergeCell("A1:A3");

Thanks for reporting this. I will investigate

Fixed in 0.2.3
Also - you can simplify your code by only setting the style in the "master" cell...
getCell("A1").border = TLBR;
worksheet.mergeCells("A1:C1");
// Cells B1 and C1 now share A1's style
// you can break a merged cell's style-link by assigning a new style object...
getCell("C1").style = {};


search APIs- deep links to interface fields do not resolve

https://github.com/microsoft/vscode/blob/a554d9e7e1353b2fbf16696a08ad25cb873dc2ac/src/vscode-dts/vscode.proposed.textSearchProviderNew.d.ts#L96
@link references to things like TextSearchProviderOptions.useIgnoreFiles.local do not resolve to the correct object. I should check these over to make sure that they are correct.
From https://github.com/microsoft/vscode/issues/226775

to verify: go through the following files and ensure that all @link links are valid:
textSearchProvider2.d.ts
fileSearchProvider2.d.ts
findTextInFiles2.d.ts
findFiles2.d.ts

Some missing links
https://github.com/microsoft/vscode/blob/db3873db37f6e1a2d4f3e139573c59c717c015b2/src/vscode-dts/vscode.proposed.findFiles2.d.ts#L57
https://github.com/microsoft/vscode/blob/db3873db37f6e1a2d4f3e139573c59c717c015b2/src/vscode-dts/vscode.proposed.textSearchProvider2.d.ts#L92


"GCDAsyncUdpSocket.h" not found

While using you library  nothing works as it says that "GCDAsyncUdpSocket.h" file not found.
Any help?

grab it from here and add it to your project https://github.com/jbenet/ios-ntp/tree/master/network-udp

Have you still had the problem?

No, although thank you for the follow up.

On Apr 16, 2018, at 6:53 PM, Huy Nguyen<EMAIL_ADDRESS>wrote:
Have you still had the problem?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/huynguyencong/NHNetworkTime/issues/23#issuecomment-381804370, or mute the thread https://github.com/notifications/unsubscribe-auth/AZBarW5GAk2EsKI7en-TVLXX58QEn384ks5tpUshgaJpZM4NIOQm.

Thank you. Sorry for my late response.


Bump postcss from 8.3.4 to 8.3.11

Bumps postcss from 8.3.4 to 8.3.11.

Release notes
Changelog
Commits

updated-dependencies:

dependency-name: postcss
dependency-type: direct:development
update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot]<EMAIL_ADDRESS>

Close


extend owners.avatar field length

I think this is the reason for build errors like https://docs.rs/crate/aws-sdk-workspacesweb/1.55.0/builds/1593306
I compared fields with lengths 255 and checked crates.io API results for this version to find places where the content in the API is longer than 255.
This is one place.

Nice, thanks!


returns -1

Hi, I just got -1 as nest.first here const auto nest = lbvh::query_device(bvh_dev, lbvh::nearest(point), distance_calculator());
Could you help to explain what is the reason ?

I actually need the index of the closest object.

Hi, thank you for reporting the problem.
It's a bug. And I think I found the reason so I will commit it soon. I hope this change fixes your problem.
Actually, this library is not so strictly tested (I just tested it with a small number of sizeless particles), any kind of bugs may remain.
But these days I'm a little busy, so my response would be slow. Sorry!


Replicate multiple schema

The docs are a bit deceptive on this; when doing start_sync and not specifying a schema, it picks public. This was surprising because the wording implied that it would copy all tables in the database it's connected to (not cluster, that's clear).
It would be nice to be able to replicate multiple schema at the same time, right now you have to start a bunch of separate groups and the docs show an example as to if you're meant to bootstrap before each group, though my experimenting seemed to show that bootstrapping agin just fails.

Thanks! I will update the documentation to call out its one schema per group.
I like the idea of supporting multiple schemas. Adding that as a feature request.


Create a cache for non-draft guides

Right now the guides_count for a crop is the total amount of guides, whereas what we really want to show is the total amount of draft: false guides.
Ideally what we would do here is that whenever a guide gets updated we recalculate the counter on the crop for that guide. Mongoid's counter_cache functionality won't work for us because it doesn't accept conditional counting.
I imagine something like
after_save :increment_crop_guides_count

def increment_crop_guides_count
# increments or sets the crop guides count of the crop
end

in models/guide.rb

Okay! I will get to work on this. I am simultaneously looking at #809 - this issue has been bugging me for weeks now.

What exactly do you mean by this : "whenever a guide gets updated we recalculate the counter on the crop for that guide."?

@gargi-gupta when you search for crops it shows how many guides are linked to the crop, but at the moment that count of guides includes guides that are drafts and aren't publicly viewable yet, so that number is technically wrong.
Mongoid provides a counter method for keeping track of how many links there are between two objects, but in this case it wouldn't work, because the link we're looking for is dependent on a setting of the crop (draft: false).
So instead what we have to do is that every time a guide gets updated, we'll have to set - on the linked crops of the guide (which could be multiple crops in the future) - how many non-draft guides are linked to the guide.

Update a guide.
Check whether the guide is a draft or not
If the guide is a draft - do nothing
If the guide is not a draft, we need to set the crop.guides_counter value to be Guide.filter(draft: false).count
save crop, finish saving guide.

I would use the rails automated after_save hook to do this, as described in the ticket description:
after_save :increment_crop_guides_count

def increment_crop_guides_count
# increments or sets the crop guides count of the crop
end

Does that help?

Yeah!
I now understand what this issue is all about. I, along with my teammate @Rupal-IIITD will work on this.


Implement logic in java classes not in JSPs

IN general we want to avoid JSPs as this is supposed to be best practices code. This means that all interface should be Sightly and all servlet code should be straight Java. In our case we have determined that there will be les UI than originally envisioned. Instead we will just have a single simple upload component. This component's presentation logic should be in Sightly. All supporting code including the POST servlet should be pure Java, not JSP.

I've started moving JSP into Sightly manner. I would like to ask you about some styles and javascript are embedded in the component. Should I create a clientlib with those or leave as it's right now? After that, I have to migrate POST jsp to a sling servlet to finish this issue or I misunderstood something?

Yes, Javascript and css must be put in clientlibs and the POST jsp should be converted to a sling servlet. You have exactly the right idea.

Finished them


[0.15] Batch Normalization test failure (clang-6.0)

[omitted hundreds of similar lines]
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.71124374866485596, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.71124374866485596,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.83767950534820557, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.83767950534820557,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.74958527088165283, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.74958527088165283,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.73271095752716064, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.73271095752716064,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.7993740439414978, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.7993740439414978,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.71368342638015747, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.71368342638015747,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.7133939266204834, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.7133939266204834,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.80129843950271606, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.80129843950271606,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.73182350397109985, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.73182350397109985,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.75081086158752441, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.75081086158752441,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.77015256881713867, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.77015256881713867,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
/home/lumin/packages/mkldnn.pkg/mkl-dnn/tests/gtests/test_batch_normalization.cpp:224: Failure
The difference between (out_diff_src - ref_diff_src) / norm_max and 0. is 0.7214093804359436, which exceeds eps, where
(out_diff_src - ref_diff_src) / norm_max evaluates to 0.7214093804359436,
0. evaluates to 0, and
eps evaluates to 0.62720000743865967.
[  FAILED  ] GoogleNet_NCHW/bnrm_test_float.TestsBnrm/1, where GetParam() = 40-byte object <01-00 00-00 05-00 00-00 05-00 00-00 02-00 00-00 40-00 00-00 01-00 00-00 38-00 00-00 38-00 00-00 AC-C5 27-37 04-00 00-00> (5665 ms)

Environment
Intel MKL-DNN includes hardware-specific optimizations and may behave
differently on depending on the compiler and build environment. Include
the following information to help reproduce the issue:

CPU make and model (try lscpu; if your lscpu does not list CPU flags,
try running cat /proc/cpuinfo | grep flags | sort -u)

Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              4
On-line CPU(s) list: 0-3
Thread(s) per core:  1
Core(s) per socket:  4
Socket(s):           1
NUMA node(s):        1
Vendor ID:           GenuineIntel
CPU family:          6
Model:               158
Model name:          Intel(R) Core(TM) i5-7440HQ CPU @ 2.80GHz
Stepping:            9
CPU MHz:             2803.253
CPU max MHz:         3800.0000
CPU min MHz:         800.0000
BogoMIPS:            5616.00
Virtualization:      VT-x
L1d cache:           32K
L1i cache:           32K
L2 cache:            256K
L3 cache:            6144K
NUMA node0 CPU(s):   0-3
Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp

OS version (uname -a)

Linux Asuna 4.17.0-1-amd64 #1 SMP Debian 4.17.6-2 (2018-07-15) x86_64 GNU/Linux

Compiler version (gcc --version)

The compiler is Clang shipped by Debian unstable
~ ❯❯❯ clang --version
clang version 6.0.1-2 (tags/RELEASE_601/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
~ ❯❯❯ clang++ --version
clang version 6.0.1-2 (tags/RELEASE_601/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin

MKLROOT value (echo MKLROOT=$MKLROOT)

none

CMake version (cmake --version)

cmake version 3.11.2

CMake output log

dh_auto_configure -- -DCMAKE_BUILD_TYPE=Release \
	-DCMAKE_CXX_COMPILER=clang++ \
	-DCMAKE_C_COMPILER=clang
	cd obj-x86_64-linux-gnu && cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DCMAKE_INSTALL_RUNSTATEDIR=/run "-GUnix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=clang\+\+ -DCMAKE_C_COMPILER=clang ..
CMake Deprecation Warning at CMakeLists.txt:21 (cmake_policy):
  The OLD behavior for policy CMP0048 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

CMake Deprecation Warning at CMakeLists.txt:22 (cmake_policy):
  The OLD behavior for policy CMP0054 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

-- The C compiler identification is Clang 6.0.1
-- The CXX compiler identification is Clang 6.0.1
-- Check for working C compiler: /usr/bin/clang
-- Check for working C compiler: /usr/bin/clang -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/clang++
-- Check for working CXX compiler: /usr/bin/clang++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting Intel(R) MKL: trying mklml_intel
-- Detecting Intel(R) MKL: trying mklml
-- Detecting Intel(R) MKL: trying mkl_rt
CMake Warning at cmake/MKL.cmake:196 (message):
  Intel(R) MKL not found.  Some performance features may not be available.
  Please run scripts/prepare_mkl.sh to download a minimal set of libraries or
  get a full version from https://software.intel.com/en-us/intel-mkl
Call Stack (most recent call first):
  cmake/OpenMP.cmake:25 (include)
  CMakeLists.txt:61 (include)

-- Found OpenMP_C: -fopenmp=libomp (found version "3.1")
-- Found OpenMP_CXX: -fopenmp=libomp (found version "3.1")
-- Found OpenMP: TRUE (found version "3.1")
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.13") found components:  doxygen dot
-- VTune profiling environment is unset
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    CMAKE_EXPORT_NO_PACKAGE_REGISTRY
    CMAKE_INSTALL_LOCALSTATEDIR
    CMAKE_INSTALL_RUNSTATEDIR
    CMAKE_INSTALL_SYSCONFDIR

-- Build files have been written to: /home/lumin/packages/mkldnn.pkg/mkl-dnn/obj-x86_64-linux-gnu
make[1]: Leaving directory '/home/lumin/packages/mkldnn.pkg/mkl-dnn'
   dh_auto_build -O--buildsystem=cmake
	cd obj-x86_64-linux-gnu && make -j4 "INSTALL=install --strip-program=true"

git hash (git log -1 --format=%H)

0.15

Similar to https://github.com/intel/mkl-dnn/issues/280

Hi @cdluminate,
I cannot reproduce the failure on my side (seems like a race condition or something that doesn't always reproduce the issue).
Could you please run the test (maybe few times) with OMP_NUM_THREADS=1 environment variable, to check that the problem is in threading?

@emfomenk After applying that patch I cannot reproduce the failure. I'll report here if I encountered this problem in the future builds.

Thanks for checking @cdluminate!
Will try to promote the fix as soon as possible.

Fixed by d352e0db707cb943b151407353d0d6ed0286a226

Confirm that I cannot repro the bug anymore with that fix.


Translating to persian language

Persian language's dictionary file was added to "/ppInk/lang/fa-ir.txt".

Thanks for your translation. Hope you are enjoying the program.
I'm currently working on some changes that may require some translation update. I will notify you on #17 that I'm using for this purpose


JavaScript linting not working anymore

I'm using eslint, and I'm used to seeing my linting errors inline. It says in the README this functionality should be there, but I'm not seeing any errors or warnings in VimBox 😢 any ideas how we could fix this?

I changed this line locally to ['eslint', 'flow'] and it started working for me.  (Assuming eslint's already on your path and what not.   @jordwalke  I can submit a pr for this if you think it'd be useful.
I also added let g:jsx_ext_required = 0 to my .vimrc to get jsx highlighting in my .js files.  Not sure if that's something everyone likes though...

Both of those sound great. Sorry about the stale JS setup, I haven't done a bunch of JS editing lately. I'll gladly accept pull requests for both of your improvements, @ericf89 .

I am also having issues with linting, I attempted to edit the line stated above and it had to effect. I am not really sure what files I should be editing to customise vimbox (forgive me I am new to vim).

I try to follow your way to add eslint, but still not working @ericf89 . Is there any way I can make flow and eslint working. Or @farazcsk is it working now?


Default markdown engine: some html does not work in markdown files

Does not work
<iframe src="//slides.com/maxdow/toulousejs13/embed" width="576" height="420" scrolling="no" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

(displayed as raw code, wrapped by a p)
Works
<iframe src="//slides.com/maxdow/toulousejs13/embed" width="576" height="420" scrolling="no" frameborder="0" webkitallowfullscreen="true" mozallowfullscreen="true" allowfullscreen="true">
</iframe>

// or

<iframe src="//slides.com/maxdow/toulousejs13/embed" width="576" height="420" scrolling="no" frameborder="0">
</iframe>

It seems current parser does not like attributes without value
(scroll right to see the diff)

FYI: Appears that <button> suffers from the same problem.

Most of the html tags I've tried so far doesn't work either.
<div> <p> <span> - Doesn't show up
<a> - Shows up, but only as a paragraph (<p>), so no links.

Which version of phenomic?

I'm using version 1.0.0-alpha.4

I guess are both using 1 alpha :)

On it.

Closed by https://github.com/phenomic/phenomic/commit/1bd1d2f6f15a12082d07061bdc25d46aaae1b86f


Set a default tag, to avoid gcloud complaining about an empty list.

Thanks for catching that. Merging.


How to change default text editor?

Version information

Laravel: v5.6.*
Voyager: 1.1

Description:
Hello there, i am currently trying to change tinymce editor. Regular one is using different version than i expected. In default voyager tinymce editor when we create table or other components, using pixels in width.
But last version of tinymce editor its using percent(%). Also design is better than voyager version.
How can i disable current tinymce and import new version of tinymce or another editor?
I need to change that immediately. I can take any advice. Thanks in advance.

That would be a cusotm formfield which is covered in our docs.
Also please ask questions in our Slack-group (as recommended in the issue-template)

I can't remove tag p when use rich text box!

Please dont post in unrelevant issues.


Fix indentation in olm manifest yaml

This seems to break the downstream ACM build:
Error: error decoding v1 CRD:
v1.CustomResourceDefinition.Spec:
  v1.CustomResourceDefinitionSpec.Versions:
    []v1.CustomResourceDefinitionVersion:
      v1.CustomResourceDefinitionVersion.Schema:
        v1.CustomResourceValidation.OpenAPIV3Schema:
          v1.JSONSchemaProps.Properties:
            v1.JSONSchemaProps.Properties:
              v1.JSONSchemaProps.Properties:
                v1.JSONSchemaProps.Properties: readObjectStart:
                expect { or n, but found ",
                error found in #10 byte of ...|},"type":"object"}},|...,
                bigger context ...|e is `Standard_D4s_v3`.","type":"string"},"type":"object"}},"gateways":{"default":1,"description":"G|...

These lines were added by https://github.com/stolostron/submariner-addon/pull/341 then backported to 2.5 with https://github.com/stolostron/submariner-addon/pull/358 but then reverted by https://github.com/stolostron/submariner-addon/pull/362

Do you have permissions to merge this @tpantelis as the author and only owner approving, or does someone else need to send it?

/cherrypick release-2.5

/cherrypick release-2.5


修复单元测试出错的问题

Codecov Report

Merging #39 into master will not change coverage by %.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #39   +/-   ##
=======================================
  Coverage   90.93%   90.93%
=======================================
  Files          82       82
  Lines        2086     2086
  Branches      488      488
=======================================
  Hits         1897     1897
  Misses        184      184
  Partials        5        5

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 fa7951e...3e962c9. Read the comment docs.


Vertical axis is very wrong on line chart

On OS X El Capitan version 10.11.5 (15F34)
node --version v6.0.0
nam --v v6.2.2
react-native-cli: 1.0.0
react-native: 0.28.0
watchman --v 4.5.0
xcode 7.3.1
react-native-chart: 1.0.8-beta
With this code:
progression = [ [1,0], [2, 10] ];
    return (
          <Chart
            style={styles.chart}
            data={progression}
            showDataPoint={true}
            color={colors.APP_COLOR}
            axisColor={colors.BORDER_COLOR}
            hideHorizontalGridLines={true}
            hideVerticalGridLines={true}
            dataPointFillColor={null}
            dataPointColor={null}
            xAxisHeight={50}
            showXAxisLabels={true}
            type="line"
            />);

I obtain a chart which is wrong in the vertical axis as you can see here:

In the progression variable, the highest value is 10 but in the chart the highest value is 5.
Thank you.

+1, any updates on this issue?

I've found a temporary workaround. The issue seems related to the value of verticalGridStep (defaulted to 4). When I set its value to (the number of unique y values - 1), it seems to work fine. This assumes that the result is greater than 0. If it is 0, I set it to 1 and that seems to work.

I confirm the Y-Axis is doing it wrong when multiple same values. I patched this in both Grid.js and yAxis.js by replacing the "unique" declaration by "const unique = data;", which take in consideration non unique values and scale everything perfectly. Tell me if I'm wrong, but this way I have no more problem.

@drpiou would you mind sharing with us your fork or more information on how to achieve this? Thank you!

@skleest I don't know how to fork something haha ^^'
Here is what I changed :
I replaced the Grid.js and yAxis.js in dist folder with those in src folder, then in both Grid.js and yAxis.js in the render method, I replaced const unique = uniqueValuesInDataSet(data); with const unique = data;.

@skleest I don't know how to fork something haha ^^'
Here is what I changed :
I replaced the Grid.js and yAxis.js in dist folder with those in src folder, then in both Grid.js and yAxis.js in the render method, I replaced const unique = uniqueValuesInDataSet(data); with const unique = data;.

As a generic FYI — I am no longer able to maintain this library. I recommend checking out victory-native as it's much more maintained.


Win spyder 3.3.1 not yet on conda main

Just as on 7/21 at start up "Spyder 3.3.1 is available" but when using Conda NOTHING

Yeah, we know, but this is not something we can address because none of us work for Anaconda anymore. Please be patient or deactivate the functionality that informs you about new releases.
However, we fixed this issue in 3.3.1 by searching for new releases in Anaconda's channels instead of by inspecting our Github releases page.

Thanks - it was there now


Modify calendar available dates to be dynamic by month

This update moves to an initial location based setup.
Appointment day availability is now based on an object with a recurring property.
Days available are grouped by month.
Example:
const vancouver = {
  email<EMAIL_ADDRESS>  phone: '1-888-242-2100',
  recurring: {
    jun: ['wed', 'thurs'],
    jul: ['wed', 'thurs'],
    aug: ['wed', 'thurs'],
    sep: ['wed', 'thurs'],
    oct: ['tues', 'thurs'],
    nov: ['mon', 'fri'],
  },
}

Calendar day highlighting and Calendar page note about what days appointments can be scheduled on is now also dynamic.
Note: Translations have not been exported yet.

@pcraig3 we have the correct days in now.
Tuesdays and Wednesdays for Oct+
Once reviewed etc... we should be able to roll this out ya?


feat: Correct enable_mfa_enforcement spelling

Description
correct spelling of the enable_mfa_enforcement option in iam-group-with-policies
Motivation and Context
Fixes https://github.com/terraform-aws-modules/terraform-aws-iam/issues/377
Closes #401
Breaking Changes
yes, anybody with the old spelling enable_mfa_enforcment will be required to update their code to the new option.
How Has This Been Tested?

[ ] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[ ] I have tested and validated these changes using one or more of the provided examples/* projects

[ X ] I have executed pre-commit run -a on my pull request

Terraform fmt............................................................Passed
Terraform wrapper with for_each in module................................Passed
Terraform validate.......................................................Passed
Terraform docs...........................................................Passed
Terraform validate with tflint...........................................Passed
check for merge conflicts................................................Passed
fix end of files.........................................................Passed

This PR is included in version 5.27.0 :tada:


drop_duplicates() support for positional subset parameter

[X] Tests added / passed
[X] Passes black dask / flake8 dask

fixes #2735

Thanks for the PR @WesRoach, overall this looks good, just the small fix needed above.

LGTM, will merge on tests pass.


config files for Asterisk wont update

Installing the new version of the addon and running it with auto generate extensions doesn't verite old sip.conf file if previous version off extension used. To fix delete asterisk folder before installing new version

I still think we could always overwrite the files... or better yet only expose to /config/asterisk the ones we allow customization, like sip_custom.conf.
I have one idea:
sip.conf:
[general]
stuf = a
stuf = b

# include sip_custom.conf

# include sip_default.conf

sip_custom.conf:
; things in top goes to [general]

general-stuf = c

[1234]
custom-extension = 1

sip_default.conf (keep as today).


fix -t tag

Fixed the  "-t tag" option for both 2.7 and 3.6.
This should also solve issue #49
Note: make_compat_str() is not used anymore and can be deleted from utils.py

Hi @nclementel. I am not very familiar with the issue, so if you can confirm that this fix will not break anything ( and fix the given issue ), I can merge it. Thank you. :-)

Closing this PR for now, since the details are not very clear.


Need support to change url without reloading page

I think preact-router works only for a tags with href attribute. I have scenario where I need to manually trigger the url change,  but that refreshes the page. Can we have anything similar to this.props.history.push('/foo') which react-router provides.
My scenario is- I have a link  with ripple effect, I need to navigate to different page after the ripple animation is over. I tried doing location.pathname = "/foo", but this reloads the page which I don't want. Is there any existing solution or hack using preact-router

You can use route
import { route } from 'preact-router'

route('/foo')

Worked. Thanks


How to process image without reading file

Say that I have an image
var img = new Image();
...

How can I use jimp to process it?

Are you trying to create a new image? If so that's clearly laid out in the docs

new Image() is a frontend function. It is not an image, it is a functional representation of <img />. You would still need to add a src attribute to the image.
From the MDN Web Docs:
The Image() constructor creates a new HTMLImageElement instance.

It is functionally equivalent to document.createElement('img').

You can however read a buffer using Jimp according to the docs/README.

Thanks for helping out @PorterK! Closing. Just use jimp to transform a buffer, output it to base64, and load it into img.src.


[Bug Report] el-collapse-transition import with typescript

Element UI version
2.11.1
OS/Browsers version
Brave
Vue version
2.6.10
Reproduction Link
https://jsfiddle.net/3owghmvs/
Steps to reproduce

Start a Vue Typescript project
DON'T import everything from element with Vue.use(ElementUI), but import seperate elements (see jsfiddle)
use a <el-collapse-transition> in a Vue component
Application throws error saying this component is not registered (which is correct)
The problem is: You CANNOT import this component in a typescript way, with seperate ElementUI elements installed. (also no TS definition section for this)

What is Expected?
To be able to register <el-collapse-transition> component for use in a Vue component.
But the library does not give you a way to do this in a Typescript Seperate ElementUI-components-install application.
What is actually happening?
Being unable to register this component in a Typescript setup, the browser correclty throws an error saying the component is not registered.

el-collapse-transition is not an api

@vanhumbeecka  in case you're still interested in this here's how:
import { CollapseTransition } from 'element-ui';
Vue.component(CollapseTransition.name, CollapseTransition);


Can not parse concatenated columns

Hi,
Sql that involves concatenating a string to a column or two columns together can not be parsed.
e.g.
var sql = "select FIELD1 || FIELD2 from MYTABLE";
require('sql-parser').lexer.tokenize(sql);
results in:
Error: NOTHING CONSUMED: Stopped at - '|| FIELD2 from MYTABLE'
at new Lexer (C:\MyProject\node_modules\sql-parser\lib\lexer.js:21:17)
I use Firebird SQL, so I'm not sure if this is valid in other SQL dialects.

Same issue.
SELECT code, code || ' : '  || value1 || ' '  || value2 as value from sig_sif
results in:
Uncaught Error: NOTHING CONSUMED: Stopped at - '|| value1 || ' '  || value2 as'
at new Lexer (sql-parser.js:26)
at Object.exports.tokenize (sql-parser.js:243)
at Object.exports.parse (sql-parser.js:1232)
I use SQLite.


Update .editorconfig

Fixes dotnet/docs#16302
I copied the exact same file from runtime repo, with small change adding vbproj.
I've also kept the following part, which isn't not part of the runtime editorconfig file.
[*.{cs,vb}]
charset = utf-8-bom

Above is for the first commit only. Later commits has more slight changes

In VS 2016 Preview 16.5.0 Preview 1.0 the option below is unknown
dotnet_code_quality_unused_parameters = non_public:suggestion

The line below gives 2 warning about the space after the, at a random location in the file. Removing the space and both warning go away and stay away even after adding the space back.
[*.{cmd, bat}]


Customize HTTP agent header

Description
Define the HTTP agent header as:
User-Agent: tw/<cli version> (<platform>)

For platform I mean the same suffix that we add at the release assets: linux-x86_64, osx-x86_64 and windows-x86_64.
Example:
User-Agent: tw/0.5.1 (linux-x86_64)

Fixes #192
Test guidelines.
Check the different platform binaries with this command:
tw -v info

It should show the new User-Agent header at the HTTP request logs.

Moving head this


[Bug] Move prover bytecode translator error

🐛 Bug
I have discovered a problem with the bytecode translator on certain snippets of Move code (please see below for an example on how to reproduce this). I have done some investigation, and I am happy to continue digging, but if someone more familiar with the codebase could offer some help or advice, it would be great.
The problem manifests itself in the Boogie backend in bytecode_translator.rs:1632 - the inst vector has length 0:
                    let (read_aggregate, update_aggregate, elem_ty) = match dst_ty {
                        Type::Vector(et) => ("ReadVec", "UpdateVec", et.as_ref().clone()),
                        // If its not a vector, we assume it is the Table type.
-->                     Type::Struct(_, _, inst) => ("GetTable", "UpdateTable", inst[1].clone()),
                        _ => unreachable!(),
                    };

The reason for this is that BorrowEdge::Index edge type is used to indicate borrowing both from a vector and from a table, and in this case it is incorrectly identified as the edge indicating borrowing from a table though no tables are used in the code.
I am pretty sure that the problem is in the pass responsible for borrow analysis, and I suspect it is related to how hyper edges summarize and propagate borrow information of entire functions to callers of these functions.
When you look at the output produced by borrow analysis pass for the inner function in the example below, you will see borrow information of this kind (notice index edge indicated by []):
# borrowed_by: Reference($t0) -> {(.v (vector<m1::HasAnotherVector>), Reference($t1))}, Reference($t1) -> {([], Reference($t3))}

It makes perfect sense that as the index edge represents borrowing from a vector due to $t1 and $t3 types:
var $t1: &mut vector<m1::HasAnotherVector>
var $t3: &mut m1::HasAnotherVector

In the output for the outer function, we see something a bit different:
# borrowed_by: Reference($t0) -> {([]/.v (vector<m1::HasAnotherVector>), Reference($t2))}

I haven't yet figured out how hyper edges are used in the translation process, but the above may imply that $t0 and $t2 will be connected via an index edge eventually, which would be a problem due to their types, none of which is a vector:
fun m1::outer($t0|has_vector: &mut m1::HasVector) { ... }
var $t2: &mut m1::HasAnotherVector

I am not 100% sure that this is indeed a problem (and that's where some advice would be helpful), particularly that a similar information in the mid function, with the edges in hyper edge reordered, does not seem to be triggering this problem (if you remove the mid function and call inner function from outer directly, the problem will disappear):
# borrowed_by: Reference($t0) -> {(.v (vector<m1::HasAnotherVector>)/[], Reference($t1))}

This is with $t0 and $t1 types as follows:
fun m1::mid($t0|has_vector: &mut m1::HasVector): &mut m1::HasAnotherVector { ... }
var $t1: &mut m1::HasAnotherVector

To reproduce
This is the code that causes the prover to fail:
module prover_bug::m1 {
    use std::vector;

    struct HasVector {
        v: vector<HasAnotherVector>,
    }

    struct HasAnotherVector {
        v: vector<u8>,
    }

    fun outer(has_vector: &mut HasVector) {
        let has_another_vector = mid(has_vector);
        vector::push_back(&mut has_another_vector.v, 42)
    }

    fun mid(has_vector: &mut HasVector): &mut HasAnotherVector {
        inner(has_vector)
    }

    fun inner(has_vector: &mut HasVector): &mut HasAnotherVector {
        vector::borrow_mut(&mut has_vector.v, 7)
    }
}

with the edges in hyper edge reordered, does not seem to be triggering this problem

Why does removing the mid function cause the edges in the hyper edge to be reordered though?

What I think is happening is that when hyper edges are propagated inner to its caller, their sub-eges will always be in (presumably) correct order. It's another level of propagation that seems to be the problem and reorders sub-edges (presumably) incorrectly.

This sounds crazy but if you add another layer, the issue went away...
module prover_bug::m1 {
    use std::vector;

    struct HasVector {
        v: vector<HasAnotherVector>,
    }

    struct HasAnotherVector {
        v: vector<u8>,
    }

    fun outer(has_vector: &mut HasVector) {
        let has_another_vector = mid(has_vector);
        vector::push_back(&mut has_another_vector.v, 42)
    }

    fun mid(has_vector: &mut HasVector): &mut HasAnotherVector {
        inner(has_vector)
    }

    fun inner(has_vector: &mut HasVector): &mut HasAnotherVector {
        vector::borrow_mut(&mut has_vector.v, 7)
    }
}

I wonder if there's anywhere where we reverse the order of edges by doing something like popping elements from the back and inserting them in the reverse order.

There's a place where we reverse the path when constructing a hyper edge: https://github.com/move-language/move/blob/main/language/move-prover/bytecode/src/borrow_analysis.rs#L271. I suspect there's something off here.

The more I think about it, the more it seems to me like the fact that the problem occurs under one order and not the other is not the real reason. I wonder if having these index edges (seemingly, as I am not sure about that) connecting non-vector type nodes in the propagated hyper edges is a real problem...

having these index edges (seemingly, as I am not sure about that) connecting non-vector type nodes in the propagated hyper edges is a real problem

It is a problem and it's caused by edges being wrongly reordered. The borrow edge from t0 (&mut HasVector) to t2 (&mut HasAnotherVector) should be: (1) field borrow t0.v to get t1 (&mut vector<HasAnotherVector>), (2) index borrow t1[7] to get t2. But somehow having another layer of propagation reverses this order.

To follow up on my line of thought (which is very possibly wrong), in inner you have:
borrowed_by: Reference($t0) -> {(.v (vector<m1::HasAnotherVector>), Reference($t1))}, Reference($t1) -> {([], Reference($t3))}

Which has:
Reference($t0) -> {(.v (vector<m1::HasAnotherVector>), Reference($t1))},

and
Reference($t1) -> {([]BLAH, Reference($t3))}

And this seems to be summarized in mid to
borrowed_by: Reference($t0) -> {(.v (vector<m1::HasAnotherVector>)/[]BLAH, Reference($t1))}

We somehow loose info about Reference($t1) -> {([]BLAH, Reference($t3))} from inner in the process.

I think the $t1 in inner and mid are different things? In inner, $t1 is of type vector<HasAnotherVector>, and is the field of $t0. In mid, $t1 is the return value of mid, which is the $t3 in inner.

We somehow loose info about Reference($t1) -> {([], Reference($t3))} from inner in the process.

IIUC this information is summarized in the hyper edge Reference($t0) -> {(.v (vector<m1::HasAnotherVector>)/[], Reference($t1))}, which has both field edge and index edge in (.v (vector<m1::HasAnotherVector>)/[].
This is my understanding, which might be wrong. Time to tag @wrwg to shed some light here.

I think I was not clear enough :-( In inner you have:
Reference($t0) -> {(.v (vector<m1::HasAnotherVector>), Reference($t1))},

where $t1: &mut vector<m1::HasAnotherVector> and $t0|has_vector: &mut m1::HasVector, and we have:
Reference($t1) -> {([], Reference($t3))}

where $t3: &mut m1::HasAnotherVector
In the second case, it makes sense to have index edge there as $t1 is a vector type.
On the other hand, in mid we have:
borrowed_by: Reference($t0) -> {(.v (vector<m1::HasAnotherVector>)/[], Reference($t1))}

which kind of summarizes the above, but not quite because neither $t0 nor $t1 in mid is a vector type: $t0|has_vector: &mut m1::HasVector and $t1: &mut m1::HasAnotherVector

neither $t0 nor $t1 in mid is a vector type: $t0|has_vector: &mut m1::HasVector and $t1: &mut m1::HasAnotherVector

Right, but $t0 has a field v that is a vector type. And I think .v (vector<m1::HasAnotherVector>) means we are taking field .v to get a vector<m1::HasAnotherVector>.

neither $t0 nor $t1 in mid is a vector type: $t0|has_vector: &mut m1::HasVector and $t1: &mut m1::HasAnotherVector

Right, but $t0 has a field v that is a vector type. And I think .v (vector<m1::HasAnotherVector>) means we are taking field .v to get a vector<m1::HasAnotherVector>.

You may be right! I am groping in the dark here a bit :-) I was thinking that the two parts of the hyper edge (divided by /) are independent in a way, meaning that if we "expand" it we'd have something like Reference($t0) -> {([]BLAH, Reference($t1))} in mid which would be wrong due to missing vector type.
You are right that it's probably time for @wrwg to provide some additional context and/or advice here!

Have you debug print the dst_ty in the match dest_ty which causes the issue (sorry if I missed it)?

Have you debug print the dst_ty in the match dest_ty which causes the issue (sorry if I missed it)?

I did but did not include it as it's not very illuminating in this context, providing only ModuleId and StructId:
DST TYPE: Struct(ModuleId(1), StructId(Symbol(103)), [])

As there are only 2 structs in the minimal example, it's most likely either HasVector or HasAnotherVector.

Have you debug print the dst_ty in the match dest_ty which causes the issue (sorry if I missed it)?

dst_ty is HasVector.
@awelc you can print the type with TypeDisplayContext and it will give you better looking information!
let ty_ctx =
    &TypeDisplayContext::WithEnv {
        env: self.parent.env,
        type_param_names: None,
    };
println!("dst_ty is {}", dst_ty.display(ty_ctx));

Even easier, use https://github.com/move-language/move/blob/750903126278ae325461b8c5c9d24f1c708965f5/language/move-model/src/model.rs#L1681

I wonder what the priority of this (clear) bug is. Is this important for you? If so do you not have a reasonable workaround?

I wonder what the priority of this (clear) bug is. Is this important for you? If so do you not have a reasonable workaround?

The minimal example was distilled from one of our real-life examples. One possible workaround is to use another level of indirection, but since we are starting to actually integrate the prover into our flavor of Move, it would be good to get a proper fix.
I am happy to continue working on this myself, but it would be good to get some pointers if possible. At this point we have two hypotheses (@emmazzz, please correct me if I am wrong):

the order of sub-edges in a hyper edge is the main reason for the failure and otherwise the borrow info is correct
the borrow info in the hyper edges is incorrect as it contains an index sub-edge between types that do not include a vector type

Knowing if any of these is correct would be a good start. I realize that this thread is a big long, but skipping the first few comments and starting with this one perhaps would help: https://github.com/move-language/move/issues/270#issuecomment-1186309265

The hyper edge becomes a part of the WriteBack operation and when the WriteBack operation is being translated in the Boogie backend's bytecode translator (translate_writeback function), only the first sub-edge of the hyper edge that it contains is taken into consideration.

I think the later sub-edges are taken into consideration too. translate_write_back_update is a recursive function. After we are done with the first sub-edge, we call translate_write_back_update with incremented index at + 1, such as here.

I think the later sub-edges are taken into consideration too. translate_write_back_update is a recursive function.

Right... This is some complicated code! To continue the analysis, though, if we have field edge followed by index edge, the new type destination is computed based on the field type and recursively passed to translate_write_back_update. That's why in the following case there is no error ('mid` function):
borrowed_by: Reference($t0) -> {(.v (vector<m1::HasAnotherVector>)/[], Reference($t1))}

If index edge is first, though, translate_write_back_update will receive the existing original (non-vector) destination type, which will crash the prover in this case (outer function):
borrowed_by: Reference($t0) -> {([]/.v (vector<m1::HasAnotherVector>), Reference($t2))}

If index edge is first, though, translate_write_back_update will receive the existing original (non-vector) destination type, which will crash the prover in this case (outer function):

Exactly. The correct order should be [field, index] for both mid and outer. We need to figure out why index edge is the first sub-edge in outer's case, and correct it.

I think I finally figured out where the bug is after running the algorithm through some examples on paper. I will try to put together a PR tomorrow to see if my idea makes any sense.

@wrwg, @emmazzz - I have created a PR where I attempted to fix the problem: https://github.com/move-language/move/pull/289 (please PR's description for details).

It is fantastic to see we have now two proposals to fix this (#289 and #298 from @meng-xu-cs)! I'm still quite a bit under water, do you folks agree which is the right fix, or should I look closer?
BTW I haven't paid attention lately but we do run all of the old DPN to check for regressions and both fixes (amazingly) pass this test, right?

Fixed in https://github.com/move-language/move/pull/298


Support Bevy's States V2

As the 0.5 release notes show, we can now add systems to run on the lifecycles of custom states:
#[derive(Debug, Clone, Eq, PartialEq, Hash)]
enum AppState {
    Menu,
    InGame,
}

fn main() {
    App::build()
        .add_state(AppState::Menu)
        .add_system_set(SystemSet::on_enter(AppState::Menu).with_system(setup_menu.system()))
        .add_system_set(SystemSet::on_update(AppState::Menu).with_system(menu_logic.system()))
        .add_system_set(
            SystemSet::on_update(AppState::InGame)
                .with_system(game_logic.system())
        )
        .run();
}

Ideally, we should be able to run the physics systems just on AppState::InGame, instead of using .add_physics_system():
fn main() {
    App::build()
        .add_system_set(
            SystemSet::on_update(AppState::InGame)
                .with_system(game_logic.system())
                .with_physics_system(game_physics_logic.system())
        )
        .run();
}

I ran into the need for this feature myself, and I'd love to do it.
Unfortunatly it looks like it isn't possible at the moment....
The reason why we need add_physics_system in the first place, is because the physics step doesn't run synchronously with the frame update. In a given frame, the physics step may not run, or it may run multiple times.
Now, because the physics step is out-of-sync with the frame update, there should be some way for the user to schedule systems that runs in-sync with the physics step. But how to do that?
So far, the only solution I've found is to create physics stage that have a fixed time-step. And add_physics_system is a simple convenience function that adds the system to that stage.
But  a system-set is inside a stage. And all of its systems will be that stage. So if we look at this code example there is a problem:
fn main() {
    App::build()
        .add_system_set(
            // all systems of this set are in the same stage by definition (in thise case the `CoreStage::Update` stage)
            SystemSet::on_update(AppState::InGame
                .with_system(game_logic.system()) // This should not be in the physics stage
                .with_physics_system(game_physics_logic.system()) // This should be in the physics stage
        )
        .run();
}

And yet there is another problem: The system-set can have their own fixed-time step. So what the user can do this:
SystemSet::run_criteria(FixedTimestep::step(0.4))
    .with_physics_system(game_physics_logic.system()) // This is now out-of-sync with the physics steps

Ok. We have a problem due to stages... But maybe using stages to run the physics step was't the best idea? Maybe SystemSets should be used?
But it turns out, that without stages, an even more fundamental problem arise: How the user can add physics system at all? Yes a system could be marked to run before or after some public system or system-set labels. But that's not enough. How can the systems run in-sync with the physics step system? AFAIK there is no way to add a system to a system set that is already registered by the plugin. And anyway that would solve the issue, would it? Because the user would still need to add the physics system to a specific SystemSet...
So, sadly, I don't see how this could be implemented :-/
I'd be happy to hear suggestions/ideas on how to overcome this problem.

I guess that the best option here would be to discuss this in Discord, or even opening an issue in Bevy so this is take into consideration while developing the future "stageless" systems.

I'm considering doing a bold move, that would solve this: #107


can't find missing line

The text and the html report for my project https://github.com/jendrikw/clearurls show that one line in rules.rs is missing coverage, but I can't find it. I tried --show-missing-lines, but that did nothing.
I'm on commit 12f36764 and this is the output I get from running cargo llvm-cov --all-features --show-missing-lines:
info: cargo-llvm-cov currently setting cfg(coverage); you can opt-out it by passing --no-cfg-coverage
   Compiling clearurls v0.0.1 (/home/jendrik/dev/rust/clearurls)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 8.21s
     Running unittests src/lib.rs (target/llvm-cov-target/debug/deps/clearurls-b84d5d7032e5c877)

running 17 tests
test deserialize_utils::tests::test_deserialize_map_as_vec_error ... ok
test tests::test_from_file_invalid_json ... ok
test deserialize_utils::tests::test_deserialize_regex_set_error ... ok
test tests::test_from_invalid_path ... ok
test deserialize_utils::tests::test_deserialize_regex ... ok
test deserialize_utils::tests::test_deserialize_regex_vec_error ... ok
test tests::test_from_str_invalid_json ... ok
test tests::test_from_read_file ... ok
test tests::test_from_read_vec ... ok
test tests::test_from_path ... ok
test tests::test_raw_rules_produce_invalid_url ... ok
test tests::test_referral_marketing_setter ... ok
test tests::test_invalid_redirection ... ok
test tests::test_invalid_urldecode ... ok
test tests::test_remove_fields_from_url_errors ... ok
test tests::test_raw_rules_unchanged ... ok
test tests::test_strip_referral_marketing ... ok

test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s

     Running tests/test_markdown.rs (target/llvm-cov-target/debug/deps/test_markdown-4a2b43eb5f36c406)

running 1 test
test test_markdown ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.31s

     Running tests/test_single_url.rs (target/llvm-cov-target/debug/deps/test_single_url-d76fe224866ae094)

running 1 test
test test_single_url ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.31s

Filename                      Regions    Missed Regions     Cover   Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
deserialize_utils.rs               49                 2    95.92%          12                 0   100.00%         142                 0   100.00%           0                 0         -
lib.rs                             84                 3    96.43%          16                 0   100.00%         143                 0   100.00%           0                 0         -
rules.rs                           80                 5    93.75%          15                 0   100.00%          88                 1    98.86%           0                 0         -
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                             213                10    95.31%          43                 0   100.00%         373                 1    99.73%           0                 0         -

(Unrelated, but tips on how to identify uncovered regions would also be appreciated)

Here is the text output if that's helpful: https://github.com/jendrikw/clearurls/actions/runs/10229901824/job/28304099435

Having this same exact issue issue, version is llvm version 19.1.0-rust-1.82.0-nightly

I feel this is a similar issue with https://github.com/taiki-e/cargo-llvm-cov/issues/324.


Can I custom AppUpdate class ?

I want to hide disable button

I understand that you are referring to the "Do not show again" button. Use .setButtonDoNotShowAgain(null) to hide the button.


python311Packages.testcontainers: 4.7.1 -> 4.7.2

Description of changes
Changelog: https://github.com/testcontainers/testcontainers-python/releases/tag/testcontainers-v4.7.2
cc @onny

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 327473 run on x86_64-linux 1

8 packages marked as broken and skipped:

python311Packages.apache-beam
python311Packages.apache-beam.dist
python311Packages.dm-sonnet
python311Packages.dm-sonnet.dist
python311Packages.tensorflow-datasets
python311Packages.tensorflow-datasets.dist
python312Packages.apache-beam
python312Packages.apache-beam.dist

8 packages built:

python311Packages.aio-pika
python311Packages.aio-pika.dist
python311Packages.testcontainers
python311Packages.testcontainers.dist
python312Packages.aio-pika
python312Packages.aio-pika.dist
python312Packages.testcontainers
python312Packages.testcontainers.dist

Result of nixpkgs-review pr 327473 run on aarch64-darwin 1

4 packages marked as broken and skipped:

python311Packages.apache-beam
python311Packages.apache-beam.dist
python312Packages.apache-beam
python312Packages.apache-beam.dist

8 packages built:

python311Packages.aio-pika
python311Packages.aio-pika.dist
python311Packages.testcontainers
python311Packages.testcontainers.dist
python312Packages.aio-pika
python312Packages.aio-pika.dist
python312Packages.testcontainers
python312Packages.testcontainers.dist

Result of nixpkgs-review pr 327473 run on aarch64-linux 1

4 packages marked as broken and skipped:

python311Packages.apache-beam
python311Packages.apache-beam.dist
python312Packages.apache-beam
python312Packages.apache-beam.dist

8 packages built:

python311Packages.aio-pika
python311Packages.aio-pika.dist
python311Packages.testcontainers
python311Packages.testcontainers.dist
python312Packages.aio-pika
python312Packages.aio-pika.dist
python312Packages.testcontainers
python312Packages.testcontainers.dist

Result of nixpkgs-review pr 327473 run on x86_64-darwin 1

4 packages marked as broken and skipped:

python311Packages.apache-beam
python311Packages.apache-beam.dist
python312Packages.apache-beam
python312Packages.apache-beam.dist

8 packages built:

python311Packages.aio-pika
python311Packages.aio-pika.dist
python311Packages.testcontainers
python311Packages.testcontainers.dist
python312Packages.aio-pika
python312Packages.aio-pika.dist
python312Packages.testcontainers
python312Packages.testcontainers.dist


Fullscreen editor outside div

Hi. I'm kinda new to github (well, as contributor) so if this question landed in wrong place - that's probably my bad.
Anyway, heres what I need help for. By default, editor that goes fullscreen maximizes only in current DIV. Is there a way to append it to browser window instead? I am oppening editor in a modal box and when applying full screen effect, it opens inside that modal making it almost unusable.

Can you share link or post code, so we can see how you used editor?

it's just a custom div that slides from side of the screen:

...

on first picture editor normal view and second is fullscreen (i already fixed margin top since navbar was overlapping it). at same time i noticed buttons have this white square hover effect, thats probably me failing with css tho

I created new branch for testing of modal https://github.com/ra100/Trumbowyg/tree/modal and it seems working fine. But I'll try to look into that tomorrow.
If you could tell me what you use for modal/how you open it, it would help. So I can simulate that bug. Thanks.

i am using jquery to add class on click and i am opening div using css transition
.cd-panel-container {
position: fixed;
width: 90%;
height: 100%;
top: 0;
background: #dbe2e9;
z-index: 1;
-webkit-transition-property: -webkit-transform;
-moz-transition-property: -moz-transform;
transition-property: transform;
-webkit-transition-duration: 0.3s;
-moz-transition-duration: 0.3s;
transition-duration: 0.3s;
-webkit-transition-delay: 0.3s;
-moz-transition-delay: 0.3s;
transition-delay: 0.3s;
box-shadow: -2px 0 3px -3px #424242;
}
.from-right .cd-panel-container {
right: 0;
-webkit-transform: translate3d(100%, 0, 0);
-moz-transform: translate3d(100%, 0, 0);
-ms-transform: translate3d(100%, 0, 0);
-o-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
}
.from-left .cd-panel-container {
left: 0;
-webkit-transform: translate3d(-100%, 0, 0);
-moz-transform: translate3d(-100%, 0, 0);
-ms-transform: translate3d(-100%, 0, 0);
-o-transform: translate3d(-100%, 0, 0);
transform: translate3d(-100%, 0, 0);
}
.is-visible .cd-panel-container {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
-webkit-transition-delay: 0s;
-moz-transition-delay: 0s;
transition-delay: 0s;
}

Which browser and OS do you use? I can't find anything wrong in Opera, Chrome, Firefox (on Linux).

I have the same issue. When my textarea is inside a div, it's just maximizing to it's parent div, not the browser's window, like it has place when the text area is not overriden by any div.

It's because your div has position: relative or something like that.

yep, indeed, but almost every complex layout which contain elements positioned: absolute must have it. Is there any trick to override it ?

Nope :(


Data folder is missing?

Hello,
Seems Data folder is missing when I checked out the project.
Or do I need to install git Lfs?
Thanks
Gil

Where did you get that error?
The code currently hardcodes a path, but you can get the files from recastnav.com

The files are missing from the Xcode project.
Ok i will download theme from recastnav )

Yeah those ones, you ight also need to change the path referenced in the sample

Added files for simplicity


Todo List using React

In this PR, I have implemented the following features:

Followed the tutorial: _React Tutorial From Scratch: A Step-by-Step Guide (2021).

Covered the following parts from the guide:

Part 1 - React tutorial: The beginner's guide to learning React in 2020.
Part 2 - Working with React form and handling event.
Part 3 – How to implement CSS in Reactjs app.
Part 4 – How to edit to-dos items.
Part 6 – Getting started with React lifecycle methods.
Part 7 – Getting started with React hooks.
Part 9 – Routing with React Router.

Note: The version of React Router Dom used in this tutorial (v5) is outdated. You can learn more about version 6 here and an official upgrading guide here.

Part 10 – How to add hamburger menu in React (Optional).

Used GitFlow.

Hi @amexabee, Thank you so much for reviewing my PR. 👍


framebuf, text + test

allow use of adafruit_framebuf if framebuf isnt't available
tested text in the adafruit_framebuf implementation
add a more fully-featured test for framebuf usage

Hello! I've tested this on a Feather M4 Express with no issues. Example and library seem to work well.
On a trinket m0 I get this error:
Auto-reload is on. Simply save files over USB to run them or enter REPL to disable.
code.py output:
Framebuf capability test - these are slow and minimal but don't requirea special graphics management library, only `adafruit_framebuf`
Pixel test
Lines test
Traceback (most recent call last):
  File "code.py", line 55, in <module>
TypeError: function takes 1 positional arguments but 6 were given

Line 55 looks like:
display.line(corner_from[0], corner_from[1],  corner_to[0], corner_to[1], 1)
Earlier today I modified a version of the adafruit_ssd1306 library to test the new adafruit_framebuf library, with only a few line changes:
https://gist.github.com/eighthree/232110a6a35e0d8677eddaea2055560e
This version makes ssd1306_framebuftest.py work without any modifications.
I'm reckon the error is something else other than what the error message indicates.

The error reported above occurred for me when I had the old "framebuf.py" module on my system. After removing it, it worked.  On trinkets, the old framebuf was necessary since the builtin framebuf was not included,

I have tested this on a metro_m4_espress wit ha 128x32 featherwing.  For the ssd1306_framebuftest.py I had to change the address to 3c and set the resetpin to None.

worked on my trinket_m0 with oled featherwing.
I had to regenerate the adafruit_ssd1306.mpy file  -- the one in the repo was "incompatible"

thanx, yah this superscedes the old framebuf, and i didnt keep the same name since there might be some structural changes


Rewrite incoming voice

Incoming voice is currently a mess. There's a single misconfigured decoder that works on all incoming streams.
Post-rewrite, it should:

Implement OP13 (user leave)
Create and dispose Opus decoders per each audio stream
Use appropriate configuration for thereof
Fill blanks with silence
Use less CPU

(just a comment to test a new webhook 👀 )


400,怎么体验

flutter: Language has been changed to: zn
flutter<EMAIL_ADDRESS>flutter: POST:URL=https://502tech.com/geekdaily/login
flutter: POST:BODY={xxxxxxxx}
flutter: errorMsg :网络请求错误,状态码:400

你这个url不对啊。。


Fix 'main' value in bower.json

Fix 'main' value in bower.json, so tools like wiredep can find the js file

Thanks for this. Merged.

Thanks!
Can you please also tag it, as "1.3.8" I guess.
On Fri, Sep 2, 2016 at 6:53 PM, Obinwanne Hill<EMAIL_ADDRESS>wrote:

Merged #31 https://github.com/obihill/restive.js/pull/31.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/obihill/restive.js/pull/31#event-777180777, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AE1Ux2K6KjrkP7ZE1n9tpS3EqKSIay0Qks5qmKjNgaJpZM4JzzZq
.

Done.


Converting Python numpy.float(64) to Microsoft Server SQL

[Angiv feedback her]
I still have an issue with converting python float to decimals.
I have this error message:
pyodbc.ProgrammingError: ('42000', '[42000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Error converting data type float to numeric. (8114) (SQLExecDirectW)')

Dokumentoplysninger
⚠ Undlad at redigere denne sektion. Det er påkrævet til docs.microsoft.com ➟ GitHub-problemlinkning.

ID: 6ea22367-9924-edb3-c65a-66a1cb4181fa
Version Independent ID: cef2a17a-d363-3042-e585-4c9184637eb4
Content: Convert Python and SQL data types - SQL Server Machine Learning Services
Content Source: docs/machine-learning/python/python-libraries-and-data-types.md
Product: sql
Technology: machine-learning-services
GitHub Login: @dphansen
Microsoft Alias: davidph

@mouradbka -- Mourad, thank you for your feedback.  Please consider these resources:

SQL Server on Microsoft Q&A
DBA Stack Exchange
Stack Overflow

I am closing this issue now.  You are welcome to @ mention me for any followup.
We hope to hear from you again.


How do you search multiple terms?

I was wondering how one could search multiple terms using the command-line tool. For example, I'd like to get tweets that mention either "european refugees" OR "computers", or even "european refugees" AND "france". How would I write this?

https://twitter.com/search-advanced
Twitter allows you to do search but actually it translate only in one simple query
Here some example I wrote somewhere else to show how it works
Few examples that gives the same result:
Exact Query : Honda cars
Normal Query : "Honda cars"
Any Query : Honda Toyota
Normal Query : Honda OR Toyota
Exact Query: Honda stadium + Exclude Query : car
Normal Query : "Honda stadium" -car
hashtag Search : DitchtheDrama
Normal Search : #DitchtheDrama
You can add AND, OR and maybe some other stuff

Thank you for the response! So the "Normal Query" parts of your examples are what I'd put in for the querysearch portion of this command?
python /Exporter.py --querysearch Honda OR Toyota --since 2016-01-01 --until 2016-12-31

@marcyshieh to search for two terms with an OR it is exactly as you have said


Support IIIF Collections

What does this do?
This work brings Clover to a point where it can support IIIF resources of type Collection by use of a id prop.

If  IIIF resource is a Collection, a Radix UI Select will render as the title of current manifest. By default, at this point, the first item in the Collection items will render as the activeManifest. If a user interacts with the select dropdown, they will see a list of the Manifest  items. Selecting one will dispatch a new activeManifest and in turn send that manifest and its initial canvas into the Viewer component.
One key update is that the IIIF resource prop should now be id rather than manifestId. manifestId will still be supported by is no longer required. In a future version we may want fully deprecate this.
How to review?
This adds one new  Radix UI package, so do npm ci to install that.

@mathewjordan just wanted to add that I threw a bunch of our collections at this this morning. Overall, things work well, but it definitely struggles with "large" collections. Take for instance Roth. This collection has a little over 7000 works. If I throw this at Mirador, it takes a few seconds to load the data (5 seconds?), but it takes much longer in Clover to get just the items to load (at least a minute). After that, it takes another minutes or so for me to even be able to interact with the list of works. Eventually (several minutes), thumbnails and items are navigable, but I've yet to get an item to load after this initial screen:

I think my question is the goal. Is the intent for this to work for collections of any size or simply have some basic functionality with collections. If it's the latter, I think this works well, but I question the limits of a collection this can support.
I also wonder if our stack might be causing additional issues with performance, but again this seems to work okay in Mirador. Of course, Mirador goes for a much more basic approach to loading these things.
I'm going to continue testing to figure out what the collection size looks like when things go from slow to unusable.

For very large Collections, the best method may be to lazyLoad. Since we have already have similar issues with performance on thumbnails for canvases in large manifests, I think it'd be best to tackle lazyLoad as one larger issue rather than within this PR.


Start Selenium Server keyword should log the path to the Seleniun server log (and it's doc should have usage examples)

Originally submitted to Google Code by @pekkaklarck on 26 Jan 2010

The doc of this keyword mentions where the server log is written but the
keyword should also write that information into RF's log file.
It might also be a good idea to always write the server log into the same
directory with the log file to make linking to it easier. Most of the time
the log file is written into the output directory but not always.
Finally, the doc of the keyword should have some examples about using the
arguments. This clearly isn't related to the main issue here but I'm too
lazy to open another issue. =)

Originally submitted to Google Code by @pekkaklarck on 3 Feb 2010

Ought to be fixed in r277.

Originally submitted to Google Code by @pekkaklarck on 3 Feb 2010

Fixed impl slightly in r281.


Most snippets don't seem to work

Perhaps this is me failing to understand something, but it seems some of the snippets work whereas others don't:
for instance, typing "b" prompts me with many snippets:
baa, baan, bal, baln, etc which all do what I expect them to
but typing "a" only gives
align as an option -- meanwhile the snippets file suggests there should be rather more (eg. alpha)

I am also facing the same issue. In fact many of the snippets under scope .string.other.math.latex are not working for me. For example cd does not expand to \cdot (neither does it prompt me with this snippet nor does it expand after typing cd and pressing tab). I tried copying these snippets into my snippet file and they started working. They still don't show up in autocomplete menu, but the snippets if I type the trigger and press tab.

In which file do you have your snippets?


We need a Chinese translation, thank you!

Description
Hello! I am a beginner who does not understand code and have used UE Blueprint. UE Blueprint supports Chinese, but UE Engine is not friendly for small independent games. Therefore, I have a liking for Godot Engine. However, I think learning code takes a long time, so I chose visual development. However, it seems that the Orchestrator script developed by your team does not support Chinese. I hope it would be great if you and your team could produce Simplified Chinese. Thank you!
Implementation ideas
No response

Hi @SettingSail, I just wish to confirm that you're requesting the plug-in to be translated and not the documentation, correct?

So, from an editor plug-in perspective, there are some Godot Editor problems.
First, after the Godot Editor loads its translations, the TranslationServer service is immediately disabled. This prevents any further translations from being possible. What makes matters worse is that there is no way from GDScript, C#, or GDExtension to turn the TranslationServer service back on when the editor disables it.
Usually, in Godot engine code, one would use tr("text") or tr_n("text", "plural text"), where tr and tr_n are special functions that handle the localization concerns; however, with how these functions are written combined with the disabling of the server that is responsible for translations, this normal approach isn't possible.
The only solution that I can see works is that we explicitly write our own TranslationServer implementation that loads our .po file based on the editor locale setting and then at each call site, rather than relying on tr and tr_n, we'd need to write our own glue to interface directly with the loaded Translation resource. While doable, this is a substantial undertaking, and it completely goes against what Godot should allow editor plug-ins to do.
I've raised this concern on the Godot Rocket.Chat in the #editor channel. Let's see what reaction we get and if there is possibly a workaround that isn't immediately obvious other than what I just outlined above.

We need to test KoBeWi's work on godotengine/godot/pull/77104 to see if this satisfies our needs.


s390x: Support both big- and little-endian vector lane order

This implements the s390x back-end portion of the solution for
https://github.com/bytecodealliance/wasmtime/issues/4566
We now support both big- and little-endian vector lane order
in code generation.  The order used for a function is determined
by the function's ABI: if it uses a Wasmtime ABI, it will use
little-endian lane order, and big-endian lane order otherwise.
(This ensures that all raw_bitcast instructions generated by
both wasmtime and other cranelift frontends can always be
implemented as a no-op.)
Lane order affects the implementation of a number of operations:

Vector immediates
Vector memory load / store (in big- and little-endian variants)
Operations explicitly using lane numbers
(insertlane, extractlane, shuffle, swizzle)
Operations implicitly using lane numbers
(iadd_pairwise, narrow/widen, promote/demote, fcvt_low, vhigh_bits)

In addition, when calling a function using a different lane order,
we need to lane-swap all vector values passed or returned in registers.
A small number of changes to common code were also needed:

Ensure we always select a Wasmtime calling convention on s390x
in crates/cranelift (func_signature).

Fix vector immediates for filetests/runtests.  In PR #4427,
I attempted to fix this by byte-swapping the V128 value, but
with the new scheme, we'd instead need to perform a per-lane
byte swap.  Since we do not know the actual type in write_to_slice
and read_from_slice, this isn't easily possible.
Revert this part of PR #4427 again, and instead just mark the
memory buffer as little-endian when emitting the trampoline;
the back-end will then emit correct code to load the constant.

Change a runtest in simd-bitselect-to-vselect.clif to no longer
make little-endian lane order assumptions.

Remove runtests in simd-swizzle.clif that make little-endian
lane order assumptions by relying on implicit type conversion
when using a non-i16x8 swizzle result type (this feature should
probably be removed anyway).

Tested with both wasmtime and cg_clif.
FYI - @cfallin

This looks great to me -- thanks for all of the careful work here!

Thanks!

The introduction of the BE/LE variants of vector-bitcast (as per discussion in the most recent Cranelift meeting) will come later, I assume? Totally fine to follow up with it; just want to make sure I understand the plans.

Yes, I was planning to continue working on this as a follow up.  Given that with this PR merged, that follow-up is no longer expected to have any impact on code generation / correctness, but is solely about cleaning up the IR, I think we can take some time to make sure we get it right.
The details will probably require a bit more discussion, e.g. the exact CLIF IR changes (names of the new instructions etc.), and possibly a transition plan: do we need to continue to support the old raw_bitcast for a while to avoid breaking existing users, are there any existing raw_bitcast users that don't readily fit into the new scheme (e.g. bitcasts between types of different sizes), etc.
I'll go ahead and try to investigate these issues as far as I can, and then come back with findings or a proposal for further discussion in issue #4566.


Issues with fade-in/fade-out

Version
Latest
Description
Two issues:

If you specify a fade-out duration, when you click Pause, the icon switches to "Pause" when the audio is completely faded (results in a ~1 sec lag, feels awkward). But it should change immediately after clicking it, regardless of the fade value.
If you pause playback and then drag the seekbar, the play button becomes "pause" even though no audio is playing.

Reproduce Link
https://www.lijinke.cn/react-music-player/

@lijinke666 I opened a PR to fix several issues with the volume fade-in/fade-out. Can you please take a look when you have time?

@lijinke666 I opened a PR to fix several issues with the volume fade-in/fade-out. Can you please take a look when you have time?

Awesome!!! Thank you for your work

Awesome!!! Thank you for your work


update entries

There are some entries which have the term to_be_updated
with the following EPIRR IDs:
IHECRE00003822.3
IHECRE00003827.1
IHECRE00003845.2

Assigned to Theodore Perkins

cleaned ToBeUpdated.
all entries are primary cells and have the cell_types [naive cd4+ t cells, cd4 naive, cd4 naive] so I added the ontology for CL:0000898
Should cell_type be updated accordingly? The marker information is already contained in the marker column


One node output driving multiple inputs updates only one

See video below, using LookdevX (old version), MaterialX Viewer and Graph Editor, all loading the same attached MtlX file.
The Radius1 node drives the thickness of a few Lines. In LookdevX all works as expected.
In Viewer and Graph Editor only one line updates when changing the Radius1 value.
 Something that can be done in the Editor but not the Viewer.
https://github.com/AcademySoftwareFoundation/MaterialX/assets/7254958/0a81bcc9-ee4d-4b51-8f97-335c94fc3756
Note that this file requires PR1411
When you open the file in Graph Editor the graph is in the upper-right corner, and you need to Zoom in. There are some disconnected nodes that are far away (other bug reported for that issue)
[pat_herringbone2x6_test_GE01.zip]
(https://github.com/AcademySoftwareFoundation/MaterialX/files/12074256/pat_herringbone2x6_test_GE01.zip)

Adding another test case for MaterialX 1.38.8
Not sure I am super-clear in the video. But basically this is what happens.

I want a float slider input to drive the selection of 10 colors
Since Switch only has 5 inputs, I use 2 of them with a 5.0 modulo_float
Another node divides the same input by 5.0 and is used in a 3rd switch that selects the output of switch #1 or #2
In the video you see that if I use 2 separate float inputs everything works, but when I use the same input (as it's supposed to be) then the switch selection does not work. One of the nodes (the divide_float) does not update and the colors are selected from only one of switch #1 or #2.

https://github.com/AcademySoftwareFoundation/MaterialX/assets/7254958/f5ba864d-8fc3-44b8-a84b-44671af95545
The graph
GE_debug_switch.zip

The issue is not Graph Editor specific. The same happens in MaterialX Viewer.
https://github.com/AcademySoftwareFoundation/MaterialX/assets/7254958/37fdb82c-5611-4d1f-9570-f3571a5a23ee

I found another issue that is an older version of this one I believe
https://github.com/AcademySoftwareFoundation/MaterialX/issues/779
Some interesting explanation in there and seems that if the graph is then converted to a functional graph (nodedef) it will work. It kind of confirm my suspicion that I have seen my stuff working at times, and that was probably when I was testing the nodedef version of it.

I happen to run across this with my own editor using the current logic for updating, and fixed this locally.
The issue is most likely that only one of the 2 downstream shader uniforms is being updated. The logic is to take the path
of MaterialX input and match it to everything that uses that path. The current logic only updates the 1st one found -- which happens to be the input to modulo but not the input to divide.
This also affects the web viewer since it uses the same logic.

The core issue is that code generation is not adding in 1 uniform to drive the N downstream uniforms but instead explicitly keeps all downstream uniforms. Thus is is required to update all N downstream uniforms.
e.g. this is the OSL produced:
...
surface standard_surface_surfaceshader
[[
    string mtlx_category = "standard_surface",
    string mtlx_name = "standard_surface_surfaceshader"
]]
(
    ...
    float modulo_float_in1 = 0.000000
    [[
        string widget = "number"
    ]],
    float modulo_float_in2 = 5.000000
    [[
        string widget = "number"
    ]],
    float divide_float_in1 = 0.000000
    [[
        string widget = "number"
    ]],
    float divide_float_in2 = 5.000000
    [[
        string widget = "number"
    ]],
    ...
)
{
    closure color null_closure = 0;
    float modulo_float_out = mod(modulo_float_in1, modulo_float_in2);
    float divide_float_out = divide_float_in1 / divide_float_in2;
    color switch_color3_out = color(0.0);
    ...
}

Note how modulo_float_in1 and divide_float_in1 are declared instead of just declaring a single input. In shader reflection we end up with 2 uniforms using the same path. Hence due to the update mechanisms for h/w only updating the 1st uniform you end up with this side-effect.
Leaving a ping with @niklasharrysson and @jstone-lucasfilm as I think the proper fix is to make it so that you don't get multiple uniforms mapped to a single path. It is possible to patch all the update mechanisms as well but all mechanisms that directly update shader uniforms (using path reflection) will run into this issue.

BTW, If you created a nodegraph and exposed the input as an interface input then the nodedef works since there is 1 input which is actually driving all the downstream node's inputs.

Yes, that's how I managed so far. After all, what I publish at the end are nodedefs+nodegraphs and I know they will work, so I ignore the issues while developing the nodegraph, knowing everything will be fine at the end.
I can test the nodegraph by connecting/disconnecting inputs to verify different paths. A bit annoying. Hope this can be solved.

I have a feeling this problem might be solved as well with a change I was proposing in #1932
As explained in that issue:

I think the best fix for this is to stop flattening nodegraphs, and preserving the nodegraph hierarchies, when creating the codegen ShaderGraph. There are other benefits of this as well, for example an issue we've discussed before with limiting the number of uniforms that are generated for a shader (if nodegraphs are not flattened it's much easier to keep internal parameters private).

With this fix we should not need to create an accompanying nodedef to specify the nodegraph interface. Codegen should restrict the interface to what is published as inputs on the nodegraph, and stop with the publishing of internal node inputs.
I've started looking at bit on that change. It's quite involved though as it relates to how our current nodegraph traversal is inherently performing a nodegraph flattening by always traversing into the graphs. But I'll post back here when/if I make some progress on this.

Hi @niklasharrysson
I managed to get this to work by changing code to not elide constants during optimization.
void ShaderGraph::optimize()
{
    size_t numEdits = 0;
    for (ShaderNode* node : getNodes())
    {
        if (node->hasClassification(ShaderNode::Classification::CONSTANT))
        {
            // Constant nodes can be elided by moving their value downstream.
            //bypass(node, 0); <- hack
            //++numEdits;
        }

This only seems to be required or top level inputs in this case.
It seems that top level inputs should not be classified as constants ? Perhaps a simpler smaller fix ?

I see now from the simplified test case above that a nodegraph was not even used, so ignore my comment above . Instead this seems to be cause by limited support for using "free floating" input to drive other inputs in a network. We need to update codegen to support this.


Need-info authors of performance regression patch in perf-alert bugs after 1 week of no activity

We'd like to have bugbot make comments, and need-info the authors of patches that cause performance alerts after 1 week of no activity.
Here's an example perf-alert bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1924102
The author of the regressing patch can be found in the Regressed by field for the bug. The comments should only happen on bugs that were created for performance regressions. It should exclude these kinds of bugs: https://bugzilla.mozilla.org/show_bug.cgi?id=1909343
The bugs we want to target are those which contain both of these keywords: perf-alert, and regression.

@gmierz do you currently do this manually? I just want to figure out if this would increase the number of needinfos overall, or just switch them from being set by a human to being set by the bot.

We don't currently do this manually. We were considering it, but it would be too much additional work for perf-sheriffs to take on so we need an automated approach for it.
Looking at this dashboard here: https://sql.telemetry.mozilla.org/queries/103165/source?p_alert_summary_id=null&p_framework=browsertime&p_past_months=1&p_platform=null&p_status=null&p_suite=null&p_test=null
I see about 9 bugs in the last month that would have received a needinfo.

OK, that sounds reasonable.

PR is up here in draft form atm: https://github.com/mozilla/bugbot/pull/2527


[WFLY-5452] Sometimes the calling javax.security.auth.login.Configuration.getConfiguration() fails with SecurityException in our tests

JIRA: https://issues.jboss.org/browse/WFLY-5452
Some info about this issue: http://javlog.cacek.cz/2015/09/solution-to-failing-configurationgetcon.html

retest this please


addRow() has no overwrite option

The addRow() function is missing an overwrite option that's available in google's API.

I believe overwrite is the default behaviour when nothing is passed - which is why there is only a boolean to change to "insert" mode.

closing this as it should be covered.


Edge case in collate_f

There is something weird going in in the collate_f function.  The output alignment matrix should be 4 x 5 , but we are getting a 5 x 5 matrix.
This is in the TestAlignmentModel.test_collate_alignment method in dataset.test_util.py

I remember why, it's because the PackSequence object is treating the pairs of sequences as a set of sequences.
So everything will be padded to the longest sequence.
It is going to be a little inefficient, but it is certainly isn't a bug.


nomad_1_0: 1.0.6 -> 1.0.7, nomad_1_1: 1.1.0 -> 1.1.1

Motivation for this change
Version bumps.
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
21.11 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.

Result of nixpkgs-review pr 126549 run on x86_64-linux 1

2 packages built:

nomad
nomad_1_1

Result of nixpkgs-review pr 126549 run on x86_64-linux 1

2 packages built:

nomad (nomad_1_0)
nomad_1_1

~/.cache/nixpkgs

Result of nixpkgs-review pr 126549 at cca2cdbb run on aarch64-linux 1

2 packages built successfully:

nomad (nomad_1_0)
nomad_1_1


New playwright test project for desktop to set up overflow gallery tests

What

New playwright test project for desktop to set up overflow gallery tests
Why

To set up call composite responsive behavior of switching between vertical/horizontal gallery
How Tested

Relying on CI
Process & policy checklist

[ ] I have updated the project documentation to reflect my changes if necessary.
[ ] I have read the CONTRIBUTING documentation.

Is this a breaking change?

[ ] This change causes current functionality to break.

I wouldn't recommend a whole new test project for differing aspect ratio as this will massively increase the number of tests (and not relevant to chat etc.).
Can we instead have multiple tests that change the aspect ratio of the test runner specifically for gallery related tests?

I wouldn't recommend a whole new test project for differing aspect ratio as this will massively increase the number of tests (and not relevant to chat etc.). Can we instead have multiple tests that change the aspect ratio of the test runner specifically for gallery related tests?

Yes I am currently looking into that but haven't quite figured it out yet. But I thought I would kick off CI to get an idea of the change in our test times.


Ideas for extending the app

First of all: Awesome work! Nice UI, easy to use and damn quick release after the release of the game.
Would it be possible to add a class/loadout editor to the app and also incorporating the infos when and how the attachements can be unlocked?

Hi! Sorry for long response, I missed your issue.
I have plans for the attachments but this requires some pre-work (first I need some kind of editor since I'm creating JSONs manually) and then I need to make a local database with attachments (and ideally with images), so this will take some time.
I'm not sure about loadout editor though, but I'll check on this after attachments.


add a few more contributors to the admins accepted to request tests

Yea, I'll add a few more here :)


NFC specification

Since the technical specification doesn't say that the NFC data should be ZLIB encoded, wouldn't the correct storage that the app reads be the CWT directly binary encoded (no Base45 and zlib)?
See Electronic Health Certificates 2021-04-18 section 4.1 and 4.2. I believe NFC falls under 4.1

@SchulzeStTSI can you answer this?

Any updates on this? Are there at least internal discussions, @daniel-eder?

@craftbyte I have not received an update on it, but just got in touch with @SchulzeStTSI to see if there is an update. We'll post here once there's an answer

@craftbyte We transmit the DCC as entire HC1 string, because we dont want to make assumptions about the receivers (which must be able to encode/zip it). The entire string can be consumed directly, and rendered as QR code without any other actions. If some receivers wants to store it binary, they can strip off the additional layers.


Rebase:  Display that we are retrying rather than timing out.

Rebase:  Display that we are retrying rather than timing out. And that it is exptected...

needs to be rebased.

I like the idea of this patch, but there are already so many log lines on the screen during this process, that I don't want to add any more lines. Can someone else jump in?