update hybridnet chart to 0.5.9

Pull Request Description
Describe what this PR does / why we need it

Update image to v0.7.6
Add unified label for all the components

Does this pull request fix one issue?

NONE
Describe how you did it
Describe how to verify it
Special notes for reviews

Codecov Report
Base: 41.17% // Head: 41.10% // Decreases project coverage by -0.07% :warning:

Coverage data is based on head (d7933e3) compared to base (ce440c9).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #345      +/-   ##
==========================================
- Coverage   41.17%   41.10%   -0.08%
==========================================
  Files          43       43
  Lines        2776     2776
==========================================
- Hits         1143     1141       -2
- Misses       1518     1519       +1
- Partials      115      116       +1

Flag
Coverage Δ

unittests
41.10% <ø> (-0.08%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

.../controllers/networking/subnetstatus_controller.go
91.83% <0.00%> (-4.09%)
:arrow_down:

pkg/controllers/networking/quota_controller.go
84.00% <0.00%> (-4.00%)
:arrow_down:

pkg/controllers/networking/ipam.go
77.41% <0.00%> (+6.45%)
:arrow_up:

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

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


xcode 源码调试报错 No such module 'connectivity_macos'

经过此问题后：https://github.com/openkraken/kraken/issues/203#event-4634920700
在 Xcode 中运行 macos 报错

请问直接 flutter run -d macos 能运行吗？

先 flutter run -d macos 跑起来，然后 xcode 就可以构建了

可以跑起来  但是用 xcode 运行不起来

打开的是 xworkspace 文件，而不是 xcodeproj 文件

it's work  thx

flutter run 可以跑起来
但是flutter build ios
Building com.openkraken.krakenExample for device (ios-release)...
Warning: Missing build name (CFBundleShortVersionString).
Warning: Missing build number (CFBundleVersion).
Action Required: You must set a build name and number in the pubspec.yaml file version field before submitting to the App
Store.
Signing iOS app for device deployment using developer identity: "Apple Development: shijian chen (MJGM2L2E56)"
Running Xcode build...
 └─Compiling, linking and signing...                      1,417ms
Xcode build done.                                            6.9s
Failed to build iOS app
Error output from Xcode build:
↳
    2021-07-14 17:41:07.249 xcodebuild[75858:23624846] CFURLRequestSetHTTPCookieStorageAcceptPolicy_block_invoke: no
    longer implemented and should not be called
    ** BUILD FAILED **

Xcode's output:
↳
    /Users/chenshijian/code/ele-20201214/app/kraken/example/ios/Runner/GeneratedPluginRegistrant.m:10:9: fatal error:
    module 'connectivity' not found
    @import connectivity;
     ~~~~~~~^~~~~~~~~~~~
    1 error generated.
    note: Using new build system
    note: Building targets in parallel
    note: Planning build
    note: Analyzing workspace
    note: Constructing build description
    note: Build preparation complete

Encountered error while building for device.


win10 open a "New admin tab" error codes, System language is Chinese

Hi !
The Error-Message , on the screen was caused by entering some invalid PowerShell command. Could you try to start Windows Powershell directly (enter 'Windows Powershell' in serach tab and start) and retry the input, is the output the same (some chineese message), currently it looks not like an app issue.
I must admit the error-message on my PS is definitely longer.
but maybe chineese is much more compact :)

PS C:\Users\QXXXXXX> ssssssssssssssssssssssssssssssssssss
ssssssssssssssssssssssssssssssssssss : The term 'ssssssssssssssssssssssssssssssssssss' is not recognized as the name of a cmdlet,
function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and
try again.
At line:1 char:1

ssssssssssssssssssssssssssssssssssss

  + CategoryInfo          : ObjectNotFound: (ssssssssssssssssssssssssssssssssssss:String) [], CommandNotFoundException
  + FullyQualifiedErrorId : CommandNotFoundException

Thanks a lot for your response. May be I'm not describe the question details enough. I have do test again with your advice.

Open Windows Power Shell directly and compare with it open by "New admin tab", then execute "ls".

The question are occured by open a tab with "New admin tab", either PS or cmd and git-bash.  If open tab with general user, it works fine.

Here are my terminus version:
Version: 1.0.112
Platform: win32 10.0.18362
Plugins: none

Now when I open a New Admin window a Non-Modal Dialog pops up to approve to enable the System Privileges

The question now is, do you have system/admin privs as logged user? maybe that is the root cause, as this is the only
difference to open a user - window.

Yes, that's the problem. My logged user have no admin privs. When I start terminus by administrator, it's works fine. Thanks!


ARROW-3549: [Rust] Replace i64 with usize for some bit utility functions

We currently use i64 in some bit utility functions. This can be replaced by usize to avoid unnecessary type conversions and invalid argument.

cc @kszucs @crepererum @paddyhoran @andygrove . Could you review this PR? Thanks.

I think the asserts should be tested (maybe in another PR), but otherwise that looks good. Thank you.

Thanks for reviewing and merging! will add the assertion test in a future PR.


[SPARK-32205][SQL] Writing timestamp to mysql should be datetime type

What changes were proposed in this pull request?

Change date type from TIMESTAMP to DATETIME in mysql at org.apache.spark.sql.jdbc.MySQLDialect#getJDBCType
Add UT in org.apache.spark.sql.test.SQLTestUtils#test .

Why are the changes needed?
Because write spark timestamp to mysql should has a '1000-01-01 00:00:00' to '9999-12-31 23:59:59' range.
see https://dev.mysql.com/doc/refman/5.7/en/datetime.html
While the date type in mysql should be datetime rather than timestamp.
Before this patch, when we use timestamp data type in mysql by auto created table：
sql("select cast('1111-01-01 00:00:01' as timestamp)").toDF("ts").write.mode("append").jdbc("jdbc:mysql://localhost:3306/test", "ts_test3",prop)
we will get an exception：
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect datetime value: '1111-01-01 00:00:01' for column 'ts' at row
Does this PR introduce any user-facing change?
Yes, after this patch, people could insert '1000-01-01 00:00:00' to '9999-12-31 23:59:59' range timestamp to mysql DATETIME column rather than TIMESTAMP column because TIMESTAMP in mysql not have the same range in spark by table auto created.
How was this patch tested?
Unit test.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

@srowen Could you please help me check this PR : )

@TJX2014 Seems MySQL TIMESTAMP is affected by the time_zone setting but DATETIME is not (https://www.tech-recipes.com/rx/22599/mysql-datetime-vs-timestamp-data-type/). I think you will lose the time_zone info if you use DATETIME for TIMESTAMP.

Yeah DATETIME is definitely not the same thing as TIMESTAMP. You need to start with a Spark date-time type, logically.

@huaxingao @srowen Sure, DATETIME and TIMESTAMP seems both have 8 bytes, while DATE only 4 bytes, the only thing different in mysql seems is timezone index.

... that is a very significant difference in what the 8 bytes mean!

@srowen So could we use datetime in mysql dialect, the zoneinfo seems should be considered in mysql side.

@TJX2014 Actually, regardless of time zone, map timestamp to datetime in mysql dialect  doesn't seem to solve your problem.
Suppose you create a table with a timestamp column
CREATE TABLE test (c timestamp);
You want to insert a timestamp '1111-01-01 00:00:01' to TABLE test.
Before your fix, when inserting this timestamp '1111-01-01 00:00:01' to table test, mysql JDBC driver does the range check for this timestamp value and throw Exception because timestamp '1111-01-01 00:00:01' is not valid (mysql TIMESTAMP has a range of '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC)
After your fix, when inserting this timestamp '1111-01-01 00:00:01' to table test, since you change the data type to datetime now, mysql JDBC driver doesn't throw Exception since '1111-01-01 00:00:01' is a valid datetime value, but when inserting this value into table test, because the real type of column c is timestamp, mysql will throw Exception since '1111-01-01 00:00:01' is not a valid timestamp value.
I don't have mysql database and JDBC driver on my local to test this, but in theory it works this way. You may want to try to see if you can insert this timestamp '1111-01-01 00:00:01' OK.

@huaxingao Thank you for your detail response. Actually, Timestamp in spark has the range is '0001-01-01T00:00:00.000000Z, 9999-12-31T23:59:59.999999Z', see org.apache.spark.sql.types.TimestampType(8 bytes), and the relative Datetype seems should be datetime (8 bytes), not the timestamp, only 4 bytes and have a small range '1970-01-01 00:00:01.000000' to '2038-01-19 03:14:07.999999'.

Yeah DATETIME is definitely not the same thing as TIMESTAMP. You need to start with a Spark date-time type, logically.

Hi, @srowen
Thank you for your response.
The range of date-time type in spark is [0001-01-01, 9999-12-31], which is ignore hour, min, sec...，is it what you mean ?

I think the point is, you would lose time zone information writing as DATETIME, right?

@srowen  The zone info is according to local zone of mysql, it seems we should not consider it as timezone loss. The different between DATETIME and TIMESTAMP is zone index rather than loss it and it belongs to mysql design.

@srowen @huaxingao Thank you for your response, the main issue resolved by this PR is ``

@TJX2014
I am still not convinced that it's a good idea to map TimeStamp to DateTime in MySQLDialect. Using an example similar to yours:
sql("select cast('1970-01-01 00:00:01' as timestamp)").toDF("ts").write.mode("append").jdbc("jdbc:mysql://localhost:3306/test", "ts_test3",prop)

Since user explicitly cast string to timestamp, I would think that the user wants to insert 1970-01-0 00:00:01 as a TimeStamp data type. Suppose the current time zone on mysql server is america/los_angeles. After the data is inserted to mysql, if the user changes the time zone setting
SET TIME_ZONE = "america/new_york";
Then the user would expect to get 1970-01-01 03:00:01 when retrieving the timestamp. But with this patch, we silently change the data type from TimeStamp to DateTime, after user insert the timestamp and change the time zone setting, user will still get 1970-01-0 00:00:01 which is not the correct value.

@huaxingao
Yeah, One of these could happen when user use mysql client in spark to execute SET TIME_ZONE = "america/new_york" to use mysql timezone index feature between DATETIME and TIMESTAMP. if this behavior used outside of spark, because of session state param, will have no effect. Seems if it is a problem, should be solved in mysql side.


Getting segfault in SteamApi_RunCallbacks after lobby_match_list in mingw compiled version with patch

I'll compile with msvc and compare.
Here's the gdb stack trace for the segfault:
[Thread 5620.0x62bc exited with code 0]

Thread 1 "MainThrd" received signal SIGSEGV, Segmentation fault.
0x00007ffb7dabc444 in steamclient64!hid_write_output_report ()
   from D:\Programs\Steam\steamclient64.dll
(gdb) bt
#0  0x00007ffb7dabc444 in steamclient64!hid_write_output_report ()
   from D:\Programs\Steam\steamclient64.dll
#1  0x00007ffb7da694e3 in steamclient64!hid_write_output_report ()
   from D:\Programs\Steam\steamclient64.dll
#2  0x000000000065abe8 in Steam::_lobby_match_list (this=0x41e748a0,
    callData=0x2d73ceb0, bIOFailure=false)
    at modules/godotsteam/godotsteam.cpp:3656
#3  0x0000000002212d3e in CCallResult<Steam, LobbyMatchList_t>::Run (
    this=0x41e75890, pvParam=0x2d73ceb0)
    at modules/godotsteam/sdk/public/steam/steam_api_internal.h:132
