Consider using a class constructor for configuration, not module globals

Describe the feature or improvement you're requesting
This is the current way to configure the credentials for the openai library:
    openai.api_base = f"https://{AZURE_OPENAI_SERVICE}.openai.azure.com"
    openai.api_version = "2023-05-15"
    openai.api_type = "azure_ad"
    openai_token = await azure_credential.get_token(
        "https://cognitiveservices.azure.com/.default"
    )
    openai.api_key = openai_token.token

(Or simpler than that, if using keys instead of Azure credentials)
Here's how Python handles it, as far as I understand:

When a file imports openai, Python stores it in the sysmodules dict
Then when that file sets attributes of the module, Python updates the attributes of the module that's stored in the sysmodules dict
When another file later imports openai, Python finds the module in the sysmodules dict and that hopefully has the correct attributes set

This approach of configuring via module-level globals seems fairly brittle to me, since it's dependent on how Python caches modules, what order things are imported, and how things are imported. It also seems likely to be incompatible with multiprocessing or asynchronous workers in a large application.
I recommend instead something like what the NodeJS SDK uses, a class that can be instantiated with the configuration:
https://github.com/openai/openai-node
That also makes it possible to use different credentials in different parts of a codebase, by passing the credential'd object around.
I realize that would be a significantly large change, but I think it would make for much more robust code overall.
Additional context
No response

We encountered this issue as we run async against multiple GPT endpoints.
As we scaled up the global configuration would sometimes get out of sync between the request being sent and the next request on a different configuration.
This behaviour should definitely be documented.
We did find a solution in that the global variables don't need to be set if you pass them into the request method, in our case openai.ChatCompletion.acreate.
By providing the api_base, api_key & api_version as parameters to acreate we were able to ensure the correct configuration values were used for each request.

@mpenndev  that's very helpful. thank you!

Great news – we've moved to a class instance based API in our new, fully rewritten v1.0.0 library, now in beta:
from openai import OpenAI

client = OpenAI(
  api_key=os.environ['OPENAI_API_KEY'],  # this is also the default, it can be omitted
)

client.chat.completions.create(...)

Please give it a try, and share feedback (big or small) in the linked discussion! (Not in this thread).


Bump bouncer

High-level description
Bump Bouncer to perform group imports one user at a time. This should make group import more robust against database consistency errors.
Corresponding DC/OS tickets (required)

DCOS-55766 TestOpenLdap.test_groupimport_large is flaky (Bouncer DB transaction fails with "transaction deadline exceeded")

Related tickets (optional)

DCOS-ID JIRA title / short description.

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Change log from the last version integrated (this should be a link to commits for easy verification and review): Bouncer
Bouncer EE
[ ] Included a test which will fail if code is reverted but test is not. If there is no test please explain.
This attempts to resolve a flaky test issue, for which is difficult to test. Verification will be absence of future flake reports.
[x] Test Results: https://jenkins.mesosphere.com/service/jenkins/blue/organizations/jenkins/security%2Fmesosphere-bouncer/detail/master/888/pipeline
[ ] Code Coverage (if available): [link to code coverage report]

@mesosphere-mergebot changelog-not-required Effective change occurs and is documented in Enterprise

@mesosphere-mergebot label Ready For Review

@mesosphere-mergebot override-status teamcity/dcos/test/terraform/aws/onprem/static/group2 https://jira.mesosphere.com/browse/DCOS-57770


Incorrect anchors in tei.xml files

I observed some orphan closing anchors in some tei.xml files: <abstract/>, </imprint>, etc. Hopefully, it does not hurt the Python XML parser.
More importantly, I observed that some opening <figure type="table"> anchors are closed with a </table> anchors, which does hurt. It is possible to correct it?
Thanks for the beautiful tool,
Luc.

Hi @lucbouge !
I think you're talking about the generated training data files?
Normally these files must be reviewed manually, so the xml errors are hurting so much... just a bit of time wasted in the overall manual correction (correcting the content labeling will take considerably more time unfortunately).
For the paticular end tag of <figure type="table"> it's my fault I did not merge fast enough https://github.com/kermitt2/grobid/pull/511 which was correcting it with other things that I wanted to check.

Thanks for your instant reply. I was not aware enough of the difference between the training files and the final files.
I am talking about the files you get with the grobid_client python script.
For the needs of ANR, I parse them with  a Python BeautifulSoup(..., "html.parser") call, so that the correct matching of the anchors is crucial.
${CLIENT} processFulltextDocument \
    --input "${INPUT}" \
    --output "${OUTPUT}" \
    --config "${GROBID}/grobid_client_python/config.json" \
    --n 3 \
    --consolidate_citations \
    --verbose

The two formats can be confusing!
There is normally no </table> tag outputted in the final result and by the python grobid_client (this tag does not exist in the class generating the result). It should be only possible in the generated training files. Could you give an example of this problem maybe to try to recreate it? Are you sure that this problem really comes from the usage of grobid_client and not the createTraining batch command?
About the empty XML elements in the final results, if I remember well, they are usually due to mandatory elements defined by the TEI, so they have to appear, even empty, to have valid TEI documents.


