Export DomainTypes in the /eth/v1/config/spec endpoint

Is your feature request related to a problem? Please describe.
Yes, I am trying to run vouch against a lodestar beacon node. It is failing with the following error:
{"level":"error","error":"failed to start signer: failed to start signer provider service: DOMAIN_BEACON_ATTESTER not found in spec","time":"2022-08-28T20:41:43Z","message":"Failed to initialise services"}

Doing a curl of the /eth/v1/config/spec endpoint I get:
  {
    "PRESET_BASE": "mainnet",
    "TERMINAL_TOTAL_DIFFICULTY": "10790000",
    "TERMINAL_BLOCK_HASH": "0x0000000000000000000000000000000000000000000000000000000000000000",
    "TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH": "18446744073709551615",
    "MIN_GENESIS_ACTIVE_VALIDATOR_COUNT": "16384",
    "MIN_GENESIS_TIME": "1614588812",
    "GENESIS_FORK_VERSION": "0x00001020",
    "GENESIS_DELAY": "1919188",
    "ALTAIR_FORK_VERSION": "0x01001020",
    "ALTAIR_FORK_EPOCH": "36660",
    "BELLATRIX_FORK_VERSION": "0x02001020",
    "BELLATRIX_FORK_EPOCH": "112260",
    "SHARDING_FORK_VERSION": "0x03001020",
    "SHARDING_FORK_EPOCH": "18446744073709551615",
    "SECONDS_PER_SLOT": "12",
    "SECONDS_PER_ETH1_BLOCK": "14",
    "MIN_VALIDATOR_WITHDRAWABILITY_DELAY": "256",
    "SHARD_COMMITTEE_PERIOD": "256",
    "ETH1_FOLLOW_DISTANCE": "2048",
    "INACTIVITY_SCORE_BIAS": "4",
    "INACTIVITY_SCORE_RECOVERY_RATE": "16",
    "EJECTION_BALANCE": "16000000000",
    "MIN_PER_EPOCH_CHURN_LIMIT": "4",
    "CHURN_LIMIT_QUOTIENT": "65536",
    "PROPOSER_SCORE_BOOST": "40",
    "DEPOSIT_CHAIN_ID": "5",
    "DEPOSIT_NETWORK_ID": "5",
    "DEPOSIT_CONTRACT_ADDRESS": "0xff50ed3d0ec03ac01d4c79aad74928bff48a7b2b",
    "MAX_COMMITTEES_PER_SLOT": "64",
    "TARGET_COMMITTEE_SIZE": "128",
    "MAX_VALIDATORS_PER_COMMITTEE": "2048",
    "SHUFFLE_ROUND_COUNT": "90",
    "HYSTERESIS_QUOTIENT": "4",
    "HYSTERESIS_DOWNWARD_MULTIPLIER": "1",
    "HYSTERESIS_UPWARD_MULTIPLIER": "5",
    "SAFE_SLOTS_TO_UPDATE_JUSTIFIED": "8",
    "MIN_DEPOSIT_AMOUNT": "1000000000",
    "MAX_EFFECTIVE_BALANCE": "32000000000",
    "EFFECTIVE_BALANCE_INCREMENT": "1000000000",
    "MIN_ATTESTATION_INCLUSION_DELAY": "1",
    "SLOTS_PER_EPOCH": "32",
    "MIN_SEED_LOOKAHEAD": "1",
    "MAX_SEED_LOOKAHEAD": "4",
    "EPOCHS_PER_ETH1_VOTING_PERIOD": "64",
    "SLOTS_PER_HISTORICAL_ROOT": "8192",
    "MIN_EPOCHS_TO_INACTIVITY_PENALTY": "4",
    "EPOCHS_PER_HISTORICAL_VECTOR": "65536",
    "EPOCHS_PER_SLASHINGS_VECTOR": "8192",
    "HISTORICAL_ROOTS_LIMIT": "16777216",
    "VALIDATOR_REGISTRY_LIMIT": "1099511627776",
    "BASE_REWARD_FACTOR": "64",
    "WHISTLEBLOWER_REWARD_QUOTIENT": "512",
    "PROPOSER_REWARD_QUOTIENT": "8",
    "INACTIVITY_PENALTY_QUOTIENT": "67108864",
    "MIN_SLASHING_PENALTY_QUOTIENT": "128",
    "PROPORTIONAL_SLASHING_MULTIPLIER": "1",
    "MAX_PROPOSER_SLASHINGS": "16",
    "MAX_ATTESTER_SLASHINGS": "2",
    "MAX_ATTESTATIONS": "128",
    "MAX_DEPOSITS": "16",
    "MAX_VOLUNTARY_EXITS": "16",
    "SYNC_COMMITTEE_SIZE": "512",
    "EPOCHS_PER_SYNC_COMMITTEE_PERIOD": "256",
    "INACTIVITY_PENALTY_QUOTIENT_ALTAIR": "50331648",
    "MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR": "64",
    "PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR": "2",
    "MIN_SYNC_COMMITTEE_PARTICIPANTS": "1",
    "UPDATE_TIMEOUT": "8192",
    "INACTIVITY_PENALTY_QUOTIENT_BELLATRIX": "16777216",
    "MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX": "32",
    "PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX": "3",
    "MAX_BYTES_PER_TRANSACTION": "1073741824",
    "MAX_TRANSACTIONS_PER_PAYLOAD": "1048576",
    "BYTES_PER_LOGS_BLOOM": "256",
    "MAX_EXTRA_DATA_BYTES": "32"
  }

which contains none of these domain types. For comparison, hitting a teku node gives
{
    "DEPOSIT_CONTRACT_ADDRESS": "0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b",
    "MIN_ATTESTATION_INCLUSION_DELAY": "1",
    "SLOTS_PER_EPOCH": "32",
    "PRESET_BASE": "mainnet",
    "TERMINAL_TOTAL_DIFFICULTY": "10790000",
    "INACTIVITY_SCORE_BIAS": "4",
    "SHUFFLE_ROUND_COUNT": "90",
    "TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH": "18446744073709551615",
    "MAX_EFFECTIVE_BALANCE": "32000000000",
    "DOMAIN_BEACON_PROPOSER": "0x00000000",
    "DOMAIN_SYNC_COMMITTEE": "0x07000000",
    "PROPOSER_SCORE_BOOST": "70",
    "MAX_ATTESTER_SLASHINGS": "2",
    "DOMAIN_SELECTION_PROOF": "0x05000000",
    "MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX": "32",
    "INACTIVITY_PENALTY_QUOTIENT_BELLATRIX": "16777216",
    "INACTIVITY_PENALTY_QUOTIENT": "67108864",
    "SAFE_SLOTS_TO_UPDATE_JUSTIFIED": "8",
    "SECONDS_PER_ETH1_BLOCK": "14",
    "HYSTERESIS_UPWARD_MULTIPLIER": "5",
    "MIN_SEED_LOOKAHEAD": "1",
    "VALIDATOR_REGISTRY_LIMIT": "1099511627776",
    "MIN_DEPOSIT_AMOUNT": "1000000000",
    "SLOTS_PER_HISTORICAL_ROOT": "8192",
    "PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR": "2",
    "MIN_VALIDATOR_WITHDRAWABILITY_DELAY": "256",
    "DOMAIN_VOLUNTARY_EXIT": "0x04000000",
    "TARGET_COMMITTEE_SIZE": "128",
    "MAX_VALIDATORS_PER_COMMITTEE": "2048",
    "TERMINAL_BLOCK_HASH": "0x0000000000000000000000000000000000000000000000000000000000000000",
    "MIN_GENESIS_TIME": "1614588812",
    "ALTAIR_FORK_EPOCH": "36660",
    "HYSTERESIS_QUOTIENT": "4",
    "ALTAIR_FORK_VERSION": "0x01001020",
    "RANDOM_SUBNETS_PER_VALIDATOR": "1",
    "DOMAIN_DEPOSIT": "0x03000000",
    "MAX_BYTES_PER_TRANSACTION": "1073741824",
    "DOMAIN_CONTRIBUTION_AND_PROOF": "0x09000000",
    "UPDATE_TIMEOUT": "8192",
    "WHISTLEBLOWER_REWARD_QUOTIENT": "512",
    "PROPOSER_REWARD_QUOTIENT": "8",
    "DEPOSIT_CHAIN_ID": "5",
    "DOMAIN_RANDAO": "0x02000000",
    "EPOCHS_PER_RANDOM_SUBNET_SUBSCRIPTION": "256",
    "EPOCHS_PER_HISTORICAL_VECTOR": "65536",
    "MIN_PER_EPOCH_CHURN_LIMIT": "4",
    "MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR": "64",
    "TARGET_AGGREGATORS_PER_SYNC_SUBCOMMITTEE": "16",
    "EPOCHS_PER_ETH1_VOTING_PERIOD": "64",
    "MAX_DEPOSITS": "16",
    "BELLATRIX_FORK_EPOCH": "112260",
    "HISTORICAL_ROOTS_LIMIT": "16777216",
    "SYNC_COMMITTEE_SIZE": "512",
    "TARGET_AGGREGATORS_PER_COMMITTEE": "16",
    "DOMAIN_SYNC_COMMITTEE_SELECTION_PROOF": "0x08000000",
    "EPOCHS_PER_SLASHINGS_VECTOR": "8192",
    "MIN_SLASHING_PENALTY_QUOTIENT": "128",
    "PROPORTIONAL_SLASHING_MULTIPLIER": "1",
    "MAX_VOLUNTARY_EXITS": "16",
    "HYSTERESIS_DOWNWARD_MULTIPLIER": "1",
    "DOMAIN_BEACON_ATTESTER": "0x01000000",
    "DOMAIN_APPLICATION_BUILDER": "0x00000001",
    "EPOCHS_PER_SYNC_COMMITTEE_PERIOD": "256",
    "GENESIS_DELAY": "1919188",
    "MAX_SEED_LOOKAHEAD": "4",
    "BYTES_PER_LOGS_BLOOM": "256",
    "ETH1_FOLLOW_DISTANCE": "2048",
    "SECONDS_PER_SLOT": "12",
    "MIN_GENESIS_ACTIVE_VALIDATOR_COUNT": "16384",
    "MIN_SYNC_COMMITTEE_PARTICIPANTS": "1",
    "MAX_ATTESTATIONS": "128",
    "BELLATRIX_FORK_VERSION": "0x02001020",
    "GENESIS_FORK_VERSION": "0x00001020",
    "DEPOSIT_NETWORK_ID": "5",
    "PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX": "3",
    "SYNC_COMMITTEE_SUBNET_COUNT": "4",
    "EJECTION_BALANCE": "16000000000",
    "MAX_COMMITTEES_PER_SLOT": "64",
    "SHARD_COMMITTEE_PERIOD": "256",
    "EFFECTIVE_BALANCE_INCREMENT": "1000000000",
    "INACTIVITY_PENALTY_QUOTIENT_ALTAIR": "50331648",
    "DOMAIN_AGGREGATE_AND_PROOF": "0x06000000",
    "MIN_EPOCHS_TO_INACTIVITY_PENALTY": "4",
    "BASE_REWARD_FACTOR": "64",
    "MAX_EXTRA_DATA_BYTES": "32",
    "CONFIG_NAME": "prater",
    "MAX_PROPOSER_SLASHINGS": "16",
    "CHURN_LIMIT_QUOTIENT": "65536",
    "INACTIVITY_SCORE_RECOVERY_RATE": "16",
    "BLS_WITHDRAWAL_PREFIX": "0x00",
    "MAX_TRANSACTIONS_PER_PAYLOAD": "1048576"
  }

