ANY route required otherwise PBR not working

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
I wanted to get this out here since it took me over 2 hours to figure this out, maybe it will save someone else.
If you route IPv6 over a VPN tunnel, e.g. the Firewall is IPv4 only and want to setup PBR the routing will not work unless any IPv6 route is added in the system routing table.
So let's say you add a PBR:
Firewall -> Rules -> lan -> add
action: pass, direction: out, ip version: ipv6, source: lan net, gateway: ipv6-gateway
Ping to global IPv6 lan address does not work...
Now adding any random IPv6 route to the system table, e.g.
System -> Routes -> Configuration -> add
network: ::/0, gateway: Null6 ::1, description: dummy route
Ping to global IPv6 lan address works...
So here I am wondering why I need to add a route to the system table ?
Seems to me like OPNsense automatically disables IPv6 routing if there is no route ?
Expected behavior
I would expect routing to work even if only PBR is used.
To be fair this only  affects you if you have no IPv6 on WAN since otherwise there will be a default route.
Environment
OPNsense 23.1.11 (amd64, OpenSSL).

It sounds like a FreeBSD kernel issue to me. I’m not sure if it’s useful to add generic null routes to work around this. First time this has come up.

I mainly wanted to have this documented, implementing a null route if no other route is defined in OPNsense sounds like a bad workaround.
It's unlikely there are any people behind a IPv4 only ISP which try to setup IPv6 via VPN like me.

Well, we were discussing after all :) It's the weekend... Perhaps https://bugs.freebsd.org has a report for this already where we could gather more info. Perhaps there is also a patch already somewhere in FreeBSD.


Keep the chat history context

Hey everyone, I made a really cool change to our chain! I'll present the problem and then explain how I was able to fix it.
With the standard Langchain chain connected to a vector store (for context access) and with memory storage, we can have a super powerful chatbot. The problem is that, with the standard Langchain chain, the chat is only able to reason from the results of the vector store similarity search. This introduces us to the following problem:
If I send a message to the AI introducing my friend Bob and say he is 28 years old, the bot will reason from the input message, maybe consider some vector store context (if there is any) and give us a response.
Then, if I ask the bot how old Bob is, it will be unable to answer "28 years old," because the bot will try to search for Bob in the vector store, but Bob was only mentioned in the message history.
In the current memory implementation, we use only to reformulate the user's final questions into a clearer question. Nothing else. That's why, no matter how we introduce Bob to the AI in a message, it will be unable to give any information about Bob in the next one, even though we have the memory implementation.
To fix this, I overwrote the standard prompt template of one of the Langchain chain steps not only to rewrite the user's final question in a clearer way, but also to include any messages from the history that have some similarity to the question, if any.
Here are some tests I did to identify and explain the problem and also the tests I did after overwriting the standard prompt template of this Langchain chain step.
Problem: The AI was losing context provided in the chat messages and considering only the context from Pinecone
UI

Underlying prompt built by Langchain

As you can see, LangChain is recreating the question, turning it into a standalone one.
Solution:  AI is returning the standalone question alongside the relevant chat history excerpt
Example: Without prior relevant chat history context

Examples: With prior relevant chat history context
UI

Underlying prompt build by Langchain

Final result

@jacoblee93 This is extremely helpful and solves 90% of the problem for my system. Upon opening a new chat (99% of the time it is only the first prompt of the conversation), it seems that this creates an opportunity for hallucinations. I have found that if my prompt is poorly articulated or very short, it will reiterate the question back to me, respond in a foreign language or spit out non-sense. In large part, this is mitigated by opening the conversation with a very descriptive prompt and then everything runs smoothly, although the occasional hallucination still persists. Obviously, I want this to be fool-proof so simply instructing users not to prompt it poorly is not enough.  Do you have any idea how I can fix this or what might be causing it?

@joaopcm Do I need to change above context in CONDENSE_QUESTION_PROMPT template ?

@joaopcm Do I need to change above context in CONDENSE_QUESTION_PROMPT template ?

Hey, @deepak-hl! What do you mean by CONDENSE_QUESTION_PROMPT?


User popout broken

What's the issue?
The profile picture is over the user name in the user popout.
Screenshot

Reload your client, I just fixed it

Oh yeah, thank you!
Appreciate your work on the theme^^


IOU Receipt - Add receipt icon in receipt attachment modal is partially colored

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

Version Number: 1.4.20-0
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Create a manual request with no receipt
Go to the request details page

Expected Result:
The add receipt icon in receipt attachment modal is fully colored
Actual Result:
The add receipt icon in receipt attachment modal is partially colored
Workaround:
Unknown
Platforms:

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

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

Screenshots/Videos
Add any screenshot/video evidence

View all open jobs on GitHub

Dupe of https://github.com/Expensify/App/issues/33777


Policy on whether to use PyTest features

We currently have no policy on whether to use PyTest-specific features in unit tests.
In order to avoid confusion, we want a policy.
(previous discussion: https://github.com/chainer/chainer/pull/4534#discussion_r177633250)

My proposal (copied from https://github.com/chainer/chainer/pull/4534#discussion_r177633250):
I come up with the simple policy:

Keep avoiding import pytest in our test code base (as we did in nose)
Permit use of simple assert

Thoughts behind the policy above is that I want to minimize the requirements of test framework when we have to choose another framework to migrate.

Why avoid import pytest?

Once we allow import pytest, we allow every feature in pytest to be used in future test code.
This rule is simple enough for contributors.

Why simple assert can be a exception:

It is shorter than self.assertEqual and also improves readability. (= cost-effective)
Even with simple assert, we can say that the test code is still compatible with standard unittest (although without nice dump of arguments)

c.f., In NumPy, it seems that they are paying much effort to abstracting out test framework by their own and gradually moving from nose to pytest.

https://github.com/numpy/numpy/issues/9352#issue-240027620
https://github.com/numpy/numpy/tree/master/numpy/testing has pytest_tools and nose_tools, and assert_raises is defined for each framework.

https://github.com/numpy/numpy/blob/master/numpy/testing/pytest_tools/utils.py#L1190
https://github.com/numpy/numpy/blob/master/numpy/testing/nose_tools/utils.py#L1208

The conclusion will be written into the contribution guide in #5012.


Fix Swarm project License grant and scope

Fix #1388
Fix license grant the same way as docker/libkv and docker/spdystream.
Not sure what to do with all the README.md files scattered in component subfolders though, should we mention them or consider them as outside of the scope of the docs folder?
/cc @moxiegirl
Signed-off-by: Alexandre Beslic<EMAIL_ADDRESS>

LGTM, but @moxiegirl please check :-)

LGTM  Thanks @abronan !


Run should run doctests

Relevant code:

https://github.com/rust-analyzer/rust-analyzer/blob/d1c1c01309cff76f6ba60c845500f67a1ca6cec6/crates/ra_ide/src/runnables.rs#L43 -- here we decide if there's a test under cursor
https://github.com/rust-analyzer/rust-analyzer/blob/d1c1c01309cff76f6ba60c845500f67a1ca6cec6/crates/rust-analyzer/src/main_loop/handlers.rs#L377 -- here we convert "test under cursor" into json we send to LSP client
https://github.com/rust-analyzer/rust-analyzer/blob/d1c1c01309cff76f6ba60c845500f67a1ca6cec6/editors/code/src/commands/runnables.ts#L9 -- here we run the actual tests

Hmm seems not so easy, in fact regarding these issues on cargo https://github.com/rust-lang/cargo/issues/6424 and https://github.com/rust-lang/cargo/issues/6669 the --all-targets seems to not test all targets :(
Then a proposal should be to add a new command suggest to just launch doc test with --doc flag. What do you think ?

I think the linked cargo issues are irrelevant here? We should just generate cargo test --doc -- name::of::the::test command (ie, just adding --doc to what we do already).

Maybe I didn't understood the issue but your linked source code seems to be linked to cargo test --package my_package_name (https://github.com/rust-analyzer/rust-analyzer/blob/d1c1c01309cff76f6ba60c845500f67a1ca6cec6/crates/rust-analyzer/src/main_loop/handlers.rs#L403) and then if we add --doc it won't test unit tests anymore.

One of the disadvantages to using cargo test --doc --name::of::the::test is it only support library target:
--doc
    Test only the library’s documentation. This cannot be mixed with other target options.

Maybe we could use rustdoc --test --test-args="name::of::the::test" src/main.rs ?

I think doc tests outside of the --lib are a niche use-case to begin with, so I'd start with only supporting --doc and doing something custom only when we get a bug report.

@bnjjj this is about running a single test, which goes via this code path.

--bin is common use case too :) , But of course I think starting from simplest is right.

According to that same page doc tests are only tested for lib targets, which is not true. This is probably outdated documentation.

When no target selection options are given, cargo test will build the following targets of the selected packages:
[...]

doc tests for the lib target

Hm, but doc tests just don't work in --bin?
https://github.com/rust-lang/rust/issues/50784

I assumed they worked.


Chapter no and name

in older version before every chapter there was chapter no and title for example
chapter 1 xxxxx
blah blah novel content
chapter 2 xxxxx
blah blah content
chapter 3 xxxxx
....
so on
but recently after new update chapter no and name between text is removed for example if i download same novel as above again it will show following
blah blah novel content
blah blah content
....
so on
can u add chapter no and title back between or an option.
Thank you.

Chapter numbering was never part of NG, tt will just take how it's on the website.
I might have adjusted the selector for that specific site and it's not picking up the "Chapter #" before title anymore through. Same goes for chapter name headlines before the chapter body but there is an option to manually add the chapter title to each chapter already.
Also if you could link the novel/host, that would be great!

Mtlnovel it happens not sure about other one

With "Add chapter title" selected

Looks fine to me?

