When connection crashes, can no longer use that subdomain

I understand that good work is being done on this library to help improve reliability. I wanted to bring up another issue that may be related in an adjacent way. I'm also curious if anyone else is having this issue.
My connection frequently disconnects, but I then can't use that same subdomain... I don't mind having to restart localtunnel every now and then, but losing access to that subdomain is pretty frustrating.
For example, I use mydomain as the subdomain on port 3000, it crashes, and when I run lt --subdomain mydomain --port 3000 again, it generates the random characters. I then have to use something like mydomain1, and update the server address on every single sensor I have (which send data over a cellular connection to my rails server), which is definitely frustrating.
Has anyone else had this issue?
Is there any way to kill all instances of localtunnel if there are instances running...?

I have same issue. I haven't found a solution yet.

I also have that problem.
Sorry for my english, I am an argentine boy.

Yep, same here. Would be great to have a --close flag to use on the command line...

I am also having this same issue.

I have same issue.

Yeah, I'm also facing the same issue

I have this problem again.

Same  problem here :(

Still occurs. BTW after some time, the subdomain becomes available again.

Yes, but after 24hs.

Is there any way to see when the connection crashed? That way you could know when the subdomain will be freed up by the 24h reset.

@defunctzombie Can you take a look at this?

Will look into this; restarting with a given subdomain is a supported feature so if there is a bug it will need to be diagnosed. If there are steps to reproduce that would be helpful.

x-post from #227

I suspect in your case you are hitting the grace period of subdomains. A subdomain is not handed back out immediately after all tunnel connections to it are dropped to allow the client that created it to reconnect; however if you exit the client and start it again it will no longer remember the internal connectivity information and you will not be able to re-use the same subdomain for a short period. I'll think about dropping the grace period altogether as there is unlikely to be sniping occurring :)

Also for the Reproducing the bug:

keep a connection open for a very long time and every hour or so, ping it and see if it times out
when the connection times out it won't start work working again so close the connection
try to get the same subdomain again and you won't be able to

@RoboticMind few questions:

What does it mean to close the connection? exit localtunnel client cli?
How quickly do you try to get the same subdomain? Is there a period after which you are able to get the same subdomain?

I'm seeing this too, is there a plan to drop the grace period?

I've deployed a new server backend that should resolve this issue. If your client is disconnected (or dies) then the subdomain will be available again within a second.

@defunctzombie thanks for the work. which version is it?

I am facing the same issue even after the patch.

Just blocked two sub-domains again. Occurs more frequently when I am on VPN trying to access network resources in parallel. Suspect a lingering connection after exiting application (ctrl +c).
Easiest way to reproduce:

Open a tunnel lt -s <custom_subdomain> --port <port>
Once you receive desired sub-domain, disconnect wi-fi/ network adapter (to emulate possible connection drops)
Exit application (ctrl + c)
Connect back wi-fi/ network adapter
Attempt to open tunnel with same sub-domain lt -s <custom_subdomain> --port <port>
You will no longer be able to claim requested sub-domain

Failed to locate any mechanism to forcefully emit a reset/ dead or close request to trigger sock.destroy();. I suppose its back to you @defunctzombie .

How about to reopen this issue?
I think @abhinaykumar and @drewandre  already got some likes (also from me)

https://github.com/localtunnel/localtunnel/issues/248 This issue is open and tracks the same problem @BerndErnst

I am having this same issue as well.  I'm developing an app that connects directly to a hot spot.  And I need to test the wifi going offline.  Hence I'm turning my router hot spot off, which then doesn't let me reconnect to local tunnel for a long period of time.

Same here, any solution in sight?

I'm still having the same issue.


Added gridster-no-drag directive

I have added a simple feature that allows the developer to denote elements that will not trigger the drag event. By adding the gridster-no-drag directive to any child element of the gridster-item directive, you can exclude all mouseDown events that reside inside of gridster-no-drag.
The directive simply adds a class to the root element of the directive that is used during the mouseDown() function to stop propagation of the event if the class is found on an ancestor.
I apologize if I did something wrong, this is my first pull request I have ever done

Can you commit your change to the source file?  I only see the dist file in the directory

Perhaps I'm wrong.  It's listing the file, but github shows me no line changes...very strange.

Ah.. I did check in both. It just shows all lines are changed because of line endings I believe... My work related git configuration alters line endings I believe.. I could try doing it again if that's a problem

Dan, Please let me know what you would like to do about this pull request? The changes are there and the code is functioning correctly.  Would you like me to try another Pull Request or can you still take this one?

Hi, can you please submit another PR that does not alter so many lines?  Changing every line in a file causes a lot of conflicts.  What type of line endings are you using anyway?


Deal with terminal rewraping when width is reduced

There simply isn't an easy way to deal with this. Closing.


Compute Form Dimensions in a more rational fashion

Change-Id: I843ea2bf07e930b82bfd3c3f9f315ae67d939e8d

@afmckinney @halatmit Please Review

rebased...


improve custom configuration options for hdfs

Right now, you can specify a custom mesos-site.xml via hdfs.custom-config in an options.json file when installing hdfs (although it currently does not get distributed to slaves - see https://github.com/mesosphere/dcos-hdfs/issues/5). However, you do not have the ability to specify any other *-site.xml configuration files (we need to customize hdfs-site.xml, for example). Currently, we can get past this by maintaining a custom package with our configuration and specifying the url to it in hdfs.scheduler-uris but it would be great if we didn't have to do this.

Hello @ryane, You are correct that this should be dynamic and we should be using environment variables for configuration and this is part of our roadmap. Meanwhile, I will update the readme to let people know that they can set their configurations at compile time (in that case, the executor will have the correct configuration files bundled). See my PR here, https://github.com/mesosphere/hdfs/pull/160. We also need to make this easily configurable in DCOS so I will leave this issue open as it is on our roadmap.

Sounds good. The updated README definitely clarifies things. Thanks!

@elingg - has there been any progress on this issue?

@ssk, @Kensipe is looking into how to make DCOS HDFS more configurable. As far as running HDFS on pure Mesos the readme clarifies things for ryane

Okay, @kensipe - any update? Is this still an issue?

in order to configure hdfs for our platform, we currently have to build a custom hdfs scheduler package: https://github.com/CiscoCloud/mantl-hdfs. it would be wonderful if we eventually didn't have to maintain this.


[Hotfix] Let related filtering work correctly

Addresses the issues found/discussed here

Fixed in https://github.com/chrisseto/django-include/issues/2


re#18 fix marked.js to work when require js is defined

force marked.js to behave the same way if require js was defined or not

@albertgcsula can you code review


feat: User provisioning & Group sync

Checklist
I have:

[x] run the content through Grammarly
[ ] linked to sample apps when relevant
[x] added the meta description for each page in the PR
[ ] minimized the callouts and added only when necessary
[x] added the queryString parameter to the Tabs (if used)
[ ] masked PII in images. For example, login credentials, account details, and more
[ ] added images only when necessary
[ ] deleted the images that are no longer used for the updated pages in the PR
[ ] followed the image file naming convention while renaming or adding new images. (Use lowercase letters, dashes between words, and be as descriptive as possible)
[ ] used the <figure/> tag instead of a markdown representation for images
[ ] added the <figcaption/> tag to add a caption to the image
[ ] added the alt attribute in the <img/> tag
[x] verified and updated the cross-references or created redirect rules for the changed or removed content
[x] reviewed and applied the style changes for UI formatting. For example, Bold the UI elements(Buttons on screen) used in the doc.

In both AD and Okta at the bottom, you need to add
See Also

Setup SCIM provisioning

also are we not adding any screenshots for both AD and Okta to help users to align in case there are many back and forth steps happening?

I did not feel the need for screenshots as such. During Attribute Mapping steps, there is a possibility of a little confusion, but I still feel the instructions are enough.


[suggestion] CSS generating with real font-family using otfinfo

I've been playing with a CSS generator for my Windows based webkit-generator, that uses otfinfo --quiet --family filename.ttf (it first generates one if the input file is not a ttf one), so it won't relay on whatever the filename is, but for the "font-family" entry stored in the file itself.
mine uses otfinfo from Cygwin with a Windows batch file,
it does not generate the font-weight or the style, although it is too, possible,
(but I think fc-scan might be better for this).
here is a CSS auto-generated from the NotoEmoji-Regular.ttf file:
@font-face{
 font-weight:400; font-style:normal; font-display:swap; font-family:'Noto Emoji';
 src: url('NotoEmoji-Regular.eot');
 src: local('Noto Emoji')
     ,local('NotoEmoji-Regular.ttf')
     ,url('NotoEmoji-Regular.eot?#iefix')  format('embedded-opentype')
     ,url('NotoEmoji-Regular.otf')         format('opentype')
     ,url('NotoEmoji-Regular.ttf')         format('truetype')
     ,url('NotoEmoji-Regular.woff2')       format('woff2')
     ,url('NotoEmoji-Regular.woff')        format('woff')
     ,url('NotoEmoji-Regular.svg#svg')     format('svg')
     ;
}

html, input, textarea{  /*for example...*/
  font-family: 'Noto Emoji', sans-serif;
}

I think it will be great in your generator since it is *nix-native,
so you won't need to do all the weird pipe-things I use to grab the output :]
(and the file-name can always be used as a fallback for any reason)

Cool, I'll look into this. Maybe this can help with #7. Thanks!

#7- it might,
I avoided working directly with the input file,
by first convert it to all the types, then got the
information from the TTF (and last, generated the CSS).


Analyse docs.python.org using Google Search Console

https://developers.google.com/search/docs/fundamentals/seo-starter-guide
Google provides tool for analyzing your website performance: https://developers.google.com/search/docs/fundamentals/seo-starter-guide
I think it needs the domain owner to do it, so perhaps someone from PSF infra team needs to look into this.

Hi! Any news on this?


Create README template for ARFC Box

This repository's issues are reserved for feature requests, and bug reports, and questions.
I'm submitting a ...

[x] feature request

Expected Behavior
We need a template for READMEs in Box.
It should give a notion of all the metadata that someone should fill out when they're putting a dataset onto Box in the arfc-shared folder. Things like: who created it, when, why, what scripts were involved, what revision of which repository might be associated with this data, etc.
Actual Behavior
We don't have a template, or really readmes at all.
How can this issue be closed?
This issue can be closed when a readme metadata template has been created and is available on box. Also, ideally, there should be a guide.

It seems like maybe this isn't needed.


Issue-018 Initial Deployment

Please do work for this task in a branch named issue-018.

http://<IP_ADDRESS>/


Update aws-core, http-client-spi, ... to 2.17.142

Updates

software.amazon.awssdk:aws-core
software.amazon.awssdk:http-client-spi
software.amazon.awssdk:netty-nio-client

from 2.17.104 to 2.17.142.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "software.amazon.awssdk" } ]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #80.


Added ARN ignore functionality that reads from

/etc/openshift_tools/v4_arn_ignore.yaml

@rhdedgar :+1: #4091

seems like a duplicate of https://github.com/openshift/openshift-tools/pull/4091
Should be closed if that's the case.

seems like a duplicate of #4091
Should be closed if that's the case.

This is a PR into PROD, the #4091 was into STG


Create custom tooltip from element instead of HTML string

