Revert "Update README.md"

Reverts philb38/pet-clinic#10

@tina done

@tina done

@tina done

@tine done

@tina done

@tina done

@tina done

@tina done

@tina look

@tina look

@tina look

/tina  look

/tina look

/tina look

/tina look

/tina look

/ tina look

mmm / tina, look!

/tina look

mmm / tina, look!

/ tina, look!

/tina, look!

/tina, look!

mmm / tina, look!

/tina look

/ tina look

/ tina look

/hal

/ tina look

/ hal

/ hal

/ hal

/hal

/tina

/paulo look

/paulo look

/paulo review

/paulo - can you please review this pull request?

/paulo - can you check now?

/paulo - can you check now?

/paulo - can you check now?

/paulo - can you check now?

/paulo - can you check now?


Unable to EDIT table and column descriptions in DBEAVER

System information:

Windows 10
DBeaver Community -7.0.2

Connection specification:

Derby Server connecting to JAVADB
JAVADB created in NETBEANS 8.2

Describe your question:
Hi - I am using DBEAVER to connect to a JAVA DB created in NETBEANS. I am unable to edit any of the table or column descriptions from DBEAVER. They are all greyed out. It seems like there is an option / setting I am missing.
Thank you

Hi @jnoctonsmith ,
unfortunately it isn't implemented yet.
Thanks for suggestion

Still not supported by the Derby side.
https://issues.apache.org/jira/browse/DERBY-7008


Aws permission issue

Lambda function fails when trying to load models from S3 with following output
[ERROR] ClientError: An error occurred (AccessDenied) when calling the GetObject operation: Access Denied
Traceback (most recent call last):
  File "/var/lang/lib/python3.7/imp.py", line 234, in load_module
    return load_source(name, filename, file)
  File "/var/lang/lib/python3.7/imp.py", line 171, in load_source
    module = _load(spec)
  File "<frozen importlib._bootstrap>", line 696, in _load
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/var/task/src/handler.py", line 55, in <module>
    models = load_models(s3, bucket)
  File "/var/task/src/handler.py", line 39, in load_models
    response = s3.get_object(Bucket=bucket, Key=f"models/{style}_net_G_float.pth")
  File "/var/runtime/botocore/client.py", line 357, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/var/runtime/botocore/client.py", line 676, in _make_api_call
    raise error_class(parsed_response, operation_name)
[ERROR] ClientError: An error occurred (AccessDenied) when calling the GetObject operation: Access Denied Traceback (most recent call last):   File "/var/lang/lib/python3.7/imp.py", line 234, in load_module     return load_source(name, filename, file)   File "/var/lang/lib/python3.7/imp.py", line 171, in load_source     module = _load(spec)   File "<frozen importlib._bootstrap>", line 696, in _load   File "<frozen importlib._bootstrap>", line 677, in _load_unlocked   File "<frozen importlib._bootstrap_external>", line 728, in exec_module   File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed   File "/var/task/src/handler.py", line 55, in <module>     models = load_models(s3, bucket)   File "/var/task/src/handler.py", line 39, in load_models     response = s3.get_object(Bucket=bucket, Key=f"models/{style}_net_G_float.pth")   File "/var/runtime/botocore/client.py", line 357, in _api_call     return self._make_api_call(operation_name, kwargs)   File "/var/runtime/botocore/client.py", line 676, in _make_api_call     raise error_class(parsed_response, operation_name)

Your need to create your own s3 bucket


Refactor dendrogram

Refactored dendrogram in order to add synapses to it later. Will be a separate PR.

Example outputs. You can see that dendrogram became wider. It's because I've added a horizontal padding. Probably I should remove it for backward compatibility. Also I put the leftmost section at (0, 0). This way no dendrogram is on negative X axis. This change I would insist to keep.
Before refactor:

After refactor:

Cool, looks great.

Probably I should remove it for backward compatibility.
I think it's ok - we try and maintain backwards compat, but for diagrams it doesn't have to be exact, imo.

Example output for the biological cell.
Before refactor:

After refactor:

I removed the cycles check and fake SomaSection. @mgeplf and @wizmer please verify.

Re-run the notebook in tutorial/neurom_tutorial.ipynb so that it displays the new-style dendrogram.

@wizmer I ran it and it worked fine. If you see a problem please say it directly.

It works, but the picture of the dendrogram cell #6 is the one from the old algo, so I just re-run this cell and update the notebook.

It works, but the picture of the dendrogram cell #6 is the one from the old algo, so I just re-run this cell and update the notebook.

Thank you for the details. Fixed it. I reran the first two cells for imports + #6 cell.


Only dump with colours if it's a tty

One-line summary
Change to only apply colours when printing to a terminal. If redirected to a file or anywhere else, no formatting is used.

Issue : https://github.com/zalando-incubator/clin/issues/14

Types of Changes
What types of changes does your code introduce? Keep the ones that apply:

Bug fix (non-breaking change which fixes an issue)

@herojan Thanks for the fix! Sorry for the hassle, but please merge or rebase main into your branch to fix the build. After that it it should be good to merge.

@herojan Thanks for the fix! Sorry for the hassle, but please merge or rebase main into your branch to fix the build. After that it it should be good to merge.

:+1:

:+1:


Calculation for xDecompAgg

@kyletgoldberg Can you please help me understand the calculation for xDecompAgg? I understand this is being used as a percentage in waterfall decomposition and calculating ROIs. Thank you for your time.

is there a specific part of xDecompAgg you are having trouble with? if you go into the outputs.R file and/or model.R file you should be able to find the code creating that table

Taken from our schema doc:
xDecompAgg : Numeric. Aggregated decomposed effect.
Pseudo-calc: sum(beta1 * channel1_adstocked_saturated)

Thanks so much @laresbernardo and @kyletgoldberg. This helps. :)


there are some things wrong

the same. it display 404

As per the readme, we no longer have access to ChatGPT raw models until the API is officially available. You can use text-davinci-003 in the meantime.

how to switch to davinci-003 with the OPEN_AI_KEY?

As per the readme, we no longer have access to ChatGPT raw models until the API is officially available. You can use text-davinci-003 in the meantime.

how to switch to davinci-003 with the OPEN_AI_KEY?


Port gripper action controller to ROS2

Fix: https://github.com/ros-controls/ros2_controllers/issues/155
A straight port of gripper action controller
Depend on this branch

One more thing: please add this new package to the github workflows (both ci and lint)!

CI is failing with the following, not sure how to fix it .?
  /usr/bin/bash -c source /opt/ros/foxy/setup.sh && colcon test --event-handlers console_cohesion+ --pytest-with-coverage --return-code-on-test-failure --packages-select effort_controllers forward_command_controller joint_state_controller joint_trajectory_controller gripper_action_controller position_controllers velocity_controllers --mixin coverage-gcc
  usage: colcon [-h] [--log-base LOG_BASE] [--log-level LOG_LEVEL]
                {build,coveragepy-result,extension-points,extensions,graph,info,lcov-result,list,metadata,mixin,test,test-result,version-check}
                ...
  colcon: error: Mixin 'coverage-gcc' is not available for 'test'

CI is failing with the following, not sure how to fix it .?
Don't worry about that, we are fixing it.

I left a few small notes, once resolved, I'm happy to merge & release this.

Rebase on master

Codecov Report

Merging #162 (433df4c) into master (7187083) will decrease coverage by 2.58%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #162      +/-   ##
==========================================
- Coverage   35.27%   32.68%   -2.59%
==========================================
  Files         260       29     -231
  Lines       22560     2435   -20125
  Branches    14620     1462   -13158
==========================================
- Hits         7959      796    -7163
+ Misses       1320      311    -1009
+ Partials    13281     1328   -11953

Flag
Coverage Δ