here is my setting
https://prnt.sc/vlsisg
not showing up for me
https://prnt.sc/vlsifu

Okay I see it now, at least one bug. It shouldn't be in the

Works fine now thank you /close


Askless throwing errors

Hello, when running your original code Askless is runnig errors all the time (when running npm server + 2 flutter clients connected).
Additionally after loggin-in loggin-out on the flutter client ... messages "from today" dissapear and are not showing on both clients (although chat works)
No idea how to fix it. Would you also be so kind and add small doc how to change column names in database ?
Seems your code is havy "column name" dependend (all 3 packages npm server, askless library and flutter code).
For example changing "userId" in database to "Id" .. seems to be really heavy work.
Flutter app side errors
I/flutter (12514): listenToTypingSubscription CALLED
I/flutter (12514): Askless [ERROR]: (waitForAuthentication) Ops, this shouldn't happen, the App says it is authenticated but the server says is not authenticated
I/chatty  (12514): uid=10173(com.wisetap.flutter_chat_app_with_mysql.flutter_chat_app_with_mysql) 1.ui identical 1 line
I/flutter (12514): Askless [ERROR]: (waitForAuthentication) Ops, this shouldn't happen, the App says it is authenticated but the server says is not authenticated
NPM server errors
onReceived MESSAGES:
notifyMessagesWereUpdated: {"receivedAt":"2023-10-12T11:41:26.274Z","senderHasOutdatedVersion":true}
info: onClientReceiveOutputWithSuccess being ignored for route messages-were-updated (listen)
onReceived messages callback:  messages
senderReceivedMessagesUpdates is empty/null
warning: respondWithError: the client "(no ID)" could not perform the operation on (READ)askless-internal/call/receive, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
error: listen: the error is "PENDING_AUTHENTICATION", calling stopListening...
{"code":"PENDING_AUTHENTICATION","description":"Could not perform the operation on (LISTEN) "askless-internal/call/receive" because authentication is required"}
error: onClientStartsListening not called
[READ/LISTEN] conversations-with-unreceived-messages has been called by the client
1": conversations-with-unreceived-messages" sending -> []
info: onClientReceiveOutputWithSuccess being ignored for route conversations-with-unreceived-messages (listen)
info: onClientReceiveOutputWithSuccess being ignored for route askless-internal/call/receive (listen)

Hello! Thank you for opening the issue
I will follow your suggestion of keeping the messages after  logging in again after a logout, I will do it and I let you know here
To rename the field userId in the db to id you have two ways of doing it:

going to nodejs_websocket_backend/src/domain/entity/user-entity.ts, right click on userId in your editor and refactor it to id to change in the db and in the node.js backend (its important to refactor all userId fields in the nodejs backend)

or an easier way is to in the user-entity.ts and replace the code with: (no need to refactor the variable userId)
@PrimaryGeneratedColumn({unsigned: true, name: 'id'}) // add name field here with your custom column name
userId: number

I will also check the message Ops, this shouldn't happen, the App says it is authenticated but the server says is not authenticated and fix it, I will let you here in this issue as well
thanks for reaching out, any questions let me know

Many thanks for such a quick reply !
It's a really interesting project also from learning perspective. Really appreaciate your help on the "Ops" issue.
I tried to refactor userId in user-entity.ts, but seems there's also userId used on flutter side. I will review this file by file and try to do it manually. I Wanted to experiment with existing mysql chat database we use for php website at school  where colum names are totally different (simple mobile chat would be a great add-on), so I guess there might be some manual work.
Would you be so kind and tell what's the easiest way to:

add simple "WHERE" filter (ideally on flutter side) to select specific filtered user dataset as "Contacts" ? (now it's all<->all users)
force messages refresh on flutter app side chat conversations (so database status) when one user is writing via php website and another is reading via flutter app ?
delete conversation from the flutter app

Many thanks in advance, enjoy your day !

Many thanks for your all priceless suggestions. I will follow them and try to implement a solution with shared mysql DB (php / flutter node.js).
Just last one ... I already have access_token  I use in my Flutter prototype App. It's taken via separate login by REST API talking to our mysql.  Would you suggest any easy method to skip user/password authentication in your flutter client just use access_token only I can provide as variable from my flutter prototype to your Flutter-chat module ?
1000 Thanks again !

I appreciate!
On the Flutter side, you can go to the flutter_app/lib/features/login_and_registration/data/data_sources/auth_remote_ds.dart file and change the code of the getAccessTokenWithEmailAndPassword(..) function, remove AsklessClient.instance.create(route: "login" ...) and replace it with a call to your REST API so you can verify the access token directly with your REST API. You may also want to edit useRefreshTokenToGetNewAccessToken(..) in case the access token is no longer valid
In the backend, you can change the code of the authenticate(...)  function from the nodejs_websocket_backend/src/index.ts file so you can replace it with your logic to validate your accessToken
I hope it helps

a million thanks Rodrigo ! I will have an excellent weekend experimenting with your project !

Thank you! I wish you success in your project and an awesome weekend!

Hello Rodrigo,
Hope all is well. So I finally managed to refactor all my columns and also have changed authorization system. After analysing your code on both flutter and node.js sides I decided to leave original token management between flutter client -> askless and node.js.  It's a different form of authorisation used only for chat purpose, so I figured out that the best way will be to replace your email/password by my user_access_token. Refactored few methods and it works ! :)
I hope you don't mind to ask some simple questions - Since now I use chat as sub-module in my main app at school (users are authorized by their username and password in other module) and chat is only authorised via API user_access_token I got from the server:

How to disable refresh_token_access on the chat app ? or do I have to do it at all since it's only chat authorisation, maybe better to keep it ? appreciate your opinion.

How to keep chat_app permanently logged in ?
I know that in your original chat_app version you're currently checking whether password and email are saved in some internal repository (Hive) and then keeping user logged in. I wonder how to adopt this to my user_access_token authorisation. To keep user permanently logged in wheh his token is valid and saved.

Is there any part of the code which is logging out user after certain timeout from chat_app ? I'd like to disable this part.

then when I log out user from the main_app ... should I also log out user on the chat level ?

and last one ... did you maybe figure out how to display recent messages to user when he's logging into app (in a given certain time like T=last 3 days)

ops ... apologies .... probably too much questions :)
many thanks in advance !
Danny

Hi! I'm glad you are progressing well! Congratulations
Actually, the user email and password are not saved in the user device, but the access token and refresh token are, I think the best option for you is to keep this logic as it is, and in the backend you can change the async login(email: string, password: string) function  in the
flutter_chat_app_with_nodejs/nodejs_websocket_backend/src/domain/services/auth-service.ts file
So instead of validating the user email and password in the chat db, you can validate in your school db instead, but the refresh token and access token logic you can keep it as it is, in this way, the user is supposed to be permanently logged in. Also, there's no part in the app that logs out the user after a timeout, but this will happen in case the onAutoReauthenticationFails(..) function is called in the  flutter_app/lib/core/data/repositories/auth_repo_impl.dart file
So in this way, by keeping the access token and refresh token logic, you don't need to log out the user in the chat app when he logs out in the main app (but you can do it if you want to), because the Chat tokens logic is different from the School tokens logic, the only thing that will be similar is the validation of the password
About the last item, you can create a new route similar to messages route, check these files, it will give you a better direction:

flutter app: flutter_app/lib/features/chat/data/data_sources/messages_remote_ds.dart
node.js: nodejs_websocket_backend/src/controllers/message-controller/routes/read-messages-route.ts

1000 thanks ! I will be developing this during weekend. Hope I can manage :)

Hello Rodrigo, hope all is well at your end. I was wondering if you've had time to look into Askless [ERROR]: (waitForAuthentication) Ops, this shouldn't happen, the App says it is authenticated but the server says is not authenticated ... Still working on my school chat, but got this error so often and to be honest I've stuck with it. No idea what's the reason and how to fix it.

Got it, thanks for letting me know, I will add this to my list and I let you know here

Hello DannyFilo, I just noticed that the error message was appearing at the wrong time, the branch dev has the adjustment, thanks again
I will let you know here when I implement the feature of keeping the messages on logging in after a logout

Oh many thanks !
I planned to continue working on my mini project this weekend, so for sure I will incorporate your update.
I was wondering on 2 things:

Is there any simple way to show online/offline user status beased on users flutter client "connected" status ? Didn't have much time to think about it, but probably another column in DB would be needed to updated on user connection. Or maybe askless allows to use some sort of database-less option to see which userId is connected :) ?

