HHH-17082 - Improve documentation of configuration settings

HHH-17082 - Improve documentation of configuration settings
https://hibernate.atlassian.net/browse/HHH-17082

hi @sebersole
do you have more information about this "hibernate.temp.use_jdbc_metadata_defaults"  removal ?
Also, do you plan to add a typesafe key in AvailableSettings.java ?

That setting has never been "supported".
Typesafe key?

By "Typesafe key" I meant a string constant like of other parameters ( https://docs.jboss.org/hibernate/orm/6.2/javadocs/constant-values.html#org.hibernate.cfg.AvailableSettings.DIALECT ) but that was a very poor choice of word indeed.
Ok so since it was documented in "Internal Properties" in https://docs.jboss.org/hibernate/orm/6.1/userguide/html_single/Hibernate_User_Guide.html#configurations-internal you mean it was not officially supported ? But the docs read "mainly in tools usage" so that was not immediately apparent to me.
Thank you for your time.

Oh you mean a constant for hibernate.temp.use_jdbc_metadata_defaults...
Yeah, we never added one because its not supported for use as I said.  Supported would mean it is documented in our documentation.

But it was documented until recently in  https://docs.jboss.org/hibernate/orm/6.1/userguide/html_single/Hibernate_User_Guide.html#configurations-internal

hibernate.temp.use_jdbc_metadata_defaults (e.g. true (default value) or false)
This setting is used to control whether we should consult the JDBC metadata to determine certain Settings default values when the database may not be available (mainly in tools usage).

So it was supported until 6.1 ? Am I missing something ?

@jonenst I mean, you just linked to a section with the following title and preamble:

Internal properties
The following configuration properties are used internally, and you shouldn’t probably have to configured them in your application.

And the configuration property itself has "temp" in its name. What do you imagine "temp" is supposed to mean?
Surely you can't be suggesting that you weren't adequately warned that you should not rely on this thing?
Madre mia.

hi @gavinking , thank you for your comment and your time. I'm just trying to help the liquibase-hibernate project used as a development tool using the liquibase diff feature. Not trying to play on words or anything. Sorry if that's what it looks like.
I think there is real confusion about the "hibernate.temp.use_jdbc_metadata_defaults". Actually I just found this comment which is explicit so that's good
https://github.com/quarkusio/quarkus/pull/15954#pullrequestreview-618541170

A disclaimer to anyone else reading this PR, though: hibernate.temp.use_jdbc_metadata_defaults is not part of the Hibernate ORM API and may disappear completely at any moment. The name contains temp precisely because it's a temporary workaround and we will hopefully remove it at some point (without warning).

But almost comically for every explicit comment from the maintainers there are comment from (confused I guess) users like https://github.com/quarkusio/quarkus/pull/17509#issuecomment-851519160 or https://github.com/quarkusio/quarkus/pull/17509#issuecomment-851442964

If you look at the hibernate-orm project on github you will see that this property is not so temporary like that... it has been in the code for many years and removing support for it will cause a lot of problems for many projects around the world. Thinking about it, why shouldn't we support it?

The property hibernate.temp.use_jdbc_metadata_defaults may have the 'temp' word in it's name but it has been part of hibernate code for many years.

Just removing the docs entirely without removing the feature may lead to even more confusion in the short term?
Removing the feature may break valid use cases. I guess that's OK if there are alternatives but if users have been using the feature in these valid use cases maybe it means that it was the best thing to do, or that there were no acceptable alternative?
Note: the quarkus use case from these multiple issues (at least https://github.com/quarkusio/quarkus/pull/15954 https://github.com/quarkusio/quarkus/issues/16927 https://github.com/quarkusio/quarkus/issues/15888 https://github.com/quarkusio/quarkus/pull/17509  is very different (running a server) from the liquibase diff use case (using a development tool). It's good for them that for their use case (slow performance at startup during validation) they were able to do something better than use_jdbc_metadata_defaults=false to fix the performance problem, but it looks like this is not the case for liquibase diff ?

To give you some context, liquibase-hibernate has been using "hibernate.temp.use_jdbc_metadata_defaults=false" for years (since 2016) in some cases  (see https://github.com/liquibase/liquibase-hibernate/commit/4926f5208c44b4e71912a397ecd629ee594e4a7d#diff-c3b9cea6fc1c6d243905f8eeb6cace031f04a0cfcf5801becccff63ce5701fa7R60 ).
I assume it was forgotten in the other cases, which lead to users seeing a one line message [WARNING] HHH000342: Could not obtain connection to query metadata : The application must supply JDBC connections until 2022. After 2022, this one line message was turned into a 80lines stacktrace, which confuses the users because they think it's a real error when in fact it's the same thing as the almost invisble warning from before, just more verbose. So one solution is just to restore the verbosity of this warning like before 2022. Another solution is to properly fix the warning. So I recently made a PR to add "hibernate.temp.use_jdbc_metadata_defaults=false" everywhere (see https://github.com/liquibase/liquibase-hibernate/pull/616/files ) but I'm trying to decide wheter it's the right thing to do or not (is the property going to continue to exist ? Is it unsupported for running server but supported for using dev tools ?)
my use case (and I think it's the general use case) for liquibase-hibernate is for developpers to automatically generate incremental liquibase changesets using liquibase diff after they modified jpa annotations in some java source code. So liquibase creates a hibernate "connection" to some kind of fake/virtual database representing the current state of the java source code for this purpose. There's no jdbc connection.
Do you have any advice or insight about what should be done for this use case ? Thanks.
Again, thank you for your time

There's already a plan to remove this setting entirely, and make sure that its effect can be reproduced on a more granular level by setting explicit properties (e.g. for the database name and version). We have to make sure that this provides what Quarkus needs, and by extension, what other people who're currently using this unsupported setting need.

There's already a plan ... setting explicit properties (e.g. for the database name and version)

To be clear, that already exists.  The talk we are having next week is about others that may need them.  I'm not convinced any are actually missing (forQuarkus use anyway).
@jonenst Do you happen to know the specific requirements of the liquibase-hibernate team around this?  Like what are they trying to accomplish by setting it?  If not, have them reach out (though here is not really a great place, Zulip would be ideal or a "Proposal" issue in our Jira)

In the meantime https://github.com/liquibase/liquibase-hibernate/pull/616 was merged, I guess I'll revisit this when hibernate removes the setting. I'm sorry I can't be of more help :( I tried to contact the original authors but it wasn't very successful, you can see the discussion here: https://github.com/liquibase/liquibase-hibernate/commit/4926f5208c44b4e71912a397ecd629ee594e4a7d#r129500368
Again I'm sorry, I don't know more than what I said earlier in my long message.. liquibase-hibernate creates a hibernate "connection" to some kind of fake/virtual database representing the current state of the java source code for the purpose of generating the liquibase changesets that make the database schema match the source code annotations (a diff to apply to the database schema in other words).
I'll forward your invitation to the liquibase team, thanks !
Regarding quarkus, I was mentionning it only because I think it showed the confusion around "hibernate.temp.use_jdbc_metadata_defaults" and in their case from what I understand they correctly identified that using this parameter was not the proper fix (instead they fixed the actual performance problems). I'm personally not using quarkus, only liquibase-hibernate.

Hi, https://github.com/liquibase/liquibase-hibernate/pull/616 was reverted , so users are back to seeing the exception.... here's what happens for users. Do you know what liquibase-hibernate should use instead of hibernate.temp.use_jdbc_metadata_defaults=false
Thanks in advance,

go to https://start.spring.io/ (currently 3.1.5), use maven, add the following

Spring Web
Spring Data JPA SQL
Liquibase Migration SQL
H2 Database

init the liquibase file in src/main/resources/db/changelog/db.changelog-master.xml  with an empty changelog

<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd">
</databaseChangeLog>

add the liquibase-hibernate6 dependency in pom.xml (sorry this is kind of verbose, not sure if it can be reduced or not):

<plugin>
    <groupId>org.liquibase</groupId>
    <artifactId>liquibase-maven-plugin</artifactId>
    <version>4.20.0</version>
    <!-- Liquibase dependencies-->
    <dependencies>
        <dependency>
          <groupId>org.liquibase.ext</groupId>
          <artifactId>liquibase-hibernate6</artifactId>
          <version>${liquibase.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
            <version>3.1.2</version>
        </dependency>
        <dependency>
            <groupId>jakarta.validation</groupId>
            <artifactId>jakarta.validation-api</artifactId>
            <version>3.0.2</version>
        </dependency>
        <dependency>
          <groupId>org.hibernate</groupId>
          <artifactId>hibernate-validator</artifactId>
          <version>8.0.1.Final</version>
        </dependency>
        <dependency>
          <groupId>jakarta.el</groupId>
          <artifactId>jakarta.el-api</artifactId>
          <version>5.0.1</version>
        </dependency>
    </dependencies>
</plugin>

run this liquibase diff command:

$ mvn \
-Dliquibase.url=jdbc:h2:./target/dummyDB \
-Dliquibase.changeLogFile=src/main/resources/db/changelog/db.changelog-master.xml \
-Dliquibase.referenceUrl=hibernate:spring:com.example.demo?dialect=org.hibernate.dialect.H2Dialect \
-Dliquibase.referenceDriver=liquibase.ext.hibernate.database.connection.HibernateDriver \
-Dliquibase.diffChangeLogFile=src/main/resources/db/changelog/db.changelog-master.xml \
clean test-compile liquibase:update liquibase:diff

[INFO] No changes found, nothing to do
src/main/resources/db/changelog/db.changelog-master.xml is not modified

add an entity to DemoApplication.java

@jakarta.persistence.Entity
class DemoEntity {

    @jakarta.persistence.Id
    private java.util.UUID id;

    @jakarta.persistence.Column
    private long age;

}

run this liquibase diff command:
observe the changed file:
$ cat src/main/resources/db/changelog/db.changelog-master.xml

    <changeSet author="harperjon (generated)" id="1700149184550-1">
        <createTable tableName="DemoEntity">
            <column name="id" type="BINARY(16)">
                <constraints nullable="false" primaryKey="true" primaryKeyName="DemoEntityPK"/>
            </column>
            <column name="age" type="BIGINT"/>
        </createTable>
    </changeSet>

rerun, observe no changes in the file
change age in java to private int
rerun, observe the changes:
$ cat src/main/resources/db/changelog/db.changelog-master.xml

<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd">
    <changeSet author="harperjon (generated)" id="1700149184550-1">
        <createTable tableName="DemoEntity">
            <column name="id" type="BINARY(16)">
                <constraints nullable="false" primaryKey="true" primaryKeyName="DemoEntityPK"/>
            </column>
            <column name="age" type="BIGINT"/>
        </createTable>
    </changeSet>
    <changeSet author="harperjon (generated)" id="1700149379729-1">
        <modifyDataType columnName="age" newDataType="int" tableName="DemoEntity"/>
    </changeSet>
</databaseChangeLog>

The exception is shown at each command
java.lang.UnsupportedOperationException: The application must supply JDBC connections
    at org.hibernate.engine.jdbc.connections.internal.UserSuppliedConnectionProviderImpl.getConnection (UserSuppliedConnectionProviderImpl.java:44)
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection (JdbcEnvironmentInitiator.java:284)
  ...
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:407)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:348)

Note: Predictably, if you don't set ?dialect=org.hibernate.dialect.H2Dialect in the referenceUrl liquibase-hibernate url, you get
[ERROR] org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]: Unable to determine Dialect without JDBC metadata (please set 'javax.persistence.jdbc.url', 'hibernate.connection.url', or 'hibernate.dialect')

and it doesn't work at all. But if you set it everything works.

Thanks for the reply @jonenst, that helps.  In your use case, setting the database name and version should be enough?

jakarta.persistence.database-product-name
one of
** jakarta.persistence.database-product-version
** jakarta.persistence.database-major-version and optionally jakarta.persistence.database-minor-version.

See also the discussion at https://hibernate.atlassian.net/browse/HHH-17425

Hi @sebersole , so you mean to say that in a future version of hibernate (do you know which one ?), the following code in main
https://github.com/hibernate/hibernate-orm/blob/55431f292b1f2b2cd2178d03a7599125e7672490/hibernate-core/src/main/java/org/hibernate/engine/jdbc/env/internal/JdbcEnvironmentInitiator.java#L106
https://github.com/hibernate/hibernate-orm/blob/55431f292b1f2b2cd2178d03a7599125e7672490/hibernate-core/src/main/java/org/hibernate/engine/jdbc/env/internal/JdbcEnvironmentInitiator.java#L116 )
will be inverted to prioritize explicitconfiguration when enough properties are specified ( see https://github.com/hibernate/hibernate-orm/blob/55431f292b1f2b2cd2178d03a7599125e7672490/hibernate-core/src/main/java/org/hibernate/engine/jdbc/env/internal/JdbcEnvironmentInitiator.java#L385-L386 )
Until this future version is published, we should use hibernate.temp.use_jdbc_metadata_defaults=false ? (liquibase-hibernate shades a recent hibernate version, currently https://github.com/liquibase/liquibase-hibernate/blob/a4f21c028ee50736c320ab528b277bc432c077b6/pom.xml#L54 )

I guess I had assumed they were integrating with Hibernate via the SchemaTooling SPI which does not need connections (though the built-in tools will when asked to physically export to the database, ofc).

so you mean to say that .. will be inverted to prioritize explicitconfiguration when enough properties are specified?

Yes, that's exactly what I mean.  Once we know the full compliment of values from Quarkus and other use-cases.


Developer's console message buried in PayPal debugging messages.

checkout.js is very chatty and currently floods the console with PayPal debugging messages, making it hard for an integrating developer to spot their own console messages:
It is already possible to reduce the checkout.js log level and thus suppress most of the PayPal messages by setting an attribute data-log-level="warn" on the script tag, but this option is not documented.
Since most of PayPal's log messages seem to be of internal nature and don't seem to be relevant for external developers, I'd suggest to set the default log level to warn and thus keep the internal debugging information by default from those not explicitly interested.

Yeah, ok. I was reluctant to do this originally since we rely so much on merchants being able to send us these logs, to triage issues, but I think we're in a stable enough state at the moment that we can do this.
Would be good to think of an easy way to help people testing enable logs on a case-by-case basis though (maybe some local storage key or something?)


About the timm: ImportError: cannot import name 'overlay_external_default_cfg'

I have noticed that in your requirements.txt file, the project need timm>=0.3.2, and I find when i bash the train.sh
the continual package lack the corresponding function 'overlay_external_default_cfg'.
Here is the Error

and this is my timm version

I have also tried the timm0.6.7

@zzli2022
HI ! I solved this problem through correcting torch version && torchvision version.
maybe you can use this repo through correcting version
<I'm using a 3090TI >
pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 -f https://download.pytorch.org/whl/torch_stable.html

I had the same problem.  I tried several versions and the 0.4.9 timm worked


Protoc mismatched version, follow up of #132

Hi, following up #132
I am now using rules_proto from the master and still egt the same issue:
WORKSPACE
http_archive(
    name = "com_google_protobuf",
    strip_prefix  = "protobuf-3.21.5",
    urls = [
      "https://github.com/protocolbuffers/protobuf/releases/download/v21.5/protobuf-all-21.5.tar.gz"
    ],
)

git_repository(
    name = "rules_proto",
    remote = "https://github.com/bazelbuild/rules_proto",
    branch = "master",
)
load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains")
rules_proto_dependencies()
rules_proto_toolchains()

http_archive(
    name = "com_github_grpc_grpc",
    urls = [
        "https://github.com/grpc/grpc/archive/refs/tags/v1.44.0.tar.gz",
    ],
    sha256 = "8c05641b9f91cbc92f51cc4a5b3a226788d7a63f20af4ca7aaca50d92cc94a0d",
    strip_prefix = "grpc-1.44.0",
)
load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps")
grpc_deps()
load("@com_github_grpc_grpc//bazel:grpc_extra_deps.bzl", "grpc_extra_deps")
grpc_extra_deps()

BUILD 1
load("@rules_proto//proto:defs.bzl", "proto_library")

cc_proto_library(
  name="protos_all",
  deps=[
    ":protolibs_all"
  ],
  visibility = ["//cc/tensorflow:__subpackages__"],
)

proto_library(
  name="protolibs_all",
  srcs=glob(["*.proto"]),
)

BUILD 2
cc_binary(
    name = "ppu_pluggable_device_prime",
    linkshared=True,
    srcs = glob(["**/*.cc", "**/*.inc", "**/*.h"]),
    deps = [
        "//cc/tensorflow:docker",
        "//cc/tensorflow/plugin_primeclient:plugin_primeclient",
        "//cc/tensorflow/plugin/protos:protos_all",
        "//cc/primeclient:prime_client.so",
    ],
    copts = ["-std=c++17", "-fPIC", "-O2"],
)

Error:
ERROR: /workspaces/Plugins/cc/tensorflow/plugin_primeclient/BUILD:3:11: Compiling cc/tensorflow/plugin_primeclient/grappler/grappler.cc failed: (Exit 1): gcc failed: error executing command
  (cd /home/tfprime/.cache/bazel/_bazel_tfprime/15cb1fee4b5b71ca00b6e95dc1b96f57/sandbox/processwrapper-sandbox/1746/execroot/__main__ && \
  exec env - \
    LD_LIBRARY_PATH=/home/ubuntu/python3-venv/tensorflow/lib:/opt/opencv/install/lib:/opt/openblas/lib: \
    PATH=/home/tfprime/.cache/bazelisk/downloads/bazelbuild/bazel-5.3.0-linux-arm64/bin:/vscode/vscode-server/bin/linux-arm64/da76f93349a72022ca4670c1b84860304616aaa2/bin/remote-cli:/home/tfprime/python3-venv/bin:/home/tfprime/packages/bazel:/home/ubuntu/python3-venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin \
    PWD=/proc/self/cwd \
  /usr/bin/gcc -U_FORTIFY_SOURCE -fstack-protector -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer '-std=c++0x' -MD -MF bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin_primeclient/_objs/plugin_primeclient/grappler.pic.d '-frandom-seed=bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin_primeclient/_objs/plugin_primeclient/grappler.pic.o' -fPIC -iquote . -iquote bazel-out/aarch64-fastbuild/bin -iquote external/tensorflow_docker_arm64 -iquote bazel-out/aarch64-fastbuild/bin/external/tensorflow_docker_arm64 -iquote external/com_google_protobuf -iquote bazel-out/aarch64-fastbuild/bin/external/com_google_protobuf -iquote external/zlib -iquote bazel-out/aarch64-fastbuild/bin/external/zlib -Ibazel-out/aarch64-fastbuild/bin/external/tensorflow_docker_arm64/_virtual_includes/headers -Ibazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/_virtual_includes/interface -isystem cc/tensorflow/plugin/interface -isystem bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/interface -isystem cc/tensorflow/plugin/protos -isystem bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/protos -isystem external/com_google_protobuf/src -isystem bazel-out/aarch64-fastbuild/bin/external/com_google_protobuf/src -isystem external/zlib/zlib/include -isystem bazel-out/aarch64-fastbuild/bin/external/zlib/zlib/include -isystem cc/primeclient -isystem bazel-out/aarch64-fastbuild/bin/cc/primeclient -DLOG_KERNEL_CONTEXT -DDEBUG_STREAM -DDEBUG_EVENT -DDEBUG_PC_MEM -DDMA_DEBUG '-std=c++17' -fPIC -O2 -fno-canonical-system-headers -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' -c cc/tensorflow/plugin_primeclient/grappler/grappler.cc -o bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin_primeclient/_objs/plugin_primeclient/grappler.pic.o)
# Configuration: f092a0e05aad899a5017646e0d9f9a5f268e83562334d62ba227840fc3353d8c
# Execution platform: @local_config_platform//:host

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
In file included from cc/tensorflow/plugin_primeclient/grappler/grappler.cc:7:
bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/protos/graph.pb.h:12:2: error: #error This file was generated by a newer version of protoc which is
   12 | #error This file was generated by a newer version of protoc which is
      |  ^~~~~
bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/protos/graph.pb.h:13:2: error: #error incompatible with your Protocol Buffer headers. Please update
   13 | #error incompatible with your Protocol Buffer headers. Please update
      |  ^~~~~
bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/protos/graph.pb.h:14:2: error: #error your headers.
   14 | #error your headers.
      |  ^~~~~

And by the way, I added com_google_protobuf to the WORKSPACE because without it I was getting:
ERROR: /workspaces/Plugins/cc/tensorflow/plugin/BUILD:16:10: error loading package '@com_google_protobuf//': Label '@com_google_protobuf//proto:defs.bzl' is invalid because 'proto' is not a package; perhaps you meant to put the colon here: '@com_google_protobuf//:proto/defs.bzl'? and referenced by '//cc/tensorflow/plugin:ppu_pluggable_device_prime'

This is seriously blocking me, I would be really thankful to anyone who is able to help me to get through it.
Thank you.

Right now I am running in a fresh container, I am using rules_proto 19.2, I can check the protoc on the system:
$ sudo find / -name protoc -type f
/home/tfprime/.cache/bazel/_bazel_tfprime/15cb1fee4b5b71ca00b6e95dc1b96f57/external/com_google_protobuf_protoc_linux_aarch64/bin/protoc
$ /home/tfprime/.cache/bazel/_bazel_tfprime/15cb1fee4b5b71ca00b6e95dc1b96f57/external/com_google_protobuf_protoc_linux_aarch64/bin/protoc --version
libprotoc 3.19.2

So there is only one protoc installed, but still, somewhat bazel manage to tell me that:
bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/protos/graph.pb.h:12:2: error: #error This file was generated by a newer version of protoc which is
   12 | #error This file was generated by a newer version of protoc which is
      |  ^~~~~
bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/protos/graph.pb.h:13:2: error: #error incompatible with your Protocol Buffer headers. Please update
   13 | #error incompatible with your Protocol Buffer headers. Please update
      |  ^~~~~
bazel-out/aarch64-fastbuild/bin/cc/tensorflow/plugin/protos/graph.pb.h:14:2: error: #error your headers.
   14 | #error your headers.
      |  ^~~~~

This is seriously blocking me and I have no clue why is that and how can I solve it. It doesn't look like it should behave like that.
I would really appreciate some help please.

We are also facing this issue . you got any solution ?

Sorry this has been open for so long. As of 6.0.0-rc3 this repo no longer depends directly on protobuf (aka. com_google_protobuf) so you're free to bring whatever version of it you like, or a pre-built toolchain (https://registry.bazel.build/modules/toolchains_protoc)


Document Spark peculiarities

Special BOM
Not necessarily compatible with the rest of the platform
dataframe does not work on Java 11
Hive does not work https://issues.apache.org/jira/browse/CAMEL-15696
The above may change after https://issues.apache.org/jira/browse/CAMEL-15650

Follows up https://github.com/apache/camel-quarkus/pull/1916


Contact Manager App #3840

Contact Manager App #3840

Close #3840

Checklist:

[X] I have mentioned the issue number in my Pull Request.
[X] I have commented my code, particularly in hard-to-understand areas
[X] I have created a helpful and easy to understand README.md

@MohitGupta121 @Ijaiswalshivam Now you can merge and label it. Everything have been rectified.


Fix help message of some command

Pull Request Check List

[ ] A news fragment is added in news/ describing what is new.
[ ] Test cases added for changed code.

Describe what you have changed in this PR.
Some help messages.
BTW, would you mind me adding an hand-written zsh completion script for this project?

BTW, would you mind me adding an hand-written zsh completion script for this project?

Oh yeah, currently it is using an auto-generated one. It would be good to have this.

would you mind adding a news entry for this pr?

would you mind adding a news entry for this pr?

Updated.


Update how-to-signing-integrations.md

Remove hardcoed v. so we allways get to the newest one at powershellgallery.com

@microsoftshawarma
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@microsoftshawarma
Can you review this old PR and determine whether it needs to be closed or merged?

@microsoftshawarma - I'll merge this PR based on your approval. If this article requires further changes, please open a separate pull request.


Dev rbTree and TreeSet

Codecov Report

Merging #9 (d4a5787) into master (2730993) will decrease coverage by 0.49%.
The diff coverage is 96.87%.

@@            Coverage Diff             @@
##           master       #9      +/-   ##
==========================================
- Coverage   98.41%   97.92%   -0.50%
==========================================
  Files          16       17       +1
  Lines         758     1012     +254
==========================================
+ Hits          746      991     +245
- Misses          9       15       +6
- Partials        3        6       +3

Impacted Files
Coverage Δ

collections/rbTree.go
94.17% <93.40%> (-5.83%)
:arrow_down:

collections/rbNode.go
97.68% <98.01%> (+0.20%)
:arrow_up:

collections/iterators.go
93.39% <100.00%> (+1.82%)
:arrow_up:

collections/linked_list.go
100.00% <100.00%> (ø)

collections/sets.go
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


added missing text to asreview_cli.qmd

added missing text to "Data is stored on Surfdrive" paragraph, as  the text was incomplete. Just finished the sentence, it might be necessary to put more info there, as I have looked at this only as an end-user.

Thanks a lot for adding the missing text!


Reproducing the paper numbers - Code is not working

Hi @hotfinda ,
Could you please share the actual implementation of the paper that can re-produce the results you reported in the paper?
Basically, the current code is not running.
(1) For the first problem you are trying to solve (Historical decay), I just can see in the code this line:
self.A_b_log = mask_diagnomal (A_b_log)
There is no function called mask_diagnomal anywhere.
(2) For the second problem (Element contradiction), I could not find the solution in any file in the provided code.
Your fast response is highly appreciated.
Best Regards,
Abdelrahman.

@Amshaker
It looks like mask_diagnomal(A_b_log) is a typo. I think it is supposed to be mask_diagonal(A_b_log) which exists here
For the Element contradiction, it seems like the residual connection is implemented here
A = deltaA[:, :, i] + deltaA[:, :, x.index]

Hi @rolson24,
Thanks for your response.
Thank you for your response.
Regarding the residual connection, I noticed that the function selective_scan_ref is not invoked anywhere in the code.
As for the mask_diagonal function, I ran VideoMamba-Pro with it over the original VideoMamba, and the performance decrease was less than 0.1%. This is contrary to the paper's ablation study in Table 7, which reports a 3.3% improvement in Top-1 accuracy.
Could you please guide me how to reproduce the paper numbers? The current implementation is not matching with the reported numbers.
Thank you!
Abdelrahman.

I'm not affiliated with the paper at all, so I also don't know how to reproduce it. I just thought it sounded interesting and saw an easy fix.
As for the selective_scan_ref I also saw that it's not being called in the code probably because it's supposed to just be a reference. But then they should have changed the cuda kernels to match A matrix residual connection, but I also couldn't find if it was changed in any of the kernels.
It's disappointing that you couldn't reproduce the authors numbers. I hope they update their code so that it is correct.
Also did you do a full pretraining run on INet1K to try to reproduce the paper?

I see. I thought you would be a co-author of this work.
Exactly! This codebase does not include the CUDA kernel implementation for the residual connection. The kernel folder is identical to the one in the VideoMamba paper.
Yes, I pre-trained the backbone on INET1K using the diagonal masking function, but:
(1) There was no improvement on ImageNet.
(2) The pre-trained backbone, when integrated into VideoMamba, showed the same performance.
According to the paper, I was expecting significant improvements on both ImageNet and Kinetics-400. This is really disappointing.
@hotfinda Could you please elaborate more on that? We need to reproduce the paper numbers, please. It would be great if you updated the repository with the actual code that produced the paper numbers.

I just read a paper that is somewhat related to what the authors did in this paper. Its by Albert Gu's lab (author of Mamba) and it goes into even more depth about how to create a good bidirectional SSM. The code is pretty limited right now, but it probably wouldn't be too hard to plug into an existing Mamba model like VideoMamba.
Hydra: Bidirectional State Space Models Through Generalized Matrix Mixers
Sukjun Hwang*, Aakash Lahoti*, Tri Dao, Albert Gu
Paper: https://arxiv.org/abs/2407.09941
Blogpost: https://goombalab.github.io/blog/2024/hydra-part1-matrix-mixer/

Hi guys, we have uploaded the latest version of our code, you should be able to run it sucessfully now.

@hotfinda Can you provide checkpoints for the results presented in the paper, along with the imagenet checkpoints? I have trained the model using your code and the performance is not even close to what the paper claims. Performance is close to or less than the original VideoMamba. So can you please provide checkpoints so I can compare with the performance in the paper?

Hi we have uploaded the checkpoints in the link, you can download and have a try.


List papers events reviews on user profile

Summary

Fixes #115
Shows related papers, reviews and events on user profile page. Filters out reviews by viewing permission.
List of changes proposed in this PR (pull-request)

Added get_related_papers/events/reviews functions to the user model
Added a get_context_data function to the userdetail view that uses the above functions
Updated the user detail templates to display links to papers/reviews/events

What should a reviewer concentrate their feedback on?

[ ] Reviews are hidden properly according to reviewer and paper settings
[ ] Papers, reviews and events are all displayed
[ ] Links point to the right pages

This is looking great.
I corrected a minor bug (user was being assigned to user in the view but the filed in the event model is actually creator) and adding some formatting details. One question. Do you know why reviews.count would return nothing in the template while events.count and papers.count retunr a number, even if it's zero?


fix: web, doc link with few web UI syntax fixes

:tada: This PR is included in version 1.2.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Topbar color

It would be great to have a variable for the topbar color in variables.less.

It's not a big issue, but I definitely like to see this.

this should be easy by changing in less file and recompiling...
-Nikunj Dhawan

Added in 2.0-wip.


README & Run script

Hello Pedro,
I have prepared a short README including the project description and short instructions to set up this project locally.
Also, I include a shell script to improve users experience when contributing.

I think it is a nice way to welcome contributors!
The script is not mandatory to run the application, but  it would be best to test the script on Linux and Windows. It was developed in a Mac.
Greetings and thanks,
Dan

It is amazing, thanks so much bro


Federico: Watch nhtechnologies.co.uk

Federico requests the watch of the watch_keyword nhtechnologies\.co\.uk. See the Metasmoke search here and the Stack Exchange search here.

nhtechnologies\.co\.uk has been seen in 0 true positives, 0 false positives, and 0 NAAs.

Coverage remained the same at 65.732% when pulling 6d3747ed604fb82ad3e1d8221cd465f04aa9024d on auto-blacklist-1528101265.716172 into ac40b35df0498036c84e772d6b3e3dc6e2f80311 on master.

!!/approve

Context


Doubts in Simul MuSTC ST example

❓Doubts in Simul MuSTC ST example
I have a few doubts related to this tutorial
Question?

The pretrained checkpoints provided for ST here and pretrained ASR here are zip files. Can you provide instructions about loading these checkpoints? In most of the other tutorials, the checkpoints are provided as *.pt which can be directly used.
What is the number of GPUs used for training the models?

Answers
These doubts were clarified in a discussion with the author over here

*.zip can be directly loaded as *.pt
ST was trained on 8 GPUs, I'm assuming ASR was trained on a single GPU since it has --update-frequency=8.

@mzaidi59 I just made some edits to the tutorial to clarify: https://github.com/pytorch/fairseq/pull/3374


Resolved the login issue with GITHUB on CI/CD tab on component details page and Authorisation tab on settings page

#PLTDX-1106

Approved, looks good


Avoid an "Invalid array settings" error at CLI commands

Codecov Report

Merging #11 (a210f8a) into 1.1 (d86a0a5) will not change coverage.
The diff coverage is 100.00%.

Impacted Files
Coverage Δ

src/Onelogin/AuthFactory.php
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Flatten Distribution class

closes #340
Removals

Remove DistributionBounds class

Changes

Flatten Distribution class

Checklist

[x] PR has an informative and human-readable title
[x] Changes are limited to a single goal (no scope creep)
[x] Code can be automatically merged (no conflicts)
[x] Code follows project standards (link if applicable)
[x] Passes all existing automated tests
[x] Any change in functionality is tested
[x] New functions are documented (with a description, list of inputs, and expected output)
[x] Placeholder code is flagged / future todos are captured in comments
[x] Visually tested in supported browsers and devices (see checklist below :point_down:)
[x] Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)
[x] Reviewers requested with the Reviewers tool :arrow_right:

@christophertubbs, fixed the typo. This is ready for another review.


fix: some cleanup in Nat.Factorial.Basic

Also remove some unimportant porting notes in Order.Concept.

Thanks!
bors merge

Thanks!
bors merge


feat: add labels on job spec as tags in airflow2 dag

Hi Maintainers,
I need to organizing my dags/jobs on the Airflow UI,
there's already that feature in airflow using tags
https://airflow.apache.org/docs/apache-airflow/stable/howto/add-dag-tags.html
and there's already labels on job spec
so, I'll need that labels rendered as tags in optimus' rendered dag codes.
I hope my code can be tested and reviewed to give this feature on optimus.
thank you

Thanks for raising the PR @novanxyz , this looks good.
@arinda-arif Can you help test for any edge cases(different kinds of label strings) and merge if LGTY as well?

Thanks for the PR @novanxyz .
Related to the changes you have done, going forward we will move the labels into metadata in the job.yaml configuration file, like the following. The use of labels itself for the tagging might be misleading. So, instead, we can add the tags under metadata and use it during rendering.

@irainia Good point, but can you elaborate on The use of labels itself for the tagging might be misleading in airflow dags?

Yes @kushsharma , so in the job spec, the user puts values as label. However, we actually use the label as tag for airflow. I'm thinking that, since we will need an input from the user to be used as a tag in airflow, then why don't we just let them know that they have to specify the tag instead of label. That way, it will be more consistent from the user's perspective, implementation in the code, and what appears in the airflow.
Regarding whether we will remove the label field or not, I have no strong opinion around this. We can still use the label field or not. As long as we have some convention like "if it is related monitoring, put it as label, and if it's for tag in airflow, use tag" or something similar, then I'm okay.

Umm I still feel because we want optimus to be agnostic to airflow as much if we can, adding a tag just because airflow uses this terminology won't be better. As per your comment I see the behaviour is still the same, its just a matter of naming and where we put it then I think its better if we just leverage labels for airflow tags. We currently use these labels for GCP resources as well similarly we can do so with airflow.
Lets hear from others as well @sravankorumilli @arinda-arif @sbchaos

aligned with @kushsharma on not adding anything specific to airflow. Any identifiable information of the job we are expecting users to add it as a label. So, can be used as airflow tags too, it is a similar thought process when its uses in gcp labels.

@kushsharma , based on what you mention, you want labels to be used for two purposes, which is for the GCP resource labeling and for airflow tagging. Now, how should the user know or the developer know when part of that label is considered for airflow or other scheduler (if any) and when used for the GCP resource labelling? An example on the job.yaml would be helpful.
And about "agnostic", firstly, I agree that we should be agnostic on the scheduler. But, I'm wondering, how far do we want Optimus to be agnostic to the scheduler provider? Because at the moment, most of our implementation revolves around airflow.
And about naming, I don't think it is "just a matter of naming". I think proper consistency in naming that express the meaning and the purpose of the name should be a good practice, please correct me if I miss it here.
cc: @sravankorumilli

i think same labels can be used for anything, either GCP, Airflow, or other scheduler. for example given this job.yaml:
labels:
  product: sample_product

user can get the total cost for this particular label in GCP billing and can search for dags in Airflow by putting this product:sample_product in Airflow UI search bar.
however, agree that we can move labels to metadata section. how about we use labels for now, and have a separate discussion on handling it in metadata?

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
591 unchanged lines in 30 files lost coverage.
Overall coverage increased (+0.3%) to 72.72%

Files with Coverage Reduction
New Missed Lines
%

ext/datastore/bigquery/adapter.go
2
89.95%

job/dependency_resolver.go
2
94.31%

service/namespace_service.go
2
96.67%

utils/file.go
2
0%

api/handler/v1beta1/error_helper.go
3
60.0%

ext/scheduler/airflow2/compiler/compiler.go
3
91.8%

job/event.go
3
76.92%

job/priority_resolver.go
3
86.42%

ext/datastore/bigquery/standard_view.go
4
76.27%

utils/validator.go
4
85.71%

Totals

Change from base Build<PHONE_NUMBER>:
0.3%

Covered Lines:
5158

Relevant Lines:
7093

💛  - Coveralls


Prevent spurious InvalidDistanceCode errors

Normally in a deflate bitstream all distance codes are valid. However, there are two cases where distance codes can be invalid:

If there is only one distance with non-zero code length, it is assigned code 0 and code 1 is invalid.
If all distance code lengths are zero, then back references cannot appear in the bitstream and all distance codes are invalid. Notably, however, it is permissible for length codes to be defined in the block header as long as they never appear in the bitstream itself.

Case (2) turns out to be a problem if we don't specifically account for it...
This is because fdeflate uses the bits it has read so far concatenated with padding bits when decoding the next symbol. This way it doesn't need a full 8-bytes of input data if the next symbol is only a couple bits (and so it can handle the final symbols in a bitstream). After a symbol is read, we check whether that symbol used any of padding bits and bail if so. If padding bits were used then the resulting symbol won't necessarily match what is actually present in the bitstream, but  because huffman codes are prefix codes, whatever symbol comes next must require more bits than we have so far.
Normally we try to read a full length-distance pair of symbols before checking whether enough bits are available. But unfortunately, the check for valid distance symbols came before the check for there being enough bits, leading to the spurious error.
This PR moves the check earlier, and also adds a small optimization: The distance code slowpath is only used for distance codes that are 10+ bits, so before taking the slowpath for decoding a distance symbol we first check whether we have at least 10 bits beyond the number required for the length symbol

Thanks!  I can confirm that this commit fixes the new test_input_chunking_sensitivity_example1 test case from https://github.com/image-rs/fdeflate/pull/24.


Animation is flashing on xamarin forms

Hello,
I've bought a package of icons made with AE and exported with Bodymovin.
Thing is it works absolutely well on demo file (with js and web lottie) but when I try to display it on Android with xamarin forms the animations works well but there are random flashes on the animation.
Files are quite huge, with 200+ images (PNG sequence) attached with the .json file.
What could cause this behavior ?
I'm using XF3.0 and latest lottie forms release.
See video attached : https://youtu.be/frnESO2iCkE
Thanks.

Try to reproduce on lottie native and open an issue in their repo.


Mission starts when upload_mission called intead of start_mission

I upload the first mission, arm and then start the mission. This performs as expected.
While still hovering in place I upload a second mission, the second mission begins immediately after the upload has completed without me calling 'start mission'.
Is this intended functionality? if so its somewhat confusing
#!/usr/bin/env python3

import asyncio
from mavsdk import System
from mavsdk.mission import (MissionItem, MissionPlan)

def first_mission():
    mission_items = []
    mission_items.append(MissionItem(47.39786113590441,
                                     8.545539403670114,
                                     3,
                                     5,
                                     True,
                                     float('nan'),
                                     float('nan'),
                                     MissionItem.CameraAction.NONE,
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan')))
    mission_items.append(MissionItem(47.39779940558625,
                                     8.545492465012353,
                                     3,
                                     5,
                                     True,
                                     float('nan'),
                                     float('nan'),
                                     MissionItem.CameraAction.NONE,
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan')))
    mission_items.append(MissionItem(47.39771588798181,
                                     8.545448208563608,
                                     3,
                                     5,
                                     True,
                                     float('nan'),
                                     float('nan'),
                                     MissionItem.CameraAction.NONE,
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan')))

    return MissionPlan(mission_items)

def second_mission():
    mission_items = []
    mission_items.append(MissionItem(47.39781075307662,
                                     8.545821035616678,
                                     3,
                                     5,
                                     True,
                                     float('nan'),
                                     float('nan'),
                                     MissionItem.CameraAction.NONE,
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan')))
    mission_items.append(MissionItem(47.39772995889185,
                                     8.545770073645395,
                                     3,
                                     5,
                                     True,
                                     float('nan'),
                                     float('nan'),
                                     MissionItem.CameraAction.NONE,
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan')))
    mission_items.append(MissionItem(47.39766096600676,
                                     8.545716429465097,
                                     3,
                                     5,
                                     True,
                                     float('nan'),
                                     float('nan'),
                                     MissionItem.CameraAction.NONE,
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan'),
                                     float('nan')))

    return MissionPlan(mission_items)

async def run():
    drone = System()
    await drone.connect(system_address="udp://:14540")

    print("Waiting for drone to connect...")
    async for state in drone.core.connection_state():
        if state.is_connected:
            print(f"-- Connected to drone!")
            break

    print("-- Uploading first mission")
    await drone.mission.upload_mission(first_mission())

    print("Waiting for drone to have a global position estimate...")
    async for health in drone.telemetry.health():
        if health.is_global_position_ok and health.is_home_position_ok:
            print("-- Global position estimate OK")
            break

    print("-- Arming")
    await drone.action.arm()

    print("-- Starting mission")
    await drone.mission.start_mission()

    print("Waiting until first mission finished...")
    async for mission_progress in drone.mission.mission_progress():
        print(f"Mission progress: "
              f"{mission_progress.current}/"
              f"{mission_progress.total}")

        if mission_progress.current == mission_progress.total:
            break

    print("-- Uploading second mission")
    await drone.mission.upload_mission(second_mission())

    print("Waiting until second mission finished...")
    async for mission_progress in drone.mission.mission_progress():
        print(f"Mission progress: "
              f"{mission_progress.current}/"
              f"{mission_progress.total}")

if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(run())

Is this with ArduPilot or PX4?
With PX4 it will start the mission if it still is in mission mode. I'm not sure from the top of my head if it stays in mission mode at the end of a mission, or if it switches to Hold/Loiter mode.

I'm using PX4. It remains in mission mode after a mission has completed.
Thanks for taking the time to explain, I fixed this by using your suggestion and calling hold after the first mission has completed.
Doesn't it make more sense for it swap back to Hold/Loiter after the mission has completed?

I'd say it would make sense, yes. I'm putting that on my list to look into.


ppc64le: build seccomp in dockerfile

This pr adds in building seccomp to ppc64le.
ppc64le support was officially added into seccomp 2.3.
ping @justincormack
Signed-off-by: Christopher Jones<EMAIL_ADDRESS>

@estesp I saw your libseccomp-golang patch, but with go 1.6.2 all the tests are passing and I don't see any errors

Ok, if all the tests are passing LGTM. We would still like the updated libseccomp-golang as without that we cannot easily do conditionals based on architecture, but I did set it up so if these are not needed it will still work correctly. Will do some testing soon on a ppc64le box.

LGTM

@justincormack  looks like our power jenkins found the errors I was originally seeing https://jenkins.dockerproject.org/job/Docker Master (powerpc)/114/console. I'm not sure why/how they were passing on my vm, but I'm going to have to remove the buildtags at least for now 😭

Those errors do look like they could be caused by missing seccomp rules for ppc64le. I can take a look at them and see what is up. There are a lot of ip: socket: Operation not permitted which is suspicious, although its a bit odd as ppc64le is pretty straightforward.

Ok I found what the issue is, I will do A PR to re-enable.


remove exceptions

This is a preview of the work in removing exceptions.
Inspired from rust, Result<T> is the alternative to exceptions. Internally it uses std::variant to store either the result or a std::exception.

[[nodiscard]] should almost always be used when returning Result<T>. We don't have custom lint rules so it will have to be checked manually.
Result<void> is a special case that using std::optional instead.
One downside is that we cannot return a reference, Result<T&> does not work because std::variant cannot contain references.

In theory should be able to specialize Result<T> for all reference types and store a pointer internally instead.

Could you merge the latest main into the base branch also rebase/update this branch?

I'm wondering, especially now that we bumped main to 24.04 and all the compiler versions are fairly recent, would it make sense to increase our C++ standard to C++23 and use std::expected rather than manually implementing our own Result type?

I'm wondering, especially now that we bumped main to 24.04 and all the compiler versions are fairly recent, would it make sense to increase our C++ standard to C++23 and use std::expected rather than manually implementing our own Result type?

I'm down for that


Compiling your code

Hi,
I'm newbie in programming. Could you tell me how I can compile your code?

SCons is a bit much considering it's a one line build
gcc -o pkt2flow flow_db.c pkt2flow.c  utilities.c -lpcap


Power Apps: Create front-end web donor report

Related docs:

https://github.com/OneWeekBreathe/Breathe/blob/main/docs/PowerAppSpike.md
https://github.com/OneWeekBreathe/Breathe/blob/main/docs/ProjectBreathe.md


use absl::btree_map instead of std::map in RegionCFDataTrait

Signed-off-by: Schrodinger ZHU Yifan<EMAIL_ADDRESS>What problem does this PR solve?

Issue Number: close #xxx
Problem Summary:
What is changed and how it works?
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

close this？


Make @Stored usable in UIKit/AppKit apps

Right now the @Stored property wrapper has an implicit assumption that the parent is an ObservableObject so the Store's changes can be republished. We can't make that assumption in an AppKit or UIKit app, so we either need a new construct to handle that, or to loosen the restriction.
The approach I'm leaning towards is conditionally casting the ObservableObject check in @Stored's subscript rather than a generic constraint of [Object] where Instance.ObjectWillChangePublisher == ObservableObjectPublisher which enforces these semantics.
This is not a top priority but I would like to address it so people can use it to meet the needs of their apps.

I was playing around with this, thinking that maybe you could have 2 static subscripts as long as they had different types. In theory this should work just fine, but property wrappers currently don't allow this

Property wrapper type 'Stored' has multiple enclosing-self subscripts 'subscript(_enclosingInstance:wrapped:storage:)'

My 2nd thought was to provide a protocol:
protocol NotifyChanges {
    var objectWillChange: PassthroughSubject<Void, Never> { get }
}

The name is dumb, but you get the idea. Unfortunately we can't extend the ObservableObject protocol to add this conformance, so this would require people adopt this protocol in their own types.
Ultimately I think the easiest solution would be what you said and do some conditional type checks for ObservableObject and some custom protocol.

Forgot to close this out a while ago but Boutique has been usable in UIKit/AppKit apps for a few months now, without any modifications needed. Enjoy! 😄


Remove redundant script from Travis build and improve log information

In reviewing this PR: https://github.com/apache/openwhisk-wskdeploy/pull/1137 I found something unexpected...
Although the PR itself was attempting to add arm64 support (aka aarch64); we knew that arm64 was being already being built and released without any code in that script .
I determined that we had a script that was not doing what it was named for...
https://github.com/apache/openwhisk-wskdeploy/blob/master/tools/travis/build_tag_releases.sh
and was not accounted for properly (i.e., removed) when gogradle support was added and then subsequently improved over time.
History
The original support of gogradle was added here (no "build_tag_release.sh):
https://github.com/apache/openwhisk-wskdeploy/pull/812
which removed the script in question:
- export build_file_name=wskdeploy
- go get github.com/inconshreveable/mousetrap
- "./tools/travis/build_tag_releases.sh $build_file_name"
- export RELEASE_PKG_FILE=$(ls $build_file_name-*.*)

later the same day it was added back (with no reason provided):
https://github.com/apache/openwhisk-wskdeploy/pull/814
with the comment/title: "Keep the date update-to-date when the tag latest is updated"
before_deploy:
- export build_file_name=wskdeploy
- go get github.com/inconshreveable/mousetrap
- "./tools/travis/build_tag_releases.sh $build_file_name"
- ./gradlew --console=plain releaseBinaries

Note that:

This seems like perhaps a failure to rebase after the first PR was merged?
gradlew is invoked AFTER the bash script
gradlew has no command line args to set the version/date/commit (yet)
if we remove the bash script, we can remove the export and "go get" of "mousetrap"

It was specifically removed here "Remove the redundant packages from the release artifacts":
https://github.com/apache/openwhisk-wskdeploy/pull/934

Before this the Bash script was before gradlew

BUT, then it was explicitly added back here "Add the build_tag_release script back":
https://github.com/apache/openwhisk-wskdeploy/pull/936

THIS is the PR that added the Bash script AFTER gradlew!!!
My guess is that was only added back to get the build version added back to the build

Thankfully, Anthony added support for the LDFLAGS here:
https://github.com/apache/openwhisk-wskdeploy/pull/1047/files
LDFLAGS=-ldflags "-X main.Version=${VERSION} -X main.GitCommit=${BUILD} -X main.BuildDate=${BUILD_DATE} -X main.Build=`git rev-parse HEAD` "

which made any part of the very questionable script rendered defunct.

While here,  tried to address recurring issues we have seen for a very long time only in Travis around doing large project exports (esp. with project dependencies) and add additional trace capabilities around the ExportProject test entry point.


AWS Elastic Beanstalk Deployment Issue

I have a Rails 3 app deployed on Amazon's Elastic Beanstalk solution.  When I'm developing locally, my ENV variables defined in config/application.yml are set correctly; however, they're non-existent in production.  This gem isn't only for Heroku deployment, correct?  Has anyone used this gem in EB (Elastic Beanstalk)?  If so, were there any gotchas to get it to work?
Thanks!

Any plans of supporting figaro for aws ?

That would be awesome!, how can I help?


Define route with param in Nuxt's serverMiddleware?

I'm trying to define a dynamic route param in Nuxt's serverMiddleware, but I'm not able to figure out how to achieve it because in the doc also there is no any mention about dynamic route.
I want to achieve something like this,
 //nuxt.config.js
export default {

    modules: [
      ..
    ],

  serverMiddleware: [
    '~/serverMiddleware/selectiveSSR.js',
  ]

}

And in the middleware file:
//selectiveSSR.js
export default function(req, res, next) {

    const paths = ['/', '/_id', '/:id']

    if (!paths.includes(req.originalUrl)) {
      res.spa = true
    }

    next()
  }

How do i match a dynamic route while on the server?
Just to inform, I'm using Nuxtjs in Unviersal mode with Nodejs as a rendering server. And this is the link which I'm referring for using  Nuxt serverMiddleware

+1

Hi @marvelefe,
There is no connection between the serverMiddleware and the file structure used by Nuxt for the route creation. It's done after the server middleware starts.
What you could eventually do is using a regex to match the :id (I use one that matches alphanumeric, underscore, and hyphen):
export default (req, res, next) => {
  const regex = /\/[\w-]+$/g
  if (req.originalUrl.matches(regex) {
    res.spa = true
  }
  next()
}

Would this work for you?

Hi @marvelefe,
In case anyone is having a similar issue, we have found a potential solution, here is a simple example of how to access a param:
User visits https://examplesite.co.uk/custom-path/247
// nuxt.config.js
serverMiddleware: [
'~/server-middleware/custompath.js',
]
// ~/server-middleware/custompath.js
const express = require('express')
const app = express()
app.get('/:id', async (req, res, next) => {
// req.params.id is now accessible ie. 247
next()

})
module.exports = {
path: '/custom-path',
handler: app,
}

Hope this helps point you in the right direction.

We are approaching the Nuxt 2 EOL date (June 30, 2024) - see this article for more information. I'm closing this issue as it's marked as a Nuxt 2 related enhancement and it's not a critical issue.
That doesn't mean it might not be relevant for Nuxt 3. If it is, please feel free to open a new issue (or just comment, and I can reopen it). 🙏
Thank you for your understanding and for your contribution to Nuxt! 🎉


Experimental Code

hi
I’ve just read your paper and found it incredibly valuable. Could you please consider open-sourcing the full experimental code?
Thanks!

+1, Many path files do not find the source.


Use v3 urls (okpy.org) [Do Not Merge]

This is blocked by the v3 server not being ready/deployed and the url paths not being finalized.
That should happen in a day or two and then we should be good to merge.

Reminder to merge and publish soon.

Thanks @brianhou - just pushed. Can you review? I'm still deploying this to google cloud (that might actually take 30 minutes).
If I can't deploy this to okpy.org in the next thirty minutes - lets hold off on publishing

I don't see anything glaringly wrong, but maybe we should wait to merge until it's deployed so we can test?

Deploying as v1.6.0 (with the guidance changes) for the Summer 2016 course launch.


M1/ARM Mac support

I have been trying to use the project for integration testing purposes, but when I try to install it locally ( via go install github.com/goccy/bigquery-emulator/cmd/bigquery-emulator@latest ) or integrating into my code, the process gets stuck. I wonder if this is some kind of problem with CGO and Macs with ARM chips. I see a lot of clang processes being started ( and consuming ~4gb of ram ) but they never finish and I have to force kill them.
Have had any experience running this project with this environment ? Any tips on how to run it ?
I'm open to contributions, but not sure where to start.

More information from my environment:
$ go version
go version go1.19.2 darwin/arm64

$ go env
GO111MODULE=""
GOARCH="arm64"
GOBIN=""
GOCACHE="/Users/aviebrantz/Library/Caches/go-build"
GOENV="/Users/aviebrantz/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="arm64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/aviebrantz/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/aviebrantz/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_arm64"
GOVCS=""
GOVERSION="go1.19.2"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/aviebrantz/develop/go/migrate/go.mod"
GOWORK=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/9q/scnvxrtd6vqdhhwp3kyrcf4h010fxv/T/go-build3640252609=/tmp/go-build -gno-record-gcc-switches -fno-common"

If you are installing for the first time, it may take more than 10~20 minutes to build the ZetaSQL library.
How long did you wait ?

Indeed I was not waiting enough, it took around 15 minutes here. For me it was really weird because I wasn't getting any feedback and has been a while since installing a go package took so long. But it's all good now, sorry for the noise.


How to run on linux?

Hello, I'm trying to get this to run on my linux machine.
Traceback (most recent call last):
  File "/home/****/.local/lib/python3.9/site-packages/selenium/webdriver/common/service.py", line 72, in start
    self.process = subprocess.Popen(cmd, env=self.env,
  File "/usr/lib/python3.9/subprocess.py", line 951, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.9/subprocess.py", line 1821, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
PermissionError: [Errno 13] Permission denied: 'C:\\Program Files (x86)\\chromedriver.exe'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/****/Documents/Programming/python/auto-lingo/auto-lingo.py", line 796, in <module>
    main()
  File "/home/****/Documents/Programming/python/auto-lingo/auto-lingo.py", line 773, in main
    driver = webdriver.Chrome(settings['chromedriver_path'], options=chrome_options)
  File "/home/****/.local/lib/python3.9/site-packages/selenium/webdriver/chrome/webdriver.py", line 73, in __init__
    self.service.start()
  File "/home/****/.local/lib/python3.9/site-packages/selenium/webdriver/common/service.py", line 86, in start
    raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: 'C:\Program Files (x86)\chromedriver.exe' executable may have wrong permissions. Please see https://sites.google.com/a/chromium.org/chromedriver/home

😄 Much thanks!

Hey,
have you tried replacing the path in settings.json to point to the location of chromedriver?

Hey, have you tried replacing the path in settings.json to point to the location of chromedriver?

Thanks🙏 , I was using /usr/local/bin/chromedriver instead of /usr/bin/chromedriver


Add HP-LIF format to read and write

Hello David,
Love your work on the fluxengine. For my old logic analyzer i have to use disk formatted to the HP-LIF standard. And i looked at your code and thought i could add a preset for writing a HP-LIF format to disk. it is just another encoding. But i'm a bit stuck now in definitions.

The disk format is described here: https://www.hp9845.net/9845/projects/fdio/
The preset i defined looks like this:
/* --- HP-LIF ----------------------------------------------------- */
static ActionFlag presetHPLIF(
{ "--ibm-preset-hp-lif" },
"Preset parameters to a HP-LIF 3.5" 616kB HP disk.",
[] {
setWriterDefaultInput(":c=77:h=2:s=16:b=256");
trackLengthMs.setDefaultValue(200);
sectorSize.setDefaultValue(256);
startSectorId.setDefaultValue(0);
emitIam.setDefaultValue(false);
clockRateKhz.setDefaultValue(250);
idamByte.setDefaultValue(0x5554);  //??? dont know
damByte.setDefaultValue(0x5545);  //??? dont know
gap0.setDefaultValue(32);  // just the number of repeats
gap1.setDefaultValue(80); //as emitIam is false this value remains unused
gap2.setDefaultValue(22);  // just the number of repeats
gap3.setDefaultValue(46);  // just the number of repeats
sectorSkew.setDefaultValue("0123456789abcdef"); //?? there are 16 tracks...
swapSides.setDefaultValue(false);
});
But i don't know if i did something wrong here.
The i changed to the read part.. but i did not see how to calculate the constant FluxPattern MFM_PATTERN for the HP-LIF.
and i couldn't find how to change the number of tracks and sectors en bytes per sector.
maybe you can add the HP-LIF format to the fluxengine client for me or give me some pointers to what to change..
i have a attached an IMD file with a image of an HP-LIF disk.
thanks in advance
10342-13017.zip

Hello --- thanks for this! It'll be good to have LIF support.
It looks like it's a simple variant of the standard IBM scheme. What happens if you try to read a LIF disk with fluxengine read ibm? If that works (and make sure that it has the right number of sectors) then it should make things very easy. From the image you attached, I don't think you need custom byte or patterns, so just copying the 3.5" DD preset in the writer with the minor changes you have here should work.
Of course, the only way to test it is with a real HP device to try reading disks, and unfortunately I don't have one...

If i try ./fluxengine read ibm --ibm-sector-id-base=0
{Reading from: :d=0:s=0-1:t=0-79}
it doesn't read right. It reads 0-79 tracks. while the format specifies 0-76 Cylinders (are tracks the same as Cylinders?)
the result is: Good sectors: 797/3840 (20%)
Missing sectors: 2989/3840 (77%)
Bad sectors: 54/3840 (1%)
writing 80 tracks, 2 heads, 24 sectors, 1024 bytes per sector, 3840 kB total
the 1024 bytes per sector is wrong. it should find 16 sectors with 256 bytes of data. So how can i specify this?
HP-LIF

That sounds like the disk was previously formatted, and the automatic analyser is confused by seeing some 1024-byte sectors and some 256-byte sectors. What does the sector map look like? You may need -s :t=0-76 to limit the area being read.

I formatted an 3M DD/DS 1.0Mb disk (which was previously formatted as a 720Kb dos disk) on my logic analyzer in LIF format. I put this empty LIF formatted disk in the fluxengine and tried to read it:
"./fluxengine read ibm --ibm-sector-id-base=0 -s :t=0-76:s=0-1:d=0 --overwrite -f test.flux"
the result is (including the sector map):
H.SS Tracks --->
0. 0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0. 1 .............................................................................
0. 2 .............................................................................
0. 3 .............................................................................
0. 4 .............................................................................
0. 5 .............................................................................

0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1 .............................................................................
2 .............................................................................
3 .............................................................................
4 ...............................................................B....B.BBBBBB.
5 .............................................................................
Good sectors: 762/924 (82%)
Missing sectors: 154/924 (16%)
Bad sectors: 8/924 (0%)
writing 77 tracks, 2 heads, 6 sectors, 1024 bytes per sector, 924 kB total
I don't know how i can force fluxengine to read 77 tracks with a forced sector size of 256bytes. It should know from the ID-field what the number of cylinder, head, sector and length is..
I include the produced Flux file: test.flux
test.zip

That's found five sectors per track, numbered 1..5. (Your use of --ibm-sector-id-base=0 has forced it to assume that sector 0 exists, which is why it's reading as 6 sectors per track, but this disk doesn't have a sector 0.) That's definitely not the LIF you described to me above. I think instead it's the format described at the bottom of this page: https://www.rudiswiki.de/wiki9/HP1652InverseAssembler
It's still the IBM format, so FluxEngine should have no problem reading and writing them with the write options.

David, you are absolutely right. Silly me. I tried to read the disk with: ./fluxengine read ibm -s :t=0-76:s=0-1:d=0 -o testhplif.img
This resulted in de following sector map:
H.SS Tracks --->
0. 0 .............................................................................
0. 1 .............................................................................
0. 2 .............................................................................
0. 3 .............................................................................
0. 4 .............................................................................

0 .............................................................................
1 .............................................................................
2 .............................................................................
3 .............................................................................
4 .............................................................................
Good sectors: 770/770 (100%)
Missing sectors: 0/770 (0%)
Bad sectors: 0/770 (0%)
writing 77 tracks, 2 heads, 5 sectors, 1024 bytes per sector, 770 kB total

Everything seems to be read. Now to write a disk.
When reading fluxengine said the following:
Measuring rotational speed... 200ms
0.0: 249.706 ms in 65088 bytes
12 records, 6 sectors; 2.01us clock (498kHz);
logical track 0.0; 5120 bytes decoded.
This means for the write options that they should contain the following:
static ActionFlag presetHPLIF(
{ "--ibm-preset-hp-lif" },
"Preset parameters to a HP-LIF 3.5" 770kB HP disk.",
[] {
setWriterDefaultDest(":d=0:s=0-1:t=0-76");
setWriterDefaultInput(":c=77:h=2:s=5:b=1024");
trackLengthMs.setDefaultValue(250);
startSectorId.setDefaultValue(1);
sectorSize.setDefaultValue(1024);
clockRateKhz.setDefaultValue(500);
});
Question is the tracklengthMs the same as the value shown while reading the disk? In this example 249.706 ms say 250ms?
and the clockrate is 500kHz (while reading the disk 498kHz?)
The resulting disk is not readable on my logic analyzer. Any Clue?

I found it. Reading the image went well. And writing is also successful with this preset:
/* --- HP-LIF ----------------------------------------------------- */
static ActionFlag presetHPLIF(
{ "--ibm-preset-hp-lif" },
"Preset parameters to a HP-LIF 3.5" 770kB HP disk.",
[] {
setWriterDefaultDest(":d=0:s=0-1:t=0-76");
setWriterDefaultInput(":c=77:h=2:s=5:b=1024");
trackLengthMs.setDefaultValue(200);
sectorSize.setDefaultValue(1024);
startSectorId.setDefaultValue(1);
emitIam.setDefaultValue(true);
clockRateKhz.setDefaultValue(250);
idamByte.setDefaultValue(0x5554);
damByte.setDefaultValue(0x5545);
gap0.setDefaultValue(80);
gap1.setDefaultValue(50); //as emitIam is false this value remains unused
gap2.setDefaultValue(22);
gap3.setDefaultValue(44);
sectorSkew.setDefaultValue("01234");
swapSides.setDefaultValue(false);
});
The disk is recognized by my logic analyzer as a LIF disk and accessible.
Thanks for the hints you gave me. You were right that i had the wrong disk format in the beginning.
Anyway, thanks again and i close the item now.
Greetings Wybren


Investigate switching to karma-systemjs for all skeletons

Check on latest version of systemjs and report back findings here.  If necessary document what fixes need to take place on any ends and link issues here.

I ran into this issue today with TypeScript. The issue was my SystemJS version was too high. I had to install 0.19.6 which the package.json specifies, but running jspm dl-loader --latest actually installs a later version which breaks karma-systemjs.

Closing this out since the current solution is working and other options via the CLI are/will be available.


[stable/strapi ]add strapi helm chart

Is this a new chart

NOTE: We're experiencing a high volume of PRs to this repo and reviews will be delayed. Please host your own chart repository and submit your repository to the Helm Hub instead of this repo to make them discoverable to the community. Here is how to submit new chart repositories to the Helm Hub.

What this PR does / why we need it:
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

what i can do abt this to get evrified i commit and fix DCO but @scottrigby @viglesiasce

@scottrigby @viglesiasce hey can you please check this


Serious Problem with Registrator Losing All Entries

I've been using registrator for a couple months now, but only recently started putting more production load on it along with Skydns.
My problem is that all of the sudden most dns records vanish from etcd. The directories exist, but not the files/keys. When this happens I ofcourse lose DNS, Vulcand freaks out since it uses the DNS to find backends and my sites go dark.
To resolve the issue, I have to kill registrator, sometimes several times before it starts to work again.
When the problem occurs I'll typically see a lot of errors like this in the logs:
Apr 20 02:05:01 core-01 docker[29141]: 2015/04/20 02:05:01 registrator: skydns2: failed to register service: 100: Key not found (/skydns/local/cloudposse/elk/journalctl) [68269174]
Apr 20 02:05:21 core-01 docker[29141]: 2015/04/20 02:05:21 registrator: skydns2: failed to register service: 100: Key not found (/skydns/local/cloudposse/elk/journalctl) [68269712]
Apr 20 02:05:57 core-01 docker[29141]: 2015/04/20 02:05:57 registrator: skydns2: failed to register service: 100: Key not found (/skydns/local/cloudposse/elk/journalctl) [68271114]
Apr 20 02:06:46 core-01 docker[29141]: 2015/04/20 02:06:46 registrator: skydns2: failed to register service: 100: Key not found (/skydns/local/cloudposse/elk/journalctl) [68272881]
Apr 20 02:07:41 core-01 docker[29141]: 2015/04/20 02:07:41 registrator: skydns2: failed to register service: 100: Key not found (/skydns/local/cloudposse/elk/journalctl) [68274823]
Apr 20 02:08:36 core-01 docker[29141]: 2015/04/20 02:08:36 registrator: skydns2: failed to register service: 100: Key not found (/skydns/local/cloudposse/elk/journalctl) [68276596]
Apr 20 02:09:30 core-01 docker[29141]: 2015/04/20 02:09:30 registrator: skydns2: failed to register service: 100: Key not found (/skydns/local/cloudposse/elk/journalctl) [68278813]
Apr 20 02:10:35 core-01 docker[29141]: 2015/04/20 02:10:35 registrator: skydns2: failed to register service: 100: Key not found (/skydns/local/cloudposse/elk/journalctl) [68280998]

Interestingly enough, I'll often see the directory like /skydns/local/cloudposse/elk/es but not key /skydns/local/cloudposse/elk/es/1
Once I saw a barrage like this (only partial snippet):
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: abf898dba6ad No such container: abf898dba6ad5317121f39f003de437f09da8c561ff888ab2abcaa4c9c38a758
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: ff7c43cb59a6 No such container: ff7c43cb59a6e0ca0d85f379cfb151dbfc8f4cec69d470404f9d440c5fcc514c
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: 42eba08e3649 No such container: 42eba08e36490c12fad93a4b4e99251674c33b9b553cf5f44f706a0a87aa2cde
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: dbe61ba17ede No such container: dbe61ba17ede584eeb65680cb71e571028e095681a85a7c999408753866a3845
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: b1fa31efce9e No such container: b1fa31efce9e89b8c2b4e5ac1e1ba6cfc23d008ca1d36d3fa5025ba45bd008da
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: 631150a5f59d No such container: 631150a5f59d45cfd19f91ff1c4ffaa4006a77b9336d4183ffd9a85093c197c1
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: afa39d788ea2 No such container: afa39d788ea2318d5e3c1cdf78d2232d6c983bb60a5a0066b2eb3943fbd0ad17
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: c47d0822ec2f No such container: c47d0822ec2f4667c1166353e59452b9421a2ddb4346a7a3255a93c69dd465d7
Apr 20 03:05:14 core-01 docker[18761]: 2015/04/20 03:05:14 registrator: unable to inspect container: 2df1d59f8a82 No such container: 2df1d59f8a8261f321c0759fd60a7838e323065834809f55ab699fb719d3ac09

I am running progrium/registrator:latest on CoreOS
Here's what my unit file looks like:
ExecStart=/usr/bin/docker run \
                      -v /var/run/docker.sock:/tmp/docker.sock \
                      --name registrator_skydns \
                      -h $COREOS_PRIVATE_IPV4 \
                      -e "SERVICE_NAME=registrator" \
                      -e "SERVICE_ID=skydns" \
                      progrium/registrator:latest \
                      -internal \
                      -ttl 300 \
                      -ttl-refresh 120 \
                      skydns2://${COREOS_PRIVATE_IPV4}:4001/cloudposse.local

Here's what a typical service looks like that would get automatically registered:
ExecStart=/usr/bin/docker run \
                      --name elk_es-1 \
                      --rm \
                      --dns ${COREOS_PRIVATE_IPV4} \
                       \
                      --volume /tmp/elasticsearch:/var/lib/elasticsearch \
                      -e "SERVICE_9200_NAME=elk/es" \
                      -e "SERVICE_9200_ID=1" \
                      registry.hub.docker.com/cloudposse/library:elasticsearch \
                      -Des.node.name=elk_es-1 \
                      -Des.discovery.zen.ping.multicast.enabled=true \
                      -Des.discovery.zen.ping.unicast.hosts=es.elk.cloudposse.local \
                      -Des.config=/elasticsearch/config.yml \
                      -Des.logger.level=DEBUG

Could it be related to the sub-hosting that I am doing (1.es.elk.cloudposse.local)? "SERVICE_9200_NAME=elk/es"
System specs:

Docker version 1.5.0, build a8a31ef-dirty
CoreOS 607.0.0.

I don't know where to start debugging this or where to look further to help diagnose. Any insights would be appreciated. This is causing some sleepless nights. I really love registrator and want to continue using it.

This problem is still occurring. Running CoreOS 717.1.0 with etcd2 2.0.10. Ironically, I landed back at my own post after doing a google search. =)
Jun 29 20:36:32 core1 docker[27845]: 2015/06/29 20:36:32 registrator: etcd: failed to register service: 100: Key not found (/containers/isc/varnish/47c9380f60e24b469448550128a734f7) [361367]
Jun 29 20:36:34 core1 docker[27845]: 2015/06/29 20:36:34 registrator: etcd: failed to register service: 100: Key not found (/containers/isc/varnish/47c9380f60e24b469448550128a734f7) [361384]
Jun 29 20:36:35 core1 docker[27845]: 2015/06/29 20:36:35 registrator: etcd: failed to register service: 100: Key not found (/containers/isc/varnish/47c9380f60e24b469448550128a734f7) [361400]
Jun 29 20:36:37 core1 docker[27845]: 2015/06/29 20:36:37 registrator: etcd: failed to register service: 100: Key not found (/containers/isc/varnish/47c9380f60e24b469448550128a734f7) [361427]
Jun 29 20:36:39 core1 docker[27845]: 2015/06/29 20:36:39 registrator: etcd: failed to register service: 100: Key not found (/containers/isc/varnish/47c9380f60e24b469448550128a734f7) [361446]
Jun 29 20:36:44 core1 docker[27845]: 2015/06/29 20:36:44 registrator: etcd: failed to register service: 100: Key not found (/containers/isc/varnish/47c9380f60e24b469448550128a734f7) [361474]

Restarting registrator immediately solves the problem. That seems to indicate there's something wonky with the connection handle to etcd.
Jun 29 20:40:49 core1 docker[4167]: 6084f839101b: Download complete
Jun 29 20:40:49 core1 docker[4167]: Status: Image is up to date for progrium/registrator:latest
Jun 29 20:40:49 core1 systemd[1]: Started Registrator.
Jun 29 20:40:50 core1 docker[4181]: 2015/06/29 20:40:50 registrator: Using etcd registry backend at etcd://cluster-2.cloudposse.com:4001/containers
Jun 29 20:40:50 core1 docker[4181]: 2015/06/29 20:40:50 registrator v5 listening for Docker events...
Jun 29 20:40:50 core1 docker[4181]: 2015/06/29 20:40:50 registrator: ignored: 53b4973d09bf no published ports
Jun 29 20:40:50 core1 docker[4181]: 2015/06/29 20:40:50 registrator: ignored: a5e05df45a18 no published ports
Jun 29 20:40:58 core1 docker[4181]: 2015/06/29 20:40:58 registrator: added: 6922fbec7d2b varnish/47c9380f60e24b469448550128a734f7

Same here on latest stable CoreOS 717.3.0 and gliderlabs/registrator:v5
It's not reliable, can't really put production load on registrator.

Just an update on this issue. I still have the problem, but very seldom and always after severe load spikes. When that happens, I need to manually restart registrator which recovers things immediately. I kind of wish there was an option in registrator to have it exit if it repeatedly fails to contact etcd for any reason. This would allow systemd to restart the service and auto-recover the system.
Also, I just updated a related issue with etcd that reduced the majority of my headaches. In short, upgrading to etcd2 (as part of CoreOS 717) and reducing election timeouts back down to 1 second fixed most of my problems. https://github.com/coreos/etcd/issues/2917 Hope this helps!

You're using a really old version. Please try gliderlabs/registrator:latest or :v6.


python scipy: 0.16.0 -> 0.16.1

Bugfixes only. Ready to be merged.

A few packages fail, if you can get a chance and check: http://hydra.nixos.org/eval/1227907#tabs-still-fail


Add Chinese SimpleQA dataset configuration

Thanks for your contribution and we appreciate it a lot. The following instructions would make your pull request more healthy and more easily get feedback. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers.
Motivation
Please describe the motivation of this PR and the goal you want to achieve through this PR.
Modification
Please briefly describe what modification is made in this PR.
BC-breaking (Optional)
Does the modification introduce changes that break the backward compatibility of the downstream repositories?
If so, please describe how it breaks the compatibility and how the downstream projects should modify their code to keep compatibility with this PR.
Use cases (Optional)
If this PR introduces a new feature, it is better to list some use cases here and update the documentation.
Checklist
Before PR:

[ ] Pre-commit or other linting tools are used to fix the potential lint issues.
[ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests.
[ ] The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
[ ] The documentation has been modified accordingly, like docstring or example tutorials.

After PR:

[ ] If the modification has potential influence on downstream or other related projects, this PR should be tested with those projects.
[ ] CLA has been signed and all committers have signed the CLA in this PR.

Thanks for the contribution.

Please use the lowercase chinese_simple_qa for the folder name.
It would be better if you can add a readme under configs/datasets/chinese_simple_qa/, and give some reference baselines on this readme.
To make it compatible with the PyPI, please also copy the configs into opencompass/configs.
Please also handle the lint issue.

Feel free to contact me if you meet any problem.
Thanks once again for the great work.


WFCORE-6903 Remove usage of deprecated AbstractWriteAttributeHandler constructors

https://issues.redhat.com/browse/WFCORE-6903

Core -> Full Integration Build 13964 outcome was FAILURE using a merge of 4f3c05997738cd7618472977c4ded12637adcbc7
Summary: Compilation error: Compiler (new) Build time: 00:02:51

Core -> WildFly Preview Integration Build 13749 outcome was FAILURE using a merge of 4f3c05997738cd7618472977c4ded12637adcbc7
Summary: Compilation error: Compiler (new) Build time: 00:03:23

Core -> Full Integration Build 13678 outcome was FAILURE using a merge of 4f3c05997738cd7618472977c4ded12637adcbc7
Summary: Compilation error: Compiler (new) Build time: 00:03:58

Core -> Full Integration Build 13679 outcome was FAILURE using a merge of 7ff71b48b7c06adee829b4d2671fd1e2b00536b4
Summary: Compilation error: Compiler (new) Build time: 00:03:23

Core -> WildFly Preview Integration Build 13750 outcome was FAILURE using a merge of 7ff71b48b7c06adee829b4d2671fd1e2b00536b4
Summary: Compilation error: Compiler (new) Build time: 00:03:47

Core -> Full Integration Build 13965 outcome was FAILURE using a merge of 7ff71b48b7c06adee829b4d2671fd1e2b00536b4
Summary: Compilation error: Compiler (new) Build time: 00:04:03

Core -> WildFly Preview Integration Build 13751 outcome was FAILURE using a merge of d72d369329a756149d270e4005937ce7402b37a3
Summary: Compilation error: Compiler Build time: 00:03:56

Core -> Full Integration Build 13680 outcome was FAILURE using a merge of d72d369329a756149d270e4005937ce7402b37a3
Summary: Compilation error: Compiler Build time: 00:04:06

Core -> Full Integration Build 13966 outcome was FAILURE using a merge of d72d369329a756149d270e4005937ce7402b37a3
Summary: Compilation error: Compiler Build time: 00:04:32

Closing and converting to subtasks per subsystem.  I'll address Brian's comment in the relevant PR for wildfly-controller.


Resolve bugs with record_ids

This PR resolves a bug with record_ids, adds inline documentation, and add tests.

See #415 for more details on affected projects.


Use the PRQL Ast in the autocompletion for the CLI

Now its just showing all existing column names, parsing the AST in real time would allow you to use the group_by field when completing  the aggregate body, the join for completing the 'by:' field etc

Fixed with https://github.com/qorrect/PyPrql/pull/23


Error cloning repo to GitHub

Error while forking the repository: {"message":"Resource protected by organization SAML enforcement. You must grant your OAuth token access to this organization.","documentation_url":"https://docs.github.com/articles/authenticating-to-a-github-organization-with-saml-single-sign-on/"}Error while creating build definition: Unable to configure a service on the selected GitHub repository. This is likely caused by not having the necessary permission to manage hooks for the selected repository.
AB#3751

I'm running through https://docs.microsoft.com/en-us/learn/. there's no information when invoking the template of what repository is supposed to be cloned and what are the additional steps after that.


FLPATH-1856 Enabling monitoring by default in Helm Based Orchestrator operator

This PR updates the helm based Orchestrator Operator so that the SonataFlowPlatform CR is created with monitoring enabled by default. Users will be able to disable it by setting it to false.
  orchestrator:
    sonataflowPlatform:
      monitoring:
        enabled: true

Tested in RHPDS successfully with the local build of SonataFlow Operator from main branch.

Should the PR be rebased? It contains changes that aren't seem to be related to monitoring.

I've added a comment to explain why these artifacts exists. In a nutshell, yes it should be rebased but only after my PR #147 is merged, which contains the changes that are side effects by Jeff running make bundle in his environment and pushing the generated changes in the bundle/ directory.

Also, merged the CRD v1alpha2 PR which was blocking this PR. @jianrongzhang89 this should be good to go now whenever it's ready.

/retest

/hold until PR is merged.

/hold until PR is merged since it is dependent of having OSL 1.35

No need to hold this PR anymore since we can test it with OSL RC build.


0.10.1 native functions are not available

/kind bug
What happened:
no native functions available :(
How to reproduce it (as minimally and precisely as possible):
$ ks init myapp
$ cd myapp
$ cat >components/regex.jsonnet <<<'std.native("regexSubst")("e", "tree", "oll")'
$ ks show default
ERROR find objects: RUNTIME ERROR: Unrecognized native function name: regexSubst
        <builtin>       builtin function <native>
        During manifestation

It is a regression from 0.8.0 where regexSubst native funcs did work

you rock!

Any chance of 0.10.2 release soonish? :)


provide timing info in the python api

@stefborg I hope this suits your needs
Code example:
from nmo_python import load_string, NemoEngine

rules = """
a(1, 2). a(2, 3). a(3, 7).

r(?x, ?x) :- a(?x, _).
r(?x, ?y) :- a(?x, ?z), r(?z, ?y).
"""

e = NemoEngine(load_string(rules))
e.reason()

overall_time = e.timing().process_time
rule_times = [(node.name, node.process_time) for node in e.timing().subnode("Reasoning/Rules").subnodes]

Relaxing the max-line-length is cheating haha


Update the email template to be more maintainable

https://github.com/gabek/GitYourFeedback/blob/master/GitYourFeedback/Classes/Helpers.swift#L29
Maybe using an external markdown text file or something?  There is some options for templating in Swift, but I don't know if it's worth being that heavy handed about it.  https://github.com/kylef/Stencil
This should include moving the metadata pieces of the template to a markdown formatted table so it's easier to read.
Something along the lines of:

Thing
Value

Thing 1
It's value

Thing 2
Some other value

Screen Resolution
867 x 309

Another templating option is https://github.com/groue/GRMustache.swift


Update macos-prerequisites.md

As per https://github.com/dotnet/core/blob/master/release-notes/3.0/3.0-supported-os.md

cc @bartonjs
https://github.com/dotnet/corefx/issues/39701#issuecomment-514377618

That was... easier than I imagined.  Thanks, Dan :smile:.

I didn't even clone the repo 😄

done