Which includes all 11 domain types linked above.
Describe the solution you'd like
Lodestar includes all domain types in the /eth/v1/config/spec endpoint.
Describe alternatives you've considered
It looks like I can do some sort of custom preset to overwrite/inject custom presets into lodestar, which maybe hopefully would get passed through to the endpoint, but I haven't been able to figure out how to do this.
Additional context
Ultimately I'd like to fully support lodestar in go-eth2-client such that we can support lodestar in Obol. I'm not sure if exposing these values in the spec endpoint however will be the only blockers to full support. TBD.

Lodestar includes all domain types in the /eth/v1/config/spec endpoint.

Yes definitely! Will fix asap

Thanks guys!


"wagtailroutablepage_tags" is not a registered tag library.

Issue Summary
When trying to get a routablepageurl I load the wagtailroutablepage_tags but isn't recognized as a registered tag library
Steps to Reproduce

Create a RoutablePage
Create a corresponding html file for the RoutablePage
Add the following line of code to your HTML: {% load wagtailroutablepage_tags %}
You will see the following error when trying to view the page: 'wagtailroutablepage_tags' is not a registered tag library.

Any other relevant information. For example, why do you consider this a bug and what did you expect to happen instead?

I have confirmed that this issue can be reproduced as described on a fresh Wagtail project: (yes)
I would expect the tag to be registered by default

Technical details

Python version: 3.12.3.
Django version: 4.2.13.
Wagtail version: 5.2.5.
Browser version: Chrome 126.

Working on this
Anyone can contribute to this. View our contributing guidelines, add a comment to the issue once you’re ready to start.

Have you added wagtail.contrib.routable_page to INSTALLED_APPS as per https://docs.wagtail.org/en/stable/reference/contrib/routablepage.html#installation ?

This fixes the issue. My apologies for not reading the documentation thoroughly enough.


implement upsert support on pinot

Pinot is a distributed real-time OLAP engine that can provide second-level data freshness by ingesting kafka events and capacity to manage months of historical data load from various data sources such as HDFS, schemaless, etc. However, Pinot right now mostly functions as an append-only storage system. It doesn’t allow modify/delete of existing records with the exception of overriding all data within a time range with offline tables. This limits the applicability of pinot system due to a lot of use-cases requiring updates to their data due to the nature of their events or needs for data correction/backfill. In order to extend the capacity of pinot and serve more use-cases, we are going to implement the upsert features in Pinot which allows users to update existing records in Pinot tables with its kafka data input stream.
Some initial requirements for the upsert projects:

Only support for full update to pinot event

Only support for Kafka-compatible queue ingestion model

Single pinot server/table can handle 10k/sec ingestion message rate

Each pinot server can handle 1 Billion records or 1TB storage

Ingestion latency overhead compared to non-upsert model < 1min

Query latency overhead compared to non-upsert model < 50%

Data retention < 2 weeks

summary on 1st discussion of upsert design (May 15th):

@Jackie-Jiang points out that current design of rewriting queries for upsert table is problematic as this cause too much overhead in pinot query process with so many or-conditions. We should look into method to reduce the query overhead in upsert table

We should look into message delivery from coordinator service to pinot server. @Jackie-Jiang proposed methods on re-using existing download API on coordinator service to deliver messages from coordinator to server for unified API.

How to handle kafka topic partition change. @mcvsubbu suggested that we should look into how to handle accidental expand of kafka topic if that happens.

@jamesyfshao can you add a pointer to your design doc in this issue? thanks

@jamesyfshao can you add a pointer to your design doc in this issue? thanks

please use this design doc for now https://docs.google.com/document/d/1SFFir7ByxCff-aVYxQeTHpNhPXeP5q7P4g_6O2iNGgU/edit. We might have permission issue for new ppl as it is still WIP to keep the discussion more organized. Once it is more close to "ready" state I will put it on apache site

It has been a while since the upsert work started. We'd like to reflect on the challenges encountered, share some learnings and also a revisit on the upsert design.

Added the docs at https://docs.pinot.apache.org/basics/data-import/upsert


26 stylereboot

Restyles pages to left align with courier font.

Remove font since we aren't using them?
Also the google font tags from the index.html.

Everything looks good!


SRV validation issue

Hello,
first of all, thanks a lot ross amd @vanbroup for your work on CloudFlare SRV records, i'm already using it ^^.
I have an issue with SRV validation. I've read in code that you have to fix things about it.
Validation check absolutely wants a "value" field (and, as integers, not unicode) so i just can't validate my SRV record. Here what i've put in my config file (without value field because it seems to be not required normally):
_myservice._tcp:
  port: 43166
  priority: 1
  target: myservice.mydomain.tld.
  ttl: 300
  type: SRV
  weight: 1

Edit: just seend that we are talking of validation for SRV here:
https://github.com/github/octodns/pull/185#issuecomment-363002451
But suggested to open an issue so, here you go :).
Thank you for your support!

The SRV record type takes the following format when there's multiple values:
_srv._tcp:
  ttl: 600
  type: SRV
  values:
  - port: 30
    priority: 10
    target: foo-1.githubtest.net.
    weight: 20
  - port: 30
    priority: 12
    target: foo-2.githubtest.net.
    weight: 20

As is the case for all of the multi-value record types if there's only one you can drop back to using just value.
_srv._tcp:
  ttl: 600
  type: SRV
  value:
    port: 30
    priority: 12
    target: foo-2.githubtest.net.
    weight: 20


GPLv3 -> LGPLv3?

Hi Vansh,
Looks like you did some great work with this library. Unfortunately, I've yet to test it because the GPLv3 is too restrictive for me. On that note, I'm hardly the only one that cannot use your library due to its strict licensing. Is there a concrete reason for you to have chosen the GPLv3? Aside from your noble free software goals, the license will only hurt this library's popularity, especially when there are other libraries out there solving the same problem (e.g. https://pub.dev/packages/intl_phone_number_input). Your library seems to have a nicer API though that's why I'm asking. Would you mind changing it to some less restrictive license like the LGPLv3, MIT or Apache v2? Thanks.
Kind regards,
Jonas

Sure, I will see through other licenses and update that if possible

Updated to MIT.

thanks!


mDNS fix: TXT records must not be empty

According to RFC 6763, "An empty TXT record containing zero strings is not allowed. DNS-SD implementations MUST NOT emit empty TXT records."
By simply emitting a TXT record with a zero-length key-value pair, commissioning of devices based on the built-in mDNS implementation now succeeds when issued from Apple-based devices like the iPhone.

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


Xcode 7.0 Qt 5.5.0 build fails

The QT5 package notes this pitfall:
"Default version of Xcode should not be set to 7.0 for Qt 5.5.0. See bug 47383"
I'm trying to build the examples at https://github.com/forexample/qt-ios-examples
and hitting the exact same error
lalr.cpp:241:1: error: declaration of anonymous struct must be a definition
struct _Nullable: public std::unary_function<Name, bool>
^
lalr.cpp:241:56: error: expected unqualified-id
struct _Nullable: public std::unary_function<Name, bool>
                                                       ^
lalr.cpp:303:98: error: expected expression
          NameList::iterator nn = std::find_if (rule->rhs.begin (), rule->rhs.end (), std::not1 (_Nullable (this)));
                                                                                ^
lalr.cpp:638:107: error: expected expression
                  NameList::iterator first_not_nullable = std::find_if (dot, rule->rhs.end (), std::not1 (_Nullable (this)));

Is there a current workaround? I noticed some homebrew fixes here https://github.com/Homebrew/homebrew/commit/7d6658232bd2743a957219c480a3d137a084d851

Latest Hunter release works around the issue. Closing.

Latest Hunter release works around the issue

Strange... There was some changes in Qt build instructions but no workaround for this bug :)
Personally I'm using next set of environment: xcode-select points to the 6.4 version, toolchain to ios-9-0 (Xcode 7.0 default SDK). You can take a look for the hints: https://github.com/ruslo/hunter/issues/238

I noticed some homebrew fixes here Homebrew/homebrew@7d66582

This might be helpful (also there is a patch in bug itself). Problem with Qt is that the release archive is not taken from the git repository exactly. Archive is the result of fusing several submodules. It makes usual fork-upstream => release-hunter move tricky. Quite the same happens to Boost. So I've decided just to commit raw release to new git repository (e.g. https://github.com/hunter-packages/boost/tree/boost-1.56.0) and apply patches there (e.g. https://github.com/hunter-packages/boost/commit/7900bfe00ebc6b00d6e95b02c0646578abda007d). If you're interested I can create Qt repository for you so we can do the same.

Latest Hunter release works around the issue
Sorry, I removed that comment, it still errors with the same build issue - just later on

I'll try running xcode 6.4 side by side for now - would really like to be using 7 though.
A new git repo for applying QT patches might be useful so Hunter can move faster then upstream fixes. :)

Also while we are on the note of QT - does Hunter support pointing to a local pre-built version of QT to import instead of building from source?
This would

Remove the time taken (a long time) to build all architectures from source
Use modified versions of QT

A new git repo for applying QT patches might be useful so Hunter can move faster then upstream fixes. :)

See: https://github.com/hunter-packages/Qt
I'm in process of creating 5.5.0 branch. It may take some time since I need to commit huge number of files. I will let you know when it's done.

Also while we are on the note of QT - does Hunter support pointing to a local pre-built version of QT to import instead of building from source?

No. The main issue with such approach is the dependencies. Though for now Qt dependencies doesn't resolved 100% correctly but in general this is a huge problem :)

Maybe you noted how to do such a thing with packages, but I didn't see it.

Solution to this problem is to share a Cache directory: https://github.com/ruslo/hunter/issues/75
The main idea is that Cache directory (see $HUNTER_ROOT/_Base/Cache) is a kind of relocatable folder with packed archives and meta-data about package toolchain/config options/dependencies/... which you can copy back and forth.

This would...

Well benefits are obvious :) Also it will help to use Hunter with a lot of dependencies on Travis (Jenkins should works fine already).

See: https://github.com/hunter-packages/Qt

Awesome - Thank you!

Solution to this problem is to share a Cache directory: #75

Yep, that sounds like a good approach.

I will let you know when it's done

Branch hunter-5.5.0 created: https://github.com/hunter-packages/Qt/tree/hunter-5.5.0
@jneidlinger Feel free to apply patches to this branch if you want :) You can apply them as a pull request if you want me to review it or do the push to hunter-5.5.0 and release (you should have enough permissions to do it).

I put up a PR https://github.com/hunter-packages/Qt/pull/1

I put up a PR hunter-packages/Qt#1

@jneidlinger Thanks. Patched version released: https://github.com/hunter-packages/Qt/releases/tag/v5.5.0-p0

@jneidlinger Please test it with Hunter and let me know if it fix the Xcode 7.0 errors, thanks.

Looks like its going to build... but 3 hours later and it's still building :/
Is there a way we can enable passing -J flags to make to let us parallel-ize when building dependencies?

Is there a way we can enable passing -J flags to Make to let us parallel-ize when building dependencies?

@jneidlinger Yes, see wiki: https://github.com/ruslo/hunter/wiki/usr.variables#hunter_jobs_number
I guess maximum number is already set for you.
For Qt it applied here: https://github.com/ruslo/hunter/blob/d1576715578001f33d3a22fa48497dcfd436fc97/cmake/schemes/url_sha1_qt.cmake.in#L210