Sometimes when I run node.js in my vscode then after some period of testing (30mins or more - on 2 simulators I see both chat clients are disconnected and trying to reconnect despite server seems to be running - then I need to manually kill and restart node.js.  Probably the issue is some node.js process dying in VSCode terminal but I was wondering if you ever experienced such an issue - or maybe there's any process killer timeout built it ?

Many thanks for the update again,
Danny

Sure, there's two ways of doing, with streamConnectionChanges(...) and with addOnConnectionChangeListener(...),
It only works for showing the status of the local user for himself, is this what you want? Or do you want to let a remote user know whether the local user is connected or not?
I'm glad you are making progress and letting me know! Thank you for that, I'm not aware of this second issue, but I will make tests. Could you please go to the flutter_app/lib/core/data/data_sources/connection_remote_ds.dart file and set debugLogs to true temporally, and send me logs in case happen again? I appreciate it

Oh I meant to show other users if someone's is online / offline. Adding some sort of green/grey light icon on all contacts.
Many thanks for a hint with debug option - I will make some more extensive testing this weekend, so for sure I will send the logs. There's might sort of instabilty on software side. Not sure what is it.  Sometimes server is running, all is good and then I send message from one chat client to another (android simulator 1 to simulator 2) and I see infinite logs running like below. Like one of listeners died or askless authentication token / expired or got lost somehow. Only server restart helps.
I will try to analyse this with debug option on.
Have a nice weekend and many thanks.

warning: respondWithError: the client " (no ID) " could not perform the operation on (CREATE)message, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
warning: respondWithError: the client " (no ID) " could not perform the operation on (CREATE)message, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
warning: respondWithError: the client " (no ID) " could not perform the operation on (CREATE)message, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
warning: respondWithError: the client " (no ID) " could not perform the operation on (CREATE)message, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
warning: respondWithError: the client " (no ID) " could not perform the operation on (CREATE)message, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
warning: respondWithError: the client " (no ID) " could not perform the operation on (CREATE)message, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
warning: respondWithError: the client " (no ID) " could not perform the operation on (CREATE)message, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
warning: respondWithError: the client " (no ID) " could not perform the operation on (CREATE)message, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
warning: respondWithError: the client "(no ID)" could not perform the operation on (READ)conversations-with-any-messages, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
error: listen: the error is "PENDING_AUTHENTICATION", calling stopListening...
{"code":"PENDING_AUTHENTICATION","description":"Could not perform the operation on (LISTEN) "conversations-with-any-messages" because authentication is required"}
error: onClientStartsListening not called
warning: respondWithError: the client "(no ID)" could not perform the operation on (READ)askless-internal/call/receive, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
error: listen: the error is "PENDING_AUTHENTICATION", calling stopListening...
{"code":"PENDING_AUTHENTICATION","description":"Could not perform the operation on (LISTEN) "askless-internal/call/receive" because authentication is required"}
error: onClientStartsListening not called
warning: respondWithError: the client "(no ID)" could not perform the operation on (READ)user-list, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
error: listen: the error is "PENDING_AUTHENTICATION", calling stopListening...
{"code":"PENDING_AUTHENTICATION","description":"Could not perform the operation on (LISTEN) "user-list" because authentication is required"}
error: onClientStartsListening not called
warning: respondWithError: the client "(no ID)" could not perform the operation on (READ)is-typing, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
error: listen: the error is "PENDING_AUTHENTICATION", calling stopListening...
{"code":"PENDING_AUTHENTICATION","description":"Could not perform the operation on (LISTEN) "is-typing" because authentication is required"}
error: onClientStartsListening not called
warning: respondWithError: the client "(no ID)" could not perform the operation on (READ)messages, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
error: listen: the error is "PENDING_AUTHENTICATION", calling stopListening...
{"code":"PENDING_AUTHENTICATION","description":"Could not perform the operation on (LISTEN) "messages" because authentication is required"}
error: onClientStartsListening not called
warning: respondWithError: the client "(no ID)" could not perform the operation on (READ)messages-were-updated, result is PENDING_AUTHENTICATION, authentication is "pending", did you handle the onUnauthenticatedListener on the App side? (initAndConnect)
error: listen: the error is "PENDING_AUTHENTICATION", calling stopListening...

Right now Askless doesn't support this feature, but thanks for asking me, I will keep this in mind in case more people request it
Thanks also for sharing your logs, could you please also share your Flutter and Node.js versions?

Hello Rodrigo, hope all is well. It's been a long time.  Now fortunately I'm back life and back to some development work and fun with chat app. I will probably have 1 or 2 questions in the coming days. First I had to remind myself how askless work :) ...
I have a first small request ... I had to update my small project to compileSdkVersion 34 ... and unfortunately this new SDK is working with latest version of Gradle which requires namespace in every package. Your Askless library has still a dependency on old package safe_device. I see there's a new version of this one.
Would you find a minute and update Askless with latest versions of safe_device package + others ? That would help a bit in my small neverending  project :)
Kind regards,
Daniel

Hello DannyFilo, how bad! But I'm happy you are good now
Sure, you can now update the askless package to ^3.1.0 in pubspec.yaml
Take care

Hello rodigro, i made a new issue but saw no respond so i hope you can help me with the issue i faced, namely the disconnected issue and a few more but i would love to have your respond first
thanks in advance
Hieunt

A new update has been released with a focus on fixing issues, so run git pull :)


Added shim for Spark 3.3.2

Added shim for Spark-3.3.2 as this is the new version for Spark 3.3
fixes #6902
Signed-off-by: Raza Jafri<EMAIL_ADDRESS>

build

either this one or https://github.com/NVIDIA/spark-rapids/pull/6920 would resolve merge conflict after merging another one

build

build


[mssql] feature request: support for date/time

For chrono and time.

Hey there, just trying out sqlx for a mid sized project with mssql backend, and it seems this is still not supported?
When using the query macro, I get 'panic: not implemented: name: unsupported data type DateTimeN'.
Seems to be https://github.dev/launchbadge/sqlx/blob/main/sqlx-core/src/mssql/protocol/type_info.rs#L518
Any known workaround for this?

It's implemented in several forks - https://github.com/schneipp/sqlx/tree/mssql-datetypes or mine at https://github.com/milgner/sqlx/tree/feature/mssql-chrono-datetime2
Unfortunately these won't be merged anymore since apparently mssql support is being phased out of the OSS version of the library - see #2125.

Thank you, exactly what I was looking for.
I read about the phase-out on a few occasions already, but never anything conclusive - is there an official announcement or roadmap for the license change?


Table 5740 Transfer Header - OnBeforeVerifyNoInboundWhseHandlingOnLocation

I kindly request a new publisher within table 5740, in order to allow direct transfers even in the case of whse. mgt. on the inbound location (InvtSetup."Direct Transfer Posting"::"Direct Transfer" is not a valid option for process reasons).
procedure VerifyNoInboundWhseHandlingOnLocation(LocationCode: Code[10])
var
	Location: Record Location;
	//>> NEW
	IsHandled: Boolean;
	//<< NEW
begin
	//>> NEW
	OnBeforeVerifyNoInboundWhseHandlingOnLocation(LocationCode, IsHandled);
	if IsHandled then
		exit;
	//<< NEW

	if not Location.Get(LocationCode) then
		exit;

	Location.TestField("Directed Put-away and Pick", false);

	GetInventorySetup();
	if InvtSetup."Direct Transfer Posting" = InvtSetup."Direct Transfer Posting"::"Direct Transfer" then
		exit;

	Location.TestField("Require Put-away", false);
	Location.TestField("Require Receive", false);
end;

//>> NEW
[IntegrationEvent(false, false)]
local procedure OnBeforeVerifyNoInboundWhseHandlingOnLocation(LocationCode: Code[10]; var IsHandled: Boolean)
begin
end;
//<< NEW

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 11637.


Signed?

Is this Nuget package Signed?
Used another Nuget which also linked this site but it was not Signed and the
programm didnt work anymore.

I needed the same, so I downloaded the package, signed it and recompiled it. Uploading the signed version here in case someone else needs it. Just put it in your packages folder and add the reference in your project:
ScintillaNET.FindReplaceDialog.Signed.zip
Regards,
Diego.


module 'keepa' has no attribute 'Api'

Weather it is (module 'keepa' has no attribute 'Api')
or
module ('keepa' has no attribute 'keepa')
I cannot get past the third line of code.
import keepa
accesskey = 'xxxxxxxxxxx'
api = keepa.Api(accesskey)

Please be sure you don’t have any folders or files also named keepa

Please run:
import keepa
print(keepa.__file__)

You typed file.  Please type __file__

That’s supposed to two underscores.
Are you sure there’s no file or folder named keepa in the path you’re running this script from?  Also, did you install it using pip?

Looks like it’s installed correctly.  Which version are you running?  See __version__.

Interesting.  It’s correctly installed and is the latest version.  Can you try uninstalling it using pip and then cloning this repo and trying to install it from there.

Can you send me the files directly to save into my folders?
No luck in installing from repo

Sorry, should have looked more throughly at your code.  Turns out you should be using:
import keepa

key = 'putyourkeyhere'
api = keepa.Keepa(key)


[bug]为什么admin用户名登录不了

邮件：admin
token：xagent-admin

稍等马上改，

https://github.com/OpenBMB/XAgent/issues/9#issuecomment-1766282557

Thanks for your advice, it will work now.


Chore/DAEF-445 Prepare 0.5.2 testnet release

This PR was created to trigger a build so @fersel can do testing for 0.5.2 release. @domenkozar can you take it from here?

CI is done here @fersel


Updated Hibernate, Sequelize, ActiveRecord sample repo names

https://github.com/cockroachlabs/example-app-java-hibernate
https://github.com/cockroachlabs/example-app-node-sequelize
https://github.com/cockroachlabs/example-app-ruby-activerecord

This change is


Sidebar size behaves weirdly

This might be a conflict with dorako UI, but the UI width cant be changed until i hide the sidebar and make it come back. This resets whenever the game is restarted and sometimes when reloading. The odd thing is that the size you drag to will change to whatever it should've been based on where you were dragging even though it didn't show any change until you refreshed. Theres no errors in the console, it just doesnt work right.

I think i know what is happening. Due to the additional symbol in the sidebar i had to slightly increase the sidebar width. Thid change gets applied when the side bar is first rendered, this then overwrites the custom width set by dorako ui. I will look into a fix as soon as possible.

The bug should now be fixed with v1.4.1


No Power operator

There isn't a Power operator.
Writing a Power operator by hand is kind of a silly thing to do.
ponyc^3

Hi @moonheart08. This would the subject for an RFC. Please feel free to open an issue on the RFC repo or draft an RFC. You can find the RFC repo here: https://github.com/ponylang/RFCs
It has details on how to open an RFC. If you don't feel up to writing the RFC, you can create an issue on that repo (more detail is better) and hope that others agree and one of them ends up drafting the RFC.


Export react component

Not sure if this would be possible but it'd be SUPER cool if you exported a react component as well.

Could you possibly give me an example of what you're looking for? Not overly familiar with wrapping an existing library in React. If you could maybe give me a feature list, I could look into it!
Thanks,

