Make no-native work with ???

Sorry to be a pain, but I've found that the no-native part of this plugin does not pick up native promises in our project and I'm not 100% why.
At first I thought it might be because we're using the current version of eslint, when I saw this: https://github.com/eslint/eslint/pull/4648/files, but I've run the tests in this plugin against eslint 2 and while a bunch of them fail, the no-native ones pass. We use a huge mess of packages so trying to work out where the bad interaction/transpilation happens is a difficult task.
I've played around with the various lists of references on a scope and found that scope.implicit.left appears to include the native uses of Promise in my project, and in this plugin's tests, so I think we're going to run off this fork for now.
I thought maybe you have a better understanding of eslint internals and might be able to suggest what could cause some references to Promise to not appear in the the .through reference list, or if changing it to .implict.left is a bad idea

Thanks for the feedback, I'll take a look tomorrow!
On Thu, May 26, 2016 at 8:27 PM Lucas Parry<EMAIL_ADDRESS>wrote:

Sorry to be a pain, but I've found that the no-native part of this plugin
does not pick up native promises in our project and I'm not 100% why.
At first I thought it might be because we're using the current version of
eslint, when I saw this: https://github.com/eslint/eslint/pull/4648/files,
but I've run the tests in this plugin against eslint 2 and while a bunch of
them fail, the no-native ones pass. We use a huge mess of packages so
trying to work out where the bad interaction/transpilation happens is a
difficult task.
I've played around with the various lists of references on a scope and
found that scope.implicit.left appears to include the native uses of
Promise in my project, and in this plugin's tests, so I think we're going
to run off this fork for now.
I thought maybe you have a better understanding of eslint internals and
might be able to suggest what could cause some references to Promise to
not appear in the the .through reference list, or if changing it to
.implict.left is a bad idea
You can view, comment on, or merge this pull request online at:
https://github.com/xjamundx/eslint-plugin-promise/pull/16
Commit Summary

Make no-native work with eslint 2 too

File Changes

M rules/no-native.js
https://github.com/xjamundx/eslint-plugin-promise/pull/16/files#diff-0
(2)

Patch Links:

https://github.com/xjamundx/eslint-plugin-promise/pull/16.patch
https://github.com/xjamundx/eslint-plugin-promise/pull/16.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/xjamundx/eslint-plugin-promise/pull/16, or mute the
thread
https://github.com/notifications/unsubscribe/AAPBf1Lq3Tz3ta-Cb4ck3rSRlI8Mwkpvks5qFmSlgaJpZM4IoJCP
.

Okay looking at this now...

I think the problem is if you're in es6 mode, eslint will inject all of the globals into the scope from here:
https://github.com/sindresorhus/globals/blob/master/globals.json#L36

I don't know how scopes work, but this code seems to work!


residual does not have an activation layer keyword

It is a great work for your implementation~~
I think there is smoething going wrong in this code..
in ops line 98:
def residual(input, num_filters, name, is_train, reuse, norm, pad='REFLECT',
bias=False)
But in encoder line 57:
E = ops.residual(E, n, 'res{}_{}'.format(n, i + 1), self._is_train,
self._reuse, norm=self.norm, activation='leaky',
bias=True)
The anctivation layer in the reidual block is 'relu' in your ops. What is going on?...I feel confused~
Maybe the line 57 in encoder need to be : E = ops.residual(E, n, 'res{}{}'.format(n, i + 1), self._is_train,
self._reuse, norm=self._norm,
bias=True)

