Unterminated parenthetical

Information:

Prism version: latest from the download page
Plugins: none
Environment: Browser

Description
From the downloads page, select C, C++, JavaScript, and Rust. Click download JS. Insert downloaded JS into script tag:
Uncaught SyntaxError: unterminated parenthetical

When loading the dev version, it is caused by this:
Prism.languages.insertBefore('c', 'function', {
	// highlight predefined macros as constants
	'constant': /\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|05/04/24|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/
});


Include optional public-url flag in build instruction within getting …

…started docs

This is good - probably a little verbose but no problem with including a little more info.


EXC_BAD_ACCESS

Please execute this shell command then replace it with your console output.
sw_vers
ProductName:	Mac OS X
ProductVersion:	10.12.6
BuildVersion:	16G29
pod --version
1.2.0

Problem | Feature
gRPC Core issue when I run the code.
In the file named: pb_decode. I get the following error message. Any idea on how to fix this issue?
Thanks

c
if (init_data)
{
if (PB_LTYPE(iter->pos->type) == PB_LTYPE_SUBMESSAGE)
{
/* Initialize submessage to defaults */
pb_message_set_to_defaults((const pb_field_t ) iter->pos->ptr, iter->pData);
}
else if (iter->pos->ptr != NULL)
{
/ Initialize to default value /
memcpy(iter->pData, iter->pos->ptr, iter->pos->data_size);
}
else
{
/ Initialize to zeros */
memset(iter->pData, 0, iter->pos->data_size);
}
}

I'm getting this crash on first installation. Does anyone got the fix?

I am having this error too. Any clue?

I've removed pod and used latest SDK directly (drag and drop) downloaded from Firebase Console, CRASH GONE. I think pod version is mismatched with the other internal framework.

@ih-arunr Thank you so much! You saved my day. 👍

@ih-arunr which SDK exactly?

I have same problem after install pod. I've observed that in my case conflict is with Firebase SDK.
If I comment  //FirebaseApp.configure() on AppDelegate crash disappear.

@ghsdh3409 Can you help this issue so that people can move forward?

Please retry after updating related gRPC. The current up-to-date version is 1.6 (https://github.com/grpc/grpc) but the version in this repository uses 1.0.0-pre1.1. You can installed changed version as modifying s.dependency "!ProtoCompiler-gRPCPlugin", "~> 1.0.0-pre1.1" to s.dependency "!ProtoCompiler-gRPCPlugin", "~> 1.6" in the googleapis.podspec.

@ghsdh3409 Thanks, man.

i am getting problems on nanopb when doing pod install with gRPCPlugin 1.6
[!] Error installing nanopb
[!] /usr/bin/curl -f -L -o /var/folders/x6/qhd2v4fs7_18jl3rkrd79761mty1mb/T/d20171013-976-16a3llg/file.tgz https://github.com/nanopb/nanopb/archive/0.3.8.tar.gz --create-dirs --netrc-optional
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100   120    0   120    0     0    625      0 --:--:-- --:--:-- --:--:--   628
0     0    0     0    0     0      0      0 --:--:--  0:02:30 --:--:--     0curl: (7) Failed to connect to codeload.github.com port 443: Operation timed out


Modify csi default tag to master-head

close in favor of https://github.com/harvester/charts/pull/10


create a sequence ontology (SO) import

we need to import the Sequence Ontology into Mondo for mitochondrial and nuclear patterns
related ticket: https://github.com/monarch-initiative/mondo/issues/1800

Thank you @matentzn


 This test runs a basic azure ingestion and then waits for the data source to be killed and validates the segments have indeed been removed from deep storage.
Release note

New integration test for Azure

Key changed/added classes in this PR

AbstractAzureInputSourceParallelIndexTest
ITAzureV2ParallelIndexTest
AzureTestUtil

This PR has:

[X] been self-reviewed.

[ ] using the concurrency checklist (Remove this item if the PR doesn't have any relation to concurrency.)

[ ] added documentation for new or modified features or behaviors.
[ ] a release note entry in the PR description.
[ ] added Javadocs for most classes and all non-trivial methods. Linked related entities via Javadoc links.
[ ] added or updated version, license, or notice information in licenses.yaml
[ ] added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
[ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold for code coverage is met.
[X] added integration tests.
[X] been tested in a test Druid cluster.

merging as the failing test is a query test and appears to be unrelated, these changes are only to the azure suite


Clean up Python types

Run mypy against the repo and clean up anything that is not typed correctly or which I've ignored in the past. Add additional types to things which are missing types now.

I can look into this!

This was done by @epw1624 so closing this now.


RECORD SAVE - CloudKit wouldn't accept a LIST of STRING as a field

What type of issue is this?
Bug
What is incorrect, incomplete, or missing?
Hi, I am trying to save a record in which one of the fields is a list of strings. I am creating an array of RecordFields of type "STRING" and passing it as a RecordField of type "LIST"'s value. There are no errors thrown by the compiler. Problem is when I send the request, I get "BadRequestException: Unexpected input". From what I understand it should work.
What platforms does this issue apply to, if applicable?
No response
What did you expect to see?
Record saved successfully
How did you test this?
I ran the code using nextjs hosted on vps.
Can you link to a related release note, pull request, or page?
No response
Do you have anything more you want to share?
No response

Hello, @inferutsers!
Thank you for the report. Please provide more information about the implementation. From what I understand you are using the wrong type as indicated by the server.
The CloudKit JS documentation contains a link to the correct type setting for each value type.
Maybe this already helps.

Hello
This is the record I am trying to save:
const record: RecordToCreate = {         recordType: "TestType",         fields: {              "testList": {                 type: "LIST", value: listArray             }         }
listArray is:
const list = ["string1", "string2"] const listArray: RecordField[] = list.map((e) => {return {type: "STRING", value: e} as RecordField})
And from apple's api I am getting:
_ckErrorCode: 'BAD_REQUEST',
_reason: 'BadRequestException: Unexpected input',
_serverErrorCode: 'BAD_REQUEST'
If you need any more info I am happy to provide you with that.

Thanks. Your code looks correct.
I have to create a test case tomorrow to see, if I can reproduce the issue.
Just a hunch, but maybe CloudKit JS does the array mapping now. It is worth a try to assign the string array with an any-cast as the direct value:
const list = ["string1", "string2"];
const record: RecordToCreate = {
  recordType: "TestType",
  fields: {
    "testList": { type: "LIST", value: list as any }
  }
};

I tested your hunch but it doesn't seem to make a difference. Let's see if you can reproduce the issue tomorrow.

Any new info? Still wondering whether its something on my end.

Hello!
Sorry for the delay. I have issues with my CloudKit profiles and could not test yet.
I can only think of two other fields for failure:

The container might not be configured properly, either the types, or created for iOS app and not web app.

The encoding of the strings might be an issue.

If I get the profile issues solved, I will run some tests this weekend.

Hello, there is the schema for the context:
RECORD TYPE TestType (
        "___createTime" TIMESTAMP,
        "___createdBy"  REFERENCE,
        "___etag"       STRING,
        "___modTime"    TIMESTAMP,
        "___modifiedBy" REFERENCE,
        "___recordID"   REFERENCE QUERYABLE,
        testList        LIST<STRING> QUERYABLE,
        GRANT WRITE TO "_creator",
        GRANT READ, CREATE, WRITE TO "_icloud",
        GRANT READ TO "_world"
    );

I don't really know what you mean by "created for iOS app and not web app". For my knowledge all containers are created through identifiers. Quoting Apple's documentation: "In CloudKit Dashboard, enable web services by creating either an API token or server-to-server key". There is a server-to-server key created and actively used to perform queries.

Also, if that helps:
CloudKitJS CloudKit Database#saveRecords [
  {
    recordType: 'TestType',
    fields: {
      testList: [Object]
    }
  }
] {}
CloudKitJS RecordsBatchBuilder#createOrUpdate [
  {
    recordType: 'TestType',
    fields: {
      testList: [Object]
    }
  }
] {}
CloudKitJS RecordsBatchBuilder#create {
  recordType: 'TestType',
  fields: {
    testList: { type: 'LIST', value: [Array] }
  }
} {}
CloudKitJS RecordsBatchBuilder#commit
t [Error]: BadRequestException: Unexpected input

That's the output I am getting

It is some years since I touched CloudKit stuff. I will contact support tomorrow, to get help with my access issue. Everything from my side is just pure speculation so far, as I do not get into my CloudKit dashboard.

I don't really know what you mean by "created for iOS app and not web app". For my knowledge all containers are created through identifiers. Quoting Apple's documentation: "In CloudKit Dashboard, enable web services by creating either an API token or server-to-server key". There is a server-to-server key created and actively used to perform queries.

I do not recall the details. Back then I made the mistake to mix iOS and web connections, as they expect different kind of data, iOS expects binary, web expects JSON.

That's the output I am getting

This shows at least, that the records work in the browser. Do you maybe use the wrong database? Your schema looks like records are supposed to go into the sharedCloudDatabase. Also check the environment. Both client and container have to run either in development or production.

I've checked everything and it all seems fine. Any progress on your side?

I am in contact with support and expect in the coming days some solution, so I can access the dashboard.

Hello, any progress?

Sorry for the delay. I got finally access to all necessary parts of CloudKit. So here are my results:

I was able to reproduce your issue.
A step in the right direction was to remove all type information from the list object ment to be saved.
I still got an error, but then it was a regular result with error property that complained about the list structure.
Considering the fact that it became better after removing type properties, I tried a simple string array, which actually worked.

So the solution for your use case is:
const record: RecordToCreate = { recordType: "TestType", fields: {  "testList": listArray as any } };

Let me know if this is working for you as well. I will fix the typing asap.


chore: replace MLAPI with Netcode in Markdown files

there's more to come (README & CHANGELOG files are going to be the big ones) but let's get at least some of them converted :)

Arriving, late to the party. But it looks good to me too.


MinSdk is higher than needed!

As title says, I think it can (an should) be as low as other Material libraries, specially ones we are trying to replicate their functionalities. If they can do it on lower APIs, why can't this library do?!
I was unable to use this only because of this. My project's current minSdk is 24 and I got error saying this library needs at least 26. I don't want to higher up the minSdk only for this and I think many are like me.

Hi, Thank you for your feedback. I understand your frustration, just remember that this is an open project, if you find something you can kindly ask for an improvement and when someone have free time will do it. Anyway your point is good, I will probably make a new version in the next days with other fixes and I will try to reduce the minSkdVersion too. I suggest you to follow the library to stay updated with the new releases

Thanks for fast and kind response and for your awesome project. To clear things up a little bit and prevent any misunderstanding, I think I should mention that I didn't want to upset you. My point was the importance of this factor, not to lower the value of the project and sharing it for everyone to freely use.

Hi RezaDizaji,
Thanks for your message! I'm happy to announce the release v0.0.8.
The minimum supported SDK has been moved to 21 in this version. This should eliminate any potential integration issues you might have encountered previously.
In addition to the minSdk update, v0.0.8 includes a series of other improvements. You can check out the full changelog here.
As always, feel free to open a new issue if you encounter any further problems or have suggestions for future enhancements.
Have a great day!
Stefano


post to https://inspirehep.net/callback/workflows/robotupload frequently fails