This should not be part of the choices component itself, but rather a plugin for it, like choices-react or something along those lines. Exporting a React component is way too specific, and I have a feeling that the reason the author made this without jQuery was to get out of making it library agnostic.

i would disagree @DaBs especially considering this plugin is built with react/redux

@th3fallen Sifting through the code, and looking at the package.json file, it uses redux, but not React. It would make much more sense to write a custom React component that wraps this lib, instead of exporting it from the base lib. That way if people also want to make VueJS, Angular, Ember, etc components that use it, they aren't pulling in any needless React dependencies.

ah i misread my apologies guys, yep totally agree then should be a separate package.

@jshjohnson Yo - does choices-react or something like that exist?

@mikefrancis Not AFAIK!


Read data from serial

Hello,
Are you planning on implementing serial read as well? It would make the library extremely useful and complete.
Thanks for your great work

How about just giving the port.read() method a fixed buffer? Or we specify the buffersize via param.
The following code is completely untested:
    private static final int READ_BUFFER_SIZE = 256;
    ...
    public void readAsync(Promise promise) {
        if (port != null) {
            byte[] buffer = new byte[READ_BUFFER_SIZE];
            try {
                int bytesRead = port.read(buffer, SERIAL_TIMEOUT);
                String byteString = new String(buffer, 0, bytesRead);
                promise.resolve(byteString);
            } catch (IOException e) {
                promise.reject(e);
            }
        } else {
            promise.resolve(getNoPortErrorMessage());
        }
    }

I studied the source code of this project a little bit and it looks like, for writing data, it just calls this:
return this.UsbSerialModule.writeInDeviceAsync(this.id, value);

Is it much harder to change this to 'read'? What exactly needs to be done to support reading from serial?

Hi guys, have anyone implemented it already? I'm willing to pay for it if needed.

Hey, yeah, we have a working fork for reading data. Nothing pretty, but it gets the job done:
https://github.com/edvijaka/react-native-usbserial

Hey @GreenGI thank you.
Is this usage correct?
        DeviceEventEmitter.addListener('newData', (e) => {
          console.log('newData', e);
        });

Basically - yes. This is how I use it on a component after mounting it:
componentWillMount() {
  this.getDeviceAsync().then(device => {
    if (device) {
      DeviceEventEmitter.addListener('newData', (e) => {
        console.log('newData', e);
      });
      this.readDevice(device.id);
    }
  });
}

getDeviceListAsync = () => {
  return UsbSerialModule.getDeviceListAsync();
};

readDevice = (id) => {
  UsbSerialModule.readDeviceAsync(id);
};

Hi @GreenGI !
Is the code above still working in your fork?
Could you provide the code for getDeviceAsync()?
Thanks in advance.


NIFI-2779 - Add processor to GetEmail Supporting Exchange Web Services

New Processor: ConsumeEWS, allows you to consume email messages from Exchange Web Services
I am using this in my environment to consume emails and read their attachments (zip files). I originally wanted to just use the AbstractEmailProcessor, but this has been fine tuned for the Spring Framework Mail Receiver libraries.
This introduces a new Maven dependency: com.microsoft.ews-java-api.
License path: https://github.com/OfficeDev/ews-java-api/blob/master/license.txt
@joewitt mentioned  that this library/license should be compatible.
I tried building unit tests for the code, at least how it parses emails, but gave up.  com.microsoft.ews is not friendly in this regard and Mockito did not like working with a lot of the classes.
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit?

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[ ] Have you written or updated unit tests to verify your changes?
[x] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

@patricker thanks for submitting this. Will have a look

@patricker Joe will have a more complete view on this but looking at the MSFT code there seem to be some dependencies with NOTICE. From top of my mind, joda-time, commons-io and others that must be called out both at the nar and assembly NOTICE files.
I also noticed you have not added the MIT LICENSE provided by MSFT into nar and assembly.
This and this should give you an idea what the files have to look like
But as I said, @joewitt will be a more reliable source on this.

@trixpan @joewitt I've updated the NOTICE and LICENSE files, hopefully I caught everything.
Also made a few tweaks to the code, per your suggestions @trixpan

@patricker can you please rebase as changes to master are causing conflicts ?

you did a merge and that dragged dozens of committed commits into this PR.
Instead  you may want to do:
git checkout master -b NIFI-2779v2
git cherry-pick <commit>
git push origin NIFI-2779

@trixpan Thanks for the pointers. I think it's all fixed up now. Let me know if there are still any issues.

@patricker merge after build, reviewed code and ran against an exchange server. Seems to be working fine.
thank you for the contribution!


tour: misleading description of rand.Int behaviour

Context: https://go.dev/tour/basics/1
The section on packages says

The environment in which these programs are executed is deterministic, so each time you run the example program rand.Intn will return the same number.

Without having edited the sample program (i.e. having seeded the generator) i am still receiving random numbers, did this behavior change maybe for 1.20?
My browser is Chrome Version 109.0.5414.119 (Official Build) (x86_64),
and according to runtime.Version() the goTour was running on 1.20 at the time of running the exercise

Same as #1448, can be closed.
Fixed in golang/website#194


test if tests on osx work as well

may test more stuff in this PR

looks like osx builds are broken on travis... leave it as it is


Android 12, moto g42 getPicture not response, no error

Bug Report
Problem
On android 12 (moto g42) getPicture method do nothing. Nothing happens. Nothing shows up. The method returns neither an error nor a success. The phone doesn't freeze. Just tap on my button and nothing happens. The promise is not fulfilled.
LogCat shows only this:
To native (Cordova plugin): callbackId: Camera936725130, service: Camera, action: takePicture, actionArgs: [90,0,1,-1,400,0,0,false,true,false,null,0]
I have 2 other phones with android 12, and some phones with androids 9, 10, 11, 13 and everything works fine on them on the same app. I tried repeatedly to install the application, clear data, etc.
What is expected to happen?
The camera should open
What does actually happen?
Nothing
Information

The problem only appears on my moto g42 (android 12)
I made sure that the camera on the phone works separately
Everything works fine on my other phones:
-- 2 other phones with android 12 (Samsung s10, Oppo A54 5g)
-- Some other phones with android: 9, 10, 11, 13

Command or Code
const options: CameraOptions = {
            quality: 90,
            allowEdit: false,
            destinationType: this.camera.DestinationType.FILE_URI,
            encodingType: this.camera.EncodingType.JPEG,
            sourceType: pictureSourceType,
            mediaType: this.camera.MediaType.PICTURE,
            correctOrientation: true,
        };