I fixed this issue (https://github.com/gitlimlab/BicycleGAN-Tensorflow/commit/af75776f8ea7496672401c8e8c447420f79e9ce3).
Bug reports are greatly appreciated!


Programming exercises: Add JavaScript programming language template

Checklist
General

[x] I tested all changes and their related features with all corresponding user types on a test server.
[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Server

[x] Important: I implemented the changes with a very good performance and prevented too many (unnecessary) database calls.
[x] I strictly followed the server coding and design guidelines.

Changes affecting Programming Exercises

[x] High priority: I tested all changes and their related features with all corresponding user types on a test server configured with the integrated lifecycle setup (LocalVC and LocalCI).
[ ] I tested all changes and their related features with all corresponding user types on a test server configured with Gitlab and Jenkins.
[ ] I tested all changes and their related features with all corresponding user types on a test server configured with Gitlab and GitLab CI.

Motivation and Context

Description
This PR adds a programming language template for JavaScript.
The template runs tests using Jest. Student code and test code is transpiled with Babel to enable the use of ES6 modules.
The dependencies are cached in the docker image.
Steps for Testing

Prerequisites:

NodeJS installed
1 Instructor
1 Course
1 Student

Setup

Log in as Instructor to Artemis
Navigate to Course Administration
Create a new Programming Exercise
Select Javascript as the programming language
Fill out the required fields and click on Generate
The Template Result should build and fail with 2 test cases
The Solution Result should build and pass with 2 test cases

Local Test

Clone the Test Repository into test/
Clone the Solution Repository into test/assignment/
Enter the test/ directory
Run npm ci
Run npm test
The test should pass

Exercise Creation

Implement a new testable function in test/assignment/src/math.js
Push the changes to the Solution repository
Add a new test for this function in test/src/math.test.js
Push the changes to the Test repository
Clone the Template Repository
Add the function declaration and throw an exception in the body
Push the changes to the Template repository
The Template Result should build and fail with 3 test cases
The Solution Result should build and pass with 3 test cases
Click on the Edit button of the exercise
Add the task with the function name to the problem statement
Click on Save

Exercise Participation

Log in as a Student
Navigate to the exercise
Start the exercise
Solve the exercise incorrectly
The tests should fail
Solve the exercise correctly
The tests should pass

Testserver States

[!NOTE]
These badges show the state of the test servers.
Green = Currently available, Red = Currently locked
Click on the badges to get to the test servers.

Review Progress

Performance Review

[ ] I (as a reviewer) confirm that the client changes (in particular related to REST calls and UI responsiveness) are implemented with a very good performance
[ ] I (as a reviewer) confirm that the server changes (in particular related to database calls) are implemented with a very good performance

Code Review

[ ] Code Review 1
[ ] Code Review 2

Manual Tests

[ ] Test 1
[ ] Test 2

Exam Mode Test

[ ] Test 1
[ ] Test 2

Test Coverage

Screenshots

Summary by CodeRabbit

New Features

Added JAVASCRIPT support for programming exercises and continuous integration services.
Introduced JavaScript templates for exercises, solutions, and tests, including package.json, .gitignore, and initial code & test files.
Added JavaScript build configurations for Jenkins and GitLab CI.

Bug Fixes

Fixed minor HTML formatting and translation issues in various web components.

Chores

Updated .gitignore files to exclude node_modules/ and relevant directories.

@coderabbitai review

@JohannesStoehr Yes, I'm thinking of using the strategy pattern example for consistency. I'd add it in a follow-up PR.


Feature/add content from lottamob updates

This adds content from https://github.com/Lottamob/Updates

@Lottamob This adds the remainder of your content. Will migrate the actual domain soon.


Parent components should indicate if child components have invalid mock data.

Is your feature request related to a problem? Please describe.
Problem is, when there are subcomponents layers deep, you have to open them all to see if any of them has invalid mock data.
Describe the solution you'd like
It would be nice if the parent component displays whether the child components have invalid mock data and gives a hint about that (preferably with the name of the affected subcomponent).
Describe alternatives you've considered
Maybe it is simpler done when this process can be started manually via a button?
Additional context

I think that is not really doable, at least not without very high effort. The data gets passed as a whole to the 3rd party validator.
I will keep the issue open and see at some point if there is anything I can do about that.

Double checked it and yes, this is not possible unfortunately. However, you can always run miyagi lint which validates the whole project, so you would definitely see those errors there.


Add Sendan Life (Katagiri Bootleg) by Shoue, Katagiri

Song Name
Sendan Life (Katagiri Bootleg)
Artist Name
Shoue, Katagiri
Source
Youtube
Youtube Link
https://www.youtube.com/watch?v=qy4oe4rEGsw
Direct File Link
No response
Song ID
18856464
Extra
Created from Auto Nong.
Created for level: 106590574

accept


nouveau firmware load error

I'm having this error when i try kmscube or weston-launch :
[  202.248149] nouveau 57000000.gpu: Direct firmware load for nvidia/gk20a/fecs_inst.bin failed with error -2
I cann't find that file in the rootfs.
Here is full dmesg (ubuntu core rootfs)
http://pastebin.com/PqLgVFcT
I tried with the default rootfs and had the same.

Have you properly run ./scripts/install-firmware? This should put the required firmware files in /lib/firmware. E.g. check for /lib/firmware/nvidia/gk20a/fecs_inst.bin , it should be there or Nouveau will not load.

Yes i did.
I have a /lib/firmware/nouveau folder, not nvidia.
And that file is not there.
Here is the content of the nouveau folder :
nv12b_acr_ucode
nv12b_fecs_bl
nv12b_fecs_sig
nv12b_pmu_bl

I think you need to repo sync the linux-firmware repository and run ./scripts/install-firmware again - you have probably ran it against an old version. Make sure that /lib/firmware/nvidia/gk20a/ exists and is well-populated.

i do have the nvidia folder in the linux-firmware repo.
i checked the install-firmware script.
it does a copy the nouveau folder only, not the nvidia.
cp -R $TOP/$PACKAGE/nouveau $SYSROOT/lib/firmware/

Oh wait, install-firmware appears to be broken... Let me fix this.

There, it should be fixed - could you repo sync and try to run install-firmware again?

Ok, thanks.

Confirmed that things should be working fine now - please reopen if you are still having issues, and thanks for reporting!


Consider removing the style prop optimisation

Automatic unit insertion on properties and properties
Inferno makes no attempt to add the unit to numerical attributes or properties that React attempts to automatically add units to. For example:
 will result in px being added automatically to the style property in React. To ensure Inferno is kept lean and fast, the code base does not contain these expensive checks and overheads have been removed. It's completely down to the user to specify the property. So with Inferno, you should use the following to achieve the same result
.

We are looking to migrate a large codebase to Inferno. However, this micro optimisation makes it virtually impossible. Not only because of the amount of work it would take to update our components, but also because of third-party components that we cannot update.
What exactly is the code that you have removed? It simply cannot be a bottleneck of any performance issue. I imagine it is something as simple as:
const IsInteger = /^[0-9]+$/;

normaliseStyleUnits = (userStyle) => {
    const normalisedStyle = {
        ...styleDefinition
    };

    if (IsInteger.test(normalisedStyle.width)) {
        normalisedStyle.width = normalisedStyle.width + 'px';
    }

    if (IsInteger.test(normalisedStyle.height)) {
        normalisedStyle.height = normalisedStyle.height + 'px';
    }

    return normalisedStyle;
};

@gajus Thanks for the feedback. We've actually heard similar feedback from other users suggesting the same so we'll be adding it back into Inferno in the next update. Thanks for using Inferno :)

@Havunen @Kflash if either of you guys get a chance, could you possibly look into this one? I've been asked about it again recently and we should really get it in the next release :)

Release in 0.7.12


Fix missing c-s-s password import JS file and gitignore

Task/Issue URL: https://app.asana.com/0/0/1208812661441521/f
Description
Steps to test this PR
Feature 1

[ ]
[ ]

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

#5284
#5098
#5295  👈 (View in Graphite)
develop

This stack of pull requests is managed by Graphite. Learn more about stacking.


Enrich description field

In PR 20 the code review included a comment that too similar filenames and descriptions are created. Thus the descriptions needs to be enriched.
This branch focuses on the enrichment of the description field and the prior data transformation of , <Region, foto> and <Land, foto>.
A separate branch will be created for the creation of filenames, based on the same data.
After analyzing the metadata I decided that  and <Region, foto> together with <Land, foto> could be used to enrich the descriptions.
Task: https://phabricator.wikimedia.org/T158945

Example of the new description fields with <Region, foto>, <Land, foto> +  + <"Svenska Cypernexpeditionen 1927-1931> can be viewed on Commons


fix: fixes multiple issues with the recent cbioportal export changes

coverage: 85.38%. remained the same when pulling 9567d0573cc2e2f8d3178ebc7c7836f6d10b7322 on cbioportal_hotfix into a40a42da3762f8f06a89d67b46e3f817a2f135bb on main.


chore(deps): upgrade runtime dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-runtime-dependencies-k8s-26-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 3166

Questions ?
Please refer to the Backport tool documentation


White Themes! Editor Theme font color based on theme color

Bright themes are currently not supported, because the font color is white.
It should change to black after a specific threshold.

it is easy to make dark font color if base color i's bright.
but it is more complicated with Colored icons.
I had tried it once.

the only easy soultion to this problem is to generate a set of dark icons, this can be easily done on svg export.

@djrm would it be worth to think about making all icons white (except multicolour icons) and than modulating all the icon colors.
I was thinking about this since some time, since this would also allow slightly different icon colors. or even non colored icons.
We would need to be able to store an icon WITH the modulation color in one object than though...
which

@toger5 actually my solution is easier than that, i was thinking about simply replacing the svg colors when the exporter gets the data from the SVG file, since all the icons have predictable html color codes, we can create a map, to transform lets say white -> black, so the output of the script would 2 different set of icons, on for white themes and other for light themes, we would just have to select the correct variation given the base color.
also this method has complete flexibility and icon quality, since we dont need to modulate.

@toger5 thats also the reason why im trying to remove all the hard coded colors, so a convention would have to be set for every usable color in the engine.

@djrm yea it would be easier to just have two icons. And than do:
set_icon("class","icon",  dark_icons ? icon_dark : icon);
But this would only allow for a limited flexibility. What if we want to change 3d to a more intense red, or if we want to change the color entirely.
All icons would beed to be reexported abd the engine recompiled. With modulation those chnages would ve really really simple. Also wouldnt make it necassaey to save all png icons twice (dark and bright version).
Another opion would be wait for 2d meshes + svg to 2d mesh importer.
Than all icons could be 2dmeshes and 2d mesh could have a color which is changeable. This also would remove multiple icon sets.

@toger5 no, thats not a good idea, first there would be a masive amount of changes and we would need developers to remember to set dark icons or light icons, it should be something like using hiDPI where there are no changes to gui elements code, only in the configuration selects the correct icons,
also i dont think giving the user the ability to choose specific colors for icons is a good idea, first they color codes are important for educational reasons, tutotials, etc.. all should use the same color coding. giving the user so much customization options is not a good idea, basicallly no we have to consider the dark icons case because now the editor can be white.

Your points make a lot of sense...
Just really didnt like the idea of having so many icon versions:  (hi, mid, lowdpi) * (light, dark)
But since i totally agree that too many options, however good they sound, are nit the best choice this is probably the better choice. I just hoped i could make the more saturated but maybe, if others also want them kore saturated we still can do so.
For the dark icons than.
We could use a grey-blue color, might look good but would decrease the amount of highlight colors which would look good. So maybe we should just use sth like #555 or even darker.

@toger5 yeah i would also like the icons to be a bit more saturated, but they preserve their original colors, maybe we could change them now that its the time for breaking things.

@djrm good idea!
What colors would u propose? For both more saturated icons + light theme editor_icons?
What do you think about the syntax i proposed:
set_icon("stringA","steingB", dark_icons ? Icon_dark : icon)
Or do u have a better idea how we dont need to change all set icon calls un editor_themes.cpp.
Maybe a fucntion which changes the icons (light or dark) that are stored in the icon constants?
What else is needed than rerendering all the svg's wih differnt colors, loading the right icons + setting the font color when the theme color is lighter than #808080

@toger5 we cant change the set_icon function because it is used in a lot of places, not only in editor_themes, so we have to do something simillar to what is done for hiDPI icons.
for the svgs, i will make an script that extract all the colors used in the svgs so we can clasify them in a color conversion map, that way we can specify a conversion table in the export script, so we dont need to change the actual svgs (which are a lot).

@toger5 also i already implemented the dark and light color but only for window title, you can check it, it is already on master, the idea was to get the average of the rgb components and test if it is > .5

@djrm I started working on this and made decent process.
I made a new folder structure for icons:
|-icons
    |-1x
      |-dark
    |-2x
      |-dark
      |-light

changed the svgs to png script
and the script which generates the headers. and assigned the icons to the map.

@toger5 i dont know if this will be needed anymore, since currently im working on svg support, but the thing that we will definetly need is the conversion table mentioned (for color conversions).

I actually kept the svg importer in mind when adding the feature. You just need to change how make_icon() works.
Ill add the pr tomorrow.

Can be closed now that #10382 is merged


update nightly to trace-agent master

Windows build failing due to https://github.com/golang/go/wiki/InvalidFlag
Seems unrelated to this (?). Not sure what the plan of action is.

@derekwbrown thanks for looking. Brought back comments.


Several features don't exist

stackableShulkerBoxesInPlayerInventories and stackableShulkersWithItems don't exist when trying to enable them using /carpet

Hi could you provide a list of your mods, what version you are using, and maybe a video of you showing the issue?
Thanks

Should I send it to you via mail?
senseiwells @.***> schrieb am Di., 3. Aug. 2021, 00:35:

Hi could you provide a list of your mods, what version you are using, and
maybe a video of you showing the issue?
Thanks
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Super-Santa/EssentialAddons/issues/3#issuecomment-891378685,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APUP6THRLI4ZZKCWBPROTALT24MSJANCNFSM5BNN5IDQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email
.

Just send a screenshot of your mods folder, attach the log file from when you were experiencing the issue, upload a video to youtube and link it and state the any remaining information.

Hello,
I can confirm that stacking shulkerboxes with items doesn't work for some reason.


Close button is disabled, but hover effect still work

Close button is disabled, but hover effect still work
https://codepen.io/rpokrovskij/pen/gKaKrJ
True for 4.0 and 4.1

@patrickhlauke  thank you? patrick, is it real to ask bootstrap team to support close button inside budge? (that mean close button "size"and aligment) ?

file any new request/issue as a separate issue please :)

@patrickhlauke ok I will do it. but that what I get last time when I have requested "new feature":
https://github.com/twbs/bootstrap/issues/26412
It can be understand as bootstrap  team doesn't consider proposals for new features.


Moved cog loading into on_ready and made the loading more dynamic

The previous implementation made it so that cogs could not access any bot values during their initialization because the bot was loading the cogs before connecting to the Discord network. This fixes that going forward.
The root_dir for the cog loading was changed so that it will uses the parent directory of the executing script rather than just using a hardcoded "chiya" value which is rather unnecessarily static.
Removed the legacy comment about registering commands because this seems to be fixed in later versions of Pycord although we plan to switch to discord.py eventually anyways.

on_ready exists. If you want to access the bot info you can add a listener


TypeScript issues

Following a boilerplate from Alura Imersão React - Aula 01
I've encountered two TypeScript issues:

props:

backgroundImage
backgroundRepeat
backgroundSize
backgroundBlendMode
minHeight

does not exist in type StyleSheet
textFieldColors props: positive, negative are mandatory and should be optional (?)

I had these problems too, and temporarily solved them by directly editing the components.d.ts file by adding these lines to the StyleSheet interface:
interface StyleSheet {
  ...
  backgroundImage?: ResponsiveProperty<string> | string;
  backgroundRepeat?: ResponsiveProperty<string> | string;
  backgroundSize?: ResponsiveProperty<string> | string;
  backgroundBlendMode?: ResponsiveProperty<string> | string;
  minHeight?: ResponsiveProperty<string> | string;
  ...
}

and I also had this problem in the Box component:

and also solved it temporarily by adding these lines in components.d.ts:
interface BoxProps {
    ...
    as?: string
}

declare const Box: React.ForwardRefExoticComponent<Pick<BoxProps, ... | "as"> & React.RefAttributes<unknown>>;

but for this problem I didn't find a way to solve:

Tag as on <Box /> is deprecated, use tag instead.

Another problem I encountered in today's class is that when you pass to <Box /> an onSubmit property:

and solved it by adding these lines in components.d.ts:
interface BoxProps {
    ...
    onSubmit?: (e: HTMLFormElement) => any;
}

declare const Box: React.ForwardRefExoticComponent<Pick<BoxProps, ... | "onSubmit"> & React.RefAttributes<unknown>>;

But even solving all these issues on my local machine, I still can't upload my project to vercel because it doesn't compile.

Another problem I encountered in today's class is that when you pass to <Box /> an onSubmit property:

and solved it by adding these lines in components.d.ts:
interface BoxProps {
    ...
    onSubmit?: (e: HTMLFormElement) => any;
}

declare const Box: React.ForwardRefExoticComponent<Pick<BoxProps, ... | "onSubmit"> & React.RefAttributes<unknown>>;

But even solving all these issues on my local machine, I still can't upload my project to vercel because it doesn't compile.

You can bypass that and deploy while onSubmit is not implemented by using the "Entrar" button onClick event.

Another problem I encountered in today's class is that when you pass to <Box /> an onSubmit property:

and solved it by adding these lines in components.d.ts:
interface BoxProps {
    ...
    onSubmit?: (e: HTMLFormElement) => any;
}