Summary
Allow to provide an element instance from the custom tooltip callback in addition to just an HTML string. This would make it a lot easier to integrate with other libraries and frontend stacks.
API Changes
Really just this:
-   tooltipEl.innerHTML = fn({
+   const customTooltip = fn({
      ctx: this.ctx,
      series: w.globals.series,
      seriesIndex: i,
      dataPointIndex: j,
      y1,
      y2,
      w,
    })
+
+   if (typeof customTooltip === 'string') {
+     tooltipEl.innerHTML = customTooltip
+   } else {
+     tooltipEl.appendChild(customTooltip)
+   }

src/modules/tooltip/Labels.js, Lines 527–535
Intended Use Case
This allows the custom tooltip callback to not only return an HTML string, but also an HTML element instance, which solves a slew of issues and user questions, and allows more advanced integration, such as using a prop in React, or a slot in a Vue component, to render a tooltip.
The API change doesn't introduce any backwards incompatibilities.

Great suggestion, will implement this.


Bit depth upgrade?

Hi @risgk ,
First of all, thank you for all your work. I've been following this for a long time and it's a great project. What would it take to upgrade this from 8 to 16 Bit? Maybe sacrificing a feature or 2 or porting to a slightly better board? It would push it into a new level and make it a lot more usable sonically and be practically noise free. Just to clarify, what I mean by "noise free" is 8-Bit noise. I use a MIDI shield and external PS and I don't use it connected USB at all. In my opinion, it would be more usable at a higher bit depth than for instance, have built in chorus. Maybe a it can be a seperate stripped down version of the monophonic version. Anyway... just a suggestion and again, thanks for all your hard work!
Cheers :)

Hi @nonsuchpro ,
Thank you for your comment.
I am also interested in Raspberry Pi Pico, but that work would be a different project.
I think VRA8-U type-16 (Special Edition with 16-bit Audio Output) is one of the answers.
https://github.com/risgk/digital-synth-vra8-u/releases/tag/v2.0.0
If you want, you can try it. I hope there are no bugs :)


[FLINK-7709] Add CheckpointStatisticDetailsHandler for new REST endpoint

What is the purpose of the change
Adds the new CheckpointStatisticDetailsHandler for the new REST server endpoint.
Moreover, this PR disables the FAIL_ON_MISSING_CREATOR_PROPERTIES property for the RestMapperUtils.getStrictObjectMapper because that is something the individuals beans can do on their own (e.g. by checking with Preconditions.checkNotNull).
R @zentol because of the changes to the ObjectMapper setup.
Verifying this change
This change is already covered by existing tests, such as CheckpointingStatisticsTest.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

Rebasing onto the latest master.

Reviewed 24 of 31 files at r1.
Review status: 21 of 26 files reviewed at latest revision, 2 unresolved discussions, some commit checks failed.

