'accessed' does not work with .bib

Every internet search points back to #330 as to why accessed does not work with bib files.
Workaround
if you want to have the accessed CSL field populated for websites use
@online{some-key,
	title = {Awesome Title},
	url = {https://www.my.url/},
	urldate = {1970-01-01}
}

once converted to pdf it looks like this in ACM
[1] Awesome Title. Retrieved January 01, 1970 from https://www.my.url/

Possible Fix
I haven't looked at it thoroughly but adding support to the accessed keyword looks it should be as easy as adding another line to support it here shouldn't it?
https://github.com/jgm/pandoc-citeproc/blob/d7eb5fd15980ba40d7bffd6d2f031a229881668f/src/Text/CSL/Input/Bibtex.hs#L1502
 accessed' <- getDates "accessed" <|> getOldDates "url" <|> return []

this way something like this would work
https://github.com/citation-style-language/styles/blob/059ea335d3f05c4d1417648b00b8c19de98fd7bb/acm-sig-proceedings.csl#L136-L145
        <else-if type="webpage">
          <group delimiter=". ">
            <text variable="URL" font-style="italic"/>
            <date variable="accessed" prefix="Accessed: ">
              <date-part name="year" suffix="-"/>
              <date-part name="month" form="numeric-leading-zeros" suffix="-"/>
              <date-part name="day" form="numeric-leading-zeros"/>
            </date>
          </group>
        </else-if>

Sure, we could do this, but it would mean creating our own Frankenstein version of bibtex format, since bibtex/biblatex don't recognize an accessed key.  I don't want to do that.  We try to support valid bibtex/biblatex, and that isn't a format whose specification we control.

thank you!
I will close this then :)
as a side note, my google-fu seems to not return anything in terms of documentation for what is valid bibtex/biblatex.
I was under the impression that bibtex/biblatex only described the format in terms of
@type{lookup-key,
    key = { value }
    ....

but that an .sty was responsible for describing the valid keys for each type.

See sec 2.1 of biblatex manual.


Adds Disclaimer

Hello.  I am an engineering manager at Okta and we have just released our official okta-aws-cli package.  As such, I am requesting that you add this disclaimer to your project to avoid any confusion on this being the officially supported aws-cli.

Thank you @maxtacu! :)


Problems with build on Windows

Hello!
Couple days ago I installed Android SDK command line tools from here:
https://developer.android.com/studio#command-tools
Then I cloned the repository and launched the build via gradlew build command
Build failed with the following error
[2/77] Generating buildvm_arch.h
  FAILED: src/buildvm_arch.h
  cmd.exe /C "cd /D C:\work\Android\LuaJIT-Example-Android\app\.cxx\cmake\debug\armeabi-v7a\external\luajit\src\LuaJIT_local-build\src && C:\work\Android\LuaJIT-Example-Android\app\.cxx\cmake\debug\armeabi-v7a\external\luajit\src\LuaJIT_local-build\src\minilua\minilua.exe C:/work/Android/LuaJIT-Example-Android/libs/luajit/src/../dynasm/dynasm.lua -D FPU -D ENDIAN_LE -D FFI -D JIT -D DUALNUM -D VER= -o C:/work/Android/LuaJIT-Example-Android/app/.cxx/cmake/debug/armeabi-v7a/external/luajit/src/LuaJIT_local-build/src/buildvm_arch.h C:/work/Android/LuaJIT-Example-Android/libs/luajit/src/vm_arm.dasc"
  'C:\work\Android\LuaJIT-Example-Android\app\.cxx\cmake\debug\armeabi-v7a\external\luajit\src\LuaJIT_local-build\src\minilua\minilua.exe' is not recognized as an internal or external command,
  operable program or batch file.
  ninja: build stopped: subcommand failed.
  ninja: build stopped: subcommand failed.

the reason of the error is the following: minilua.exe is located in folder C:\work\Android\LuaJIT-Example-Android\app.cxx\cmake\debug\armeabi-v7a\external\luajit\src\LuaJIT_local-build\src\minilua\ Debug \minilua.exe
If the following patch will be applied:
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 16b41fbf..fe98e41d 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -24,7 +24,7 @@ set(MINILUA_EXE minilua)
 if ("${CMAKE_HOST_SYSTEM_NAME}" STREQUAL "Windows")
   set(MINILUA_EXE minilua.exe)
 endif()
-set(MINILUA_PATH ${CMAKE_CURRENT_BINARY_DIR}/minilua/${MINILUA_EXE})
+set(MINILUA_PATH ${CMAKE_CURRENT_BINARY_DIR}/minilua/Debug/${MINILUA_EXE})

 # Build the minilua for host platform
 if (NOT CMAKE_CROSSCOMPILING)

Then the build will fail with the following error:
MSBuild version 17.3.0+f67e3d35e for .NET Framework
    Checking Build System
    Building Custom Rule C:/work/Android/LuaJIT-Example-Android/libs/luajit/src/host/cmake/buildvm/CMakeLists.txt
  cl : command line  warning D9002: ignoring unknown option '-m32' [C:\work\Android\LuaJIT-Example-Android\app\.cxx\cmake\debug\armeabi-v7a\external\luajit\src\LuaJIT_local-build\src\buildvm\buildvm.vcxproj]
    buildvm.c
  C:\work\Android\LuaJIT-Example-Android\libs\luajit\src\lj_ircall.h(368,1): fatal  error C1189: #error:  "Missing fp64 helper definitions for this compiler" [C:\work\Android\LuaJIT-Example-Android\app\.cxx\cmake\debug\armeabi-v7a\external\luajit\src\LuaJIT_local-build\src\buildvm\buildvm.vcxproj]

P.S.: buildvm.exe also goes to Debug folder, so the following correction is necessary too: set(BUILDVM_PATH ${CMAKE_CURRENT_BINARY_DIR}/buildvm/Debug/${BUILDVM_EXE})

You will need to install MinGW-w64 separately and ensure it will be in the PATH environment. LuaJIT requires the host compiler to run certain utilities on the host to generate the data to embed into the final library build.

You will need to install MinGW-w64 separately and ensure it will be in the PATH environment. LuaJIT requires the host compiler to run certain utilities on the host to generate the data to embed into the final library build.
P.S. Speaking about MSVC's paths, there is a small tweak needed to avoid MSVC to put libraries into these directories at all.

@Wohlstand Ok,we hope,what you will adapt luajit for msvc. Also why we can't add luajit as subdirectory,because usual lua we can add in android as subdirectory to android project.

I'll try to debug it once I will boot my second Windows machine.

@Wohlstand Whether you commit a new version of luajit,which will do compiling of luajit mor easier?


run repo's class? nodejs not support ES6 import

i want to wirte a js to test a data-structures class ,as queue, but this js file can't run on lastest version nodejs? how can i run my test?

To run tests for Queue data-structure simply launch the following command from the root folder of javascript-algorithms project locally:
npm test -- -t 'Queue'

Also remember that you need to install node modules before running the tests:
npm i


Fresh install inside Docker container compilation errors

Describe the bug
Created a container and shared a volume to be able to develop locally since I am on Windows. Encountered compilation errors on a fresh install.
To Reproduce
Steps to reproduce the behavior:
cd $WORK_PATH
git clone https://github.com/an-tao/drogon
cd drogon
git submodule update --init
mkdir build
cd build
cmake ..

Expected behavior
Successful Compilation
Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

OS: Docker Container (from Ubuntu 18.04) Engine 19.03.2

Additional context
Dockerfile
FROM ubuntu:18.04

