Async API methods client queue depth metric fix and  a tier change for users.profile.set

Thanks for providing this client library!
We have recently had some trouble with rate limiting on the users.profile.set method. This PR makes two changes.

It fixes an apparent bug in the async methods client where the queue depth for a method is reset to 0 when AsyncRateLimitExecutor.execute is called. There is a separate thread that will update the queue depth metric, but ideally it is never reset to 0 incorrectly. When the metric is reset it can lead to no (or incorrect) backoff being calculated in WaitTimeCalculator.calculateWaitTime.
It changes the rate limit tier for users.profile.set to more closely match the documentation. https://api.slack.com/apis/rate-limits#profile_updates indicates the rate limit is 30 requests per minute so Tier2 seems more appropriate / safer.

Category (place an x in each of the [ ])

[ ] bolt (Bolt for Java)
[ ] bolt-{sub modules} (Bolt for Java - optional modules)
[x] slack-api-client (Slack API Clients)
[ ] slack-api-model (Slack API Data Models)
[ ] slack-api-*-kotlin-extension (Kotlin Extensions for Slack API Clients)
[ ] slack-app-backend (The primitive layer of Bolt for Java)

Requirements
Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you agree to those rules.

Hi @gunrein, thank you so much for taking the time to send this PR. It appears that the rate limit for users.profile.set may have loosened from Tier 4 to Tier 2 at some point, therefore the outdated configuration in the code should be corrected. However, your change to the internal method for calculating queue size isn't necessary at this time. Would you mind reverting that change? Indeed, the method signature could be somewhat confusing, but it does work without any issues.

Great, thanks @seratch.
I'll back out the change to the internal method. One question on that, though (feel free to tell me it isn't worth explaining; no worries)... the original code was
        if (this.isStatsEnabled()) {
            CopyOnWriteArrayList<String> messageIds = getOrCreateMessageIds(executorName, teamId, methodName);
            Integer totalSize = messageIds.size();
            RateLimitQueue<SUPPLIER, MSG> queue = getRateLimitQueue(executorName, teamId);
            if (queue != null) {
                totalSize += queue.getCurrentActiveQueueSize(methodName);
            }
            getOrCreateTeamLiveStats(executorName, teamId).getCurrentQueueSize().put(methodName, totalSize);
            getOrCreateTeamLiveStats(executorName, teamId).getCurrentQueueSize().put(methodName, size);

Doesn't the second call getOrCreateTeamLiveStats(executorName, teamId).getCurrentQueueSize().put(methodName, size); reset the value to size (and make the calculation of totalSize not worth the cycles? In the case of the call from execute, size is always 0.

@gunrein Ah, you're right on the point. It seems the code should be improved, but this SDK has similar code in other modules too, so I will do more investigation on it later on. Thus, could you make this PR as simple as possible for now? Thank you so much for pointing the issue out.

@seratch - of course. The tier is now 3 and the other changes are reverted from the branch.
Thanks for taking a look at the issue.


[Event Request] Codeunit 99000854 "Inventory Profile Offsetting"

Dear ALAppExtensions team,
Through this issue we would like to request event publisher which would be called as follows from be added to Codeunit 99000854 - "Inventory Profile Offsetting" with the following signature:
    [IntegrationEvent(false, false)]
    local procedure OnAfterAdjustReorderQty(OrderQty: Decimal; var SKU: Record "Stockkeeping Unit"; SupplyLineNo: Integer; MinQty: Decimal; var DeltaQty: Decimal);
    begin
    end;

with VAR parameter SKU,DeltaQty
which would be called as follows at the end of the procedure from AdjustReorderQty:
    procedure AdjustReorderQty(OrderQty: Decimal; SKU: Record "Stockkeeping Unit"; SupplyLineNo: Integer; MinQty: Decimal): Decimal
    var
        DeltaQty: Decimal;
        Rounding: Decimal;
        IsHandled: Boolean;
    begin
        IsHandled := false;
        OnBeforeAdjustReorderQty(OrderQty, SKU, SupplyLineNo, MinQty, DeltaQty, IsHandled);
        if IsHandled then
            exit(DeltaQty);

        // Copy of this procedure exists in COD5400- Available Management
        if OrderQty <= 0 then
            exit(0);

        if (SKU."Maximum Order Quantity" < OrderQty) and
           (SKU."Maximum Order Quantity" <> 0) and
           (SKU."Maximum Order Quantity" > MinQty)
        then begin
            DeltaQty := SKU."Maximum Order Quantity" - OrderQty;
            PlanningTransparency.LogSurplus(
              SupplyLineNo, 0, DATABASE::Item, TempSKU."Item No.",
              DeltaQty, SurplusType::MaxOrder);
        end else
            DeltaQty := 0;
        if SKU."Minimum Order Quantity" > (OrderQty + DeltaQty) then begin
            DeltaQty := SKU."Minimum Order Quantity" - OrderQty;
            PlanningTransparency.LogSurplus(
              SupplyLineNo, 0, DATABASE::Item, TempSKU."Item No.",
              SKU."Minimum Order Quantity", SurplusType::MinOrder);
        end;
        if SKU."Order Multiple" <> 0 then begin
            Rounding := Round(OrderQty + DeltaQty, SKU."Order Multiple", '>') - (OrderQty + DeltaQty);
            DeltaQty += Rounding;
            if DeltaQty <> 0 then
                PlanningTransparency.LogSurplus(
                  SupplyLineNo, 0, DATABASE::Item, TempSKU."Item No.",
                  Rounding, SurplusType::OrderMultiple);
        end;

         // >>>> New >>>>>>>>>>>>>>>>
        OnAfterAdjustReorderQty(OrderQty, SKU, SupplyLineNo, MinQty, DeltaQty);
        // <<<< New <<<<<<<<<<<<<<<<

        exit(DeltaQty);
    end;

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


⚠ SceneTime has degraded performance

In 9544791, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 29074 ms

Resolved: SceneTime performance has improved in fdebae1.


Data Science with Python : Cat and Dog Image Classification

Description
Welcome to the 'DSWP' Team, good to see you here.
With this issue, the readers will get detailed explanation of how to work on Cat and Dog Image Classification.
This issue is created on contributors request.
To get assigned to this issue, add your serial numbers mentioned in the spreadsheet of "Data Science with Python", the approach one would follow and the choice you prefer (Documentation, Audio, Video). You can go with all three or any number of options you're interested to work on.
If you had referred any resources, add them up in "DS Resources". Similarly, if you had used datasets, include them in "DS Datasets".
Domain: Machine Learning
Mentors Assigned : Aarya Patel | Nithin
Points to Note :
The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title" should be the same. Include issue number along with it.
Changes should be made inside the Datascience_With_Python/ directory & Datascience_With_Python branch.
Follow Contributing Guidelines & Code of Conduct before start Contributing.
This issue is only for 'GWOC' contributors of 'DSWP' domain.
All the best. Enjoy your journey ahead. 😎
Domain
Data Science with Python
Type of Contribution
Audio, Video, Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign
Divya Chhoriya
Sr no. 444
Batch 12
Type: documentation
Approach: classification using CNN

Issue assigned to @divya-chhoriya for documentation

Hello, I am Deepthi M with serial number:172, Batch-5. I would like to do video on this issue.
My approach: a detailed explanation

Issue assigned to @deepthi1107 for video contribution


Omnisharp server not running

Issue Type: Bug
Extension Name: csharp
Extension Version: 1.25.0
OS Version: Windows_NT x64 10.0.19042
VS Code version: 1.67.2

Hi no matter what i do my omnisharp server for my c# extension will not start up what can i do?

I've started getting the same problem today but cannot downgrade Omnisharp because the older version is not compatible with latest version of VSC. The error I'm seeing from Omnisharp is this
[ERROR] Error: Found dotnet version 5.0.408. Minimum required version is 6.0.100.
I'm running in a dev container on Linux so I just added this command to my Dockerfile and it now works
apt-get -y install -y dotnet-sdk-6.0
Or you can install it manually here https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-6.0.300-windows-x64-installer

Please see the announcement https://github.com/OmniSharp/omnisharp-vscode#the-c-extension-no-longer-ships-with-an-included-mono--msbuild-tools
and the related issue https://github.com/OmniSharp/omnisharp-vscode/issues/5120
TL;DR

ensure .NET SDK 6 is installed
for .NET Core (and newer) development this should be enough
for Unity / .NET Framework development, set "omnisharp.useModernNet" : false and ensure global MSBuild is installed on your machine - either using VS 2022 Build Tools (Windows) or using latest Mono Preview (*nix)


feat(device_info_plus): Add serialNumber property to AndroidDeviceInfo

Description
Add serialNumber property to AndroidDeviceInfo class
Related Issues
https://github.com/fluttercommunity/plus_plugins/issues/840
Checklist

[X] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[X] I titled the PR using Conventional Commits.
[X] I did not modify the CHANGELOG.md nor the pubspec.yaml files.
[X] All existing and new tests are passing.
[X] The analyzer (flutter analyze) does not report any problems on my PR.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate that with a ! in the title as explained in Conventional Commits).
[X] No, this is not a breaking change.

@vbuberen since we recently removed the Android ID...is it safe (in regards to the Play Store difficulties that existed because of the Android ID) to add the serial number?

This is a good question. Forgot about possible issues there. Will do a research.

@nohli What do you mean ?

What do you mean ?

With this feature of having serial users might start seeing warnings in Play Console about unique identifier. Check out for reference #824
I will try to find out the info, but if it turns out that with serial we have the same situation as with android_id I will revert this PR.


Fix check for end of header

Code as written will never fail the ptr > 0 test. Zoomify code sets ptr before entering loop, and then again at the bottom of the loop; checking after setting will have the same effect.

Oh sorry, I didn’t see your pull request! I just fixed this.

By the way, I added a link to your implementation in my README.

Thanks!


Record lucky loots

It would be interesting to record and later get a statistic about relationship between luck and lucky loot drops.

what exactly are you calling lucky loot and how do i get it?

Quote from the news:

Lucky Loot Drops
Luck has always helped to both capture mice as well as slightly boost the chance of them dropping loot. However, assessing the effect of your trap's luck on loot has always been tricky.
A clover icon has been added next to loot items in your Hunter's Journal when that loot drop was a direct result of your trap's luck. When you see a loot drop with a clover next to it in your journal, it means that's an item you would not have looted if your trap setup did not have luck. Of course, the higher your luck, the more often you'll see those clover icons show up!

TL;DR when you have higher luck it's more likely you'll get a lucky loot. It's designation is a clover icon.

Thanks for clarifying, don't know how i missed it. Will try to replicate it
and then merge your pr.
On Wed, Nov 22, 2017 at 12:19 AM, Geno Roupsky<EMAIL_ADDRESS>wrote:

Quote from the news
https://www.mousehuntgame.com/newspost.php?news_post_id=299:
Lucky Loot Drops
Luck has always helped to both capture mice as well as slightly boost the
chance of them dropping loot. However, assessing the effect of your trap's
luck on loot has always been tricky.
A clover icon has been added next to loot items in your Hunter's Journal
when that loot drop was a direct result of your trap's luck. When you see a
loot drop with a clover next to it in your journal, it means that's an item
you would not have looted if your trap setup did not have luck. Of course,
the higher your luck, the more often you'll see those clover icons show up!
TL;DR when you have higher luck it's more likely you'll get a lucky loot.
It's designation is a clover icon.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/DevJackSmith/mh-hunt-helper/issues/42#issuecomment-346264002,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AH2OWSYzh_fiPGWYB6Yumq7_5xFgmRnbks5s48rygaJpZM4Qei-O
.

Closed in cef014e646d308962b102fc3ade0ece3a7974759


Vidar fix this please

Today, we all faced a grave danger in our comfit journey.

Today, we all faced a grave danger in our comfit journey.

Please, we are doomed

It is all fixed now. You needn't worry.


feat: join page

most copy is in /assets/joinInfo.json
"View Roles" link and bullet points are hardcoded
eventually this should be refactored into a component for text sections

note: there's no direct link to our email under the Board Member role — wasn't sure how to include that from the json file

Fixes #48

@mergifyio refresh


isFloat function consider int as float

The isFloat function consider Int as Float
e.g. 10 == float
Group name : isFloat
Unit test name : is10

It's not an issue it's an int is supposed to be considered as a float.
For example:
10(int) -> 10.00(float)
It is why in the parser we checked if the value is an int before checking if it's a float


No intrude rope stream

Two things happening here, in two commits:

the first commit moves the definition of decoder into Stream, and renames it to codec since both coding/decoding will be used by streams when dealing with String semantics.
the second commit removes the intrude inport ropes from stream as this was not necessary, and performance-wise did not matter sufficiently to justify this

Rerolled: changed visibility for set_codec, added a write_buffer to Stream; this will be required to write a Char without having to resort to a temporary buffer every time.

test this please


Fix Horizontal Sliding Issues

Summary
Fix Horizontal Sliding Issues by only recognizing simultaneous gestures if the other gesture its the pan gesture. Resolves Issue #29
Requirements (place an x in each [ ])

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.

[x] I've read and agree to the Code of Conduct.

[x] I've written tests to cover the new code and functionality included in this PR.

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


fix xpress reference consistency

use the french letter for Authors name and change reference in 03-07 to be the same format as earlier chapter.

Thank you for fixing these spelling typos!


rethink efficiency

network efficiency should be total route efficiency * total cost, not total route efficiency / total cost.

the most efficient hypothetical route between two stations is a direct connection because it is the simplest, therefore a "better" route efficiency should be a smaller route efficiency.

for two networks with the same route efficiency, if one has greater total construction cost, then it is worse.

we should be trying to minimize network efficiency: smaller total route efficiency is better, and smaller cost is better, so the two variables move in the same direction, hence it makes sense to have efficiency * cost.

we need to account for the fact that starting a brand new line must cost a lot more than taking a line that is already in the process of being constructed and extending it. Imagine two networks with completely different designs but the same exact total geographical distance, the network with more lines must be more expensive. If this isn't clear, imagine two networks, but one network is a fully connected graph while the other network is a graph with many disconnected components - the multi-component graph network must have a higher construction cost.

renamed "route efficiency" to route complexity


There are still a few warnings left which are a bit more tricky to resolve.
How I Tested
By running flake8
I fulfilled the following requirements

[x] All new code is formatted according to our style guide (for C++ run clang-format, for Python, run flake8 and fix all warnings).
[x] All new functions/classes are documented and existing documentation is updated according to changes.
[x] No commented code from testing/debugging is kept (unless there is a good reason to keep it).

@vincentberenz I just noticed that this PR is still around.  Can I merge it?


vb.valueHex and vb.valueRaw length problem #34

pull request based on Morten's proposal, issue #34

Thanks


[Runtime Security AG] CWP-39604

Please always provide the GitHub issue(s) your PR is for, as well as test URLs where your change can be observed (before and after):
Ask: Remove any reference to the Incident types > Brute Force artciles.
Fix #
Test URLs:

Before: https://main--prisma-cloud-docs--hlxsites.hlx.page/
After: https://--prisma-cloud-docs--hlxsites.hlx.page/
Worker: https://prisma-cloud-docs-production.adobeaem.workers.dev/?branch=

It seems to me that you missed removing the link from some of the incident-types.adoc files in the following folders:

32/admin-guide
runtime-security/

Other than that, it LGTM

@rcaballeromx -  I have made these changes as requested.
cc: @manukumar6


Fixes gitignore merge conflict.

Simplifies gitignore, and removes conflicts.

@connerbrooks could you finish the contribution CLA


Consistent Format for each section (reference format)

Pre-requisites
section X, where you accomplished the following:

a)
b)
c)

Summary: what you will accomplish by the end of the section
Steps:

'Explanation' / What/why: we separated feature engineering into its own piece of code
so that a data engineer could work on this independently from DS

How:

feature_engineering.py
yml: this is how you describe the job to the AML plafrom

Action Item: run the job / Color coded

...

Completion Criteria / what you just learned / accomplished:
Back to Section X-1
To Section X+1

done for part 1, 2

done for part 3

done for part 5

Closing this one as the core is done, and follow ups are in a different issue.


refactor: inline simple template files

Current dependencies on/for this PR:

main

PR #102   👈

This comment was auto-generated by Graphite.


Add flag to set the generated package name

Implement the 'packageFlag' (type string) flag to 'transpile' command.
Its default value is 'main'.
Fixes #125.

This change is

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, 1 unresolved discussion, some commit checks failed.

transpiler/transpiler.go, line 20 at r1 (raw file):

	// Start by parsing an empty file.
	p.FileSet = token.NewFileSet()
	f, err := parser.ParseFile(p.FileSet, fileName, fmt.Sprintf("package %v", packageName), 0)

Please split this into two line so it fits within the 80 char margin.

Comments from Reviewable

OK! I will do that, but can you please help me with the failing test cases here?
On travis it's related to the integration tests.

@pravj I can help you though it if you jump on the Gitter chat room.

Reviewed 2 of 2 files at r2.
Review status: all files reviewed at latest revision, 1 unresolved discussion, some commit checks failed.

main_test.go, line 69 at r2 (raw file):

			cProgram.isZero = err == nil

			programArgs := ProgramArgs{inputFile: file, outputFile: "build/main.go", packageName: "main"}

Please wrap this like:
programArgs := ProgramArgs{
    inputFile: file,
    outputFile: "build/main.go",
    packageName: "main",
}

You will need to run go fmt on the file as well.

Comments from Reviewable

Reviewed 2 of 2 files at r3.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

Comments from Reviewable


Failure to send full traceback

Hello! First of all, I like your project.
In Django, we know that, by default, server error (HTTP 500) triggers server to send an email about exception to the admins.
But it seems that this package seems to erase tracebacks of such exception.
Traceback (most recent call last):
  None

Django==4.2.3
drf-standardized-errors==0.12.5

Thank you for reporting the issue, I'll see if I can reproduce it on my end. Still, it would be really helpful if you can provide more details and/or sample code to reproduce it: what exception was raised (in case you had another way of knowing what exception happened), if you're customizing the exception handler, your logging configuration since sending an email to the admin is done in a logging handler.
In the meantime, you can create a custom exception handler to manually send the email, the code should be sth like this
from drf_standardized_errors.handler import ExceptionHandler

class CustomExceptionHandler(ExceptionHandler):
    def report_exception(self, exc: exceptions.APIException, response: Response) -> None:
        super().report_exception(exc, response)
        # code for sending an email with the exception data. Here's how django does it as an example
        # https://github.com/django/django/blob/dff965798ea1bafc130a2e86530146e84607014f/django/utils/log.py#L122-L128

Then, update the setting to point to the custom exception handler class
DRF_STANDARDIZED_ERRORS = {"EXCEPTION_HANDLER_CLASS": "path.to.CustomExceptionHandler"}

Hey! I am junior developer, Looking forward to work on the Open Source Project. I see this as good opportunity. It would be great if you can allow me to contribute to this project and guide me how to make open source contribution. I really appreciate your response @rexes-aka .

Thank you @kevalrajpalknight for offering to help.
For this issue, it would be nice to get more info from rexes-aka, but even without that, here are few pointers on how to help:

First, reproducing the error:

you can use for that an existing project you have or create a small drf API project (the one from the quickstart tutorial should be good enough)
next, integrate this package with the project (you can follow the docs to do that)
then, configure django logging. Since this issue is about the traceback missing from the error email, make sure you have the mail_admins handler. Here's a link to the default django logging conf as an example but remove the require_debug_false filter since you'll probably have DEBUG=True locally.
Also, using the console backend for email rather than sending an actual email should do the trick
last, create an  API view that raises an exception when you make a request to it

Assuming you did reproduce the issue:

checkout the development guide for the project to set up a local dev environment
if you want to understand the existing code, check this part of the docs, and you can also read the source code.  Start with drf_standardized_errors.handler.exception_handler.
add a test that reproduces the error
fix the issue. Most likely, the fix should go under drf_standardized_errors.handler.ExceptionHandler.report_exception
add an entry to docs/changelog.md about the fix

Thanks @ghazi-git that's really helpful. I'm excited to contribute to the project and I look forward to work on this issue. Please let me know if there are any specific guidelines or instructions to follow other than mentioned above.

Just a quick update, I was able to replicate the same issue.

I try to look into this issue. Once again thanks @ghazi-git

Hey @ghazi-git, I have identified the source of the problem
# handler.py
    def convert_unhandled_exceptions(self, exc: Exception) -> exceptions.APIException:
        """
        Any non-DRF unhandled exception is converted to an APIException which
        has a 500 status code.
        """
        if not isinstance(exc, exceptions.APIException):
            return exceptions.APIException(detail=str(exc))
        else:
            return exc

# rest_framework/exceptions.py
class APIException(Exception):
    """
    Base class for REST framework exceptions.
    Subclasses should provide `.status_code` and `.default_detail` properties.
    """
    status_code = status.HTTP_500_INTERNAL_SERVER_ERROR
    default_detail = _('A server error occurred.')
    default_code = 'error'

    def __init__(self, detail=None, code=None):
        if detail is None:
            detail = self.default_detail
        if code is None:
            code = self.default_code

        self.detail = _get_error_details(detail, code)

Please look into above mentioned code. APIException class does not provide .__traceback__ so if I try to call traceback.print_tr(exceptions.APIException(detail=str(exc))) It prints None where else it give proper traceback for the error on traceback.print_tr(exc). We require to make change in the convert_unhandled_exceptions method without effecting the other functionality.

Great work, @kevalrajpalknight 👏👏 seems like you've already found the root cause
if not isinstance(exc, exceptions.APIException):
    return exceptions.APIException(detail=str(exc))