this.camera.getPicture(options).then((imageData) => {
  // the code does not execute here
...
, (err) => {
  //  the code here also doesn't execute
 }

Environment, Platform, Device

Android
Api target 33
cordova-plugin-camera: 7.0.0
Ionic 7.1.0

Checklist

[x] I searched for existing GitHub issues
[x] I updated all Cordova tooling to most recent version
[x] I included all the necessary information above

I have users reporting the same or similar issue on a Galaxy S23. I am unable to reproduce the problem myself on an older galaxy

Following the thread here: https://github.com/apache/cordova-plugin-camera/issues/826, I installed this fork: https://github.com/jalios/cordova-plugin-camera/
And my problem was solved. The problem appears to be related to new permission requirements on the latest Android, so older versions do not have the problem.
(v7 of the standard apache/cordova-plugin-camera apparently also fixes the problem, but I was unable to use it because I am fixing a very old app on ionic v1 which is pinned to android 10, which is too old for this plugin, but the jalios plugin was able to work for me.)

@viking2917 I have the latest version of the plugin, which works well on many of my phones running all versions of Android (8, 9, 10, 11, 12, 13). The problem only appears on Motorola G42 with Android 12. I don't know if it's a problem with this specific phone or Motorola G42 in general.
Please let me know if any of you have a G42 with Android 12 and this plugin works for you.

Sorry I do not have a that device  :(
On Sat, Oct 7, 2023 at 9:23 PM Lerolben @.***> wrote:

@viking2917 https://github.com/viking2917 I have the latest version of
the plugin, which works well on many of my phones running all versions of
Android (8, 9, 10, 11, 12, 13). The problem only appears on Motorola G42
with Android 12. I don't know if it's a problem with this specific phone or
Motorola G42 in general.
Please let me know if any of you have a G42 with Android 12 and this
plugin works for you.
—
Reply to this email directly, view it on GitHub
https://github.com/apache/cordova-plugin-camera/issues/859#issuecomment-1751946706,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB2VYVJKQN35FMSZBZPM6XDX6JIGJAVCNFSM6AAAAAA5MPHDTOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONJRHE2DMNZQGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

@Lerolben We are having the same problem using the latest version of the plugin. Any news on your side?
The device is a Motorola g51 5G in our case. When the device was with Android 11, the pictures were captured without problems, but after the device was updated to Android 12, it works only sometimes. From 10 attempts, only 2 finished successfully.
What happens is that after pressing the camera icon (to open camera), most of the time the app shows a white screen and fully reloads the app, so the app home screen is shown.
We have set the CameraOptions quality setting to 70 to try to minimize memory usage, but it doesn't seam to be this problem since the device has enough memory, and older devices, with far less memory, are working OK.
These are the devices/emulators we have verified it works OK:
Samsung J5 (Android 9.0)
Xiaomi Redmi 10 (Android 11)
Samsung A13 (Android 13)
Samsung XCover 5 (Android 13)
Emulator (Android 12)
Emulator (Android 12L)
Sadly, we don't have another Android 12 device to try at the moment…

@rideo-eduardmorales Unfortunately, I still haven't found a solution to the problem. In my case the application does not restart. The plugin simply doesn't give any feedback.
Maybe plugin developers should check pendingResult.result and what you wrote.

Hello, for me the 'same' probleme with motorola g51. My app crash from plugin after capture picture and restart. Anyone have the same probleme?
Beside I have an user experience on motorola g9, the app crash with plugin camera and the phone doesn't restart. He has to plug the phone into power outlet. Anyone have the same probleme?

using background plugin.
The error occurs when you have to exit the app to take a photo and then when you return. I recommend using the background plugin so that when you go to take a photo, you put the app in background mode and when you return, you remove it.

If the activity gets killed during getPicture call (while the camera application is open), it's callback won't get called.
When the activity gets reloaded it requires reconstructing the webview, which means your web app will also be re-loaded. The JS state is not restored.
The response will be available inside the resume event however.
This is likely the case. You can forcefully test this case by enabling developer options on the android device and then enable the Don't Keep Activities option in the Developer settings. With this enabled, the OS will always kill the activity when the Camera intent starts, allowing you to test the that quirk. It's part of normal android behaviour, so it's something that developers are expected to handle.
This bug report sounds like this is the situation. @Lerolben were you able to confirm this?


Erase by integer index

I have this object.
json obj = {      {"Foo", 1},      {"Bar", 2} };
In some cases I have only integer index of Foo (i.e. 0) or Bar (i.e. 1), not a key like "Foo" or "Bar". And I'm need to erase "Bar" using only integer index. If I'm trying to erase "Bar" with using integer index, I'm getting an exception.
So, how I can (if it's possible) erase "Bar" using integer index? Or I need to use cycle like this for (auto it : obj) to find associative key by integer in first?

How do you have an integer index into a map?  Where did the index come from?  There is no guarantee, given the code that you posted, that the data is in the same order in the map as in the source code.

I'm using items() to make list of obj items, after that I make this list visible for user. Indexes of this list is a valid indexes of json object. And user can choose one list item for delete.

Seems like your options are include the key data in the list, keep a vector of keys and get the key from the vector using the list index, or iterate through the items again until you get to the proper index, as there is no method that I know of to erase a map entry by index.


Support Kotlin inline/value classes

Mirroring https://github.com/square/moshi/issues/1170
We should probably try to match how kotlinx-serialization treats them: https://youtrack.jetbrains.com/issue/KT-28791

This will be kind of supported in the next release, but only if no default value is defined for the property. More work would be needed to fully support it, as inline classes have different generated bytecode.

Also TBD is kotlin-reflect and metadata-reflect support

Wanted to follow up on this and see if it was indeed added, as I can't find it in the release notes, and if so which release it was added in.
I think per this ticket it's likely not been added, but wanted to confirm and keep this issue up-to-date! Thanks in advance!


feat: upgrade blockscout to 6.1.0

Linked issues
Changes

Upgrade of blockscout to 6.1.0
Components: backend, frontend, redis, db, visualization, proxy
Separate config files

What is the getting-started PR associated to this? How can I test this?


feat(option): new Option::apply() method

I guess it's not an important method because you can return the same value with map, but I'll leave the proposal 😄

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 3 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.07%) to 98.928%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/Psl/Option/Option.php
0
3
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.07%

Covered Lines:
4152

Relevant Lines:
4197

💛  - Coveralls

What would be the big benifit of this over using map()?
Would you consume it and chain it back into doing another operation?
I don't see how I'dd use it personally at this moment, but I'm open for opinions :)

Just syntactic sugar for operations if maybe, but avoiding worrying about the verbosity of returning the same value.
Code like this
$stock->map(function (int $value) use ($product) {
    $product->updateStock($stock);
    return $stock;
});

could be much more readable:
$stock->apply(fn (int $value) => $product->updateStock($stock));

I see it just like you would treat differently to map an array vs applying a function to an iterable

@devnix can you rebase against the next branch to get the github actions green again?
It could make sense for people to have this option.

@veewee I think this should be ready too, conflicts are resolved

Cool, Thanks again!


poetry2nix.overrides: remove LLVM5, LLVM6

Description of changes
WIP : depends on #127902, #202114, #224639.
@adisbladis how do you want to proceed to backport those changes in poetry2nix?
Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

I've slightly amended and applied your changes in  https://github.com/nix-community/poetry2nix/pull/1100.

I've slightly amended and applied your changes in nix-community/poetry2nix#1100.

Could I let you take over this branch to pick those changes, what do you prefer? We can wait for the next update of poetry2nix if it's before branch-off.

I've opened #224912 which supersedes this PR.


Add banner in nxtp-v1 to use Amarok

Problem
We need a way to cut over users from nxtp-V1 to the new product
Acceptance Criteria

[ ] User sees a banner in nxtp-v1 to replace "xPollinate is now Connext Bridge."
It should instead say
"New V2 UIs are live! Click here to be an early liquidity provider."
[ ] User are directed into https://amarok.bridge.connext.network/pools
[ ] Amarok mainnet has a 'BETA' tag added under the Connext Logo on all UI pages
[ ] Add ability to return back to nxtp-v1 if they choose
[ ] Add button bottom right that says "Issues or feedback" and links to our Discord https://discord.com/invite/connext

@alexwhte
should we add the links for returning to the old version & receiving feedback like this:

@alexwhte
should we add the links for returning to the old version & receiving feedback like this:

This is related to the issue we discussed here. I believe that the upcoming fix release should resolve this card as well.

Can we make it brighter and more modern font like this?

https://www.figma.com/file/4FEgX8CwUgNbSpz2kpiZdE/Untitled?node-id=0%3A1&t=vAiTA1bLgWPjOPvu-1
Also change the new tags to be better aligned and inside square corner boxes to align with UI panes

QA done, looking good!!


Make suggestionsBuilder in SearchAnchor async

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Use case
Hey,
I really like the new SearchBar / SearchAnchor.bar Widget!
However I think most of the suggestions will come from an async api call based on the input instead of prepared datasets.
Proposal
Something like this would be really nice:
SearchAnchor.bar(
  suggestionsBuilder: (context, controller) async {
    final suggestionList = await getSuggestions(controller.text);
    return suggestionList.map((suggestion) =>
      ListTile(
        title: Text(suggestion),
        onTap: () {
          //Some action
        },
      )
    );
  })

Just an aside, I also saw it in the What's new and I'm very much interested but I couldn't find any documentation. You did, apparently... :-)

Just an aside, I also saw it in the What's new and I'm very much interested but I couldn't find any documentation. You did, apparently... :-)

Just experimented a bit until it worked tbh :)

Yup, I've just realized you have to approach it from the anchor. A bit misleading because SearchBar itself comes up with the nice UI and then you're stuck, not knowing where to go next. Well, it's too early, it will be documented for sure.

Anyway, I second, third and more your async request, yes, very important.

Hi, @ips-jm and @deakjahn ! I found a temporary solution, just use the FutureBuilder:
SearchAnchor.bar(
    suggestionsBuilder: (context, controller) {
      final searchFuture = search(controller.text);
      return [FutureBuilder(
        future: searchFuture,
        builder: (context, snapshot){
          if (snapshot.connectionState == ConnectionState.done) {
            final list = snapshot.data;
            if (list != null){
              return ListView.builder(
                shrinkWrap: true,
                physics: const NeverScrollableScrollPhysics(),
                itemCount: list.length,
                itemBuilder: (BuildContext context, int index) {
                  return ListTile(
                    title: Text(list[index]),
                  );
                },
              );
            }
          }
          return const LinearProgressIndicator();
        },
      )];
    },
  )

But ... yeah, this is inelegant and odd to place a ListView in a single element List and use it as children of another ListView. That's why I called it temporary.
I'll open a pull request to make it asynchronous.

It would be great if there was some kind of internal guidelines on the design of new UI components.  There are very few that should be synchronous - and search is certainly not one of them.

Thank you @sun-jiao for all your work!
Is there an ETA when this will roll out in the stable channel?

@ips-jm could you consider closing this issue?


ARXIVNG-459 implemented validation for primary and secondary classification events.

I also added some documentation to core.events.domain.event about writing new events and adding validation to them.

Coverage increased (+0.9%) to 91.899% when pulling 64304067bad70e06e8770cd1d34c3a0bba4fb9ff on task/ARXIVNG-459 into 92453d9d9435068845f4eb1172fce6d6b0321125 on develop.

Thanks! :-)


Org user can't be deleted if it has non-cartodbfied tables in their schema

Related https://github.com/CartoDB/support/issues/1742
An organizational user can't be deleted if the user has tables in their schema.
Rollbar error: https://rollbar.com/carto/CartoDB/items/23564/

This is a "feature". We decided to go this way because we cannot know if non-cartodbfied tables are in use in maps, shared, etc. We also assumed that if a user is savvy enough to create tables manually, he should be savvy enough to delete them. That was the reasoning at the time to keep it like this, we may want to reconsider, specially in the context of the new dashboard.

Closing then


Sort route rules in a stable manner

Fixes #262
Also:

make unit test more realistic by using names instead of kinds

Jenkins job manager/presubmit passed


Explain TOKEN_ID and TOKEN_SECRET segregation

Add a link to an article in Manifold blog that explains in detail how TOKEN_ID and TOKEN_SECRET  should be handled. Saved my day.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.


Impresence only has one variant

https://pathofexile.gamepedia.com/Impresence

Thanks; I wasn't aware of that. I'll add the other variants in the next update.


Fix formatting discrepancies for the kept sample file list between FilteredSamples and CalculateCoverageComponents.

Get CalculateCoverageComponents to use the format produced by FilterSamples.

Fixed by PR #349.


Update and Optimize the code of class JedisSentinelPool

Update and Optimize the code of class JedisSentinelPool

@zhaojinqiang thanks for contributing.   Can you please run make format before committing and update the PR?
Thanks!.

Ok, @marcosnils I have submitted the code just now.
I think all other code of jedis also should be optimized for some critical issues scanned by sonar.
such as:  e1.printStackTrace();
if I use jedis, the error will be printed in my console. Thanks.


chore: add SonarQube scan

Added

Commands and instructions for executing a SonarQube scan

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.924%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
187

Relevant Lines:
197

💛  - Coveralls


appAccountToken not returned in purchase of purchaseUpdatedListener

I passed in a uuid to the appAccountToken, this is not returned anywhere inside the purchase of purchaseUpdatedListener. The field is definitely passed in correctly as I see the value inside the notification received under transactionInfo.
I'm passing in as
await requestSubscription({ sku: subscriptionSKU, appAccountToken: user_uuid });

Ok. I found it inside latest_receipt_info but not in_app inside transactionReceipt.recipe

hi @CyberTron88
can you please provide full explaination of it, I tried passing userID to appAccountToken but didn't get it in purchaseUpdatedListener or latest_receipt_info.
thanks for the help.

@Malhar62 It is working properly if you turn on storykit2 mode:
    if (Platform.OS === 'ios') {
      storekit2Mode();
    }
    initConnection().then(() => {
    // ...
    });

I found the way, appAccountToken has to be in UUID format then only we will receive it from webhook notification in backend. Not in any random string.

Yeah, that's the first thing that I did, but in storykit1 mode it wasn't working.

Oh okay, I am using storekit2, Thank you.

Have you found any solution for this @Malhar62 ?

@Karthik-V26 Can you show me your code? What kind of string is your appAccountToken? What platform are you testing it on?

@Karthik-V26 the type has to be UUID, apple has mentioned that on official docs otherwise it won't send token if it's in any other form.

@Malhar62 , You are right, If the type is UUID then I can see it. Thanks for the answer.
Could you help me in knowing the advantages of UUID, I actually need some id to send to backend to identify the user.
Like to differntiate the two users who tries to buy subscription using same appleID to avoid conflicts?

@Malhar62 , You are right, If the type is UUID then I can see it. Thanks for the answer. Could you help me in knowing the advantages of UUID, I actually need some id to send to backend to identify the user. Like to differntiate the two app account users who tries to buy subscription using same appleID to avoid conflicts?

On backend you can attach UUID to a user so each will have their unique UUID key, so after purchase backend will get appaccountToken as UUID and can differentiate user by that.


initial commit

specifies just one RFC as REST. I'd like to figure out how to generate the server side C++ from this - i.e. get to feature complete on this one RFC before starting on the others.

want to relocate the new files


Why need -g cross-env?

In package.json cross-env is already installed.  Why do we need to npm install -g cross-env?

We don't. Not sure why that is in the README, maybe someone is having an edge case issue if cross-env is not installed globally?
On that note, I propose that there are no global dependencies expect Node and MongoDB :D

Somebody was having a issue with that and installing it globally solved it but removed it from README for now!


Automatically whitelist content:// and cdvfile:// files.

Looks like this one works...?

Thanks, @agamemnus for the contribution! Do you have an Apache CLA signed? If not, please sign one http://www.apache.org/licenses/icla.txt and send it to<EMAIL_ADDRESS>Do you have a JIRA for this issue you are trying to fix explaining why it needs to be fixed? If not, it will help to file one here: https://issues.apache.org/jira/

Yes to both questions.
https://issues.apache.org/jira/browse/CB-9133
P.S.: If you could take a look at https://issues.apache.org/jira/browse/CB-9132 that would be nice too.

The issue you describe in the JIRA has to do with updates to the CSP and not the whitelist itself.

Well, there are really 2 issues, sort of.
First of all, cdvfile:// and content:// should be automatically whitelisted. That's what this patch is about.
Secondly, assuming for some reason they shouldn't be automatically whitelisted (but they should), the CSP meta tag example in the readme for this plugin is not expansive enough.

I'm somewhat new to this area. What is cdvfile and content protocol used for? Does Android actually, support navigating to either. Why should one use cdvfile over file? I will follow up and document some of these aspects if you can help me understand.

cdvfile:// is a protocol used in Cordova for accessing saved files: https://github.com/apache/cordova-plugin-file.
Regarding content://, a little back-story which should help explain. Google Play has a 50 megabyte apk size upload limit. To go beyond that it uses an expansion file system which allows up to (I think) 2 gigabytes of extra storage. The expansion files are typically downloaded to and stored in Phone/Android/obb as zip files with 0 compression ("STORE"). To access the files Google recommends using a content provider (http://developer.android.com/guide/topics/providers/content-providers.html). (A content provider is used for a few more things, as well...)
I made a comprehensive plugin for using these expansion files here: https://github.com/agamemnus/cordova-plugin-xapkreader/. It links to and makes use of 2 Android libraries made by Google called play_apk_expansion and play_licensing. A number of people wanted to use Cordova 5, but the plugin doesn't work with 5 because ant support is not supported or broken.
Unfortunately, Gradle support is somewhat broken as well as I describe in https://issues.apache.org/jira/browse/CB-9132.
Even going past the Gradle issues, the whitelist requirement in Cordova 5 means that by default content:// files (the method used to access files in the zip file) are not usable. There are two fixes to this -- patching the whitelist plugin, or adding content:// in the CSP tag.
P.S.: Even with this whitelist plugin patch, I am having issues loading JPG files (but not other types of files) using the content:// protocol (my Chrome debugger claims that content:// protocol is unrecognized), but this may be a Chromium or Crosswalk issue.

This looks good to me. I'll merge it in

Actually, hold on a second. The change is not quite what the title says. It only automatically whitelists content://, cdvfile://, and file:// for allowedNavigations if there is a * origin. What do you think of adding those regardless of the origin?

(And to be honest, I am fuzzy about what allowedNavigations, allowedRequests, and allowedIntents exactly mean.)

Argh, Just merged it in haha. I am going to revert it so we have more time to test. Looks like it is causing problems.
I'd say we stick with keeping it in the loop for now.
I am not super familiar with this plugin. It looks like allowedNavigations == null is for giving default access to file and data. I could see content fitting in there. Don't think we need cdvfile:// unless removing it breaks the file plugin for you.

Reverted it. Hopefully this PR opens agian

This is a pretty big problem IMO. File plugin not working. I am going to test it to see if I can reproduce the issues. A better solution would be if the file plugin added an exception to config.xml when getting installed. Doesn't seem to be doing that right now.

It is still closed. You have to re-open it manually. (button below comment textbox)
My changes did fix the issue for me, but only because I had the origin at *.
I will read more about whitelist stuff myself and see where the best place is to put it.

I think only you or apache infra people can re-open it.

Any chance you can give me some steps to reproduce it?

I can't re-open it. Reproduce steps would be to use any Google Expansion File plugin (like mine here, and see these steps to update to Cordova 5: https://github.com/agamemnus/cordova-plugin-xapkreader/issues/22) or use file-transfer plugin to try to add files I suppose.

Sweet! Thanks. I'll take a look tonight/tomorrow and see if we can figure this out. Let me know if you come up with any findings. We may have to open a new PR :(

Can you find out why this was made mandatory in the first place? Maybe it really shouldn't be.

Why the whitelist plugin was made mandatory?

Whitelist plugin is mandatory to be able to connect to internet in the Android platform. By default, the Android 4.0 platform cannot connect to the internet.

But the Cordova Android 3 is not like that. Why the difference?

Security!
I do think it is unfortunate that *data and *file aren't on by default without the whitelist plugin.

Well, in a rush to engineer false sense of security, someone messed up big time.
Don't forget cdvfile:// and content://...

@agamemnus Wondering if you want to create a new PR for support for cdvfile:// and content:// ?

Ok, I'll do that...

Would love to see that PR getting in

Today!

Reposted. https://github.com/apache/cordova-plugin-whitelist/pull/9


Auto corrected by following Format Ruby Code

Auto corrected by following Format Ruby Code
Click here to configure it on awesomecode.io

Coverage remained the same at 77.544% when pulling e545d53420ea3ff67116d986a044f5a4c0d677a1 on awesomecode-format-ruby-code-48755 into b74173a8d1986e3e04df674280d89461d88dbeb2 on master.


Added curlpp to base rosdep repository list

Please link to the upstream packages as per https://github.com/ros/rosdistro/blob/master/CONTRIBUTING.md
Also is there a Fedora equivalent?
And you have a typo in the debian key.

Just to confirm, should I add the upstream packages in rosdistro/$DISTRIBUTION/distribution.yaml ? This is the first time I've done this some I'm not entirely certain

This is a rosdep rule, you don't need to change the rosdistro entries.
I was asking for a link to

http://packages.ubuntu.com/xenial/libcurlpp-dev
https://packages.debian.org/jessie/libcurlpp-dev

Since on fedora I think we actually want: curlpp-devel to match the tags: https://apps.fedoraproject.org/packages/curlpp-devel
Not just the runtime: https://apps.fedoraproject.org/packages/curlpp

Alright, corrected the name and switched over to curlpp-devel. I'll keep all this in mind if I do this in the future

+1
Thanks for iterating on this.


fix global config jsp wrong tag

In the WEB-INF/jsps/admin/GlobalConfig.jsp file line 43:
                          list="weblogs" listKey="name" listValueKey="handle"/> is not correct, should be miss coding.

I found more bugs in this page, and will raise a new PR. Thanks!


Encoding issues

There is some issues when encoding of files in Git is not UTF-8.
If I have a file opened in vscode encoded in Windows 1252 (this is my default encoding for my workspace),
when using the Compare with ... command, the files from Git (not the current one in the Working folder) is displayed with the wrong encoding.
To replicate:

Create a new file and put this text inside: référence
Save it with encoding Windows 1252
Commit it in a Git repository
Modify it and use Compare with Working Tree to show the difference

The current file is OK but the one in Git is wrong (garbage instead of é).
I think the encoding from the current file in vscode must be used to decode the files from Git.

@bizoo Thanks for the report -- I'll take a look into it.

@bizoo does the built-in git diff in vscode work for you? I'm seeing the same behavior with the vscode git diff as with GitLens.

@bizoo I don't think there is currently a way I could fix this. Git itself doesn't know about the file encoding -- and vscode doesn't provide a way (as far as I can tell) to know what encoding the file is opened as.
If you or anyone else has any ideas I'm all ears :)

You're correct, vscode doesn't handle it very well:

If I put my encoding as default ("files.encoding": "windows1252") in my settings (either workspace or user), built-in git diff in vscode work for me on the same source file that show issues in GitLens.
If I don't and use the Reopen with encoding to change the encoding, I see the same issues (and even more).

I suppose that it works in vscode because it open the files from git using a different API that respect the file encoding from settings.
So even vscode itself doesn't fully support encoding in git, I'll open an issue for it.
If you can do something in GitLens to work like vscode and respect the encoding setting for all files you open, it would be great.
By the way, thanks for this great plugin.

An issues is already filled:
https://github.com/Microsoft/vscode/issues/21146
And it's incorporated in the March Iteration Plan  :thumbsup:

And you're correct about getting encoding of a file:
https://github.com/Microsoft/vscode/issues/824

Oups, closed by error...

@bizoo Thanks for the updates! I will look into adding support for the files.encoding setting.

Following this comment:
https://github.com/Microsoft/vscode/issues/21146#issuecomment-296583138
I tried the new git SCM integration and now the encoding works like before (the encoding of the files.encoding settings is always used), but it doesn't change anything for Git Lens.
Do you think it's possible to have the same behavior in Git Lens ?

@bizoo I will take a look at what was added and see if I can get that in to GitLens

@bizoo Sorry for the long delay, but can you try the new beta here: v3.5.0-beta.2? You can find installation instructions here: Installing Beta Releases

Sorry for the late answer, was on vacation.
Tried reproduce the encoding issues with build 3.5.1 and everything works as expected.
So GitLens as the same behavior as VSCode SCM.
Sad the set/get encoding from file (view) is still not supported in VSCode.
Thanks for your hard works.


Android Crash

document-scanner version 1.1.1
Crashing in an app with the following code:
  scanDocument() {
    // scan document using document-scanner from the camera
    scan.scanDoc(1, (imgUri) => {
      this.claimDocImage.imagePath = normalizeURL(imgUri);
    }, (err) => {
      console.error(err);
    });
  }

    --------- beginning of crash
05-08 14:01:23.852 28011-28011/com.eightysixdegrees.antellogistics E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.eightysixdegrees.antellogistics, PID: 28011
    java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.eightysixdegrees.antellogistics-h9hhwnZVYDRxsfP_9H8p1g==/base.apk"],nativeLibraryDirectories=[/data/app/com.eightysixdegrees.antellogistics-h9hhwnZVYDRxsfP_9H8p1g==/lib/arm64, /data/app/com.eightysixdegrees.antellogistics-h9hhwnZVYDRxsfP_9H8p1g==/base.apk!/lib/arm64-v8a, /system/lib64]]] couldn't find "libopencv_java3.so"
        at java.lang.Runtime.loadLibrary0(Runtime.java:1011)
        at java.lang.System.loadLibrary(System.java:1657)
        at com.scanlibrary.Loader.load(Loader.java:14)
        at com.scanlibrary.ScanActivity.<clinit>(ScanActivity.java:125)
        at java.lang.Class.newInstance(Native Method)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1174)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2669)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
        at android.app.ActivityThread.-wrap11(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6494)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