Describe the bug
The callbacks from completed bibuploads initiated by workflows frequently fail with
Gateway Error, Timeout, Internal Server Error, etc.
These are simple HTTP POST to https://inspirehep.net/callback/workflows/robotupload
with a json payload containing the wf nonce, record-id, and possibly the marcxml
To Reproduce
Steps to reproduce the behavior:
These are intermittent but recurrent problems, with several callbacks (out of O(10^2))  failing every day, despite the callback being wrapped in a @retry
Expected behavior
A clear and concise description of what you expected to happen.
Successful POST and HTTP status 200.
Additional context
The callbacks are necessary to complete the workflow. They also confirm the record id for the uploaded record. A failed callback requires manual cleanup.

Endpoint not used any longer now that legacy is gone.


fix for unit tests using glTF serializer alpha mode

Fixes a bug with unit tests for glTF alpha mode

@deltakosh @bghgary I will disable these alpha mode unit tests for now and investigate further.


【vue-router hmr bug】modification in current route's component causes reloading of imported module without any monification

⚠ IMPORTANT ⚠ Please check the following list before proceeding. If you ignore this issue template, your issue will be directly closed.

[x] Read the docs.
[x] Use Vite >=2.0. (1.x is no longer supported)
[x] If the issue is related to 1.x -> 2.0 upgrade, read the Migration Guide first.

Describe the bug
Modification in current route's component causes reloading of imported module without any monification.
This behaviour is not expected, because we don't want other modules without changes reload.
This bug only shows up when used with vue-router.
Reproduction
reproduction-repo

yarn install
yarn dev or vite
goto the route /#page1
open '/src/views/Page1.vue' in your editor, modify the name of the component.

<!--/src/views/Page1.vue-->
<script lang="ts">
import {defineComponent} from "vue";
import module1 from "/@/views/module1";
export default defineComponent({
  name: 'Page1', // change `Page1` to any string, for example 'Page2'
  created() {
    console.log(module1, 'page1.module1')
  },
})
<script/>

If the bug is showing, there will be 'module1' printed in the console related to this hmr. because this compoment import the following module, this module is reloaded and re-excuted. You can also see in the "network" card from the brower's dev-tools that the component and module1.ts are reloaded.
// /src/views/module1.ts
console.log('module1')
export default 1

System Info

vite version: 2.0.0-beta.65
Operating System: macbook m1, macos bigsur 11.2
Node version: 15.8.0
Package manager (npm/yarn/pnpm) and version: yarn

Can't reproduce. Tried a bunch of different edits and module1 is never re-evaluated unless itself is edited.

I also have this problem. On my side, the Vue router instance was re-created after the hmr was triggered (I did not change to the vue-router instance file), which resulted in the loss of the route dynamically added in the interceptor. This problem really occurred after vite.36 (may be uncertain, but it is an update near here).
I am going to try to reproduce this problem later on

@yyx990803
I think I've maked a mistake and I've reproduced It by adding importation of Page.vue to module1.ts.
After that, I read the soure code of vite, and I found that module1.ts is an importer of Page.vue and module1.ts is reload because of the below parts:
https://github.com/vitejs/vite/blob/8f830bfe7ae00a4a94500ebd3a6a4503f0db4121/packages/vite/src/node/server/hmr.ts#L119-L124
https://github.com/vitejs/vite/blob/8f830bfe7ae00a4a94500ebd3a6a4503f0db4121/packages/vite/src/node/server/hmr.ts#L230-L238
I wonder if it is necessary to invalidate all importers. If the answer is yes, I think the transformResult-nullified importers are better be exposed to HMR apis to be customizable in some case such as routes modules that always import components.

I mean, that's a circular reference. So the only way to ensure correctness is to reload both modules.

I mean, that's a circular reference. So the only way to ensure correctness is to reload both modules.

Yes, It's circular reference in my example.
But it's not circular reference when using vue-router. Components imported in routes's configuration modules such that these routes modules are importers of components. In current implementation of invalidate, importers always are mandatorily reloaded, and they are not interceptable now.
When using dynamic routes, there are probably other modules import this routes, then they, their's importers and their's importers' importers etc, are also reloaded.
Do you think this is expected?


Parallel Stage 2

Hey,
I added a branch that contains a tentative parallelization of Stage 2. I didn't see a significant improvement in CommonBenchMark, so maybe this isn't worth pursuing.
Please let me know what you think.
Thanks

So these are the results after a little tuning:
empty.text    12 B   (5000 iterations)

Library
Total
Each
vs Baseline

       Baseline |    223 |    0 | 100%
 CommonMark.NET |    104 |    0 | 47%
CommonMarkSharp |   2663 |    1 | 1,194%
  MarkdownSharp |    285 |    0 | 128%
   MarkdownDeep |    118 |    0 | 53%

MoonShine (sundown) |    207 |    0 | 93%

empty.html    27 B   (5000 iterations)

Library
Total
Each
vs Baseline

       Baseline |    246 |    0 | 100%
 CommonMark.NET |    131 |    0 | 53%
CommonMarkSharp |   1836 |    0 | 746%
  MarkdownSharp |    234 |    0 | 95%
   MarkdownDeep |    119 |    0 | 48%

MoonShine (sundown) |    223 |    0 | 91%

mini.text    164 B   (5000 iterations)

Library
Total
Each
vs Baseline

       Baseline |    598 |    0 | 100%
 CommonMark.NET |    249 |    0 | 42%
CommonMarkSharp |   5043 |    1 | 843%
  MarkdownSharp |   1451 |    0 | 243%
   MarkdownDeep |    351 |    0 | 59%

MoonShine (sundown) |    288 |    0 | 48%

doc_small.text    8.2 KB   (626 iterations)

Library
Total
Each
vs Baseline

       Baseline |   2624 |    4 | 100%
 CommonMark.NET |    174 |    0 | 7%
CommonMarkSharp |   1388 |    2 | 53%
  MarkdownSharp |   3156 |    5 | 120%
   MarkdownDeep |    178 |    0 | 7%

MoonShine (sundown) |    171 |    0 | 7%

doc_medium.text    27.7 KB   (185 iterations)

Library
Total
Each
vs Baseline

       Baseline |   2698 |   15 | 100%
 CommonMark.NET |    120 |    1 | 4%
CommonMarkSharp |   1106 |    6 | 41%
  MarkdownSharp |   3478 |   19 | 129%
   MarkdownDeep |    179 |    1 | 7%

MoonShine (sundown) |    136 |    1 | 5%

spec.txt    112.1 KB   (45 iterations)

Library
Total
Each
vs Baseline

       Baseline |   2825 |   63 | 100%
 CommonMark.NET |    116 |    3 | 4%
CommonMarkSharp |   1279 |   28 | 45%
  MarkdownSharp |   2601 |   58 | 92%
   MarkdownDeep |    306 |    7 | 11%

MoonShine (sundown) |    168 |    4 | 6%

emphasis.txt    114.0 KB   (44 iterations)

Library
Total
Each
vs Baseline

       Baseline |   3375 |   77 | 100%
 CommonMark.NET |    660 |   15 | 20%
CommonMarkSharp | 1643048 | 37342 | 48,683%

CommonMarkSharp failed: Operation caused a stack overflow.

Library
Total
Each
vs Baseline

  MarkdownSharp | 1320000 | 30000 | 39,111%

MarkdownSharp failed: Timeout - did not complete in 30 seconds.

Library
Total
Each
vs Baseline

   MarkdownDeep |    377 |    9 | 11%

MoonShine (sundown) | 314161 | 7140 | 9,308%

Google.html    204.4 KB   (25 iterations)

Library
Total
Each
vs Baseline

       Baseline |   1314 |   53 | 100%
 CommonMark.NET |     79 |    3 | 6%
CommonMarkSharp |  10748 |  430 | 818%
  MarkdownSharp |   2255 |   90 | 172%
   MarkdownDeep |    153 |    6 | 12%

MoonShine (sundown) |     65 |    3 | 5%

imdb.html    883.6 KB   (5 iterations)

Library
Total
Each
vs Baseline

       Baseline |   1198 |  240 | 100%
 CommonMark.NET |     30 |    6 | 3%
CommonMarkSharp | 150000 | 30000 | 12,521%

CommonMarkSharp failed: Timeout - did not complete in 30 seconds.

Library
Total
Each
vs Baseline

  MarkdownSharp |    696 |  139 | 58%
   MarkdownDeep | 151905 | 30381 | 12,680%

MarkdownDeep failed: An item with the same key has already been added.

Library
Total
Each
vs Baseline

MoonShine (sundown)
57
11
5%

progit.md    10.6 MB   (3 iterations)

Library
Total
Each
vs Baseline

       Baseline |  18174 | 6058 | 100%
 CommonMark.NET |    758 |  253 | 4%
CommonMarkSharp |   6663 | 2221 | 37%
  MarkdownSharp |  18402 | 6134 | 101%
   MarkdownDeep |   1147 |  382 | 6%

MoonShine (sundown) |    963 |  321 | 5%

Did you actually get any significant performance improvement after the latest changes? The reason why I did not pursue the parallel approach is that for all realistic inputs (that are not very rare 10MB books) it actually slowed things down.
Why is Partition creating clones of the settings (since it is not done in non-parallel approach) and reference map?
p.s. features like this should be kept in a separate branch before completion, to leave master clean and ready for quick releases, if such need arises.

I got some small improvements, but nothing out of the ordinary so far.
emphasis.txt is down to 15%, but that's hardly a realistic input. I'd
love to put my hands on some of those 10MB books you mentioned.
Cloning the settings was my attempt at creating memory locality. I'll try
putting parser cache in Subject instead. As for ReferenceMap, cloning
actually seems to be slowing things down.
Another approach I want to try is a deeper dive in the syntax tree.
Of course I'm not going to merge to master before I'm sure I got it 100%
right. I am quite a perfectionist myself, you know ;)
On Fri, Dec 18, 2015 at 9:43 PM, Kārlis Gaņģis<EMAIL_ADDRESS>wrote:

Did you actually get any significant performance improvement after the
latest changes? The reason why I did not pursue the parallel approach is
that for all realistic inputs (that are not very rare 10MB books) it
actually slowed things down.
Why is Partition creating clones of the settings (since it is not done in
non-parallel approach) and reference map?
p.s. features like this should be kept in a separate branch before
completion, to leave master clean and ready for quick releases, if such
need arises.
—
Reply to this email directly or view it on GitHub
https://github.com/Knagis/CommonMark.NET/issues/67#issuecomment-165880296
.

I got some small improvements, but nothing out of the ordinary so far. emphasis.txt is down to 15%, but that's hardly a realistic input. I'd love to put my hands on some of those 10MB books you mentioned.
Cloning the settings was my attempt at creating memory locality. I'll try putting parser cache in Subject instead. As for ReferenceMap, cloning actually seems to be slowing things down.
Another approach I want to try is a deeper dive in the syntax tree.
Of course I'm not going to merge to master before I'm sure I got it 100% right. I am quite a perfectionist myself, you know ;)

Of course I'm not going to merge to master before I'm sure I got it 100% right. I am quite a perfectionist myself, you know ;)

But most of the commits are made against the master branch and not the parallel branch...
Some more concerns about performance - probably the most common size for markdown text is under few kilobytes - does the paralellization help with the small documents?
Also on a webserver parallel execution might even be frowned upon because the webserver is using all the cores to process requests and thus the overhead from the parallelization in markdown parser is unwanted.
Overall if the addition of one extra core to the parser does not result in at least average 30% increase in performance it might not be worth it - let the application parallelize parsing multiple documents instead.

I am so sorry. I was working in a local parallel branch, so I presumed I was pushing to remote parallel.
Let me know if you want me to revert the parallelization-related commits.

I did a force-push :smile: of the master to restore it to before those commits. You might need to do something manual to get your local master branch back in sync and so that you do not push those commits again into master.