Looks like its going to build... but 3 hours later and it's still building :/

Note that by default iOS will build 5 architectures (armv7, armv7s, arm64, i386, x86_64) and two variants (Debug/Release). So it 10 times slower than for example using ios-8-4-armv7 and set all 3rd parties to Release by HUNTER_CONFIGURATION_TYPES=Release (see docs). Note that default HUNTER_CONFIGURATION_TYPES=Debug;Release goes to one toolchain-id and custom HUNTER_CONFIGURATION_TYPES=Release goes to another toolchain-id.

I don't see build_opts applied here:
https://github.com/ruslo/hunter/blob/d1576715578001f33d3a22fa48497dcfd436fc97/scripts/qt-build.cmake.in
or am I mistaken?

@jneidlinger I've take a closer look and it's seems that actually it's a bug introduced by my commit: https://github.com/ruslo/hunter/commit/6963bc7ce079aba5c58cf3ea6c55a2575baecc1b
Thanks for observation, here is the fix: https://github.com/ruslo/hunter/commit/7fd2f3304ce9ce788fa33a1dfd093a1247bfa4fd
New version: https://github.com/ruslo/hunter/releases/tag/v0.12.18
Sorry :)

Thanks - it built much faster now!
Qt builds - but it looks like there might be a problem with the Universal Library - building the ios QT examples for a device (ARM) work fine, but when building for the simulator
Calling:

Jordans-MacBook-Pro:qt-ios-examples-master jneidlinger$ cmake -H. -B_builds/ios-9-0 -GXcode -DCMAKE_TOOLCHAIN_FILE="${POLLY_ROOT}/ios-9-0.cmake" -DHUNTER_STATUS_DEBUG=ON

Finishes, I open the xcode proj to build for the simulator, yields:

ld: warning: ignoring file /Users/jneidlinger/.hunter/_Base/89b148a/30ca105/2d207c4/Install/lib/libQt5Widgets_debug.a, missing required architecture x86_64 in file /Users/jneidlinger/.hunter/_Base/89b148a/30ca105/2d207c4/Install/lib/libQt5Widgets_debug.a (3 slices)
Undefined symbols for architecture x86_64:
"qRegisterResourceData(int, unsigned char const*, unsigned char const*, unsigned char const*)", referenced from:
qInitResources_main() in qrc_main.o
...
...
...

I checked the built libs:

Jordans-MacBook-Pro:lib jneidlinger$ lipo -info libQt5Widgets_debug.a
Architectures in the fat file: libQt5Widgets_debug.a are: armv7 armv7s arm64

and indeed, they do not contain x86_64...

but it looks like there might be a problem with the universal lib creation

This is a known Qt defect: https://bugreports.qt.io/browse/QTBUG-47314 (see wiki).
It's possible to make a workaround by adding extra script to install stage which will combine all libQt5*_simulator.a (i386, x86_64) and libQt5*.a (armv7, armv7s, arm64) into libQt5*.a (i386, x86_64, armv7, armv7s, arm64).

It's possible to make a workaround by adding extra script to install stage which will combine all libQt5*_simulator.a (i386, x86_64) and libQt5*.a (armv7, armv7s, arm64) into libQt5*.a (i386, x86_64, armv7, armv7s, arm64).

I think that would be great. In the mean time - the patched QT 5.5 is working fine (I tested in on a device with the iOS QT examples)

I think that would be great

See https://github.com/ruslo/hunter/issues/252.
I've leaved an implementation notes so I if you can feel free to write this script.

I've repacked sources using 7z archiver. It saves us about 50% of space :)
Update: https://github.com/ruslo/hunter/commit/4ca43fd68925cc6ab98b3ee37c638dfcd0ea1e35
Version: https://github.com/ruslo/hunter/releases/tag/v0.12.19
@jneidlinger Fixed, closing this one


Refactor templates to use more "optional chaining" (?.) operators

This will save us from a lot of unnecessary if statement nesting.
For example:

Related to #5
Related to #30


About the training and testing setting.

There are many difference setting between FeatDepth & Monodepth2. like Gpus, bs, training epochs, lr. What is your basis for modifying these settings from Monodepth2 ?
Have your ever made comparison experiments?
Besides, I wonder if the reported performance choice the best weights from different epochs in training phase according to the loss on the test set? As I konw, Monodepth2 used the last epoch for their reported results.

 We have different architecture, why we should have the same settings as monodepth2?
Why we have to choose the best weight according to the test set performance?

I just wonder have you ever try their training setting and whether performance will be different. Cause you note in https://github.com/sconlyshootery/FeatDepth/issues/48 that you choose the best weight according to the loss on the test set. So I wonder if you do the same on DepthNet and PoseNet.

I just wonder have you ever try their training setting and whether performance will be different. Cause you note in https://github.com/sconlyshootery/FeatDepth/issues/48 that you choose the best weight according to the loss on the test set. So I wonder if you do the same on DepthNet and PoseNet.

I can not find the issue.
I tried other settings, but they are not exactly the same as theirs, and the performance wouldn't change largely when settings change.

I can not find the issue. I tried other settings, but they are not exactly the same as theirs, and the performance wouldn't change largely when settings change.

Sorry, maybe link is invalid.  Thanks for the reply. The title of cited issue is "How to choose featurenet when training separately? ".  Link
It metioned that "When traning a featurenet, one could store its weight at different epoches. And how to choose the best weight to restore at following traning of posenet and depthnet? " and you replied "According to the loss on the test set."
So maybe just like Featurenet, the saved weights of DepthNet and PoseNet are also the best epoch with lowest loss on the test set rather than last epoch in training?


Pearley

Hi, I opened this separate issue so we don't spam everyone :)
I'm glad you liked Pearley. It really is a direct port and the code is almost identical. I'll try to keep it aligned when new features are added to nearley. There is a minor difference, because I'm using an external library for lexing. But that's not significant.
I would be happy if you could explain line 67, but really I don't have a strong grasp on the algorithm anyway, so you may have to add a lot of context :)
I would like to learn more about it, of course. I'm especially interested in making it faster, perhaps by pre-calculating some moves? I'm not sure.
As for ambiguity, I understand it can't be detected in the grammar. I still think it's possible to write code that will catch the common cases.
Another solution which would be relatively satisfying is if we could catch the ambiguity as it happens, instead of at the end of the parse. Perhaps that's impossible for some reason, I'm not sure (see: my lack of understanding of the algorithm).
As for automating the debugging process - that's a nice idea, which I'm afraid to attempt :)
Sorry for the wall of text!
Let me know your thoughts.

Pearley is really cool! When you think it's "done", I would happily put a link to it in this repository's README file. Imagine being able to write a parser in nearley and get a Python parser for free?!
(PlyPlus seems like a pretty famous parsing module—you must share some of your "module advertising" tips with me sometime. :-) )
Okay, so the algorithm, which I've written about here, works by maintaining a table where every column represents a token of input. Each row of the table represents a partial parse (called an Earley state) and is basically the representation of a production rule's expansion, with a dot representing where you are in that production rule. This is the output of nearley-test, by the way. An example of an Earley state is
statement -> expression • ";" newline
At each iteration, nearley looks at each of these states in the current row of the table, and looks for states that are "expecting" the token you fed it. The state above expects a semicolon, so if you fed the algorithm a semicolon, it would create a fresh state in the next column of the table, that looks like
statement -> expression ";" • newline
Then, it goes ahead and adds new states if the new state expects a nonterminal. Here, for example, it'll add the states
newline -> • "\r\n"
and
newline -> • "\n"
This is what is happening on line 67.
Whenever you create an Earley state where the dot is at the end (i.e. not expecting anything), you go back and find where that state was created, and push it along. So if the next input to the parse was "\n", then you would add the state
newline -> "\n" •
Since this state is complete, you would bump along its creator, getting the state
statement -> expression ";" newline •
and then you'd have to go and find where that state was created, etc.
It turns out that when you have empty rules, then this process goes into an infinite loop because an empty rule is completed as soon as it is created. This sucks, because empty rules are actually useful. For example,
maybe_whitespace -> empty | whitespace
So, give or take, that's why there's that whole epsilon_closure trickery.
Hope that vaguely explains what's going on there. As a corollary, you should be able to figure out why ambiguity needs to be allowed by this algorithm.
Now, for debugging. I would suggest that first, you create special "instrumented" postprocessors for each production rule, such that the processed data knows the production rule that was used to make it. So, take
expr -> expr "+" expr | expr "-" expr
and turn it into
expr -> expr "+" expr {% function(d) {return ["production1", d]; } %} |
number {% function(d) {return ["production2", d]; } %}
Then you parse the input that causes ambiguity, and get a data structure for each possible ambiguous parsing:
1+1+1 would yield
["production1", [ ["production2", 1], ["production1", [["production2", 1], ["production2", 1]]] ] ]
["production1", [ ["production1", [["production2", 1], ["production2", 1]]], ["production2", 1] ] ]
Then, do some sort of "tree diff" algorithm to figure out which of the productions is getting parsed in two different ways, and report it to the user. In this case, it would show that a production1 was being parsed in two different ways.
I would recommend writing this as a plugin for nearley before porting it to Python, so that I can help you out if you get stuck.
Hope that helps!
(Sorry if this is unclear, or if there are bugs in my writing. I type this in a hurry because I need to go to a meeting right now!)

Hi, it's been a while but I have some updates!
First, thank you for the explanations.
I wrote a new library called Lark. It has your Earley implementation as the default, but also allows to switch to parsing using LALR(1) with the same grammar. I'm not using PLY anymore, I wrote my own LALR(1) implementation. I can write one for nearley if you like.
It seems that in this span nearley has become very famous and has much surpassed plyplus (my old library) in its popularity. Maybe I should be the one asking for tips.
It would be cool to have a converter from nearley grammar to lark, and vice-versa. I might just write one. It shouldn't be difficult to make an accurate translation, except for user-code of course.

Hey! Lark looks super-cool; I really like the idea of having multiple engines "under the hood" to give users flexibility.
A nearley <=> lark converter would be amazing — it would allow people to convert easily between JavaScript and Python parsers! Even if postprocessors get stripped, it would be incredibly useful to a lot of people. Please do let me know if you embark on this project. :D
(P.S. The reason nearley suddenly became kind of popular is that someone recently wrote a Medium post that became popular on social media.)

I'm definitely putting in on my TODO list!
To that end, I have a small question about your method of tokenization.
I noticed that in csscolor.ne, you have:
hexdigit -> [a-fA-F0-9]
But you also "import" the following
unsigned_int -> [0-9]:+
These two regular expressions collide, and if one is chosen over the other it could cause a parse error.
I can think of a few possible solutions for this, but they all seem either very complex or too slow.
How do you handle this issue?

nearley doesn't tokenize for you. It either parses a stream of characters "raw" (as in the csscolor example above), or it expects input to be already-tokenized. Does that answer your question?

So in the case of
hexdigit -> [a-fA-F0-9]
Nearley treats it like this?
hexdigit -> "a"|"b"|"c"|...|"8"|"9"

Yes, it's equivalent to that.
In reality, [a-fA-F0-9] is like a special "character" that is equal to "a" and "b" and "c", etc. Internally, nearley stories the possible terminals as either

An object with a .test property, where xxx.test(tok) tells you whether tok matches (regexes fit this, because in JavaScript regexes have a .test property)
Something that you can compare with === (in JavaScript, characters (i.e. single-letter strings) fit this)

