feature/stp-680-section-dropdown

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Please also include any acceptance criteria if you have any.

FlyoutContext

count, increment, decrement

As flyout count increases, flyouts will shift left to indicate stacking/nesting

Remove section create
replace manual id generation with nanoid
abstract cases out of component-type-edit.test.js -> component-type-edit.cases.js
Name component

Given I am in the designer, editing a page
When I click add section
Then a section flyout should appear, with the initial flyout visible
Given I am in the designer, editing the page
When I have no sections configured
Then I should only be able to see "create section"
Given I am adding a section, editing a page
When I click create section
Then the name should be prepopulated  with a generated id
Given I am adding or editing a section
When I type any whitespaces in the name
Then an error should appear and prevent me from submitting
Given I am editing a section called "testing"
When I close the section
Then the "testing" section is still selected and there is edit and create section link
Given I am editing or adding a page
when I click create section
Then I should not see "delete" (nothing to delete!)
Given I am editing a section
when I click delete (and confirm deletion)
Then the flyout will close and no section will be selected
Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.

[x] Unit test for flyout effect
[x] Unit test for name component

Checklist:

[x] My changes do not introduce any new linting errors
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation and versioning
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I have rebased onto master and there are no code conflicts

Hi Jen ,
I cannot reproduce this acceptance criteria:
Given I am editing or adding a page
when I click create section
Then I should not see "delete" (nothing to delete!)

In my case,
Given I am editing or adding a page
when I click create section
Then I see the button delete
And I click delete
Then the app behaves as if a section was deleted.


Update documentation for use in both scripts and Visual Studio projects

At present, the BioProviders examples only show how to use the type provider in an .fsx script file. Since we are publishing on NuGet, it will likely be used in Visual Studio projects too, and we should include examples of doing that.

I've added some comments in GenBankExample.fsx in bb24cb4e18274fc5147bc8907d5d57c16cdfae1f to indicate that the package can be installed in an IDE or through the command line in a project. I'm not sure if we want comments elsewhere. However, since we'll probably have a RefSeq provider at some point, maybe we will want to extract the common parts such as referencing and opening the package to a separate page.


Dart2js/VM/Analyzer doesn't catch conflict between constructor and mixin.

Example:
class C {
  C.foo() { print("Hello"); }
}
class M {
  foo() { print("World"); }
}
class D = C with M;
main() {
  new D.foo().foo();
}

Prints "Hello" then "World" in VM, prints "Hello" then crashes in dart2js, finds no problems in analyzer.
This should be a compile-time error - there is a conflict between the implicit D.foo constructor and the mixed-in D.foo instance method. If those had been written in the same class, all implementations do catch the conflict, but the mixin application is subject to the same rules (spec says that if a class with the same instance declarations and constructors would have a compile-time error, so would the mixin application).
(Odd corner, probably not worth fixing before switching to the common front-end, and even if it is, it's probably only for the analyzer).

dart2js, CFE, and analyzer still accept this program. Should this still be an error?

Reading this again; @lrhn @eernstg should this still error? dart2js still accepts this.

I don't see a reason why this would be an error, and I also don't see any error messages (or unexpected behaviors) from any tools when the same class body declares a constructor with a name of the form A.foo and an instance member named foo.
class C {
  C.foo() {
    print("Constructor");
  }
}

mixin M {
  void foo() => print("Method");
}

class D = C with M;

class A {
  A.foo() {
    print('Constructor');
  }
  void foo() => print('Method');
}

void main() {
  D.foo().foo();
  A.foo().foo();
}

It is true that the mixin application C with M gives rise to an implicitly induced constructor whose name is D.foo, but that's no worse than the coexistence of the constructor A.foo and the instance method foo in A.
The crash in dart2js would be seen with dart compile js today. I don't see any crashes there, either.
I believe this issue can be closed.

Agree, not a bug.
There is no rule against a constructor with the same base name as an instance member.
There can't be a static member with the same base name as a constructor, because they're invoked in the same way, but constructor base names are not in the lexical scope so they never intercept either instance members.


Import digitization from text file and align with individual MRI

A coregistration between electrodes and scalp surface is necessary in order to create a forward model.
The tutorial about Head Model and forward computation does not have much information about how it is done, except that a "-trans.fif" containing the alignment between electrodes and scalp surface is necessary:
http://martinos.org/mne/stable/auto_tutorials/plot_forward.html
And that it can be generated using mne.gui.coregistration, mne_analyse or mrilab.
If mne.gui.coregistration is used, it is necessary to have the digitization information in another ".fif" file. However it is not very clear how this information should be inserted into the mne.Raw() object, or even which information is necessary desired (fiducials, head points, etc)
I created a simple procedure that loads the digitization of electrodes positions and fiducials information from a text file using cvs.read, creates a DigMontage object using mne.channels.read_dig_montage, and update the infor['dig'] using raw.set_montage()
However I don't know if this is the correct was to do it. For example raw.set_montage do not set the electrodes positions when called with a DigMontage object, so it has to be called twice, the frist time with a normal Montage object
Here is the code, I can improve it a help to write a tutorial / update documentation if it is the case
# Creates the Digitization Montage
reader = csv.reader(open(sensor_file), delimiter=" ")
nelec = 260
positions = np.zeros((nelec, 3))
labels = [' '] * nelec
for line_idx, line in enumerate(reader):
    position = [float(zz) for zz in line[1:]]
    labels[line_idx] = line[0]
    positions[line_idx, :] = position

digitization = read_dig_montage(hsp=positions.copy(), elp=positions.copy(), point_names=labels, unit='mm')

raw.set_montage(digitization)
raw.save(result_file, overwrite=True)

you can call:
raw.plot_sensors()
to see if it makes sense.

I just found out they do not
https://drive.google.com/open?id=0B0p7WZ2wlTFSSUh4OFQySzYwYzQ
here is the EGI electrodes for reference
https://drive.google.com/open?id=0B0p7WZ2wlTFSTDZ2bzI1NWc3VVk
Which is weird since they were not that far from the MRI...
https://drive.google.com/open?id=0B0p7WZ2wlTFSNklmcTlPakJERXc
How can I fix this?
Apparently the loaded electrode positions used in raw.set_montage with the Montage object (called before the snippet posted above) where very far from the MNE reference. Is it projecting into the (X,Y) plane?

just to make it clear, they were also not that far before aligning to MRI, specially not upside-down like in the raw.plot_sensors()

@noreun want to try plot_trans with #3707 with your data?

I did, and it looks really bad: it is like the translation is not applied to the electrodes positions.
I feel like I'm missing some important step here
https://drive.google.com/open?id=0B0p7WZ2wlTFSN2JrSXh5Tkhrd1U
However, if I show the digitization points, than I can see they are in the correct position as shown during mne.gui.coregistration!
https://drive.google.com/open?id=0B0p7WZ2wlTFSN0JkVEJyOWxZOTA
Just a reminder, I first use
raw.set_montage()
with a normal Montage object, built from the electrodes positions/labels saved during the digitization process
Next, I create a DigMontage object using the same information + fiducials, saved to the
raw.set_montage()
again to set the digitization information
Then I save the Raw object,  call
mne coreg
to align the fiducials using the file with the Raw object, and save the -trans.fif file.
The plot above was generated with the raw.info and the -trans.fif file...

btw, here is the call to the plot_trans file
    plot_trans(raw.info, trans, subject=subject_name, dig=True,
             eeg_sensors=['original', 'projected'],
             meg_sensors=[], coord_frame='head', subjects_dir=subjects_dir)

ok, I figured out the problem. The plot now looks like this:
https://drive.google.com/open?id=0B0p7WZ2wlTFSQ0VfNWwwTkJpOFE
The problem is that read_dig_montage has a default parameter Transform that project the hsp and elp points into neuromag space
On the other hand, this is not the default during read_montage
Therefore, the translation matrix created with mne.gui.coregistration do not make sense for the electrodes positions inside raw.info, creating a non-sense projection.
For me the correct solution would be to run read_dig_montage with Transform=False (and have this more explicit in the Tutorial, since I guess not everybody uses Polhemus or Neuromag).
However, it turns out that in this case, the fiducials are just ignored in montage.py!
Lines 597 to 602:
            neuromag_trans = get_ras_to_neuromag_trans(nasion, lpa, rpa)
            fids = apply_trans(neuromag_trans, [nasion, lpa, rpa])
            elp = apply_trans(neuromag_trans, elp)
            hsp = apply_trans(neuromag_trans, hsp)
        else:
            fids = [None] * 3

My current solution is to also project the eletrodes into neuromag space dugin read_montage using Transform=True.
Another weird thing is that read_montage expects the fiducials to be ('nz', 'lpa', 'rpa') while read_dig_montage expects ('nasion', 'lpa', 'rpa').
Summing-up:

Either the fiducials should be used in read_dig_montage even when not projecting into neuromag space (Transform=False), or if it is crucial for MNE that electrodes exist in the neuromag space, the projection should be enforced during read_montage (I think this is why my plots with raw.plot_sensors() did not make sense in the figures above)

fiducials names should be standardized, e.g. ('nasion', 'lpa', 'rpa')

@noreun thanks a lot for looking into this.
could you send us a WIP pull request with the changes you had to do to make it work for you?
if you PR contains test it will guarantee that we won't break your workflow in the long term.

I created a PR for the change in fiducials name so that they are the same in both read_montage and read_dig_montage
However I don't know if I should I use Tranform=True during read_montage (my current solution, no changes in mne required) or Tranform=False in read_dig_montage (did not try yet, should change read_dig_montage)?
I figure that the reason the fiducials are set to [None] * 3 in read_dig_montage is because they have to be in Neuromag space, otherwise something would break. Is that correct? Otherwise, I'd be willing to fix that and update the fiducials in  read_dig_montage.
Once this is decided, I'd also be willing to write a tutorial about co-registration with locations from generic input (e.g., text files), that could be referenced in the Head Model and Forward Computation Tutorial (there is not much info about this important step)
I guess I should just create a tutorial/plot_coregistration.py following these guidelines?
http://mne-tools.github.io/stable/contributing.html#checking-and-building-documentation

@teonbrooks do you have a moment to comment on these issues? I'm not sure what the purpose of these arguments was/is.

Once this is decided, I'd also be willing to write a tutorial

Yes please reference in the head model tutorial that you need properly provided dig points. Your new tutorial could have nice sanity check plots like plot_sensors, plot_trans, etc. Whatever you used to make sure things weren't broken can help here. Even things like the histogram of distances thing we talked about might be a cool thing to add (manual matplotlib/numpy stuff like that is great if it's only a few lines to do something useful).

I guess I should just create a tutorial/plot_coregistration.py following these guidelines?

Yes. And I recommend copy-pasting an existing tutorial to get you started, and adapt from there. Things like the title need to be formatted properly or it will break, so don't start from absolute scratch. (Please also add this tidbit to the contrib instructions while you're in there if you have time.)