I don't actually have a local master, so no damage here.
I did add a deeper child count, but am still seeing little to no improvement (even not in emphasis.txt, which was measurement impurity).
I suspect this might have to do with my laptop overheating. May I ask you to please try it on your machine? If there are no real gains, I guess we should call it quits.
The upside is that I modified MarkdownCompare to output nice pipe tables. Would you like me to do a PR on that?
P.S. I didn't manage to find any sufficiently large inputs, and I believe the smallish ones aren't worth the overhead.


Accel: Integrate Ethereum

This is presumably going to be a project that Tirrel takes on per @cyclomancer. Placing in waiting for now.

Highly doubtful this will happen.


Can't redefine object method with inheritance

If parent serializer redefines object's method it's not invoked in child serializer and calls object's method (same behaviour with modules)
require 'surrealist'

class User
  def first
    2
  end
end

class User::BaseSerializer < Surrealist::Serializer
  def first
    object.first * 2
  end
end

class UserSerializer < User::BaseSerializer
  json_schema { { first: Integer } }
end

user = User.new

p UserSerializer.new(user).build_schema
# prints {:first=>2}
# should be {:first=>4}

I believe this is because of false argument for instance_methods here
Bug or feature?

Hey, thank you for reporting this, it is a bug, that was introduced while fixing this.
Right now I am working on #114, would you like to introduce a PR to help me out with this bug?


Add TestPlace for position.go

Changes:

[x] add test for Place from position.go

Upgrades:

increase test coverage for position.go from 0% to 70.91%

@bashbunni I think this is good to merge, one thing I would recommend is removing the require dependency and simply using go == for string comparison.

I'll rebase and fix the conflicts, then see if it still works :joy:

This should be covered in a test, but I'm going to close this one as I'd prefer to use a golden file for this


move lifetime to a split file so that go1.1 is also work with this feature

related #611

Codecov Report

Merging #612 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master     #612   +/-   ##
=======================================
  Coverage   49.87%   49.87%
=======================================
  Files          31       32    +1
  Lines        6941     6941
=======================================
  Hits         3462     3462
  Misses       3019     3019
  Partials      460      460

Impacted Files
Coverage Δ

engine.go
57.07% <ø> (+0.13%)
:arrow_up:

engine_maxlife.go
0% <0%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8a87763...466cc53. Read the comment docs.


Adds feature to allow passing attributes through to derived structs (also updates dependencies and unifies workspace versioning)

Thanks for making comparable, I appreciate the work you've put into it! ❤
This makes a handful of small(ish) changes to dependencies.

bumps convert_case from 0.4 -> 0.6 (version was different between comparable_derive and comparable_helper).
moves all shared dependencies to the workspace, so all packages depend on the same versions.

dependencies that were not shared remain at the package-level.

uses workspace-level versioning, since these crates are interdependent and released together.
bumps the crate version from 0.5.4 -> 0.5.5, since none of these changes should break anything (tests still pass and no functionality was altered).

These changes are each a separate commit, in case any of these things are not desirable.
If you'd like me to revise or omit any of those, just let me know!
Thanks!

This adds an additional attribute: comparable_attribute, which can be used to pass extra attributes through to the derived structs. This is primarily intended for doing this:
#[comparable_attribute(serde(crate = "some::imported::serde"))]

for cases where serde is not a direct dependency, but provided by some other dependency via re-exporting.
The general functionality isn't serde-specific though. The name was chosen by looking at the current attribute names, and inferring that the comparable_* attributes seemed to refer to things about the derived types, and attempting to be consistent with that.
FWIW, It could be possible to replace the current serde integration using this feature, by doing something like:
#[comparable_attribute(derive(serde::Deserialize, serde::Serialize))]

but I didn't do that, since that would be a breaking change the current interface for no obvious benefit.
No changes were made to the versioning, since the previous change is unmerged, and this also is a non-breaking change. Arguably it could be a minor bump, since it is new functionality. If you'd like me to bump the minor version, just let me know.
Thanks for considering this feature! ❤


processorHandler.on relies on JpegImage side-effects