Port [#11783] to branch-2.3

Manually cherry-picking as [#9940 ] is not in 2.3.
This adds 3 features to collectInfo

With --exclude-logs <filename-prefixes>, --include-logs <filename-prefixes> and --additional-logs the user is able to specify
log files to take or not take. By default only Alluxio-relevant files
under ${ALLUXIO_HOME}/logs are included and unrecognized files are
ignored.

For example, alluxio collectInfo --additional-logs alluxio_gc --exclude-logs master collectLog <tmp-dir> will include all
alluxio_gc* files (supposedly for GC logs) and exclude all master*
files like master.log.* and master.out.
alluxio collectInfo --include-logs master collectLog <tmp-dir> will,
however, take only the master* files like master.log and
master.out.

With --start-time <datetime> and --end-time <datetime> the user
can specify a certain time window to cover. This serves the need where
only events in one window is of interest. The files that end before the
start time or starts after the end time will be ignored. The end time of a file is the last modification time. The start time of a
file is inferred by reading the first set of rows.

alluxio-site.properties will not be collected as it can contain
unmasked credentials. This is replaced with doing a local alluxio getConf.

pr-link: Alluxio/alluxio#11783
change-id: cid-00209ff5c54a6d6891e8691bdbda35c53c997388

Merged build finished. Test PASSed.

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

alluxio-bot, merge this please


23 test classes failure while deploying code through https://githubsfdeploy.herokuapp.com/

I have deployed this tool in my Dev org as well as in Sandbox. It was working fine but now when I try deploy it to Production test classes are failing.
Can you please help me out here.
fflib_QueryFactoryTest	addChildQueries_invalidChildRelationship	System.AssertException: Assertion Failed: Same value: null
Stack Trace: Class.fflib_QueryFactoryTest.addChildQueries_invalidChildRelationship: line 349, column 1
RollupControllerTest	testDeployedStatus	System.DmlException: Insert failed. First exception on row 1; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupControllerTest.testDeployedStatus: line 62, column 1
RollupScheduledCalculateControllerTest	testCronHelperCustomised	System.AssertException: Assertion Failed: Expected: 0 0 4 2 * ?, Actual: 0 0 1 * * ?
Stack Trace: Class.RollupScheduledCalculateControllerTest.testCronHelperCustomised: line 123, column 1
RollupScheduledCalculateControllerTest	testCronHelperDefault	System.AssertException: Assertion Failed: Expected: 0 0 2 * * ?, Actual: 0 0 1 * * ?
Stack Trace: Class.RollupScheduledCalculateControllerTest.testCronHelperDefault: line 57, column 1
RollupScheduledCalculateControllerTest	testCronHelperError	System.AssertException: Assertion Failed: Expected: 0, Actual: 10
Stack Trace: Class.RollupScheduledCalculateControllerTest.testCronHelperError: line 88, column 1
RollupServiceTest	testCountById	System.DmlException: Insert failed. First exception on row 0; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest.testCountById: line 385, column 1
RollupServiceTest	testCountByType	System.DmlException: Insert failed. First exception on row 0; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest.testCountByType: line 327, column 1
RollupServiceTest	testLimitsConsumedWithConditions	System.DmlException: Insert failed. First exception on row 1; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest.testLimitsConsumedWithConditions: line 819, column 1
RollupServiceTest	testLimitsConsumedWithoutConditions	System.DmlException: Insert failed. First exception on row 1; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest.testLimitsConsumedWithoutConditions: line 930, column 1
RollupServiceTest	testMultiRollup	System.DmlException: Insert failed. First exception on row 1; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest.testMultiRollup: line 124, column 1
RollupServiceTest	testMultiRollupNoConditions	System.DmlException: Insert failed. First exception on row 0; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest.testMultiRollupNoConditions: line 270, column 1
RollupServiceTest	testMultiRollupSumAndAvg	System.DmlException: Insert failed. First exception on row 1; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest.testMultiRollupSumAndAvg: line 197, column 1
RollupServiceTest	testMultiRollupWithTwoParents	System.DmlException: Insert failed. First exception on row 1; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest.testMultiRollupWithTwoParents: line 478, column 1
RollupServiceTest	testMultiRollupWithTwoParentsTenChunks	System.QueryException: No such column 'NumberOfLocations__c' on entity 'Account'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names.
Stack Trace: Class.RollupServiceTest.testMultiRollupWithTwoParentsTenChunks: line 598, column 1
RollupServiceTest2	testChangeInCriteriaReferencedField	System.QueryException: No such column 'NumberOfLocations__c' on entity 'Account'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names.
Stack Trace: Class.RollupServiceTest2.testChangeInCriteriaReferencedField: line 500, column 1
RollupServiceTest2	testChangeInRelationship	System.DmlException: Insert failed. First exception on row 0; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest2.testChangeInRelationship: line 541, column 1
RollupServiceTest2	testMultiRollupBothScheduledWithConditions	System.DmlException: Insert failed. First exception on row 1; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest2.testMultiRollupBothScheduledWithConditions: line 89, column 1
RollupServiceTest2	testMultiRollupOneScheduled	System.DmlException: Insert failed. First exception on row 1; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest2.testMultiRollupOneScheduled: line 173, column 1
RollupServiceTest2	testUnDeleteRealtime	System.QueryException: No such column 'NumberOfLocations__c' on entity 'Account'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names.
Stack Trace: Class.RollupServiceTest2.testUnDeleteRealtime: line 626, column 1
RollupServiceTest3	testDateRollupDeleteChild	System.DmlException: Insert failed. First exception on row 0; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest3.testDateRollupDeleteChild: line 483, column 1
RollupServiceTest3	testDateRollupInsertConditionalChild	System.DmlException: Insert failed. First exception on row 0; first error: FIELD_CUSTOM_VALIDATION_EXCEPTION, Field does not exist.: [AggregateResultField__c]
Stack Trace: Class.RollupServiceTest3.testDateRollupInsertConditionalChild: line 531, column 1
RollupSummariesTest	testInsertBadFieldTypeSumNotValid	System.AssertException: Assertion Failed: Expected: Sum/Avg doesnt looks like valid for dates ! Still want, then implement the IRollerCoaster yourself and change this class as required., Actual: Field does not exist.
Stack Trace: Class.RollupSummariesTest.testInsertBadFieldTypeSumNotValid: line 392, column 1
RollupSummariesTest	testInsertCountByCloseDateNoErrors	System.AssertException: Assertion Failed: Expected: 0, Actual: 1
Stack Trace: Class.RollupSummariesTest.testInsertCountByCloseDateNoErrors: line 517, column 1
Thanks in Advance.

There are some sample custom fields included on some of the Standard objects in Developer Edition orgs, which will not be present in your Sandbox. Things like Account.NumberOfLocations__c. The tests do leverage these. The solution is to create these fields in your Sandbox and Production or install the managed package version of the tool (which does not need the tests to run). If your not planning on contributing back to the tools code or changing the code for your own use, i recommend installing via the managed package links in the README file.

Thanks Andrew. Installing Package didn't give me any error.


Pre-Java 9 toolchains should be selected deterministically

In the issue #13892 it was proposed that the toolchain with the highest tool version should be used. However this doesn't hold for the per-Java 9 toolchains. This probably happens because of the different java.version format.
Expected Behavior
When multiple versions of JDK 8 are installed and detected the latest one is expected to be used.
Current Behavior
The actual used version of JDK 8 seems to be randomly selected.
Steps to Reproduce

Install two versions of AdoptOpenJDK 8 in parallel: 1.8.0_292 into  ~/.jdks/adopt-openjdk-1.8.0_292 and 1.8.0_282 into ~/.jdks/adopt-openjdk-1.8.0_282
Ensure that these JDKs are available to the gradle build, e.g. by adding gradle.properties.
Use the following project: https://gist.github.com/mlopatkin/34489245b3e184b046b137bc4bf3ee4e
Execute ./gradlew compile several times and observe the path to the JDK printed to the console.

The actual output seems to be affected by several non-deterministic things (parallel streams and hash map iteration order) so the reproducer may occasionally show correct toolchain (~/.jdks/adopt-openjdk-1.8.0_292).
Your Environment
Reproduced with Gradle 6.8 as well as ToT on AdoptOpenJDK 11.0.11+9/Ubuntu 20.04 x86_64.

Build scan URL: https://scans.gradle.com/s/fcvkkinn72lxm

Might be worth checking out JavaToolchainComparator and its JavaToolchainComparatorTest whether that is already flawed

Might be worth checking out JavaToolchainComparator and its JavaToolchainComparatorTest whether that is already flawed

I think that the version parsing of VersionNumber is the culprit. The debugger shows both versions as 0.0.0 so the comparator cannot do anything meaningful there. I haven't yet investigated what exactly is going wrong in the parsing code.


Error : 'Credential implementation provided to initializeApp() via the "credential" property failed to fetch a valid Google OAuth2 access token with the following error: "Error fetching access token: Error while making request: .".'

[REQUIRED] Step 2: Describe your environment

Operating System version:  Linux using from Chrome os
Firebase SDK version: firebase-admin : 12..2.0
Firebase Product: auth
Node.js version: V20.14.0
NPM version: 10.7.0

[REQUIRED] Step 3: Describe the problem
Facing this error:
'Credential implementation provided to initializeApp() via the "credential" property failed to fetch a valid Google OAuth2 access token with the following error: "Error fetching access token: Error while making request: .".'
I set env also when I check it from console.log I got service account file values as object but still face this error when it hit that post request I got this error
Relevant Code:
that's my code:
const admin =require ('firebase-admin')
const { getAuth } =  require('firebase-admin/auth');
try {
admin.initializeApp()
} catch (error) {
console.log(error)
}
app.post('/api/auth/signup',async(req,res)=>{
try {
const {email,password,username} = req.body;
const user = await getAuth().createUser({
email,
password,
})
}
catch(error){
console.log(error
}
}

have the same issue

Same for me, the code works on my local machine but I get the same error on my VPS, exact same env-vars and package versions. Has anyone solved this?

I solved it, printed the error directly from "sendWithRetry" in api-request.js and got a much more descriptive error:  [errors]: [     Error: connect ETIMEDOUT <IP_ADDRESS>:443         at createConnectionError (node:net:1648:14)         at Timeout.internalConnectMultipleTimeout (node:net:1707:38)         at listOnTimeout (node:internal/timers:583:11)         at process.processTimers (node:internal/timers:519:7) {       errno: -110,       code: 'ETIMEDOUT',       syscall: 'connect',       address: 'redacted',       port: 443     },     Error: connect ENETUNREACH 2404:6800:4003:c03::54:443 - Local (:::0)         at internalConnectMultiple (node:net:1182:16)         at Timeout.internalConnectMultipleTimeout (node:net:1712:5)         at listOnTimeout (node:internal/timers:583:11)         at process.processTimers (node:internal/timers:519:7) {       errno: -101,       code: 'ENETUNREACH',       syscall: 'connect',       address: 'redacted',       port: 443     }   ]
I found this stackoverflow question and tried turning off IPv6 and it now works. So I think the http client tried to use IPv6 even though the machine had no connection via IPv6 (idk how IPv6 works, but thats my assumption).

Since it sounds like you were able to fix the issue, I will close this for now. Thanks!


[feat] Use check_job_completion_time with timezone info for performance logging

Use check_job_completion_time with timezone info for performance logging formatting instead of asctime attribute.
The changes are applied in the cscs configuration files, the example and the tutorial configuration.
Fixes UES-709.

I think it also need to be changed here:
https://github.com/eth-cscs/reframe/blob/423320ebf9c08d57e51e431f1bc6da7d3a8c5ae3/unittests/resources/settings.py#L157
and
https://github.com/eth-cscs/reframe/blob/423320ebf9c08d57e51e431f1bc6da7d3a8c5ae3/schemas/settings.py#L169

I wasn't sure whether we want to change the unittests' configuration, but I changed it. Maybe @vkarak can confirm that we want this change in the unittests as well.

@ekouts, Yes everything, everywhere. These were just reduced versions of the original one.

@teojgo Can you approves this one?

Codecov Report

Merging #1192 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #1192      +/-   ##
==========================================
+ Coverage   92.17%   92.17%   +<.01%
==========================================
  Files          81       81
  Lines       11970    11999      +29
==========================================
+ Hits        11033    11060      +27
- Misses        937      939       +2

Impacted Files
Coverage Δ

reframe/core/pipeline.py
92.3% <100%> (-0.32%)
:arrow_down:

unittests/test_pipeline.py
95.06% <100%> (+0.28%)
:arrow_up:

unittests/fixtures.py
85.36% <100%> (+2.03%)
:arrow_up:

reframe/utility/sanity.py
98.94% <100%> (ø)
:arrow_up:

reframe/core/buildsystems.py
96.75% <0%> (-0.37%)
:arrow_down:

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 d2dd7fb...872e1e8. Read the comment docs.


Bug 1119176: Implement bt_os_callouts_t in bluetoothd.

Implement |bt_os_callouts_t| in bluetoothd by using |add_timer_to_epoll_loop()|, |acquire_wake_lock()|, |release_wake_lock()|.

Close this PR because a new one has been issued: https://github.com/mozilla-b2g/platform_system_bluetoothd/pull/12


SurfaceTool and MeshInstance crashing

(First time posting an issue xD)
Using godot-cpp master branch, scons as build tool (from docs), godot 3.0.5
Here is the code:
Both Ref<> and normal pointers are causing this.
Although without the surfacetool , "rotate_y" function works as expected.

Output: it just crashes

plz help

Can you try
Ref<Mesh> mmesh;
mmesh.instance();

instead?
Also a stacktrace would be nice, if you can attach a debugger and post it, that could be useful.

It atleast runs if i comment out the "sf->create_from" line:
(sf->commit() also causing crash)

First two attempts had "sf->create_from" line commented  and it ran without crash:

Make sure you check out the 3.0 branch, the master branch contains all the
header files for 3.1 which could cause crashes
I need to update the docs to reflect this
On Fri, 27 Jul 2018 at 1:20 am, v4i1n1a9y8<EMAIL_ADDRESS>wrote:

It atleast runs if i comment out the "sf->create_from" line:
(sf->commit() also causing crash)
[image: sdgsdgwegw]
https://user-images.githubusercontent.com/35867832/43271122-57688684-9114-11e8-8303-88bb472bc907.PNG
First two attempts had "sf->create_from" line commented and it ran without
crash:
[image: surfacetool3]
https://user-images.githubusercontent.com/35867832/43271350-e449d8fa-9114-11e8-9d1f-ee116bb3cc56.PNG
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/GodotNativeTools/godot-cpp/issues/156#issuecomment-408132757,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB2vaZwm6P1ifDp5gaoqSO5UNpXGkuMdks5uKd5SgaJpZM4Vh7Th
.

--
Kindest regards,
Bastiaan Olij
https://www.facebook.com/bastiaan.olij
https://twitter.com/mux213
https://www.youtube.com/channel/UCrbLJYzJjDf2p-vJC011lYw
https://github.com/BastiaanOlij

Tried with 3.0 branch, generated godot_api.json from executable(3.0.5)
The gdscript version works. The cpp version just crashes "Server disconnected"

Following code works!!
void draw() {
            Ref<Mesh> mmesh;
            //mmesh.instance(); //works with or without instance()
            Ref<SurfaceTool> sf;
            sf.instance(); // here without instance() ,crashes
            sf->begin(Mesh::PRIMITIVE_TRIANGLES);

            for(int i = -_size; i < _size; i++)
            {
                for(int j = -_size; j < _size; j++)
                {
                    Vector3 pos(i,j,0);
                    sf->add_normal(Vector3(0,0,1));
                    sf->add_uv(Vector2(0,1));
                    sf->add_vertex(pos+Vector3(0,0,0));
                    sf->add_normal(Vector3(0,0,1));
                    sf->add_uv(Vector2(0,0));
                    sf->add_vertex(pos+Vector3(0,1,0));
                    sf->add_normal(Vector3(0,0,1));
                    sf->add_uv(Vector2(1,1));
                    sf->add_vertex(pos+Vector3(1,0,0));
                    sf->add_normal(Vector3(0,0,1));
                    sf->add_uv(Vector2(0,0));
                    sf->add_vertex(pos+Vector3(0,1,0));
                    sf->add_normal(Vector3(0,0,1));
                    sf->add_uv(Vector2(1,0));
                    sf->add_vertex(pos+Vector3(1,1,0));
                    sf->add_normal(Vector3(0,0,1));
                    sf->add_uv(Vector2(1,1));
                    sf->add_vertex(pos+Vector3(1,0,0));
                }

            }
            sf->index();
            sf->generate_tangents();
            mmesh = sf->commit();

            owner->set_mesh(mmesh);
        }

Cool!
I've not used surface tool so I'm not sure but I would guess sf->commit() returns a new mesh instance, hence you don't need to instance one yourself.
Don't know why it would crash in the 2nd example though. Nothing being output to the console?

That's weird, no crash log... Just gonne...

It crashes only when a method from SurfaceTool crashes.
SurfaceTool s = SurfaceTool(); Ok
s.free(); crashes

Connected with this issue is that fact that you cannot export Resources like this using register_property. If you try to register a SurfaceTool variable it will cause the program to silently crash when run. I figure it is because resources need to be instanced with .instance but when you export the variable so it can be accessed from gdscript it requires a default value to be passed and there is no opportunity to call .instance.

@v4i1n1a9y8 just checking if you've been able to resolve this? I still haven't used surfacetool in gdscript but have done extensive work with meshes in nativescript 1.1 and it's been solid for me.
@M4gma I think you're problem is that your code should be:
Ref<SurfaceTool> s;
s.instance();
// do other stuff
s.free();

@clayjohn interesting issue, indeed not sure what you would do about that.. I think you can just set it to Ref() and it will just give you an unset surface tool reference which you can check for.


Retry temporary failures for Bigtable scans

Cloud Bigtable can return DEADLINE_EXCEEDED after 5 minutes on a scan request, even if there are more responses to be returned.   In that case, or INTERNAL, UNAVAILABLE or ABORTED, the scan should be retried from the key after the one previously returned in the scan.

@sduskis You mean during ReadRows, instead of a ReadRowsResponse popping off the stream, the client encounters one of the errors listed:

DEADLINE_EXCEEDED
ABORTED
INTERNAL
UNAVAILABLE

So we could limit the change to the place we consume the next item from the stream?

Taking a step back, these 4 errors can be recovered in most RPC calls.  MutateRow, MutateRows, SampleRowKeys, checkAndMutate all can be retried, but have slightly different nuances.  That said, ReadRows was the first reported issue where retries are most likely to fix the problem.
In terms of ReadRows,I think you are correct in terms of where the code fix out to be.

@dhermes @tseaver, @calpeyser will be taking a look at implementing this.
Note that it's not enough to just resend the same request after a failure, we need to invoke ReadRows with a start_key that is immediately after the last row key we have successfully read. It looks like this will require some refactoring since PartialRowsData doesn't actually invoke the API call curently.

Hey guys - I've had a look, here's a proposal:
(1) Implementing Retries - we can probably do this by combining "retryable" in gax-python with the "response iterator" convention currently used in table#read_rows.
Basically, we can wrap the GRPC stream in a callable class that does the following:

Keeps track of a set of row keys that still need to be read as state in the class
When the class is called, pop an element off the stream.
If that element is a valid row, remove that row from the list of keys to be read, and return it.
If that element is a GRPC error, propagate the Exception up the call stack.

We then take the GRPC wrapper, and wrap it again in a gax-python retryable.  This way, if an idempotent Exception is propagated up from a call, the call will be retried.
(2) Testing - we need some new functionality over the current unit testing infrastructure, since those tests make assertions about the RPCs made by the client, and do not take responses into account.  We'll need to add an integration testing framework that will spin up a mock server and make read_rows calls against it.
@garye's test script should allow us to model errors sent be the server and the expectation of retries.  So, we'll need to add

A mock server.  I have access to a go dummy, but  how do we ensure developers can run tests on all platforms?  e.g. if we publish a Linux binary, Mac developers won't be able to run the unit tests.  Do I need to re-implement the server in Python?
Python tests that spin up a Client instance connecting the server.  This is tricky because the Client API does not seem to support custom configuration values which we need to allow the client to run without credentials, as well as to provide a host and port that points at the locally-running server.  That is, we need the moral equivalent of BigtableOptionsFactory.

(1) With the current interface that only takes a row range, you don't know the row keys that still need to be read. You do know the last key that was read before an error (they come back in lexicographical order), which tells you which row range you need to send in the retried request.
(2) I don't think re-implementing the mock server is Python is a great use of time. We can easily build linux, mac and windows binaries of the mock server and do something like pull one down from a public GCS bucket when the systests run depending on the current platform. I think the systests already install the bigtable emulator via gcloud which is along the same lines.
The shortcut here is to use the BIGTABLE_EMULATOR_HOST environment variable as described here. The python library has support for it and should solve this problem for us. The mock retry server is essentially the emulator with different guts.

I gave the above a whirl - please see https://github.com/GoogleCloudPlatform/google-cloud-python/pull/3279

Hello,
One of the challenges of maintaining a large open source project is that sometimes, you can bite off more than you can chew. As the lead maintainer of google-cloud-python, I can definitely say that I have let the issues here pile up.
As part of trying to get things under control (as well as to empower us to provide better customer service in the future), I am declaring a "bankruptcy" of sorts on many of the old issues, especially those likely to have been addressed or made obsolete by more recent updates.
My goal is to close stale issues whose relevance or solution is no longer immediately evident, and which appear to be of lower importance. I believe in good faith that this is one of those issues, but I am scanning quickly and may occasionally be wrong. If this is an issue of high importance, please comment here and we will reconsider. If this is an issue whose solution is trivial, please consider providing a pull request.
Thank you!

This issue should be re-opened; this is a critical feature for the Bigtable client library that needs to be tracked until it is completed.
My understanding of the history of this issue: PR #3279 was the first attempt, which was superseded by PR #3324, which was submitted, but then reverted in PR #3642 so this has not yet been merged. There's a branch pr-3324-to-fix that was kept around with the relevant changes that needs to be updated to pass the tests, and then it can be attempted to re-merge.
Please re-open this issue so that we can track its progress.

Can someone with permissions please add this to that Feature Requests page?
This issue means that nearly all online examples on how to iterate over Bigtable are misleading; a simple for in loop will unexpectedly crash at some point. The default behavior of iteration should be somewhat retry tolerant.

@alugowski, @sduskis Since the merge of PR #5178, the new low-level GAPIC clients already handle retries, based on the relevant *_client_config modules:

bigtable_v2/gapic/bigtable_client_config
bigtable_admin_v2/gapic/bigtable_instance_admin_client_config.py
bigtable_admin_v2/gapic/bigtable_table_admin_client_config.py

The low level GAPIC retries don't work for streaming RPCs like Cloud Bigtable Read Rows.  Default retries just retry the original request until it completes.  Retries for streaming RPCs need to pick up from where they previously left off, which requires custom logic.  We actually put in a fix for this 4 months ago with PR #4882.

@sduskis OK, looks like #4882 is not part of a release, so it will be included in the one we are driving toward this month.

Thanks!
Sounds like this kludge will no longer be necessary:
while True:
    try:
        for row in table.yield_rows(start_key=start_key):
            row_key = row.row_key.decode('utf-8')
            yield (...)

            start_key = row_key  # if iteration raises, we will restart again here
        break
    except Exception as e:
        logging.warning("Exception while iterating over bigtable. Will continue retrying. {}".format(e))

When the iteration takes on the order of hours then the logs are full of this:
<_Rendezvous of RPC that terminated with:
	status = StatusCode.DEADLINE_EXCEEDED
	details = "Error while reading table 'blahblahblah'"
	debug_error_string = "{"created":"@1531838276.260045000","description":"Error received from peer","file":"src/core/lib/surface/call.cc","file_line":1083,"grpc_message":"Error while reading table 'blahblahblah'","grpc_status":4}"


Install on macOS without requiring a password

Please allow installation on macOS via brew cask install powershell without requiring a password during the install.
I just read that PowerShell is available on macOS. How cool! But after typing brew cask install powershell, I was greeted with a Password: prompt:

I have never had a homebrew package ask me for my password. (I currently have about 60 packages installed.) This makes me feel really uncomfortable... I've decided not to install it after all.

@TravisEz13 Could you please comment the request?

We use a pkg to install a shell.  This will require sudo access.  As it says two lines above
Please use the tar.gz instructions.
# Download the powershell '.tar.gz' archive
curl -L -o /tmp/powershell.tar.gz https://github.com/PowerShell/PowerShell/releases/download/v6.2.0/powershell-6.2.0-osx-x64.tar.gz

# Create the target folder where powershell will be placed
mkdir -p <yourPath>

# Expand powershell to the target folder
tar zxf /tmp/powershell.tar.gz -C <yourPath>

# Set execute permissions
chmod +x <yourPath>/pwsh

We use a pkg to install a shell. This will require sudo access. As it says two lines above

I didn't miss the note two lines above. But saying "I'm going to ask for your password" two lines before a Password: prompt doesn't ease the discomfort.
My point in filing this issue is to document--on behalf of many macOS users--what may be keeping them from pursuing a casual interest in pwsh on their computers.

I disagree with the Issue-Question and Resolution-Answered tags.
I realize I wasn't clear. I intended this as an enhancement request, not a question. Thanks for clarifying, but homebrew packages never ask for passwords, and they install all sorts of things, from node and ruby to cowsay and everything in between -- always without requiring a password.
To fully support homebrew as a distribution channel, I believe pwsh would do best not to deviate from that expectation.

Could you please remove the Issue-Question and Resolution-Answered tags?
I realize I wasn't clear. I intended this as an enhancement request, not a question. Thanks for providing a workaround, but the issue I wanted to raise is that homebrew packages never ask for passwords, and they install all sorts of things, from node and ruby to cowsay and everything in between -- always without requiring a password.
To fully support homebrew as a distribution channel, I believe pwsh would do best not to deviate from that expectation.

This is not possible for this type of package.

OK, looks like the issue is really that a MacOS installer .pkg is being used to install PowerShell even from HomeBrew. Installer packages use the macOS installer infrastructure, which requires authentication.
https://github.com/Homebrew/homebrew-cask/blob/master/Casks/powershell.rb
I understand that homebrew doesn't disallow asking for a password. But it strongly preaches "don't run brew as root!" and 99% of packages (including all shells - zsh, fish, bash, ksh, tcsh) don't require a password during installation.

@RoyTinker 	You don't run homebrew as root.  Homebrew will prompt for a password, as it states in the repro you gave us.

Someone could try to write a Formulae, which would solve your issue, but if it was done, unfortunately, it would not be supported by Microsoft, as it would be a product we did not build.  Our guidance would remain to use the cask, which will prompt for password.
Feel free to contribute a formula to homebrew or file an issue in the homebrew repo for a formula to be created.

Creating a formula like you suggest would require that dotnet produce a formula as well.  If you really, want this you should start there.

@TravisEz13 Ah, good to know. Thanks for clarifying!

We could build a formula if it was in our own repo.  Would that work?
I have a prototype in my personal repo: https://github.com/TravisEz13/Homebrew-PowerShell


pltsql_curr_compile_body_lineno multiple definition error

Hello,
When trying to install on Debian 11 (I replaced libicu66 with libicu67, and openjdk-8-jre with openjdk-9-jre), I am facing this problem:
c/tsql_analyze.o src/linked_servers.o src/pltsql_bulkcopy.o -L/opt/babelfish/lib    -Wl,--as-needed -Wl,-rpath,'/opt/babelfish/lib',--enable-new-dtags  -L/usr/local/lib -lantlr4-runtime -lcrypto
41.18 /usr/bin/ld: src/pl_comp-2.o:/workplace/BABEL_3_1_0__PG_15_2/contrib/babelfishpg_tsql/src/pl_comp-2.c:25: multiple definition of `pltsql_curr_compile_body_lineno'; src/pl_comp.o:/workplace/BABEL_3_1_0__PG_15_2/contrib/babelfishpg_tsql/src/pl_comp.c:62: first defined here
41.78 collect2: error: ld returned 1 exit status
41.78 make: *** [/opt/babelfish/lib/postgresql/pgxs/src/makefiles/../../src/Makefile.shlib:293: babelfishpg_tsql.so] Error 1
------
Dockerfile:109
--------------------
 107 |
 108 |     WORKDIR ${PG_SRC}/contrib/babelfishpg_tsql
 109 | >>> RUN make && make PG_CONFIG=${PG_CONFIG} install
 110 |
 111 |     # Run stage
--------------------
ERROR: failed to solve: process "/bin/sh -c make && make PG_CONFIG=${PG_CONFIG} install" did not complete successfully: exit code: 2

It seems that pltsql_curr_compile_body_lineno is defined twice, I'll submit a PR for this shortly.
PS: just in case DEB packages may be useful - I have a PPA here, DEBs there are built from modified (downstream) sources and only for Ubuntu, but should be straightforward to change to Debian and vanilla sources if needed.
PPS: not that it makes any difference here, but I suggest to use LTS openjdk-11 or 17 instead of 9 that is long out of support.

Thanks for the answer.
I used -fcommon flag and worked for me:
# Build modified PostgreSQL for Babelfish
RUN ./configure CFLAGS="-ggdb -fcommon"\
	--prefix=${BABELFISH_HOME}/\

Thank you @staticlibs for fixing this.


Try to warn on Resource leak

Since I don't know much about scalafix not sure how hard, or even impossible, this will be...
But, it would be great to warn / error if someone tries to leak a Resource using pure or delay inside use; which is a somewhat common beginner mistake.
Maybe a best effort that tries to catch common variations like ra.use(a => a.pure[F]) or ra.use(IO.apply) can be enough?
Another idea would be to warn if use returns an F[A] rather than some F[B] (meaning the same type of the Resource), since on the surface it seems that would never be a good idea; but I may be being too naive.

Another idea would be to warn if use returns an F[A] rather than some F[B] (meaning the same type of the Resource)

FWIW I really like this idea. Whereas a "pure" based fix can probably be implemented as a syntactic rule, inspecting the inferred types will require a semantic rule.


Sarif validator returning 404 when trying to validate a file

When I upload any .sarif file, the upload boxes shows me an alert that "An unknown error occurred." and a red error label on file's drop.
I tried with the following sarif code:
{
  "version": "2.1.0",
  "$schema": "http://json.schemastore.org/sarif-2.1.0-rtm.4",
  "runs": [
    {
      "tool": {
        "driver": {
          "name": "ESLint",
          "informationUri": "https://eslint.org",
          "rules": [
            {
              "id": "no-unused-vars",
              "shortDescription": {
                "text": "disallow unused variables"
              },
              "helpUri": "https://eslint.org/docs/rules/no-unused-vars",
              "properties": {
                "category": "Variables"
              }
            }
          ]
        }
      },
      "artifacts": [
        {
          "location": {
            "uri": "file:///C:/dev/sarif/sarif-tutorials/samples/Introduction/simple-example.js"
          }
        }
      ],
      "results": [
        {
          "level": "error",
          "message": {
            "text": "'x' is assigned a value but never used."
          },
          "locations": [
            {
              "physicalLocation": {
                "artifactLocation": {
                  "uri": "file:///C:/dev/sarif/sarif-tutorials/samples/Introduction/simple-example.js",
                  "index": 0
                },
                "region": {
                  "startLine": 1,
                  "startColumn": 5
                }
              }
            }
          ],
          "ruleId": "no-unused-vars",
          "ruleIndex": 0
        }
      ]
    }
  ]
}

Hello,
I'm taking a look right now!
thanks for reporting!

Hello,
I'm taking a look right now!
thanks for reporting!

Fixed. Can you try again? Reopen if that does not work.
thank you

Fixed. Can you try again? Reopen if that does not work.
thank you

I tried with the same file and the validation was complete, but now it freezes after completing the validation with this error when opening console:
Uncaught TypeError: Failed to execute 'readAsText' on 'FileReader': parameter 1 is not of type 'Blob'.
    at Object.success (Validation:491)
    at u (jquery-3.3.1.min.js:2)
    at Object.fireWith [as resolveWith] (jquery-3.3.1.min.js:2)
    at k (jquery-3.3.1.min.js:2)
    at XMLHttpRequest.<anonymous> (jquery-3.3.1.min.js:2)

At Validation:49

I tried with the same file and the validation was complete, but now it freezes after completing the validation with this error when opening console:
Uncaught TypeError: Failed to execute 'readAsText' on 'FileReader': parameter 1 is not of type 'Blob'.
    at Object.success (Validation:491)
    at u (jquery-3.3.1.min.js:2)
    at Object.fireWith [as resolveWith] (jquery-3.3.1.min.js:2)
    at k (jquery-3.3.1.min.js:2)
    at XMLHttpRequest.<anonymous> (jquery-3.3.1.min.js:2)

At Validation:49

@felipe-avelar, are u facing with the sarif above?

@felipe-avelar, are u facing with the sarif above?

@felipe-avelar, are u facing with the sarif above?

Yes

@felipe-avelar, are u facing with the sarif above?

Yes

@felipe-avelar, are u facing with the sarif above?

Yes

Just tested in the latest edge chromium and google chrome. Both worked.
Try to clean cache and refresh.

@felipe-avelar, are u facing with the sarif above?

Yes

Just tested in the latest edge chromium and google chrome. Both worked.
Try to clean cache and refresh.

@eddynaka I successfully validate when I browse for the file.
I think the problem is when dropping file to be validated. So I think this issue is closed :)

@eddynaka I successfully validate when I browse for the file.
I think the problem is when dropping file to be validated. So I think this issue is closed :)

@eddynaka I successfully validate when I browse for the file.
I think the problem is when dropping file to be validated. So I think this issue is closed :)

I see. I will take a look at this today!

@eddynaka I successfully validate when I browse for the file.
I think the problem is when dropping file to be validated. So I think this issue is closed :)

I see. I will take a look at this today!

@felipe-avelar, drop is working :)
clean cache and try again, pls!
thank you

@felipe-avelar, drop is working :)
clean cache and try again, pls!
thank you

Everything is working, thanks a lot 😄

Everything is working, thanks a lot 😄


ESP_ZB_ZCL_STATUS_INSUFF_SPACE when reading the first time a large string attribute type (TZ-1028)

Answers checklist.

[X] I have read the documentation ESP Zigbee SDK Programming Guide and tried the debugging tips, the issue is not addressed there.
[X] I have updated ESP Zigbee libs (esp-zboss-lib and esp-zigbee-lib) to the latest version, with corresponding IDF version, and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
5.1.4
esp-zigbee-lib version.
1.4.1
esp-zboss-lib version.
1.4.1
Espressif SoC revision.
ESP32-H6 and ESP32-H2
What is the expected behavior?
I am trying to read a string type attribute that contains a large data size (170 bytes) with the function esp_zb_zcl_read_attr_cmd_req. When I make the first attempt of this reading, it returns me with error 0x89 ESP_ZB_ZCL_STATUS_INSUFF_SPACE, after this error I try again said reading and it works correctly. The problem only occurs in the first case, I understand that there is some buffer that after this error modifies its length, I would like to know how to configure said default value to avoid this error every time the device turns on
What is the actual behavior?
.
Steps to reproduce.
.
More Information.
No response

Hi @diazmanuel,
Generally speaking, this is an expected behavior.
The error happens when the response of your read_attr_command couldn't fit into a single NPDU and the responding device didn't know the APS fragmentaion capability of the peer (requesting device), usually when the responding device just turns on or the two devices don't send messages to each other for a long time. The second attempt works because the responding device will query the APS fragmentaion capability of the peer device via node_desc_req.
Is implementing some retry mechanisms for reading such attributes acceptable in your case?

Hello @lpy4105 , thanks for the quick response, ideally we want this error not to occur, since that means having to add a retry logic (which for the moment we will implement to be able to move forward), anyway you mention that through the node_desc_req request the device obtains the fragmentation capacity of the survey device, is it possible to configure this parameter by hand?

Hello @lpy4105 do you have any update about this issue? I understand that the error response is correct from what you mention, but I don't think that correct logic like the one I implement should consider that the first response is always an error, is there a way to solve it or do you plan to solve it in the future?

Hi @diazmanuel You could try to manually do esp_zb_zdo_node_desc_req to ensure that the capability of APS fragmentation is cached on the requested device.


Add some list functions

This should have been addressed in #96, so I will close this PR.
Don’t hesitate to reopen it if I missed something.


Validate facility codes against master list

@bruskiza hello from Uganda! Please review & merge when ready.

:+1:


.Net: Azure Chat Completion with data - Responsible AI Policy field

Motivation and Context
Adding support for Snippy feature on OpenAI.
Feature Description: Snippy is an RAI mitigation-based service designed to protect Microsoft from third-party materials arising from the generation of code and natural language using the Azure Open AI Service. Currently, Snippy is available as blocking filters for code and language, separately, in Azure OpenAI service for 1P teams, blocking model-generated content that contains third-party materials.

Description

Contribution Checklist

[ ] The code builds clean without any errors or warnings
[ ] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[ ] All unit tests pass, and I have added new tests where possible
[ ] I didn't break anyone :smile:

@dsigron I will close this PR for now. Please, feel free to re-open it and resolve comments in case these changes are still required. Thank you!


Minor fix Indonesian translation

Fixed the translation for the word "growth" with a more suitable term in Indonesian.

Thank you for the update!  I'll merge this and deploy it now


Rename EntityCommands::add to EntityCommands::queue

What problem does this solve or what need does it fill?
The difference between these two is very hard to grasp from a naming point of view:
commands
  .entity(entity)
  .insert(Foo)

commands
  .entity(entity)
  .add(Foo)

What solution would you like?
Rename add to queue. That also reflects that the changes happen later, not now.
What alternative(s) have you considered?
Just leave it
Additional context
@alice-i-cecile likes this as well :P

Nit: I feel like enqueue would be more appropriate, since the method is putting something into a queue, it is not/does not return the queue itself.

IME, enqueue is fairly obscure for non-English natives, so I'd avoid it. But that's not a strong opinion.

This is funny because I'm also a non-native english speaker and I've never heard "queue" used as a verb. I guess it depends on where you live and how you learned english.

Hehe, very good argument. I suppose this is regional then. I'll defer to what native speakers recommend in that case :D

"queue something up" is reasonably common in my dialect of Canadian English, and I think I'd prefer the shorter name to break ties :)

We also have Commands::push which is exactly the same as Commands::add (which just calls push). Maybe just remove it?

@Shatur huh, that's weird, you're right. Note that said duplication is not present on EntityCommands.

This will also require renaming a few other methods on various types / traits. For example, ChildBuild::add_command -> ChildBuild::queue_command.


Bootloader should honor application stack address

start_app function should set MSP register to address from the application interrupt vector before jumping to the application.
Code should look like this:
https://github.com/robots/STM32/blob/master/can_boot/main.c#L57

Thanks!


Teaser block image override doesn't render external images

Describe the bug
Teaser allows external links for "Image override" however they do not render upon inserting these image links.
To Reproduce
Go to https://light-theme.kitconcept.io/ since this is the only volto 18 test deployment and add a teaser,
select Customize teaser content and insert any external images.
Same behavior is seen with Volto 17 https://volto.demo.plone.org/
Expected behavior
The image should be used for the teaser header image.
Screenshots

By adding a new attribute 'src' or 'url' in object_browser widget, we can refer to the link in the restapi and while rendering the Image in teaser block we can use ternary conditions .
I'll link this issue to my PR

By adding a new attribute 'src' or 'url' in object_browser widget, we can refer to the link in the restapi and while rendering the Image in teaser block we can use ternary conditions .
I'll link this issue to the PR for better understanding

@Tishasoumya-02 I think you are going about this the wrong way.
It has todo with the preview_image and from the teaser you need to check if the value is internal if so flatten to url or simply serve it as is.
Look at the Redux store information and you will see that the external url is added in the first element of the preview_image

It would be ideal to check or make that objectBrowserWidget accept externalUrls using a prop. https://github.com/plone/volto/blob/51bdfa0bd4d1b3b726855da0a0e6ad2880271b29/packages/volto/src/components/manage/Widgets/ObjectBrowserWidget.jsx#L367

It would be ideal to check or make that objectBrowserWidget accept externalUrls using a prop.
https://github.com/plone/volto/blob/51bdfa0bd4d1b3b726855da0a0e6ad2880271b29/packages/volto/src/components/manage/Widgets/ObjectBrowserWidget.jsx#L367

@nileshgulia1 I don't understand what you mean, there is already support for passing allowExternals as seen here https://github.com/plone/volto/blob/main/packages/volto/src/components/manage/Blocks/Teaser/schema.js#L101
this is part of the problem of this ticket that you can add an external image but it's not used by the teaser to render it


Form novalidate test in html5test.com

The novalidate test case for "Forms Validation" in Section "Forms" is incorrect. The novalidate attribute is for form elements and not for input element.
http://www.w3.org/TR/html5/the-input-element.html#the-input-element
Its creating a var element = document.createElement('input'); and then checking novalidate on it ,which is incorrect.
Kindly update the test site.

This issue has been fixed on the beta version of the site: beta.html5test.com

Thanks for the update. Please change the html5test.com site.Many are using this site to check scores of HTML5.


Support OverrideHost1 when manipulating backends

Backends allow setting override_host when defining them in case we
need fastly to set a different Host header when forwarding traffic to
them.
Adding it to the Backend structure will allow us to be able to set it
programmatically.

👓 @ailenth

👓 @alienth

I've been going over the code on https://github.com/alienth/fastlyctl and I don't think we need to make any further changes to it (aside from updating the vendored deps) once this change is merged, but please let me know if that's not the case and I'll make the necessary changes there as well!


static error

looks like your omori is installed in a different directory than default, open config.json and change gamePath to your omori directory path (where omori.exe is located). make sure to use double backslash \\ instead of single \

should be fixed in commit a8675fe


Make links clickable for talkback users

When using talkback screen-reader for android, links in andstatus cannot be opened. Sweeping left or right with the finger only sets the focus to the whole message, but not to parts like links or hashtags. The only way to access links is to open the message (tweet etc) from context menu in a browser and open the actual link from there.
Using Android 5.1 / Talkback 4.5.1.
Steffen

Hi @schulle4u , I installed Google Talkback and tried AndStatus with it.
Yes, I see that links are not clickable by the tool.
I also found similar question http://stackoverflow.com/questions/38444822/how-to-make-links-among-other-text-focusable-for-accessibility with an answer that having links inside a textbox clickable for accessibility is not supported by the Android Platform.
I hear that each clickable link is preceded by a chime, but that's all.
I could create some special layout for accessibility, in which each "span" would have its own textbox. So some textboxes could be clickable...
Do you have any good example for what you need, preferably on Android? Or maybe you have a vision/know, how this could be implemented?

Hello @yvolk,
Sorry, I'm not an android developer, my technical insight therefore is very limited. Apps which I know of to work with embedded links are the K9 mailclient and its message view, as well as the crome browser and apps based upon android system web view.
Building an extra accessibility design seems not the best solution to me, since it would take also extra time for you to maintain this whenever something have to be changed.
My idea for now is to add an appropriate possibility to the context menu of a tweet. There already is an option to open the whole tweet directly on twitter. Could another option be added, telling the application to open one or more links attached to the tweet? By far not the best solution, but this wouldn't requiere you to rewrite the whole interface for just this one thing.
Steffen

Hello Steffen,
So we are talking about another message ContextMenu, which would contain a list of links from this message?!
Maybe additional button could be added to the button bar below each message. Click on that button will open the list of links.
Or you would prefer to turn that "context" buttons off altogether... ?!

@yvolk: I personally prefer the buttons to get out of my way and use the context menu if needed, since I mostly use AndStatus for reading messages then for interacting with them. But if I remember right, the context menu provides identical functionality as the buttons, so a "link list" button/submenu could be added for both scenarios.
Steffen

I got it, so:
In a case "the touch exploration in the system is enabled" AndStatus adds new item to the top of the message's context menu: "X message links", where "X" is actual number of clickable links. Clicking on this item opens the submenu with an item for each link.
?!
See the coding examples: http://www.programcreek.com/java-api-examples/index.php?source_dir=alarm-clock-master/src/com/klinker/deskclock/widget/multiwaveview/GlowPadView.java
I also found this interesting and heated discussion on "Programmatically checking for Accessibility - if TalkBack is on"

Sounds like a good plan Yuri, I'll look forward to the next releases on F-Droid. Thanks in advance for having an eye on this topic. :)
Steffen

Implemented, will be available since v.30,01
This is how it looks now.

A User navigates in the list, reading messages using a Talkback application

Double click on a message to "activate" it, i.e. to open its context menu:

Select and then double-click on the "2 message links" menu item. Submenu opens. Now clicking on any link will open a browser window.

Many thanks, this works perfectly.

hi your code is not available on the given link... please share it

@rabid01 What exactly link doesn't work?

http://www.programcreek.com/java-api-examples/index.php?source_dir=alarm-clock-master/src/com/klinker/deskclock/widget/multiwaveview/GlowPadView.java  this link is not showing your code

@rabid01 That was not my code, but some example from Internet that I found at that time.
My application is still here, at GitHub.


adds test for puchase flow using rc_paywalls

Motivation / Description
Adds an E2E test for the purchase flow using the RC Paywalls
I think I set the whole thing up on the wrong project, I'll update the offering tomorrow. it's working locally with the E2E RCBilling Test project sandbox key if you want to test
Changes introduced
Linear ticket (if any)
Additional comments

Hmm I don't see the changes anymore... Only a console.log in the tests? probably some bad merge?


remove paste from core

I've not used it myself, but we could give https://crates.io/crates/cargo-udeps a try in CI to find unused dependencies.


CloudWorld review changes for WMS ids#10001 and WMS#10002

Hi Madhu, Team.
Incorporated review changes for WMS ids are 10001 and 10002. It includes image modification(highlighting a portion) and instructions.
Please review and approve.
Thanks,
Romit

This branch has conflicts that must be resolved
Conflicting files
enterprise-manager/emcc/em-fleet-maintenance-upgrade-ui/em-fleet-maintenance-upgrade-ui.md

Hi Madhu,
Can you please check now.
Thanks,
Romit


migrator does not honor Maven settings.xml

Describe the bug
When scanning an application in a corporate environment including internet proxy and internal Maven Repository mirrors definend in a Maven setttings.xml, the scan step fails:
migrator:> scan ./myrepo

scanning './myrepo'

Checked preconditions for 'C:\Users\michael.prankl\git\myrepo'
[ok] Found pom.xml.
[ok] 'sbm.gitSupportEnabled' is 'true', changes will be committed to branch [spring-boot-3] after each recipe.
[ok] Required Java version (17) was found.
[ok] Found required source dir 'src/main/java'.

Maven         14% ?????                       ? 1/7 (0:00:00 / 0:00:00) Unable to download dependency org.springframework.boot:spring-boot-starter-parent:2.7.6 from the following repositories :
  - file:/C:/Users/michael.prankl/.m2/repository/
  - https://repo.maven.apache.org/maven2
Details of the error have been omitted. You can use the stacktrace command to print the full stacktrace.

To Reproduce
Steps to reproduce the behavior:

Define a settings.xml containing proxy or mirror:

<settings
    xmlns="http://maven.apache.org/SETTINGS/1.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

	<proxies>
		<proxy>
			<id>my-proxy</id>
			<active>true</active>
			<protocol>http</protocol>
			<host>my-corporate-proxy-host</host>
			<port>80</port>
		</proxy>
	</proxies>

</settings>

run the scan

Expected behavior
The migrator should honor user specific maven settings defined in ~/.m2/settings.xml, and therefore Maven should use the defined proxy for downlodas.
Screenshots
n/a
Stacktrace
org.openrewrite.maven.internal.MavenDownloadingException: Unable to download dependency org.springframework.boot:spring-boot-starter-parent:2.7.6 from the following repositories :
  - file:/C:/Users/michael.prankl/.m2/repository/
  - https://repo.maven.apache.org/maven2
        at org.openrewrite.maven.internal.MavenPomDownloader.download(MavenPomDownloader.java:311)
        at org.openrewrite.maven.tree.ResolvedPom$Resolver.resolveParentPropertiesAndRepositoriesRecursively(ResolvedPom.java:351)
        at org.openrewrite.maven.tree.ResolvedPom$Resolver.resolveParentPropertiesAndRepositoriesRecursively(ResolvedPom.java:362)
        at org.openrewrite.maven.tree.ResolvedPom$Resolver.resolveParentsRecursively(ResolvedPom.java:308)
        at org.openrewrite.maven.tree.ResolvedPom$Resolver.resolve(ResolvedPom.java:297)
        at org.openrewrite.maven.tree.ResolvedPom.resolve(ResolvedPom.java:142)
        at org.openrewrite.maven.tree.Pom.resolve(Pom.java:92)
        at org.openrewrite.maven.MavenParser.parseInputs(MavenParser.java:113)
        at org.springframework.sbm.build.impl.RewriteMavenParser.parseInputs(RewriteMavenParser.java:71)
        at org.springframework.sbm.project.parser.MavenProjectParser.parse(MavenProjectParser.java:102)
        at org.springframework.sbm.project.parser.ProjectContextInitializer.initProjectContext(ProjectContextInitializer.java:54)
        at org.springframework.sbm.engine.commands.ScanCommand.execute(ScanCommand.java:57)
        at org.springframework.sbm.shell.ScanShellCommand.scan(ScanShellCommand.java:70)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at org.springframework.shell.command.invocation.InvocableShellMethod.doInvoke(InvocableShellMethod.java:306)
        at org.springframework.shell.command.invocation.InvocableShellMethod.invoke(InvocableShellMethod.java:232)
        at org.springframework.shell.command.CommandExecution$DefaultCommandExecution.evaluate(CommandExecution.java:158)
        at org.springframework.shell.Shell.evaluate(Shell.java:208)
        at org.springframework.shell.Shell.run(Shell.java:140)
        at org.springframework.shell.jline.InteractiveShellRunner.run(InteractiveShellRunner.java:73)
        at org.springframework.shell.DefaultShellApplicationRunner.run(DefaultShellApplicationRunner.java:65)
        at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:762)
        at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:752)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295)
        at org.springframework.sbm.SpringShellApplication.main(SpringShellApplication.java:27)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65)

Desktop (please complete the following information):

OS: Windows
Version: 21H2

HI @eidottermihi
thanks for reporting! 🚀
I am aware but will provide a fix for this (today 🤞).

Hi @eidottermihi
the proxy settings are not yet read by OpenRewrite, I talked to them and they'll look into it.
If possible for you, could you maybe try to use mirror settings and see if this works for you after #581  was merged?

Hi @fabapp2
I tried to start the migrator with your changes. It fails to start because RewriteMavenParser doesn't have a default constructor and cannot be autowired. Any particular reason why MavenSettingsInitializer is not instantiated by the class itself? This way the app is starting:
    private final MavenSettingsInitializer mavenSettingsInitializer = new MavenSettingsInitializer();

    public RewriteMavenParser( Path projectRoot) {
        parser = initMavenParser(new RewriteExecutionContext(), Optional.ofNullable(projectRoot));
    }

    public RewriteMavenParser() {
        parser = initMavenParser(new RewriteExecutionContext(), Optional.empty());
    }

Hi @sleicht sorry for pointing you to an erroneous app.
The reason that the MavenSettingsInitializer´ was added was simpler testing (and arguably separation of concern).  But to make testing simpler it needs to be replaceable, thus the constructor injection. I removed the RewriteMavenParserconstructor taking aPath` which was not a good idea and was preventing DI and leading to the error you mentioned.
It's merged and should work now.

No worries @fabapp2
Thank you for fixing this issue and maintaining this project.

I also have a user defined settings.xml in my Users folder (Windows), where im pointing to a gitlab server. This takes me to a UnknwonHostException:
Checked preconditions for '/mnt/c/projects/project-mock'
[ok] Found pom.xml.
[ok] 'sbm.gitSupportEnabled' is 'true', changes will be committed to branch [migrator] after each recipe.
[ok] Required Java version (17) was found.
[ok] Found required source dir 'src/main/java'.
Maven        100% │██████████████████████████████████│ 2/2 (0:00:02 / 0:00:00) Failed to download dependencies for pom.xml:

4.0.0
example.demo
project-mock
2.0.1
<!--~~(example.demo:project-bom:0.8.0 failed. Unable to download POM. Tried repositories:

https://repo.maven.apache.org/maven2: java.net.UnknownHostException: repo.maven.apache.org)~~>-->
example.demo
project-bom
0.8.0

How can i resolve this issue?

Hi, @Avagenzo the current releases as well as code in main branch don't support Maven setttings.xml.
This is the issue for the support in the version/revamp branch.


Update ko_kr.json

Thanks!

@kalucky0 You need to update Crowdin to apply this, as atm, every build reverts this


Create demo + demo video

Note: The submission is the COCOpen-OpenCV github repository. The code submission does not include training detectron2. The code submission should include a demos/visualize.py file which visualizes a subset of the generated dataset so that users can see for themselves the annotations produced by COCOpen. This file will be based on the Dataset_Verification.ipynb, but it will generate the mask visualization images in a python script and save images to a folder (make sure to add the folder to the .gitignore!). Will also need to update the environment.yml file to install detectron2 dependencies.
The demo includes training detectron2, generating a model, and qualitatively (and quantitatively?) demonstrating the performance of the model. All code for this demo is not part of the COCOpen-OpenCV repository.
The demo video should be ~5 minutes in duration and must:

Explain the algorithm. The explanation will include how it works, the sequential flow of data (steps of the process), approximate run time of each step, and memory requirements (time and space complexity).
Demonstrate the impact of the algorithm. We could include a demonstration of wire segmentation from a point cloud in real time, and a reach goal could include some type of real-time perception+wire manipulation with the robot.

Dataset verification currently requires installation of detectron2 in the conda environment. Can we split out visualization functions so that users do not have to install detectron2 (which also requires installation of pytorch)?

Created conda environment installation .yml comprising detectron2, pytorch, torchvision, and torchaudio (cpu-only version) + all cocopen-env dependencies and committed to demo_environment.yml. The cocopen dependencies are still in environment.yml in config/.
Install detectron2:
conda install -c conda-forge detectron2
Install pytorch:
conda install pytorch torchvision torchaudio cpuonly -c pytorch

detectron2 will require its own installation instructions for the demo. It will not install in the conda environment. It can be installed with:
python -m pip install 'git+https://github.com/facebookresearch/detectron2.git'

Created demo/ folder with visualization of annotations for the auto-generated images. Added visualization to repo README.md.

Training detectron2 will require installation of pytorch with cuda enabled in the conda environment. Here are the available previous versions of pytorch (which are compatible with detectron2). I plan to create a separate conda environment for training detectron2 (separate environment from visualizing results produced by cocopen or from generating a dataset with cocopen).


Add Startup.cs to tests

First part of changes to fix https://github.com/open-telemetry/opentelemetry-demo/issues/748
See https://github.com/open-telemetry/opentelemetry-demo/pull/746#discussion_r1105341222
I'll add CI in separate PR.

You are executing tests, but the code you are executing is not used in Program.cs

Do you mean I shoul revert changes from #489?

You are executing tests, but the code you are executing is not used in Program.cs

Do you mean I should revert changes from #489?

I am not expert in ASP.NET Core, but more or less, yes You should keep changes made directly in Program.cs.
Now, you have created class which is used only by tests, not in the normal program execution.
@cijothomas, FYI


iPhone 6/7 Plus @ min-width

Hi, thanks for working on this framework.
iPhone 6/7 Plus and Google Mobile Friendly test (1) is showing the full version instead of the responsive grid. Is there any thoughts on increasing the "min-width" for grid and headlines?
Current:
@media (min-width: 40rem) {
Quick fix:
@media (min-width: 45rem) {
Version

milligram: 1.2.3
normalize.css: 5.0.0

Thanks.

https://search.google.com/search-console/mobile-friendly

Sharing same though as @dnohr
@media (min-width: 45rem) also seemed to have fixed the iPhone 6+ responsiveness for me.

@dnohr @rafaelkallis Thank you for reporting this issue. I'll analyze this problem ASAP

Any update?

@benjamin79 Apparently, yes. The expected behavior should be this one:

@dnohr @rafaelkallis Please, if necessary feel free to reopen or open a new!
For now, I will close this issue.

Getting this bug 5 years later on an ios device and fixed it using the same fix.
@media (min-width: 45rem) {
This isn't possible to replicate in browser emulators, so this makes troubleshooting the issue especially painful. It'd be great to patch the lib or find out why ios (both chrome and safari) don't handle the 40rem value as expected.


Fix E2E: remove CVE-2022-30945 from qa:ose-jenkins

Description
Remove CVE-2022-30945  from the list of vuln matching quay.io/rhacs-eng/qa:ose-jenkins.
E2E tests started failing (ull-ci-stackrox-scanner-master-e2e-tests/1613715170297647104). My understanding the CVE-2022-30945 was affecting OCP 4 (only major version) but recently (Last Modified: January 12, 2023 at 10:04:36 PM UTC) the 4.8 OVAL was published with a more specific matching.
Tests
CI.

Admittedly I was trying to understand why this was causing failures as well. From the perspective of the 'dumps' I noticed that CVE-2022-30945 no longer appeared in
image/scanner/dump/rhelv2/vulns/RHEL8-openshift-4-including-unpatched.json
but now appears in
image/scanner/dump/rhelv2/vulns/RHEL8-openshift-4.8.json
I'm not following why the CVE would no longer be in the scan results for quay.io/rhacs-eng/qa:ose-jenkins.  qa:ose-jenkins hasn't changed, which leads me to assume the CVE would still exist until qa:ose-jenkins is updated

Admittedly I was trying to understand why this was causing failures as well. From the perspective of the 'dumps' I noticed that CVE-2022-30945 no longer appeared in
image/scanner/dump/rhelv2/vulns/RHEL8-openshift-4-including-unpatched.json
but now appears in
image/scanner/dump/rhelv2/vulns/RHEL8-openshift-4.8.json
I'm not following why the CVE would no longer be in the scan results for quay.io/rhacs-eng/qa:ose-jenkins. qa:ose-jenkins hasn't changed, which leads me to assume the CVE would still exist until qa:ose-jenkins is updated

Take a look at https://access.redhat.com/security/cve/CVE-2022-30945. As of January 12, 2023, this CVE is now fixed for this package running on Red Hat OpenShift Container Platform 4.8 via https://access.redhat.com/errata/RHSA-2023:0017. Typically, when a vulnerability (denoted by a CVE) is fixed for a Red Hat product, the OVAL feed removes the top-level vulnerability definition for the CVE and replaces it with the corresponding RHSA/RHBA/RHEA (RHSA in this case and most others). You noticed it still referenced in image/scanner/dump/rhelv2/vulns/RHEL8-openshift-4.8.json. That is because the corresponding RHSA will reference all fixed CVEs. The CVE just won't be the top-level vulnerability definition, though. See the corresponding OVAL v2 feeds here: https://access.redhat.com/security/data/oval/v2/RHEL8/.
When it comes to OpenShift-related vulnerabilities, it is assumed any unfixed vulnerability affects all minor/patch versions of the related major version of OpenShift until it is fixed. In this case, a fix was introduced to OpenShift 4.8.
So, this package in our test is no longer affected by the original CVE, as the CVE now no longer exists in the OVAL feeds, and it is replaced with RHSA-2023:0017. This package is not affected by this RHSA either, as only versions below 4.8.1672842762-1.el8 are affected, and we are using 4.10.1650890594-1.el8.

Thanks for the explanation Ross!


Minor edit to CONTRIBUTING.md to list checks

This PR is a small text edit to CONTRIBUTING.md to address issue #40 and make automatic checks clearer to new contributions, to reduce potential friction.

Thanks, I've made some tweaks based on those comments.

What about "we recommend you run local checks" as a middle ground between making it sound like unnecessary and making it mandatory?

Agreed.


⚠ ClamAV has degraded performance

In 9162fc0, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 72 ms

Resolved: ClamAV performance has improved in e3ec66a.


feat: upgrade to Expo SDK 52

Please verify the following:

[ ] yarn test jest tests pass with new tests, if relevant
[ ] yarn lint eslint checks pass with new code, if relevant
[ ] yarn format:check prettier checks pass with new code, if relevant
[ ] README.md (or relevant documentation) has been updated with your changes
[ ] If this affects functionality there aren't tests for, I manually tested it, including by generating a new app locally if needed (see docs).

Describe your PR

Upgrades to Expo SDK 52 and react-native 0.76.2
General upgrade commands were:

yarn<EMAIL_ADDRESS>npx expo install --fix

CLI

Removes New Architecture question from experimental flag, can use --newArch

Boilerplate

Updates Expo packages as per npx expo install --fix
Reworks expo-splash-screen configuration via config plugin (as recommended) over app.json splash keys
Remove react-native-drawer-layout patch now that v4 was released
Update react-native-mmkv version for new architecture to be compatible with react-native 0.76.x
Updates new arch flag at root expo key in app.json instead of build properties plugin as per changelog

First of all, thank you so much for this @frankcalise
For anyone (just like me) wondering to get expo sdk 52 working:
npx ignite-cli@latest new MyApp
yarn add<EMAIL_ADDRESS>npx expo install --fix

Enable new arch and run expo prebuild

https://github.com/infinitered/ignite/issues/2847#issuecomment-2486125532
add this to your app.json:
{
  "expo": {
    "newArchEnabled": true
  }
}

and then run
npx expo prebuild --clean && npx expo run:android

:tada: This PR is included in version 10.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


bug fix (again!): confused setTimeout with setInterval

Sorry 'bout this...

Thanks! By the way, I noticed:
60300 - (Date.now() % 60000)); // We aim for 300ms into the next minute to ensure we make it!

Which obviously isn't what we do in all the other clocks. Did you notice a problem with the code we use for the other clocks, or you were just playing it safe? :)

Did you notice a problem with the code we use for the other clocks, or you were just playing it safe? :)

There is, technically, a race condition in how it was done in the clock code I adopted. The re-draw could start at 12:03:59.999 and display "12:03". The next setTimeout() could then be called at 12:04:00.001, which schedules the next re-draw for 12:05:00.000
There are technically better ways of dealing with that race condition, but I don't think many people will notice a 0.3 second delay.
On the subject of time, I'm thinking about automatic DST changes. It's frustrating that a watch that could "take me to the moon" can't deal with the clock change. I should be able to do it in javascript, but I'm wondering - should it be relegated to the underlying OS? Would you prefer if I wrote a library in C?

I'm thinking about automatic DST changes

Last time I looked there were quite a lot of different DST zones/arrangements (which I believe do occasionally change), that you might not want stored in the firmware (or even JS). It would be great if this functionality could be added to the Languages app - so as soon as you put in your country, it can figure out what dates it has to change over at...
I guess it may even be possible to abuse Date on the web browser to work out what the dates/amounts for daylight saving are, so we don't have to store/maintain a list?

If you have to maintain the list yourself, I think that's probably more hassle than just clicking 'set time' to update your Bangle twice a year.
What about what I suggested about figuring out from the Web Browser's Date implementation what the rules are? There seems to be some examples on Stack Overflow

I think you misunderstand. You only have to set your rules for your watch once. So I'd set my watch to DST starts last Sunday in March at 2am and DST ends last Sunday in October at 3am. I'd only have to do that once (presumably when I'm setting up my timezone anyway) -- and once again if the EU ever wakes up and gets rid of DST altogether!
Any other solution requires the watch to at least periodically connect to an external source of information. I'm aware the watch
periodically gets the time from an attached phone (though I don't know how often) - which is good, but it's just better (not to mention a whole lot cooler) to stay up late in March/October and see the watch correct itself on the hour. :)

... in case you are interested, I have written the settings.js file. I think it should be easy enough to follow, and it (so far) covers everyone but the Iranians. It should also be future-proof.


Create Snapshot For Fork

Fixes #N/A
Description
How was this change tested?
Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
We've detected an issue with your CI configuration that might affect the accuracy of this pull request's coverage report.
To ensure accuracy in future PRs, please see these guidelines.
A quick fix for this PR: rebase it; your next report should be accurate.

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 82.676%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
5011

Relevant Lines:
6061

💛  - Coveralls


Vicuna-7B returns incorrect choice

The bug
Hi, thanks for the effort of developing this awesome library.
When I tried to use the select function on my local Vicuna-7B, the function is not working as expected, similar to #17.
However, there are two issues:

The selection content is not hidden.
Generated content is out of choices.

To Reproduce
# Modified the official guide to load Vicuna-7B
vicuna_path = '/path/to/my/checkpoints/vicuna-7b/'
llm = guidance.llms.transformers.Vicuna(vicuna_path, device_map="auto")

program = guidance('''Is the following sentence offensive? Please answer with a single word, either "Yes", "No", or "Maybe".
Sentence: {{example}}
Answer:{{#select "answer" logprobs='logprobs'}} Yes{{or}} No{{or}} Maybe{{/select}}''', llm=llm)
executed_program = program(example='I hate tacos')

The returned result:
Is the following sentence offensive? Please answer with a single word, either "Yes", "No", or "Maybe".
Sentence: I hate tacos
Answer: Yes No Maybee Yes

Issue 1: The selection content is not hidden.
We can see that instead of generate the choice only, the choices are also returned.

Issue 2: Generated content is out of choices.

As shown in figure above, 'e Yes' is not a valid choice.
System info (please complete the following information):

OS (e.g. Ubuntu, Windows 11, Mac OS, etc.): Linux
Guidance Version (guidance.__version__): 0.0.63

Same issue on 0.0.64, I'm able to replicate using the jsonformer example

Facing the same issue, any updates on this bug?

Sorry it took us so long to get to this. We made a lot of changes in the new release, hopefully select is now working properly!


Property returns null in model when the property has the term "Attributes" in its name

In my project I wanted to pass some JSON to a property in my model.
In the model I have a mutator which was to perform some transformation prior to submission. However even though the property contained the "additionalAttributes" data in the repository, once it got to the model the  "additionalAttributes" property was empty.
I tried everything to see what was wrong. I then decided to test to see if it was a bug caused by the word "Attributes" in the property name. Sure enough when the name was changed the property came in just fine.
An example is included below, I only included the relevant bits for brevity. In both cases the field exists in the table and the fillable property.
MyRespoitory.php
$data['additionalAttributes'] = json_encode($additionalAttributes);
Log::debug($data);
return MyModel::create($data);

The following returns null.
MyModel.php
Log::debug($this->additionalAttributes);

But the next example works fine. The only change is the name.
MyRespoitory.php
$data['additionalStuff'] = json_encode($additionalStuff);
Log::debug($data);
return MyModel::create($data);

The following returns the expected output.
MyModel.php
Log::debug($this->additionalStuff);

@boneill81 can you share the mutator you have?

Closing for lack of activity. Please feel free to reply if the issue is still there.


Changing screen focus will sometimes result in null focus

Occasionally moving focus between screens using screen -f prev | next will cause no window to be focused at all. window -f prev | next then does nothing. Using screen -f prev | next will "fix" the issue and focus a window again.

This turned out to be rather tricky to implement.
In the latest commit, this is what happens for me:
I do screen -f prev|next|id and the new monitor gets focus,
the first leaf node gets Kwm focus however OSX does not focus it.
This makes it possible for the user to restore focus with window -f prev|next.
This same issue exists for window -f prev|next if focus cycled to a different screen.


Enum Requests

Could you please consider to change Option into Enum following fields:
Table   Name                                 Field
43  	   Purch. Comment Line        Document Type
48   	   Invt. Posting Buffer            Account Type
80       Gen. Journal Template        Type
81       Gen. Journal Line                FA Posting Type
82       Item Journal Template        Type
156     Resource                             Type
233     Item Journal Batch              Template Type
246     Requisition Line                   Replenishment System
5520   Unplanned Demand            Demand Type
5601   FA Ledger Entry                   FA Posting Type
5621   FA Journal Line                    FA Posting Type
5870   BOM Buffer                         Type
5956   Resource Skill                      Type
7311   Warehouse Journal Line      Source Subtype
99000760  Calendar Absence Entry     Capacity Type

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


does flamego need to limit of uniqueness of injector.Map and injector.MapTo ?

Component
Core framework
Middleware
https://github.com/flamego/
Is your feature request related to a problem? Please describe
type User struct {
    Name string
}
Flame.Map(User{Name: "A"})
Flame.Map(User{Name: "B"})

user don't know which is used
Describe the solution you'd like
func (inj *injector) Map(values ...interface{}) TypeMapper {
	for _, val := range values {
		if _, ok := inj.values[reflect.TypeOf(val)]; ok {
			panic(fmt.Sprintf("unable to map duplicate value: %v", reflect.TypeOf(val)))
		}
		inj.values[reflect.TypeOf(val)] = reflect.ValueOf(val)
	}
	return inj
}

same as MapTo
Describe alternatives you've considered
support  multiple instances in long term?
Additional context
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Thanks for the feedback!
However, being able to overwrite existing value in the injector is a designated feature: https://flamego.dev/custom-services.html#overriding-services


GWTBoostrap Widgets are not working in layout editor preview due to unattached gwt widgets

@pefernan could you please try and see if it fix your issue?

IDK if this explains things https://issues.jboss.org/browse/ERRAI-936 (but not a solution!)

@manstis this is related. GWT widgets are not attached when u added then dynamically to a @Templated, preventing the correct initialization.
Using DOMUtil.appendWidgetToElement( div, gwtDivWrapper ) attach them and fix the issue (hopefully).

+1

+1


kar de ab to

The Tanmay_a2.txt has over 1500 relevant images.
And urls.txt has over 6500 urls but quiet a few are irrelvant

Edit the description


[wip] Issue#70 restart websocket through session id

restart websocket when it dies in client_backend #70
Jush showing the idea, need to debug

directly use conversation_id and remove session_id.
debug successfully in normal situation.


Compilation is currently broken on master

There is a compilation error:
[ 17%] Building CXX object quic/fizz/handshake/CMakeFiles/mvfst_fizz_handshake.dir/FizzPacketNumberCipher.cpp.o
/private/home/odelalleau/src/mvfst/quic/fizz/handshake/QuicFizzFactory.cpp:54:20: error: ‘fizz::TLSContent {anonymous}::QuicPlaintextWriteRecordLayer::write(fizz::TLSMessage&&, fizz::Aead::AeadOptions) const’ marked ‘override’, but does not override
   54 |   fizz::TLSContent write(
      |                    ^~~~~

This seems to be caused by c84d57ba726ff25557a35093c6ed253dda58e22c -- I suspect that this commit depends on an update to fizz that hasn't been pushed out yet.

apologies for the breakage.
Commit sync to github was blocked for a while.
this should be fixed now


fix EADDRNOTAVAIL on windows error

I applied a refactored version of this in https://github.com/jhurliman/node-motionblinds/pull/8, thanks for the contribution!

I've encountered the same issue, with the library working on linux but not windows.
After investigating, the error happens on the line:
recvSocket.bind(UDP_PORT_RECEIVE, MULTICAST_IP)

Which is present on the refactored fix. Removing the MULTICAST_IP parameter from the bind call, and letting MULTICAST_IP be added to the group in the listening event is a fix.


formatting comments

What this PR does / why we need it:
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Release note:

Codecov Report

Merging #2 (051cb6b) into fix-exporter (0e5fdc6) will decrease coverage by 0.05%.
The diff coverage is 21.62%.

@@               Coverage Diff                @@
##           fix-exporter       #2      +/-   ##
================================================
- Coverage         71.43%   71.38%   -0.06%
================================================
  Files               144      144
  Lines             13038    13068      +30
  Branches           1562     1564       +2
================================================
+ Hits               9314     9328      +14
- Misses             3196     3207      +11
- Partials            528      533       +5

Impacted Files
Coverage Δ

delfin/exporter/prometheus/exporter_server.py
0.00% <0.00%> (ø)

delfin/exporter/prometheus/prometheus.py
25.28% <22.22%> (-0.80%)
:arrow_down:

delfin/drivers/fake_storage/__init__.py
93.75% <100.00%> (ø)

delfin/drivers/api.py
85.22% <0.00%> (-2.87%)
:arrow_down:

delfin/drivers/driver.py
66.66% <0.00%> (-0.61%)
:arrow_down:

...fin/drivers/dell_emc/vnx/vnx_block/navi_handler.py
75.73% <0.00%> (-0.21%)
:arrow_down:

delfin/drivers/dell_emc/unity/unity.py
71.27% <0.00%> (-0.15%)
:arrow_down:

delfin/drivers/huawei/oceanstor/rest_client.py
76.29% <0.00%> (-0.07%)
:arrow_down:

... and 3 more


fixed #1384

This PR fixed #1384 .

This will treat ; as a part of enum variant list, which is not exactly right: in Rust, unlike C++, one should not add ; after types. The code in the issue is accepted, because ; is treated as an empty statement.
 There's some logic in expr_block_contents for handling ; but looks like it doesn't always work.

Thanks for your review. I'll try again :)
Although I've read most parts of TRPL, I'm still a noob of Rust and the reason why I want to contribute to this project is that I think it might be an effective way to master Rust.
I'll study more about Rust to avoid (or maybe just eliminate) making PR like this.

Hi, after reading the according parts of the reference here and the code, I think the problem is in items_without_modifiers, at the end of which it checks whether the current token is semi or not.
In expr_block_contents, semi is handled, so I think removing the check at the end of items_without_modifiers will solve this issue.
Am I right?

Yes, this looks like it!
We only should forbid a semicolon in modules.

Ok, then I think I should make another PR and close this one.

Changes look good to me now!
Could you squash them down to a single commit? The correct way is to do interractive rebase:
https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History
https://thoughtbot.com/blog/git-interactive-rebase-squash-amend-rewriting-history
but, in this case, the simpler approach might be to first git reset --soft commit-hash your branch to commit just before
ca35f7a , commit changes again (this effectively squashes the commits into one) and git push --force-with-lease the branch.

Ok, I'll do that.
Thanks very much for you reviews and feedbacks.

Everything is perfect now, thanks!
bors r+


Incorrect no-direct-mutation-state Warning

https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-direct-mutation-state.md
This is happening right now:
constructor(props) {
    super(props);

    // No warning here
    this.state.randomId = Math.round(Math.random() * 1000000);

    this.props.tables.forEach((table, i) => {
      if (table.isOpen) {
        // Here we have a warning
        this.state[`table${i}Shown`] = true;
      }
    });
  }

The first one should be throwing at runtime, since this.state is undefined

What if I have:
state = {};

constructor(props) {
    super(props);

    // No warning here
    this.state.randomId = Math.round(Math.random() * 1000000);

    this.props.tables.forEach((table, i) => {
      if (table.isOpen) {
        // Here we have a warning
        this.state[`table${i}Shown`] = true;
      }
    });
  }

in that case, I would certainly expect a warning there.

Actually there should not be warnings in any of both places

The "direct state mutation" is able in any part of the constructor (sync)

Ok, so, clearly there is something that I'm missing.
Could you explain to me why I see a warning inside the forEach?
Thanks

El 7 jun 2018, a las 02:44, Jordan Harband<EMAIL_ADDRESS>escribió:
The rule only allows assigning this.state in the constructor. It is never OK to mutate it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Sure - first, the state = {} in the class body is equivalent to putting this.state = {} in the constructor just after the super call. The bug is that the warnings aren’t the same in those two cases.
Second, the rule is designed to prevent any mutation of the state object after it’s created. So, you should see a warning inside the forEach, but also on the randomId line.
In other words, you should build up the entire state object before assigning it to the instance.

Actually, I'm not seen and I should not see a warning in the randomId line.
The state can be manipulated in the constructor as much as we want. It' doesn't affect the React state.
I got your point after checking what you said in https://github.com/yannickcr/eslint-plugin-react/issues/832
I disagree about warning in any place of the constructor. The react-state doesn't know anything about this.state var yet. It's just a var manipulation, not a "React State manipulation". But, anyways... Bug reported.
Thanks you a lot for your time.

The point of the rule is to forbid mutating state in the constructor ever. It does, also, have an effect - mutating an object after creation is slower than creating it all at once.

Additionally, mutation of any kind is always a code smell, especially in react. If you want a different object, clone it and assign the new one,


Password

The possibility of creating a password would be welcome;)

OpenVPN uses a certificate system to allow users to authenticate themselves. There is no need for a password.

On May 10, 2015, at 6:37 AM, Faurest Lupine<EMAIL_ADDRESS>wrote:
The possibility of creating a password would be welcome;)
—
Reply to this email directly or view it on GitHub.

@Stsosz is right, certificates provide a better grade of security than passwords, too.

I agree that passwords are much weaker than certs but I think it would be a nice feature to have the option to set a password with a security warning. The only reason I say this is because many of the people that use my openvpn server are tech illiterate (e.g. grandma)

There are some very valid use cases for this and other settings, I agree.
That said, we limit the number of available options during setup to only the most requested ones so the script is clear and simple even for the less technical users and this hasn't been a very popular request. There are others like cipher or key length selection which were also dismissed to preserve simplicity.
I would suggest a fork if your specific use case needs this.