#4  0x00007ffbce474079 in steam_api64!SteamAPI_servernetadr_t_SetQueryPort ()
   from D:\gamedev\debt-civ\godot\bin\steam_api64.dll
#5  0x00007ffbce473e04 in steam_api64!SteamAPI_servernetadr_t_SetQueryPort ()
   from D:\gamedev\debt-civ\godot\bin\steam_api64.dll
#6  0x00007ffbce473bb7 in steam_api64!SteamAPI_servernetadr_t_SetQueryPort ()
   from D:\gamedev\debt-civ\godot\bin\steam_api64.dll
#7  0x00007ffbce473ae9 in steam_api64!SteamAPI_servernetadr_t_SetQueryPort ()
   from D:\gamedev\debt-civ\godot\bin\steam_api64.dll
#8  0x00007ffbce4773b9 in steam_api64!SteamAPI_RunCallbacks ()
   from D:\gamedev\debt-civ\godot\bin\steam_api64.dll
#9  0x00000000029bc175 in Steam::run_callbacks (this=0x41e748a0)
    at modules/godotsteam/godotsteam.h:949
#10 0x0000000002249f88 in MethodBind0::ptrcall (this=0x41db22d0, p_object=
    0x41e748a0, p_args=0x0, r_ret=0x0) at ./core/method_bind.gen.inc:66
#11 0x000000000071dd94 in godot_icall_0_13 (method=0x41db22d0, ptr=0x41e748a0)
    at modules/mono/glue/mono_glue.gen.cpp:120
#12 0x00000000479500da in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Perhaps SteamApi_RunCallbacks needs to be wrapped similarly to GetSteamID? iirc the backtrace seemed similar, but I'll experiment with that after I confirm it does work with VS and I'm not just running into something else.

I would definitely call mingw support "not recommended", at least until godotsteam can test a decent portion of the SteamAPI with it. I am somewhat unfortunately determined to use mingw so I will see if I can find a way to test this stuff and if the currently known hacks we have can fix it, then hopefully mingw usage could be normal.

  Sounds like a plan.  I'll update the necessary documents.

Doesn't appear to be happening in msvc compiled build, so yeah I think it's a mingw issue. I'll look into using what we know so far to fix it.

And it looks like I also ran into a (potentially separate issue worthy) segfault, in the getLobbyDataByIndex function, but it's peculiar so maybe I should look into if I'm misusing the steam api.

Definitely sounds like MinGW.  And yes, getLobbyDataByIndex causes a crash and is on my to-do list.
That is really strange. A valid lobby definitely wouldn't have that many fields; in a lot of cases 1, 2, or even 0.  I'll have to dig into it more this week.

just reporting, I'm close to giving up today, so far I haven't been able to wrap SteamAPI_RunCallbacks sufficiently to get it to work with the open steamworks inline trick. I will try one more thing and then probably give up on mingw support until I get some progress on other stuff I need, and perhaps eventually I'll do more research into getting it to work.

Alright, I don't feel like digging into mingw's msvc interop features and I'm lost for now. I guess no mingw yet :(, I hope to return to it soon. You can close this issue to indicate that there will be no official mingw support for now, and maybe we should rid the script for now and reintroduce it if I ever get back to it (or someone else does).

Hmm, sounds like quite the circus, sir.  Noted on the patch file.  I will get it pulled tonight and make other minor updates to text where appropriate.
That being said, if it isn't on my to-do list, I'll add it on and we can revisit it later!

I'm actually not quite done for tonight anyway (don't reopen the issue though), I did manage to confirm with gdb that the inline hack I applied does actually call into the steam dll, but it doesn't seem to do anything, definitely not cause the emit_signal I'm looking for which works when using msvc for this lobby request logic. Either steamlib or the debugger is throwing an exception which I'm trying to read.

yeah looks like it is called, and there may be some kind of exception in my debugger or handled internally, my build or gdb isn't configured to inspect it unfortunately. With further research I could probably learn more but for now it's not worth the effort, I'll go do something useful.

Definitely sounds like a time sink so probably wise to let it lie for now.  Like I said, we'll get back to it at a later time and figure it out.  Thanks again for all the efforts, sir!


Restrict domain per namespace

Is your feature request related to a problem? Please describe.
I want to annotate a namespace to restrict what domains that namespace can request certificates to.
Describe the solution you'd like
Leverage the cert-manager admission controller or cert-manager itself to read the namespace annotation and enforce the policy.
Describe alternatives you've considered

To code my own admission controller
To create an Issuer per namespace but that requires a lot of management at scale

/kind feature

I will leave it here if anybody else needs the same, it can be accomplished with approval policies:
https://cert-manager.io/docs/policy/approval/approver-policy/


Add the description of deposit Merkle proof in validator guide

Issue
When using verify_merkle_branch, the Merkle proof is against state.latest_eth1_data.deposit_root, not the deposit_root right after the deposit. The Deposit makers have to generate Merkle proof with state.latest_eth1_data.deposit_root locally.
Proposed solution
There might be various ways to generate Merkle proof and can be optimized so I'm not sure if we need to make it in-spec. But, at least it would be nice to add the format description of Merkle proof in the validator guide.

There is a note here https://github.com/ethereum/eth2.0-specs/blob/dev/specs/validator/0_beacon-chain-validator.md#deposits


cheqd testnet needs a new chainname

It's testnet has the same chainname as their mainnet

what should we do when it is the same? just add a '...testnet' suffix? e.g., 'osmosistestnet' ?

Yeah

resolved by @pyramation via #680


Auto-complete: confused when there is a property and parameter of same name

press Enter and the first field is filled in with property.name

press Enter and the second field is also filled in with property.name.
I can just type name in the second field and get the required result.

After discussion, the agree solution is:

Whenever you access a property in an assignable field (which is, by definition, only inside the same class or a sub-class) you must now prefix it with property.  Failing to do so will be a compile error - with helpful message saying e.g. assigning to a property requires prefix 'property.'

In an assignment field, properties are always listed in the auto-complete options as property.propName even if you start typing propName.

In an expression field, the property. is required only to disambiguate - but if there is a property and param (or local variable) with the same name, then the property will be shown in auto-complete with the prefix.

We can't assign to parameters, so in the situation where you try to assign
to a name which clashes, instead of saying that's an error, you've got to
have property. in front of the identifier could we insert the *property. *
automatically?
It always irritates me when a system says, basically, *there's a mistake
here, I know what it is, and this is how it needs correcting, but you've
got to do it! *
Or is this too much like AI and breaks the guarantee of "No AI!"
John
On Mon, 26 Aug 2024, 14:05 Richard Pawson, @.***> wrote:

After discussion, the agree solution is:

Whenever you access a property in an assignable field (which is, by
definition, only inside the same class or a sub-class) you must now
prefix it with property. Failing to do so will be a compile error -
with helpful message saying e.g. assigning to a property requires
prefix 'property.'
2.
In an assignment field, properties are always listed in the
auto-complete options as property.propName even if you start typing
propName.
3.
In an expression field, the property. is required only to disambiguate

but if there is a property and param (or local variable) with the same
name, then the property will be shown in auto-complete with the prefix.

—
Reply to this email directly, view it on GitHub
https://github.com/elan-language/LanguageAndIDE/issues/677#issuecomment-2310168132,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAQQAB3RO44OK5QR2CFHEB3ZTMRYLAVCNFSM6AAAAABL7C7NQ6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMJQGE3DQMJTGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

If you use the auto-complete option then the property. will be inserted automatically for you. If you insist on typing it in full yourself, and don't add the property, you will get the error message. I think that's fair. I don't like auto-correction.

re-assigning this to Stef as the original problem is still there. In the following example, for the assignable field it has offered only property.bar, and added it correctly, and I am now entering the RHS field:

but if I now hit enter with the selected bar I get:

which is incorrect.

Works on procedures but not constructors.


Add uiOptions setting to pass arbitrary options to Swagger UI

There are quite a few Swagger UI settings which someone using hapi-swagger might want to change. Instead of adding them all as plugin options this PR adds a single uiOptions setting which can be an object of arbitrary options passed to Swagger UI.

@markopy would it be possible to add all the options in the type definition?

@robmcguinness Do you mean the Swagger UI options? The main point of this PR was to not have to explicitly define them all in hapi-swagger because  it's a constant maintenance burden and the list will inevitably become out of date.

Understood. Just trying to make the TS community happy 😄


Rename local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.

'altitudeGain_m' does not meet the naming convention

Renamed variable. Closing the issue


Add the ability to change Attribute Family for Products

As inventories evolve, sometimes a change in attributes makes more sense for a product. It would be nice to be able to change the attribute family for an existing product.

Not possible yet


Merge "forked" PrivacyDeclaration components

Is your feature request related to a specific problem?
We have copied/pasted a good number of components between the datamap-ui and admin-ui. We should merge these back together now that they are in the same app.
Describe the solution you'd like
Specifically, we'll need to look at:

cypress configs
dirty form hook (perhaps separate ticket to actually use it in admin-ui)
ConfirmationModal
Header
Image
Layout
ProtectedRoute
SearchBar
toast.tsx
PrivacyDeclarations

Describe alternatives you've considered, if any
A description of any alternative solutions or features you've considered.
Additional context
Depends on https://github.com/ethyca/fides/issues/2975

Most of this except PrivacyDeclarations is done. That'll take more time to comb through the differences and resolve them

moving to done


chore: increase component governance timeout

Summary
Briefly describe the changes included in this Pull Request.
Tests
Describe what tests have you performed to validate your changes before submitting the Pull Request. Use 'N/A' if not applicable.
Dependency chances
If you needed to make any chances to dependencies of this project, please describe them here.
AB#1755163

/azp run

Codecov Report

Merging #1482 (fbdd679) into master (ead2153) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1482   +/-   ##
=======================================
  Coverage   84.39%   84.39%
=======================================
  Files         295      295
  Lines       14793    14793
  Branches      702      702
=======================================
  Hits        12484    12484
  Misses       2309     2309

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 ead2153...fbdd679. Read the comment docs.


chore: Refine the logic to probe GRAPHSCOPE_HOME