Jslint warns that "Do not use 'new' for side effects"
https://github.com/mozilla/pdf.js/blob/master/src/core.js#L547
In core.js there is a JpegImage creation that is seemingly orphan. It looks like a bug to me. Should the newly created JpegImage be stored somewhere?
processorHandler.on('obj', function pdfDocObj(data) {
  var id = data[0];
  var type = data[1];

  switch (type) {
    case 'JpegStream':
      var IR = data[2];
      new JpegImage(id, IR, this.objs);
    break;

new JpegImage(id, IR, this.objs);

Once the image is loaded, the JpegImage stores things on the this.objs. Take a look at the JpegImage implementation.
I understand your feeling, but right now I have no much better idea how to fix this. Do you have one?

I agree with @kkujala that this is ugly. I have ask the same question before landing the worker patch and that' something that need to be cleaned up.
My proposal is in pull #771.

@jviereck: I think JpegImage may be trying to do too much. Creation should be separated from the use (objs.resolve etc). But I suppose you already have an idea on how to fix this properly.
@vingtetun: yeah, that code is not the most clearest. As a side note that refactoring would be sweet if unit test envs could be added.

Thanks jviereck for the fix!


Android - implement setRegion

Android Twilio Voice SDK beta 17 has a new feature called Regions
references:
https://www.twilio.com/docs/api/voice-sdk/android/changelog#200-beta17
https://www.twilio.com/docs/api/voice-sdk/regions
I have asked Twilio clarification on how to use best this new API.

We sometimes encounter problems when our app runs behind:

Mobile device management
Custom APN
Firewalled WiFi

I suppose I'm not the only one who has noticed these limits. The IP-ranges for all regions should be whitelisted by the firewall in order to get it to work.
The list of IPs is huge: https://www.twilio.com/docs/voice/client/regions
Forcing the connection through one region, makes the list of IPs which should be whitelisted smaller. This can be done in the TwilioVoice SDK according to the docs here: https://www.twilio.com/docs/voice/voip-sdk/regions
When the new SDK version lands, it might be interesting to consider implementing setRegion().
Let me know what your thoughts are.

@jdegger @fabriziomoscon I believe we could have a set of constants referencing each of the new "edges" and allow users to set them using Voice.setEdge("ashburn-ix"); on android and TwilioVoice.edge = "ashburn-ix"; on iOS.
Something like what we have for connection status.
What do you think?

Maybe just send the string value to setEdge/setRegion instead of adding the edges as contants, otherwise we would have to update our package for every new edge Twilio adds, right?

Yes, that sounds just right. I'll try to send a PR later today with this.

@jdegger sorry for my late reply, I've been using setEdge on iOS for a while locally so I moved on to implement it on android.
There's one catch anyway, since Android SDK uses setRegion till version 5.3.0 and setEdge from there on.
Should we implement the deprecated setRegion method or should we upgrade Android SDK to version 5.6.0 (Latest at the time of writing)?

@fmonsalvo I think we should wait for @fabriziomoscon to finish his PR maybe? I think he chose 5.0.1 because he is updating step by step from the twilio docs.
I will discuss with him also.

ps: thanks for your efforts, highly appreciated!

Yes, let's wait for that PR to be merged and then I'll send mine.
I'll look into the other items in the backlog and see which one I can work on.

This is superseded by https://www.twilio.com/docs/voice/voip-sdk/android/3x-changelog#530


Syntax highlighting for code blocks

First off, excellent editor field, thanks!
It'd be smashing if the code blocks could be syntax highlighted.
FWiW, Git hub uses https://github.com/github/linguist

I would also like to see this.

In my local copy this works like champ:
    highlight: function (code) {
        return hljs.highlightAuto(code).value;
    },

Could be as simple as setting that if highlight.js is loaded (i.e. wrapped in an if window.hljs)

I plan to add this to v1.7.1, the next version coming out.

Added in v1.7.2 with this commit 443a58cc2811b571b9256db8bcd473ff1dd106ee

Excellent, thanks!

Thanks.


Crash when moving xwayland window

Already reported ? *

[X] I have searched the existing open and closed issues.

Regression?
Yes
System Info and Version
 System/Version info
Hyprland 0.44.0 built from branch  at commit 3852418d2446555509738bf1486940042107afe7  (hyprctl: reload windowrules on reloadAll).
Date: Fri Nov 1 14:03:12 2024
Tag: v0.44.0-99-g3852418d, commits: 5398
built against aquamarine 0.4.3

flags set:
debug

System Information:
System name: Linux
Node name: lolcat
Release: 6.6.58-1-lts
Version: #1 SMP PREEMPT_DYNAMIC Wed, 23 Oct 2024 17:28:15 +0000

GPU information:
0a:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 22 [Radeon RX 6700/6700 XT/6750 XT / 6800M/6850M XT] [1002:73df] (rev c5) (prog-if 00 [VGA controller])

os-release: NAME="EndeavourOS"
PRETTY_NAME="EndeavourOS"
ID="endeavouros"
ID_LIKE="arch"
BUILD_ID="2024.01.25"
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://endeavouros.com"
DOCUMENTATION_URL="https://discovery.endeavouros.com"
SUPPORT_URL="https://forum.endeavouros.com"
BUG_REPORT_URL="https://forum.endeavouros.com/c/general-system/endeavouros-installation"
PRIVACY_POLICY_URL="https://endeavouros.com/privacy-policy-2"
LOGO="endeavouros"

plugins:

Description
Whenever I move an xwayland window, with my mouse that is, I haven't tried moving them between workspaces, hyprland crashes.
Bisected this to commit d8b865366af9d5ed30d2ee0a437b9a3ed43c10bd
(Possibly related to https://github.com/hyprwm/Hyprland/issues/8325 but it didn't seem like hyprland auto-crashed for me)
How to reproduce
Move a window with your mouse
Crash reports, logs, images, videos
heh
[oof]: .cache/hyprland/hyprlandCrashReport334576.txt
.cache/hyprland/hyprlandCrashReport334576.txt: line 1: --------------------------------------------: command not found
[ ERROR ] Unknown option 'Crash' !
usage: Hyprland [arg [...]].

Arguments:
    --help              -h       - Show this message again
    --config FILE       -c FILE  - Specify config file to use
    --socket NAME                - Sets the Wayland socket name (for Wayland socket handover)
    --wayland-fd FD              - Sets the Wayland socket fd (for Wayland socket handover)
    --systeminfo                 - Prints system infos
    --i-am-really-stupid         - Omits root user privileges check (why would you do that?)
    --version           -v       - Print this binary's version
.cache/hyprland/hyprlandCrashReport334576.txt: line 3: --------------------------------------------: command not found
.cache/hyprland/hyprlandCrashReport334576.txt: line 4: Who: command not found
.cache/hyprland/hyprlandCrashReport334576.txt: line 6: syntax error near unexpected token `('
.cache/hyprland/hyprlandCrashReport334576.txt: line 6: `Hyprland received signal 11(SEGV)'

@UltraBlackLinux Fixed?

Yup indeed fixed, thanks for the reminder!


Set environment variable when coverage run is executed

Is your feature request related to a problem? Please describe.
I'd like my code to know that coverage is "calling the shots", ie, coverage run -m <blah>
Describe the solution you'd like
My solution would be to set an environment variable when coverage run -m <blah> is executed, that way, my <blah> "program" knows how its being executed.
This allows my code to also inject in the environment, at runtime, for example COVERAGE_PROCESS_START, and also inject the path to a custom directory containing siteconfig.py so that coverage tracks my subprocesses.
Describe alternatives you've considered
I tried setting up my tox file to set the COVERAGE_PROCESS_START variable, however, that solution does not work well for both *Nix and Windows.
00:28:00        Failed to import the site module
00:28:00        Traceback (most recent call last):
00:28:00          File "C:\Users\ADMINI~1\AppData\Local\Temp\kitchen\testing\.tox\py3-pytest-coverage\lib\site.py", line 791, in <module>
00:28:00            main()
00:28:00          File "C:\Users\ADMINI~1\AppData\Local\Temp\kitchen\testing\.tox\py3-pytest-coverage\lib\site.py", line 781, in main
00:28:00            execsitecustomize()
00:28:00          File "C:\Users\ADMINI~1\AppData\Local\Temp\kitchen\testing\.tox\py3-pytest-coverage\lib\site.py", line 553, in execsitecustomize
00:28:00            import sitecustomize
00:28:00          File "C:\Users\ADMINI~1\AppData\Local\Temp\kitchen\testing\tests\support\coverage\sitecustomize.py", line 9, in <module>
00:28:00            coverage.process_startup()
00:28:00          File "C:\Users\ADMINI~1\AppData\Local\Temp\kitchen\testing\.tox\py3-pytest-coverage\lib\site-packages\coverage\control.py", line 1287, in process_startup
00:28:00            cov = Coverage(config_file=cps)
00:28:00          File "C:\Users\ADMINI~1\AppData\Local\Temp\kitchen\testing\.tox\py3-pytest-coverage\lib\site-packages\coverage\control.py", line 149, in __init__
00:28:00            concurrency=concurrency,
00:28:00          File "C:\Users\ADMINI~1\AppData\Local\Temp\kitchen\testing\.tox\py3-pytest-coverage\lib\site-packages\coverage\config.py", line 467, in read_coverage_config
00:28:00            raise CoverageException("Couldn't read '%s' as a config file" % fname)
00:28:00        coverage.misc.CoverageException: Couldn't read 'C:\Users\ADMINI~1\AppData\Local\Temp\kitchen\testing/.coveragerc' as a config file

Maybe a os.path.normpath() would fix the above exception, but I'd still like to know that coverage run was used...

Is this still an issue I can help with?

No @nedbat, we can close it.
We switched to nox where we have more leverage.
Thanks for coverage!

This was implemented in #553.


[design] Requirements error?

I believe the POSITION statement in the photo shown bellow should actually be LOCATION statement. If I am wrong, could you please add the definition for POSITION?

Thanks!

Thank you for pointing it out. Fixed it

Also, I am a little bit confused about the formatting of the parameters in the .dsn file. Are they separated by ',' or \s or both?
The example shows:
"""
& Move
LOCATION: 200, 200
COMMAND_WITH_ERROR
DRAW_LINE: location 300, 350
"""
But the rest of the documentation shows no ','.
Thanks

There should be no comma. I will do a full review this evening , and try to correct all these little mistakes. I appreciate your help :)

Ok, I have done some small corrections here and there. I will leave this issue open for now. If you find some other problems(regarding the enunciation and the examples) please feel free to leave a message here and I will look into it.

Of course, thank you!


Configuration of the metric for the new Data Sources - cumulative

Python logic is written to create queries to calculate the cumulative sum for the specified column from the configuration file.
The columns in the configuration file should be filled as below to get the cumulative sum in the metric

The metric type should be specified as cumulative.
The column need to be considered for cumulative sum should be mentioned under ref_columns.
The result metric column will be named as the name mentioned under result metric

Completed the Funtional testing of cumulative metrics. Working as expected

Completed the development to calculate the cumulative sum by reading the configuration file


Wolves going under water

I've noticed for some time now, that wolves like it to go underwater. Especially they like it, to standing in 1 block deep water and go around or standing still for some time. Actually, they should drown, or go not into water.

Patience will solve this, the AI and pathfinder are undergoing a big change.
PathFinder status.
[Mob status](http://forum.mc-server.org/showthread.php?tid=1895.

The general issue is that short mobs have trouble with water. This is identical to #1064

Yep, dupe of #1064.


Disable Installation logs on the container

Don't store installation log files and kickstart files on the container.
Add instructions on how to enable post-action logging for debugging purposes.
Signed-off-by: Elkhan Mammadli<EMAIL_ADDRESS>

LGTM


Add crytic library for crystal-lang

This is a shameless plug but being into all sorts of testing and figuring there was no mutation test tool for crystal lang, needless to say I created my own to learn more about mutation testing. Would love to see it listed here.

No problem, there is no status requirement for libraries to be listed here so it can be brand new or experimental it's totally fine :)


Add link to wong2/chat-gpt-google-extension

Hi, I noticed the core logic for requesting ChatGPT API is take from my project, so I think it would be nice to add that to README. 😄

Definitely — thanks @wong2 🙏

@wong2 if this package was updated to be a universal Node.js + browser package, would you accept a PR to use it in https://github.com/wong2/chat-gpt-google-extension?


Inconsistency between typescript-operations' result type and the actual Apollo query result

Describe the bug
When generating typescript-operations types for operations, the query's or mutation's fields being called are not marked as optional. For example :
export type UsersQueryData = (
  { __typename?: 'Query' }
  & { users: (
    { __typename?: 'UserPage' }
    & UserRowPageFragment
  ) }
);

But in fact, the data returned by Apollo's useQuery hook can be an empty object :
const { data } = useQuery<UsersQueryData, UsersQueryVariables>(USERS_QUERY);

// data can be an empty object, but TS considers it to be UsersQueryData | undefined

Thus making the following instruction valid in TypeScript even though it throws a runtime error :
data?.users.items // Ok in TypeScript, but "cannot read property items of undefined" during runtime

Expected behavior
That typescript-operations puts out a result type consistent with Apollo's data, ie. where root fields are optional. Or than an option to do so is provided.

Hi @ostrebler ,
I'm not sure I understand the issue here. We are generating only the piece of type that represents the return value. The data is defined by Apollo itself.
The users is generated based on your GraphQL schema.
Can you please share a live reproduction of this issue?
Thanks

Hello @dotansimha, thanks for your reply. You're right, this might actually be an issue with Apollo : https://github.com/apollographql/apollo-client/issues/7486


Checkboxes and Radio buttons do not have persisting ripple effect

Bug, feature request, or proposal:
Bug
What is the expected behavior?
Based on Material specs (https://material.io/guidelines/components/selection-controls.html#selection-controls-checkbox) Checkboxes and Radio buttons should have the ripple effect as long as they have focus.
What is the current behavior?
When the component gets focus and changes its state, the ripple effect disappears,
What are the steps to reproduce?
Providing a Plunker (or similar) is the best way to get the team to see your issue.
http://plnkr.co/edit/yCC0p7ngpwQ9twv8IoWk?p=preview
just click on first checkbox, press TAB key (putting the focus on second checkbox) and click on second checkbox (or press SPACE key). This results with disappeared ripple.
What is the use-case or motivation for changing an existing behavior?
It is confusing for the user that he cannot see where the focus is.
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Material 2 2.0.0-beta.8.
Is there anything else we should know?
It works correctly in Material JavaScript based library (Material 1)

These controls only show their focus state when the focus arrives via keyboard interaction. This is one of the "implied but not explicitly written" parts of the spec.
(it's confusing if the focus indicator is persistent when clicking via the mouse; it makes it appear that the ripple is just broken.)

I see.
Would it be at least possible to make the reference to the native input publicly accessible? It would enable the handling of the focus on the adopter side in some other way.

You should be able to use the focusin event to know when the internal input has been focused.

Thanks, it works like a charm!


CCM BI dashboard

Created a new topic to document the steps to access CCM dashboards.
Local build successful.

Preview environment: https://ci.pr.harness.io/pr-315

Preview environment: https://ci.pr.harness.io/pr-315

Preview environment: https://ci.pr.harness.io/pr-315

Preview environment: https://ci.pr.harness.io/pr-315

Hi @michaelcretzman,
Thanks for reviewing the PR. I've incorporated your comments. Could you please approve?


add block stacking loading code to costar_dataset, support pytorch

https://github.com/ahundt/costar_dataset

RP opened on costar_dataset.
https://github.com/ahundt/costar_dataset/pull/1


Gettext doesn`t extract template literals from JS

Hi,
in version 4.6.1 library work fine with extracting translations from template literals in JS files, but after upgrade to 4.8 library doesnt extract translations from template literals for example new version doesnt extract "Foo" from string Text ${__("Foo")} bar but older version does.
Unfortunately I didn`t found solution or some clues to resolve this problem...
Thanks for response.

The javascript extractor in version 4.x is very rudimentary. I recommend to upgrade to Gettext 5.x and use JS-Scanner that provide a much more powerful solution, due it uses mck89/peast under the hood.


feat: add title to notification heading

For situations when the title is truncated, this enhancement allows you to see the full notification title on hover

Niiice :D


Improve ElastoGap for MSL 3.1

Reported by christiankral on 13 Jul 2009 14:11 UTC
In order to include the Magnetics domain in the MSL 3.1, the mechanical model Modelica.Mechanics.Translational.Components.ElastoGap has to be improved. In the current implementation, force f and distance s are linearly proportional. For the Magnetics domain a model is needed, which models a polynomial relationship
  f = f_ref * (s/s_ref)^n

with n being a positive real number. The default value of n is supposed to be 1, to be compatible the previous versions of the MSL.

Migrated-From: https://trac.modelica.org/Modelica/ticket/189

Comment by christiankral on 13 Jul 2009 14:16 UTC
In the above equation s should be replaced by s_rel, the relative distance between the two mechanical ports.

Comment by christiankral on 14 Jul 2009 10:13 UTC
Compatibility of the ElastoGap requires n=0, not n=1.

Comment by AHaumer on 15 Jul 2009 06:29 UTC
resolved by 18501248c4be872324e4c06705d07cbcfc01ada1, 9b6c85993a63bc30836509a9f1eba83034f55bf4,<PHONE_NUMBER>cb9c79e09cb76deacc14afffdd8bf8, 1eba505eb8b3097549dcd79d52da8e6faa7bbd1b


Rename jax.tree_util.tree_map to jax.tree.map

Because jax.tree_util.tree_map was deprecated.
https://jax.readthedocs.io/en/latest/changelog.html#jaxlib-0-4-27-may-7-2024

Thank you for quick review!

Thank you for review!
@ruomingp I cannot merge it because I don't have the write access. Could you merge it or give me a write access?

Thank you for review! @ruomingp I cannot merge it because I don't have the write access. Could you merge it or give me a write access?

I looked around and didn't find you in https://github.com/orgs/apple/people. Could you ping Mike Drob about adding you?

Thank you for merging it and pointer. I'll try to belong to apple/people.

@ds-hwang From the doc, it says jax.tree_map is deprecated, not jax.tree_util.tree_map. It looks like this PR doesn't actually remove the deprecated calls to jax.tree_map()

jax.tree_map() is deprecated; use jax.tree.map instead, or for backward compatibility with older JAX versions, use jax.tree_util.tree_map().

@ds-hwang Should this be fixed?


[BUG] - Weed masters show different results when look up a volumeId - error volume id not found

Hi @chrislusf ,
After facing a lot of errors as follows, I lookup "volumeId" manually on all masters, and this is the result I got:
"error volume id {volumeId} not found"
On  Master one(That is the leader):
1.
curl http://weed-master-1.local:9333/dir/lookup?volumeId=1662
result:
{"volumeOrFileId":"1662","error":"volume id 1662 not found"}

On master two:
2.
http://weed-master-2.local:9333/dir/lookup?volumeId=1662
result:
{

    "volumeOrFileId": "1662",
    "locations": [
        {
            "url": "weed-volume-003.local:8082",
            "publicUrl": "weed-volume-003.local:8082"
        },
        {
            "url": "weed-volume-005.local:8080",
            "publicUrl": "weed-volume-005.local:8080"
        }
    ]

}

On master three:

curl http://weed-master-3.local:9333/dir/lookup?volumeId=1662
{

    "volumeOrFileId": "1662",
    "locations": [
        {
            "url": "weed-volume-003.local:8082",
            "publicUrl": "weed-volume-003.local:8082"
        },
        {
            "url": "weed-volume-005.local:8080",
            "publicUrl": "weed-volume-005.local:8080"
        }
    ]

}

I found out this problem will cause due to an unknown reason when the leader changes and after that, this problem would happen,
and it will be solved if I restart all three masters at the same time .
This log is for the moment that master changed and errors began to start:
Mar 13 13:53:53 weed-master-1 seaweedfs-master[1121]: I0313 13:53:53  1121 master_server.go:165] leader change event: weed-master-2.local:9333 =>
Mar 13 13:53:53 weed-master-1 seaweedfs-master[1121]: I0313 13:53:53  1121 master_server.go:165] leader change event:  => weed-master-3.local:9333
Mar 13 13:53:53 weed-master-1 seaweedfs-master[1121]: I0313 13:53:53  1121 master_server.go:168] [ weed-master-1.local:9333 ] weed-master-3.local:9333 becomes leader.
Mar 13 13:54:15 weed-master-1 seaweedfs-master[1121]: I0313 13:54:15  1121 masterclient.go:128] master masterClient failed to receive from weed-master-2.local:9333: rpc error: code = Unavailable desc = error reading from server: EOF
Mar 13 13:54:15 weed-master-1 seaweedfs-master[1121]: I0313 13:54:15  1121 common.go:70] response method:GET URL:/dir/lookup?volumeId=2243 with httpStatus:404 and JSON:{"volumeOrFileId":"2243","error":"volume id 2243 not found"}
Mar 13 13:54:15 weed-master-1 seaweedfs-master[1121]: I0313 13:54:15  1121 common.go:70] response method:GET URL:/dir/lookup?volumeId=5817 with httpStatus:404 and JSON:{"volumeOrFileId":"5817","error":"volume id 5817 not found"}
Mar 13 13:54:15 weed-master-1 seaweedfs-master[1121]: I0313 13:54:15  1121 common.go:70] response method:GET URL:/dir/lookup?volumeId=243 with httpStatus:404 and JSON:{"volumeOrFileId":"243","error":"volume id 243 not found"}
Mar 13 13:54:15 weed-master-1 seaweedfs-master[1121]: I0313 13:54:15  1121 common.go:70] response method:GET URL:/dir/lookup?volumeId=1827 with httpStatus:404 and JSON:{"volumeOrFileId":"1827","error":"volume id 1827 not found"}
Mar 13 13:54:15 weed-master-1 seaweedfs-master[1121]: I0313 13:54:15  1121 common.go:70] response method:GET URL:/dir/lookup?volumeId=1902 with httpStatus:404 and JSON:{"volumeOrFileId":"1902","error":"volume id 1902 not found"}
Mar 13 13:54:15 weed-master-1 seaweedfs-master[1121]: I0313 13:54:15  1121 common.go:70] response method:GET URL:/dir/lookup?volumeId=5434 with httpStatus:404 and JSON:{"volumeOrFileId":"5434","error":"volume id 5434 not found"}
Mar 13 13:54:15 weed-master-1 seaweedfs-master[1121]: I0313 13:54:15  1121 common.go:70] response method:GET URL:/dir/lookup?volumeId=1636 with httpStatus:404 and JSON:{"volumeOrFileId":"1636","error":"volume id 1636 not found"}