Info:
global packages:

    cordova (Cordova CLI) : 8.0.0

local packages:

    @ionic/app-scripts : 3.1.8
    Cordova Platforms  : android 7.1.0 ios 4.5.4
    Ionic Framework    : ionic-angular 3.9.2

System:

    ios-deploy : 1.9.2
    ios-sim    : 6.1.2
    Node       : v8.11.1
    npm        : 5.8.0
    OS         : macOS High Sierra
    Xcode      : Xcode 9.3 Build version 9E145

Why would it not find "libopencv_java3.so"?

This crash is on Android in an existing project where I added the plugin.
Other plugins used in this project:
code-push 2.0.4 "CodePushAcquisition"
cordova-plugin-appcenter-analytics 0.1.4 "App Center Analytics for Cordova"
cordova-plugin-appcenter-crashes 0.1.4 "App Center Crashes for Cordova"
cordova-plugin-appcenter-shared 0.1.3 "App Center shared code for Cordova"
cordova-plugin-camera 4.0.3 "Camera"
cordova-plugin-code-push 1.11.10 "CodePush"
cordova-plugin-device 2.0.2 "Device"
cordova-plugin-dialogs 2.0.1 "Notification"
cordova-plugin-document-scanner 1.1.1 "Scan"
cordova-plugin-file 6.0.1 "File"
cordova-plugin-geolocation 4.0.1 "Geolocation"
cordova-plugin-inappbrowser 2.0.2 "InAppBrowser"
cordova-plugin-ionic-keyboard 2.0.5 "cordova-plugin-ionic-keyboard"
cordova-plugin-ionic-webview 1.2.1 "cordova-plugin-ionic-webview"
cordova-plugin-network-information 2.0.1 "Network Information"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-whitelist 1.3.3 "Whitelist"
cordova-sqlite-storage 2.3.1 "Cordova sqlite storage plugin"
phonegap-plugin-barcodescanner 7.1.2 "BarcodeScanner"