Committed-by: siyuanzhang.zsy from Dev container
Previously it could not auto detect grape_engine from /opt/graphscope, need to rely on GRAPHSCOPE_HOME be set.
Also try to simplify the logic to probe GRAPHSCOPE_HOME, and others. But its still messy.
And delete the unused .install_prefix usage.

Codecov Report

Merging #3082 (734c980) into main (f3a2eb0) will increase coverage by 24.45%.
Report is 3 commits behind head on main.
The diff coverage is n/a.

Additional details and impacted files

@@             Coverage Diff             @@
##             main    #3082       +/-   ##
===========================================
+ Coverage   42.65%   67.11%   +24.45%
===========================================
  Files         100      100
  Lines       10812    10812
===========================================
+ Hits         4612     7256     +2644
+ Misses       6200     3556     -2644

see 65 files with indirect coverage changes

Continue to review full report in Codecov by Sentry.

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


Add support for "Perspectives"

Sanity now supports "perspectives" which allow you to specify whether or not you want to see draft documents or not.
https://www.sanity.io/blog/introducing-perspectives-sanity-previews

There are three perspectives available as part of this release, available now for all Sanity customers on any project plan:
previewDrafts: retrieves documents in their draft version (or published if no drafts exist). It will also add an originalId property to documents for additional control. As explored below, we designed previewDrafts to simplify the developer experience for building content previews.
published: retrieves only the published version of documents. You can use this perspective as an extra layer of assurance to avoid draft content leaks for authenticated requests in production.
raw: preserves the same functionality of queries as they worked pre-Perspectives (and is the default perspective if one is not specified). This means that Perspectives is a non-breaking feature.

PR incoming soon

We should support perspectives in the following functions:

[ ] query (See #78)
[ ] stream

As you pointed out, we can already pass the perspective as a query param. I'm not sure what would be involved in adding that support for streams.

I've updated the docs for Sanity.query/3 to describe how to use perspectives. I've also updated Sanity.stream/1 to support perspectives.
Thanks!


Wasm should raises a CompileError due 31+ offset

Hi everyone,
running this test case, it was observed that Chakra didn't raised a WASM.CompileError due 31 offset.
Charka: <IP_ADDRESS>
OS: Linux Mint 19
function module(bytes) {
  let buffer = new ArrayBuffer(bytes.length);
  let view = new Uint8Array(buffer);
  for (let i = 0; i < bytes.length; ++i) {
    view[i] = bytes.charCodeAt(i);
  }
  return new WebAssembly.Module(buffer);
}

function assert_invalid(bytes) {
  try { module(bytes) } catch (e) {
    if (e instanceof WebAssembly.CompileError) return;
  }
  throw new Error("Wasm validation failure expected");
}

assert_invalid("\x00\x61\x73\x6d\x01\x00\x00\x00\x01\x05\x01\x60\x00\x01\x7f\x03\x02\x01\x00\x0a\x0f\x01\x0d\x00\x02\x7f\x02\x40\x00\x0d\x01\x0b\x41\x01\x0b\x0b");

Actual results:
pass without failures
Expected results:
Error: Wasm validation failure expected
V8 and SpiderMonkey works as expected.
cinfuzz

This is not a bug. To improve startup performance, we defer validation until execution time, which is explicitly allowed by spec. If you pass -off:wasmdeferred, you can see that we throw a validation error.


loudnorm/ebu r128 stats

hi andrew,
I'm probably revealing my general audio ignorance here, but I was wondering if you'd given any thought to incorporating FFmpeg's loudnorm filter into audioqc. It's hard for me to really tell if it offers audio-related info that astats doesn't already provide, but I think we would be interested in the possibility of an audioqc option that would process files thru loudnorm to give us da LUFS. Have you thought about this at all, and would it be obviously redundant in some way?
thanks!
ben

Hi Ben,
Certainly possible to add some loudness info in! I don't use Loudness in my QC workflow here, as we don't have any hard targets around it for our ingest files, but I see how it could be useful in some workflows, particularly broadcast (and since this project includes NPR via @susiecummings that seems very in scope!) I've been meaning to mess around with some options around phase, so I'll take a look at loudness output as well when I do that!

Hi Ben,
Certainly possible to add some loudness info in! I don't use Loudness in my QC workflow here, as we don't have any hard targets around it for our ingest files, but I see how it could be useful in some workflows, particularly broadcast (and since this project includes NPR via @susiecummings that seems very in scope!) I've been meaning to mess around with some options around phase, so I'll take a look at loudness output as well when I do that!


Can I block individual css features?

Description
I'd like to block specific css features that i find annoying when used on sites
Who's implementing?

[ ] I'm willing to implement this feature myself

The problem
There's many css features that can be used in ways that are questionable for usability. For example, the user-select feature can be used to disable text selection. Which for some purposes might be great. But i hate it and want it gone. There's extensions to effectively disable this behavior too so i can use that.. Still, it seems nice to me if we can have a way to disable specific css features on a browser level and baked in.
Possible solutions
I'd imagine there to be a config file with a list of css features to disable.
Alternatives
https://chromewebstore.google.com/detail/force-enable-text-selecti/ehahhhffddaohggfoijpnnagkkeagmmb and https://chromewebstore.google.com/detail/allow-select-and-copy/lamaakaemgdclpnfbofmhpkanfnojjch and probably more
Additional context
No response

No such config file exists to my knowledge

Then consider it a feature request :)


Sending message to specific User

Hey guys, how to do you send a specific message to a user/client from a Controller outside the hub?

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

ID: 7bf6fefc-557e-114a-a37c-90939e06b083
Version Independent ID: 92da23e0-6dc5-170e-b489-2ad8bbd46dff
Content: SignalR HubContext
Content Source: aspnetcore/signalr/hubcontext.md
Product: aspnet-core
Technology: aspnetcore-signalr
GitHub Login: @bradygaster
Microsoft Alias: bradyg

Take the example from the page:
await _hubContext.Clients.All.SendAsync("Notify", $"Home page loaded at: {DateTime.Now}");

To send to a specific user/client, use the relevant method:
await _hubContext.Clients.Client("clientId").SendAsync("Notify", $"Home page loaded at: {DateTime.Now}");
await _hubContext.Clients.User("userId").SendAsync("Notify", $"Home page loaded at: {DateTime.Now}");

Thanks for contacting us. We believe that the question you've raised have been answered. If you still feel a need to continue the discussion, feel free to reopen it and add your comments.


Importing mixpanel-browser breaks Vite project local development in Firefox

I can't figure out what is going on, but I have a tracking module in a project written in React and using Vite. When I import the mixpanel-browser dependency and set up a simple hook to pass the methods from the SDK down to components, everything works as expected, UNTIL I load the local dev environment in Firefox (latest version). When loaded in Firefox, it displays the following warning in the console:

As you can see, the information there is pretty limited but I have confirmed that removing the mixpanel import does solve the issue and I am able to load my project up just fine. Interestingly enough, when the project is bundled and deployed to our production servers, Firefox functions correctly.
This is an interesting issue and it does gate anyone on the engineering team that does local development in Firefox from using it.

Ran across this while troubleshooting this issue on a Vue3/Vite project but in Chrome
This file failed to load: http://localhost:8080/node_modules/.vite/deps/mixpanel-browser.js?v=cca37e03
Funnily enough it worked fine for me on Firefox on the same machine... then I realised it's because I have an ad blocker installed on Chrome but not Firefox. Turning off the ad blocker on Chrome resolved the issue. Hope that might help someone who ends up here in the future 👍

@TravisC1 Firefox is not my main browser. In fact, I rarely ever even open it, and have no extensions installed. Oddly enough, I do have an ad blocker installed in chrome and that’s works fine. Go figure :)
this also wasn’t just on my machine, the reason I even found this issue is because another engineer on my team was using FF as a dev environment and the code that I wrote to implement mixpanel was working fine for me but not for him. When he loaded it up in chrome he was able to continue developing without being blocked by this.

@reintroducing Ah, shame that it wasn't such a simple solution for you!


Add support for extended permission rules

Like
allowxperm basic_t basic_dev_t:chr_file ioctl ~0x8927;
TODO: validate range usage: enforce two surrounding increasing elements

What do you think about this slightly modification?
https://github.com/dburgener/selint/tree/dburgener/x_perms
I think it reduces code complexity and helps ensure that the x_perm version will stay in sync with regular av_rules where applicable.

I think this doesn't work, since in the combined cases node->data.av_data is always accessed (and not node->data.xav_data).
One could make char *operation a part of struct av_data and set it to NULL in normal av rules.

But since node->data is a union, av_data and xav_data are just different names for the same memory.  Since my commit reorders the first elements in xav_rule_data to match av_rule_data and C guarantees that structs are stored in order, if we call an xav_rule_data pointer an av_rule_data pointer and access its members they'll end up being the same, as long as the entirety of the av_rule_data struct is at the beginning of the xav_rule_data_struct.
Since in the two cases I changed we only need the av_rule portion of the struct, it should all just work pretending to be av_rule_data.
Running in gdb to demonstrate
Breakpoint 1, get_names_in_node (node=node@entry=0x5555570fc580) at tree.c:165
165			av_data = node->data.av_data;
(gdb) p node->data.av_data
$1 = (struct av_rule_data *) 0x5555570fa000
(gdb) p node->data.xav_data
$2 = (struct xav_rule_data *) 0x5555570fa000
(gdb) p *(node->data.av_data)
$3 = {flavor = AV_RULE_ALLOW, sources = 0x5555570fc480, targets = 0x5555570fc4a0, object_classes = 0x5555570fc4e0, perms = 0x5555570fc520}
(gdb) p *(node->data.xav_data)
$4 = {flavor = AV_RULE_ALLOW, sources = 0x5555570fc480, targets = 0x5555570fc4a0, object_classes = 0x5555570fc4e0, perms = 0x5555570fc520, operation = 0x51 <error: Cannot access memory at address 0x51>}

You see that av_data and xav_data are pointers to the same address, and but appear as different structs when derefenced. In this particular case, the node is a regular allow rule, so the contents of operation is undefined, but the other fields are all identical across both structs.

You're right, forgot about the union stuff.
Added some more verbose testing.

Great.  I'll go ahead and squash and then merge it.  Thanks!

p.s.: the validation of ranged extended permissions is still missing.
E.g.
0xffff-0x0000
or
- 0x01
or
0x01 -
, but this needs quite some code, probably also to derive permission macros.
So for now let's rely on the SELinux compiler for such things.

Yeah, that's fine with me.  In my opinion, we're primarily looking to add value by getting things the compiler can't/doesn't.  We don't need to bite everything off all at once.
I very much want to be in a state where we can parse anything the compiler does (which this PR helps with), but if the compiler fails things that we allow, that's fine as far as I'm concerned.
Not that I wouldn't take a PR for that validation, but it's not high on my priority list.