seaweedfs version:
version 8000GB 2.93 f7ee60996c433a596b0ea75961cc5f23c6663c6f linux amd64
(I have this problem from weed version 2.89, I upgrade to 2.93 but the bug still exists  )

what is the cluster status for each master?
curl "http://localhost:9333/cluster/status?pretty=true"

Hi @chrislusf ,
The problem happened again, master one was the previous leader but it changed suddenly to an ordinary master due to a leader election and master-2 become leader, as you can see peers of  weed-master-1 that was the previous leader is not correct:

http://weed-master-1.local:9333/cluster/status?pretty=true
{

    "Leader": "weed-master-2.local:9333",
    "Peers": [
        "weed-master-2.local:9333",
        "weed-master-3.local:9333"
    ],
    "MaxVolumeId": 5923

}

http://weed-master-2.local:9333/cluster/status?pretty=true

{

    "IsLeader": true,
    "Leader": "weed-master-2.local:9333",
    "Peers": [
        "weed-master-1.local:9333",
        "weed-master-3.local:9333"
    ],
    "MaxVolumeId": 5923

}

http://weed-master-3.local:9333/cluster/status?pretty=true
{

    "Leader": "weed-master-2.local:9333",
    "Peers": [
        "weed-master-1.local:9333",
        "weed-master-2.local:9333"
    ],
    "MaxVolumeId": 5923

}

the master statuses look good.
When "error volume id {volumeId} not found" happened, how long did it last?

volume id {volumeId} not found" happened, how long did it last?

Hi @chrislusf ,
It last till I reboot all masters together, (The passage of time would worsen the situation, and when this error occurred I should reboot masters as soon as possible)
After 24 hours approximately, this error shows again.

seems this is in some k8s env? Is it possible to make it reproducible?

seems this is in some k8s env? Is it possible to make it reproducible?

No, My cluster is not in k8s,
I've installed Weedfs in bare metal (linux amd64)
I've no idea how I can make it reproducible

seems this is in some k8s env? Is it possible to make it reproducible?

@chrislusf
The important question is why Seaweedfs will start to change the leader?(cause during the leader election this problem would happen)

Very likely due to some timeout setting. And did you also check the system time on each servers?

Servers' times is the same on all servers and also I don't change the default timeout setting

To remind you of the actual problem I should say that Weed masters return different result for lookup a volume id:
On  Master one(That is the leader):
1.
curl http://weed-master-1.local:9333/dir/lookup?volumeId=1662
result:
{"volumeOrFileId":"1662","error":"volume id 1662 not found"}

On master two:
2.
http://weed-master-2.local:9333/dir/lookup?volumeId=1662
result:
{

    "volumeOrFileId": "1662",
    "locations": [
        {
            "url": "weed-volume-003.local:8082",
            "publicUrl": "weed-volume-003.local:8082"
        },
        {
            "url": "weed-volume-005.local:8080",
            "publicUrl": "weed-volume-005.local:8080"
        }
    ]

}

On master three:

curl http://weed-master-3.local:9333/dir/lookup?volumeId=1662
{

    "volumeOrFileId": "1662",
    "locations": [
        {
            "url": "weed-volume-003.local:8082",
            "publicUrl": "weed-volume-003.local:8082"
        },
        {
            "url": "weed-volume-005.local:8080",
            "publicUrl": "weed-volume-005.local:8080"
        }
    ]

}

This is what Weed masters return @chrislusf :

http://weed-master-1.local:9333/dir/lookup?volumeId=6123,7a4fd80f542df670

{

    "volumeOrFileId": "6123",
    "locations": [
        {
            "url": "weed-volume-028.local:8085",
            "publicUrl": "weed-volume-028.local:8085"
        },
        {
            "url": "weed-volume-029.local:8080",
            "publicUrl": "weed-volume-029.local:8080"
        }
    ]

}

http://weed-master-2.local:9333/dir/lookup?volumeId=6123,7a4fd80f542df670

{

    "volumeOrFileId": "6123",
    "locations": [
        {
            "url": "weed-volume-026.local:8084",
            "publicUrl": "weed-volume-026.local:8084"
        },
        {
            "url": "weed-volume-028.local:8085",
            "publicUrl": "weed-volume-028.local:8085"
        },
        {
            "url": "weed-volume-030.local:8082",
            "publicUrl": "weed-volume-030.local:8082"
        },
        {
            "url": "weed-volume-029.local:8080",
            "publicUrl": "weed-volume-029.local:8080"
        },
        {
            "url": "weed-volume-015.local:8080",
            "publicUrl": "weed-volume-015.local:8080"
        },
        {
            "url": "weed-volume-020.local:8085",
            "publicUrl": "weed-volume-020.local:8085"
        }
    ]

}

http://weed-master-3.local:9333/dir/lookup?volumeId=6123,7a4fd80f542df670
{

    "volumeOrFileId": "6123",
    "locations": [
        {
            "url": "weed-volume-015.local:8080",
            "publicUrl": "weed-volume-015.local:8080"
        },
        {
            "url": "weed-volume-028.local:8085",
            "publicUrl": "weed-volume-028.local:8085"
        },
        {
            "url": "weed-volume-030.local:8082",
            "publicUrl": "weed-volume-030.local:8082"
        },
        {
            "url": "weed-volume-020.local:8085",
            "publicUrl": "weed-volume-020.local:8085"
        },
        {
            "url": "weed-volume-026.local:8084",
            "publicUrl": "weed-volume-026.local:8084"
        },
        {
            "url": "weed-volume-029.local:8080",
            "publicUrl": "weed-volume-029.local:8080"
        }
    ]

}

Seems related to network setup. Anything going on with firewall?
Is it possible to use docker compose to reproduce this?

Seems related to network setup. Anything going on with firewall?

@chrislusf
I'm not using firewall, the whole cluster is in the local network
But this issue doesn't relate to network cause masters that are not the leader are returning the wrong list of volumes(6 volumes for replica 010)
What do you mean by "Network setup"?

Anyway, need to reproduce this. I am trying it locally. The more setup details the better.

Anyway, need to reproduce this. I am trying it locally. The more setup details the better.
Weed Master config file:
Cluster Topology: 010

test@weed-master-1:~$ cat /etc/systemd/system/weedfs_master.service
[Unit]
Description=SeaweedFS Master
After=network.target

[Service]
Type=simple
Restart=always
User=weedfs
Group=weedfs

StandardOutput=syslog
StandardError=syslog

ExecStart=/usr/local/bin/weed master -mdir="/etc/weedfs/master" -ip=weed-master-1.local -port=9333 -peers="weed-master-1.local:9333,weed-master-2.local:9333,weed-master-3.local:9333" -defaultReplication=010 -volumeSizeLimitMB=102400 -metrics.address=weed-monitoring:9091

WorkingDirectory=/usr/local/bin/
SyslogIdentifier=seaweedfs-master

[Install]
WantedBy=multi-user.target

And following config is for server-01 and one of its disk(each disk is a service on specific port):
test@weed-volume-001:~$ cat /etc/systemd/system/weedfs_volume_sdb.service
[Unit]
Description=SeaweedFS sdb Volume
After=network.target

[Service]
Type=simple
Restart=always
User=weedfs
Group=weedfs

StandardOutput=syslog
StandardError=syslog

ExecStart=/usr/local/bin/weed volume -ip=weed-volume-001.local -dataCenter=dc1 -rack="weed-volume-001" -dir="/srv/node/sdb" -max=0 -mserver="weed-master-1.local:9333,weed-master-2.local:9333,weed-master-3.local:9333" -port=8080 -compactionMBps=100 -minFreeSpace="150GiB"

WorkingDirectory=/usr/local/bin/
SyslogIdentifier=seaweedfs-sdb-volume

[Install]
WantedBy=multi-user.target

duplicated with https://github.com/chrislusf/seaweedfs/issues/2823