declare const Box: React.ForwardRefExoticComponent<Pick<BoxProps, ... | "onSubmit"> & React.RefAttributes<unknown>>;

But even solving all these issues on my local machine, I still can't upload my project to vercel because it doesn't compile.

You can bypass that while onSubmit is not implemented by using the "Entrar" button onClick event.

Actually, to bypass you can also use a // @ts-ignore  whenever you have a missing Type problem.
e.g.:
styleSheet={{
          ...
          // @ts-ignore
          maxHeight: '95vh',
        }}

This helped a lot, but I still have problems uploading the project to vercel


Add file_get_contents() & file_get_contents()

As I was looking at https://github.com/WPTRT/WordPress-Coding-Standards/pull/79 I realized I missed two functions.
This is also part of the Theme Check plugin and the VIP Scanner https://vip.wordpress.com/documentation/vip/code-review-what-we-look-for/#filesystem-writes
https://github.com/WordPress/theme-check/blob/master/checks/malware.php#L9
https://github.com/Automattic/vip-scanner/blob/master/vip-scanner/checks/VIPRestrictedCommandsCheck.php#L143
Ref: #633

You didn't miss file_get_contents() - it was already covered in the same file, in the group above it...

@jrfnl Yes, and I saw that as well, but it is for a different reason (fetching URLs). So it needs to be in both lists.

So it needs to be in both lists.

Good point. In that case the unit tests needs to be adjusted. file_get_contents() only needs to be in there once, but be set to expect two messages on that line.


LFS: unexpected EOF despite good integrity of the file on the server

Gitea version (or commit ref):
git-lfs/2.5.2
Git version:
git version 2.17.1
Operating system:
Ubuntu 18.04.1
Database (use [x]):

[x] PostgreSQL
[ ] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[x] Not relevant

Log gist:

git-lfs/2.5.2 (GitHub; linux amd64; go 1.10.3; git 8e3c5c93)
git version 2.17.1

$ git-lfs filter-process
Error downloading object: it/docs/jenkins/step1.jpg (c5e6043): Smudge error: Error downloading it/docs/jenkins/step1.jpg (c5e60437c9e7596445342c5adc91f6535e7565fab96ff200112ed8b2aabdbf47): cannot write data to tempfile "/home/zhongming/git/logi3/.git/lfs/incomplete/c5e60437c9e7596445342c5adc91f6535e7565fab96ff200112ed8b2aabdbf47.tmp": LFS: unexpected EOF

unexpected EOF
LFS
github.com/git-lfs/git-lfs/errors.newWrappedError
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/types.go:188
github.com/git-lfs/git-lfs/errors.NewRetriableError
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/types.go:363
github.com/git-lfs/git-lfs/tools.(*RetriableReader).Read
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tools/iotools.go:99
github.com/git-lfs/git-lfs/tools.(*HashingReader).Read
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tools/iotools.go:66
github.com/git-lfs/git-lfs/tools.(*CallbackReader).Read
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tools/copycallback.go:73
io.copyBuffer
        /usr/local/Cellar/go/1.10.3/libexec/src/io/io.go:400
io.Copy
        /usr/local/Cellar/go/1.10.3/libexec/src/io/io.go:362
github.com/git-lfs/git-lfs/tools.CopyWithCallback
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tools/iotools.go:39
github.com/git-lfs/git-lfs/tq.(*basicDownloadAdapter).download
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tq/basic_download.go:205
github.com/git-lfs/git-lfs/tq.(*basicDownloadAdapter).DoTransfer
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tq/basic_download.go:48
github.com/git-lfs/git-lfs/tq.(*adapterBase).worker
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tq/adapterbase.go:176
runtime.goexit
        /usr/local/Cellar/go/1.10.3/libexec/src/runtime/asm_amd64.s:2361
cannot write data to tempfile "/home/zhongming/git/logi3/.git/lfs/incomplete/c5e60437c9e7596445342c5adc91f6535e7565fab96ff200112ed8b2aabdbf47.tmp"
github.com/git-lfs/git-lfs/errors.newWrappedError
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/types.go:184
github.com/git-lfs/git-lfs/errors.Wrapf
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/errors.go:85
github.com/git-lfs/git-lfs/tq.(*basicDownloadAdapter).download
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tq/basic_download.go:207
github.com/git-lfs/git-lfs/tq.(*basicDownloadAdapter).DoTransfer
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tq/basic_download.go:48
github.com/git-lfs/git-lfs/tq.(*adapterBase).worker
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/tq/adapterbase.go:176
runtime.goexit
        /usr/local/Cellar/go/1.10.3/libexec/src/runtime/asm_amd64.s:2361
Error downloading it/docs/jenkins/step1.jpg (c5e60437c9e7596445342c5adc91f6535e7565fab96ff200112ed8b2aabdbf47)
github.com/git-lfs/git-lfs/errors.newWrappedError
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/types.go:184
github.com/git-lfs/git-lfs/errors.Wrapf
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/errors.go:85
github.com/git-lfs/git-lfs/lfs.(*GitFilter).downloadFile
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/lfs/gitfilter_smudge.go:110
github.com/git-lfs/git-lfs/lfs.(*GitFilter).Smudge
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/lfs/gitfilter_smudge.go:71
github.com/git-lfs/git-lfs/commands.smudge
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/commands/command_smudge.go:127
github.com/git-lfs/git-lfs/commands.filterCommand
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/commands/command_filter_process.go:118
github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra.(*Command).execute
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra/command.go:477
github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra.(*Command).Execute
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra/command.go:551
github.com/git-lfs/git-lfs/commands.Run
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/commands/run.go:77
main.main
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/git-lfs.go:35
runtime.main
        /usr/local/Cellar/go/1.10.3/libexec/src/runtime/proc.go:198
runtime.goexit
        /usr/local/Cellar/go/1.10.3/libexec/src/runtime/asm_amd64.s:2361
Smudge error
github.com/git-lfs/git-lfs/errors.newWrappedError
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/types.go:184
github.com/git-lfs/git-lfs/errors.NewSmudgeError
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/types.go:270
github.com/git-lfs/git-lfs/lfs.(*GitFilter).Smudge
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/lfs/gitfilter_smudge.go:80
github.com/git-lfs/git-lfs/commands.smudge
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/commands/command_smudge.go:127
github.com/git-lfs/git-lfs/commands.filterCommand
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/commands/command_filter_process.go:118
github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra.(*Command).execute
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra/command.go:477
github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra.(*Command).Execute
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/vendor/github.com/spf13/cobra/command.go:551
github.com/git-lfs/git-lfs/commands.Run
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/commands/run.go:77
main.main
        /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/git-lfs.go:35
runtime.main
        /usr/local/Cellar/go/1.10.3/libexec/src/runtime/proc.go:198
runtime.goexit
        /usr/local/Cellar/go/1.10.3/libexec/src/runtime/asm_amd64.s:2361

Current time in UTC:
2018-10-25 14:11:01

ENV:
LocalWorkingDir=/home/zhongming/git/logi3
LocalGitDir=/home/zhongming/git/logi3/.git
LocalGitStorageDir=/home/zhongming/git/logi3/.git
LocalMediaDir=/home/zhongming/git/logi3/.git/lfs/objects
LocalReferenceDirs=
TempDir=/home/zhongming/git/logi3/.git/lfs/tmp
ConcurrentTransfers=3
TusTransfers=false
BasicTransfersOnly=false
SkipDownloadErrors=false
FetchRecentAlways=false
FetchRecentRefsDays=7
FetchRecentCommitsDays=0
FetchRecentRefsIncludeRemotes=true
PruneOffsetDays=3
PruneVerifyRemoteAlways=false
PruneRemoteName=origin
LfsStorageDir=/home/zhongming/git/logi3/.git/lfs
AccessDownload=none
AccessUpload=none
DownloadTransfers=basic
UploadTransfers=basic
GIT_DIR=.git
GIT_PROMPT_ONLY_IN_REPO=1
GIT_BRANCH=master
__GIT_PROMPT_IGNORE_SUBMODULES__=1
__GIT_PROMPT_SHOW_CHANGED_FILES_COUNT=1
__GIT_PROMPT_SHOW_UPSTREAM=
__GIT_PROMPT_IGNORE_SUBMODULES=
__GIT_PROMPT_SHOW_UNTRACKED_FILES=normal
__GIT_PROMPT_IGNORE_STASH=

Description
I have a local gitea server set up at host http://git.corp.logiocean.com:3000.
I pushed an LFS-enabled repo, named logi to the gitea server. Everything worked fine until I tried git clone, which produced the above described error.
I pushed the same repo (at the same commit) to github and git clone from github, everything worked.
I have verified that the git commit hash on github and on my local gitea server are exactly the same.
I have also verified that the LFS file that failed to download are intact on the server. Here is how I verified it:

ssh into the server
go to the lfs data directory /home/git/data/lfs.
use the oid of the lfs file to locate the file.
use scp to copy the file in question to my own desktop and verified (using diff and other tools) that the size of the file and the content of the file are indeed intact.

I have searched for similar issues across this repo and in many other places. Have not found one with exactly the same syndrome.
Posting to hopefully help others who are having the same problem.
Any help would be much appreciated! Thanks in advance.

hmm... looking at your logs I see:  /Users/ttaylorr/go/src/github.com/git-lfs/git-lfs/errors/types.go:188. Are you running Gitea on a Mac?
I wonder if the file that's being downloaded to be smudged by git-lfs has the wrong line-endings?
git lfs install --skip-smudge

should allow you to skip the smudge action and interrogate the smudge files to check how they are formatted - although they might actually already be in your checkout for you to take a look at.

Gitea was running on a Ubuntu 18.04.1 server.
This issue happens for only a few files. I tried --skip-smudge and verified the content of the lfs object file. The file has exactly the same content as it should (verified by xxd and diff).
To get around this issue, I have removed those faulting files. Running out of ideas to try.

Are the faulting files proprietary? Would it be possible to post them so I could try them. Things that come to mind are:

Is there a buffer overrun/underrun problem? I.e. a file with the exact same length should also fail. These problems can be hard to find - but can be exploitable (!)
Is there a problem with something replacing part of the file. I.e. is something filtering out say the null bytes, or is the stream stopping too early due to null bytes.

The problem could be anywhere, but it's unlikely to be on your client end if you say it works for other providers. However it might be good to try a different client machine to see if it's restricted to a single client.


State of this project?

Hi! I'm begining to write some utilities that will be reaching a GraphQL endpoint with Haskell.
Do you plan to maintain this library in the future, and if not, could you recommend me another one I could use instead?
Thanks a lot