This one is concerning as I have no way to include this plugin to test in an existing project. What could be causing the exception? Is the plugin not installed correctly (i.e. libopencv_java3.so)?

I have same issue, maybe this can fix it

Thanks, @ChrisTomAlx for quickly investigating the

This should work. Will be adding this to the plugin soon. In the meantime, if possible do let me know if this solution works in your apps. If it doesn't, I will try another route.

For some reason, I can't seem to recreate this issue on my end. Tested on quiet a few devices. Trying to succeed at failure is harder than I thought it would be.
Do let me know if you guys are having any luck at your end.

Hi I am not good at gradle, and this config didn't work for me. Could you check it out.
allprojects {
	repositories {
		maven {
			url 'https://jitpack.io'
		}
	}

	defaultConfig {

	    ndk {
		abiFilters "armeabi-v7a", "x86", "armeabi", "mips"
	    }
	    android.useDeprecatedNdk=true
	}
}

dependencies {
	compile 'com.github.NeutrinosPlatform:scanlibrary:master-SNAPSHOT'
}

Could not including the line be the cause?
compile project(':scanlibrary')

I added the ndk stuff from the link above to my build.gradle file and the app no longer crashes which is very promising!
`
defaultConfig {
versionCode cdvVersionCode ?: new BigInteger("" + privateHelpers.extractIntFromManifest("versionCode"))
applicationId privateHelpers.extractStringFromManifest("package")
    if (cdvMinSdkVersion != null) {
        minSdkVersion cdvMinSdkVersion
    }

    ndk {
        abiFilters "armeabi-v7a", "x86", "armeabi", "mips"
    }
}

`

hey @dylanvdmerwe  could you send your full build.gradle?

Here it is as a text file. Not sure if it helps or not.
build.gradle.txt

Awesome news. @ChrisTomAlx how do we get this change into the plugin so it's setup on adding of the plugin?

@dylanvdmerwe @Varun-garg Awesome!! Thanks for the help guys. I will implement this into the plugin now. Will get back to you once its done.

I have made changes to the library, but like I said, I wasn't able to test it. If you guys get the time please do test it out and let me know.

Let me know when I can test @ChrisTomAlx. I'm not seeing any commits.

@dylanvdmerwe I am making edits to the library. It did not work and so will be reverting back and looking for a new route to add this to the plugin. If all else fails will update documentation.

@dylanvdmerwe I have made the necessary edits to the library, allowing it to use 32 bit builds. You won't see commits in the plugin. The plugin has the library has a dependency. I tested it out on my end with no problems. But I don't think it helps since my device is not using a 64 bit build. Please feel free to test it on your 64 bit device when you get the time.
If you run into issues, i will see what else can be done.
Thank you for taking the time to help us. Really appreciate it.
Oh here is the link to the library we are using in the plugin, if you guys need it. I have credited the original authors in my readme (You can get the link to the original library there).

@ChrisTomAlx I am not able to build now:

I have just removed my platform and plugins folder and readded<EMAIL_ADDRESS>The app crashes with the following error:
05-23 15:48:19.048 26908-26908/com.eightysixdegrees.antellogistics E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.eightysixdegrees.antellogistics, PID: 26908
    java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/base.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_dependencies_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_0_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_1_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_2_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_3_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_4_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_5_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_6_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_7_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_8_apk.apk", zip file "/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/lib/arm64, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/base.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_dependencies_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_0_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_1_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_2_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_3_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_4_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_5_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_6_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_7_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_8_apk.apk!/lib/arm64-v8a, /data/app/com.eightysixdegrees.antellogistics-7zZ3PioI3GBjlWh0dOJ6Yw==/split_lib_slice_9_apk.apk!/lib/arm64-v8a, /system/lib64]]] couldn't find "libopencv_java3.so"
        at java.lang.Runtime.loadLibrary0(Runtime.java:1011)
        at java.lang.System.loadLibrary(System.java:1657)
        at com.scanlibrary.Loader.load(Loader.java:14)
        at com.scanlibrary.ScanActivity.<clinit>(ScanActivity.java:125)
        at java.lang.Class.newInstance(Native Method)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1174)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2669)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2856)
        at android.app.ActivityThread.-wrap11(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1589)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6494)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

Yup, It crashed!

Again, adding the following in plugins build.gradle fixed it.