the DigMontage wasn't intentionally meant for electrode placements but for head shape, ELP (indicator points in headshape-space) and HPI (indicator points in MEG space). Maybe the name wasn't the best choice...maybe this needs more documentation and/or a name change.
One standard way to deal with digitized electrode positions is to make a hpts file and use the read_montage.  Sorry @noreun, I only had a chance to skim through the past notes so you might have mentioned this but how are you reading the digitized electrode points now to get through to properly work.

I figure that the reason the fiducials are set to [None] * 3 in read_dig_montage is because they have to be in Neuromag space, otherwise something would break. Is that correct? Otherwise, I'd be willing to fix that and update the fiducials in read_dig_montage.

if you use the transform=True, it would put all the points into Neuromag space
just fyi, the keyword transform, and the Transform object serve different roles.

@teonbrooks so Montage is for electrode points, whether from a standard (non-individualized) set or digitized set? And DigMontage is meant for all other things? I thought you had said before that Montage was really meant for standard things and DigMontage was for anything that was manually digitized... but I could be wrong.

yeah, this is confusing. so DigMontage was purposed to take care of digitized head points, and digitized reference points. we should probably add an argument to handle digitized electrodes, it seems like the most fitting place.
hpts has been historically used as a placeholder for electrode/sensor points that aren't a standard format. it could be modified to handle digitized points but the standard practice of Montages is that they are preset points.
My proposal is that we could add the arguments sensor positions, which should be a numpy array and sensor_types, which should be a list of str and we could have the set_montage take care of the appropriate transformation when set to True.
@Eric89GXL, what are your thoughts on this? this would essentially make the DigMontage do what a number of people desire it to do.

I don't use these functions so it's hard to know if this would make sense to people. @jona-sassenhagen do you use these functions? @choldgraf I saw you used them in some code?

@teonbrooks now I use read_montage with transform=True, and then read_dig_montage also with transform=True. This way the electrodes positions defined in read_montage and the fiducials positions defined in read_dig_montage are in the same space, so I can finally use mne coreg to create the Transformation matrix that put both into MRI space.
More than the fact that Montage object sets the electrodes positions and DigMontage sets only the fiducials (and elp, hpi, etc), the most confusing part to debug was the fact that transform is defaulted to False in read_montage and defaulted to True in read_dig_montage.
But it is true that if read_dig_montage is fixed to also set the electrodes positions, which will also be transformed into Neuromag space by default, it settles the problem.

@Eric89GXL which functions? DigMontage? I've never used them before (I'm a spoiled ecog brat so I haven't used much of the EEG/MEG API)

I am in the process of changing DigMontage to support channel dig. It already does to some extent. @choldgraf that's what you'll want to use instead of Montage

@Eric89GXL so after the changes, there will be only one call to read_dig_montage, and the info will have the channel locations and fiducials/head points all in the same space? This will be really good.

I think that this has been taken care of in the refactoring plus examples like:
https://mne.tools/dev/auto_tutorials/source-modeling/plot_eeg_mri_coords.html#sphx-glr-auto-tutorials-source-modeling-plot-eeg-mri-coords-py
Feel free to reopen if things are still not clear


1.2.4 does not load at all.

Hello
1.2.3 works fine.
http://i.imgur.com/Dxgm4g6.png
Does not produce any logs.
Win7x64. Antivirus and firewall do not interfere (checked).
If there's any other information I can provide, please ask.

Got the same problem. but 1.2.3 works well. I'm using Windows 10

Can either of you tell me if this revision crashes for you?
And if it does, does it have a log at all?
https://mega.nz/#!d5gjABqB!X6twWgCxCEi9i2YPSvZNuzrCicgFrVUaYJLSRduNcJ4

Hello
This one works. Thnx.

Thanks!
I will make sure this patch gets put in Afterbirth's version (it affects very few people)


TypeError: b.match is not a function

Just got a weird error,
A SCSS file I just tried to save is vscode when I did got the error
"TypeError: b.match is not a function" in the output.
Had a look through the file could not find anything that could be the issue.
If you want I can PM you the file.

Hello, @ryanbowden,
Sorry for this situation, but I think that is CSSComb bug. You can send file to<EMAIL_ADDRESS>

Hey @mrmlnc,
I have sent an email with the file that's an issue.

@ryanbowden,
Small question: you use useLatestCore option?

@mrmlnc
Nope i do not.

Well, 4.0.0-alpha have Error with this file:
TypeError: Cannot read property 'is' of null

Stable core works fine:

Found the issue, where we define a gradient we write this:
$experimental-support-for-svg: true;
Feel like it a bit of code copied in by mistake.
But once that was removed it worked, that line causes issue if you set a sort order and that's what i have in the config.
Cheers for the help.


Use future value of ManyToManyField to check if value would change

Problem
Issue #1270
How did you solve the problem?
Acceptance Criteria
No tests broke. Specific tests pending based on acceptance of the change.

Coverage increased (+0.003%) to 96.759% when pulling 132988ca405ea8c90a71337612a1341290c63818 on check-manytomany-changes into 8e6c0e6992fbf9c7b10e0aff491af27ec1cd9600 on master.

Looks good. It would be ideal to add a unit test which confirms the bug, and perhaps refer to the issue id in the comment?

@matthewhegarty you're right, I'll do some more work on it, moving to draft, thanks!

@matthewhegarty I've added tests. I noticed that this PR also modifies the API, so would be a candidate to merge along https://github.com/django-import-export/django-import-export/pull/1278

I noticed that this PR also modifies the API

Yes - it would probably affect a lot of users as well, because the skip_row() docstring recommends overriding the method.
I tried to think if there is anyway of achieving this without breaking the API, but couldn't think of a clean way.
I'm planning to modify #1278 to avoid breaking the API.

Any update on this issue? Still using the library from this branch 😬

Hi @matthewhegarty! I need these changes and the branch is now gone. Is it safe to start using release-3-x branch?

Hi @manelclos - yes it is a stable branch so you can use it for testing.


Simplify dubbo-common transitive dependencies

What is the purpose of the change
remove unuseful dependencies.
Brief changelog
dubbo-common/pom.xml
Verifying this change
mvn clean compile

fixes https://github.com/apache/dubbo/issues/5106

Codecov Report

Merging #5107 into 2.7.4-release will decrease coverage by 0.03%.
The diff coverage is 0%.

@@                 Coverage Diff                 @@
##             2.7.4-release    #5107      +/-   ##
===================================================
- Coverage            63.98%   63.95%   -0.04%
  Complexity             453      453
===================================================
  Files                  770      770
  Lines                33270    33270
  Branches              5250     5250
===================================================
- Hits                 21288    21278      -10
- Misses                9551     9563      +12
+ Partials              2431     2429       -2

Impacted Files
Coverage Δ
Complexity Δ

...n/serialize/support/SerializableClassRegistry.java
66.66% <ø> (ø)
0 <0> (ø)
:arrow_down:

...ter/support/apollo/ApolloDynamicConfiguration.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...ache/dubbo/remoting/transport/AbstractChannel.java
75% <0%> (-12.5%)
0% <0%> (ø)

...onfig/spring/extension/SpringExtensionFactory.java
70.73% <0%> (-7.32%)
0% <0%> (ø)

...ng/exchange/support/header/HeartbeatTimerTask.java
73.68% <0%> (-5.27%)
0% <0%> (ø)

...e/dubbo/remoting/transport/netty/NettyChannel.java
55.68% <0%> (-4.55%)
20% <0%> (-1%)

...ing/zookeeper/support/AbstractZookeeperClient.java
66.29% <0%> (-3.38%)
0% <0%> (ø)

...c/main/java/org/apache/dubbo/rpc/RpcException.java
80% <0%> (-3.34%)
0% <0%> (ø)

...pache/dubbo/registry/support/AbstractRegistry.java
78.54% <0%> (-1.54%)
0% <0%> (ø)

...he/dubbo/registry/zookeeper/ZookeeperRegistry.java
66.66% <0%> (-0.71%)
0% <0%> (ø)

... and 4 more

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 7f95cd5...954f622. Read the comment docs.


Event types

Currently, only a few event types are handled. We need to make a complete list and handle all of them.

All events from https://developer.mozilla.org/en-US/docs/Web/Events for html elements are now implemented. I don't think its an exhaustive list, but it'll do for now.


LLaVA support through API?

llama.cpp has LLaVA support for a while now

Supported since 0.2.9. Same API request format as OpenAI. See a few example models here: https://huggingface.co/collections/lmstudio-ai/vision-models-gguf-6577e1ce821f439498ced0c1
You need to download both a primary model and a vision adapter model.


run_raw_sql returns a list of lists

For some reason, even though run_raw_sql returns a List[LegacyRow] objects, when it is picked up by a downstream tasks, we get a Tuple[List[LegacyRow]] objects. We should investigate why this is happening and fix it.
Below is an example test that demonstrates the bug. I have tested this with simpler lists and taskflow API does not seem to have the same issue.
@pytest.mark.parametrize(
    "database_table_fixture",
    [
        {"database": Database.SNOWFLAKE},
        {"database": Database.BIGQUERY},
        {"database": Database.POSTGRES},
        {"database": Database.SQLITE},
        {"database": Database.REDSHIFT},
    ],
    indirect=True,
    ids=["snowflake", "bigquery", "postgresql", "sqlite", "redshift"],
)
def test_raw_sql(database_table_fixture, sample_dag):
    _, test_table = database_table_fixture

    @aql.run_raw_sql
    def raw_sql_query(my_input_table: Table, created_table: Table, num_rows: int):
        return "SELECT * FROM {{my_input_table}} LIMIT {{num_rows}}"

    @task
    def validate_raw_sql(cur: pd.DataFrame):
        from sqlalchemy.engine.row import LegacyRow

        # Note: It's a broken feature on the main branch that this is return in a list of lists. Problem reported here:
        for c in cur[0]:
            assert isinstance(c, LegacyRow)
        print(cur)

    with sample_dag:
        homes_file = aql.load_file(
            input_file=File(path=str(cwd) + "/../../../data/homes.csv"),
            output_table=test_table,
        )
        raw_sql_result = (
            raw_sql_query(
                my_input_table=homes_file,
                created_table=test_table,
                num_rows=5,
                handler=lambda cur: cur.fetchall(),
            ),
        )
        validate_raw_sql(raw_sql_result)
    test_utils.run_dag(sample_dag)