So, we need to find a way that creates the APIException and also preserves the traceback info (maybe python has sth similar to raise NewException from OldException without actually raising the exception).
You're very close to fixing the issue. Thanks for taking the time to debug the issue and sorry I couldn't get back to you sooner.

just realized that the issue is in the exception that gets reported. In django 4.0 and below, the original exception is reported (returned by sys,get_info()) but in django 4.1 and newer, the drf exception (the one that has no traceback) is the one reported. So, we need to report the original exception in django 4.1 and newer.
Would you like to open a PR with the fix?

Hey,
Great catch! Your suggestion worked perfectly, and now I can see the traceback in the email. Your insight into the issue with Django 4.1 and newer versions was spot on.
I've made the changes you recommended to the report_exception method. Now, instead of using sys.exc_info() directly, I've captured the original exception info in the variable original_exc before any other actions are taken. This ensures that the original exception's traceback is reported in Django 4.1 and newer versions. Additionally, I've deleted the original_exc at the end to avoid any potential reference cycles.
Here's the updated snippet:
def report_exception(
    self, exc: exceptions.APIException, response: Response
) -> None:

    if is_server_error(exc.status_code):
        try:
            drf_request: Request = self.context["request"]
            request = drf_request._request
        except AttributeError:
            request = None
        signals.got_request_exception.send(sender=None, request=request)

        # Capture the original exception info
+     original_exc = sys.exc_info()

        if django.VERSION < (4, 1):
            log_response(
                "%s: %s",
                exc.detail,
                getattr(request, "path", ""),
                response=response,
                request=request,
+             exc_info=original_exc,
-              exc_info=sys.exc_info(),
            )
        else:
            log_response(
                "%s: %s",
                exc.detail,
                getattr(request, "path", ""),
                response=response,
                request=request,
+             exception=original_exc[1],
-              exception=exc,
            )

        # Clear the original exception info to avoid reference cycles
        del original_exc

I really appreciate your help on this. Now, the only thing left on my to-do list is creating my first test case. I'll be diving into the various test cases you've created for reference.
Thanks again, and let me know if you have any more insights or suggestions!
Cheers! 😄

Hey, @ghazi-git  Sorry for taking so long to prepare suitable test case for this PR. Please I would really appreciate your help on this issue and I am completely okay with reverting this PR.
Do let me know your thoughts about this.


malloc(): corrupted top size

Hello,
I'm unable to record any image or video by clicking on the buttons.
When I restart from the command line I have this message when sending a command from the interface.
I'm on Raspbian Buster.
Thank you!

I've never seen that one before. It generally means either a buffer overflow or bad pointer. COuld be caused by some particular config.
I'll need some more info before I can usefully help and replicate. Or, if you install again on a clean OS, it will probably just work.

How was it installed? What webserver did you choose. In particular did you install any other software?

Log and config. (scheduleLog.txt, uconfig, /etc/raspiconfig, schedule.json)

Hello and thank you for your answer.
I finally managed to make it work by running the remove script and reinstalling everything with the install one.

I installed it at he beginning on a clean Lite install. I didn't install anything else and chosed Apache as web server, "without folder"...

Didn't make any change to the config files. Does the new scheduleLog (with working installation now) is still interesting for you?

The only thing I did was changing the camera settings before any other tests...
Thank you! It's brilliant!

Good to hear it's working. Probably some change to the settings got in an unexpected value.
No need to send anything unless you get further issues.


403 forbidden

I tried calling the api with a python script and got an error the whole point of a api.

It would help if you could include which endpoint you're using :)

Getting the same on /search/:platform/:name and /player/:p_id

https://twitter.com/tabwire/status/1317928952317530114

well that sucks

Hopefully applications open for independent developers.


CommonJS distribution

The app I'm working on has a plugin architecture like Scribe. One of the plugins depends on Scribe, but it's proven quite difficult to manage the dependencies between CommonJS- and AMD-based modules.
Based off of @TooTallNate's CommonJS example I'm proposing this solution. The idea is that this script would be run when a release happens. It uses Browserify's standalone option (https://github.com/substack/browserify-handbook#standalone).

We've moved on with the discussion around ES6 modules, if you're still interested please discuss on #314


Opening Animating glitching after a few opens

Hi all!
I just started using iziModal(amazing), but i'm having issues with the open animation. After a few clicks it gets glitched and the modal opens larger and then abruptly resizes smaller.
Here is a gif of it in action, the slide is the intended animation:

my js:

$("#modal").iziModal({
    overlayClose: true,
    width: 600,
    overlayColor: 'rgba(0, 0, 0, 0.6)',
    transitionIn: 'bounceInDown',
    onOpened: function() {
        //console.log('onOpened');
    },
    onClosed: function() {
        //console.log('onClosed');
    }
	});
	$(document).on('click', '#trigger', function (event) {
    event.preventDefault();
    $('#modal').iziModal('open');
});

My modal html

<form>
  <fieldset>
    Name
    <input type="text" placeholder="John Doe" id="nameField">
    Email
    <input type="text"<EMAIL_ADDRESS>id="emailField">
    Message
    <textarea placeholder="Hi CJ …" id="commentField"></textarea>

      <input type="checkbox" id="confirmField">
      Send a copy to yourself

    <input class="button-primary" type="submit" value="Send">
  </fieldset>
</form>

If anyone could help me resolve this, I would be ecstatic.
Thanks!

Hello @captainswain , Is it in the latest version? v1.4.0+ If so, could you provide a link to access this page?

Hi @dolce, after more tinkering I found my problem. I mistakenly pulled jquery 3 into my project. I reverted to 2.2.4 and every worked itself out!
Thanks for the Swift issue response I appreciate it !

You're welcome! 👊


NoLoadingTerrain 1.21.1 Support

Despite Modrinth's mention of the mod supporting 1.21.1, Fabric throws an error and prevents the mod from loading.

Thanks for letting me know, it seems like modrinth automatically marks 1.21 compatible mods as 1.21.1 compatible, without actually checking if the mod supports it. I just released a new version specifically for 1.21.1 and fixed the compatibillity data on the 1.21 version, let me know if you run into any other issues!

I appreciate it! In the meantime, I simply edited the mod directly and
changed the mod version to 1.21.1, lol.
On Wed, Oct 23, 2024, 20:30 codingcat @.***> wrote:

Thanks for letting me know, it seems like modrinth automatically marks
1.21 compatible mods as 1.21.1 compatible, without actually checking if the
mod supports it. I just released a new version specifically for 1.21.1 and
fixed the compatibillity data on the 1.21 version, let me know if you run
into any other issues!
—
Reply to this email directly, view it on GitHub
https://github.com/codingcat2468/NoLoadingTerrain/issues/1#issuecomment-2433887480,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASFUNAJJCXBDT7ZFTTN3F6LZ5A5Q7AVCNFSM6AAAAABQLJWRDKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZTHA4DONBYGA
.
You are receiving this because you authored the thread.Message ID:
@.***>


kubernetes: bootstrap process is hacked-up together and broken

Issue description
I thought that we finally were at the point where whole kubernetes nixos module could be said to be stable, but idk why whole bootstrap process had to be so messed up. Sometimes things are supposed to be stateless, and introducing state only presents more problems. Systemd has tools that you can represent dependencies, but ConditionPathExists was not designed for this, but purely for disablng/enabling units based on paths. I can say i'm sad (panda), that i would probably replace my k8s tests with something else, as it's not only technical issue, but also the fact, that these changes can be merged into master so easily without even running any tests.
@srhb @johanot @calbrecht
Steps to reproduce
Just run tests and check how it fails.
Technical details
All custom magic scripts in kubernetes that do until X; bad-check; done and all ConditionPathExists attempts, and all unnecessary additional targets, that make me a sad panda.
How to improve
Remove all magic scripts and leave statelessness to do its magic.

I am away on business but I'll try and remember to come back to this. As a first note, I think I do agree, especially since I've been trying to figure out how to fix the dependencies in the control plane startup and have thus far not found a way that makes sense and is simple given different distributions of components per node.

ack.

Hello everyone, some comments from a passer by who is highly interested in this work but is very new to kubernetes.
@offlinehacker thanks for your presentations about kubernetes on nixos and early work. It gave me the warm fuzzy feeling I needed to get started and ignore gravity, rancheros, and other options. Thanks ++
@calbrecht thanks for your recent work, it gave me the confidence that someone else was able to dive in and understand such a complex set of  derivations and contribute improvements after painful rounds of feedback. I hope to be able to contribute some time in the future.
Now, to the point:
From my experience with other nixos services like postgresql, I expected the services to be available and usable after doing just "services.kubernetes.enable = true" so that unexperienced users can start to use kubectl and figure out the rest later.
As a data sample, below is how an outsider expected things to work after reading the docs, I thought all the pki problems would go away when I set easyCerts to true.
What is the expected configuration for beginners for the stateless option that @offlinehacker suggests and for the current stateful option @calbrecht ? What are the expected configuration steps for someone that comes with a let's encrypt wildcard certificate and a domain already pointing at the machine?
{ config, lib, pkgs, ... }:
let
 domain="orgnization.gov.country";
in {
  imports = [ <nixpkgs/nixos/modules/installer/scan/not-detected.nix> ];
  boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" "sr_mod" "sdhci_pci" ];
  boot.kernelModules = [ "kvm-intel" ];
  boot.extraModulePackages = [ ];
  fileSystems."/" = { device = "/dev/disk/by-label/nixos"; fsType = "btrfs";};
  fileSystems."/boot" = { device = "/dev/disk/by-label/boot"; fsType = "vfat"; };
  swapDevices = [ ];
  nix.maxJobs = lib.mkDefault 8;
  powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
  system.stateVersion = "19.03";
  boot.loader.systemd-boot.enable = true;
  boot.loader.efi.canTouchEfiVariables = true;
  boot.loader.timeout=0;
  networking.hostName="master";
  networking.extraHosts = ''
     <IP_ADDRESS> ${domain}
     <IP_ADDRESS> traefik.${domain}
     <IP_ADDRESS> dashboard.${domain}
     <IP_ADDRESS> master.${domain}
  '';
  networking.networkmanager.enable = true;
  environment.systemPackages = with pkgs; [ wget vim htop kubectl docker-compose ];
  services.openssh.enable = true;
  services.kubernetes = {
    roles = [ "master" "node" ];
    masterAddress = "master.${domain}";
    apiserverAddress = "master.${domain}";
    easyCerts = true;
  };
  users.users.x = {
   isNormalUser = true;
   home = "/x";
   extraGroups = [ "docker" ];
  };
}

And what I got when kubectl runs:
kubectl cluster-info

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
The connection to the server localhost:8080 was refused - did you specify the right host or port?