android {
	defaultConfig {
		versionCode cdvVersionCode ?: new BigInteger("" + privateHelpers.extractIntFromManifest("versionCode"))
		applicationId privateHelpers.extractStringFromManifest("package")

		if (cdvMinSdkVersion != null) {
		    minSdkVersion cdvMinSdkVersion
		}

		ndk {
		    abiFilters "armeabi-v7a", "x86", "armeabi", "mips"
		}
	}
}

I guess a 64 bit build is the way to go now. Will be closing this issue after adding this info to the documentation and a 64 bit build will be added to the future enhancement plans.
Thank you guys for all the help!

Hey guys just letting you know this issue has been permanently fixed as of #24 . No workaround is required now. Please let me know if you run into any other troubles or if the fix doesn't work for you.
Cheers and have a nice day :)
Chris
Neutrinos

Note that I still have to edit the gradle file otherwise this crashes. Retested on version 2.0.1.

Added 64 bit architectures to the scan library. Should be permanently fixed now!
Cheers,
Chris
Neutrinos

Released version 2.0.2. Could you let me know if you are still facing this issue in this version?
Cheers,
Chris
Neutrinos


Fix for an issue with using LoadRuner with underscore in the name

Fix for an issue in case the user uses LR scenarios with underscore in the name which will cause the performance and transaction report to return 404.

The issue was caused due to JUnit archiver plugin used to parse the result sanitizes the file name string and causes the suite name which the folder path to appear one long file name instead of a regular path to scenario. This is later used to represent the scenario in the index files of the reports.
Jira ticket: https://issues.jenkins-ci.org/browse/JENKINS-40222

Approved for test build


Make burn-ndarray and burn-tensor no_std compatible (#168)

I made burn-ndarray and burn-tensor no_std compatible. All tests are passing. However, when I run mnist training example, it fails with the following error. I need someone review my changes and suggest a fix. I have used debugger extensively to see the value, so I have some extra data to help with debugging.
[mnist]$ RUST_BACKTRACE=1 cargo run --example mnist --features ndarray
   Compiling burn-tensor v0.5.0 (/workspaces/burn/burn-tensor)
   Compiling burn-autodiff v0.5.0 (/workspaces/burn/burn-autodiff)
   Compiling burn-ndarray v0.5.0 (/workspaces/burn/burn-ndarray)
   Compiling burn-core v0.5.0 (/workspaces/burn/burn-core)
   Compiling burn-train v0.5.0 (/workspaces/burn/burn-train)
   Compiling burn v0.5.0 (/workspaces/burn/burn)
   Compiling mnist v0.1.0 (/workspaces/burn/examples/mnist)
    Finished dev [unoptimized + debuginfo] target(s) in 45.31s
     Running `/workspaces/burn/target/debug/examples/mnist`
=== PANIC ===
A fatal error happened, you can check the experiment logs here => '/tmp/burn-example-mnist/experiment.log'
=============
thread 'main' panicked at 'Slice end 785 is past end of axis of length 784', /home/dev/.cargo/registry/src/github.com-1ecc6299db9ec823/ndarray-0.15.6/src/dimension/mod.rs:401:5
stack backtrace:
   0: rust_begin_unwind
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:575:5
   1: core::panicking::panic_fmt
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/panicking.rs:64:14
   2: ndarray::dimension::to_abs_slice
             at /home/dev/.cargo/registry/src/github.com-1ecc6299db9ec823/ndarray-0.15.6/src/dimension/mod.rs:401:5
   3: ndarray::dimension::do_slice
             at /home/dev/.cargo/registry/src/github.com-1ecc6299db9ec823/ndarray-0.15.6/src/dimension/mod.rs:430:30
   4: ndarray::impl_methods::<impl ndarray::ArrayBase<S,D>>::slice_axis_inplace
             at /home/dev/.cargo/registry/src/github.com-1ecc6299db9ec823/ndarray-0.15.6/src/impl_methods.rs:647:22
   5: ndarray::impl_methods::<impl ndarray::ArrayBase<S,D>>::slice_move::{{closure}}
             at /home/dev/.cargo/registry/src/github.com-1ecc6299db9ec823/ndarray-0.15.6/src/impl_methods.rs:538:17
   6: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::for_each
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/slice/iter/macros.rs:211:21
   7: ndarray::impl_methods::<impl ndarray::ArrayBase<S,D>>::slice_move
             at /home/dev/.cargo/registry/src/github.com-1ecc6299db9ec823/ndarray-0.15.6/src/impl_methods.rs:535:9
   8: burn_ndarray::ops::tensor::<impl burn_tensor::tensor::ops::tensor::TensorOps<burn_ndarray::backend::NdArrayBackend<E>> for burn_ndarray::backend::NdArrayBackend<E>>::index
             at /workspaces/burn/burn-ndarray/src/ops/tensor.rs:296:21
   9: burn_ndarray::ops::maxpool::max_pool2d_backward_naive
             at /workspaces/burn/burn-ndarray/src/ops/maxpool.rs:82:37
  10: burn_ndarray::ops::module::<impl burn_tensor::tensor::ops::modules::base::ModuleOps<burn_ndarray::backend::NdArrayBackend<E>> for burn_ndarray::backend::NdArrayBackend<E>>::max_pool2d_with_indexes_backward
             at /workspaces/burn/burn-ndarray/src/ops/module.rs:109:32
  11: <burn_autodiff::ops::module::BackwardMaxPool<B,2_usize,4_usize> as burn_autodiff::graph::ops::base::BackwardRecordedOps<<B as burn_tensor::tensor::backend::base::Backend>::TensorPrimitive<4_usize>>>::backward_step
             at /workspaces/burn/burn-autodiff/src/ops/module.rs:335:21
  12: <burn_autodiff::graph::node::backward::BackwardNode<T> as burn_autodiff::graph::ops::base::RecordedOpsParent>::backward_step
             at /workspaces/burn/burn-autodiff/src/graph/node/backward.rs:79:9
  13: burn_autodiff::graph::node::backward::BackwardNode<Out>::backward
             at /workspaces/burn/burn-autodiff/src/graph/node/backward.rs:65:17
  14: burn_autodiff::tensor::ad::<impl burn_autodiff::tensor::base::ADTensor<_,B>>::backward
             at /workspaces/burn/burn-autodiff/src/tensor/ad.rs:15:9
  15: <burn_autodiff::backend::ADBackendDecorator<B> as burn_tensor::tensor::backend::base::ADBackend>::backward
             at /workspaces/burn/burn-autodiff/src/backend.rs:37:9
  16: burn_tensor::tensor::base::Tensor<B,_>::backward
             at /workspaces/burn/burn-tensor/src/tensor/base.rs:736:9
  17: <mnist::model::Model<B> as burn_train::learner::train_val::TrainStep<B,mnist::data::MNISTBatch<B>,burn_train::learner::classification::ClassificationOutput<B>>>::step
             at ./src/model.rs:87:32
  18: burn_train::learner::train_val::<impl burn_train::learner::base::Learner<M,O,TO,VO>>::train_step
             at /workspaces/burn/burn-train/src/learner/train_val.rs:158:24
  19: burn_train::learner::train_val::<impl burn_train::learner::base::Learner<M,O,TO,VO>>::fit
             at /workspaces/burn/burn-train/src/learner/train_val.rs:71:17
  20: mnist::training::run
             at ./src/training.rs:54:26
  21: mnist::ndarray::run
             at ./examples/mnist.rs:13:9
  22: mnist::main
             at ./examples/mnist.rs:50:5
  23: core::ops::function::FnOnce::call_once
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/ops/function.rs:507:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
=== PANIC ===
A fatal error happened, you can check the experiment logs here => '/tmp/burn-example-mnist/experiment.log'
=============
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: SendError { .. }', /workspaces/burn/burn-core/src/data/dataloader/multithread.rs:53:30
stack backtrace:
   0: rust_begin_unwind
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:575:5
   1: core::panicking::panic_fmt
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/panicking.rs:64:14
   2: core::result::unwrap_failed
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/result.rs:1791:5
   3: core::result::Result<T,E>::unwrap
             at /rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/result.rs:1113:23
   4: <burn_core::data::dataloader::multithread::MultiThreadDataLoader<O> as burn_core::data::dataloader::base::DataLoader<O>>::iter::{{closure}}::{{closure}}
             at /workspaces/burn/burn-core/src/data/dataloader/multithread.rs:51:25
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

The latest commit fixes the training issue. I don't know how but using rand/SmallRng is the problem. I was able to switch to StdRng which works with no_std as well.
The main change/fix in the latest commit is to use std flag. Next I'll work on burn-core to make it no_std compatible.

Fixed the formatting issues, removed unnecessary tests and put back std::sync::Mutex for std feature flag (other wise spin::Mutex is used).
Ready for the review and merge. I am working on burn-core.


[FEATURE] Pot Card

Problem
Need a pot card to be used on #52 and from pot explore
User Story(s):
As a developer, I want to have a pot component I can reused for differnet profiles, so that I can speed up developers
Description
Pot card
Acceptance Criteria

[x] display pot description

[x] clip text

[x] display pot status

[ ] pass in pot contract address to component

[x] use price api to show maount matched

[x] Show name and description

[x] add near api js connection

maybe helper function for determining

Resources
Pot implementation on BOS
https://github.com/PotLock/bos-app/blob/main/apps/potlock/widget/Pots/Card.jsx

@codingshot  pass in pot contract address to component
What does this mean?

@vonhatcuong  I'm not sure what he means or why that is needed. Is this complete otherwise?

@lachlanglen Please help me test the finished features

@vonhatcuong pot card doesn't currently display status as per requirements

@lachlanglen

Do you mean 1 day left for Matching ? Currently, these pots have been applied so it will not be displayed. Please check the logic again

Ok I see, I think the designs need updating. Will mark this as closed.