RUN apt-get update -yqq \
    && apt-get install -yqq --no-install-recommends software-properties-common \
    sudo curl wget cmake locales git gcc-8 g++-8 \
    openssl libssl-dev libjsoncpp-dev uuid-dev zlib1g-dev \
    postgresql-server-dev-all libmariadbclient-dev libsqlite3-dev \
    && rm -rf /var/lib/apt/lists/* \
    && locale-gen en_US.UTF-8

ENV LANG=en_US.UTF-8 \
    LANGUAGE=en_US:en \
    LC_ALL=en_US.UTF-8 \
    CC=gcc-8 \
    CXX=g++-8 \
    AR=gcc-ar-8 \
    RANLIB=gcc-ranlib-8 \
    IROOT=/install

Also tried to run ./build.sh to the same following error:

CMakeOutput.log
https://pastebin.com/EntKKUsZ

Stupidly spent two hours on this, I missed the following error:
CMake Error at CMakeLists.txt:61 (add_subdirectory):
  The source directory

    /home/drogon/trantor

  does not contain a CMakeLists.txt file.

Just created a CMakeLists.txt file inside trendor folder and it gave generating done.


iOS Error -> 'sharedApplication' is unavailable: not available on iOS (App Extension) - Use view controller based solutions where appropriate instead.

Steps to reproduce
I get this error when I use the openvpn_flutter package and the image_picker package together. Removing the image_picker package removes the error.
Expected results
when I want to use image_picker and openvpn_flutter packages in the same application, I get the following error on iOS side.

'sharedApplication' is unavailable: not available on iOS (App Extension) - Use view controller based solutions where appropriate instead.

It redirects me to this code
from line 67 to line 83
- (UIViewController *)viewControllerWithWindow:(UIWindow *)window {
  UIWindow *windowToUse = window;
  if (windowToUse == nil) {
    for (UIWindow *window in [UIApplication sharedApplication].windows) {
      if (window.isKeyWindow) {
        windowToUse = window;
        break;
      }
    }
  }

  UIViewController *topController = windowToUse.rootViewController;
  while (topController.presentedViewController) {
    topController = topController.presentedViewController;
  }
  return topController;
}

Actual results
Since I don't know swift or objective-c, I couldn't understand the native code.
Code sample
Code sample
[Paste your code here]

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
% flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.19.5, on macOS 14.4.1 23E224 darwin-arm64, locale
    tr-TR)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2023.2)
[✓] VS Code (version 1.87.2)
[✓] Connected device (4 available)
    ! Error: Browsing on the local area network for Test iphone. Ensure the
      device is unlocked and attached with a cable or associated with the same
      local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code
      -27)
[✓] Network resources

• No issues found!

Hi @dogukanozgurylmz
Could you provide a completed and minimal reproducible code sample that only uses two packages above for us to investigate this? And please provide the entire crash stack trace as well. Thanks!

I installed the openvpn_flutter package and added the image_picker package. I didn't write any code for these. When I added these two packages, the application stopped working.


Feature request: Centralized validation of host dependencies for plugins

We are containerizing the NetApp Docker Volume Plugin for use with the new 'docker plugin' system.
This plugin supports mounting volumes for the NFS and iSCSI protocols.  For various reasons related to how mounting and data traffic work with these protocols, our plugin can only be partially containerized -- we need to execute certain commands on the container host system.  With a privileged container, sys_admin capabilities, and shared mounts, this works well enough.
This does, however, mean that we have some dependencies on the packages that are installed on the host system.  With the current native binary plugin, we simply point out the dependencies as part of the install documentation since the administrator has to install our binary and configuration files anyway.
When our plugin is distributed as a 'docker plugin', however, we begin to be able to bypass these manual configuration steps entirely, and users may inadvertently run the plugin on systems that lack the correct supporting tools.  We would like to automate the validation (and even installation) of the dependencies.
I have prototyped the basic flow of how we think it could work in a simple demo.
This involves booting a normal container (not really a plugin yet) with a shell script that does the checking and installation all within the container, and has hardcoded dependencies in the script.  Ideally, however, the logic for managing the packages would reside in a central place (docker) rather than as ad-hoc scripts in lots of plugin containers.  This would give all plugins that have host dependencies a common implementation and common behavior.
The dependencies for any container could then be specified simply in the Manifest --
  "dependencies": [
            {
                "name": "yum",
                "description": "Host dependencies for distributions using yum",
                "value": ["nfs-utils", "lsscsi", "iscsi-initiator-utils", "sg3_utils", "device-mapper-multipath"]
             },
            {
                "name": "apt",
                "description": "Host dependencies for apt-based distributions",
                "value": ["nfs-common", "open-iscsi", "lsscsi", "sg3-utils", "multipath-tools scsitools"]
            }
        },

..and the engine could validate these dependencies at install or run time.  If the distribution in question isn't listed or detected, a simple warning would suffice, and it would be clearer than opaque failures that would subsequently occur otherwise.
I realize that there is plenty of room to quibble over the details of the granularity of the flavors.  "yum/apt", "redhat/debian", or fully enumerating specific distributions..  The goal is to list the specific packages that are required - whatever the best way to do that is down to the implementation.
cc @anusha-ragunathan

Can you explain why you can't manage with containerised dependencies?

Sure.  And the underlying caveat to any of this should be that if anyone has fixes that would make it work, I'm all ears.
The primary issue is iscsi.  First, there are known problems running iscsid inside containers that seem to have been around for some time.  Examples: A, B, B'.
However even should that be fixed, it's still not a great idea with the model we have for two reasons.  The first one is that starting iscsid inside a container would route the data traffic through NAT to the container, which would be undesirable from a performance perspective.  Some discussion of that here.  Secondly, our volume plugin would effectively become an iscsi proxy for all the containers it was doing mounts for - and a single point of failure for them all as well.  That is probably the worst part.
It is also a best practice with at least some of our platforms to use multipathing, and the stock multipathd seems to have similar issues running in containers.  I have not explored this to a great degree because of the underlying iscsid problems.

Theoretically, NFS should work.  We would do the mount RPC calls from the plugin container, but the data flow would occur directly through the host kernel to whatever other container was accessing the files, and our container would not be a middle-man.  We've had trouble with it so far, but we could potentially remove this dependency, esp. if the iscsi issues are solved.

For iscsi does --net=host work? that avoids the NAT, and maybe helps out with the netlink socket issue (which is somewhat unclear, and would probably need looking at the kernel code to see what is happening).
NFS does seem simpler to solve initially as it is mostly in kernel anyway.

Forgive the delay, it's been a while - I needed to give it another shot to remember exactly what failed in that case.  Looks like the first thing you run into is that iscsiadm wants the iscsi_tcp kmod.

Those details aside, even getting that to work in our container doesn't fix the problem of running iscsid in the "wrong" container.  What we're doing here should be analogous to how the Openstack Cinder module works; provisioning volumes out of band using management APIs, but leaving the data path to the interested parties.  A diagram of that.. (source)

I got NFS working a while back, so we can scratch that off the list.  And I've just learned that a colleague managed to get iscsi to work as well, at least on a one-container-per-node basis.  We can work with that.  Closing this.

That's great news, @bnaylor


LINK-1853 | Add timeout to SingleSelectComponent value change

Description

Android devices freezes totally when trying to change value of a SingleSelectComponent. Add a short timeout to prevent infinite loop after calling onChange.

Closes
LINK-1853

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (b0ec760) 99.53% compared to head (61ea401) 99.53%.
Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #123   +/-   ##
=======================================
  Coverage   99.53%   99.53%
=======================================
  Files         188      188
  Lines        3647     3648    +1
  Branches      601      601
=======================================
+ Hits         3630     3631    +1
  Misses         16       16
  Partials        1        1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[Streaming][Doc][Minor] Update the description of direct Kafka stream doc

With the merge of SPARK-8337, now the Python API has the same functionalities compared to Scala/Java, so here changing the description to make it more precise.
@zsxwing @tdas , please review, thanks a lot.

Test build #47490 has started for PR 10246 at commit 5c5cd95.

Test build #47490 has finished for PR 10246 at commit 5c5cd95.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/47490/
Test PASSed.

LGTM

Thanks @jerryshao. Merging to master, 1.6, 1.5, 1.4.

Hi @zsxwing, one of the feature  "message handler" is only supported in 1.6.  So maybe better not merge back to the previous version :).

Hi @zsxwing, one of the feature "message handler" is only supported in 1.6. So maybe better not merge back to the previous version :).

Is message handler mentioned in the doc? I cannot find it.

No, it is not mentioned in the doc. What I mean is that for previous version, Python api still miss this piece of functionality, so correcting this description in the previous version is not exactly correct.

But it will be confusing if we say in Spark 1.4 for the Python API in the doc, but it doesn't in docs for 1.4 and 1.5.
We don't mention if we support a custom message handler in the doc. Even if Python api didn't support the message handler in 1.4 and 1.5, we can still say Python api supports the Kafka direct stream. Right?


sort and argsort operations applied in axis

Addressing issue #74
Operations argsort and sort are applied in axis and also takes the following parameters:
bool ascending

If true, the values will be sorted in an ascending order.
bool stable

If true, the values will be sorted by a stable sort algorithm to maintain the relative order of records with equal keys (i.e. values).
argsort(int64_t axis, bool ascending, bool stable)
sort(int64_t axis, bool ascending, bool stable)

Great to see that this has started! I don't think it's necessary, however, to implement all three sorting algorithms unless it's something that comes for free from #include <algorithm> or something. We can leave the axis=0 sorting unimplemented in C++, since it's qualitatively different from the rest and can be implemented at the Python level by deferring to NumPy.
The interesting thing is sort and argsort of deeply nested lists, axis=1 and greater. So far, no one has asked for sorting structures, such as
>>> [3, 5, 2] < [4, 1]
True

so it would be fine to raise an error if the requested axis is not a 1-D NumpyArray, a RawArray, or an IndexedArray that can be evaluated (carry(index_)) to a NumpyArray or RawArray. EmptyArrays can also be sorted (trivially). IndexedOptionArrays count as a structure, unless we want to adopt a convention of None always being last (or first, but I think last would be better, if handled at all).
Note that Python 3 (unlike Python 2) doesn't like to sort objects of different types, including None:
>>> sorted([5, 3, 4])
[3, 4, 5]
>>> sorted([5, 3, 4, None])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: '<' not supported between instances of 'NoneType' and 'int'
>>> sorted([5, 3, 4, []])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: '<' not supported between instances of 'list' and 'int'

That's another argument for not handling these cases.
NumpyArrays, RawArrays, EmptyArrays, and evaluated IndexedArrays have something in common: they're all the deepest possible axis, axis=-1, which should be the default, once negative axis is handled. (Note to self: I need to implement that right away, so that this PR can be completed!) axis=-1 is also the default axis for numpy.sort and numpy.argsort, which is great, because then we can make awkward1.sort/awkward1.argsort a drop-in replacement (in the NEP18 sense).
NumPy has a definition of sorting with axis != -1 that is not sorting structures:
>>> numpy.sort([[3.3, 2.2, 4.4], [1.1, 5.5, 3.3]], axis=-1)
array([[2.2, 3.3, 4.4],
       [1.1, 3.3, 5.5]])
>>> numpy.sort([[3.3, 2.2, 4.4], [1.1, 5.5, 3.3]], axis=-2)
array([[1.1, 2.2, 3.3],
       [3.3, 5.5, 4.4]])

It's similar to the way that reducers with axis != -1 is handled:
>>> numpy.min([[3.3, 2.2, 4.4], [1.1, 5.5, 3.3]], axis=-1)
array([2.2, 1.1])
>>> numpy.min([[3.3, 2.2, 4.4], [1.1, 5.5, 3.3]], axis=-2)
array([1.1, 2.2, 3.3])

Having gone through that exercise:
>>> import awkward1 as ak
>>> ak.min([[3.3, 2.2, 4.4], [1.1, 5.5]], axis=-1)
<Array [2.2, 1.1] type='2 * ?float64'>
>>> ak.min([[3.3, 2.2, 4.4], [1.1, 5.5]], axis=-2)
<Array [1.1, 2.2, 4.4] type='3 * ?float64'>

I can say that it's really complicated: you have to pass down and update a nextcarry, nextparents, and nextstarts at every list level.
So don't implement sorting for axis != -1 right now. But do set up the infrastructure so that it would be possible in the future.
That is, follow the structure of reduce_next:
https://github.com/scikit-hep/awkward-1.0/blob/bf44d0244d6eec460c00837afea09a42761f1d45/src/libawkward/array/ListOffsetArray.cpp#L984-L1104
but don't fill in all the cases. This kind of operation, for which axis=-1 is the natural default (like reducers and unlike most others, such as rpad or fillna) does not use axis_wrap_if_negative (so I'm off the hook for implementing that). Instead, it has a common entry function, like Content::reduce:
https://github.com/scikit-hep/awkward-1.0/blob/bf44d0244d6eec460c00837afea09a42761f1d45/src/libawkward/Content.cpp#L79-L113
that passes down negaxis instead of axis. (For these types of operations, it's more natural to think in terms of the negative axis, so when the user supplies -1, we call that 1.) The parents is an array of integers with the same length as the current level that indicates which outer list each element belongs to. For instance,
[0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4]

means that the 15 elements at this level are nested inside of
[[. . . . .] [. . . . .] [. . . . .]]

So parents is like bottom-up pointers containing the same information as the top-down starts pointers. For the same array, starts is
[0, 5, 10]

For most reducers, I only needed parents, but last night I added argmin and argmax, which needed starts so that the arg integers could be relative to the start of the current list, rather than being absolute numbers. (Since you're doing argsort, you'll need it, too.) The two of these have all the information that would be needed for handling any axis; the parents are only monotonically increasing for axis=-1.
Just to reiterate, you do not need to implement axis != -1, but create and use the parents and starts similar to the reduce and reduce_next methods, even though they're overkill for this case. There are huge blocks of reduce_next that do not need a parallel yet—for example,
if (!branchdepth.first  &&  negaxis == branchdepth.second)

is only for axis != -1, and this is more than half of the function. The else clause,
https://github.com/scikit-hep/awkward-1.0/blob/bf44d0244d6eec460c00837afea09a42761f1d45/src/libawkward/array/ListOffsetArray.cpp#L1071-L1103
doesn't have a nextcarry because the relevant contents are contiguous (it has a getitem_range_nowrap instead), the nextparents are relatively simple, and the nextstarts are simply util::make_starts(offsets_).
You can have ListArray and RegularArray just call toListOffsetArray64() and handle all the list stuff in ListOffsetArrayOf<T>::sort_next. Don't handle option types yet (IndexedOptionArray, ByteMaskedArray, BitMaskedArray) because I'll be correcting the definition by solving issue #166; it's currently not correct. UnionArrays and RecordArrays are relatively simple; see the reduce_next examples.

All the commits I just made were for setting up documentation sites. That's been settled: Doxygen will go to awkward-array.readthedocs.org (under static_, which can't be changed for technical reasons related to Sphinx) and the tutorials go to GitHub Pages (here). Merging that shouldn't affect your work.
However, I'm about to make a big change, source-file-wise, by enforcing an 80-character limit everywhere. I just checked over the changes here and it looks like you only have stubs: that should still be easy to merge. But if you have more substantial changes in your local git repo, then it could be difficult. I'll start working on that 80-character limit in another PR and not merge it until I hear back from you about whether that would present any difficulties.
So let me know; thanks!

All the commits I just made were for setting up documentation sites. That's been settled: Doxygen will go to awkward-array.readthedocs.org (under static_, which can't be changed for technical reasons related to Sphinx) and the tutorials go to GitHub Pages (here). Merging that shouldn't affect your work.
However, I'm about to make a big change, source-file-wise, by enforcing an 80-character limit everywhere. I just checked over the changes here and it looks like you only have stubs: that should still be easy to merge. But if you have more substantial changes in your local git repo, then it could be difficult. I'll start working on that 80-character limit in another PR and not merge it until I hear back from you about whether that would present any difficulties.
So let me know; thanks!

Thanks for letting me know! No worries, I'm ok with merging conflicts. This PR will be easy to merge - all these are new member functions. Git merge usually messes a bit cpu-kernels. To avoid this I'll place the new functions at the end when I merge master to my branch.

Let's use this "convert to draft" GitHub feature instead of the "[WIP]" naming convention. The WIP-bot counts as an unfinished test, so all the passing commits are yellow dots, not clearly indicating which ones actually passed all the real tests—I've never really liked it, for that reason, and now "convert to draft" looks like an acceptable alternative. The draft feature also provides more protection against accidentally clicking the "merge" button.
That will be in the CONTRIBUTING.md that's still in my head.
I've seen your commits. Do you feel like you're making progress, or is there some issue you want to talk about? If so, we can arrange a time.

Let's use this "convert to draft" GitHub feature instead of the "[WIP]" naming convention. The WIP-bot counts as an unfinished test, so all the passing commits are yellow dots, not clearly indicating which ones actually passed all the real tests—I've never really liked it, for that reason, and now "convert to draft" looks like an acceptable alternative. The draft feature also provides more protection against accidentally clicking the "merge" button.
That will be in the CONTRIBUTING.md that's still in my head.
I've seen your commits. Do you feel like you're making progress, or is there some issue you want to talk about? If so, we can arrange a time.

Hi Jim,
I think, I'm making progress. I'm debugging the sorting ranges definition based on relative indices for multi dimensional arrays. It is fun :-)
I did not know that making an existing PR to a draft PR feature has been implemented. Let's use it!

@jpivarski - I don't have Windows accessible to test the build - is it expected that it fails?
    Generating Code...
  Not able to access compiler path (on Windows), using CMake default
  Traceback (most recent call last):
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\site-packages\pip\_vendor\pep517\_in_process.py", line 257, in <module>
      main()
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\site-packages\pip\_vendor\pep517\_in_process.py", line 240, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\site-packages\pip\_vendor\pep517\_in_process.py", line 181, in build_wheel
      return _build_backend().build_wheel(wheel_directory, config_settings,
    File "C:\Users\VssAdministrator\AppData\Local\Temp\pip-build-env-u5s2z4k6\overlay\Lib\site-packages\setuptools\build_meta.py", line 212, in build_wheel
      return self._build_with_temp_dir(['bdist_wheel'], '.whl',
    File "C:\Users\VssAdministrator\AppData\Local\Temp\pip-build-env-u5s2z4k6\overlay\Lib\site-packages\setuptools\build_meta.py", line 198, in _build_with_temp_dir
      self.run_setup()
    File "C:\Users\VssAdministrator\AppData\Local\Temp\pip-build-env-u5s2z4k6\overlay\Lib\site-packages\setuptools\build_meta.py", line 143, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 137, in <module>
      setup(name = "awkward1",
    File "C:\Users\VssAdministrator\AppData\Local\Temp\pip-build-env-u5s2z4k6\overlay\Lib\site-packages\setuptools\__init__.py", line 144, in setup
      return distutils.core.setup(**attrs)
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\core.py", line 148, in setup
      dist.run_commands()
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\dist.py", line 985, in run_command
      cmd_obj.run()
    File "C:\Users\VssAdministrator\AppData\Local\Temp\pip-build-env-u5s2z4k6\overlay\Lib\site-packages\wheel\bdist_wheel.py", line 223, in run
      self.run_command('build')
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\dist.py", line 985, in run_command
      cmd_obj.run()
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\command\build.py", line 135, in run
      self.run_command(cmd_name)
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\dist.py", line 985, in run_command
      cmd_obj.run()
    File "C:\Users\VssAdministrator\AppData\Local\Temp\pip-build-env-u5s2z4k6\overlay\Lib\site-packages\setuptools\command\build_ext.py", line 87, in run
      _build_ext.run(self)
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\distutils\command\build_ext.py", line 340, in run
      self.build_extensions()
    File "setup.py", line 42, in build_extensions
      self.build_extension(x)
    File "setup.py", line 84, in build_extension
      subprocess.check_call(["cmake", "--build", build_dir] + build_args)
    File "C:\hostedtoolcache\windows\Python\3.8.2\x64\lib\subprocess.py", line 364, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['cmake', '--build', 'build\\temp.win-amd64-3.8\\Release', '--config', 'Release', '--', '/m', '/m']' returned non-zero exit status 1.
  Building wheel for awkward1 (PEP 517): finished with status 'error'
  ERROR: Failed building wheel for awkward1
Failed to build awkward1
Cleaning up...

Builds on Windows should work.
I looked at the full log and found that the first error is this:
2020-04-20T14:13:47.6069252Z   C:\Users\VssAdministrator\AppData\Local\Temp\pip-req-build-854ndqim\src\libawkward\array\NumpyArray.cpp(2355): error C2146: syntax error: missing ')' before identifier 'or' [C:\Users\VssAdministrator\AppData\Local\Temp\pip-req-build-854ndqim\build\temp.win-amd64-3.8\Release\awkward-objects.vcxproj]

I don't immediately see the error when I look at this line in your branch, but it happens in the middle of the argsort function:
https://github.com/scikit-hep/awkward-1.0/blob/51b0be556633954bdd12c077aed1c03357f23703/src/libawkward/array/NumpyArray.cpp#L2314-L2481
and there are #ifdef _MSC_VER switches in there that could, in principle, cause a syntax error on Windows that doesn't show up on other systems.

Builds on Windows should work.
I looked at the full log and found that the first error is this:
2020-04-20T14:13:47.6069252Z   C:\Users\VssAdministrator\AppData\Local\Temp\pip-req-build-854ndqim\src\libawkward\array\NumpyArray.cpp(2355): error C2146: syntax error: missing ')' before identifier 'or' [C:\Users\VssAdministrator\AppData\Local\Temp\pip-req-build-854ndqim\build\temp.win-amd64-3.8\Release\awkward-objects.vcxproj]

I don't immediately see the error when I look at this line in your branch, but it happens in the middle of the argsort function:
https://github.com/scikit-hep/awkward-1.0/blob/51b0be556633954bdd12c077aed1c03357f23703/src/libawkward/array/NumpyArray.cpp#L2314-L2481
and there are #ifdef _MSC_VER switches in there that could, in principle, cause a syntax error on Windows that doesn't show up on other systems.

I'll try to find a PC :-)

Incidentally, these "Windows ifdefs" can also be tested with a 32-bit version of Linux. For faster debugging on systems with these alternative format_ definitions, I use one of these Docker images (I can't remember which):
% docker images
REPOSITORY                          TAG                 IMAGE ID            CREATED             SIZE
i386/ubuntu                         latest              f015d121c3ab        3 months ago        64.8MB
nickcis/fedora-32                   latest              5cf360091dd7        4 years ago         212MB
32bit/debian                        latest              ec51524b3826        5 years ago         272MB

It seems that I used i386/ubuntu most recently. Looking in my command history, I mounted a directory on my host computer (for persistence) while running the 32-bit Docker image and installed a 32-bit version of Miniconda through the Docker image into the persistent directory. It complained that my host is 64 bit, but that's because Docker images do leak information about the host, and I could safely disregard this warning. I installed CMake, GCC, and NumPy using Conda to ensure that I got 32-bit versions of all of them, and git cloned awkward1 into the persistent volume.
With all that set up, the compiler goes into the #ifdefs that are triggered by Windows OR 32-bit, and had faster turn-around time on debugging them.
For anything that actually depends on Windows, as opposed to these 32-bit format definitions, I don't have a good workflow. I've never been able to run Windows in a virtual machine with compilers. When something truly Windows-related fails, Azure is the only way I have to debug it, too.

I'll try to find a PC :-)

Finding a PC with properly set-up compilers is the hard part. Microsoft makes Windows virtual machines available, but the purpose is to test web pages on their Edge web browser, not compiling C++ programs. I haven't found a virtual machine with Visual Studio and all that. If you're looking for laptops, particularly a laptop owned by somebody who actually does C++ work, you may have more success.

I'll try to find a PC :-)

Finding a PC with properly set-up compilers is the hard part. Microsoft makes Windows virtual machines available, but the purpose is to test web pages on their Edge web browser, not compiling C++ programs. I haven't found a virtual machine with Visual Studio and all that. If you're looking for laptops, particularly a laptop owned by somebody who actually does C++ work, you may have more success.

Well... it turns out the Windows compiler does not define alternative tokens for logical operators.
BTW, thanks a lot for cleaning the MacOS warnings! I've updated to master and all the warnings are gone.

BTW, thanks a lot for cleaning the MacOS warnings! I've updated to master and all the warnings are gone.

(Thank @veprbl!)

@jpivarski - I think, I'm nearly done with this PR. There are a few irregularities I'd need to fix (see the comments in the test), but I would like to discuss it beforehand. Would you have time tomorrow? Thanks

@jpivarski - I think, I'm nearly done with this PR. There are a few irregularities I'd need to fix (see the comments in the test), but I would like to discuss it beforehand. Would you have time tomorrow? Thanks

Sure: 11am Chicago == 18:00 Geneva on Skype?

@jpivarski - please, ignore the recurse method for the time being. I need it to test the arrays shape consistency. Since the logic hasn't been reviewed yet, I decided to keep it for now. I'll remove it when the review comments are addressed. Thanks!

I intend to review this, but first I rebooted the Windows tests, as they all timed out at 1 hour. If it's not some transient problem with Azure (i.e. if it happens again), then it's likely a pointer bug that gets missed by the other two platforms. That's happened to me before, and by debugging it on Windows, I found a hidden pointer bug. I just wish we had a better way to run Windows than compiling the whole project every time in Azure.

@jpivarski - All tests pass! I've finished with the code cleanup. I'll wait for you to review it. Thanks!

Great! I'll review it, possibly tomorrow. Thanks!

@jpivarski - please, let me know if I need to change the sorting.cpp. Thanks.

I'm going to check this over and make any small changes to finish it up. (For instance, a git merge master was needed to fix linker errors on Linux.) Thanks for taking it this far! It represents an enormous amount of work.


Feature Extraction Tsfresh Rewrite Quality Assurance

First, thank you everybody for contributing to the rewrite.
We are planning to make this project more public, which means we need to make sure that the quality is good. For this round of review, we want to focus on the following 3 items (ranked in terms of importance):

[x]  [99%] Correctness.  Correctness with respect to implementation, to feature definition, and the final numerical result should make sense. There are a few I haven't reviewed or I don't know if anybody has reviewed: cwt_coefficients, autoregressive_coefficients, augmented_dickey_fuller, and the newly added fft_coefficients.. Please comment if you think there are others we need to review.

[x]  [99%] Tests. Building out more tests for all the features. Thank you @MathieuCayssol for building out more tests.

[x] Delayed FFT features. Now that fft_coefficients is implemented, we can start using it?

Ongoing, Performance. For some methods, there might be short cuts in eager mode, or vice versa. For methods (eager) that use NumPy under the hood, can we do better? Is there redundant computation? More efficient methods?

 Do you need some help?

FFT is done. Feature bundles haven't started. If you have ideas for the latter, please take it on 🙏. I can help with docs

Closing this since we are mostly done.
The untested features that no one knows how to check the validity should be decorated with UseAtOwnRisk decorator I introduced in this branch: https://github.com/neocortexdb/functime/tree/feat/decorator_loggin_infra .


No icon for cleaning_bucket?

Use case
I was building an app related to laundry and I was looking through Google Font's icons
searching for a bucket. Usually, I can find icons from Google Fonts in Flutter, but Flutter
didn't have the cleaning_bucket icon.

Proposal
Add
cleaning_bucket,
cleaning_bucket_outlined,
cleaning_bucket_rounded,
and cleaning_bucket_sharp
to the icons class.

Actually, it seems like it's not an issue with Flutter but it's an issue with the Material Design Icons Repo.
https://github.com/google/material-design-icons/issues/1304#issuecomment-1177258459


Add a endpoint for todash only

Describe your suggestion
Because some people use a backend for videoinfo to help remove unused data from being sent to the client, but still need to stream the video with dash, there should be something like yt.toDash(id, (url) => callback) to only get the dash manifest without getting the unnecessary data that will make it take longer to load.
Other details
No response
Checklist

[X] I am running the latest version.
[X] I checked the documentation and found no answer.
[X] I have searched the existing issues and made sure this is not a duplicate.
[X] I have provided sufficient information.

As YouTube.js generates the DASH manifest itself (YouTube only provides pregenerated ones for currently live livestreams), it needs to fetch the video information to do that. So that change won't reduce the number of requests or speed it up, it would just add another function that does the same as the existing code.

I was able to generate it on the server


'Shared Access Signature' case correction

'Shared Access Signature' case correction for case-sentive collation

This issue has been fixed now. Thank you for reporting it.


Ginkgo focus should use selected specs to determine VMs to run

When a developer runs the ginkgo tests, something like:
cilium/test $ ginkgo --focus "PolicyEnforcement"
The test/ginkgoext function GetScope() reads this focus string and fetches the prefix. If the prefix of this string is "k8s", then the BeforeSuite() logic will launch the k8s VMs to test from; otherwise, it will launch the runtime VM.
In the above case, PolicyEnforcement is actually an It() statement inside test/k8sT/Policies.go, and so it should launch the k8s VMs to perform the test. However, because the focus string didn't start with the prefix k8s, the runtime VMs are run. As a result, the test eventually fails because the k8s VMs were not provisioned.
Ideally, when ginkgo --focus xxx is run, the actual test 'xxx' should be looked up and the VM dependencies determined from there.
We can work around this by renaming/prefixing all of the It() statements in the test/k8sT/ directory with k8s, but it'd be nice to get a more long term solution.

I had this problem before, and I didn't find a better way. The thing that I use to do is to change It for XIT and focus the only test that I want to test.
Maybe added a new flag, with scope fix the problem, but if the test name match in runtime you're going to have the same problem, Ginkgo will try to run both tests at runtime and k8s.
Related issue in Ginkgo:
https://github.com/onsi/ginkgo/issues/144

This is documented, and it's a known behaviour of the CI at this point. It's unlikely someone will take up the work to improve this case because the barrier to fixing it is much higher than just working around via the "k8s" prefix. Closing.


[cloudbuild] switch to v2 of our build images.

This is required because esp32 switch to IDF 5.1 is only available in v2 of the images.

Hotfix: github CI cannot validate cloudbuild.


Document Tektelic with Basic Station

Summary

Document connecting Tektelic Basic Station
Why do we need this ?

Document popular gateways

@benolayinka what's the status for this?

This is done here https://www.thethingsindustries.com/docs/gateways/tektelickonamicro/lbs/


Directive @extends status

Hello!
Thank you for this superb API.
My backend is generating a schema that contains this directive declaration:
directive @extends on OBJECT | INTERFACE
I need to remove it or else it break Flutter code generation.
line 1, column 266 of .: 'extends' can't be used as an identifier because it's a keyword.
Thanks!

I came across this too, most likely it should be discussed in the gql repository

Yes, please open an issue in the gql repo, as this is the place where the parsing of the schema is implemented.


Users/alexpeck/tests2

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 92.308%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
59

Relevant Lines:
63

💛  - Coveralls


cargo install should not need to build the crate to determine there is no binary available

cargo-lock is a good example of this. cargo-lock only provides a binary with --features cli. If a user doesn't notice this and instead just executes cargo install cargo-lock with a clean build cache, cargo will happily build the cargo-lock library along with all its dependencies before erroring out noting that there are no binaries available.
Since the presence of a binary crate target doesn't require building the crate to discover, it would be better if cargo could give the error before spending CPU time on building the crate.

The problem is the following check, which does not take into account if the required-features in a package's [[bin]] will be satisfied.
https://github.com/rust-lang/cargo/blob/134f61406e19218970ea9da534f1b3fce10228ea/src/cargo/ops/cargo_install.rs#L312-L314

Since cargo supports dependency features (e.g.  features = ["deps/feature"]), it is not possible to validate required features before resolving the dependency graph, which is done inside compile_ws. Hence, We need to dig into compile_ws and deal with at least two problems:

make the else if required_features branch work when there is no available binaries to install. And
filter_default_targets would include the default lib.rs target, which may not be suitable for cargo install.

https://github.com/rust-lang/cargo/blob/b219f0eb7a425fb1944487cc09702883053260a4/src/cargo/ops/cargo_compile.rs#L1095-L1100
https://github.com/rust-lang/cargo/blob/b219f0eb7a425fb1944487cc09702883053260a4/src/cargo/ops/cargo_compile.rs#L1251-L1254

@rustbot claim


build: vendor yarn using the .yarnrc yarn-path value

Rather than enforcing yarn versioning using package.json's
engines value.  We can utilize yarn's yarn-path value to
ensure that the version of yarn used at execution time is
consistent for everyone who uses our repo.

Marking this as blocked pending a question about compliance with some internal Google policies

Confirmed compliance with Google policy.


Cant connect to Dedicated Server

Hi Jere I been trying to use expand world to make my dedicated world bigger, the world generated fine I was able to join the first time with no issue then I logged out of it and restarted my game and tried joining again but I was unable it seemed I was about to get in but seems the game hanged up and stayed in the disconnection part of it cause it never returned to the title screen as shown below

before that I joined the server but this is what I saw

I suppose this is due to expand world still working on but after a few mins the image above happens
these are the server logs
LogOutput.log
and the client logs
LogOutput.log
Can you tell me if maybe I messed up with anything? I will post the config files as well
Clients
expand_world.cfg.log
and Servers
expand_world.cfg.log
(Remove the .log of them)
is it because it takes too long to generate minimap?

As additional context this is a whole new world created with the settings from above files

I also get this and the loadtime for each connection / loading the world is about 5 minutes.

I increased the time out to 5 minutes. Minimap generation should also happen while in the game but maybe something has broken this.
I will try to investigate.


Modified signature validation: get only signer addresses on challenge

This PR modifies validation of DKG result during challenge: instead of getting addresses of all operators from sortition-pool, we just get addresses of the operators that signed the result.
When running tests in RandomBeacon.GroupCreation.test.ts the average gas consumption for challengeDkgResult decreased from 1201940 to 1160869.

no more comments


Session Persistance Issue with some browser

Laravel Version: 5.8.30
PHP Version: 7.3.6
Session Driver: redis

Description:
This issue has been described several times, but partly with other causes:

#8172,
https://stackoverflow.com/questions/42769388/laravel-session-always-changes-every-refresh-request-in-laravel-5-4/43893114
https://stackoverflow.com/questions/38851524/session-not-persist-when-request-comes-from-android-device
https://laracasts.com/discuss/channels/general-discussion/tokenmismatch-only-certain-browsers-laravel-5-freshproduction

I noticed the problem as more "Illuminate\Session\TokenMismatchException" errors occurred in my logs.
I stored every server request in a DB for a few days and saw that the session_id of the browsers listed below is renewed every time a page is visited.
In my case, the problem only occurs in some versions of Internet Explorer, Edge, and Android browsers.
I could not reproduce the issue in Chrome, Firefox, Chrome on Android, Safari on iPhone.
Here are some exact user agents of the last browsers where the problem occurred:
Mozilla/5.0 (Linux; Android 9; SAMSUNG SM-G960F/G960FXXU6CSG8 Build/PPR1.180610.011) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/9.4 Chrome/67.0.3396.87 Mobile Safari/537.36
Mozilla/5.0 (Linux; Android 8.0.0; SAMSUNG SM-G965F Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/9.4 Chrome/67.0.3396.87 Mobile Safari/537.36
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 Edge/15.15063
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134

Some things I've already tried:

changed session driver from "redis" to "file" or "database
removed "_" from session cookie name (some people mentioned this to be a problem)
changed SESSION_SECURE_COOKIE to "false"
added the header p3p: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"

I checked the cookies (with Browserstack) in Edge and see that they are set as expected, but the value changes on every page load.

Interestingly, it looks like only the session_id is renewed with every request. I just tried to authenticate a user in the mentioned browsers and this user remains authenticated

i have the same problem, only in production and it could be reproduced with some PC but not all users.
The session cookie change value every pageload.
I've tried with session driver as redis, file and cookie, setting session domain, but nothing. Authentication works, i remain authenticated but cannot send any post causing 419 Page Expired.

I can't test on Edge myself so if anyone can help out here or verify that this is broken on Edge, that would be great.

I can confirm that the issue exist on Android browser and edge browser including edge chromium in Windows but only when deploy with vapor, in local is working without problems

I have this issue too.
This happens on MacOS 10.14.6 with Chrome, Firefox, Safari.
But I don't get a 419 Error / TokenMismatchException.
And on Windows 10 1903 With Chrome, Edge, Firefox.
I don't get an 419 Error / TokenMismatchException on Chrome, Edge and Firefox in Incognito-Mode
419 Error on Firefox in "Normal-Mode"

exactly the same here, i just tested all that i read on internet without any results.

In my case, not sure if same of yours, the problem is that in some routes we as for Windows Basic Autentication (NTML autentication). And for that IE11 is using this:
https://blogs.msdn.microsoft.com/ieinternals/2010/11/21/challenge-response-authentication-and-zero-length-posts/
We see a zero length post request to our forms, then as no csrf token is there it fails.
We try to solve it using different routes for form render and form submit (subfolders)
Best

Although I opened this request, I don't think it has anything to do with the framework itself anymore.
It's just not easily reproducible, and only occurs in certain browser versions.
Maybe there is a problem with cookie handling in a few browser versions that has already been fixed in the next version.


Update handle-email-events.md

As far as I check the following document, "Email Delivery Report Received" events are generated even in cases (like "Bounced") other than Delivered, Failed, FilteredSpam, Quarantined.
Microsoft.Communication.EmailDeliveryReportReceived event
If my recognition is correct, I think that the word "i.e." would be incorrect and "e.g" would be correct.

Thanks, @atsushina!


Fix issues with spec in wafv2 RegularExpressionList

Issue #, if available:
Fix #1286
Description of changes:

Patch spec to fix an issue with wafv2 RegularExpressionList

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Confirmed that the spec is wrong and that the new changes will both pass cfn-lint and result in a successful deployment.

@PatMyron are you saying this is wrong too? https://docs.aws.amazon.com/de_de/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-regexpatternset-regex.html

@kddejong
Resources:
  RegexPatternSet:
    Type: AWS::WAFv2::RegexPatternSet
    Properties:
      Name: Name
      Scope: REGIONAL
      RegularExpressionList:
        - RegexString: RegularExpression

also successfully deploys and now successfully lints, so this is probably fine


[Bug Report] rcon connection fails

Have you read the Important information text above

[X] Yes i did

Current behavior
firstly the rcon and rconcli inside the container didn't have a config, which I fixed with:
docker cp configs/rcon.yaml palworld-dedicated-server:/home/steam/steamcmd/rcon.yaml
but still, apparently the rcon server isn't running:
cli: execute: auth: rcon: rcon: read packet size: read tcp <IP_ADDRESS>:44020-><IP_ADDRESS>:25575: read: connection reset by peer

I copied netstat into the container and ran it:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name
tcp        0      0 <IP_ADDRESS>:46681        <IP_ADDRESS>:*               LISTEN      0          10610793   -
tcp        0      0 <IP_ADDRESS>:1985            <IP_ADDRESS>:*               LISTEN      1000       10613235   -
tcp        0      0 <IP_ADDRESS>:45689         <IP_ADDRESS>:*               LISTEN      1000       10608593   -
udp        0      0 <IP_ADDRESS>:27015           <IP_ADDRESS>:*                           1000       10611954   -
udp        0      0 <IP_ADDRESS>:51791        <IP_ADDRESS>:*                           0          10610792   -
udp        0      0 <IP_ADDRESS>:8211            <IP_ADDRESS>:*                           1000       10613234   -

Desired behavior
rcon working.
Links to screenshots
No response
To Reproduce
follow the README.md ???
I have no idea what I did wrong or even differently...
Software setup

OS: Ubuntu 22.04 LTS I think
Docker version 24.0.5, build ced0996

Hardware setup

vCPU:
RAM:
Disk:

Additional context
version: '3.9'
services:
  palworld-dedicated-server:
    #build: .
    container_name: palworld-dedicated-server
    image: jammsen/palworld-dedicated-server:latest
    restart: unless-stopped
    ports:
      - target: 8211 # Gamerserver port inside of the container
        published: 8211 # Gamerserver port on your host
        protocol: udp
        mode: host
      - target: 25575 # RCON port inside of the container
        published: 25575 # RCON port on your host
        protocol: tcp
        mode: host
    env_file:
      - ./default.env
    volumes:
      - ~/docker-data/palworld:/palworld

# Container-setttings
PUID=1000
PGID=1000
TZ=Europe/Berlin
# SteamCMD-settings
ALWAYS_UPDATE_ON_START=true
STEAMCMD_VALIDATE_FILES=true
# Backup-settings
BACKUP_ENABLED=true
BACKUP_CRON_EXPRESSION=0 * * * *
BACKUP_RETENTION_POLICY=true
BACKUP_RETENTION_AMOUNT_TO_KEEP=72
# Restart-settings
RESTART_ENABLED=false
RESTART_CRON_EXPRESSION="0 3,15 * * *"
# Webhook-settings
WEBHOOK_ENABLED=false
WEBHOOK_DEBUG_ENABLED=false
WEBHOOK_URL="YOUR-URL-IN-HERE"
WEBHOOK_INFO_TITLE="Info"
WEBHOOK_INFO_DESCRIPTION="This is an info from the server"
WEBHOOK_INFO_COLOR="2849520"
WEBHOOK_INSTALL_TITLE="Installing server"
WEBHOOK_INSTALL_DESCRIPTION="Server is being installed"
WEBHOOK_INSTALL_COLOR="2849520"
WEBHOOK_RESTART_TITLE="Server is restarting soon"
WEBHOOK_RESTART_DESCRIPTION="The gameserver is restarting in 15 minutes"
WEBHOOK_RESTART_COLOR="15593515"
WEBHOOK_START_TITLE="Server is starting"
WEBHOOK_START_DESCRIPTION="The gameserver is starting"
WEBHOOK_START_COLOR="2328576"
WEBHOOK_STOP_TITLE="Server has been stopped"
WEBHOOK_STOP_DESCRIPTION="The gameserver has been stopped"
WEBHOOK_STOP_COLOR="7413016"
WEBHOOK_UPDATE_TITLE="Updating server"
WEBHOOK_UPDATE_DESCRIPTION="Server is being updated"
WEBHOOK_UPDATE_COLOR="2849520"
# Config-setting - Warning: Every setting below here will be affected!
SERVER_SETTINGS_MODE=manual
# Gameserver-start-settings
MULTITHREAD_ENABLED=true
COMMUNITY_SERVER=false
# Engine.ini settings
NETSERVERMAXTICKRATE=120
# PalWorldSettings.ini settings
DIFFICULTY=normal
DAYTIME_SPEEDRATE=1.000000
NIGHTTIME_SPEEDRATE=1.000000
EXP_RATE=1.000000
PAL_CAPTURE_RATE=1.000000
PAL_SPAWN_NUM_RATE=1.000000
PAL_DAMAGE_RATE_ATTACK=1.000000
PAL_DAMAGE_RATE_DEFENSE=1.000000
PLAYER_DAMAGE_RATE_ATTACK=1.000000
PLAYER_DAMAGE_RATE_DEFENSE=1.000000
PLAYER_STOMACH_DECREASE_RATE=1.000000
PLAYER_STAMINA_DECREACE_RATE=1.000000
PLAYER_AUTO_HP_REGENE_RATE=1.000000
PLAYER_AUTO_HP_REGENE_RATE_IN_SLEEP=1.000000
PAL_STOMACH_DECREACE_RATE=1.000000
PAL_STAMINA_DECREACE_RATE=1.000000
PAL_AUTO_HP_REGENE_RATE=1.000000
PAL_AUTO_HP_REGENE_RATE_IN_SLEEP=1.000000
BUILD_OBJECT_DAMAGE_RATE=1.000000
BUILD_OBJECT_DETERIORATION_DAMAGE_RATE=1.000000
COLLECTION_DROP_RATE=1.000000
COLLECTION_OBJECT_HP_RATE=1.000000
COLLECTION_OBJECT_RESPAWN_SPEED_RATE=1.000000
ENEMY_DROP_ITEM_RATE=1.000000
DEATH_PENALTY=All
ENABLE_PLAYER_TO_PLAYER_DAMAGE=false
ENABLE_FRIENDLY_FIRE=false
ENABLE_INVADER_ENEMY=true
ACTIVE_UNKO=false
ENABLE_AIM_ASSIST_PAD=true
ENABLE_AIM_ASSIST_KEYBOARD=false
DROP_ITEM_MAX_NUM=3000
DROP_ITEM_MAX_NUM_UNKO=100
BASE_CAMP_MAX_NUM=128
BASE_CAMP_WORKER_MAXNUM=15
DROP_ITEM_ALIVE_MAX_HOURS=1.000000
AUTO_RESET_GUILD_NO_ONLINE_PLAYERS=false
AUTO_RESET_GUILD_TIME_NO_ONLINE_PLAYERS=72.000000
GUILD_PLAYER_MAX_NUM=20
PAL_EGG_DEFAULT_HATCHING_TIME=72.000000
WORK_SPEED_RATE=2.000000
IS_MULTIPLAY=true
IS_PVP=false
CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP=false
ENABLE_NON_LOGIN_PENALTY=true
ENABLE_FAST_TRAVEL=true
IS_START_LOCATION_SELECT_BY_MAP=true
EXIST_PLAYER_AFTER_LOGOUT=false
ENABLE_DEFENSE_OTHER_GUILD_PLAYER=false
COOP_PLAYER_MAX_NUM=6
MAX_PLAYERS=32
SERVER_NAME=[redacted]
SERVER_DESCRIPTION=[redacted]
ADMIN_PASSWORD=[redacted]
SERVER_PASSWORD=[redacted]
PUBLIC_PORT=8211
PUBLIC_IP=
RCON_ENABLED=true
RCON_PORT=25575
REGION=
USEAUTH=true
BAN_LIST_URL=https://api.palworldgame.com/api/banlist.txt

Hey @Funkelfetisch - Please provide server startuplogs and the way you called the rcon commands. Thank you!

Hey @Funkelfetisch - Please provide server startuplogs and the way you called the rcon commands.  Thank you!

server startup with docker-compose up -d

Still waiting for the server startuplogs 😕

I noticed in the Dockerfile that the variable RCON_CONFIG_FILE isn't used. (Default: /home/steam/steamcmd/rcon.yaml)
In the Dockerfile, it still uses the default config from the github - COPY --chmod=755 configs/rcon.yaml /home/steam/steamcmd/rcon.yaml

Im closing this issue as inactive, feel free to reach out again if you need help or have time.
If you like this project, please consider giving this repo and the Docker-Hub-Repo a Star.

>>> Server stopped gracefully
> Current steam user PUID is '1000' and PGID is '1000'
> PUID and PGID matching what is requested for user steam
> id steam: uid=1000(steam) gid=1000(steam) groups=1000(steam)
>>> Starting server manager
> Started at: 2024-02-26 13:21:42
> Server main thread started with pid 24
> Checking for existence of default credentials
> No default passwords found
>>> Doing an update with validation of the gameserver files...
tid(29) burning pthread_key_t == 0 so we never use it
Redirecting stderr to '/home/steam/Steam/logs/stderr.txt'
Logging directory: '/home/steam/Steam/logs'
[  0%] Checking for available updates...
[----] Verifying installation...
Steam Console Client (c) Valve Corporation - version<PHONE_NUMBER>
-- type 'quit' to exit --
Loading Steam API...OK

Connecting anonymously to Steam Public...OK
Waiting for client config...OK
Waiting for user info...OK
 Update state (0x5) verifying install, progress: 0.32 (7340032 /<PHONE_NUMBER>)
 Update state (0x5) verifying install, progress: 18.18 (410950404 /<PHONE_NUMBER>)
 Update state (0x5) verifying install, progress: 41.15 (930074013 /<PHONE_NUMBER>)
 Update state (0x5) verifying install, progress: 63.77<PHONE_NUMBER> /<PHONE_NUMBER>)
 Update state (0x5) verifying install, progress: 87.09<PHONE_NUMBER> /<PHONE_NUMBER>)
Success! App '2394010' fully installed.
>>> Done updating and validating the gameserver files
>>> Adding crons to Supercronic
> Added backup cron
>>> Supercronic started
>>> SERVER_SETTINGS_MODE is set to 'manual', NOT using environment variables to configure the server!
>>> ALL SETTINGS including setup of rcon.yaml has to be done manually by the user!
>>> Preparing to start the gameserver
> Setting Multi-Core-Enhancements to enabled
>>> Starting the gameserver
time="2024-02-26T13:21:57+01:00" level=info msg="read crontab: cronlist"
[S_API] SteamAPI_Init(): Loaded local 'steamclient.so' OK.
Shutdown handler: initalize.
- Existing per-process limit (soft=1048576, hard=1048576) is enough for us (need only 1048576)
Increasing per-process limit of core file size to infinity.
- Existing per-process limit (soft=18446744073709551615, hard=18446744073709551615) is enough for us (need only<PHONE_NUMBER>3709551615)
CAppInfoCacheReadFromDiskThread took 2 milliseconds to initialize
Setting breakpad minidump AppID = 2394010
[S_API FAIL] Tried to access Steam interface SteamUser021 before SteamAPI_Init succeeded.
[S_API FAIL] Tried to access Steam interface SteamFriends017 before SteamAPI_Init succeeded.
[S_API FAIL] Tried to access Steam interface STEAMAPPS_INTERFACE_VERSION008 before SteamAPI_Init succeeded.
[S_API FAIL] Tried to access Steam interface SteamNetworkingUtils004 before SteamAPI_Init succeeded.
time="2024-02-26T14:00:00+01:00" level=info msg=starting iteration=0 job.command="backup create" job.position=0 job.schedule="0 * * * *"
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
>>> Backup 'saved-20240226_140000.tar.gz' created successfully
time="2024-02-26T14:00:20+01:00" level=info msg="job succeeded" iteration=0 job.command="backup create" job.position=0 job.schedule="0 * * * *"
time="2024-02-26T15:00:00+01:00" level=info msg=starting iteration=1 job.command="backup create" job.position=0 job.schedule="0 * * * *"
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
>>> Backup 'saved-20240226_150000.tar.gz' created successfully
time="2024-02-26T15:00:20+01:00" level=info msg="job succeeded" iteration=1 job.command="backup create" job.position=0 job.schedule="0 * * * *"
time="2024-02-26T16:00:00+01:00" level=info msg=starting iteration=2 job.command="backup create" job.position=0 job.schedule="0 * * * *"
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
cli: execute: auth: rcon: dial tcp: address tcp/###RCON_PORT###: unknown port
> RCON:
>>> Backup 'saved-20240226_160000.tar.gz' created successfully
time="2024-02-26T16:00:20+01:00" level=info msg="job succeeded" iteration=2 job.command="backup create" job.position=0 job.schedule="0 * * * *"

Hey @Funkelfetisch - You did choose manual there will no settings to be auto-filled for RCON. Thats on purpose and it says that in the startup log of the server.
If you want to change that, read up on this here - https://github.com/jammsen/docker-palworld-dedicated-server/blob/develop/docs/ENV_VARS.md#container-settings - See SERVER_SETTINGS_MODE and the explainer for that.


Avoid throwing RuntimeException when master hostname is not resolved on metrics reporting

Alluxio Version:
What version of Alluxio are you using?
2.4.1-1
Describe the bug
A clear and concise description of what the bug is.
If I didn't set hostname and ip address mapping in /etc/hosts
2020-12-22 12:45:52,344 ERROR AbstractShell - Error running report
java.lang.RuntimeException: java.net.UnknownHostException: abc: abc: Name does not resolve
        at alluxio.util.network.NetworkAddressUtils.getLocalIpAddress(NetworkAddressUtils.java:501)
        at alluxio.util.network.NetworkAddressUtils.getLocalHostName(NetworkAddressUtils.java:423)
        at alluxio.util.network.NetworkAddressUtils.getLocalHostMetricName(NetworkAddressUtils.java:442)
        at alluxio.metrics.MetricsSystem.constructSourceName(MetricsSystem.java:201)
        at alluxio.metrics.MetricsSystem.lambda$static$0(MetricsSystem.java:88)
        at alluxio.util.CommonUtils$2.firstTime(CommonUtils.java:785)
        at alluxio.util.CommonUtils$2.get(CommonUtils.java:780)
        at alluxio.metrics.MetricsSystem.getMetricNameWithUniqueId(MetricsSystem.java:387)
        at alluxio.metrics.MetricsSystem.initShouldReportMetrics(MetricsSystem.java:749)
        at alluxio.metrics.MetricsSystem.reportMetrics(MetricsSystem.java:559)
        at alluxio.metrics.MetricsSystem.reportClientMetrics(MetricsSystem.java:635)
        at alluxio.client.metrics.ClientMasterSync.heartbeat(ClientMasterSync.java:88)
        at alluxio.client.metrics.MetricsHeartbeatContext.heartbeat(MetricsHeartbeatContext.java:95)
        at alluxio.client.metrics.MetricsHeartbeatContext.close(MetricsHeartbeatContext.java:125)
        at alluxio.client.metrics.MetricsHeartbeatContext.removeContext(MetricsHeartbeatContext.java:108)
        at alluxio.client.metrics.MetricsHeartbeatContext.removeHeartbeat(MetricsHeartbeatContext.java:198)
        at alluxio.client.file.FileSystemContext.closeContext(FileSystemContext.java:300)
        at alluxio.client.file.FileSystemContext.close(FileSystemContext.java:267)
        at alluxio.cli.fsadmin.FileSystemAdminShellUtils.checkMasterClientService(FileSystemAdminShellUtils.java:67)
        at alluxio.cli.fsadmin.command.ReportCommand.run(ReportCommand.java:107)
        at alluxio.cli.AbstractShell.run(AbstractShell.java:137)
        at alluxio.cli.fsadmin.FileSystemAdminShell.main(FileSystemAdminShell.java:71)
Caused by: java.net.UnknownHostException: abc: abc: Name does not resolve
        at java.net.InetAddress.getLocalHost(InetAddress.java:1506)
        at alluxio.util.network.NetworkAddressUtils.getLocalIpAddress(NetworkAddressUtils.java:459)
        ... 21 more
Caused by: java.net.UnknownHostException: abc: Name does not resolve
        at java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method)
        at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:929)
        at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1324)
        at java.net.InetAddress.getLocalHost(InetAddress.java:1501)
        ... 22 more

To Reproduce
Steps to reproduce the behavior (as minimally and precisely as possible)
Expected behavior
A clear and concise description of what you expected to happen.
Urgency
Describe the impact and urgency of the bug.
Additional context
Add any other context about the problem here.

@cheyang Thanks for the report. Is there something that has a name of abc? What a minimal set of steps to reproduce this?

@cheyang Thanks for the report. Is there something that has a name of abc? What a minimal set of steps to reproduce this?

@JySongWithZhangCe
can you take this issue? basically the error (not being able to resolve master hostname) for metrics reporting should not bring down the process

I see, then maybe the issue should be renamed to be reflect the true problem.

I see, then maybe the issue should be renamed to be reflect the true problem.

Is this sense only happening in client side?

Is this sense only happening in client side?


[CS] Resolve callees for key path components

This PR changes getCalleeLocator such that it now takes a ConstraintLocator argument, allowing it to resolve callees for cases where we have a KeyPathExpr base and a KeyPathComponent locator element. To make it clear that we're looking for a callee at the anchor, this PR also renames it to getAnchormostCalleeLocator (open to alternative naming suggestions).
This change is then plumbed through to CSDiagnostics, where getAnchormostChoiceFor can be used to get the choice for the anchor of a given locator. Finally, a getAnchormostChoice member has been added to make the common case of getting the choice made for the anchor of the failure more convenient.
Resolves SR-11435.

@swift-ci please test

@xedin Thanks for the quick review! I'm happy to keep the same namings, my only concern was that if you gave getCalleeLocator a locator such as:
functionA(functionB())
          ^^^^^^^^^^^
             "leaf"
^^^^^^^^^^^^^^^^^^^^^^
        anchor

you might expect to receive a callee locator that describes functionB rather than functionA (and you might not realise that simplifying the locator will change how getCalleeLocator behaves). What do you think?

@hamishknight I think that's something we could document in the comment for getCalleeLocator but I'm not sure we can/want to do much about that, that's why diagnostics have getAnchor() and getRawAnchor().
In my opinion solution for it would be for calls to propagate locators down to its arguments during constraint generation, so visit*Expr methods would not only get an expression pointer but also a ConstraintLocatorBuilder that way constraints/type variables associated with functionB() in your example would always get a locator rooted in the call.

@xedin Fair enough, I've gone ahead and reverted the naming changes as well as expanded on the doc comment for getCalleeLocator. Also given that getChoiceFor(getLocator()) is no longer too onerous to write, I've removed the convenience member for that.
If that all looks good to you, I'll go ahead and smoke test + merge :)

@hamishknight Looks great, let's :shipit:

@swift-ci please smoke test and merge

@swift-ci please smoke test and merge

@swift-ci please smoke test Linux platform

@swift-ci please smoke test Linux platform


Awesome technical stacks with this project!

Do you have a plan to give us a course or documentation to demonstrate all the good technical stacks with this project?

Hey @TaylorDurden thanks for the word!
This repo is currently being used by me to test and learn cutting-edge technologies which keeps changing very fast as you can see from the commit history.
When I found better alternatives, I usually removed the old ones.
If you want to learn from this repo, I would suggest first checking technologies listed in the Tech Stack section, and go their repos to learn how to use them separately.
More importantly, focus on the concept and what problem the technology is trying to solve, instead of the technology itself.
For example, Opossum is the technology I am using for circuit breaker in a Node.js server. But in Go, Python, or Java projects, they have their own libraries for circuit breaker. And also for service mesh such as Istio, it has global circuit breaker for all its microservices.
So instead of focusing on Opossum, focus on learning what is circuit breaker, and why we introduce it. After that, if you are building a Go project, find a circuit breaker library, and try to integrate with your own Go project and experimenting.
Hope that helps! 😃


feat: add option to skip healing battery powered nodes

ref: https://github.com/zwave-js/node-zwave-js/issues/5372

@zwave-js-bot approve

@zwave-js-bot approve

AWESOME ADDER!
I've been wanting that for a long time. Thanks!


Added continuous deployment job

ISSUE TYPE

Enhancement: Add a continuous deployment Job

SUMMARY

Changes are related to the continuous deployment of Botkube when something merged in the branch and on the new release. The changes have done in this PR use four secrets.
Two (DOCKER_USERNAME, GH_TOKEN) of them already defined because of ci.yml use these secrets, and the changes need two more secrets to integrate Slack with BotKube at the time of deployment.
New secrets: SLACK_CHANNEL & SLACK_API_TOKEN.
The job will trigger in below-mentioned scenarios:

When something pushed in the 'develop' branch, it'll trigger the CI Job, and after successful completion, the CI job will trigger the CD Job using repository_dispatch.
On the published event of the new release.

CD Job Flow:

Deploy using kubectl -

Check out the code from the master branch if it is a release event otherwise develop branch will be used.
Update the deploy-all-in-one.yaml for Slack integration.
Deploy the K8s cluster using KinD in the GitHub runner.
Deploy Botkube and sample application.
Botkube will send notification on the integrated slack channel. (Right now we can verify these notifications manually.)
The bash script will verify the status of Botkube Pods. If they're not running then as a result job will fail.

Deploy using Helm -

Install and configure Helm in the GitHub runner.
Deploy the K8s cluster using KinD in the GitHub runner.
Deploy Botkube using Helm and latest will be used as Image tag if it is release event otherwise tag will be sent in the payload by repository_dispatch.
Botkube will send notification on the integrated slack channel. (Right now we can verify these notifications manually.)
The bash script will verify the status of Botkube Pods. If they're not running then as a result job will fail.

Hi @baba230896!
Thanks for your PR. Recently the e2e test were reworked and this is done automatically.
All of that was done in Go, so we are able not only run that on CI but also locally.

Botkube will send notification on the integrated slack channel. (Right now we can verify these notifications manually.)

This was also automated.
Because of all of that, I'm closing that PR.


feat: waitlist

Add Waitlist Signup API Endpoint
api/v1/waitlist
Description
Implemented a backend API endpoint to receive and store user information submitted through the waitlist signup form on the website. The endpoint validates and sanitizes incoming data, stores user information securely in the database, sends a confirmation email upon successful signup, and includes rate limiting to prevent abuse.
Related Issue (Link to Github issue)
Link to the related issue
Motivation and Context
This change is required to allow potential users to join a waitlist for our product/service by submitting their information through a form on the website. It ensures that user data is validated, stored securely, and that users receive a confirmation email upon successful signup.
How Has This Been Tested?
The changes have been tested using PHPUnit. Tests included:

Ensuring the endpoint returns a 201 status code with a success message on valid submissions.
Verifying that invalid data triggers a 400 Bad Request response with an appropriate error message.
Confirming that a confirmation email is sent upon successful signup.

Screenshots
Image 1
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.

@Dev-Tonia It's part of the implementation since waitlist users are different from users. Though I didn't migrate


0 derived errors ignored. [Op:__inference_test_function_5397]  Function call stack: test_function -> test_function

Click to expand!
Issue Type
Bug
Source
source
Tensorflow Version
tf 2.4.1
Custom Code
Yes
OS Platform and Distribution
Linux Ubuntu
Mobile device
No response
Python version
3.8
Bazel version
No response
GCC/Compiler version
No response
CUDA/cuDNN version
11.4
GPU model and memory
NVIDIA GeForce RTX 2080 Ti
Current Behaviour?
I am facing an issue while trying to run my model, it seems to be an unknown error with no direct understanding of what is actually causing the error. Some answers talk about increasing batch size or adding a block of code before the model training. The training suddenely stops after a few epochs which is not supposed to happen. Instead, the model will just stop through a callback after its successful training.

Standalone code to reproduce the issue
feature_layers = [
    Conv2D(32, (3, 3), input_shape=(400, 400, 3,), padding='same'),
    LeakyReLU(alpha=0.1),
    # model_4.add(RandomFlip(mode='horizontal_and_vertical', seed=None))
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(32, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(64, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(64, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(64, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(64, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(128, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(128, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(128, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(128, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(256, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(256, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    BatchNormalization(),
    MaxPool2D(pool_size=(2, 2), padding='same'),

    Conv2D(256, (3, 3), padding='same'),
    LeakyReLU(alpha=0.1),
    MaxPool2D(pool_size=(2, 2), padding='same'),
]

classification_layers = [
    Flatten(),
    Dropout(0.35),
    Dense(512, kernel_regularizer=regularizers.l2(0.1)),
    LeakyReLU(alpha=0.1),
    Dropout(0.35),
    Dense(4),
]

model = Sequential(feature_layers + classification_layers, name='Stenosis_model')

model.compile(loss='mse', optimizer=Adam(learning_rate=0.0001), metrics=[tf.keras.metrics.MeanIoU(num_classes=4), tfr.keras.metrics.MeanAveragePrecisionMetric()])

model.summary()

keras.backend.clear_session()
np.random.seed(15)
tf.random.set_seed(15)

model.fit(dataGenerator.flow(train_images, train_targets, batch_size=16),
                            validation_data=(val_images, val_targets),
                            epochs=150, callbacks=[es], verbose=1, shuffle=True)

I have also added the following code before running the model:
from tensorflow.compat.v1 import ConfigProto
from tensorflow.compat.v1 import InteractiveSession

config = ConfigProto()
config.gpu_options.allow_growth = True
session = InteractiveSession(config=config)

### Relevant log output

```shell
InvalidArgumentError                      Traceback (most recent call last)
/home/lunet/conm/Desktop/Stenosis-Project/transfer_learning_model.ipynb Cell 19 in <cell line: 6>()
      2 np.random.seed(15)
      3 tf.random.set_seed(15)
----> 6 model.fit(dataGenerator.flow(train_images, train_targets, batch_size=16),
      7                             validation_data=(val_images, val_targets),
      8                             epochs=150, callbacks=[es], verbose=1, shuffle=True)

File ~/.conda/envs/stenosis/lib/python3.8/site-packages/tensorflow/python/keras/engine/training.py:1131, in Model.fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, validation_batch_size, validation_freq, max_queue_size, workers, use_multiprocessing)
   1117   self._fit_frame = tf_inspect.currentframe()
   1118   self._eval_data_handler = data_adapter.DataHandler(
   1119       x=val_x,
   1120       y=val_y,
   (...)
   1129       model=self,
   1130       steps_per_execution=self._steps_per_execution)
-> 1131 val_logs = self.evaluate(
   1132     x=val_x,
   1133     y=val_y,
   1134     sample_weight=val_sample_weight,
   1135     batch_size=validation_batch_size or batch_size,
   1136     steps=validation_steps,
   1137     callbacks=callbacks,
   1138     max_queue_size=max_queue_size,
   1139     workers=workers,
   1140     use_multiprocessing=use_multiprocessing,
   1141     return_dict=True)
   1142 val_logs = {'val_' + name: val for name, val in val_logs.items()}
   1143 epoch_logs.update(val_logs)

File ~/.conda/envs/stenosis/lib/python3.8/site-packages/tensorflow/python/keras/engine/training.py:1389, in Model.evaluate(self, x, y, batch_size, verbose, sample_weight, steps, callbacks, max_queue_size, workers, use_multiprocessing, return_dict)
   1387 with trace.Trace('test', step_num=step, _r=1):
   1388   callbacks.on_test_batch_begin(step)
-> 1389   tmp_logs = self.test_function(iterator)
   1390   if data_handler.should_sync:
   1391     context.async_wait()

File ~/.conda/envs/stenosis/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py:828, in Function.__call__(self, *args, **kwds)
    826 tracing_count = self.experimental_get_tracing_count()
    827 with trace.Trace(self._name) as tm:
--> 828   result = self._call(*args, **kwds)
    829   compiler = "xla" if self._experimental_compile else "nonXla"
    830   new_tracing_count = self.experimental_get_tracing_count()

File ~/.conda/envs/stenosis/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py:862, in Function._call(self, *args, **kwds)
    859 self._lock.release()
    860 # In this case we have not created variables on the first call. So we can
    861 # run the first trace but we should fail if variables are created.
--> 862 results = self._stateful_fn(*args, **kwds)
    863 if self._created_variables:
    864   raise ValueError("Creating variables on a non-first call to a function"
    865                    " decorated with tf.function.")

File ~/.conda/envs/stenosis/lib/python3.8/site-packages/tensorflow/python/eager/function.py:2942, in Function.__call__(self, *args, **kwargs)
   2939 with self._lock:
   2940   (graph_function,
   2941    filtered_flat_args) = self._maybe_define_function(args, kwargs)
-> 2942 return graph_function._call_flat(
   2943     filtered_flat_args, captured_inputs=graph_function.captured_inputs)

File ~/.conda/envs/stenosis/lib/python3.8/site-packages/tensorflow/python/eager/function.py:1918, in ConcreteFunction._call_flat(self, args, captured_inputs, cancellation_manager)
   1914 possible_gradient_type = gradients_util.PossibleTapeGradientTypes(args)
   1915 if (possible_gradient_type == gradients_util.POSSIBLE_GRADIENT_TYPES_NONE
   1916     and executing_eagerly):
   1917   # No tape is watching; skip to running the function.
-> 1918   return self._build_call_outputs(self._inference_function.call(
   1919       ctx, args, cancellation_manager=cancellation_manager))
   1920 forward_backward = self._select_forward_and_backward_functions(
   1921     args,
   1922     possible_gradient_type,
   1923     executing_eagerly)
   1924 forward_function, args_with_tangents = forward_backward.forward()

File ~/.conda/envs/stenosis/lib/python3.8/site-packages/tensorflow/python/eager/function.py:555, in _EagerDefinedFunction.call(self, ctx, args, cancellation_manager)
...
0 derived errors ignored. [Op:__inference_test_function_5397]

Function call stack:
test_function -> test_function

@NevilleMthw,
I ran the code and faced a different error, please find the gist here and share all dependencies to replicate the issue or share a colab gist with the reported error.
Also Tensorflow version 2.4 is not actively supported. Hence, kindly update to the latest stable version 2.9 to test the code and let us know if you are facing the same issue. Thank you!

Hi, I have already solved the issue, seems it was something related to my model.compile() function. Thank you for the help and concern!

Can you please mention how did you solve it? @NevilleMthw  I am facing same error


SCRIPT_RUN_ROLLBACK failed when executing multiple SCRIPT_RUN stages.

What happened:
If you perform a rollback with multiple Script Runs specified, the execution of the SCRIPT_RUN_ROLLBACK stage will fail.

What you expected to happen:
Successfully finish executing the SCRIPT_RUN_ROLLBACK stage.
How to reproduce it:
Execute the deployment with multiple SCRIPT_RUN stage, and cancel after some of them are in the executing.
apiVersion: pipecd.dev/v1beta1
kind: KubernetesApp
spec:
  name: script-run-like-jenkins
  labels:
    env: example
    team: product
  pipeline:
    stages:
      - name: SCRIPT_RUN
        with:
          run: |
            sh script.sh
          onRollback: |
            echo rollback
      - name: SCRIPT_RUN
        with:
          run: |
            sleep 10
            sh script.sh
          onRollback: |
            echo $SR_DEPLOYMENT_ID
            echo $SR_APPLICATION_ID
            echo $SR_APPLICATION_NAME
            echo $SR_TRIGGERED_AT
            echo $SR_TRIGGERED_COMMIT_HASH
            echo $SR_REPOSITORY_URL
            echo $SR_SUMMARY
            echo $SR_CONTEXT_RAW
            sh script.sh
      - name: SCRIPT_RUN
        with:
          run: |
            sleep 10
            sh script.sh

Environment:

piped version:
control-plane version:
Others:

[root cause]
The error occurs when piped tries to store the stage log to the completed SCRIPT_RUN_ROLLBACK stage.
piped identifies the target stage with stage ID to store the stage log.
The ID of the PredefinedStage is the const value.

https://github.com/pipe-cd/pipecd/blob/c502a27693e5c4cad1748e6f088fbd316e13f835/pkg/app/piped/planner/predefined_stages.go#L33-L74

So if there are multiple predefined stages, piped refers the completed one.

I tried to add suffix to the stageID for SCRIPTRUN_ROLLBACK stage like this.
https://github.com/pipe-cd/pipecd/commit/7a475a687e9eed85cd105a542db4b663f8415f66
But it failed when rollback.

The error comes from finding the stage config with stageID on the executing stage.
https://github.com/pipe-cd/pipecd/blob/7a475a687e9eed85cd105a542db4b663f8415f66/pkg/app/piped/controller/scheduler.go#L532-L547

Currently, the SCRIPT_RUN_ROLLBACK stage is a predefined stage, and it is assumed that there are multiple in the pipeline.
But we should modify the spec to execute only one SCRIPT_RUN_ROLLBACK because of the reason below.

When storing the stage log, the target stage is identified by the stage ID.
If there are multiple stages with the same ID, if one completes, writing to the other stages will fail. This is because the stage log cannot be updated once it is completed.
The config of the predefined stage is identified by unique value. So we can't modify stage ID.


sometimes it freezes and does not response of hot word three or four times we speak. random behavior

Expected behavior
Its need to trigger on hot word listnen
Actual behavior
sleeps somtimes even we try speak hot word four to five times.
Steps to reproduce the behavior
Launch Demo app , try hey pico 10 times you will find that it miss detection 3-4  times
Please include enough details so that the issue can reproduced independently by the resolver.

unfortunately cannot reproduce the issue.


Added support for Redis SSL URL Scheme

@ajinkyapisal Thanks for your contribution. I will fix tests and merge your PR 🎉

@ajinkyapisal Thanks for your contribution. I will fix tests and merge your PR 🎉
Cool. Thank you!


Resources to help protect developers (humans) from attacks similar to the xz backdoor compromise

We discussed today in our call about the need to find, identify, and evangelize resources that are available to developers and maintainers to help detect social engineering, identify and defend against bully behaviours pressuring maintainers into making choices they otherwise would not have, and to help them cope with stress, self-care, and have a network of persons or resources to be able to reach out to in times of crisis.
We will be collaborating together to help assemble these resources and then make plans to help share them with the community.

Just want to post a couple of links with decent references to social engineering:
https://www.ibm.com/topics/social-engineering
https://www.eset.com/fileadmin/ESET/INT/Landing/2021/Project_progress/ESET-Social_engineering_handbook.pdf
However, it doesn't appear that there's anything open source developer specific resources - training or guides - so we may need to create our own document geared for the OS community based upon all the information that's currently out there.

I saw this similar example from 2020 in the Software Supply Chain Security newsletter that we may want to reference:

One of the maintainers of the F-Droid project (an open-source Android app store) highlighted a similar incident from 2020 where a new contributor offered up a PR to improve search in the product, combined with heavy pressure from other accounts to merge the PR. In the end, they discovered that the PR introduced a SQL injection, and rejected the patch. Once the PR was rejected, the submitted deleted their account and disappeared…

I've been reviewing and collecting some government created resources around Insider Threat. The organizations and resources I've looked at so far are below.
The main challenge is very few of the behaviors/indicators of potential insider threat are relevant in the OSS community. Same with the mitigations. So, the fun part will be understanding/documenting the "normal" behavior  for the OSS community and then extrapolating the indicators where insider threat activity is a possibility. An exciting challenge to say the least.
Resources so far:
National Counterintelligence and Security Center
https://www.dni.gov/files/NCSC/documents/nittf/20180209-CERT-Common-Sense-Guide-Fifth-Edition.pdf
https://www.dni.gov/files/NCSC/documents/products/Insider_Threat_Brochure.pdf
CISA resources
https://www.cisa.gov/topics/physical-security/insider-threat-mitigation
https://www.cisa.gov/sites/default/files/2022-11/Insider Threat Mitigation Guide_Final_508.pdf
NATO CCDCOE
https://ccdcoe.org/uploads/2018/10/Insider_Threat_Study_CCDCOE.pdf

Thanks @underkay.
@SecurityCRob could you take an action for our meetings to see if our non-US members have access to the .gov resources? Thanks!

https://github.com/giuliacassara/awesome-social-engineering
https://www.cmu.edu/iso/aware/dont-take-the-bait/social-engineering.html

https://www.cisa.gov/news-events/news/avoiding-social-engineering-and-phishing-attacks
https://www.cmu.edu/iso/aware/dont-take-the-bait/social-engineering.html


switch to dockerhub automated build

We should use the dockerhub automated build infrastructure if we only build a simple docker image like that (without compiling binaries in advance). https://docs.docker.com/docker-hub/github/

I don't agree as here are missing some tests before the deploy. Does an automated build have the ability to run tests before the docker push?
:-)


Improved Entity::Health::get()

Health Peds: 0 - 200
Health Objects, Vehicles etc.: 0 - 1000
Now the function should always return the health correctly.
(Note: It's percentage)

health of peds are from 100 to 200 though......

Can confirm that player/ped health goes from 100 to 200. The range between 0 and 1000 for vehicles appears to be correct though.

But since Entity.Health has always returned 0 - 100 for peds and 0 - 900 for vehicles, I think we should keep that behaviour or it could break existing scripts.

Ped health goes from 100 to 200 usually with default pedhealth.meta. If InjuredHealthThreshold in pedhealth.meta is edited, that health can go below 100. we should keep Ped.Health behavior though.

Ooops... Only tested ped health in Online Mode. 😁

I guess we can close this ( @crosire ?), since it would break (a lot of) existing scripts without yielding real improvement.

Yeah.


WIP: Handle unknown types as unstructured

What this PR does / why we need it:
When scheme did not contain that type, we previously failed. Since we should be able to handle all types that people might have installed in their cluster, we should fallback to parsing a type as unstructured when not available.

Fixes #913

I'll try to add integration test to confirm this


Equally weight lightcurves

This PR introduces the StructureFucntionLightCurve object to be used instead of three arrays that need to be kept in sync.
This makes it much easier to implement the features requested in #61 and #62.
This PR also represents the work to subsample light curves. The user can specify whether they would like a specific number of differences sampled or default to sampling equal to the lightcurve with the fewest differences.
Additionally this PR implements bootstraping to allow the user to repeat the Structure Function calculation N times and collect median and error metrics from those. By default the 1 sigma error will be reported, but the user can optionally request that upper and lower error values be reported. The user also has the ability to specify the upper and lower quantiles used to calculate the error values.

Codecov Report

Merging #115 (5224c8c) into main (4ce381c) will decrease coverage by 1.12%.
The diff coverage is 83.83%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff             @@
##             main     #115      +/-   ##
==========================================
- Coverage   85.83%   84.71%   -1.12%
==========================================
  Files          14       15       +1
  Lines         847      890      +43
==========================================
+ Hits          727      754      +27
- Misses        120      136      +16

Impacted Files
Coverage Δ

...ysis/structure_function/schmidt_2010/calculator.py
100.00% <ø> (ø)

...ies/analysis/structure_function/base_calculator.py
90.62% <76.00%> (-6.60%)
:arrow_down:

...tseries/analysis/structure_function/light_curve.py
81.63% <81.63%> (ø)

src/lsstseries/analysis/structurefunction2.py
97.93% <90.00%> (-0.98%)
:arrow_down:

...lsstseries/analysis/structure_function/__init__.py
100.00% <100.00%> (ø)

...ysis/structure_function/base_argument_container.py
100.00% <100.00%> (ø)

...es/analysis/structure_function/basic/calculator.py
100.00% <100.00%> (ø)

...lysis/structure_function/bauer_2009a/calculator.py
100.00% <100.00%> (ø)

...lysis/structure_function/bauer_2009b/calculator.py
100.00% <100.00%> (ø)

...ysis/structure_function/macleod_2012/calculator.py
100.00% <100.00%> (ø)

Looks good to me, happy to merge after Doug's comments get resolved.


Add status checks to the word converter

Add status checks to the Word converter.
Since this also drives some changes on the shell script, so fix the hack in #1134 with more reasonable shell programming.

This PR currently seems to only be the shell/yaml changes. Was there meant to be something in the Word converter itself?

Not yet. I wanted to check the shell script updates first.

@jskeet
This is now ready.

Will look tomorrow morning UK time.


"peper" typo

Thanks for spotting this. It is fixed in https://github.com/aiola-lab/whisper-ner/pull/7


(feature request) render data source with manual metadata

due to some limitations in how render works, sometimes stack metadata is not available (when the stack is in a loading state) but for pipeline operations it is useful to leave it in a loading state.  Therefore it would be useful to be able to pass stack bounds (or other metadata information that is required for render) by query parameter in the data_source, and have the data source initialized via that mechanism, rather than querying the service.  The box calls to get images still work in the loading state so this would be a functional way of calling a data source.  We would use this immediately at the Allen.

this is closed now


Create a changelog page with Github pages

Created, now lets update the page each time when we push a build from to stable channel.

The page is here: https://github.com/toggl/toggldesktop/wiki/Changelog