So what happens is that nearley creates a nonterminal [a-fA-F0-9] which is a JavaScript regex, and when testing input it notices that the regex has a .test method and so tries to match incoming characters against the regex.
The code that does this, by the way, is here: https://github.com/Hardmath123/nearley/blob/master/lib/nearley.js#L45

Nearley->Lark is done!
I tested it on a few of the grammars in nearley/test and also on csscolor.ne, and it works great for a first version :)
You can see it here:
https://github.com/erezsh/lark/blob/master/tools/nearley.py
The test() method shows how to use the resulting grammar.
I might do a Lark->Nearley at some point. The main challenge is splitting up those regular expressions into 1-char chunks lol

Interesting that you wrote it in Python… I would totally have written it in JS, by hacking on top of the existing compiler.
But… very cool! I'm going to put a link to this in the README. :D

It should be pretty easy to write a javascript version.
I chose to use lark because I'm hoping to use Js2Py to convert the functions in the nearley grammars to python. ( https://github.com/PiotrDabkowski/Js2Py )
Out of curiosity, is there something similar to this in Javascript?
Btw, I chose to move the tools into the lark directory, so you can install them with pip:
$ pip install lark
And then do something like:
$ python -m lark.tools.nearley ~/nearley/ < ~/nearley/builtin/number.ne
So if you can fix the link to point to https://github.com/erezsh/lark/blob/master/lark/tools/nearley.py
I would really appreciate it. Cheers for the link, and sorry for the mixup!

Oh, I see the link is simple to Lark. Nevermind then :)
I'll add instructions on how to use the converter soon!

Oh, wow, the Js2Py idea is a very clever way to handle postprocessors. Sadly, I don't know of any JS-to-Python converters written in JavaScript. Maybe it can be a two-stage process, where you first convert the grammar and then convert the postprocessors separately? Good luck!

Well, it took longer than I expected, but it's working!
https://github.com/erezsh/lark#how-to-use-nearley-grammars-in-lark
It's still experimental, but it's working! The only missing feature that I know of is macros.

Oh, goodness, that's fantastic! Thank you, Erez.
Yes, nearley macros are certainly a bit of a hack. I'm sorry about that! :-) I suppose one solution could have been to operate on compiled .ne.js files — and hence have nearleyc handle macro expansion/importing/EBNF modifiers — but of course, depending on your architecture, at this point it might be too much trouble for you to make the switch. In any case, it shouldn't be too hard to figure out the macros, and I would be happy to help if you run into specific issues.

I'm glad you think so! :)
I wanted to write a Lark->Nearley converter too, but that would require lexer support in nearley. Perhaps I could do the lexing outside nearley.. Nearley should support parsing of non-string sequences, right?
Regarding the macros, we now have two ideas.

Use the compiled grammar. I like this, because a smaller interface is a better interface. I won't have to implement macros, and future features in nearley probably won't break my tool either.  But that means I'll have to parse JS, right? So any changes to the .ne.js file will break the tool (and I don't think you won't to commit to freezing it at this point). Any chance I can get the output in some "standard protocol", similar to the .ne files?

Alternatively, I'm planning to implement macros for lark anyway. So when I do that, I can convert your macros to mine (and hope they're compatible).

I would prefer option 1, if there was an elegant way to do it.

Hmm, yes, I forgot that the output of nearleyc is JS, not JSON. Perhaps the easiest way would be a quick 5-line nodejs frontend to nearley->lark that converted it into a Python-readable format? (One of the unsaid goals of nearley at some point was to have some sort of "universal" — or at least portable — format to express grammars… guess that didn't work out! :P)
As for lexers for lark->nearley, you should talk to @tjvr about that! We're working on (i.e. done with, but kind of too scared to merge) lexer support. :-)

@tjvr How's the lexer coming along?

@erezsh Nearly there! Have a look at #220 and https://github.com/tjvr/moo :-)

Looks nice. You can find line-breakers automatically, simply by looking for newline characters, or the dot-matches-newline flag. You might get false-positives but they will be rare, and only slightly affect performance anyway.
Another thing you should take in mind, if you haven't already, is that the ordering of regexps, by itself, is not enough to solve all the common requirements from a lexer. For example, try to make your lexer match "begin" as a keyword but "beginner" as a variable name (\w+). The easy way out is to use callbacks and let the user deal with it. But I used in Lark another method that solves it automatically for the common case. Let me know if you're interested and I'll explain it.

@erezsh Yeah—moo already handles keywords, see https://github.com/tjvr/moo#keywords :-)

@tjvr Great, this is exactly my solution too :) But I automatically identify keywords, because they are always just strings without any special characters.

Hello Guys, thanks for your libraries!
@erezsh any chance you have finished your lark -> nearley converter ?

@GoMino Sorry, I didn't try to write it. What were u hoping to use it for?
FWIW, there's already a lot of infrastructure in place to make such a tool easy to write (i.e. Lark's internal state already serializes into a convenient json representation)


Add explicit requirement for backend to support rating updates

When assessing the Final Project we have seen that in a lot of solutions the rating buttons that were added during lvl 100 are not using the backend at all, and are only done on the frontend side.
After checking with the trainees this was likely because the backend requirements at the level 200 page did not ask for this to be implemented, and a lot of trainees when checking the lvl 300 requirements they were only updating the backend to use a database for the features required here, and did not add the extra bit required for ratings to work.
This Pull Request makes it explicit that the trainees will need to include a way to handle rating changes when implementing the backend at lvl 200. It tries however not to be explicit on how to design this endpoint (for example it doesn't ask them to use PATCH /:id or similar) to allow the trainees to come up with their own ideas how they wish to implement this

Superseeded by the new assessment


Vue Demi missing export hasInjectionContext

Reproduction
https://github.com/acollins1991/pinia-vue-demi-bug/tree/main/friendly-sites-builder
Steps to reproduce the bug

Run npm create vue@latest to create a new vue project
Run npm i && npm run dev
Check browser console

Expected behavior
No errors in the console
Actual behavior
Prints the following error;
Uncaught SyntaxError: The requested module '/node_modules/pinia/node_modules/vue-demi/lib/index.mjs?v=00078bdd' does not provide an export named 'computed'
Additional information
Fixed in https://github.com/vueuse/vue-demi/releases/tag/v0.14.6 release of Vue Demi
Tested update locally and doesn't break existing tests.

The fix was introduced earlier on in vue-demi. You need to update the version you have installed locally, you don't even need https://github.com/vuejs/pinia/pull/2390 to fix this

Anyone experiencing this issue while using Bun needs to add vue-demi to trustedDependencies, since otherwise bun won't run the necessary postinstall scripts.


Do not validate disabled/ignored JUnit test classes

Purpose:
Skip classes annotated with @Ignore (JUnit4) and @Disabled(Junit5) from the analysis
Success criteria:
The output table does not include any methods from classes annotated with @Ignore (JUnit4) and @Disabled(Junit5)

implemented.


integration with backend

added _connect() to fs spec util building for receiving credentials

Also fixed the caching issue and made tests working on circle ci with optional pytorch, tensorflow, gcp and aws requirements.

@edogrigqv2 There is also one known issue. Since you are passing fs_mapper to caching, then if you store two tensors or multiple datasets they get cached into the same address. This would need to be fixed.


Update the Access behaviour to support slices

The PR updates the Access behaviour for images to allow slices in a manner similar to Nx. See the documentation in the Vix.Vips.Image module and the tests in the access_test.exs files.

In the current implementation, errors in the Access protocol return nil. In Nx they raise and exception.  Perhaps Vix should also raise?  What do you think?

The failing tests are for ranges like 1..10//1 which aren't supported on older releases. I'll have a think about how to work around that and push another commit when I work it out.

Phew, finally testing green in CI. Hardest part was working around syntax errors on older Elixir releases. Anyway, ready for your review and comment now.

This looks fantastic @kipcole9, will take a closer look tomorrow and merge.
Thank you!

I think we should too raise an exception similar to Nx, just for the sake of consistency.

I think we should too raise an exception similar to Nx, just for the sake of consistency.

Will update to raise, I agree its good to be consistent.

I'm still working on it. After review I'm not very happy with parts of the code. I will revise and update over the weekend - including raising on error.

I have finally updated the Access protocol implementation which I think reads much more clearly now. And the implementation now raises on error rather than returning nil. This means Vix is more consistent with Nx and eVision.

And now all checks are passing so subject to your review and and resulting updates I think this is good to go. Sorry for leaving this open for so long.

Merging this. We can address the pending things separately.
Thanks!

@akash-akya, I will work today on a separate PR on the changes you suggested.

I am already working on it. I just wanted a secondary opinion on this :)

Ah, ok, understood. I read the updated Nx docs and your proposal makes perfect sense and much better than an :all specifier.

Changes are here: https://github.com/akash-akya/vix/pull/81
Going to merge this, please let me know if you have any concerns.


Review of the CLI and supporting documentation

Description of issue or feature request:
The CLI tool and supporting documentation were recently completed for the CII silver badge.  However, their usability could sure use a fresh set of eyes.  The following docs and module need a review:
(1) QUICKSTART (doc)
(2) CLI (doc)
(3) CLI EXAMPLES (doc)
(4) repo.py (CLI module)

@yashsriv @SantiagoTorres
Can we trade code reviews?  I'd like to trade this review request for https://github.com/in-toto/in-toto/pull/209, https://github.com/in-toto/in-toto/pull/206, https://github.com/in-toto/in-toto/pull/208, and  the contributions for the CII proposals.
I'd mostly like feedback on the usability of the CLI and accuracy/readability of the docs.  Once these have been verified, I intend to mock test repo.py and finish the docstrings.

Sharing @SantiagoTorres's review of the CLI and supporting documents to better track the fixes/changes made in the referenced pull requests.

== quickstart.md ==

would be nice to refer to the installation instructions (e.g., "we
assume you installed tuf using any of the instructions [here])
There is no mention as to when the directory "tufrepo" was made,
that'd be helpful to mention either on the tool and/or the client
side.
The slugs could be improved a little bit. Probably add a couple of
instances of what was created (e.g., using tree).
I wonder if you'd like to try a very simple attack setup (e.g.,
replace the file in tufrepo/targets/testfile)

== CLI.md ==

I'm not entirely happy/confident with the default password choice.
Maybe it'd be a good idea to generate a sensible random one and echo
it to the terminal?
the --sign switch should be presented earlier.
There arer instances of "may be named anything". I'm not a native
speaker, but this sounds odd to me...
It appears that the "note: in the future, the user might have the
option of disabling automatic signing" is a stray/old comment.
Header: s/Delegation/Delegations/
I would rephrase the text in clean

== CLI_examples.md ==

xkey and xkey2 are never created. Although it may be obvious it's
worth mentioning it
Please inline what you're doing, even if it's repeating yourself.

= Repo.py =