unittests
32.68% <ø> (-2.59%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...ers/joint_trajectory_controller/src/trajectory.cpp

...ontroller/test/test_forward_command_controller.cpp

...lers/test/test_joint_group_position_controller.cpp

...include/joint_trajectory_controller/trajectory.hpp

...ers/joint_trajectory_controller/src/trajectory.cpp

...ory_controller/test/test_trajectory_controller.cpp

...ontrollers/src/joint_group_position_controller.cpp

...ontrollers/src/joint_group_position_controller.cpp

..._controllers/src/joint_group_effort_controller.cpp

..._controllers/src/joint_group_effort_controller.cpp

... and 279 more

List of missing things to merge:

[ ] Refactor raw pointers
[ ] Remove changelog
[ ] Remove repos link to personal fork
[ ] Simple load/configure tests (add more if you want to!) example here

@JafarAbdi are you able to get around to do these soon-ish?

Sorry for the delay, I'll finish it today

It's failing due to
Err:15 https://packages.microsoft.com/repos/azure-cli focal Release
  Could not connect to packages.microsoft.com:443 (<IP_ADDRESS>), connection timed out [IP: <IP_ADDRESS> 443]
Err:16 https://packages.microsoft.com/ubuntu/20.04/prod focal Release
  Unable to connect to packages.microsoft.com:https: [IP: <IP_ADDRESS> 443]
Reading package lists...
E: The repository 'https://packages.microsoft.com/repos/azure-cli focal Release' no longer has a Release file.
E: The repository 'https://packages.microsoft.com/ubuntu/20.04/prod focal Release' no longer has a Release file.

@bmagyar Are you planning to squash merge this PR or should I squash the commits into smaller chunks .?

Did you guys work out at the WG meeting what exactly needs to be updated here for merging? @destogl @JafarAbdi

@bmagyar, @JafarAbdi
From my side (besides above comments)

[ ] Use C++17 for this package
[ ] Rename the package to "gripper_controllers"

Then I am happy with this PR.

Rebased on master + added the last 3 commits

@bmagyar, @JafarAbdi
From my side (besides above comments)

[ ]  Use C++17 for this package
[ ]  Rename the package to "gripper_controllers"

Then I am happy with this PR.

I addressed both in the last 3 commits

Guys, I had to revert the C++17 changes as that doesn't fly with the Foxy policies but @JafarAbdi please don't delete your branch as we can cherry-pick that commit when we branch for Foxy and move master to Galactic.
Congrats for making it through the review and thanks for your patience.
I'll be merging this when the CI is happy (except for the linting jobs that currently fails to an expired signature key)


Content of static Dictionary for Media cannot be garbage-collected

We are using/creating quite a few VlcControls over time in our application. In this case you can see a increase of memory allocation.
This is because lists of media are held by a static Dictionary in VlcMedia:
        internal static Dictionary<VlcMediaPlayer, List<VlcMedia>> LoadedMedias { get; private set; }
Although they are disposed they cannot be garbage-collected since they are still referenced.
I reproduced the situation with a modified version of the Winforms sample application where I added a button with handler
After disposing Vlc Control and triggering GC, there are still various uncollected vlc instances present. See the following memory analysis:

I'll add a PR, where the list inside the Dictionary will be emptied.

We could even remove the whole dictionary entry, so that the reference to VlcMediaPlayer can be collected as well. See https://github.com/marcomeyer/Vlc.DotNet/commit/0d1a8cb4a6dccd3e2548222bf671b7fbceca2abb
What do you think is it legit? Does it break something I don't see?


Make price function configurable

this should make the auction better testable

https://github.com/trustlines-network/project/issues/319


Fix/build and test plugin

Description
May fixes #16

Fix yarn build:plugin by upgrading yarn to 3.3.1 (see yarnpkg/berry#5127)
Fix yarn test:plugin by squeezing expo-modules (which are just some shell scripts using npx, and don't work in pnp) and directly calling jest.

I'm not using Expo in my projects so I'm not sure everything is ok in the built plugin but will get a try. At least the commands are working now.

Hey, thanks a bunch!  I still ran into one issue when running locally. tsc complained that it couldn't import a bunch of stuff which all comes from @types/node, so I installed that and it worked.
I can't seem to actually commit to this branch (GitHub forks are a bit different I guess), so I'll just merge this as-is and make some edits on master.
Apparently we also need to figure out now why build:plugin and test:plugin don't show up anywhere else; not even CI... 🤔 Maybe these are no longer used? I don't know enough about expo either but it looks like this might not even be a blocker to a release.

Hi, thanks for merging !
I saw the last CI fail after this merge in android examples, I and think I accidentally introduced a bug in the example yarn config https://github.com/maplibre/maplibre-react-native/pull/17/files#diff-b0ffbd64d2ca4a353162daee526a8f8897f945e4588d5d4877eee42f0c21ba81R3
Should be
yarnPath: ../.yarn/releases/yarn-3.3.1.cjs

I can't push a new PR until tomorrow.

Yup yup ;)

No worries; I'll take care of it.


mattermost: 7.5.1 -> 7.5.2

Description of changes

Mattermost v7.5.2 contains low to medium severity level security fixes. Upgrading to this release is recommended. Details will be posted on our security updates page 30 days after release as per the Mattermost Responsible Disclosure Policy.
https://docs.mattermost.com/install/self-managed-changelog.html#release-v7-5-feature-release
Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/1619

Why does it not go into master directly?

Why does it not go into master directly?

Per the staging workflow it appears this is where security fixes go since this is a stabilization fix that will be backported to 22.11.

Why does it not go into master directly?

Per the staging workflow it appears this is where security fixes go since this is a stabilization fix that will be backported to 22.11.

less than 500 rebuilds can go in to master

Per the staging workflow it appears this is where security fixes go since this is a stabilization fix that will be backported to 22.11.

Only mass rebuilds go to staging and mass rebuild with security fixes go to staging-next.

Ah, good to know. Thanks, I'll rebase.


addFavBrewery()

Back end:
Make mutation to add fav brewery
Make resolver to add fav brewery
Front end:
Make mutation in mutation.js to add fav brewery

back end
resolvers and typedefs work correctly
front end
added to mutation.js, might need updating in the future


Add support for Yeelight Ceiling Lamp

Device model
yeelink.light.ceiling1
Device name
Yeelight Ceiling Lamp
Does the device require a MiCloud connection?
Do not know (Most likely yes)
Most devices which were introduced to the market in 2020 and later does not require MiCloud.
Anything special about the device?
Does it already work with the plugin with a limited scope (can be controlled using the auto created switch)?

What is the exact issue with the device? It is being reported as a light device hence it should without issues already work with he plugin.

I figured out the problem.  It is working now.

Good to hear! Thanks for the info!


Storing data in MySQL

Hi There,
I have couple of questions to handle data.

Is it possible to get position of each block while submitting the data
What is the best way to store the data to MySQL DB. I understand we can serialize and store as separate fields, but just wondering in that case how can I fetch the data in the same order I positioned it while creating (Eg., a news article).

BTW, awesome editor out of all available, which plays pretty well with Ionic/Cordova framework :)
--
Cedric

Figured out both of these :) Thanks again for this wonderful editor!!!


https://mconnect.mobilink.com.pk/authenticationendpoint/login.do?acr_values=2&client_id=aropeukiTs585k5ABYN0KTeNbesa&commonAuthCallerPath=%2Foauth2%2Fauthorize&forceAuth=true&max-age=3600&msisdn_header=&nonce=뱟ત퓿䁎핌툖ꍥ袔ꘛ鴏홖&operator=mobilink&passiveAuth=false&prompt=login&redirect_uri=https%3A%2F%2Fecare.jazz.com.pk%2Flogin%2Fmconnect%2FcheckAuthorization&relyingParty=aropeukiTs585k5ABYN0KTeNbesa&response_type=code&scope=openid+phone&state=狛幅䆖흥웵셚냃鹩%40㜡&tenantId=-1234&type=oidc&sessionDataKey=c7fc3934-bf1c-4380-8f4e-15e8d632a913&relyingParty=aropeukiTs585k5ABYN0KTeNbesa&type=oidc&sp=Ecare_Live&isSaaSApp=false&redirect_uri=null&authenticators=USSDAuthenticator:LOCAL#b

1# Request type

[ ] New documentation
[ ] Correction or update

Page to change
If this request relates to an existing article, please give its URL:
Details
Please describe the change you are requesting. If you know of technical experts who can review the change, please mention them.
Related issues
If this request relates to other issues in Bugzilla or GitHub, please provide links:

1

@ar4802182 What's this?

Someone messing around, apparently.


Facing issues using this library in my react native (cli) project: undefined Unable to resolve module timers

@azure/storage-blob:
12.14.0:
React native:
0.70.8
** [Error: undefined Unable to resolve module timers from /Volumes/Data/GSE_NEW_2023/GSE_NEW_ART/EMG-GSE/gsexpress/node_modules/xml2js/lib/parser.js: timers could not be found within the project or in these directories:
node_modules
processors = require('./processors');
setImmediate = require('timers').setImmediate;
defaults = require('./defaults').defaults;

"Could not get BatchedBridge, make sure your bundle is packaged correctly"
I am trying to uploading and downloading image on blob server using of this library, My code are like that:
const { BlobServiceClient, StorageSharedKeyCredential } = require("@azure/storage-blob");
const account = '';
const accountKey = "";
const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);
const blobServiceClient = new BlobServiceClient(
https://${account}.blob.core.windows.net,
sharedKeyCredential
);
const containerName = '<"Here container name">';
const blobName = 'abcd.jpg';
export const uploadingFile_ = async () => {
const containerClient = blobServiceClient.getContainerClient(containerName);
const content = 'Here we will add file';
const blobName = 'newblob' + new Date().getTime();
const blockBlobClient = containerClient.getBlockBlobClient(blobName);
const uploadBlobResponse = await blockBlobClient.Upload(
content,
content.length,
);
console.log(
Upload block blob ${blobName} successfully,
uploadBlobResponse.requestId,
);
};
export const downloadingFile = async () => {
const containerClient = blobServiceClient.getContainerClient(containerName);
const blobClient = containerClient.getBlobClient(blobName);
// Get blob content from position 0 to the end
// In Node.js, get downloaded data by accessing downloadBlockBlobResponse.readableStreamBody
const downloadBlockBlobResponse = await blobClient.download();
const downloaded = (await streamToBuffer(downloadBlockBlobResponse.readableStreamBody)).toString();
console.log('Downloaded blob content:', downloaded);
// [Node.js only] A helper method used to read a Node.js readable stream into a Buffer
async function streamToBuffer(readableStream: any) {
return new Promise((resolve, reject) => {
const chunks: [] = [];
readableStream.on('data', (data: any) => {
chunks.push(data instanceof Buffer ? data : Buffer.from(data));
});
readableStream.on('end', () => {
resolve(Buffer.concat(chunks));
});
readableStream.on('error', reject);
});
}
};
**

The code seems fine. The issue might be caused by dependency installation. Can you share a small repro project?

I'm receiving this error:
Error: Unable to resolve module timers from<EMAIL_ADDRESS>timers could not be found within the project or in these directories:
node_modules@azure\core-http\node_modules
node_modules
15 |   processors = require('./processors');
16 |
> 17 |   setImmediate = require('timers').setImmediate;
I tried running npm install timers but another error followed.

@Moonubanna Did you find solution? I have same issue, @EmmaZhu for me its occurred when simply install @azure/storage-blob with yarn and then run my react-native project

@EmmaZhu same here:
error: Error: Unable to resolve module timers from<EMAIL_ADDRESS>timers could not be found within the project or in these directories:
node_modules@azure\core-http\node_modules
node_modules
15 |   processors = require('./processors');
16 |

17 |   setImmediate = require('timers').setImmediate;
|                           ^
18 |
19 |   defaults = require('./defaults').defaults;
20 |
at ModuleResolver.resolveDependency (C:\Outform\outformvsrfidv0\node_modules\metro\src\node-haste\DependencyGraph\ModuleResolution.js:139:15)
at DependencyGraph.resolveDependency (C:\Outform\outformvsrfidv0\node_modules\metro\src\node-haste\DependencyGraph.js:277:43)
at Object.resolve (C:\Outform\outformvsrfidv0\node_modules\metro\src\lib\transformHelpers.js:169:21)
at Graph._resolveDependencies (C:\Outform\outformvsrfidv0\node_modules\metro\src\DeltaBundler\Graph.js:472:35)
at Graph._processModule (C:\Outform\outformvsrfidv0\node_modules\metro\src\DeltaBundler\Graph.js:260:38)
at async Graph._addDependency (C:\Outform\outformvsrfidv0\node_modules\metro\src\DeltaBundler\Graph.js:371:20)
at async Promise.all (index 2)
at async Graph._processModule (C:\Outform\outformvsrfidv0\node_modules\metro\src\DeltaBundler\Graph.js:321:5)
at async Graph._addDependency (C:\Outform\outformvsrfidv0\node_modules\metro\src\DeltaBundler\Graph.js:371:20)
at async Promise.all (index 0)