add a good example of a PDA thats both a state account and a signer in an instruction

Please review and merge #69


Option to catch errors

It would be very helpful. We are already consuming the error in our reducers.

Can you elaborate on this? Are you looking for an option on the middleware config?

Yes, an option to catch all errors without the need for a custom middleware. Custom middleware isn't the clearest thing in the world. Perhaps a boolean and/or a callback.

This middleware doesn't catch errors by design. The middleware is (1) designed to purely dispatch actions that describe the two promise states (pending and settled) and (2) not designed to handle promise side effects like errors.

Yes, I've seen you say/type that a lot, and that design decision is annoying 😛


GPTJ output not consistent with that of transformers

Hey guys,
I've been trying to get the base GPT-J model (EleutherAI/gpt-j-6b) served using vLLM, but I am running into issues with the quality of the output. Using the same offline inference code as in https://github.com/vllm-project/vllm/blob/main/examples/offline_inference.py, here is what I obtain from the model (running on an RTX A5000):
from vllm import LLM, SamplingParams

sampling_params = SamplingParams(temperature=0.8, top_p=0.95, max_tokens=128)
llm = LLM(model="EleutherAI/gpt-j-6b")
prompts = ["AI is going to"] * 4
outputs = [t.outputs[0].text for t in llm.generate(prompts, sampling_params)]

output = [" get a lot of new stuff. A lot of other new stuff\nthat's been added and things are going to come out.\nthat you know, it's going to be implemented, that's coming out.\nin the\nand we've got like a lot of stuff coming out, and things in the like AI stuff. So we're going to be doing.\nbefore the new stuff\nand some of the AI, the future.\nthe AI\nis added in the next year and we're going to the next year.\nthat's going to be in the next gen.\nand it's going to be added",
 " change the way we work, not just the way we do business, but also how we work and we live. How we work, the way we live. In the way we do our everyday activities. It will be. We think, what we live.\n\n\n\n\n\n\n\nthe way we interact with each other, but our living.\n\nthe way we relate to each other, but how we live. AI.\n\n\nit's not even our lives. The economy, live, and build our daily life.\nhow we play, but also our lives and engage with each other, and how we",
 " be our friend.\n\n\n\n\nHere's a good reason we're gonna do this\nAnd you know, and that was interesting.\nWe'll have to be, like,\nour employees are gonna start.\nOur\nThey did you know, as you know.\nTotally, we're gonna have like you know\nAnd that's the oil.\nSo that some other question, like, and that we're gonna\nuse and and I'm going to be in the most of the middle of\nThe boss and we're going to be on TV,\nTogether. I'm gonna be\nWe're gonna",
 " save us all. Some of them, anyway. It will. AI is almost certainly. It's just a utopianism is what we can see how much about as serious, but it will be a way out of the future. I mean.\n\n\nsmart, it's going to out how it will be their business is the father than we're going to the ultimate evolution. I think we're going to be the in a perfect, the machine.\n\nnot be a bit more than 3Dot-it's just it.\n\n\n\nkill us we have long as we're going to have it will be making"]

For comparison's sake, here is what I obtain using transformers:
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("EleutherAI/gpt-j-6b").half().eval().to(0)
tokenizer = AutoTokenizer.from_pretrained("EleutherAI/gpt-j-6b")
inputs = tokenizer("AI is going to", return_tensors="pt").to(0)
params = {"temperature": 0.85, "top_p": 0.94, "max_new_tokens": 128, "do_sample": True}
outputs = []
for _ in range(1,4):
    out = model.generate(inputs["input_ids"], **params)
    outputs.append(tokenizer.decode(out[0]))
outputs = [
'AI is going to be our future and this is going to be a big part of that," said Peter Lee, vice president of Google\'s self-driving cars and mapping division.\n\n"It will allow us to make the most efficient use of public roads that are more congested and have more traffic," Lee told the BBC. "It will allow us to better respond to traffic conditions and accidents."\n\nIt\'s certainly a big deal, and one that Google will have to work its way through. The company is a pioneer in the area of driverless cars, but its software has been unable to operate as a taxi driver.\n\nIts self',
'AI is going to make a comeback. It's already making a comeback. The best technology to understand AI is not the technology itself. It's human understanding of what the technology is. We're just starting to understand how human beings think, and the way that human beings think is going to revolutionize the way we think.\n\nIt's hard for us to imagine the future that AI brings. We're seeing AI in every form, and we're seeing it becoming a reality in our lives. You may not see it right away, but it's right around the corner.\n\n',
'AI is going to be a game changer and a very important factor in the success of the entire Internet. It will not be just another technology, but a game changing technology. The way we do things has been changed.\n\nAnd we can't wait to help you succeed in the online world!\n\nOur Vision\n\nOur vision is to provide the best eCommerce platform that can help your business grow. We believe in the concept of "Customer First". We will work with you and your team to deliver the best online experience.\n\nWe will continue to innovate and develop new features, functionality and services to help you',
'AI is going to change everything. The world of medicine and the world of business will be forever changed.\n\nThe world of medicine will change drastically. Doctors will be able to diagnose illnesses and provide immediate treatment without needing to send their patients to specialists. A patient's condition will be known almost instantly and he/she will be able to receive the best possible treatment.\n\nThe world of business will change drastically as well. With the help of AI, companies can easily increase their efficiency, improve their products, and ultimately increase profits.\n\nWhy is AI so important?\n\nAI has become incredibly important because it can help us solve many'
]

I've noticed this behaviour independent of the choice of sampling parameters.
Any help in resloving this is greatly appreciated!

Hi! Can you try some deterministic sampling methods like greedy decoding and compare the results? To be honest I cannot easily tell the differences between the qualities of two sampling results.

Thanks for getting back to me!
@AlekseyKorshuk and I ran the inference with deterministic sampling and got the following results:
sampling_params = SamplingParams(temperature=0, top_k=-1, max_tokens=128)
llm = LLM(model="philschmid/gpt-j-6B-fp16-sharded")
prompts = ["Obama was born in [Honolulu](https://en.wikipedia.org/wiki/Honolulu), Hawaii. After graduating from [Columbia University](https://en.wikipedia.org/wiki/Columbia_University) in 1983, he worked as a [community organizer](https://en.wikipedia.org/wiki/Community_organizing) in Chicago. In 1988, he enrolled in [Harvard Law School](https://en.wikipedia.org/wiki/Harvard_Law_School), where he was the first black president of the [Harvard Law Review](https://en.wikipedia.org/wiki/Harvard_Law_Review). After graduating,"] * 4
outputs = [t.outputs[0].text for t in llm.generate(prompts, sampling_params)]
outputs = [
' he was a year later, he was a year. He was a student of the University of Chicago, he was a community organizer for the University of Chicago, he was a community organizer, he was a year, and then he was a year later, he was a year.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n',
 ' he was a year later, he was a year. He was a student of the University of Chicago, he was a community organizer for the University of Chicago, he was a community organizer, he was a year, and then he was a year later, he was a year.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n',
 ' he was a year later, he was a year. He was a student of the University of Chicago, he was a community organizer for the University of Chicago, he was a community organizer, he was a year, and then he was a year later, he was a year.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n',
 ' he was a year later, he was a year. He was a student of the University of Chicago, he was a community organizer for the University of Chicago, he was a community organizer, he was a year, and then he was a year later, he was a year.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n']

Using the same prompt and model on HG (using do_sample=False), we got the following completion:
Obama served as an attorney for the Illinois State Senate and then taught constitutional law at the University of Chicago.\n

For us, VLLM has greatly improved in terms of inference speed, but the difference in the inference results due to the different sampling methods between VLLM and Transformer is quite confusing. Transformer has a good ecosystem and there is consensus on the sampling parameters. Can it support the option of choosing between VLLM sampling and Transformer sampling methods?

VLLM's outputs are definitely (significantly) more repetitive than HF inference (as you can see in Alex's results in the first post and the greedy decoding result). I think sampling process itself has no significant delta; it might be something in cuda kernels or attention.
Related topic I posted in discussions:
https://github.com/vllm-project/vllm/discussions/471

yeah it looks to me like GPTJ responses are poor quality.
I worry that its not just an issue with the GPTJ implementation but is a more general regression in quality in vLLM.

Same problem here with GPT-J.
I am using the default sampling params from vLLM. I also tried playing with all the params availble, but it did not help.
I am consistently getting semi-gibberish outputs.
Here is one example.
Input:

Let me tell you a story:

Output:

Let me tell you a story:\n\nIt’s midnight. Your eyes begin to fall right at noon, I came out of Scotland a summer, right at the dock where this story take in the sky blue.\n\nAM,\nNever felt feverich I never...

May be it's because GPT-J's tensor rotate logic is different to other models, as described in #747

+1
Noticing similar weird issues, with both GPT-J 6B and Pygmalion 6B (finetuned on top of GPT-J)
import torch
from transformers import pipeline

MODEL_ID = "EleutherAI/gpt-j-6b"
PROMPT = """
import tensorflow
# 4 layer CNN with a softmax output
# test on MNIST data set
"""
prompts = [PROMPT]
p = pipeline(
    "text-generation", model=MODEL_ID, tokenizer=MODEL_ID, torch_dtype=torch.float16, device=1
)
out = p(
    prompts, temperature=0.8,  top_p=0.95,  max_new_tokens=100, top_k=10000
)
print(out[0][0]["generated_text"])

which produces a reasonable output
Setting `pad_token_id` to `eos_token_id`:50256 for open-end generation.

import tensorflow
# 4 layer CNN with a softmax output
# test on MNIST data set

import numpy as np
import matplotlib.pyplot as plt

from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split

from keras.models import Sequential
from keras.layers import Dense, Dropout, Activation
from keras.layers import Conv2D, MaxPooling2D, Flatten
from keras.optimizers import SG

But with vLLM, something is off
from vllm import LLM, SamplingParams
llm = LLM(model=MODEL_ID)
sampling_params = SamplingParams(temperature=0.8, top_p=0.95, max_tokens=100, top_k=10000)
outputs = llm.generate(prompts, sampling_params)
for output in outputs:
    prompt = output.prompt
    generated_text = output.outputs[0].text
    print(f"Prompt: {prompt!r}, Generated text: {generated_text!r}")
print(generated_text)

import tensorflow
from tensorflow as TF-layers
from tensorflow_model
import tensorflow
import time
import nn
import tensorflow as tf.nn.data

from tensorflow as tf
from tensorflow
import tensorflow as tf
from tensorflow as nn

# from Tensorflow
from tensorflow as tf.image classification
import tf
import tensorflow as tf