@danarothman Look like we you have an extra wrapping () over the response that you are getting run_raw_sql below test work as expected
@pytest.mark.parametrize(
    "database_table_fixture",
    [
        {"database": Database.SQLITE},
    ],
)
def test_raw_sql(database_table_fixture, sample_dag):
    @aql.run_raw_sql
    def raw_sql_query(my_input_table: Table, created_table: Table, num_rows: int):
        return "SELECT * FROM {{my_input_table}} LIMIT {{num_rows}}"

    @task
    def validate_raw_sql(cur):
        from sqlalchemy.engine.row import LegacyRow

        # Note: It's a broken feature on the main branch that this is return in a list of lists. Problem reported here:
        print("cursor type:", type(cur))
        for c in cur:
            assert isinstance(c, LegacyRow)
            print("type: ", type(c))
        print(cur)

    with sample_dag:
        homes_file = BaseTable(
            name="contacts",
            conn_id="sqlite_conn"
        )
        test_table = BaseTable(conn_id="sqlite_conn")
        raw_sql_result = raw_sql_query(
                my_input_table=homes_file,
                created_table=test_table,
                num_rows=5,
                handler=lambda cur: cur.fetchall(),
            )

        validate_raw_sql(raw_sql_result)
    test_utils.run_dag(sample_dag)

Logs
Process finished with exit code 0
[2022-11-02 11:34:38,903] {crypto.py:82} WARNING - empty cryptography key - values will not be stored encrypted.
PASSED            [100%][2022-11-02 11:34:39,087] {utils.py:225} INFO - dagrun id: h4qj5g2sa27qkhaw
[2022-11-02 11:34:39,093] {utils.py:242} INFO - created dagrun <DagRun h4qj5g2sa27qkhaw @ 2016-01-01T00:00:00+00:00: manual__2016-01-01T00:00:00+00:00, state:running, queued_at: None. externally triggered: False>
[2022-11-02 11:34:39,097] {utils.py:190} INFO - *****************************************************
[2022-11-02 11:34:39,097] {utils.py:194} INFO - Running task raw_sql_query
[2022-11-02 11:34:44,270] {taskinstance.py:1581} INFO - Exporting the following env vars:
AIRFLOW_CTX_DAG_OWNER=airflow
AIRFLOW_CTX_DAG_ID=h4qj5g2sa27qkhaw
AIRFLOW_CTX_TASK_ID=raw_sql_query
AIRFLOW_CTX_EXECUTION_DATE=2016-01-01T00:00:00+00:00
AIRFLOW_CTX_TRY_NUMBER=1
AIRFLOW_CTX_DAG_RUN_ID=manual__2016-01-01T00:00:00+00:00
[2022-11-02 11:34:44,272] {base.py:68} INFO - Using connection ID 'sqlite_conn' for task execution.
[2022-11-02 11:34:44,291] {base_decorator.py:125} INFO - Returning table TempTable(_name='', conn_id='sqlite_conn', metadata=Metadata(schema=None, database=None), columns=[], temp=True)
[2022-11-02 11:34:44,292] {base.py:68} INFO - Using connection ID 'sqlite_conn' for task execution.
[2022-11-02 11:34:44,293] {base.py:68} INFO - Using connection ID 'sqlite_conn' for task execution.
[2022-11-02 11:34:44,301] {base.py:68} INFO - Using connection ID 'sqlite_conn' for task execution.
[2022-11-02 11:34:44,302] {raw_sql.py:33} WARNING - Using `run_raw_sql` without `response_size` can result in excessive amount of data being recorded to the Airflow metadata database, leading to issues to the orchestration of tasks. It is possible to avoid this problem by either setting `response_size` to a small integer or by using a custom XCom backend.
Result =  <sqlalchemy.engine.cursor.LegacyCursorResult object at 0x125727a00>
Result type =  <class 'sqlalchemy.engine.cursor.LegacyCursorResult'>
response =  [(123, 'pankaj', 's', 'test@123', '1234567890')]
response type =  <class 'list'>
hello1
[2022-11-02 11:34:44,309] {taskinstance.py:1407} INFO - Marking task as SUCCESS. dag_id=h4qj5g2sa27qkhaw, task_id=raw_sql_query, execution_date=20160101T000000, start_date=, end_date=20221102T060444
[2022-11-02 11:34:44,316] {utils.py:198} INFO - raw_sql_query ran successfully!
[2022-11-02 11:34:44,316] {utils.py:203} INFO - *****************************************************
[2022-11-02 11:34:44,318] {utils.py:190} INFO - *****************************************************
[2022-11-02 11:34:44,318] {utils.py:194} INFO - Running task validate_raw_sql
[2022-11-02 11:34:49,335] {taskinstance.py:1581} INFO - Exporting the following env vars:
AIRFLOW_CTX_DAG_OWNER=airflow
AIRFLOW_CTX_DAG_ID=h4qj5g2sa27qkhaw
AIRFLOW_CTX_TASK_ID=validate_raw_sql
AIRFLOW_CTX_EXECUTION_DATE=2016-01-01T00:00:00+00:00
AIRFLOW_CTX_TRY_NUMBER=1
AIRFLOW_CTX_DAG_RUN_ID=manual__2016-01-01T00:00:00+00:00
cursor type: <class 'list'>
type:  <class 'sqlalchemy.engine.row.LegacyRow'>
[(123, 'pankaj', 's', 'test@123', '1234567890')]
[2022-11-02 11:34:49,335] {python.py:173} INFO - Done. Returned value was: None
[2022-11-02 11:34:49,336] {taskinstance.py:1407} INFO - Marking task as SUCCESS. dag_id=h4qj5g2sa27qkhaw, task_id=validate_raw_sql, execution_date=20160101T000000, start_date=, end_date=20221102T060449
[2022-11-02 11:34:49,339] {utils.py:198} INFO - validate_raw_sql ran successfully!
[2022-11-02 11:34:49,339] {utils.py:203} INFO - *****************************************************
[2022-11-02 11:34:49,340] {dagrun.py:567} INFO - Marking run <DagRun h4qj5g2sa27qkhaw @ 2016-01-01T00:00:00+00:00: manual__2016-01-01T00:00:00+00:00, state:running, queued_at: None. externally triggered: False> successful
[2022-11-02 11:34:49,341] {dagrun.py:612} INFO - DagRun Finished: dag_id=h4qj5g2sa27qkhaw, execution_date=2016-01-01T00:00:00+00:00, run_id=manual__2016-01-01T00:00:00+00:00, run_start_date=2016-01-01 00:00:00+00:00, run_end_date=2022-11-02 06:04:49.341056+00:00, run_duration=215762689.341056, state=success, external_trigger=False, run_type=manual, data_interval_start=2015-12-31T00:00:00+00:00, data_interval_end=2016-01-01T00:00:00+00:00, dag_hash=None
[2022-11-02 11:34:49,341] {dagrun.py:805} WARNING - Failed to record first_task_scheduling_delay metric:

Ohhhh good catch thank you!

Nice finding @pankajastro


TypeError: n is not a function

I have the following function:
@Composable
fun PersonName(name: String, color: String) {
    Span({
        style {
            fontWeight("bold")
            color(Color(color))
            property("border-bottom", "2px solid $color")
        }
    }) {
        Text("Person $name")
    }
}

When running with jsBrowserRun everything is okay.  However when deployed, I am getting an error:
TypeError: n is not a function

It's hard to tell exactly where it's coming from, but the line it highlights is fontWeight("bold")

replacing color(Color(color)) with property("color", color) fixes this error.  FWIW the value of color in my case is #c582da

We need a reproducible example with detailed steps to reproduce to deal with this.

I tried to reproduce the issue in your project, but it works fine.
The code:
@Composable
fun PersonName(name: String, color: String) {
    B({
        style {
            color(Color(color))
            property("border-bottom", "2px solid $color")
        }
    }) {
        Text("Person $name")
    }
}

Can you reproduce it constantly, or only with some extra steps/conditions?