@calbrecht i understand the pain, and i tried to fix it once using same tactics, but it brings in more complexity, and decided that it was good as it was. I will investigate a bit further, but the disappointment came from the fact that it worked quite reliably, and now it does not work anymore(also we have typo here: https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/cluster/kubernetes/default.nix#L278)
As i'm aware that development part of nixos modules is not thoroughly documented, and we need to somehow enable @GrahamcOfBorg to run nixos test automatically on changes @grahamc?

Btw sorry for my initial drama text

@ingenieroariel Your kubectl doesn't work, because you have to give it a working kubeconfig containing credentials for the cluster. See the last paragraph of the manual section: https://nixos.org/nixos/manual/index.html#sec-kubernetes.
I tend to agree with @offlinehacker that perhaps the current systemd dependency chain is a little too "magic"; especially considering the issues that we've seen lately and the fact that the kubernetes components are afterall designed to run individually, self-heal, and start/stop independently. But on the other hand, there sure was a lot of restarting and log-noise going on before the work of @calbrecht, in no small part due to PKI bootstrapping.
In general, it sure is difficult to satisfy everyone. Regarding kubectl, the trade-off is that pre-configuring kubectl will admin-credentials systemwide might be inconvenient or even a security risk.

Issue with ConditionPathExists is that it will silently skip dependency if path does not exist:
Before starting a unit, verify that the specified condition is true. If it is not true, the starting of the unit will be (mostly silently) skipped, however all ordering dependencies of it are still respected. A failing condition will not result in the unit being moved into the "failed" state. The condition is checked at the time the queued start job is to be executed.

Hmm, so kubelet actually uses sd_notify, so we can use this signal to wait for kubelet to start, but i guess this is all still too soon: https://github.com/kubernetes/kubernetes/blob/559b11410ee51998316e3e80d864886d88314607/cmd/kubelet/app/server.go#L724

I will try to improve it and make a pull request, some while loops are useful to get rid of all the noise.

@calbrecht i agree with that completely, i think i have an idea :) https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/cluster/kubernetes/addon-manager.nix#L92

Regarding the tests @offlinehacker , AFAIK, they run out of memory on ofborg? Don't know if this have effect on ofborg or not: https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/kubernetes/base.nix#L37

@calbrecht i agree with that completely, i think i have an idea :) https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/cluster/kubernetes/addon-manager.nix#L92

@offlinehacker I wrote that comment originally, and I think I know what you are thinking. :P

Issue with ConditionPathExists is that it will silently skip dependency if path does not exist:
Before starting a unit, verify that the specified condition is true. If it is not true, the starting of the unit will be (mostly silently) skipped, however all ordering dependencies of it are still respected. A failing condition will not result in the unit being moved into the "failed" state. The condition is checked at the time the queued start job is to be executed.

Therefor every service, that has a ConditionPathExists, also has a path unit that triggers on PathExists and PathChanged. That ensures the service is triggered until and when all paths are present. I fail to see an issue here.

[...] the fact that the kubernetes components are afterall designed to run individually, self-heal, and start/stop independently.

It seems to me, that is working reliably if the components are running in containers, but not when building the cluster with systemd services.

No biggie, i wanted to do some changes to k8s module anyway, now i'm full-in refactoring mode, as i have some free time. I think we can show coreos and redhat guys how to do k8s properly. Will take into account and think what is the best way to wait for files to exist, i think there are other ways to delay execution that do not directly pollute kubernetes.nix and other files. I also want to integrate https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/ as alternative to certmgr. Also replacing addon-manager with something more stable. Will make a WIP pull request when i have something that's review-able.

Personally I think something was merged a bit prematurely, but it was at a time were everybody else seemed too busy to chip in with comments, and that's really not the fault of the people who ended up merging the change that I guess is the change that was the target of the initial rant.
Since there's actually a few companies and people willing to throw resources at making this better, we actually do have a chance at making the module really cool, but only if we work together, instead of starting all over all the time.
So; maybe it's time to stop up, and rethink things together. Statements like i wanted to do some changes to k8s module anyway, now i'm full-in refactoring mode honestly sounds like wanting to just throw away something somebody else made with good intentions, while also ignoring the problems that was attempted to be solved. A bit like "here comes superman to save the world".
This way of communicating (and working, for that matter) is not really something that helps foster an environment where new people wants to contribute. An apologizing later on really doesn't do much to fix the unfortunate tone this discussion started out as.

@offlinehacker when doing #45670 I actually went down the rabbit hole of kubelet-tls-bootstrapping :) At that time (maybe it improved since), it unfortunately turned out to be very little nix-friendly, having too many imperative steps. It might be possible to reduce the number of manual bootstrapping actions to ~one, though. But in any case, you'll need to somehow join/approve nodes to the cluster manually. Also; kubelet and kube-proxy are not the only components that need certificates. Eventually I went with a certmgr-only solution, mainly because the solution works for both master and node components.

Don't get me wrong. I'd love to get rid of certmgr and cfssl in favor of a more kubernetes-native solution, but it would make me sad (panda) if we were to sacrifice declarativeness or security in doing so.
And I agree with @adamtulinius about the working-together part. :-) Anytime you think you found the solution to all the problems in the world, someone else has very likely already tried and failed. So let's learn from each other's mistakes and successes - and triumph.

@adamtulinius I'm not trying to throw away anything, i just want to improve kubernetes module with best intentions and take into account existing work, regarding my initial message was a bit harsh. I'm not trying to be a superman, i just want to make improvements, as i have a bit of time to do that and i need that for my other projects(kubenix). I was not into nix community much lately, and i'm not sure how much resources we have, as a year or two ago, the state was basically do it yourself. What would be your proposal, so maybe we can split work and improve this together?
@johanot i didn't knew that you tried it already, and yea makes sense.

I wish putting thoughts into words, would be as easy as putting it into code, sorry for any of misunderstandings, i swear i just want to help, just my communications skills are not the best.

After a quick chat in #nixos, srhb rightly noted and I agreed to the fact that there is a larger issue to resolve here.
That issue IMO is that the current k8s infrastructure in Nixos tries to be two things at once - a low level configuration system for starting k8s services, and a magic single-shot-give-me-kubernetes solution. This results in bugs like the ones around control-plane-online.service, where default configurations seemingly work fine but some custom configurations (including ones where the user just wants to start particulark8s services) fail. IMO, those bugs stem from a very organically-grown and abstraction-leaking model of the current codebase.
I think a good course of action would be to explicitely split the current codebase into two layers - one that just lets you start k8s services with given kubeconfig options and flags, and then one that uses this functionality to bring an automagic declarative k8s cluster to life. All startup sequencing and bootstrapping could thus be very opinionated and made to fit the approach of the latter layer, while the first layer could be used by advanced users who want to bootstrap their clusters differently.
Of course, this is not a small change. There's loads of technical details to iron out and a lot of implementation work, but I do think it's the right time to at least consider this split now.

@q3k completely agreed, there needs to be clear boundaries. I'm still working on this, will create pull request once ready for review.

I was wondering whether we could perhaps piggyback on https://github.com/kubernetes/kubeadm to do most of the state reconciliation for us (it's heavily tested, and maintained by the k8s community) whilst we focus on our core expertise: reproducible configuration and package management.  Maybe that way we can have best of both worlds and make our code a bit less fragile and less of a maintenance burden?
I've been slowly messing around with these ideas here: https://github.com/arianvp/nixos-stuff/blob/master/modules/k8s/default.nix

+1 for going with kubeadm. So we could add additional layers on top like selecting the networking solution around. I would also replace docker with CRI-O, which seems more lightweight. I don’t think that we have to extend the scope of kubeadm here, but initially should bring it into nixpkgs. WDYT?

Kubeadm is already in Nixpkgs in the Kubernetes package. Just no module
support for it yet
On Wed, Sep 4, 2019, 20:56 Sascha Grunert<EMAIL_ADDRESS>wrote:

+1 for going with kubeadm. So we could add additional layers on top like
selecting the networking solution around. I would also replace docker with
CRI-O, which seems more lightweight. I don’t think that we have to extend
the scope of kubeadm here, but initially should bring it into nixpkgs. WDYT?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/issues/61135?email_source=notifications&email_token=AAEZNI2VJZOZQDKHYSH6KQDQIAAGHA5CNFSM4HLQOK52YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD54TNWY#issuecomment-528037595,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEZNIYPBBTOAUIARALIKQLQIAAGHANCNFSM4HLQOK5Q
.

I suggest we close this issue, since the original bug report here refers to the systemd dependencies which have now been reverted by #67563. I hope that some of you would like to continue the general discussion about the kubernetes module on discourse: https://discourse.nixos.org/t/kubernetes-the-nixos-module-of-the-future/3922

With #67563 merged, let's close this.


Reports problem

New, clean installation -->  installation was successful with install.sh --> report for project "JUICE SHOP" (example):
http://localhost:8000/project/report/pdf/25/
get:
Server Error (500)

Make sure you have installed the pdf library wkhtmltopdf version 0.12.6.
If yes kindly confirm the same with below command in your cmd or terminal
wkhtmltopdf --version

I've tried troubleshooting this as well, and it results in a slew of errors from wkhtmltopdf, and many of it is a result of wkhtmltox depends on libjpeg-turbo8; however: Package libjpeg-turbo8 is not installed
this may be because we're trying on Kali Linux as opposed to Ubuntu- but understand that many of your users will probably be trying to use this tool from Kali Linux.

The same is already mentioned in the documentation as well. If you are getting errors with reporting you need to install the wkhtmltopdf  manually based on your system and os.
If you are using kali you need to download the Debian file based on your Architecture from https://wkhtmltopdf.org/downloads.html

New, clean installation --> installation was successful with install.sh --> report for project "JUICE SHOP" (example): http://localhost:8000/project/report/pdf/25/
get: Server Error (500)

Make the sqlite DB file executable will do the job:)

The same is already mentioned in the documentation as well. If you are getting errors with reporting you need to install the wkhtmltopdf  manually based on your system and os.
If you are using kali you need to download the Debian file based on your Architecture from https://wkhtmltopdf.org/downloads.html

I've followed your documentation and have tried troubleshooting extensively. Regardless the version of wkhtmltopdf, I end up with this error (After enabling DEBUG in settings.py:
wkhtmltopdf reported an error: The switch --footer-font-name, is not support using unpatched qt, and will be ignored.The switch --footer-html, is not support using unpatched qt, and will be ignored.The switch --toc-header-text, is not support using unpatched qt, and will be ignored.The switch --xsl-style-sheet, is not support using unpatched qt, and will be ignored.The switch --disable-dotted-lines, is not support using unpatched qt, and will be ignored.Error: This version of wkhtmltopdf is built against an unpatched version of QT, and does not support more than one input document. Exit with code 1, due to unknown error.

The issues were fixed in the latest version of wkhtmltopdf. Kindly check if you have downloaded the Linux version from this
https://github.com/wkhtmltopdf/packaging/releases/tag/<IP_ADDRESS>-2

