'Appertizer' from docs is not working for gurobi

Hey,
the 'Appetizer' from https://entmoot.readthedocs.io/en/master/#appetizer is not working for gurobi and I get the following error message (I am using Gurobi Optimizer version 11.0.0):
Set parameter Username
Academic license - for non-commercial use only - expires 2024-12-06
Error reading LP format file /var/folders/sn/xxr4rfmj23100534fjn99hv80000gn/T/tmpyl586zz9.pyomo.lp at line 13
Malformed term in expression
Neighboring tokens: " np.float64(-0.2) x5 -1 x6 +1 x7 = "

Traceback (most recent call last):
  File "<stdin>", line 5, in <module>
  File "/Users/PaulKandora/opt/anaconda3/envs/cubo_py310/lib/python3.10/site-packages/pyomo/solvers/plugins/solvers/GUROBI_RUN.py", line 66, in gurobi_run
    model = read(model_file)
            ^^^^^^^^^^^^^^^^
  File "src/gurobipy/gurobi.pxi", line 3779, in gurobipy.read
  File "src/gurobipy/gurobi.pxi", line 117, in gurobipy.gurobi.read
gurobipy.GurobiError: Unable to read file
Traceback (most recent call last):
  File "/Users/PaulKandora/PyCharm_projects/cubo/competition/entmoot_test.py", line 30, in <module>
    res = opt_pyo.solve(enting)
  File "/Users/PaulKandora/opt/anaconda3/envs/cubo_py310/lib/python3.10/site-packages/entmoot/optimizers/pyomo_opt.py", line 114, in solve
    opt.solve(opt_model, tee=verbose)
  File "/Users/PaulKandora/opt/anaconda3/envs/cubo_py310/lib/python3.10/site-packages/pyomo/opt/base/solvers.py", line 627, in solve
    raise ApplicationError("Solver (%s) did not exit normally" % self.name)
pyomo.common.errors.ApplicationError: Solver (gurobi) did not exit normally
ERROR: Solver (gurobi) returned non-zero return code (1)
ERROR: See the solver log above for diagnostic information.

How can I resolve this issue ?
Thanks in advance and best regards,
Paul

Edit: I tried gurobipydirectly and it seems to work compared to pyomo


[GithubBrowserSample] DataBindingIdlingResource doesn't handle nested bindings

The DataBindingIdlingResource class is supposed to allow Espresso wait for the bindings to execute before proceeding with the tests. However, current implementation only handles top-level bindings of fragments (and, internally by data binding, child bindings referenced in those). However it doesn't seem to work for example for bindings that are part of the RecyclerView lists, since these views aren't direct views of fragments.
Modified implementation of method that finds bindings that works for me: I decided it's also not really required to look for all the fragments, rather entire view hierarchy. Or am I missing something?
/**
 * Find all bindings for views in the hierarchy
 */
private fun getBindings(): List<ViewDataBinding> {
    return activityTestRule.activity
        ?.findViewById<View>(android.R.id.content)
        ?.allChildren()
        ?.mapNotNull { view -> DataBindingUtil.getBinding<ViewDataBinding>(view) }
        .orEmpty()
}

private fun View.allChildren(): List<View> =
    if (this is ViewGroup) {
        listOf(this) + children.map { it.allChildren() }.flatten()
    } else {
        listOf(this)
    }

I'd issue a pull request with this but, but since I'd need to also modify the tests, which assume fragments (with only one view) I'd rather first open an issue to confirm this would be the proper approach.
I think even if it's not a problem in the sample, this solution is referenced e.g. here so it's worth making it robust for people who will copy it to their own projects.

We are looking for a generic solution for this or perhaps a way to automatically add bindings to Espresso as IRs.
In the testing codelab we use a version that looks at the fragment's children, but not the whole hierarchy either.

We are looking for a generic solution for this or perhaps a way to automatically add bindings to Espresso as IRs.

That would be nice. I suppose there's no ETA?
Other than that I'm curious, is there any advantage to inspecting fragments vs activity's content view, like I did? Seems like the sample in this repo missed child fragments case, and in any case both miss recycler items or bindings dynamically added to the views. Or maybe there's yet another case that I should keep in mind?

All updates will appear here https://github.com/android/android-test/issues/317
That's a question for @yigit or @ianhanniballake.

I've updated our DataBindingIdlingResource to take into account all bindings from the Fragment's entire view hierarchy.


[Question] websocket and nodered

Hello.
I would like to use ntfy for my home automation with nodered.
I manage to connect nodered via websocket but after a while there is a disconnection.
I think the problem comes from nodered because the socket still appears as connected, but it no longer receives data.
Has anyone already encountered the problem?
ntfy logs:
2022/12/09 21:31:35 DEBUG <IP_ADDRESS> HTTP GET /home_automation/ws?auth=XXXX Dispatching request
2022/12/09 21:31:35 DEBUG <IP_ADDRESS> HTTP GET /home_automation/ws?auth=XXXX WebSocket connection opened
2022/12/10 09:32:36 DEBUG <IP_ADDRESS> HTTP GET /home_automation/ws?auth=XXXX WebSocket connection closed
2022/12/10 09:32:36 DEBUG <IP_ADDRESS> HTTP GET /home_automation/ws?auth=XXXX WebSocket error (this error is okay, it happens a lot): read tcp <IP_ADDRESS>:80-><IP_ADDRESS>:55992: i/o timeout

nodered screenshot:

Regards,

If you set the log level to TRACE, you should see ntfy sending keepalive messages every 45s. That's supposed to keep the socket alive, and stop firewalls and other intermediaries from killing it.
That said, every software that keeps sockets open must deal with connection failures and retries. Sockets break, firewalls are rebooted, routers get congested. Lots of reasons why you must be able to deal with connection failures.
This does not seem to be a ntfy problem. You may also want to ask on the ntfy Discord/Matrix. Seems like a better place to ask this.


What permissions do the GitHub Actions need?

This GitHub Actions  uses the GITHUB_TOKEN. Can you please tell me what permissions are used for this token? If the permissions are only used in certain conditions, e.g. when a certain input is specified, please share that info as well.
At https://github.com/step-security/secure-workflows we are building a knowledge-base (KB) of permissions needed by different GitHub Actions. When developers try to remediate ossf/Scorecards checks, they use the knowledge-base to secure their GitHub Workflows.
Here is an example of how we store KB for an Action:
name: "GH Release"
github-token:
  action-input:
    input: github_token
    is-default: true
  permissions:
    contents: write
    contents-reason: to create GitHub release #Reference: https://github.com/softprops/action-gh-release/blob/fe9a9bd3295828558c7a3c004f23f3bf77d155b2/README.md?plain=1#L70

Releated Issue:
step-security/secure-workflows#270

Hi @h0x0er. Thanks for your message. You're right, the documentation is not up to date with that change. I'll try to update it ASAP. For the time being, I'd say that the only required permission is the read checks:
  permissions:
    checks: read

The only GH API call that it does is through Oktokit client's method check_runs_for_ref.
Feel free to create a PR with the missing documentation if you can :)


Setting state in lifecycle disables Recompose's "set state" functions

Consider the following test where we create a button and a message. Clicking on the button changes the message.
Initial State: The message renders to "HelloWorld"
Expected behaviour: Clicking the button changes the message to "HelloButton"
Actual behaviour: Clicking the button does not change the message.
Why use lifecycle componentDidMount? Lets say I want to async fetch data and populate the UI when the component mounts.
Here is the jest test:
import React from 'react';
import ReactDOM from 'react-dom';
import { compose, lifecycle, withHandlers, withState } from 'recompose';

import { configure, mount } from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';
configure({ adapter: new Adapter() });

const SimpleBtnMsgComp = compose(
  withState('message', 'setMessage', 'HelloStart'),
  lifecycle({
    componentDidMount() {
      this.setState({ message: 'HelloWorld' });
    },
  }),
  withHandlers({
    btnClick: ({ setMessage }) => event => {
      setMessage('HelloButton');
    },
  }),
)(({ message, btnClick }) => {
  return (

      <button id="btn1" onClick={btnClick}>
        Click Me!
      </button>

{message}

  );
});

test('SimpleBtnMsg changes the text after click', () => {
  const app = mount(<SimpleBtnMsgComp />);

  console.log(app.html());

  expect(app.find('#msg').text()).not.toEqual('HelloStart');
  expect(app.find('#msg').text()).toEqual('HelloWorld');

  app.find('button').simulate('click');

  console.log(app.html());

  expect(app.find('#msg').text()).toEqual('HelloButton');
});

Here is the output when run using jest:
 FAIL  src/__tests__/simpleBtnMsg.js
  ✕ SimpleBtnMsg changes the text after click (41ms)

  ● SimpleBtnMsg changes the text after click

    expect(received).toEqual(expected)

    Expected value to equal:
      "HelloButton"
    Received:
      "HelloWorld"

      42 |   console.log(app.html());
      43 |
    > 44 |   expect(app.find('#msg').text()).toEqual('HelloButton');
      45 | });
      46 |

      at Object.<anonymous> (src/__tests__/simpleBtnMsg.js:44:35)

  console.log src/__tests__/simpleBtnMsg.js:35

<button id="btn1">Click Me!</button>
HelloWorld

  console.log src/__tests__/simpleBtnMsg.js:42

<button id="btn1">Click Me!</button>
HelloWorld

Test Suites: 1 failed, 1 total
Tests:       1 failed, 1 total
Snapshots:   0 total
Time:        4.1s
Ran all test suites.
npm ERR! Test failed.  See above for more details.

Can anyone help explain this? Am I using lifecycle in the wrong way?

Have you tried to use
this.props.setMessage('HelloButton');

in your lifecycle instead of
this.setState({ message: 'HelloWorld' });

?
lifecycle expands the chain of HOCs, so functions defined with withState HOC are available in the props.

There is no need to use react classes if you use recompose, just use recompose correctly. As my colleague @krazov suggested before, you could have used this.props.setMessage. You should not interact with state the react way because you are using recompose.
I've made a small jsfiddle  you can play here: https://jsfiddle.net/r3ct0r/hzxkf5br/4/


free() target pointer is outside heap areas

Build tool used:

[ ] Arudino
[x] Platformio (Visual Studio Code plugin)
[ ] Platformio CLI
[ ] Other

Board used (ESP32/ESP8266/Arudino):

[ ] ESP8266-based
[x] ESP32-based

Other Libraries That are used:

Description of problem:
IMAP listen
> C: cleaning SSL connection
! E: connection closed
>IMAP listen failed
WiFi:F
Closing email session
      These functions are called here: {
         imap.closeSession();
         imap.empty();  [maybe this function should be internal to the closeSession() function?]
     }
Email client waiting to start. Core: 1
.......... [waits for WiFi connection here]
> C: ESP Mail Client v3.1.9
> C: connecting to IMAP server
> C: Host > imap.gmail.com
> C: Port > 993
> C: cleaning SSL connection