I don't think the from future import print_function is necessary
anymore. I don't think we're supporting old (2.6-) versions of python
you require colorama, but you don't explicitly have it in the
requirements.
Can't you get the supported key types from somewhere else?
I don't understand the docstring on line 101, is process_arguments
a descriptive-enough function name?
can I actually do init + clean + add + remove in one invocation? I'd
probably want some validation as to what can be done together.
line 208 writes root, then everything is re-written again on line
227. Could it be possible that the logic can be coalesced into one if
statement to obtain the delegatee and have everything outside of the ifs?
same goes for the if-statement on revoke (and probably everywhere else)
the write to live repo operation seems to happen everywehere, could
we factor it out of the specific handlers?
288, 292, 296 read like magic strings to me, could we probably use
explicit constants?
Also, can we turn the else: into a guard clause?
307: "the filenames are written to .pub and  (private
key)" -> The keypair is written to disk with the filenames
for the private key, and .pub for the public key. All in all
this comment can be simplified quite a lot
336: do we necessarilly have to use concatenation?
469: is that the only thing that can go wrong in functions downstream?
on revoke you use =='s, but on sign_role you use membership in
singly-membered lists (not even a set). Is this intentional?
line 520 definitely requires a comment, or propperly importing the constant
do consider ioctl file locking on line 585...
629 consider using a set to check for membership.
review spacing, there are a lot of functions with 5 lines separating
them and there are others with 3
914: the metavar is missing a >
IMHO, setting the logging level is too verbose, can be made terser
(e.g., put them on a list and then look up in the list using the
parameter passed...).

Closing due to uncertain future of TUF cli. Re-visit with #811.


disk "unused disk 0" when clone with terraform

hello,
I'd like to point out that I'm starting out with terraform and proxmox
I created a debian vm by hand on proxmox that I converted into a template
I've written some terraform conf files to clone this template, ok the clones are done but I can't boot on my disk
The disk is in "unused disk 0" state
When I make the clone by hand it works fine!
I can't find a rational explanation ...
here are my conf files :
main.tf
resource "proxmox_vm_qemu" "proxmox" {

 count = var.instance_count
 name = element(var.name,count.index)
 target_node = var.target_node
 clone = var.clone

 #cpu
 cores = 1
 sockets = 1
 cpu = "host"

 #memory
 memory = "2048"

 #network
 network {
   bridge = element(var.network_bridge,count.index)
   model = "virtio"
}

 ipconfig0 = element(var.ip,count.index)
 nameserver = var.server_dns

 #disk
 disks {
     virtio {
       virtio0 {
         disk {
           size            = var.size
           storage         = "vg_proxmox"
         }
       }
     }
   }
}

providers.tf
terraform {
   required_providers {
       proxmox =  {
       source = "Telmate/proxmox"
       version = "3.0.1-rc1"
#       version = "2.9.14"
       }
   }
}

provider "proxmox" {
   pm_api_url = var.pm_api_url
   pm_api_token_id = var.pm_api_token_id
   pm_api_token_secret = var.pm_api_token_secret
   pm_tls_insecure = true
   pm_log_enable = true
   pm_log_file = "terraform-plugin-prox-vm.log"
   pm_log_levels = {
     _default = "debug"
     _capturelog = ""
}
}

variables.tf
variable "pm_api_url" {
 type = string
}

variable "pm_api_token_id" {
 type = string
}

variable "pm_api_token_secret" {
 type      = string
 sensitive = true
}

variable "clone" {
 type = string
}

variable "name" {
 type = list(string)
}

variable target_node {
 type = string
}

variable instance_count {
 type = number
}

variable network_bridge {
 type = list(string)
}

variable ip {
 type = list(string)
}

variable server_dns {
 type = string
}

variable size {
 type = string
}

variables.tfvars
pm_api_url = "https://192.168.X.X:8006/api2/json"

pm_api_token_id = "terraform-prov@pve!terraform"

pm_api_token_secret = "XXXXXXXXXXXXXX"

instance_count = 2

name = ["docker","swag"]

clone = "template-debian"

target_node = "pve"

#vmbr0 = LAN / vmbr1 = VM_Network / vmbr2 = DMZ
network_bridge = ["vmbr1","vmbr2"]

ip = ["ip=<IP_ADDRESS>/24,gw=<IP_ADDRESS>","ip=<IP_ADDRESS>/24,gw=<IP_ADDRESS>"]

server_dns = "<IP_ADDRESS>"

size = "32"

I saw the same situation when I set disk size for the clone less than the one in source template/vm. When I set it larger - it worked fine. I'm not saying it is not an issue, but you might be able to work around it.
My working disk looks like this, just for the reference:
  disks {
    scsi {
      scsi0 {
        disk {
          size       = 32
          storage    = "local-zfs"
          discard    = true
          iothread   = true
          emulatessd = true
          cache      = "writeback"
        }
      }
    }
  }

thanks, I've corrected the formatting in markdown format!
I can see the 32go disk now
but I can't manage to boot on it? I don't have a boot device available yet I'm making a clone of the template disk i think !


Run Documentation in DevTools OSD