Hi @alexandred @chiragjn @juliensalinas @ri938 , thanks for letting us know the bug. This is indeed due to my misunderstanding of the GPT-J RoPE, which is different from GPT-NeoX's RoPE. The bug is fixed by #941. I've checked that after the bug fix, the generated outputs by vLLM match the HF's outputs when using argmax sampling. Apologies for the confusion and inconvenience.


Undo Redo Mechanism

Why
Refer to #56
Major Changes

Introduce a lightweight UndoGlobalManager, which is the high level of NSUndoManager.
Support undo logic in CSLayer,  LayerList
Observe Undo/Redo notification and do reload appropriately.

Testing Plan

[x] Able to undo/redo in all variable of CSLayer
[x] Able to undo/redo after adding/removing components in LayerList
[x] Able to undo/redo after hiding/showing components
[x] Global Undo/redo for each Document.
[x] Undo/redo arrange action
[x] Undo/redo canvas properties
[ ] Other stuffs.

Feedback
I'm looking for feedback on the implementation and how I did Undo/redo on many properties 😄

cc: @dabbott, @ryngonzalez

Ok, this is a great first step! 😄 Now we can see how all the different pieces work. I have a lot of feedback this time around since undo/redo is something we'll have to maintain and support with each new feature.
1. Control flow
I find the overall flow of the code a little hard to follow, and I think we should see if we can make it more straightforward.
Currently, when I undo a command, CSLayer records a redo command implicitly, then a notification is handled by the ViewController which tells the inspector to re-render. I'd like the relationship between model updates/undo/redo/re-render to be more explicit.
Also

Recording commands from CSLayer directly will only work when properties are modified individually, which probably won't always be true (we could use command grouping maybe, but that's another layer of complexity)
There's a lot of boilerplate code for monitoring each property

I think it would be clearer if we record every command and how to undo it in the same place. Here's roughly what I'm thinking:
struct Command {
    let name: String
    let execute: () -> Void
    let undo: () -> Void
}

final class UndoGlobalManager: UndoGlobalManagerType {

    // ...

    // MARK: - Public

    func run(_ command: Command) {
        func undo() {
            command.undo()
            self.manager.registerUndo(withTarget: self) { _ in execute() }
        }
        func execute() {
            command.execute()
            self.manager.registerUndo(withTarget: self) { _ in undo() }
            self.manager.setActionName(command.name)
        }
        execute()
    }

    func run(name: String, execute: @escaping () -> Void, undo: @escaping () -> Void) {
        run(Command(name: name, execute: execute, undo: undo))
    }
}

Then we can run commands whenever the user interacts with a control that modifies the CSLayer model. For example, we can handle almost all updates to CSLayer by updating InspectorView from:
https://github.com/airbnb/Lona/blob/fa62235499f62de2a348bc82e61118a8f2e19dad/LonaStudio/Workspace/InspectorView.swift#L771-L775
To:
        fields.forEach({ (control, property) in
            var control = control
            if let value = properties[property] { control.data = value }
            // Assign `onChangeData` after assigning `data`
            control.onChangeData = { data in
                let oldValue = self.value[property]

                UndoGlobalManager.default.run(name: property.rawValue, execute: {
                    self.handlePropertyChange(for: property, value: data)
                }, undo: {
                    self.handlePropertyChange(for: property, value: oldValue ?? properties[property]!)
                })
            }
        })

I think this will be more straightforward to maintain. Every command will have both an execute and undo right next to each other, so it'll be hard to forget to implement/update undo. This will also handle re-rendering the inspector and canvas view automatically, so we don't have to use NotificationCenter. This would work pretty much the same way for addLayer and removeLayer too.
2. Maybe remove UndoGlobalManagerType
Is anything else going to conform to UndoGlobalManagerType? If not, I'd probably remove it, and just put the methods directly on UndoGlobalManager. Or even better...
3. Maybe use extension of UndoManager instead of UndoGlobalManager
Since UndoGlobalManager is mostly providing some utility functions for UndoManager, I think it might be clearer to put them on the UndoManager class directly. E.g.
extension UndoManager {
    static var shared: UndoManager {
        return NSDocumentController.shared.currentDocument!.undoManager!
    }

    func run(_ command: Command) {
        func undo() {
            command.undo()
            self.registerUndo(withTarget: self) { _ in execute() }
        }
        func execute() {
            command.execute()
            self.registerUndo(withTarget: self) { _ in undo() }
            self.setActionName(command.name)
        }
        execute()
    }

    func run(name: String, execute: @escaping () -> Void, undo: @escaping () -> Void) {
        run(Command(name: name, undo: undo, execute: execute))
    }
}

That's a lot of ideas... but let me know what you think!

Sorry for late replying. I've been in travel.
Thanks @dabbott for pointing this out. I didn't realize We could put the Undo logic inside the InspectorView.
I admin that my approach has a huge drawback by introducing too many boilerplate codes. I agree that your solution is more better and concise than the original 🎉 👍
Let me follow your approach then discussing later.

@dabbott Pls take a look my change - if it's good. I'm willing to do the rest part 👍 🎉 😄

I think this looks great! Keep up the good work 😄
We're probably going to run into issues where the color checkboxes don't undo/redo correctly, since they automatically set the color to transparent when changed. This might not be worth fixing yet though, since I suspect it'll get pretty complicated.
At some point, I want to move toward using more immutable data structures, which would make this sort of thing easier. E.g. if CSLayer were immutable, we could roll back the entire layer and not have to worry about how the different properties interact. But that's for another time!

I updated few changed and support Undo/Redo for Re-Arrange Action and Canvases List. Glad to hear your thought :D @dabbott

The nightmare is coming. I tried to rebase from master. There are many conflict which I couldn't resolve 😂
Let me see if I could squash this PR and try rebasing again.

Done - rebase master successfully 🍻 😄

Great 🚢! Very exciting to have this in 😄


getFields: expanded and added test coverage

added null object creation
tests: more signal, less noise

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

98 of 98 (100.0%)  changed or added relevant lines in 18 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.7%) to 87.676%

Totals

Change from base Build<PHONE_NUMBER>:
1.7%

Covered Lines:
725

Relevant Lines:
765

💛  - Coveralls


Improve handling of optional relations

Some relations might be optional in a resource representation. Currently follow and followAll will fail if such a relation should be followed but doesn't exist. The only way to prevent this is by checking its existence by using hal.canFollow, but this is tedious and leads to ugly code.
It would be nice to simply pass an option to follow or followAll to indicate, that it's okay if a relation doesn't exist. In this case either null or an empty array should be passed to the on-Handler. I'm afraid I don't know yet which status code would be the most fitting. I'm torn between 200 and 204.

After thinking about this a bit longer I come to the conclusion, that perhaps something different than a real status code would be appropriate, e.g. 'norel' to make explicit that the relation was missing. Guessing status codes feels wrong (and probably is).

Implemented on master (v0.8.0).
New Feature
The "virtual" status code 'norel' can now be used to handle the case where a relation is missing when trying to follow it:
hal.follow( peterResource, 'work' )
   .on( {
      '200': () => {
         console.log( 'Peter currently is employed' );
      },
      'norel': () => {
         console.log( 'Peter currently is unemployed' );
      }
   } );


Cherry pick modules test fixes

This eliminates differences between upstream llvm.org and stable for this particular test.
rdar://38550145

Thanks! CI isn't set up to test this patch, so I'll just merge it. Testing looks good locally.


deprecated ??

Hi,
since a several days , i have this warning in my file log:
2024-06-10 21:53:06.950 WARNING (ImportExecutor_0) [homeassistant.backports.enum] StrEnum was used from eufy_security, this is a deprecated alias which will be removed in HA Core 2025.5. Use enum.StrEnum instead, please report it to the author of the 'eufy_security' custom integration

Duplicate of https://github.com/fuatakgun/eufy_security/issues/1141


Fix repositories_client for Rockylinux

Fixed the repositories_client for rocky linux so the repositories_client_disable_distro_repos variable works correctly ans disables all Rocky default internet distro repos.

Dear Lucas.
I need to check devs into 2.0 before merging this one. Sorry. Might take few more days 😊

Dear @santos-lucas
Apologies for the delay of my answer.
I updated the role, are you able to quickly fix merge conflicts ? Then I will merge it 😊


Succeed to execute a query when executing the query with the function name "test," in the opened .psql file

OS: Win10
Build Version: 20210323.1
Repro Steps:

Expand a PostgreSQL server -> Postgres -> Right click "functions" node -> Click "Create Function Query..." -> Type function name with "test," -> There is a verification prompt.

Type a valid function name, e.g. "test" -> Select a return type -> Change the function name to "test," in the opened file -> Click "Execute Query".

Check whether the query is executed successfully.

Expect:
Fail to execute query.
Actual:
Succeed to execute query.

I can still run queries against a function with a comma in the name as long as it is wrapped in quotes.
We can possibly remove the "," restriction on the extension creating functions.

Verified on the latest build 20210610.3, this issue also reproduces for other function names.

[ ] Update Postgres Function name validation for next release.

This issue also reproduce for stored procedures.
Create the stored procedure with the name "test*01" successfully after changing the name in the opened .psql file.

I don't know where the validation rule come from but I think it's a recommendation rather than requirement. According to this, people can name things using those characters but it would require more careful handling of them. https://www.postgresql.org/docs/7.0/syntax525.htm#:~:text=Names in SQL must begin,but they will be truncated.
I'll defer relaxing the validation rules until someone complains.


Getting DeprecationWarning in webpack 2

(node:67349) DeprecationWarning: loaderUtils.parseQuery() received a non-string value which can be problematic, see https://github.com/webpack/loader-utils/issues/56
parseQuery() will be replaced with getOptions() in the next major version of loader-utils.

In my webpack.config.js:
{
  test: /\.mustache$/,
  exclude: ['node_modules'],
  use: [{
    loader: 'mustache-loader',
    options: { noShortcut: true }
  }]
},

Thank you very much, I think I have some code in place to fix it, I just need to test it.

This has been fixed in version 1.0.0


Realtime rollups not working - formulas?

At least one, and probably more, of my rollups are not working in real-time mode.  This particular one, attached, works when I click on calculate but not through real-time changes.
My hypothesis is that it is because the field triggering the rollup (Count_Action_Plan_in_Totals__c) is a formula field.  Am I correct that this could be the source of my issues, because a change to a formula field is not actually an edit, so DLRS wouldn't know to evaluate the record?
If I am correct about this, is there any workaround I can use in setting up the rollups in order to have them calculate real-time?
If I'm not correct, anything else I should look at?  I tried cloning this lookup and have the criteria be based off of a non-formula field, and it seems to be working.  So, if the formula is NOT the issue, I have no clue where to go next!

you could just add into the Criteria Fields the fields that the formula is
looking at then when those change it will trigger the DLRS record to fire
but as they are not part of the Relationship Criteria they wont be added to
the SOQL.
On Mon, Jun 26, 2017 at 9:07 AM, JodiNA<EMAIL_ADDRESS>wrote:

At least one, and probably more, of my rollups are not working in
real-time mode. This particular one, attached, works when I click on
calculate but not through real-time changes.
My hypothesis is that it is because the field triggering the rollup
(Count_Action_Plan_in_Totals__c) is a formula field. Am I correct that
this could be the source of my issues, because a change to a formula field
is not actually an edit, so DLRS wouldn't know to evaluate the record?
If I am correct about this, is there any workaround I can use in setting
up the rollups in order to have them calculate real-time?
If I'm not correct, anything else I should look at? I tried cloning this
lookup and have the criteria be based off of a non-formula field, and it
seems to be working. So, if the formula is NOT the issue, I have no clue
where to go next!
[image: lp_dlrs]
https://user-images.githubusercontent.com/8515331/27548811-14fd5a42-5a68-11e7-8cd3-26f5978a1672.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/afawcett/declarative-lookup-rollup-summaries/issues/524,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APXKqmpAQ4B4-9bZUDLE8pF1VhyDpFMdks5sH9ddgaJpZM4OFhmR
.

Thanks @DanDonin! That's what I figured.  Can I do fields from both the child object and parent object in the criteria?  And, if so, for which one (and how) do I need to reference that it is a different object?  The parent?  In this case, my formula spans both.

DLRS can't jump tables sadly.  So I'd just put some of the fields in that
formula that live on the object itself.
On Mon, Jun 26, 2017 at 9:16 AM, JodiNA<EMAIL_ADDRESS>wrote:

Thanks @DanDonin https://github.com/dandonin! That's what I figured.
Can I do fields from both the child object and parent object in the
criteria? And, if so, for which one (and how) do I need to reference that
it is a different object? The parent? In this case, my formula spans both.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/afawcett/declarative-lookup-rollup-summaries/issues/524#issuecomment-311108008,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APXKqjeBo582UNjaTif3oLPe_KINZqdfks5sH9l1gaJpZM4OFhmR
.

Okay. Thanks.  I will probably have to do a workflow and an extra field on the child object.  With this formula in particular, the field on the parent is frequently the change that would cause the formula result to change.
Any chance table jumping might be possible in the future, @afawcett ?

Pretty hard for the trigger to table jump as an edit on the parent doesn't
ALWAYS mean an edit to the child thus a child trigger would never be
called.  I've seen people do some I think Child>Parent in the SOQL with
standard dot stuff like Contact.Account.Name but I've seen others who have
issues with it, so I can't say for sure if it should ALWAYS work or ALWAYS
fail. =/
On Mon, Jun 26, 2017 at 9:29 AM, JodiNA<EMAIL_ADDRESS>wrote:

Okay. Thanks. I will probably have to do a workflow and an extra field on
the child object. With this formula in particular, the field on the parent
is frequently the change that would cause the formula result to change.
Any chance table jumping might be possible in the future, @afawcett
https://github.com/afawcett ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/afawcett/declarative-lookup-rollup-summaries/issues/524#issuecomment-311111467,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APXKqkvu5M65ELVVELtOktCDkGjfOyI0ks5sH9xygaJpZM4OFhmR
.

Got it!  I'll play around and see what I can get working. Many thanks!  I love this tool!

Thanks @DanDonin, @JodiNA hope your good! 👍

Yes!  All good over here now!

Hi,
Having issue with a rollup on a formula field. any suggestions? all other roll ups are functioning properly. Only the realtime is not. When I press Calculate it works properly.

You will need to complete the “relationship criteria fields” field with the fields your formula used. Otherwise DLRS will not see the change.

You will need to complete the “relationship criteria fields” field with the fields your formula used. Otherwise DLRS will not see the change.

Hi Andy, Thanks for you prompt reply. I have done as you mentioned and it did not help. I would like to mention that I believe in the past it was working and something happened.
Also, when I click "Calculate" it does it just fine and is correct.

Is the rollup active and is the child trigger deployed?

Yes!
On Wed, Jan 1, 2020, 4:26 AM Andrew Fawcett<EMAIL_ADDRESS>wrote:

Is the rollup active and is the child trigger deployed?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/afawcett/declarative-lookup-rollup-summaries/issues/524?email_source=notifications&email_token=AOFF4HH3GGUSVDQSCARWREDQ3P5MVA5CNFSM4DQWDGI2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEH4325I#issuecomment-570015093,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOFF4HDX7IQE53MQUI3WSVDQ3P5MVANCNFSM4DQWDGIQ
.

Do you have any other rollups on for that child object that are perhaps targeting that field? Or workflows? Does inserting or deleting child records also have no effect?

Save problem... my rollup was using a criteria formula, it was active and trigger deployed and also did not work.


[Bug] az repos ref create

Describe the bug
az repos ref create should exit with non zero exit code when it could not complete the action instead of exiting with 0 and showing the error:
{
  "customMessage": "TF401027: You need the Git 'CreateBranch' permission to perform this action. Details: identity '<guid>\\email', scope 'repository'.",
  "isLocked": false,
  "name": "refs/heads/branch1",
  "newObjectId": "05abcd2cfc888fccc25b132bb777d84b84d169a8",
  "oldObjectId": "0000000000000000000000000000000000000000",
  "rejectedBy": null,
  "repositoryId": "<guid>",
  "success": false,
  "updateStatus": "createBranchPermissionRequired"
}

To Reproduce
Azure Cli Version:
azure-cli                         2.21.0 *

core                              2.21.0 *
telemetry                          1.0.6

Extensions:
azure-devops                      0.18.0

Steps to reproduce the behavior:

Remove Create branch permission for the identity from the repository.
Try to create a branch with that identity.

Expected behavior
az exits with non zero exit code.

Time taken to come up with proposal and timeline : 0.5 day

Proposal
We can check if failure reason is 'createBranchPermissionRequired' or 'createTagPermissionRequired'
We can change the status to success

Expected timeline
implementation - 0.5 day - 16 Aug
unit test - 1 day - 17 Aug

@roshan-sy : thanks for the detailed proposal 😄
I will suggest to take dependency only on response.success
if response.success is false:
  raise new CLIException(response.message)
``

because I belive the ask from customer is to not return 0 (success) in case operation failed on ADO service side.


vertical scroll bar of the chat-room message container automatically scrolls to the very top

Describe the bug
I use modal by bootstrap-vue
By default, when this modal is hidden, it deletes the chat-room dom When opened again, the DOM is re-rendered,
causing fetchMessage() to request data from the backend.
I don't want to request the backend too much, so I'll do the modal one
:static=“true”

This way, modal show and hide will not render the chat-room dom repeatedly,
but this introduces a new problem, whenever I redisplay the modal, the vertical scroll bar of the chat-room message container automatically scrolls to the very top,
as shown in the image:

How can this be avoided?

I'm not sure, I will look into it. As a workaround maybe you can store your data in a variable or a store and load it from there instead of your backend if it was already loaded?

Some times,An error occurred in the console when the moda is hidden

The Details


DEV: Fluids Report: DELETE Entire Object ; Construct call and process response

EPIC:
#491 Fluids Report Implementation
PARENT:
#495 Delete from Store (D) Fluids Report Object
SIZE:
16 hours = 2 days = 4 points
DEV: Fluids Report: DELETE Entire Object ; Construct call and process response – Size (4pts) = 2 days

This is now complete per @shehzadsidi


Adds more test cases

Still missing ESM package!
npm run all or yarn all
There are many strainge behaviours on all module systems. Yet, the most consistent one is still the infamous triplet.
We need to add also ESM package in node_modules.

@voxpelli here we are, after 2 days of work :)

@voxpelli I need to merge this PR in order to go on. If you want to discuss something, feel free to open an issue/new PR.

@fox1t Cool, if you want some input on anything specific, then feel free to do the same, I'm following along from the side.
(If you add me as a collaborator, then you can assign me as a reviewer I think)

@voxpelli added as a collaborator!
There are some notable quirks:

https://github.com/fox1t/modules-playground/blob/master/modules/typed-cjs/ts.js#L49 -> TS import() is entirely different from Node.js import() and neither typed-cjs nor TS knows the real final shape of the imported module. I suppose this is a TS bug because TS considers import()  as a require() wrapped in a Promise. It is not a case, though.
https://github.com/fox1t/modules-playground/blob/master/modules/esm/ts-namespace.mjs#L36 -> the fix introduced in node to analyze for named exports in CJS is not working since TS doesn't use module.exports but https://github.com/fox1t/modules-playground/blob/master/modules/node_modules/ts-namespace/build/index.js#L3
the infamous triplet style is confirmed as the more consistent across all of the import/require.
to reproduce the triplet in TS, we need to create an index.js entry point for the package manually: https://github.com/fox1t/modules-playground/blob/master/modules/node_modules/ts-triplet/index.js

@fox1t Can you add them as issues and we can discuss them individually + maybe split the work on them between us?
Thanks for adding me! Accepted :)


Compressed Public Address Error

We are not generating compressed public addresses yet. I or someone will
implement it as soon.
You are comparing the segwit address type 3 with compressed public
address....
Cheers.
On Thu, 12 Nov 2020 at 16:39, Qi WANG<EMAIL_ADDRESS>wrote:

If I use the code below:
from bitcoinaddress import Wallet
wallet = Wallet()
print(wallet)
partial result shows below:
Private Key HEX:
61ac90b3ec38f16f42c687bfd08e6b9218a9a5c4af79c8e35e3a4f416afb8065
Private Key WIF: 5JZJXyYaKQLoqKwVATd2c9eSMfNGYdapnpm5gxR6c4NgZUoiLu9
Private Key WIF compressed:
KzVaPiaN4E2RiJbVJkW269AEvCLsccUHwFoZhMbMjjthc7xaVHyX
Public Key:
043f2c4ad7685b7d53f98999d38a3fdfdfd6ad1db5a82481dfbe4211af9cb3346b9bcdac346526c150fd09c623691c9b3878ae119ff839b3f77b37645e68a39a04
Public Key compressed:
023f2c4ad7685b7d53f98999d38a3fdfdfd6ad1db5a82481dfbe4211af9cb3346b
Public Address 1: 1ByQAi6syxMRvJn4rr5toZ1mmxAqeREodo
Public Address 3: 3LF4YthSQBhX8ysyu4bGNa4K99kQtgzxVw
Compare with the results from this link:
https://iancoleman.io/bitcoin-key-compression/
1Pf4zgQMwWSAohkMbc6XQopxFMqEF2ZwwC
1ByQAi6syxMRvJn4rr5toZ1mmxAqeREodo
The compressed public address is not correct.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fortesp/bitcoinaddress/issues/8, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACSDR6PIM4JI3A6EGDYUKEDSPP6T5ANCNFSM4TTOCQHQ
.