> C: SSL/TLS negotiation
> C: seeding the random number generator
> C: setting up the SSL/TLS structure
> C: loading CA cert
> C: setting hostname for TLS session
> C: perform the SSL/TLS handshake
! E: ERROR - Generic error
[11812384][E][ESP32_SSL_Client.cpp:63] _esp32_ssl_handle_error(): [connect_ssl():428]: (-1) ERROR - Generic error
[11812388][E][ESP32_WCS.cpp:227] connect(): ESP32_WCS Error: upgrade connection, -1
> C: cleaning SSL connection

assert failed: heap_caps_free heap_caps.c:360 (heap != NULL && "free() target pointer is outside heap areas")

Backtrace: 0x40083845:0x3ffb1eb0 0x4008e3d9:0x3ffb1ed0 0x400946a5:0x3ffb1ef0 0x40083d02:0x3ffb2020 0x400946d5:0x3ffb2040 0x400d3a03:0x3ffb2060 0x400d3a61:0x3ffb2080 0x400eaafd:0x3ffb20a0 0x400dbbee:0x3ffb20c0 0x400dbc96:0x3ffb20e0 0x400dc935:0x3ffb2100 0x400de435:0x3ffb2130 0x400de62a:0x3ffb2190 0x400e5b7c:0x3ffb21b0 0x400d5db6:0x3ffb21d0 0x400f54e1:0x3ffb2290

  #0  0x40083845:0x3ffb1eb0 in panic_abort at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/esp_system/panic.c:408
  #1  0x4008e3d9:0x3ffb1ed0 in esp_system_abort at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/esp_system/esp_system.c:137
  #2  0x400946a5:0x3ffb1ef0 in __assert_func at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/newlib/assert.c:85
  #3  0x40083d02:0x3ffb2020 in heap_caps_free at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/heap/heap_caps.c:360
      (inlined by) heap_caps_free at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/heap/heap_caps.c:345
  #4  0x400946d5:0x3ffb2040 in free at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/newlib/heap.c:39
  #5  0x400d3a03:0x3ffb2060 in MB_String::allocate(unsigned int, bool) at .pio/libdeps/esp32dev/ESP Mail Client/src/extras/MB_String.h:1705
  #6  0x400d3a61:0x3ffb2080 in MB_String::clear() at .pio/libdeps/esp32dev/ESP Mail Client/src/extras/MB_String.h:1211
  #7  0x400eaafd:0x3ffb20a0 in ESP32_TCP_Client::stop() at .pio/libdeps/esp32dev/ESP Mail Client/src/wcs/esp32/ESP32_TCP_Client.cpp:366
  #8  0x400dbbee:0x3ffb20c0 in ESP_Mail_Client::closeTCPSession(void*, bool) at .pio/libdeps/esp32dev/ESP Mail Client/src/ESP_Mail_Client.cpp:1597
      (inlined by) ESP_Mail_Client::closeTCPSession(void*, bool) at .pio/libdeps/esp32dev/ESP Mail Client/src/ESP_Mail_Client.cpp:1586
  #9  0x400dbc96:0x3ffb20e0 in ESP_Mail_Client::handleSMTPError(SMTPSession*, int, bool) at .pio/libdeps/esp32dev/ESP Mail Client/src/ESP_Mail_SMTP.h:1826
      (inlined by) ESP_Mail_Client::handleSMTPError(SMTPSession*, int, bool) at .pio/libdeps/esp32dev/ESP Mail Client/src/ESP_Mail_SMTP.h:1811
  #10 0x400dc935:0x3ffb2100 in ESP_Mail_Client::beginConnection(esp_mail_session_config_t*, void*, bool, bool) at .pio/libdeps/esp32dev/ESP Mail Client/src/ESP_Mail_Client.cpp:1255
  #11 0x400de435:0x3ffb2130 in IMAPSession::connect(bool&) at .pio/libdeps/esp32dev/ESP Mail Client/src/ESP_Mail_IMAP.h:4936
  #12 0x400de62a:0x3ffb2190 in IMAPSession::handleConnection(esp_mail_session_config_t*, esp_mail_imap_data_config_t*, bool&) at .pio/libdeps/esp32dev/ESP Mail Client/src/ESP_Mail_IMAP.h:4876
  #13 0x400e5b7c:0x3ffb21b0 in IMAPSession::connect(esp_mail_session_config_t*, esp_mail_imap_data_config_t*, bool) at .pio/libdeps/esp32dev/ESP Mail Client/src/ESP_Mail_IMAP.h:4668
  #14 0x400d5db6:0x3ffb21d0 in loop() at src/main.cpp:1751
  #15 0x400f54e1:0x3ffb2290 in loopTask(void*) at C:/Users/Name/.platformio/packages/framework-arduinoespressif32/cores/esp32/main.cpp:50

Share code snippet to reproduce the issue:
1 - Closing IMAP session upon WiFi connection loss.
2 - Manually reconnect to IMAP after WiFi is reconnected. (global imap session is reused)
If the internet connection (DSL) is not yet available the error occurs. (DNS is not possible but no DNS error is reported)
Additional information and things you've tried:

Shere your minimal and clear code here.

This is possible memory leaks mostly in your code and causes heap fragmentation as previous allocation memory was not freed.

Ok, I found the same bug and I will inform you soon for update.

The new version is available now. Please try it.

Don't just blaming everything here.
If you have issue, post your minimal code and explain it.

And why you post things that off topic here?


PYIC-2077: Audit User's IP Address in AuditEvent

Proposed changes
What changed

Get's the ip-address from the ip-address header, and add's it to the AuditEvent
This sends the parameter ip_address to the CI Storage Lambda's (Both put and get) so that the Client Source IP can be included as part of the AuditEvent (AuditUser).

Why did it change

To ensure we are Auditing the Client Source IP

Issue tracking

PYIC-2072

Checklists
Environment variables or secrets

[ ] No environment variables or secrets were added or changed

[ ] Documented in the README
[ ] Added to deployment repository
[ ] Added to local startup repository

Other considerations

[ ] Update README with any new instructions or tasks

Closing PR to rename branch to correct ticket


Update Overview.md

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/4113/
Test FAILed.

alluxio-bot, merge this please

alluxio-bot, cherry-pick this to master please


AdultLungElo - A spatial multi-omics atlas of the human lung reveals a novel immune cell survival niche

Primary Wrangler:
Wei Kheng Teh
Secondary Wrangler:

Associated files:
Paper: https://www.biorxiv.org/content/10.1101/2<IP_ADDRESS>0108v1
Ingest: https://contribute.data.humancellatlas.org/projects/detail?uuid=957261f7-2bd6-4358-a6ed-24ee080d5cfc
Google Drive: https://drive.google.com/drive/folders/1Ty3xrV-MEcjCDklpUHSC1Yna7pcvv699
Google Sheet: https://docs.google.com/spreadsheets/d/1skxc1GJovUgfn4Ugbm3zZiuzvOugEA0H/edit?usp=sharing&ouid=114069941208994528669&rtpof=true&sd=true
Key Events

[x] Send initial instructions about contributing, including questionnaire and T&Cs
[x] Receive project questionnaire
[x] Assign the Primary Wrangler
[ ] Receive T&C form filled out by at least 1 representative of group/project
[x] Send custom metadata template spreadsheet, how-to guide and directions for submitting data, matrix and cell annotation files.
[ ] Receive spreadsheet (to a sufficient standard to submit dataset)
[x] Receive data, matrix and cell annotation files (to a sufficient standard to submit dataset)
[x] Curate metadata spreadsheet with ontologies
[ ] Upload sheet to validate metadata
[ ] Run graph validator & Check linking
[ ] Validate data files
[ ] Ask the Secondary Wrangler for an end-to-end review of the project. Ask the Expertise Wrangler to review specific tabs if needed
[ ] Get final approval of submission from the contributor including release date, metadata spreadsheet and data files
[ ] Submit to production and inform ingest-devs the project is ready for archiving
[ ] Email UX to inform that they're ready to send survey

Please track the below as well as the key events:

Track date first spreadsheet received and final spreadsheet sent by editing ticket to include
date next to event.
Track spreadsheet iterations by placing asterisks next to receive spreadsheet event.
Track any metadata issues/tickets made for dataset with a bulleted list of links under
received spreadsheet event. Links should be to the ticket in the metadata repo.

Final Steps:

[ ] secondary review
[ ] export to HCA (after checking with Elo for publicity date)
[ ] archiving of Visium to ArrayExpress
[ ] archiving of data files and metadata via DSP to ENA

Had a meeting with contributors Elo and Peng together with @ESapenaVentura - Notes and Email sent out to the contributors here in this google doc: https://docs.google.com/document/d/1wJIjR55kWyGbcZ3FOK8BMOMCKkSMD6oMfcgYLt68mtA/edit

This is actually the ticket for the AdultLungElo project. This includes CBTM adult lung samples.

This is at a point where we are waiting for additional Visium metadata and for Elo to send a final annotated cell matrice.

Wei requires help to archive this dataset.

Needs:

secondary review
export to HCA (after checking with Elo for publicity date)
archiving of Visium to ArrayExpress
archiving of data files and metadata via DSP to ENA

@ami-day to secondary review.

Ami has secondary reviewed and given me feedback.

no publication date yet. might be private for now.

Elo confirmed that the data can be published

https://contribute.data.humancellatlas.org/submissions/detail?uuid=9e880501-55f3-442d-9908-efae1dac9be9&project=957261f7-2bd6-4358-a6ed-24ee080d5cfc

Stuck on metadata validating since yesterday, @prabh-t to help Wei to unstuck this, probably related to yesterday's problems with projects stuck

Prabhat says it's just a size issue - so will keep waiting on it.

Exported. Now needs archiving.

I am following this SOP: https://ebi-ait.github.io/hca-ebi-wrangler-central/SOPs/archiving_SOP.html#step-2-of-3---archiving-files-to-dsp
DSP archiving is stalled, I have created a DSP submission with the ingest submission UUID with a POST request (30th March, 2pm), but I receive 'null' when attempting to retrieve the DSP submission UUID via the ingest submission UUID.

@ke4 to try and help on this

Update required for export to the DCP that the curator is unspecified. Need to think about how this will work with the deleted processes!

The metadata entities of this project were updated with accessions. They also need to be submitted to DCP.

@Wkt8 if I understand you've already pushed this to DCP and archived it and now you're waiting for data to be in ENA and then update the DCP submission with the accessions. Correct?

needs minor update

to change 10x labels and
visium bulk cell?
add wei as curator
add cell count estimate
accession not showing up?

@amnonkhen or @MightyAx could you please set this dataset state from 'Archived' to 'Metadata Valid' so that I could edit and update it? Updates are not permitted in the 'Archived' metadata state.

@Wkt8 it is done.

Done it with curl request and rollout deployment of ingest-state-tracking. It looks OK now and the submission is in Metadata Valid status.

Update made, import form submitted, moving to done

In the exported state.

Meeting with Amanda to discuss as some analysis files need to be updated - see here: https://docs.google.com/document/d/1a5rjrLw3Al2EEWAqewkV-aZbmge0qERR0vQSd2i_VvY/edit

Spreadsheet updated and available here:
https://docs.google.com/spreadsheets/d/1skxc1GJovUgfn4Ugbm3zZiuzvOugEA0H/edit?usp=sharing&ouid=114069941208994528669&rtpof=true&sd=true
Remaining actions