flink-runtime/src/main/java/org/apache/flink/runtime/rest/handler/legacy/checkpoints/CheckpointStatsCache.java, line 44 at r1 (raw file):

	private final Cache<Long, AbstractCheckpointStats> cache;

	public CheckpointStatsCache(int maxNumEntries) {

The CheckpointStatsCache should be moved out of the legacy namespace.

flink-runtime/src/main/java/org/apache/flink/runtime/rest/messages/checkpoints/CheckpointStatistics.java, line 233 at r1 (raw file):

				}
			} else {
				checkpointStatisticsPerTask = Collections.emptyMap();

This method is near identical to CheckpointingStatistics#generate..., except this one line.

Comments from Reviewable

@zentol I'm not entirely sure whether reviewable makes things better or worse wrt reviewing. At least I can no longer respond to individual comments directly from github.
You're right with both comments. I'll remove the CheckpointingStatistics#generate method. Moreover, I'll move the CheckpointStatsCache out of the legacy package.

@tillrohrmann I wanted to try it out, primarily since i can mark individual files as reviewed. For the remaining files I will once again write the comments on github.

Alright @zentol. I guess it would work if I signed up for reviewable.

Quick question @zentol. You've reviewed and approved #4772 which is based on this one. Do you have more comments for this PR?

I still have to look at the JSON generation in this PR.

Thanks for the review @zentol. I've addressed your comments: Reverted change to RestMapperUtils, removed null branch from CheckpointStatistics#generateCheckpointStatistics; Made the CheckpointStatistics#checkpointStatisticsPerTask non nullable. If you have no further objections, then I would like to merge this PR once Travis gives green light.

Rebased onto the latest master

no objections, feel free to merge this.


FCM pricing

According to this:

Included Free Analytics, App Indexing, Authentication, Cloud Messaging, Crash Reporting, Dynamic Links, Invites, Notifications & Remote Config

Are there any additional costs? I do not intend to use firebase db or any other services atm. FCM can be used independently from all other Firebase services, right? I don't have to use their authentication or db or whatever else to be able to send Push Notifications to individual users without any limits. Right?
Also, check out a typo in "new issue guidelines":

What verion of RN and react-native-fcm are you running?

FCM is free

thanks @sibelius


⚠ ClamAV has degraded performance

In 87b92f3, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 85 ms

Resolved: ClamAV performance has improved in 006a5d7.


Added range.

See commits for comments.

In general I'd like for eureka-semver to accept expression like >= 0.5 && < 0.6.

How is this different from the versionInRangeP from Network.Eureka.Version.Cabal ?

@glasserc It is not different, unless @potomak means to say he actually wants to parse a string expression.

One thing I think about the Network.Eureka.Version.Cabal module is that it shouldn't exist. There are exactly zero things in it related to Cabal.

@taphu Thanks -- my question wasn't directed towards @potomak but whoever wrote the range function.

@taphu @glasserc take a look at https://github.com/SumAll/haskell-eureka-semver/pull/13, a third way of defining version ranges...


Bernoulli Naive Bayes

Following #183 tips. This is an implementation of Bernoulli Naive Bayes classifier derived from Multinomial NB.

Codecov Report

Merging #226 (2091be5) into master (6168a90) will decrease coverage by 2.45%.
The diff coverage is 53.84%.

@@            Coverage Diff             @@
##           master     #226      +/-   ##
==========================================
- Coverage   57.87%   55.41%   -2.46%
==========================================
  Files          96       96
  Lines        8384     8860     +476
==========================================
+ Hits         4852     4910      +58
- Misses       3532     3950     +418

Impacted Files
Coverage Δ

algorithms/linfa-bayes/src/multinomial_nb.rs
62.65% <ø> (ø)

algorithms/linfa-bayes/src/hyperparams.rs
14.28% <20.00%> (+3.75%)
:arrow_up:

algorithms/linfa-bayes/src/bernoulli_nb.rs
63.04% <63.04%> (ø)

algorithms/linfa-clustering/src/k_means/init.rs
56.20% <0.00%> (-30.66%)
:arrow_down:

algorithms/linfa-pls/src/utils.rs
63.15% <0.00%> (-24.94%)
:arrow_down:

algorithms/linfa-kernel/src/sparse.rs
74.19% <0.00%> (-21.64%)
:arrow_down:

src/composing/platt_scaling.rs
40.00% <0.00%> (-21.23%)
:arrow_down:

...fa-clustering/src/appx_dbscan/counting_tree/mod.rs
36.08% <0.00%> (-17.77%)
:arrow_down:

algorithms/linfa-svm/src/classification.rs
60.23% <0.00%> (-16.07%)
:arrow_down:

algorithms/linfa-nn/src/distance.rs
36.20% <0.00%> (-13.80%)
:arrow_down:

... and 47 more

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 6168a90...2091be5. Read the comment docs.

continued in #242


Specify YQ version to install

Hello,
Is there a way to specify the YQ version that a user wants installed in their action?
Thank you for making this project!

Found the solution, for reference:
      - name: Download YQ
        uses<EMAIL_ADDRESS>        with:
          yq-version: 4.28.2


Add test suite

This was addressed in pull request #21. There is only one test, but the testing tools/approach is in place.


Reflection removal on custom data

I want to use this model to remove some reflections on my own data for further use. How should i preprocess my data and place it?
thx

If you want to test your data, please refer to https://github.com/ZhenboSong/RobustSIRR/blob/49fcd3aee09184cc4a6f7d838eeea3de36a67d28/data/reflect_dataset.py#L23. You need to modify the folder architecture of the dataset to the same way of Real20. Then you must change the code here (https://github.com/ZhenboSong/RobustSIRR/blob/49fcd3aee09184cc4a6f7d838eeea3de36a67d28/data/reflect_dataset.py#L56) and adapt it to your dataset.
Just like :
‘’‘python
elif 'yourdataset' in self.datadir:
t_img = Image.open(join(self.datadir, 'transmission_layer', fn)).convert('RGB')
m_img = Image.open(join(self.datadir, 'blended', fn)).convert('RGB')
’‘’


Merge branch-BugFixWrongErrorMessageForNonPositiveIndex with Master

Closes #161
Updated user guide to reflect invalid command format error message behaviour.
Updates are also made in the MailingList PR #202 since that hasn't been merged with the master branch at the time of writing.

Codecov Report
Base: 48.64% // Head: 48.68% // Increases project coverage by +0.04% :tada:

Coverage data is based on head (d089861) compared to base (651035a).
 Consider uploading reports for the commit f289143 to get more accurate results

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #207      +/-   ##
============================================
+ Coverage     48.64%   48.68%   +0.04%
  Complexity      450      450
============================================
  Files           112      112
  Lines          2206     2204       -2
  Branches        255      254       -1
============================================
  Hits           1073     1073
+ Misses         1072     1070       -2
  Partials         61       61

Impacted Files
Coverage Δ

...in/java/seedu/address/logic/parser/ParserUtil.java
45.71% <0.00%> (ø)

.../seedu/address/logic/commands/TagEventCommand.java
0.00% <0.00%> (ø)

...eedu/address/logic/commands/UntagEventCommand.java
0.00% <0.00%> (ø)

...c/main/java/seedu/address/model/event/UidList.java
11.90% <0.00%> (+0.54%)
:arrow_up:

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 at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Image-based lighting

Adds the ability to add image-based lighting to a model.

Model.sphericalHarmonicCoefficients is a property that is an array of 9 Cartesian3 coefficients used to evaluate the diffuse irradiance.
Model.specularEnvironmentMaps is a property that is a url to a KTX file that contains a cubmap of the specular contribution plus the specular convolution mipmap levels.

TODO:

[x] Tests
[ ] Update CHANGES.md

NOTE: This is a PR into the hdr branch.

Thanks for the pull request @bagnell!

:heavy_check_mark: Signed CLA found.

Reviewers, don't forget to make sure that:

[ ] Cesium Viewer works.
[ ] Works in 2D/CV.
[ ] Works (or fails gracefully) in IE11.

I am a bot who helps you make Cesium awesome! Contributions to my configuration are welcome.
:earth_africa: :earth_americas: :earth_asia:

Should we merge my ibl-tests branch from https://github.com/AnalyticalGraphicsInc/cesium/pull/7165 into this?

Should we merge my ibl-tests branch from #7165 into this?

On a related note, we should re-open the PR from @OmarShehata's fork so it is easier for @OmarShehata to push changes.

The failing tests at the time of writing are:

Scene/Model loads a glTF with KHR_materials_common using a black ambient/directional light
Scene/Model loads a glTF 2.0 model
Scene/Cesium3DTileset sets colorBlendMode for vertex color tileset
Scene/Cesium3DTileset sets colorBlendMode for instanced tileset
Scene/Cesium3DTileset sets colorBlendMode for textured tileset
Scene/Cesium3DTileset sets colorBlendMode when vertex texture fetch is not supported
Scene/Cesium3DTileset sets colorBlendMode

They're all failing color expectations.

@lilleyse This is ready for review.

Cool, I'll start taking a look after the release.

Oh hey the new Travis easily-readable error thing seems to be working here.  BTW you have some test failures.

My PR here https://github.com/AnalyticalGraphicsInc/cesium/pull/7231 should help address how to create these values and explain a bit more context behind our implementation of the extension.
I have one more comment @bagnell. The spherical harmonics doc says:

The third order spherical harmonic coefficients used for the diffuse color of image-based lighting. When undefined, diffuseIrradiance will be used.

This made me think that diffuseIrradiance is a property on the model I can change, but it isn't defined anywhere. This is only a variable computed in the PBR shader. Should it instead say:

The third order spherical harmonic coefficients used for the diffuse color of image-based lighting. When undefined, a diffuse irradiance computed from the atmosphere color is used.

?

This made me think that diffuseIrradiance is a property on the model I can change, but it isn't defined anywhere.

It was a property for the diffuse map that I removed. Your suggested change looks good.

Sounds good. I'll make that change in my PR.

EXT_lights_image_based was recently merged. Should we add support now?

EXT_lights_image_based was recently merged. Should we add support now?

Submit an issue for it.

@lilleyse I added a texture cache. The only thing I'm unsure of is this line here: https://github.com/AnalyticalGraphicsInc/cesium/pull/7172/files#diff-fb63af82386df4a707d9fcfb196c35fcR3080
Textures will get cleaned up from the cache every 120 frames. Should this be longer?

@lilleyse This is ready for another look. The two things I haven't fixed are a different model for the Sandcastle example and the comment I made here: https://github.com/AnalyticalGraphicsInc/cesium/pull/7172#discussion_r233204596

Procedural IBL seems to be a lot brighter in this branch compared to master. Maybe tone down the default luminance?

Also the environment map seems a lot darker than it did before. Can that also be adjusted?

It might be good to look at the NYC building while tuning the default lighting. Right now they look washed out.

localhost example
The lighting orientation looks wrong in the NYC tileset compared to a model. After talking offline @bagnell thinks this is because the tiles don't have a model matrix and aren't sampling the environment map/spherical harmonics in the right direction.

In this demo with two models added I see TextureCache.addTexture getting called twice. In a separate demo with 3D Tiles I only see it get called once. Maybe there is some edge case with how the demo adds models.
Demo.

Textures will get cleaned up from the cache every 120 frames. Should this be longer?

I think this is fine. The texture cache code looks good.

Also the environment map seems a lot darker than it did before. Can that also be adjusted?

This is what it looked like before:

The reason is because the prototype wasn't using the BRDF LUT. You can see by commenting out this line:
https://github.com/AnalyticalGraphicsInc/cesium/pull/7172/files#diff-6f6a773d137da52954260087ddc76a95R747

@lilleyse This is ready for another look. The only thing I didn't change was the model in the IBL example. I could barely see any reflection from the environment map on that helicopter model.

@bagnell Try Pawns.glb.txt which cuts down on the sample model file size.

@lilleyse This is ready for another review. If you think this is ready, I can update the Sandcastle example image and update CHANGES.

Nothing else from me. 👍

@lilleyse The Sandcastle image and CHANGES have been updated. This should be ready to go.

Hi,
I was looking over the code (great work! 👍), as I'm looking to implement something similar, and was wondering about the spherical harmonics reconstruction in: https://github.com/AnalyticalGraphicsInc/cesium/blob/master/Source/Shaders/Builtin/Functions/sphericalHarmonics.glsl
From what I understand you are using the spherical harmonics generated with cmgen. There are a couple of things to be aware of when doing so because the developers of Filament have tried to pre-compute as much as possible in order to make reconstruction in the shader as cheap as possible.
This means that reconstruction in the shader should be as simple as:

As implemented here in the Filament engine:
https://github.com/google/filament/blob/f676d3d3ea55539774c7eefd894ff156c3f9cd86/shaders/src/light_indirect.fs#L127-L147
There is mention about Fd_Lambert() being baked into the SH, not really sure what that is about but could possibly lead to some brightness issues if not taken into account.
https://github.com/google/filament/blob/2c4ecebf11bdcd0099d869197d9c6ee1ff7bcfbf/shaders/src/light_indirect.fs#L442
Another thing I noticed is that cmgen automatically mirrors your cubemap (you can prevent this by passing the --no-mirror flag).
One last thing you might not have been aware of is that in the metadata of the outputted .ktx file the spherical harmonics are embedded meaning you could possibly save some extra manual steps.


rename prop-types.js -> src/proptypes.js

Codecov Report

Merging #57 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #57   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          30     30
  Lines         243    243
=====================================
  Hits          243    243

Impacted Files
Coverage Δ

src/proptypes.js
100% <ø> (ø)

src/remove-props.js
100% <100%> (ø)
:arrow_up:

src/index.js
100% <100%> (ø)
:arrow_up:

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 64c7ca8...96f8533. Read the comment docs.

I don't think this is the correct way to handle this.
There's already a proptypes module on npm (link), and changing the filename is just going to mask the issue.
The root of the problem is that module.resolve is too inclusive, so that should be the thing that changes, not styled-system.

ok thnx


Memory leak observed behavior on Kong 0.14.1 (My Last reply has the latest findings)

Summary
Let me preface this by saying we see memory leak behavior in production on 0.14.1 Kong running an assortment of plugins and custom plugins we build, with a variety of json/xml payload API calls protected by Kong oauth/jwt and OIDC auth services, and when OOM the container crashes. Figured the best path forward would be start with base Kong and evaluate,then move forward with custom plugins/different types of API transactions and see where it leads me.
Since we will be moving to Kong 1.0 shortly across environments I wanted to take a little time in a Sandbox style environment to evaluate Kong 1.0 in a sort of barebones state. So no plugins or anything. It currently has 2 route / service pairs just to let me test and meet healthcheck requirements. No plugins, no consumers, totally empty.

The picture above is the same timechart of RAM consumption at different periods of the pods life thus far plus a top call(the nginx worker processes VSZ grows). From beginning to middle RAM amounts, I was running a 120 TPS loadtest against my /api/memoryleak proxy call wrongly assuming the leak was directly correlated TPS and the act of proxying possibly. From middle RAM amount to the end was just the gateway in idle getting the occasional health check ping every 5 seconds, but that was it. The rate at which memory growth consumption occurred did not change which has certainly caused my to shift my thinking of where root cause could be.
Kong resources on Sandbox were as follows:
{
  "created_at":<PHONE_NUMBER>,
  "updated_at":<PHONE_NUMBER>,
  "strip_path": true,
  "service": {
    "host": "server00380",
    "created_at":<PHONE_NUMBER>,
    "connect_timeout": 2000,
    "id": "b1f28c97-0afe-4cc1-ab73-75902f48ca39",
    "protocol": "http",
    "name": "TestService",
    "read_timeout": 9000,
    "port": 9393,
    "path": "/",
    "updated_at":<PHONE_NUMBER>,
    "retries": 0,
    "write_timeout": 9000,
    "extras": {
      "createdUser": null,
      "updatedUser": null,
      "id": 47,
      "service_id": "b1f28c97-0afe-4cc1-ab73-75902f48ca39",
      "kong_node_id": "1",
      "description": null,
      "tags": null,
      "createdAt": "2019-01-01T02:18:30.000Z",
      "updatedAt": "2019-01-01T02:18:30.000Z"
    }
  },
  "name": null,
  "hosts": null,
  "id": "c4a804f1-c665-4888-91e1-a10c98910753",
  "preserve_host": false,
  "regex_priority": 0,
  "paths": [
    "/api/memoryleak"
  ],
  "sources": null,
  "destinations": null,
  "snis": null,
  "protocols": [
    "http",
    "https"
  ],
  "methods": null
}

{
  "created_at":<PHONE_NUMBER>,
  "updated_at":<PHONE_NUMBER>,
  "strip_path": true,
  "service": {
    "host": "localhost",
    "created_at":<PHONE_NUMBER>,
    "connect_timeout": 2000,
    "id": "a8e276ea-cdc2-4129-aa23-8bbe004be2ad",
    "protocol": "http",
    "name": "F5Status",
    "read_timeout": 9000,
    "port": 8001,
    "path": "/status",
    "updated_at":<PHONE_NUMBER>,
    "retries": 0,
    "write_timeout": 9000,
    "extras": {
      "createdUser": null,
      "updatedUser": null,
      "id": 46,
      "service_id": "a8e276ea-cdc2-4129-aa23-8bbe004be2ad",
      "kong_node_id": "1",
      "description": null,
      "tags": null,
      "createdAt": "2019-01-01T02:16:32.000Z",
      "updatedAt": "2019-01-01T02:16:32.000Z"
    }
  },
  "name": null,
  "hosts": null,
  "id": "e9317b61-51ea-4c07-9207-0c053210b7d8",
  "preserve_host": false,
  "regex_priority": 0,
  "paths": [
    "/F5/status"
  ],
  "sources": null,
  "destinations": null,
  "snis": null,
  "protocols": [
    "http",
    "https"
  ],
  "methods": null
}

And that is absolutely it.
My first thoughts are this:

Since TPS is not seemingly a factor, could it be the refactored DAO or commonly executed portions of lua in the runloop? Something with the Cassandra lua dependency libs perhaps around querying and talking to C* hosts?

Could it be the custom Kong template I run with a few added directives or special shared dictionaries? Attaching below:

optum_nginx.txt

Could it be nginx or OpenResty itself and not even due to anything Kong specifically has control over? Lets hope not...

Could it be Dynatrace that has integrations with nginx with its agent injection logic? (I have ruled this one out essentially following TOP and watching the worker processes grow in mem and not the one agent companion), although I may pull Dynatrace out completely just as further evidence its not this. But we have also been running Dynatrace for a long time within the pods tied to nginx with no issue.

Steps To Reproduce

Setup Kong against C* with my  Kong C* settings mentioned below
Feel free to load test a bit, watch memory increase, let it idle essentially and should still see MEM growth at the same rate over the hours.

Things I am curious about:

If I setup with Postgres backing, would I see similar results.

Setting up https://github.com/openresty/stapxx so I can run something like:

./samples/lj-gc-objs.sxx -x 20300 -D MAXACTION=200000

And reviewing the content, I saw one person attempted it long ago here for public view:
https://git.rucciva.one/rucciva/kong-dev/src/branch/master/Dockerfile , any idea if it can be applied easily to something like this: https://github.com/Kong/docker-kong/blob/master/alpine/Dockerfile ? Was thinking we could link to something on Kong HQ discussion forum that is a debug branch on docker-kong that has the dependencies and install RUN steps for stapxx with Kong specifically since what I found is pretty sparse. Would give the community a powerful Kong verified setup for optimal debugging to provide yall the best insight for what we see occurring at a high level.
Closing Thoughts: The rate at which my prod gateway grows in RAM utilization is about 2-3x faster than that of this dummy bare bones sandbox testing so obviously this investigation is only the beginning. But ensuring core Kong is not leaking any memory is a good first step.
Additional Details & Logs

Kong version 1.0
Kong logs:
No special Error logs in the Sandbox:

Info: Using DT_HOME: /opt/dynatrace/oneagent
--
  | 2019/01/01 02:20:49 [warn] 22#0: [lua] cluster.lua:496: refresh(): [lua-cassandra] found contact point with '<IP_ADDRESS>' as rpc_address, using 'server00466' to contact it instead. If this is incorrect you should avoid using '<IP_ADDRESS>' in rpc_address
  | nginx: [warn] [lua] cluster.lua:496: refresh(): [lua-cassandra] found contact point with '<IP_ADDRESS>' as rpc_address, using 'server00466' to contact it instead. If this is incorrect you should avoid using '<IP_ADDRESS>' in rpc_address
  | 2019/01/01 02:20:51 [notice] 22#0: using the "epoll" event method
  | 2019/01/01 02:20:51 [notice] 22#0: openresty/<IP_ADDRESS>
  | 2019/01/01 02:20:51 [notice] 22#0: built by gcc 6.3.0 (Alpine 6.3.0)
  | 2019/01/01 02:20:51 [notice] 22#0: OS: Linux 3.10.0-862.11.6.el7.x86_64
  | 2019/01/01 02:20:51 [notice] 22#0: getrlimit(RLIMIT_NOFILE): 1048576:1048576
  | 2019/01/01 02:20:51 [notice] 22#0: start worker processes
  | 2019/01/01 02:20:51 [notice] 22#0: start worker process 35
  | 2019/01/01 02:20:51 [notice] 22#0: start worker process 36
  | 2019/01/01 02:20:51 [notice] 22#0: start worker process 37
  | 2019/01/01 02:20:51 [notice] 22#0: start worker process 38
  | 2019/01/01 02:20:51 [notice] 22#0: start worker process 39
  | 2019/01/01 02:20:51 [notice] 22#0: start worker process 40

Kong configuration (the output of a GET request to Kong's Admin port - see
https://docs.konghq.com/latest/admin-api/#retrieve-node-information)

{
  "plugins": {
    "enabled_in_cluster": [],
    "available_on_server": {
      "response-transformer": true,
      "oauth2": true,
      "acl": true,
      "correlation-id": true,
      "pre-function": true,
      "jwt": true,
      "cors": true,
      "ip-restriction": true,
      "basic-auth": true,
      "key-auth": true,
      "rate-limiting": true,
      "request-transformer": true,
      "http-log": true,
      "file-log": true,
      "hmac-auth": true,
      "ldap-auth": true,
      "datadog": true,
      "tcp-log": true,
      "zipkin": true,
      "post-function": true,
      "request-size-limiting": true,
      "bot-detection": true,
      "syslog": true,
      "loggly": true,
      "azure-functions": true,
      "udp-log": true,
      "response-ratelimiting": true,
      "aws-lambda": true,
      "statsd": true,
      "prometheus": true,
      "request-termination": true
    }
  },
  "tagline": "Welcome to kong",
  "configuration": {
    "plugins": [
      "bundled"
    ],
    "admin_listen": [
      "<IP_ADDRESS>:8001"
    ],
    "lua_ssl_verify_depth": 3,
    "trusted_ips": {},
    "prefix": "/usr/local/kong",
    "loaded_plugins": {
      "response-transformer": true,
      "request-termination": true,
      "prometheus": true,
      "ip-restriction": true,
      "pre-function": true,
      "jwt": true,
      "cors": true,
      "statsd": true,
      "basic-auth": true,
      "key-auth": true,
      "ldap-auth": true,
      "aws-lambda": true,
      "http-log": true,
      "response-ratelimiting": true,
      "hmac-auth": true,
      "request-size-limiting": true,
      "datadog": true,
      "tcp-log": true,
      "zipkin": true,
      "post-function": true,
      "bot-detection": true,
      "acl": true,
      "loggly": true,
      "syslog": true,
      "azure-functions": true,
      "udp-log": true,
      "file-log": true,
      "request-transformer": true,
      "correlation-id": true,
      "rate-limiting": true,
      "oauth2": true
    },
    "cassandra_username": "******",
    "ssl_cert_key": "/usr/local/kong/ssl/kongprivatekey.key",
    "dns_resolver": {},
    "pg_user": "kong",
    "mem_cache_size": "1m",
    "ssl_ciphers": "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256",
    "nginx_admin_directives": {},
    "cassandra_password": "******",
    "nginx_http_directives": [
      {
        "value": "prometheus_metrics 5m",
        "name": "lua_shared_dict"
      }
    ],
    "pg_host": "<IP_ADDRESS>",
    "nginx_acc_logs": "/usr/local/kong/logs/access.log",
    "proxy_listen": [
      "<IP_ADDRESS>:8000",
      "<IP_ADDRESS>:8443 ssl http2"
    ],
    "client_ssl_cert_default": "/usr/local/kong/ssl/kong-default.crt",
    "ssl_cert_key_default": "/usr/local/kong/ssl/kong-default.key",
    "db_update_frequency": 5,
    "db_update_propagation": 5,
    "stream_listen": [
      "off"
    ],
    "nginx_err_logs": "/usr/local/kong/logs/error.log",
    "cassandra_port": 9042,
    "dns_order": [
      "LAST",
      "SRV",
      "A",
      "CNAME"
    ],
    "dns_error_ttl": 1,
    "headers": [
      "latency_tokens"
    ],
    "cassandra_lb_policy": "RequestDCAwareRoundRobin",
    "nginx_optimizations": true,
    "pg_timeout": 5000,
    "database": "cassandra",
    "pg_database": "kong",
    "nginx_worker_processes": "auto",
    "lua_package_cpath": "",
    "admin_acc_logs": "/usr/local/kong/logs/admin_access.log",
    "lua_package_path": "./?.lua;./?/init.lua;",
    "nginx_pid": "/usr/local/kong/pids/nginx.pid",
    "upstream_keepalive": 120,
    "cassandra_data_centers": [
      "dc1:2",
      "dc2:3"
    ],
    "db_cache_ttl": 0,
    "admin_access_log": "off",
    "stream_listeners": {},
    "ssl_cert_csr_default": "/usr/local/kong/ssl/kong-default.csr",
    "proxy_listeners": [
      {
        "transparent": false,
        "ssl": false,
        "ip": "<IP_ADDRESS>",
        "proxy_protocol": false,
        "port": 8000,
        "http2": false,
        "listener": "<IP_ADDRESS>:8000"
      },
      {
        "transparent": false,
        "ssl": true,
        "ip": "<IP_ADDRESS>",
        "proxy_protocol": false,
        "port": 8443,
        "http2": true,
        "listener": "<IP_ADDRESS>:8443 ssl http2"
      }
    ],
    "proxy_ssl_enabled": true,
    "dns_stale_ttl": 4,
    "client_ssl": false,
    "enabled_headers": {
      "latency_tokens": true,
      "X-Upstream-Status": false,
      "X-Proxy-Latency": true,
      "server_tokens": false,
      "Server": false,
      "Via": false,
      "X-Upstream-Latency": true
    },
    "origins": {},
    "cassandra_local_datacenter": "DC2",
    "db_resurrect_ttl": 30,
    "lua_ssl_trusted_certificate": "/usr/local/kong/ssl/kongcert.pem",
    "cassandra_consistency": "LOCAL_QUORUM",
    "client_max_body_size": "1000m",
    "admin_error_log": "/dev/stderr",
    "pg_ssl_verify": false,
    "dns_not_found_ttl": 30,
    "pg_ssl": false,
    "error_default_type": "text/plain",
    "admin_ssl_enabled": false,
    "cassandra_repl_strategy": "SimpleStrategy",
    "cassandra_repl_factor": 1,
    "dns_no_sync": false,
    "nginx_proxy_directives": {},
    "proxy_access_log": "off",
    "nginx_kong_conf": "/usr/local/kong/nginx-kong.conf",
    "cassandra_schema_consensus_timeout": 10000,
    "dns_hostsfile": "/etc/hosts",
    "admin_listeners": [
      {
        "transparent": false,
        "ssl": false,
        "ip": "<IP_ADDRESS>",
        "proxy_protocol": false,
        "port": 8001,
        "http2": false,
        "listener": "<IP_ADDRESS>:8001"
      }
    ],
    "ssl_cipher_suite": "modern",
    "ssl_cert": "/usr/local/kong/ssl/kongcert.crt",
    "cassandra_timeout": 5000,
    "admin_ssl_cert_key_default": "/usr/local/kong/ssl/admin-kong-default.key",
    "cassandra_ssl_verify": true,
    "cassandra_contact_points": [
      "server00466",
      "server00467",
      "server00468",
      "server00469",
      "server00470",
      "server00471"
    ],
    "real_ip_header": "X-Real-IP",
    "real_ip_recursive": "off",
    "proxy_error_log": "/dev/stderr",
    "client_ssl_cert_key_default": "/usr/local/kong/ssl/kong-default.key",
    "nginx_daemon": "off",
    "anonymous_reports": false,
    "log_level": "notice",
    "kong_env": "/usr/local/kong/.kong_env",
    "pg_port": 5432,
    "nginx_kong_stream_conf": "/usr/local/kong/nginx-kong-stream.conf",
    "client_body_buffer_size": "20m",
    "ssl_preread_enabled": true,
    "admin_ssl_cert_default": "/usr/local/kong/ssl/admin-kong-default.crt",
    "lua_socket_pool_size": 30,
    "cassandra_keyspace": "kong_dev",
    "ssl_cert_default": "/usr/local/kong/ssl/kong-default.crt",
    "cassandra_ssl": true,
    "nginx_conf": "/usr/local/kong/nginx.conf"
  },
  "version": "1.0.0",
  "node_id": "8c23f856-7202-4647-a158-a87a7643ca53",
  "lua_version": "LuaJIT 2.1.0-beta3",
  "prng_seeds": {
    "pid: 36":<PHONE_NUMBER>30,
    "pid: 22":<PHONE_NUMBER>04,
    "pid: 40":<PHONE_NUMBER>92,
    "pid: 35":<PHONE_NUMBER>43,
    "pid: 39":<PHONE_NUMBER>20,
    "pid: 38":<PHONE_NUMBER>71,
    "pid: 37":<PHONE_NUMBER>13
  },
  "timers": {
    "pending": 2,
    "running": 0
  },
  "hostname": "kong-631-g2965"
}

Operating system Alpine Linux 3.6 (Docker Kong)

@jeremyjpj0916 Thanks for the report. Surely something we start to look asap. Another thing to try is to run without our patches[1]. Our binaries come patched, so you need to run e.g. vanilla OpenResty <IP_ADDRESS>. Thank you for reporting.
[1] https://github.com/kong/openresty-patches

@bungle No problem, I don't want to have yall go on a wild goose chase for nothing though so I am investigating it further and will keep this issue updated with any findings. Following the life of the POD (it has taken no active traffic now besides healthchecks pings since my first post) we can see it has grown a bit further but it seems finally in the last couple hours it may have plateaued and reached a sort of stasis:

How Kong went from 435 MiB to about 568 MiB peak I am not sure exactly(just regular alpine linux runtime growth/openresty/nginx memory needs? I top'ed the worker processes again with the above and see them now at the amount pictured below, so each grew a good chunk during this idle period as well), 130 MiB growth over time but if it does not continue its upward climb then I would begin to rule out core having a nasty memory leak.

As for my Prod 0.14.1 environment with heavy leak the plugins I will be most suspicious of currently would probably be:

https://github.com/Optum/kong-error-log
https://github.com/Optum/kong-splunk-log (Based mostly on Kong's newer HTTP Log Plugin logic).

@p0pr0ck5 will do some tracking on that from a fresh deploy starting tomorrow probably. I want to continue to let this guy run and see if it indeed has reached a flatline. As for current VmRSS(current resident set) here you are on a few of them:

@bungle @p0pr0ck5 aight friends mystery is solved.
Good news: Seems Kong 1.0 barebones seems fine. After it reached that plateau after many hours I saw no more arbitrary climbing in mem for no reason. I am editing my title to be more appropriate, no need to wrongly rain on the 1.0 new release parade for no reason at this point 😆 .
Bad news: Kong 0.14.1 is impacted, and it was indeed actually a very specific use case that can reproduce it(1.0 is actually safe from this exact situation currently it seems from initial tests due to refactors), a use case I still personally consider fairly common in the real world. Finding the problem in 0.14.1 and understanding where the leak occurred may save Kong in the future for implementation that I have not yet tested through, even in 1.0 possibly. Lets review what causes it and the code path it must take to produce the mem leak.

Run 0.14.1 , create a consumer and give him oauth creds , create a service+route, add the acl plugin with whitelist and add the oauth2 plugin with client credentials + global options enabled. Make sure the consumers acl gets the whitelist so he can call the proxy. Generate a token so the user can call the proxy.

The exact situation is indeed as I was describing earlier here:

Edit - I actually have a crazy strange hunch that recently we had XML driven API calls start occurring more frequently in prod for a few teams heavier load testing and right around then is when I began to notice decent growth in our pod RAM consumption. Ofc these tx's which produce this err in the logs 1,000's of times per day constantly on 0.14.1.

2019/01/02 02:35:28 [error] 36#0: 6728866 [lua] public.lua:139: get_body_info(): don't know how to parse request body (can't decode Content-Type 'text/xml'), client: 10...**, server: kong, request: "POST /api/some/path/service-view/v1/name HTTP/1.1", host: "gateway.company.com"
Let me see if I can get public.lua screaming at me again on 1.0, I know on 0.14.1 a proxy protected with acl/oauth2 client credentials with an XML call produced the above due to lame attempted reading of the body to get the token even though my oauth2 bearer token was in the headers(which I submitted a PR for so 1.0 will look at headers first thankfully without req body reading). But if I start putting the bearer token in the body and oauth2 then is forced to read from the body(which I will send in XML), lets see if this error path within Kong is whats causing me the leak
Now to produce that error yourself just send a POST call like this example, do application/xml as your content type.
POST https://gateway-core-dc2.company.com/jeremy/memleak?access_token=75NEJ2k5j1g3OJeFo4SqE74sDtJofmlq

<soap:Envelope
xmlns:soap="http://www.w3.org/2003/05/soap-envelope/"
soap:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
<soap:Body>
  <m:GetPrice xmlns:m="https://www.w3schools.com/prices">
    <m:Item>Apples</m:Item>
  </m:GetPrice>
</soap:Body>
</soap:Envelope>

Now the code path that kicks off the mem leak on 0.14.1 can be found here:
https://github.com/Kong/kong/blob/bfbb0d3822b31f0d5da401acbb19d29d10251b8a/kong/plugins/oauth2/access.lua#L111
And then starts into the public.lua file:
https://github.com/Kong/kong/blob/bfbb0d3822b31f0d5da401acbb19d29d10251b8a/kong/tools/public.lua#L151
So something around when this error gets constantly thrown in public.lua is when the memory leak begins:
2019/01/02 05:46:32 [error] 216#0: *4390028 [lua] public.lua:139: get_body_info(): don't know how to parse request body (can't decode Content-Type 'application/xml'), client: 10.***.***.***, server: kong, request: "POST /jeremy/memleak?access_token=75NEJ2k5j1g3OJeFo4SqE74sDtJofmlq HTTP/1.1", host: "gateway-stage-core-dc2.company.com"

First sort of attack vector I have uncovered too in a way. Because if you were to discover someones Kong OAuth proxy endpoint url, and send a bad token with xml payload rapidly, that public_utils.get_body_args() from the OAuth logic will still get invoked and the memory will skyrocket.
My test was ran at 120 TPS just now doing this and you can see how it impacted mem growth, as soon as the below line started curving up was when I ran my test:

Finally, why does this not impact Kong 1.0. Well Kong 1.0 does not use the public_utils lib call any longer and is not logging the above error I have been mentioning to stderr on proxy calls:
https://github.com/Kong/kong/blob/master/kong/plugins/oauth2/access.lua#L130
Plus it has my PR at this point, so if you are using OAuth with the token in a header the body call read's never occur in the first place.
Welp been decent fun with the investigative work. Now I am too tired to want to learn stapxx haha. Maybe yall will see in public.lua the bad code that does grow the mem. If you do let me know! Should be able to reproduce this pretty easily with the ammo I have just given.

@jeremyjpj0916 that get_body_args causes the body to be read in its entirety into Lua-land and interned as a string. I don't see it hoarding that data in any structure so at some point it should be GC'd... so maybe it's just that the garbage collection rate is lower than the garbage production rate, which would cause the indefinite memory growth.

Well @hishamhm you may have a point, I still need to keep researching but just testing an abritrary proxy with no auth or anything seems to cause growth as well at 102 TPS, an example of my stage environment showing the growth, you can tell where the test started:

I am adding a snippit to my custom kong template too in admin api section:
      location /gc {
        content_by_lua_block {
            ngx.say(string.format("Worker %d: GC size: %.3f KB", ngx.var.pid, collectgarbage("count")))
        }
      }

So I can see what lua gc is reporting the size to be to see if its all that. I also figured out how to install and run kong with valgrind memory debug on, maybe I can pipe that output to a file and then search for the memory leak keywords they explain I would see if it detected a mem leak.
I could not figure out a way to install stapxx on alpine linux, there are a few libs it seems not supported on alpine vs debian. I suppose if I get desperate enough I will convert to debian deploys temporarily in dev if stapxx would give better insight.
My next real question would be is if it is the fact gc can't keep pace @ 100 tps with our plugins, is there absolutely anything we can do about it to enforce a quicker cleanup of mem? I would think as quick as a tx goes through and completes any buffers and lua references that are only needed for that specific call would be freed back up for another. I can't disable reading the request body(although in dev I may do just that to see if it actually even helps if I can reproduce the leak in a dev).
Gonna continue to try things and see what happens, currently I am just redeploying prod every 3 days as mem fills up to prevent the "Terminated at Dec 30, 2018 11:21:57 AM with exit code 137 (OOMKilled)" container crashes.
Another thing I am pondering if I run 6 worker processes, each luaVM can use max 2GB then the minimum RAM I should be running should be around like 13-14 GB right? Maybe thats my problem we only a lot 10GB to the container and serious gc and cleanup does not occur till the luaVM "fills up", I am a novice when it comes to these things obviously 😆  .

Doing a 102 TPS loadtest on 1.0 with this payload to a no plugins proxy (besides my global ones, one of which reads the request body) yields this so far in growth with my gc checker method now. I am going to remove all payload reading and test as well too tomorrow:


Create guide which shows how to use openapi-generator

Write a guide which shows how to ingrate Open API Generator with Micronaut.

https://github.com/micronaut-projects/micronaut-guides/pull/728


[Questions] Regarding topic related API

Hi
In my application I need:

create/delete topic
purge topic messages

As far as I understand pulsar-client-php does not support above mentioned operations.
My questions:

is topic created automatically by Pulsar after connection of consumer or producer
any idea or reference regarding possible PHP implementation of create/delete/purge

Thanks

@g41797 Hi This looks more like an admin api


Geospatial Analysis: Introduction to working with location data and demographic data

This session will provide an introduction to using ArcMap software to work with location data and demographic data. This session will provide will work with sample data; however, participants are encouraged to consider and/or use their own data based on research, work, and/or teaching interests. This session will demonstrate general processes of working with location-based data, which may require additional instruction and follow-up in specific contexts, geographic regions, and disciplines.
Learning outcomes:
•	Illustrate how to work with data organized by location
•	Demonstrate example of working with demographic data through the concept of joining data
•	Demonstrate example of working with coordinate data
Date:
Time:
Geospatial Session: https://psu.zoom.us/j/371765796


java.util.zip.ZipException: invalid CEN header (encrypted entry)

I have zipped with AES256 single file.... Then added to this encrypted zip comment with public key.... But when I try to read comment from encrypted zip - get just = java.util.zip.ZipException: invalid CEN header (encrypted entry)/// wtf?)

What do you mean by "encrypted zip comment with public key"? How exactly did you add an encrypted zip comment with public key? Do you mean you encrypted a string with a key and then added that text as a comment? Can you post your code? And also which version of zip4j are you using?
P.S: I would appreciate if you avoid using offensive words. Thanks.

Closing this issue as there was no response. Feel free to reopen if you have any feedback to my questions from my previous post.


Move actions and reducers to a folder in demo app called store or redux

The thinking behind this is that once there are this many files in a directory, it can get a little overwhelming deciding where to start when first looking at the folder

The name of folder could be actions ?

Nevermind, I think that redux is a better name.

Okay, I agree. Thanks. Or maybe something like "state" if we want to keep it generic and not specific to redux in case we move some things over to context API.


In memory DB is not closing correctly

I am trying to write some unit tests with an in-memory DB.  I cannot get the DB to properly re-open after what looks like a proper shutdown.
	at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.create(OAbstractPaginatedStorage.java:222)
	at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.create(ODatabaseDocumentTx.java:377)
	... 49 more```

Example code:

ODatabaseDocumentTx db = new ODatabaseDocumentTx("memory:test", false).create();
db.close()
db = new ODatabaseDocumentTx("memory:test", false).create();
db.close()

Have you tried to call db.drop() if you don't want the db anymore?

Drop fixes this simple case, but I have a slightly more  complex one that does the same thing. I'll type it up and pass it along.

Was this resolved? It certainly looks like a bug (not a question) if, close is called and the subsequent error complains that the DB is not closed? I am also seeing this behavior.
@Ivca Is the intention of the API that drop (not close) should be called to put the ODatabaseDocumentTx into a closed state?


[QUESTION] Using pipe in a controller decorator

I am getting payload from Github. It comes as a string which I parse using JSON.parse. I began doing some readings and I saw that ParseService is deprecated but I couldn't understand how to use the pipe (if it possible in my case).
My current decorator looks somewhat like this:
@Post('/')
post(@BodyParams() payload: { innerPayload: string }) {}
Is it possible to use pipe in this case (DeserializerPipe I assume) inside the decorator in order to convert payload to an object of type SomeCustomModel instead of the way I'm doing it?

Hello @owolfy
Sorry for the late answer. So if I understand, the payload contain a field with a JSON, right ?
@Injectable({priority: -1}) // to be called before DeserializePipe
export class InnerPayloadPipe implements IPipe {
  transform(value: any, param: ParamMetadata) {
    return JSON.parse(value.innerPayload);
  }
}

@Post('/')
post(@BodyParams() @UsePipe(InnerPayloadPipe) payload: MyModel) {}

See you
Romain

@Romakita you understood correctly.
I am getting another error due to the Model.
Error: 'Bad request on parameter "request.body".\nProperty before on class MyModel is not allowed.'
However if i change my code to
@Post('/') post(@BodyParams() @UsePipe(InnerPayloadPipe) payload: any) {} const payloadModel : MyModel = payload;
Everything works just fine. I tried removing @BodyParams to check if it is related, it's not.

By in this case, your payload in not an instance of MyModel :)
The Pipe won't be the solution.
Another option is to use the @PropertyDeseralize() decorator.

class InnerPayloadModel {
  @Property()
   something: string;
}

class MyModel {
  @PropertyDeserialize(input => JSON.parse(input))
  innerPayload: InnerPayloadModel
}

class MyController {
  @Post('/')
  post(@BodyParams() payload: MyModel) {
     console.log(classOf(payload)) // MyModel
     console.log(classOf(payload.innerPayload)) // InnerPayloadModel
     console.log(payload)
  }
}

I think this example will works as expected :)
See you

It still happens, I will continue investigate. Basically what I'm trying to do is to use github's webhooks but from some odd reason it keeps failing.
My hacky solution is this:
post(@BodyParams() payload: { payload: string })
const gitEvent: GitEventsModel = JSON.parse(payload.payload);
Thanks @Romakita  for your help. You also gave me some ideas for future implementations in my project ^_^


fix: upgrade rollup 4.22.4 to avoid XSS

Description
rollup before version 4.22.4 has a DOM Clobbering vulnerability which leads to XSS.
Considering the risk, we would like to upgrade the version.

DOM Clobbering Gadget found in rollup bundled scripts that leads to XSS
https://github.com/advisories/GHSA-gcx4-mw62-g8wm

[x] Read the Contributing Guidelines at https://github.com/vitejs/vite/blob/main/CONTRIBUTING.md.

[x] Check that there isn't already a PR that solves the problem the same way. If you find a duplicate, please help us reviewing it.

hi, I've fixed the conflict. Could you review it once more so it will be merged? thank you

The type definition has changed in estree 1.0.6, and vite needs to be addressed in order to successfully build the commit.
You can view the relevant commit here: DefinitelyTyped Commit.
One possible solution to this issue is to use a type assertion, as I understand that the local variable is of type Identifier.
We could modify the code in vite/packages/vite/src/node/plugins/importAnalysis.ts as follows:
  const importedName = (spec.local as Identifier).name;

In case it's not clear for those blocked by this, you can already use your package manager to update Vite's Rollup dependency transitively, you don't need Vite to bump it for the version to be bumped in your project, so this shouldn't block anyone.

The type definition has changed in estree 1.0.6, and vite needs to be addressed in order to successfully build the commit.
You can view the relevant commit here: DefinitelyTyped Commit.
One possible solution to this issue is to use a type assertion, as I understand that the local variable is of type Identifier. We could modify the code in vite/packages/vite/src/node/plugins/importAnalysis.ts as follows:
  const importedName = (spec.local as Identifier).name;

For this PR, I think this change is fine to focus on updating rollup.

Are there any plans to cherry-pick this to a v5 update? Currently the vulnerability is only fixed in the v6 beta versions.

No, because it's not necessary to do so.
Quoting the message above:

In case it's not clear for those blocked by this, you can already use your package manager to update Vite's Rollup dependency transitively, you don't need Vite to bump it for the version to be bumped in your project, so this shouldn't block anyone.


Update version in docs

Currently shows 0.6.3 while the last release is 0.7.3

I've manually updated the documentation with the command:
docs/publishMicrosite
It needs to set a personal token with repo permissions in the ORG_GITHUB_TOKEN env variable as shown in the sbt-microsites docs:

https://47deg.github.io/sbt-microsites/docs/publish-with-travis.html#publish-using-github4s

Alternatively, you could set the micrositePushSiteWith setting to GHPagesPlugin and it will use your local credentials, as shown in:

https://47deg.github.io/sbt-microsites/docs/settings.html


Update getting-started.md

minor edits

Pull Request Test Coverage Report for Build 890438548

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

Totals

Change from base Build 890052209:
0.0%

Covered Lines:
1042

Relevant Lines:
1106

💛  - Coveralls

Thanks


Changed raylib.h to improve tooltips in modern IDEs

Tooltips fail to display correct information in VSCode and Nvim

I moved the documentation comments in raylib.h to directly above a given function definition.
Doing so allows modern IDEs to display the correct information in tooltips.

An example of incorrect information in Nvim and VSCode

The ClearBackground function incorrectly displays the text "Drawing related functions".
Should say: "Set background color (framebuffer clear color)"

Using my updates to raylib.h

The tooltips now display helpful information.

@KyleDickersonComposer Thanks but no plans to change it. I find this version way longer and more difficult to read.


node os cpus is POSIX-only: on Windows it is 0

Environment
------------------------------
- Operating System: Windows_NT
- Node Version:     v20.10.0
- Nuxt Version:     3.9.1
- CLI Version:      3.10.0
- Nitro Version:    2.8.1
- Package Manager<EMAIL_ADDRESS>- Builder:          -
- User Config:      typescript, devtools, imports, vue, experimental
- Runtime Modules:  -
- Build Modules:    -
------------------------------

Reproduction
It is a problem using cpus() in packages/nuxt/src/core/nitro.ts
NA
Describe the bug
Check https://github.com/unjs/nitro/issues/2103
Additional context
No response
Logs
No response

Considering the limitation of Windows reporting 0, the default would have to be 4. Is this what makes issues with OS's less than 4 cores?
On a solution for correct default of CPU core in windows, we might use NUMBER_OF_PROCESSORS environment variable but probably Node.js + Nuxt fallback to 4 is safest.

(following up discord discussion, I think your server had more than 4 -- so probably would be nice having another issue about why you believe it can lead to memory leak in Nuxt or Nitro? -- also let's consider memory leak !== high memory usage and a reproduction or steps for it would be nice for it as well.)

If I'm generating pages on my local, no matter how many parallel task running, why 4GB of run? My laptop has 20 cores, so I can configure nitro.prerender.concurrency = 80 using Nuxt formula.
Running node ./cpus.mjs, seems to return correct cpus using both, cpus and availableParallelism (this issue can be closed):
import { cpus, availableParallelism } from 'node:os'

console.log(cpus())
console.log(cpus().length)
console.log(availableParallelism())

ouput
node ./cpus.mjs
[
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 12417125,
      nice: 0,
      sys: 4045562,
      idle: 377224531,
      irq: 293812
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: { user: 1562437, nice: 0, sys: 342656, idle: 391782015, irq: 5656 }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 69069171,
      nice: 0,
      sys: 8240390,
      idle: 316377484,
      irq: 208265
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 4398921,
      nice: 0,
      sys: 770531,
      idle: 388517593,
      irq: 15468
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 34584265,
      nice: 0,
      sys: 5224937,
      idle: 353877843,
      irq: 116218
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 4572000,
      nice: 0,
      sys: 840750,
      idle: 388274265,
      irq: 15328
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 9071921,
      nice: 0,
      sys: 1547343,
      idle: 383067734,
      irq: 45515
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: { user: 1327406, nice: 0, sys: 242953, idle: 392116687, irq: 6109 }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 6666703,
      nice: 0,
      sys: 4533500,
      idle: 382486812,
      irq: 2737375
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: { user: 1227703, nice: 0, sys: 172171, idle: 392287171, irq: 4031 }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 5201250,
      nice: 0,
      sys: 896234,
      idle: 387589531,
      irq: 28234
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: { user: 1135687, nice: 0, sys: 124890, idle: 392426437, irq: 3625 }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 18036843,
      nice: 0,
      sys: 12133468,
      idle: 363516687,
      irq: 3857968
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 21591187,
      nice: 0,
      sys: 8378750,
      idle: 363717062,
      irq: 336656
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 19861468,
      nice: 0,
      sys: 8084250,
      idle: 365741281,
      irq: 338859
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 21920125,
      nice: 0,
      sys: 8089468,
      idle: 363677375,
      irq: 332515
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 22342781,
      nice: 0,
      sys: 8149640,
      idle: 363194562,
      irq: 376593
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 21645421,
      nice: 0,
      sys: 7664765,
      idle: 364376796,
      irq: 323796
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 20915453,
      nice: 0,
      sys: 7340125,
      idle: 365431390,
      irq: 317187
    }
  },
  {
    model: '12th Gen Intel(R) Core(TM) i7-12700H',
    speed: 2688,
    times: {
      user: 20806546,
      nice: 0,
      sys: 7480046,
      idle: 365400375,
      irq: 323953
    }
  }
]
20
20

My laptop has 20 cores, so I can configure nitro.prerender.concurrency = 80 using Nuxt formula.

CPU is not the only limiter. Running 80 rendering tasks in parallel, means you need 80x more of the memory requirement than one page needs. Both resources need to be available enough to handle more parallel load.


Sequences in final fasta files do not match OTUs and ESVs in xlsx files.

The sequences in the xlsx files do not match those in the fasta files. This results in the taxonomic assignment of either local or ncbi blasts in apscale_gui not matching their OTU or ESV number.
O.S: Windows 11
Library: 12S and COI
VSearch version: 2.20.0
Python version: 3.9.13

Fixed with version 1.7.0


WHAT'S THE VERSION 1.14.514?

MY GAME WAS CRASH IN VERSION "[Fabric 22w13oneBlockAtATime] 1.14.514-build.ああああああああ".
PLEASE REPAIR IT.
ERROR LOG IS HERE
PLEASE READ IT QUICKLY!
MY SYSTEM:WINDOWS 114514
AND STRAT ON:PCL Pro Max Super Plus Ver. X™
MINECRAFT VERSION:22w13oneBlockAtATime WITH FABRIC 0.13.3 AND FABRIC API 0.48.1
NO MORE INFORMATION
(HAHAHAHAHAHAHAHAHA()

you must be dreaming
its impossible to occur game-crashing bugs in this major update hahaye
its just as perfect as 20w14infinite:)

WTF is peakstep doing now👀

Yes,i'm dreaming now(


Update to Squirrel 0.99.1

This fixes self-updating update.exe so that we can get the delta package improvements.

Published in 0.33, thanks @paulcbetts


Posting messages to multiple modules does not work

When all modules are started in the debugger (see step 5), modules will run in the separated console window, but messages cannot be sent to the module by using curl as previously described in the article.

Create breakpoints in each module and then press F5 to run and debug multiple modules simultaneously. You should see multiple .NET Core console app windows, with each window representing a different module.

I'm not sure if this is a bug or a feature. In any case, it is not clear in this article, what should be expected. Seeing messages from some module, which was not developed here, but just started from the repo (TemperacureSensor) is not helpful, when it comes to debugging custom modules.

@ddobric Could you please add the link to the azure documentation that is followed? This would help us tag the issue and redirect to the appropriate team. Thanks!!

@ddobric We will go ahead and close this issue. Please feel free to open a new issue from the bottom of any documentation page to link the issue with a particular document.

If you believe the issue is regarding a service please use MS Q&A to create a thread with an appropriate tag. Thanks!!

See #97362


3.2 - Prompts for notification regardless of settings

I have an app, which has been working for a while.
I init OneSignal with following snippet:
self.oneSignal = [[RCTOneSignal alloc] initWithLaunchOptions:launchOptions
                                                               appId:@"YOUR_ONESIGNAL_APP_ID"
                                 settings:@{kOSSettingsKeyAutoPrompt: @NO}];

This used to work, but since we upgraded to 3.2 it doesn't work anymore.
I've tried using the pure JS version
    OneSignal.init('YOUR_ONESIGNAL_APP_ID', {
      kOSSettingsKeyAutoPrompt: "NO"
    });

I've tried with
self.oneSignal = [[RCTOneSignal alloc] initWithLaunchOptions:launchOptions
                                                               appId:@"YOUR_ONESIGNAL_APP_ID"
                                 settings:@{kOSSettingsKeyAutoPrompt: @false}];

As per the documentation. Nothing really seems to work or have any effect on the prompt.

Thanks for posting this issue and we apologize for the inconvenience.
I've created a PR to resolve this issue (https://github.com/geektimecoil/react-native-onesignal/pull/494)
We expect to have an update released today because this is a relatively major bug.

@kasperbe We have released a [new update (3.2.1)](https://github.com/geektimecoil/react-native-onesignal/releases/tag/3.2.1 to resolve this problem, thanks for the bug report!

@Nightsd01 I am still seeing this issue on 3.2.5
I've tried both the JS and AppDelegate method of disabling the autoprompt for registering but neither work. The Register for notification prompt is always being automatically displayed at the launch of the app.


Sigmastar: update infinity6b0 package

First set of changes to sync the infinity6b0 package (sigmastar-osdrv-ssc335) with the general layout of infinity6e.

I see you deleted a bunch of old kernel configs. I guess you didn't find anything interesting in them, right? I collected them from various devices and experiments and I don't mind deleting them. Just have to keep in mind that someday you might need to look into them in the archive for some tricky function like RTC and so on that I implanted earlier.

I see you removed support for F2FS, I don't know if that's right, look at other cores on other CPUs. It's the only file system that works adequately on SD cards and doesn't kill them. We don't know how to format SD cards to F2FS yet but if we learn how, it will be the best choice for video recording.

I see you've converted support for RTL8188FU to an external repository. I want to emphasize that this chip is used in many types of cameras with different processors and we need not to lose compatibility in any way. i hope you have done some testing. And also I propose to move the repository with RTL8188FU driver from you to us in OpenIPC as we did for other chips, but that's when you have a chance.

Thank you !

Yes, this is mostly intended to reduce the amount of configs, but I noted the commit id in case they might be later needed or come in handy. Maybe this can be added to the wiki instead as a general note, especially the rtc component could be important.

The idea is to replace F2FS with exfat instead, it uses an external kernel driver from the official exfat linux maintainer. The driver and tools are around ~200kB, I tested it on the SSC338Q with no major problems.

This source of the RTL8188FU is based on version v5.11.5 and doesn't require the firmware binary. I tested it on my Foscam X3E model (SSC337DE). I noticed it is used by some HiSilicon ultimate models, I have not the hardware available to test the compatibility with those, but I would assume it should work as well, since the driver is basically of the same origin.

About storing the driver source, I would like to suggest to rename/reuse https://github.com/OpenIPC/rtl8733bu as a general repo for realtek drivers. I have uploaded the source for both rtl8188fu/rtl8733bu.

Thank you for your answers
I put the firmware back together in Actions which ended badly

Yes, the repo for the realtek wlan driver needs to be adjusted.
I have changed the repo address back to the previous values.

Yes, the repo for the realtek wlan driver needs to be adjusted. I have changed the repo address back to the previous values.

I think we should create a separate package in which to specify the repository with the new driver and gradually translate all the devices testing, so that there is a choice. It will be a longer but at the same time correct way.

The realtek drivers are separated now: rtl8733bu and rtl8188fu.
rtl8188fu-openipc is unchanged to allow compatibility with existing configurations.


Update README.md

One-time sponsorship to Lee Kelleher - https://github.com/AndyBoot?tab=sponsoring

Thanks @AndyBoot for your sponsorship, I'm sure it will be appreciated 😊


remove step that requires delete confirmation by entering storage account name

Module: 03
Lab/Demo: 01
Task: 05
Step: 04
Description of issue:
This step can be removed since the error message is generated when pressing Delete in step 3. You do not have to enter storage account number and press Delete again.

Please identify the Module, Task, and Step detailed in the issue posting.
GitHub issue post: This step can be removed since the error message is generated when pressing Delete in step 3. You do not have to enter storage account number and press Delete again.
Response:  Delete is not found in step 3.  See below.
Please advise.
Task 5: Create a storage account with a file share
In this task, you will create a storage account with a file share and obtain the storage account key.

In the Azure portal, in the Search resources, services, and docs text box at the top of the Azure portal page, type Storage accounts and press the Enter key.

On the Storage accounts blade, click + Create.

On the Basics tab of the Create storage account blade, specify the following settings (leave others with their default values):
Setting
Value
Subscription
the name of the Azure subscription you are using in this lab
Resource group
AZ500LAB12
Storage account name
any globally unique name between 3 and 24 in length consisting of letters and digits
Location
(US) EastUS
Performance
Standard (general-purpose v2 account)
Redundency
Locally redundant storage (LRS)

On the Basics tab of the Create storage account blade, click Review + Create, wait for the validation process to complete, and click Create.
Note: Wait for the Storage account to be created. This should take about 2 minutes.

Serling A. Davis
he/him
Senior Content Developer
Security, Compliance, Identity and Management
Office: +1<PHONE_NUMBER>
<EMAIL_ADDRESS>[Microsoft Logo]
[Microsoft Certified: Azure Security Engineer Associate]
From: MOC-Labs-Review @.>
Sent: Wednesday, March 1, 2023 8:57 AM
To: MicrosoftLearning/AZ500-AzureSecurityTechnologies @.>
Cc: Subscribed @.***>
Subject: [MicrosoftLearning/AZ500-AzureSecurityTechnologies] remove step that requires delete confirmation by entering storage account name (Issue #308)
Module: 03
Lab/Demo: 01
Task: 05
Step: 04
Description of issue:
This step can be removed since the error message is generated when pressing Delete in step 3. You do not have to enter storage account number and press Delete again.

Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftLearning%2FAZ500-AzureSecurityTechnologies%2Fissues%2F308&data=05|01|serlingdavis%40microsoft.com|e4634222138248f42ae508db1a652e88|72f988bf86f141af91ab2d7cd011db47|1|0|638132794099817590|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=sl8w6uCcw0LCJXXaCyqfEH7cF%2BEjZ8eFdhW7ZL1XA2g%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAVY5XWYV5GCQNIN5YKPEYVLWZ5PS7ANCNFSM6AAAAAAVMFBFA4&data=05|01|serlingdavis%40microsoft.com|e4634222138248f42ae508db1a652e88|72f988bf86f141af91ab2d7cd011db47|1|0|638132794099817590|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=FU51ncasKAt0sgrbJG%2FzRHcQu1XSRrClvdQ5Nm43gMI%3D&reserved=0.
You are receiving this because you are subscribed to this thread.Message ID<EMAIL_ADDRESS>

Issue not found.


Cart_Pole.py fails when running cuda9.0 gpu

RuntimeError: Expected object of backend CPU but got backend CUDA for argument #4 'mat1'
File "/home/matt/Dropbox/Receiver/Antenna/antenna_sims/pytorch/DRL/Agents/Base_Agent.py", line 128, in run_n_episodes
self.step()
File "/home/matt/Dropbox/Receiver/Antenna/antenna_sims/pytorch/DRL/Agents/DQN_Agents/DQN.py", line 32, in step
self.learn()
File "/home/matt/Dropbox/Receiver/Antenna/antenna_sims/pytorch/DRL/Agents/DQN_Agents/DQN.py", line 56, in learn
loss = self.compute_loss(states, next_states, rewards, actions, dones)
File "/home/matt/Dropbox/Receiver/Antenna/antenna_sims/pytorch/DRL/Agents/DQN_Agents/DQN.py", line 63, in compute_loss
Q_targets = self.compute_q_targets(next_states, rewards, dones)
File "/home/matt/Dropbox/Receiver/Antenna/antenna_sims/pytorch/DRL/Agents/DQN_Agents/DQN.py", line 70, in compute_q_targets
Q_targets_next = self.compute_q_values_for_next_states(next_states)
File "/home/matt/Dropbox/Receiver/Antenna/antenna_sims/pytorch/DRL/Agents/DQN_Agents/DQN.py", line 76, in compute_q_values_for_next_states
Q_targets_next = self.q_network_local(next_states).detach().max(1)[0].unsqueeze(1)
File "/home/matt/.local/share/virtualenvs/sentient-NdmKRet4/lib/python3.6/site-packages/torch/nn/modules/module.py", line 489, in call
result = self.forward(*input, **kwargs)
File "/home/matt/.local/share/virtualenvs/sentient-NdmKRet4/lib/python3.6/site-packages/nn_builder/pytorch/NN.py", line 153, in forward
x = self.get_activation(self.hidden_activations, layer_ix)(linear_layer(x))
File "/home/matt/.local/share/virtualenvs/sentient-NdmKRet4/lib/python3.6/site-packages/torch/nn/modules/module.py", line 489, in call
result = self.forward(*input, **kwargs)
File "/home/matt/.local/share/virtualenvs/sentient-NdmKRet4/lib/python3.6/site-packages/torch/nn/modules/linear.py", line 67, in forward
return F.linear(input, self.weight, self.bias)
File "/home/matt/.local/share/virtualenvs/sentient-NdmKRet4/lib/python3.6/site-packages/torch/nn/functional.py", line 1352, in linear
ret = torch.addmm(torch.jit._unwrap_optional(bias), input, weight.t())
RuntimeError: Expected object of backend CPU but got backend CUDA for argument #4 'mat1'
absl-py==0.7.1
astor==0.7.1
bleach==1.5.0
certifi==2019.3.9
chardet==3.0.4
cycler==0.10.0
decorator==4.4.0
EasyProcess==0.2.5
future==0.17.1
gast==0.2.2
grpcio==1.20.0
gym==0.10.9
h5py==2.9.0
html5lib==0.9999999
idna==2.8
imageio==2.5.0
Keras-Applications==1.0.7
Keras-Preprocessing==1.0.9
kiwisolver==1.0.1
Markdown==3.1
matplotlib==3.0.3
mock==2.0.0
msgpack==0.6.1
networkx==2.3
nn-builder==0.0.4
numpy==1.16.2
pbr==5.1.3
Pillow==6.0.0
protobuf==3.7.1
pyglet==1.3.2
pyparsing==2.4.0
python-dateutil==2.8.0
PyVirtualDisplay==0.2.1
PyWavelets==1.0.3
requests==2.21.0
scikit-image==0.15.0
scipy==1.2.1
six==1.12.0
tensorboard==1.13.1
tensorflow==1.13.1
tensorflow-estimator==1.13.0
tensorflow-tensorboard==1.5.1
termcolor==1.1.0
torch==1.0.1.post2
torchvision==0.2.2.post3
tqdm==4.31.1
trainer==0.0.1
urllib3==1.24.2
vizdoom==1.1.7
Werkzeug==0.15.2

hi, does it work if you only use a CPU and not a GPU?  For small games like this it should also be much faster to use a CPU

I didnt find a choice to select cpu if gpu exists.  The code looks like it switches to it automatically.
I understand the gpu will not be effective.  I was just trying to get it started on a simple reinforcement case. If you don't intend to support gpu that is ok.

Hello, @p-christ . Although the example works in cpu mode, have you try running the example (cart_pole.py) in the gpu mode, it seems some tensors are not in gpu, I find no where to debug it.
File "/home/noone/anaconda3/envs/tf_3/lib/python3.6/multiprocessing/pool.py", line 670, in get
raise self._value
RuntimeError: Expected object of type torch.cuda.FloatTensor but found type torch.FloatTensor for argument #4 'mat1'


feat: refactor metainfo to nuxt hooks and fix seo 🛠

Thank you for your contribution to the KodaDot NFT gallery.
👇  _ Do a quick check before the merge.
PR type

[ ] Bugfix
[x] Feature
[ ] Refactoring

Before submitting Pull Request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main-nuxt and I've no conflicts
[x] I've tried respect high code quality standards
[x] I've didn't break any original functionality
[x] I've posted screenshot of demonstrated change in this PR

Optional

[x] I've tested it at </rmrk/collection/0a8ce195286c168f19-DONKEY>
[ ] I've tested PR on mobile and everything seems works
[ ] I found edge cases

What's new?

[x] PR closes #1700 AND #1691
[x] refactor metaInfo() with nuxt head() hook, fix all seo stuff and image links

Had issue bounty label ?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot

[x] My fix has changed something on UI, a screenshot is best to understand changes for others.

@roiLeo
Yes, the issue was partly because of vue-meta. Nuxt already uses it under the hood and has some pretty strict rules regarding how you are allowed to overwrite the default values we specified in nuxt.config: only via head() in page-components! So the metaInfo stuff we did in the individual components basically did nothing 😅
but now we do it best-practice 👍

are we ready to fly?
/giphy my first flight

are we ready to fly?
/giphy my first flight

gtg from my side.

yolo
Perfect, I’ve sent the payout https://kusama.subscan.io/extrinsic/0xdfe00088121789889406710c2efd68964f775f594bf723cee9eb10072863e2ba
Let’s grab another issue and get rewarded!
https://github.com/kodadot/nft-gallery/issues/


Remove constant usages from TimberTheme

According to WordPress documentation, path-related constants shouldn't be used by plugin/themes, and it seems the issue was because Timber was assuming the themes folder would always be inside WP_CONTENT_DIR.
By using methods instead of the constants, {{theme.path}} returns the right value.
This should fix PauGNU's issue in #619

@xavivars thanks for the find! As I keep working on this I'm finding all kids of ways to configure WP setups (and all kinds of ways to Timber to mix-up paths in the process).
Could you update this PR with tabs instead of spaces for the indentation? From here out I'm following WordPress's PHP Coding Standards to play (mostly) nicely with the rest of the code.

Hi @jarednova, I've updated the pull request. When you have time, take a look at it.
Thanks!

Hi, I've just found another (related) bug: when changing the UPLOADS constant to be outside of WP-CONTENT, TimberURLHelper was detecting the image as an external image. With this patch this is no longer happening.
I've tried to run the unit tests, to see if there's anything broken, and also to add tests to cover this case, but I couldn't run it: it seems I'm missing something to set up your tests environment, but I don't see documented how to set it up.

Just added unit tests to it.

@xavivars -- thanks for the PR and the tests! It's now merged and will release tomorrow to wp.org


Proposed Language Additions and Section Additions to TrackingProgress.md - TrackingProgress.md File Update

Poposed Changes to TrackingProgress.md
Hi Twidge. I saw a video on using markdown in the PR and Issues section of a repo
and thought I would take a look at that. I have changes to the Tracking file in both
adding missing languages, and adding missing sections.
I would like to send all the additional language additions as one PR. After this, send
the added sections as three additions at a time. This would encompass 1 PR for the languages
and about 4-6 PR's for the adding of the sections.
Below are the additions of the individual languages to already established sections.
Below that, are the proposed section additions.
My current branch and TrackingProgress.md file have all the individual language additions
commited  in, and a commented out list of sections that are missing in the html of the
Tracking file. I have not yet committed the missing sections. See bottom for a list of
these sections.
Please let me know what you think. I can split the PR's up however is best for you.
It does look like my markdown formatted properly, let me know if your seeing it on your
end, thanks so much.
Cheers;
itsf4llofstars
Added Individual Languages to Established Sections

  ⏳

  Alternating factorial
-  C++, Java, Python, C
+  C++, Java, Python, C, matlab

  ✅

  Blum integers
-
+  C++, Python

Not sure why this is not getting highlighted

 ⏳

  Catalan number
  - Python, C++, Java, C
  + Python, C++, Java, C, matlab

 ⏳

  Divisor function
-  Python, C++, Mark Down, C
+  Python, C++, Markdown, C, JS

 ⏳

  Farey Sequence Numerators
-  Python
+  Python, C++

  ✅

-  Highly composite numbers
+  HighlyComposite
-
+  C++, Python

  ✅

-  Hyperperfect number
+  Hyperperfect Numbers
-
+  Python

  ⏳

-  Lucky numbers
+  Lucky numbers
  Python, C++

  ✅

   Markov numbers
-
+  Python

  ⏳

   Partition Numbers
-  Python
+  Python, Java

  ✅

   Radical of an integer
-
+  Python

  ✅

   Sphenic numbers
-
+  Python

  ⏳

Proposed Section additions With The addition Of Respective Languages

All Exponent Integer Series
Bernoulli number
Erdos Nicolas
Euler's Numbers
Factorial Primes
Factorial Series
Landau Number : Note: There is a Landau function
Mersenne Prime
Natural Numbers Sequenc
Permutable Primes
Power of N : Note: There is a Power of
README Translation
Square Numbers
Star Number
Stella Octangular number
Zigzag Number
Fibonacci Series

Oops, 11. Please read as ... Note: There is a Power of 2
cheers

Github somehow had me auto close, this should not have been closed, now it looks like it will re-open.

Hi Twigge, hello all I'm going to close this as I just saw I made the mistake of not reading the open issues first. I see that there is already an update TrackingProgress.md issue. I'll re-check my updates and send to PR's shortly, thanks for you understanding and thanks for the practice repo
Cheers
itsf4llofstars


boost_uuid not found

Wanting to use boost-uuid I tried installing it using vcpkg
vcpkg install boost-uuid

and requiring that component using in my CMakeLists.txt
find_package(Boost REQUIRED COMPONENTS "uuid")

However, the CMake configuration fails with the following message
-- The C compiler identification is Clang 8.0.0
-- The CXX compiler identification is Clang 8.0.0
-- Check for working C compiler: /usr/bin/clang
-- Check for working C compiler: /usr/bin/clang -- 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/clang++
-- Check for working CXX compiler: /usr/bin/clang++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Warning at /usr/share/cmake/Modules/FindBoost.cmake:1832 (message):
  No header defined for uuid; skipping header check
Call Stack (most recent call first):
  /opt/vcpkg/scripts/buildsystems/vcpkg.cmake:230 (_find_package)
  test/CMakeLists.txt:25 (find_package)

CMake Error at /usr/share/cmake/Modules/FindBoost.cmake:2165 (message):
  Unable to find the requested Boost libraries.

  Boost version: 1.70.0

  Boost include path: /opt/vcpkg/installed/x64-linux/include

  Could not find the following Boost libraries:

          boost_uuid

  No Boost libraries were found.  You may need to set BOOST_LIBRARYDIR to the
  directory containing Boost libraries or BOOST_ROOT to the location of
  Boost.
Call Stack (most recent call first):
  /opt/vcpkg/scripts/buildsystems/vcpkg.cmake:230 (_find_package)
  test/CMakeLists.txt:25 (find_package)

-- Configuring incomplete, errors occurred!
See also "[...]/build/CMakeFiles/CMakeOutput.log".

But the package seems to be installed correctly
$> vcpkg list boost-uuid
boost-uuid:x64-linux                               1.70.0           Boost uuid module

Installing all of boost using vcpkg install boost did not resolve the issue, either.

@ooxi, boost-uuid is header only library, you can't use it by find_package(Boost REQUIRED COMPONENTS "uuid"). Please add following code to your CMakeList.txt instead, and it can find boost-uuid headers correctly.
find_package(Boost REQUIRED)
target_include_directories(Project PUBLIC ${Boost_INCLUDE_DIRS})
Please let me know if it doesn't work for you.

Thanks @PhoebeHui

@ooxi, boost-uuid is header only library, you can't use it by find_package(Boost REQUIRED COMPONENTS "uuid"). Please add following code to your CMakeList.txt instead, and it can find boost-uuid headers correctly.
find_package(Boost REQUIRED) target_include_directories(Project PUBLIC ${Boost_INCLUDE_DIRS})
Please let me know if it doesn't work for you.

This approach works once Boost has already been installed. Is there a way to specifically install only the UUID aspect of it? Perhaps this is simply just the copying of the header files from the Boost repository...
If this is correct, I'd imagine it would look something like:
target_include_directories(Project
    PUBLIC
        uuid-header1.hpp
        uuid-header2.hpp
        uuid-headern.hpp
)

But I'd imagine there are quite a lot of headers to include so perhaps this isn't the most elegant solution? Thanks in advance!


Conversion of Word to HTML Lacks Section Elements

Used simple pandoc command to convert Word document to HTML. The output did not include the  elements that are required for ReSpec to create the table of contents. If the section element is missing, then the corresponding section heading will not appear in the table of contents.
The pandoc tool converts headings to
 while ReSpec needs

The Word and HTML documents are checked into SG Software on Workspace under the names SMPTE Software Best Practices.

Close, will not fix. Using different HTML methods.


no information on all required python3 modules to be installed

the general README file should contain information on all the software that needs to be installed to run the complete suite
till now I  had to:
 pip3 install requests
pip3 install shapely
pip3 install conversions
pip3 install python-dateutil

Any reason why this is not in Docker like the rest? And there's a requirements.txt, so pip install -r requirements.txt should do the trick, although it doesn't seem to be complete and is missing version information.

Why it's not in docker -- a few reasons, mainly inertia based.

Initial tests were on a laptop, where volume mounting the data directories had performance 10x worse than local filesystem.
Putting it in the docker compose is a slight impedance mismatch, because it's a task and done container, and not a server like the others.

On the other hand, adding it, and the configuration to the docker-compose, would allow for 'hard coding' certain environment variables which would make it less of an issue to configure.
It looks like the dateutil wasn't in the requirements.txt because it was pulled in by the awscli (which I had in this venv) for downloading from s3.

the missing module is now in requirements.txt