Sorry, I just realized my mistake then I delete my post.
Thank you for your reply.

Your wonderful code
gives out only two WIFI keys not counting the test network
Private Key WIN
Private Key WIF compressed:
There's only one address
Public Address 1:
No compressed address 1
no WIFI keys from
Public Address 3:
Public Address bc1 P2WPKH:
Public Address bc1 P2WSH:
And the output is something like a package of calculations with a bunch of spaces after the keys and in the lines too
Thanks for your attention
ver 0.1.2
=== (whitespaces)

Private Key HEX: 02e0a8e3c33e6a02bd1697532be291cf7dd87743f8d14f7951f93c17e2593fb9=

Private Key WIF: 5HqZ5uP3794ZLYNHccFPaCzRdbykXHUAqdZZXvWUCJdBi8dGd2n
Private Key WIF compressed: KwKJceCGJ6ahjFSxLAaWdZvTiZPV6fgvReNibVB52tniGLVdU1Qf
Private Key WIF (TESTNET): 91cBfeCahN8hJbsaEx9JSoYPHGLTgT1NBaRWcYryY3NEVB21nfQ
Private Key WIF compressed (TESTNET): cMgJ5ZC7jAGxtgvDiaPdztRXLngtm7ncVgXBhudaY1SiX5bH49Ai
=======
Public Key: 04132b92c5d3399ed17f377a11ee118e294e3d2611858aa59090c6e5e354538e76d9af8bc1bd8ed8af31531062f1d5c5da0f282000d7a5d7c090a845568b8e569c
Public Key compressed: 02132b92c5d3399ed17f377a11ee118e294e3d2611858aa59090c6e5e354538e76

Public Address 1: 1EU3gvhcAdLyLpqMvjKvRBnsqeZMoivSmV===
Public Address 3: 34VRqybYsZ8RSQ6A27MHh2wY1JQRdDJYTX===
Public Address bc1 P2WPKH: bc1qxmha907hm39k89ax52ga3mt9g58z7l4hd533f7q5zxqmffdt2wgsmccyv6===
Public Address bc1 P2WSH: bc1qlm4q3qen7lkt2hchy2xwgu0f9mvmp0eva99sa7==
Public Address 1 (TESTNET): mtyzyynayenE7wJyeJJJF71CheA4n33dAC===
Public Address 3 (TESTNET): 2Mv3duiXaV1dmeBihhEyAJyvoDecbMQCnW6===
Public Address tb1 P2WPKH (TESTNET): tb1qxmha907hm39k89ax52ga3mt9g58z7l4hd533f7q5zxqmffdt2wgsvswtk4
Public Address tb1 P2WSH (TESTNET): tb1qlm4q3qen7lkt2hchy2xwgu0f9mvmp0evhr7rxd

@Sibtigr
len(wallet.address.__dict__['pubaddr1']) == len(wallet.address.__dict__['pubaddr1'].strip()
result: True

The Problem is, the script shows a wrong compressed public key.
compressed public keys should begin with 02 (y even) or 03 (y odd).
I get:
pubk_uncompressed: 04a34b99f22c790c4e36b2b3c2c35a36db06226e41c692fc82b8b56ac1c540c5bd5b8dec5235a0fa8722476c7709c02559e3aa73aa03918ba2d492eea75abea235
pubk_compressed: 14a34b99f22c790c4e36b2b3c2c35a36db06226e41c692fc82b8b56ac1c540c5bd
this line in address.py looks like it:
def _generate_publicaddress_bech32_testnet(self):
_p = self.__generate_compressed_pubkey(b'\x02', b'\x14')
why \x14 and not \x03 ?
Is that for bech32 alright?

I just changed it from (b'\x02', b'\x14') to (b'\x02', b'\x03') and the compressed public key is alright.
I created an address from it and it looks well like an P2PKH compressed address.
I don't know if it is okay to the oher script parts, but everything looks alright.


Dragging the playhead on the seekbar is very buggy with 0.2.15 Release

Dragging the playhead to seek makes the playhead either snap to start of the video in VOD mode and it keeps trying to snap to the end of the video when in DVR mode. We only started seeing this behavior in the new release of Clappr.

This is reproducible on http://cdn.clappr.io/ with stream url "http://www.streambox.fr/playlists/x36xhzz/x36xhzz.m3u8".
Was v0.2.14 the last version of clappr you used or were you on an older version? It might be an issue with the new 'hls' playback which uses javascript instead of flash.

It worked fine on 0.2.14, we needed to upgrade to 0.2.15 as we were noticing some issues in 0.2.14. The latest version fixes some bugs but now seems like the dragging is broken now.

Ok sorry about that. If you revert back to the flash hls playback for now that might work.
https://github.com/clappr/clappr/issues/607#issuecomment-150349429

@lkkadiri can you try with the current master build and see if this works for you?
Here's a build of (https://github.com/clappr/clappr/commit/3c47a103fee5ff8e15e08986d12c5c7119d9ba6b) if you don't want to build it yourself: https://gist.githubusercontent.com/tjenkinson/6f25208ffb6e498869ca/raw/86eedf1f58cdebc2f27d1863620295a5fdb02d94/clappr.js

Building locally failes for me. Undefined promise errors.
ERROR in ./src/plugins/dvr_controls/public/dvr_controls.scss
Module build failed: ReferenceError: Promise is not defined
    at LazyResult.async (/Users/leela/Work/clappr/node_modules/css-loader/node_modules/postcss/lib/lazy-result.js:152:31)
    at LazyResult.then (/Users/leela/Work/clappr/node_modules/css-loader/node_modules/postcss/lib/lazy-result.js:75:21)
    at processCss (/Users/leela/Work/clappr/node_modules/css-loader/lib/processCss.js:174:5)
    at Object.module.exports (/Users/leela/Work/clappr/node_modules/css-loader/lib/loader.js:22:2)
 @ ./src/plugins/dvr_controls/dvr_controls.js 37:30-67

@tjenkinson I see the same behaviour with the latest build as well.

Ok so the source of the bug is here: https://github.com/clappr/clappr/blob/cdad219b081a51554470960ee4617800fc7c60ba/src/playbacks/hls/hls.js#L50
When the drag completes this function is called twice and on the second call getDuration() seems to be returning 0.
If you use the flashls playback for now by altering the options with the link to the other comment I put above that will probably fix it for now.

Our application requires the native player as we have functionality like frame stepping which only works on the native player. Maybe we can leave this ticket open until this gets fixed?

Yes I'm looking into it at the moment I was just suggesting that as a temporary solution.

Please can you try again with this version: https://gist.githubusercontent.com/tjenkinson/34715684d241039a2881/raw/063b64003bb330cbc3e3398c7a19fbee074cb2d6/clappr.js
It includes the proposed fix in https://github.com/clappr/clappr/issues/644


How attach it to webview?

How attach it to webview? I find methods only to rv and lv

listener the webview's scroll event
when scroll up just call fab.hide();
and calll fab.show(); when down

the question how can i listen to the webview event ?

Try this: http://stackoverflow.com/questions/14752523/how-to-make-a-scroll-listener-for-webview-in-android.
It should works.


Make things clearer for js/ts/gs newbies

It took me a while to figure out why running npx clasp push wasn't changing anything after pulling down the updates. Added something explicit to the README to help newbies like myself. Also it would not be bad to mention something about package-lock.json or add it to .gitignore, or do whatever best practices are saying, because as of now the npm install changes it and then it shows up as a diff in the git tree all of the time.

Thanks! I agree, the documentation is lacking a lot. I'm also a JS newbie, so thanks for mentioning package-lock.json, I will see what we need to do with it.

it would not be bad to mention something about package-lock.json or add it to .gitignore, or do whatever best practices are saying, because as of now the npm install changes it and then it shows up as a diff in the git tree all of the time.

This page mentions that it should be committed: https://docs.npmjs.com/cli/v7/configuring-npm/package-lock-json
As far as I can understand, it is supposed to make npm install identical versions of packages, when the versions on package.json is pinned to a specific version (as opposed to something like ^3.4.0). Our package.json wasn't pinning the exact versions, and I think that was why your package-lock.json was changing. I made a commit which should fix it if I understood what's going on correctly.


Support for Ionic Modals?

Is there any way to use these native transitions inside of an $ionicModal? Since these transitions are a lot smoother than what Ionic provides, my team is looking to integrate them across the board, but one of our apps relies pretty heavily on modals at the moment. The only solution I know of right now is to swap out the modals for Angular states, so that the native transitions continue to fire off, but that's not exactly ideal.
Thanks for any info! Great plugin!

There is no good solution for modals for now.

Thanks for the answer! Are there any plans to extend this plugin to modals, or any techniques that you could suggest to deal with this issue? I may propose moving away from modals to my team for a better overall app experience.

I believe it is technically doable by listening to the modal live cycle events. It would require a little bit of work, do not know if I have the time but it could be an interesting feature.

Hey! My team is looking to include these transitions for the modals on our application. It's a significant amount of refactoring to swap them out to views. I'm wondering if the time spent refactoring would be better spent trying to flesh out modal functionality for this plugin.
Is it possible for your to give some direction on where to start and how to implement this feature? If the time commitment is similar to what it would be for us to refactor the modals in our application (1-2 days of coding), we're probably better served by expanding this plugin, and I'll get to contribute something back.
Anyway, let me know when possible, as we've got clients waiting! Cheers.

You can easily call your transition right before opening the modal:
window.plugins.nativepagetransitions.slide(options, transitionSuccess, transitionError)

and call this on modal opened:
window.plugins.nativepagetransitions.executePendingTransition();

Thanks, I'll try this out right away.

I've plumbed this through to a number of our modals, and things are already looking much smoother. Thanks so much for your help.
If possible, could you send a list of the parameters that the option object can take?

check the Readme and the Telerik docs.

Thanks!

Could you please expand on how you did this with modals @alexjhannan ? I'm working on that now as well.
Thanks!


Obtain formal parameter names using Java reflection

-parameters option for storing formal parameter names to bytecode was added in Java 8 to javac. It would be nice if formal parameter names in mapper classes were obtained by reflection. So, specifying a parameter name by @Param annotation wouldn't be required.
Note that other libraries have already started to support this feature, for example Hibernate validator.

That is worth looking indeed. Thank you por pointing @trohovsky !

Added a new configuration option useActualParamName.
<settings>
  <setting name="useActualParamName" value="true" />
</settings>

It would be great if you could try the latest SNAPSHOT !

For anyone that finds this GitHub issue and is using eclipse for development, to enable the "-parameters" options inside eclipse you have to go Window > Preferences > Java > Compiler and then under "Classfile Generation" there is a checkbox called "Store information about method parameters (usable via reflection)".
Was working on jUnit tests for my spring web app where MyBatis was not be able to find my named parameters in the mapper xml file. Then a I finally found this "hidden" checkbox which resolved my issue..


Update Set-HostedContentFilterPolicy.md

https://github.com/MicrosoftDocs/office-docs-powershell/issues/3288

Docs Build status updates of commit 31a740f:
:clock10: Full build: the average full build time is 14 min(s) 17 sec(s), this is based on the last 112 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

Docs Build status updates of commit 31a740f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/antispam-antimalware/Set-HostedContentFilterPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

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

Don't remove the Online Version link from the bottom of the topic (the existing link must be first in the list); that's how Get-Help  -Online works for Exchange cmdlet reference topics.

Docs Build status updates of commit e2c6125:
:clock10: Full build: the average full build time is 14 min(s) 15 sec(s), this is based on the last 124 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

Docs Build status updates of commit e2c6125:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/antispam-antimalware/Set-HostedContentFilterPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

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

Docs Build status updates of commit e448908:
:clock10: Full build: the average full build time is 14 min(s) 15 sec(s), this is based on the last 126 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

Docs Build status updates of commit e448908:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/antispam-antimalware/Set-HostedContentFilterPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

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

Docs Build status updates of commit e618783:
:clock10: Full build: the average full build time is 14 min(s) 13 sec(s), this is based on the last 130 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

Docs Build status updates of commit e618783:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/antispam-antimalware/Set-HostedContentFilterPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

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

Thank you!

Docs Build status updates of commit 2e4bd5d:
:clock10: Full build: the average full build time is 14 min(s) 12 sec(s), this is based on the last 135 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

Docs Build status updates of commit 2e4bd5d:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/antispam-antimalware/Set-HostedContentFilterPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

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

Docs Build status updates of commit 6e97182:
:clock10: Full build: the average full build time is 14 min(s) 10 sec(s), this is based on the last 148 build(s) for this repository.
:warning: This is a FULL build due to the incremental build being disabled in configuration file (.openpublishing.publish.config.json in 'live' branch). For more detailed info, please click here.

Docs Build status updates of commit 6e97182:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/antispam-antimalware/Set-HostedContentFilterPolicy.md
:white_check_mark:Succeeded
View (exchange-ps)

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


Enable autotools builds to build Windows binaries

Hi,
Apparently I was working on my branch at the same time when it was being merged, sorry!  The other changes that was done in libpsl.h.in shouldn't affect things at this point.
This updates the autotools builds (which I am not too good at) for enabling builds with MinGW.  I will also work on Visual Studio NMake Makefiles shortly afterwards.
With blessings, thank you!

Coverage remained the same at 93.648% when pulling 917be0ffa82090006fe5f8dec575f60827ea2fe5 on fanc999:master into 44256b1a3aa1309a2fe60af942a8c7ace17dbcea on rockdaboot:master.

The commit is too windows-centric. So here are some questions:

We link to -lws2_32, which is necessary for the networking functions on Windows.

Why don't you use AC_SEARCH_LIBS(inet_ntop, ws2_32) or something like this ?

We default to using libicu on Windows...

That's what we have configure flags for. Please describe the problem you have using them.

...not have fmemopen()

So please add fmemopen to AC_CHECK_FUNCS in configure.ac, and modify the fuzzer code to exit(77) if HAVE_FMEMOPEN is not defined. That displays a 'SKIP' when running the test suite.

Hi Tim,
I updated the check for inet_pton(), which was what was being used, as you suggested.
For the libicu part, I am leaving that intact for now, as basically the issue is where we set the default runtime and builtin as libidn2.  The thing is code that uses libidn2 (and libidn as well) make use of items in langinfo.h, which is a header that is not available on native Windows builds (be it MinGW or Visual Studio).  This means that --enable-runtime=libicu and --enable-builtin=libicu is required for the code to build on Windows at the current state (or we disable the runtime annd builtins).  Another way is to update README.md to tell people that currently it is required to pass in --enable-runtime=libicu and --enable-builtin=libicu (or use --disable-runtime and --disable-builtin) to build libpsl on Windows.
Please let me know which is your preferred way to this issue.
Also, I am doing another commit here for the fuzz tests part.
With blessings, thank you!

make use of items in langinfo.h

Right, there also should be a guard around the cal to nl_langinfo() and in the else case call the appropriate Windows function. Do you have it at hand ? I have it somewhere, must search...

Another way is to update README.md to tell people that currently it is required to pass in --enable-runtime=libicu and --enable-builtin=libicu (or use --disable-runtime and --disable-builtin) to build libpsl on Windows.

That sounds good for now. On the other hand, if libidn2 development files aren't installed, ./configure should fallback to libidn and then to libicu automatically. I thought it was working that way, but will have a look. Maybe it works if you fix the nl_langinfo() thing ?

Hi Tim,
I will look into nl_langinfo() with the appropriate Windows replacement later.
For the default runtime/builtin, unfortunately configure errors out, saying something like requested libidn2 but could not find it, so no automatic fallback is being done there.
I think for the Visual Studio builds, getting libidn2/libidn and libunistring is going to be tedious, due to their use of gnulib (big autotools-using stuff there)...  So, it is likely that for the Visual Studio builds, I will focus on using ICU and the case where the runtime/builtin is disabled.
With blessings, thank you!

OK, just let me know if you are interested in a MinGW build script for libunistring, libidn2 and libidn. I use one for wget2 CI builds. Might help before you start from scratch.

@fanc999 Pushed two of your commits and added another one implementing the fallback thing I mentioned. Indeed, it wasn't implemented (must have been a dream ;-)). Thanks for your work.

Hi,
I posted a new patch to enable DLL builds on Windows, as we need the -no-undefined linker flag on Windows for building DLLs, and enabled linking to libintl and libiconv when we are using the libidn/libidn2 code, otherwise the build will fail to link since APIs from these two libraries are being used (libintl and libiconv are things that are not in the MinGW/Windows CRT library).
Let me know if these two changes could be done in a better way, since I am by no means good in autotools.
With blessings, thank you!

Can you remove the OS specific code and try this instead, please:
diff --git a/configure.ac b/configure.ac
index f0e627b..501d83e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10,7 +10,7 @@ AC_CONFIG_HEADERS([config.h])
 AC_PROG_CC
 m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
 #LT_INIT([disable-static])
-LT_INIT
+LT_INIT([win32-dll])
 AC_CONFIG_MACRO_DIR([m4])
 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])