@Moonubanna @staudinger @zahrat @marioorlandoout Looks that we need to install stream and timers npm packages.  storage blob SDK relies on these NodeJS modules but they are not available in react-native.  After installing these two, storage blob should work if polyfills are also added properly.  I just tested some sample code with container client and it worked in the Android Emulator.  Here's my changes on top of our react-native app configuration sample: https://github.com/Azure/azure-sdk-for-js/commit/e50a5c278e0b7d57038511e05388495ca169c24d


Conversion from WKT

Please note: issues related to or caused by osmbonuspack will be closed with a
suggestion to open an issue at https://github.com/MKergall/osmbonuspack
(feel free to delete whatever doesn't apply)
Issue Type
[X] Question
[ ] Bug
[X] Improvement
[ ] Build system related
[ ] Performance
[ ] Documentation
Question
I want to know if the osmdroid library has any function to convert WKT to Polygons?
If we cannot use this Issue to add this function, I have not yet worked on the development of the osmdroid library, but I would love to be able to contribute to this project.

Hi @Josue10599
I don't think there's something like that in osmdroid, but I suggest you have a look at https://github.com/MKergall/osmbonuspack where you can find similar things around KML and GeoJSON. And that would be the appropriate project for your generous contribution offer :)

Hi @Josue10599
I don't think there's something like that in osmdroid, but I suggest you have a look at https://github.com/MKergall/osmbonuspack where you can find similar things around KML and GeoJSON. And that would be the appropriate project for your generous contribution offer :)

Right, i am go verify on the OSMBonusPack
Thanks, you respond very fast my question :satisfied:

Right, i am go verify on the OSMBonusPack
Thanks, you respond very fast my question :satisfied:


Don't use avx2 for 16x sad operations

Use sse2 for 16 wide sad operations. The performance difference is
minimal or nonexistent on zen2. On intel platforms, the sse2 version is
~25% faster.

Skylake
get_sad/(BLOCK_16X8, 8) time:   [10.591 ns 10.597 ns 10.604 ns]
change: [-20.664% -20.417% -20.231%] (p = 0.00 < 0.05)
Performance has improved.
Found 13 outliers among 100 measurements (13.00%)
7 (7.00%) high mild
6 (6.00%) high severe
get_sad/(BLOCK_16X16, 8)
time:   [15.695 ns 15.709 ns 15.725 ns]
change: [-24.417% -24.186% -24.019%] (p = 0.00 < 0.05)
Performance has improved.
Found 6 outliers among 100 measurements (6.00%)
2 (2.00%) high mild
4 (4.00%) high severe
get_sad/(BLOCK_16X32, 8)
time:   [25.652 ns 25.677 ns 25.702 ns]
change: [-27.533% -27.430% -27.304%] (p = 0.00 < 0.05)
Performance has improved.
Found 4 outliers among 100 measurements (4.00%)
2 (2.00%) high mild
2 (2.00%) high severe
Found 14 outliers among 100 measurements (14.00%)
10 (10.00%) high mild
4 (4.00%) high severe
get_sad/(BLOCK_16X4, 8) time:   [7.5888 ns 7.5996 ns 7.6139 ns]
change: [-23.254% -22.796% -22.151%] (p = 0.00 < 0.05)
Performance has improved.
Found 14 outliers among 100 measurements (14.00%)
5 (5.00%) high mild
9 (9.00%) high severe
get_sad/(BLOCK_16X64, 8)
time:   [45.660 ns 45.789 ns 45.925 ns]
change: [-31.579% -30.498% -29.836%] (p = 0.00 < 0.05)
Performance has improved.
Found 1 outliers among 100 measurements (1.00%)
1 (1.00%) high mild

zen 2
get_sad/(BLOCK_16X8, 8) time:   [6.1934 ns 6.1991 ns 6.2053 ns]
change: [-0.1840% -0.0043% +0.1942%] (p = 0.97 > 0.05)
No change in performance detected.
Found 8 outliers among 100 measurements (8.00%)
1 (1.00%) low mild
5 (5.00%) high mild
2 (2.00%) high severe
get_sad/(BLOCK_16X16, 8)
time:   [9.3319 ns 9.3466 ns 9.3609 ns]
change: [-0.4160% -0.0864% +0.2086%] (p = 0.59 > 0.05)
No change in performance detected.
Found 2 outliers among 100 measurements (2.00%)
1 (1.00%) high mild
1 (1.00%) high severe
get_sad/(BLOCK_16X32, 8)
time:   [15.980 ns 15.993 ns 16.010 ns]
change: [-0.0956% +0.0721% +0.2079%] (p = 0.39 > 0.05)
No change in performance detected.
Found 6 outliers among 100 measurements (6.00%)
1 (1.00%) low mild
4 (4.00%) high mild
1 (1.00%) high severe
get_sad/(BLOCK_16X4, 8) time:   [5.0187 ns 5.0191 ns 5.0197 ns]
change: [+2.9847% +3.0241% +3.0642%] (p = 0.00 < 0.05)
Performance has regressed.
Found 11 outliers among 100 measurements (11.00%)
1 (1.00%) low severe
6 (6.00%) high mild
4 (4.00%) high severe
get_sad/(BLOCK_16X64, 8)
time:   [29.360 ns 29.374 ns 29.394 ns]
change: [-3.5052% -3.4378% -3.3607%] (p = 0.00 < 0.05)
Performance has improved.
Found 3 outliers among 100 measurements (3.00%)
1 (1.00%) low mild
1 (1.00%) high mild
1 (1.00%) high severe


Is this repository still active?

Hi,
Thank you for creating and sharing this fantastic library for Compose Multiplatform! It's been incredibly helpful, and I truly appreciate the effort and thought that went into building it.
I noticed there hasn’t been much recent activity, so I wanted to check if the project is still being actively maintained.
Thank you again for your hard work on this library—it’s greatly valued by the community!

Yes, this repo is currently active -- I am actively trying to get changes merged in.

I have seen your contributions and its great that the community participates in this project. However, if the maintainer cannot not review or publish contributions it is still stale in my opinion.

The maintainer is also contributing.

I have seen your contributions and its great that the community participates in this project. However, if the maintainer cannot not review or publish contributions it is still stale in my opinion.

Yeah I feel your frustration; I've been trying to update this repo but the lack of communication from the repo owner has been tough. I don't expect immediate responses, but I am trying to make meaningful contributions and without access/responses, it becomes difficult.
If the repo owner needs more support or doesn't want to be the sole maintainer, then I'd like to have a conversation about maintaining this repo without fracturing the community.

Since for me the library does not lack any features it isn't really frustrating. I have seen a lot of really cool libraries over the time that became inactive/deprecated. And since the last release is from April I am just a little worried that this might also be the case here.

If the repo owner needs more support or doesn't want to be the sole maintainer, then I'd like to have a conversation about maintaining this repo without fracturing the community.

That's what i wanted to find out with this issue. If the maintainer needs help, and if there are plans for this library where external contributors can help.

Is there a list of what's left to do for a new release?

@alexzhirkevich

I would like to keep working together if possible, but that is not possible when my comments / PRs / issues go untouched -- and I fully understand that supporting a large open source project is time consuming.
To that end, I think some steps to help mitigate the manual overload for this project/repo include:

Automate builds / releases (this is huge)
Automated testing (doesn't have to be in depth yet, just does the app install / launch on all expected platforms)
Code / repo cleanup

I've been working on some of these changes here: https://github.com/schott12521/ExampleLibrary (note the name/location is temporary, as if I choose to fork compose-cupertino completely then I will rename). For now I'm only publishing to github packages, but the process is automated including tags/releases. If you want to use compose-cupertino with CMP 1.7+, you can do the following:
Add the following to your settings.gradle.kts, making sure that you have set or provided mavenUser and mavenPassword to your github username and a Personal Access Token.
        maven {
            url = uri("https://maven.pkg.github.com/schott12521/ExampleLibrary")
            credentials {
                username = mavenUser
                password = mavenPassword
            }
        }

Then you can depend on the latest version of the library (including my SwipeBox changes), in libs.versions.toml:
cupertino = "0.1.0"

cupertino = { group = "io.github.alexzhirkevich", name = "cupertino", version.ref = "cupertino" }
cupertino-adaptive = { group = "io.github.alexzhirkevich", name = "cupertino-adaptive", version.ref = "cupertino" }
cupertino-decompose = { group = "io.github.alexzhirkevich", name = "cupertino-decompose", version.ref = "cupertino" }
cupertino-native = { group = "io.github.alexzhirkevich", name = "cupertino-native", version.ref = "cupertino" }
cupertino-icons-extended = { module = "io.github.alexzhirkevich:cupertino-icons-extended", version.ref = "cupertino" }

Note that this repo/fork is definitely going to change before I more publicly announce my work.


Check if minBound is negative in decimal

Fixes #62

Thanks @axman6-da. Would you mind adding a regression test for this as well?

I've added a couple of tests, and cleaned up things a bit - I'm happy to revert and try and match the style if you prefer, this just felt more consistent with how I've used and see spec in the past.


In the Storage Systems wizard,  After Review and Create Panel,  404 error

This was displayed after I clicked the create button.
This was on cluster2.  If you tell me where logs are, I can upload them.

Refresh of the GUI works to display them correctly.
The Admin should not have to do a refresh.

this may be the same issue as #32
working with Bipul for the root cause

opened https://bugzilla.redhat.com/show_bug.cgi?id=2014395 to ocs console team

Redhat might solve it, I can't see the same symptom on 1.0.0 so far, closed the ticket, thanks.


How to setup particles.js with React ?

I wanna setup this particles.js library with React application. I have installed with npm install particles.js. Then how to import it and use it? Where should I put particlesjs-config.json file?

You don't need to install that package to have particles in React. There's this package that already creates a particles component in React: https://github.com/Wufe/react-particles-js
There's a deprecation notice here: https://github.com/Wufe/react-particles-js#warning-deprecation-notice that recommends to migrate to react-tsparticles

OoWw can't use it in react?

OoWw can't use it in react?

It’s not recommended since there's a memory leak that can worsen the website performance
You can see an example of that issue here: https://codepen.io/matteobruni/pen/dyZeYOg


Use DITA to manage string content and vars?

OK, maybe this is just a wild and crazy idea? I don't know enough about XSLT to evaluate the idea fully, nor do I know enough about the processing architecture behind the DITA-OT.
My primary interaction with the DITA-OT is through PDF and the PDF2 plug-in. The following is written with this in mind, but should be suitable for all transforms.
Well, here goes ...
DITA is about documentation and managing content, so why not put the DITA-OT strings and graphics into DITA? Move them from XSLT to DITA.
This would encompass the language dependent strings, language dependent graphics, language agnostic graphics and language agnostic 'string constructs' used in headers and footers. There are no doubt other similar strings for other transforms.
It would require a DITA specialisation. Let's call it 'dotvars'. I'm sure someone can improve on this. 'dotvarstopic' & 'dotvarsmap'.
The content model would be necessarily sparse. Firstly to encourage a good match to XSLT variables and constructs, and secondly because the semantic model is at the text, string, image level. In other words, no rich content model, and minimise confusion.
I would suggest that the content model is primarily based upon a specialisation of <dl/>, say:
<dotvarsdl>
    <dotvarsdlhead>
        <dotvarsdthd/>
        <dotvarsddhd/>
    </dotvarsdlhead>
    <dotvarsdlentry>
        <dotvarsdt/>
        <dotvarsdd/>
    </dotvarsdlentry>
</dotvarsdl>

<dotvarsdt/> would provide the XSLT variable name.
Multiple <dotvarsdd/> would provide alternative definitions for the XSLT variable.
<dotvarsdd/> would have a child element of <ditaelement/> to indicate the DITA element that the XSLT transform should choose. In turn, this would have a <ditaattribute/> element to indicate the attribute of the DITA element that the XSLT transform should choose. <ditaelement/> could also contain itself as a child, to correspond to the DITA element tree.
So, an example for the map title might look like this:
<dotvarsdl>
    <dotvarsdlhead>
        <dotvarsdthd>Map title</dotvarsdthd>
        <dotvarsddhd>Alternative definitions</dotvarsddhd>
    </dotvarsdlhead>
    <dotvarsdlentry>
        <dotvarsdt>maptitle</dotvarsdt>
        <dotvarsdd><text conkeyref="document/title"/></dotvarsdd>
        <dotvarsdd>
            <ditaelement>map<ditaelement>title</ditaelement></ditaelement>
        </dotvarsdd>
        <dotvarsdd>
            <ditaelement>map<ditaattribute>title</ditaattribute></ditaelement>
        </dotvarsdd>
    </dotvarsdlentry>
</dotvarsdl>

xml:lang would provide i18n support. The process would match the xml:lang defined by the DITA content with equivalent xml:lang variables.
It would be possible to group variables of the same language into a dotvarstopic with xml:lang at the topic level. Alternatively, it would be possible to group variables of the same type into a topic with xml:lang at the <dotvarsdl/> or <dotvarsdd/> level.
The aim would be to first attempt a match for the specific language, en-GB, or the generic language, en, or with a language agnostic variable.
As an example, there is an international symbol for X-rays that would be language agnostic. However, the Canadians have their own symbol. So if the language of the DITA content were en-CA or fr-CA, then it would pick up the Canadian symbol. Otherwise, it would pick up the international symbol.
How about the string constructs for headers and footers?
Firstly, it is necessary to link variables defined by <dotvarsdl/> to their use in a string construct. Maybe <dotvarsstringvar/>? The XSLT transform would match <dotvarsstringvar>maptitle</dotvarsstringvar> to its definition by <dotvarsdt>maptitle</dotvarsdt>, and then pick up the first  that is not empty, and matches xml:lang.
A string construct could have multiple lines. This would be represented not by multiple <dotvarsdd/>, but by a series of child
<dotvarsblock/>. The use of 'block' might be too close to XSL:FO language. It would be a specialisation of <p/>, but should use naming applicable to a XSLT transform that can produces XSL:FO or XHTML. Therefore, not simply <dotvarsp/>. Hmmm? XHTML does use <p/>! It would, however, be useful to use an element name that signifies it is part of the transform.
It would be necessary to have a mechanism to pick up XSLT generated standard variables. For example: date and time, page number, current top topic title. These would not really have a content model as they would just be place holders. Element names such as: <dotvarsdate/>, <dotvarspagenum/>, <dotvarstoptopic/>? The assumption is that it would be possible to format these with attribute sets, so the elements would be empty.
An example might be:
<dotvarsdl>
    <dotvarsdlhead>
        <dotvarsdthd>Odd page header</dotvarsdthd>
        <dotvarsddhd>Document name and page number on one line, current top topic on second line</dotvarsddhd>
    </dotvarsdlhead>
    <dotvarsdlentry>
        <dotvarsdt>oddpageheader</dotvarsdt>
        <dotvarsdd>
             <dotvarsblock><dotvarsstringvar>maptitle</dotvarsstringvar> | <dotvarspagenum/></dotvarsblock>
             <dotvarsblock><dotvarstoptopic/></dotvarsblock>
    </dotvarsdlentry>
</dotvarsdl>

One new attribute would be very useful, to pick up and connect with XSLT attribute sets: @attribute-set. It would need some careful thought about which elements should have this.
The ANT build would require a new variable: $transformmap to include the dotvarsmap.

Hello David, thank you very much for sharing this idea for improvement. Your recommended change would change a lot and this would lead unknown problems and would break backwards compatibility. Further on, where is the benefit for the user and/or the developer?

I investigated this idea about 3 years ago and found it just made strings management more complex than what it needs to be.
@DJBHollis could you describe what  <ditaelement> and <ditaattribute> are used for? They look like a verbose XML syntax for XPath. Why does the string variable file need matching functionality?

String and graphic management with PDF2 is extremely complex for tech authors and information architects faced with a requirement to edit the stylesheets and create a custom plug-in. Handling them in a more familiar environment, that is DITA, seemed like a good idea. Tech authors and information architects typically do not have advanced XML, XSLT, XSL:FO, and XPath experience.
The idea would be to first process the dotvarsmap to extract the strings, variables and graphics. Then use these to process the main map.
For the X-ray symbol example, once the OT processes dotvarsmap, there would be 3 symbols: a language agnostic international symbol, and the Canadian symbol twice, for Canadian English and for Canadian French. Hence the idea of matching the language of the main content to the language of the string or graphic.
Once the OT processes dotvarsmap, there would also be a series of <ditaelement/>  and <ditaattribute/> which would indicate the elements and attributes from the content to extract to the variables. This would be the equivalent of the XPath constructs.

I'll admit to being a bit nervous ... Like @jelovirt I've thought about using DITA for string files. I eventually ruled it out because I thought I was ending up with something too complicated. (Early on in my DITA days, I did use specialized DITA to author some machine-readable constructs, and ended up backing off as it got harder to maintain.)

String and graphic management with PDF2 is extremely complex for tech authors and information architects faced with a requirement to edit the stylesheets and create a custom plug-in. Handling them in a more familiar environment, that is DITA, seemed like a good idea. Tech authors and information architects typically do not have advanced XML, XSLT, XSL:FO, and XPath experience.

I certainly can't question the background there. That said, I've found that when I specialize enough to create constructs like to those you've described, authors don't view it as DITA -- it just looks like normal XML. That was what made me back away from the specializations mentioned above. It was easier to create a simple XML and document it, than to create a complex specialization and have to explain that it really was DITA under the covers. So, if this were purely a request for a new format to author the strings, my gut reaction would be to better document the current format.

Once the OT processes dotvarsmap, there would also be a series of <ditaelement/> and <ditaattribute/> which would indicate the elements and attributes from the content to extract to the variables. This would be the equivalent of the XPath constructs.

I don't quite understand what the XPath equivalent is used for - is the idea here that the dotvarsmap could say, "Here is a label that I want to appear next to <section>", or "Here is a label that I want to appear next to <note type="attention">"? So that transform output processing any element would check this map to see if a label was available?

The idea was to not just generate string and image variables, but also to create header and footer 'string constructs' in DITA. As these could include, for example, metadata, it would need an equivalent to the XPath constructs to indicate which elements and attributes to extract from the DITA content.

... indicate the elements and attributes from the content to extract to the variables ...

Should have been:

... indicate the elements and attributes from the content to extract to the headers and footers ...

As headers and footers could be multi-line, the idea was to also include <dotvarsblock/>.
I understand what you're saying. Any specialisation would be a 'bridge' into the XSLT, XPath world, and would necessarily need to reflect that world, to some extent.
Also, there isn't a single, standard XPath statement. There would need to be some careful parsing to choose the right one. So, yes, it would increase the complexity for XSLT and XPath. But the benefit would hopefully be a much simpler procedure to set up strings, variables, headers & footers.
What DITA does have, though, is structure. In turn, this can guide the author.
There would need to be a standard or default map and set of topics. These would also provide examples for authors to work with.
Would it be worth flagging this conversation on DITA-Users, and seeing if anyone else has thought along these lines?

I would hope that there would also be a benefit in removing string and management from the DOT.

 The current string files are really inseparable from DITA-OT. That is, they only exist to define strings used by DITA-OT. Is the suggestion that this format would be used by other tools, not just DITA-OT? Or is the suggestion rather that this would become a source file owned by the author, instead of being under the covers inside the toolkit?

What DITA does have, though, is structure. In turn, this can guide the author.

It does ... but if all we are looking for is structure, wouldn't another option be to document the current format with a DTD or Schema?
DITA specialization brings along a lot of requirements. For example, you'd be required to specialize numerous elements just to serve as containers - at a minimum, <body>, <dl>, and <dlentry>. Just thinking about this at a practical level - assuming some method of guided authoring, such as a DTD or Schema, I think all of the extra markup is introducing a lot of complexity to the authoring process. Your sample for Odd page header has 11 elements; it would be at least 14 if you include the root element, title, and body container. The current format only has three, plus two attributes:
<vars xmlns="http://www.idiominc.com/opentopic/vars">
   <variable id="Body odd header"><param ref-name="prodname"/> |
             <param ref-name="heading"/> | <param ref-name="pagenum"/></variable>
...
</vars>

Your suggested format clearly has features that are missing today (the XPATH-like selection, self-documenting headers, etc). But if the primary goal is easier authoring, I'm not sure this is the right fit.
For what it's worth, I say all this as somebody who has done all kinds of things with specialized DITA. But I've been burned by that as well. As a result, I'm wary of designs where the primary goal is to use DITA. I prefer to get my head around the desired features, and only then try to figure out if using DITA would be a good fit.

Addendum to previous content:

I prefer to get my head around the desired features, and only then try to figure out if using DITA would be a good fit.

I do recognize that this may be exactly how you came to the design above, and I'm just missing that fact because I was misled by the title of this issue. So, please continue the discussion...

I have to vote -1 for this one. While I'd love to make the PDF2 plug-in easier to work with, really doing so would require rebuilding the entire thing -- a task that no one has been willing to pay for so far.
I think modifying the PDF2 plug-in to handle strings and localized images in a different way would not be worth the considerable time and development effort.
I also suspect that it would not really solve the entire problem that David wants to address, especially the need to override both the strings file and static-content.xml to build custom headers and footers. And honestly, the overriding the default strings file is probably the easiest part of building a custom PDF style sheet.

 The current string files are really inseparable from DITA-OT. That is, they only exist to define strings used by DITA-OT. Is the suggestion that this format would be used by other tools, not just DITA-OT? Or is the suggestion rather that this would become a source file owned by the author, instead of being under the covers inside the toolkit?

Apologies for any mis-direction. 'string management' was wrong - more like 'string definition'. Just the DOT.

I just can't help thinking there has to be an easier way than chasing around multiple files to track down that 'something' that needs tweaking.

That's a goal I think all of us could get behind ...
The trick is always going to be weighing the balance between a few critical items:

Cost to develop the new feature
Impact to existing code / existing customizations
Benefit of the change

The suggestion here (in its current form) would rank very high in both development cost and in impact to existing code. If I understand it correctly, this would probably break most existing PDF customizations, as @xephon2 hinted in his response above. [As ever, we are severely limited by design choices made 10 years ago, and the fact that so many people worked off of those designs.]
I don't think that level of cost is possible except as part of a general from-scratch redesign of the PDF process. We've talked about that repeatedly at our contributor calls, but as @keberlein said, nobody has been willing to take it on. If that ever happens, it will clearly need to have easier customization as one of the primary design points.

This has been open for quite a while now but I think it's time to close it, for the same reasons given in my previous comment:

This would represent a major architectural change, with major work necessary for implementation. I haven't gotten the impression that any of the current project volunteers are likely to contribute that work.
If we replace the current string / variable process with your suggestion, the impact to existing code and existing customizations would be tremendous. It would require a migration for virtually every PDF customization in existence. That can't happen, especially for something where the benefit is debatable.
In theory, your suggested method could be provided as an alternative string format. However, we're already working to consolidate the two existing methods (string files in xsl/common and variable files in org.dita.pdf2/cfg/common/vars). We're not going to create and maintain a third method just as we're finally about to merge the existing methods.

The only remaining alternative I can think of is to use a specialization like the one you suggest, and use that to generate the string files using the actual toolkit format, for use with your own plugin or customization. That's a fine way to go about it, if you really find that process easier than the existing one (I personally would not). That sort of process is not going to be part of the shipped toolkit code, but could easily go in its own github project or possibly in @drmacro's DITA community.


Add functionality to read rules from a folder

Description
The problem I tried to solve was organizing our rules in my workplace, we had so many rules and maintaining them was getting kind of hard.
The solution was somewhat simple, the rules configMap needed to be updated so that it reads from a folder and scans all files with .yaml extension and build the rules configMap from them.
I hope this feature helps you too because now our rules are much more cleaner and maintainable.
Thanks for this awesome project as well.
with this feature all rules can be in its own folder and you just need to pass the folder name to the rootRulesFolder in the values.yaml
Checklist

[done] I have reviewed the contributing guidelines.
[no need] I have included unit tests for my changes or additions.
[done] I have successfully run make test-docker with my changes.
[done] I have manually tested all relevant modes of the change in this PR.
[ ] I have updated the documentation.
[ ] I have updated the changelog.

Questions or Comments
I am waiting for your comments, if everything is ok then I can write the documentation and etc. for this PR.

Thanks for the submission! I don't see a reason not to include this so please proceed with documentation and changelog updates. Also, I think your PR accidentally included changes to default value, and some formatting changes. Please revert those since they don't appear to be part of your new feature.

Thanks for the comment. Really looking forward to contribute more!
I've updated the chart's readme and changelog.
Also I reverted the formatting of values.yaml file.
I've double checked the changes and tested them once more and everything seems ok .


Add ihm_starting_model_alignment_files table to nup84 example

Would be useful to reference the comparative model alignment files in the nup84 example using the new ihm_starting_model_alignment_files table.

Seems this information is now in the ihm_starting_comparative_models table, the alignment_file_id field.
Should also add this table and reference to the alignment files for mediator and exosome examples if those have comparative starting models.


Searching multiple sources

Hey,
I am trying to implement a search that would query 3 sources.
I could search between a collection that would dynamically update when a different source responds to a request, though I wanted to ask maybe there is a way to do this in a more simple manner. Like instead of adding remote-url, I could, let's say, add object named remote, that would have url, name key, etc in it, for each different source?
If there is no way to do it, maybe I could try to implement it and open a PR? :)

I would probably use remote api handler.
https://github.com/ghiden/angucomplete-alt#remote-api-handler
You can still create a PR but I won't probably take it as it looks to me this is a very specific use case.


Cleanup NSNotification observer code that's not working

Refs https://github.com/DoSomething/LetsDoThis-iOS/blob/50ada10de4fbdc11210bece60c49ee46daf319d6/Lets Do This/Controllers/Cause/LDTCauseListViewController.m#L47
May not need this code at all with #734

Closed in https://github.com/DoSomething/LetsDoThis-iOS/commit/07fe9b73645d843d4e79d87cbca66a86a9fc1f37


Add docker buildx section and use the official install guide for buildah

Hello, I am a code review bot on flows.network.
It could take a few minutes for me to analyze this PR. Relax, grab a cup of coffee and check back later. Thanks!


Canvas 2DContext set_line_dash function takes wrong values

Describe the Bug
The CanvasRenderingContext2d class contains a function set_line_dash which as described in MDN takes a JS array as an input e.g. ctx.setLineDash([5, 15]);
Despite the IDL properly outlining the input as an array the generated file lists the input as a JsValue
Steps to Reproduce

Attempt to change the dash style of a line in a 2d context
See errors thrown in console

Expected Behavior
the CanvasRenderingContext2d :: set_line_dash method should take a js_sys::Array type
Actual Behavior
without allowing for a js_sys::Array input it is impossible to set the line dash style.
Additional Context
By manually changing this line from
        segments: &::wasm_bindgen::JsValue,

to
        segments: &::js_sys::Array,

I was able to correctly draw dashed lines in a context

js_sys::Array implements Deref<Target = JsValue>, so even though set_line_dash doesn't directly take a js_sys::Array it's still perfectly possible to call it with one. If you have a variable array which contains a js_sys::Array, calling set_line_dash(&array) will automatically invoke Deref and convert the array to a JsValue.
Although having it take an Array rather than a JsValue would be more correct, it would be a breaking change.


feat: Allow Disabling the default Exporter

Which problem is this PR solving?
We have had a few requests come in asking for the ability to disable the default exporter. This makes it possible through a new property in the configuration.
Short description of the changes
This adds a new SDK configuration property disableDefaultTraceExporter that, when set to true will disable the default exporter.
How to verify that this has the expected result
Provide this boolean as true in an example and note no events are sent to honeycomb.

@wolfgangcodes I'm strongly in favour of the boolean option, a null option makes me nervous about null/undefined checks and this feels really lightweight and explicit to me!

Only thing I am going to change is push to unshift so that it behaves the same way it does in the previous code.


Exception in psram_gpio_config (IDFGH-1611)

Environment

Development Kit: none
Module or chip used:  ESP32-WROVER
IDF version: v4.0-dev-1322-g018de8101
Build System:         Make
Compiler version: xtensa-esp32-elf-gcc (crosstool-NG esp32-2019r1) 8.2.0
Operating System:     Linux
Power Supply:         External 3.3V

Problem Description
Crash occurs on startup in psram_gpio_config. Unfortunately the application is quite complicated and proprietary, and so I'm still trying to work out how to provide some sort of reproduceable code.
Debug Logs
I (1182) psram: This chip is ESP32-D0WD
Guru Meditation Error: Core  0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC      : 0x40082de3  PS      : 0x00060b30  A0      : 0x80084759  A1      : 0x3ffe3b60
0x40082de3: psram_gpio_config at /home/jeremy/esp/esp-idf/components/esp32/spiram_psram.c:549 (discriminator 6)

A2      : 0x3ffe3b94  A3      : 0x4aa52ec2  A4      : 0x8a952ec2  A5      : 0x00000000
A6      : 0x00000000  A7      : 0xfffffffa  A8      : 0x00013ffc  A9      : 0x3ffe3b40
A10     : 0x00000000  A11     : 0x3ff42000  A12     : 0x00000040  A13     : 0x3ff420c0
A14     : 0x00000000  A15     : 0x00000004  SAR     : 0x0000000f  EXCCAUSE: 0x0000001c
EXCVADDR: 0x8a952ec2  LBEG    : 0x400929a4  LEND    : 0x400929af  LCOUNT  : 0x00000000
0x400929a4: memset at /builds/idf/crosstool-NG/.build/xtensa-esp32-elf/src/newlib/newlib/libc/machine/xtensa/memset.S:133

0x400929af: memset at /builds/idf/crosstool-NG/.build/xtensa-esp32-elf/src/newlib/newlib/libc/machine/xtensa/memset.S:143

ELF file SHA256: 8a1b751dd9af4656d58a0662cd602d60b042277517b48e3fd26ae259dc898452

Backtrace: 0x40082de0:0x3ffe3b60 0x40084756:0x3ffe3b90 0x400d20f4:0x3ffe3bc0 0x40081773:0x3ffe3bf0 0x400795a7:0x3ffe3c30 |<-CORRUPTED
0x40082de0: psram_gpio_config at /home/jeremy/esp/esp-idf/components/esp32/spiram_psram.c:549 (discriminator 6)

0x40084756: psram_enable at /home/jeremy/esp/esp-idf/components/esp32/spiram_psram.c:717

0x400d20f4: esp_spiram_init at /home/jeremy/esp/esp-idf/components/esp32/spiram.c:148

0x40081773: call_start_cpu0 at /home/jeremy/esp/esp-idf/components/esp32/cpu_start.c:162

sdkconfig.txt

Using the sdkconfig file with the hello_world application causes the same crash. It also seems to not be a problem if I disable flash encryption and secure boot.

@jeremyherbert Is it possible something is physically connected to an ESP32 GPIO that is shared with the PSRAM or the ESP32 flash chip?

I don't think so, because I tried this on three separate brand new unflashed PCBs, and this same design has been shipped before. I will continue to investigate. I also tried updating to the latest git rev but same result.

We're hitting a similar issue with v3.3rc - specifically OTA updates cause the same type of error.
In our case I think it's because our bootloader is built under 3.3beta-1. I'm guessing there's something wrong with the startup code that's dealing with backward compatibility. There are so many permutations and combinations it's difficult to follow.

FYI when I revert back to 1f9f39fe4 issue is no longer present

Yes, there is a bug in psram_gpio_config.
Just to make sure that are you using DIO mode for SPI flash with psram and running an older version of bootloader ?
For a quick fix,
static void IRAM_ATTR psram_gpio_config(psram_io_t *psram_io, psram_cache_mode_t mode)
{
    int spi_cache_dummy = 0;
    uint32_t rd_mode_reg = READ_PERI_REG(SPI_CTRL_REG(0));
    if (rd_mode_reg & SPI_FREAD_QIO_M) {
        spi_cache_dummy = SPI0_R_QIO_DUMMY_CYCLELEN;
    } else if (rd_mode_reg & SPI_FREAD_DIO_M) {
        spi_cache_dummy = SPI0_R_DIO_DUMMY_CYCLELEN;
        SET_PERI_REG_BITS(SPI_USER1_REG(0), SPI_USR_ADDR_BITLEN_V, SPI0_R_DIO_ADDR_BITSLEN, SPI_USR_ADDR_BITLEN_S);
    }
    .........

Will merge it and sync soon.

For me it was a clean flash, no old bootloader. But yes DIO for flash.

The fix above works for me too, at least at first blush.

@jeremyherbert Does the above fix also fix the issue for you, despite not using an older bootloader?

I seem to be experiencing a related and similar issue, but from the opposite direction. For me, if I flash a board with 3.2 and then try to OTA a firmware built with 3.0 I get the above failure. I've filed #3932 for this.

I can't reproduce this bug anymore using the latest version, so I am assuming it is fixed.


Improve message index

Add pagination and more information on each thread. Perhaps number of messages or sender name. Also, consider only displaying threads with greater than two or three messages. The short ones are kind of boring.

Pagination and message count added and merged on development.


Hapistrano Deployment Integration

Description
A brief description of the changes.
Reasons
A link to a GitHub and/or JIRA issue (if applicable).
Otherwise, a brief sentence about why you made these changes.

@sestrella I Already made the changes. I think now is more concrete and provide more useful information.
Thanks!


Selectively disable individual tests

What would you like to be added:
A method for selectively disabling one test, perhaps by prefixing the folder name with a reserved character or string, which does not require moving the folder or changing any of the files within it.
Why is this needed:
In complex projects with a complex directory hierarchy, there are cases where tests need to be disabled but only temporarily. For example, when a bug in the software has been identified but is being worked on, the test which exposed said bug needs to not be tested until that bug is fixed. To do so would mean all subsequent runs will fail. If these tests are being run in a CI pipeline for every PR, this will create an enormous amount of failures stunting project progress. Selectively disabling one or more tests in situ will allow the remainder to work as intended.

Probably that could be part of KEP-06, adding a new annotation or something to disable the tests under desired conditions

The KEP is over two years old.

@chipzoller and..? It is not invalid

I support this.


VSCode’s debug configurations viewlet doesn’t appear or show any configurations

Does this issue occur when all extensions are disabled?: Yes/No (Yes)

VS Code Version: 1.70.2
OS Version: Windows 11 Home (build 22000.832)

Steps to Reproduce:

Click on the “Configure Default Build Task…” in the “Terminal” tab and then select “C/C++: gcc.exe active build file” in the “Select the task to be used as the default build task” viewlet.
It’ll create a tasks.json, as usual.

https://user-images.githubusercontent.com/111590440/186833383-1c1cff36-1840-4124-9271-a7c3e5c52ee4.MOV

(the tasks.json file)

Click on “Add Configuration…” in the “Run” tab, then select “C++ (GBD/LLDB)” in the “Select Environment” viewlet.
It’ll open this launch.json file with no configurations, without showing the “Select a configuration” viewlet first (the same happens also with ”C++ (Windows)”).

As you can see in the image below, it should open me this viewlet in the first place.

and then it should open the launch.json file with my selected configuration.

/extCpp

It looks like this is caused by the C++ extension. Please file the issue to the C++ extension repository. Make sure to check their issue reporting template and provide them relevant information such as the extension version you're using. See also our issue reporting guidelines for more information.
Happy Coding!


chore: remove slices.Clone dependency

a = slices.Clone(a) can be simplified as s = append(s[:0:0], s...), so we no longer need to depend to slices package just for cloning a slice. This is the default implementation in slices.Clone in go v1.22. Ref: https://github.com/golang/go/commit/b581e447394b4ba7a08ea64b214781cae0f4ef6c
Using make+copy is actually slightly more performant but it hurts the readability as the code become more verbose. The performance diff is relatively small, we probably don't need it unless we encounter a really edge case.
Here is the list the drawbacks: https://github.com/go101/go101/wiki/There-is-not-a-perfect-way-to-clone-slices-in-Go

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (3c2f9a0) to head (0b59eba).

Additional details and impacted files
@@            Coverage Diff            @@
##            master      #315   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           42        42
  Lines         3700      3700
=========================================
  Hits          3700      3700

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Update README.md

error: Found argument '--dev' which wasn't expected, or isn't valid in this context
[--] then [args]

Motivation
(Write your motivation here)
Test Plan

(Write your test plan here)
Related PRs

(Link your related PRs here)

LGTM


Progressive input

Thanks for making fzf, great UX! This is a feature request, so I'm skipping the template.
I'm using fzf like so:
fd --follow --hidden --no-ignore | proximity-sort . | fzf --tiebreak=index

Works fine, but proximity-sort needs all of the input to process it, so in ~, for example, it ultimately takes a few seconds for anything to appear, which is suboptimal.
Solution A is to have fzf display a "lower-quality" list of paths of my choosing while it's waiting for proximity-sort to produce the first line.
Solution B is to have proximity-sort pipe through the lines coming from fd to fzf as they come, do the necessary processing, somehow signal fzf to start over (and possibly change its tie-breaking mode), and pipe out the sorted data.
In both solutions fzf must wait for the line matching the currently-selected one to be piped in before updating the list, as to avoid jarring jumps. If there's no such line then gotta wait for the end of the input.
Would you be interested in either of these? Or is it already possible, maybe? Comments? :slightly_smiling_face:

Bash zsh fish? There may exist a solution but it’s hard to tell with out more info the fzf —sync (for multi stage filtering) flag comes to mind

Thanks for the suggestions!
To simplify the use case, you can think of proximity-sort as a regular sort. It needs the whole input to process it properly. If proximity-sort were a part of fzf then this would be a non-issue, the sorting would be continuously updated as fd pumps in the data, but this isn't possible with separate tools.
I have since concluded that the best option might be to have fd itself do the sorting, given that fzf doesn't want it.

ok so two that i have tested out that work so far -uu = hidden/noignore
fd --follow -uu | fzf --tiebreak=index --preview='cat {+f} | proximity-sort .'
fd --follow  -uu | fzf --tiebreak=index --bind='f9:toggle-all+reload:fd -uu --follow | proximity-sort .' --no-clear

first one will display your sorted selection in the preview window second one toggles all and sorts from the off tmp file you could remove the toggle all put it on a different binding then manually filter and select/remove the files you want before the reload as its being read from file and not genereated should be much faster + you can start filtering then by the time youve narrowed it down a bit it should be fully loaded

Thanks again!
Hmm, I wasn't able to get either of the suggested workarounds to work (the first one previews only one line, and the second one never updates after pressing F9), but even if I could, I feel like the UX is just not there. The preview would take as long to appear as in the case outlined in the original post, so the utility of it is quite limited, and having to refresh the list manually with a binding is something that a computer should be able to do for me :slightly_smiling_face:

I think part of the issue is the scope of the search where are you running in from? because with your test case if I ran it from my root we are talking over 3 million files so far and counting. if you throw in a couple of filters (fd --type file/directory/link/socket/ --depth nor broke it down into fields indexing them for future use and then ran them in parallel and fed them to fzf I'm just not sure what your searching for but would definitely help to know what your intended target is that your searching for because if you can bring the total files searched down there's a couple of possible workarounds that might work such as running in stages or setting updated variables through array's and heredocs but as it stands right now I just know your searching for everything everywhere and that you want to do it with realtime updates and you want whats closes to you physically first (that being said fd --depth {1..4}) limits your recursive search to 4 folders higher or lower and since your using --follow if your only looking to path out links you can --type=link on fd) but if your just trying to recursivly scan your entire filesystem your not going to get it done the way your hoping (might want to check out filelight light if thats your goal) but theres not much i can do with-out knowing what your hoping to achieve.


Try Remix analyzer on MonitoringService

I saw some messages.  I list them below.  I omit the messages about other contracts that I've already seen.

Potential Violation of Checks-Effects-Interaction pattern in MonitoringService.updateReward(address,address,address,uint256,uint256,address,bytes): Could potentially lead to re-entrancy vulnerability. Note: Modifiers are currently not considered by this static analysis.

Potential Violation of Checks-Effects-Interaction pattern in MonitoringService.monitor(address,address,bytes32,uint256,bytes32,bytes,bytes,uint256,address,bytes): Could potentially lead to re-entrancy vulnerability. Note: Modifiers are currently not considered by this static analysis.

Potential Violation of Checks-Effects-Interaction pattern in MonitoringService.claimReward(uint256,address,address,address): Could potentially lead to re-entrancy vulnerability. Note: Modifiers are currently not considered by this static analysis.

browser/Untitled1.sol:19:9:CAUTION: The Contract uses inline assembly, this is only advised in rare cases. Additionally static analysis modules do not parse inline Assembly, this can lead to wrong analysis results.

browser/Untitled1.sol:95:9:CAUTION: The Contract uses inline assembly, this is only advised in rare cases. Additionally static analysis modules do not parse inline Assembly, this can lead to wrong analysis results.

browser/Untitled1.sol:1811:9:CAUTION: The Contract uses inline assembly, this is only advised in rare cases. Additionally static analysis modules do not parse inline Assembly, this can lead to wrong analysis results.

Gas requirement of function MonitoringService.claimReward(uint256,address,address,address) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function MonitoringService.contract_version() high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function MonitoringService.monitor(address,address,bytes32,uint256,bytes32,bytes,bytes,uint256,address,bytes) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function SecretRegistry.contract_version() high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function SecretRegistry.registerSecretBatch(bytes32[]) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function ServiceRegistry.contract_version() high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function ServiceRegistry.deposit(uint256) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function ServiceRegistry.setURL(string) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.closeChannel(uint256,address,bytes32,uint256,bytes32,bytes) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.contract_version() high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.getChannelInfo(uint256,address,address) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.openChannel(address,address,uint256) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.setTotalDeposit(uint256,address,uint256,address) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.setTotalWithdraw(uint256,address,uint256,bytes,bytes) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.settleChannel(uint256,address,uint256,uint256,bytes32,address,uint256,uint256,bytes32) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.signature_prefix() high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.unlock(uint256,address,address,bytes) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function TokenNetwork.updateNonClosingBalanceProof(uint256,address,address,bytes32,uint256,bytes32,bytes,bytes) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function UserDeposit.contract_version() high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function UserDeposit.deposit(address,uint256) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function UserDeposit.init(address,address) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function UserDeposit.withdraw(uint256) high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

Gas requirement of function Utils.contract_version() high: infinite. If the gas requirement of a function is higher than the block gas limit, it cannot be executed. Please avoid loops in your functions or actions that modify large areas of storage (this includes clearing or copying arrays in storage)

browser/Untitled1.sol:135:9:Loops that do not have a fixed number of iterations, for example, loops that depend on storage values, have to be used carefully: Due to the block gas limit, transactions can only consume a certain amount of gas. The number of iterations in a loop can grow beyond the block gas limit which can cause the complete contract to be stalled at a certain point. Additionally, using unbounded loops incurs in a lot of avoidable gas costs. Carefully test how many items at maximum you can pass to such functions to make it successful.

MonitoringService.recoverAddressFromRewardProof(uint256,uint256,address,uint256,uint256,bytes) : Is constant but potentially should not be. Note: Modifiers are currently not considered by this static analysis.

MonitoringService.updateReward(address,address,address,uint256,uint256,address,bytes) : Variables have very similar names reward and rewards. Note: Modifiers are currently not considered by this static analysis.

MonitoringService.claimReward(uint256,address,address,address) : Variables have very similar names reward and rewards. Note: Modifiers are currently not considered by this static analysis.

MonitoringService.claimReward(uint256,address,address,address): Defines a return type but never explicitly returns a value.

Use assert(x) if you never ever want x to be false, not in any circumstance (apart from a bug in your code). Use require(x) if x can be false, due to e.g. invalid input or a failing external component.

I got a few inspirations.  I created a GitHub issue for each.


GTK Dropdown Menu Crashes GTK Program

Hello
Encountering an issue with GTK drop down menus in Sway specifically(haven't tried other wlroots based WMs/compositors). Raising this issue here as it doesn't appear to be tracked after the close of this issue from Sway:
https://github.com/swaywm/sway/issues/1577
When clicking the menu in gucharmap for example:
(gucharmap:828816): Gdk-CRITICAL **: 10:27:43.550: ../gtk/gdk/wayland/gdkdisplay-wayland.c:1399: Unable to create Cairo image surface: invalid value (typically too big) for the size of the input (surface, pattern, etc.)
Segmentation fault (core dumped)

This is the only output I get from the app.
Only thing I could find in sway.log:
(gucharmap:1018596): Gdk-CRITICAL **: 11:03:11.280: ../gtk/gdk/wayland/gdkdisplay-wayland.c:1399: Unable to create Cairo image surface: invalid value (typically too big) for the size of the input (surface, pattern, etc.)
2020-02-18 11:03:11 - [sway/ipc-server.c:937] Added IPC reply of type 0x80000003 to client 75 queue: { "change": "close", "container": { "id": 20, "name": "Character Map", "rect": { "x": 25, "y": 63, "width": 2510, "height": 1352 }, "focused": true, "focus": [ ], "border": "pixel", "current_border_width": 6, "layout": "none", "orientation": "none", "percent": 1.0, "window_rect": { "x": 6, "y": 6, "width": 2498, "height": 1340 }, "deco_rect": { "x": 0, "y": 0, "width": 0, "height": 0 }, "geometry": { "x": 0, "y": 0, "width": 1440, "height": 810 }, "window": null, "urgent": false, "floating_nodes": [ ], "sticky": false, "type": "con", "fullscreen_mode": 0, "pid": 1018596, "app_id": "gucharmap", "visible": true, "marks": [ ], "max_render_time": 0, "nodes": [ ] } }

Works fine in X.
I do know from using it in X, the drop down extends past the window border. I'm assuming this is related to the "Cairo image surface"
In the referenced issue, it's stated that it will be fixed by wlroots, but that was about two years ago. Is this an abandoned/wontfix issue?
It's not imperative to my use of Sway/Wayland, just a nicety.
Possibly relevant env variables:
GDK_BACKEND=wayland
WINIT_UNIX_BACKEND=x11

Sway config snippet:
set $gnome-schema org.gnome.desktop.interface

exec_always {
    gsettings set $gnome-schema gtk-theme 'oomox-o3312090fucking'
    gsettings set $gnome-schema icom-theme 'oomox-Gredient'
    gsettings set $gnome-schema cursor-theme 'Adwaita'
    gsettings set $gnome-schema cursor-size 27
}

Let me know if you need anything else.
Thanks for all the work on this, it's been an amazing experience thus far.
sway --debug 2> sway.log:
http://ix.io/2c8K
WAYLAND_DEBUG=1 gucharmap &> gucharmap.log:
http://ix.io/2c8L
config:
http://ix.io/2c8P

Your bug report is missing debug logs and your config file. Please add a link to the full debug log file and the config.
Can you run the app with WAYLAND_DEBUG=1 and post the app logs here?

@emersion Updated original post with the output from both of those.

xdg_popup@40.configure(6, -74, 292, 23686)

The height is too big.

Can I do anything to assist further?
I confirmed that in i3, the popup takes the entire height of the screen (1440px in this instance)

It would be interesting to try to see where this big value is coming from in wlroots.

Getting the same issue as @distek too

So this doesn't occur on any other device that I have, one of which is also running nouveau, and two that's on Intel integrated.
I assume that I have, at some point in the past, screwed something up related to this on this particular work station.
@isabelomakhanya , if you're still having this issue, update here and I can leave it open. Otherwise, I'll close it in about a week.

I can't reproduce this with gucharmap, but I did manage to reproduce this with glade, by testing a project that happened to have a GtkMenuBar inside it. Reproduction of this doesn't seem to be reliable; For some reason, I managed to reproduce it a couple of times, but soon after I wasn't able to reproduce it any more. What I have noticed though, is even now that it doesn't crash, the dropdown menus from the GtkMenuBar show up at the wrong location, which might somehow be related?

@FreeFull Have you tested in other stand-alone GTK programs?

gucharmap is still crashing for me

Quick update on this: gucharmap seems to now be native wayland and thus works as expected.

@distek It has had wayland support for a long time. I tried two versions: 13.0.5 and latest master (0402e52d) - they are still crashing.

Could it be a bug in gucharmap; For me it used to crash, but currently it doesn't - the fonts drop-down menu appears as a black rectangle from the top to the bottom of the screen, and the following appears in the sway log:
00:09:30.502 [ERROR] [GLES2] GL_INVALID_VALUE in glTexImage2D(invalid width=293 or height=27868 or depth=1)
00:09:30.592 [ERROR] [GLES2] GL_INVALID_OPERATION in glTexSubImage2D(invalid texture level 0)
Although I can't see the font names, clicking on the rectangle selects an entry so the underlying drop down does work.
I tried running it under KDE (plasma-wayland) with WAYLAND_DEBUG=1, where it worked correctly,  as well as under sway, and I'm attaching the two logs here - in both I clicked to activate the drop down, clicked on a random entry, and then closed the program from the "File" menu:
log-plasma.txt
log-sway.txt
Under plasma, it does xdg_popup@37.configure(6, -29, 249, 1044) while under sway xdg_popup@44.configure(6, -54, 279, 27854)

I had the same with Firefox (93.0.1) today on arch. (wlroots 0.14.1-2 and sway 1:1.6.1-2)
(firefox:15): Gdk-CRITICAL **: 09:19:07.550: ../gtk/gdk/wayland/gdkdisplay-wayland.c:1403: Unable to create Cairo image surface: invalid value (typically too big) for the size of the input (surface, pattern, etc.)


"Terminal" height is too high, make it tiny

Just a feature request.
I do remember the terminal tab is tiny  in some version.
Where does it go in recent versions? Is is possible to make it tiny.

This is what caused the multiple errors in version 0.9.0 I reverted to this size for the time being until I find a fix.

I think I won't be fixing this. I'm done hacking the IDE, we're almost at a stable version and I don't want a fiasco like 0.9.0.


CI: have all lanes running under one workflow

MetalLB is running all of the CI lanes under the "CI" workflow and that allowed us to add merge_group
and merge PRs in a more efficient way.
Should we consider copying that CI structure to the metallb-operator?
See more here: https://github.com/metallb/metallb/tree/main/.github/workflows
and here: https://github.com/metallb/metallb/pull/1861

Yep, and in general bring all the good work that we did on metallb to the operator, that was left a bit behind

fixed by #396


Clarity on api

This change is editing the desc for this endpoint: /rest/v1.2/users/{username}/concurrency The original desc stated you were getting VM and RDC but you do not get any RDC values and it is always 0.  The api for RDC which I've added is: https://api.eu-central-1.saucelabs.com/v1/rdc/concurrency which then requires basic auth to be passed as your sauce creds.  I'm not sure why this isn't in our docs but you can reject it if necessary as there is another section which customers aren't finding and they state it is currently misleading

Attempting to fix/update misleading RDC endpoint for ccy
Description

Added section specific to rdc rather than having it tucked away
Motivation and Context

Clears up misinformation for customers
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ X] Documentation fix (typos, incorrect content, missing content, etc.)

Checklist

[ ] I have read the contributing document.
[X ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Hi @Chaffexd, thanks for the PR! I updated the description for the Get User Concurrency endpoint to clarify the limitation and workaround for RDC.
I also created a Jira task for further improvements to add a section for the endpoint (in the Real Device API Methods) to retrieve concurrency details specifically for RDC.


mutationWithClientMutationId - how to nest mutations?

I want to set up nested mutations where the output of the parent are needed as input to the children.  However I find the source value in the resolver to be ignored by relay in mutationWithClientMutationId.
This field contains the "nesting context" for my nested mutation, ie the the output from the parent mutation.
From the source, with the underscore representing the wanted "context":
resolve: (_, {input}, context, info) => {
      return Promise.resolve(mutateAndGetPayload(input, context, info)).then(
        payload => {
          payload.clientMutationId = input.clientMutationId;
          return payload;
        }
      );
    },

I have been searching all over the internet to find other ways to pass the "nesting context", such as by augmenting the GraphQL context - but cant find any.   Are there any other recommended ways to support nested mutations with Relay?

@tvedtorama, I can't find a context for nested mutations. It looks like it's something out of the standards.
What I recommend you to do is to think about mutations as atomic actions.

You are right that this is not the most common thing, and not a nicely atomic affair.
I need it for a quick and intuitive way to build recursive structures - where the id of the parent becomes the parentId of the nested child.
This could also be handling by making the mutation and payload support the recursive structure, but for the moment that did not seem like the best option.
It works perfectly when the source is allowed to pass into `mutateAndGetPayLoad’.
Here’s an article with some ideas on nesting:
https://medium.freecodecamp.org/beware-of-graphql-nested-mutations-9cdb84e062b5
https://hackernoon.com/graphql-nested-mutations-with-apollo-small-fatigue-max-gain-1020f627ea2e

Got it!
Thanks for the resources :)

the nested mutation is not something that is supported by GraphQL specification.


Certificate error when downloading dependencies

I am getting a certificate error when downloading dependencies today.  This worked on a different machine yesterday.
$ ./activator run
[info] Loading project definition from /Users/bron/Documents/Github/tango_calc/project
[info] Updating {file:/Users/bron/Documents/Github/tango_calc/project/}tango_calc-build...
[info] Resolving com.typesafe.sbt#sbt-echo;0.1.5 ...
[error] Server access Error: java.security.cert.CertificateException: No subject alternative DNS name matching repo.scala-sbt.org found. url=https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/com.typesafe.sbt/sbt-echo/scala_2.10/sbt_0.13/0.1.5/ivys/ivy.xml
[warn] 	module not found: com.typesafe.sbt#sbt-echo;0.1.5

Thanks.

It doesn't look like you're building typesafe config here, did you file this issue on the wrong project?

Sorry, you're right.  This is actually the issue: https://github.com/sbt/sbt/issues/2125


Add Brew push commands

I started to use proposed subcommands, namely brew-push subcommand:
$ pnc brew-push --help
Command performed with user: pnc-test-user
usage: pnc brew-push [-h] {build,build-set,status,cancel} ...

optional arguments:
  -h, --help            show this help message and exit

Brew push commands:
  Commands related to pushing to Brew

  {build,build-set,status,cancel}
    build               Push build to Brew
    build-set           Push build set to Brew
    status              Get status of Brew push.

@thescouser89 @jbartece @michalszynkiewicz @matejonnet Thoughts?

The cancel command is no longer used.


How to secure PHP resources with HTTP authentication

Topic Suggestion
How to secure PHP resources with HTTP authentication
Proposal Submission
Proposed title of article
How to secure PHP resources with HTTP authentication
Proposed article introduction
HTTP authentication is the procedure of figuring out and verifying customers' credentials to ensure they are permitted to get right of entry to an internet resource. To save you unauthorized get right of entry to to your php web application, you can defend sensitive files or endpoints the use of a username and a password. One commonplace manner of achieving this is with the aid of the use of simple HTTP authentication. on this protection design sample, each person making a request to a aid to your server should publish an Authorization header containing Base64 encoded credentials.
Key takeaways

Editing the Apache configuration file
Enabling Apache mod_rewrite module
Creating a password protected PHP file
Modifying the .htaccess file
Testing HTTP Authentication

Article quality
In this article, a step by step procedure of how to create a password protected PHP web resources will be elaborated well and in a clear steps. It is a beginner friendly article with easy to understand illustrations.
References
N/a
Conclusion
We've created a password protected PHP files for web resources using HTTP Authentication with Ubuntu server. This is useful since many users are forced to pass their information through secure HTTP.
Templates to use as guides

How To Guide Template
Software Review Template
Tutorial Template

How does your article differ from other articles ? @JOEOBY

Hey @ahmadmardeni1 my article will explore the basics fundamentals of PHP resources, give detailed content about it with a simple and understandable language guiding readers on how to use HTTP Authentication to secure it.
The referred documentation simply contains an illustrative example but my article will explain step by step elaboration on how to secure PHP resources with HTTP Authentication. My tutorial is going to explore the fundamentals of how to create a password protected PHP files for web resources using HTTP Authentication with Ubuntu server.

Sounds like a helpful topic - let's please be sure it adds value beyond what is in any official docs and/or what is covered in other blog sites. (the articles should go beyond a basic explanation - and it is always best to reference any EngEd article and build upon it). @JOEOBY
Please be attentive to grammar/readability and make sure that you put your article through a thorough editing review prior to submitting it for final approval. (There are some great free tools that we reference in EngEd resources.)
ANY ARTICLE SUBMITTED WITH GLARING ERRORS WILL BE IMMEDIATELY CLOSED.
Please be sure to double-check that it does not overlap with any existing EngEd articles, articles on other blog sites, or any incoming EngEd topic suggestions (if you haven't already) to avoid any potential article closure, please reference any relevant EngEd articles in yours. - Approved

I'm closing this topic-suggestion due to inactivity.
It can be reopened.

@ahmadmardeni1 i have finalized and i can PR now you can reopen, sorry for the inconveniences caused,


Bringing latest changes in main to live

Docs Build status updates of commit 2c2ff17:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azureadps-2.0/AzureAD/New-AzureADMSGroup.md
:white_check_mark:Succeeded
View (azureadps-2.0)

azureadps-2.0/AzureAD/Set-AzureADMSGroup.md
:white_check_mark:Succeeded
View (azureadps-2.0)

docs-conceptual/azureadps-2.0/ad-pshell-v2-version-history.md
:white_check_mark:Succeeded
View (azureadps-2.0)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

@msewaweru JFYI


Add link to edit OpenStreetMap directly from the website

Hi, just a small idea but it would be helpful for the project (and for those looking at the maps) to more quickly add the tags from the main your_city.equalstreetnames.eu site.
One option could be to link to iD on the bottom right of the page.
Even better would be to have an edit button directly on the name of the street has clicked on. In the little dialog box, a link to iD with a pre-filled suggestion of the new tag to be added could speed up progress.

Hello @nitramwin ,
That's indeed an excellent idea and would be helpful for the project but it's (currently) out of the scope of the project.
That being said, any help to make it happen is more than welcome.

To be honest I have been thinking of building a dedicated editor, and have some ideas about how that should function.
Somethin simple like a list of streets, a detail page where you select a wikidata entry and just go to the next one.
The hardest thing is finding the time to do it...

https://github.com/EqualStreetNames/equalstreetnames/commit/d7d6e9dd69e465dd31d5812e06590347838fdf3e implements a basic version without any regards for element type (or code quality).

I like it but I would try to keep it a bit more "hidden", a regular user is probably not interested by that function.
Also see https://github.com/EqualStreetNames/equalstreetnames/commit/d7d6e9dd69e465dd31d5812e06590347838fdf3e#r50417173

I've now got a basic 'editor' that takes an OSM way or relation, gets associated tags and tries to provide a suggestion for a Wikidata entry.  Now it just needs to add the info to OSM...

Just made the first changeset on production server: https://www.openstreetmap.org/changeset/104702072. The version on edit.equalstreetnames.eu should be working enough to do some edits.
There is still a lot of room for improvement, for example the list of common words it filters isn't that complete. It would probably be a good idea to allow the user to alter the search term, as well as the search language, which currently defaults to English.
As always, any feedback, comments or other remarks is very welcome.

Awesome work @RobinLinde ! 👍
I suggest we close this issue here and use issues on your repository (https://github.com/RobinLinde/ESN-edit/issues).

Might be worth to keep this open, while I do now have a basic editor, there is no proper implementation of a link yet...
Any other issues or problems can indeed be raised there (https://github.com/RobinLinde/ESN-edit), I've also enabled discussions there, seems like a good idea.

[...] there is no proper implementation of a link yet...

Fair point!

I have a new, more subtle version of an edit link, that still needs some refinement over in #200.

Nice, I was indeed thinking something like that. 👍

Link will appear automatically after next update for each city ! 🚀


504 gateway error

Got 504 Gateway error close to 30s. Can not list all the models, vectorDB, create workspace.
XHRGET
https://d27wci13phvwty.cloudfront.net/api/v1/cross-encoders/models
[HTTP/3 504  29261ms]
XHRGET
https://d27wci13phvwty.cloudfront.net/api/v1/rag/engines
[HTTP/3 504  29370ms]
XHRGET
https://d27wci13phvwty.cloudfront.net/api/v1/llms
[HTTP/3 504  29374ms]
XHRGET
https://d27wci13phvwty.cloudfront.net/api/v1/llms
[HTTP/3 504  29285ms]
XHRGET
https://d27wci13phvwty.cloudfront.net/api/v1/workspaces
[HTTP/3 504  29288ms]
XHRGET
https://d27wci13phvwty.cloudfront.net/api/v1/rag/engines

Issue w/ our infra structure, delete the outbound rules.

You can close the issue.