[ ] Put new files into a hca-util upload area
[ ] Delete staging area
[ ] Check Nathan has deleted the terra staging area
[ ] Wait until the 'deleting submissions and adding new submissions' fix has been put into production
[ ] Delete existing submission from https://contribute.data.humancellatlas.org/projects/detail?uuid=957261f7-2bd6-4358-a6ed-24ee080d5cfc
[ ] Submit new submission
[ ] Export project
[ ] Submit export form
[ ] Notify downstream components
[ ] Notify Amanda Oliver<EMAIL_ADDRESS>[ ] Submit files to cellxgene

some files are stuck in validation --> ops ticket

Exporting!

@Wkt8 this is marked as release 21 in the manifest, can you change it to release 22?

yeah we need to change it oops

Verified on catalog dcp = 22. All good.

Making another update for publication links

now in graph validating

[ ] Exported
[ ] Submitted product import form

I can't see a reason for this Dataset to be open again and in Stalled. So I will close it. Does not seem to have any comments saying something is wrong with it.

Contributor asked to add the processed spaceranger output files both in HCA & in ArrayExpress.
They have provided the files here.
I've opened a ticket in ArrayExpress helpdesk to re-open the the submission, and I will update in HCA for the next release 36.

Uploaded the files through hca-util (upload area: 79e143e8-9e91-4afb-aa23-ac7ee7be46ae/) and sync designated to "Upload Area Location"

Updated new files though api but also previous files to upgrade to analysis_file 7.0.0 from 6.5.0.

Graph validated & hit export @ 18:26

Code for updating files through API

from hca_ingest.api.ingestapi import IngestApi
api = IngestApi(url="https://api.ingest.archive.data.humancellatlas.org/")
headers_json = {'Content-Type': 'application/json', 'Authorization': 'Bearer ' + token}
api.set_token(f"bearer {token}")
query = [{
"field": "content.describedBy",
"operator": "IS",
"value": "https://schema.humancellatlas.org/type/file/6.5.0/analysis_file"
},
{
"field": "project.id",
"operator": "IS",
"value": "61a7c1dcc7b79307bb4863b7"
}
]
json = {"content": {"describedBy": 'https://schema.humancellatlas.org/type/file/7.0.0/analysis_file'}}
analysis_files = api.post('https://api.ingest.archive.data.humancellatlas.org/files/query?operator=AND', json=query).json()
for old_file in analysis_files['_embedded']['files']:
json = {'content': old_file['content']}
json['content']['describedBy'] = 'https://schema.humancellatlas.org/type/file/7.0.0/analysis_file'
response = api.patch(old_file['_links']['self']['href'], headers=headers_json, json=json)
query = [{
"field": "content",
"operator": "IS",
"value": None
},
{
"field": "project.id",
"operator": "IS",
"value": "61a7c1dcc7b79307bb4863b7"
}
]
files_list = api.post('https://api.ingest.archive.data.humancellatlas.org/files/query?operator=AND', json=query).json()
for file in files_list['_embedded']['files']:
json = {"content": {
"describedBy": "https://schema.humancellatlas.org/type/file/7.0.0/analysis_file",
"schema_type": "file",
"file_core": {
"file_name": file['fileName'],
"format": "zip",
"content_description": [
{
"text": "gene expression matrix",
"ontology": "data:3112",
"ontology_label": "gene expression matrix"
}
],
"file_source": "Contributor"
},
"genome_assembly_version": "GRCh38"
}
}
response = api.patch(file['_links']['self']['href'], headers=headers_json, json=json)
if response.ok:
print(file['_links']['self']['href'])
else:
print("ERROR HERE " + file['_links']['self']['href'])
print(response.status_code)
break

AE opened the experiment for edits, and files were uploaded & assigned to samples. I added the peer-reviewed publication, too.
As per Silvie's guidelines, I re-submitted the experiment.
Once

[ ] the AE submission is processed without errors, and
[ ] the HCA submission is verified in the browser
I will close this ticket.

Verified in browser. Waiting for AE submission to be live before closing.

Problem in AE submission, needs re-upload of fastq files as well as the processed. Shared Silvie's guidelines with Krzysztof, and wait for them to upload.

Upload of data files completed. Project was validated and re-submitted and waiting for re-validation to complete update.

AE submission is now public. Update has been completed. Closing ticket.


Update app-services.md

Added a link to the samples page.

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot


The implementation of Hybrid Matching

Thanks for the great work.
I have read the paper and I think there is not enough detail about the implementation of hybrid matching. Or if there is, I could not understand it. Is it possible to elaborate it more, will it be analyzed in detail in the second version of the paper?
Thanks in advance
Esat

Hi, the hybrid matching is to match with both classification loss, mask loss, and box loss (add the three losses together). Therefore, it is simple and we do not elaborate on it. We also provide the experimental analysis of different matching strategies, you can refer to the ablation study for more details. Thank you.

Hi, the hybrid matching is to match with classification loss, mask loss, and box loss (add the three losses together). Therefore, it is simple and we do not elaborate on it. We also provide the experimental analysis of different matching strategies, you can refer to the ablation study for more details. Thank you.

Are mixing weights for box and mask matching matrices kept equal? It's not very clear from Table 12

Hey, we present these details in the appendix.

I did check the appendix of MaskDINO (before posting the comment and another time now), it has no mention of weights used for composing the final matching matrix. In fact, I could not find any discussion of hybrid matching in the appendix.
The only discussion of hybrid matching in the paper is 4.3 Ablation studies which just says: Matching. In Table 12, we show that only using boxes or masks to perform bipartite matching is not optimal in Mask DINO. A unified matching objective makes the optimization more consistent.. And Table 12 does not mention actual weights used for composing the final matching matrix, hence my question. I assume weights=1 were used, but it would be nice to have an explicit confirmation.
Here is this matching matrix construction from DeformableDETR codebase: https://github.com/fundamentalvision/Deformable-DETR/blob/main/models/matcher.py#L91. I'm wondering what are these cost_* weights in your case.

Sorry for the unclear description. In the appendix, we provide the loss function weights of different losses. The matching cost is the same as the loss weights.

Oh, that's interesting, because in DeformableDETR they are not the same at all. E.g. bbox_loss_coef==5, while cost_bbox==1


[Hub Generated] Review request for Microsoft.Portal to add version preview/2018-10-01-preview

If you are a MSFT employee you can view your work branch via this link.
Contribution checklist:

[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and have all been fixed in this PR.

Automation for azure-sdk-for-python

Automation for azure-sdk-for-go

Can one of the admins verify this patch?


Up to date how?

          Up to date how?

Originally posted by @rarkins in https://github.com/containerbase/.github/issues/6#issuecomment-947696496

...

.....


import caffe2 in jupyter just stuck

I'm using jupyter on my mac, I found that it would stuck there and there would be no response if I
ever execute
from caffe2.python import core, workspace

and jupyter would simply show
I can successfully execute this through my python command line.
Besides, I'm not using GPU support, and this problem happens in jupyter notebook. When I switch to jupyter console, it shows
/Users/xxx/Desktop/caffe2/caffe2/python/core.py in <module>()
     27 from six import binary_type, string_types, text_type
     28
---> 29 from caffe2.proto import caffe2_pb2
     30 from caffe2.python import scope, utils, workspace
     31 from caffe2.python.control_ops_grad import \

ImportError: cannot import name caffe2_pb2

@RunziiMo did you use the script
scripts/start_ipython_notebook.sh

to start Jupyter? Also make sure you activated your conda environment (if you used that) before running the script.

You could try to add the path to your caffe2 installation manually in your ipynb script like:
import sys
sys.path.append('/usr/local/caffe2/build')

import caffe2

I had the same issue in jupyter notebook (without conda), where caffe2 could be imported in the command line or other IDEs, but not within jupyter notebook, because some path variables were not set or loaded correctly.

@orionr I used that but it didn't work. And yeah I can successfully excute python -c 'from caffe2.python import core' 2>/dev/null && echo "Success" || echo "Failure" and it shows Success. Luckily, I solved import error problem now. But import caffe2.python.core still stuck.

@RunziiMo Could you please explain how you solve the import problem?

@nykabhishek I found I forget to add export PYTHONPATH=/usr/local:$PYTHONPATH to ~/.bash_profile. And I found that the install tutorial changed on caffe2.ai, I can now install caffe2 by Pre-Built Binaries on Mac. So I execute sudo rm -rf /usr/local/caffe* and reinstall by conda install -c caffe2 caffe2. And import problem solved.

Yeah even I figured it out. I had a typo in my PYTHONPATH. Maybe we can go ahead and close this issue.

@nykabhishek I build caffe2 from source. And I can successfully execute python -c 'from caffe2.python import core' 2>/dev/null && echo "Success" || echo "Failure"  and it shows Success. But when I execute python caffe2/python/operator_test/relu_op_test.py to test whether GPU support. It shows a caffe2_pb2 Import Error. So may I ask you how do you solve your caffe2_pb2 Import Error?


[hotfix][FLINK-27572] Harden HA meta checking logic

Improvements to FLINK-27572 based on some corner-cases we observed with @morhidi around turning HA on and off
Specifically it fixes:

Improves the isHaDataAvailable logic by checking both deployed and new configuration for HA enabled in addition to validating the configmaps. This is necessary to not detect garbage + make sure that HA data is actually used on restore
Records upgrade mode actually used for suspend into the status, this is important for 2 cases:

When switching from savepoint -> last-state + ha, we record savpeoint upgrade mode which eliminates HA data validation on restore
When upgrading an unhealthy job with savepoint mode (using ha + last-state) we record last-state in the status and actually check on recovery that the HA metadata is present

Tests have been improved to cover these cases

cc @morhidi @wangyang0918 @Aitozi

When switching from savepoint -> last-state + ha, we record savpeoint upgrade mode which eliminates HA data validation on restore

I think you mean we need to record savepoint upgrade mode when switching from stateless + non-ha -> last-state + ha here. For savepoint -> last-state + ha, we already record savepoint upgrade mode in the status. Right?

Thanks @wangyang0918 for the input, I removed the unnecessary redundant HA config checks, this made this change much simpler.


Use new Pester syntax: -Parameter for Pester tests in Microsoft.PowerShell.Management module.

PR Summary
Use new Pester syntax: -Parameter for Pester tests in Microsoft.PowerShell.Management module.
PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Change is not breaking
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: to the beginning of the title and remove the prefix when the PR is ready.

User-facing changes

[x] Not Applicable
OR
[ ] User-facing Documentation needed

[ ] Issue filed - Issue link:

Testing - New and feature

[ ] Not Applicable or can only be tested interactively
OR
[ ] Make sure you've added a new test if existing tests do not effectively test the code changed

[x] Add [feature] if the change is significant or affects feature tests

please resolve merge conflicts


Word Blanks!

First of all the challenge itself is not clear with poorly framed and confusing question. Despite reading multiple times I don't understand what the question expects. Can the FreeCodeCamp look after this question and change it?
https://www.freecodecamp.com/challenges/word-blanks
I saw few feedbacks asking to use the following: (but did not work)
result+= "My "+myAdjective+" "+myNoun+" "+myVerb+" very "+myAdverb+".";
So I used the following and it worked:
return ("The " + myAdjective + " " + myNoun + " " + myVerb + " " + myAdverb);
{note: you need to delete "return result" before executing}

Mind sharing which specific parts of the instructions and/or test cases weren't clear?

This challenge does come up in the HelpJavaScript chat regularly. Maybe it could benefit from an example in the instructions rather than an outbound link to the wikipedia page on Mad Libs (which I suspect people don't easily connect conceptually to the challenge).

I agree with @BKinahan on having an example. Usually the tests will give you an idea of what the sentence should look like. But this challenge's tests are very broad for someone not fully understanding the concept of a MadLib.
The instructions

You will also need to use additional strings, which will not change, and must be in between all of the provided words. The output should be a complete sentence.
We have provided a framework for testing your results with different words. The tests will run your function with several different inputs to make sure all of the provided words appear in the output, as well as your extra strings.

could also use some rewording. I feel like some of it is unnecessary to mention.

I'm really stuck here and the chat wasn't able to help. More ideas please. A little example is really necessary here I didn't even knew where to start.

People doesn't really pay attention to a description that much and those are the people mostly in help chat. They surely don't go to read some article on Wikipedia. Some example would be good, but it would also make it way too easy. Also check have to fail, if example is copied to code.

Word Blanks was the only one exercise that i didn't get well. Maybe a example would be great. But i still think the text needs to be change.

Would this make it easier to understand?

You will also need to use additional strings, which will not change, and must be in between all of the provided words. The output should be a complete sentence. See example of sentence below:
wordBlanks("people", "clouds", "go", "day");
This would output:
Some people are like clouds. When they go away, it's a brighter day.
Note: You will have to invent these unbolded words yourself and these will not change if bolded wordBlanks variables change.

Below is my suggestion for modifying the instructions (changes in bold):

We will now use our knowledge of strings to build a "Mad Libs" style word game we're calling "Word Blanks". You will create an (optionally humorous) "Fill in the Blanks" style sentence.
To do so, you will need to use string concatenation to build a new string, result, using the provided variables: myNoun, myAdjective, myVerb, and myAdverb that are passed to the function as parameters. Do not change the parameters in the function.
Include additional strings and spaces (which will not change) in-between the provided variables to make a complete sentence.
We have provided a framework for testing your results with different words. The tests will run your function with several different inputs to make sure all of the provided words appear in the output, as well as your extra strings.

I'm undecided on how I feel about including the example because I think it could lead campers to believe they need to change the parameters in the function.

@dhcodes have we previously defined "concatenation"? That is a pretty big scary word for someone who hasn't seen it before. Hence my use of the word "strings" instead. You could alternatively say "you will need to combine strings" which is clear and jargon free. Sure, campers should eventually get familiar with these jargon, but this probably isn't the best place to do so.
Also, "in between" is not hyphenated in American English.
As @Locheed pointed out, people don't usually read the description, and making the description even longer will make people even less likely to read it.
I suspect adding extra examples may be superior to adding so much additional description text.

Concatenation is previously introduced in the three consecutive challenges:

Concatenating Strings with Plus Operator
Concatenating Strings with the Plus Equals Operator
Constructing Strings with Variables

... all not long before Word Blanks in the Basic JavaScript section, and those challenges are often referenced in the HelpJavaScript chat when a user asks about Word Blanks.
I think the concatenation concept is sufficiently reinforced by this point (perhaps aside from cases where campers take a break from learning and then return to Word Blanks), and the true issue is that the challenge instructions assume either a cultural familiarity with the MadLibs game (which I have learned is not as widespread as I once thought!), or that users will scroll down far enough on the linked Wikipedia page to see an example of its fill-in-the-blanks structure.
I agree the instructions should include an example, but I'm not sure about the form it should take. Maybe showing the fill-in-the-blank structure directly will be clearer, and also provide a prompt to users who aren't in a creative enough mood to write their own sentence (a lot of solutions simply include the input variables concatenated with single spaces, for example, rather than adding any linking words).
Something like:

"The ______ ______ looked around ______ then ______ into the house"
These blanks would be filled in this order: (adjective) (noun) (adverb) (verb)

(As an aside @dhcodes "in-between" is sometimes used hyphenated, but only as an adjective (or a noun form of the adjective), eg "not quite awake or asleep, but in some in-between state", or "light, dark, and all the in-betweens." But it's correct that it should not be hyphenated in the way you use it 😄 The more you know ✨ )

Good points all around. The reason I recommended mentioning concatenation is my experience in the chat room where users who say they understand the instructions often say "I still don't know how to make the sentence" or "I don't know where to start" and mentioning concatenation usually sets them on the right path (if only as a search term to help trigger their memory). This does run of making the challenge too easy, though.

@dhcodes @BKinahan OK - thanks for pointing this out. Please go ahead and use concatenation then. I should have checked that before opening my mouth :)
I agree - @BKinahan's example text is great - I think it will go a long way toward clarifying what a mad lib is.

Sounds good. Let's change the instructions to something like this

We will now use our knowledge of strings to build a "Mad Libs" style word game we're calling "Word Blanks". You will create an (optionally humorous) "Fill in the Blanks" style sentence. Here's an example incomplete sentence.
"The ______ ______ looked around ______ then ______ into the house"

These four blanks would be filled in this order: (adjective) (noun) (adverb) (verb)
You will need to use string concatenation to build a new string, result, using the variables myNoun, myAdjective, myVerb, and myAdverb. These variables are passed to the function as parameters.  Don't change these parameter names in the function.
Include additional strings and spaces (which will not change) in between the provided variables to make a complete sentence.

If I'm missing anything from my synthesis, let me know 😄

Is someone working on this one, or can I try it?

@mtroiani go for it! Please first read the contributing guidelines before taking care of this issue. And feel free to visit the Contributors Help chat room if you have any questions about helping. We're there to help.

Took me a while but the in-betweeen/add-on words had to be spaced on both sides, right at the beginning quotation marks and before the end quotation marks for each added string.   I also agree that it wasn't quite clear with the instructions initially.

i'm confused about this question

var myNoun = "dog";
var myAdjective = "big";
var myVerb = "ran";
var myAdverb = "quickly";
// Only change code below this line
var wordBlanks = "My " + myAdjective + " " + myNoun + " " + myVerb + " " + myAdverb + ".";  // Change this line
// Only change code above this line

I believe it helps!


Allows to specify custom version table meta data

Introduction
I have a PostgreSQL database with many independent schemas where all schemas have similar database structure and new schemas can be created on the fly.
Since I am already using FluentMigrator in the project and have excellent experience with it I tried to use it to populate schemas but, unfortunately, it failed.
The problem and solution
In this scenario every schema can be interpreted as an independent database. Each schema should have its own VersionInfo table, so I can run FluentMigrator for every schema and get expected result. For PostgreSQL this can be achieved very easily by setting SearchPath in the connection string ("...;SearchPath=schema1") and all migrations should now be applied to this schema only (and VersionInfo table will be created there too).
Unfortunately the PostgreSQL backend has strange behavior to use "public" as the default replacement for unspecified schema names, it makes this scenario impossible.
I can solve this on the migrations level by setting ApplicationContext to a schema name and using it everywhere where a schema name is expected, e.g. Create.Table("test").InSchema((string)ApplicationContext). But there is no workaround for VersionInfo table, one can specify only static name for it via an object implementing IVersionTableMetaData interface which can only be instantiated from the assembly.
This patch allows to specify custom IVersionTableMetaData object via IRunnerContext. If the custom object is not set then old behavior is used (search for a class in the assembly).

@istaheev How about passing ApplicationContext to VersionTableMetaData ? would that solve the problem ? I know it's not passed at the moment but we could

@tommarien This approach might be even better, but to implement it we need to extend IVersionTableMetaData with ApplicationContext { get; set; } property which will be initialized by the VersionLoader class. This might break backward compatibility with existing user code using FluentMigrator.
Another drawback of this approach is that FluentMigrator doesn't support several VersionTableMetaData definitions per an assembly. I can run migrations from some namespace but I can't tell FluentMigrator to use VersionTableMetaData from same namespace. So, if I have special VersionTableMetaData which uses ApplicationContext to setup proper schema I can't use it for other migrations in the same assembly (which might have different requirements for ApplicationContext).
What do you think about this? I am new to FluentMigrator's internals and can miss something.

@tommarien Just got a thought that we can create another IVersionTableMetaDataAnotherExtendedVersion (by analogue with IVersionTableMetaDataExtended) with ApplicationContext { get; set; }, and check if VersionTableMetaData implements it to set proper application context. This will not break backward compatibility, but the solution looks ugly.

@istaheev Mmm, i see your point but again i feel documenting the change as breaking if you don't inherit from defaultversionmetadata seems ok too. If we document it...

@tommarien Ok, sounds good, I will try to implement it.

@istaheev Thanks and looking forward to the pull :)

@tommarien: I created another pull request with new changes. If you are ok with them you can reject this one.


bug fix firefox upload error unsupported media type

Closes #1063

This change is

Codecov Report

Merging #1064 (74e2471) into master (11b432d) will decrease coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1064      +/-   ##
==========================================
- Coverage   46.61%   46.58%   -0.04%
==========================================
  Files         158      158
  Lines       12718    12718
==========================================
- Hits         5929     5925       -4
- Misses       6036     6041       +5
+ Partials      753      752       -1

Impacted Files
Coverage Δ

config/logger.go
64.28% <0.00%> (-10.72%)
:arrow_down:

catalog/mvcc/cataloger_create_repository.go
62.96% <0.00%> (+3.70%)
:arrow_up:

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 11b432d...74e2471. Read the comment docs.


Single export format -> skip "choose export format" page

This is a improvement request.
Once I define in my admin class a formats field with a single format it doesn't make sense to ask user which format he wants to export data to. The page then contains a selectbox with only option so no need to ask user if there is no choice.

Believe this was fixed in a recent pr for 3.x. Don’t expect we will back port.
https://github.com/django-import-export/django-import-export/pull/1389

I believe the issue creator talked about an option for skipping the form page all together and start the export immediately which is also an option I was searching for. So this was not fixed with #1389 although this was an improvement so the user doesn't first have to select the only available option. But it makes not much sense to show a form that has only one possible choice to begin with.

FWIW we had a PR which skipped the confirmation screen during import, but it was never finished.

@trixn86 @im-n1 here's a workaround to skip the "choose export format" page:
from import_export.admin import ImportExportModelAdmin
from import_export.formats.base_formats import CSV

class BookAdmin(ImportExportModelAdmin):

    formats = [CSV]

    def export_action(self, request, *args, **kwargs):
        post = request.POST.copy() # Makes POST mutable
        post['file_format'] = '0'
        request.POST = post
        return super(BookAdmin, self).export_action(request, *args,**kwargs)

Preserves the existing logic in ExportMixin.export_action while improving UX.


🔒❄ Alpha feature freeze ❄🔒

After these issues:

#129
#127
#126
#106

and these PRs:

#130
#128
#125
#124
#123
#121
#101

are completed, we will only accept PRs and Issues relating to bugs/minor improvements to existing code. Any other submitted PRs will be closed!

It's beta time!


Gloss 2.0 support

Hi @spxrogers! I would like to know if you will add support for Gloss 2.0 soon? :)