@tchoutri, I've actually been working on a graphql-client package that provides type-safe querying of GraphQL apis (in my case, the GitHub GraphQL api). It's currently a work-in-progress in a private repo, but as soon as I finish work on it and I get approval, I would like to move it out into an open-source repo and onto Hackage. Feel free to bug me every once in a while to see where I'm at.
As a sneak preview, the basic API I'm defining will look like this:
module Recordings where

{- TODO: This file will be generated from the .graphql file -}

type Query = GraphQL.Query Args Schema

data Args = Args
  { _query :: String
  , _first :: Maybe Int
  }

query :: Query
query = $(readGraphQLFile "Recordings.graphql")

type Schema = [schema|
  {
    "search": Maybe {
      "recordings": Maybe {
        "nodes": Maybe List Maybe {
          "title": Maybe Text,
          "artists": Maybe {
            "nodes": Maybe List Maybe {
              "name": Maybe Text,
            },
          },
          "video": Maybe Bool,
          "length": Maybe Duration,
          "rating": Maybe {
            "voteCount": Int,
            "value": Maybe Double,
          },
          "releases": Maybe {
            "nodes": Maybe List Maybe {
              "title": Maybe Text,
              "date": Maybe Date,
              "status": Maybe ReleaseStatus,
            },
          },
        },
      },
    },
  }
|]

query Recordings($query: String!, $first: Int) {
  search {
    recordings(query: $query, first: $first) {
      nodes {
        title
        artists {
          nodes {
            name
          }
        }
        video
        length
        rating {
          voteCount
          value
        }
        releases {
          nodes {
            title
            date
            status
          }
        }
      }
    }
  }
}

main = do
  result <- runQuery Recordings.query Recordings.Args
    { _query = song
    , _first = Just 5
    }
  forM_ [get| result.search!.recordings!.nodes![]! |] $ \song -> do
    print [get| song.title! |]
    print [get| song.artists!.nodes![]!.name! |]

@brandon-leapyear that sounds super neat! Thank you very much :)

Getting back to this project is something that's been in the back of my mind in the last few years. There were so many things left to be done, with so much promising prototyping, but there is always something else that takes more priority in my TODO list.
The main obstacle is that I haven't had a real need for this package anymore in my latest job roles, so it's hard for me to context switch into it.
I'd be open to transfer ownership if anyone is interested in developing it further, or you could always fork it :smile:

@jdnavarro I’d be interested in maintaining graphql. I’ve already done some work on it, implemented block strings and escape sequences in the strings, improved parser error messages (with megaparsec though instead of attoparsec).

@belka-ew that sounds awesome!
@jdnavarro what is your opinion on this?

For what it's worth, there is my fork: https://github.com/caraus-ecms/graphql
It's only a draft and should be treated as such. I'm experimenting currently, updating structure, moving stuff around.
But it passes all available tests now, i.e. has proper error handling and supports nullable values. I'm looking now for a reasonable way to work with GraphQL lists.
I'm also integrated it in a small JSON-API to see how it works in real life. So because of a lot small changes it's probably not usable yet, but if someone still wants to play with it, I'd be more than happy to see some bug reports with small, not working examples.

Thank you very much :)


.delivered_to method can't deal with multiple deliveredtos (and returns the wrong one)