AMD 64 - https://github.com/wkhtmltopdf/packaging/releases/download/<IP_ADDRESS>-2/wkhtmltox_<IP_ADDRESS>-2.bullseye_amd64.deb

Wow, that one worked perfectly. I couldn't find one with the proper Qt patch, thank you


User/masudars/component goverance fixes

This PR includes changes to address Component Governance fixes related to msix-sdk/lib/xerces/src/xercesc/util/PlatformUtils.cpp
The fix includes:

Removing V3.2.0 version of lib/xercesc from the repo

Adding xercesc v3.2.1 tag release to repo as subtree to sub-dir path lib/xercesc (should be same as before). This should only bring version update to xercesc which is a recommended CG fix.

Re-applying edits/commit that were made on top previous tab version v3.2.0 i.e

Commit cc323b62: Make changes to Xerces CMake files to compile in Android 19
Commit 542f6fd7: Add Xerces doc directory to XERCES_TEST switch

[How validated:]

Compiled MSIX SDK code for windows x64 arch

makewin.cmd x64 and with a option
makewin.cmd x64 -px
ensure everything compiles fine

Executed tests by running test exe for both cases compiled above

msixtest.exe and ensure all the 73 test cases are passing

/azp run


Breaking change: Original escape sequent converted

Unless I turn on the unicodeEscapeSequence flag (which makes the output much larger), the following code will break:
textContent += '\0';
The issue is that the '\0' won't be left alone. This is required for my code to work and it is converted to the equivalent Unicode null value, when then creates JS that won't parse correctly. Is there no flag to prevent conversion of escaped sequences to preserve the original?
Broken output looks like:
_0x4ad68d += '�';

Hi. If you need to keep the original string, use conditional comments

Can you make a small example that shows a bug?

Cannot reproduce.
My example:
Input:
let textContent = '\8 ';
textContent += '\8';

console.log(textContent);

Output:
let textContent = '8\x20';
textContent += '8';
console['log'](textContent);
// Outputa `8 8`

So i need an example and more details: obfuscator version and used options.

Thank you for your quick response!
Here's a more complete example that demonstrates the issue:
function addDiv(target) {
    let textContent = 'simple message'
    textContent += '\0';
    const newElement = document.createElement('div');
    newElement.textContent = textContent;
    return target.appendChild(newElement);
}