hi @nbattelli—Gloss's 2 release is still a beta.1 version.
i've been hesitant to support beta releases, but this one is a Swift 4 compatibility release so I will likely try to match the support. stay tuned in the next few days.
i'll update this issue accordingly.

Hey any updates on this?

working on this now.

v3.0.0 is released with Swift 4, Gloss 2, and AF 4.5 support.
cheers.


Update README.md

Change

Id to name
Linked in profile to github page

You should modify this as well
https://github.com/j-marple-dev/model_compression/blob/master/.all-contributorsrc

@Ingenjoy @HSShin0 Please add up changes on this PR.


Have common script/template for install dotnet tool

https://github.com/Azure/azure-sdk-tools/pull/2181#issuecomment-954218667

You may have already fixed this with the work you did to move us forward to .NET 6.

You may have already fixed this with the work you did to move us forward to .NET 6.

Yeah, fixed by:

#5045


rubocop -a bug: Hash + comment

The following program:
def foo(opts = {})
  r = opts.merge({
    p1: opts[:a],
    p2: (opts[:b] || opts[:c]) # a comment
  })

  return r
end

converted to:
def foo(opts = {})
  r = opts.merge(    p1: opts[:a],
    p2: (opts[:b] || opts[:c]) # a comment)

  return r
end

I'm considering a generic solution that stops any auto-correct from creating files with syntax errors in them. Is that a good idea or not? Are we hiding bugs if we do it like that?

Errors are fine, I mean I found a couple in a large codebase and they were easy to fix .
I reported them to make the feature better and if you hide them you won't get that.

I'm considering a generic solution that stops any auto-correct from creating files with syntax errors in them. Is that a good idea or not? Are we hiding bugs if we do it like that?

We'll probably hide the bugs this way (would you report a ticket for something that's not causing you problems?). I think the current model works just fine - if something's wrong we have to correct it.

Good. I'll make a solution for this particular problem only.


worker: Fix typo breaking build

Go needs comma

Thanks closing https://github.com/livepeer/ai-worker/pull/326.


gzip: response headers lack transfer-encoding field when using http.FileServer to transfer file

for example
package main

import (
	"net/http"

	"github.com/streadway/handy/encoding"
)

func main() {
	http.Handle("/js/", encoding.Gzip(http.FileServer(http.Dir("public"))))
	http.ListenAndServe(":3000", nil)
}