This is not a blocker to public launch.openshift.io, but the repository needs some adjustments to be able to build in ci.centos.org and to be published in the Devtools OSD
We need the following files to exist in this repository (it can be copied/based on what's available in https://github.com/openshiftio/launchpad-frontend):

cico_build_deploy.sh
Dockerfile.build
Dockerfile.deploy
openshift/template.yaml

Hi, @gastaldi, what sort of building are we talking about in ci.centos.org? Building for production, nightlies, pull requests, or something yet different?

Basically building for the staging (everytime a push happens, the docs are
built and the image is redeployed) and providing means to update to
production.
Em 8 de ago de 2017 06:50, "Tomas Radej"<EMAIL_ADDRESS>escreveu:
Hi, @gastaldi https://github.com/gastaldi, what sort of building are we
talking about in ci.centos.org? Building for production, nightlies, pull
requests, or something yet different?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openshiftio/appdev-documentation/issues/428#issuecomment-320908262,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AADTdZzlJxm01H8hYGbZyCi3kccjBz-Dks5sWC9ogaJpZM4OvhQd
.

Can this be closed now?

Yes, thanks for pointing that out


Not able to close modal dialog using dialogRef.close()

I am opening Modal popup in Angular 4 using Material. whereas it is opening properly but I am not able to close it using dialogRef.close(). I am opening AdminComponent as a popup by clicking on button which is present on Home.Component.html.
Admin.Component.ts-
`import {MdDialog} from '@angular/material';
import {MdDialogRef} from '@angular/material';
export class AdminComponent implements OnInit {
constructor( public dialogRef:MdDialogRef <AdminComponent>, private emergencycontacts: EMTServiceService) { }
closeModal() {
console.log('closing');
this.dialogRef.close();
}
}`
Admin.Component.html-
                   <button md-raised-button  (click)="closeModal()"  class="btncancel" >Cancel</button>
Please help

This should work out of the box. There must be some configuration problem with your code. You can also use the matDialogClose to set the button to close the dialog (I'm using the currently recommended beta.11 mat instead of md prefix ):
<button mat-raised-button matDialogClose>Cancel</button>

Having the opposite problem here. I can close with dialogRef.close(), but not with the directive md-dialog-close. Pressing "Yes" closes the dialog, but pressing "No" doesnt.
<md-dialog-actions>
  <button
    (click)="close()"
    md-raised-button md-dialog-close>
    Yes
  </button>
  <button md-raised-button md-dialog-close>
    No
  </button>
</md-dialog-actions>

export class EditCourseComponent implements OnInit {

  constructor(private dialogRef: MdDialogRef<EditCourseComponent>,
              @Inject(MD_DIALOG_DATA) data: any) {
    console.log('Data', data);
   }

  ngOnInit() {
  }

  close() {
    this.dialogRef.close();
  }

}

@Deltids try mdDialogClose or matDialogClose

Why i am seeing this overflow-x?

@julianobrasil  tried using matDialogClose, still not working.
I replaced all md prefix with mat.

Did you import MatDialogModule or MdDialogModule in your Admin.Module.ts?

@VishalChorghe are you able to provide a reproduction?

Can confirm that we have the same issue

Hello everyone,
I have the same issue.
Could you tell me if I missed something and if any workaround exist?
Thanks
Configuration is:

"@angular/animations": "^5.0.2",
"@angular/cdk": "^5.0.0-rc0",
"@angular/common": "^5.0.2",
"@angular/compiler": "^5.0.2",
"@angular/core": "^5.0.2",
"@angular/forms": "^5.0.2",
"@angular/http": "^5.0.2",
"@angular/material": "^5.0.0-rc0",
"@angular/platform-browser": "^5.0.2",
"@angular/platform-browser-dynamic": "^5.0.2",
"@angular/router": "^5.0.2",
"core-js": "^2.5.1",
"npm": "^5.5.1",
"rxjs": "^5.5.2",
"zone.js": "^0.8.18"

In my AppModule, I imported MatDialogModule, declared my dialog components
and added my dialog content component to the array of entryComponents.
  declarations: [
        AppComponent,
	ErrorDialogContainerComponent,
	ErrorDialogContentComponent,
  ],
  entryComponents: [ErrorDialogContentComponent],
  imports: [
    BrowserModule,
    BrowserAnimationsModule, // imported to allow use of Angular animations animations for Material components
    MatButtonModule,
    MatDialogModule,
  ],

Calling dialogRef.close() or clicking outside the dialog does not close it.
The only I found to close it was to open the Chrome console and then move the console top edge using my mouse.
However MatDialog.closeAll() does work for me.
But trying to reference the MatDialof
I put below the code of the following classes:
dialog container component
dialog content component
I put my dialog container component template inside my app component lie written below
<app-error-dialog-container></app-error-dialog-container>
<app-header></app-header>
<router-outlet></router-outlet>

Below is the dialog content template. I tried to use
Error
<button (click)="onClose()"> Close </button>

Dialog Container class
`
import {Component, Inject, OnInit, Input} from '@angular/core';
import {MatDialog, MAT_DIALOG_DATA} from '@angular/material';

import {ErrorEventService} from '../../../error-event.service';
import {ErrorDialogContentComponent} from '../content/error-dialog-content.component';

@Component({
  selector: 'app-error-dialog-container',
  templateUrl: './error-dialog-container.component.html',
  styleUrls: ['./error-dialog-container.component.css']
})
export class ErrorDialogContainerComponent implements OnInit {
	private errorPopupOpen = false;
	constructor(private errorEventService: ErrorEventService, private errorDialog: MatDialog) {
	}
	ngOnInit() {
	  this.errorEventService.changeEmitted$.subscribe(
	  errorToken => {
		if (errorToken && errorToken.error && (!this.errorPopupOpen)) {
			this.openDialog();
		}
	  });
	}

	openDialog(): void {
		console.log('openDialog');
		this.errorPopupOpen = true;
		let dialogRef = this.errorDialog.open(ErrorDialogContentComponent, {
			disableClose : false
		});
		dialogRef.beforeClose().subscribe(result => {
		console.log('The dialog beforeClose');
		});

		dialogRef.backdropClick().subscribe(result => {
		console.log('backdropClick');
		console.log(result); // show null.
		});

		/*
		Have the error
		"Property 'keydownEvents' does not exist on type 'MatDialogRef<ErrorDialogContentComponent>'."
		when below code is commented out

		dialogRef.keydownEvents().subscribe(result => {
		console.log('keydownEvents');
		console.log(result);
		});
		*/

		dialogRef.afterClosed().subscribe(result => {
		console.log('The dialog was closed');
		this.errorPopupOpen = false;
		});

		// this.errorDialog.closeAll(); //works
	}
}`

Dialog Content class
`
import {Component, Inject, OnInit, Input} from '@angular/core';
import {MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material';
@Component({
  selector: 'app-error-dialog-content',
  templateUrl: './error-dialog-content.component.html',
  styleUrls: ['./error-dialog-content.component.css']
})
export class ErrorDialogContentComponent implements OnInit {

  constructor(    public dialogRef: MatDialogRef<ErrorDialogContentComponent>,
	@Inject(MAT_DIALOG_DATA) public data: any) {
  }

  ngOnInit(): void {
  }
   onClose(): void {
	console.log(this.dialogRef.disableClose); // Returns false
	this.dialogRef.close(); // does not close the dialog
  }

}

`

@krisparis can you try this in ErrorDialogContainerComponent?
constructor(
  private errorEventService: ErrorEventService,
  private errorDialog: MatDialog,
  private ngZone: NgZone) {
}

ngOnInit() {
  this.errorEventService.changeEmitted$.subscribe(errorToken => {
    this.ngZone.run(() => {
      if (errorToken && errorToken.error && (!this.errorPopupOpen)) {
        this.openDialog();
      }
    });
  });
}

Thanks a lot! It now works well!
The dialog now disappears when I click on my close button or when I click outside the dialog.
So, just to know,
was I doing something wrong or was it perhaps related to my ErrorEventService class ?
Again, thanks :)

@krisparis It is related to your ErrorEventService. I'm assuming you're implementing ErrorHandler there or elsewhere, and handleError is called by angular outsize the zone. There have been similar issues with dialogs and snackbars. AFAIK you're not doing anything wrong, but you should be aware that any UI effects from handleError need to re-enter the zone.
@VishalChorghe @mackelito could your issues be related to this as well?

@willshowell
Yes, I did almost that.
Actually I have a class AppErrorHandler  that extends ErrorHandler .
I inserted its code below.
And in my AppModule, I added the line below into my providers array
	{provide: ErrorHandler, useClass: AppErrorHandler},
import {ErrorHandler } from '@angular/core';
import {Injectable} from '@angular/core';

import {ErrorEventService} from './error-event.service';

@Injectable()
export class AppErrorHandler extends ErrorHandler {
    constructor(private errorEventService: ErrorEventService){
        super(false);
    }
    public handleError(error: any): void {
		this.errorEventService.emitChange({
			  error: error
		  });
    }
}

@willshowell
For the sake of trying, I temporarly removed my ErrorHandler subclass from my app and the use of the ngZone instance from my dialog container class (so back to my original code).
I now handle the error at its origin like shown at the bottom of this post.
In that case also, the dialog disappears after a click on the close button or outside the dialog.
You said

you should be aware that any UI effects from handleError need to re-enter the zone.

So do you think it's better for now to handle my errors locally without a custom ErrorHandler?

until it gets fixed in a future release

Or is it better to keep using the ErrorHandler and the Ngzone as you shown in the previous post?

even if my app might have to use other dialog components for different use cases

  public loadUsers (options: DataRequestOptions) {
    this.userService.getUsers(options).subscribe(dataAndMeta => {
	  this.meta = dataAndMeta.meta;
	  this.dataAndMetaChange.next(this.convertUsersToRoleMembers(dataAndMeta.data));
    },
      error => {
		// Old code: throw new Error('err');
		this.errorEventService.emitChange({ error: error });
      }
    )
  }

@krisparis I think everything on Angular and Angular Material's end is working as intended, so I wouldn't await a fix (maybe a docs improvement here at best).
Every use case is different - I think the expected use of the ErrorHandler is to facilitate logging or extra ajax calls or similar, which don't need to operate within the angular zone. You've chosen to bring the error callback into your components (material dialog), so you should do so inside the zone.  If you are using errorEventService.changeEmitted$ exclusively for UI updates, I would suggest this:
@Injectable()
export class AppErrorHandler extends ErrorHandler {

  constructor(private errorEventService: ErrorEventService, private ngZone: NgZone){
    super(false);
  }

  handleError(error: any): void {
    // Bring error handling back into the zone so components are aware of error events
    this.ngZone.run(() => {
      this.errorEventService.emitChange({ error });
    });
  }
}

But also I have only a moderate understanding of how zones work and should be utilized so take it with a grain of salt 😄

Closing this since it's not directly related to Angular Material.
Check out this article for some background on understand zones:
https://blog.thoughtram.io/angular/2016/02/01/zones-in-angular-2.html

Hi,
I'm having a similar problem but the NgZone solution doesn't work.
I've a simple dialog that shows a message and a QRCode and has an "OK" button to close it just for user experience.
The problem is that there's no way to close the dialog, nothing works: clicks outside, pressing ESC key or pressing the OK button are useless.
Here's the code:
TokenComponent
where openDialog is fired on a simple FAB click.
openDialog() {
    let dialogRef = this.dialog.open(NewTokenDialogComponent, {
      disableClose: false,
      data: { userID: "a-user-id" }
    });

    dialogRef.beforeClose().subscribe((result: string) => {
      console.log('Right before close', result);
    });
    dialogRef.afterClosed().subscribe(result => {
      console.log('The dialog was closed', result);
    });
}

Then I have this modal:

Lorem Ipsum

    Lorem ipsum dolor sit amet

  <button mat-button [mat-dialog-close]>OK</button>

The modal gets opened but I can't find a way to close it.
I've tried creating a simple StackBlitz and I realised that it actually works: https://stackblitz.com/edit/test-dialog-closing
I'm honestly confused but I think it could be related to this issue since the symptoms are similar.
Note: the close button in the example is using [mat-dialog-close], I've also tried matDialogClose and a custom function that calls this.dialogRef.close() which is the one used in the stackblitz.
A difference between the stackblitz and my local project is that the dialog component and the "container" component are in two separate files but I guess everything is properly included since I can see the dialog properly rendered.
Thank you!

I've found out that this problem was related to an error occurring on another component..
In particular I have a TypeError during the rendering of a MatTable in the same page. This error causes the Dialog not to work properly once opened.
If you want to investigate this weird behaviour of Dialog when an error occurs I can provide further information.

@fredmaggiowski
I may be having a similar problem. My dialog does not close when the closing buttons are clicked either, and I have a MatTable in the parent component, that does not re-render if I try to select a row programatically - i had to use ChangeDetectorRef.detectChanges() to fire off the re-render - which I think I'm having to do because of some silent error that I can't see in the dev console. I was wondering what kind of a TypeError you found. Was it evident in the console?

Hi @amreshprasad I honestly do not remember neither what the TypeError was about nor whether it was evident in the console.
I guess that yes, the error was visible in the console, but I felt like I could ignore it while it was actually causing problems to the rest of the web app (the whole dialog-not-closing stuff) but I've very bad at remembering so I don't know :(.

@willshowell Thanks man! ngZone works like a charm. You saved me a lot of pain and suffering haha.

@willshowell @Va-alexander
You saved my life... I've been fighting with this dialog for a good hour and a half... I kinda had a feeling where the problem was but didn't even knew about ngZone... it solved my problem and I'm sure it will be handy for a lot of other stuff..
For reference for other people:

MatDialog closing after a couple seconds delay


Remove custom tempdir context manager

Part of #2994

AppVeyor failed on %CMD_IN_ENV% python setup.py build install -vvvv.  Contrary to the traceback, the essential cause was that build_and_run in install/build.py raised
[WinError 145] The directory is not empty: 'C:\\Users\\appveyor\\AppData\\Local\\Temp\\1\\tmpbft8evjm'

, which didn't immediately stop the installation because it was downgraded to a warning by check_cudnn_version.
https://bugs.python.org/issue26660 may be relevant.

PTAL

Jenkins, test this please.

Jenkins CI test (for commit 4d5f445fc2819c718500abfa0725441ce6dd50c5, target branch master) failed with status FAILURE.

@toslunar This pull-request is marked as st:test-and-merge, but there were no activities for the last 3 days. Could you check?

Jenkins, test this please.

Jenkins CI test (for commit 4d5f445fc2819c718500abfa0725441ce6dd50c5, target branch master) succeeded!


GPX doesn't support vector outputs

The GPX surrogate doesn't seem to support outputs with ny>1, which works for the other surrogates. It runs, but seems to return the response for the first element only. I guess it could be fixed in here in SMT, but possibly also in the upstream egobox tool. Here's a small test that shows the difference between KRG and GPX:
import unittest
import numpy as np

from smt.surrogate_models import GPX, KRG

from smt.examples.rans_crm_wing.rans_crm_wing import get_rans_crm_wing

class TestNY(unittest.TestCase):
    def test_ny_gpx(self):
        xt, yt, _ = get_rans_crm_wing()

        interp = GPX()
        interp.set_training_values(xt, yt)
        interp.train()
        v0 = np.zeros((4, 2))
        for ix, i in enumerate([10, 11, 12, 13]):
            v0[ix, :] = interp.predict_values(np.atleast_2d(xt[i, :]))
        v1 = interp.predict_values(np.atleast_2d(xt[10:14, :]))

        self.assertEqual(v1.shape[1], yt.shape[1])

    def test_ny_krg(self):
        xt, yt, _ = get_rans_crm_wing()

        interp = KRG()
        interp.set_training_values(xt, yt)
        interp.train()
        v0 = np.zeros((4, 2))
        for ix, i in enumerate([10, 11, 12, 13]):
            v0[ix, :] = interp.predict_values(np.atleast_2d(xt[i, :]))
        v1 = interp.predict_values(np.atleast_2d(xt[10:14, :]))
        self.assertEqual(v1.shape[1], yt.shape[1])

Actually, KRG is not meant to handle multiple outputs. It has been recently added (too discreetly!) at the end of the Kriging section but we should definitely raise an error if yt is not one-dimensional. When you use several training outputs you do not get the right predictions (the ones you get if you keep only one training output).
For GPX (or should I say egobox::Gpx), it happens that with the default setting only the first predicted output is kept, but still if you pass several training output data, the prediction you get is not the right one.
I keep this issue open as a reminder till we fix KRG (and kriging-based surrogates) and GPX (ie. raising a ValueError("Multiple outputs not handled") when yt is not one-dimensional).

After discussion, we start by adding a warning when using several training outputs instead of a hard error (PR #686). Though it is not the best one, a surrogate trained with multiple outputs may work with your use case depending your data. Out of curiosity, how does it work for you with KRG and multiple outputs? How many outputs do you have? Would it be feasible for you to train separately?
If there is a use case I can "fix" egobox::Gpx to reproduce the same behaviour as KRG

Below, just an example to see how multi-outputs kriging can go wrong. I've just used sphere and cos(10*x) functions. If we train against both at once with KRG(), we get the following plot:

(actually, the hyperparameter optimization just fails, it ends up with the default value theta = 0.01)
While if we train against the functions separately, we get

(optimized theta = 0.0036)

(optimized theta = 2.2243)

@fzahle, thanks. At the moment, kriging-based surrogate models emit a warning when using several training outputs but it has to become a hard error in the future.


minio-java tests fail

Mint test on latest rc failed. Reproducible with Server mode
Mint logs:
(2/6) Running minio-java tests ... FAILED in 3 seconds
{
  "name": "minio-java",
  "function": "presignedPostPolicy(PostPolicy policy)",
  "duration": 101,
  "status": "FAIL",
  "error": "java.lang.Exception: failed to upload object. Response: Response{protocol=http/1.1, code=405, message=Method Not Allowed, url=http://<IP_ADDRESS>:9000/minio-java-test-qfjktl/minio-java-test-3tn6tl5}, Error: <?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error>MethodNotAllowed<Message>The specified method is not allowed against this resource.</Message><Key></Key><BucketName></BucketName><Resource>/minio-java-test-qfjktl/minio-java-test-3tn6tl5</Resource><RequestId>3L137</RequestId><HostId>3L137</HostId></Error> >>> [FunctionalTest.presignedPostPolicy_test(FunctionalTest.java:1624), FunctionalTest.runQuickTests(FunctionalTest.java:2525), FunctionalTest.main(FunctionalTest.java:2573)]"
}

Already fixed in master

minio-java master?

yes

ok then we can ignore this

We can make a release of minio-java tomorrow @balamurugana @nitisht

That will be great!

Keeping this open till minio-java is released

Minio-Java was released today.


Activating an extension that loads a .node binary fails with a code signing error in VS Code Insiders

Issue Type: Bug
The InterSystems Language Server extension uses the ref-napi and ffi-napi modules to call out to native C++ libraries. The ref-napi module is shipped with prebuilt .node binaries. When activating the InterSystems Language Server extension in VS Code insiders on Mac, it fails with the following text written to the Output channel:

electron/js2c/asar_bundle.js:5
/*! no static exports found /function(t,e,r){"use strict";(function(t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.wrapFsWithAsar=void 0;const s=r(/! buffer /"buffer"),i=r(/! path /"path"),a=r(/! util /"util"),o=t._linkedBinding("electron_common_asar"),c=t._linkedBinding("electron_common_v8_util"),f=r(/!
...

After running the extension in debug mode, I found this error written to the debug console:

Uncaught Error: dlopen(/Users/bsaviano/Documents/GitHub/language-server/server/node_modules/ref-napi/prebuilds/darwin-x64/electron.napi.node, 0x0001): tried: '/Users/bsaviano/Documents/GitHub/language-server/server/node_modules/ref-napi/prebuilds/darwin-x64/electron.napi.node' (code signature in  '/Users/bsaviano/Documents/GitHub/language-server/server/node_modules/ref-napi/prebuilds/darwin-x64/electron.napi.node' not valid for use in process: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.), '/usr/lib/electron.napi.node' (no such file)

This error only occurs on Insiders and only on Mac. After some research I think this has to do with the Hardened Runtime flag in Xcode. Has anything changed between 1.62.2 and 1.63.0-insiders related to how VS Code is built?
VS Code version: Code - Insiders 1.63.0-insider (Universal) (6a25ae3a24929f35aabf8a051531c0716032e0a0, 2021-11-16T05:13:23.962Z)
OS version: Darwin x64 21.1.0
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz (12 x 2900)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
2, 2, 3

Memory (System)
32.00GB (2.30GB free)

Process Argv
--crash-reporter-id a3bf9c34-8ccb-4f82-9693-8f13aeea9669

Screen Reader
no

VM
0%

Extensions (3)

Extension
Author (truncated)
Version

servermanager
int
2.0.6

vscode-objectscript
int
1.1.2-beta.3

language-server
int
1.2.6

A/B Experiments
vsliv695:30137379
vsins829:30139715
vsliv368cf:30146710
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythontb:30258533
pythonvspyt551cf:30291413
pythonptprofiler:30281269
vshan820:30294714
pythondataviewer:30285072
vscod805:30301674
pythonvspyt200:30323110
bridge0708:30335490
bridge0723:30353136
pythonrunftest32:30365365
pythonf5test824:30361779
javagetstartedt:30350119
pythonvspyt187:30365360
vsaa593cf:30376535
vsc1dst:30396469
vscexrecpromptt2:30397559

I ran into this issue as well, on insiders on mac (no extensions), but with a different, local, package with prebuilt binaries which were bundled into an extension I'm working on. When starting with said extension the developer-tools show the same message.
I couldn't figure out a workaround so I went back to regular VSCode. Hopefully this change doesn't make it into the regular VSCode from Insiders.

same here. hit it when trying locally to get back vscode-spellright to the future :-)

Thanks for testing with insiders and catching the issue early on. Yes there is a change in architecture between 1.62.x and 1.63-insiders wrt to from which parent process we now launch the extension host. Previously we were launching the extension host from the renderer process and so it inherited the entitlements of this process which are basically https://github.com/microsoft/vscode/blob/main/build/azure-pipelines/darwin/helper-renderer-entitlements.plist. Now moving forward we now launch the extension host from the main process so the entitlements inherited are bit different https://github.com/microsoft/vscode/blob/main/build/azure-pipelines/darwin/app-entitlements.plist. The entitlement com.apple.security.cs.disable-library-validation from the renderer was previously helping unsigned native modules to be loaded which is not present in the main process which leads to the above error.

Verified. I was hitting this myself, and looks good in current builds.

This issue caused by "some" VScode extensions.


Check year in schedule for 2022

Dates for 2022 has 2021 as the year.  Please correct.

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

ID: 1fcc1802-115b-4ac2-f34f-aa73eac426f4
Version Independent ID: d758bfc6-245e-43d6-8bde-31282cea0a64
Content: Planned maintenance in self-service environments FAQ - Finance & Operations | Dynamics 365
Content Source: articles/fin-ops-core/dev-itpro/deployment/plannedmaintenance-selfservice.md
Service: dynamics-365-cross-app
GitHub Login: @rashmansur
Microsoft Alias: rashmim

Thanks for your feedback. @rashmansur please take a look.

Created bug 623420 to track this issue.


Centos7 rpm installation guide

Created a installation guide based off the rpm packages from PR #64 in the net-modules repo.

Closing since this was addressed with this PR: https://github.com/projectcalico/calico-docker/pull/615


GoogleThreatIntelligence: Update publisherId

Required items, please complete
Change(s):

Update publisher Id

Reason for Change(s):

3<IP_ADDRESS> Best Practice Tests / The offer name is different from Partner Center

Testing Completed:

Yes

Checked that the validations are passing and have addressed any issues that are present:

Yes

Hello @v-prasadboke, just letting you know that PR is ready for your review. Please let me know if you have any questions.

Hello @NicoRomero-07, Sorry for the delay in response
All looks good and got this merged


Model association append duplicate association

when I do append association is duplicating append records
you should just make the link between the created record and the profile.

I don't know if I'm doing something wrong
Another case when you already have registered associations, when making new associations those that are already inserted are duplicated.

I found out what happened I was sitting a new id every time in BeforeCreate where I did duplicate records.


Update dota_usermessages.proto

adding salutePlayer message

That messages are about compendium tips so they not should be available in csgo.
Also is there a way to check all messages without changing protobufs?
Like    @OnMessage(DotaUserMessages.?*.class)
ty

Do these compendium tip messages show up in the replay or not? If so the patch is not enough, since they have to be registered in EmbeddedPackets.java.
I don't get what you mean with your second question.

sorry, i was away for a week. How i can check without editing protobufs is this event showed in replay or not? I tried this code but it didnt worked out:
 @OnMessage()     public void onMessage(Context ctx, GeneratedMessage message) { if(message.toString().indexOf("Salute")>-1)         count++;     }
They for sure saved in replay coz i can see them while viewing a replay in Dota 2 client

i even found exact tick number of Tip in some replay by "cl_log_tick 1" in console and i can't see anything readable that even theoretically can be related to tips by next code on tick i needed:
@OnMessage() public void onMessage(Context ctx, GeneratedMessage message) { System.out.printn(message.toString()); }

You would get a warning message of the following kind:
unknown embedded message of kind SOURCE2/XXX. Please report this in the corresponding issue: #58

with XXX being some number (around 580 I guess)
If you do not get this, these messages are not showing up in the replay, and there's no need to add them to the protobufs. And if they are there, they need to be properly registered in clarity-protobuf before one can receive them.

i cant see any kind of text that you listed with my last listed code.
I googled your text "unknown embedded message of kind SOURCE2" and found "https://github.com/skadistats/clarity/issues/58"
By messages in this thread i found that everyone runs tick package so i tried this on my replay.
I didnt get any messages but errors about loggegger that i always had before for months, i fixed logger packages in pom.xml so i can see this messages properly. Then i guess i found what i need - "576".
I can post a message in #58 thread but there was already listed a message "of kind Source2/576".
I added EmbeddedPackets.java to current commit , correct me if im wrong
Thanks!=)

sorry, but i am a bit dumb and i dont know how to import my own protobufs to my project(


Control nodes in inherited scenes cannot reset anchors and other positional properties to inherited values

Godot version
4.0 Beta 6
System information
Windows 10
Issue description
After changing the transform properties of an inherited control scene in the editor, the properties in the transform tab (position, size, etc...) cannot be reset to the base scene's values. Pressing the reset property button simply sets the position and size to zero.
Steps to reproduce

Create a 2D scene with a control node as the root.
Save then create a new scene that inherits from the base scene.
Change the size and position of the control node in the inherited scene in the property editor. (layout -> transform)
Press the reset property button next to size and position.

Minimal reproduction project
N/A

cc @YuriSizov
This may be related to Control layout changes in the inspector.

Yes, it's kind of related, but more of a shortcoming of the current system. So size and position are never saved to disk, they never were. They are computed values for user's convenience, but the data that we save is always anchors and offsets (for anchored controls, not even that for children of containers).
When you use scene inheritance, the editor refers to the stored properties to get the fallback value. Since we don't show offsets or anchors in the most basic case anymore, it doesn't even attempt to look up those. But we do show size and position, and so we attempt to look up their fallback values. The way it works is the PackedScene resource of the base scene is inspected, and naturally, it doesn't contain any info on the size or position. So the inspector returns empty-handed.
I think this should be the case in 3.x as well, though I don't use inherited scenes to be sure. There are two ways to solve it, both don't seem right though. We either need to instance each PackedScene in the inheritance chain to check computed properties. Or we need to store them alongside real properties in scenes. Not really sure which way to go with that yet.

This still happens in 4.2.2


Node statuses are not localized

Storage Explorer Version: 1.11.0 (prerelease)
Build Number: 20191002.6
Platform/OS: All

Hard-coded strings.
https://devdiv.visualstudio.com/DevDiv/_git/CloudExplorer?path=%2Fsrc%2FCloudHub%2Fts%2FCommon%2FAzureStorageUtilities.ts&version=GBmaster

@jinglouMSFT As far as I can tell, I don't think these values aren't translated in Azure. I'm moving this to 1.13.0 unless you think we should not fix or fix for 1.11.0.

I would vote to not fix them.


margin top and margin left not applied

Bug Report
margin on top and left is not applied:
text or vector at 0,0 is in top left corner no matter margin is.
Code sample
var fs = require('fs');

var Document = require('pdfkit');

var doc = new Document({
  margin: 100
});

doc.pipe(fs.createWriteStream('pdf.pdf'));

var y = 0;
for (var x = 0; x < 500; x += 20) {
  var t = x + ' ' + y;
  doc.text(t, x, y);
  y += 30;
}

doc.end();

Environment

pdfkit version: 0.9.0
Node version: 8.7.0
Operating System: fedora 22

The margins are not respected if you pass in an x and y coordinate. If you adjust your sample to call doc.text(t) instead, the margin will be applied.


fix Navbar color on /get is inconsistent

there's other ways to fix:
changing legacy css files;
changing /get css to a style tag inside it;
making /get own css file;
.....
why this solution?
fixes other color inconsistents
fixes #2259

there's other ways to fix: changing legacy css files; changing /get css to a style tag inside it; making /get own css file; ..... why this solution? fixes other color inconsistents
fixes #2259

In the future, in the description of your PR, start off with what your change is and what it addresses (for instance, linking to an associated github issue).  It's cool to follow that up with alternatives you considered, but that should be the meat and potatoes of your description (describing your actual change).  For instance, you might say "modified CSS property to be the correct color per issue #blah".


fix: Fixed removing empty attachment modality in Response Editor

Description
Fixes issue removing empty attachment modality in the Response Editor
Task Item
Closes #6049

Coverage decreased (-0.003%) to 53.717% when pulling ebbbf576947c418cc51dad2c36d492926b18ecba on fix/remove-attachments into 66825eaf8062fd68c42595f86ea457261e8b15a3 on main.


[FEATURE] STREAMLINE FOLDER STRCTURE

Is this a unique feature?

[X] I have checked "open" AND "closed" issues and this is not a duplicate

Is your feature request related to a problem/unavailable functionality? Please describe.
I reviewed the folder structure of this repository, and it's quite disorganized, especially in the frontend.
Proposed Solution
To improve the folder structure in a React project, consider organizing components by feature, creating separate folders for styles, assets, and utilities, and using a clear naming convention. This promotes better scalability and maintainability.
Screenshots
No response
Do you want to work on this issue?
Yes
If "yes" to above, please explain how you would technically implement this (issue will not be assigned if this is skipped)
I will organize the folder structure by features, assets, components, loaders, etc., and optimize the code if necessary.

@sankettank66 , Rearranging the folder structure is indeed a challenging task, and any small mistake could cause the server to crash. If you decide to work on this,
you'll need to be extremely careful and ensure that the repository is updated accordingly.
You will also need to update the README file to reflect the new structure and any changes made.
If you're still interested in contributing to this task, let me know, and I'll assign it to you.

Hello @vishalverma9572 ,
Thank you for your response. I want to clarify that I will be streamlining the folder structure of the frontend only. I understand the importance of being careful with this task and will take full responsibility for it. Additionally, I will ensure that the README file is updated accordingly to reflect the changes made.
Please assign the task to me when you're ready.
Best regards,
Sanket

@sankettank66, Assigned! Feel free to reach out if you need any assistance!


negative claim balance

I have a confounded and understandably frustrated user who has been playing on my server (found in technicpack as ape42 world 8) since I started it more than a month ago. They had made some claims, and were ready to expand but found this glitch which prevents them. They sent me a screenshot which I cropped for the relevant part, the chat window, in which you can see the user is JollyP1rate, and when they try to use the shovel they now get "You may claim up to -13.87 more chunks. (-908782 blocks)..."
preview
I have zipped up the server's files which amount to about 212 MB, compressed: download zip
If it helps, from the logs included in the zip above, you can see "UUID of player JollyP1rate is fe84f778-b706-4513-b584-dce5581eff09"
EDIT:  Here I just used playerinfo; here's what I get:
[01:08:59] [Server thread/INFO]: --------------------- Player Info ---------------------
[01:08:59] [Server thread/INFO]: UUID : fe84f778-b706-4513-b584-dce5581eff09
World : world
Claim Size Limits : 5000,255,5000
Initial Blocks : 25600
Accrued Blocks : 110610 (30720 per hour)
Max Accrued Blocks : 20480000
Bonus Blocks : 0
Remaining Blocks : -895982
Abandoned Return Ratio : 1.0
Total Blocks : 136210
Total Claimable Chunks : -13.67
Total Claims : 1
[01:08:59] [Server thread/INFO]: ------------------------ « » -------------------------
Also you can see that I'm using, among other things:

spongeforge-1.11.2-2393-6.1.0-BETA-2559.jar
griefprevention-1.11.2-<IP_ADDRESS>0.jar

Please let me know if there's any other information I can provide to help you troubleshoot the issue.
Also in the meantime if you have a really specific workaround to suggest, I'd appreciate it.
Thanks,
rdalkire (IGN goatsbuster)

Did you read the changelog and enable migration for playerdata?

Yes I read the (changelog in its sponge files page)[http://files.minecraftforge.net/maven/me/ryanhamshire/griefprevention/1.11.2-<IP_ADDRESS>0/griefprevention-1.11.2-<IP_ADDRESS>0-changelog.txt], linked from the ore release page.  Here I'll copy what seems to be the relevant text for this build:
Build 340:
bloodshot:
* Fix child claims not saving. Fixes #427
* Fix child claims being added twice to parents.
* Fix some more issues with subdivision ownership.
...
I see a summary list of changes, not any special instructions for server-runner.  Would you mind copying/ linking any such instructions here?  Also will it still work to run the migration after a few hours of play, or will I need to restore to backup first?
Thanks!

I updated the main page of wiki with instructions.

I enabled migration and after restart, the players' remaining block-counts are now positive.  I think the lesson learned for me is, when you're reading changelogs it pays to scroll.  Thanks


Insert space after # in block comments of the file headers

This is today's copyright header“
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------

There isn't a space between the - and #. It is not recommended in PEP8. Errors are reported in PyCharm and other editors if PEP8 is enabled.
The files can be updated together in one batch automatically.

There's a script that puts the headers in each file. It might be as simple as updating that and rerunning (or that might just result in appending the new correct header, which would not be good).


[Bug] Comments from former employees are classified as an "external_comment", throwing off downstream metrics

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the issue
This issue is manifesting in zendesk__ticket_metrics.first_reply_time_calendar_minutes being null for tickets where the agent replied.
The underlying issue is stg_zendesk__user.role is end-user for former employees.
Tracing this issue from start to finish.

zendesk__ticket_metrics.first_reply_time_calendar_minutes is null
int_zendesk__ticket_reply_times_calendar.first_reply_time_calendar_minutes is null
int_zendesk__ticket_reply_times has a left join where this happens:

left join ticket_public_comments as agent_comments
    on agent_comments.ticket_id = end_user_comments.ticket_id
    and agent_comments.commenter_role = 'internal_comment'
    and agent_comments.valid_starting_at > end_user_comments.end_user_comment_created_at

In this join, in order for the query to return a value for agent_responded_at, the agent_comments.commenter_role = 'internal_comment'.
4. This is set on int_zendesk__comments_enriched.commentor_role
5. This traces back to STG_ZENDESK__USER, where the user_id in question is listed as a end-user.
Relevant error log or model output
No response
Expected behavior
I would expect the model to account for this user being an employee at the time of response.
dbt Project configurations
name: 'data_modeling'
version: '1.0.0'
config-version: 2

vars:
  zendesk_source:
    zendesk_database: production
    zendesk_schema: goat_zendesk

Package versions
packages:
  - package: fivetran/zendesk
    version: [">=0.9.1", "<=0.9.1"]

What database are you using dbt with?
snowflake
dbt Version
1.1.0
Additional Context
I am not entirely sure this is a modeling issue ... maybe there's something that can be set upstream in zendesk to help resolve.
Are you willing to open a PR to help address this issue?

[ ] Yes.
[X] Yes, but I will need assistance and will schedule time during our office hours for guidance
[ ] No.

Hi @brian-robillard1 thanks so much for opening this Bug report.
This is actually something we have come across before, and even see with our own internal implementation. As you mentioned above, this goes back to the user source table and the fact that it does not track historical changes. Therefore, we are unable to see what the users role was from a previous time. 😞
This could possibly be solved by snapshotting (however that is not something we would cover in this package), but I believe the best solution is for this to be addressed directly within the Zendesk connector. There is a Feature Request where someone is requesting a user history table. If this were implemented, we would be able to update the Zendesk dbt package models to account for the changing roles.
I would recommend either commenting in that existing FR or open a new one with any additional details. Unfortunately we cannot address this issue within the package, but in my opinion an upsteam update is the best option for resolving this.

Jumping back into this thread as it has gone a bit stale. As I mentioned in my previous response, this is likely best addressed by opening a feature request within the connector itself to allow the user table to retain historical records. If this is possible, then the package will be able to track the changes in role without needing snapshotting logic within the dbt package.
As a result, I will mark this issue as blocked and close it since we are unable to address the issue for the time being. I believe a possible future state solution is an enhancement to this package to take advantage of historical user data if that is available via the connector.


is Windows 10 still supported with the crate?

I am on Windows 10 Home 22H2 19045.3086
and get_desktop_count() returns this for me: ComError(HRESULT(0x80004002)).
this does work with version 0.20 for me, but there i experience this panic when spam-switching virtual desktops:
thread '' panicked at 'Underflow of reference count', C:\Users\User\.cargo\registry\src\github.com-1ecc6299db9ec823\winvd-0.0.20\src\changelistener.rs:92:1

Windows 10 is not supported in the Rust crate, some old versions might work as you have figured out already.

Ok good to know
I also fixed my problem with 0.20, I added a min delay of 50ms between each call of get_desktop_count and that fixed the panic.


[C++][Parquet] parquet-dump-schema has poor usability

$ ./debug/parquet-dump-schema
terminate called after throwing an instance of 'std::logic_error'
  what():  basic_string::_S_construct null not valid
Aborted (core dumped)

$ ./debug/parquet-dump-schema --help
Parquet error: Arrow error: IOError: ../src/arrow/io/file.cc:508 code: result->memory_map_->Open(path, mode)
../src/arrow/io/file.cc:380 code: file_->OpenReadable(path)
../src/arrow/io/file.cc:99 code: internal::FileOpenReadable(file_name_, &fd_)
Failed to open local file: --help , error: No such file or directory

Reporter: Wes McKinney / @wesm
Assignee: Deepak Majeti](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=mdeepak) / @majetideepak
PRs and other links:

GitHub Pull Request #2715

Note: This issue was originally created as PARQUET-1426. Please see the migration documentation for further details.

Deepak Majeti / @majetideepak:
We should add tests for all the tools as well. I will open a Jira for that.

Wes McKinney / @wesm:
Issue resolved by pull request 2715
https://github.com/apache/arrow/pull/2715


add OWNERS file to the repository

Mainly required for prow.
Signed-off-by: Mudit Agarwal<EMAIL_ADDRESS>

/cherry-pick release-4.9

/cherrypick release-4.9

/cherrypick release-4.9

/cherrypick release-4.9

/cherrypick release-4.9

/cherry-pick release-4.9

/cherrypick release-4.9

/approve

The openshift-cherrypick-robot created a new repository where cherry-pick PRs will be stored.
I won't have permissions to do the cherry-pick, I guess, but lets try anyway.
/cherry-pick release-4.9

/cherrypick release-4.9

/cherry-pick release-4.9


Pr/twpayne/revert broken tests

This reverts the commits that introduced broken tests by the premature merge of #16224.
Draft for now to kick off the tests.

test-backport-1.9

test-backport-1.9

I edited the original comment to close the two issues this PR fixes once merged.
k8s-1.17-kernel-5.4 is failing with known flake https://github.com/cilium/cilium/issues/15255 and k8s-1.19-kernel-4.9 with known flake https://github.com/cilium/cilium/issues/13011 (both flakes are on tests which should be affected by the changes in this PR so that seems to confirm they are just flakes).
Reviews are in except for the usual janitor review. I'm marking as ready to merge.


Need more browser tests

Currently, we're only running a subset of the full bittorrent-client test suite in the Sauce Labs browser tests. Investigate what it takes to run the full suite and make it work.

Added a lot more browser tests. There could be more, of course, but I'm going to close this now.

Commit here: https://github.com/feross/webtorrent/commit/0b4dfc608600390b108b846a7bebd293ebf73937


Prevent common accidental type mismatches

viewA.horizontalAnchors == viewB.edgeAnchors
viewA.horizontalAnchors == viewB.verticalAnchors

These both compile, but then crash at runtime because they are invalid constraints. The types exposed by Anchorage should turn these cases into compile errors.

I wonder if Phantom types would be helpful here -- https://www.natashatherobot.com/swift-money-phantom-types/
But I'm not sure it will. I think I would remove EdgeAnchors and its multi-use behavior with 3 structs for Edges, Horizontal and Vertical. There may be a protocol that can help with re-use.

Fixed in 3.0