How can i get image URL from Camera

Please help me  Thank you

Hi Friends,
Can you please send me code how to get an image url using camera and photo library,
I have a requirement.

Hi Friends,
Can you please send me code how to get an image url using camera and photo library,
I have a requirement.

https://github.com/Yummypets/YPImagePicker/issues/258#issuecomment-444916171
There is a method to get the URL of the album, but I found that this method cannot get the photos in the camera, so I finally used  let imageData = photo.image.jpegData(compressionQuality: 1) to process the photo results


Add support for IAM instance profiles

Hi, this is the first go code I've ever written. It's not pretty, but it adds support for IAM roles. Would this be something you'd be interested in?
I think - but I haven't tried - a better implementation of what I did might be the following:
config := &aws.Config{
    Region: aws.String(vargs.AWSRegion),
}
if len(vargs.AWSAccessKey) != 0 || len(vargs.AWSSecretKey) != 0 {
    config.Credentials = credentials.NewStaticCredentials(vargs.AWSAccessKey, vargs.AWSSecretKey, "")
}

ecrClient := ecr.New(session.New(config))

Thank you for writing your code, it helped me out :)

Hmm, Yeah, actually, we can just use the default CredentialProviderChain supplied by the aws-go-sdk.
That by default checks for the environment variables, system problems, and then IAM roles.

@johnrengelman - sorry, GitHub never sends me notifications... and I haven't been able to figure it out yet.
Sorry, I'm not sure I'm parsing. Should I try to swap the code out to use the CredentialProviderChain?

@johnrengelman - I've updated the code. I imagine this is sufficient, based on your comment?

We should also add docs to the README about the order that credentials are loaded and how you can configure them.

@johnrengelman - I'll give it go. This would be much easier if I knew go, haha.

@johnrengelman - I've updated the code and the docs. I decided not to throw in the AWS_REGION non-empty check because the SDK already does it.
You get the following when you don't specify AWS_REGION:
Error updating ECR, MissingRegion: could not find region configuration


Fixing selectors for new GitHub UI

A single new selector takes care of both file and directory view in the new GitHub. I'm using data-testid which should hopefully be fairly stable (it's generally added to codebases for making more stable end-to-end tests).
Screenshots:

@yuvipanda Please review.

This moves the button next to the filename, which is much better than it not being visible! I do think it is better for it to be next to the other existing button - the 'add file' on the right:

I'm going to merge and make a release right now though, to unblock people! Do you think the button can be moved to the right, perhaps as a different PR?

@pamelafox AND THANK YOU FOR MAKING THE PR AND INVESTIGATING THIS!!!!

I can try to align it to right buttons in a follow-up PR, sure.


[67] Add option to decrypt and verify with explicit decrypters and verifiers

Resolves #67. This should help protect against this attack where an attacker changes the algorithm in the header of a JWS, forcing libraries to validate the JWS signature using a wrong algorithm.
Now the user can explicitly state which algorithm is used to verify the signature by providing a Verifier not just a key.
For consistency, I added the same for JWE decryption.
API Changes
JWS
The following validation functions got deprecated
func isValid<KeyType>(for publicKey: KeyType) -> Bool
func validate<KeyType>(with publicKey: KeyType) throws -> JWS

in favor of
func isValid(for verifier: Verifier) -> Bool
func validate(using verifier: Verifier) throws -> JWS

JWE
The following decryption function got deprecated
func decrypt<KeyType>(with key: KeyType) throws -> Payload

in favor of
func decrypt(using decrypter: Decrypter) throws -> Payload

I updated the documentation in the readme accordingly. The wiki needs to be updated. See #93.

Thanks for reviewing @gigi-mohemian. I addressed your feedback.


Psar not matching up with Tradingview psar

The psar doesn't match the psar on Tradingview. Could the calculation be missing something?

can you send the values comparing the two?

Yes.. below are the last 30 daily bars (H/L) for NFLX and the Tradingview's psar results for each day. What I noticed is that Tradingview charts has an additional setting on their psar indicator called Start which is also set to .02 at default, and it's defined here as "The starting value for the Acceleration Factor ". Not sure if that's an issue. The psar results below are rounded to 2 digits after the decimal but actually have as many as 4 or 5 digits after the decimal...
`let high=[ 190.25, 188.66, 189.7, 190, 185.03, 184.97, 184.62, 182.57, 181.22, 181,
182.27, 181.91, 175.96, 174.45, 172.58, 172.45, 171.88, 170.5, 170.58, 169.97,
168.99, 169.93, 169.64, 171.24, 168.75, 168.67, 169.68, 174.85, 176.24, 176.48 ]
let low=[ 187.01, 185.81, 187.51, 179.38, 181.18, 180.65, 181.43, 177.81, 178.02, 178.5,
179.1, 177.45, 170.01, 167.6, 169, 168.8, 168.25, 166.25, 165.72, 165.8, 164.23,
167.04, 166.7, 166.15, 165.5, 165.6, 164.73, 169.37, 173.86, 173.92 ]
let tradingview_results=[ 167.61, 170.96, 173.83, 176.31, 178.43, 180.26, 181.43, 191.50, 191.23, 190.96, 190.69, 190.16, 188.96, 187.25, 185.68, 184.23, 182.90, 181.23, 179.37, 177.73, 175.84, 174.22, 172.82, 171.62, 170.58, 169.69, 169.68, 164.23, 164.71, 165.42]
let technicalindicators_results=[ 187.01, 190.25, 190.25, 190.1612, 190, 190, 189.5752, 189.167392,
188.48594848000002,<PHONE_NUMBER>7120003,<PHONE_NUMBER>7692802,<PHONE_NUMBER>9231234,
185.93909023292736,<PHONE_NUMBER>096346,<PHONE_NUMBER>6447845,<PHONE_NUMBER>2874104,
179.0120536012921,<PHONE_NUMBER>6913705,<PHONE_NUMBER>6545786,<PHONE_NUMBER>189846,
173.00718431194707,<PHONE_NUMBER>357966,<PHONE_NUMBER>313532, 164.23,
164.37019999999998,<PHONE_NUMBER>9999998,<PHONE_NUMBER>7999998, 164.73, 164.73,
165.42059999999998 ]`


lost fields with decorator controller and jsonnet

hi,
I have a decorator controller that takes services in inputs and create networkpolicies based on a jsonnet template. Some of the networkpolicy fields get lost and I can't find a way to debug the issue.
Here is my sample service:
kind: Service
metadata:
  name: microsegmentation-controller-test
  annotations:
    io.raffa.microsegmentation: 'true'
    io.raffa.microsegmentation.additional-ports: 9999/TCP,8888/UDP
spec:
  selector:
    app: microsegmentation-controller-test
  ports:
  - port: 8080

here is my jsonnet template:
  local service = request.object,
  local additionalPorts = std.split(service.metadata.annotations["io.raffa.microsegmentation.additional-ports"],","),

  // Create a netowrkpolicy for each service.
  attachments: [
    {
      apiVersion: "networking.k8s.io/v1",
      kind: "NetworkPolicy",
      metadata: {
        name: service.metadata.name + "-np"
      },
      spec: {
        podSelector: {
          matchLabels: service.spec.selector
        },
        ingress: [
          {
            ports: [
              {
                protocol: port.protocol,
                port: port.targetPort,
              }
              for port in service.spec.ports
            ]
          },
          {
            ports: [
              {
                protocol: std.split(port, "/")[1],
                port: std.parseInt(std.split(port, "/")[0]),
              }
              for port in additionalPorts
            ]
          }
        ]
      }
    }
  ]
}

applying this template to the json of the deployed service gives the following result (tested at this link: http://jsonnet.org/docs/demo.html):
   "attachments": [
      {
         "apiVersion": "networking.k8s.io/v1",
         "kind": "NetworkPolicy",
         "metadata": {
            "name": "microsegmentation-controller-test-np"
         },
         "spec": {
            "ingress": [
               {
                  "ports": [
                     {
                        "port": 8080,
                        "protocol": "TCP"
                     }
                  ]
               },
               {
                  "ports": [
                     {
                        "port": 9999,
                        "protocol": "TCP"
                     },
                     {
                        "port": 8888,
                        "protocol": "UDP"
                     }
                  ]
               }
            ],
            "podSelector": {
               "matchLabels": {
                  "app": "microsegmentation-controller-test"
               }
            }
         }
      }
   ]
}

but when it's processed by the jsonnet server and metacontroller (not sure where the problem is) I get this result:
kind: NetworkPolicy
metadata:
  annotations:
    metacontroller.k8s.io/decorator-controller: microsegmentation
    metacontroller.k8s.io/last-applied-configuration: '{"apiVersion":"networking.k8s.io/v1","kind":"NetworkPolicy","metadata":{"annotations":{"metacontroller.k8s.io/decorator-controller":"microsegmentation"},"na
me":"microsegmentation-controller-test-np"},"spec":{"ingress":[],"podSelector":{"matchLabels":{"app":"microsegmentation-controller-test"}}}}'
  creationTimestamp: 2018-03-21T23:58:25Z
  generation: 1
  name: microsegmentation-controller-test-np
  namespace: metacontroller
  ownerReferences:
  - apiVersion: v1
    blockOwnerDeletion: true
    controller: true
    kind: Service
    name: microsegmentation-controller-test
    uid: 4770104d-2d30-11e8-8cca-fa163e7d0b02
  resourceVersion: "24418290"
  selfLink: /apis/extensions/v1beta1/namespaces/metacontroller/networkpolicies/microsegmentation-controller-test-np
  uid: be565181-2d63-11e8-808b-fa163eb8ad68
spec:
  podSelector:
    matchLabels:
      app: microsegmentation-controller-test

As you can see the ingress field is missing. Also in the last applied field we can see that ingress was applied as an empty array.
What can be happening?
Also is there a way to increase the logs?

we can close this, apparently I was trying to update a network policy field that could not be updated, but if I start from scratch the system behaves as expected.


PHPLIB-950: Run legacy CSFLE tests on serverless

PHPLIB-950
Includes fixes required to get CSFLE running on Serverless in general:

Needs mongocryptd or crypt_shared installed
Needs secrets exported
Needs KMS servers running

The download logic was shamelessly copied from the GO driver, as this isn't available through drivers-evergreen-tools. I've created DRIVERS-2459 to track this and will take a look when possible.

AFAIK, we don't run serverless tests for PR builds. Please schedule an Evergreen patch build that includes the serverless task(s) and attach it to this PR so we can confirm that all works before merging.

Sorry for not mentioning that above. I scheduled a patch build already: https://evergreen.mongodb.com/build/mongo_php_library_serverless__php_edge_versions~latest_stable_driver_versions~latest_stable_os~debian11_patch_8a327525dbb4a2a9bceac62bfc027e88309db756_633d6772a4cf4706e978aee3_22_10_05_11_16_03?redirect_spruce_users=true
Note that scheduling an additional task in a PR build has the advantage of making the required evergreen check fail if the additional task fails, which in turn prevents a merge of the PR. Only downside is that this has to be done every time after pushing changes, as that will trigger a new evergreen patch build discarding the previously selected tasks.


Fix scalers leaking

We are using Keda with RabbitMQ, after 30 days running of keda-operator pod we have more than 1000 open connections in RabbitMQ console. It was'n our app or something else, we checked it by restarting step by step. Connections were dropped only after keda-operator restart.
Fixes:
In case of error GetDeploymentScalers and getJobScalers returns acquired scalers, but callers of these methods doesn't use then or close them. So it doesn't make sense to return scalers at all in case of error, and it should close all already open scalers to avoid leaking.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: holyketzer sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