deliveredto is quite a useful filter when you're forwarding from another email.
Unfortunately, the Delivered-To header information can occur more than once.
Currently, the deliveredto: returns just the first one (which tends to be the account you've forwarded 'to', where the most useful one is the account you forwarded 'from' which is where the original email was sent to.
Hope that makes sense, I'll have a look and see if it's straightforward.

Ok. this is a serious one... Because it sets that email in reply. Ignoring the reply settings in gmail.
i.e. it will send from the default send and won't send from the mail address it was coming into so behaviour is very different between gmail and the api here.

I suspect this is likely to get ugly
In order to set the reply sending email correctly you'd need to know whether the email is listed as a send_as address.
For that you need the email settings api as I can't see a way of doing it through the gmail api.
You might want to put a warning on the reply docs stating that this behaviour will happen in the short term.

Slihgt update on this. For what it's worth.
With the new google api client (0.9) email settings are now accessible through the gmail API.
this would make solving this a lot easier.


Website Icon "PathSphere" Not Visible in Dark Mode

Description
Issue Overview: The "PathSphere" website icon is not visible when the website is viewed in dark mode. This affects user experience, especially for those who prefer or are using dark mode settings.
Steps to Reproduce

Open the "PathSphere" website.
Switch to dark mode (or use a system/browser theme that supports dark mode).
Observe the icon on the navigation bar/header.

Expected Behavior
The "PathSphere" icon should be clearly visible in both light and dark modes, with appropriate contrast to the background.
Actual Behavior
In dark mode, the "PathSphere" icon blends into the background, making it difficult to see.
Screenshots

Additional Information
No response
What browser are you seeing the problem on?

[ ] Firefox
[X] Chrome
[ ] Safari
[ ] Microsoft Edge

Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I want to work on this issue. (optional)

this issue has been solved, so we are closing this issue.


Manually added "Tearing down the environment" section

This section has been manually added to guide-reactive-service-testing.

@jakub-pomykala to check status of this issue.

This issue can be closed as guide-reactive-service-testing has been connected to the GuideConverter.


PLEASE add a bit more documentation

The project seems awesome, most stuff work, but just I don't know how to actually use it. There is absolutely no documentation, and the way the react version works seems to be pretty different from the svelte version.
I just need to know how to render and read the JSON output. Nothing more.

This has been stale for a while now. We plan to move this into https://github.com/svecosystem and support it more actively!

@TGlide Hello, any update on this?


Add support for Microsemi Mi-V softcore

This PR adds support for Microsemi Mi-V soft core. The code has been tested on the M2GL025 IGLOO2 FPGA development board.
The PR adds three commits:
First one disables PLIC (RISC-V Platform Level Interrupt Controller) driver for the QEMU target. This is required because QEMU does not use PLIC. Without this change the second commit of this PR would not build for the QEMU target.
The second one moves RISC-V generic code from FE310 board to common folder, so it can be reused by other platforms.
Third commit adds support for Microsemi Mi-V softcore.
There are two things to discuss in this PR:

This PR does not add DTS support for the RISC-V boards. There is a PR open for qemu target which should be merged first (#7543)
We think that the riscv-privilege folder should be renamed to riscv-privileged as this is the correct name of the RISC-V ISA (https://riscv.org/specifications/privileged-isa/). Nonetheless, the renaming is not a part of this PR, but could be discussed here.

Codecov Report

Merging #8305 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #8305   +/-   ##
=======================================
  Coverage   64.53%   64.53%
=======================================
  Files         420      420
  Lines       40122    40122
  Branches     6763     6763
=======================================
  Hits        25892    25892
  Misses      11110    11110
  Partials     3120     3120

Continue to review full report at Codecov.

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


iOS landscape tabbar bug

Version
Tell us which versions you are using:

react-native-router-flux v4.0.0-beta.28" (v3 is not supported)
react-native v0.49.3

Expected behaviour
When I rotate iOS device from Portrait to Landscape mode, I expect tabbar to visually look normal, like on Portrait mode.
Actual behaviour
When iOS device is rotated from Portrait to Landscape, tabbar is "pushed down" and half of it cannot be seen. No styles are applied to Tabs component or any other components of this library.
Steps to reproduce
Run the example from Example folder. If you rotate iOS device to Landscape mode, you'll see that tabbar becomes smaller for some reason. It works okay on Android.

Okay, I've fixed it myself by adding height to style prop and paddingBottom to tabStyle prop on Tabs component.

@arnsa I'm having the same issue, can you provide the code you used to fix it ? Thank you. Also, you can reopen the issue, this can affect more people and it's not a normal behavior.


Fix ZeroDivisionError bug caused by Threads accidentally defaulting to 0

When I ran the command 'contentful-importer --configuration=settings.yml import-content-model' and associated commands without an explicit thread count, I'd get a ZeroDivisionError. This should fix that.

Thanks for your contribution!


setup/unit-tests: Add workflow that runs unit tests using github actions

What's this PR do?
#11
Summary of changes in this PR or what it accomplishes.
@ulises-jeremias @matiasz8
<!--

Please title your PR as follows: `feature: fix foo bar`.
Always start with the thing you are fixing, then describe the fix.
Don't use past tense (e.g. "fixed foo bar").

Explain what your PR does and why.

If you are adding a new function, please document it and add tests:

```
code you added/updated
```

If you are fixing a bug, please add a test that covers it.

Before submitting a PR, please:
  - specify the command to execute or steps to follow to know that the problem was solved

We try to process PRs as soon as possible. They should be handled within 24 hours.

Applying labels to PRs is not needed.

Thanks a lot for your contribution!

->

@sudojarvis can you fix the issues mentioned in the pre-commit check? I'll accept it after that 👌🏻

@ulises-jeremias could you please suggest the changes i need to make? I am asking because i am not sure i have done correctly.


ci: Fix repository check to avoid failed plans on contributor forks

What does this PR do?

Fix repository check to avoid failed plans on contributor forks

Motivation

External contributors do not have access to the secrets used to run plans, which results in a number of failed checks that are not actionable for them. I thought the previous check for forks solved this but it does not appear to be working as intended - using solution posted here https://github.com/actions/runner/issues/859

More

[ ] Yes, I have tested the PR using my local account setup  (Provide any test evidence report under Additional Notes)
[ ] Yes, I have added a new example under examples to support my PR
[ ] Yes, I have created another PR for add-ons under add-ons repo (if applicable)
[ ] Yes, I have updated the docs for this feature
[x] Yes, I ran pre-commit run -a with this PR

Note: Not all the PRs required examples and docs except a new pattern or add-on added.
For Moderators

[ ] E2E Test successfully complete before merge?

Additional Notes

looks like this is working as intended now https://github.com/aws-ia/terraform-aws-eks-blueprints/pull/535

nope - spoke to soon. hmmm


[CI:DOCS] Fix carriage returns in API v2 header

ReadTheDocs was wrapping lines and removing leading spaces unless there
a blank line in between.  This adds the blank lines to make the
examples more readable on https://docs.podman.io/en/latest/_static/api.html
Signed-off-by: TomSweeneyRedHat<EMAIL_ADDRESS>

LGTM, tests red though

Well I didn't expect that @mheon.  I'll try retesting, if that fails, any thoughts @baude?

/lgtm


(Dart.next) RegExp should support a const constructor

Too often in code reviews (just saw @lrhn's code review) we are instructing developers to avoid creating new RegExp('...') as a class-level or local field (I've even seen it in tight-loops!). Can the RegExp class support a const constructor that is canonicalized?
assert(identical(const RegExp('a-z'), const RegExp('a-z'));

(Even if the implementation for the VM is not-so, we'd like this in dart2js badly)
/cc @rakudrama

No.
The problem is that the RegExp constructor parses the string and throws if it isn't valid.
That's not something a const constructor can do. If instead the constructor only stores the string, and using the RegExp parses it, we have the problem that a const object can't update its state, so we have to parse it every time we use the RegExp (or use an Expando to store the extra state, which is an option, but not a very nice one for something that's not a big problem).
RegExp originally had a const constructor, but it was cheating and not really being const, which was a problem for some implementations, so we fixed it.
What would solve this problem is C-like local static variables. Then you could do:
String theFoo(String x) {
  static re = new RegExp("flimflamflupper");
  if (re.hasMatch(x)) return "Yey!";
  return "Nay!";
}

and the re variable initializer would only be executed once, the first time the function is executed.
I would support that :)

We could at least make the cost of repeated regexps cheaper. I did a small experiment and added a one-element cache, and my small benchmark improved from 3secs to 1.5secs. (Moving the regexp out of the loop yields 1sec).
realRun(list) {
  var counter = 0;
  for (String str in list) {
    var re = new RegExp(".*33.*");
    var match = re.firstMatch(str);
    if (match != null) counter++;
  }
  return counter;
}

run(list) {
  try {
    return realRun(list);
  } catch(e) {
  }
}
main(args) {
  var list = [];
  for (int i = 0; i < 10000; i++) {
    list.add(i.toString());
  }
  var sw = new Stopwatch()..start();
  for (int i = 0; i < 1000; i++) { run(list); }
  print(sw.elapsedMilliseconds);
}

$ git diff
diff --git a/sdk/lib/_internal/js_runtime/lib/regexp_helper.dart b/sdk/lib/_internal/js_runtime/lib/regexp_helper.dart
index 35a42d1c..379fcb3 100644
--- a/sdk/lib/_internal/js_runtime/lib/regexp_helper.dart
+++ b/sdk/lib/_internal/js_runtime/lib/regexp_helper.dart
@@ -79,12 +79,29 @@ class JSSyntaxRegExp implements RegExp {
   bool get _isMultiLine => JS("bool", "#.multiline", _nativeRegExp);
   bool get _isCaseSensitive => JS("bool", "!#.ignoreCase", _nativeRegExp);

+  static String lastSource = "";
+  static String lastModifiers = "";
+  static RegExp lastRegExp = JS('', r'new RegExp("", "")');
+
   static makeNative(
       String source, bool multiLine, bool caseSensitive, bool global) {
-    checkString(source);
     String m = multiLine == true ? 'm' : '';
     String i = caseSensitive == true ? '' : 'i';
     String g = global ? 'g' : '';
+    String modifiers = "$m$i$g";
+
+    if (lastSource == source && lastModifiers == modifiers) {
+      return lastRegExp;
+    }
+    var result = makeCheckedNative(source, modifiers);
+    lastSource = source;
+    lastModifiers = modifiers;
+    lastRegExp = result;
+    return result;
+  }
+
+  static makeCheckedNative(String source, String modifiers) {
+    checkString(source);
     // We're using the JavaScript's try catch instead of the Dart one to avoid
     // dragging in Dart runtime support just because of using RegExp.
     var regexp = JS('',
@@ -95,8 +112,8 @@ class JSSyntaxRegExp implements RegExp {
             } catch (e) {
               return e;
             }
-          })(#, # + # + #)''',
-        source, m, i, g);
+          })(#, #)''',
+        source, modifiers);
     if (JS('bool', '# instanceof RegExp', regexp)) return regexp;
     // The returned value is the JavaScript exception. Turn it into a
     // Dart exception.

/cc @sigmundch

@lrhn @floitschG - apologies that I don't have the full background, but have we considered letting the compiler fail with an error in cases where a const RegExp parsing would throw? It means duplicating the parsing/error checking of regexp in the compiler, but it's probably doable.
@rakudrama - could we treat new RegExp(constant) as a value we can GVN? In other words, in the example from Florian above, could we reach a point where we can do code motion and get the regexp out of the loop?

I think we should have RegExp literals. They are compact and can be compiled ahead of time. A compiler implementation can pattern match constructors and optimize them (with unpredictable reliability), but a literal gives a language level guarantee.
@lrhn  static should be an expression modifier:  static e.
It reduces cognitive overload by putting the value next to its use.
This relieves you of the hardest part: choosing a name.
It is syntax for introducing a new name and lazy initializer in the nearest static scope (class or top level).
    if (str.contains(static new RegExp('*.33.*'))) ...

    var re = static new RegExp('hipp*o'); // I insist on a name!

@sigmundch We could try GVN but my hopes are not high - you can only hoist a throwing operation out of a loop if it is the first observable effect.
@floitschG Interesting experiment. There is a similar implementation neutral experiment where you import "const_regexp.dart" and it shadows core.RegExp and uses an expando to do the lazy init of the delegate. There will be some difficulty in the runtime (e.g. String.replaceAll(Pattern p, String replacement) special-cases p is RegExp.)
A language feature that would help with this is a separate namepace for const and new constructors, so new const_regexp.RegExp is a factory redirecting to core.RegExp.

It's not a problem that String.replaceAll special-cases RegExp, you can just implement RegExp from dart:core. Example: https://dartpad.dartlang.org/3135557b3d3f6d000e6f9163709f6817

I'm personally opposed to baking RegExp grammar into the language grammar. It locks you into one specific RegExp dialect without really giving you anything except static checking. Adding static checking of RegExp constructor calls with String literals should be fairly easy for any source processing tool, the language doesn't need to do it.
Dart has raw strings, which makes RegExp writing much easier because you don't have to escape backslashes, so building RegExp literals into the language isn't as big an advantage as it is in, e.g., JavaScript.
The actualy problem that needs to be solved here is a way to only create one RegExp, even if the constructor is called more than once. Static expressions or static declarations could do that.
The workaround is to declare the regexp somewhere else, or use a caching factory function instead of new RegExp.

RegExp doesn't do anything with side-effects, it's just doing some precomputation... exactly the kind of thing that would be perfect for a constexpr... if C++ can do it, why not Dart? :-)

Because Dart's const is not C++'s const. The accidental syntax similarity should not be taken to mean anything at all.
The C++ const is about not having side-effects. It allows some optimizations of the runtime execution (typically moving the computation before or after other computations).
Dart's const is about being compile-time computable. We cannot write Dart code that validates the RegExp grammar without using some constructs that are not allowed in const code (e.g., loops).
Obviously we could special-case the RegExp constructor in the compiler and check anyway, but we have chosen not to do that (any more). It's a feature that the analyzer might want to consider, but it's not something we're going to put into the language.

@lrhn it's not about checking, it's about achieving RegExp caching without manually caching it. Consider code like:
static final reFoo = new RegExp("...");
foo(s) {
  reFoo.match(s);
}

void foo(s) {
  const RegExp("...").match(s);
}

Which of these two is easier to read? I would argue that foo is easier because regular expression is brought right next to the place which uses it.
Dart const expressions are severely limited to the point that they often can't be used for anything useful in compile time - contradicting their raison d'être to make things compile-time computable. We should learn from languages like D which just allow anything to run in compile time.

I don't disagree with @mraleph. The Dart const design is rather limited. It wasn't designed to make "things compile-time computable" in general, but to carve out a small subset of things that were so simple that making them compile-time computable was trivial. Within that design, we can't do the RegExp constructor because it actually checks the syntax. It is about checking - because const is about more than just ensuring that something is evaluated only once.
The const in Dart has three separate effects - compile-time/single computation, global canonicalization and immutability. In different cases it's being used for just one or two of these. This case is about the "compile-time/single computation". We don't really need (program wide) canonicalization, just that we don't compute the same value more than once at this particular point. If we had a feature that did just that, like the suggested static expr expression, there wouldn't be any need to make the RegExp constructor const, just (static new RegExp(r"...")).match(s).
(As a curiosity, JavaScript originally had a clause that allowed implementations to evaluate a RegExp literal only once and reuse the value. That was dropped in later versions because JavaScript RegExps are not actually immutable).
Dart only has const to address all these things, so that's why every problem is being expressed in terms of how const can solve it if we just extend it a bit more. I'm not generally  inclined to extend const (because it's a never ending story unless we do go for "run anything at compile time" - and boy, and I'm going to do compile-time computed Uint8Lists then!).
I would prefer to look for alternatives that directly solve the actual problems, not ways to make more things fit into the const solution.
Another solution is to guarantee that the implementation optimizes simple uses of a new RegExp(string-literal) well enough, so that it doesn't matter that you're technically supposed to create a new object.

We cannot write Dart code that validates the RegExp grammar without using some constructs that are not allowed in const code (e.g., loops).

We can first allow loops in const code, which is something we can do if we only allow loops that have no side-effects, and then we can write the Dart code to validate the RegExp grammar.

Dart's const is about being compile-time computable.

Loops are compile-time computable.

The Dart const design is rather limited.

The whole point of issues like this one and https://github.com/dart-lang/sdk/issues/29276 (which both probably depend on https://github.com/dart-lang/sdk/issues/29277) is to change that design. :-)

I would prefer to look for alternatives that directly solve the actual problems

That would be fine too. :-)

Loops were an example. I'm pretty sure a RegExp parser will require recursive function calls too. At that point, there isn't really anything left. Also, if you think of non-termination as a "side"-effect, loops and recursion both have that, even if their bodies seem safe. So, we're back to either keeping the const subset small or not having a subset - allowing everything as a compile-time evaluated code, with the obvious problem of not being able to determine whether compilation terminates.

Well there are definitely things that shouldn't be allowed, e.g. anything that does system calls.
I agree that allowing features that result in allowing non-termination is unsatisfactory. On the other hand, so is the fact that there's tons of classes that we can't make const just because they happen to take a RegExp, or because in debug mode they try to do an assert that involves a loop, or whatnot.

Maybe I misunderstand the non termination bit but why can't there be the compile time equivalent of a stack overflow error ?

Now, coming back to this issue, we may actually want to reconsider having a const constructor on RegExp.
It would be a different one from the eager constructor which checks the RegExp syntax up-front, say const RegExp.lazy, and it would just forward to a helper class like https://dartpad.dartlang.org/3135557b3d3f6d000e6f9163709f6817.
The reason to want that is that a const invocation of that constructor can be handled specially by AoT compilers, if provided with a known constant string. The compiler can actually compile the underlying RegExp into native code at compile-time (or just remember which FormatException to throw if the RegExp is invalid).
That said, we can do the same optimization for new RegExp(constantString), so that isn't new. We just can't use the existing constructor in a constant context.

Determining whether a loop runs forever, or it's just slow, is an undecidable problem, so it will be a heuristic, and it will likely allow significant time (because some real computations might need it).

In most cases giving every const call a second to compile should be enough. Additionally, the 1 second could be manually configurable by a parameter that's passed to the compiler so that the few cases where a programmer needs more than one second, they can tell the compiler.

It would be nice if match/hasMatch could also be used in const contexts, such as the following:
lib/env.dart
class Assert {
  const Assert(bool condition, [Object? message]) : assert(condition, message);
}

@Assert(bool.hasEnvironment('HTTP_PORT'))
@Assert(RegExp(r'^\d+$').hasMatch(httpPort)) // <--- RegExp Here
const httpPort = String.fromEnvironment('HTTP_PORT');

debug.env
HTTP_PORT=80

For more context on this concept https://github.com/dart-lang/build/issues/3574#issuecomment-2196523217.

The const sub-language does not allow calling methods or members in general.
We could allow some functions like we allow String.length. A constant RegExp should be something that we can emulate at compile-time by having the same RegExp implementation available in the compiler, since the object is immutable and methods have no side effects.
(We'd have to make sure there are no platform differences between RegExp implementations, otherwise compilers/analyzer won't necessarily agree with the runtime behavior.)
That said, there are no current plans to make the RegExp constructor contant. The current behavior does input validation which isn't possible in a const constructor, so the constructor wouldn't actually be a real constant constructor. It would just a constructor which could be called using const, triggering some specialized compiler behavior to simulate the current runtime behavior at compile-time.
That's something we otherwise try to avoid. The Symbol constructor is no longer validating for precisely that reason.
There are a bazillion things that could be nice to be able to do at compile-time. We try to not add arbitrary exceptions and special cases that need individual compiler support to the constant language, to keep it simple and consistently implementable accross all the tools.
In this case, this could work:
@Assert(int.fromEnvironment('HTTP_PORT', defaultValue: -1) >= 0, 'Invalid port: $httpPort')

The const sub-language does not allow calling methods or members in general.

@lrhn Is it hard or any obstacle to declare functions/methods to behave like const constructors?
Something like this:
// This syntax might colide with "return a constant boolean", allowing no-const operations.

// Here we are defining a function that can be called (or not) on const contexts, so only const operations are allowed
const bool equal(String foo, String bar) {
  // here we might be in a const context, so we can only run const operations
  // and const functions that can be resolved at compile time, like this one
  noOp(); // we can call this because is `const`
  return foo == bar; // allowed as a const operation
}

const void noOp() {}

void main(List<String> args) {
  final notConstFoo = equal('bar', 'test'); // executing in a non const context, fine
  final notConstFoo2 = equal(args.first, 'test'); // executing in a non const context, fine
  const errorNotConst = equal(args.first, 'test'); // error, can't execute this as const since input is not const
}

const input = 'const';
const result = equal(input, 'test');

Current const constructor behavior for comparison:
class Foo {
   // In const constructors we can only call const operations like the function `equals`
  // const Foo(String bar) : bar = bar.toUpperCase() ; // error
  const Foo(this.bar); // here we can only call const operations like the function `equals`
  final bar;
}

void main(List<String> args) {
  final notConstFoo = Foo('bar');  // executing in a non const context, fine
  final notConstFoo2 = Foo(args.first); // executing in a non const context, fine
  const errorNotConst = Foo(args.first); // error, can't execute this as const since bar is not const
}

const input = 'const';
const constFoo = Foo(input); // fine

C++ has gone down that road of compile-time function evaluation with its constexpr (the equivalent of Dart's const). It started with a lot of restrictions and gradually became more powerful. There's also a consteval keyword to force an expression to be evaluated at compile time (even if the result is used in a runtime context, e.g. stored in a mutable variable).

to behave like const constructors

One argument against const-functions is that they can't have any side-effects or mutable state. Or statements, really.
That means that anything other than the return expression is useless, so we might as well limit it to:
const int add(int a, int b) => a + b;

No loops, don't want divergent compile-time evaluaton.
The one thing it may be able to do is call another const function. But maybe not itself, we don't want unbounded recursion either, that's as good as a loop.
With extension types, you can write "functions" that work like constructors, because they are constructors:
extension type const strDefault(String _) implements String {
  const strDefault(String? input, [String defaultValue = ""]) => this._(input ?? defaultValue);
}
...
  const String s = strDefault(maybeString, "or not");

The invocation of the constructor must be const, not potentially constant, so the arguments must be constant.
It's remarkably little you can do with constant constructors, that you can't just write directly.

What about a sensible recursion limit that is tweakable ? Is this an issue in c++ ?


fix(pointcloud): Verify the data within intelligentFit pattern

:tada: This PR is included in version 1.20.0-alpha.7 :tada:
The release is available on npm package (@alpha dist-tag)
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.17.0-alpha.10 :tada:
The release is available on npm package (@alpha dist-tag)
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.13.0 :tada:
The release is available on npm package (@latest dist-tag)
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.20.0 :tada:
The release is available on npm package (@latest dist-tag)
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.17.0 :tada:
The release is available on npm package (@latest dist-tag)
Your semantic-release bot :package::rocket:


Crashing when open file/folder

When I try to unwrap a file or folder acode crashes. If you open a file through File Explorer, the file opens normally.

I don't know how, but everything is fixed


[async-update] current implementation broken

using freerdp from git on gentoo linux, kernel 4.15.16, everything up to date, tested with win7 and win8.1 servers.
top part of image gets corrupted (stale/old data visible), e.g. when moving windows around etc..
last build from 2018-04-04 13:12 works OK, so it must be some of last days' commits.
also some errors are logged, which don't appear in working old version. I'm not sure what the blocks they are referring to are used for, but my uneducated guess is that blocklen is wrongly calculated, because I don't think it is expecting huge, up to ~3GB packets?
i.e. the error messages are also a result of the bug in the code that was merged in the last few days.
full command line:
xfreerdp /multimon /codec-cache:rfx /sound:sys:alsa /microphone:sys:alsa /aero /heartbeat /clipboard /wallpaper /decorations /window-drag /menu-anims /multitransport /fonts /f /rfx /bpp:32 /cert-ignore /auto-reconnect /async-input /async-update /kbd:German (IBM) /drive:USBStorage,/mnt/USBStorage /v:XXX /u:XXX /from-stdin

thanks!

@sblive The error indicates that you receive invalid packages. This happens for windows 7 and 8.1?
Would you please attach a xfreerdp /buildconfig?

Thanks for your reply!
Yes, I tested by connecting to ~5 completely different machines, 4 of which were Win8.1 and one was Win7.
buildconfig from broken git build
This is FreeRDP version 2.0.0-dev2 (62f540812)
Build configuration: BUILD_TESTING=no BUILTIN_CHANNELS=ON HAVE_AIO_H=1 HAVE_EXECINFO_H=1 HAVE_FCNTL_H=1 HAVE_INTTYPES_H=1 HAVE_JOURNALD_H=TRUE HAVE_MATH_C99_LONG_DOUBLE=1 HAVE_POLL_H=1 HAVE_PTHREAD_MUTEX_TIMEDLOCK=ON HAVE_PTHREAD_MUTEX_TIMEDLOCK_LIB=1 HAVE_PTHREAD_MUTEX_TIMEDLOCK_SYMBOL= HAVE_SYSLOG_H=1 HAVE_SYS_EVENTFD_H=1 HAVE_SYS_FILIO_H= HAVE_SYS_MODEM_H= HAVE_SYS_SELECT_H=1 HAVE_SYS_SOCKIO_H= HAVE_SYS_STRTIO_H= HAVE_SYS_TIMERFD_H=1 HAVE_TM_GMTOFF=1 HAVE_UNISTD_H=1 HAVE_XI_TOUCH_CLASS=1 WITH_ALSA=yes WITH_CCACHE=OFF WITH_CHANNELS=ON WITH_CLIENT=yes WITH_CLIENT_AVAILABLE=1 WITH_CLIENT_CHANNELS=ON WITH_CLIENT_CHANNELS_AVAILABLE=1 WITH_CLIENT_COMMON=ON WITH_CLIENT_INTERFACE=OFF WITH_CUPS=no WITH_DEBUG_ALL=no WITH_DEBUG_CAPABILITIES=OFF WITH_DEBUG_CERTIFICATE=OFF WITH_DEBUG_CHANNELS=OFF WITH_DEBUG_CLIPRDR=OFF WITH_DEBUG_DVC=OFF WITH_DEBUG_KBD=OFF WITH_DEBUG_LICENSE=OFF WITH_DEBUG_MUTEX=OFF WITH_DEBUG_NEGO=OFF WITH_DEBUG_NLA=OFF WITH_DEBUG_NTLM=OFF WITH_DEBUG_RAIL=OFF WITH_DEBUG_RDP=OFF WITH_DEBUG_RDPDR=OFF WITH_DEBUG_RDPEI=OFF WITH_DEBUG_REDIR=OFF WITH_DEBUG_RFX=OFF WITH_DEBUG_RINGBUFFER=OFF WITH_DEBUG_SCARD=OFF WITH_DEBUG_SND=OFF WITH_DEBUG_SVC=OFF WITH_DEBUG_SYMBOLS=OFF WITH_DEBUG_THREADS=OFF WITH_DEBUG_TIMEZONE=OFF WITH_DEBUG_TRANSPORT=OFF WITH_DEBUG_TSG=OFF WITH_DEBUG_TSMF=OFF WITH_DEBUG_WND=OFF WITH_DEBUG_X11=OFF WITH_DEBUG_X11_CLIPRDR=OFF WITH_DEBUG_X11_LOCAL_MOVESIZE=OFF WITH_DEBUG_XV=OFF WITH_DIRECTFB=OFF WITH_EVENTFD_READ_WRITE=1 WITH_FFMPEG=yes WITH_GFX_H264=ON WITH_GPROF=OFF WITH_GSM=OFF WITH_GSSAPI=OFF WITH_GSTREAMER_0_10=OFF WITH_GSTREAMER_1_0=no WITH_ICU=OFF WITH_IPP=OFF WITH_JPEG=yes WITH_LIBRARY_VERSIONING=ON WITH_LIBSYSTEMD=yes WITH_MACAUDIO=OFF WITH_MACAUDIO=OFF WITH_MACAUDIO_AVAILABLE=0 WITH_MANPAGES=no WITH_MBEDTLS=OFF WITH_NEON=no WITH_OPENH264=no WITH_OPENSLES=OFF WITH_OPENSSL=ON WITH_OSS=ON WITH_PCSC=no WITH_PROFILER=OFF WITH_PULSE=no WITH_SAMPLE=OFF WITH_SANITIZE_ADDRESS=OFF WITH_SANITIZE_ADDRESS_AVAILABLE=1 WITH_SANITIZE_LEAK=OFF WITH_SANITIZE_LEAK_AVAILABLE=1 WITH_SERVER=no WITH_SERVER_INTERFACE=ON WITH_SMARTCARD_INSPECT=OFF WITH_SSE2=ON WITH_THIRD_PARTY=OFF WITH_VALGRIND_MEMCHECK=OFF WITH_VALGRIND_MEMCHECK_AVAILABLE=1 WITH_WAYLAND=no WITH_X11=yes WITH_X264=OFF WITH_XCURSOR=ON WITH_XEXT=ON WITH_XFIXES=ON WITH_XI=ON WITH_XINERAMA=yes WITH_XKBFILE=ON WITH_XRANDR=ON WITH_XRENDER=ON WITH_XSHM=ON WITH_XV=yes WITH_ZLIB=ON
Build type:          Gentoo
CFLAGS:              -march=skylake -mtune=skylake -fdiagnostics-color=always -O3 -pipe --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=256 -mmmx -mno-3dnow -msse -msse2 -msse3 -mssse3 -mno-sse4a -mcx16 -msahf -mmovbe -maes -mno-sha -mpclmul -mpopcnt -mabm -mno-lwp -mno-fma4 -mno-xop -mno-sgx -mno-tbm -msse4.2 -msse4.1 -mlzcnt -mno-rtm -mno-hle -mrdrnd -mfsgsbase -mrdseed -mprfchw -mfxsr -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mclflushopt -mno-avx512dq -mno-avx512bw -mno-avx512vl -mno-avx512ifma -mno-avx512vbmi -mno-avx5124fmaps -mno-avx5124vnniw -mno-clwb -mno-mwaitx -mno-clzero -mno-pku -mno-rdpid -mno-fma -mno-bmi -mno-bmi2 -mno-avx -mno-avx2 -mno-f16c -mno-adx -mno-xsave -mno-xsaveopt -mno-xsavec -mno-xsaves -fPIC -Wall -Wno-unused-result -Wno-unused-but-set-variable -Wno-deprecated-declarations -fvisibility=hidden -Wimplicit-function-declaration -Wredundant-decls -g
Compiler:            GNU, 7.3.0
Target architecture: x64

@sblive tested with the same commit as you did against windows 7 (also same parameters) and can't reproduce this issue.

by trying all the switches I narrowed it down to /async-update.
as soon as I remove it, it works again (i.e. no image corruption and no packet errors)
we have been using the above switches for years now and as I said it worked with the last build from 2018-04-04.
I don't know why you cannot reproduce it, I switched between versions and it's consistently broken for many different users, using a variety of machines, OS and even at home (this is actually my vacation week ;)) I can reproduce it connecting to my private machines, whiche are completely different from our work machines.

I tried to run with WLOG_LEVEL=DEBUG, but it produces a lot of output and I couldn't find the errors anymore, but now the image is usually corrupted from the start ("welcome" never disappears, until you blindly try to move windows).
So I added |grep ERROR -B100, and I only get this:
[17:12:41:356] [24446:24457] [ERROR][com.freerdp.codec] - rfx_process_message: invalid codecId 0x00
[17:12:43:021] [24446:24457] [ERROR][com.freerdp.codec] - rfx_process_message_region: invalid region type 0x0000
[17:12:43:021] [24446:24457] [ERROR][com.freerdp.codec] - rfx_process_message: packet too small for blocklen=3401646096
[17:12:57:363] [24446:24457] [ERROR][com.freerdp.codec] - zero blockLen
[17:12:57:363] [24446:24457] [ERROR][com.freerdp.codec] - zero blockLen
[17:12:57:363] [24446:24457] [ERROR][com.freerdp.codec] - zero blockLen
[17:12:57:363] [24446:24457] [ERROR][com.freerdp.codec] - zero blockLen

Could you try with #4518, that should fix a lot of issues with async-update

@sblive sorry, #4550 which is referenced is the pull, #4518 is just the corresponding issue.

#4550 is this issue and I do not see any patch either.
But I'm sorry to say I don't understand "which is referenced is [in?] the pull" either :(
I'm used to SVN mostly, I don't really have much git experience besides pulling...

OK, so #4530 it is ;)
I'm unable to mod the gentoo ebuild to checkout 64c739d09002ed638c34fc425af519b40e401246
According to https://devmanual.gentoo.org/eclass-reference/git-r3.eclass/index.html Gentoo I tried
freerdp_LIVE_BRANCH="order_refactor" emerge freerdp -j1 -Ob

(fails because there is no such branch in https://github.com/FreeRDP/FreeRDP.git)
and
freerdp_LIVE_COMMIT="64c739d09002ed638c34fc425af519b40e401246" emerge freerdp -j1 -Ob

(fails because of object IDs not found)
How can I find an https/git repo URL for akallabeth:order_refactor to use instead of https://github.com/FreeRDP/FreeRDP.git? Again, sorry for not knowing git enough.

@sblive Either read about checking out pull requests or you clone (or download the zip) from my repo

@akallabeth thanks, I now managed to mod the ebuild to use the order_refactor branch from your repo. I can confirm that this branch works with the same settings (i.e. incl. async-update) and without corruption like all the versions before around 2018-04-05 did. Latest git fc6780a8650ff3932c50f55181c3995be1fa92ad is still broken.

@sblive I'm really impressed someone was brave enough to use the async options actually.
They are quite broken (and only starting to work reliably after some refactoring)
The commits you reference have actually nothing to do with async-update but I can imaging you experienced issues (or lack thereof) as the bugs are non deterministic (that is the really great thing about this async stuff)

@akallabeth Glad, you're impressed ;)
Many examples use it and as I said it has been used daily here by many users for at least two years.
Maybe I'm understanding "non-deterministic" differently (non-native speaker), but shouldn't problems have happened as well over the 100+ versions we used during that time? We basically used almost all git versions (at least 3-5 pulls per week). It is 100% deterministicly broken for us in 0af63d4 and newer, emitting IMHO impossible blocklen values (if those are bytes) and I thought 0af63d4 changed some stuff regarding that.
So will the order_refactoring be merged any time soon?
From your reply it appears that async-update is low-prio and we are suppposed to not use it (currently we reverted to 7f6103e where it works)

@sblive Problem is that the issue has many variables that need to be met to expose that behaviour. While it may very well be hidden in your deployment, the issue is still there.
I'm hoping to get this to the next rc (or 2.0) but it is up to the other devs to review and merge.
Anyway, any specific reason you need this option?

@akallabeth I see, thanks. I don't remember the reason, but I'm sure there was one for adding it a few years ago (months of testing/evaluation before production), because I remember trying different switches for hours. Apparently it's not really necessary anymore.
What is it supposed to do anyway? FreeRDP feature to draw in background (async) while RDP stream continues or is it something RDP protocol specific?


Fix NULLIF syntax so it generates functional SQL

The correct syntax for NULLIF is:
SELECT NULLIF("foo",0) FROM "abc"

Instead of:
SELECT NULLIF("foo"=0) FROM "abc"

Coverage remained the same at 97.948% when pulling 9212c5dfa8316a7680ec4ab94529bc062f88a499 on akmiller01:fix/nullif-syntax into d99285485f993de2c37f9c4e272bb262b36e9ac0 on kayak:master.

Coverage remained the same at 97.948% when pulling 9212c5dfa8316a7680ec4ab94529bc062f88a499 on akmiller01:fix/nullif-syntax into d99285485f993de2c37f9c4e272bb262b36e9ac0 on kayak:master.

Thanks for fixing this. Will publish a new version with the fix soon.


Dependency not satisfied using pipenv and pip

Rasa version: 1.10.2
Python version: 3.9.0
Operating system (windows, osx, ...): Linux Fedora 33
Issue:
pipenv uses pip to install rasa and dependencies. But it fails with tensorflow-addons and/or tensorflow.
Error (including full traceback):
Using /usr/bin/python3 (3.9.0) to create virtualenv…
⠦ Creating virtual environment...created virtual environment CPython3.9.0.final.0-64 in 361ms
  creator CPython3Posix(dest=/home/metal3d/.local/share/virtualenvs/chief-S9u05a4l, clear=False, global=False)
  seeder FromAppData(extra_search_dir=/usr/share/python-wheels,download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/metal3d/.local/share/virtualenv)
    added seed packages: pip==20.2.2, setuptools==49.1.3, wheel==0.34.2
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator

✔ Successfully created virtual environment!
Virtualenv location: /home/metal3d/.local/share/virtualenvs/chief-S9u05a4l
Creating a Pipfile for this project…
Installing rasa…
Error:  An error occurred while installing rasa!
Error text: Collecting rasa
  Downloading rasa-1.10.2-py3-none-any.whl (510 kB)
Collecting oauth2client==4.1.3
  Downloading oauth2client-4.1.3-py2.py3-none-any.whl (98 kB)
Collecting ujson<3.0,>=1.35
  Downloading ujson-2.0.3.tar.gz (7.1 MB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
    Preparing wheel metadata: started
    Preparing wheel metadata: finished with status 'done'
Collecting python-telegram-bot<13.0,>=11.1
  Downloading python_telegram_bot-12.8-py2.py3-none-any.whl (375 kB)
Collecting colorclass<2.3,>=2.2
  Downloading colorclass-2.2.0.tar.gz (17 kB)
Collecting matplotlib<3.3,>=3.1
  Downloading matplotlib-3.2.2.tar.gz (40.3 MB)
Collecting numpy<2.0,>=1.16
  Using cached numpy-1.19.4-cp39-cp39-manylinux2010_x86_64.whl (14.5 MB)
Collecting packaging<21.0,>=20.0
  Downloading packaging-20.7-py2.py3-none-any.whl (35 kB)
Requirement already satisfied, skipping upgrade: setuptools>=41.0.0 in /home/metal3d/.local/share/virtualenvs/chief-S9u05a4l/lib/python3.9/site-packages (from rasa->-r /tmp/pipenv-m4qy0n5o-requirements/pipenv-i0npd9t2-requirement.txt (line 1)) (49.1.3)
Collecting slackclient<3.0.0,>=2.0.0
  Downloading slackclient-2.9.3-py2.py3-none-any.whl (96 kB)
Collecting psycopg2-binary<2.9.0,>=2.8.2
  Downloading psycopg2_binary-2.8.6-cp39-cp39-manylinux1_x86_64.whl (3.0 MB)
Collecting multidict<5.0,>=4.6
  Downloading multidict-4.7.6.tar.gz (50 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
    Preparing wheel metadata: started
    Preparing wheel metadata: finished with status 'done'
Collecting tensorflow_hub<0.9,>=0.7
  Downloading tensorflow_hub-0.8.0-py2.py3-none-any.whl (101 kB)
Collecting tqdm<4.46,>=4.31
  Downloading tqdm-4.45.0-py2.py3-none-any.whl (60 kB)
Collecting jsonpickle<1.5,>=1.3
  Downloading jsonpickle-1.4.2-py2.py3-none-any.whl (36 kB)
Collecting pymongo[srv,tls]<3.9.0,>=3.8.0
  Downloading pymongo-3.8.0.tar.gz (649 kB)
Collecting gevent<1.6,>=1.4
  Downloading gevent-1.5.0.tar.gz (5.3 MB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
    Preparing wheel metadata: started
    Preparing wheel metadata: finished with status 'done'
Collecting python-socketio<4.6,>=4.4
  Downloading python_socketio-4.5.1-py2.py3-none-any.whl (51 kB)
Collecting fbmessenger<6.1.0,>=6.0.0
  Downloading fbmessenger-6.0.0-py2.py3-none-any.whl (11 kB)
Collecting terminaltables<3.2.0,>=3.1.0
  Downloading terminaltables-3.1.0.tar.gz (12 kB)
Collecting apscheduler<3.7,>=3.6
  Downloading APScheduler-3.6.3-py2.py3-none-any.whl (58 kB)

ERROR: Could not find a version that satisfies the requirement tensorflow-addons<0.8.0,>=0.7.1 (from rasa->-r /tmp/pipenv-m4qy0n5o-requirements/pipenv-i0npd9t2-requirement.txt (line 1)) (from versions: none)
ERROR: No matching distribution found for tensorflow-addons<0.8.0,>=0.7.1 (from rasa->-r /tmp/pipenv-m4qy0n5o-requirements/pipenv-i0npd9t2-requirement.txt (line 1))

With pip:
pip install rasa
Collecting rasa
  Downloading rasa-1.10.2-py3-none-any.whl (510 kB)
     |████████████████████████████████| 510 kB 4.0 MB/s
ERROR: Could not find a version that satisfies the requirement tensorflow<2.2,>=2.1 (from rasa) (from versions: none)
ERROR: No matching distribution found for tensorflow<2.2,>=2.1 (from rasa)
WARNING: You are using pip version 20.2.2; however, version 20.3.1 is available.
You should consider upgrading via the '/home/metal3d/Projects/bots/chief/v/bin/python -m pip install --upgrade pip' command.

Command or request that led to error:
pipenv install rasa
# or
python -m venv v
source v/bin/activate
pip install rasa

It seems that the problem is the Python version, using python 3.7 seems to be better excepting the same problem than #7124 issue.

Thanks for the issue, @b-quachtran will get back to you about it soon!
You may find help in the docs and the forum, too 🤗

Actually, with Python 3.8 it works better, one more time the pipenv lock problem is here. Maybe the latest version of rasa is not compatible with Python 3.7 (training crashes,, maybe TF is not compatible)

Python 3.8, always the same problem:
ERROR: Could not find a version that matches multidict<5.0,<6.0,>=4.5,>=4.6,>=5.0 (from rasa==2.2.2->-r /tmp/pipenv21z1ts36requirements/pipenv-_f_5hfg5-constraints.txt (line 5))
Tried: 1.0.1, 1.0.2, 1.0.3, 1.1.0, 1.2.0, 1.2.1, 1.2.2, 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.1.6, 3.0.0, 3.1.0, 3.1.1, 3.1.3, 3.2.0, 3.3.0, 3.3.1, 3.3.2, 4.0.0, 4.1.0, 4.2.0, 4.3.0, 4.3.1, 4.4.0, 4.4.1, 4.4.2, 4.5.0, 4.5.1, 4.5.2, 4.6.0, 4.6.0, 4.6.1, 4.6.1, 4.7.0, 4.7.1, 4.7.1, 4.7.2, 4.7.2, 4.7.3, 4.7.3, 4.7.4, 4.7.4, 4.7.5, 4.7.5, 4.7.6, 4.7.6, 5.0.0, 5.0.0, 5.0.1, 5.0.1, 5.0.2, 5.0.2, 5.1.0, 5.1.0
Skipped pre-versions: 1.0.0a0, 1.1.0b1, 1.1.0b2, 1.1.0b4, 1.1.0b5, 1.1.0b6, 1.1.0b7, 1.1.0b8, 3.1.3a0, 3.1.4a1, 3.1.4a2, 3.1.4a3, 3.2.0a3, 3.2.1a0, 4.4.0a0, 4.4.0a1, 4.4.0a2, 4.4.0a3, 4.4.0a4, 4.4.0a5, 4.4.0a6, 4.4.0a7, 4.4.0a8, 4.4.0a9, 4.4.0a10, 4.4.0a11, 4.4.0a12, 4.4.0a13, 4.4.0a14, 4.4.0a15, 4.4.0a16, 4.4.0a17, 4.4.0a18, 4.4.0a19, 4.4.0a20, 4.4.0a21, 4.4.0a22, 4.4.0a23, 4.4.0a24, 4.4.0a25, 4.4.0a26, 4.4.0a27, 4.4.0a28, 4.4.0a29, 4.4.0a30, 4.4.0a31, 4.4.0a32, 4.4.0a33, 4.4.0a34, 4.4.0a35, 4.4.0a36, 4.4.0a37, 4.4.0a38, 4.4.0a39, 4.4.0a40, 4.4.0a42, 4.6.0a2, 4.6.0a2, 4.6.0a3, 4.6.0a3
There are incompatible versions in the resolved dependencies:
  multidict<5.0,>=4.5 (from aiohttp==3.6.3->rasa==2.2.2->-r /tmp/pipenv21z1ts36requirements/pipenv-_f_5hfg5-constraints.txt (line 5))
  multidict<5.0,>=4.6 (from rasa==2.2.2->-r /tmp/pipenv21z1ts36requirements/pipenv-_f_5hfg5-constraints.txt (line 5))
  multidict<6.0,>=5.0 (from sanic==20.12.0->rasa-sdk==2.2.0->-r /tmp/pipenv21z1ts36requirements/pipenv-_f_5hfg5-constraints.txt (line 4))

Rasa 1.10 is only compatible with Python <3.8, have you been able to try with 3.7?

Rasa 1.10 is only compatible with Python <3.8, have you been able to try with 3.7?

closing as this is a won't fix and Ben answered it.

closing as this is a won't fix and Ben answered it.


Log in animation

Do you restore previous view if loading gets an error?

Page gets reloaded if the wrong credentials are typed in.
Also, the form is empty when showed in iframe. There is nothing we can do about it. (we don't know username) but it's still better than a blank screen.

Could we please discuss #185?

I get it, you just fake it, right? You do redirect anyway but to avoid blank screen you render login. Is this correct?

I get it, you just fake it, right? You do redirect anyway but to avoid blank screen you render login. Is this correct?

Yes, correct and I handled all cases of the blank screen.


[EN Boolean/Choice] Add 'N' as a possble false answer to Choice.

This pull request updates Text/English/Choice to recognize "N" for false (in addition to no, nope, etc.).

I'm sorry, I can't sign the CLA on behalf of my employer. You might proceed with this as a de minimis contribution, or I can cancel the pull request and resubmit this as an issue for someone else to implement.
Please advise.


Forward Rendering Pipeline

Create a robust rendering pipeline for v0.2.0 of the engine.
Characteristics

[ ] Renders the landscape.
[ ] Renders multiple agents.
[ ] Can optionally render vertex normals.
[ ] Frustum Culling
[ ] Ambient Lightning (Objects are just visible)
[ ] Point and Directed Lighting (Objects are lit by lights).

Rendering Architecture
Renderer Style: Forward Rendering
Render Graphs/Frame Graphs

Original Render Graph GDC Talk
Render Graph 101
Why Talking About Render Graphs
GFX Frame Graph Resources
Render graphs and Vulkan — a deep dive

Bindless Rendering

WebGPU Investigation
WebGPU Bindless Tracking Issue
Bindless rendering

Considerations

Leverage GPU render bundles and draw instance calls.

Javascript Example
WebGPU Render Bundle best practices
Z coordinates in WebGPU
Depth Precision Visualized

GPU Lines
https://arxiv.org/pdf/2405.00127

Consider ways of simplifying  the complexity of working with buffers and uniforms.
The Frame Graph/Render Graph pattern seems like it might be a good fit for what I want to do.
A thought is have "nodes" that are declared in a similar fashion to data classes but generate the boilerplate of working with buffers an uniforms.
For example, something the like below.
def uniform(cls):
    class Uniform(cls):
        custom_attr = 42
    return Uniform

@uniform
class MyRenderNode:
    pass

The idea being that the class decorator will dynamically add boilerplate attributes and methods to classes.
See Real Python's article on Metaclasses for other techniques.

On eventually scaling the engine to enable parallel processing on tasks.
Current Challenge
A Task in Python is a coroutine. Coroutines cannot be pickled and shared across processes. This is currently a blocker for migrating the existing Task based implementation to work across multiple worker processes.
Key Question
Could tasks be defined through the combination of data and function pointers?
The idea that data that is changing can be serialized and passed between various worker systems in a thread safe way.
Either a function pointer or some other way (magical thinking) of referencing the code to run could be passed around.
Exploration


How to set default values to ReactImageAnnotate and get coordinates array on save?

How can i set default values to ReactImageAnnotate from api?, and also how to can get the annoted values from this so i can post to the api

these questions are incredibly unclear, please be more specific and provide code samples/demo

hey did you get this issue resolved i am facing the same?


Does this support iOS 8 and iOS9?

Does this support iOS 8 and iOS9?

Yes, share extension is introduced by apple in ios 8. so technically you can use it. I'm gonna close this but do you mind explaining why are you asking this?

Great.  I ask because I'm using another module that seems to be crashing my
app when used on iOS 9.  I just wanted to make sure before I spent the time
to switch over to this module.
On Mon, Aug 21, 2017 at 1:58 PM Ali Najafizadeh<EMAIL_ADDRESS>wrote:

Yes, share extension is introduced by apple in ios 8. so technically you
can use it. I'm gonna close this but do you mind explaining why are you
asking this?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/alinz/react-native-share-extension/issues/54#issuecomment-323823612,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZnGSQQ_-CP3wraegR6_WYorZeIUbhLks5sadNGgaJpZM4O9jX0
.

remember one thing, share extension doesn't support some native modules, such as Notification. So when you are using it, make sure that you are not loading any native modules. look into this https://github.com/alinz/react-native-share-extension/issues/48#issuecomment-317587122