becomes:
const _0x1dac = [
    'div',
    'createElement',
    'gbnzVJS475'
];
(function (_0x431376, _0x1daccc) {
    const _0x501278 = function (_0x56a57f) {
        while (--_0x56a57f) {
            _0x431376['push'](_0x431376['shift']());
        }
    };
    _0x501278(++_0x1daccc);
}(_0x1dac, 0x10b));
const _0x5012 = function (_0x431376, _0x1daccc) {
    _0x431376 = _0x431376 - 0x0;
    let _0x501278 = _0x1dac[_0x431376];
    return _0x501278;
};
function gbnzFJS20(_0x56a57f) {
    const _0x280340 = _0x5012;
    let _0x1b0575 = 'simple\x20message';
    **_0x1b0575 += '

becomes:
...
function addDiv(_0x17a116) {
    const _0x11be3a = _0x8d5d;
    let _0x413c0c = _0x11be3a('0x1');
    _0x413c0c += '

using:
let options = {};
  options.compact = false;
  options.unicodeEscapeSequence = false;

gulp
	.src(parentFolder + "**/*.js")
	.pipe(javascriptObfuscator(options))
	.pipe(gulp.dest(parentFolder))

Ok, I see the problem

Or not. It' strange. For me seems it works fine.

Looks like the obfuscator itself works fine and produces a code with correct characters. But this nul character is removed after you copy-paste this file.

So, the code:
function addDiv(target) {
    let textContent = 'simple message'
    textContent += '\0abc';
    const newElement = document.createElement('div');
    newElement.textContent = textContent.split('\0')[0];
    target.appendChild(newElement);
}
addDiv(document.body);

Works fine after obfuscation and displays only simple message string.
But IF I copy this obfuscated code from obfuscator.io site - after pasting it does not contain the nul characters and outputs looks like s.

So my question is - are you copy a content of the obfuscated file after obfuscation?

I know it sounds strange, but I actually need to use just that single character. And while the output is a valid interpretation of \0, the Chrome V8 engine will not parse it. So it is a breaking change. It is not a matter of copy and paste, I am using Gulp and the output fails to parse in Chrome.
That character is fine in other contexts. VSCode seems to respect it and shows that funny diamond with a question mark character. But it is not a universally accepted character, which is why I'm using an escape sequence there.
Is there no way to prevent the obfuscator from leaving escaped sequences alone?

As a workaround, I can use this instead: String.fromCharCode(0)
However, it would seem like the obfuscator should not converted escaped sequences or at least not that particular one and offer an option if it is going to change it.

For me chrome parses it correctly

I'm using the V8 engine in a separate instance outside the Chrome browser. It is failing on that specific character in my testing. The error message is unambiguous, console logging of the error cuts off right at that character.

Ok. I will add force convert of the Unicode control characters to the escape sequence

PR: https://github.com/javascript-obfuscator/javascript-obfuscator/pull/750

Merged into master. Please try it directly from the master branch and say if your problem was resolved.

Happy to test. Unfortunately, I'm a bit thick on github. Is there an updated version for npm or https://obfuscator.io/ where I can try it? If npm for gulp, what's the required options property to set?

You can install it as a dependency directly from github branch:
"javascript-obfuscator": "git+https://github.com/javascript-obfuscator/javascript-obfuscator.git"

If you're using yarn, you can use resolutions section to temporary override javascript-obfuscator version for some other package, for example for webpack-obfuscator.

Ok. I'll release a new version of javascript-obfuscator in a few minutes.

Released as 2.3.0

Works great! I'm seeing my '\0' replaced with '\x00' in the output and it parses just fine.  Thank you!

Nice!

Also i updated https://obfuscator.io/

Great! By the way, I tested with Gulp. Had to force the update of the dependency, but works with the new version 2.3.0.


/usr/local/include removal

In the dockerfile includes are removed:
rm -rf /usr/local/include/*
That removal does not allow to install extensions that need to be recompiled like pg_partman
My suggestion is not to remove the include files.
After commenting that line, pg_partman can be installed

This already has been fixed in #247.

You are right. I did not realize it was alreday fixed. It works perfectly.
Thanks


Supporting arrays in the additional fields

fixes #119

Okay, as #119 was closed, this can go away, too.


MachineConfig prompts for user keys in Access control enabled setup.

Server version - V0.16.3
Enable access control.
Add a Digital Ocean machine.
Try to fetch "Machine Config".
User is prompted to enter username/password.
Once the username/password is entered , then we are able to get the machine config.
Expected Behavior:
User should not be prompted for username/password when trying to download Machine Config.

Changed to send auth token as query param if auth is on in rancherio/ui#126.

v0.17.0
Verified fixed


Option to stop autoscrolling when streamed response is at top of scroll container

While I was implementing my own custom autoscrolling solution, I found this package (thank you so much for making it by the way).
I was wondering if there's a way to currently or add the option to stop autoscrolling when the streamed response reaches the top of scroll container.

thanks for implementing this!


Fixed test for deleteOne Function

@Sodiq-123 resolve conflicts. Pull from dev branch first.

@Sodiq-123 Please pull the latest changes from dev branch first and merge into your own branch. Then also delete package-lock.json file. We are using YARN not NPM


DRILL-7633: Fixes for union and repeated list accessors

DRILL-7633: Fixes for union and repeated list accessors
Description
Minor fixes and cleanup for the obscure union and repeated list types in the column accesor framework.
Fixed several minor issues in the row set test utilities: improved error message, proper comparing of floating-point values. Support for Boolean values in the RowSetBuilder.
Fixes for building a repeated list or union schema using SchemaBuilder.
Special handling to treat a LIST as an array, even though the mode is not REPEATED. (This is a very hacky corner of Drill!)
Documentation
None
Testing
Added unit tests for union and repeated list types. Code comes from the project to improve the JSON reader which is where the issues were discovered and fixes tested in the context of reading JSON.

Squashed commits and rebased on the latest master.

After rebasing I'm seeing a number of metastore test failures:
[ERROR] Errors:
[ERROR]   TestTableMetadataUnitConversion.testBaseTableMetadata:145 » IllegalArgument Un...
[ERROR]   TestTableMetadataUnitConversion.testFileMetadata:280 » IllegalArgument Unable ...
[ERROR]   TestTableMetadataUnitConversion.testPartitionMetadata:383 » IllegalArgument Un...
[ERROR]   TestTableMetadataUnitConversion.testRowGroupMetadata:332 » IllegalArgument Una...
[ERROR]   TestTableMetadataUnitConversion.testSegmentMetadata:237 » IllegalArgument Unab...

It is not immediately obvious what went wrong; I'll poke around tomorrow to see if I can find the cause.

@paul-rogers thanks for addressing code review comment, I have left comment how to fix unit test failures, please apply them and squash the commits.

@arina-ielchiieva, thanks for the suggestions, they solved the problem. I suspect we have some confusion with those methods based on earlier testing, but we'll fix those issues later.
Squashed commits and reran all unit tests. We should be good to go. Thanks again for your help.

+1, thanks for making the changes.


BabbleSim with blecent and bleprph

Apps blecent and bleprph build and run with BabbleSim.
This PR should be merged after: https://github.com/apache/mynewt-nimble/pull/1108.
The commit with apps: bsim: blecent and bleprph apps with BabbleSim

@andrzej-kaczmarek @mkasenberg


Permit the use of service name or protocol port.

While adding a port for an AV scanner, it didn't have a named port so we couldn't add it to the 'rhel8stig_white_list_services' list variable.  Adding the "regex_search()" filter automatically uses the correct module parameter based on the value of each item in the list variable.
Overall Review of Changes:
This adds the ability to use port information (port # / protocol type) along with the named service when pre-defining whitelisted services.
Enhancements:
This permits the rhel8stig_white_list_services to list port/protocol entries alongside named services.
How has this been tested?:
This modification has been made to a playbook and correctly applies the firewall setting for each type of valid service or port entry.

hi @dglinder
Thank you for taking the time to provide this great improvement to this benchmark. Unfortunately this has not been signed_off hence the DCO failure above.
We are in the process of migrating out pipelines also to a new configuration, so this would still require input until this is resolved.
So I have taken the liberty to incorporate this into #80 PR with acknowledgement into another branch for other work that has been taking place. Hopefully this will be approved this week.
Many thanks once again
uk-bolly

@uk-bolly - if I have other updates, how do I make them?  Does this fork-update-PR work for you, or is there a different way?  I don't want to add to your workload if I can help it.

@dglinder
Thanks for asking, It's not a problem at all, hoping to have this resolved very soon. Failing that so long as it's signed we can create a staging branch for anyone who wishes to merge into that before devel, should there be alot of PRs come through.
regards
uk-bolly

Merged in alternative branch
closed


RuntimeError: `<top (required)>': '' does not exist

I am trying to get the mysqltopostgres command to work for the second day without any luck. I am using the latest 0.2.19 version from the master branch. I suspect I'm doing something wrong, do you know what that might be?
$ mysqltopostgres
/usr/local/var/rbenv/versions/1.9.3-p550/lib/ruby/gems/1.9.1/gems/mysqltopostgres-0.2.19/bin/mysqltopostgres:30:in `<top (required)>': '' does not exist (RuntimeError)
	from /usr/local/var/rbenv/versions/1.9.3-p550/bin/mysqltopostgres:23:in `load'
	from /usr/local/var/rbenv/versions/1.9.3-p550/bin/mysqltopostgres:23:in `<main>'
$ gem list

*** LOCAL GEMS ***

activemodel (4.1.7)
activerecord (4.1.7)
activesupport (4.1.7)
addressable (2.3.6)
arel (<IP_ADDRESS>40414130214)
bigdecimal (1.2.5, 1.1.0)
builder (3.2.2)
bundler (1.7.4)
descendants_tracker (0.0.4)
faraday (0.9.0)
git (1.2.8)
github_api (0.12.2)
hashie (3.3.1)
highline (1.6.21)
i18n (0.6.11)
io-console (0.4.2, 0.3)
jeweler (2.0.1)
json (1.8.1, 1.5.5)
jwt (1.0.0)
mini_portile (0.6.0)
minitest (5.4.2, 2.5.1)
multi_json (1.10.1)
multi_xml (0.5.5)
multipart-post (2.0.0)
mysql-pr (2.9.11)
mysqltopostgres (0.2.19)
nokogiri (<IP_ADDRESS>)
oauth2 (1.0.0)
pg (0.17.1)
postgres-pr (0.6.3)
power_assert (0.1.4)
rack (1.5.2)
rake (10.3.2, <IP_ADDRESS>)
rdoc (4.1.2, 3.9.5)
test-unit (3.0.3)
thread_safe (0.3.4)
tzinfo (1.2.2)
$ ruby -v
ruby 1.9.3p550 (2014-10-27 revision 48165) [x86_64-darwin14.0.0]

Hey everyone,
I'm also getting this issue
mysqltopostgres:30:in `<top (required)>': '' does not exist (RuntimeError)
Did anyone above find the resolution to this? I'm running this on a RedHat machine with the following bundle:
bundle list
Gems included by the bundle:

activemodel (3.2.22)
activerecord (3.2.22)
activesupport (3.2.22)
arel (3.0.3)
builder (3.0.4)
bundler (1.10.6)
i18n (0.7.0)
multi_json (1.11.2)
mysql-pr (2.9.11)
mysqltopostgres (0.2.20)
pg (0.18.3)
postgres-pr (0.7.0)
test-unit (2.5.5)
tzinfo (0.3.44)

Any help would be appreciated.

Just in case someone else got this error, I got it by not following the command line usage:
The configuration yaml file should be the first argument when mysqltopostgres is called.
My question now is how to connect to a database which is not running locally? Is this possible without specifying a socket file?

@maxlapshin I assume the only reason why the OP was using this gem is because somehow it is in the Heroku documentation for migrating from MySQL to PostgreSQL.  In addition to being disilusioned, the owner is also hotheaded, perhaps because he is frustrated with American men coming to Russia and taking his girlfriends.


Child component not re-rendering when passed props.property assigned to const

Qwik Version
0.13.3
Operating System (or Browser)
OSX, Chrome
Node Version (if applicable)
No response
Which component is affected?
Qwik Runtime
Expected Behaviour
See: https://stackblitz.com/edit/qwik-starter-jdxoxt?file=src%2Froutes%2Findex.tsx
Given these three components:
export const ItemValueComponent = component$<{ item: string }>(({ item }) => {
  return {item};
});

export const ItemComponent = component$<{ item: string }>((props) => {
  const item = props.item;
  return (

      Expected: {item}, Actual: <ItemValueComponent item={item} />

  );
});

export const ItemComponent2 = component$<{ item: string }>(({ item }) => {
  return (

      Expected: {item}, Actual: <ItemValueComponent item={item} />

  );
});

I expect the child components of ItemComponent and ItemComponent2 to render updated values whenever ItemComponent and ItemComponent2 receive new values in props.
Actual Behaviour
ItemComponent's inner ItemValueComponent does NOT update when the value in props changes.
ItemComponent2's inner ItemValueComponent does update when the value in props changes.
Additional Information
No response

Verified that this is an issue from 0.11.1 and 0.12.1. I'm not sure if it goes even further back.

Simple workaround for now is to not reassign properties from props and pass it directly into the child components instead.

Agreed this should always work! however qwik wants to avoid rendering the parents to pass data, in your example:
  const item = props.item;

this is anti-pattern in qwik, since it needs to forces a rerender of the component just to pass data around. Agreed this is an issue though, i will look into it

Fixed in 0.14.1!

Just wanted to point out here that this seems to still happen with routeActions$:
`// index.tsx
export const randomServerFetchAction = routeAction$(
async (data, requestEvent) => {
// This will only run on the server when the user submits the form (or when the action is called programatically)
const userID = 0.53543;
const waitFor = (delay: number) =>
  new Promise((resolve) => {
    setTimeout(resolve, delay);
  });

await waitFor(1000);

return {
  success: true,
  userID,
};

}
);
export default component$(() => {
const action = randomServerFetchAction();
let teststring = action.value?.userID;
return (

Res {action.value?.userID}
Res1 {teststring}

Mock to Server

);
});
// Box.tsx
interface BoxProps {
text?: number;
}
const Box = component$((props: BoxProps) => {
return (
<>
{props.text} is the result
</>
);
});
`


Review all secrets across all DCAs

Describe the bug
Need to review all secrets and identify:

Time out of secrets and how do we update them
Who owns them (e.g. service accounts)
What types of secrets are currently stored

This is likely the cause of users logging in as themselves and seeing someone else's username in the dashboard
To Reproduce
Steps to reproduce the behavior:
Unknown yet, haven't been able to reliably reproduce the error
Expected behavior
Need to make sure that all secrets remain up to date and correct. And also ensure that the username that shows up on the dashboard is the same as the username of the person that has logged in.
Priority (select one)
Major 📢
Screenshots
During demo testing, @milen-sage and I were testing the DCA dashboard, this is a screenshot of @milen-sage's view where he was logged into his account but saw my username in the dashboard instead.

Additional context
Add any other context about the problem here.

I just logged into the data curator demo and saw my username in the dashboard as expected 🤔

We've noticed that it tends to happen if two folks are using the same app at the same time, but we couldn't identify the exact sequence to get it to repro 😭

Related to #341; partially redundant but has a specific instance of secret mishandling (likely resolved in latest releases of DCA, but will keep open to confirm).


Wrong bump in shader waterP.hlsl (and probably .glsl too)

In shader waterP.hlsl around line 343 where specular reflection is added, the wrong bump gets normalized:
   // Get some specular reflection.
   float3 newbump = bumpNorm;
   newbump.xy *= 3.5;
   newbump = normalize( bumpNorm );//<== ????
   float3 halfAng = normalize( eyeVec + -lightVec );
   float specular = saturate( dot( newbump, halfAng ) );
   specular = pow( specular, SPEC_POWER );

should be:
   // Get some specular reflection.
   float3 newbump = bumpNorm;
   newbump.xy *= 3.5;
   newbump = normalize( newbump );//<== changed
   float3 halfAng = normalize( eyeVec + -lightVec );
   float specular = saturate( dot( newbump, halfAng ) );
   specular = pow( specular, SPEC_POWER );

Fixed by #1822


The latest tag is ignored

https://deno.land/x/grammy/mod.ts redirects to v1.11.2 while the latest version is v1.12.0. v1.12.0 is also not listed, neither in the version list, nor in the dropdown. It is also not marked as the latest version: The "Go to latest" button does not redirect to it.

I have manually fixed this. Sorry for any inconvenience

Do you know what caused this? Can it happen again?

I am not completely sure; it potentially could happen again. i will investigate this in the coming weeks.

This happened again, I opened #2677.


Service.exception uses static ExceptionMapper & Thread Safety issues on stop

I have found a couple of issues with using Service.ignite() mostly around concurrency and stale information. These were discovered in our unit test environment when we were trying to fire up multiple Service instances.
The first problem is that the exception mappers are statically defined, so the exception mappers from one instance of the service can (and do) conflict with other instances of services. This is mostly a problem in unit test set ups where the static exception mappers have to co-exist with two Services that could have different behaviors for the same exception. The best example here is define two different mappings for Exception.class
Second issue is that when stop() is called, while stop() is a synchronized method, the actions take are within a new thread and those actions are not synchronized on the same threads. So an action, such as clearing out the exception mapper (and seeing initialized to false), happens AFTER you have left the synchronized block, leading bad memory references.
At first glance the easy fix for this(these) issue(s) are the following:

Use an instance fo ExceptionMapper instead of the global getInstance() -- https://github.com/perwendel/spark/blob/master/src/main/java/spark/Service.java#L87
In your "stop" thread, make sure that you synchronize on the same object (i.e. Service.this) inside your stop thread, OR make sure that the objects being used are properly protected with volatile/synchronized/locks. - https://github.com/perwendel/spark/blob/master/src/main/java/spark/Service.java#L464

Seem to kind of duplicate issue #570.
Would be great to see this merged.

Static exception mapper has been solved by #1033

The static exception mapper change seems to have caused #1062 which breaks exception mappings for standalone web servers such as Tomcat. With each service getting its own ExceptionMapper the SparkFilter no longer references the right mapper instance when registering exception handlers via the static exception() method.
See #1062 for a workaround.


Support .tsx files and specifying a tsconfig

Updates depdendency-tree to 6.4.0 to gain support for .tsx files and the ability to specify a custom tsconfig to control module resolution.
Mostly fixes #189. Fixes #167
I'm running into an issue where folder imports like ./components, which should resolve to ./components/index.ts are not being resolved at all but that's because filing-cabinet seems to use typescript's "classic" module resolution by default instead of the "node" style which supports that form, and when I set moduleResolution: "node" in my tsconfig filing-cabinet crashes. However I'm pretty sure that is either a bug in filing-cabinet or typescript itself rather than something to be fixed in madge. I'll delve into that and open an issue in the relevant place.

https://github.com/dependents/node-filing-cabinet/pull/75 is the PR that fixes the crashes when using moduleResolution: "node". It might be worth waiting till that gets merged, released and included in depdendency-tree to save needing a second PR for another version bump.

Have force-pushed an extra test for ./folder resolving to ./folder/index.ts when using moduleResolution: 'node' now that dependents/node-filing-cabinet#75 has been merged.

6.4.1 of dependency tree has been released with the new filing-cabinet changes. Great work here.

Bumped dependency-tree up to 6.5.0. This is now ready to roll.
Thank you for your super speedy release wrangling @mrjoelkemp <3

I'll create a new release when https://github.com/dependents/node-precinct/pull/56 has been merged :)

Done and v7.0.0 of dependency-tree has been released. Thanks for all of the help.


pseudo spelling correction

http://www.thefreedictionary.com/pseudo

Yeah, I know.  dist is under version control.  Maybe they should .gitignore it?

no,, not at all ... what about those who download css/js only version instead of compiled one ??

Dist files are updated at release time, and we dont' want them to change between releases... happy to take the comment updates for the sourcefiles alone if you can update.

@kball as @dragthor didn't reverted .... i did it .... please merge it!

👍


No loader is configured for ".node" bcrypt.darwin-arm64.node

I got an error like this

i am using:

nodejs v16.19.1
nx for monorepo
@node-rs/bcrypt v1.7.3
chip M1

I ran into the same issue with @node-rs/argon2. I could fix it by marking the package as external in my bundler.
Vite
// vite.config.ts

export default defineConfig({
  optimizeDeps: {
    exclude: ["@node-rs/argon2"],
  },
});

esbuild
import * as esbuild from 'esbuild'

await esbuild.build({
  external: ["@node-rs/argon2"]
  // other options …
})

Yes, but if you deploy your production dependencies along-side your bundle this works fine. If you want a single bundled file, you are right, this approach definitely does not work.


files with empty content causes test failed

💥 Regression Report

Last working version
Worked up to version: 26.X.X
Stopped working in version: 27.0.0
To Reproduce
Steps to reproduce the behavior:

Create global-setup.ts script which may do nothing
Add it to jest.config alongside ts-jest transformer.

module.exports = {
  globals: {
    'ts-jest': {
      babelConfig: false,
      tsconfig: 'tsconfig.json',
    },
  },
  globalSetup: './__test__/jest/global-setup.ts',
  transform: {
    '^.+\\.(ts|tsx)$': ['ts-jest', {}],
  },
}

Expected behavior
ts-jest should transform global-setup and run it. Instead of it throws following error.
Error: Jest: Got error running globalSetup - /<project>/__test__/jest/global-setup.ts, reason: Unable to process '/<project>/__test__/jest/global-setup.ts', please make sure that `outDir` in your tsconfig is neither `''` or `'.'`. You can also configure Jest config option `transformIgnorePatterns` to inform `ts-jest` to transform /<project>/__test__/jest/global-setup.ts
    at TsCompiler.getCompiledOutput (/<project>/node_modules/ts-jest/dist/compiler/ts-compiler.js:131:27)
    at TsJestCompiler.getCompiledOutput (/<project>/node_modules/ts-jest/dist/compiler/ts-jest-compiler.js:13:39)
    at TsJestTransformer.process (/<project>/node_modules/ts-jest/dist/ts-jest-transformer.js:146:37)
    at ScriptTransformer.transformSource (/<project>/node_modules/@jest/core/node_modules/@jest/transform/build/ScriptTransformer.js:612:31)
    at revertHook.exts (/<project>/node_modules/@jest/core/node_modules/@jest/transform/build/ScriptTransformer.js:864:18)
    at Module._compile (/<project>/node_modules/pirates/lib/index.js:93:29)
    at Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    at Object.newLoader [as .ts] (/<project>/node_modules/pirates/lib/index.js:104:7)
    at Module.load (internal/modules/cjs/loader.js:863:32)
    at Function.Module._load (internal/modules/cjs/loader.js:708:14)

In tsconfig.json:
{
  "$schema": "https://json.schemastore.org/tsconfig",
  "compilerOptions": {
    "composite": false,
    "incremental": false,
    "rootDir": "./",
    "outDir": "./dist/",
    "target": "ES2019"
  },
  "include": ["src", "*.ts", "**/__test__/*"],
  "exclude": ["**/__mocks__/*"],
  "files": ["./__test__/jest/test-global-types.d.ts"]
}

envinfo
System:
    OS: linux generic

Npm packages:
    jest:27.0.1
    ts-jest:27.0.0
    typescript:3.8.X
    babel(optional): none

Ok, The problem was in very unusual place. So basically ts-jest failed because of an empty .ts file that was never imported. In any place of project.
Here is repo with reproduction. See (empty.ts).
https://github.com/SkeLLLa/tsjest-empty-file-bug

Indeed any files with empty content exist in the project will cause the issue.

a workaround for your problem is set "noEmitOnError": false


Add RC5 support's NgModule support please.

Yep, it is comming

Thank you! Looking forward to it.

RC.5 is up and running :+1:


Explanation of a tab in the PowerBi report

Hi guys
Can you please describe the App Keys tab in AzureADAssessment PowerBi document?
Me and my team could not find a description regarding this. To me more precisely, its the 'Key Name' when the key type is password.
If we got data in this column, does it show the username, password or what does it provide us of information? Because we got different kind of data in this column sometimes that confuse us.
Thanks in advice
BR

Hi @Dsrygaard,
The "Key Name" shown in the PowerBI report in the App Keys tab correspons to the "Description" of the application credential as found in Azure AD.
In graph API this would be the "displayName" of the credential:
https://learn.microsoft.com/en-us/graph/api/resources/passwordcredential?view=graph-rest-1.0
https://learn.microsoft.com/en-us/graph/api/resources/keycredential?view=graph-rest-1.0
Does that clarify this field?
Cédric

@Dsrygaard, i hope the explanation given did resolve your issue.
I'll close the issue, don't hesitate to comment to reopen it.


How do I utilize HTTP caching with WinHttpHandler and HttpClient?

It is stated in many places accross .NET Framework documentation that WinINET is not suppose to be used in server enviroment, for example Caching page on MSDN:

Note  WinINet does not support server implementations. In addition, it should not be used from a service. For server implementations or services use Microsoft Windows HTTP Services (WinHTTP).

Moreover, WinINET caching is not always working in IIS. See HttpClient enable cache on server, HttpClient not using cache on staging server, HttpWebRequest's cache is not working for ASP.NET Application on Windows Server 2012 R2 questions and IIS Hosted Web API Not Caching Internal HTTP Responses article.
So if I need to communicate with other HTTP servers in my server application (Web API or windows service) I need to use WinHTTP. I couldn't find any way to switch from WinINET to WinHTTP except using WinHttpHandler class from System.Net.Http.WinHttpHandler NuGet package:
var client = new HttpClient(new WinHttpHandler())
{
    BaseAddress = new Uri("http://myresourceserver.com/")
};

var response = await client.GetAsync("resource");
var result = await response.Content.ReadAsStringAsync();

Now with this handler HttpClient is not using cache by default. I use following command to configure WinHTTP to use Fiddler proxy: netsh winhttp set proxy <IP_ADDRESS>:8888 "<-loopback>" and confirm that cache is not used.  With WinHttpHandler I can't explicitly specify CachePolicy like I can with WebRequestHandler. It also seems like WinHttpHandler ignores <requestCaching> configuration file section and HttpWebRequest.DefaultCachePolicy static property.
I found no information about caching in WinHTTP in official documentation.

I created similar issue in CoreFx becouse it seems like more appropriate repository


Longest Subsequence

I am adding a dynamically programmed longest subsequence algorithm

Hi Cole. I just reviewed your PR. Faheel will have to take a look, too. But please note that we already have a PR pending for LIS: #194

On 2018-09-07 21:33, Alex Johnson wrote:

Hi Cole. I just reviewed your PR. Faheel will have to take a look,
too. But please note that we already have a PR pending for LIS: #194
[1]
--
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub [2], or mute the
thread [3]. [ { "@context": "http://schema.org", "@type":
"EmailMessage", "potentialAction": { "@type": "ViewAction", "target":
"https://github.com/faheel/Algos/issues/196#issuecomment-419612209",
"url":
"https://github.com/faheel/Algos/issues/196#issuecomment-419612209",
"name": "View Issue" }, "description": "View this Issue on GitHub",
"publisher": { "@type": "Organization", "name": "GitHub", "url":
"https://github.com" } }, { "@type": "MessageCard", "@context":
"http://schema.org/extensions", "hideOriginalBody": "false",
"originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Re:
[faheel/Algos] Longest Subsequence (#196)", "sections": [ { "text":
"", "activityTitle": "Alex Johnson", "activityImage":
"https://assets-cdn.github.com/images/email/message_cards/avatar.png",
"activitySubtitle": "@alxmjo", "facts": [ ] } ], "potentialAction": [
{ "name": "Add a comment", "@type": "ActionCard", "inputs": [ {
"isMultiLine": true, "@type": "TextInput", "id": "IssueComment",
"isRequired": false } ], "actions": [ { "name": "Comment", "@type":
"HttpPOST", "target": "https://api.github.com", "body":
"{\n"commandName": "IssueComment",\n"repositoryFullName":
"faheel/Algos",\n"issueId": 196,\n"IssueComment":
"{{IssueComment.value}}"\n}" } ] }, { "name": "Close issue",
"@type": "HttpPOST", "target": "https://api.github.com", "body":
"{\n"commandName": "IssueClose",\n"repositoryFullName":
"faheel/Algos",\n"issueId": 196\n}" }, { "targets": [ { "os":
"default", "uri":
"https://github.com/faheel/Algos/issues/196#issuecomment-419612209" }
], "@type": "OpenUri", "name": "View on GitHub" }, { "name":
"Unsubscribe", "@type": "HttpPOST", "target":
"https://api.github.com", "body": "{\n"commandName":
"MuteNotification",\n"threadId": 377402908\n}" } ], "themeColor":
"26292E" } ]
Links:
[1] https://github.com/faheel/Algos/pull/194
[2] https://github.com/faheel/Algos/issues/196#issuecomment-419612209
[3]
https://github.com/notifications/unsubscribe-auth/Am0jT58k7V-mwbboytnKQQGOJ4fCpl12ks5uY0iogaJpZM4WfrYc
Sorry I did not realize that, Mine can also do longest decreasing sub
sequence as well. I can re make the pull request and change the code to
just be decreasing if needed.

On 2018-09-07 21:33, Alex Johnson wrote:

Hi Cole. I just reviewed your PR. Faheel will have to take a look,
too. But please note that we already have a PR pending for LIS: #194
[1]
--
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub [2], or mute the
thread [3]. [ { "@context": "http://schema.org", "@type":
"EmailMessage", "potentialAction": { "@type": "ViewAction", "target":
"https://github.com/faheel/Algos/issues/196#issuecomment-419612209",
"url":
"https://github.com/faheel/Algos/issues/196#issuecomment-419612209",
"name": "View Issue" }, "description": "View this Issue on GitHub",
"publisher": { "@type": "Organization", "name": "GitHub", "url":
"https://github.com" } }, { "@type": "MessageCard", "@context":
"http://schema.org/extensions", "hideOriginalBody": "false",
"originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Re:
[faheel/Algos] Longest Subsequence (#196)", "sections": [ { "text":
"", "activityTitle": "Alex Johnson", "activityImage":
"https://assets-cdn.github.com/images/email/message_cards/avatar.png",
"activitySubtitle": "@alxmjo", "facts": [ ] } ], "potentialAction": [
{ "name": "Add a comment", "@type": "ActionCard", "inputs": [ {
"isMultiLine": true, "@type": "TextInput", "id": "IssueComment",
"isRequired": false } ], "actions": [ { "name": "Comment", "@type":
"HttpPOST", "target": "https://api.github.com", "body":
"{\n"commandName": "IssueComment",\n"repositoryFullName":
"faheel/Algos",\n"issueId": 196,\n"IssueComment":
"{{IssueComment.value}}"\n}" } ] }, { "name": "Close issue",
"@type": "HttpPOST", "target": "https://api.github.com", "body":
"{\n"commandName": "IssueClose",\n"repositoryFullName":
"faheel/Algos",\n"issueId": 196\n}" }, { "targets": [ { "os":
"default", "uri":
"https://github.com/faheel/Algos/issues/196#issuecomment-419612209" }
], "@type": "OpenUri", "name": "View on GitHub" }, { "name":
"Unsubscribe", "@type": "HttpPOST", "target":
"https://api.github.com", "body": "{\n"commandName":
"MuteNotification",\n"threadId": 377402908\n}" } ], "themeColor":
"26292E" } ]
Links:
[1] https://github.com/faheel/Algos/pull/194
[2] https://github.com/faheel/Algos/issues/196#issuecomment-419612209
[3]
https://github.com/notifications/unsubscribe-auth/Am0jT58k7V-mwbboytnKQQGOJ4fCpl12ks5uY0iogaJpZM4WfrYc
I closed the pull request, I will make it purely decreasing instead


build.py:177: FutureWarning: The default value of regex will change from True to False in a future version.

Following your recommendation from #31 , I execute  build_database as follows:
# df has columns:
#     id   kingdom   phylum  class  order  family   genus     species    file
> m = build_database( manifest = df , out_path = "/data/out" , threads = 8 )

which gives warning message (but still completes successfully):
/usr/local/lib/python3.8/dist-packages/micom/workflows/build.py:177: FutureWarning: The default value of regex will change from True to False in a future version.
  meta.index = meta[rank].str.replace("[^\\w\\_]", "_")
Running ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━  79% 0:02:12

System information:
$ python3  -c "import micom; micom.show_versions()"

System Information
==================
OS                  Linux
OS-release 5.4.0-1030-aws
Python              3.8.5

Package Versions
================
cobra        0.21.0
jinja2       2.10.1
micom        0.22.5
pip          20.0.2
scikit-learn 0.24.1
scipy         1.6.1
setuptools   45.2.0
symengine     0.7.2
wheel        0.34.2

Thanks! That's just a warning from pandas that some behavior will change in the future. It will not affect the model building at all. I'll fix those in one of the next releases though.

Fixed in 0.22.7.

Hello, apparently it's still there in 0.23.1 :
workflows/build.py:185: FutureWarning: The default value of regex will change from True to False in a future version.
  meta.index = meta[rank].str.replace("[^\\w\\_]", "_")


After closing web socket connection not all OkHttp's threads are terminated

Hi,
I just wrote simple app like this:
final OkHttpClient httpClient = new OkHttpClient();

final WebSocket webSocket = httpClient.newWebSocket(new Request.Builder().url("ws://demos.kaazing.com/echo").build(), new WebSocketListener() {
    @Override
    public void onOpen(WebSocket webSocket, Response response) {
        System.out.println("STARTED!");
    }

    @Override
    public void onClosed(WebSocket webSocket, int code, String reason) {
        System.out.println("CLOSED!");
    }
});

Thread.sleep(1000);

webSocket.close(1000, "Closed.");

Thread.sleep(1000);

Thread.getAllStackTraces().keySet().stream()
        .filter(Thread::isAlive)
        .forEach(System.out::println);

System output:
STARTED!
CLOSED!
Thread[Signal Dispatcher,9,system]
Thread[Okio Watchdog,5,main]
Thread[OkHttp ConnectionPool,5,main]
Thread[main,5,main]
Thread[Finalizer,8,system]
Thread[OkHttp Dispatcher,5,main]
Thread[Reference Handler,10,system]
Thread[Monitor Ctrl-Break,5,main]

It looks like the OkHttp Dispatcher is waiting for something.
After calling:
httpClient.dispatcher().executorService().shutdown();
All OkHttp's threads are terminated and java process is finally down.
Is it expected behaviour?
I don't have similar problems when I call http request, the problem occurs only with web sockets.
Best,
Adrian

This is expected behavior. The OkHttpClient javadoc explains resources consumed by each client and how to release them.

I'm calling
client.dispatcher().executorService().shutdown()
client.connectionPool().evictAll()

on all OkHttpClient instances, yet the application does not exit until after the Okio Watchdog thread is done, around 30 seconds after the shutdown has been initiated.
Is there a way to manually shutdown that thread too?

It should be a daemon thread.
https://publicobject.com/2015/01/02/okio-watchdog/
https://github.com/square/okio/blob/master/okio/src/main/java/okio/AsyncTimeout.java
Can you provide a stack trace showing it not running as a Daemon?

@yschimke It does run as a daemon:
"Okio Watchdog" #24 daemon prio=5 os_prio=31 tid=0x00007fe71b7f2000 nid=0x1079b in Object.wait() [0x0000700002935000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at okio.AsyncTimeout.awaitTimeout(AsyncTimeout.java:347)
	at okio.AsyncTimeout$Watchdog.run(AsyncTimeout.java:312)
	- locked <0x00000006c0711710> (a java.lang.Class for okio.AsyncTimeout)

   Locked ownable synchronizers:
	- None

Full output is here:
dump.txt

Alguna solución?


Incorrect instruction

[Enter feedback here]
%PROGRAMFILES%\Mozilla Firefox\distribution\policies.json - there's no such file and 'distribution' folder at least for 64bit Firefox from version 112

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

ID: c7ddfb2f-5dea-5e31-2a27-02a4dc16104c
Version Independent ID: 12ca0b9a-2638-a4ce-c45f-d4579c83dafb
Content: Enforce HTTPS in ASP.NET Core
Content Source: aspnetcore/security/enforcing-ssl.md
Product: aspnet-core
Technology: aspnetcore-security
GitHub Login: @tdykstra
Microsoft Alias: riande

The directions say to create a policies.json file, they don't say that one is already present. You would have to create the distribution folder to put the file in as well.

Ok, but if the specified folder %PROGRAMFILES%\Mozilla Firefox\distribution\ does not exist, does it mean that I should create the subfolder "\distribution" explicitly? I was a bit confused because the original Firefox installer didn't create this folder.

Yes, create the distribution folder.

Updated the text
PR: https://github.com/dotnet/AspNetCore.Docs/pull/29264
Please review

As the above mentioned pull request fixes this issue, this issue can be closed.


[Poll] Should we relax how we parse a boolean parameter in annotated services?

Armeria currently allows only the following value as a valid input for a boolean query parameter:

true and false
0 and 1

We'd like to know if our validation is too strict for real world use cases. Please vote by adding one or more reactions to this issue to let us know what you think:

:-1: - Don't change anything. It's good as it is.
:laughing: - Treat non-zero integers, such as -1 and 42, as true.
:tada: - Treat yes and no as true and false.
:heart: - Treat y and n as true and false.
:rocket: - Treat on and off as true and false.

This poll will be open until Jun 14th.
:arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down::arrow_down: Please vote now!

Are the string matches case insensitive?

Are the string matches case insensitive?

Yes, they are.

Let me close this issue. Rest assured. Nothing's gonna change. :sweat_smile:


Microsoft Teams App | Screen Share Issue on MacOS

Bug description
Unable to perform a screen share when using the nativefied Teams App.

[x] I looked at nativefier --help and https://github.com/jiahaog/nativefier/blob/master/docs/api.md
[x] I searched existing open & closed issues. Yes, my bug is new.
[x] I'm using the latest version available at https://github.com/jiahaog/nativefier/releases

Steps to reproduce
Give your full nativefier command, with the --verbose flag, on a public site:
nativefier "https://teams.microsoft.com/_?tenantID=<my_org_tenant_id>" --name "Microsoft Teams Second" --internal-urls '.*' --icon icon.icns -p mac --counter --bounce
Expected behavior

Should be able to do a screen share like i am with Chrome / (or any other browser when using teams.microsoft.com in a browser session)

Actual behavior

Clicking on Screen Sharing button opens a window - about what to share
Select Window/Desktop - nothing happens

Context

Nativefier: 8.0.7
Node.js: - v13.12.0
Npm: - 6.14.4
OS: MacOS 10.15.4

Closing as dup of https://github.com/nativefier/nativefier/issues/927 .


get_string_size() and get_wordwrap_string_size() don't recognize the tab character.

Godot version:
3.2.1
OS/device including version:
Windows 10
Issue description:
In the TextEdit you can insert a TAB character into your text and it takes up space.  However if you test the size with get_string_size() or get_wordwrap_string_size(), you will get 0.
the code get_string_size("\t\tHello") only returns the size of "Hello".
the code get_wordwrap_string_size("\t\tHello\n", 100) only returns the size of "Hello" and "\n".

I might be wrong here, but looking at the source code it seems to me that the problem might be in the font files, as there is no special handling of '\t' character. Instead, all the arithmetics is done by adding the width of consecutive chars and subtracting kerning. Also looking at the font files (godot/thirdparty/fonts/) it would seem they are provided from outside, as 'thirdparty' suggests.
If this is indeed a problem and not intended behaviour I can add something like this:

That would be great.
On Sun, May 10, 2020, 2:32 PM kopcion<EMAIL_ADDRESS>wrote:

I might be wrong here, but looking at the source code it seems to me that
the problem might be in the font files, as there is no special handling of
'\t' character. Instead, all the arithmetics is done by adding the width of
consecutive chars and subtracting kerning. Also looking at the font files
(godot/thirdparty/fonts/) it would seem they are provided from outside, as
'thirdparty' suggests.
If this is indeed a problem and not intended behaviour I can add something
like this:
[image: image]
https://user-images.githubusercontent.com/25220729/81509881-0ae7a580-930e-11ea-80da-87a5f8711c0e.png
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/38315#issuecomment-626385356,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGNLJEWHIDRSWBQ3SKDF2CTRQ4FNRANCNFSM4MTHYENQ
.


[Idea] Ignoring containers

Watchtower makes it possible to monitor specific containers and update them - I would need it the other way round as it should i.e. leave the management containers alone but care for the (very dynamic) rest.

The possiblity to watch containers with an assigned label has been introduced with #104