I renamed scalers to scalersRes because there was a name clash between variable scalers which overwrites namespace (or how it's called in Go) scalers and I wasn't able to use scalers.Scaler struct inside function with error:
pkg/handler/scale_handler.go:257:20: scalers.Scaler undefined
(type []scalers.Scaler has no field or method Scaler)


Warning in console when testing Formik v2 with RTL,

🐛 Bug report
Current Behavior
The Formik v2 is showing warnings in the console when testing with react-testing-library. This is not a thing on Formik v1.
Expected behavior
The console should be clear.
Reproducible example
The same component tested in the same way in both versions:
Formik v1.5.8
Formik v2.1.1
Your environment

Software
Version(s)

Formik
2.1.1

React
16.12.0

TypeScript

Browser

npm/Yarn

Operating System

Hey @lourenci I ran test in the formik repo, which is using @testing-library/react(react-testing-library) as testing framework, I am not able to observe any unexpected console warnings.
can you be more specific on what warnings are show, maybe share a screenshot or log snippet?
closing this for now, feel free to re-open


Stops working after the first key

Nice program idea, but after the first key it presses the 'Show desktop' button and stops working.
Wish it worked!

I have had success with this fork.  https://github.com/freakier/SteamBulkKeyActivator

faster fix:
put steam on "english(english)"
put windows on "english (usa)"
log off and back on
run it again
(you can change your language back afterwards)


Merge prTesting_202003231933 branch to master branch

Docs Build status updates of commit b36f2fb:
:clock10: Pending: waiting for processors (8 builds ahead of you)
:warning: Docs Build is busy, currently there are 8 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit b36f2fb:
:warning: Validation status: warnings

File
Status
Preview URL
Details

split/updateTestCon.md
:warning:Warning

Details

split/updateTestCon.md

[Warning] Missing attribute: author. Add the current author's GitHub ID.
[Warning] Missing attribute: title. Add a title string to show in search engine results.
Line 1: [Suggestion] H1 is required. Use a single hash (#) followed by a space to create your top-level heading. NOTE: This Suggestion will become a Warning on 04/01/2020.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Cloudwatch logs vs Logstash

Hi Team,
It is a kind question. I am just curious to know why logstash is the best tool to send logs to elasticsearch. We are running our all applications in AWS so, we are planning to use AWS Cloudwarch logs to collect and send application logs to elasticsearch. please give some suggestion for best practices.
Regards,
Raja

Hi,
Thanks for your question. Since the question does not relate directly to this repository, I'm going to close it.
I recommend submitting this question here: https://github.com/awslabs/logstash-output-cloudwatchlogs


Allow custom CAs to be given to the 'request' library when connecting to the Zephyr Scale server

An example is the verify flag of the Jira python library located in: https://github.com/pycontribs/jira
                * verify (Union[bool, str]) -- Verify SSL certs. Defaults to ``True``.
                  Or path to to a CA_BUNDLE file or directory with certificates of trusted CAs,
                  for the `requests` library to use.

Hi @crapitea!
Adding only verify cert option is a bit specific and it's better to implement a functional that will allow to modify requests session object with a wider amount of attributes. I'm going to modify signature of the ZephyrSession constructor. You will be able to pass any session attributes in a dict:
session_params = {'verify': True}

your_zephyr = ZephyrScale.server_api(..., session_attrs=session_params)

The code is in the session_attrs branch. Feel free to share your ideas about that.

This is great! I played with it for a bit and works amazing.

@crapitea The functional was added and you can now update your package from pypi.org.


Make gtl_threadNum invalid by default.

I am designing generic API for the users on top of enkiTS.
It would be great to tell apart threads managed by enkiTS from other threads.
The cheapest (but possibly breaking) way is to make gtl_threadNum = 0xffffffff by default.
The compatible way is to add one more thread local flag which is explicitly true for managed threads and false for others.
I can make PR if you approve either way.

While you are here, two somewhat-related questions.

Any reason for GetThreadNum not to be static? It provides access to the static global variable and it will not change in forseeable future.
Is // thread_local not well supported yet by C++11 compilers. still relevant? It's been 8 years. It is also technically Undefined Behavior to #define keyworks like thread_local

This could be static. When I was writing enkiTS I was considering how to handle multiple instances and was considering making the threadnum a member variable. This change could still happen, so unless there's a good use case I'd rather not change it (I am a conservative programmer in general).
Generally speaking I try to keep as wide support as possible. Since thread_local wasn't defined on the systems where the define is used it wasn't undefined behaviour, though I note Xcode 8 introduced thread_local in 2016 so I need to add a test for that.

As for gtl_threadNum I note my 'UserThread' branches (developed for a customer wanting to run enkiTS on top of arbitrary schedulers as well as on it's own in testing) use the following:
static const uint32_t                                       NO_THREAD_NUM = 0xFFFFFFFF;
static thread_local uint32_t                            gtl_threadNum = NO_THREAD_NUM;

So I think we should go with this solution. I will merge to the dev branch initially and warn folk of a potential breaking change they should test in debug on this branch.
Since for this use case we'd want NO_THREAD_NUM to be public I think it should either be a static member of the TaskScheduler or we should use ENKI_NO_THREAD_NUM (the later will be needed for the C interface).

When I was writing enkiTS I was considering how to handle multiple instances and was considering making the threadnum a member variable.

Just curious, how would that work? You cannot have non-static thread_local member, and re-inventing thread_local manually sounds hard and possibly less efficient.

Since thread_local wasn't defined on the systems where the define is used it wasn't undefined behaviour, though I note Xcode 8 introduced thread_local in 2016 so I need to add a test for that.

Yeah, I use thread_local in Mac/iOS builds in my project just fine, so it is definetely a keyword there.
I can always do a local patch in my fork of enkiTS, but I wonder if something can be changed here. Maybe check XCode version if it's possible, or compile time switch going from CMake (like priority count).

Just curious, how would that work? You cannot have non-static thread_local member, and re-inventing thread_local manually sounds hard and possibly less efficient.
The idea here was to use the static thread local gtl_threadNum for each instance, with new instances storing a uint32_t mainThreadNum and uint32_t threadNumStart, then computing the internal thread number from this.

I can always do a local patch in my fork of enkiTS, but I wonder if something can be changed here.
Yes, as I mentioned I need to add a test (likely on XCode version as many users don't use CMake, though I'll also add a ENKI_THREAD_LOCAL_DEFINED so this can also be set in a build system). I'll do that soon.

The idea here was to use the static thread local gtl_threadNum for each instance, with new instances storing a uint32_t mainThreadNum and uint32_t threadNumStart, then computing the internal thread number from this.

Oh, I didn't think of that, that's nice idea. Thanks.
I will be writing my code with the possibility of such change in mind.

Marking as complete now this is merged to dev branch. Please reopen if you still have issues.

I wanted to say that I really like enkiTS. I tried to find decent task library for a while, but they were all too heavy and with obscure allocation policies (TBB, taskflow, etc). And here is enkiTS -- single-file library that just does the hardest part of the MT tasking, and nothing else.
It looks perfect for making existing system efficiently multi-threaded.


The collapse param is missing for community services for new apps

Eg. be-beringen has
  - action: community_services
    action_type: null
    color: null
    icon: fa-university
    params: {}
    text: City Services

instead of
  - action: community_services
    action_type: null
    color: null
    icon: fa-university
    params:
      collapse: true
    text: Community Services

http://gitlab.mobicage.com/rogerthat/app-configurator/merge_requests/60


feat(diffusers): StableDiffusionXLImg2ImgPipeline implementation

What does this PR do?

Fixes # (issue)
Adds # (feature)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you read the contributor guideline?
[ ] Did you make sure to update the documentation with your changes? E.g. record bug fixes or new features in What's New. Here are the
documentation guidelines
[ ] Did you build and run the code without any errors?
[ ] Did you report the running environment (NPU type/MS version) and performance in the doc? (better record it for data loading, model inference, or training tasks)
[ ] Did you write any new necessary tests?

Who can review?
Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.
@xxx

Demo used to check image quality:
import mindspore as ms
import requests
from PIL import Image
from io import BytesIO
from mindone.diffusers import StableDiffusionXLImg2ImgPipeline

pipe = StableDiffusionXLImg2ImgPipeline.from_pretrained(
            "stabilityai/stable-diffusion-xl-base-1.0",
            mindspore_dtype=ms.float32,
            use_safetensors=True,
            )

prompt = "a portrait of a dog wearing a pearl earring"
url = "https://upload.wikimedia.org/wikipedia/commons/thumb/0/0f/1665_Girl_with_a_Pearl_Earring.jpg/800px-1665_Girl_with_a_Pearl_Earring.jpg"

response = requests.get(url, verify=False)
image = Image.open(BytesIO(response.content)).convert("RGB")
image.thumbnail((768, 768))
ms.set_context(device_target='CPU', mode=0)
image = pipe(
            prompt=prompt,
            image=image,
            num_inference_steps=50,
            strength=0.75,
            guidance_scale=10.5
            )[0][0]

merge #475 #476 into this pr. keeping one pr for them is better

merge #475 #476 into this pr. keeping one pr for them is better

Updated

Extra question: what hardware did you test on? are both fp32 and fp16 runnable?

We use Linux CPU, Linux GPU for testing.
From our tests only fp32 is runnable on both platforms. That goes for the pipelines we have implemented and those that already exist in the repository.

Once the linting is passed, we are good.

Please run linters with pre-commit run -a

Please run linters with pre-commit run -a

Done

Linting is failed

Modify the code according to the ci


Feature request: Add the GTD matrix

Idea
Add the GTD matrix
Screenshots

isn't there already some plugin for this? or CSS snippet?

isn't there already some plugin for this? or CSS snippet?

I found the logwidgets in marklet, thank you!


KAFKA-6958: Allow to define custom processor names with KStreams DSL

This is a WIP for the KIP :  https://cwiki.apache.org/confluence/display/KAFKA/KIP-307%3A+Allow+to+define+custom+processor+names+with+KStreams+DSL

@guozhangwang What do you mean by "final review" -- the KIP is not voted yet, but still in DISCUSS stage.

@guozhangwang What do you mean by "final review" -- the KIP is not voted yet, but still in DISCUSS stage.

For such KIPs it is better to do PR reviews and KIP discussions in parallel as some details may not be seen on email discussion, so I'd like to take a look at the PR as early as possible as we still in DISCUSS stage. But even with the current proposal, it seems the PR is not complete yet, so I left the above comment :)

That makes sense. Was just irritated by "final" :)

@guozhangwang @bbejeck thanks for your review on this PR. To be honest I'm not sure to have covered everything.

Build failed with compile errors.

Compile issues and checkstyles have been fixed.

@fhussonnois Would it be possible to split this into multiple PRs (like 5 to 10)? It's huge and thus very hard to review, what will slow down the review time significantly.

Closing this because it seems outdate. The work was broken into multiple smaller PRs.


openteder.eu link is not right

The ID is not right and the link therefore always ends up in 404.
See example network
Supplier: OMV Petrom SA & the only tender has ID of the link is 5553718f-6570-4f82-a951-de12948bc0a8

But the ID of the tender on opentender is cc9ea788-7aac-4ea6-8f2b-9d0cdaa14324
Possible that the new data have new IDs?
Or that a different ID is used in the tender link?

The ID we have is taken from the dataset (just double checked).
Looks like they were changed by DW since the this dataset.
Let's keep this open until we import the new dataset and see if the new IDs work.

@georgiana-b ping on this

The issue here is that the network node has its own id, different from the original buyer node which does indeed has the same id as in opentender. We should start including in the network node payload the original actorID.


Using a sequence with inbuilt events

Hi,
Using the example on the page I can use the following:
            var mySequence = [ 	    { e: $(".Reject"), p: { translateX: 100 }, o: { duration: 1000 } }, 	    { e: $(".Approve"), p: { translateX: 300 }, o: { duration: 1000 } }             ];
however is t possible to substitute the translateX with an inbuilt transition i.e.
        var mySequence = [
    { e: $(".Reject"), p: { transition.slideLeftOut: 100 }, o: { duration: 1000 } },
    { e: $(".Approve"), p: { transition.slideRightIn: 300 }, o: { duration: 1000 } }
        ];

Any help is appreciated.
Thanks

This should work:
var mySequence = [
    { e: $(".Reject"), p: 'transition.slideLeftOut', o: { duration: 1000 } },
    { e: $(".Approve"), p: 'transition.slideRightIn', o: { duration: 1000 } }
];

Thanks Philip,
But that did not work, I also tried:
{ e: $(".Reject"), p: {'transition.slideLeftOut':100}, o: { duration: 1000 } },
{ e: $(".Approve"), p: { 'transition.slideRightIn': 100 }, o: { duration: 1000 } }

but that did not work either.

Passing the effect name as string does work for me: Demo here
So the problem almost certainly is not with Velocity.

@philippklodt You left the , o: { duration: 800 } in the first one, but taking that out makes no difference so I'm with you there.
@sanjshah Can you provide a JSFiddle which doesn't work properly for you, then we can start to track it down...

many thanks Philip and Rycochet, that is working fine as you have displayed.
Regards


[feature_request] Expose EVCC controls to HA

I have successfully configured EVCC in my HA installation, everything works perfectly.
The only thing that is a bit annoying: I have to manually enable the charging by clicking on "fast charging" in the EVCC web interface. I don't seem to find a way to automate this as the EVCC integration doesn't expose any of the controls to HA. Would be great if that was possible.

This is exactly the same request I have right now 😄

One can enable MQTT in EVCC, of course, and then create custom sensors, e.g.
mqtt:
  sensor:
    - name: Vehicle Charge Power
      icon: mdi:ev-station
      state_topic: "evcc/loadpoints/1/chargePower"
      unit_of_measurement: W

But this is super tedious as there are a large number of MQTT values...

This is exactly what I did and what worked for me!

It does of course - but it is tedious. Would be nicer if all values would be exposed "by default"/automatically

To create not only a sensor but also a switch you need the following code:
`mqtt:
sensor:
- name: Vehicle Charge Power
icon: mdi:ev-station
state_topic: "evcc/loadpoints/1/chargePower"
unit_of_measurement: W
- name: Lade IONIQ mit voller Leistung
  icon: mdi:ev-station
  state_topic: "evcc/loadpoints/1/mode"

switch:
- name: "Lademodus IONIQ"
command_topic: "evcc/loadpoints/1/mode/set"
state_topic: "evcc/loadpoints/1/mode"
payload_off: "pv"
payload_on: "now"`

Do you also have to start charging through the app or does the car start charging immediately once you activate fast charge in evcc?

Hi Andreas, depends on your configuration of hardware (car, wallbox and possible energy manager) and software EVCC and Home Assistant and the parameters of all ....
Yesterday evening I used above described switch to switch to full load if connected and then connected my car this morning. I was expecting that the car would start immediately because of the switch. Nothing happend ...
Unfortunatley I installed the update of Home Assistant before this which restarted the Home Assistant and with this EVCC. And after restart EVCC goes to PV mode ...
So maybe its working maybe not, I am too lazy to go out and try it again, car is happy charging now :-D

Okay it was not the restart of EVCC but that I set the mode in EVCC.yaml. Commented it out and will see whether the choosen mode will stay ...

The mode stayed, so everything is as I want it :-D

This was requested on the main project as well: https://github.com/evcc-io/evcc/discussions/11256

Maybe someone request a change to the docu, that other users find this Information as well and helpful?


[Issue]: unsupported libcall legalization

Problem Description
I am getting a unsupported libcall legalization error when trying to compile a hip file.
fatal error: error in backend: unsupported libcall legalization
clang++: error: clang frontend command failed with exit code 70 (use -v to see invocation)
AMD clang version 17.0.0 (https://github.com/RadeonOpenCompute/llvm-project roc-6.1.2 24193 669db884972e769450470020c06a6f132a8a065b)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/rocm-6.1.2/llvm/bin
Configuration file: /opt/rocm-6.1.2/lib/llvm/bin/clang++.cfg
clang++: note: diagnostic msg: Error generating preprocessed source(s).
make[2]: *** [CMakeFiles/custom_ops.dir/build.make:127: CMakeFiles/custom_ops.dir/hip/file.cu.hip.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:102: CMakeFiles/custom_ops.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

Operating System
Ubuntu 22.04
CPU
AMD EPYC 7R32
GPU
AMD Radeon RX 7900 XTX
ROCm Version
ROCm 6.1.0
ROCm Component
No response
Steps to Reproduce
No response
(Optional for Linux users) Output of /opt/rocm/bin/rocminfo --support
No response
Additional Information
No response

This happens when using Explicit template instantiation
template class SomeClass;

Hi @tkramer-motion, could you please provide a minimal reproducible example so we can try to reproduce this internally. Thanks!

Here you go.
#include <hip/hip_runtime.h>

#define FIXED_EXPONENT 0x1000000000

void __global__ k_example(const double u_orig) {
    double u = u_orig * FIXED_EXPONENT;
    __int128 ret;
    if (!isfinite(u) || static_cast<__int128>(u) >= static_cast<__int128>(LLONG_MAX) ||
        static_cast<__int128>(u) <= static_cast<__int128>(LLONG_MIN)) {
        ret = static_cast<__int128>(LLONG_MAX);
    } else {
        ret = static_cast<__int128>(llrintf(u));
    }
}

class Example {
public:
    void execute_device(hipStream_t stream) {
        int tpb = 64;
        int blocks = 16;
        k_example<<<blocks, tpb, 0, stream>>>(454.34);
    }
};

int main() {
    Example cr;
    hipStream_t stream;
    hipStreamCreate(&stream);
    cr.execute_device(stream);
}

Compiling with
/opt/rocm-6.1.2/llvm/bin/clang++  -std=gnu++17 --offload-arch=gfx1100  -x hip -c example.cu.hip
Results in
fatal error: error in backend: unsupported libcall legalization
clang++: error: clang frontend command failed with exit code 70 (use -v to see invocation)
AMD clang version 17.0.0 (https://github.com/RadeonOpenCompute/llvm-project roc-6.1.2 24193 669db884972e769450470020c06a6f132a8a065b)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/rocm-6.1.2/llvm/bin
Configuration file: /opt/rocm-6.1.2/lib/llvm/bin/clang++.cfg
clang++: note: diagnostic msg: Error generating preprocessed source(s).

@harkgill-amd This happens regardless of the architecture chosen.
Issue seems to be caused by the casting to __int128. Operating on 64-bit ints doesn't cause the error.
#include <hip/hip_runtime.h>

#define FIXED_EXPONENT 0x1000000000

void __global__ k_example(const double u_orig) {
    double u = u_orig * FIXED_EXPONENT;
    __int128 ret;
    if (!isfinite(u) || static_cast<long long>(u) >= static_cast<long long>(LLONG_MAX) ||
        static_cast<long long>(u) <= static_cast<long long>(LLONG_MIN)) {
        ret = static_cast<long long>(LLONG_MAX);
    } else {
        ret = static_cast<long long>(llrintf(u));
    }
}

class Example {
public:
    void execute_device(hipStream_t stream) {
        int tpb = 64;
        int blocks = 16;
        k_example<<<blocks, tpb, 0, stream>>>(454.34);
    }
};

int main() {
    Example cr;
    hipStream_t stream;
    hipStreamCreate(&stream);
    cr.execute_device(stream);
}

Hi @tkramer-motion, the fix is present in ROCm 6.2.0 and I no longer see any issues when running your example code. Could you please test it out on your end and confirm?

Confirmed. We can compile our project with 6.2.0. Thanks!

Great! Will close out this issue in that case.


RoI Pooling return  Tensor

Hi, I run the demo without any problems. However, I write some code to achieve some goals that happen errors.
When I call the roi_pool function, there is a error:
roi_pool = roi_pooling_op.roi_pool(conv5_3, rois, 7, 7, 1.0/16, name='roi_pool')[0]
the shape of conv5_3 and rois is (?, ?, ?, 512) (?, 5) respectively.
and the shape of roi_pool is unknown which lead I can not do any operations next. such as fully connected layers.
I find the output of roi_pool is (?, 7, 7, 512) in demo with same code. However, the output of my code is . So sad!

sorry to interrupt you ,I meet the same problem with you. Have you solve the problem? Thank you.

@guozhiyao Maybe we must set the shape of input_image, then the size of the feature map will not be unknown.

I have tried this approach, but it doesn't work...
code:
input_feature = tf.placeholder(shape=[None,128,128,1],dtype=tf.float32)
rois = tf.placeholder(shape=[None,5],dtype=tf.float32)
print input_feature
print rois
result = roi_pool_op.roi_pool(input_feature,rois,2,2,1.0/16,name='try')
print result

without image size
Tensor("Placeholder:0", shape=(?, ?, ?, 1), dtype=float32)
Tensor("Placeholder_1:0", shape=(?, 5), dtype=float32)
RoiPool(top_data=<tf.Tensor 'try:0' shape= dtype=float32>, argmax=<tf.Tensor 'try:1' shape= dtype=int32>)

2.with image size
Tensor("Placeholder:0", shape=(?, 128, 128, 1), dtype=float32)
Tensor("Placeholder_1:0", shape=(?, 5), dtype=float32)
RoiPool(top_data=<tf.Tensor 'try:0' shape= dtype=float32>, argmax=<tf.Tensor 'try:1' shape= dtype=int32>)

Excuse me, how do you solve this problem finally?

I use the other code of roi pooling op :
It works. But we should add the spatial rate and change the order of dimension by ourselves.


added name to contributors

@jayforu, Can you add your name to Contributors.md rather than CONTRIBUTING.md?


[Question] List members of a group with API

Hi,
I want to list the members of a specific group.
Just like in GroupListMembers...
How do I get to getStorage() or is there a way to list the groupmembers with a different way?
(Used in BungeeCord, so there are no OfflinePlayers I can use)
With great wishes
xXSchrandXx

UserManager#getWithPermission is what you're after. :)
https://github.com/lucko/LuckPerms/blob/5eb8a262be3dca242fa78e5582f3aa6db16b90ad/api/src/main/java/net/luckperms/api/model/user/UserManager.java#L134-L141
Call that with group.groupname, e.g. group.admin as the permission.


Shipping Method display keeps defaults to "both" and always visible on checkout delivery page

Using Rails <IP_ADDRESS> and ruby 3.1.2 and spree v4.5.1 I've noticed when creating or updating a shipping method and setting it to be displayed to backed, the admin backend dropdown is selecting "All".

I expect when I create or update a shipping method and set "Display" to Admin Panel, I expect the Admin Panel selection to be selected.
I'm using spree_frontend and though, in database, I can see my selection was correct display_on: backend, on the checkout/delivery page, all delivery options are visible.

For the frontend, I've managed to "patch" this issue on line 17:

<% ship_form.object.shipping_rates.select {|r| r.shipping_method.display_on == :both.to_s}.each do |rate| %>