diff --git a/src/Makefile.am b/src/Makefile.am
index e18d754..c645b70 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -11,7 +11,7 @@ libpsl_la_CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include -DPSL_DIS
   $(CFLAG_VISIBILITY) -DBUILDING_PSL

 # include ABI version information
-libpsl_la_LDFLAGS = -version-info $(LIBPSL_SO_VERSION)
+libpsl_la_LDFLAGS = -no-undefined -version-info $(LIBPSL_SO_VERSION)
 if WITH_LIBICU
   libpsl_la_LDFLAGS += $(LIBICU_LIBS)
 endif

It's from https://www.gnu.org/software/libtool/manual/html_node/LT_005fINIT.html, scroll down to 'win32-ddl'. The code works here. If it works for you we should use it.
The second issue, libintl and libiconv, should also be done automatically by libtool. We just have to add $(LTLIBICONV) $(LTLIBINTL) @INTL_MACOSX_LIBS@ in Makefile.am at the right place(s). I'll try to find a machine/OS for testing.

Added two commits that address the above. Please check and give me feedback.

Hi Tim,
The two commits do work.
With blessings, thank you!


[Question] Manually Flush logging and traces

Greetings,
I'm using AppSignal to log metrics and traces for my Serverless Application.
While testing with  Serverless Offline all the lambda functions report really great on my AppSignal Dashboard.
But while my application is deployed at AWS, no error or metric shows at AppSignal (they show at CloudWatch log groups instead)
I suspect that the problem is that the AppSignal Agent does not have enough time to flush it's content to AppSignal before the lambda dies.
Can I flush all the logging manually, somehow?
This is how I imagine it:
name="my-app-name"
environment="my-ENV"

appsignal = Appsignal(
    active=True,
    name=name,
    environment=environment,
    push_api_key= "MY-KEY"
)

appsignal.start()

try:

  ### ... app logic

except:

  ### code to format the error response

finally:

  appsignal.flush() #  to manually send any opentelemetry and other traces/metrics to AppSignal

Is there a way to do this right now?
Thanks for taking the time to read this!

Hi @Felipe-RA!
You can now use the appsignal.stop() method from AppSignal for Python v1.3.9

Thank you @luismiramirez  !


Fixup semihost commit

Remove include 3P trace for hello world
Added delay back to hello world
#if defined(unix) for call_host in semihost to fix linux
Add gdb_dashboard back into SJSU-Dev2
Add gdb_dashboard to launch_openocd_gdb.sh

Coverage remained the same at 78.004% when pulling 96aaf07244e26c4eabe40d4e799f342e1508bf64 on fixing-semihosting-gdb-dashboard into 33c0faa703d206cc1f9ea2045be9940292d596f3 on master.


iOS 'problem with connecting to the server'

I can connect to the server with all browser extensions, android application and desktop application. But if I want to connect with my iPhone, it tells me that it has a problem with connecting to the server.
I can't see anything in the running console.
Anything I can do to make this work?

Hmm, this is weird. I'm also using the app on an iPhone, and it works just fine. I'm using the additions branch from my fork though, so maybe the addition of the web-vault compatibility helps? You can check the requests and responses by adding a custom logger (see this commit for details: https://github.com/universal/bitwarden-ruby/commit/8341e594506346537e1c01c2b575d3e915497845).
Maybe this already shows why it is not working.

@universal I tried running your additions fork, but it wasn't compatible with the database I created in the normal branch.

@lorddusk does it work for you now? Using my active-record(-additions) branch it works for me.

@universal I will check asap, will get back to you later today (CEST)


Nested var declarations get cut off from context

var y = 'outer';
(function () {
  with ({ x: 'inner' }) {
    var y = x;
  }
  console.log(y);
})();

prints inner.
But it compiles to
var y = 'outer';
(function () {
  var _ref = { x: 'inner' };

  (function (x) {
    var y = x;
  })('x' in _ref ? _ref.x : typeof x !== "undefined" ? x : undefined);

  console.log(y);
})();

which prints outer. That's wrong.
The problem is that the synthetic function creates a new var-declaration scope, preventing the var y from being visible at the time the console.log runs.
Same disclaimer as in #4: I'm not actually using or planning on using this plugin, so please don't revive this 2.5-year-old project to address this unless you're really enthusiastic about it. I just wanted to note it for anyone else coming across it.

I'm not actively using this myself either, so I don't plan on fixing this. If someone else wants to have a go though, I'll review a pul request.

I'm pretty surprised it works at all with destructuring TBH… but I'm not using it either.