test it with curl
curl -v --compressed http://localhost:3000/js/vendor/modernizr-2.8.3.min.js > /dev/null
* Hostname was NOT found in DNS cache
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 3000 (#0)
> GET /js/vendor/modernizr-2.8.3.min.js HTTP/1.1
> User-Agent: curl/7.35.0
> Host: localhost:3000
> Accept: */*
> Accept-Encoding: deflate, gzip
>
< HTTP/1.1 200 OK
< Accept-Ranges: bytes
< Content-Length: 15514
< Content-Type: application/javascript
< Date: Fri, 06 Mar 2015 20:47:06 GMT
< Last-Modified: Mon, 02 Feb 2015 11:08:36 GMT
<
{ [data not shown]
* transfer closed with 9204 bytes remaining to read
 40 15514   40  6310    0     0  23210      0 --:--:-- --:--:-- --:--:-- 23284
* Closing connection 0
curl: (18) transfer closed with 9204 bytes remaining to read

Transfer encoding is missing because FileServer calls WriteHeader (when ServeHTTP) which flushes all headers and prevents gzipWriter from settings its headers (at first Write call).
This is not the only problem here - the other is Content-Length value which http.FileServer sets as the size of the uncompressed file. HTTP client gets less bytes than expected and freaks out.
It can by fixed by setting headers before letting FileServer call ServeHTTP:
package main

import (
	"net/http"
	"github.com/streadway/handy/encoding"
)

func setHeaders(next http.Handler) http.Handler {
	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		w.Header().Set("Content-Encoding", "gzip")
		w.Header().Set("Transfer-Encoding", "chunked")
		next.ServeHTTP(w, r)
	})
}

func main() {
	http.Handle("/", encoding.Gzip(setHeaders(http.FileServer(http.Dir(".")))))
	http.ListenAndServe(":3000", nil)
}

This works because FileServer doesn't send Content-Length if Content-Encoding is specified.
I believe that encoding.gzip could play nice with FileServer but it would need to override WriteHeader method as well.


Remove redundant .trim()

The core library already calls .trim() on the env value before returning from getInput:
https://github.com/actions/toolkit/blob/432a78c48c941e90eedf7911ff0aa271bacad97b/packages/core/src/core.ts#L67-L75

Thank you @jmandel


Add CV plot

Added CV's to DDA_Quant UI.
Once merged, I will also sync these plots with the number of missing values selected in the slider. For the moment, there is no filtering. (not that I removed it; it was only implemented for the "Mean error between conditions" plot).

When reducing width the plots are overlapping:

@RobbinBouwmeester I fixed the issue of overlapping figures by passing use_container_width=True to plotly_chart


Fixed issue that handleScroll was called after destroy

I've had some issues when a handleScroll was pending, lazyload was destroyed and I scrolled just before errors showed up complaining settings where undefined.

Thank you very much for your help. Right now I'm at the nursery with my baby who just born... I'll check your pull request soon. Please wait some days :)

Congrats and enjoy the bambino! :baby: :smiley:

Done!


[android] 'Feedback/rate message' on Search screen - Should not appear right away

Tested on FrostWire 1.9.9-build-450
The feedback message is showing off right away when launching the app and there is a 'logic' behind that is not working since the message should appear after using the app for a while.
Reported by @Paulinka

This should be fixed with https://github.com/frostwire/frostwire/commit/28e6c4fbb75e3ff3a67ec8e75f2e73b5ba42c872

Not getting the rate message when installing FW from scratch, only when launching the app and a prior version was installed.


Update dav4-dasv4-series.md

Doc updates to meet Gartner requirements for Live Migration and PHU support by VM size. Trying the 'Proposed file change' workflow for the General purpose sizes this week and will proceed with updates to all other SKUs early next.

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

Hi @leoncyril - You appear to be internal to Microsoft. Microsoft authors and contributors need to make content contributions through the private repository so the content can be staged and validated by the current validation rules.
After you review staging and fix all validation issues, you can add the sign-off comment to let PR reviewers know that the updates are ready to be merged.
For more information, see Should I work in a private or a public repo?
If you need help getting set up to work in the private repo, see Set up Git repository locally for documentation.
Would you create a pull request in the private repo to make these updates?


Styling and UI changes [work in progress]

Saw your post on Twitter and would love to add some style and UI changes!
How about something in this direction:

excluded the menu to add it to the header and footer
header is like this on all subpages now (easier navigation)
moved the map to full width (why not use the space)
inline search field + button
move "add bench" to the header to its visible everywhere

Attention
I've currently only added the style file since I've made some changes to the PHP files in order to make it work on my machine. I have to clean those up before pushing them.
Just wanted to get your opinion on the layout first!

This is great!
Love the clear header and the wider map.
I'd rather keep GitHub & Twitter etc to just be in the footer. I don't think any links need to be in the header.
I think the search button looks better under the search field - but happy to give it a go.
Carry on making changes - I'll probably push it live this weekend.

Thanks for the quick feedback! I'll continue to work on it and do some more tweaks!

twitter/github items to the bottom and as an icon
removed + from footer add bench (looks better)

The reason for the search button change: the other two buttons can used without the input field; only the search button is connected so I've wanted to make a visual connection too.

Search page:

search field to the top, makes pager buttons stick out more
moved all search variantes into searchForm, so they are consistent on all pages with searchForm
max text length of 300 charactes and then add .... Most people will go to the details page anyway, so why display all in the results
item text won't go under image now, cleaner look.
number inside li

Feel free to check and review it now!
If you'll want any changes I'm happy to merge them in.


Implement dynamically generating flakes with options

E.g. option to include LSP.
opt. to specify a shell for nix develop.
opt. to include tree-sitter, gcc ... for neovim.
opt. to specify version of technology.
more...

a lot of work and makes the program unnecessary complicated.

a lot of work and makes the program unnecessary complicated.


Format ObjC comment docs as Cocoadocs

Part of #2853.
CC @nathanielmanistaatgoogle as alternative reviewer, as this is mostly a Python script.

First pass through Python file complete.

PTAL.

Python portion of this pull request looks satisfactory to me. There's a lot that we could do to improve and polish it, but since it's a utility script and not actually part of production gRPC code I'm not sure that I'd want to put you through all the fuss.


[BUGFIX] Fix invalid cross-device link on linux devices And Fix exec.Command exit status 1

What this PR is changing or adding?
This PR is handle 2 issues when running
gowebly create

first issue is error
rename /tmp/2062722012 go.mod: invalid cross-device link

second issue is error
cmd: can't execute command 'npm [install]'

Before/after or any other screenshots
Before
issue 1

issue 2

After

Useful resources

https://github.com/krakend/krakend-flexibleconfig/pull/8 and https://gist.github.com/r0l1/92462b38df26839a3ca324697c8cba04 => for first issue
https://stackoverflow.com/questions/10385551/get-exit-code-go => for second issue

Which issues are fixed by this PR?

#2

Pre-launch Checklist

[x] I have read and fully accepted project's code of conduct.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation and/or comments to the code.
[x] All existing and new tests are passing successfully.

@afasari can you please try on your machine this commit: #01664ac?

Hi, @afasari
I think I've realized the reason for this error. Please try this commit on your machine: 8b661b4

I think I've realized the reason for this error. Please try this commit on your machine: eaedc1e

Everything worked for me.
Linux fedora-38.

Hi, @afasari
I think I've realized the reason for this error. Please try this commit on your machine: eaedc1e

Thank you, this works well on my machine

and the package.json is not empty right now

everything is clear


Emcumbered not giving clumsy 1

As per rules, the emcumbered condition should give the character the clumsy 1 conditions. That's not happening

The emcumbered condition is working properly. the problem was my translation module that translated the clumsy condition to ptbr so the emcumbered condition couldn't find any clumsy condition to give


Fix Override and add constants

Make sure that:

[ ] You have read the contribution guidelines.
[ ] You submit test cases (unit or integration tests) that back your changes.
[ ] Your local test passed mvn clean install -Dmaven.javadoc.skip=true.

现在CI没过，请检查下，或者本地install 能通过


refactor: allow config to pass extra fields

What I did

fixes: #534
https://github.com/ApeWorX/ape/issues/534
How I did it
How to verify it
Checklist

[ ] Passes all linting checks (pre-commit and CI jobs)
[ ] New test cases have been added and are passing
[ ] Documentation has been updated
[ ] PR title follows Conventional Commit standard (will be automatically included in the changelog)

I was able to use this with ape-fantom and get some stuff working for me, however I had one bug:
https://github.com/ApeWorX/ape/pull/537/files#diff-006c1d861ec6abe5c7a1135384957b5da1a101f56bb4fb991624988449b9d345R147
changed to ecosystem_config.get(self.network.name) because it is __root__: dict


ClientContext.get_current() in SP.js generates the wrong URL

Category

[ ] Question
[ ] Typo
[X] Bug
[ ] Additional article idea

Expected or Desired Behavior
When using JSOM on a team site, created when creating an O365 Group (via the OWA UI), I expect JSOM to work. Specifically I expect that a call to SP.ClientContext.get_current() generates a usable URL, so one can use the JSOM methods.
Observed Behavior
When adding Web Parts or extensions that use the JSOM (for instance if you want to use the term store) on a team site (coming from an O365 Group) the URL in SP.ClientContext.get_current() is calculated the wrong way. Instead of having the internal url of https.//tenant.sharepoint.com/sites/abc it gets a URL like this https://tenant.sharepoint - as you can see without the .com part. So when JSOM tries to call _api/contextinfo it will throw a 404 error.
However it will work if you go to a site page or similar so the URL ends in https://tenant.sharepoint.com/sites/abc/SitePages/Home.aspx it works as expected.
Steps to Reproduce

Create a O365 Group through the OWA web UI or a Modern Teams site
Go to the site
Paste the following code into the web browser developer toolbar (mimicing what's done in a web part)

_spComponentLoader.loadScript('/_layouts/15/init.js',{globalExportsName: '$_global_init' }).then( () => {
    _spComponentLoader.loadScript('/_layouts/15/MicrosoftAjax.js',{globalExportsName: 'Sys' }).then( () => {
        _spComponentLoader.loadScript('/_layouts/15/SP.Runtime.js',{globalExportsName: 'SP' }).then( () =>  {
            _spComponentLoader.loadScript('/_layouts/15/SP.js',{globalExportsName: 'SP' }).then ( () => {
                console.log('This is the URL:' + window.location.href);
                console.log('This is NOT the URL:' + SP.ClientContext.get_current().$u_0)
            });
        })
    })
})

Example of output.

running into the same issue with 1.4.1, a webpart using MMS (using JSOM because we don't have a REST API ;) ), tenant version 16.0.7625.1209. Let me know if you need additional data

I have had the same problem with this, using JSOM to connect to Term Store. Everything works out fine on a sitepage url. But with faulty internal url:s it does not seem to be an easy fix with a refreshed context to get around this problem? Does someone have an idea of build a workaround until resolved?

@VesaJuvonen  - any updates on this bug?

@VesaJuvonen ??

I found a workaround for this: if the url doesn't contain the page, create a context with the current site:
//----workaround
var clientContext = window.location.pathname.indexOf('.aspx') > -1 && SP.ClientContext.get_current() || new SP.ClientContext(window.location.pathname);
//----test
var targetWeb = clientContext.get_web();
clientContext.load(targetWeb);
clientContext.executeQueryAsync(()=> console.log(targetWeb));

It is not great but it does the job until the bug is fixed.

@Rafaelki worked like a charm! Thanks

@wictorwilen Does this code work with partial navigation? When the partial navigation occurs it seems webpart code runs before the url updates. If you try to read the path you end up with the url of the page you were previously on, and not the one you are navigating to.

@VesaJuvonen Is there any update on this issue? We are running into problems with Office UI Fabric components that show the same error. And those cannot be easily fixed without forking and modifying them :(

We're getting the same error in our customers' tenancies.
I've had a quick look at SP.debug.js...
Here's the snippet for get_current():
    SP.ClientContext.get_current = function SP_ClientContext$get_current() {
        if (!SP.ClientContext.$2F) {
            var $v_0 = null;
            var $v_1 = window._spPageContextInfo;
            var $v_2 = false;
            if ($v_1) {
                $v_0 = $v_1.webServerRelativeUrl;
            }
            if (SP.ScriptUtility.isNullOrEmptyString($v_0)) {
                $v_0 = window.location.pathname;
                var $v_3 = $v_0.indexOf('?');
                if ($v_3 > 0) {
                    $v_0 = $v_0.substr(0, $v_3);
                }
                $v_3 = $v_0.indexOf('#');
                if ($v_3 > 0) {
                    $v_0 = $v_0.substr(0, $v_3);
                }
                var $v_4 = false;
                var $v_5 = $v_0.toLowerCase();
                var $v_6 = ['/_layouts', '/_vti_bin'];
                for (var $v_7 = 0; $v_7 < $v_6.length; $v_7++) {
                    $v_3 = $v_5.indexOf($v_6[$v_7]);
                    if ($v_3 > 0) {
                        $v_0 = $v_0.substr(0, $v_3);
                        $v_4 = true;
                        break;
                    }
                }
                if (!$v_4) {
                    $v_3 = $v_0.lastIndexOf('.');
                    if ($v_3 > 0) {
                        $v_0 = $v_0.substr(0, $v_3);
                    }
                }
                $v_2 = true;
            }
            SP.ClientContext.$2F = new SP.ClientContext($v_0);
            SP.ClientContext.$2F.set_isPageUrl($v_2);
        }
        return SP.ClientContext.$2F;
    };

Presuming the page is being served from: https://contoso.sharepoint.com/sites/mycollection/sitepages/home.aspx, but made a homepage so that the actual URL in the browser is https://contoso.sharepoint.com/sites/mycollection
...it seems to be this bit that goes wrong:
       if (!$v_4) {
            $v_3 = $v_0.lastIndexOf('.');
            if ($v_3 > 0) {
                $v_0 = $v_0.substr(0, $v_3);
            }
        }

On entry into that block, $v_0 will still be "https://contoso.sharepoint.com/sites/mycollection".
The last index of "." will be just before the ".com", thus breaking the URL. (Of course, if Microsoft were to register a new .sharepoint TLD, that would be awesome...)
Assuming there's not going to be a .sharepoint TLD... then we should probably use window.location.pathname instead.
Swap:
    if (SP.ScriptUtility.isNullOrEmptyString($v_0)) {
        $v_0 = window.location.href;

for:
    if (SP.ScriptUtility.isNullOrEmptyString($v_0)) {
        $v_0 = window.location.pathname;

Any updates on this one?
Cheers!
Joel

Apparently using a new SP.ClientContext() is preferred , and get_Current() is not.


Could we make CI tests available locally?

Could we make as many tests as possible available locally, so that a developer can invoke make test to test through locally?

I think the script is available in tests/Jenkins/run_all.sh
On 2017年3月7日, at 06:33, Jencir Lee<EMAIL_ADDRESS>wrote:
Could we make as many tests as possible available locally, so that a developer can invoke make test to test through locally?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Adapt DNS settings and Google search console settings for new page

Goal
Set the new docs page live with the corresponding DNS entries and customize the google search console so that it crawls the correct page(s).
DoD

new page should be served at https://keptn.sh
new page should be the default page to be crawled by Google

this is done


ARROW-10416: [R] Support Tables in Flight

In addition to the feature described in the title, this PR

renames push_data() to flight_put() and adds an overwrite argument to optionally check for the existence of a flight with the the same name
adds list_flights() and flight_path_exists() to see available resources
adds tests for the flight bindings, run if the demo flight server is found to be running (managing that process and/or running this in CI is deferred)
adds r_to_py and py_to_r methods for Schema objects; this fixes an issue where schema metadata was lost when converting Python/R due to the indirect way that Tables are passed

Passing build on my fork: https://github.com/nealrichardson/arrow/actions/runs/451112536


bytes() on empty response body throws Exception

Describe the Bug
A clear and concise description of what the bug is.
Expected behavior
Return empty byte array
Screenshots / Logs
Exception in thread "main" java.lang.NullPointerException
	at org.javawebstack.httpclient.HTTPRequest.readAll(HTTPRequest.java:261)
	at org.javawebstack.httpclient.HTTPRequest.execute(HTTPRequest.java:236)
	at org.javawebstack.httpclient.HTTPRequest.status(HTTPRequest.java:139)

Environment Information:

Java Language Level 8
Version 1.0.0

Fixed in f9c8f48396cb68d2728f1cb5fd3d4e63df6a9888


Update Code of Conduct

Made the last sentence uniform wrt other sentences

Dup of #120.

@feiskyer, Sorry by mistake the duplicate PR had got raised.


Login takes time

Thank you for the software!
Is it normal that it takes many attempts to connect?

Sorry not to have answered earlier.
I have no idea, as I have stopped working on the repo (changed my BMS and setup).


gallery: Add interface

Just for fun Quick & Dirty interface for gallery. Basically just copied imageconverter.html and added some Util.writeStorage()/Util.eraseStorage()

@bruceblore FYI

Thanks - that's great! Definitely what this needed :)


orchid:install not working for 14.14 on laravel 10.10

Describe the bug
I tried to install orchid platform in a fresh laravel project but it is stuck on "php artisan orchid:install" step. Screenshot attached below
To Reproduce
Steps to reproduce the behavior:

follow the installation procedures mentioned in the docs upto the step where to run "php artisan orchid:install"

Expected behavior
I expected the orchid template to be installed.
Screenshots

Desktop (please complete the following information):

OS: Windows 11 Pro (version 22H2 - build 22621.2361)
Browser: chrome (Version 117.0.5938.132)

Server (please complete the following information):

Platfrom Version: [14.14.0]
Laravel Version: [10.10]
PHP Version:  [8.1]
Database:  [MySql]
Database Version:  [8.0.30]

Before running the command, make sure that you have properly configured the database connection. You can specify these settings in the ".env" file (usually starting with "DB_") and ensure that they are correctly filled.
Once you have checked and updated the ".env" file, retry the installation process.

It works with proper configuration! My configuration was bad! @tabuna


Add viewport preset command, make default viewport size explicit

Changes:

Added a command for setting the viewport according to popular devices, using a lowercase hyphenated string, e.g. iphone-se
Added the default viewport size to cypress.json

@Cameronjpr I think this is a good example command to add to the repo, but maybe we could remove the default viewport size from cypress.json and just do nothing (or trigger cy.viewport() with no arguments, which would achieve the same result as it currently does) if a matching preset isn't found? We could maybe include a log message that informs users that they haven't used a valid preset.

I've undone the changes to cypress.json as there's no need to explicitly set environment variables to their default values, but otherwise this is a good addition to make. LGTM 👍


GB can't crosscompile to 386 archs?

Hello,
I am trying to use this Dockerfile: https://github.com/agonzalezro/gb-cross/blob/master/Dockerfile to crosscompile gb projects.
It works completely fine with amd64 binaries. I managed to compile it for linux, darwin and freebsd. But every time that I try to compile for 386 archs, I get this error:
/usr/src/go/pkg/tool/linux_amd64/6g: cannot use 6g with GOARCH=386
Same container, with go build works. Example:
$ docker run -e GOOS=darwin -e GOARCH=386 -it agonzalezro/gb-cross /bin/bash
root@50e260d010b8:/tmp# gb build
cmd/test
/usr/src/go/pkg/tool/linux_amd64/6g: cannot use 6g with GOARCH=386
FATAL command "build" failed: # /usr/src/go/pkg/tool/linux_amd64/6g -p cmd/test -pack -o /tmp/gb272266032/cmd/test/main.a -I /tmp/gb272266032 -I /tmp/pkg/darwin/386 -complete src/cmd/test/main.go: exit status 1

root@50e260d010b8:/tmp# cd src/cmd/test/;go build;ls;cd -
main.go  test
/tmp

root@50e260d010b8:/tmp# file src/cmd/test/test
src/cmd/test/test: Mach-O i386 executable

As you can see, the second command works and a binary called test is created.
Do you think that this is a bug with gb itself? If not, please, do let me know.

Sorry, cross compilation is still on the backlog
On Fri, 26 Jun 2015 08:43 Alexandre González<EMAIL_ADDRESS>wrote:

Hello,
I am trying to use this Dockerfile:
https://github.com/agonzalezro/gb-cross/blob/master/Dockerfile to
crosscompile gb projects.
It works completely fine with amd64 binaries. I managed to compile it for
linux, darwin and freebsd. But every time that I try to compile for 386
archs, I get this error:
/usr/src/go/pkg/tool/linux_amd64/6g: cannot use 6g with GOARCH=386
Same container, with go build works. Example:
$ docker run -e GOOS=darwin -e GOARCH=386 -it agonzalezro/gb-cross /bin/bash
root@50e260d010b8:/tmp# gb build
cmd/test
/usr/src/go/pkg/tool/linux_amd64/6g: cannot use 6g with GOARCH=386
FATAL command "build" failed: # /usr/src/go/pkg/tool/linux_amd64/6g -p cmd/test -pack -o /tmp/gb272266032/cmd/test/main.a -I /tmp/gb272266032 -I /tmp/pkg/darwin/386 -complete src/cmd/test/main.go: exit status 1
root@50e260d010b8:/tmp# cd src/cmd/test/;go build;ls;cd -
main.go  test
/tmp
root@50e260d010b8:/tmp# file src/cmd/test/test
src/cmd/test/test: Mach-O i386 executable
As you can see, the second command works and a binary called test is
created.
Do you think that this is a bug with gb itself? If not, please, do let me
know.
—
Reply to this email directly or view it on GitHub
https://github.com/constabulary/gb/issues/238.

I don't really have a lot of experience in cross compiling. But if you give me some advice I suppose that I could work in a PR to make this work. I would say that the key is here: https://github.com/constabulary/gb/blob/master/defaultcc.go & here: https://github.com/constabulary/gb/blob/master/defaultcc_bsd.go but I don't understand what else is needed.

If you don't have experience in this area, I would not advise you to start
in this area. This is not as simple as making sure GOOS and GOARCH are
passed down to the compiler.
On Fri, Jun 26, 2015 at 11:00 PM, Alexandre González <
<EMAIL_ADDRESS>wrote:

I don't really have a lot of experience in cross compiling. But if you
give me some advice I suppose that I could work in a PR to make this work.
I would say that the key is here:
https://github.com/constabulary/gb/blob/master/defaultcc.go & here:
https://github.com/constabulary/gb/blob/master/defaultcc_bsd.go but I
don't understand what else is needed.
—
Reply to this email directly or view it on GitHub
https://github.com/constabulary/gb/issues/238#issuecomment-115671875.

I know this isn't particularly helpful, but +1 for full cross-compilation support. Let me know if there's some way I can help.

Isn't this technically a dupe of #31?

Duplicate of #31


Test to pull request(DO NOT MERGE)

I have changed the heading just to check the pull request.

What type of PR is this?

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:
/kind new feature
/kind bug fix
/kind cleanup
/kind revert change
/kind design
/kind documentation
/kind enhancement

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Test Report Added?:

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:
/kind TESTED
/kind NOT-TESTED

Test Report:

Special notes for your reviewer:

Tried Pulled Request for the 1st time..


USER ERROR: Disconnecting nonexistent signal 'changed', callable: MeshInstance3D::_mesh_changed.

Bugsquad note: This issue has been confirmed several times already. No need to confirm it further.

Godot version
4.0.alpha6.official
System information
Garuda Linux, Vulkan, Nvidia GeForce GTX 970
Issue description
queue_freeing() a MeshInstance3D sometimes causes Godot to spam my logs with megabytes of:
USER ERROR: Disconnecting nonexistent signal 'changed', callable: MeshInstance3D::_mesh_changed.

I would guess #53285 is a similar issue
Steps to reproduce
something to do with queue_freeing a MeshInstance3D but it doesn't always work
Minimal reproduction project
No response

Indeed MeshInstance3D (or any of its parent classes) doesn't seem to define a changed signal. This was likely removed in some 4.0 refactoring work, and the code that still connects this signal would need to be adapted.

I am also having this issue on Godot 4.0.alpha10.

Same issue on  Godot 4.0.alpha10.

Same issue on Godot 4.0.beta3

Same Issue on v4.0.stable.mono.official [92bee43ad]

@krizej Can you (or anyone else) still reproduce this bug in 4.0.stable or any later release?
If yes, please ensure that an up-to-date Minimal Reproduction Project (MRP) is included in this report (a MRP is a zipped Godot project with the minimal elements necessary to reliably trigger the bug). You can upload ZIP files in an issue comment with a drag and drop.

@krizej Can you (or anyone else) still reproduce this bug in 4.0.stable or any later release?
If yes, please ensure that an up-to-date Minimal Reproduction Project (MRP) is included in this report (a MRP is a zipped Godot project with the minimal elements necessary to reliably trigger the bug). You can upload ZIP files in an issue comment with a drag and drop.

I can reproduce it in my main project on v4.0.stable.mono.official [92bee43ad]
I'm trying to put together an MRP but it is hard since i don't exactly know what behavior that triggers it on the mesh

Ok so it seems like the problem is here https://github.com/godotengine/godot/blob/master/scene/3d/mesh_instance_3d.cpp
between row 108 to 133
I still can't trigger it in my MRP project though

I can't reproduce this in my MRP project :/ But I still get it in my main project as of v4.0.1.stable.mono.official [cacf49999]

Thought I'd chime in here since this issue has been plaguing my project for a while (using Godot 3.4.5-stable) - I've never managed to find the exact cause of the issue, since it seems to happen completely randomly, both when closing the game and in the middle of running it (I assume when an object is freed from memory). And par for the course with annoying bugs, whenever I've tried to catch it as it happens, it doesn't happen :angry:
I've had a deep-dive into the source code to try and figure out what's going on, and I've made a detailed post on my project's issue here: drwhut/tabletop-club#131. But the TL;DR is that I think it's when an Object tries to disconnect signals in it's destructor, which produces the error and stops the destructor, so the object isn't freed from memory and it constantly tries to free the object again and again:
Object::~Object() {
	// ...

	//signals from nodes that connect to this node
	while (connections.size()) {
		Connection c = connections.front()->get();
		c.source->_disconnect(c.signal, c.target, c.method, true); // <-- ERROR?
	}

Agree this looks like a race condition between deleting a Mesh and the associated MeshInstance3D, I think it might be solved for this specific case by disconnecting in the destructor of MeshInstance3D as some classes do, but there's some underlying issue in the object management that needs resolving

While it does sound like a race condition it's confusing, I don't see any place where deletion here is done in a threaded way, so don't see where it could even happen

That's where I think the error is happening, I've never been able to 100% confirm it. So it may well be that the error is originating from somewhere else - as far as I can tell from looking at the code, the only other place where this could be coming from is in MeshInstance::set_mesh:
void MeshInstance::set_mesh(const Ref<Mesh> &p_mesh) {
	if (mesh == p_mesh) {
		return;
	}

	if (mesh.is_valid()) {
		mesh->disconnect(CoreStringNames::get_singleton()->changed, this, SceneStringNames::get_singleton()->_mesh_changed);
	}

Bear in mind this code is from 3.4.5-stable, so this may have changed in subsequent releases, I haven't checked.
With this disconnect call, it references the changed signal directly rather than just removing all signal connections. But I have reason to believe that I have eliminated this function from being the cause in my project, see the post in the issue I linked above (I could be wrong though, would love to get people's thoughts on this if possible).

Are you adding nodes to the tree or operating on the meshes on threads anywhere in your code? This issue seems to have problems on threading #58715, and it would make sense that you could get a race condition on creating signals as connect is not a thread safe function

I don't add scenes directly to the scene tree from another thread in my code, nor do I manipulate the meshes in another thread (I do create ConvexCollisionShape objects from the meshes, but I don't think that is the issue), I make sure whenever I'm loading/building a node structure in another thread, that it stays in that thread until it is done, in which case it is put into an array with a mutex, which is then accessed in the main thread via _process().
I have had issues in the past with threading in the engine which I've fixed over time, the majority of which were related to the freeing of Resource, of which Mesh is a subclass - so the race condition may have something to do with that (e.g. a mesh being freed from memory, but then being added again straight after or vice versa)?
One of the solutions I implemented was a ResourceManager which has a mutex to make sure resources aren't loaded or unloaded from two separate threads at the same time. However, since node structures need to be freed with queue_free() most of the time, I can't make use of the mutex during the actual deletion of the nodes. So I put in some extra logic, where my game manually goes through the node structure that's about to be deleted, and checks for any MeshInstance nodes and sets their mesh to null before calling queue_free(). This is the reason why I discounted MeshInstance::set_mesh as the root cause in my project.

See here as well #34752

If it is indeed signal threading related #74404 should fix it.

From a look at your code @drwhut it looks like your bug is indeed caused by thread safety issues, you are using a thread to build your pieces, which use packed scenes, and that means that resources in those are shared, and the deletion of instances using those meshes is done on another thread, so yes the destructor is involved but it's not a race condition between destructors (that is not possible because of how C++ and the Ref type work), this is also why your method at least partially solves the problem, as you ensure those shared meshes are not connected to instances when they are destroyed. So #74404 should solve your problem, but checking that you are using things in a thread safe way is also important.

Thank you for taking the time to look through my code! Now that you mention it, I hadn't thought about packed scenes having to also load sub-resources, I think you've hit the nail on the head there. I was planning to do a big re-write of my game soon, so that'll be a good opportunity to re-think the threading implementation.
So as far as I can tell, until resources become thread-safe on the engine level, if one wants to load resources in another thread, the resources also have to be freed on that same thread? And we need to make sure we're not accidentally loading those resources on the main thread as a sub-resource to something else...
That still leaves one question, though: from what I remember, I had trouble in the past using just free() on nodes rather than queue_free(). So, would it even be possible to reliably free nodes with resources in another thread if we need to use queue_free() (which I'm assuming always activates on the main thread)?

They can't be interacted with on two different threads, so you have to make sure you're only operating on them on one thread at a time, resources won't become fully thread safe, but signals might, which will help with cases that might not be obvious as thread unsafe, like attaching a resource to a node or deleting the object holding it
For queue_free it is useful to prevent problems with things wanting to operate on the node, it delays deleting it until later when all the built in stuff has stopped operating on the tree, it's recommended to use if you're unsure

Since the original issue still hasn't been provided with an MRP it's hard to tell if this is the same issue (no mention of threads there so no clue) but otherwise it seems to be a duplicate of #34752

This happens to me if many Meshinstance3D's are freed at the same time.
Happens with Free() and QueueFree()
If I introduce a random delay between freeing it gets more stable.

Are you doing any threading?

Yes. Im using C#.
Im having self freeing meshes which will call QueueFree() in their Ready function after a delay.
Something like this:
public override async void _Ready()
{
    await Task.Delay(5000);
}

Thats a common way to make a function wait in C#

It's not safe to operate on resources from multiple threads, as explained above

I think I missed that.
Thanks for the explanation.
I guess I'll have to use some kind of timer in my _Process() function then.

[...] but signals might, which will help with cases that might not be obvious as thread unsafe, like attaching a resource to a node or deleting the object holding it.

@AThousandShips, can you elaborate on this? What concrete signals or functions are involved in a thread-unsafe manner?

Well this one, it looks like at least from this bug report, as I can't see any other way this could happen except if a race condition in signal connection happens (location where it might happen above)
For example:

On thread, load resource X, it is loaded from cache
On thread, attach it to some Node, this automatically connects some signal
On main, through queue_free, delete some node using that same resource

If there's a race condition between 2 and 3, when the last connection is removed from X, then you can get a broken state


upper handle of draggable range jumps to strange places if minValue is not 0

I created a fiddler demo:
https://jsfiddle.net/rzupvdfs/
move the range compeltely to the left. The high handle will jump to the left for about the same value as defined as floor.
The fix would be in rzslider.js in "onDragMove":
The first if block should look like this:
  if (newOffset <= this.dragging.lowDist)
  {
    if (pointer.rzsl === this.dragging.lowDist) { return; }
    newMinValue = this.minValue;
    newMinOffset = 0;
    newMaxValue = this.minValue + this.dragging.difference; // <-- add minValue
    newMaxOffset = this.valueToOffset(newMaxValue);
  }

Great slider btw :)

Indeed, you are right. I'll fix it once the 2.0.0 version is released (soon). You can see it in the PR list if you want.

Fixed in master.


Add StructuralConcurrency example

https://github.com/jamesward/easyracer/blob/main/java-loom/src/main/java/Main.java
https://jamesward.github.io/easyracer/lambdaconf_2024.html?view=pdf

jamesward.github.io_easyracer_lambdaconf_2024.html_view=pdf.pdf

https://chatgpt.com/share/f128d346-e420-4173-b8d8-29d206ff31e3

Move this issue to functional roseta stone

https://docs.oracle.com/en/java/javase/21/core/structured-concurrency.html


New versions not on crates.io

I just realized that several versions of this have come out without my noticing because I had been checking for updates on crates. Will any more current/future versions be released on crates.io, or is that no longer going to be supported?

New versions are not going to be released on crates.io for a few reasons (from my article at https://vincent.is/releasing-gutenberg-0.1.0/):

package for binary crates don't use the Cargo.lock which means a dependency having breaking changes without respecting SemVer will cause the crate to compile but fail at runtime in some cases
I moved to using a Cargo workspace with many small crates to improve iteration speed
with Sass, building Gutenberg has become more involved and it is easier to let user install the already built binary

Quick follow-up, if that's all right to do on the same issue: are there any plans for introducing a way to update to newer versions without having to manually download them (e.g. with the self_update crate?

That crate is interesting, I didn't see it before!
I think I would rather leverage package managers for update though

Maybe yank the old versions? They currently suggest cargo install gutenberg as an installation method.

@ctz good idea! Just yanked all of them

FYI: rust-lang/cargo#5654 (Publish lockfile for binary crates)

I've seen that but now Gutenberg is split in many subcrates to improve compile time and it doesn't make sense to publish those so it will stay ouf of crates.io I'm afraid

Found this here which was a reasonable explanation why Zola isn't available to install via Cargo as I expected. It would be helpful if this was briefly noted in the README since it's fairly unusual for a Rust project.

On second thought, it looks like the issue with not respecting lock files is resolved now, so perhaps this isn't an issue anymore?

There's also the fact that it is now split in multiple crates to make compilation time manageable and I have no interest in publishing all of those on crates.io.

since it's fairly unusual for a Rust project.

I view crates.io mostly as a repository of libraries, I use my OS package manager for binaries.

I'm just speaking from my personal experience as a consumer of Rust binaries. I personally like using cargo to install them. And publishing is easier for me since I don't need to make packages for different OSes. But I understand others prefer different options. Anyway, thanks for the response and thanks for Zola!

https://github.com/rust-lang/cargo/pull/7026


suffocation

hii, so i have the origins mod installed and i suffocate with the phantom origin but i dont have lithium installed at all and i cant find anything else that has been documented that causes this outside of lithium
what do i do?

If you're playing on a server, then the server might have Lithium installed. Also, you'll have to provide more information, because as it is at the moment, it's pretty vague. Can you send your output log (the latest.log file from your .minecraft/logs folder)?


Search for text in comments

ctrl-F, or the find menu, should be able to search for text in comments that have been added by the user.

The find dialog now has a "text" search type in the dev build that is able search comments.


Automatic update of dependency thoth-python from 0.10.1 to 0.10.2

Dependency thoth-python was used in version 0.10.1, but the current latest version is 0.10.2.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign sesheta after the PR has been reviewed.
You can assign the PR to them by writing /assign @sesheta in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
Approval requirements bypassed by manually added approval.
This pull-request has been approved by:
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Update to handle API reading and optimize sharded writing and indexing

It implements sharded index writing and removes GBK stage in writing, relying on the read side sharding.
It exports a full genome BAM file of ~60GB in ~25min.

Hi Ilia,
Looks really nice, but I don't have time to test it now - maybe a little later.  Just a few things in the meantime, in order to get the dependencies to the latest versions:
https://github.com/iliat/dataflow-java/blob/master/pom.xml#L72 -> s/1.1.0/1.4.0
https://github.com/iliat/dataflow-java/blob/master/pom.xml#L117 -> s/v1beta2-rev25-1.19.1/v1-rev56-1.21.0
https://github.com/iliat/dataflow-java/blob/master/pom.xml#L130 -> s/v1beta2-0.36/v1beta2-0.39
https://github.com/iliat/dataflow-java/blob/master/pom.xml#L194 -> s/1.128/2.1.0
https://github.com/iliat/dataflow-java/blob/master/pom.xml#L210 -> s/3.0.0-beta-1/3.0.0-beta-2
A re-test after these changes might not be a bad thing to perform, just to be sure everything passes.
Let me know what you think.
Thanks,
~p

@iliat this looks really awesome.  LGTM
Great speed up!  I assume mvn verify passed all integration tests.
Nice cleanup on the file names too.  Do you think some of this code is useful outside of the context of dataflow?  If so, some other time it would be nice to move it elsewhere.

@iliat Everything I can understand looks good ;-)

@deflaux @pgrosu @jakeakopp Thanks for the review, I addressed most of the comments and will upload the version with these changes once I do a bit more validation beyond basic checks.

@deflaux - I can finally update the PR with a version that:

Addresses comment above
Fixes index generation bug and fixes a long lurking bug GCSSeekableStream
Adds a BAMDiff tool I used to compare BAM files exported with API and this method to ensure no reads are missed (it ignores unmapped ones for now).

Dude, there's some minor error in your JavaDoc - below is the link to the log for JDK8:
https://s3.amazonaws.com/archive.travis-ci.org/jobs/110838148/log.txt
Here's the start of the errors:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.10.3:javadoc (default-cli) on project google-genomics-dataflow: An error has occurred in JavaDocs report generation:
[ERROR] Exit code: 1 - /home/travis/build/googlegenomics/dataflow-java/src/main/java/htsjdk/samtools/BAMShardIndexer.java:180: warning: no @param for log
[ERROR] public static void createIndex(SamReader reader, File output, Log log) {
[ERROR] ^
[ERROR] /home/travis/build/googlegenomics/dataflow-java/src/main/java/htsjdk/samtools/BAMShardIndexer.java:10: error: unexpected text
[ERROR] * @see https://github.com/samtools/htsjdk/blob/master/src/java/htsjdk/samtools/BAMIndexer.java
[ERROR] ^
[ERROR] /home/travis/build/googlegenomics/dataflow-java/src/main/java/htsjdk/samtools/BAMShardIndexer.java:14: warning - Tag @see:illegal character: "58" in "https://github.com/samtools/htsjdk/blob/master/src/java/htsjdk/samtools/BAMIndexer.java
[ERROR] and modified to support sharded index writing, where index for each reference is generated
[ERROR] separately and then the index shards are combined."
[ERROR] /home/travis/build/googlegenomics/dataflow-java/src/main/java/htsjdk/samtools/BAMShardIndexer.java:14: warning - Tag @see:illegal character: "47" in "https://github.com/samtools/htsjdk/blob/master/src/java/htsjdk/samtools/BAMIndexer.java
[ERROR] and modified to support sharded index writing, where index for each reference is generated
[ERROR] separately and then the index shards are combined."
[ERROR] /home/travis/build/googlegenomics/dataflow-java/src/main/java/htsjdk/samtools/BAMShardIndexer.java:14: warning - Tag @see:illegal character: "47" in "https://github.com/samtools/htsjdk/blob/master/src/java/htsjdk/samtools/BAMIndexer.java
[ERROR] and modified to support sharded index writing, where index for each reference is generated
[ERROR] separately and then the index shards are combined."
[ERROR] /home/travis/build/googlegenomics/dataflow-java/src/main/java/htsjdk/samtools

@pgrosu Yeah, on it :)

Ah, cool man :)

PTAL @deflaux

Wow Ilia!  It's so beautiful, that it brings me tears of joy :)

LGTM @iliat Again, really nice work here.
Please file issues for stuff to be done in future PRs.  Thanks!!!


md5sum on macs

md5sum is called in makefile, but md5sum is called md5 on macs.

This is now addressed in master!


Flatpak package

Hi! Are there any plans to provide a Flatpak package of Lapce?

would love to see it as flatpak, easier to get started


Minor logic & debug-ability fixes

In case of unexpected tr or wc output, make sure it's shown in the
error message.
Signed-off-by: Chris Evich<EMAIL_ADDRESS>

Note to me: Wait for https://github.com/containers/automation_images/pull/46 to merge, then rebase this for proper testing in podman.

Note to me: Wait for https://github.com/containers/automation_images/pull/46 to merge, then rebase this for proper testing in podman.

note: temporarily hard-coded swagger image suffix from this PR in podman CI.

note: temporarily hard-coded swagger image suffix from this PR in podman CI.


Update to support Swift 3

Support for Swift 3 landed in https://github.com/Electrode-iOS/ELMaestro/releases/tag/v2.0.0


fix: Chart display fix

Fixes https://github.com/excalidraw/excalidraw/issues/5149
Parse

10%
numbers with leading or trailing .'s
Currency with - after leading currency symbol

as a number in a chart
Treat the first column as labels if both columns in a chart are numeric.
Before

After

Cool, thanks!
I've opened a related issue we can do in a separate PR: https://github.com/excalidraw/excalidraw/issues/5156

Sounds good to me, is it worth bringing in a library such as fast csv to attempt to handle the parsing?