What also helps is changing the name of a parameter:
fun PersonName(name: String, color: String) {

to
fun PersonName(name: String, textColor: String) {

It's rather a bug in k/js - it gets confused by the same of an extension function fun StyleScope.color and the parameter name color (which a minifed in release build to n)

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


(demo) Weave command

cc: @aviatesk and so that it doesn't disappear in the Slack abyss:
"""
    \\weave{
    ```julia
    # some Julia code ...
    ```
    }
A simple command to render/evaluate code in Weave.jl-like way.
"""
function lx_weave(com, _)
    content = Franklin.content(com.braces[1])
    lines = filter(!isempty, split(content, '\n'))
    header = first(lines)
    @assert header == "```julia"
    id = string("weave-cell-id-", hash(gensym()))
    lines[1] = string(header, ':', id)
    push!(lines, "\\show{$(id)}")
    return join(lines, '\n')
end

we could add that to the demos.

Thanks, what do you think of replacing the existing example of lx_* function with this ?
And now I would like to modiy lx_weave so that it doesn't remove line breaks within code chunk:
"""
    \\weave{
    ```julia
    # some Julia code ...
    ```
    }

A simple command to render and evaluate code chunk in Weave.jl-like way.
"""
function lx_weave(com, _)
    content = Franklin.content(com.braces[1])
    lines = split(content, '\n')
    Core.eval(Main, :(lines = $(lines)))

    i = findfirst(startswith("```julia"), lines)
    @assert !isnothing(i) "couldn't find Weave.jl header"
    lines = lines[i:end]

    header = first(lines)
    id = string("weave-cell-id-", hash(gensym()))
    lines[1] = string(header, ':', id)

    push!(lines, "\\show{$(id)}")

    return join(lines, '\n')
end

P.S. if you would like to change doc/demo by yourself, feel free to do so ! Of course I can try to do it by myself if you want though.

Thanks, what do you think of replacing the existing example of lx_* function with this ?

Maybe just add it below as a "non-dumb" example? I feel the current one is a bit silly but helps understand the key components without overwhelming the reader?
Thanks for this!


(ERROR): Unable to save Practice file. Empty data.

How can i fix this error?
2024-11-08 20:37:22 (ERROR): Unable to save Practice file. Empty data. (filename: 'c:\users . . . .  scoutknivez

It's not fatal. Usually that means, the game wasn't run enough time to record some practice data.

It's not fatal. Usually that means, the game wasn't run enough time to record some practice data.

Thank you!


s

Fixes or introduces:
Proposed Changes

Thanks for contributing!

Hey, can you update your PR using the example? Something like this is better;
### Gursimran Singh
- [![github-alt][github-img]](https://github.com/imgsingh)

Thanks for contributing :)


x509.SystemCertPool() can return nil,nil

What version of Go are you using (go version)?
1.8
What operating system and processor architecture are you using (go env)?
debian9 lxc (no certificates on the system) / amd64
What did you do?
https://play.golang.org/p/9uFYp2M6PT
What did you expect to see?
I expected to have either an error or an empty certPool
What did you see instead?
both CertPool and error are nil when there is no certificates found on the system
If you think this is the correct behavior maybe add a small warning in the documentation
Regards
Etienne

This only affects Unix and Plan9, all other operating systems will return an empty pool when no certificates are found from what I see.

As you can see,this is the output we get when we run it on a windows based system..
Here is the source code for  the function you used..
https://golang.org/src/crypto/x509/cert_pool.go?s=730:770#L22
there it is..
i hope u got the doubt.. if not please help me understand it using a suitable use case
Regards
Shreyas

@shreyas1996 Using SystemCertPool under Windows is issue #16736, see the issue description in #18609 for the basic problem with it unter windows. This issue is about a (nil, nil) return value under Unix (and Plan 9)

oh okay.. i will check that too
But as stated above by @champtar  used that function.. i thought maybe he/she was concerned as to why such an output was displayed when the expected one is different.
anyways,thanks for pointing it out @nussjustin


Db2 docker warning ADM4000W  A catalog cache overflow during build integration tests

Describe the bug
During the build, we see:
 2020-07-23T20:15:59.587930410Z MESSAGE : ADM4000W  A catalog cache overflow condition has occurred.  There is
db2_1          | 2020-07-23T20:15:59.587933710Z           no error but this indicates that the catalog cache has exceeded the
db2_1          | 2020-07-23T20:15:59.587937111Z           configured maximum size.  If this condition persists, you may want to
db2_1          | 2020-07-23T20:15:59.587940411Z           adjust the CATALOGCACHE_SZ DB configuration parameter.

This may be being triggered by the REOPT hint being used now for better search query performance. The Db2 containers don't have much memory, and our schema is quite large, so there might be competition for space between the catalog and package caches.
To Reproduce
Run an integration build
Expected behavior
Build should complete without this warning.
Additional context
Look out for this issue on larger systems to see if it is a bigger problem.

This warning is not new.  I do not think we should worry about it at this time.  It's a warning.

Reviewed as a team in a chat


Missing non admin function list_workspaces()

Describe the bug
Seems like there should be a list_workspaces() function that will list all workspaces that I have access to see.
This is referenced in the admin.list_workspaces() and references that there is a non admin version
admin.list_workspaces

Is this a missing function or did it get deleted?

The non-admin version of list_workspaces is in semantic link. I’m not recreating functions that already exist in semantic link so best to check there if you can’t find it in labs.
‘’’python
import sempy.fabric as fabric
fabric.list_workspaces()
‘’’

From: Mike Carlo @.>
Sent: Wednesday, October 16, 2024 7:36:23 AM
To: microsoft/semantic-link-labs @.>
Cc: Subscribed @.***>
Subject: [microsoft/semantic-link-labs] Missing non admin function list_workspaces() (Issue #213)
Describe the bug
Seems like there should be a list_workspaces() function that will list all workspaces that I have access to see.
This is referenced in the admin.list_workspaces() and references that there is a non admin version
admin.list_workspaceshttps://semantic-link-labs.readthedocs.io/en/latest/sempy_labs.admin.html#sempy_labs.admin.list_workspaces
image.png (view on web)https://github.com/user-attachments/assets/9830654e-cdaa-4656-9769-4ed4c3acf907
Is this a missing function or did it get deleted?
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/semantic-link-labs/issues/213, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHBQBNWJHTBCIXDYWMETUV3Z3X3NPAVCNFSM6AAAAABQAT2OGSVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU4TANRYGM2DSNY.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


Column metadata

See Extract Metadata About A Column Of A Table & Source Of Data In A Query Result.

We will do this if/when needed. We may need it for reverse engineering but it's not clear if that is an important scenario.


Some questions about the 9-axis IMU

Hi,@TiXiaoShan,Thank you for your great work!  I don't know why you have to use a 9-axis IMU,and the magnetometer in the IMU is not used in your code，Can you tell me the reason for using a 9-axis IMU instead of a 6-axis IMU?
Thank you very much!

The reason is that 9-axis IMU gives roll pitch yaw, which are used for LIO-SAM initialization. More descriptions can be found in readme (IMU requirement).

Thank you. I see！


Using with CoordinatorLayout

I'm trying to use the new CoordinatorLayout and have some bugs,
The views nested within AppBarLayout are turning invisible when i do any action on the list (swiping) and then try to scroll out and then back in.

Tested without the AdvancedRecyclerView and it still occur..


fix: [#4324] Explicit error logging inside jwtTokenExtractor in botframework-connector

Fixes # 4324
#minor
Description
This PR removes the unnecessary console.error statement in the jwtTokenExtractor class.
Specific Changes

Deleted console.error statement in the jwtTokenExtractor class. The try-catch block was no longer necessary either.

Testing
Here we can see the unit tests passing after the changes.

/promoted 4333


Add In-Field Figma UI Kit to Production

General flaws:

[ ] In-field green missing a label (is 00FE00) and dark mode blue is not the common dark mode blue in the palett but 009AD9 (old palette blue) and named Info

[ ] In-field palette is built so that the color HEX does not appear upon pointing at it. This would simplify reattaching

[ ] ALARMS, why is a foreign 0% color needed?

Unknown palette colors in following components:

[ ] ICONOGAPHY (check infield palette)
[ ] OVERVIEW PAGE

Very many Trimble palette colors indicated as HEX, disconnected from the palette:

[ ] DESIGN LANGUAGE
[ ] OVERVIEW PAGE
[ ] ACCORDIONS

Repetitive colors from different palettes (neutral vs neutrals) cluttering the properties:

[ ] x

Missing Property labels:

[ ] ALARMS, State is Property 1?

Missing dark mode variants/properties when using assets:

[ ] x

ASSET TEST PASSED:

[x] ACCORDIONS
[x] ALARMS


enableAudio enableVideo strange behaviour on Chrome

easyrtc.enableAudio(false);
easyrtc.enableVideo(false);
easyrtc.enableCamera(false);
easyrtc.enableMicrophone(false);
easyrtc.enableDataChannels(false);
easyrtc.enableAudioReceive(true);
easyrtc.enableVideoReceive(true);
with all these set i am trying to call  without sending my video and audio  a participant in a room who is currently streaming with both audio and video
call is auto accepted but its not calling the easyrtc.setStreamAcceptor function which gets the stream of the person who is on call.
it works on FF latest version but does not on Chrome latest version
but if i change
easyrtc.enableVideo(false);
easyrtc.enableCamera(false); to true
then its working but i dont want the other person on call receive the caller audio/vedio stream.
please help me . am i missing something?

I ha ve same problem into Electron  ( so its CHROME ) only on WINDOWS
setStreamAcceptor never get called

We don't support Electron pls provide Chromium version used by electron.
I do use NodeWebkit aka nwjs.io and it work for me from Chromium 34 to 72 (nwjs 0.36.2)

unable to reproduce, reopen with full sample, if still an issue.


⚠ Bofrost.at has degraded performance

In 1850dfa, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1710 ms

Resolved: Bofrost.at performance has improved in 0a19539 after 20 minutes.


Initial iOS Support and Example

Compiling this will require the top-of-tree version of Bazel, until it makes it into the released version in about a week.
To compile the iOS example, run the following command:
bazel build -c opt -s //tensorflow/examples/ios:ios-app-binary-cc --ios_sdk_version=9.2 --ios_cpu="arm64"
You will need to put your mobile provisioning certificate in tools/objc/default_provisioning_profile.mobileprovision, and the Inception v3 model file and labels in a data directory inside tensorflow/examples/ios/data, e.g.
ls tensorflow/examples/ios/data/
grace_hopper.jpg  imagenet_comp_graph_label_strings.txt tensorflow_inception_graph.pb

Jenkins, test this please.

@petewarden The failures still show bazel 0.2, are the new docker files not pushed out yet? Or did something go wrong with the bazel update? Or is this just a too old test?

@tensorflow-jenkins: test this please

This was a recent test, I need to debug what's going wrong on the Jenkins server. The install script does appear to be updated:
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/ci_build/install/install_bazel.sh

@tensorflow-jenkins: test this please

I just checked, and at least on the Mac, bazel 0.2.1 is definitely installed

You have the same error in linux build with 0.2.1 as well as on mac where is 0.2.0.
@martinwicke you have checked only mac0-slave, right?
@caisq can you upgrade bazel on mac1-slave, please?

Oh, right, I have only updated mac0-slave to 0.2.1.

I've installed the 0.2.1 binaries locally, and it seems like the fix we need didn't make it in, despite being in top-of-tree ahead of time! :( I'm following up with the Bazel team to find out what happened, and what we can do to fix this.

any updates on this patch?

We're currently blocked because the top-of-tree protobuf is broken, and we need that for iOS support. I'm working on fixing that right now.

I've been attempting to use this patch locally to see if I could manually work around the issues in protobuf. I've run into issues with Xcode 7 where object files built using the bazel cc_library rule can't be linked into an iOS simulator application due to metadata that's now being written into the object files. Going back to the bazel iOS example (http://bazel.io/docs/tutorial/ios-app.html) and adding some C++ code, I found that I was only able to get it to build properly if the C++ was added using an objc_library rule, not a cc_library rule.
I note that this patch currently only defines a cc_library rule for the tensorflow code. Does it also need to define an objc_library rule for the benefit of the simulator?

@petewarden is this PR still active or can it be closed?


Prestige Calling Cards missing default state - not selectable

Prestige Calling Cards are not clickable and therefore unable to be completed.
This is a regression caused by #111

Should be resolved now by #120

Fixed in #120


ERR: expected to read<PHONE_NUMBER> bytes but read<PHONE_NUMBER>

It seems that that ag fails due to malloc with a really weird error when it encounters big files. The issue should be easy to replicate, just assure you have a DVD ISO image in the search path.
ag version 1.0.2

Features:
  +jit +lzma +zlib

I'm seeing similar behavior on version 1.0.2 installed via Brew. The issue went away when I moved a 4.4GB file out of the search folder.

I'm seeing the same thing, and can confirm that this does not happen when I move large files out of the search folder.
ag version 1.0.2

Features:
  +jit +lzma +zlib

Same issue with ag version 1.0.2 installed from brew. Deliberately trying to search a large file though, so moving it out of the path is out of the question.

I would be more than happy to have a default behaviour that is not searching in big files at all. I think that in less than 1% of the cases someone wants for search text in a file bigger than 10MB.

@ssbarnea I disagree with the 1%. Searching through big files (eg. dump, logs and stuff) is more frequent than you might think.
Plus, the original issue is that ag fails when dealing with big files.

Getting the same error here with ag installed via homebrew. ag -V results are the same as @philip-wernersbach:
ag version 1.0.2

Features:
  +jit +lzma +zlib

Here's an example output from my $HOME directory:
ag -l silver
AUTHORS
ERR: expected to read<PHONE_NUMBER> bytes but read<PHONE_NUMBER>

Any chance this could be a result of also having rg installed?

Also using the brew installed version.
-> % ag -V
ag version 1.0.2

Features:
  +jit +lzma +zlib

Same thing when I ran it against my Downloads directory (where I had a bunch of log files I wanted to search). A coworker mentioned that this happens when run against directories with large files. I ended up using ripgrep for this situation instead, which had no issues.

can reproduce:
$ ag -c HIT access.log
ERR: expected to read<PHONE_NUMBER> bytes but read<PHONE_NUMBER>
$ ag -V
ag version 1.0.3

Features:
  +jit +lzma +zlib

Yeah, I installed it via brew to run on multi-gigabyte files and it immediately errored out.
$ ag --version
ag version 2.0.0

Features:
  +jit +lzma +zlib

Should I also add all those errors cause by broken symlinks, missing permissions or files that are sockets? Somehow I find those errors really useless:
ERR: Skipping ./.local/lib/python2.7/site-packages/site.py: Error fstat()ing file.
ERR: Skipping ./.local/lib/python2.7/site-packages/sitecustomize.py: Error fstat()ing file.
ERR: Skipping ./.ssh/cp/39798889478c51e2309e4fbfc2afb546dd35368c: Mode 49536 is not a file.
ERR: Skipping ./.ssh/cp/a6692ecdd90b1ba88984394e0605c4ae347e22f0: Mode 49536 is not a file.
ERR: Skipping ./bin/subl: Error fstat()ing file.
ERR: Skipping ./dotfiles/bin/subl: Error fstat()ing file.
ERR: expected to read<PHONE_NUMBER> bytes but read<PHONE_NUMBER>

Reading the source this problem only appears to show up whenever --no-mmap is set, which is the default on OSX. Running with --mmap 'fixes' the issue.
Also the error  is a bit misleading - the code looks like: ```c
off_t f_len = 0;
size_t bytes_read = read(fd, buf, f_len);
if ((off_t)bytes_read != f_len) {
die("expected to read %u bytes but read %u", f_len, bytes_read);
}

`%u` implies an int which maxes out at 4 bytes wide, but off_t and size_t (and ssize_t) are all 8 bytes wide on modern OSXen.

@ggreer

this is still an issue.  if what the man page says is still true:
--[no]mmap Toggle use of memory-mapped I/O. Defaults to true on platforms where mmap()  is  faster  than  read(). (All but macOS.)
then i think it would be better to be slower than to generate errors... what's the point of speed if it doesn't work?
$ ag -V
ag version 2.1.0

Features:
  +jit +lzma +zlib

Running with the -mmap flag fixed it for me, but that's kind of a workaround?

Throwing in 2 cents here.  The MAIN reason I use ag is for speed searching large amounts of files and large files.  So I'd say the use case is more like 100%.  Otherwise, we'd all just back to using grep.  P.s. I absolutely love the silver searcher!

I'll just mention that there is a tool called ripgrep (rg), and believe it or not, is actually faster than ag. It also has no issue looking through massive DB dumps, for example, which is why many of us are here reporting about this shortcoming. I had been using ag for years until I found rg. You guys should give it a try. I haven't looked back.
https://github.com/BurntSushi/ripgrep

I experienced the subject error using v2.1, and quickly found this thread and updated to v2.2.  The error has gone away, but now the search never completes in a timely maner like it used to.  I'm not sure what changed, I'm searching a really large git repository, and there is a 2G
find . -size +500000 -print -exec ls -lh {} ;
./.git/objects/pack/pack-c502cb0b2fcb5505e8ca0c1cdc3f77e134aa8eba.pack
-r--r--r--  1 me@here  heretoo   2.0G  6 Nov 12:23 ./.git/objects/pack/pack-c502cb0b2fcb5505e8ca0c1cdc3f77e134aa8eba.pack

On OSX, agreed v2.2 fixed this error, but now running a search seems much slower

@danemacmillan Thanks for mentioning rg, I'm switching over to that from ag. As of v2.2, ag's default performance on OSX is ridiculously slow, to the point I feel it's getting hung. I have to run it with --mmap flag to get it to return in an acceptable amount of time, whereas rg actually works.
Thanks!


[Spec] Implement Reshape:v1

Change DynReshape(v0) to Reshape(v1)
According to specification Reshape:v1 has no attributes - zero_flag was removed. However, Reshape:v1 should process data as  DynReshape:v0 with zero_flag=true (
0 in pattern means "copy the respective dimension of the input blob")

Quick comment before I dive in for a full review later: we will still need the zero_flag in v1, since this is needed for some frameworks.


Fix clang compilation

Removing unused functions in the compiler to fix the build under clang (and Mac)

Do we want to run a travis clang build ?

+1 to mandatory clang build...
On Fri, May 8, 2015, 5:19 PM Nicolas Noble<EMAIL_ADDRESS>wrote:

Do we want to run a travis clang build ?
—
Reply to this email directly or view it on GitHub
https://github.com/grpc/grpc/pull/1538#issuecomment-100397644.


Create P2PStateChannels.md

Project Abstract
Tech part of -
https://docs.google.com/document/d/1DcDFScgeXijnXSGuaa30uOnYNtRm_9OnAsM97igrSwA/
Grant level

[ ] Level 1:  Up to $10,000, 2 approvals
[ ] Level 2:  Up to $30,000, 3 approvals
[x] Level 3:  Unlimited, 5 approvals (for >$100k: Web3 Foundation Council approval)

Application Checklist

[x] The application template has been copied and aptly renamed (project_name.md).
[x] I have read the application guidelines.
[x] Payment details have been provided (Polkadot AssetHub (DOT, USDC & USDT) address in the application and bank details via email, if applicable).
[x] I understand that an agreed upon percentage of each milestone will be paid in vested DOT, to the Polkadot address listed in the application.
[x] I am aware that, in order to receive a grant, I (and the entity I represent) have to successfully complete a KYC/KYB check.
[x] The software delivered for this grant will be released under an open-source license specified in the application.
[x] The initial PR contains only one commit (squash and force-push if needed).
[x] The grant will only be announced once the first milestone has been accepted (see the announcement guidelines).
[ ] I prefer the discussion of this application to take place in a private Element/Matrix channel. My username is: @_______:matrix.org (change the homeserver if you use a different one)

Thanks for the application @lukastanisic99 very interesting tech indeed. My only question is, the milestone states, "Everything is done". Does this mean everything has already been implemented, or just that the milestone spreadsheet is finished?

@keeganquigley Well we did do a lot of the work already, but it's not complete and there's still a lot of work to be done and even later on maintaining and improving the system. The one milestone proposed was intended to be on completion of our V1 alpha and when everything is runnable. We could break it down further into smaller milestone that we can claim before the alpha if that's what you're referring.

@semuelle We're fine with taking 100% in DOT with 50% being vested over 2 years, if all the DOT goes through a vesting process then we'll have to do 50% DOT and 50% USDT. Before I update the doc, can you clarify can we chose the % of DOT that has to be vested (minimum 50%) or all DOT received has to be vested, forcing us to take a portion in stablecoin? Normally we wouldn't mind taking 100% in vested DOT, but we have immediate costs..

Hi @lukastanisic99. Thanks for the quick reply. Currently, we only offer payment in fiat and stablecoins beside the vested (!) DOT portion. I will check internally if we can make an exception, but for now I would suggest we continue with this information.

Ok I've modified the doc to make the Milestone more clear (could break it down further if needed), added the USDT address on Asset Hub (same as DOT) and added the DOT % and indicated that we're willing to take 100% in DOT with 50% vested if that's possible. Maybe better to not squash future modifications so it's easier to keep track what has changed?

Hey @keeganquigley sure. I'll come up with a milestone that includes a minimal feature set so It's still runnable, but doesn't have all the features. I'll update the proposal later today or tomorrow. On the retroactive part - we did do some things (in private repos), we can always ctrl+A, delete and start from 0. Regardless that's not the point, there's still a lot of work to be done, so we'll try a figure out today a minimal set that works and update the proposal to reflect that, so we can continue and move on.

Thanks @lukastanisic99 sounds good; you can always break it up and apply for subsequent grants down the line.

I've updated the proposal to be within budget and explained what's included in the milestone. Take a look and let me know what are the next steps.

Sounds good @lukastanisic99 thanks for the changes. I will go ahead and mark the application as ready for review so other committee members can comment.

@takahser I've merged your recommendations and clarified the section around FTE

@takahser
i) Replied to comments,
ii) Will transfer the milestone from the sheet to the doc today,
iii) Will also add the mandatory deliverables today,
iv) Sure if you want we can break them down just for your accounting needs, but as discussed above with @burdges not worth the extra development cost + time focusing on mini deliverables and claiming one by one - we'll break it down as you proposed, but they'll be claimed all together.
v) sure I'll add more details to deliverable descriptions that might be unclear

@takahser done

@takahser done :D

@takahser I've made the requested modifications. The milestones just implement parts of the protocol as described in detail in the document and discussed with @burdges

@keeganquigley I've sent you an email, but I guess I can also do it here - can we change the legal entity or can the KYC be on me, since the Swiss entity is not yet incorporated?

Hi @lukastanisic99 that's not an issue, but when there is no entity, all team members working on the grant need to complete KYC separately, from their own devices. If that's not an issue for your team, please use this link instead for KYC.
Thanks!

@lukastanisic99 sure no problem, but in this case could you please update the team name on the application?

@keeganquigley updated the doc + all shareholders completed KYC

Great thanks @lukastanisic99 I see it is pending now. Will let you know when we get a result, it can take up to three days but is usually faster.

Thanks @lukastanisic99 while waiting for KYB, could you also please add a Legal Entity section with the registered physical address as shown in the template? Thanks!

@keeganquigley done

@keeganquigley I've received an email that the KYB/KYC process in completed - double check on your end and let me know if there's anything else to do.

Thanks @lukastanisic99 I can confirm it passed, so now just waiting on the last two approvals. I pinged the committee again w/ the status update.

@semuelle and @PieWol can you take a look - we have 3/5 approvals

@laboon @SBalaguer @aeronbuchanan @rrtti @PieWol can anyone take a look and approve since we have 4/5 and want to finish this?

@lukastanisic99 I'm looking into it, should be able to provide feedback (if any) by end of day today.

@lukastanisic99 forgive me if I missed this from the long previous discussion, but where are you planning on deploying the smart contracts for the on-chain part?

@SBalaguer just to clarify, this is a public good SDK/framework to develop and deploy pure p2p state channels as described above. As such, we don't impose any restrictions on developers where they should deploy (nor could we if we wanted to - permissionless). The contracts can run in any EVM, so we assume most people would deploy their contracts to Moonbeam, Astar or any parachain that implements the EVM pallet (which many if not most already do).
We also designed it to be VM agnostic so it can later support the PVM, but too early to cover that now.

@SBalaguer just to clarify, this is a public good SDK/framework to develop and deploy pure p2p state channels as described above. As such, we don't impose any restrictions on developers where they should deploy (nor could we if we wanted to - permissionless). The contracts can run in any EVM, so we assume most people would deploy their contracts to Moonbeam, Astar or any parachain that implements the EVM pallet (which many if not most already do).
We also designed it to be VM agnostic so it can later support the PVM, but too early to cover that now.

Sorry for the double comment - seems github mobile glitched out

No worries at all @lukastanisic99, thanks for your answer. I'm looking forward to see how this develops! I strongly recommend ensuring compatibility with the PVM as stated on the comment.


Improve Tree View and Create Tree/Leaf UI

Same idea as #2, but for the other windows of the application.
The current WPF Views are placeholders -- basic xaml code to just be able to run the application. Modifying that to look like the old UI would be great. Any new ideas are welcome!

Creating a WPF page like the demo should be fairly easy.
Are you still actively working on this project?
Are the graphic that you had on the buttons in the project?
Let me know if you want the help.
I could also help with the other issue.

Hey, thanks for the help! I am not actively working on the project, but I'd like to keep improving it over time until it reaches a point where its ready to use out of the box. Building a great UI would be key to getting there :)
For the graphic on the buttons, I don't have the pictures on the project -- I was hoping to make buttons that look good enough so it doesn't need pictures 😆 but needed some help with the WPF.
It would be great to have your help on this and the other issue. Thanks a lot!

Is this issue accepts PR as hacktoberfest 2022, then I can give it a go, Can you please assign this task to me?

Is this issue accepts PR as hacktoberfest 2022, then I can give it a go, Can you please assign this task to me?

Hey @Hermes179
Sure! Will assign it to you :)


Preserve existing mask in nan_to_mask and use masked tables by default

I looked a bit more into #24 and the cause for new 0 values in the empty cells seemed to be that table_custom.Table.nan_to_mask() was setting the mask to True only where the existing values were nan, so the originally masked values were unmasked by the operation.
This ensures masked values are still masked after running nan_to_mask() and fixes #24.

All good!


Dark mode

Can we get a dark mode in the app? It could be a dark mode that you turn on in the app or better like it works on Instagram. Can we have that?

Just adding my endorsement of Dark Mode.

Done in 0.8.3


JSDoc @overloads on constructors don't capture class type parameters, can dictate their return type

Found from #55916.
Today if you try to write a generic constructor, captured type parameters fail to create a generic signature. Instead, the type parameter is effectively leaked and never instantiated.
/**
 * @template T
 */
class C {
    /**
     * @overload
     * @param {T} value
     */

    /**
     * @overload
     * @param {T} first
     * @param {T} second
     */

    /**
     * @param {T} first
     * @param {T} [second]
     */
    constructor(first, second) {
    }
}

const x = new C(123);
//              ~~~
// Argument of type 'number' is not assignable to parameter of type 'T'.
//  'T' could be instantiated with an arbitrary type which could be unrelated to 'number'.

const y = new C("hello", "world");
//              ~~~~~~~
// Argument of type 'string' is not assignable to parameter of type 'T'.
//  'T' could be instantiated with an arbitrary type which could be unrelated to 'string'.

The current-workaround is to write something like the following:
/**
 * @template T
 */
class C {
    /**
     * @template T
     * @overload
     * @param {T} value
     * @return {C<T>}
     */

    /**
     * @template T
     * @overload
     * @param {T} first
     * @param {T} second
     * @return {C<T>}
     */

    /**
     * @param {T} first
     * @param {T} [second]
     */
    constructor(first, second) {
    }
}

const x = new C(123);
//    ^?

const y = new C("hello", "world");
//    ^?

const y = new C(123, "hello");
//    ^?

Notice that here, each @overload must declare its own type parameters and return type.
We should decide if this is actually how we want @overload to work in JSDoc on constructor declarations.

I'll point out that in TS itself, construct signatures can't add more generic type parameters than their containing class.
It's an irregularity that overload signatures permit them in the JSDoc version.

Some extra notes on this topic:

Currently (for the workaround example), all of the type parameters seem to leak from the class and from the constructor overloads. So to get generic constructors working as expected with JSDocs, each type parameter for each overload has to be distinct (e.g., T1, T2, T3).
The workaround mentioned works perfectly during development. However, the generated .d.ts files are somehow invalid to TypeScript. Within the generated .d.ts file itself, I see the error: Cannot find name 'TYPE_PARAMETER'. So it seems the workaround may not work for production builds -- unless I'm missing something.

If people need to make sure that the generic type parameters have distinct constraints for each overload (which is my use case), then the workaround syntax might actually be desirable. Technically speaking, it's the constructor that's generic in each use case rather than the class itself. There are times when the constructor needs to behave differently depending on its inputs, but the constructor will produce the same API as an output regardless. In these cases, the class is technically not generic.
I know generic constructors aren't currently supported in TypeScript, but I think #40451 gives a compelling case for their use. They're technically already doable with interfaces. But the developer experience with interfaces is a little difficult since the JSDocs used to document the code end up being separated from the actual class definition. (JSDocs on the class that receives the constructor interface type are ignored. Only JSDocs on the interface type are acknowledged.)

(1) and (2) need to be tested in the fix for this bug.
Your thoughts on generic constructors would be good to have on #40451; JS isn't supposed to support generic constructors until TS does.

@sandersn For clarity, do you mean my thoughts on #40451 or @DanielRosenwasser's?

Added a comment to that issue just in case. I have time to write comments down now so I figured I'd just take advantage of the opportunity if that was the desire. :sweat_smile:

Oh, I meant it would be good to write down your thoughts from here, on #40451. Basically exactly what you did; sorry I was unclear.

I know I linked it in the other issue, but just in case the reference to my use case is needed here as well: https://github.com/enthusiastic-js/form-observer/blob/main/packages/core/FormObserver.js


CRUD operations on service

A user needs to be able to delete a service in a project that has been onboarded with the keptn CLI at an earlier point in time. When deleting a service that is managed by Keptn, we need to think about the effect on the deployed version of the service. Should we also delete the deployment or keep it?

Furthermore, for the Keptn Quality Gates use case it is necessary to create a service without providing a helm chart, just to have the folder structure in the configuration service to have an appropriate context for files.

Status - high prio:

[x] Create - Create service without helm chart (this is implemented here #1020)

Status - low prio:

[ ] Read - Get list of services
[ ] Update - TBD.
[ ] Delete - TBD.

Closing for now. RUD will be handled in a separate issue when the time comes.


Ignore fragments in schema caching. Fixes #233

If the URIs used in a $ref are absolute, but include fragments, then the fragment is not removed when the validator searches its cache to see what schemas are loaded, leading to duplication of schemas in the cache.
This code & test fixes that issue.

Good catch! But can we put the fix in absolutize_ref_uri, after ref_uri is assigned?
@RST-J Do you think we should roll this into the 2.5.1 release? (It gets my vote)

Yes, let's add this.

Cheers guys, glad to have helped!


add progress bar for predict_tile

Not sure this is necessary or not, but when I tried to make a prediction for a large tiff file, it will be better if I know the remaining time.

Regenerating travis build, github rate limit failed (no fault of the code), just an annoying facet of downloading the release model when building tests. An area of improvement to be more self-contained.

confirmed that tqdm is in requirements.txt, since it is already used for the download progress bar. Thanks for the PR, keep it coming.


Android 14 support?

I'm using scrpcy on an Android 14 machine and it didn't work.

Which scrcpy version? Which device?
What is the output in the console?

PS E:\tools\scrcpy-win64-v2.3.1> .\scrcpy.exe
scrcpy 2.3.1 https://github.com/Genymobile/scrcpy
INFO: ADB device found:
INFO:     --> (tcpip)    <IP_ADDRESS>:5555            device  AN14
E:\tools\scrcpy-win64-v2.3.1\scrcpy-server: 1 file pushed, 0 skipped. 62.1 MB/s (66007 bytes in 0.001s)
[server] INFO: Device: XXX (Android 14)
INFO: Renderer: direct3d

Try with another encoder: https://github.com/Genymobile/scrcpy/blob/master/doc/video.md#encoder


6.4.x

Can one of the admins verify this PR? Comment with 'ok to test' to start the build.

Can one of the admins verify this PR? Comment with 'ok to test' to start the build.

This was opened by mistake, closing.


query option add args 'typeName'

at useSingle， useMutil, useUpdate. useDelete, query option add args typeName，such as not need collection or collectionName... To reduce the introduction of collections

We will have to be cautious about __typename from graphql, maybe calling such fields graphqlTypeName or smth like that

New model in Vulcan NPM/Vulcan Next: we define Models, that are kind of lighter Collection. Models have a schema, but do not force you to have a corresponding mongo database or even to use graphql => you can spawn models on the fly without problem.
Passing typeName would be similar to working by reference : you need to maintain an object that maps the reference to their actual collection/model. We now tend to avoid this pattern, because it has the huge limitation of making dependencies between packages invisible and hard to manager. If you need to use a hook for a collection, it's normal that you import this collection.
One approach would be to export pre-made hooks in this case.


Brush.fill() doesn't respect p5 clipping

I didn't actually expect this to work, and maybe it's just too hard to do, but FYI: I created a clip mask using
beginClip()
drawSomeStuff()
endClip()

brush.push()
brush.noStroke()
brush.fill(fillColor, 100)
brush.bleed(0.3, "out")
brush.rect(0,0,width,height)
brush.noFill()
brush.pop()

I hoped the fill would respect the mask but it did not. Would be a nice to have, but I'll live if it doesn't happen. :) Thanks for the great library!

Hi @fridgebuzz
Indeed, that would be a bit complex to implement!
However you can clip with rectangles with brush.clip(clippingRegion) and brush.noClip()
There's some more info on the readme / docs
Hopefully that helps a bit


Email users password reset option

Make the "forgot password" process work.

password reset and email added


Only install Flink on primary master

The Flink init action currently installs Flink on all masters and attempts to start a YARN session on all masters. Because this default session is configured to consume all cluster resources, all but one of the master init actions hang indefinitely while trying to allocate containers.
This change only installs and runs Flink on the primary master.

Alternatively, we could install Flink on all masters, but only run the detached session from the primary one.

Alternatively, we could install Flink on all masters, but only run the detached session from the primary one.

I like this idea - it prevents any master from being a pet.

Done.

LGTM


(no commit message provided)

Can you please provide some information?

a title
Please follow the PR template before submitting the PR.

Not sure what the motivation for this PR was, possibly accidental?


feat: support idempotency

Description

Document Idempotency

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

[x] Not Applicable

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

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


Russian Peasant Multiplication algorithm

Aim

Implementation of Russian Peasant multiplication algorithm

Details

Multiplication of two numbers using bitwise operators

Programming language

[ ] C
[x] C++
[ ] Java
[ ] Python

@Sumanth2905 mention the language

@Amit366 Assign this to me in C++.

I would like to solve this in python


base.Dockerfile: Update virtualenv dependencies

It is possible that the virtualenv installed by the base image is old hence it also generates an environment with older tools. So before installing anything, we should update the virtualenv dependencies.

cc: @darrentu @annegeorge17

@surajssd could you point me to which vulnerabilities lead you to believe it could be venv that is old? But otherwise I understand the logic - just worried if it could introduce more vulnerabilities than we currently have


[$500] Text copied from Google Translate and then pasted in the composer is surrounded by backticks

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

Version Number: 1.3.90-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @Victor-Nyagudi
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1697964985031289
Action Performed:

Log into an account.
Open a chat report (start one with someone if you haven't yet).
Search for a word in another language e.g. "Welcome in Spanish" in Chrome or Safari.
Select the translation and copy it with "Cmd + C" on Mac or by long-pressing it and then choosing "Copy" on mobile.
Go back to the chat report and paste it in the composer using "Cmd + V" on Mac or by long pressing in the composer and choosing "Paste".

Expected Result:
Only the copied text is pasted in the composer.
Actual Result:
The text pasted is surrounded by 3 backticks on each side.
Workaround:
unknown
Platforms:

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

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

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/38435837/805c9c09-4068-49ed-9d24-bc29bd339a44

Android: mWeb Chrome

https://github.com/Expensify/App/assets/38435837/2498841f-bded-4cf6-ad26-26fcbdaf30bc

iOS: Native

https://github.com/Expensify/App/assets/38435837/2fbe4f40-ee4d-4540-b6ba-877cc7cf61a8

iOS: mWeb Safari

https://github.com/Expensify/App/assets/38435837/4e2b0297-62d7-4203-ab40-4e6f36d43700

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/38435837/b54c6696-07ea-44e2-af2d-68fed5e75f
https://github.com/Expensify/App/assets/38435837/e9a1c8be-10c6-454e-adf3-01bcba9bcbd137
https://github.com/Expensify/App/assets/38435837/7a733909-c60e-4dbc-ae17-df6f23d1f328

MacOS: Desktop

https://github.com/Expensify/App/assets/38435837/00a68eb5-e398-48eb-8cc2-f3efc0af7802

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~016b4a1e463ba8c6da
Upwork Job ID:<PHONE_NUMBER>338181120
Last Price Increase: 2023-10-31

Proposal
Please re-state the problem that we are trying to solve in this issue.
Text copied from Google Translate and then pasted in the composer is surrounded by backticks
What is the root cause of that problem?
When copying from Google Translate the text is not a plain text and it's a HTML template used by the Google Translate. Here's the result when copying the text from Google Translate:
<meta charset="utf-8" />
<pre
  class="tw-data-text tw-text-large tw-ta"
  data-placeholder="Tradução"
  id="tw-target-text-feminine"
  dir="ltr"
  style="
    unicode-bidi: isolate;
    font-size: 28px;
    line-height: 36px;
    background-color: rgb(248, 249, 250);
    border: none;
    padding: 2px 0.14em 2px 0px;
    position: relative;
    margin: -2px 0px;
    resize: none;
    font-family: inherit;
    overflow: hidden;
    text-align: left;
    width: 270px;
    white-space: pre-wrap;
    overflow-wrap: break-word;
    color: rgb(32, 33, 36);
    font-style: normal;
    font-variant-ligatures: normal;
    font-variant-caps: normal;
    font-weight: 400;
    letter-spacing: normal;
    orphans: 2;
    text-indent: 0px;
    text-transform: none;
    widows: 2;
    word-spacing: 0px;
    -webkit-text-stroke-width: 0px;
    text-decoration-thickness: initial;
    text-decoration-style: initial;
    text-decoration-color: initial;
  "
>bienvenida

When this text is pasted in the Composer component, the text is parsed using the method htmlToMarkdown from the class ExpensiMark, that will parse the text adding the surrounded backticks.
https://github.com/Expensify/App/blob/fe40f63532dd6bfb47355ef7110c0cfcb9af6624/src/components/Composer/index.js#L250-L256
What changes do you think we should make in order to solve the problem?
We should change the method handlePastedHTML to check if in the HTML text there is the text "lang=", is so, we'll use the method htmlToText, otherwise we'll continue using the htmlToMarkdown method.
What alternative solutions did you explore? (Optional)
N/A
POC
https://github.com/Expensify/App/assets/698363/2b6b2690-4a9c-4974-bedc-afde1e15e11f

Proposal
Updated

Proposal
Please re-state the problem that we are trying to solve in this issue.
The text copied from Google Translate will add backticks when pasted into the composer.
What is the root cause of that problem?
When the text is copied from Google Translate, it's copied as HTML with the following structure.
<meta charset="utf-8" />

Bonjour

With the pre tag being in there, when parsed by htmlToMarkdown here  it will return a Code block.
What changes do you think we should make in order to solve the problem?
We can follow the same pattern as in https://github.com/Expensify/App/blob/fe40f63532dd6bfb47355ef7110c0cfcb9af6624/src/components/Composer/index.js#L317-L322 that used for parsing pasted embeddedImages and parse the HTML pasted from a Google Translation like this using the domparser and look for tw-data-text class which is a consistent classname (stands for Translation Widget) to get its content.
if (pastedHTML.includes('tw-data-text')) {
   const parsedHTML = domparser.parseFromString(pastedHTML, TEXT_HTML);
   const textContent = parsedHTML.querySelector('.tw-data-text').textContent;

   handlePastedHTML(textContent);
   return;
}

What alternative solutions did you explore? (Optional)
N/A

Reviewing now

@alexpensify This issue happens only if we paste from google translate's output. If we copy from the input no issue is present.
I would question if this is even an issue? Can we check internally if we need to solve this? I would say Do nothing here.

Good catch, I will start a discussion and post the feedback. Thanks!

I reviewed more and agree that this is a weird edge case. I'm going to close.


[Pilot] Print error when failing to import tester

Checklist

[ ] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[ ] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[X] I've read the Contribution Guidelines
[X] I've updated the documentation if necessary.

Motivation and Context
Right now this fails silently. I was hitting errors due to being rate-limited and I had no way of knowing what was happening.

Description
I tested this by running it locally on my machine, where I was getting rate-limit errors.

Good idea. Can you think of any use cases where having output errors is not beneficial?
Also please take a look at the failing linter: https://circleci.com/gh/fastlane/fastlane/22921

I will fix the linter error.
I can't think of anything. The user has run a command that is supposed to import a list of testers. They expect it to work for all of them, or be able to find out when it failed for some of them, instead of failing silently.


fix: handle very tall and very wide tables

Handle very tall tables (greater than 50k) by chunking the rendering into pieces
Improve width adjustment by ensuring that all columns are adjusted if necessary

@W-16946299@
@W-16946304@

QA NOTES

🟢 Error is thrown on duplicate columns
🔴 iterm2 is flashing on the very-tall example:
🟢 terminal does not flash (and finishes much faster)
🔴 very-tall example never exits and fails with a JavaScript heap out of memory error

iterm2 and terminal

🟡 Seeing a strange render issue at the end of very-tall:
🔴 In iterm2 the screen is clearing an I cannot scroll up beyond ~60 rows

This only happens when the output is chunked, reducing very-tall to 10_000 works fine
This is not happening in Terminal

QA UPDATE

🟢 iterm2 no longer flashing
🟢 Exiting properly (no heap error)
🟡 Huh, now Terminal is taking much longer ~1m12s :zany_face:
🟢 Strange render is gone
🟢 Can scroll up in iterm2 now
🟢 Error is shown if printTables([{...}, {...}]) has over 50,000 records
🔴 printTables runs out of memory with 2 tables with 49_999

Not exactly sure where the threshold is... On my machine 15,000 worked and 24,000 failed.

import {printTables} from '../src/index.js'

const height = 49_999
const data = Array.from({length: height}, (_, i) => ({age: i, name: `Foo ${i}`}))

printTables([{
  columns: ['name', 'age'],
  data,
  headerOptions: {
    formatter: 'capitalCase',
  },
  horizontalAlignment: 'center',
  title: 'Very Tall 1',
  titleOptions: {bold: true},
},
{
  columns: ['name', 'age'],
  data,
  headerOptions: {
    formatter: 'capitalCase',
  },
  horizontalAlignment: 'center',
  title: 'Very Tall 2',
  titleOptions: {bold: true},
}])

QA UPDATE

🟢 Error shows when printTables is over 30k
🟢 2 tables render with 14,999 each
🟢 4 tables render with 7,500
🟢 Tables render side by side using maxWidth
🟢 Looks good!


villager inventory duplicates job items

when the (job) item is removed from the global job_inv and added to the villager's job inv, the item is not removed from the global job_inv. This is probably correct behavior.
when the item is removed from the villager's job inv to the global job_inv, it is duplicated.
the duplicate items are cleared from the global job_inv when the server is restarted.
job_inv.on_put() contains a commented-out line that, when uncommented, fixes the behavior.
--inv:remove_item(listname, stack)
stack:clear()

I believe I remember there being a way to lose jobs with that line in place, which is why I commented it out.
A better fix would probably be to check whether all jobs are within the inventory every now and then.
Maybe making them stackable and removing duplicates could be a good idea.

I believe I remember there being a way to lose jobs with that line in place, which is why I commented it out. A better fix would probably be to check whether all jobs are within the inventory every now and then. Maybe making them stackable and removing duplicates could be a good idea.

If you overwrite put and take function for the inventory or inventory list, items can be taken and returned without effect for items in the jobs inventory list.


Exclude messages from being sent to specified socket_id

Fixes https://github.com/stevegraham/slanger/issues/104
Socket Id was not being extracted from the API request payload correctly.

Nice, thanks!


Unnecessary highlight "in" and "var"

From @waderyan on September 16, 2016 20:28
From @longque on September 16, 2016 9:38

VSCode Version:1.5.2
OS Version:Windows 10
Language:Typescript

"in" in the next picture is highlighted, but it's unnecessary.
I have found a few bugs about highlight, so I think maybe there are or will be still other bugs about it.

Copied from original issue: Microsoft/vscode#12136
Copied from original issue: Microsoft/TypeScript#10956

From @waderyan on September 16, 2016 20:28
From @longque on September 16, 2016 9:55
It appeared again just now. But it's unnecessary highlight "var".

From @waderyan on September 16, 2016 20:28
@longque thank you for opening this issue. There are a number of fixes coming out soon around the out of the box grammar. Many have found the Atom JavaScript grammar as an excellent fix to these problems in the meantime.
As this issue falls on the TypeScript language service I am migrating the issue there.

Colorization issues are tracked in https://github.com/Microsoft/TypeScript-TmLanguage

Fixed by #257


Fixed Rift URDF

Added sensors
Fixed transform tree
Removed old meshes and xacro files
Added remaining meshes

The magic numbers 😭


feat: add color to inline code

To improve accessibility, a color is added to the inline code to create contrast with the rest of the content.

set color at beginning of file, in var

@carlosstenzel done

I would like to add line-height: 28px; throughout the page, as I feel the paragraphs are too close together.


hertz websocket segment fault when we used in few months ago

Describe the bug
It happened that our program crashed because of websocket 's segment-fault  when we used hertz websocket in our ci-test env.
A clear and concise description of what the bug is.
To Reproduce
It happened occasionally, with no stable reproduction.
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
no segment-fault when we use hertz websocket
A clear and concise description of what you expected to happen.
Screenshots

From this picture, it seems that happened in the inner side of hertz websokcet implementation.
If applicable, add screenshots to help explain your problem.
Hertz version:
hertz v0.7.1
Please provide the version of Hertz you are using.
Environment:
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/roy/.cache/go-build"
GOENV="/home/roy/.config/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/home/roy/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/roy/go"
GOPRIVATE=""
GOPROXY="https://goproxy.cn"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="go1.20.6"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/roy/project/go.mod"
GOWORK=""
CGO_CFLAGS="-I /home/roy/kvrocks/build/_deps/rocksdb-src/include"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-O2 -g"
CGO_FFLAGS="-O2 -g"
CGO_LDFLAGS="-L/home/roy/kvrocks/build/_deps/rocksdb-build -L/home/roy/kvrocks/build/_deps/zstd-src/lib -L/home/roy/kvrocks/build/_deps/lz4-src/lib -L/home/roy/kvrocks/build/_deps/snappy-build -lrocksdb -lstdc++ -lm -lz -lsnappy -llz4 -lzstd"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build3269662956=/tmp/go-build -gno-record-gcc-switches"
The output of go env.
Additional context
It seems that no segment-fault when we use the official gorilla/websocket.
I don't know that it is our bad use reason or Hertz Websocket bad implementation.
Add any other context about the problem here.

Maybe websocket connection hijack problem?

This can be caused by concurrent operations on conn

This can be caused by concurrent operations on conn

As I know, gorilla websocket is concurrently accessed safely. Did you mean that hertz hijack websocket conn is not safe for concurrent operation?

This can be caused by concurrent operations on conn

As I know, gorilla websocket is concurrently accessed safely. Did you mean that hertz hijack websocket conn is not safe for concurrent operation?
yes and maybe you can refer to https://www.cloudwego.io/docs/hertz/tutorials/basic-feature/protocol/websocket/#nohijackconnpool

here "h.NoHijackConnPool = true" in the official hertz doc, this is recommended conf in production to solve this concurrent problem?

here "h.NoHijackConnPool = true" in the official hertz doc, this is recommended conf in production to solve this concurrent problem?

No,just sending it to you to see.
The error reported here makes me think that the connection has been reclaimed, but the user is still holding a nil conn to write or read the data

here "h.NoHijackConnPool = true" in the official hertz doc, this is recommended conf in production to solve this concurrent problem?

No,just sending it to you to see.
The error reported here makes me think that the connection has been reclaimed, but the user is still holding a nil conn to write or read the data

Yes, I can't agree more. I know that was illegal memory address access problem a few months ago, but I  didn't have enough time to check the whole code of Hertz's implementation. So I throw our problems into the community If you have any suggestions. For the further discussion, you advise that we use hertz hijacked WS conn with lock?

直接中文了:  你是否可以检查自己的代码中有并发使用或者异步使用？或者尝试提供复现代码，这个问题没有收到过类似的反馈

不需要查看 hertz 的源码，因为同一个 conn 不是并发安全的，这是结论。

BTW, I read your official hertz doc carefully yesterday. I pay attention to this NoHijackConnPool conf, But I think there is little probability about it.
What I want to say,  are you sure that hertz websocket conn is not concurrent safety? em, ok, I got your answer just now.

对，我们使用中存在对hertz websocket conn的并发访问，在不同的goroutine

对，我们使用中存在对hertz websocket conn的并发访问，在不同的goroutine

目前看起来需要加锁

但是我看你们的chat example中貌似也是有在不同goroutine中存在对ws conn的并发访问情形，这个示例也是没有问题的吗？

我确定下

@xiaofan8421 Hertz 连接劫持时所使用的hijack conn是池化管理的，因此被劫持的连接在websocket中使用的时候，不支持异步操作（类似将连接传递到协程中这类都是不行的）
可以先j将 h.NoHijackConnPool =true 设置一下，上面的例子中，Upgrade 其实是一直执行，并没有异步。

这里先设置一下的意思是先显示设置一下h.NoHijackConnPool = true ，如果后续还是有，再改用带锁方案？
例子中Upgrade中是一直执行，但它的匿名函数里func(conn  *websocket.Conn){}分别在俩goroutine里执行没有影响吗，我们实际也是类似这样用的，但除了没有显示配NoHijackConnPool，不过chat example中也没配，除了echo那个example

@xiaofan8421 Hertz 连接劫持时所使用的hijack conn是池化管理的，因此被劫持的连接在websocket中使用的时候，不支持异步操作（类似将连接传递到协程中这类都是不行的） 可以先将 h.NoHijackConnPool =true 设置一下，上面的例子中，Upgrade 其实是一直执行，并没有异步。

@li-jin-gou  这里先设置一下的意思是先显示设置一下h.NoHijackConnPool = true ，如果后续还是有，再改用带锁方案？
例子中Upgrade中是一直执行，但它的匿名函数里func(conn  *websocket.Conn){}分别在俩goroutine里执行没有影响吗，我们实际也是类似这样用的，但除了没有显示配NoHijackConnPool，不过chat example中也没配，除了echo那个example

后续不会有加锁的方案，可以先设置观察一下
---Original---
From: @.>
Date: Wed, Dec 27, 2023 19:51 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [hertz-contrib/websocket] hertz websocket segment fault when weused in few months ago  (Issue #21)
这里先设置一下的意思是先显示设置一下h.NoHijackConnPool = true ，如果后续还是有，再改用带锁方案？
例子中Upgrade中是一直执行，但它的匿名函数里func(conn  *websocket.Conn){}分别在俩goroutine里执行没有影响吗，我们实际也是类似这样用的，但除了没有显示配NoHijackConnPool，不过chat example中也没配，除了echo那个example
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

可以如上先设置观察一下，因为报错看起来并不是并发问题，而是 rc 为 nil ，而能导致 rc 为 nil 的原因看起来是 conn 被回收了。
---Original---
From: @.>
Date: Wed, Dec 27, 2023 19:52 PM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [hertz-contrib/websocket] hertz websocket segment fault when weused in few months ago  (Issue #21)
@xiaofan8421 Hertz 连接劫持时所使用的hijack conn是池化管理的，因此被劫持的连接在websocket中使用的时候，不支持异步操作（类似将连接传递到协程中这类都是不行的） 可以先将 h.NoHijackConnPool =true 设置一下，上面的例子中，Upgrade 其实是一直执行，并没有异步。
@li-jin-gou  这里先设置一下的意思是先显示设置一下h.NoHijackConnPool = true ，如果后续还是有，再改用带锁方案？
例子中Upgrade中是一直执行，但它的匿名函数里func(conn  *websocket.Conn){}分别在俩goroutine里执行没有影响吗，我们实际也是类似这样用的，但除了没有显示配NoHijackConnPool，不过chat example中也没配，除了echo那个example
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

OK，找了下之前Ci测试时记录的case，这是另外多次中的一次断错误截图，貌似也是rc为nil

OK，找了下之前Ci测试时记录的case，这是另外多次中的一次断错误截图，貌似也是rc为nil

@xiaofan8421  OK


broken link in the examples README file

It is here
https://github.com/BlueBrain/BlueCelluLab/blob/main/examples/README.rst
There is a typo in here in the word "Stimulation"
   * - `Multiple-protocols.ipynb <7-Extra-Simutlation/Multiple-protocols.ipynb>`_
     - Simulating multiple protocols on a cell using previous examples

404 - page not found
The
main
branch of
BlueCelluLab
does not contain the path
examples/7-Extra-Simutlation/Multiple-protocols.ipynb.

fixed in https://github.com/BlueBrain/BlueCelluLab/pull/208


Support Meta upon adding new devices

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

9 of 9 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.9%) to 55.314%

Totals

Change from base Build<PHONE_NUMBER>:
0.9%

Covered Lines:
229

Relevant Lines:
414

💛  - Coveralls


Handling of single line function definitions

To avoid the practice of assigning lambda expressions to names, PEP 8 now includes the guideline "Always use a def statement instead of an assignment statement that binds a lambda expression directly to a name."
Currently, the PEP 8 approved style for single line functions definitions generates an error, but the disallowed style is accepted:
$ cat > foo.py
def f(): pass
f = lambda: None
$ pep8 foo.py
foo.py:1:8: E701 multiple statements on one line (colon)

It would be better if there was an exception to E701 for "def" statements, and a new rule to complain about having a lambda definition as the sole expression on the right hand side of an assignment statement.

FWIW lambdas with names are useful in tests, for instance when replacing methods with stubs (using pytest.monkeypatch and pretend.stub in my case).


The Day After Log4Shell

New Story
adds a new analytic story called Log4Shell CVE-2021-44228
New Analytics

Curl Download and Bash Execution
Wget Download and Bash Execution
Linux Java Spawning Shell
Windows Java Spawning Shell
Java Class File download by Java User Agent
Outbound Network Connection from Java Using Default Ports
Log4Shell JNDI Payload Injection Attempt
Log4Shell JNDI Payload Injection with Outbound Connection
Detect Outbound LDAP Traffic
Hunting for Log4Shell

Updated Analytics

Any PowerShell DownloadFile
CMD Carry Out String Command Parameter
Malicious PowerShell Process - Connect To Internet With Hidden Window

Other

updates to contentctl new  jinja template

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Wget Download and Bash Execution :x:

diskUsage:
runDuration: s
scanCount:

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Java Class File download by Java User Agent :x:

diskUsage:
runDuration: s
scanCount:

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Java Class File download by Java User Agent :white_check_mark:

diskUsage: 299008
runDuration: 1.576s
scanCount: 122

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Outbound Network Connection from Java Using Default Ports :x:

diskUsage: 294912
runDuration: 1.426s
scanCount: 84

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Outbound Network Connection from Java Using Default Ports :white_check_mark:

diskUsage: 303104
runDuration: 1.298s
scanCount: 85

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Log4Shell JNDI Payload Injection Attempt :white_check_mark:

diskUsage: 339968
runDuration: 1.613s
scanCount: 5

Detect Outbound LDAP Traffic : testing passed in this branch
https://github.com/splunk/security_content/pull/1888

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Wget Download and Bash Execution :x:

diskUsage: 520192
runDuration: 2.402s
scanCount: 1

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Wget Download and Bash Execution :x:

diskUsage: 409600
runDuration: 2.426s
scanCount: 1

This PR was created by Automated Detection Testing Service :robot:
Tested detections:
Hunting for Log4Shell :white_check_mark:

diskUsage: 405504
runDuration: 1.353s
scanCount: 87